基于Modbus协议多通信接口的工控组态软件PMSM控制

2013-02-22 08:23:12张利国窦满峰
微特电机 2013年7期
关键词:工控通信协议组态

张利国,窦满峰

(1.西北工业大学,陕西西安,710129;2.东北石油大学秦皇岛分校,河北秦皇岛,066004)

0 引 言

DSP以其强大的数据处理能力,成为电机控制的首选芯片,而电机的运行参数和运行状态要想直观的体现出来,必需通过上位机软件的丰富功能来实现。目前,Labview虚拟仪器作为上位机软件应用研究较为广泛,多采用RS-232或RS-485的用户自定义串口通信,无法适应工控领域的应用,为适应工控领域串口通信的需求,设计与工控领域组态软件如力控软件、组王软件等的硬件接口,满足实现工控组态软件对电机控制驱动的智能控制。

文献[1]介绍了Modbus通信协议利用RS232通信,只针对专用开发软件的通信设计,不具有推广性;文献[2]介绍了一种InTouch组态软件的RS232通信,利用第三方软件,编程复杂。本文介绍可编程多种通信接口,适应工业中多数组态软件具有Moudbus通信协议端口的硬件及软件设计接口技术。解决一个设计项目对多种接口的需求,给出多接口实现方案。

1 串行通信技术

串口通信仅仅定义了硬件的通信规范,而没有具体的软件通信协议,通常称之为自由协议。因此,串口通信经常与软件通信协议结合。Modbus通讯协议支持传统的RS-232、RS-422、RS-485和以太网设备。

1.1 电机驱动控制Modbus_RTU串口通信设计[3]

本设计采用Modbus通讯规约中RTU(Remote Terminal Unit)协议(Modbus规约包括RTU协议和ASCII协议)。RTU通讯方式采用8位二进制数据传数据,CRC循环冗余校验作为数据校验,通讯速度较快。本接口技术通讯协议(Modbus_RTU)中的数据结构以及数据传输采用以下规范:

(1)数据传输格式

异步传输,1位起始位,8位数据位,2位停止位,无校验位,共11位。缺省波特率为9 600 bit/s。从机支持主机修改传输速率。

(2)数据收发功能报文格式

数据报文格式如表1所示。

表1 上位机请求读写取数据报文格式

本设计采用读一组寄存器数据功能码03H和写一组寄存器数据功能码10H。

主机从从机获得数据,包括从机仪表采集的模拟量数据、开关量数据及系统参数等。从机的地址、通信波特率写入、开关量输出、模拟量输出和系统参数的保存均采用相同的功能码,每个寄存器对应特定的端口,每个端口控制指定的设备,这样可提高控制的可靠性。

1.2 C语言软件程序实现

下位机读写保持寄存器完成对上位机的请求的执行与应答。分别通过子程序实现03H和10H功能,它们拥有共同的实现结构,如图1所示。

图1 读写保持寄存器子程序结构框图

共同的实现结构有助于简化编程结构,提高程序的可扩展性,利于程序的实现与修改。

2 工控组态软件接口

工控组态软件[2-3]是数据采集与过程控制的专用软件,其突出特点是实时多任务,可以实现数据采集与输出、数据处理与算法、图形显示及人机对话、实时数据的存储、检索管理和实时通讯等多任务。

工控组态软件选用北京三维力控组态软件作为测试软件,软件可实现远程遥控操作,远程监测电机的工作状态与性能,可及时采集数据并分析数据,生成可视化动态数据并生成有效数据库。

2.1 建立数据库[4]

定义一系列数据用于反映软件监测与被控电机的各种参数,如:控制板实时温度、母线电流、电机温度、电机转速及控制板采集的其它数据,还包括一些必要的中间变量和间接变量。数据库如图2所示。

图2 变量管理窗口

2.2 动画链接

建立数据库中的数据与图形对象的连接关系,使画面生动直观地反映参数的变化情况。如控制板实时监测母线电流,可设置过流报警限,如超过30 A报警,实现代码如下:

