CN114663580A - 一种工业机器人生产线的虚拟仿真方法 - Google Patents

一种工业机器人生产线的虚拟仿真方法 Download PDF

Info

Publication number
CN114663580A
CN114663580A CN202210185055.9A CN202210185055A CN114663580A CN 114663580 A CN114663580 A CN 114663580A CN 202210185055 A CN202210185055 A CN 202210185055A CN 114663580 A CN114663580 A CN 114663580A
Authority
CN
China
Prior art keywords
model
robot
equipment
simulation
production line
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210185055.9A
Other languages
English (en)
Inventor
欧林林
孙肖瑶
王犇
禹鑫燚
周利波
魏岩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University of Technology ZJUT
Original Assignee
Zhejiang University of Technology ZJUT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University of Technology ZJUT filed Critical Zhejiang University of Technology ZJUT
Priority to CN202210185055.9A priority Critical patent/CN114663580A/zh
Publication of CN114663580A publication Critical patent/CN114663580A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures

Abstract

一种工业机器人生产线的虚拟仿真方法,包括:1)根据工业机器人生产线的相关信息构建三维模型,并导入Unity3D中,构建工业设备模型;2)基于不同工业设备模型的功能和属性,利用UI工具包设计相应的模型属性面板,控制模型的运行状况;3)对仿真环境中的设备模型的位置和姿态进行本地持久化存储,并将构建的设备模型集成为一个多种类的设备模型库;4)设计模型碰撞检测功能,精确定位设备控制程序的错误,便于检查和维修;5)使用数据库来作为虚实信号的交互中心和存储用户信息与工业设备历史数据的存储中心,实现各类信号的通信交互,满足系统复杂数据的存储需求;6)根据实际情况来构建工业机器人生产线的仿真场景,完成相应的虚拟调试工作。

Description

