Hitech屏与施耐德电气PLC的通讯测试

Hitech屏与施耐德电气PLC的通讯测试
Hitech屏与施耐德电气PLC的通讯测试

Hitech屏与施耐德电气PLC的通讯测试

施耐德电气成都办事处,张福

Hitech触摸屏与施耐德电气的触摸屏在Modbus协议上有很多区别,在Hitech触摸屏所支持几种Modbus协议中对位的控制一般是通过Modbus 01或02或15号命令进行的。下面先做部分Hitech触摸屏的Modbus通讯测试,用通讯数据说明问题。

1、Hitech屏的通讯设置为Modus Slave,Slave地址1,变量对应如下:

%MW200(PLC)-->W200(Hitech屏),%M100(PLC)-->B100(Hitech屏)注:字可用范围0~65535;位可用范围0~65535

屏与M238的通讯交换数据如下:

[15:41:06.494] 01 03 00 C8 00 01 05 F4

01 03 02 00 05 78 47

[15:41:06.544] 01 01 00 64 00 01 BC 15

01 01 01 00 51 88

结论:Hitech屏使用03号命令访问%MW寄存器,使用01号命令访问%M寄存器,不支持字抽取位的方式。

2、Hitech屏的通讯设置为Modicon 984(RTU: Slave),Slave地址1,变量对应如下:

%MW200(PLC)-->40201(Hitech屏),%M100(PLC)-->00101(Hitech屏)注:字可用范围40001~49999/30001~39999;位可用范围1~9999/10001~19999

屏与M238的通讯交换如下:

[15:58:53.769] 01 03 00 C8 00 01 05 F4

01 03 02 00 01 79 84

[15:58:53.829] 01 01 00 64 00 10 7C 19

01 01 02 00 00 B9 FC

结论:Hitech屏使用03号命令访问%MW寄存器,使用01号命令访问%M寄存器,不支持字抽取位的方式。

3、Hitech屏的通讯设置为Schneider-Electric Twido,Slave地址1,变量对应如下:

%MW200(PLC)-->%MW200(Hitech屏),%M100(PLC)-->%M100(Hitech 屏)

注:字可用范围0~9998;位可用范围0~255

屏与M238的通讯交换如下:

[16:13:02.579] 01 03 00 C8 00 01 05 F4

01 03 02 00 01 79 84

[16:13:02.619] 01 01 00 64 00 01 BC 15

01 01 01 00 51 88

结论:Hitech屏使用03号命令访问%MW寄存器,使用01号命令访问%M寄存器,不支持字抽取位的方式。

4、Hitech屏的通讯设置为Modus RTU Slave(Beijer Addressing),Slave地址1,变量对应如下:

%MW200(PLC)-->D4_200(Hitech屏),%M100(PLC)-->%M100-->D0_100(Hitech屏)

注:字可用范围D3_n(n=0~65535)/ D4_ n(n=0~65535);位可用范围D0_ n(n=0~65535)/ D1_ n(n=0~65535)/ D3_n.b(n=0~65535,b=0~15)/ D4_n.b(n=0~65535,b=0~15)

屏与M238的通讯交换如下:

[16:13:02.579] 01 03 00 C8 00 01 05 F4

01 03 02 00 01 79 84

[16:13:02.619] 01 01 00 64 00 01 BC 15

01 01 01 00 51 88

%MW200(PLC)-->D4_200(Hitech屏),位%MW200:X0(PLC)-->D4_200.0(Hitech屏)时,

屏与M238的通讯交换如下:

[18:00:21.408] 01 03 00 C8 00 01 05 F4

01 03 02 00 01 79 84

[18:00:21.478] 01 03 00 64 00 01 C5 D5

01 03 02 00 00 B8 44

结论:Hitech屏使用03号命令访问%MW寄存器,使用01号命令访问%M寄存器。使用03号命令访问字抽取位。

使用01&02&15号命令访问位的Modbus操作对于M238以外的PLC没有问题,如Twido、M340等均支持这种模式。但M238中,01&15号命令操作的是%QXa.b,02号命令操作的是%IXa.b,这样,屏上需要的按键、指示灯等位操作就无法实现了。

M238的Modbus协议中对位访问的定义:

M238中,%Qx.y或%Ix.y如果在物理上没有对应的硬件的输出点或输入点存在,那么这些点的地址在编程时可以进行相应的操作,在Hitech触摸屏上对位的读或写都可以进行。需要注意的是,在程序中对这种位进行操作时,必须要小心,防止其与实际存在的物理I/O 点冲突。

如果在Hitech触摸屏上将通讯协议设置成Modus RTU

Slave(Beijer Addressing)时,对位的操作就可以用MW寄存器的字抽取位的方式进行了,这样就不用担心地址冲突的问题了,建议使用这种方式进行编程。

本文测试环境:M238编程软件Somachine V1.1正式版,Hitech触摸屏编程软件HITECH_ADP V6.3.168,仅供参考。

相关主题
相关文档
最新文档