Modbus通讯技术

2024-06-21

Modbus通讯技术(精选7篇)

Modbus通讯技术 篇1

摘要:为了保证注蒸汽热采油田多台注蒸汽锅炉正常工作,实现智能供电、水质处理、锅炉产汽、汽水分离的集中管理与控制。通过采用Modbus通讯技术对集中控制系统进行了硬件配置、连接及软件的搭建。结果表明:现场注汽站的锅炉控制系统、汽水分离控制系统、水处理控制系统以及智能供电系统等子系统得到综合集成,应用效果良好。

关键词:集散控制,逻辑控制,Modbus通讯技术,注汽站

随着注蒸汽热采技术在稠油油田的应用,注汽量的逐步增大,DCS(集散控制系统)、PLC(可编程逻辑控制器)等控制设备在注汽站内应用得越来越广泛。为了实现生产现代化,实现统一管理、统一监控的目标,把注汽站内各个控制系统通过Modbus技术连接在一起,将站内所有数据进行集中处理、备份、趋势浏览等。以辽河油田蒸汽辅助重力泄油2号注汽站为例对系统硬件配置、连接、组态、通信冗余进行了描述。

1 Modbus技术简介

Modbus协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其他设备之间可以通信。它已经成为一通用工业标准。有了它,不同厂商生产的控制设备可以连成工业网络[1],进行集中监控。

此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其他设备的过程,如果回应来自其他设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。

当在一Modbus网络上通信时,此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息并用Modbus协议发出。在其他网络上,包含了Modbus协议的消息转换为在此网络上使用的帧或包结构。这种转换也扩展了根据具体的网络解决节地址、路由路径及错误检测的方法。

控制器能设置为两种传输模式(ASCII或RTU)中的任何一种在标准的Modbus网络通信。用户选择想要的模式,包括串口通信参数(波特率、校验方式等),在配置每个控制器的时候,在一个Modbus网络上的所有设备都必须选择相同的传输模式和串口参数。所选的ASCII或RTU方式仅适用于标准的Modbus网络,它定义了在这些网络上连续传输的消息段的每一位,以及决定怎样将信息打包成消息域和如何解码。

2 集中控制系统构成

集中控制系统是基于Web技术的网络化控制系统,在网络构造上采用了三层网络结构(管理网Ethernet、过程控制网SCnetII、SBUS控制站内部I/O控制总线),能轻松实现与多种现场总线标准和各种异构系统的综合集成。系统通过Modbus协议将注汽站的所有控制子系统连接到JX-300XP控制系统,实现统一管理、统一监控。这些子系统主要为智能供电系统、水处理控制系统、锅炉控制系统、汽水分离控制系统。

2.1 智能供电系统

智能供电系统安装在配电间内,用于监测各个设备的供电电压、电流、功率等。由于配电间只有特殊工种才能进入,不方便对设备的用电情况进行监控和分析,所以需要将智能供电系统接入集中控制系统。

2.2 水处理控制系统

水处理控制系统采用欧姆龙CP1H系列PLC,主要功能是完成水处理过程中阀门的顺序开关及水质监测。

2.3 锅炉控制系统

辽河油田蒸汽辅助重力泄油2号注汽站内拥有10台50吨/小时直流注汽锅炉,每台锅炉都拥有独立的PLC(欧姆龙CP1H系列)控制系统。该控制系统能够实现每台锅炉的各种模拟量(温度、压力、流量等)的采集、设备的顺序控制以及错误报警、紧急停炉等功能。但是由于10台锅炉的燃油全部由一条管线供给,单独的控制系统无法实现燃油管线的压力控制,导致供油压力忽高忽低,造成部分锅炉无法正常燃烧,因此必须将10台锅炉的控制系统同时接入集中控制系统中进行统一管理与控制。

2.4 汽水分离控制系统

汽水分离控制系统采用欧姆龙CP1H系列PLC,主要功能是监控注汽温度、压力、流量、干度、注汽阀门的开度等。当注汽时多个分离器会采用同一条注汽管线,每台分离器独立地控制系统不能监控总管线上的数据,因此必须将10台汽水分离器的控制系统同时接入集中控制系统。

3 系统搭建

3.1 硬件部分的搭建

SP244智能卡件支持Modbus-RTU(二进制)、HostLink-ASCII(二进制)、Mitsubishi FX2系列、自定义协议(波特率≤19200bps)等多种通讯协议。每块SP244卡提供一个RS232接口[2],最多可以连接4个智能设备,连线方式为:SP244卡的送脚对第三方设备的RS232口的接收脚,SP244卡的接收脚对第三方设备RS232口的发送脚,地对地连接。其接线端子如图1所示。

由于各个子系统距离中控室内的JX-300XP系统距离都比较远,因此需将各个子系统的PLC(或单片机)的RS-232口通过转换模块转换成RS485口[3],然后通过专用电缆连接到SP244上。根据现场子系统的数量我们将其连接到8块SP244上,如图2所示,并分别赋予地址1~31。

3.2 软件部分的搭建

采用Advan Trol-Pro(V2.50)软件对串口通讯进行组态。首先,设置通讯协议(Modbus-RTU协议),包括串口参数及扫描周期等。其次,定义与每一个子系统中数据相对应的变量。每个子系统中的数据都对应着一个寄存器,通过Advan Trol-Pro的SCX语言命令定期扫描这些寄存器,得到动态的数据,将读取的数据赋值给之前定义的变量后,便得到了子系统中的原始数据。然而子系统中,呈现给管理人员的数据很多都是经过计算的,所以需要用Advan Trol-Pro的FBD语言命令对数据进行相应地处理。

4 结论

在辽河油田蒸汽辅助重力泄油2号注汽站项目实施一年多来,DCS与其他控制系统之间的通讯从未出现过问题,充分证明了Modbus协议的稳定性。项目实施后,工作人员的工作量大大降低,在中控室就可以监控各个车间的生产情况。Modbus协议作为目前自控领域使用最广泛的通讯语言之一,在本项目应用过程中充分地体现了其侦错能力强、数据传输量大、实时性好等特点,实现了生产的统一监控,统一调度。

参考文献

[1]邱公伟.可编程控制器网络通讯及应用.北京:清华大学出版社,2000:78—79