一种工业机器人生产线的虚拟仿真方法
技术领域
本发明设计一种工业机器人生产线的虚拟仿真方法。
背景技术
21世纪以来,物联网、云计算、大数据、移动通信、人工智能、机器学习等新技术在制造业广泛应用,制造系统集成式创新不断发展,形成新一轮工业革命的重要驱动力。随着中国智能制造需求的不断提高,数字化、智能化、信息化已经成为工业发展的主流方向。对于中国传统制造业来说,实现智能制造的前提条件是要先实现数字-物理双空间的精准信息映射,这必然离不开“数字孪生”的全面应用,而数字孪生的应用又离不开“虚拟调试”技术的支持。
数字孪生是指将物理世界的信息数字化表达,在赛博空间创建和物理实体等价的虚拟模型。虚拟模型能对物理实体的行为和特征进行仿真分析和测试,并将优化之后的信息反馈给物理世界,实现数字-物理双空间的信息交互。数字孪生技术在制造业的应用拓展就是“虚拟调试”,虚拟调试是指在数字世界中调试物理设备程序,通过测试验证后再进行正式部署,可以加快企业研发速度和降低工厂运行风险。虚拟调试系统是根据虚拟调试技术设计的软件,将工业生产线中的机器人、机床、传输带等各种设备制作成模型库,工程师根据现场情况快速搭建生产线的仿真模型,采集真实设备的控制信号,观测模型运行状态并在线进行调试。
从国外研究现状来看,“虚拟调试”在国外的研究和应用都已经较为成熟。很多公司已经重视到“虚拟调试”的重要性,并开发出了一系列成熟的虚拟调试软件,提高了企业核心竞争力。国内虽然对于“虚拟调试”技术的研究起步相对较晚,成熟的虚拟调试软件也相对较少,但中国学者也将“虚拟调试”技术应用在许多制造业领域中。例如,刘峻豪基于Unity3D引擎开发了模块化生产线故障仿真系统,将现实设备运行情况和计算机仿真技术进行结合,以满足对自动化物流生产线人才快速培养需求(刘峻豪.基于Unity3D的模块化生产线故障仿真及虚拟调试系统研究[D].四川:西南科技大学,2020.),但主要针对简单构造的烟草物流生产线进行虚拟仿真系统的设计,通用性不高。王刚和郭艳丽将虚拟调试技术应用在了白车身生产线当中,他们采用了西门子的虚拟调试解决方案,通过完全虚拟化的白车身生产线,缩短了白车身批量生产前的调试周期并减少了研发投入(王刚,郭艳丽.虚拟调试技术在白车身生产线中的应用[J].湖北汽车工业学院学报,2019,33(4):38-41.),但其系统可视化还不够逼真,不能够实现快速搭建生产线的要求。国内现有的虚拟调试软件其虚实信号的交互以及设备的控制需要通过编写脚本的方式实现,不具备简易的操作界面,对使用人员能力要求较高,交互性能和通用性能较差;仿真系统中没有建立较为完善的工业设备模型库,产线设备的更改需进行二次开发,不利于扩展。而本方法具备生产线仿真系统,使用人员可通过设备模型库和属性面板等快速构建所需仿真场景,并可通过采集的控制信号驱动仿真模型的运行,大大地提高了智能制造生产线调试的效率。
发明内容
本发明要解决现有技术存在的上述技术问题,提供一种快速构建工业机器人生产线的虚拟仿真的方法。
本发明基于Unity3D引擎来创建模型的属性控制面板、设计模型碰撞检测和构建工业设备模型库等,并通过数据库来实现物理世界和虚拟世界的信号交互。本发明的一种工业机器人生产线的虚拟仿真方法,基于Unity3D引擎构建,模拟真实制造的现场环境,提供可视化三维模型和用户交互界面,主要分为工业设备模型建立、模型私有面板属性设计、设备模型库构建、模型碰撞检测设计和数据库使用这五个部分。
为了解决上述技术问题,本发明实施例提供了一种工业机器人生产线的虚拟仿真的方法,包括如下步骤:
步骤一,根据实际工业机器人生产线的相关信息构建所需的三维模型,进行贴图渲染和文件格式转换等操作,并导入Unity3D中,从而构建逼真的工业设备模型;
步骤二,针对不同工业设备模型的属性和功能,利用UI工具包设计相应的模型属性面板,通过操作属性面板来控制模型的运行状况;
步骤三,采用JSON文件对仿真环境中设备模型的位置和姿态进行本地持久化存储,并将构建好的设备模型集成为一个多种类的设备模型库;
步骤四,设计模型碰撞检测功能,精确定位设备控制程序的错误,便于检查和维修;
步骤五,使用数据库作为虚实信号的交互中心和存储用户信息与工业设备历史数据的存储中心,实现各类信号的通信交互,满足系统复杂数据的存储需求;
步骤六,基于上述步骤,根据生产线的实际情况,快速地构建出工业机器人生产线仿真场景,完成相应的虚拟调试工作。
其中,所述步骤一具体包括:
先在SoildWorks软件中对工业设备进行等比例建模,再将建好的模型文件导入3DMax软件中进行贴图、渲染的处理,然后将处理好的模型转换成Unity3D引擎可支持导入的FBX文件格式。
机器人生产线中常用的工业设备按照功能种类分类,可分为机器人、输送带、传感器、车床以及工具手等。机器人模型需按照实际机器人的物理参数进行运动学建模,并能按照关节角数据进行位姿改变;输送带模型需能控制输送速度和方向,传感器模型被触发时需能释放触发信号,车床模型需能控制门的开启与关闭,工具手模型需具备抓取、焊接、打磨等功能。
其中,所述步骤二具体包括:
属性面板通过Unity3D引擎中的UGUI进行开发,UGUI在事件机制、运行效率、自适应系统等方面都有着显著的优点,其提供的基础元素包括画布、文本、图片、按钮、开关、下拉选单、遮罩、滑动条和滚动条,还提供了强大的EventSystem事件系统来管理UI元素;
仿真系统中的属性面板都是通过基础元素的相互组合实现的,根据设备的种类和功能搭配排列出简洁、易操作的界面。从设备模型库中拖拽模型图标时,系统会自动解析图标对应的配置文件,获取拖拽模型的类型、ID和路径信息,从而加载模型和克隆该模型UI面板,并将面板与模型ID保存为键值对数据。当鼠标点击场景中的模型时,被点击模型ID与保存的ID进行匹配,若匹配结果一致就显示ID对应的属性面板,否则就将该面板隐藏;
模型仓库中的每个模型均配有各自的属性面板,属性面板需根据物理设备的特性使用不同的UI控件并控制模型不同的功能。
其中,所述步骤三具体包括:
采用JSON文件对仿真环境中模型的数据信息进行存储,具备存档和读档的功能。存档时,遍历场景中存在的模型对象,对模型的ID、名称、类别、介绍等配置信息以及位置坐标、旋转坐标进行序列化处理,序列化后的JSON字符串文件可以在任何装有仿真系统的PC机上被再次打开与编辑。读档时,遍历JSON字符串文件,对文件中的数据进行反序列化操作,根据解析的配置信息加载相应的设备模型和属性面板,并按照位置坐标和旋转坐标确定其姿态,最终重现保存时的仿真场景;
若场景中的模型被删除,JSON文件将对应删除该模型数据信息;若在场景中添加新的模型,新添加模型的配置信息和坐标信息将被添加进JSON文件中;若场景中模型的位置和姿态发生改变,JSON文件中该模型的坐标数据将被对应修改;
最后,将所有附带属性面板和数据信息的设备模型添加进模型仓库中,构成一个完善的工业设备模型库。
其中,所述步骤四具体包括:
采用包围盒法的方式对模型进行碰撞检测的设计。采用Unity引擎提供的球体、立方体、胶囊体等包围盒结合机械臂各轴的工作空间与预警区域的方法进行检测;先按照形状和工作安全区域为机械臂各个关节轴创建碰撞盒,当碰撞盒发生碰撞时触发相应的函数事件;在函数响应事件中判断机械臂所接触物体的标签,若物体标签不是机械臂工作目标对象,便判定为发生碰撞;若碰撞发生,则立即停止仿真、发出警告信息,及时响应由于程序出错而造成的碰撞事件并进行相关处理。
其中,所述步骤五具体包括:
采用MySQL数据库作为工厂业务数据存储中心,MySQL数据库表主要包括工厂信息表、设备信息表、设备数据表、日志表、用户记录表等,其中工厂信息表为主表,与其他表的关系均为一对多进行关联;采用Redis数据库作为物理信号和虚拟信号的交互中心,数据采集软件中的控制设备I/O信号、机器人关节角等数据都会以key-value的形式存储在Redis中,并且数据值根据控制程序运行情况实时刷新。
仿真系统会实时读取数据库中保存的数据值,通过实际信号值驱动仿真运行并将仿真运行状态以key-value形式保存至数据库中;数据采集软件同步从交互中心获取仿真模型运行状态,并反馈至实际控制设备中,从而实现物理世界和虚拟环境的信号交互。
其中,所述步骤六具体包括:
设备模型库中的模型可通过鼠标点击、拖拽的方式被快速加载到仿真环境中,然后使用者能通过坐标定位的方式进行整体布局;所以,只需通过拖拽模型与坐标定位的方式就能快速搭建所需的虚拟生产线,再通过操作模型属性面板来控制和调整虚拟生产线的大小、位置和姿态,最后结合模型碰撞检测功能和采集的物理设备控制信号实现工业机器人生产线的虚拟仿真。
本发明的一种工业机器人生产线的虚拟仿真方法,基于Unity3D引擎构建,模拟真实制造的现场环境,提供可视化三维模型和用户交互界面,主要分为工业设备模型建立、模型私有面板属性设计、设备模型库构建、模型碰撞检测设计和数据库信息存储和交互这五个部分。首先在SoildWorks软件中对工业设备进行等比例建模;再将建好的模型文件导入3DMax软件中进行贴图、渲染的处理,处理完成后将模型转换成FBX文件格式导入Unity3D中。然后通过UGUI控件对不同分类的模型设计相应的私有面板属性,文本和图片用来显示模型名称并说明介绍其信息,按钮、滑条和滚轮能够控制机械臂等模型的运动和姿态。将构建好的模型集成为一个多种类的设备模型库,并将模型的图标、名称和种类等信息存储在JSON文件中,便于在仿真场景中显示、修改和更新。为了及时响应程序出错,避免碰撞事件,设计了模型碰撞检测功能,利用Unity中的碰撞体组件来检测模型之间是否发生碰撞,若发生碰撞则立即停止仿真并进行相关处理。结合使用Redis和MySQL两种数据库对该系统进行数据的储存和管理,编写C#脚本实现了虚拟仿真系统与数据库间的信息交互,Redis从数据采集软件读取设备的IO信号和关节数据传送给虚拟仿真系统,而系统则将模型的IO信号返回给Redis;虚拟仿真系统和MySQL之间互相传递工厂信息、设备信息、设备数据、用户记录和日志等数据。总之,构建了一个具有实时性、可靠性且简明易用的生产线的虚拟调试方法,实现了对工业机器人生产线的虚拟调试功能,能够验证工业程序设计和产品的可行性。
本发明的优点是:在仿真方法中设计了工业设备模型库,包括机器人、输送带、传感器、车床以及工具等模型,有利于机器人生产线仿真环境的快速搭建;为每个模型设计用户交互界面,通过操作模型属性面板能够实现对仿真场景中模型位姿和大小的精确控制;在虚拟调试过程中,模型碰撞检测能够及时响应程序出错而造成的碰撞事件,精确定位到设备控制程序错误,发现程序设计缺陷并进行修改与验证;采用JSON文件可对仿真环境中已搭建的模型的位置和姿态进行本地持久化存储,即支持仿真系统的持久化操作;同时采用MySQL和Redis数据库,能够存储用户信息、工业设备的历史数据和实现虚实信号的交互,满足了仿真系统复杂数据的存储需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,根据这些附图获得其他的附图仍属于本发明的范畴。
图1为本发明实施例提供的对工业机器人生产线进行虚拟仿真的方法的结构框图。
图2a~2c为本发明实施例提供的对工业机器人生产线进行虚拟仿真的方法中的常用设备模型图,其中图2a是六轴机械臂模型图,图2b是输送带模型图,图2c是平口夹爪模型图。
图3为本发明实施例提供的对工业机器人生产线进行虚拟仿真的方法中的设备模型库图。
图4为本发明实施例提供的对工业机器人生产线进行虚拟仿真的方法中的机械臂模型属性面板图。
图5为本发明实施例提供的对工业机器人生产线进行虚拟仿真的方法中的机械臂包围盒示意图。
图6为本发明实施例提供的对工业机器人生产线进行虚拟仿真的方法中的数据采集软件与仿真系统交互设计图。
图7为本发明实施例提供的对工业机器人生产线进行虚拟仿真的方法的工业机器人虚拟生产线图。
具体实施方式
以下结合附图对本发明做进一步详述。
如图1所示,为本发明实施例,提供的一种工业机器人生产线的虚拟仿真方法,该方法基于Unity3D引擎来构建,主要分为工业设备模型建立、模型私有面板属性设计、设备模型库构建、模型碰撞检测设计和数据库信息存储和交互这五个部分。
工业设备模型建立主要是根据工业机器人生产线的相关信息构建三维模型,并导入Unity3D中,构建工业设备模型。需在SoildWorks软件中对工业设备进行等比例建模;再将建好的模型文件导入3DMax软件中进行贴图、渲染的处理,处理完成后将模型转换成FBX文件格式导入Unity3D中。
模型私有面板属性设计主要基于不同工业设备模型的功能和属性,利用UI工具包设计相应的模型属性面板,控制模型的运行状况;主要方式是采用文本和图片来显示模型名称和说明介绍信息,操作按钮、滑条和滚轮来控制机械臂等模型的运动、位置和姿态。
设备模型库是将所有设备模型集成而构建出的一个三维模型仓库,模型的图标、名称和种类等信息存储在JSON文件中,便于在仿真场景中显示、修改和更新。
模型碰撞检测设计主要采用包围盒结合机械臂各轴的工作空间与预警区域的方法来进行检测,能够及时响应程序出错,避免碰撞事件,实现了精确定位设备控制程序的错误,便于使用者检查和维修。
数据库信息存储和交互主要是结合使用Redis和MySQL两种数据库对该系统进行数据的存储和管理,实现各类信号的通信交互,满足系统复杂数据的存储需求。通过C#脚本实现了虚拟仿真系统与Redis和MySQL数据库间的信息交互,Redis从数据采集软件读取设备的IO信号和关节数据传送给虚拟仿真系统,而系统则将运行的模型的IO信号子返回给Redis;虚拟仿真系统和MySQL之间能互相传递工厂信息、设备信息、设备数据、用户记录和日志等数据。
最终,将各部分功能模块组合,构建成了一个具有实时性、可靠性且简明易用的生产线的虚拟仿真调试系统,用户能够通过鼠标点击和拖拽便能快速搭建仿真的生产线。
如图2至图7所示,对本发明实施例中的工业机器人生产线的虚拟仿真方法做进一步说明:
(1)常用设备模型,先在SoildWorks软件中对工业设备进行等比例建模,再将建好的模型文件导入3DMax软件中进行贴图、渲染的处理,处理完成后将模型转换成Unity3D引擎可支持导入的FBX文件格式;之后将模型文件导入Unity3D引擎中,结合C#脚本程序、UGUI交互控件、贴图和场景光照等工具实现模型仿真功能。最后,将所有设备模型添加进模型仓库中,组成一个工业设备模型库。其中六轴机械臂模型如图2a所示,输送带模型如图2b所示,平口夹爪模型如图2c所示。
以常用的六轴机器人为例,该型机器人前三个轴用来描述末端位置,后三个轴用来描述末端姿态。将3DMax转好的机器人模型文件导入Unity3D中,根据D-H参数表设置关节间的父子级关系、连杆参数以及关节变量,D-H参数表如表1所示。
表1机器人D-H参数表
Figure BDA0003522830670000081
因为工具坐标系TCP与机器人最后一个轴相连接,所以六轴机器人的前三个轴和后三个轴分别确定了TCP的位置和姿态。机器人运动学正向求解就是根据6个轴的关节角计算出机器人末端位姿的过程,且解出解为唯一解。在仿真系统中可通过采集的关节角数据更加精确的模拟出机械臂的运动轨迹,提高软件虚拟调试功能的精确性。机器人相邻连杆之间的转换关系如式(1)所示,将D-H参数表中的数据代入转换公式即可得到相邻连杆的转换矩阵。
Figure BDA0003522830670000082
机械臂各连杆转换矩阵如公式(2)所示:
Figure BDA0003522830670000091
将上述所求得的六轴机器人各连杆转换矩阵依次相乘,可得到机器人末端相对于基坐标系的转换矩阵
Figure BDA0003522830670000092
机器人工具坐标系TCP相对于基坐标系的位置为(px,py,pz),如公式(3)所示;机器人工具坐标系相对于基坐标系的姿态,如公式(4)所示。通过Unity3d支持的C#脚本编程,开发机器人类的运动学正解函数库,用于机械臂末端工具坐标系的仿真工作。
Figure BDA0003522830670000093
Figure BDA0003522830670000094
(2)设备模型库,如图3所示。仿真系统启动时,系统首先加载保存的JSON配置文件信息,根据解析的模型图标、名称、种类等数据加载相应的资源文件并进行分类显示。若用户需在仿真环境中创建仓库中的模型,可通过鼠标左键点击对应UI图标并拖拽至仿真环境中,当鼠标左键松开时,系统会在光标所在的位置创建该设备模型。若模型的摆放角度不符合实际生产线状况,可通过鼠标滚轮对模型的世界旋转坐标进行调整,设备模型会随着坐标数据的改变同步旋转。若模型的摆放位置不符合实际生产线状况,可通过坐标输入的方式对模型的世界坐标进行调整,设备模型会重新加载在对应的坐标位置上。
(3)模型属性面板,设备模型库中每个设备都具有属性面板,以机械臂属性面板为例,如图4所示。通过进度条滑动组件实现对机械臂各轴旋转角度的控制,根据机械臂工作空间设置组件滑动的上下区域,移动滑块位置即可完成对机械臂姿态的改变;通过文本组件显示设备的名称、说明介绍等内容;通过按钮控件控制数据库的开启、关闭以及机械臂运动学仿真、机械臂末端轨迹绘制等功能。为了更精确的模拟机械臂运行姿态,设计了运动学操控面板,避免机械臂到达奇异角等异常状况的发生。
(4)包围盒法的碰撞检测,通过引擎提供的球体、立方体、胶囊体等包围盒结合机械臂各轴的工作空间与预警区域的方法进行检测,机械臂包围盒示意图如图5所示。先为机械臂各个关节轴按照形状和工作安全区域创建碰撞盒;根据Unity的特性,若两个碰撞盒发生了碰撞,引擎会触发三个响应函数,分别对应着接触前、中、后三种事件;当物体接触状态发生改变时,相应的函数事件会在软件后台脚本中被自行调用;函数响应事件中负责判断机械臂所接触物体的标签,若物体标签不为机械臂工作目标对象,便判定发生碰撞,立即停止模型仿真并发出警告信息。
(5)虚实数据的交互,数据采集软件与仿真系统的交互如图6所示。实际信号和虚拟信号通过Redis数据库进行交互,数据采集软件中PLC插件和机器人插件采集的物理控制设备I/O信号、机器人关节角等数据都会以key-value的形式存储在数据库中,并且数据值根据控制程序运行情况实时刷新。仿真系统会实时读取数据库中保存的数据值,通过实际信号值驱动仿真运行并将仿真运行状态以key-value形式保存至数据库中;数据采集软件同步从交互中心获取仿真模型运行状态,并反馈至实际控制设备中,实现物理世界和虚拟环境之间的信号交互。
(6)虚拟生产线的搭建操作。生产线仿真系统中构建一条虚拟工业机器人生产线,需先从设备模型库中导入生产线需使用到的设备模型,从设备模型库的机器人仓库中拖出汇博六轴机器人,车床仓库中拖出加工中心和数控车床,工具手仓库中拖出夹爪工具并装载到汇博机械臂上,以及其它设备模型仓库中拖出围栏、立体仓库、机器人导轨、PC机、机器人控制柜等静态模型。然后,根据实际生产线中各设备的位置,通过坐标定位和拖动坐标系的方式搭建工业机器人虚拟生产线,搭建完成的虚拟生产线如图7所示。虚拟生产线模型构建完成之后,通过模型属性面板启动相关功能并与目标数据库进行连接,虚拟生产线将会跟随采集的工控信号运行。
以上是整个发明的控制情况,Unity3D引擎中模型的运动具有高度逼真的可视化;工业设备模型库的设计,集成了常用的设备模型,方便使用者快速高效地搭建机器人生产线的仿真场景;属性面板的设计,实现了对仿真模型的精确控制;碰撞检测的设计,让系统具有响应程序错误的及时性和精确定位错误的安全性;MySQL和Redis数据库的使用,满足了系统对复杂数据存储的需求,实现了虚实信号的交互和业务数据的持久化。
实施本发明实施例,具有如下的有益效果:
本发明面向工业机器人生产线的虚拟仿真方法,使用时只需在工业设备模型库中选择与实际工业设备相对应的模型,将其放入仿真场景中,通过简易的操作即能快速构建出所需的虚拟生产线,而无需实际的工业设备。在Unity3D引擎中运行编写好的脚本文件,能够真实地展现工业生产线的仿真效果;再通过观察仿真效果能够检测工业机器人生产线是否运行正常,若出现问题也能快速响应与处理,便于使用者检查和改正。使用本方法可以减少实际搭建工业机器人生产线的成本和时间,同时也能保证生产线仿真效果的实时性和可靠性,极大地提高了使用者的工作效率。
本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。

