什么是无程序通信
无程序通信是指,PLC可以在不编写通信程序的前提下,通过其存储器读写温控器的参数、运行或停止温控器的功能。在无程序通信中,一台PLC最多可以连接16台温控器。
「温控器的无程序通信」
这里,我们以欧姆龙的E5EC系列举例,使用器材如下:
实验案例:
一台CP1H PLC与一台E5EC温控器之间通过无程序通信的方式,实现以下两个功能:
1、读取E5EC的当前温度PV值;
2、对E5EC温控器温度设定值SP的设置。
STEP 1:开关设置和硬件接线
由于PLC与温控器之间要通过RS-485方式进行通信,因此这里使用CP1W-CIF11通信选件板。
在使用前,需要对CP1W-CIF11背面的动作设定开关进行设定(如下图),设定完成后,将CP1W-CIF11安装到PLC的串口2上即可。
接线时,将CP1W-CIF11的RDA-端子连接至E5EC的14号A-端子,将RDB+端子连接至E5EC的13号B+端子。
STEP 2:PLC通信参数设置
PLC侧的设置需要通过CX-P软件来进行,首先将PLC设置为编程模式,在CX-P软件的“设置”项中的“串口2”页,按下图所示进行通信参数的设置(单元号要与温控器的“通信节点编号UNIT”设置一致)。
将此下载到PLC中后,PLC需要断电重启后设置生效。
STEP 3:温控器参数设置
在通信设定菜单进行:
1、协议的选择,将PSEL选项设定为FINS。
2、U-No选项,进行通信单元编号的设定,这里设定为0(请注意,进行无程序通信时,通信单元号必须从0开始依次设置,且中间不能跳号)。
3、bPS选项,进行通信波特率的设置,这里设定为57.6。
4、SdWt选项,设置发送数据等待时间,进行无程序通信时,推荐值为“1”。
5、MAXU选项,进行最大通信单元编号的设定,当PLC只跟一台温控器通信时,将MAXU设定为0即可。
除了上述的通信参数外,我们还需要在温控器中设置PLC与其通信的数据地址,E5EC使用PLC的存储器与其进行通信。在温控器中,可以通过区域类型参数选项AREA设置通信的内存区域,PLC中可以使用的内存区域如图所示,并且通过开始地址上位AdRH和下位AdRL选项设置通信起始地址。
按模式键找到AREA选项,将其设定为0,即用PLC的DM数据区进行数据通信;
继续按模式键到AdRH和AdRL,将两者均设定为0,即从PLC的D0开始进行数据通信。
另外,E5EC的当前温度PV值可在PLC的D7中进行读取,对E5EC温度设定值SP的设置,则在PLC的D17中进行设置,另外,对下载区域进行设定的请求标志位为D15。
最后,为了保证能对温控器进行写入的操作,还需要在温控器的调整菜单中,将通信写入选项CMWT设置为ON。
温控器参数设置完成后,温控器断电重启后设置生效。
STEP 4:通信实现
我们通过CX-P软件的查看窗口来对PLC的内存区域进行监控,根据我们前面的参数设置,D7中应显示温度的PV值,我们观察到D7中的值为23,表示当前温度值为23度。
另外,我们通过PLC实现对E5EC温控器温度设定值SP的设置,比如我们要将温度设定值设定为60度,那么我们在D17中赋值60,然后将下载请求标志D15置1后,则可以观察到温控器的设定值已经更改为60,通信实现!
如果想对温控器进行运行、停止等,需要使用动作指令代码的操作,请参考E5□C温控器通信手册「6-3-4动作指令代码章节」。
(转载)