找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫码登录

搜索
查看: 9400|回复: 12

[原创] 6轴工业机器人运动仿真之装配序列

[复制链接]

115

主题

144

回帖

1万

积分

大校

积分
16426
发表于 2020-3-1 08:57:38 | 显示全部楼层 |阅读模式
近几日有论坛的朋友问我早些时候做的6轴工业机器人仿真的问题,虽然我在论坛里面也讲了仿真的思路,但一些朋友可能还是没有搞明白,原先的模型太抽象,所以重新绘制了6轴机器人的模型,并给大家分享一下用装配序列完成这类仿真的做法,起一个抛砖引玉的作用。
本篇所绘制的6轴机器人模型参考原型为图1(网络图),使用软件版本UG10.0。因为是通过装配序列做仿真动画,所以6轴机器人需要以装配体的形式存在,本案例的思路是在一个文件里绘制完整的6轴机器人模型,并按6自由度分割成7部分,分别另存为单独的零件文件,每一部分都只显示所需的装配部件,而将其它分割部分隐藏到实体图层。将基座部分的模型零件作为装配体文件,而将其余6个零件作为组件插入到装配体文件中。
timg-2.jpg

图1建模参考图
为了简化建模,在草图中绘制图2所示草图(随便给的尺寸),然后用管道命令,得到一个弓形的管道,得到6轴机器人的雏形,再次建立草图,如图3所示,该曲线是为了分割前面的到模型,从而得到我们所需的6轴机器人的各个部分,分割后对个别多分割的部件做并集合操作,对各个部件分割边缘进行倒角,方便仿真的时候进行观察,如图4所示。
6轴机器人草图.gif
图2 建模草图
6轴机器人草图分割曲线.gif
图3 分割曲线
6轴机器人模型.gif
图4 分割后的各个部件
至此我们就得到了6轴机器人所需的7部分零件,将该文件另存为7个文件,本案例将6轴机器人底座部分命名为robot,并作为装配体文件使用,其余6部分分别代表一个自由度的部件,按序号命名为f1,f2,……f6。每个文件都只保留各自自由度部分,将其它部分隐藏至不可见图层。
打开底座robot文件,将机器人其余6部分组件添加到文件中,然后分别对每两个部件间添加装配约束。每个回转自由度需要添加两个约束,即接触对齐(自动判断中心/轴)和接触对齐(接触)。添加这两个约束后,该关节处的自由度为1,同理添加其它关节各处,会得到一个6自由度(均为旋转副)的工业机器人装配体。
通过移动组件命令,将机器人调整成图5所示的姿态,编辑执行端组件,添加图5所示的示意卡盘(抓物体用)。新建一个与卡盘尺寸相配的块组件(代表物体)并添加到装配体中,位置随机(机器人可及范围内)。
6轴机器人模型1.gif
图5 6轴机器人和块物体
接下来就要进入到装配序列动画部分,点击序列命令,新建序列,插入运动,会弹出录制组件运动的浮动工具栏,如图6所示。
录制组件运动工具栏.gif
图6 录制组件运动的浮动工具栏
对6轴机器人的仿真动画都是通过这个工具栏完成的,这里有一个很关键的操作就是要不断的根据需要调整坐标轴的中心,并通过拖拽坐标系达到控制机器人运动到所需的位置。选择一个组件后,工具栏第2 & 3图标高亮显示并可用,其分别代表移动对象和仅移动手柄。选定组件点击第2或3工具图标,会出现一个默认位置的坐标系,如图7所示,选定第2图标情况下,选中组件的所有运动都依该坐标系所在位置为基准进行,平移时,坐标系依附于被选组件一起平移,执行旋转操作时,所选组件的回转中心为该坐标系的原点。选定第3图标的情况下,坐标系移动,而被选组件不动,这样就方便我们根据需要调整坐标系的姿态。
step1.gif
图7 选定组件后的默认坐标系位置
假如要执行端的卡盘面平行于地面,仅需要旋转执行端后第二个关节,其回转轴平行于默认坐标系的X轴(绝对坐标系的Y轴),选图标3,点击坐标的原点,并捕捉到第二关节的圆心上面,然后在点击图标2,拖动坐标的角度,将执行端的卡盘旋转到所需的位置如图8所示。
step2.gif
图8 调整坐标系并调整机器人姿态
接下来的动作是要将卡盘移动到块的正上方,切换至俯视图,借助分析选项卡的测量角度工具,测量卡盘与块的夹角,如图9所示。这里我们分3步完成上述动作:
  • 用上述调整坐标系的方法,将坐标系的原点先移动至执行端的中心,然后旋转执行端,使得执行端与块的边平行,见图10。
  • 测量此时卡盘与块沿X向量的相对位移量,并将卡盘沿坐标系X向量移动所测的位移量;
  • 测量卡盘与块沿Y向量的相对位移量,并将卡盘沿坐标系Y向量移动所测位移量,见图11。