Claims (8)

1.一种工业机器人生产线的虚拟仿真方法,包括如下步骤:
步骤一,根据实际的工业机器人生产线的相关信息构建所需的三维模型,进行贴图渲染和文件格式转换等操作,并导入Unity3D中,从而构建逼真的工业设备模型;
步骤二,针对不同工业设备模型的属性和功能,利用UI工具包设计相应的模型属性面板,通过操作属性面板来控制模型的运行状况;
步骤三,采用JSON文件对仿真环境中设备模型的位置和姿态进行本地持久化存储,并将构建好的设备模型集成为一个多种类的设备模型库;
步骤四,设计模型碰撞检测功能,精确定位设备控制程序的错误,便于检查和维修;
步骤五,使用数据库作为虚实信号的交互中心和存储用户信息与工业设备历史数据的存储中心,实现各类信号的通信交互,满足系统复杂数据的存储需求;
步骤六,基于上述步骤,根据生产线的实际情况,快速地构建出工业机器人生产线仿真场景,完成相应的虚拟调试工作。
2.根据权利要求1所述的方法,其特征在于,所述步骤一具体包括:
先在SoildWorks软件中对工业设备进行等比例建模,再将建好的模型文件导入3DMax软件中进行贴图、渲染的处理,然后将处理好的模型转换成Unity3D引擎可支持导入的FBX文件格式;
机器人生产线中常用的工业设备按照功能种类分类,包括机器人、输送带、传感器、车床以及工具手;机器人模型需按照机器人的物理参数进行运动学建模,并能按照关节角数据进行位姿改变;输送带模型需能控制输送速度和方向,传感器模型被触发时需能释放触发信号,车床模型需能控制门的开启与关闭,工具手模型需具备抓取、焊接、打磨的功能。
3.根据权利要求1所述的方法,其特征在于,所述步骤二具体包括:
属性面板通过Unity3D引擎中的UGUI进行开发;
仿真系统中的属性面板通过基础元素的相互组合实现,根据设备的种类和功能搭配排列出简洁、易操作的界面;从设备模型库中拖拽模型图标时,系统会自动解析图标对应的配置文件,获取拖拽模型的类型、ID和路径信息,从而加载模型和克隆该模型UI面板,并将面板与模型ID保存为键值对数据;当鼠标点击场景中的模型时,被点击模型ID与保存的ID进行匹配,若匹配结果一致就显示ID对应的属性面板,否则就将该面板隐藏;
模型仓库中的每个模型均配有各自的属性面板,属性面板需根据物理设备的特性使用不同的UI控件并控制模型不同的功能。
4.根据权利要求1所述的方法,其特征在于,所述步骤三具体包括:
采用JSON文件对仿真环境中模型的数据信息进行存储,具备存档和读档的功能;存档时,遍历场景中存在的模型对象,对模型的ID、名称、类别、介绍等配置信息以及位置坐标、旋转坐标进行序列化处理,序列化后的JSON字符串文件可以在任何装有仿真系统的PC机上被再次打开与编辑;读档时,遍历JSON字符串文件,对文件中的数据进行反序列化操作,根据解析的配置信息加载相应的设备模型和属性面板,并按照位置坐标和旋转坐标确定其姿态,最终重现保存时的仿真场景;
若场景中的模型被删除,JSON文件将对应删除该模型数据信息;若在场景中添加新的模型,新添加模型的配置信息和坐标信息将被添加进JSON文件中;若场景中模型的位置和姿态发生改变,JSON文件中该模型的坐标数据将被对应修改;
最后,将所有附带属性面板和数据信息的设备模型添加进模型仓库中,构成一个完善的工业设备模型库。
5.根据权利要求1所述的方法,其特征在于,所述步骤四具体包括:
采用包围盒法的方式对模型进行碰撞检测的设计。采用Unity引擎提供的球体、立方体、胶囊体等包围盒结合机械臂各轴的工作空间与预警区域的方法进行检测;先按照形状和工作安全区域为机械臂各个关节轴创建碰撞盒,当碰撞盒发生碰撞时触发相应的函数事件;在函数响应事件中判断机械臂所接触物体的标签,若物体标签不是机械臂工作目标对象,便判定为发生碰撞;若碰撞发生,则立即停止仿真、发出警告信息,及时响应由于程序出错而造成的碰撞事件并进行相关处理。
6.根据权利要求1所述的方法,其特征在于,所述步骤五具体包括:
采用MySQL数据库作为工厂业务数据存储中心,MySQL数据库表包括工厂信息表、设备信息表、设备数据表、日志表、用户记录表,其中工厂信息表为主表,与其他表的关系均为一对多进行关联;采用Redis数据库作为物理信号和虚拟信号的交互中心,数据采集软件中的控制设备I/O信号、机器人关节角等数据都会以key-value的形式存储在Redis中,并且数据值根据控制程序运行情况实时刷新;
仿真系统会实时读取数据库中保存的数据值,通过实际信号值驱动仿真运行并将仿真运行状态以key-value形式保存至数据库中;数据采集软件同步从交互中心获取仿真模型运行状态,并反馈至实际控制设备中,从而实现物理世界和虚拟环境的信号交互。
7.根据权利要求1所述的方法,其特征在于,所述步骤六具体包括:
设备模型库中的模型可通过鼠标点击、拖拽的方式被快速加载到仿真环境中,然后使用者能通过坐标定位的方式进行整体布局;所以,只需通过拖拽模型与坐标定位的方式就能快速搭建所需的虚拟生产线,再通过操作模型属性面板来控制和调整虚拟生产线的大小、位置和姿态,最后结合模型碰撞检测功能和采集的物理设备控制信号实现工业机器人生产线的虚拟仿真。
8.根据权利要求2所述的方法,其特征在于,所述的机器人是六轴机器人,建模过程具体包括:
对选用的六轴机器人在SoildWorks软件中进行等比例建模,注意轴与轴之间的相对位置关系;若选用市面上常用的机器人型号,则可通过从机器人公司官网下载等途径直接获取到精确的模型文件;
将建好的模型文件导入3DMax软件中进行贴图、渲染的处理,然后将其转换成FBX文件格式;
将FBX文件格式的机器人模型文件导入Unity3D中,按照实际机器人的物理参数对机器人模型进行运动学建模,并使其能按照关节角数据进行位姿改变。六轴机器人的前三个轴用来描述末端位置,后三个轴用来描述末端姿态。根据D-H参数表设置关节间的父子级关系、连杆参数以及关节变量,D-H参数表如下:
机器人D-H参数表
Figure FDA0003522830660000041
因为工具坐标系TCP与机器人最后一个轴相连接,所以六轴机器人的前三个轴和后三个轴分别确定了TCP的位置和姿态。机器人运动学正向求解就是根据6个轴的关节角计算出机器人末端位姿的过程,且解出解为唯一解。机器人相邻连杆之间的转换关系如式(1)所示,将D-H参数表中的数据代入转换公式即可得到相邻连杆的转换矩阵。
Figure FDA0003522830660000042
机械臂各连杆转换矩阵如公式(2)所示:
Figure FDA0003522830660000051
将上述所求得的六轴机器人各连杆转换矩阵依次相乘,可得到机器人末端相对于基坐标系的转换矩阵
Figure FDA0003522830660000052
机器人工具坐标系TCP相对于基坐标系的位置为(px,py,pz),如公式(3)所示;机器人工具坐标系相对于基坐标系的姿态,如公式(4)所示。通过C#脚本编程,开发机器人类的运动学正解函数库,用于机械臂末端工具坐标系的仿真工作。
Figure FDA0003522830660000053
Figure FDA0003522830660000054
CN202210185055.9A 2022-02-28 2022-02-28 一种工业机器人生产线的虚拟仿真方法 Pending CN114663580A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210185055.9A CN114663580A (zh) 2022-02-28 2022-02-28 一种工业机器人生产线的虚拟仿真方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210185055.9A CN114663580A (zh) 2022-02-28 2022-02-28 一种工业机器人生产线的虚拟仿真方法

