0、引言 PLC具有结构简单、通用性好、编程方便、柔性好、可靠性高等优点,已成为工业控制的标准设备,应用于工业自动控制中Ⅲ。然而,PLC控制系统的开发设计、验证和调试,还需要仰仗实物模型进行模拟试验,这种方法效率低、成本高、不安全。同时,PLC控制系统还需要许多的输入、输出点来支持,这也是一般实物模型或模拟软件所不能达到的。如果要想达到仿真的目的,可以利用在工业控制中经常使用的人机界面,它的特点是可以随心所欲地设计各种用来模拟静止的、运动的输入、输出设备;可以画出所想要的场景;并且它还提供寄存器、可编子程序集、定时器、计数器等供用户使用。所以,开发人员借助于人机界面能方便、快捷地为PLC控制系统建立一个仿真模型,以验证、调试所开发的程序。
1、PLC的仿真实现 PLC是PLC控制系统的核心,所以实现PLC仿真是实现整个系统仿真的关键。而实现PLC仿真的实质,是使某种设备能模仿PLC控制系统中除PLC以外的所有输入、输出设备,而且这些设备能根据用户程序(如梯形图程序)运行起来。 为了实现以上要求,选用了人机界面作为模拟设备。它有丰富的输入、输出指示器,经设计可以用来模拟现场的各种设备,并即时
显示设备的运行状态;它模拟的主令控制器件可以直接在触摸屏上操作;它还具有庞大的内部寄存器和功能强大的巨集指令应用方式,使人机界面得以经由内部巨集指令功能执行数值运算、逻辑判断、流程控制、数值传送、数值转换、计时器、计数器等,还可以模拟更智能化的
控制设备的需求;另外,它的运行方式与PLC相类似,采用循环扫描方式;更为重要的是,PLC和人机界面之间的寄存器数据可以直接读取,如图1的变量栏。这样就很好地解决了用户程序的输入和识别问题,也就实现了对PLC的仿真。
2、对外部设备的仿真实现 外部设备可以分成三类:一类是主令器,如按钮、开关等;一类是执行件,如各种指示灯、气缸、电动机、电磁铁等;还有一类是传感器,如各种行程开关、接近开关等。 2.1 主令器的仿真实现 主令器形式多样,如交替型、保持型、复位型、数值输入型按钮等。人机界面实现起来较为方便,只需用人机界面的编辑软件画出按钮,如图2,然后在按钮属性中确认是何种类型按钮即可,如图1的功能栏。在仿真时,只要直接对其屏幕按压,来操作按钮。
图1 元件属性图 图2按钮图2.2 执行件的仿真实现 执行件在真实系统中也是多种多样的,为了便于仿真,把它们分成开合件和往复件两类。开合件是指行程短、速度快、非此即彼的执行件,如指示灯的亮与不亮,电动机运转与不运转;而把相对行程长、速度慢、在行程~9 n——I停留的执行件归并为往复件,如气缸、丝杠等。下面以开合件指示灯为例,说明实现执行件仿真的方法。在仿真界面上,画一个如图3的指示灯,在如图4的指示灯属性中将变量的读取改写为PLC地址,直接受PLC的控制。 2.3 传感器的仿真实现 和执行件相对应,传感器也分成开合传感器和往复传感器两类。开合传感器用来判断开合件的开合状态;往复传感器用来检测往复件是否处在某一位置。这里,以一开合传感器为例,说明传感器仿真的方法。
图3 指示灯图 图4 指示灯属性框图 如图5所示是一个由步进电动机驱动的滚珠丝杠传动控制系统,丝杠两端是光电式位置行程开关,要求运动平台既可手动控制也可自动控制。在自动控制方式下,启动后运行平台先向甲地运行,到达甲地后自动返回乙地,如此循环。在手动控制方式下,可在甲地或乙地启动到达目的地停车,必须手动再次启动,方可继续运行,并可实现紧急停车控制脚。 模拟X6、X7光电开关可以用人机界面编辑软件,编制一个子程序如图6,能根据执行件的代码在执行状态变量中读取被测执行件的状态(数据)。当到达预定位置(预定数值),输出结果给PLC的输入端子和传感器的指示灯。
图5 一维位置控制示意图 图6 子程序
3、外部设备之间关系的处理 对于PLC控制系统中的某设备来说,它的运动不仅仅取决于PLC的指令,还取决于它和其它设备之间的关系。比如说,PLC中指令驱动一气缸,由气缸推动对象A,再由A推动对象B。那么,要使对象B运动,不仅要求直接受PLC控制的气缸有相对运动,而且还要求对象A要在适当位置。这就是所谓的外部逻辑关系。这些关系可能是由外围电气、气动液压回路、机械结构所构成,有时比较复杂。但人机界面编辑软件内部具有丰富巨集指令,可以模拟各种外部逻辑关系,用户还可根据自己的要求编制若干个子程序来反映它们复杂的逻辑关系,这样能比较准确的替代外部设备之间的逻辑关系,以达到模拟效果。
4、仿真系统的总体框架 图7是整个仿真系统的总体框架,其工作过程是:
图7 仿真系统的总体框图 (1) 由传感器运算模块来读取执行件状态变量,经处理后把检测结果存入代表虚拟PLC输入端子的PLC状态变量; (2)用户的梯形图程序根据PLC状态变量和主令器控件的状态进行处理,并把最终结果输给执行件运算模块; (3)执行件运算模块根据输入指令来驱动执行件动作,并根据执行件的状态刷新执行件状态变量; (4)有些执行件要根据其它执行件的状态,经外部逻辑关系处理后,再由执行件运算模块来驱动执行件。对于执行件和传感器运算模块都有手动输入的功能,这是为人为设置故障准备的。 图8是根据仿真系统的总体框图编制的人机界面程序的流程图。仿真程序的总体结构采用了扫描的工作方式,这符合真实PLC的工作特点。
图8 框图程序的运行过程
5、应用实例 应用本文所介绍的PLC控制系统仿真平台,为一维位置控制建立了仿真模型如图5。使用了PLC的输入、输出点l4个,程序总长196句。为该系统在人机界面上建立的仿真模型编写了2个子程序。该系统虽不算太复杂,但各种环节都已俱全(如主令器、执行件和传感器等),能反映出仿真一般控制系统的基本规律。另外,利用人机界面的编辑软件还可以对仿真模型进行多次离线、在线模拟,能检验该系统设计的正确性和可靠性。