[2]李肇庆,韩涛.串行端口技术.北京:国防工业出版社,2004:26—62

[3]邓志君,梁松峰.基于RS485接口Modbus协议的PLC与多机通讯.微计算机信息,2010;26(8):107—108

Modbus通讯技术 篇2

关键词:单片机,ModBus通讯协议,触摸屏,冗余

ModBus 通讯协议[1]是由美国的ModBus 公司推出的开放式现场总线通信协议,其功能完善、使用简单、协议开放,得到众多仪器厂商的支持,正在成为仪表[2]及智能终端的工业标准。目前大多数智能仪表己利用该协议向用户提供通信接口。它已经成为一种通用工业标准。不同厂商生产的控制设备可以通过它连成工业网络,集中监控。

文中介绍了基于ModBus通讯协议的智能模块的组成,实现了智能模块硬件及软件设计,并成功将其应用于智能通风系统。

1 智能模块硬件设计

智能模块采用PIC18F458[3]单片机控制,由电源电路、复位电路、LCD/LED显示电路、RS-485接口电路、运行参数保存电路(EEPROM:Electrically Erasable Programmable Read-Only Memory,EEPROM)等组成,由于PIC18F458单片机内部包含有11位的A/D转换,所以大大简化了电路的设计。智能模块的通讯接口电路,如图1所示。

模块通讯利用PIC18F458内部异步收发器模块,并经过高速光电耦合器隔离(6N137)及RS-485驱动电路(65176)后连接到RS-485网络。必须注意,光耦部分电路所采用的两个电源VCC 和5V-2 必须完全隔离,否则采用光耦也就失去了意义。

RS-485通讯电路采用了两级防护。G301、G302、G303为陶瓷放电管;R311、R312为自恢复保险丝。TVS1、TVS2为TVS管,选择根据芯片的工作电压与耐压决定,一般略高于芯片最高工作电压,可以6.8~10 V之间选择。

当雷击发生时,感应过电压由两端引入,G302与G303进行共模防护,G301进行差模防护,此时过电压被削弱到约500 V左右,再经过R311、R312限流,TVS1、TVS2二次限压后,到收发器的电压被箝制在6.8 V左右,从而实现对RS-485驱动电路的保护。

2 智能模块软件设计

智能模块软件采用C18编程[4],模块主程序主要包括初始化程序、ModBus通讯协议实现程序,独立测控模式程序和联机测控模式程序4大部分,如图2所示。

初始化程序主要完成各端口的初始化、ModBus通讯协议初始化。其中ModBus通讯协议初始化包括波特率、通讯位数、奇偶校验等参数设置。

ModBus通讯协议程序主要实现ModBus通讯协议的相关功能[5],本设计中实现了以下功能,如表1所示。

独立测控模式主要实现前端测控模块独立运行。当测控模块工作于此模式时,根据EEPROM中保存的系统运行参数进行测控。

联机测控模式除了完成独立测控模式各项功能以外,还能与上位监控计算机进行实时通信,完成各参数的远程设定、各执行装置的手动远程控制、将采集的数据上传等工作。

3 应用

该智能模块已成功应用于多机房智能通风系统[6]。系统合理利用机房室内外的温差形成冷热空气交换,通过主动进风被动排风技术,依靠室内正压环境来保持室内清洁度。在保持机房内良好工作环境,确保内部设备正常运行前提下,采用最优化的通风控制和空调控制流程,有效减少空调的工作时间和启动次数,从而达到节约用电和保护空调的目的。系统组成,如图3所示。

触摸屏选用Hitech公司的PWS6600S触摸屏[7]。PWS6600S触摸屏本身支持Modbus通信协议,PWS6600S触摸屏支持RS-232和RS-485两种通信接口。在工业控制领域,由于RS-485具有可靠性高、传输距离远、抗干扰能力强等优点,所以在本系统中触摸屏与前端测控模块通信采用RS-485 连接,通信参数可以根据要求进行配置。

智能模块既可作为系统的一个组成部分,与主机(触摸屏)实时通信,实现运行参数的设置,手动远程控制,将采集的数据上传等工作。它也可以独立工作,即在触摸屏因故停止工作的情况下,前端测控模块仍可以正常运行,从而在不增加设备投入的情况下实现了系统的冗余,提高了系统的可靠性。

系统中的主机(触摸屏)主要完成人机对话和系统管理功能。可实现系统运行参数的设置和修改,如图4所示;以及实际温度(室内/室外)实时显示,如图5所示;并可对执行机构进行手动远程控制。

4 结束语

将检测技术和ModBus通讯技术应用于智能模块设计,提高了模块的可靠性和通用性,可以满足一般测控系统的要求,而且它的成本低、体积小。本智能模块成功开发以来,已先后在多个机房通风系统中应用,系统稳定可靠,经济效益十分明显。同时,因其操作简单、控制准确、精确高等特点,受到用户的好评。

参考文献

[1]Modbus2IDA.ModBus Application Protocol SpecificationV1.1[EB/OL].http://www.Modbus-IDA.org,(2004-12-13)[2008-04-07].

[2]双维.传感器技术[M].北京:中国计量出版社,2005.

[3]Microchip.PIC18FXX8Data Sheet[Z].USA:Micro-chip Data Sheet,2003.

