蒋春朗,梁友国,李 末,考 辉
(大连益利亚科技发展有限公司,辽宁 大连 116021)
当前三维仿真技术已广泛应用于吊装领域,各种大型吊装项目都已经逐步开始使用三维仿真预演吊装方案,力求在实际操作中减少可能发生的吊装事故,但大多数的三维仿真预演都只是通过键入固定的吊装动作或者通过键盘鼠标模拟动作来实现整个吊装仿真过程,与实际操作存在极大的差异,并没有真正做到吊装预演的效果[1]。双主吊钩汽车起重机的双钩起吊方式更加复杂,让这种安全隐患更为明显。为此,本文将应用与驾驶室配置一致的起重机操作台,来实现与双主吊钩汽车起重机实际吊装相接近的三维仿真,通过软硬件高度结合的方式来实现逼真的吊装预演,为双主吊钩汽车起重机吊装仿真提供切实可靠的方案数据,实现正式吊装时的省时省力、平安作业。
双主吊钩汽车起重机仿真模拟系统的工作主机采用工控机+PMAC(Programmable Multi-Axis Controller)运动控制卡的形式,起重机的转台回转、臂架变幅、两侧吊钩升降等动作皆是通过PMAC运动控制卡控制[2];司机室座椅与运动控制卡相连,随着起重机模拟运动而运动;视景通过主机投影到屏幕上,产生逼真的模拟效果;同时立体音响模拟起重机和环境音效,实时配合系统中模型的动作,形成一个高沉浸感的模拟系统。双主吊钩汽车起重机仿真模拟系统硬件架构如图1所示。
图1 双主吊钩汽车起重机仿真模拟系统硬件架构
想要实现逼真的吊装体验,三维建模便是三维仿真的重中之重,但不是指单单通过构建与实际场地一致的起重机模型及其周围环境即可,还需要一套完整的视景仿真技术为用户提供模拟过程中所能看到的逼真景象。结合自身团队技术与外界主流偏向,本文采用了Unity和3dmax来实现用户与仿真对象的自然交互[3],以确保仿真结果。这里最主要的体现方式是视觉上的效果,通过三维显示设备作为输出设备,把虚拟场景的模型变换重绘在操作者的眼前,给操作者一种所见即所得的效果。汽车起重机三维建模架构如图2所示。
图2 汽车起重机三维建模架构
仿真系统的关键是在仿真流程中实现三维吊装过程可视化工作,三维吊装可视化主要负责显示仿真中三维场景的一切物体并进行碰撞检测[4],具体是在作业环境模型、吊索具模型、被吊物模型、起重机模型的基础上,根据动作计算模块求得的系统位姿更新模型进行碰撞检测,最终渲染吊装仿真场景。仿真系统工作流程如图3所示。
图3 仿真系统工作流程
三维吊装可视化实质上是将当前的吊装状态实时显示出来,因此只要能准确求出起重机当前的吊装状态,即可采用合适的场景组织方法组织管理三维模型,最终利用渲染引擎将其显示出来。因此,吊装状态的求解即是吊装仿真的关键,而吊装状态的求解有多种方法,并且吊装状态求解与可视化没有必然的联系,为此,在吊装仿真设计时,本文将动作计算独立出来,形成吊装仿真动作计算模块。
吊装动作计算模块主要负责根据上一时刻的吊装状态及当前所选用的动作计算新的吊装状态,其数学模型可抽象为:
qt=f(qt-1,ut).
(1)
其中:qt-1、qt分别为由起重机和被吊物组成的系统上一时刻和当前时刻的吊装状态;ut为所应用的动作。
起升系统双钩吊装仿真计算模块主要负责根据上一时刻的吊装状态及当前时刻所应用的动作计算双钩和被吊物的位姿[5]。此模块提供了基于正向运动学和基于几何约束两种计算模式,其中基于正向运动学的计算方法可以通过操控双钩模拟任意的双钩吊装过程;基于几何约束的双钩仿真方法由于事先已把协同策略嵌入双钩系统的基本动作中,因而可以容易地模拟期望的双钩吊装过程。本文以吊钩起升为例论述双吊钩起升动作的实现方法。
以左侧吊绳顶端O点作为计算原点,设左侧吊绳的长度为L1,右侧吊绳的长度为L2,两侧吊点间距为d。吊钩起升简易示意图如图4所示。
图4 吊钩起升简易示意图
吊钩起升后,左侧吊点A′的坐标为(L1sinθ1,-L1cosθ1),右侧吊点B′的坐标为(d-L2sinθ2,-L2cosθ2)。根据物体受力分析可知,吊钩起升后,被吊物重心不会发生偏移,两侧吊绳的偏摆角度相同,即θ1=θ2=θ。故可通过AB点向量构建等式:
((L1+L2)sinθ-d)2+(L2-L1)2cos2θ=d2.
(1)
令a=4L1L2,b=-2d(L1+L2),c=(L2-L1)2,则由式(1)可构建出一个标准的一元二次方程:
asin2θ+bsinθ+c=0.
(2)
由此,得出两侧吊钩的偏摆角θ和A′、B′两点坐标后,便可计算出吊钩发生偏摆后的实际位姿。
综上所述,无论是哪一侧吊钩起升、下降或是两侧吊钩同步起升、下降,使用以上计算方法,只要获取到两侧吊绳的长度变化,便可通过计算得出两侧吊钩的实际位姿参数。
通过软硬件结合的方式进行吊装模拟,关键点在于数据的传输,通俗说,即是上位机发送指令、下位机再反过来通知上位机的过程。本文中的双主吊钩汽车起重机三维仿真所使用的方法便是通过一份专门为软硬件所需通信数据敲定好的通讯协议来进行传输,起重机与操作箱通讯协议如图5所示,起重机与遥控器通讯协议如图6所示。起重机操作箱将用户操作后的起重机姿态通过一组数据传递到PC主机,PC主机通过解析计算后更新至仿真系统的场景树中,通过图形渲染展示出来。同时,通过计算得到的起重机相关参数,也会同步返回至遥控器端,以保证指挥者能通过遥控器显示屏获取每一次操作的详细数据,以便更加精准地完成整个仿真模拟。
图5 起重机与操作箱通讯协议
图6 起重机与遥控器通讯协议
需要注意的是,考虑到传输数据的准确性,操作台操作时可能会引起数据中断[6],本文中的串口通信选择了异步传输的方式,并在此基础上为确保数据获取的完整性,又增加了用于识别信息完整性的通信地址,数据在操作台与PC主机间传输时通过以上条件甄别是否为仿真需要的正确数据,再交由计算模块对起重机动作进行计算渲染。
双主吊钩汽车起重机的双钩起吊方式在实际吊装项目中需要经过严密的计算,吊装过程中更需要随时停止作业进行数据修正,非常耗时耗力。本文使用与起重机操作台相结合的方式,用与实际吊装相接近的三维吊装预演将整个现场吊装过程展示出来,也为实际吊装提供了切实可靠的方案数据,实现了真正省时省力的平安作业。三维仿真场景下的双钩吊装过程如图7所示,现场作业时用于数据对比的仿真回放如图8所示。
图7 仿真预演时的单、双钩起吊过程
图8 现场作业时用于数据对比的仿真回放
本文基于三维吊装仿真的相关知识,研究开发了一种通过软硬件相结合的方法来实现三维仿真的沉浸式模拟,并已应用于实际项目的吊装仿真过程中,有效缩短了实际吊装的时间,显著提高了实际吊装的安全性,减少了相关人员大量重复的计算与试吊,在降低吊装成本的同时提高了吊装作业的速度。