CJ1M HostLink(FINS)协议:内存读写教程与数据帧解析

5星 · 超过95%的资源 需积分: 9 53 下载量 5 浏览量 更新于2024-09-19 2 收藏 283KB PDF 举报
欧姆龙PLC通讯协议——HostLink(FINS)是欧姆龙CJ1M系列PLC的一种通信方式,用于计算机与PLC之间的数据交换。FINS是一种基于帧结构的简单文本传输协议,适用于点对点通信,特别适合于PLC与上位机的连接。 在FINS协议中,数据交换以数据帧的形式进行,每帧由以下几个部分组成: 1. **起始符 (@)**: 通信的开始信号,固定不变。 2. **单元号 (UnitNo.)**: 连接PLC的串口编号,可以设置,默认为0,用于区分不同的串口。 3. **头代码 (FA)**: 不可更改的固定代码,用于识别帧类型。 4. **回应延迟时间 (Responsewaittime)**: 接收数据后PLC等待的时间,可设置范围0~150ms,一般设置为0。 5. **信息控制字段 (ICF)**: 区分网络中的CPU类型,如80表示网络CPU,00表示直接连接到计算机的CPU。 6. **目的单元地址 (DA2)** 和 **源单元地址 (SA2)**: 数据传输的目标和来源地址。 7. **SourceID (SID)**: 重试发送时的计数器,通常设置为00。 8. **命令代码、文本和帧校验序列 (FCS)**: 用于确定帧的完整性,2字节的异或校验。 9. **结束符 (Terminator)**: 使用*CR(ASCII 2A 0D),表示帧的结束。 **发送帧**阶段,用户按照规定的格式构建数据帧,并发送给PLC。接收帧时,PLC解析数据帧,根据ICF和响应延迟等待时间做出相应的操作。 **读取数据**和**写入数据**命令(例如例一、例二)是FINS协议中的核心功能,通过指定的命令代码,上位机可以请求读取PLC的内存数据或者写入新的数据。这些命令会根据约定的格式,包括地址和数据长度等信息,进行有效通信。 **接收桢**阶段,PLC接收到数据帧后,会验证FCS以确保数据的准确性,然后执行相应的操作,比如存储、处理或反馈确认信息。 在实际应用中,开发者需要熟悉这个协议的细节,包括帧的构建和解析规则,以便正确配置和实现与CJ1M PLC的HostLink通讯。理解并掌握这种协议有助于优化自动化系统的性能,提高数据传输的可靠性和效率。