[4]Microchip.MPLAB(C18C Compiler Libraries[Z].USA:Microchip Data Sheet,2003.

[5]Schneider Electric.MODBUS Over Serial Line Specifi2cation&Implementation Guide V1.0[EB/OL].http://www.Modbus.org,(2002-02-26)[2008-03-12].

[6]陈一飞.基于自然通风原理的通风窗智能控制系统构造[J].建筑电气,2007(11):27-30.

Modbus通讯技术 篇3

1 系统组成

1.1 通讯系统

Modbus通讯协议是一种通用的电子控制器应用语言,可利用网络或其它设备实现控制器之间的通讯,Modbus协议可以在忽略控制器通信方式的前提下,对其所能认识与使用的消息结构做出定义,是一个通用的工业标准,它还对控制器与其他设备之间的访问请求与过程进行描述,可以侦测错误信息并进行记录。并且,Modbus协议还制定了公共内容格式及消息域格局,控制器可设置为RTU或ASCII中任一种传输模式,用户可在标准的Modbus网络通信中选择所需模式及串口参数,Modbus网络上所有设备在控制器配置时,都应将传输模式以及串口通信参数选择一致。本文基于RS485协议来实现DCS与PLC之间的数据共享,可通过DCS控制PLC,也可将PLC的数据上传到DCS。实际操作时,可将一块MODBUS转DP通讯模块增加于DCS控制器下方,以使维护与控制简单方便,而基于MODBUS协议,此通讯模块可作为通讯主站,实现与现场PLC间的通讯,也可基于Pmfibus-DP协议并作为从站,实现与DCS系统的挂接。

1.2 DCS系统

集散控制系统DCS是以通信网络为连接纽带并包括过程监控级与控制级的多级计算机系统,它将计算机技术、控制技术、通讯技术以及显示技术等有机结合起来。本文DCS系统采用的是和利时MACS V控制系统,不仅可以实现集中操作而分散控制,还可以分级进行管理,组态及其方便且配置较为灵活。

1.3 PLC系统

因工业化发展需求而产生的PLC数字运算操作系统,它利用可编程存储将定时计数、顺序控制及逻辑运算等操作指令存储起来,再经由数字模拟输入与输出对机械设备或生产过程进行控制。可编程控制器与相关设备的选择应从其功能原则设计扩充简便为切入点,选择易与工业控制系统形成整体的设备,而且维护与控制也较为简便。本文PLC系统是由三套和利LK207、一套GE的IC200以及一套西门子S7-200组成。

2 系统组态

2.1 硬件组态

DCS系统模块的总线连接见下图:

将通讯线自各PLC串口引出,并将其与MODBUS转PROFIBUS-DP协议转换模块的MODBUS接口连接。

2.2 软件组态

1)DCS系统组态。将MODBUS转PROFIBUS-DP协议转换模块中的GSD文件拷贝至MACS V系统的相应安装目录,再打开MACS V系统的控制器组态文件与工程,将此模块添加于硬件组态中,然后打开模块属性对通讯参数波特率等进行设置,再基于PLC读写数据对MODBUS读写数据块进行合理添加,数据块属性设置取决于数据起始地址及PLC地址。以各自地址以及PLC读写变量进行添加于程序中的子程序编写以及变量添加,然后对编译进行保存。将PLC变量至工艺画面添加至打开的MACS V画面的组态程序并保存,然后下装于操作员站,而将PLC传过来的量程或信号类型等变量属性添加至打开的MACS V数据库的组态程序,再联编并将其下装于服务器;

2)PLC系统组态。本文以GE公司的IC200型PLC来说明该系统组态。将GE PLC编程软件打开并对PLC Port(2)进行设置,然后利用网络将小酒改后的设置内容下至PLC。

3 系统常见故障的判断与排除

若DCS系统与PLC系统之间的数据通讯正常,则对故障隐患的判断可通过模块状态指示灯来实现,可从模块上的数据传送与接收指示及错误状态表示对,作通讯状态进行判断并对故障进行诊断。而若DCS与PLC之间的数据通讯为不正常状态,则DCS系统画面所显示的数据不正常,模块状态指示灯有错误状态显示。对此,应对硬件错误及软件错误进行依次检查并排除故障。硬件方面,应使用DP电缆,接线时切忌将正负极性接反,模块选型时也要注意选择有较高的使用信誉度且实用效果较好的产品,由于兼容性差异的问题,两次以上的接口转换情况应尽量避免。而软件方面,首先要保持一致的DCS与PLC间的通讯速率,最好使用无校验而减少奇偶校验,其次要确保DCS与OLC系统的通讯数据地址合理有效,若有地址错位状况,可通过DCS系统设置来解决。

4结论

综上所述,在实现DCS系统与PLC系统之间的通讯中应用MODBUS协议,可以取得良好成效,即是说,基于MODBUS协议的DCS与PLC通讯的实现,具有稳定的通讯性能,可以为工艺监控提供可靠技术支持,为工程生产创造良好的条件,有效实现生产的节能减排、经济高效。

摘要:本文以MODBUS协议为基础,就DCS系统与PLC系统之间实现数据共享的通讯应用进行分析与探讨,对基于MODBUS协议的DCS与PLC通讯系统的系统组成与系统组态进行阐述,并介绍了该通讯系统常见故障的判断与排除。

关键词:MODBUS协议,DCS系统,PLC系统,通讯应用

参考文献

[1]赵钊.基于Modbus协议的DCS系统与PLC系统的通讯[J].节能技术,2011(4).

[2]王刚,王玉琪,王冰.用Modbus协议实现DCS与PLC之间的串行通讯[J].自动化技术与应用,2010(4).

[3]温克强.Modbus通讯协议在DCS与PLC通讯中的应用[J].石油化工自动化,2005(6).

Modbus通讯技术 篇4

关键词:TMS320LF2406A,变频器,MODBUS协议,485电路

0 绪论

电机变频调速是电力电子技术应用的最大领域之一,具有极大的吸引力,同时也具有较强的挑战性。

目前,我国国产变频器的生产,主要是交流380V的中小型变频器,且大部分产品为低压,而高压大功率则很少,能够研制、生产并提供服务的高压变频器厂商更少,不过是少数几个具备科研能力或资金实力强的企业。我国高压变频器的品种和性能,还处于发展的初步阶段,仍需大量从国外进口[1]。

变频器的控制方式发展趋势主要有数字控制变频器的实现、多种控制方式的结合、远程控制的实现、绿色变频器等。其中远程控制的实现是依靠计算机网络对变频器进行远程控制的,通过RS485接口以及一些合适的网络协议对变频器进行远程控制,这样在有些不适合于人类进行现场操作的场合,也可以很容易的实现控制目标。

鉴于变频器有着广泛的用途和比较显著的节能效果,对变频器进行开发应用是有一定市场前景的。总结市场上常见的变频器类型,本文所依据的变频器的系统组成有以下几个部分[2]:

(1)控制板系统,以TI公司的DSP TMS320LF2406A为核心,实现系统的整体控制功能。板上包括:由CPU电源、晶振、复位监控、仿真调试接口电路、数字量输入及输出电路、模拟量输入及输出电路、485通讯控制电路,逆变器输出电流检测反馈电路等。

