nmodbus协议类.docx

上传人:b****6 文档编号:5827532 上传时间:2023-01-01 格式:DOCX 页数:9 大小:18.86KB
下载 相关 举报
nmodbus协议类.docx_第1页
第1页 / 共9页
nmodbus协议类.docx_第2页
第2页 / 共9页
nmodbus协议类.docx_第3页
第3页 / 共9页
nmodbus协议类.docx_第4页
第4页 / 共9页
nmodbus协议类.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

nmodbus协议类.docx

《nmodbus协议类.docx》由会员分享,可在线阅读,更多相关《nmodbus协议类.docx(9页珍藏版)》请在冰豆网上搜索。

nmodbus协议类.docx

nmodbus协议类

编号:

_______________

 

本资料为word版本,可以直接编辑和打印,感谢您的下载

 

nmodbus协议类

 

甲方:

___________________

乙方:

___________________

日期:

___________________

 

说明:

本合同资料适用于约定双方经过谈判、协商而共同承认、共同遵守的责任与义务,同时阐述确定的时间内达成约定的承诺结果。

文档可直接下载或修改,使用时请详细阅读内容。

nmodbus协议类

篇一:

modbus协议的特点

modbus总线广泛应用于仪器仪表、智能高低压电器、变

送器、可编程控制器、人机界面、变频器、现场智能设备等诸多领域。

modbus与其他的现场总线和工业网络相比有以下几个显著特点:

1)标准、开放:

用户可以免费放心的使用modbus协议,不用缴纳许可费用,不会涉及侵犯知识产权。

目前支持modbus的厂一家超过400家,支持modbus的产品超过600种。

在中国,modbus已经成为国家标准gb/t19582-20xx。

据不完全统计:

截止到20xx年,modbus的节点安装数H已经超过了1000万个。

2)应用广泛:

凡modbus协议设备具有Rs232/485接口的都可以使用本产品实现与现场总线pRoFibus的互连。

如:

具有modbus协议接口的变频器、智能高低压电器、电机启动保护装置、电H测H装置、智能现场测H设备、各种变送器及仪表等。

3)modbus可以支持较多类型的电气接口:

modbus总线

协议采用主站查询从站的方式,物理接口可以是Rs232、

Rs485、Rs422、Rj45,还可以在各种介质上传送,如双绞线、

光纤、无线射频等。

4)modbus的帧格式较为简单、紧凑,格式规范,易于传输,通俗易懂。

用户使用容易,厂商开发简单。

用户不必了解pRoFibus和modbus技术细节,只需参考说明手册及提供的应用实例,按要求完成配置,不需要复杂的编程,即可在短时间内实现设备间的连接通信。

5)透明通信:

用户可以依照pRoFibus通信数据区和modbus通信数据区的映射关系,实现pRoFibus至Vmodbus之间的数据透明通信。

篇二:

modbus协议整理

