3.6.2 IEC 104转Modbus-TCP协议

1、测试工具

该协议转发所需测试工具如下:

  • 低代码控制器

  • Vinci Software(支持协议IEC 60870-101/103/104和Modbus TCP/RTU/ASC,从模式和主模式测试);

  • Modbus Poll(Modbus客户端)和Modbus Slave(Modbus服务端)。

2、主要流程

IEC 104部分:控制器作为IEC 104客户端,Vinci作为IEC 104服务端,控制器读取Vinci上传的数据;

数据处理:将IEC 104采集到数据转存与Modbus协议对应测点之中。

Modbus部分:控制器作为Modbus服务端,Modbus Poll作为Modbus客户端,控制器将数据写入Modbus Poll中。

3、控制器配置文件

3.1、测点配置文件

序号点号名称别名是否离散是否计算点默认值备注
1100001测点1YX1TRUEFALSE0遥信1
2100002测点2YX2TRUEFALSE0遥信2
3100003测点3YX3TRUEFALSE0遥信3
4100004测点4YX4TRUEFALSE0遥信4
5100005测点5YX5TRUEFALSE0遥信5
6100006测点6YX6TRUEFALSE0遥信6
7100007测点7YX7TRUEFALSE0遥信7
8100008测点8YX8TRUEFALSE0遥信8
9100009测点9YX9TRUEFALSE0遥信9
10100010测点10YX10TRUEFALSE0遥信10
11100011测点11YC1FALSEFALSE0遥测1
12100012测点12YC2FALSEFALSE0遥测2
13100013测点13YC3FALSEFALSE0遥测3
14100014测点14YC4FALSEFALSE0遥测4
15100015测点15YC5FALSEFALSE0遥测5
16100016测点16YC6FALSEFALSE0遥测6
17100017测点17YC7FALSEFALSE0遥测7
18100018测点18YC8FALSEFALSE0遥测8
19100019测点19YC9FALSEFALSE0遥测9
20100020测点20YC10FALSEFALSE0遥测10

3.2、通信通道配置文件

IEC 104通信通道配置文件

IEC 104客户端的通信通道配置文件如下:

通道名称iec104服务通道1序号起始地址点号是否遥信控制点地址
测点个数2011100001TRUE6001
服务端ip127.0.0.122100002TRUE6002
服务端端口240433100003TRUE6003
通道状态点号44100004TRUE6004
源发地址055100005TRUE6005
公共地址166100006TRUE
公共地址字节数277100007TRUE
传输原因字节数288100008TRUE
信息体地址字节数399100009TRUE
T2超时(ms)150001010100010TRUE
T2超时(ms)100001111100011FALSE6011
T3超时(ms)200001212100012FALSE6012
最大发送报文参数121313100013FALSE6013
最大接收报文参数81414100014FALSE6014
控制方向是否带时标FALSE1515100015FALSE6015
总召时间间隔(ms)100001616100016FALSE
是否为客户端(必须是TRUE)TRUE1717100017FALSE
点度量总召时间间隔(ms)100001818100018FALSE
1919100019FALSE
2020100020FALSE

Modbus通信通道配置文件

Modbus-TCP服务端的通信通道配置文件如下:

通道名称server测试通道通道名称测试通道1序号寄存器类型起始地址数据类型新请求标志轮询周期点号
连接个数1测点个数201COILS0BinaryFALSE5000100001
服务端口502服务端ip127.0.0.12COILS1BinaryFALSE5000100002
服务端端口55023COILS2BinaryFALSE5000100003
slave id14COILS3BinaryFALSE5000100004
通信协议XA5COILS4BinaryFALSE5000100005
一次读寄存器数上限1256COILS5BinaryFALSE5000100006
一次读开关数上限20007COILS6BinaryFALSE5000100007
一次写寄存器数上限1208COILS7BinaryFALSE5000100008
一次写开关数上限19689COILS8BinaryFALSE5000100009
轮询周期(ms)500010COILS9BinaryFALSE5000100010
超时(ms)100011HOLDING10TwoByteIntSignedFALSE5000100011
状态测点号12HOLDING11TwoByteIntSignedFALSE5000100012
13HOLDING12TwoByteIntSignedFALSE5000100013
14HOLDING13TwoByteIntSignedFALSE5000100014
15HOLDING14TwoByteIntSignedFALSE5000100015
16HOLDING15TwoByteIntSignedFALSE5000100016
17HOLDING16TwoByteIntSignedFALSE5000100017
18HOLDING17TwoByteIntSignedFALSE5000100018
19HOLDING18TwoByteIntSignedFALSE5000100019
20HOLDING19TwoByteIntSignedFALSE5000100020

4、测试过程

4.1Vinci配置

如下图所示,配置IEC 104服务端的IP地址及端口号(根据实际情况变动),设置公共地址、源发地址与低代码控制器IEC 104通信通道配置文件一致,并完成遥信、遥测的地址+数据配置以及控制点地址配置,完成后点击Start,即可得到如图的数据。

Vinci配置

4.2低代码控制器配置

控制器作为IEC 104客户端以及Modbus服务端,上传第三节中的各配置文件,注意其中IP地址及端口号需根据实际情况变动。

4.3Modbus Poll配置

如下图所示,配置Modbus服务端的IP地址及端口号(根据实际情况变动),完成后点击connection。

Modbus Poll配置

由于控制器会主动上传数据至Modbus Poll,所以能自动显示数据。对比数据可知低代码控制器完成了IEC 104至Modbus-TCP协议转发任务。