CN110555240A - 一种从机器人装配体模型到仿真模型的自动生成方法 - Google Patents
一种从机器人装配体模型到仿真模型的自动生成方法 Download PDFInfo
- Publication number
- CN110555240A CN110555240A CN201910732243.7A CN201910732243A CN110555240A CN 110555240 A CN110555240 A CN 110555240A CN 201910732243 A CN201910732243 A CN 201910732243A CN 110555240 A CN110555240 A CN 110555240A
- Authority
- CN
- China
- Prior art keywords
- model
- connecting rod
- robot
- assembly
- sub
- 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.)
- Granted
Links
Abstract
本发明公开了一种从机器人装配体模型到仿真模型的自动生成方法,包括如下步骤:(1)、用三维建模软件将原始机器人装配体模型的所有零件按照各个连杆分块装配成子装配体,并将这些子装配体重新机器人装配体,用STEP格式保存子装配体三维模型;(2)、利用开源三维建模引擎OCCT的数据交换模块,读取STEP格式的子装配体三维模型,将机器人装配体模型的各个连杆从整个装配体中分离出来;(3)、根据齐次变换修改各个连杆的坐标系,确定各连杆在世界坐标系下的位姿;(4)、根据机器人的DH参数将各个连杆组合成新的仿真模型。该方法有效能减少用户的重复操作、减少误差,达到提高人工建模的精度的目的。
Description
技术领域
本发明属于机器人技术应用与计算机图形学领域,具体涉及一种从机器人装配体模型到仿真模型的自动生成方法。
背景技术
机器人运动学描述了机器人关节与组成机器人各刚体之间的运动关系,关节的相对运动导致连杆的运动,使末端能到达期望的位姿。机器人工作时,需通过空间中的一系列点,这些点构成了机器人的工作范围,该工作范围有运动学正解求得,因此,机器人的运动学建模是对机器人控制的基础。
随着机器人应用领域的发展,对工业机器人仿真的研究越来越广泛。机器人建模方法是仿真的基础。目前,国内外学者对于机器人运动学建模方法已经展开了深入的研究,其中最经典的是D-H参数法,该方法首先要在机器人模型的各个连杆上建立局部坐标系,通过各连杆的坐标转换来建立运动学方程,该方法在原理上简单明了,但具体的做法是在三维建模软件中修改每个连杆的本地坐标系,该过程步骤繁琐、耗时,且易出错。
发明内容
为了解决上述问题,本发明提出一种从机器人装配体模型到仿真模型的自动生成方法,利用三维建模引擎OCCT和机器人学基础理论,通过将三维建模软件中的机器人装配体模型转化为STEP格式,利用OCCT中的API将STEP格式的三维模型按照其装配关系把基座和连杆单独分离出来,根据机器人的D-H参数,利用机器人学基础理论重新计算并修改各个模型的本地坐标系,再将各个模型按照D-H参数重新装配起来,组成机器人的仿真模型。本发明应用于工业机器人仿真系统软件,其目的在于能够在已有机器人三维模型和DH参数椅子的情况下,让用户更方便、准确的建立机器人的仿真模型。
本发明至少通过如下技术方案之一实现。
一种从机器人装配体模型到仿真模型的自动生成方法,包括如下步骤:
(1)、用三维建模软件(如Solidworks,UG等)将原始机器人装配体模型的所有零件按照各个连杆分块再装配成连杆子装配体模型,并将这些连杆子装配体模型配成新的机器人装配体,用STEP格式保存新的机器人装配体;
(2)、利用开源三维建模引擎OCCT(Open Cascade Technology,OCCT)的数据交换模块(Extended Data Exchange),读取STEP格式的子装配体三维模型,将机器人装配体模型的各个连杆从整个装配体中分离出来;
(3)、根据齐次变换修改各个连杆的坐标系,确定各连杆三维模型在世界坐标系下的位姿;
(4)、根据机器人的DH参数将各个连杆组合成仿真模型。
进一步的,所述机器人装配体模型包括四轴工业机器人模型和六轴工业机器人模型;四轴工业机器人模型包括一个基座和四个连杆,除基座外,机器人模型只有三个连杆,建模时将第三连杆视为无模型的移动轴;六轴工业机器人模型,包括一个基座和六个连杆。
进一步的,步骤(1)中的,在三维建模软件中将原始机器人装配体模型中属于机器人某一连杆的零件组成连杆子装配体模型,连杆子装配体模型表示为机器人的某一个连杆,然后将各个连杆子装配体模型配成新的机器人装配体模型,最后将整个机器人装配体模型保存成STEP格式文件。
进一步的,步骤(2)中利用OCCT中的数据交换模块(Extended Data Exchange),解析STEP格式的三维模型,将机器人装配体模型的连杆子装配体模型分离出来,用于组成机器人的仿真模型,具体步骤如下:
Step1、利用OCCT数据交换文档类(classTDocStd_Document)实例化一个文档对象,用于存放三维模型的数据,包括标签和属性;利用STEP文件阅读器类(classSTEPCAFControl_Reader),实例化阅读器对象;
Step2、利用阅读器对象的读取文件函数(ReadFile)读取三维模型的STEP格式文件,利用阅读器的Transfer函数将读取到的三维模型的数据转化为文档对象;
Step3、利用文档图形工具类(classXCAFDoc_ShapeTool)实例化一个对文档进行访问的工具对象,利用该工具对象获取文档中的模型的装配体数据结构;
Step4、利用工具对象获取装配体的根节点的标签,利用文档子节点迭代器类(classTDF_ChildIterator)的迭代器对象对根节点下的一级子标签进行遍历,此时利用工具对象的获取图形函数(GetShape)获取当前子节点下的子装配体模型,用类拓扑图形(TopoDS_Shape)的对象来保存子装配体模型,并放入该对象的容器中;
Step5、迭代器对象遍历完整个三维模型的节点后,得到三维模型的所有子装配体,利用所有子装配体组成机器人的仿真模型,并用OCCT的格式保存为仿真模型。
进一步的,在步骤(3)中,由于步骤(2)得到仿真模型的所有连杆坐标系都处于世界坐标系下,需要利用齐次变换更正仿真模型的所有连杆的坐标系,具体如下:
设机器人的自由度DOF=N,基座的坐标系处于世界坐标系下,无需更正,要更正的是N个连杆的坐标系;设齐次变换矩阵Li和Ti分别代表连杆i+1相对于连杆i的变换和连杆i+1相对于连杆0的变换,i=0,1,2,…,N-1,Li和Ti的公式为:
Ti=Ti-1*Li(i=0,1,2,…,N-1)
式中:ai,θi和di均为机器人第i+1个连杆与第i个连杆间的DH参数。
求出Ti后,即得出每个连杆相对于基座即连杆0的坐标系的齐次变换矩阵,再对Ti求逆得到Ti -1,将变换矩阵Ti -1作为连杆i+1的坐标系,即为连杆坐标系;
将Li连乘后得到各连杆相对于基座坐标系的齐次变换矩阵,即各连杆在基座坐标系下的位姿。以最后一个连杆为例,设表示最后一个连杆相对于基座坐标系的位姿,公式
本发明所构思的技术方案能够取得以下有益效果:
(1)本发明提出了一种自动化建模方法,用户在三维建模软件中重新装配体机器人模型后,利用DH参数等可以自动建立机器人每个连杆的连杆坐标系,减少了人工建模的工作量,降低了建模上给仿真带来的误差。
(2)本发明利用OCCT解析STEP格式的三维模型,可以从STEP文件中获取三维模型的几何信息。
(3)本发明针对通用4轴和6轴机器人,利用机器人学基础理论,自动建立机器人连杆坐标系,最后得到了机器人的仿真模型。
(4)本发明实现了从机器人装配体模型到仿真模型的自动生成,提高了机器人建模的效率,降低了建模误差。
附图说明
图1为本实施例ABB IRB1600型号的机器人装配体模型结构图;
图2为本实施例连杆坐标系都处于基座坐标系的机器人模型示意图;
图3为本实施例具有正确连杆坐标系的机器人仿真模型示意图;
图4为本实施例一种从机器人装配体模型到仿真模型的自动生成方法的流程图。
具体实施方式
下面结合附图和具体实施例对本发明的发明目的作进一步详细地描述,实施例不能在此一一赘述,但本发明的实施方式并不因此限定于以下实施例。
如图4所示的一种从机器人装配体模型到仿真模型的自动生成方法,包括如下步骤:
(1)、用三维建模软件将原(如Solidworks,UG等)始机器人装配体模型的所有零件按照各个连杆分块再装配成连杆子装配体模型(子装配体),并将这些连杆子装配体模型配成新的机器人装配体,用STEP格式保存新的机器人装配体;
本实施例采用以ABB IRB1600型号的工业机器人作为机器人装配体模型,机器人装配体模型如图1所示的六轴工业机器人,反映了机器人的装配方式,机器人由基座和连杆组成,该六轴工业机器人包括一个基座和六个连杆组成,基座和连杆均由若干个子零件构成,各个零件的坐标系都处于基座的原点处。
(2)、利用开源三维建模引擎OCCT(Open Cascade Technology)的数据交换模块(Extended Data Exchange),读取STEP格式的子装配体三维模型,将机器人装配体模型的各个连杆从整个装配体中分离出来,将机器人的各个连杆从整个装配体中分离出来;具体步骤如下:
Step1、利用OCCT数据交换文档类(classTDocStd_Document)实例化一个文档对象,用于存放三维模型的数据,包括标签和属性;利用STEP文件阅读器类(classSTEPCAFControl_Reader),实例化阅读器对象;
Step2、利用阅读器对象的读取文件函数(ReadFile)读取三维模型的STEP格式文件,利用阅读器的转换函数(Transfer)函数将读取到的三维模型的数据转化为文档对象;
Step3、利用文档图形工具类(classXCAFDoc_ShapeTool)实例化一个对文档进行访问的工具对象,利用该工具对象获取文档中的模型的装配体数据结构;
Step4、利用工具对象获取装配体的根节点的标签,利用文档子节点迭代器类(classTDF_ChildIterator)的迭代器对象对根节点下的一级子标签进行遍历,此时利用工具对象的获取图形函数(GetShape)获取当前子节点下的子装配体模型,用类拓扑图形(TopoDS_Shape)的对象来保存子装配体模型,并放入该对象的容器中;
Step5、迭代器对象遍历完整个三维模型的节点后,得到三维模型的所有子装配体,利用所有子装配体组成机器人的仿真模型,并用OCCT的格式保存为仿真模型。
(3)、根据齐次变换,修改各个连杆的坐标系,确定各连杆在世界坐标系下的位姿;
在如图2所示的机器人模型中,所有连杆坐标原点都位于基座模型的原点处,根据机器人的DH参数,求出各个连杆相对于基座坐标系的变换矩阵,然后将变换矩阵求逆,将各个连杆的局部坐标系原点变换到基座坐标系的原点处,坐标轴的方向以DH参数决定,最后由以下机器人正运动学方程,计算出各个连杆相对于基座坐标系的位姿。
式中:ai,θi,di为机器人相邻连杆的DH参数。本例中ABB IRB1600型号的工业机器人的DH参数见下表:
i | α<sub>i</sub> | a<sub>i</sub> | θ<sub>i</sub> | d |
1 | 0 | 0 | 0 | 486.5 |
2 | -90 | 150 | -90 | 0 |
3 | 0 | 700 | 0 | 0 |
4 | -90 | 110 | 180 | 678 |
5 | -90 | 0 | 0 | 0 |
6 | 90 | 0 | 0 | 0 |
由于步骤(2)得到机器人装配体模型的所有连杆其坐标系都处于世界坐标系下,需要利用齐次变换更正机器人装配体模型所有连杆的坐标系,具体如下:
设机器人的自由度DOF=N,基座的坐标系处于世界坐标系下,无需更正,要更正的是N个连杆的坐标系;设齐次变换矩阵Li和Ti分别代表连杆i+1相对于连杆i的变换、连杆i+1相对于连杆0的变换,i=0,1,2,…,N-1,Li和Ti的公式为:
Ti=Ti-1*Li(i=0,1,2,…,N-1) (1)
式中:ai,θi,di为机器人相邻连杆的DH参数。
利用上式求出Ti后,即得出每个连杆相对于基座(连杆0)坐标系的齐次变换矩阵,再对Ti求逆得到Ti -1,将变换矩阵Ti -1作为连杆i+1的坐标系。
将Li连乘后得到各连杆相对于基座坐标系的齐次变换矩阵,即可各连杆在基座坐标系下的位姿,最后得到如图3所示的机器人模型。以最后一个连杆为例,设表示最后一个连杆相对于基座坐标系的位姿,公式为:
(4)、根据机器人装配体模型的DH参数将各个连杆组合成新的仿真模型。通过改变各关节的角度,即改变机器人运动方程式中的θi,重新计算各个连杆的位姿,机器人的连杆将绕着该连杆坐标系的z轴转动或沿着z轴移动,从而实现了连杆之间的相对运动。
本发明的实施方式并不受上述实施例的限制,其他任何未背离本发明精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (6)
1.一种从机器人装配体模型到仿真模型的自动生成方法,其特征在于,包括如下步骤:
(1)、用三维建模软件将原始机器人装配体模型的所有零件按照各个连杆分块再装配成连杆子装配体模型,并将这些连杆子装配体模型配成新的机器人装配体,用STEP格式保存新的机器人装配体;
(2)、利用开源三维建模引擎(OCCT)的数据交换模块,读取STEP格式的子装配体三维模型,将机器人装配体模型的各个连杆从整个装配体中分离出来;
(3)、根据齐次变换修改各个连杆的坐标系,确定各连杆三维模型在世界坐标系下的位姿;
(4)、根据机器人的DH参数将各个连杆组合成仿真模型。
2.一种从机器人装配体模型到仿真模型的自动生成方法,其特征在于,所述机器人装配体模型包括四轴工业机器人模型和六轴工业机器人模型;四轴工业机器人模型包括一个基座和四个连杆,除基座外,机器人模型只有三个连杆,建模时将第三连杆视为无模型的移动轴;六轴工业机器人模型,包括一个基座和六个连杆。
3.如权利要求1所述一种从机器人装配体模型到仿真模型的自动生成方法,其特征在于:步骤(1)中的,在三维建模软件中将原始机器人装配体模型中属于机器人某一连杆的零件组成连杆子装配体模型,连杆子装配体模型表示为机器人的某一个连杆,然后将各个连杆子装配体模型配成新的机器人装配体模型,最后将整个机器人装配体模型保存成STEP格式文件。
4.如权利要求1所述一种从机器人装配体模型到仿真模型的自动生成方法,其特征在于:步骤(2)中利用OCCT中的数据交换模块,解析STEP格式的三维模型,将机器人装配体模型的连杆子装配体模型分离出来,用于组成机器人的仿真模型。
5.如权利要求4所述一种从机器人装配体模型到仿真模型的自动生成方法,其特征在于:所述将机器人装配体模型的连杆子装配体模型分离出来,具体步骤如下:
Step1、利用OCCT数据交换文档类实例化一个文档对象,用于存放三维模型的数据,包括标签和属性;利用STEP文件阅读器类,实例化阅读器对象;
Step2、利用阅读器对象的读取文件函数(ReadFile)读取三维模型的STEP格式文件,利用阅读器的Transfer函数将读取到的三维模型的数据转化为文档对象;
Step3、利用文档图形工具类实例化一个对文档进行访问的工具对象,利用该工具对象获取文档中的模型的装配体数据结构;
Step4、利用工具对象获取装配体的根节点的标签,利用文档子节点迭代器类的迭代器对象对根节点下的一级子标签进行遍历,此时利用工具对象的获取图形函数(GetShape)获取当前子节点下的子装配体模型,用类拓扑图形(TopoDS_Shape)的对象来保存子装配体模型,并放入该对象的容器中;
Step5、迭代器对象遍历完整个三维模型的节点后,得到三维模型的所有子装配体,利用所有子装配体组成机器人的仿真模型,并用OCCT的格式保存为仿真模型。
6.如权利要求1所述一种从机器人装配体模型到仿真模型的自动生成方法,其特征在于:在步骤(3)中,由于步骤(2)得到仿真模型的所有连杆坐标系都处于世界坐标系下,需要利用齐次变换更正仿真模型的所有连杆的坐标系,具体如下:
设机器人的自由度DOF=N,基座的坐标系处于世界坐标系下,无需更正,要更正的是N个连杆的坐标系;设齐次变换矩阵Li和Ti分别代表连杆i+1相对于连杆i的变换和连杆i+1相对于连杆0的变换,i=0,1,2,...,N-1,Li和Ti的公式为:
Ti=Ti-1*Li(i=0,1,2,...,N-1)
式中:ai,θi和di均为机器人第i+1个连杆与第i个连杆间的DH参数;
求出Ti后,即得出每个连杆相对于基座即连杆0的坐标系的齐次变换矩阵,再对Ti求逆得到Ti -1,将变换矩阵Ti -1作为连杆i+1的坐标系,即为连杆坐标系;
将Li连乘后得到各连杆相对于基座坐标系的齐次变换矩阵,即各连杆在基座坐标系下的位姿。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910732243.7A CN110555240B (zh) | 2019-08-09 | 2019-08-09 | 一种从机器人装配体模型到仿真模型的自动生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910732243.7A CN110555240B (zh) | 2019-08-09 | 2019-08-09 | 一种从机器人装配体模型到仿真模型的自动生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110555240A true CN110555240A (zh) | 2019-12-10 |
CN110555240B CN110555240B (zh) | 2022-11-18 |
Family
ID=68737189
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910732243.7A Active CN110555240B (zh) | 2019-08-09 | 2019-08-09 | 一种从机器人装配体模型到仿真模型的自动生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110555240B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113673008A (zh) * | 2021-07-20 | 2021-11-19 | 华南理工大学 | 基于occt的将step文件转换为零件-装配体数据结构的方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102818524A (zh) * | 2012-07-31 | 2012-12-12 | 华南理工大学 | 一种基于视觉测量的在线机器人参数校准方法 |
JP2015168043A (ja) * | 2014-03-10 | 2015-09-28 | ファナック株式会社 | ワークの取出工程をシミュレーションするロボットシミュレーション装置 |
CN105269565A (zh) * | 2015-10-30 | 2016-01-27 | 福建长江工业有限公司 | 一种六轴磨抛工业机器人离线编程及修正方法 |
JP2016013579A (ja) * | 2014-06-30 | 2016-01-28 | 株式会社安川電機 | ロボットシミュレータおよびロボットシミュレータのファイル生成方法 |
CN105302959A (zh) * | 2015-10-30 | 2016-02-03 | 福建长江工业有限公司 | 一种六轴磨抛工业机器人离线编程方法 |
CN106777432A (zh) * | 2015-11-24 | 2017-05-31 | 哈尔滨工大天才智能科技有限公司 | 一种新型的机器人行走机构的虚拟样机模型设计方法 |
JP2018134703A (ja) * | 2017-02-21 | 2018-08-30 | 株式会社安川電機 | ロボットシミュレータ、ロボットシステム及びシミュレーション方法 |
-
2019
- 2019-08-09 CN CN201910732243.7A patent/CN110555240B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102818524A (zh) * | 2012-07-31 | 2012-12-12 | 华南理工大学 | 一种基于视觉测量的在线机器人参数校准方法 |
JP2015168043A (ja) * | 2014-03-10 | 2015-09-28 | ファナック株式会社 | ワークの取出工程をシミュレーションするロボットシミュレーション装置 |
JP2016013579A (ja) * | 2014-06-30 | 2016-01-28 | 株式会社安川電機 | ロボットシミュレータおよびロボットシミュレータのファイル生成方法 |
CN105269565A (zh) * | 2015-10-30 | 2016-01-27 | 福建长江工业有限公司 | 一种六轴磨抛工业机器人离线编程及修正方法 |
CN105302959A (zh) * | 2015-10-30 | 2016-02-03 | 福建长江工业有限公司 | 一种六轴磨抛工业机器人离线编程方法 |
CN106777432A (zh) * | 2015-11-24 | 2017-05-31 | 哈尔滨工大天才智能科技有限公司 | 一种新型的机器人行走机构的虚拟样机模型设计方法 |
JP2018134703A (ja) * | 2017-02-21 | 2018-08-30 | 株式会社安川電機 | ロボットシミュレータ、ロボットシステム及びシミュレーション方法 |
Non-Patent Citations (2)
Title |
---|
王亚超;黄沿江;张宪民: "基于机器视觉和PSO的机器人示教路径优化研究", 《人工智能与机器人》 * |
陈祝权;梁晓合;林粤科;王念峰: "六自由度串联机器人结构设计及有限元分析优化", 《机床与液压》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113673008A (zh) * | 2021-07-20 | 2021-11-19 | 华南理工大学 | 基于occt的将step文件转换为零件-装配体数据结构的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110555240B (zh) | 2022-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113510690B (zh) | 四自由度串联机器人逆运动学求解方法和系统 | |
Yu et al. | A unified approach to type synthesis of both rigid and flexure parallel mechanisms | |
CN103085069A (zh) | 一种新型机器人运动学建模方法 | |
Valsamos et al. | Index based optimal anatomy of a metamorphic manipulator for a given task | |
CN111496783B (zh) | 一种6r工业机器人逆运动学求解方法 | |
CN110555240B (zh) | 一种从机器人装配体模型到仿真模型的自动生成方法 | |
CN115502984A (zh) | 六自由度机器人侧铣运动规划方法及系统 | |
CN111890363A (zh) | 一种基于快速自适应梯度神经网络算法的机械臂运动规划方法 | |
CN115179306A (zh) | 一种复杂木模工业机器人铣削及控制方法 | |
CN109366486B (zh) | 柔性机器人逆运动学求解方法、系统、设备、存储介质 | |
CN116872212A (zh) | 一种基于A-Star算法和改进人工势场法的双机械臂避障规划方法 | |
CN113878571A (zh) | 一种七自由度协作机器人构型优化综合方法 | |
Chervinskii et al. | Auto-Assembly: a framework for automated robotic assembly directly from CAD | |
Arrouk et al. | CAD based techniques for workspace analysis and representation of the 3CRS parallel manipulator | |
Tian et al. | Optimal placement of a two-link planar manipulator using a genetic algorithm | |
Li et al. | A real-time explicit mapping and teleoperation control method for humanoid robots with posture constraints | |
Shuhua et al. | Trajectory planning of 6-DOF manipulator based on combination function method | |
Zhang et al. | Trajectory planning of collaborative robot for 3c products assembly | |
Zhang et al. | Bi-RRT* based trajectory optimization and obstacle avoidance for a serial manipulator | |
CN116652972B (zh) | 基于双向贪心搜索算法的串联机器人末端轨迹规划方法 | |
Zobov et al. | Auto-Assembly: a framework for automated robotic assembly directly from CAD | |
CN111814269B (zh) | 一种基于res-sca算法的逆运动学实时解析解优化方法 | |
Jhang et al. | Development of CAE and CAD Sy1stem for Six-Axis Manipulator Control System | |
Kim et al. | Data-driven shoulder inverse kinematics | |
Dong et al. | A novel algorithm combined with single mapping workspace and Genetic Algorithm for solving inverse kinematic problem of redundant manipulators |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |