企业: | 北京力控元通科技有限公司 | 日期: | 2006-03-02 |
---|---|---|---|
领域: | 工业以太网 | 点击数: | 1154 |
引言 ![]() 1.2信息块格式 Modbus通讯时主机发出的指令字符串的通常格式如表1。 ![]() 从机地址:主机指明的接收命令的从机地址。 功能码:功能码决定本次通讯要求从机执行的动作,功能码占1个字节,MODBUS可能的功能代码范围是十进制的1~255。其中有些代码适用于所有的控制器,有些是针对某种MODICON控制器,有些是为用户保留或备用。表2为Modbus协议规定的标准功能码,某些设备的Modbus协议只兼容其中的一部分功能码,表中的功能码为16进制数。 ![]() 数据起始地址:通讯时读出、写入数据的起始地址。Modbus有多种批量数据操作功能码,可同时读出或写入多个具有连续地址的数据。数据起始地址占用2个字节。 数据量:命令中进行读出或写入的数据数量,这些数据从起始地址开始连续地址排列,在对模拟量进行操作时,每个数据具有2字节;在对数字量进行操作时每8个数据为1个字节。数据量占用2个字节。 1.3数据格式 Modbus通讯协议规定了2种通讯方式。RTU(REMOTE?TERMINAL?UNIT)方式通讯采用8位字节的二进制数据通讯,数据校验采用CRC循环冗余校验,通讯速度较快;ASCII方式采用7位ASCII码进行通讯,数据校验采用LRC逻辑冗余校验,通讯速率较慢。在一个通讯系统中,只能选用一种通讯方式,两种方式不能并用。为了减少网络数据传输量,在我们的应用系统中一般使用RTU通讯方式。 2 系统的硬件组成 下位监控站采用六个英格索兰单片机对六台空气压缩机进行控制,包括对压力、振动、温度,油温、油压等参数的监控,每个单片机外接一个通用通讯模块,上位监控站采用工控机,由于现场控制站与工控机相距60m左右,使用RS485/RS232?转换器,转换器与现场控制站采用RS485总线,工控机与转换器之间采用RS232总线,这样既解决了传输距离过远而无法连接问题,也提高了系统的抗干扰能力。其硬件组成Modbus通讯网络如图2所示。软件平台采用WindowsXP,选用三维科技有限公司的力控组态软件。 ![]() 3 力控的I/O驱动配置 在使用力控软件进行组态时,I/O设备驱动配置为:采用标准的Modbus,选RTU串行口通讯方式,按设备地址从01―06匹配六台现场控制机,数据更新周期为500毫秒,超时时间为8秒,使用串口(RS232/422/485)通讯,COM1端口设置与现场控制机的端口参数设置一样为9600.8.无.1 4 通讯过程 Modbus协议通讯时主机首先向从机发送通讯请求命令字符串,从机接收到命令字符串后,根据命令字符串中的命令码向主机作出相应的回答,完成一次通讯,整个的网络通讯都是由主机进行调度。下面举例说明04和05功能码实现模拟量数据读取和远程操作功能的通讯过程[2]。 例1:假定主机要求读取01从机的系统压力数值时,主机将发送如表3所示的通讯请求命令字符串,在英格索兰单片机中系统压力数据起始地址为十六进制代码0BBE(Modbus协议规定通讯字符串中的地址比实际地址小“1”),正常情况下从机回信字符串如表4。 ![]() 从机地址即01号机的设备地址,数据量0002表示存放系统压力数值有两个寄存器,该位占两个字节。 ![]() 英格索兰单片机是一个32位浮点数处理器,数据“42DCD4C6”经过IEEE32位浮点数转换后得出系统压力为110.4156psi。 例2:假定主机要求远程启动01从机,主机将发送如表5所示的通讯请求命令字符串,在英格索兰单片机中远程启动数据起始地址为十六进制代码00E0,正常情况下从机回信字符串如表6。 ![]() 从机回信的字符串与主机发送的通讯请求命令字符串应该是同样的,数据“FF00”迫使01从机的远程启动继电器线圈打开,数据“0000”迫使01从机的远程启动继电器线圈关闭。 ![]() 5 结束语 利用Modbus协议实现了矿区空气压缩机监控系统中的上位工控机与下位英格索兰通用通讯模块的数据通讯,开发了空气压缩机监控系统。运转两个多月来的情况表明,该系统运行可靠,维护方便,监控过程显示形象直观,为矿区运转工区最终实现“无人值班,少人值守”的目标奠定了基础。 李松柏1 刘义伦1 张波2 王广斌1 康煜华1 (1.中南大学机电工程学院 2. 三维力控科技有限公司武汉办事处) |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
1.我有以下需求: | |
|
|
2.详细的需求: | |
* | |
姓名: | * |
单位: | |
电话: | * |
邮件: | * |