协议宏控制变频器和温控器
实验设备:CJ1G-CPU43H,CJ1W-SCU41-V1,3G3MV
实验目的:使用CJ1W-SCU41-V1的通信模块利用协议宏的方式控制变频器。
实验步骤:
1、系统概述,硬件搭建和接线
①CJ1W-SCU41-V1的管脚定义和3G3MV管脚定义
使用上面的422/485口,使用485方式接线,模块上的2线和4线拨码拨到2线处,422/485口的管脚定义如下图:
3G3MV的管脚定义
②3G3MV和SCU41接线
在SCU的RDA,RDB或者SDA,SDB中任选一组与R-,R+或者S-,S+连接,正对正,负对负。
2、软件设置
①首先将CJ1G用232电缆与电脑连接起来,将DIP#5拨到ON,自动在线,在线后创建IO表,右键IO表中的SCU41模块,选择继承设定启动,打开CX-protocol 软件。
②在IO表中对SCU41的422/485口进行设置,在协议中选择protocol marco,表示使用协议宏的方式。数据格式和波特率与第三方设备一致。设置如下图:
③3G3MV的设置:
n003设置为2,n004设置为6,n151设置为4,n152设置为0,n153设置为1,n154设置为2,n155设置为0,n156和n157都为出厂设置。
3、编程说明
①在PLC中编辑PMCR指令
PMCR指令参数如下图:
第一个参数中通信端口是自己设定,跟指令前的执行条件有关,例如如果设置为2,执行条件就变为A202.02,8~11位是物理端口,使用哪一个串口就写哪一个,单元地址是单元号+10。第二个参数是发送的起始序列。第三个参数是发送源通道。第四个参数是接收源通道。
②CX-protocol的设置
通过IO表继承启动显示如下图,右键New Protocol List选择新建Protocol,在弹出的窗口中选择CS/CJ
再右键new protocol新建一个sequence
右键new protocol下拉菜单的send Message list
点击Data后面的回车箭头,弹出下面的窗口
点击Message Data后面的Edit,在弹出的窗口中输入完整的一帧modbus命令
然后点击INSERT,将命令插入,同时点击Check Code后面的Edit,如下图设置好校验然后插入
③右键Receive Message List
点击Data后面的回车箭头,弹出下面的窗口
在Message Data中下拉菜单选择Variable,点击后面的Edit,
选择Variable,点击Variable
Type选择write W(),address选择operand,表示使用PMCR指令中设置的通道接收,下面的yN+x,y是倍数,x是偏移。
再点击Length,设置接收字节个数
如果不清楚需要接收多少个字节可以选择*
都设置完后右键sequence新建STEP
command中选择send&receive,send中选择Message,recv Message选择Message 1,点击new protocol list在TAGET中选择SCU模块。
由于是继承启动,所以直接编译,编译成功选择download。
到这里CX-protocol设置结束,最后执行PMCR指令。
实验现象:
当执行PMCR指令,可以在CX-protocol中查看trace,通过trace中的高电平来判断是否是正常的,trace查看方法为在trace list中右键选择continuous trace,然后再upload trace就可以了。
实验中使用的是PMCR的通道来接收数据,当执行PMCR,可以在相关通道中看到反馈:
D200中是总的通道数。
实验总结:
1、在CX-protocol中target一定要选择,否则编译序列时会报错
2、在编写modbus校验时default需要设置为65535,需要勾选反转。