(2)电源及驱动板系统,包括交流输入电源整流滤波电路、开关电源系统、智能功率模块(IPM)实现的逆变电路、及电流反馈检测调理电路等。

(3)按键显示板,包括按键电路、数码管显示及LED灯指示驱动电路。

1 通讯控制系统方案的具体的设计

通讯控制系统方案所做的主要工作是在基本理解变频器结构组成的基础上,重点理解完善变频器远程通信控制系统的设计。因此本篇论文主要分析的是以变频器的控制芯片DSP TMS320LF2406A为核心,通过DSP芯片的串行通讯口(SCI接口)实现数据的底层收发,采用MODBUS应用层通信协议,底层物理线路采用RS485差分信号传输数据,与上位机(电脑)构成主、从式交互通讯系统。从而使变频器的操作人员可以方便地实现对变频器的远程通讯及控制功能[3]。

1.1 主电路结构

主电路采用典型的交-直-交电压源型通用变频器结构。交-直-交变频器的主电路框图如图2所示。主电路设计包括三个组成部分:整流电路、中间电路和逆变电路。

整流电路把电源提供的交流电(AC)压变换为直流电(DC)。中间电路分为滤波电路和制动电路等不同的形式,滤波电路是对整流电路的输出进行电压或电流滤波,经大电容滤波的直流电提供给逆变器的称为电压型逆变器,经大电感滤波的直流电提供给逆变器的称为电流型逆变器;制动电路是利用设置在直流回路中的制动电阻或制动单元吸收电动机的再生电能实现动力制动。逆变电路是将直流电变换为频率和幅值可调节的交流电,逆变电路中采用集成功率模块,内部集成了逻辑、控制、检测和保护电路,使用起来方便,不仅减小了系统的体积以及开发时间,也大大增强了系统的可靠性[4]。

1.2 MODBUS协议功能简介

MODBUS是OSI模型第7层上的应用层报文传输协议,它在连接至不同类型总线或网络的设备之间提供客户机/服务器通信。自从1979年出现工业串行链路的事实标准以来,MODBUS使成千上万的自动化设备能够通信。因此MOD-BUS协议是一种可靠而有效的工业控制系统通信协议。

MODBUS协议定义了一个与基础通信层无关的简单协议数据单元(PDU)。特定总线或网络上的MODBUS协议映射能够在应用数据单元(ADU)上引入一些附加域。通用MOD-BUS帧结构如图3所示。

在RTU模式中,新的数据帧传送总是以至少3.5个字节的传输时间静默作为开始。在以波特率计算传输速率的网络上,3.5个字节的传输时间可以轻松把握。紧接着传输的数据域依次为:从机地址、操作命令码、数据和CRC校验字,每个域传输字节都是十六进制的0-9,A-F。网络设备始终监视着通讯总线的活动,即使在静默间隔时间内。当接收到第一个域(地址信息),每个网络设备都对该字节进行确认。随着最后一个字节的传输完成,又有一段类似的3.5个字节的传输时间间隔,用来表识本帧的结束,在此以后,将开始一个新帧的传送。

一个帧的信息必须以一个连续的数据流进行传输,如果整个帧传输结束前超过1.5个字节以上的间隔时间,接收设备将清除这些不完整的信息,并错误认为随后一个字节是新一帧的地址域部分,同样的,如果一个新帧的开始与前一个帧的间隔时间小于3.5个字节时间,接收设备将认为它是前一帧的继续,由于帧的错乱,最终CRC校验值不正确,导致通讯故障[5]。

2 硬件电路设计

硬件电路的设计主要包括电源系统的设计、复位电路与通讯驱动电路的设计、RS485通讯转换电路设计,其中重点介绍485通讯电路设计。依据通讯硬件电路设计,可知电路实现DSP芯片输出的TTL电平与485电平的转换电路。电路以485转换芯片为核心,RO、DI、DE、RE这几个端是TTL电平,A、B端是485差分电平。ACT244是DSP到485芯片的驱动电路,起到电平缓冲、转换作用。接收电路,单独用了一个反相器,到DSP的SCI接收端。至于差分信号输出端A、B端后边接的元件,是为了提高信号抗干扰性,还有使A/B端在平常状态下,有一个固定的状态。

2.1 电源系统设计

系统电源驱动板包括整流电路、开关电源电路、逆变电路、电流检测电路及风扇驱动电路等。工业用的交流电经过整流成为直流,经过大电容平滑滤波储能得到直流母线电压,然后母线电压输入经过开关电源系统,可以转换出+5V、±15V、±24V几种电压。而DSP芯片仅由一个外部5V电源供电,由于TMS320LF2406A芯片供电正常工作电压只能是3.3V,所以在设计电路时,需要将5V电源变换为3.3V给CPU供电,因此使用了TI公司的5V/3.3V电源转换芯片ASM117,+5V电压经过ASM117电源转换芯片转换成+3.3V的电压给DSP控制芯片供电[6]。

AMS1117系列电源转换芯片有可调版与多种固定电压版,设计用于提供1A输出电流且工作压差可低至1V。在最大输出电流时,AMS1117器件的压差保证最大不超过1.3V,并随负载电流的减小而逐渐降低。AMS1117的片上微调把基准电压调整到1.5%的误差以内,而且电流限制也得到了调整,以尽量减少因稳压器和电源电路超载而造成的压力。AMS1117应用极多,可作为高效线性稳压器或者后置稳压器,例如交换式电源5V至3.3V线性稳压器、电池充电器、有源SCSI终端笔记本电源管理、电池供电设备。

如图4所示,是+5V到+3V电平转换电路。电路中主要使用了AMS1117芯片,为DSP控制芯片提供+3.3V的工作电压。图中的小电感起电源隔离的作用,输入和输出端的极性电容与无极性电容起滤除电源纹波的作用。

2.2 复位电路与通讯驱动电路的设计

通讯实现的外围连接电路如图4所示,在第三章的总体概述中已经讲解了图4所示的电路的整体流程,其中MAX708具有比较器手动复位输入两组复位电平输出的微处理器电源监控芯片。MAX708是一种微处理器电源监控芯片,可同时输出高电平有效和低电平有效的复位信号复位信号。可由VCC电压、手动复位输入或由独立的比较器触发,独立的比较器可用于监视第二个电源信号,为处理器提供电压跌落的预警功能。这一功能是为器件发出复位信号前的正常关机、向操作者发送警报、或电源切换而考虑的。

