一种面向工业堆垛机的数字孪生运动仿真系统及方法与流程

文档序号:29869265发布日期:2022-04-30 17:25阅读:237来源:国知局

1.本发明涉及数字孪生技术,具体是一种面向工业堆垛机的数字孪生运动仿真系统及方法。


背景技术:

2.堆垛机作为工厂自动化库房的重要组成部分,是工厂数字孪生中不可或缺的重要内容。通过在三维场景中仿真模拟堆垛机的运动状态,来实现对工厂自动化库房的工作状态直观展现。
3.堆垛机真实运动数据来源于对其plc数据读取,三维场景仿真模型主要包含堆垛机和其对应货架。目前,堆垛机运动仿真模拟主要遇到两个问题:一是现实中货架大小及位置并不是均等分布,并且三维场景很难对真实模型完全按照真实比例建模,造成堆垛机真实数据无法直接与三维场景中位置对应;二是受限于工厂硬件或网络状况影响,堆垛机运动数据读取频率可能很低,甚至只有1秒1帧数据,无法在三维场景中准确反应其运动过程。


技术实现要素:

4.本发明的目的是提供一种面向工业堆垛机实时运动的数字孪生仿真系统及方法,以解决堆垛机真实运动与三维场景的虚拟映射问题,实现在三维场景中对堆垛机移动、取货、放货等动作进行还原。
5.本发明采用的技术方案如下:一种面向工业堆垛机的数字孪生运动仿真系统,其特殊之处在于,包括:配置于现实场景中的堆垛机、货架和网络通信设备;以及构建于三维场景中的堆垛机模型、货架模型和三维引擎;所述网络通信设备用于读取并发送堆垛机plc上的运动数据,所述三维引擎用以实时获取堆垛机plc数据,同时控制模型进行位移运动。
6.所述堆垛机plc中,堆垛机的列位置、层位置、货叉位置分别为一定取值范围的数值,每一列、每一层或货叉的每一个停留点都有一个具体数值存储在堆垛机plc中,作为plc控制堆垛机的逻辑判断依据。
7.所述三维引擎采用unity3d引擎;所述模型的运动基于unity3d物体移动功能制作;为了减小模型制作难度,匹配三维场景尺寸,使仿真方法更具有适用性,本发明对货架和堆垛机的尺寸与位置不要求与真实设备1:1还原,尺寸大小根据场景环境任意调节,仅要求三维场景中的堆垛机与货架相对位置摆放与现实场景大体相当,货架列数、层数与真实设备保持一致。
8.一种面向工业堆垛机的数字孪生运动仿真方法,其特殊之处在于,包括:s1、针对现实场景中堆垛机plc上堆垛机的列(x)、层(y)、货叉(z)点位,找到三维场景中堆垛机模型对应点位的坐标数据并记录;一般来说,列点位为货位宽度中点位置;取放货的层点位为高于或低于货位底部
的位置,取货时堆垛机由低点位向上运动到高点位,放货时堆垛机由高点位向下运动到低点位;货叉点位为货叉左右深浅库位点位及停留堆垛机货箱中点的位置。
9.s2、通过网络通信模块,获取堆垛机plc上堆垛机的实时位置坐标数据plc(x,y,z),其中plc.x为列位置,plc.y为层位置,plc.z为货叉位置;plc程序控制堆垛机设备停留在预设点位时,由于工业设备自身原因,一般设置有误差值,在误差范围内即判断为在对应点位。根据实际设备数据,errorx为列误差,errory为层误差,errorz为货叉误差。
10.s3、将堆垛机实时位置坐标数据转化为对应三维场景的位置数据;具体过程为:分别获取预存储在堆垛机plc中且按从小到大排序的堆垛机点位位置数组plcsortedlist与三维场景堆垛机模型点位位置数组scenesortedlist,也就是说plc中堆垛机位置plcsortedlist[i]对应三维场景中堆垛机模型位置scenesortedlist[i]。
[0011]
通过网络通信,实时读取到堆垛机plc的当前点位置为plcvalue,当前plc点位判断误差值为error,三维场景点位位置为scenevalue,则:当时,;当时,时,;通过以上公式,将接收到的堆垛机实时位置数据转化为三维场景位置数据。
[0012]
s4、启动三维场景,将接收的第一帧数据直接作为场景中模型初始数据,之后,通过后一帧数据与前一帧数据对比,来判断堆垛机在一帧时间内的运动状态,并在场景中控制堆垛机模型运动;具体过程包括:首先比较堆垛机货叉接收到的位置值zreceivedvalue与当前位置值zcurrentvalue,其中error为场景抖动误差值;当时,判断货叉没有移动,堆垛机运动为水平列移动和垂直层移动;当时,判断货叉在当前帧内进行移动,堆垛机正在进行取货或者放货工作;此时,通过判断堆垛机是否进行水平或者垂直位移,来推导出堆垛机本体与货叉运动状态:堆垛机水平接收位置值为xreceivedvalue,当前水平位置值为xcurrentvalue,垂直接收位置为yreceivedvalue,当前垂直位置值为ycurrentvalue,货叉停在堆垛机货箱中位置值为zmiddle;当且
时,此时堆垛机仅货叉移动,在当前时间帧内将货叉位移至zreceivedvalue;当且时,此时堆垛机水平不运动,货叉先做回收至货箱点位置zmiddle运动,然后堆垛机进行垂直运动至位置yreceivedvalue;当且时,此时堆垛机水平不运动,货叉先伸展运动至对应的货架库位点zsortedlist[i],然后堆垛机进行垂直运动,最后货叉运动至接收位置zreceivedvalue;当且时,此时堆垛机货叉先做回收至货箱点位置zmiddle运动,然后堆垛机按照接收数据水平运动至xreceivedvalue,垂直运动至yreceivedvalue;当且时,此时堆垛机先按照接收数据水平运动至xreceivedvalue,垂直运动至yreceivedvalue,然后货叉做伸展运动至接收数据位置zreceivedvalue。
[0013]
本发明的一种面向工业堆垛机的数字孪生运动仿真系统及方法,与现有同类产品或方法比较具有的优点或能够达到的有益技术效果如下:1、场景模型不需要1:1还原,减小模型制作难度,方便快速搭建三维场景。
[0014]
2、通过此方法还原每一帧动作过程,使场景模型数据同步更加真实美观,堆垛机运动状态更加准确,方便后续碰撞检测、货物摆放等工作进行。
[0015]
3、通过降低数据更新率,降低对网络通信设备的硬件要求,更加适合现实工厂环境部署的数字孪生项目使用。
具体实施方式
[0016]
下面将通过实施例和应用例的方式对本发明的具体技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
[0017]
实施例一本实施例的一种面向工业堆垛机的数字孪生运动仿真方法,按照真实堆垛机货箱、货叉和运动范围内的货架,制作简易模型;获取堆垛机plc中逻辑控制模块预设好的列位置数据、层位置数据、货叉位置数据;在三维场景中获取与堆垛机列位置、层位置、货叉位置对应的点坐标,并记录。最后,通过网络通信模块实时获取plc中堆垛机当前列、层、货叉位置数据,将现实位置数据转换为三维场景位置数据,并判断堆垛机一帧时间内运动过程,使用unity3d仿真模拟出模型运动动画。
[0018]
具体过程包括以下几个步骤:s1、按照现实场景中的真实堆垛机货箱、货叉和运动范围内的货架,制作简易模型;s2、获取堆垛机plc中逻辑控制模块预设好的列位置数据、层位置数据、货叉位置数据;在三维场景中获取与堆垛机列位置、层位置、货叉位置对应的点坐标,并记录。
[0019]
s3、通过网络通信模块实时获取plc中堆垛机当前列、层、货叉位置数据,将现实位置数据转换为三维场景位置数据,并判断堆垛机一帧时间内运动过程,使用unity3d仿真模
拟出模型运动动画。
[0020]
其转换过程如下:分别获取预存储在堆垛机plc中并按从小到大排序的堆垛机点位位置数组plcsortedlist与三维场景堆垛机模型点位位置数组scenesortedlist,也就是说plc中堆垛机位置plcsortedlist[i]对应三维场景中堆垛机模型位置scenesortedlist[i]。
[0021]
通过网络通信,实时读取到堆垛机plc的当前点位置为plcvalue,当前plc点位判断误差值为error,三维场景点位位置为scenevalue,则:当 时,;当时,时,;通过以上公式,将接收到的堆垛机实时位置数据转化为三维场景位置数据。
[0022]
s4、启动三维场景,将接收的第一帧数据直接作为场景中模型初始数据,之后,通过后一帧数据与前一帧数据对比,来判断堆垛机在一帧时间内的运动状态,并在场景中控制堆垛机模型运动;具体过程包括:首先比较堆垛机货叉接收到的位置值zreceivedvalue与当前位置值zcurrentvalue,其中error为场景抖动误差值;当时,判断货叉没有移动,堆垛机运动为水平列移动和垂直层移动;当时,判断货叉在当前帧内进行移动,堆垛机正在进行取货或者放货工作;此时,通过判断堆垛机是否进行水平或者垂直位移,来推导出堆垛机本体与货叉运动状态:堆垛机水平接收位置值为xreceivedvalue,当前水平位置值为xcurrentvalue,垂直接收位置为yreceivedvalue,当前垂直位置值为ycurrentvalue,货叉停在堆垛机货箱中位置值为zmiddle;当且时,此时堆垛机仅货叉移动,在当前时间帧内将货叉位移至zreceivedvalue;当且时,此时堆垛机水平不运动,货叉先做回收至货箱点位置zmiddle运动,然后堆垛机进行垂直运动至位置yreceivedvalue;当且时,此时堆垛机水平不运动,货叉先伸展运动至对应的货架库位点zsortedlist[i],然后堆
垛机进行垂直运动,最后货叉运动至接收位置zreceivedvalue;当且时,此时堆垛机货叉先做回收至货箱点位置zmiddle运动,然后堆垛机按照接收数据水平运动至xreceivedvalue,垂直运动至yreceivedvalue;当且时,此时堆垛机先按照接收数据水平运动至xreceivedvalue,垂直运动至yreceivedvalue,然后货叉做伸展运动至接收数据位置zreceivedvalue。
[0023]
实施例二本实施例与实施例一所不同的是,在现实工厂环境下,堆垛机主要应用于自动化库房中。除了存放货物的货架外,在堆垛机轨道两端也会有取货台,用于连接输送线,作为接收货物的终点与运送货物的起点。取货台可以作为只有一层高度的货架,与库房中其他货架一起构建在场景中,通过实施例一中所述的方法过程,实现堆垛机在取货台和货架间的运动仿真。
[0024]
实施例三本实施例与实施例一所不同的是,在工厂数字孪生项目中,往往需要模拟库房取放货物整个过程,可以在实施例一与实施例二中的堆垛机、取货台、货架上添加合适的碰撞盒,货架和取货台上添加带有碰撞盒的货物模型,同样可以采用实施例一所述的方法过程实现在三维场景中模拟仿真取放货物的整个流程。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1