李启丙
(四川建筑职业技术学院,四川德阳 618000)
在PLC控制系统开发中,控制软件现场调试需要与实际的物理器件连接,调试时间长、成本高,一旦控制程序有差错,容易造成系统事故[1]。本文介绍一种利用组态软件(MCGS)、OPC SERVER软件和三菱PLC编程软件GXWORK2,在无需PLC硬件和执行器硬件的情况下,完全由软件进行仿真,成本低、调试方便安全。
现在半实物仿真比较成熟,文献[1-4]都是用PLC控制器实物+组态软件实现半实物仿真;文献[5]是用FX-TRN-BEG-C三菱专用仿真软件实现全软件仿真,但此软件用于三菱PLC实现仿真,无法应用于其他的PLC进行仿真,因此局限性大;文献[6]中对OPC技术进行了详细阐述。
本文利用OPC SERVER技术实现PLC编程软件与MCGS组态软件进行电气控制系统全软件仿真,可以实现不同PLC、不同通信接口与不同组态软件的连接仿真。通过对3层电梯电气控制改造成PLC控制,并利用GX WORK2、MX OPC SERVER和MCGS 3个软件进行全软件仿真,验证了全软件仿真的正确性。
OPC(OLE for Process Control)是为了解决过程自动化发展中,不同硬件设备和软件产品之间实现互联操作[2]。
OPC的客户-服务结构如图1所示。任何OPC客户端应用程序都可以连接到任何OPC服务器,即OPC在人机界面和工业自动化领域提供了真正的即插即用功能。OPC服务器类型包括OPC数据访问(DA)、OPC报警和事件(AE)以及OPC历史数据访问(HDA)。
图1 基于OPC的客户-服务结构
PLC编程软件GX WORK2通过MX OPC SERVER软件与组态软件进行数据交换。
MX OPC配置器是MX OPC服务软件运行时的一个客户端,通过其访问I/O服务器,查看和修改设备与数据标记的属性。配置器中的地址空间树控件设置服务器对象以下层次结构的属性和连接参数。
配置过程如下。
(1)启动MX OPC配置程序—左侧的树形控制视图—地址空间—右键新建设备出现MX转换器设置界面,点击Configure配置按钮,在PC side I/F下拉列框中选GX simlutor2(因为GX WORK2用的是GX simlutor2仿真器)。其他创建按默认即可。
(2)设备建好后点击设备右键,此后需要新建数据标签。输入标签名字、设置IO地址、读写权限和数据类型,这个标签是在组态软件中进行访问使用的名称。把所用到的输入继电器、输出继电器及辅助继电器的编号按照设计要求输入完成,并保证服务已经启动。
运行GX WORK2菜单调试中的模拟开始菜单,启动GX SIMLUTOR2仿真即可,保证OPC SERVER已经启动。接下来便可启动组态软件MCGS对电梯控制系统进行调试和仿真运行;根据电梯控制流程,在MCGS组态软件界面上操作相应控制按钮,实现对组态软件与PLC编程软件进行仿真运行。也可以在GX WORK软件中模拟开关动作来实现对组态软件中动画控制。
文献[7]在组态软件中实现了4层电梯模拟动画,本文使用3层电梯进行模拟,简化设计。本文利用MCGS 6.2组态软件设计仿真图形动画,构建3层电梯动画模型,包括电梯曳引电机、门厅召唤按钮与显示元件、电梯轿厢、轿厢内按钮与显示元件、启/停控制按钮等。用虚拟电梯模型代替实际真实电梯模型进行仿真运行。
建立仿真动画,首先需要建立“3层电梯控制系统”工程。在用户窗口,新建“3层电梯控制”窗口,点击“动态组画”按钮,就可以用组态软件MCGS提供的画图“工具箱”,根据需要构建图形画面,本系统仿真模型如图2所示。工作过程:锁梯开关完成电梯的启动与停止,当锁梯开关置于“ON”状态时,电梯启动,轿内指令板楼层显示器和各层门楼层显示器分另显示当前轿厢所在楼层位置。假设当前轿厢在此楼,当在轿内指令板中选择3层按钮,电机启动正转,轿厢上行,当到达3楼时停止并开门,延时一段时间(3 s)后关门,等待新的呼唤。
图2 3层电梯组态仿真动画
在设备窗口中点击OPC设备,在通用OPC属性面板中选择OPC服务器Mltsubishi.MXOPC.6。在通道连接中设置连接对像、通道名称、通道类型和读写类型。其中连接对像是在MCGS中用到的变量,通道名称是在OPC SERVER中设置的PLC的IO变量。确定后自动在MCGS中实时数据库中建立数据变量。
动画连接是建立数据库中变量与图形画面中图形元件的关系。当变量值改变时,图形对象以动画的效果表现出来;还可以用图形画面的动作控制数据库中的变量,通过图形对象改变数据变量的值;将静止的图形画面像实际物理模型一样仿真运行,实现图形界面与物理对象PLC间的双向控制和模拟运行[2]。
数据库和动画连接后,实现组态画面的仿真运行,还需要设置轿厢动画,并编写脚本程序。MCGS脚本程序就不在此阐述。
电梯控制要求如下。
(1)控制系统有一个锁梯开关,锁梯开关打开时,电梯运行。
(2)电梯轿厢到达任何楼层时,相应楼层指示灯亮起并闪烁,电梯门能自动打开,延时3 s后,电梯门自动关闭,楼层指示灯随之熄灭。
(3)用数码管显示电梯所在楼层的编号,电梯处在1、2层之间时,数码管显示“1”,到达2层时显示“2”;电梯处在2、3层之间时,数码管显示“2”,到达3层时显示“3”。
(4)电梯向上运行时设定牵引电机为正转,电梯向下运行时设定牵引电机为反转。
(5)电梯轿厢能根据各楼层的呼叫信号和轿厢内的数字按键自动选择运行方向,具体响应呼叫信号的方案如下。
①电梯暂停在某一楼层时,按下该楼层的上行或下行方向按钮后,电梯门自动打开。
②电梯若不是停留在呼叫者同一楼层时,要等电梯轿厢运行到后,电梯门才自动打开。
③电梯正在上行过程中,假如有更高楼层的呼叫,则先响应更高楼层的呼叫。
④电梯正在下行过程中,假如有更低楼层的呼叫,则先响应更低楼层的呼叫。
⑤电梯门自动关闭后,才能响应轿厢内的楼层数字按钮的信号,并根据数字按钮的信号选择让轿厢达到相应的楼层。
⑥电梯轿厢达到某一楼层后,若没有其他呼叫信号,则暂停在该楼层,只有按下“电梯复位”按钮后,轿厢才会自动运行到第一层。
组态软件对控制系统的控制和仿真,需要根据控制在PLC上编写相应的应用程序[8]。其控制程序流程如图3所示。
图3 组态软件中电梯控制程序流程
组态MCGS 6.2软件与GXWORKS2通过OPC SERV⁃ER软件实现PLC控制系统全软件仿真,即脱离PLC实物控制器,也脱离实际物理控制对象,从而克服PLC控制程序投入实际运行前,连接物理器件再调试时,成本高、调试周期长的缺陷。本文提出的全软件仿真方法,应用在实验室和控制系统开发调试过程中,无需投入较大的资金进行物理对象实现,就可通过界面仿真的形式实现对PLC的控制系统设计。