Modbus功能表.docx

上传人:b****6 文档编号:6971020 上传时间:2023-01-13 格式:DOCX 页数:10 大小:62.16KB
下载 相关 举报
Modbus功能表.docx_第1页
第1页 / 共10页
Modbus功能表.docx_第2页
第2页 / 共10页
Modbus功能表.docx_第3页
第3页 / 共10页
Modbus功能表.docx_第4页
第4页 / 共10页
Modbus功能表.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

Modbus功能表.docx

《Modbus功能表.docx》由会员分享,可在线阅读,更多相关《Modbus功能表.docx(10页珍藏版)》请在冰豆网上搜索。

Modbus功能表.docx

Modbus功能表

Modbus网络是一个工业通信系统,由带智能终端的可编程

序控制器和计算机通过公用线路或局部专用线路连接而成。

其系统结构既包括硬件、亦包括软件。

它可应用于各种数据

采集和过程监控。

下表1是ModBus的功能码定义。

表1ModBus功能码

功能码

名称

作用

01

读取线圈;

状态

取得组逻辑线圈

圜的当前状态(ON/OFF)

02

读取输入状态

取得组开关输入的当前状态(ON/OFF)

r

在个或多个保持寄存器中取得当前的二03读取保持寄存器

进制值

04

读取输入寄存器

在个或多个输入寄存器中取得当前的二

进制值

05强置单线

强置个逻辑线圈

圜的通断状态

06

预置单寄存器

把具体进值装入个保持寄存器

07

读取异常;

状态

取得8个内部线

圈的地址由控制;

这些线圈定义,1

适宜-

i圈的通断状态,这8个线器决定,用户逻辑可以将以说明从机状态,短报文

于迅速读取状态

r

08

回送诊断校验

把诊断校验报文送从机,以对通信处理进

行评鉴

09

编程(只用于

484)

使主机模拟编程器作用,修改PC从机逻

10

控询(只用于

484)

可使主机与台正在执行长程序任务从机通信,探询该从机是否已完成其操作任务,仅在含有功能码9的报文发送后,本功能码才发送

11

读取事件计

十数

可使主机发出单询问,并随即判定操作是否成功,尤其是该命令或其他应答产生通信错误时

12

读取通信事件记

可是主机检索每台从机的ModBus事务处

理通信事件记录。

如果某项事务处理完成,

记录会给出有关错误

13

编程(184/384

484584)

可使主机模拟编程器功能修改PC从机逻

14

探询(184/384

484584)

可使主机与正在执行任务的从机通信,定

期控询该从机是否已完成其程序操作,仅在含有功能13的报文发送后,本功能码才得发送

15

强置多线圈

8

强置串连续逻辑线圈的通断

r

16

预置多寄存器

把具体的进制值装入串连续的保持寄

存器

17

报告从机标识

可使主机判断编址从机的类型及该从机运

行指示灯的状态

18

(884和MICRO

84)

可使主机模拟编程功能,修改PC状态逻

19

重置通信链路

发生非可修改错误后,是从机复位于已知

状态,可重置顺序字节

20

读取通用参数

(584L)

显示扩展存储器文件中的数据信息

21

写入通用参数

(584L)

把通用参数写入扩展存储文件,或修改之

22〜64

保留作扩展功能

备用

65〜72

保留以备用户功

能所用

留作用户功能的扩展编码

73〜119

非法功能

120〜

127

保留

留作内部作用

128〜

255

保留

用于异常应答

Modbus网络只是一个主机,所有通信都由他发出。

网络可支持247个之多的远程从属控制器,但实际所支持的从机数要由所用通信设备决定。

采用这个系统,各PC可以和中心主机交换信息而不影响各PC执行本身的控制任务。

是ModBus各功能码对应的数据类型。

表2ModBus功能码与数据类型对应表

功能

数据类型

01

02

03

整型、字符型、状

浮点型

1犬态字、

1

04

整型、状态字、

浮点型

05

06

整型、字符型、状

浮点型

1犬态字、

1

08

N/A

重复回路反馈”信息

15

16

整型、字符型、状态字、

浮点型

17

字符型

(1)ModBus的传输方式

在ModBus系统中有2种传输模式可选择。

这2种传输模式与

从机PC通信的能力是同等的。

选择时应视所用ModBus主机而

定,每个ModBus系统只能使用一种模式,不允许2种模式混

用。

一种模式是ASCII(美国信息交换码),另一种模式是RT

U(远程终端设备)这两种模式的定义见表3

表3ASCII和RTU传输模式的特性

特性

ASCII(7位)

RTU(8位)

编码系

十六进制(使用

ASCII可打印字

符:

0〜9,A〜

F)

二进制

1

每一个

字符的

位数

1

1

开始位

1位

1位

数据位(最低有

效位第一位)

