1.Cmnd的介绍
Cmnd是CP/CJ系列中一个可以发布任意Fins指令的功能块,支持网口和串口。此功能块有以下三步分组成。下面对Cmnd的一些使用进行介绍。
注意:CP编程手册上没有说明如果使用其他格式,需要在指令保存地址开头填入2803(CompoWay/F),2804(Modbus-RTU),2805(Modbus-ASCII)后面则输入对应的协议格式。若是使用Fins,则直接从指令保存地址首地址输入Fins格式,详细介绍请看 CP/CJ通信指令手册。**
2.串口
Cmnd可以通过串口网关发送任意Fins指令如 Hostlink Fins格式,Modbus-RTU,Modbus-ASCII,CompoWay/F 格式。
2.1用Cmnd发送Modbus-TCP
2.1.1 硬件接线
CP1H-EX | 温控表 | |
---|---|---|
RDB+ | —————————- | B- |
RDA- | —————————- | A- |
2.1.2 PLC设置
波特率和格式根据温控表的通信设置进行设置,模式选择串口网关<br /> 
2.1.3 程序
命令码:在Cmnd的指令发送首地址填入2804,转换成Modbus —RTU,后面的命令按Modbus格式填写
响应指令 前两个通道返回的是Fins指令的格式 2804 ,0000,后面的和Modbus格式一样<br />
本案例 CMND 指令保存地址为D100 ,响应数据首地址为D200 ,控制数据为D300
** 如读温控表PV值**<br /> ** 命令指令: ** 01 03 20 00 00 01 <br /> 用Cmnd不需要发送CRC验证码<br /> <br /> **响应地址收到** 28 04 00 00 01 03 02 00 1B <br /> 前四个字节为Fins响应码,读取数据为1B转换成十进制27<br /> <br /> 触发前将发送命令写入 CMND指令保存地址<br /> <br /> 触发后<br />
CMND 响应保存数据地址收到数据
** 如写温控表SV值**<br /> **命令指令:** 01 06 21 03 02 00 <br /> 用Cmnd不需要发送CRC验证码<br /> ** 响应地址收到** 28 04 00 00 01 06 21 03 02 00
触发前将发送命令写入 CMND指令保存地址
触发前SV值为0
触发后SV值为512
2.1.4 案例程序
[Cmnd串口.zip](https://www.yuque.com/attachments/yuque/0/2020/zip/974473/1583218563824-bfebef1a-74b4-4e2a-9660-95e3279ba2f3.zip?_lake_card=%7B%22uid%22%3A%221583218563496-0%22%2C%22src%22%3A%22https%3A%2F%2Fwww.yuque.com%2Fattachments%2Fyuque%2F0%2F2020%2Fzip%2F974473%2F1583218563824-bfebef1a-74b4-4e2a-9660-95e3279ba2f3.zip%22%2C%22name%22%3A%22Cmnd%E4%B8%B2%E5%8F%A3.zip%22%2C%22size%22%3A11974%2C%22type%22%3A%22application%2Fzip%22%2C%22ext%22%3A%22zip%22%2C%22progress%22%3A%7B%22percent%22%3A99%7D%2C%22status%22%3A%22done%22%2C%22percent%22%3A0%2C%22id%22%3A%22Q0Ms6%22%2C%22card%22%3A%22file%22%7D)
3.网口
网口例子请参考 CJ走网口用Cmnd通信