可靠性与环境试验设备控制器的设计与开发
2013-08-14雷晓明
雷晓明
(广州五所环境仪器有限公司,广东 广州 510800)
0 引言
可靠性与环境试验设备属于机电一体化设备,是航天航空、电子信息、通信、交通和机械等各行业提升质量和可靠性的重要装备。近年来,随着电子技术和控制技术的发展,环境仪器设备也得到了迅猛的发展,成为自动化行业成长最快的子行业之一。
控制系统作为可靠性与环境试验设备的最核心部分,它的好坏直接影响到整个设备的品质高低。目前国外知名品牌都使用专用控制器,因此具有很强的竞争优势,牢牢地占据高端产品市场。
广州五所环境仪器有限公司是国内唯一一家拥有自主知识产权控制器研发能力的可靠性与环境试验设备制造商。本公司具有30年可靠性与环境试验设备专用控制器研发经验,技术水平国内领先,并具有与国外知名品牌竞争的实力。
本文将从总体设计出发,论述广州五所环境仪器有限公司专用控制器的硬件和软件的设计思路和实现方法。
1 总体设计
可靠性与环境试验设备具有小批量、多品种的特点,软硬件修改频繁,为保证控制器的稳定可靠,采用以下设计:
1)在WINDOWS下开发可视化、图形化的人机界面设计软件,通过事件驱动编程机制,采用宏命令的方法,高效、快速地开发出可被控制器解释执行的图形界面程序[1];
2)采用模块化、积木式结构的设计方法,将IO单元、测量单元模块化设计,并根据设备的具体应用,以积木的方式进行扩展,在不需要改变硬件的前提下,通过扩展的方式实现复杂设备的监视和控制。
系统总体框图如图1所示。
专用控制器包含以下3个模块:
a)485通讯模块
接收现场测控单元发来的电压、电流、温度、湿度和压力等设备参数,并发送给逻辑与PID运算模块进行处理;将加湿器、电磁阀、继电器、加热器和电子膨胀阀等部件的控制参数发送给现场测控单元进行输出。
图1 控制器的系统总体框图
b)逻辑与PID运算模块
处理电压、电流、温度、湿度和压力等设备的参数,以及用户操作命令、设置参数;将显示数据和报警信息发送给人机界面程序解释模块进行显示;将加湿器、电磁阀、继电器、加热器和电子膨胀阀等部件的控制参数发送给485通讯模块。
c)人机界面程序解释模块
显示逻辑与PID运算模块发送来的显示数据和报警信息,并将用户操作命令和设置参数发送给逻辑与PID运算模块。
2 硬件部分
可靠性与环境试验设备专用控制器使用16位色的TFT液晶显示器,并使用触摸屏作为人工输入设备,其硬件参数如图2所示。
3 软件部分
3.1 操作系统
图2 控制器的硬件参数
可靠性与环境试验设备专用控制器采用嵌入式LINUX操作系统,满足了系统的多任务和实时性要求;利用LINUX的帧缓冲存储器(Frame-Buffer),采用轻量级图形引擎对显示缓冲区进行直接操作,将图形界面的内存和CPU开销降到最低;利用操作系统提供的系统调用和库函数,大大提高了控制器程序的开发效率和质量[2]。在嵌入式LINUX操作系统移植中主要解决以下设备驱动程序的开发:
1)TFT液晶屏帧缓冲存储器驱动程序;
2)液晶屏背光驱动程序;
4)NVRAM驱动程序;
5)触摸屏驱动程序;
6)NAND FLASH文件系统移植。
3.2 WINDOWS下图形化的人机界面生成软件
人机界面生成软件由图元、控件以及各种可解释运行的宏组成,具体如下:
a)图元
位图、点、线、矩形、圆、椭圆、圆弧、字符串和各种标尺等。
b)控件
乒乓球是竞技运动,由于激烈的竞争,成功和失败的条件经常转换,参赛者情绪状态也非常复杂,参赛者经受这些变幻莫测、胜负难料的激烈竞争的锻炼,体验了种种情绪。因此,参加乒乓球运动,可以使参与者的心理素质得到很好的锻炼,培养人们的勇敢、顽强、机智、果断等良好的心理品质。
按钮、灯、数字显示器、字符显示器、中继模式、信息模式、输入模式、直方图、饼图、仪表盘、统计图、趋势图、宏模式、日历显示、间隔计时器和报警显示等。
c)宏
页面打开宏、页面循环宏、界面关闭宏、全局宏和定时宏等。
以一款已开发出的环境试验设备的人机界面为例,主界面如图3所示。
图3 主界面
其中,全局宏[0]如图4所示,宏指令如图5所示。
图4 全局宏[0]
图5 宏指令表
3.3 可靠性与环境试验设备专用控制器软件
可靠性与环境试验设备专用控制器软件由485通讯模块、逻辑与PID运算模块和人机界面程序解释模块组成。3个模块并行运行,因此采用多线程的设计方法,保证各个模块的实时性要求[3]。如图6所示。
a)人机界面解释线程
人机界面解释线程负责解释运行人机界面生成软件所生成的界面程序,完成以下任务:
1)响应用户对界面控件的操作,运行相应的事件宏;
2)运行已满足条件的全局宏、间隔定时宏;
3)读取逻辑与PID运算模块所发送的数据,更新内部变量;
4)刷新界面上的显示控件。
b)逻辑与PID运算线程
逻辑与PID运算线程包含逻辑运算和PID运算两部分。逻辑运算负责对各种需要控制的逻辑变量进行逻辑运算,将运算结果保存到输出单元,用于现场控制或界面显示;PID运算对温度、湿度等参数进行PID控制,输出占空比,用于控制加热器或加湿器。下面以开箱内照明灯和水位低报警为例进行说明,如图7、8所示。
图6 人机界面解释线程流程图
图7 开箱内照明灯流程
图8 水位低报警流程
c)485通讯线程
485通讯模块按照组态设置轮询现场测控单元里的所有IO模块和测量模块,完成以下任务:
1)将加湿器、电磁阀、继电器、加热器和电磁膨胀阀等控制参数按照通讯协议组成通讯帧,发送给相应的IO单元;
2)接收IO模块和测量模块的应答通讯帧,按照通讯协议解析出电压、电流、温度、湿度和压力等设备参数,并发送给逻辑与PID运算线程;
3)检测通讯不正常或者掉线的IO模块或测量模块,通知逻辑与PID运算线程产生报警信息。
3 结束语
本文介绍了广州五所环境仪器有限公司专用控制器的设计方法,目前该控制器已经应用于高低温箱、高低温湿热箱、快速温度变化箱、温度冲击箱、低气压箱和步入式高低温试验室等可靠性与环境试验设备上。经过实践验证,采用这种设计方法,能够满足小批量、多品种的行业特点;控制器程序修改简单、适应性和稳定性高、反应灵敏、控制精度高;达到了国内领先水平,具有与国外知名品牌竞争的实力。
[1](美)PETZOLD C.Windows程序设计[M].第5版 珍藏版.北京:清华大学出版社,2010.
[2]LOVE R.Linux内核设计与实现[M].第2版.北京:机械工业出版社,2006.
[3]谭浩强.C++程序设计[M].北京:清华大学出版社,2004.