资源描述:
第 l 1 卷第 1 期 2 0 1 3年 2月 中国工程机械学报 C HI N E S E J O U R NA L O F C O N S T R UC T I O N MA C H 1 N E R Y Vo 1 . 1 1 No . 1 F e b.2 01 3 基 于虚拟现 实技术 的沉浸式 P LC控制 程序 的半实物仿真 系统 李 强 ,宓 超 , 王晨星 , 沈 阳 1 . 天津港 集团 有限公司 , 天津3 0 0 4 6 1 ;2 . 上海海事大学 , 上海2 0 1 3 0 6 摘要 为了满足可编程逻辑控制器 P r o g r a mma b l e L o g i c C o n t r o l l e r , P L C 在不同应用环境下安全可靠地调试程 序的需求, 设计了一个基于虚拟现实技术的半实物仿真系统平台. 利用该系统, 可以快速、 方便、 安全地验证 P L C 控制程序的正确性 , 并且直观、 真实地展现出执行效果. 最后, 通过多个基于这个半实物仿真系统平台的控制实 验 , 验证了此系统的可行性及可靠性. 关键词 半实物仿真; 虚拟现实;可编程逻辑控制器 中图分类 号T 1 9 文献标志码 A 文章编号 1 6 7 25 5 8 1 2 0 1 3 0 1 0 0 4 1 0 5 V i r t ual -- r e a l i t y - e na bl e d s e m i - phys i c al s i m ul at i on s ys t e m f or i m m e r s i v e PLC c o nt r o l pr ogr a m m i ng L I Q i a n g ,MI C h a o ,W ANG C h e n x i n g ,S H E N Y a n g 1 . T i a n j i n P o r t Gr o u p C o mp a n y L i mi t e d , Ti a n j i n 3 0 0 4 6 1 , C h i n a ;2 . S h a n g h a i Ma r i t i me Un i v e r s i t y , S h a n g h a i 2 0 1 3 0 6 , C h i n a Ab s t r a c t .To me e t t h e s a f e a n d r e l i a b l e p r o g r a m d e b u g g i n g r e q u i r e me n t s o n P L C c o n t r o l l e r s u n d e r d i f f e r e n t a p p l i c a t i o n e n v i r o n me n t s ,a v i r t u a l r e a l i t y e n a b l e d s e mi - p h y s i c a l s i mu l a t i o n s y s t e m i s f i r s t d e s i g n e d . I n t h i s wa y , t h e c o r r e c t n e s s o f P L C c o n t r o l p r o g r a ms c a n b e t h e n v e r i f i e d q u i c k l y, c o n v e n i e n t l y a n d s a f e l y f o r i n t u i t i v e a n d a u t h e n t i c e x e c u t i v e e f f e c t d i s p l a y i n g .F i n a l l y, t h i s a p p r o a c h v a l i d a t e s t h e s y s t e m f e a s i b i l i t y a n d r e l i a b i l i t y . Ke y wo r d s s e mi p h y s i c a l s i mu l a t i o n;v i r t u a l r e a l i t y;p r o g r a mma b l e l o g i c c o n t r o l l e r 在 P L C控制系统 的设计与应用过程 中, 程序的 调试是必不可少的环节. 若直接将程序应用于控制 系统中进行调试 , 必然会给被控设备带来一定的风 险 , 而且这样 的调试需要硬件配合来进行 , 一旦硬 件条件不满足或不在现场 , 调试将无法进行_ 1 ] . 通常 P L C都有 自己的仿真调试软件 , 例如西门 子的 P L C S I M, 可 以进行离线仿真与调试 ; 但是这种 软件只能简单地验证 P L C的输入与输 出之间的逻 辑关系 , 无法真实而又直观地得知被控对象的执行 情况, 如执行机构是否产生干涉等. 虽然 国内也 出 现了 P L C控制程序的半实物仿真系统, 例如轮机模 拟器 , 但是 这种模拟器 只有信号仿真没有 执行机 构, 调试者不能直观地知道机器 的执行情况. 另外 , 也有一些基于虚拟现实技术的半实物仿 真系统 , 例 如导弹的半实物视景仿真系统, 但是这种系统是专 门针对一个对象的仿真, 并不是针对多个对象的通 用型的半实物仿真系统[ 2 ] . 因此 , 有必要开发一个通用型 的半实物仿真系 统来有效地解决这些 问题 , 更好、 更安全地调试 电 气控制程序 , 在较低成本、 保证效率、 保 障安全的同 时, 更直观地呈现被控对象的执行效果 . 1 半实物仿真概述 半实物仿真 , 又称硬件在 回路仿真 , 是指在对 某些系统的研究中, 把数学模型与物理模型或实物 连接起来一起进行试验 , 即对系统的一部分建立数 学模型, 并编写程序在计算机运行, 实现数学仿真; 同时将所研究系统 的部分实物接入到仿真回路 , 然 后将它们连接成系统进行试验的过程 . 半实物仿真 作者简介 李强 1 9 8 2 一 , 男 , 工学博士 . E . m a i l l i q i a n g ma i l 1 2 6 . C O rn 学兔兔 w w w .x u e t u t u .c o m 4 2 中国工程机械学报 第 u 卷 现在已经逐步在工业 、 交通领域应用起来. 半实物仿真具有物理仿 真和数学仿真 的共 同 优点 , 但也有不足 , 由于保证实时性是半实物仿真 的必要前提 , 因而增加了仿真模型建立和仿真试验 时间控制上的难度 , 而且半实物仿真花费的成本较 数学仿真有所增加. 与物理仿真和数学仿真相 比, 半实物仿真主要有以下特点 1 只能是实时仿真, 即仿真模型的时间标尺 和 自然时问标尺相同, 二者同步运行 . 2 需要解决控制 器与仿真计算机之 间的接 口问题. 例如在进行某 P L C控制程序的半实物仿真 时 , 在仿真计算机上显示的三维虚拟视景里的被控 对象 的运动受到 P L C信号 的控制, 因而必须有信号 接 口或转换传输装置 , 这种转换和传输 由硬件系统 完成 . 3 半实物仿真的试验结果 比纯数学仿 真更 接近实际情况 . 在实际的控制过程中, 半实物仿真通常有两种 情况 一种是用计算机作为控制器 , 而将受控对象 作为实物直接放置在仿真 回路 中构造半实物仿真 系统; 另一种控制器用实物 , 而受控对象使用数学 模型E . 在本文的系统中, 采用第二种控制过程 , 用 P C 机作为仿真计算机 , P L C作控制器来实现系统的半 实物仿真. 2 沉浸 式 P LC控 制程序 的半实物仿 真 系统 虚拟现实 V i r t u a l R e a l i t y , Ⅵ 是近年来 出现的 高新技术 , 也称灵境技术或人工环境. 虚拟现实是利 用电脑模拟产生一个三维空间的虚拟世界, 提供使 用者关于视觉、 听觉、 触觉等感官的模拟 , 让使用者 如同身临其境一般, 可以及时、 没有限制地观察三度 空间内的事物l 4 ] . 目前虚拟现实技术主要应用于城 市规划、 医学 、 军事、 航天以及工业等领域中. 虚拟现实的关键技术包括以下几个方面 1 动态环境建模技术. 虚拟环境的建立是虚 拟现实技术的核心 内容 , 动态环境建模技术的 目的 是获取实际环境的三维数据 , 并根据应用 的需要 , 利用获取的三维数据建立相应的虚拟环境模 型. 三 维数据 的获取对有 规则 的环境可 以采用 C A J 技 术 , 而更多的情况则需采用非接触式 的视觉建模技 术 , 二者 的有机结合 可以有效地提高数据获取 的 效率 . 2 实时三维图形生成技术. 现今三维 图形的 生成技术 已较为成熟 , 而关键点是如何做到“ 实时 生成” . 为了达到实时的 目的, 至少要保证图形的刷 新频率不低于 1 5 f p s , 最好高于 3 0 f p s . 在不降低图 形的质量和复杂程度的前提下 , 如何提高刷新频率 将是该技术的研究内容. 3 立体显示和传感器技术. 虚拟现实 的实现 依赖于立体显示和传感器技术的发展. 现有 的虚拟 现实设备还不能满足系统的需要, 例如头盔式三维 立体显示器有过重 、 分辨率低、 刷新频率慢 、 跟踪精 度低、 视场不够宽、 眼睛容易疲 劳等缺点 . 同样 , 数 据手套 、 数据衣等都有延迟大 、 分辨率低、 使用不便 等缺点 . 因此有必要开发新 的三维显示技术. 4 应用系统开发工具. 虚拟现实技术应用 的 关键是寻找合适的场合和对象, 即如何发挥想象力 和创造性. 选择适当的应用对象可 以大幅度地提高 效率 , 减轻劳动强度, 提高产品质量. 为了达到这一 目的, 必须研究虚拟现实 的开发工具 . 5 系统集成技术. 由于虚拟现实系统中包含 大量的感知信息和模型, 因此 , 系统的集成技术起 着至关重要 的作用. 集成技术包括信息 的同步 、 模 型的标定 、 数据转换、 数据管理模型 、 识别与合成等 等技术. 本半实物仿真系统结合虚拟现实技术 , 建立了 一 个直观而又真实的沉浸式 P L C控制程序的仿真 平台. 该系统主要由三部分组成 可编程控制器、 高 速的信号仿真器和三维视景仿真平 台. 该系统 的总 体结构见图 1 所示. 图 1系统 总体结构 Fi g. 1 Ov e r a l l s t r u c t ur e o f t h e s y s t e m 其中 P L C的输出模块可以产生真实的控制信 号, 同时其输入模块接收 P C机仿真平台传来 的虚 拟信号 ; 高速的信号仿真器 的输入和输出模块进行 信号的采集和传输 , 实现 P L C与 P C机之 间的数据 学兔兔 w w w .x u e t u t u .c o m 第 1 期 李强 , 等 基于虚拟现实技术的沉浸式 P L C控制程序的半实物仿真系统 的实时传输; 在计算机里呈现出被控对象 的视景 , 而视景里的对象模型根据接收到的控制信号 , 来模 拟实际运行的效果 . 该半实物仿真系统 的硬件部分 如图 2所示. 图 2 半实物仿真系统硬件部分 信号采集及发生 Fi g. 2 Ha r d wa r e o f s e mi p h y s i c a l s i mu l a t i o n s y s t e m e l e c t r i c a l s i g n a l - r e c e i v e r s g e n e r a t o r s 3 沉浸式 PLC控 制程序 的半 实物仿 真系统设计 半实物仿真系统开发主要运用虚拟现实技术 , 将建立好 的三维模 型, 载人到三维虚拟场景 中, 并 且快速地生成模型的三维场景. 人们可 以通过 鼠标 键盘操作对三维虚拟场景进行各个角度的浏览 , 三 维场景里的对象模型根据传递来 的信号进行动作 的变化 . 根据被控对象 的执行情况可以直观、 准确 和快速地验证 P L C程序的正确性 . 该 P L C控制半实物仿真系统 的软件系统 主要 由P L C控制器软件程序、 高速的信号仿真器软件程 序和 P C机里的三维虚拟视景平台组成 . 在开发该半实物仿真系统软件 的过程中, 应该 解决以下 2个关键问题 ①信号的采集和传输; ② 三维虚拟视景的快速生成和显示 . 3 . 1 信号的采集和传输子系统设计 P C机里的视景仿真平台只有接收到硬件系统 传递过来 的控制信号 , 才能通过分析信号来做出相 应的动作. 因此 , 实时精确地采集 P L C的数字量输 出信号 , 同时将上位机的虚拟信号实时精确地传输 到 P L C的数字量输人端成为整个硬件系统最 重要 的任务. 具体信号的采集和传输系统流程 图如 图 3 所示 . 通过单片机的输入模块来采集 P L C里的输 出 模块信号, 然后通过串口传输到视景平台中. 同样 通过单片机来接收视景平台发出的传感器信号, 接 着从单片机的输出模块传输到 P L C的输入模块 中, 得以控制 P L C的输入. 匿橱 厂 _ ] 匦 瓣 匾 图 3 信号采集和传输流程图 Fi g。 3 Fl o w d i a g r a m o f s i gn a l a c q ui s i t i o n a n d t r a n s m i s s i o n 3 . 2 半实物仿真软件子系统架构设计 在三维虚拟视景平台中, 完成对控制信号 的采 集和传输后 , 需要执行三维场景和被控制对象 的三 维模型的生成和渲染 , 使这些视景具有沉浸感和真 实感 , 从而代替真实 的设备和场景 . 同时执行被控 对象模型的动作显示 , 使被控制对象能根据采集到 的虚拟信号做出相应的执行动作 . 系统多线程编程 的实现流程图如图 4所示. 对信号仿真器里 储 的信号 的采集 厂 主线程 函数入 口 三维场 景和被 控制对象模型 的生成和渲染 开始线程 1 函数 线程1 函数入 口 开始线程2 函数 。 一 被控对象模型的 执行动作显示 图 4多线程编程的实现流程图 Fi g . 4 Fl o w d i a gra m o f mu l t i - t hr e a d e d p r o gr a mmi n g 主线程 、 线程 1和线程 2分别是程序 中一个单 一 的顺序控制流程, 其 中主线程主要完成 的是三维 场景和被控制对象模型 的生成和渲染 , 使用 T V 3 D 引擎来实现虚拟现实 , 使得代码 的编写工作得到 了 大大的简化 . 很多底层的功能如 边缘检测、 视角切 换 、 物体的碰撞等, 都 由 T V 3 D引擎 自动实现. 只需 考虑如何使用调用 T V 3 D所提供的函数 , 在虚拟场 景 中实现相应功能即可, 这样极大地提高 了开发的 效率. 主线程 的程序流程图里的各个执行语句都可 以通过调用 T V 3 D所提供的函数来实现. 线程 1完成 的是被控对象模型 的执行动作显 示. 每个采集到的信号会对应着一个被控对象的执 行动作, 根据对应信号的变化, 被控对象的执行动 作也会产生变化. 线程 1的被控对象模型的执行动 学兔兔 w w w .x u e t u t u .c o m 中国工程机械学报 第 u 卷 1 2 3 Yl 变换 . 其中重要的是设置好场景中摄像机 的位置和 视角 , 当有键 盘输入和 鼠标移动的时候 , 摄像机会 随之有相应程度的位置和视角的变化. 当整个三维场景和三维模型加载完毕后 , 再根 据连续储存 的信号 的变换来不断更换被控对象的 动作 , 这样就可以实现三维模型的动态显示了. 4 沉浸式 PL C控制程序 的半实物仿 真 系统实验测试 为 了验证该半实物仿真系统 的可行性及可靠 性 , 以交通信号灯和双电梯 的控制程序为例, 采用 虚拟现实技术设计出了半实物仿真系统平 台, 并且 记录下了具体实验参数以及最后效果图. 交通信号灯的 P L C控制半实物仿真系统与双电 梯的 P L C控制半实物仿真系统都 由 P L C 、 高速的信 号仿真器和交通信号灯视景仿真平 台 3部分组成. 由于双电梯的 P L C程序更为复杂 , 需要 的控制点比 较多, 1 块高速 的信号仿真器无法满足系统的要求 , 因此这里需要 2块高速 的信号仿真器并联起来 , 以 增加输入输出点数. 高速的信号仿真器与 P L C直接 进行电气连接 , 并 由电源给高速 的信号仿真器提供 所需的 5 V和2 4 V电压 , 给P L C提供 2 2 0 V电压. P C 上位机与高速的信号仿真器通过 R S一4 8 5串口通讯 进行数据交换 , 主要实现的功能是将真实的控制信 号转化成虚拟 的控制信号传输 到 P C机里, 同时将 P C机里的虚拟信号转化成真实的控制信号传输到 P I 里 . 搭建好半实物仿真系统平 台后 , 就开始运行整 个系统 . 为了判断整个半实物仿真系统的实时性 的 好坏 , 需要获取 系统运行 的帧速率值 f p s 值 , 即每 秒钟填充图像的帧数帧速率值愈多 , 所显示的动作 就会愈流畅. 通常 , 要避免动作不流畅的最低帧速 率值是 3 0 f p s . 而当刷新率太低时人们 肉眼都能感 觉到屏幕的闪烁 , 不连贯 , 对图像的显示效 果和视 觉感观都产生不好的影响. 因此只有当帧速率值满足一定 的要求时 , 三维 虚拟视景 中被控对象 的显示和动作才能跟上 P L C 里的信号的变化 , 否则就会产生延迟, 系统的实时 性就得不到保证 , 运行就处于紊乱状态 . 在交通灯和双电梯视景平 台的运行过程 中, 画 面上会显示帧速率值 , 每隔 5 S 记录一个帧速率值 , 共记录下 1 0组数据 , 根据这些 数据可计算 出平均 的帧速率值 , 如表 1所示 . 其 中交通信号灯的实验效果图如图 5所示. 学兔兔 w w w .x u e t u t u .c o m 第 1 期 李强, 等 基 于虚拟现实技术的沉浸式 P L C控 制程序 的半实物仿真系统 表 1 实验参数表 Ta b. 1 Pa r a me t e r s o f t h e e x p e r i m e n t 实验序列实验名称 输入输出点 平 均帧速率/ f p s 实验 1 交通信 号灯1输入 6 输 出点 实验 2 双电梯 2 0 输入2 2 输出点 1 4 5 6 2 图 5交通 信 号 灯 效 果 图 Fi g . 5 Ef f e c t o f t r a f f i c s i g n a l l a m p 双电梯的实验效果图如图 6所示. 由于 P L C程 序运行的扫描周期是 2 0 ms , 所 以三维视景至少要 每秒刷新 5 0次, 即帧速率达 到 5 0 f p s , 这样才能够 满足半实物仿真 的实 时性 , 不会产 生延时. 从 表 1 中可以 明显看 出两组 实验 的 帧速率 值均 大于 5 0 f p s , 因此在两组实验中三维视景的生成和显示都很 流畅, 而且系统运行速度快 , 信号响应程序流畅, 调 试者沉浸在图 4和图 5这样 的视景 中, 根据被控对 象的执行情况可以直观 、 准确和快速地验证 P L C程 序 的正确性 , 符合 P L C调试 的需求 . 5 结语 基于虚拟现实技术的半实物仿真 系统为 P L C 程序的调试和验证提供了一个安全、 直观、 经济 、 高 效的环境 . 与其他调试平 台相 比, 本系统具有 良好 的沉浸感 , 不仅可以验证 P L C的输人输 出情况 , 还 可以更加直观地呈现被控对象的执行效果, 并具有 较高的安全性和经济性. 由于机械部分 由计算机来 模拟 , 即使有不正 当的指令 , 也不会造成设备 的损 坏和事故 , 同时也节约了大量 的实验成本 , 缩短 了 研发周期 . 利用该系统可 以在没有设备 的情况下对 电气控 制程序进行 调试 , 并 且随时对程序 进行验 证和调整 , 极大地方便了教学 , 还可以用于培养电气 图 6 双电梯效果图 Fi g . 6 Ef f e c t o f d o u b l e e l e v a t o r s 调试工程师 . 未来可以考虑将 3 D投影技术应用到 此半实物仿真系统中, 更增加沉浸感 . 参考文献 [1 ] 袁云龙 . 基于组态软件的 P L C控制系统仿真实现E J ] . 自动化 仪表 , 2 0 0 6 , 2 7 5 5 7 6 1 . YUAN Yu nl o n g.Th e s i mu l a t i o n r e a l i z a t io n o f PI c o n t r o l s y s t e m b a s e d o n t h e c o n f i g u r a t i o n s o f t wa r e f J 3 . A u t o ma t i o n I n s t r u me n t , 2 0 06, 27 5 5 76 1. [ 2] 吴家铸 , 党岗 , 刘华峰 , 等. 视 景仿真技 术及 应用 [ M] . 西 安 西安 电子科技大学 出版社 , 2 0 0 1 . WU J i a z h u , D A NG Ga n g , L I U H u a f e n g , e t a 1 . V i s u a l s i mu l a t i o n t e c h n o l o g y a n d a p p l i c a t i o n s[ M] . Xi ’ a n Xi d i a n U n i v e r s i t y Pr e s s , 2 0 0 1. [ 3] 刘延斌 , 金光 . 半实 物仿 真技 术 的发展 现状 [ J ] . 仿 真技 术 , 2 0 0 3, 1 1 1 2 73 2. L I U Y a n b i n , J I N G u a n g .T he d e v e l o p me n t s t a t u s o f l o o p s i mu l a t i o n J ] . S i mu la t i o n T e c h n o l o g y , 2 0 0 3 , 1 1 1 2 73 2 . [ 4] B U R DE AG, C O I F F E T P . 虚拟现实技术[ M] . 北京 电子工业 出版社 , 2 0 0 5 . B UR DE A G, C O1 F F E T P . Vi r t u a l r e a l i t y t e c h n o l o g y[ M] . B e i j i ng P u b l i s h i n g H o u s e o f E l e c t r o n i c s I n d u s t r y , 2 0 0 5 . [ 5 ] 郭建. 基于 T r u e v i s i o n 3 D的虚拟现实技术[ J ] . 现代计算机, 2 0 0 8, 2 7 9 5 5 15 3 . G UO J ia n . Vi r t u a l r e a l i t y t e c h n o l o g y b a s e d o n t r u e v is i o n 3 D [ J ] . Mo d e r n C o mp u t e r , 2 0 0 8 , 2 7 9 5 5 15 3 . 学兔兔 w w w .x u e t u t u .c o m
展开阅读全文