[modbus协议整理汇总】

l.modbus功能码简述

下表列出modbus支持的部分功能代码:

以十进制表示。

表l.lmodbus部分功能码

1.1功能码说明

功能码可以分为位操作和字操作两类。

位操作的最小单位为bit,字操作的最小单位为两个字节。

【位操作指令】读线圈状态01h,读(离散)输入状态02h,写单个线圈06h和写多个线圈0Fh。

【字操作指令】读保持寄存器03h,写单个寄存器06h,

写多个保持寄存器10ho

1.2寄存器地址分配

表1.2modbus寄存器地址分配

1.3寄存器种类说明

表1.3modbus寄存器种类说明

1.4plc地址和协议地址区另U

plc地址可以理解为协议地址的变种,在触摸屏和plc

编程中应用较为广泛。

1.4.1寄存器plc地址

寄存器plc地址指存放于控制器中的地址,这些控制器

可以是plc,也可以使触摸屏,或是文本显示器。

plc地址

一般采用10进制描述,共有5位,其中第一位代码寄存器

类型。

第一位数字和寄存器类型的对应关系如表1所示。

plc

地址例如40001、30002等。

1.4.2寄存器协议地址

寄存器协议地址指指通信时使用的寄存器地址,例如

plc

地址40001对应寻址地址0x0000,40002对应寻址地址

0x0001,寄存器寻址地址一般使用16进制描述。

再如,plc

寄存器地址40003对应协议地址0002,plc寄存器地址30003

对应协议地址0002,虽然两个plc寄存器寄存器通信时使用

相同的地址,但是需要使用不同的命令访问,所以访问时不存在冲突。

篇三:

modbus协议和点表

本通讯协议描述了公司gzdw直流屏监控系统在

modbusRtu通讯模式下的信息传输,输入输出命令格式和数

据地址的定义,以方便第三方使用和开发,保证信息和数据

在上位监控计算机和公司直流屏系统之间有效的传输。

1.物理接口:

1.1串行通讯口采用Rs485方式。

1.2信息传输方式采用半双工异步方式,起始位1位,

数据位8位,无校验,停止位1位。

1.3数据传输速率为9600bps(默认),存在选项.

1.4在现场总线设备中,gzdw直流屏通讯口作从站.

2.本通讯转换器支持的modbusRtu通讯帧结构解释:

合标准modbusRtu通讯协议格式

每个modbus通讯帧由以下几个部分组成:

1)地址域

2)功能域

3)数据域

4)校验域

数据发送顺序:

2.1地址域

modbusRtu从站地址域为一个字节,公司直流屏系统地

址固定为0x03,其响应网络数据帧中地址域数据与自身地址

相等的数据信息命令。

2.2功能码域

2.3数据域

modbusRtu通讯协议数据域长度不定,视具体情况而定.

数据域中数据采用高字节在前,低字节在后的传输顺序,例如:

一个16位寄存器包含数据为0x12bc,该寄存器数据发送

顺序为:

高位字节:

0x12

低位字节:

0xbc

2.4校验域

公司直流系统modbusRtu通讯协议采用16位cRc校验,

传输时低字节在前,高字节在后

2.5功能域中01命令示例:

01功能码可由上位机发送请求本通讯转换器中的一个

或多个线圈(实际输出)状态,返回实际输出点接通/断开

状态。

具体实例:

1>查询

查询信息规定了要读的起始线圈和线圈H,线圈的起始

地址为零,1-16个线圈的寻址地址分为0-15。

例:

请求从

机设备17读20-56线圈。

slaveaddressll

Function01

startingaddresshi00

startingaddresslo

13

no.ofpointshi00

no.ofRointslo25

errorcheck(lRcorcRc)——

2>响应

响应信息中的各线圈的状态与数据区的每一位的值相

对应,1=on;0=oFF。

第一个数据字节的lsb为查询中的寻址

地址,其他的线圈按顺序在该字节中由低位向高位排列,直

至8个为止,下一个字节也是从低位向高位排例。

若返回的

线圈数不是8的倍数,则在最后的数据字节中的剩余位至字

节的最高位全部填零,字节数区说明全部数据的字节数

slaveaddress11

Function01

bytecount05

data(coils27-20)cd

data(coils35-28)6b

data(coils43-36)b2

data(coils51-44)0e

data(coils56-52)1b

errorcheck(lRcorcRc)

注释:

线圈27-20的状态用cdh表示,二进制值为

11001101,该字节的mcb为线圈27,lsb为

20。

线圈从左(27)向右(20)状态分别为

on-on-oFF-oFF-on-on-oFF-on,因此第一个字节中的线圈从

左到右应是27-20。

下一个字节的线圈应为35至28。

位数

据串行转输从低位到高位,即20.27,28.35。

最后一个数据

字节中,56-52线圈的状态为1bh(或二进制00011011),线

圈56是左数第4位,线圈52是该字节的最低位,所线圈56

至52的状态分另U为on-on-oFF-on-on注意3个剩余位(至最

高位的数)全部填0。