2.3 485通讯转换电路设计

由于实际应用中,是电脑PC机对DSP芯片进行程序的传输与通讯控制,所以必须进行外围的电平转换。电脑输出的是232标准的电平,而DSP芯片输出/接收的是TTL电平,所以232电平经过485/232转换器,变成485差分电平,通过一个485转换芯片就实现了TTL电平到485电平的变换,所以在经过485转换芯片,就成为DSP可以正常运行的TTL电平,以此形成一个数据输入与输出的循环过程。

图7为485通讯转换电路,通讯转换的过程主要应用了MAX483芯片。图中的的电感起到滤波、抗干扰的作用;双向二极管可抑制线路上的高电压干扰信号;差分电路中上接+5V电阻与下接地电阻分别为上拉电阻与下拉电阻,线路中间为匹配电阻,上拉与下拉电阻是为了让线路在空闲的状态下,有一个确定的电平,从而使线路上有一个确定的信号;图中SN74HC14D为单反相器,图中使用2个单反相器连接是为了给DSP芯片提供+3.3V电压的同时还滤波的作用保证信号的高低电平不改变从而正确传输。

3 结论

本文是基于MODBUS协议的DSP串口与变频器通信控制的设计,以变频器与计算机的串行通讯为例介绍了变频器应用中与计算机通讯设计与实现。通过设计和构思变频器与计算机的串行通讯,主要介绍了变频器应用中与计算机通讯设计与实现,其中包括变频器通讯的硬件电路连接、通讯协议以及通讯连接与控制方式的实现,并做出了通讯实验结果。

在变频调速系统中,通常采用串口通讯的方式为实现变频器与上位机的远距离通信的。所以这种通讯的控制方式不仅能够实现对变频器工作状态进行切实时监测与控制而且该应用在实际操作中不仅外围的接线简单、便于组织网络,还可使变频器具有更高抗干扰性和更强的工作稳定性,因此变频器在优化变频调速系统的远程设计、监测与控制,实现工业控制领域的网络化、智能化等方面具有重大的意义。

参考文献

[1]徐世许,王凤杰,纪志坚.使用通信协议宏实现PLC对变频器的监控[J].自动化仪表,2007,1:37-39.

[2]高双,蔡成涛,朱齐丹.基于MODBUS通信协议的共锥度监控系统[J].微计算机信息,2007,23(01):18-20.

[3]韩安荣.通用变频器及其应用[M].机械工业出版社,2000:5-8.

[4]王晓明.电动机的DSP控制[M].北航出版社,2006:25-26.

[5]彭启琮,李玉柏.DSP技术[M].电子科技大学出版社,1997:13-15.

Modbus通讯技术 篇5

承继本人在本刊2013年第30期 (10月下旬刊、总第70期) 发表的《Trident系统主处理器卡与通讯卡的报警故障及处理方法》文章, 在2012年我公司气化炉Trident系统运行中多次出现控制器MP报警及卡件故障, 经过诊断分析需要对控制系统升级到V2.0以后的版本, 才能从根本上加以解决。2013年在停车大修期间对三套系统进行升级后, 控制器MP 3101未再出现故障报警, 但运行一段时间后出现了新的问题, 即SIS系统 (Trident) 与DCS系统 (Foxboro) 间的MODBUS通讯频繁出现中断的故障。文章就该问题及解决过程做一简要介绍。

1 Modbus通讯故障现象

自2013年5月将三套Trident控制系统从V1.5升级到V2.1版本, 虽然解决了MP产生的NVRAM故障, 该MP故障对Trident系统会产生重要的影响, 但运行一段时间后, 发生了与DCS (Foxboro) 的MODBUS通讯多次中断的故障。

故障现象:

(1) DCS端 (Foxboro) FBM230通讯报警, DCS画面通过MOD-BUS通讯从Trident系统传输过来的火焰探头信号消失, 从DCS端通过MODBUS通讯的操作均不能正常发送到SIS端。

(2) Trident系统端通讯卡CM3201对应的串口TX灯不闪烁, 只有RX灯闪烁, 但系统无任何报警。

该通讯故障为不定期不定时发生。

该通讯中断现象对Trident系统不会造成任何影响, 不会产生系统报警, 对TS1131、HMI与控制器的连接也不会造成任何影响, 也不会影响到装置生产运行。

2 系统信息

(1) Trident系统

Trident系统版本:V2.1

Tristation1131版本:V4.9

SOE版本:V4.2

DDE版本:V4.1

INTOUCH版本:V9.5

Tristation1131中CM3201MODBUS通讯设置如图1。

(2) Foxboro系统

FBM General Properties:

(3) MODBUS通讯方式

采用RS485两线制接线方式;

在本次三套Trident控制系统升级改造前后, DCS端与SIS系统端的接线方式、MODBUS通讯电缆、RS485接线、Trident系统端通讯组态、DCS端通讯组态等都没有发生任何变动。

3 故障处理方案

发生通讯中断后, 厂家技术人员立即响应, 多次来现场处理, 结合TRIDENT系统在全国的应用, 积极寻求解决问题的办法, 该问题属于偶发故障, 在全国的应用中并不常见, 在查询全国TRIDENT系统应用故障的时候, 发现某一现场的报警现象与我公司报警现象是一致的, 并且采用如下 (1) 的方法使问题得到了解决。

(1) 将SIS侧RS485通讯改为RS232通讯

目前其他公司也遇到上述通讯问题, 该问题已经得到解决, 解决方法是在SIS侧将RS485通讯改为RS232通讯, 在SIS侧增加RS232-RS485转换器, 从使用效果看, 目前通讯稳定。

在SIS侧增加的RS232-RS485转换器型号:ADAM-4520。ADAM-4520是有源的RS-232到RS-422/485的转换器, 无须任何软件驱动, 硬件配置正确即可实现转换功能。RS-485端带有硬件自动数据流控制, 使用时无须额外进行软件自动流控;信号端具有3000VDC隔离保护, 从而能有效防止模块在受到高压冲击时而损坏。

