标准modbus协议文本_第1页
标准modbus协议文本_第2页
标准modbus协议文本_第3页
标准modbus协议文本_第4页
标准modbus协议文本_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、ISCS与子接口协议版本:V1.1南京南瑞集团公司修订记录版本日期起草审阅交叉审阅备注V1.02010-07-27陆艮峰初稿1通信接口基于以太网的MODBUSTCP/制、议ISCS系统的FEP前端处理器配置为主机,子系统的通讯设备配置为从机ISCS系统每500ms向子系统发送一次轮询报文。2MODBUSTCP/IP协议协议概述MODBUTCP/IP协议在应用层采用MODBUS息定义,在传输层和网络层采用TCP/IP,用于以太网通讯。MODBUSCP/IP协议和OSI各层之间的对应关系由下列图表小:ModjusTPEthernetnmd8023图片来源于MODBUS.org参考OSI模型的应用层

2、模型19世纪70年代MODBUS议初次发布,至今已经在工业自动化领域广泛应用。MODBUS议获取简便访问schneiderautomation,且便于实现。MODBUS、议本身没有变化,但对报文的发送方式和速率作了改变,以满足工业应用的实时性需求。MODBUS/TCP此产生。MODBUSTCP/I就是简单地将MDOBUS嵌入至UTCP帧中。TCP/IP的请求/应答机制能和MODBUS身的主/从机制很好的配合工作。报文格式组成标准MODBUSTCP/IP报文格式组成:报头功能码数据报头描述:字段客户端服务端事务标识由客户端初始化服务端从接收到的请求中拷贝协议标识由客户端初始化服务端从接收到的请求

3、中拷贝长度由客户端初始化服务端初始化(应答)单元标识由客户端初始化服务端从接收到的请求中拷贝事务标识:用于事务配对。MODBUS务端在应答时拷贝来自客户端请求的事务标识。请求和应答通过事务标识相对应。因此,在同一时间,TCP!接的事务标识必须是唯一的。有几种方式应用事务标识。比方简单计数“TCFW;序号”,每次请求时加1。协议标识:用于系统内的多元标识。MODBUS议用0标识。长度:长度字段以字节计数,包括单元标识和数据字段。单元标识:该字段用于系统内路由。具典型应用为请求和服务器应答报文返回值在该字段值必须相同。在某些情况下,单元标识携带远程设备的MODBUS机地址。但在TCP/IP层,MO

4、DBU服务端用其IP地址寻址,因此MODBUS元标识就没有实际意义。此时该字段值为0 xFF。顺序号的应用:?对于每个信息,MODBUSMASTER(ISCSFEP)给MODBUSSLAVED系统)初始化/制造顺序号;?MODBUSSLAVE?(系统)的响应信息应使用从MODBUSMASTER(ISCSFEP)出的相同的顺序号;?ISCSFEP应确认从子系统收到的顺序号与之前发送给子系统的顺序号相同;ISCSFE硼加顺序号数值的原则:?顺序号应用两个字节来储存;?顺序号的范围应是(0-65535)或(0 x0000toOxFFFF);?顺序号的初始数值应是0;?对于每个发出的信息,包括用于正常

5、轮询、故障轮询、重试信息或控制,ISCSFEP应把顺序号数值增加1;?如果ISCSFEP发现子系统的响应信息的顺序号有错误,应不理会该信息,并宣布通讯状态欠佳。2.3报文详述本文中定义的寄存器地址将根据子系统供给商最终提供的IO点类表作相应的修改。功能码0 x04(读输入寄存器)例如:ISCS向子系统发送查询帧,获取子系统设备状态:Description描述Size(Byte)长度字节Definition含义Header报头TransactionIdentifier事务标2TCPSEQUENCENUMBERTCO号识ProtocolIdentifier协议标识20 x0000ModbusTcp

6、为0Length长度20 x0006UnitIdentifier单元标识10 xFFModbusTcp总为0 xFFModbusDataFunctionCode功能码10 x04Modbus数据StartingAddress起始地址20 xXXXX(根据实际情况定义)NumberofRegisters寄存器数量2N最大为125个寄存器子系统向ISCS返回响应Description描述Size(Byte)长度字节Definition含义Header报头TransactionIdentifier事务标识2TCP顺序号从客户端请求中拷贝ProtocolIdentifier协议标识20 x0000从客

7、户端请求中拷贝Length长度22*N+3UnitIdentifier单元标识10 xFFModbusDataFunctionCode功能码10 x04Modbus数据ByteCount字节个数12*NN最大为125个寄存器子系统发送到ISCS的数据如果超过125个寄存器,ISCS可以轮询多次。Data(asrequested)请求的数据2*N0 xXXXX根据实际点表定义注:本表中N、X出现的部分将根据实际点表定义。2.3.2功能码0 x10(预置多寄存器)例如:ISCS向子系统发送信息:Description描述Size(Byte)长度字节Definition含义Header报头Trans