2.6功能域中02命令示例

02功能码可由上位机发送请求本通讯转换器中的一个

或多个接点(实际输入)状态,返回实际输入点接通/断开

状态。

具体实例

1>查询

查询信息规定了要读的输入起始地址,以及输入信号的

数虽。

输入起始地址为0,1-16个输入口的地址分别为0-15。

例:

请求读从机设备17的10197-10218的输入位状态。

slaveaddress11

Function02startingaddresshi00

startingaddressloc4

no.ofpointshi00

no.ofRointslo16

errorcheck(lRcorcRc)——

2>响应

响应信息中的各输入口的状态,分别对应于数据区中的

每一位值,1=on;0=oFF,第一个数据字节的lsb为查询中的寻址地址,其他输入口按顺序在该字节中由低位向高位排列,直至8个位为止。

下一个字节中的8个输入位也是从低位到

高位排列。

若返回的输入位数不是8的倍数,则在最后的数

据字节中的剩余位直至字节的最高位全部填零。

字节的最高位,字节数区。

说明了全部数据的字节数。

slaveaddress11

Function02

bytecount03

data(inputs10204-10197)ac

data(inputs10212-10205)db

data(inputs10218-10213)35

errorcheck(lRcorcRc)——

注释:

输入位10204-10197的状态用35h(或二进制00110101)表示。

输入位10218为左数第3位,10213输入位

为lsb,输入位10218-10213的状态分别为

on-on-oFF-on-oFF-on,注意最位还有2个剩余位需填零。

2.7功能域中03命令示例:

03功能码可由上位机发送请求本通讯转换器中的有效

寄存器,数据发送顺序示例:

具体实例

1>查询

查询信息规定了要读的寄存器起始地址及寄存器的数

虽,寄存器寻址起始地址为0000,寄存器1-16所对应的地

址分别为0-15

例:

请求读从机设备17的108,109,110三个地址的变

虽值。

slaveaddress11

Function03

startingaddresshi00

startingaddresslo6b

no.ofpointshi00

no.ofRointslo03

errorcheck(lRcorcRc)——

2>响应

响应信息中的寄存器数据为二进制数据,每个寄存器分

别对应2个字节,第一个字节为高位值数据,第二个字节为

低位数据。

例按查询要求返回响应

slaveaddressll

Function03

bytecount06

datahi(Register40108)02

datalo(Register40108)2b

datahi(Register40109)00

datalo(Register40109)00

datahi(Register40110)00

datalo(Register40110)64

errorcheck(lRcorcRc)

注释:

寄存器40108的数据用022bh2个字节(或用十进制555)表示,寄存器40109-40110中的数据为0000和0064h,(十进制时为0和100)

2.7功能域中04命令示例:

04功能码可由上位机发送请求本通讯转换器中的有效

模拟虽值,数据发送顺序示例:

具体实例

1>查询

查询信息规定了要读的模拟虽起始地址及模拟虽的数

虽,模拟虽寻址起始地址为0000,模拟虽1-16所对应的地

址分别为0-15

例:

请求读从机设备17的108,109,110三个地址的模

拟虽值。

slaveaddress11

Function04

startingaddresshi00

startingaddresslo6b

no.ofpointshi00

no.ofRointslo03

errorcheck(lRcorcRc)——

2>响应

响应信息中的模拟虽数据为二进制数据,每个模拟虽分

别对应2个字节,第一个字节为高位值数据,第二个字节为

低位数据。

例按查询要求返回响应。

slaveaddress11

Function04

bytecount06

datahi(Register40108)02

datalo(Register40108)2b

datahi(Register40109)00

datalo(Register40109)00

datahi(Register40110)00

datalo(Register40110)64

errorcheck(lRcorcRc)

注释:

模拟虽30108的数据用022bh2个字节(或用十进制555)表示,模拟虽30109-30110中的数据为0000和0064h,(十进制时为0和100)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1