step3.gif
图9 测量相对转动的角度
step4.gif
图10 调整坐标系原点,并旋转卡盘
step5.gif
图11 测量卡盘与块沿X轴和Y轴分量的相对位移量
切换至主视图,同样的操作方法,先测量卡盘和块间的距离,然后将卡盘移动至块的上面,如图12所示。
step6.gif
图12 移动卡盘至块贴合面
接下来,我们需要完成抓取块,并整体移动至所需要的位置,同时选取卡盘和块即完成抓取,此后对物体的运动的操作都是两者一起完成,输送到目的后,再取消块的选择即完成放置动作。仿真动图如图13所示。
6轴机器人仿真1.gif
图13 装配序列仿真动图
以上的操作可以归结为三个主要步骤:
  • 调整坐标系原点;
  • 测量要移动的位移量;
  • 移动(旋转)选定组件。

以上就是使用装配序列制作仿真动画的基本步骤。
源文件链接:6轴机器人序列仿真  密码:m84i

评分

参与人数 3G币 +31 元宝 +1 收起 理由
沉默的酸牛奶 + 3 用简单的办法,实现困难的事情
whinnyjia + 3 楼主是大神!膜拜!
3D世界网-零 + 25 + 1 原创加分!

查看全部评分

4

主题

23

回帖

3361

积分

中尉

积分
3361

VIP会员

发表于 2020-3-1 20:20:36 | 显示全部楼层
厉害,请问你做这个用的哪种函数step,poly还是AFU里面自建函数

1

主题

1022

回帖

9029

积分

少校

积分
9029
发表于 2020-3-1 20:42:59 | 显示全部楼层
我也喜欢运动仿真 但是仅限于喜欢

0

主题

4965

回帖

3万

积分

上将

积分
32116
发表于 2020-3-1 21:53:26 | 显示全部楼层
谢谢楼主分享

53

主题

376

回帖

5340

积分

上尉

积分
5340
发表于 2020-3-1 23:24:29 | 显示全部楼层
牛啊!!!太历害了!!!

32

主题

354

回帖

5625

积分

上尉

积分
5625
发表于 2020-3-2 17:06:28 | 显示全部楼层
淡水河谷53 发表于 2020-3-1 20:20
厉害,请问你做这个用的哪种函数step,poly还是AFU里面自建函数

哥你想多了,用以上函数、表格函数确实能做,也能完成的很好,但楼主这个拿装配序列做的,没有复合运动(既转又移动),不用编函数了,简单一些。

4

主题

68

回帖

2430

积分

少尉

积分
2430
发表于 2020-3-4 12:30:57 | 显示全部楼层
真厉害,新手表示很羡慕

0

主题

17

回帖

313

积分

二级士官

积分
313
发表于 2020-3-4 22:00:51 | 显示全部楼层
这个用mcd来做很快就做好了!

5

主题

1050

回帖

1万

积分

少将

积分
19802
发表于 2020-3-24 10:48:33 | 显示全部楼层
支持一下

2

主题

28

回帖

2769

积分

少尉

积分
2769
发表于 2023-6-25 16:03:19 | 显示全部楼层
感觉太难了,不知从何开始学习
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

咨询QQ:1359218528|发帖须知!|Archiver|手机版|小黑屋|UG爱好者论坛 ( 京ICP备10217105号-2 )

GMT+8, 2024-12-23 08:47

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表