2.3 I/O 连接

力控组态软件对于采用不同通信协议的I/O可提供有针对性的I/O驱动程序,实时数据库借助I/O驱动程序对I/O设备执行数据采集与指令控制,如本文介绍的Modbus RTU通信协议属于工控组态软件通用的工业控制通信协议,通过组态软件的设置可较容易地实现I/O连接。

3 通信可扩展性方案及实现

3.1 通信可扩展性方案

RS-232和RS-485通讯接口的主要区别是:

(1)从接线上,RS-232是三线制,RS-485是两线制;

(2)从传输距离上,RS-232只能传输15 m,RS-485最远可以传输1 200 m;

(3)从速率上,RS-232是全双工传输,RS-485是半双工传输;

(4)从协议层上,RS-232只支持点对点通讯(1∶1),RS 485支持总线形式通讯(1∶N)。

根据以上区别制定以下方案:

(1)根据需要选择通信接口,RS-232接口适合近距离实验性通信,RS-485适合于实际工程应用性通信。

(2)由于接口可选择的设计,对硬件的设计要求提高,选择单芯片多功能硬件,既能满足设计要求,又能减轻硬件设计负担。

(3)硬件设置接口选择拨码开关,软件设计通过接口判断位,执行相应程序。

3.2 硬件实现

电机控制板通讯芯片采用MAXIM公司生产的MAX3160,此芯片是一种高性能管脚可编程多协议收发器件,可通过引脚设置为2Tx/2Rx RS-232接口或单路RS-485/422收发器;该芯片内部采用双电荷泵结构,独特的低压差发送输出级,满足RS-232和RS-485/422协议标准的电压供电范围+3~+5.5 V。芯片的接收器采用了失效保护电路,此功能确保当接收器输入短路或开路时,器件输出保持高电平,MAX3160的限摆率功能具有减小EMI和终端匹配不当时减小信号反射。当禁止限摆率功能时,其数据传输速率在RS-485/422模式下可高达10 Mb/s,在RS-232模式下可达1 Mb/s。另外,该器件还具有节电模式、过流保护和过热保护功能。

本通信系统中RS-232接口和RS-485接口兼有。在以往的硬件设计中多采用多片专用芯片和控制电路来完成,造成结构复杂,稳定性差。采用MAX3160芯片并辅以少量其它电路,只需通过软件编程来控制相应的管脚即可方便地实现RS-232和RS-485的接口组合,图3给出基于TMS320F2812处理器通信接口方案,MAX3160有三个端口DSP软件与DSP的三个端口连接,实现数据的传送与控制。利用该电路可利用该电路可根据需要由软件控制和 RS-485/RS-232等四个可编程脚,从而实现RS-232或RS-485异步通信。

图3 通信接口电路

3.3 软件实现

编程采用C语言实现,数据传送采用RS-232或RS-485线上实时通讯。作为DSP内部编程方式是线上等待、中断响应。图4是Moudbus_RTU通信中断程序的流程图。

RS-232只支持点对点通讯,RS-485支持总线形式通讯。所以在数据接收与数据发送时,两种接口的数据收发控制子程序有所区别。

另外,中断程序中的功能多以子程序形式出现,提高程序的可读性和运行的可靠性。子程序主要包括功能码判断、数据收发、10 ms定时软复位中断(超时)、校验、数据非法判断、寄存器读写和功能码不识别应答等。

图4 通信中断程序流程图

4 工控软件结合硬件平台的调试结果

4.1 工控软件与电机驱动控制的无缝连接

工控软件与电机驱动控制通过满足如下条件实现无缝连接。

(1)电机驱动控制通信硬件接口电路,可实现RS-232和RS-485通信。

(2)配合相应接口基于Modbus_RTU通信协议的软件编程。

(3)对应RS-232和RS-485接口与上位机接口的转换装置。

(4)工控组态软件与下位机接口设置及工控组态软件的上位机编程。

工控软件结合硬件平台的调试是将下位机控制器的通信硬件电路,利用硬件转接接口与上位机通信接口进行硬件连接,进行下位机软件与上位机软件的联合调试。下位机进行实时测量并记录数据,上位机请求发送实时采集数据,并通过工控软件对数据进行分析并描绘出实时的变化曲线。图5为上位机工控软件采集到的数据并进行了实时显示。

图5 工控软件界面

4.2 工控组态软件对电机的智能控制

工控组态软件对电机的智能控制主要体现在,可实现电机的起停、远程控制、电机控制参数调整、电机故障报警和电机运行历史参数查询。

试验条件,采用力控工控组态软件设计的上位机控制界面;上位机与控制板选择使用RS-485接口;电机控制器采用TMS320F2812为控制核心,IGBT三相全桥逆变器驱动电机;电机采用18 kW永磁同步电机。调试项目及结果如下:

(1)电机起动、停止,工控组态软件发送控制命令,通过电机控制器可控制电机正常起动和停止。

(2)工控组态软件设置电机转速,与电机控制器通信,由控制器控制电机按设定转速运行,电机转速测得满足设定值。

(3)工控组态软件设定电机故障报警限制,数据传输电机控制器,当电机故障时产生报警信息。试验设定电机过热报警上限,产生硬件报警信息,同时报警数据传输到工控组态软件。

(4)工控组态软件建立数据库,可将下位机传输到上位机的实时存储,并可随时通过工控组态软件查看。

工控组态软件实现根据项目任务改变上位机编程及界面设置,完成对电机的实时控制和实时数据采集,达到对电机的实时监控。

5 结 语

本文通过对电机控制器通信电路的设计及软件编程,实现了与上位机工控软件的接口技术。设计与调试结果得到以下结论:

(1)Modbus_RTU通信协议在TMS320F2812处理器中的软件实现,能够适应工控领域采用此协议的组态软件实现通信;

(2)通信接口的硬件设计及软件编程,硬件通信可扩展能力强,为远程通信包括网络通信提供基础;

(3)完善的上位机力控软件与下位机软件设计,可为其它组态软件的使用提供参考。

[1] 程杨,刘学平,占涛,等.一种基于Modbus协议的工业控制系统设计[J].机械设计与制造,2011(1):1-3.

[2] 梁秀霞,张培楠.基于InTouch组态软件与串口的通讯实现[J].仪表技术与传感器,2012(3):62-63,66.

[3] 张勇,侯立刚,肖炎良,等.工控组态软件实时数据库系统的开发与设计[J].自动化仪表,201132(12):28-31,35.

[4] 王兴贵,张明智,杜莹,等.Modbus RTU通信协议在智能仪表与工控机通信中的应用[J].低压电器,2008(2):8-11.

[5] Yolacan E,Aydin S,Ertunc H M,et al.Real time DSP based PID and state feedback control of a brushed DC motor[C]//2011 23rd International Symposium on Information,Communication and Automation Technologies.2011:1-6.

[6] McConahay J.Using Modbus for Process Control and Automation[J].Control Engineering,2011,58(12):A12-A14.

[7] 张成鹤,王平,郑林华,等.可编程多协议收发器MAX3160的原理与应用[J].国外电子元器件,2002(12):62-64.

猜你喜欢
工控通信协议组态
基于PLC及组态技术的恒温控制系统开发探讨
河北农机(2020年10期)2020-12-14 03:13:42
基于Z-Stack通信协议栈的红外地温采集电路设计
基于PLC和组态的智能电动拧紧系统
工控速派 一个工控技术服务的江湖
工控速浱 一个工控技术服务的江湖
热点追踪 工控安全低调而不失重要
基于DMX512通信协议的多路转发器设计与研究
基于攻击图的工控系统脆弱性量化方法
自动化学报(2016年5期)2016-04-16 03:38:47
PLC组态控制在水箱控制系统的应用
工业设计(2016年11期)2016-04-16 02:49:22
基于NS-3的PLC多频通信协议仿真平台设计与实现
电测与仪表(2016年2期)2016-04-12 00:24:52