王 博,甘淋玲,沙 川
(重庆医科大学,重庆 400016)
目前的产品生产出现了多种制造模式,在全新的工厂生产模式下,设备在满足柔性制造的同时,还需要提高灵活的人机协同分工和组织调配以保证工作效率[1-2]。而为了模拟在不同分工下和组织下的人工协同工作效率,运用计算机仿真的方法,对相关数据进行模拟仿真,实现组织调配。在早期的人机协同模拟中,通常采用数学模型来进行实现,但实际工作中,往往会出现大量的动态要素,需要在协作中保证自治灵活,因此运用单纯的数学模型难以实现表达。而后相关学者选择使用计算机仿真技术来进行,利用仿真软件模拟在人机协同工作中,人机的运动模式和运动因素,以及协同工作模式。文献[3]提出提出一种面向遥操作手眼协调的虚拟仿真场景交互控制。通过遥操作将指令映射到遥操作系统中,当观察角度发生变化时,控制交互装置与遥操作对象在虚拟显示场景中的运动协调一致。文献[4]提出基于虚拟现实人机协作的焊接系统运动控制策略。远程协同焊接过程可以将空间六自由度控制器的输入信号转换为目标焊枪的位置和姿态变化、速度变化或加速度变化。并设置静态位置型、动态位置型、速度型和加速度型四种控制策略。文献[5]提出复杂零件人机协同装配系统,分别设计快速更换夹持器、柔性气囊夹持器和真空吸附夹持器,结合高精度调整技术和合理的检测技术,设计了复杂零件的高精度人机协同装配系统。
但在目前对人机协同的计算机仿真中,对人机工作中的运动场景模拟不足,确定的运动参数不够准确,影响仿真结果的准确性。为此提出基于MS-CNN算法的虚拟运动场景人机协同仿真。
(1)
而坐标系内向量方向通过方向角α,β,γ给出,并在向量上,和坐标轴之间形成角,并使方向角为正,得出的角度计算为
(2)
可以将式(2)中的cosα、cosβ、cosγ作为坐标系向量的方向余弦,其关系为cos2α+cos2β+cos2γ=1,而向量之间的夹角则可以通过计算向量的标量积来得出
V1·V2=|V1||V2|cosθ,0≤θ≤π
(3)
其中,θ代表着向量夹角,而两个向量之间的向量叉积则为
V1×V2=u|V1||V2|sinθ
(4)
在式(4)中,u代表和V1以及V2垂直的单位向量。u的方向通过右手定则来进行确定,在本文建立的虚拟运动场景模型中,运用向量来表达运动方向特征、运动力的大小等运动数据。在本文中,在模型中建立刚体动力学关系,来体现运动相关数据[11]。而当刚体的力不经过质心时,产生的力矩使刚体加速转动。同时刚体的惯量和质量均作为描述运动刚体关系的量值。而在运动中,刚体的转动需要的力矩和刚体的转动惯量有关。而转动惯量是对刚体转动惯性的度量,如下公式所示
(5)
在式(5)中,mi代表体内的各质点,ri代表转轴距离。对机械运动来说,当质量分离越大时,刚体中产生的惯量也就越大,连续分布的刚体可以通过上式来变为下公式
(6)
其中M,代表刚体的外力距之和,a代表转动的加速度。而在刚体的转动中,定轴转动为单一自由度,即M=Iza,通过运动场景模型中的运动参数,来作为仿真中的对运动场景的描述。
本文在进行运动场景特征识别中,采用MS-CNN算法来进行学习和识别。MS-CNN算法可以通过卷积核将输入至图像中的特征信息进行学习,同时为了降低数据量,采取局部连接以及权值共享,并通过对非线性激活函数,获取到新的特征映射值[12]。并使用卷积核参数作为权重,同时假设输入的图像X的大小为m×n,权重W的大小为u×v,利用上述参数可以得出
(7)
Z(l)=W(l)⊗X(l-1)+b(l)
(8)
同时通过在公式中应用非线性函数,并将其应用在卷积神经网中,利用式(6)进行非线性化操作,其卷积过程如图1所示。
图1 卷积示意图
为了得到更丰富的特征,采用多个卷积核进行卷积,生成卷积和个数相同的特征图组。并在算法的第l层第k组上进行特征映射,如下所示
(9)
在式(7)中,S代表在算法l-1层的特征映射个数,W(l,k,s)则代表第l-1层中的第s组特征下的卷积运算权值。b(l,k)代表在第l层中第k组的卷积操作所对应的偏置项。同时需要对获取的运动图像进行池化,通过运算操作,获取到采样的卷积和所对应位置下的最大值以及平均值。通过卷积特征图上的某一位置像素点值,在卷积中上一层内的三个连续帧位置,以及其局部感受得到像素值,并进行池化,获取到图像在算法第l层内的第k特征映射位置(x,y,Ξ),计算如下所示
(10)
在进行仿真前,需要确定人机协同下相关因素。人接协同影响因素如表1所示。
表1 人机协同影响因素
在进行仿真时,需要将上述因素进行一定的数据化或作为潜在因素进行预测。
在确定影响因素,并建立运动场景模型后,本文通过考虑各软件的优缺点后,选用Flexsim、Matlab和VC集成软件来进行仿真的开发。通过使用C++进行编程,并将主体作为描述类,并对其定义为函数结构,并将上述中设计的模型和因素等作为动态链接库DLL来进行封装,以供仿真进行的调用,调用过程如图2所示。
图2 仿真调用DLL智能主体过程
在仿真中,首先将仿真运行到调用主体上,并生成人机协同动作的作业任务,而后将程序暂停,在主体上加载DLL,然后在执行运动作业任务,并得出相关数据。而在仿真中,需要考虑到仿真随机性的实现,并且模拟在人机协同过程中产生的不确定时间,计算其中的机器维修度分布M(t)以及可靠度分布R(t),并使用偏度分度来进行检验,两种分布的计算如下
(11)
(12)
其中t代表潜在的不确定性系数。在确定信息后即可利用本文方法进行仿真。
为了验证设计的虚拟运动场景的人机协同仿真方法的使用性和可靠性。以某厂的人机协同工作车间的历史数据以及工作时的换线过程数据导入至本文方法中进行验证。并使用文献[3]、文献[4]、文献[5]中的仿真方法进行对比实验。
为了对相关数据进行计算并搭载仿真软件,在本文实验中,使用PC主机进行仿真。使用的PC主机硬件如下:Intel i5-10400,接口为intel LGA 1200,主频为2.9GHz。内存选择两个型号为BLS8G4D240FSC型号的内存条,单一内存条的容量为8GB,内存赫兹为3000MHz,传输类型为DDR4。显卡选用GTX 1050 Ti 4GV1型号的显卡,显存容量为4GB,显存位宽为128bit,类型为GDDR5。硬盘型号为HDWD120AZSTA,硬盘容量为2TB,接口类型为SATA,硬盘转速为7200转,缓存容量为64MB。主板型号为B360M MORTAR。PC机搭载 Windows 7操作系统,以及Flexsim、Matlab和VC软件,同时仿真程序采用C++机器语言进行编写。
选择了2个月的13个订单作为数据周期,以历史的数据为作为训练数据,从而获得到该人机协同车间中换线总时间并与历史实际数据对比的结果如表2所示。
表2 换线总时间仿真结果
根据历史实际记录和四种仿真方法仿真结果对比,所提方法的结果更接近历史实际数据,说明所提方法的换线总时间与真实值相仿,虚拟运动场景人机协同的效率较高。
在对上述中数据进行订单准时率仿真,获得的仿真结果如历史实际结果的对比如表3。
表3 订单准时率仿真结果
在表3数据中,所提方法的仿真数据仍然更接近实际数据,说明应用所提方法进行虚拟运动场景人机协同仿真,得到的订单准时率较高,人机协同仿真的准确度较好。
换线技能指数代表人机协作的换线过程中的工作评价指标,该指数越接近1,代表人机协同效果越好。而对其指数的仿真结果如表4。
表4 换线技能指数仿真结果
观察表4中的仿真结果可知,不同方法之间差异值不大,这是由于换线技能指数数据不受运动场景的影响。但四种仿真结果对实际的换线技能指数仿真结果误差均较小,证明对换线技能指数的仿真结果的可靠性。同时结合表2和表3结果,可以证明本文设计的虚拟运动场景人机协同仿真方法的准确率和效率更好,具有一定的可行性。
本文通过运用选用Flexsim、Matlab和VC集成软件来进行仿真的开发,同时在其中建立了虚拟运动场景模型,提高了人机协同仿真的准确性。但在本文设计的人机协同仿真中。在当前技术下,仅能实现单机下的多人仿真,容易出现时差性限制,以此在未来研究中,将会考虑通过其它技术来实现多人多机仿真,降低时差性限制带来的误差。