使用RS-485/422通讯时, 需要设置数据格式。SW1用来设置数据格式, 可以是9、10、11、12位 (bits) 。默认的数据格式是10 bits:1起始位, 8数据位, 0校验位, 1停止位。SW2用来设置通讯波特率 (RS-485方式) 或设置RS-422通讯方式。ADAM-4520的出厂默认波特率 (Baud Rate) 是9600。

详细使用方式请参见其使用手册。

ADAM-4520模块需要单独24VDC供电, 电源连接到+Vs和GND端子。

CM (RS232) -->ADAM (两侧接线) -->DCS端 (RS482) 通讯接线如图2:

根据之前的通讯参数设置, 拨码开关设置如下:

SW1需设置成“1, 8, 1, 偶”方式, 如图3:

SW2需设置成“19200”方式, 如图4:

如此设置, 使得DCS一端无论硬件接线和软件组态都不用改变。

SIS只需要修改软件组态, 组态设置如图5:

通讯方式更改的工作可以在装置运行时完成, SIS侧只需做部分下装, 对系统正常运行没有影响。

(2) 统一现场TRIDENT硬件版本

气化A套控制系统目前的版本为V2.1, 气化B套控制系统目前的版本为V1.6, 气化C套控制系统目前的版本为V2.2, 将三套系统统一到V2.2。

系统硬件版本的升级需要在停车期间完成。

4 后续跟踪处理

4.1 我公司气化B套控制系统采用了上述故障处理方案后, 系统运行已近半年, 未再出现Trident系统与DCS (Foxboro) 的MOD-BUS通讯中断的故障。并在继续密切跟踪系统运行及通讯状态。

4.2 与北京康吉森售后服务人员沟通协商, 其承诺与TRI-CONEX联系, 将本次故障的详细信息提交给美国TRICONEX总部, 就该问题做进一步交流和实验, 及时反馈最新信息。

5 结束语

Modbus通讯技术 篇6

1 Modbus协议简介

Modbus是由Modicon在1979年发明的一种应用于电子控制器上的通用语言, 是全球第一个真正用于工业现场的总线协议。通过此协议, 控制器经由网络和其它设备可以通信。它已经成为一种国家通用工业标准。

Modbus协议定义了一个控制器能认识使用的消息结构, 而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其它设备的过程, 如何回应来自其它设备的请求, 以及怎样侦测错误并记录。MODBUS协议由两种传输模式组成:ASCII模式和RTU模式。

我们选择的高效率通信、时间管理严格RTU传输模式。RTU传输模式是主机向所有从站输入地址, 从机被接收, 并与地址相比较, 如果地址是相同的, 则接收本次数据包。接收后, 从机接收完地址后, 还可以接收数据的CRC校验码, 若校验成功则从机将按照主机的要求完成相应操作并生成数据包返送给主机;若校验出错则从机向主机返送错数据包。如果从检测出错则发送回错误的数据包。MODBUS定义了一个基本的协议框架的组成, , 无关的通信层协议数据单元PDU, 然后通过添加地址验证等附加字段定义了应用数据单元ADU, 形成一个完整的数据帧。

2 RS485接口电路

RS485串行通信技术抗干扰能力强、组网简单、传输距离远, 已经被广泛运用到工业现场的控制系统。因此, 为了满足远程和多点通信的需求, 本装置采用RS485接口来实现Modbus RTU通信协议。我们选用的STM32F207VGT6是重庆优易特公司生产的基于Cortex-M3内核的微处理器。主机为PC机, 从机为基于Cortex-M3内核STM3220V-CRE/UET开发板。为了实现RS485通信功能, 通过标准的RS232/RS485转换器将PC机串口RS232信号转换为RS485信号, 通过RS485转换芯片ADM485AR与STM32F207VGT6的USARTl (USl) 接口实现接口转换。

STM32F207VGT6的USART1的Uart1Rx、Uart1Tx与MAX3485的RO、DI相连接来实现RS232接口的数据收发;MAX3485的差分信号端A、B则通过插座相连;而MAX3485的接收使能端RE、发送使能端与DESTM32F207VGT6的SPI01相连, 从而使得STM32F207VGT6对RS485总线的通信方向进行控制。实验开始前需对外设进行初始化。首先对USART1进行初始化, 本装置采用的通信参数为:波特率9600kb·s-1, 8位数据位, 1位停止位, 1位奇偶校验;其次, 对STM32F207VGT6的SPI01初始化为输入模式, 从而控制RS485的通信方向。

3 Modbus协议实现

MODBUS协议由数据帧发送、数据帧接收和数据帧处理组成。

3.1 数据帧发送

数据的发送必须将请求操作封装成标准的MODBUS协议帧, 即MODBUS协议的编码。MODBUS中使用CRC16作为冗余校验, 按照循环冗余检验算法, 使用标准16位生成多项式, 可对任意长度的信息字段校验出一个16位的校验码。其程序流程可描述如下:

MODBUS协议的数据发送必须打包成编码, 即MODBUS协议标准的要求。使用标准的16位多项式, 来用作冗余校验的MODBUS算法, CRC16按照一个循环冗余校验算法中, 的任一个的16位校验码中的信息字段的长度。程序流程可以被描述为如下: (1) 预置16位寄存器为十六进制FFFF, 这个寄存器被称为CRC寄存器装置; (2) 第一个8位数据和16位CRC寄存器是不同的或更低, 放于CRC结果寄存器; (3) 寄存器向右移一位 (朝低) 的内容, 用0填补最高位, 检查最低; (4) 如果最低位为0:重复第3步;如果最低位为1:CRC寄存器与多项式A001 (1010000000000001) 异或; (5) 重复步骤3和步骤4, 直到右移8次, 从而使整个8位数据全部进行处理; (6) 重复步骤2到5, 接下来对下一个的8位数据进行处理; (7) 由此产生的CRC寄存器是CRC码。

3.2 数据帧的接收

在PC机发送帧后, STM32F207VGT6通过GPIO操作总线的收/发使能端, 将RS485总线设为监听状态。在监听过程中STM32F207VGT6完成PC机发送帧的接收。由于MODBUS RTU应答帧判定采取了时间标记法, 因此本程序中使用了TM2作为触发器进行时间管理。在接收过程中, USART3每次接收中断对TM2进行复位操作以避免TIM2的溢出中断;而当总线空闲了3.5个字符的发送时间后, TM2由于缺少USART3的复位, 将产生溢出中断, 在中断响应中完成关闭USART3结束数据通信和置应答帧接收完成标志位的操作。