8、actionIdentifier事务标识2TCPSEQUENCENUMBERT则号ProtocolIdentifier协议标识20 x0000Length长度22*N+7最大为125个寄存器UnitIdentifier单元标识10 xFFModbusDataModbus数据FunctionCode功能码10 x10WriteStartingAddress写起始地址20 xXXXX根据实际点表定义NUMBEROFREGISTERS存器个数2N最大为125个寄存器ByteCount字节个数12*NN最大为125个寄存器子系统发送到ISCS的数据如果超过125个寄存器,ISCS可以轮询多次。Data

9、数据2*N0 xXXXX根据实际点表定义子系统向ISCS返回响应:Description描述Size(Byte)Definition含义Header报头TransactionIdentifier事务标识2TCP顺序号从客户端请求中拷贝ProtocolIdentifier协议标识20 x0000从客户端请求中拷贝Length长度20 x0006UnitIdentifier单元标识10 xFF从客户端请求中拷贝ModbusDataFunctionCode功能码10 x10Modbus数据WriteStartingAddress写起始地址20 xXXXX和客户端请求地址一致NUMBEROFREGIS

10、TERS存器个数2N和客户端请求寄存器数一致注:本表中N、X出现的部分将根据实际点表定义。异常处理异常处理的目的是:当通讯故障时,向客户端提供与故障相关的信息?响应功能码=请求功能码+0 x80;?错误功能码用于提示错误原因。目前使用的异常码是:01,02,03和04异常码名称含义01ILLEGALFUNCTIAON服务端不支持请求报文所要求的功能。原因可能是:此功能仅仅适用于新型设备,当前使用的设备不具备此功能。此功能码也说明:服务端(从站)处于故障状态,无法处理客户端请求。比方,服务端尚未被初始化,就被要求返回数据。02ILLEGALADDRESS服务端不支持请求报文中数据地址。在某些特定

11、条件下,数据个数和数据长上度有可能不对应,从而产生此错误。如果一个控制器总共有100个寄存器。客户端请求数据包中,如果寄存器的起始地址是96,数据长度为4,这是允许的。但是,如果寄存器的起始地址是96,数据长度是5,异常发生。因为,96+5=101,已经超过了控制器最大寄存器的数量。03ILLEGALDATAVALUE服务端发现:客户端发送的数据中,包含有无效数据。此异常说明:服务端接收到的数据包含错误。此异常并不一定意味着:服务端接收的数据包中的,某个数据越限。因为,Modbus协议对特定寄存器的含义不作处理。04SLAVEDEVICEFAILURE当服务端执行相应的功能时:发生了无法恢复的

12、错误。功能码0 x04(读输入寄存器)异常响应例如:ISCS向子系统发送查询帧,获取子系统设备状态:Description描述Size(Byte)长度字节Definition含义Header报头TransactionIdentifier事务标识2TCPSEQUENCENUMBERTCO号ProtocolIdentifier协议标识20 x0000ModbusTcp为0Length长度20 x0006UnitIdentifier单元标识10 xFFModbusTcp总为0 xFFModbusDataModbus数据FunctionCode功能码10 x04StartingAddress起始地址2

13、0 xXXXX(假设起始地址+寄存器数量超出了服务端的最大地址)NumberofRegisters寄存器数量2N最大为125个寄存器子系统向ISCS返回异常响应Description描述Size(Byte)长度字节Definition含义Header报头TransactionIdentifier事务标识2TCP顺序号从客户端请求中拷贝ProtocolIdentifier协议标识20 x0000从客户端请求中拷贝Length长度20 x03UnitIdentifier单元标识10 xFFModbusDataModbus数据FunctionCode功能码10 x84响应功能码IllegalFunc

14、tionCode错误功能码10 x02非法地址,详见异常码表注:本表中N、X出现的部分将根据实际点表定义。功能码0 x10(预置多寄存器)异常响应例如:ISCS向子系统发送信息:Description描述Size(Byte)长度字节Definition含义Header报头TransactionIdentifier事务标识2TCPSEQUENCENUMBERT则号ProtocolIdentifier协议标识20 x0000Length长度22*N+7N最大为125个寄存器UnitIdentifier单元标识10 xFFModbusDataModbus数据FunctionCode功能码10 x10WriteStartingAddress写起始地址20 xXXXX6区设起始地址+寄存器数量超出了服务端的最大地址)NUMBEROFREGISTERS存器个数2N最大为125个寄存器ByteCount字节个数12*NN最大为125个寄存器Data数据2*N0 xXXXX根据实际点表定义子系统向ISCS返回异常响应Description描述Size(Byte)长度字节Definition含义Header报头Transac

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论