Publications (1)

Publication Number Publication Date
CN114663580A true CN114663580A (zh) 2022-06-24

Family

ID=82028059

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210185055.9A Pending CN114663580A (zh) 2022-02-28 2022-02-28 一种工业机器人生产线的虚拟仿真方法

Country Status (1)

Country Link
CN (1) CN114663580A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114996028A (zh) * 2022-08-03 2022-09-02 山东捷瑞数字科技股份有限公司 一种基于三维引擎的虚拟实训方法及系统
CN116070464A (zh) * 2023-03-07 2023-05-05 四川宏华电气有限责任公司 一种虚拟现实的钻井井场仿真系统
CN117103281A (zh) * 2023-10-20 2023-11-24 深圳墨影科技有限公司 一种机器人全融合仿真系统及方法
CN117573293A (zh) * 2024-01-16 2024-02-20 北京卓翼智能科技有限公司 一种基于Redis的大规模仿真系统数据记录方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114996028A (zh) * 2022-08-03 2022-09-02 山东捷瑞数字科技股份有限公司 一种基于三维引擎的虚拟实训方法及系统
CN114996028B (zh) * 2022-08-03 2022-12-06 山东捷瑞数字科技股份有限公司 一种基于三维引擎的虚拟实训方法及系统
CN116070464A (zh) * 2023-03-07 2023-05-05 四川宏华电气有限责任公司 一种虚拟现实的钻井井场仿真系统
CN116070464B (zh) * 2023-03-07 2023-06-06 四川宏华电气有限责任公司 一种虚拟现实的钻井井场仿真系统
CN117103281A (zh) * 2023-10-20 2023-11-24 深圳墨影科技有限公司 一种机器人全融合仿真系统及方法
CN117103281B (zh) * 2023-10-20 2024-01-26 深圳墨影科技有限公司 一种机器人全融合仿真系统及方法
CN117573293A (zh) * 2024-01-16 2024-02-20 北京卓翼智能科技有限公司 一种基于Redis的大规模仿真系统数据记录方法
CN117573293B (zh) * 2024-01-16 2024-04-12 北京卓翼智能科技有限公司 一种基于Redis的大规模仿真系统数据记录方法

