在一些电子部件产品测试时,早先很多生产厂家都使用继电接触控制系统。该系统由分立元件组成,由于线路简单,元件控制精度不高,加上抗干扰能力级差控制工程网版权所有,所以运行不够稳定,误动作频繁,使产品的测试和分析不准确。
随着现代工艺的高精度要求,为了适应市场需求,采用可编程控制器对原继电电气控制系统进行改造,但由于各PLC厂家硬件模块和软件结构绝大多数都是专用的、互不兼容的,系统各模块间的交互方式、通信机制也各不相同,这使得控制系统相对独立、彼此封闭。随着技术的进步和市场竞争的加剧,这种专用体系结构的控制系统越来越暴露了其固有的缺陷。由于基于PC平台的软件PLC无需专门的编程器,可充分利用PC机的软硬件资源,直接采用梯形图或语言编程,具有良好的人机界面等优点,因此逐渐取代了硬件PLC,成为研究的热点。
1 电气测试系统原理介绍
该寿命测试系统能够利用定时器控制电子部件产品的动作频率,利用计时器来控制动作的次数,基本原理如图1所示。
图1 电气测试基本原理
PLC使用OMRON CQM1H-CPU11 PLC加上扩展模块,其I/O点数可达26个,可满足多路测试,利用控制动
作RELAY的定时器和负载反馈RELAY的定时器时间差进行判断产品或负载的不良状态,并对系统进行停机保护,实验完成后利用产品或负载在机械和电气方面的特性对其产品进行评价。
其中,遮断保护、动作RELAY和负载反馈RELAY都是用PLC内部高精度定时器进行控制的,其原理都是用低电压控制高电压,实现高低压分离控制工程网版权所有,保证了测试系统的安全性,这里的遮断保护用的是Fuji ELECTRIC Co.Ltd。JapanSC-13AA型接触器,耐压可达600V,单触点额定电流是32A,动作RELAY和负载反馈RELAY(也可以用光电耦合或电流互感器)都是用的OMRON的MY系列继电器。
实际用DL750 scoper测量发现这两种精度都不是很高,误差往往有8-10ms。
实际中对产品评价需要很多数据,需要测试很多产品,这样需要多独立回路,接线走线困难,而且会产生寄生电路,所以,从PLC产品的兼容性及测试成本考虑,采用目前先进的嵌入式软PLC技术,可大大缩短实验周期并降低成本。
2 软PLC技术
传统的PLC经过十几年的发展,技术已经非常成熟,以高速度、高稳定性、高性能在工业控制领域得到了广泛应用,与此同时,随着现代计算机技术和电子技术的发展,在工程方面逐渐表现出其缺点:传统的PLC厂商垄断市场,其产品户不兼容,缺少明确一致的标准,难以构建开放的硬件体系结构;各厂商产品的编程方法差别很大,技术专有性较强,工作人员培训时间长,造成PLC的性价比增长很缓慢。
20世纪90年代中期,计算机和微电子技术的迅猛发展以及PLC的国际标准IEC61131的制定,产生了软PLC技术,所有"软PLC技术",就是用PC作为硬件支撑平台,利用软件实现标准硬件PLC的基本功能,也就是将PLC的控制功能封装在软件内,运行于PC的环境中,以PC为基础的控制系统,同时提供了PLC的相同功能,却具备了PC的各种优点。
软PLC技术一般由开发系统和运行系统两个部分组成。开发系统运行在PC平台上,而运行系统则运行在嵌入式硬件平台上,一般而言,嵌入式硬件平台上都要运行某种嵌入式操作系统,比如μC/OS-II、μClinux等。
现代开发系统的特点一般都是集成化开发环境,界面友好,易于使用。软PLC嵌入式系统是基于IEC61131国际标准的,所以必然要支持其中的几种语言,系统运行在嵌入式硬件平台上,负责解释执行由开发系统编译、链接后产生的目标文件,运行系统一般由运行内核、通信接口和系统管理三大部分组成,其设计和实现精度很高,它的执行效率将直接影响到系统在现场控制中的反应速度。
3 嵌入式平台的虚拟运行系统
运行系统的结构组成如图2所示。系统管理器的主要任务是处理不同任务、协调程序执行及从I/O映象读写变量。I/O接口可与本地I/O系统和远程I/O系统通信。通信接口使运行系统可以与开发系统或其他设备进行通信。内核解释器是运行系统的核心部分,负责解释执行由开发系统编译完成的PLC应用程序的目标代码。
图2 运行系统的结构组成
运行系统可在多种支持平台上运行,它通过将数据区和代码区分离,实现程序的动态更新和代码的高效率动态下载。
(1)在μClinux平台上实现软PLC虚拟机实现步骤
将梯形图的指令翻译成宏汇编并建立一个宏库;
把用户编写的梯形图程序编译成中间代码形式的PLM文件;
将PLM文件转变为汇编程序;
用汇编器汇编变成功的汇编程序,将解释执行内部指令(PLM文件)转换为程序,汇编成机器码执行,实现PLC指令机器码执行方案,大大地提高了执行速度控制工程网版权所有,同时大大节约了内存空间;
将PLC指令对应的机器码移植到嵌入式操作系统中执行。
(2)运行系统的两大模块
运行系统主要由两大模块组成:1)梯形图到机器码程序的转换;2)执行机器码文件。每个模块的功能如下:
1)梯形图到机器码程序的转换。首先把用户编写的梯形图程序编译成中间代码形式的PLM文件,然后将PLM文件转变为汇编程序,最后用汇编器汇编转变成功的汇编程序CONTROL ENGINEERING China版权所有,产生机器码从而生成可执行的PLE文件。
2)执行机器码文件。将PLE文件嵌入配置好的执行环境中并执行,通过工控机的面版指示灯监测程序的正确性。
(3)虚拟机总体设计
根据虚拟机的原理和执行机制,对虚拟机的机器码执行方案进行了总体设计,如图3所示。PLC文件是梯形图程序的保存文件,通过对PLC文件进行词法分析、语法分析和语义分析编译产生PLM文件,然后调用宏汇编库,并进行一系列的转换生成机器码,产生PLE文件;最后创建机器运行环境来执行机器码,宏汇编库中是每个梯形图指令对应的宏汇编段。
图3 虚拟运行总体设计框图
(4)交叉开发调试算法研究
非嵌入式通常采用本机开发、本机调试、本机运行的开发方式;而嵌入式开发需要交叉开发,绝大多数采用宿主机开发、宿主机和目标机之间交叉调试、目标机运行的方式开发。
交叉开发调试算法:
在宿主机平台上编写程序代码;
固化监控器至目标机上;
连接宿主机和目标机;
编译链接应用程序,生成可执行代码;
将可执行代码下载到目标机;
使用交叉调试器进行调试;
如果程序调试没有发现异常,转至11);
调试程序时发生错误,利用交叉调试器定位错误;
修改错误代码;
重复4)-10);
将目标机程序固化在目标机上。
4 嵌入式软PLC改造后的控制系统
以测试继电器TV5实验为例。其要求如下:每次测试5个继电器,每个继电器的动作频率是5s开,5s关。根据要求,试验最好的结果是每个继电器用6个TV负载,即每个TV负载是5s开,55s管。输入点有:开关,检出,复位M个,停止次数设定量N次,动作频率设定L个,常开/触点转换。其中,M=测试产品个数,N、L个数由实际需要确定。其算法如下:
设定一个循环周期,使累积误差最小;
在循环周期内设计动作时间和动作频率,以及动作次数;
设计相关联动、互锁、紧急停车和复位等功能;
执行动作与反馈根据产品相关标准进行比较,判定结果和设定中断程序。
采用模块化程序设计编程,各模块均由主程序调用,且为了程序不出误动作,还要考虑电流谐波和冲击对高电源的要求。用了算法优化设计,5个继电器每隔2s一个动作,5个刚好10s。其中一个动作频率程序如下:
与之对应的动作如下:
该程序检出判断程序如下:
图4 TV负荷电压电流波形
由图4可知:启动时突入电流最大值约为55A,突入时间约为54ms,定常为8A。
图5 电机电压和电流波形
由图5可知:电流滞后电压约为0.9ms,其功率因素为0.96。
实验结果与测试要求基本一致。如果不采用优化算法程序设计,则对电源要求很高,所以该控制系统可以应用实现,无形中降低了成本。
5 改进后优点和维护
很明显,经过以上改进后有以下优势:
使用PLC后通用性大大提高,改进了以前单一PLC,并缩短了工作人员的培训周期;
用嵌入式软PLC代替传统的硬PLC,外部线路简化;
模块化可实现各种复杂的控制系统,方便地增加和改变控制功能;
PLC可进行故障自动检测和报警显示,提高运行安全性,且便于检修;
便于群控制,提高运行效率;
更改控制方案时无需改动外部线路。
测试及维护需注意的事项:
为了提高系统效率并降低开销,尽量少用I/O;
要有紧急停车和适当联锁按钮环节;
输入和输出不能用同一电缆线;
直流电感性负载并联浪涌二极管,以延长触点的使用寿命;交流感性负载并联电容吸收器以降低噪声。
为保证控制系统工作的可靠性,做好接地、防尘、访油、防辐射工作。
6 结语
此系统可用于继电器、马达、电感、充电器等产品的测试。改进后仍存在以下几点缺陷:其一,如果负载断路,其本身并不能检测和保护;如果负载短路,产品在短时间内产生过电流控制工程网版权所有,会造成产品破坏甚至威胁人身安全。其二,数据采集不全,不能实时监控。利用电流计可以弥补第一点的不足;采用数据采集卡可以实现实时数据采集。