Fins命令+Hostlink协议通讯实验一、实验配置硬件:CPU单元:CJ2M-CPU35RS232串口选件板:CP1W-CIF01USB转232连接电缆:CS1W-CIF31软件:CX-Programmer、串口调试助手UartAssist二、PC主机直连PLC串口命令帧格式介绍命令格式响应格式PC主机直连PLC的情况下,主机发送命令给PLC,发送命令格式如下:(P54)@:Hostlink协议起始代码UnitNo.:单元号,对应PLC内置串口或串行通讯单元设置的Hostlink单元号。Headercode:在PC主机直连PLC的情况下,头代码为FAResponsewaittime:设置范围为0~F,单位为10ms,例如设置为2,则响应等待时间为20msICF、DA2、SA2:在PC主机直连PLC的情况下,固定为00。SID:通常设置为00Finscommandcode:参考Fins通讯手册P125读命令:0101写命令:0102Text:具体操作内容,读写区域、读取起始地址、数据长度等内容存储区代码:(参考Fins通讯手册P137)DM(word):82W(bit):31W(word):B1CIO区(bit):30Tips:使用Fins指令最大可读取538个字节。一条命令不能超过1114个字符。三、串口通讯调试实例实例1——DM数据寄存器区读写实例;1、读取D0开始1个通道的值发送命令:@00FA00000000001018200000000017C*↙(回车键)返回命令码:@00FA004000000001010000123447*↙(回车键)2、读取D100开始的50个通道发送命令:@00FA00000000001018200640000327E*↙(回车键)3、写D200开始的2个通道发送命令:@00FA00000000001028200C8000002123456780F*↙(回车键)Headercode:在PC主机直连PLC的情况下,头代码为FAResponsewaittime:设置范围为0~FICF、DA2、SA2:在PC主机直连PLC的情况下,固定为00。SID:通常设置为00Finscommandcode:参考Fins通讯手册P125读命令:0101写命令:0102DM(word):82W(bit):31W(word):B1CIO区(bit):3000c8就是D200地址00表示通道中的位0002表示读取2个通道值响应命令:@00FA00400000000102000040*↙(回车键)实例2——Wr工作区读写操作1、读取W10开始的8个通道发送命令:@00FA0000000000101B1000A0000087D*↙(回车键)2、写W20开始的5个通道发送命令:@00FA0000000000102B100140000050001000200030004000506*↙(回车键)响应命令:@00FA00400000000102000040*↙(回车键)总结:由上述例子可得,对于PC主机直连PLC串口的情况下,无论什么存储区,读操作均为0101,写操作为0102,只需将不同存储区的代码更改即可。建议PC与PLC交换数据时,尽量采用连续的通道(一个字)的形式进行交换。