Similar Documents

Publication Publication Date Title
CN114663580A (zh) 一种工业机器人生产线的虚拟仿真方法
CN112818446B (zh) 一种智能车间数字孪生系统的构建方法
CN104484522A (zh) 一种基于现实场景的机器人模拟演练系统的构建方法
Martins et al. Shop floor virtualization and industry 4.0
Dai et al. Virtual prototyping: An approach using VR-techniques
CN115877736B (zh) 基于数字孪生的多机器人协同作业仿真监控方法
EP3037904B1 (en) Sizing and selection closer to the executing environment
CN112306014A (zh) 一种基于ue4的车间生产仿真及排产调度实现方法
Eriksson et al. Applying digital twin technology in higher education: An automation line case study
CN112800606A (zh) 数字孪生产线构建方法、系统、电子设备及存储介质
CN113496548A (zh) 一种面向透明工厂的生产现场数据映射方法
CN116958426A (zh) 虚拟调试配置方法、装置、计算机设备、存储介质
Zhao et al. Preliminary explorations of conceptual design tools for students learning to design human-robot interactions for the case of collaborative drawing
CN111113426A (zh) 一种基于cad平台的机器人离线编程系统
Du et al. Industrial robot digital twin system motion simulation and collision detection
CN112558782B (zh) 基于数据驱动的三维仿真实验方法
Aksonov et al. Interactive design of CNC equipment operator panels
CN112114529A (zh) 一种面向五金行业的仿真调试系统
JP3076841B1 (ja) 実環境適応型ロボットの教示プログラム作成方法
CN112967558A (zh) 一种虚实结合的焊接机器人虚拟仿真教学体系
Abramov et al. Offline programming of robot model with virtual environment support
CN112132962A (zh) 基于虚拟现实的城轨车辆检修作业工艺研究方法
Wei et al. Animated simulation of the robot process capability
Jia Application analysis of BIM technology in project management
CN111862297A (zh) 基于Coin3D的协作机器人可视化仿真示教方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination