基于仿真可编程序控制器的虚拟电梯系统

2023-01-04 12:50聂红红马殷元
上海电气技术 2022年3期
关键词:控制程序轿厢按钮

聂红红 马殷元

1.兰州交通大学 机电技术研究所 兰州 730070 2.兰州交通大学 机电工程学院 兰州 730070

1 开发背景

近年来,随着数字双胞胎技术的发展,虚拟仿真技术被广泛应用在工业、交通、工程等领域。虚拟仿真技术应用计算机技术、人工智能技术,结合相关学科技术,通过一个虚拟的仿真系统对一个真实的现实系统进行模拟。虚拟仿真系统在视觉、听觉、触觉等方面与现实系统高度相似,带给用户身临其境的体验,在高校实验室的建设中得到了广泛应用。

在高校中,学生要采用真实电梯样机设备进行试验操作,能获得较多的实践知识和经验,但电梯设备需要投入较多资金,占用空间大,维护复杂,且电梯样机设备使用强电,学生试验过程中存在安全隐患,因此采用虚拟仿真技术构建虚拟电梯系统,能够不受空间、人力的限制。通过虚拟电梯系统,学生可深入了解可编程序控制器对电梯的逻辑控制过程,增强学生的直观认识,激发学习兴趣。

笔者基于Visual Studio 2017平台,采用C#语言开发虚拟电梯系统,并与仿真可编程序控制器连接,实现仿真可编程序控制器对虚拟电梯的控制。

2 开发目的

面对高校实验室真实电梯样机投资大、维护复杂且存在安全隐患等问题,开发虚拟电梯系统,可减少资金投入,节约硬件成本,避免使用真实电梯样机中存在设备磨损以及维护困难大等问题。学生可通过虚拟电梯系统进行试验并验证可编程序控制器控制程序的正确性,虚拟电梯系统提供信号和执行结果反馈及显示,可增强学生的试验兴趣。

3 结构

真实电梯结构由轿厢、厅门、曳引机、安全装置以及信号操作系统等组成,为使虚拟电梯模型简化,在系统统建模时省略曳引机、安全装置等,着重考虑电梯的控制功能,如外呼请求、开关门按钮、内呼请求,以及异常、故障、超载的仿真显示等。虚拟电梯系统的结构如图1所示。

图1 虚拟电梯系统结构

4 功能

虚拟电梯系统接收来自控制系统的指令,并根据控制指令实现被控对象的运动。虚拟电梯能够响应内呼请求、外呼请求,具体功能包括电梯上行、下行控制,随时对内呼请求、外呼请求进行记录,电梯运行至某一层后,对内呼、外呼请求记录进行消除,轿厢上下行时,只响应顺向截梯信号,保留反向呼梯信号。

虚拟电梯运行速度可连续调节。在最高速度下,虚拟电梯1 s左右通过层,与真实电梯一致。

通过虚拟电梯系统能直观显示虚拟电梯的运动状态。

当控制程序正确时,虚拟电梯正常运动,当控制程序不正确时,虚拟电梯需提供不正常运动的状态显示。

虚拟电梯提供被控对象的异常、故障、超载的仿真显示,以便验证控制算法的故障安全性。

5 总体方案

目前,虚拟仿真技术根据控制器及信号接口的不同分为全虚拟仿真和半实物虚拟仿真运行,笔者采用仿真可编程序控制器,对信号接口虚拟化,构建全虚拟仿真的电梯系统。全虚拟仿真电梯系统结构如图2所示。

图2 全虚拟仿真电梯系统结构

虚拟电梯系统基于Visual Studio 2017开发平台,采用C#语言开发虚拟电梯系统,通过S7.Net动态链接库实现与仿真可编程序控制器进行交互通信。仿真可编程序控制器实际采用西门子S7-PLCSIM Advanced,可实现S7-1500可编程序控制器基础程序的运行仿真。S7-PLCSIM Advanced是西门子推出的一款高功能仿真器,除了提供内部访问接口PLCSIM功能外,还可通过外部网卡实现传输控制协议/网际协议网络的通信仿真,实现与虚拟电梯系统的信息交互。

虚拟电梯的控制程序采用西门子S7-1500可编程序控制器的编程环境TIA Portal v14开发,模块需要和程序一起下载至S7-PLCSIM Advanced仿真可编程序控制器中。

6 行为设计

虚拟电梯系统需根据输入输出信号对被控对象进行运动控制,因此首先需要对输入输出变量进行定义,再根据输入输出变量对被控对象的行为进行设计,包括轿厢和门的行为设计。

虚拟电梯部分输入、输出变量分配见表1。

通过建立相关输入、输出变量与轿厢控制的对应关系,使轿厢能够运动,达到模拟仿真的效果。当仿真可编程序控制器接收到虚拟电梯系统的输入呼梯命令后,运行可编程序控制器控制程序,虚拟电梯系统根据输出变量对轿厢的运行进行控制,实现轿厢的上、下运动。

当虚拟电梯接受收到输出变量up信号时,轿厢进行上行运动,轿厢上行时每50 ms进行一次读取,程序执行间隔为20 ms,即每秒钟进行20次读取。轿厢高度与楼层高度相等,为1 000 mm。轿厢上行的脚本程序设计如下:

if(up==true)

{

If(h.goal!=h.current)

{

h=h.current+h′;

h′=v*t;

t=(h.goal-h.current)*2s;

}

}

表1 虚拟电梯部分输入、输出变量分配

当虚拟电梯接受收到输出变量控制down信号时,轿厢进行下行运动。轿厢下行的脚本程序设计如下:

if(down==true)

{

If(h.goal!=h.current)

{

h=h.current-h′;

h′=v*t;

t=(h.current-h.goal)*2s;

}

}

当轿厢高度在目标楼层高度的±5 mm范围内时,表示轿厢成功到达目标楼层,则层停输出变量设置为true,否则为false。如果轿厢的高度小于990 mm或大于5 010 mm,那么轿厢越过极限,极限传感输出变量为true,正常为false。

当轿厢到达目标楼层或到达请求楼层后自动打开电梯门,固定时间或关门按钮触发后进行关门动作。当轿厢到达目标楼层时电梯门打开,脚本程序如下:

if(h.goal==h.current)

{

Door.left= Door.left+200;

Door.right= Door.right+200;

}

7 系统设计

7.1 系统详细设计

虚拟电梯系统采用S7-PLCSIM Advanced仿真可编程序控制器,实现对虚拟电梯的逻辑控制。虚拟电梯为仿真可编程序控制器提供输入信号、并根据仿真可编程序控制器的输出信号执行相应动作,以便验证电梯控制程序的正确性,虚拟电梯系统具体包括三个模块。

(1) 虚拟输入模块。虚拟输入器代替物理按钮和开关,为试验者提供按钮操作,并将操作结果作为输出变量输入至仿真可编程序控制器。

(2) 虚拟电梯模块。虚拟电梯按照电梯运行规模,接受仿真可编程序控制器输出的控制信号,通过算法软件计算电梯门和轿厢的运行状态信息,并进行相应的动画显示。

(3) 输出显示模块。输出显示内容包括厅外按钮灯、轿厢内按钮灯、当前楼层数、电梯运行方向、状态指示灯等。

虚拟电梯系统模块如图3所示。

7.2 界面设计

虚拟电梯系统的界面包括通信设置模块、电梯运行信号指示模块、厅外呼叫按钮模块、轿厢内按钮模块、虚拟电梯的运行模块。虚拟电梯系统界面设计如图4所示。

通讯设置模块通过可编程序控制器网际协议地址进行连接与断开可编程序控制器操作。电梯运行信号指示模块主要显示当前电梯所在楼层数、运行方向,以及指示信号的显示。厅外呼叫按钮模块与轿厢内按钮模块产生控制命令,并将控制命令传送给可编程序控制器。虚拟电梯的运行模块根据可编程序控制器输出信号进行动画显示,包括轿厢和门的动画显示。

图3 虚拟电梯系统模块

图4 虚拟电梯系统界面设计

7.3 通信设计

虚拟电梯系统采用S7.Net动态链接库实现与仿真可编程序控制器进行交互通信,包括可编程序控制器变量的读取与写入。

(1) 可编程序控制器变量的读取。在虚拟电梯系统中定义一个定时器,每隔20 ms读取一次可编程序控制器输出变量,包括电梯运行信号指示、厅外呼叫按钮指示灯、轿厢内按钮指示灯等变量,根据读取到的可编程序控制器输出变量信息进行相应的显示及控制操作。

(2) 可编程序控制器变量的写入。通过虚拟电梯系统中的操作按钮产生请求数据,并传输至可编程序控制器,可编程序控制器接收到数据后,执行相应的控制程序。

7.4 程序设计

整个系统的程序包括虚拟电梯程序、通信程序、可编程序控制器控制程序,分别采用C#和TIA Portal v14进行编写。

8 测试

虚拟电梯系统进行试验测试前,先进行通信设置,实现虚拟电梯系统与仿真可编程序控制器之间的数据交换,然后将可编程序控制器控制程序下载至仿真可编程序控制器,实现对虚拟电梯进行控制。虚拟电梯系统测试运行如图5所示,试验步骤如下:

(1) 打开S7-PLCSIM Advanced仿真可编程序控制器,并启动仿真可编程序控制器实例,实例的网际协议地址需与组态中的可编程序控制器网际协议地址一致;

(2) 通过TIA Portal v14将可编程序控制器程序下载至S7-PLCSIM Advanced仿真可编程序控制器;

(3) 启动虚拟电梯系统,并连接至仿真可编程序控制器;

(4) 点击虚拟电梯系统的开始试验按钮,开始试验并进行操作,观察虚拟电梯的运行情况。

试验实例运行情况为乘客在一楼进入电梯,并按下轿厢内四楼请求按钮,三楼有乘客按下向下的请求按钮。此时电梯开始上行,当电梯上行至四楼,熄灭轿厢内四楼请求按钮指示灯,并打开电梯门,自动延时3 s后关闭电梯门。此时电梯改变运行方法并下行至三楼,熄灭三楼向下请求按钮指示灯并打开电梯门,当关门按钮按下后或自动延时3 s后自动关闭电梯门。

9 总结

笔者所描述的基于仿真可编程序控制器的虚拟电梯系统,具有以下优点:建设成本低,无需购买任何硬件设备,在计算机中搭建试验环境;试验安全,大大提高了试验效率与教学质量;系统配置灵活,操作简单。试验测试表明该系统能够仿真真实电梯控制系统,方便可编程序控制器程序的测试,实现了预期目标。由于时间所限,笔者提出的基于仿真可编程序控制器的虚拟电梯系统未能实现故障注入及自动测试功能,这也是今后的主要工作。

图5 虚拟电梯系统测试运行

猜你喜欢
控制程序轿厢按钮
当你面前有个按钮
轿厢意外移动保护装置的分析与设计
死循环
未成年人刑事案件撤回起诉制度立法思考
锅炉检验质量的控制体系与程序
防止电梯轿厢意外移动的保护装置
重型车辆协同式自适应巡航控制系统的车际通信控制程序和信息交互
基于EVALPSN的循环式多轿厢电梯避撞设计与实现*
内心不能碰的按钮
科技之星·双轿厢电梯