3.3 数据帧的处理

在完成数据帧正确接收的基础上, PC机必须进行应答帧处理, 即MODBUS协议帧的解码。系统从接收缓冲区中读取应答帧。首先提取ADU进行地址码和CRC校验码的判定;其次, 再从PDU中提取ADU进行数据长度、功能码、数据码的判定;最后, 如果校验失败则返回相应的校验失败码, 若校验成功, 则继续从ADU/PDU中提取的数据进行处理, 完成主机的各种功能操作。

4 结束语

从目前来看, Modbus通信协议实现的硬件平台大多数是8位或16位单片机。然而, 传统的单片机由于其本身资源和性能有限, 已越来越不能满足日益复杂的应用需求。而随着ARM处理器技术的不断发展及其应用的不断推广, 如何利用功能更强大的ARM处理器来提高系统性能已成为工业自动控制领域研究方向之一。本文提出了一种基于Cortex-M3微处理器的Modbus通信协议的实现方案, 并在实践中得到检验, 证实可行。

参考文献

[1]吴寅华, 赵敏.基于ARM Cortex-M3的MODBUS协议实现及应用[J].电子科技, 2011.

[2]郑鸿彦, 苗世洪, 张军民.基于ARM9微处理器的Modbus通信协议的实现[J].电力系统, 2007.

Modbus通讯技术 篇7

辽阳石化140万t/年连续重整装置控制系统采用DCS(集散控制系统)、PLC(可编程控制器)相结合的方式完成对整个装置的自动控制。其中DCS系统采用霍尼韦尔新一代的Experion PKS控制系统,实现对整个装置的整体控制。PLC采用TRICON控制系统,完成对循环氢气压缩机组K261的控制。Tricon PLC独立于PKS系统,在正常情况下,TRICON系统自动运行,不需要人为干预。但为了撑握DCS操作人员监视压缩机过程的数据,有必要将压缩机的关键数据传至DCS中进行显示,这就涉及到PKS与TRICON之间的数据通讯问题。这里我们利用MODBUS通讯协议实现Honeywell PKS系统与Tricon PLC之间的串行通讯。

1 Modbus协议简介

Modbus是Modicon公司于1979年提出的一种通讯协议,经过多年的实际应用,已经成为一种应用于工业控制器上的标准通讯协议。有了它,不同厂商生产的控制系统可以连成工业网络,进行集中监控。此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通讯的。它描述了控制器请求访问其它设备的过程,以及怎样侦测错误并记录,它制定了消息域格局和内容的公共格式。当在Modbus网络上通讯时,此协议决定了每个控制器需要知道它们的设备地址,识别按地址发来的消息,决定要产生何种动作。如果需要回应,控制器将产生反馈信息,并用Modbus协议发出。

1.1 Modbus报文

如图1所示,Modbus通讯使用查询-响应会话技术,即主设备初始化查询,从设备做出响应。主设备单独和从设备通讯,也能以广播方式和所有从设备通讯。Modbus主设备查询的格式:从设备地址、功能代码、起始地址、所查询的数据量、错误检测域。从设备响应消息的格式:从设备地址、功能代码、数据长度、响应的数据、错误检测域。

1.2 Modbus传输方式

Modbus协议有两种传输模式:ASCII(美国标准信息交换代码)或RTU(远程终端单元)。它定义了在这些网络上连续传输的消息段的每一位,以及决定怎样将信息打包成消息域和如何解码。用户选择想要的模式,包括串口通信参数(波特率、校验方式等)。在配置每个控制器的时候,在一个Modbus网络上的所有设备都必须选择相同的传输模式和串口参数。ASCII模式通信的主要优点是字符发送的时间间隔可达到1秒而不产生错误。RTU模式通信的主要优点是:在同样的波特率下,可比ASCII方式传送更多的数据。

1.3 错误检测方法

标准的Modbus串行网络采用两种错误检测方法。奇偶校验对每个字符都可用,帧检测(LRC或CRC)应用于整个消息。其中CRC(循环冗余校验)用于RTU模式;LRC(纵向冗余校验)用于ASCII模式。它们都是在消息发送前由主设备产生的,从设备在接收过程中检测每个字符和整个消息帧。用户要给主设备配置一预先定义的超时时间间隔,这个时间间隔要足够长,以使任何从设备都能作出正常响应。如果从设备侦测到传输错误,消息将不会被接收,也不会向主设备作出回应。这样超时事件将触发主设备来处理错误。发往不存在的从设备的地址也会产生超时错误。

2 系统结构及TRICON系统组态

如图2所示,Honeywell PKS系统采用冗余结构,通过CISCO(思科)Catalyst 2960系列交换机把控制器、服务器、操作站连接在一个FTE(容错以太网)网络中。基本网段IP地址为10.1.0.1;子网掩码为255.255.255.0。Tricon系统采用三重化冗余的结构,主要包括3块控制器、2块冗余通讯卡及其它I/O卡件。两套系统通过串口服务器Moxa NPort5630连接在一起。

2.1 通讯模件配置

TCM 4351(Tricon通讯模块)作为Tricon专有通讯卡件支持多种通讯协议及物理连接方式。具有2个网口,4个串口,1个专用调试口,可以实现10/100 M以太网,RS232/485等。冗余的4351通讯卡安装在Tricon主机架的第7个槽位,保障了通讯的可靠性及安全性。每一个串口具有一个唯一的地址,并且可以被组态为MODBUS主站或者从站。我们采用PLC与DCS point-to-point(点对点)的拓扑结构,采用RS-485两线制半双工的数据传输方式,连接头为DB9标准接口。最大传输距离为1 220 m。

如图3所示,使用TriStation 1131组态软件设置TCM卡的串口参数。设置通讯协议为MODBUS SLAVE RTU;从站地址为1;允许写端口;波特率为19200;8位数据传输格式;1位停止位;进行奇校验;传输模式为RS485,两线制的RS485必须勾选握手协议。

2.2 数据地址

如表1所示,Modbus地址由5位数字组成,包括起始的数据类型代号,以及后面的偏移地址。

