ModbusTCP通讯协议书范本Word下载.docx
《ModbusTCP通讯协议书范本Word下载.docx》由会员分享,可在线阅读,更多相关《ModbusTCP通讯协议书范本Word下载.docx(14页珍藏版)》请在冰豆网上搜索。
[0000]
[0000000000]:
ModbusTCP报文头,简化为全0即可。
使用组态软件时,自动设置[06]:
剩余数据长度,说明还剩6个字节等待接收。
使用组态软件时,自动设置
[01]:
子设备ID。
ModbusTCP忽略。
[01]:
ModbusTCP功能码01
[000A]或[003C]:
寄存器地址,高位字节在前,低位字节在后。
[0000]:
寄存器地址偏移,设备忽略此数据,只设置寄存器地址即可工作,设置成0000即可。
读全部开关量输入状态应答报文:
[0000000000][04][01][01][01][42]
读一路开关量输入状态应答报文:
[0000000000][04][01][01][01][01]
使用组态软件时,自
动设置。
[04]:
剩余数据长度,说明还剩4个字节等待接收。
使用组态软件时,自动设置。
返回字节数,1个字节的8个bit对应8路输入,接通/低电平时,对应的bit置1,否则置0。
8路输入设备返回01,16路输入设备返回02,以此类推。
[42]或[01]:
对于读全部开关量输入状态报文,此处为开关量输入状态字节,bit0
对应input1,接通/低电平为1,否则为0。
此处为01000010,说明Input2、nput7为接通或低电平状态。
其他为断开或高电平状态。
开/高电平状态。
三、读模拟量、温湿度输入(保持寄存器)
03
不同类型及格式的模量输入,具体描述如下。
[29]--读温湿度及传感器状态,特殊编程格式,不支持组态软件。
[2A]--读温度值,地址偏移可以为任意值,建议设置为0000。
标准Modbus浮点
数格式,支持组态软件。
[2B]--读湿度,地址偏移可以为任意值,建议设置为0000。
标准Modbus浮点数
格式,支持组态软件,
[2C]--读露点,地址偏移可以为任意值,建议设置为0000。
格式,支持组态软件。
[46]--读模指定路数的模数通道值,地址偏移指出要读取的几路输入,最小为1,
最大为设备支持的模数输入路数。
标准Modbus浮点数格式,支持组态软件。
[47]--一次读取全部输入通道的模数值,地址偏移为任意值,建议设置为0000,
标准Modbus浮点数格式,支持组态软件。
[50]--读第1路模数值,递增1(如51)为第2路,以此类推最大为50+设备最大模拟量输入路数,地址偏移为任意值,建议设置为0000。
标准Modbus浮点数格式,支持组态软件。
参照寄存器说明设置。
读标准格式温度输入发送报文:
[0000000000][06][01][03][002A][0000]读第1路模拟量输入发送报文:
[0000000000][06][01][03][0050][0000]
一次读2路模拟量输入发送报文:
[0000000000][06][01][03][0046][0002]
一次读所有模拟量输入发送报文:
[0000000000][06][01][03][0047][0000]
[06]:
剩余数据长度,说明整个报文还剩6个字节。
[01]:
[03]:
ModbusTCP功能码03
[0029]:
参考寄存器地址说明。
[0000]:
寄存器地址偏移,参考寄存器地址说明
读专用格式温湿度输入应答报文:
[0000000000][08][01][03][05]
[<
1025>
<
2A3B>
00>
]
读标准格式温度输入应答报文:
[0000000000][07][01][03][04][412828F4]
读第1路模拟量输入应答报文:
[0000000000][07][01][03][04][00040879]
读2路模拟量输入应答报文:
[0000000000][0B][01][03][08][000408C6][00079F2C]
读所有模拟量输入应答报文:
使用组态软件时,自动设置。
[08]:
剩余数据长度,此处说明还剩8个字节等待接收。
使用组态软件时,自动设置。
0B还剩11个字节,0F还剩15个字节。
[05]:
结果数据长度,由发送报文的寄存器地址决定。
例如,05为5个有效数据字节。
04为4个字节,一个模数通道或标准浮点数(温湿度)值用4个字节,所以返回1个通道值用4个字节。
08为2个通道模数值8个字节。
v2A3B>
v00>
][412828F4]或[00040879]:
温湿度或模数值。
]:
非标准格式温湿度值。
第1个字节为温度整数,第
2个字节为温度小数。
温度整数为10,小数为25,温度值为:
16.37摄氏度。
V2A3B第1个字节为湿度整数,第2个字节为湿度小数。
湿度整数为2A,小数为3B,湿度值为42.56%。
传感器状态字节:
0-传感器正常,温湿度值有效。
其他值为传感器错误,温湿度值无效。
[412828F4]:
温度、湿度、露点数据,Modbus浮点数格式。
[00040879]:
模数采样结果值,Modbus32位长整数据。
四、单独设置一个开关量/TTL输出状态
05
此功能码不需要地址偏移。
控制数据:
FFOO-接通或为低电平,0000-断开或高电平
2.ModbusTCP格式(网口)
设置第8路输出为接通或TTL为低电平报文:
[0000000000][06][01][05][0025][FF00]
[05]:
ModbusTCP功能码05
[0025]:
第8路=1E+07=25
[FF00]:
将第8路输出设置为接通或低电平。
0000为断开或高电平。
如果设备正确执行了指令,将原样返回接收到的报文,应答报文:
[00000000
00][06][01][05][0025][FF00]
五、设置多个开关量/TTL输出状态
1.功能码、寄存器地址、地址偏移
0F
64
控制路数(地址偏移):
1至最大路数的输出
设置全部8路输出为接通/设置TTL为低电平报文:
[0000000000][08][01][0F][0064][0008][01][FF]
剩余数据长度,说明整个报文还剩8个字节。
[0F]:
ModbusTCP功能码0F
[0064]:
[0008]:
同时设置8路输出状态。
控制数据字节个数
[FF]:
控制数据字节,1个字节控制8路输出,字节中置1位对应的开关量输出将控制为接通或低电平状态。
如bit0=1,Outuputl为接通或低电平状态。
FF为
设置所有8个通道全部接通或低电平状态。
如果设备正确执行了指令,将原样返回接收到的报文,应答报文:
[0000000000][08][01][0F][0064][0008][01][FF]
六、读开关量输出状态
1.功能码、寄存器地址、偏移此报文使用第一节的01功能码,地址不同。
64地址偏移:
小于最大输出路数即可,建议为0000。
读开关量输入发送报文:
[0000000000][06][01][01][0064][0000]
[0064]:
为00
设备应答报文:
[000000000004010101D5]
bit置1否则置0。
8路输出设备返回01,16路输入设备返回02,以此类推。
[D5]:
开关量输入状态字节,bit0对应Outputl,接通/低电平为1,否则为0。
此处为11010101,说明Outputl、Output3、Output5、Output7、Output8为接通
或低电平状态。
输出状态为设备保存的值,如果硬件损坏,这个值将无法反映输出的实际情况。
七、组态软件设置,以组态王为例
1.设备定义
使用京金华、莫迪康或其他厂家的通用型ModbusTCP区动即可
设备配置向导一一生产厂家.谤备名称、通讯方式
设备配宣向导将辅助您完成设备的安装
+J华光A|
+罗克韦尔
-算迪康
+1ModRTUServtr
+ModtusPlus
+Modlus(ASCII)
+1Hodins(KTV)
+Modbus(KTU)unpack
ref
-Modbiis(以奴岡)
+ModbusTcpSer^er十IUNITEWAYv
您所选的设备
生产厂家:
其迪康
设备名称:
Modbus(1^太网)
高簸查找通信描述:
TCP
二_「[下_歩追]^肖
2.开关量输入
数据类型:
bit
第一路输入寄存器为061
第二路输入寄存器为062
3.开关量输出
使用单独读取一路开关量输入报文
第一路输输出寄存器为031
第二路输入寄存器为032
4.定义温湿度变量
定义变量
基本属性报警定义]记录和安全区]
连接设备EI0V2
寄存器(90044
-3
数据荽型:
屈厂
读写属性:
r读写金只读
「只写
采集频率[1500毫秒
转换方式
目线性「开方高级|
厂允许DDE访问
float
使用Modbus标准格式寄存器,
读第一路温度值寄存器为90043
读第一路湿度值寄存器为90044
读第一路露点值寄存器为90045
5.定义模拟量变量
定义第一路模拟量输入,寄存器为:
90081
定义第二路模拟量输入,寄存器为:
90082