7位

8位

奇偶校验(任选)

1位(此位用于奇偶校验,无校应则无该位)

1位(此位用于奇

偶校验,无校应则无该位)

停止位

1或2位

1或2位

错误校验

LRC(即纵向冗

CRC(即循环冗

余校验)

余校验)

ASCII可打印字符便于故障检测,而且对于用高级语言

(如Fortan)编程的主计算机及主PC很适宜。

RTU则适用

于机器语言编程的计算机和PC主机。

用RTU模式传输的数据是8位二进制字符。

如欲转换

为ASCII模式,则每个RTU字符首先应分为高位和低位两部分,这两部分各含4位,然后转换成十六进制等量值。

用以构成报文的ASCII字符都是十六进制字符。

ASCII模式

使用的字符虽是RTU模式的两倍,但ASCII数据的译玛和

处理更为容易一些,此外,用RTU模式时报文字符必须以

连续数据流的形式传送,用ASCII模式,字符之间可产生长

达1s的间隔,以适应速度较快的机器。

表4给出了以RTU方式读取整数据的例子

以RTU方式读取整数据的例子

主机请求

地址

功能码

第个寄存器的高位地址

第个奇存器的低位地址

寄存器

的数量

的高位

寄存器

的数量

的底位

错误校

01

03

00

38

00

01

1XX

从机应答

地址

功能码

字节数

数据咼

字节

数据低

字节

错误校

01

1

03

1

2

41

24

XX

六进制数4124表示的十进制整数为16676,错误校

验值要根据传输方式而定。

(2)Modbus的数据校验方式

CRC-16(循环冗余错误校验)

CRC-16错误校验程序如下:

报文(此处只涉及数据位,

不指起始位、停止位和任选的奇偶校验位)被看作是一个连续的二进制,其最高有效位(MSB)首选发送。

报文先与

XT16相乘(左移16位),然后看XT16+Xt15+Xt2+除,

XT16+XT15+XT2+可以表示为二进制数11000000000000101。

整数商位忽略不记,16位余数加入该报文(MSB先

发送),成为2个CRC校验字节。

余数中的1全部初始化,以免所有的零成为一条报文被接收。

经上述处理而含有CR

C字节的报文,若无错误,到接收设备后再被同一多项式(X

T16+XT15+XT2+1除,会得到一个零余数(接收设备核验这个CRC字节,并将其与被传送的CRC比较)。

全部运算

以2为模(无进位)。

习惯于成串发送数据的设备会首选送出字符的最右位(L

SB-最低有效位)。

而在生成CRC情况下,发送首位应是被

除数的最高有效位MSB。

由于在运算中不用进位,为便于

操作起见,计算CRC时设MSB在最右位。

生成多项式的位序也必须反过来,以保持一致。

多项式的MSB略去不记,因其只对商有影响而不影响余数。

生成CRC-16校验字节的步骤如下:

②该16位寄存器的高位字节与开始8位字节进行“异或”运算。

运算结果放入这个16位寄存器。

③把这个16寄存器向右移一位。

数位是0,则返回③。

⑤重复③和④,直至移出8位。

⑦重复③〜⑥,直至该报文所有字节均与16位寄存器进行异或”运算,并移位8次。

⑧这个16位寄存器的内容即2字节CRC错误校验,被加到

CRC1

报文的最高有效位。

另外,在某些非ModBus通信协议中也经常使用

6作为校验手段,而且产生了一些CRC16的变种,他们是

使用CRC16多项式XT16+XT15+XT2+1,单首次装入的16位寄存器为0000;使用CRC16的反序XT16+Xf14+Xfl+1,首次装入寄存器值为0000或FFFFH。

LRC(纵向冗余错误校验)

LRC错误校验用于ASCII模式。

这个错误校验是一个8

位二进制数,可作为2个ASCII十六进制字节传送。

进制字符转换成二进制,加上无循环进位的二进制字符和二进制补码结果生成LRC错误校验(参见图)。

这个LRC

在接收设备进行核验,并与被传送的LRC进行比较,冒号

表5LRC生成范例――读取02号从机的前8个线圈

十八进制

二进制

地址

0

2

0000

0010

功能码

0

1

0000

0001

起始地址高

0

0

0000

0000

起始地址低

0

0

0000

0000

单兀数量

0

0

0000

0000

0

8

+

0000

1000

0000

1011

变成补码

1111

0101

错误校验

F

5

F

5

位)

0000

0010

0000

0001

0000

0000

0000

0000

0000

0000

0000

1000

错误校验

1111

0101

0000

0000

接受PC把所

有收到的数

据字节(包括

最后的LRC)

加在一起,8

位应全部为0

(注意:

和可

能超过8位,

应略去最低

 

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

当前位置:首页 > 求职职场 > 社交礼仪

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

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