如表2所示,实型数据的地址比较特殊。Tricon控制器通过Modbus协议传输32位浮点型数据需要使用特殊的映射通讯地址。它把一个32位的浮点型数据映射为两个16位的整型数据,其中高16位映射为一个Modbus整型地址n,低16位映射为n+1。例如:地址为41001的Memory REAL,Read/Write(可读/写内存实型)数据,对应的MODBUS地址高16位为42001,低16位为42002。

2.3 串口服务器组态

MOXA串口服务器Nport 5630-8为串口设备连接到以太网提供了便捷的传输方式。只需要做一些简单的配置任务,就可以使现有的串口设备做好了联网的准备。此外,NPort5630系列可以直接进行串口和以太网接口的双向传输数据;同时集中管理串口设备和分散的主机系统。其特点如下:

(1)简单易用的LCM状态显示及设置。

(2)10/100 M自适应以太网络。

(3)8个RS-485/422串口。

(4)所有串口信号带突波保护(15 KV ESD)。

(5)提供TCP Server,TCP Client,UDP等操作模式。

(6)提供ARP、web console、telnet console等进行设置。

(7)提供SNMP MIB-II来提供网络管理。

(8)支持静态IP、DHCP、BOOTP协议。

主要参数设置如下:

(1)网络设置

IP CONFIG:STATIC;IP 地址:10.1.0.79/80;子网掩码:255.255.255.0,网关:10.1.0.254。

(2)串口设置

波特率:19200;数据位:8;停止位:1;奇偶校验:奇;接口:RS485 2wire;操作模式:TCP server;PORT1端口号:4001。

如图4所示,串口服务器端的物理连接采用RJ-45接口,其中引脚5接Data-、引脚6接Data+、引脚7接GND。Tricon TCM端采用标准DB9 Female连接头。

3 Experion PKS系统组态

Experion PKS系统主要采用Configuration Studio组态软件包中的Quick Builder软件实现第三方通讯点的组态。包括:Channel(通道)、Controller(控制器)、Point(点)三方面的组态设置。为了更好地理解,我们以TIC2605(K261压缩机组润滑油温度控制回路)为例说明组态过程。整个控制回路包括4个参数,分别为测量值(PV)、设定值(SP)、输出值(OP)以及操作模式(MD)。

3.1 通道组态

通道组态用于建立MODBUS通讯协议的连接,参数的设置要跟串口服务器相对应。定义一个名称为K261CH的Modbus通道。主要参数设置如下:通讯报警边缘限Marginal Alarm Limit(MAL)用于产生一个高优先级的通讯故障报警。MAL的计算公式:控制器数量开方X每个控制器MAL值。通讯失败报警限Fail Alarm Limit(FAL)设置一般为通道MAL的2倍。端口类型选择Terminal Server;协议为Modbus RTU;Terminal Server TCP Host Name(串口服务器TCP IP地址)为10.1.0.79、冗余端口设置为10.1.0.80;Terminal Server TCP Port No(串口服务器TCP端口号)为4001,对应Nport 5630第一个端口。

3.2 控制器组态

这里建立的控制器是依据Modbus协议定义的逻辑控制器,而不是物理上的控制器。控制器对应具体的数据类型,我们建立4个Modbus控制器,分别为K261CTLAI (只读模拟量控制器)、K261CTLAIH(可读/写模拟量控制器)、K261CTLDI(只读数字量控制器)、K261CTLDO(可读/写数字量控制器),对应的数据类型分别为Input Register、Holding Register、Digital Input和Digital Output。PLC Station ID(从站地址)设为1,Channel Name(通道名称)是K261CH。

3.3 点组态

如图5所示,我们建立一个名称为TIC2605的模拟量点,必须指定Parent Asset(区域),这里为REF;扫描周期一般设置为5秒;量程为0~100℃。控制点的Source Address(源地址)设置是关键也是难点,设置的正确与否将直接影响通讯结果的正误。源地址的格式为“控制器 地址 解析码”,其中控制器和解析码由控制点的数据类型决定,地址为去掉功能号的Modbus通讯地址。TIC2605控制回路的源地址组态参数详见表3。

整型数据是Modbus通讯中一种常见的数据类型,PKS系统提供了一些常用的16位整型数据解析码,详见表4。

Tricon PLC中输入整型测量值PV的数据范围为819~4095,PKS系统没有合适的解析码。我们使用PKS系统软件包中的“User-defined Data Format”工具建立自定义的数据格式。打开Station软件,从菜单栏中选择 Configure>Application Development>User-defined Data Formats。建立一个名称为KJC_1的解析码,其中Data type(数据类型):INT2 (16位整型);Conversion type(转换类型):Linear(线性);Field value(现场值):Node1=819;Node2=4095;Converted value(转换值):Node1=0;Node2=1。这样解析码KJC_1就把数据819~4095进行线性量程转换成为0~1。

对于32位的实型数据,PKS系统提供4种常用的解析码,分别为:IEEEFPB(大端格式);IEEEFPBB(字节交换的大端格式);IEEEFPL(小端格式);IEEEFPLB(字节交换的小端格式)。我们以设定值SP为例说明实型数据的读取方式。例如SP值为47,对应的32位浮点数为3C 42 00 00。在Tricon内存中为大端存取模式,其中MSB(最高有效位)3c 42两个字节存放在低地址42001中,LSB(最低有效位)00 00两个字节存放在高地址42002中。PKS系统读取Modbus浮点型数据是按address、address-1方式读取。所以读取到的数据格式为00 00 3c 42,这种数据格式也就是交换字节的小端格式IEEEFPLB。

4 总结

PKS系统与Tricon PLC之间的通信已经完成,两系统流程图画面上显示的数值完全一致,能够很好地对这些数据进行监控。PKS系统与Tricon PLC之间的顺利通信,使操作人员在监视工艺过程运行情况的同时,还能及时监视压缩机组某些重要测量点的实时值,不但减小了PKS系统的控制负荷,提高了控制精度,而且费用较低、安装方便,降低了系统的投资成本。

参考文献

[1]Honeywell.Experion Quick Builder Guide.EP-DSX285,R310,2007,11:75-131.

[2]TRICON.Communication Guide for Tricon v9-v10Systems.Tricon Manual,2009,11:74-88.

上一篇:假离婚下一篇:报站广播