1 引言
调节阀电气装置是工业自动化系统中的执行单元,广泛应用于化工、石油、冶金、电力等行业的压力、温度和流量控制。它是一种以电机为动力源的机电集成现场设备,将控制信号转换为相应的机械动作,控制各种阀门的打开和关闭。随着科学技术的发展,特别是数字和信息技术的发展,阀门电气装置上方控制系统的数字化和信息化程度越来越高,电气装置的精度、动态特性和功能要求越来越高,如友好的人机界面、精确定位、故障诊断和总线通信等,这些性能的改进和功能的实现取决于阀门电气装置控制器。
2 工作原理
阀门电气装置(图1)控制器接受上述控制系统的指令,控制电机的运行,驱动电气装置的传动部分,并将其工作状态信号反馈给上述系统,以实现阀门位置控制。阀门电气装置控制器是一种嵌入式控制系统,采用单片微处理器(MCU)以人机界面、信号输入/输出、电机驱动等外围电路为核心,通过MCU控制整个系统运行的内部程序。MCU是整个系统的核心,MCU功能简化的计算机系统集成在芯片上(CPU,内存、并行总线、输入/输出接口等。),具有体积小、功耗低、控制功能强、扩展灵活、微型化、使用方便等优点,已广泛应用于阀门电气设备控制器。
600)this.style.width='600px';">
图1 阀门电动装置
目前的控制器MCU所使用的软件通常采用前后工作模式(图2)。系统应用程序是一个无限循环。循环中调用相应函数完成相应操作,这部分是后台行为。中断服务程序处理异步事件是前台行为。一般来说,通过中断服务保证对实时性要求较高的操作。由于中断服务提供的信息只能在后台程序运行到此处时处理,因此任务的响应时间取决于整个程序循环的执行时间。
600)this.style.width='600px';">
图2 前/后台系统
♂
3 存在问题及解决方案
3.1 存在问题
随着阀门电动装置功能的增加和性能的提高,要求MCU同时,处理的任务越来越多,实时要求越来越高。任务数量的增加意味着程序循环时间的延长,而高实时要求对后台程序的循环周期提出了更高的要求。如果系统后台程序的循环时间超过处理实时任务的最大间隔,则无法有效保证系统的实时性,控制器无法正常稳定工作。
3.2 解决方案
采用模块化设计理念,将阀门电气设备控制器分解为多个功能模块,每个实时要求高或程序执行时间长的功能模块都是独立的MCU控制,然后通过总线通信与主控MCU进行数据交换,即多MCU系统架构。
4 控制器硬件
主控制器硬件(图3)MCU、辅助MCU、电源部分、驱动部分、位置信号检测部分、控制信号输入/输出部分、人机界面部分、通信部分等电路组成。分解阀门电动装置需要处理的相关任务,个辅助设备MCU完成对实时性要求高或使用时间过长的任务。在控制器中,由于人机界面显示时间长,位置信号和电源检测的实时性要求高,单独由辅助设备组成MCU控制。主MCU通过IIC总线通信的方式及辅助MCU交换数据,协调控制系统。
4.1 MCU及相关电路
主MCU选用ARM7TDMI-STM32位内核单片微处理器LPC2136运行速度快,存储容量大,IO接口丰富,有UART、SPI、IIC各种通信接口等。MCU根据不同的功能需要,分别选择MCS-51内核8位单片微处理器LPC917、LPC922和LPC936结构简单,性价比高IIC总线接口。
600)this.style.width='600px';">
图3 控制器硬件结构
LPC936负责检测当地按钮操作、液晶显示屏和照明显示。当地按钮操作采用无轴磁控开关,选用Allegro 3144霍尔效应开关保证了当地操作与控制器部隔离,保证阀门电动装置的保护等级高于IP65.显示器采用有机电发光(OLED)显示器,OLED与传统液晶显示器相比,显示器采用主动发光(自发光)技术(LCD)与高亮度相比,视角范围大,正常工作时负荷约为50mA,功耗比LCD降低一半。
LPC922负责检测阀门位置(图4)。阀门位置由自制光电脉冲计数相对编码系统测量,准确将电气装置的旋转位移转换为两个正交的电脉冲信号输入MCU,阀门的开关方向和位置由程序确定,每转输出360个脉冲,分辨率为1°。有充电式脱落保护电路,确保阀门位置不丢失。
LPC917负责检测电源的相序变化和缺相运行(图5)。它将三相交流电源(380VAC,50Hz)输入转VDC)输入MCU,该程序根据三相脉冲信号之间的相位变化来判断输入电源相序和是否缺相运行,以确保电气设备的开关方向与输入电源相序无关。
♂
600)this.style.width='600px';">
图4 位置检测电路
600)this.style.width='600px';">
图5 电源检测电路
4.2 IIC总线通讯
主MCU与辅助MCU通过IIC总线连接,实现数据双向传输,传输速率400Kbit/s。IIC总线是芯片间串行数据传输总线,2条信号线(SDA、SCL)可实现全双工同步数据传输,便于构成多机系统和外围设备扩展系统。使用时,设备直接挂起IIC总线由主器件发出IIC可以从地址对应IIC无需介入底层的设备进行数据传输IIC操作协议。控制器中LPC2136为主机,LPC917、
LPC922和LPC936为从机。
5 控制器软件
控制器软件由LPC2136主MCU程序和LPC922、LPC917和LPC936辅助MCU子程序由四部分组成。主程序负责控制器协调,子程序负责完成各自的任务,主程序和子程序通过IIC总线交换数据。
5.1 IIC通信数据格式
主机和从机IIC总线数据由8字节组成LPC936辅助MCU通信数据格式见表1。主机和其他辅助设备MCU通讯的数据格式与此类似,只是从机地址与数据有所区别。为保证接受的数据正确无误,对接收的数据均进行CRC校验。CRC域是由发送端组成的两个字节,包括16位的二进制值MCU计算后加入到数据中,接收端MCU重新计算收到的数据CRC,接收CRC如果两个域中的值比较CRC数据传输错误,数据组无效。
表1 主机/从机数据格式
600)this.style.width='600px';">
♂
5.2 LPC2136主程序
LPC2136主程序是整个控制器软件的核心,由主循环和定期中断子程序组成。程序主循环负责故障检测、处理和辅助MCU进行数据交换,定期中断子程序完成其他任务(图6),如输入/输出信号检测、(图6)。
图6 主程序流程框图
600)this.style.width='600px';">
6 结语
采用多MCU的阀门电动装置控制器既保证各个功能模块正常工作,又大大缩短了主MCU程序循环周期使主MCU其它控制功能模块工作稳定可靠,提高了整个控制器的运行效率。
参考文献
[1] P89LPC917、P89LPC922、P89LPC936数据手册〔Z〕.广州周立功单片机发展有限公司.
[2] 周立功,张华.深入浅出ARM7-LPC213X/214X〔M〕.北京:2005年北京航空航天大学出版社.
咨询需求
