通用直流屏MODBUS规约说明
- 格式:pdf
- 大小:265.67 KB
- 文档页数:4
Modbus RTU通用规约说明、模板及规约配置说明文档一、Modbus RTU通用规约说明1.1Modbus协议简介Modbus协议最初由Modicon公司开发出来,在1979年末该公司成为施耐德自动化(Schneider Automation)部门的一部分,现在Modbus已经是工业领域全球最流行的协议。
此协议支持传统的串口链路RS-232、RS-422、RS-485和以太网设备。
许多工业设备包括PLC,DCS,智能仪表等都在使用Modbus协议作为他们之间的通讯标准。
Modbus协议包括ASCII、RTU、TCP等,并没有规定物理层。
此协议定义了控制器能够认识和使用的报文结构,而不管它们是经过何种网络进行通信的。
标准的Modicon控制器使用RS232C实现串行的Modbus。
Modbus的ASCII、RTU协议规定了报文、数据的结构、询问和应答的方式,数据通讯采用主/从方式,主站发出数据请求报文,从站接收到正确报文后就可以发送数据到主站端以响应请求;主站也可以直接发报文修改从站的数据,实现双向读写。
1.2Modbus通用规约介绍Modbus协议需要对数据进行校验,串行协议中除有奇偶校验外,ASCII模式采用LRC 校验,RTU模式采用16位CRC校验,但TCP模式没有额外规定校验,因为TCP协议是一个面向连接的可靠协议。
另外,Modbus采用主从问答方式收发数据,在实际使用中如果某从站站点断开后(如故障或失电),主站可以诊断出来,而当故障修复后,网络又可自动接通。
因此Modbus协议的可靠性较好。
Modbus协议在串行链路中RTU模式使用的最多,通用性很强,所以在这里仅介绍一下Modbus RTU协议即Modbus通用规约。
下表是Modbus Rtu支持的功能码:在工程现场我们经常遇到第三方设备需要进行通信,如果是特殊规约,那就需要工自研究所专门做规约与模板。
如果是标准通信规约比如说CDT-91,MODBUS-RTU,103规约等,我们就可以根据厂家要到的规约与点表,自行配置模板进行通信。
MODBUS规约报文解析报文格式,报文全部为16进制,遥信状态需要转换为二进制:遥信报文1分析:发送数据:01 03 01 00 00 02 C5 F7 //16时14分02秒接收数据:01 03 04 03 03 00 00 0A 77 //16时14分02秒结果分析为:第1、2、9、10遥信合位。
遥信报文2分析:发送数据:01 03 01 00 00 02 C5 F7 //16时15分40秒接收数据: 01 03 04 12A2 00 00 5E A9 //16时15分40秒结果分析为:第2、6、8、10、13遥信合位遥信报文3分析:发送数据:01 03 01 00 00 02 C5 F7 //16时21分47秒接收数据:01 03 04 00 33 00 00 0A 3C //16时21分47秒结果分析为:第1、2、5、6遥信合位遥控点号:开关操作=0300H合操作TX: 01 06 03 00 00 02 08 4F //06表示遥控功能码,02表示分操作;RX: 01 06 03 00 00 02 08 4F //06表示遥控功能码,02表示分操作;遥控点号:开关操作=0300H 分操作TX: 01 06 03 00 00 01 48 4E //06表示遥控功能码,01表示分操作;RX: 01 06 03 00 00 01 48 4E //06表示遥控功能码,01表示分操作;遥测报文,每个遥测值占用2个字节,即1个寄存器,最大值为:0x0000H~0xFFFFH,即:0~65535。
发送数据:01 03 02 00 00 0D 85 B7 //16时27分02秒接收数据:01 03 1A 00 00 00 00 00 001E AE 00 00 1E AD1E AD 00 00 00 00 00 00 00 00 00 00 6A 96 77 67 //16时27分02秒电度报文分析:/********************伴随着总召换的电度主动上送****************************/ 共有4个电度:正向有功积分电度=0301H 10000.000(0x00989680),正向无功积分电度=0302H 0.000 (0x0),反向有功积分电度=0303H 0.000(0x0),反向无功积分电度=0304H 0.000(0x0)。
1.通讯参数和传输特性传输方式:异步串行通信方式。
MODBUS规约模式:RTU模式。
传输速率:2400 bps,4800bps,9600bps,19200bps。
串行口通讯数据格式:1 个起始位,8 个数据位, 无校验位,1个停止位。
最大传输距离:1200米。
通讯介质:推荐采用0.5mm的双绞线,不带屏蔽层。
(原因是如果使用屏蔽双绞线,但现场接地处理不好反而影响通讯质量)。
网络连接主站数目:1个。
网络连接从站数目:最多31个。
byte传输时间(帧间隔最小时间) + 10ms。
2.网络连接RSkm时取120Ω,600m时取220Ω,300m时取330Ω,如通信误码率较大,观察通信时的波形,匹配电阻做适当改变:末端匹配电阻合适末端匹配电阻偏小末端匹配电阻偏大3.通信参数选择通信站号:在通讯参数中修改装置地址,范围1~99,禁止使用0作为装置地址,地址0作为广播地址使用。
通信波特率: 通讯参数中修改装置485口,修改通信波特率:选择范围: 2400bps, 4800bps,9600bps,19200bps。
4.MODBUS协议通用格式4.1 支持的MODBUS功能码功能码02H: 读取开关量输入(读实遥信和虚遥信)。
功能码03H: 读取保持寄存器(读事件记录等)功能码04H: 读取输入寄存器(读远动遥测)功能码05H: 强制单点继电器输出(远方复归、单步的遥控跳闸、遥控合闸)。
功能码06H: 向保持寄存器写单个字(遥控跳闸、遥控合闸的选择和执行操作)功能码10H: 向保持寄存器(内存区)写多个16位的字(通讯对时)。
4.2 异常响应报文格式由于软件编程错误,对协议理解错误或通讯干扰等原因,MODBUS 通信子站接收到主站的报文后,可以采用异常响应报文给予回答,异常响应报文格式举例如下:子站通过校验,发现主站报文有问题,将响应报文将主站的功能码最高位(D7)置1,如例4.3 时间格式本规约中使用到的对时报文的时间格式,事件记录中的时间格式,参见下面说明。
Modbus通用规约说明说明文档文件名称Modbus通用规约说明文件说明无版本记录Modbus通用规约说明一、MODUBS协议简介Modbus协议最初由Modicon公司开发出来,在1979年末该公司成为施耐德自动化(Schneider Automation)部门的一部分,现在Modbus已经是工业领域全球最流行的协议。
此协议支持传统的串口链路RS-232、RS-422、RS-485和以太网设备。
许多工业设备包括PLC,DCS,智能仪表等都在使用Modbus协议作为他们之间的通讯标准。
Modbus协议包括ASCII、RTU、TCP等,并没有规定物理层。
此协议定义了控制器能够认识和使用的报文结构,而不管它们是经过何种网络进行通信的。
标准的Modicon控制器使用RS232C实现串行的Modbus。
Modbus的ASCII、RTU协议规定了报文、数据的结构、询问和应答的方式,数据通讯采用主/从方式,主站发出数据请求报文,从站接收到正确报文后就可以发送数据到主站端以响应请求;主站也可以直接发报文修改从站的数据,实现双向读写。
二、Modbus通用规约介绍Modbus协议需要对数据进行校验,串行协议中除有奇偶校验外,ASCII模式采用LRC 校验,RTU模式采用16位CRC校验,但TCP模式没有额外规定校验,因为TCP协议是一个面向连接的可靠协议。
另外,Modbus采用主从问答方式收发数据,在实际使用中如果某从站站点断开后(如故障或失电),主站可以诊断出来,而当故障修复后,网络又可自动接通。
因此Modbus协议的可靠性较好。
Modbus协议在串行链路中RTU模式使用的最多,通用性很强,所以在这里仅介绍一下Modbus RTU协议亦即Modbus通用规约。
下表是Modbus Rtu支持的功能码:功能码 名称 作用01 读取线圈状态 取得一组逻辑线圈的当前状态(ON/OFF)02 读取输入状态 取得一组开关输入的当前状态(ON/OFF)03 读取保持寄存器 在一个或多个保持寄存器中取得当前的二进制值04 读取输入寄存器 在一个或多个输入寄存器中取得当前的二进制值05 强置单线圈强置一个逻辑线圈的通断状态 06 预置单寄存器 把具体二进值装入一个保持寄存器07 读取异常状态 取得8个内部线圈的通断状态,这8个线圈的地址由控制器决定08 回送诊断校验把诊断校验报文送从机,以对通信处理进行评鉴 09 编程(只用于484) 使主机模拟编程器作用,修改PC 从机逻辑10 控询(只用于484) 可使主机与一台正在执行长程序任务从机通信,探询该从机是否已完成其操作任务,仅在含有功能码9的报文发送后,本功能码才发送11 读取事件计数可使主机发出单询问,并随即判定操作是否成功,尤其是该命令或其他应答产生通信错误时 12 读取通信事件记录 可是主机检索每台从机的ModBus 事务处理通信事件记录。
MODBUS规约简介0.概述MODBUS 规约是目前工控领域较为流行的串行通讯规约,因其简洁实用受到普遍使用。
该规约为主从型,即由一台主机分别对一台或多台从机的内部数据进行读写,从机只能应答主机的读写请求。
从机通过主机读写信文中的从机地址识别是否对本机的操作。
一次完整的通讯过程为:a)主机向从机发出读写命令;b)从机向主机发出应答信文;该规约将内部数据分为以下几类:——寄存器:与PLC中的寄存器相同,是字型数据,地址表达方式为4XXXX(即40001为1号寄存器,以下类似);——内部接点:与PLC中的内部线圈相同,是位型数据,地址表达方式为0XXXX;——开入点:相当于PLC中的开入映像表,是位型数据,地址表达方式为1XXXX;——模拟输入:相当于PLC中的模入映像表,是字型数据,地址表达方式为3XXXX;该规约在一次操作时只能对从机内部数据中一段连续的地址进行读写,信文中数据地址均从0开始(即1号寄存器在通讯信文中实际用地址0来表示),字型数据的传输字节顺序为先高后低(与INTEL规则相反)。
1.报文类型及格式通讯数据(信息帧)格式:数据格式:数据长度:通讯信息传输过程:当命令由主机发送至从机时,符合相应地址码的从机处理命令,根据功能码作相应任务。
如果CRC 校验无误,则执行相应的任务,然后把执行结果(数据)返送给主机。
如果CRC校验出错就不返回任何信息,主机应当有相应的超时处理。
如果接收正确,但不能处理,返回异常报文。
对字型数据发送顺序为先高字节后低字节。
对浮点数按照正常的顺序发送。
信文总长度(包括地址码和CRC校验码)不超过256字节。
1.1 地址码:地址码是通讯信息帧的第一字节,从0到255。
每个从机有唯一的地址码,并且只有符合地址码的从机才能响应回送信息。
0xFF为广播地址。
1.2 功能码:功能码是通讯信息帧的第二个字节。
ModBus通讯规约可定义的功能码范围为1~127,其中为用户预留的是65~72、100~110。
MODBUS 规约中文说明书说明:该文档是产品说明书的一部分,考虑到国内没有看到详细的MODBUS规约中文说明书,所以就把自己产品说明书的一部分内容译出来,作为MDOBUS规约中文说明书。
该说明书不是完整的MODBUS规约,但是却涵盖的几乎所有常用内容。
1. MODBUS规约MODBUS规约是MODICOM公司开发的一个为很多厂商支持的开放规约Modbus 协议是应用于电子控制器上的一种通用语言。
通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。
它已经成为一通用工业标准。
有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。
此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。
它描述了控制器请求访问其它设备的过程,如果回应来自其它设备的请求,以及怎样侦测错误并记录。
它制定了消息域格局和内容的公共格式。
当在Modbus网络上通信时,此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。
如果需要回应,控制器将生成反馈信息并用Modbus协议发出。
在其它网络上,包含了Modbus协议的消息转换为在此网络上使用的帧或包结构。
这种转换也扩展了根据具体的网络解决节地址、路由路径及错误检测的方法。
标准的Modbus口是使用RS-232C兼容串行接口,它定义了连接口的针脚、电缆、信号位、传输波特率、奇偶校验。
控制器能直接或经由Modem组网。
控制器通信使用主—从技术,即仅设备(主设备)能初始化传输(查询)。
其它设备(从设备)根据主设备查询提供的数据做出相应反应。
典型的主设备:主机和可编程仪表。
典型的从设备:可编程控制器。
主设备可单独和从设备通信,也能以广播方式和所有从设备通信。
如果单独通信,从设备返回消息作为回应,如果是以广播方式查询的,则不作任何回应。
Modbus协议建立了主设备查询的格式:设备(或广播)地址、功能代码、所有要发送的数据、错误检测域。
壁挂系统MODBUS通讯协议
采用RS232、RS485,1位起始位,8位数据位,无校验,1位停止位,波特率1200、2400、4800、9600 可设置。
1、遥测量
命令格式:
返回格式:
DATA数据定义:(44 bytes)
●数据格式:高位在前低位在后,BIT15=1表示负数) 模块3电流是否有,看系统硬件是否支
持3个模块
2、遥信量
命令格式:
返回:
3、错误响应
命令格式:
▲CODE:01 –功能码错
03 –数据错
▲COM:接收到的功能码、
实例:
发送:01 03 40 21
返回数据:01 03 08 09 00 00 00 00 08 00 00 D4 7F
(输出:230。
5V 模块一电流:0。
08A)
发送:01 04 01 E3
返回数据:01 04 02 18 26 32 EA
发送:01 06 00 82 09 20 2E 6A
发送:01 0F D7 01 00 00 3D BF
短路插座默认232接口。
监控后面空DB9的焊法:
RS232接口:监控1 - PC 5,监控3- PC 2,监控4-PC 3 。
如用485通信监控里面的短路插坐2。
3短路。
RS485接口:监控9- 485A 监控8- 485B。
智能三相电参数数据综合采集模块MODBUS通讯协议说明目录一、Modbus通讯规约简介二、Modbus-ASCII通讯协议说明三、Modbus-RTU通讯协议说明四、Modbus协议的功能码与所对应的数据表五、数据计算六、Modbus通讯规约介绍(一)MODBUS通讯规约简介(二)MODBUS的两种传输方式(三)Modbus消息帧(四)MODBUS通讯错误检测方法一、Modbus通讯规约简介支持的通讯规约有4种:(ASCII码)研华ADAM兼容通讯协议、十六进制LC-02协议、MODBUS-ASCII、MODBUS-RTU。
“MODBUS通讯协议说明”描述了串行口通讯的读、写命令格式及内部信息数据的定义,数据计算,以便第三方开发使用。
MODBUS通讯规约是与Modicon系统相兼容的Modbus通讯规约。
二、MODBUS-ASCII通讯协议说明1、2、MODBUS-ASCII协议中的通讯波特率:1200,2400,4800,9600,19200BPS。
3、4、MODBUS-ASCII协议格式:上位机发送::单元地址功能码起始地址读取点数LRC校验CR LF下位机响应::单元地址功能码字节数数据LRC校验CR LF命令格式:呼叫:AA FF SSSS NNNN LL <CR><LF>应答:AA FF XX HHHH..... LL<CR><LF>其中::为起始符AA 模块地址FF 功能号SSSS 起始通道NNNN 通道数XX 数据字节长度HHHH 数据字节LL 校验和<CR> 回车<LF> 换行5、功能码03:读保持寄存器,读测量数据数据起始地址:00~1E数据长度:1~0C ,超出范围无效;数据起始地址+数据长度不大于1F,超过范围命令无效。
说明:读取的是16位数据,高位在前,低位在后。
数据定义:见功能码与数据对照表1。
例1、读测量数据:命令: : 01 03 00 00 00 02 LRC <CR><LF> 17字节ADDR 功能开始地址寄存器个数 LRC校验响应: : 01 03 04 64 05 01 01 LRC <CR><LF> 19字节ADDR 功能数据字节长度 U0 I0 UBB IBB LRC校验6、功能码06:预臵单寄存器,设臵通讯地址、波特率、电压、电流变比数据起始地址: 0000或0001数据长度: 01 ,不等于01命令无效。