发布时间: 2026-01-30
使用robodk建立可动夹爪配合机器人实现搬运的demo
1. 简介
①robodk是一种常见的第三方机器人仿真软件,可基于此软件验证机器人的可达性节拍等,本文出于学习目的主要讲解使用该软件建立可动夹爪配合机器人实现搬运的demo。
②robodk一般支持的数模类型:step,stl,sld。
2. 操作流程
2.1软件安装
robodk官网链接:Download RoboDK
或者百度搜索robodk认准官网打开,点击download:
根据使用平台确定所需下载文件,比如windows系统32位点位点击第一个文件下载即可,下载完成根据默认设置完成安装即可。
2.2软件注册
2.2.1许可证介绍:
| 免费版 | 许可版 |
功能限制 | 功能有限, 适合基础学习和简单项目 | 解锁全部功能, 包括高级仿真、后置处理器、 API 访问等。 |
使用期 | 无时间限制,但功能受限。 | 需购买许可证,通常按年订阅,到期后需续费。 |
商业用途 | 仅限非商业用途,如教育或个人学习。 | 可用于商业项目,适合企业或专业开发者。 |
技术支持 | 不提供官方技术支持。 | 提供优先技术支持,帮助解决技术问题。 |
更新与维护 | 可获取基础更新,但可能无法使用最新功能。 | 享受所有更新和新功能,保持软件最新。 |
自定义与扩展 | 自定义选项有限,无法使用高级 API 功能。 | 支持深度自定义,允许通过 API 进行高级编程和集成。 |
后置处理器 | 仿真功能有限,无法进行高级优化。 | 支持高级仿真和优化,如碰撞检测、路径优化等。 |
导出与集成 | 导出选项有限,无法与外部系统深度集成。 | 支持多种导出格式,并能与外部系统集成,如 PLC、CAD/CAM 等。 |
2.2.2许可证激活
打开软件,点击帮助--许可证,输入许可证点击激活
(许可证请联系robodk官方人员获取)
2.3建立基本仿真模型
简介:
由于robodk不能直接进行零件绘制,所以需要其它绘图软件绘制模型导入robodk使用,并且各种绘图软件生成数模原始位置不一,如果直接打开或者装配到机器人上可能会出现安装位置错乱的情况(建议绘制夹爪如sw在基准面原点绘制),如图下图A建立一个工作站,将夹爪工具数模匹配到机器人上(图B),并不会按照预想直接安装在机器人法兰,且夹爪的tcp也不是我们需要的。
(出于演示使用,并不添加机器人法兰和夹爪连接件)
下文将讲解如何使工具恰好安装再机器人法兰末端且建立我们需要的TOOL CENTER POINT.
2.3.1编辑机器人手爪
2.3.1.1安装位置和方向定义
如sw导出的完整装配体(夹爪),我们使用robodk打开如下图,可见不是我们需要的,如果直接安装到机器人上会出现上图B的情况。
我们需要使用测量工具,点击工具--测量,再选中工具模型的安装中心点,会出来点mm(当前点基于工站默认坐标系的坐标)和空间向量ijk
(由于零件表面线性精度问题建议选取下图红色框里的数据如:点[280.3,300.6,259.9],轴[0.4,0,0.9])
双击零件出现下图相对位置和移动几何,在移动几何里面先输入上图点的取反即[-280.3,-300.6,-259.9]
输入完成点击执行移动,我们所需的工具安装原点即与工站默认坐标系原点对其,下面考虑姿态的设置。
robodk中轴(IJK)的意义:
①i, j, k 是单位方向向量的三个分量,分别对应 X, Y, Z 轴的方向。
②它们表示工具或坐标系相对于参考坐标系(如机器人基坐标系或工件坐标系)的方向。
③i, j, k的值范围在 [-1, 1]之间,且满足 ( i^2 + j^2 + k^2 = 1 ),表示这是一个单位向量。
上述中得知空间向量ijk为[0.4,0,0.9],下面转化成我们需要欧拉角:
1. 确认向量是单位向量
首先检查向量是否为单位向量:
0.42+02+0.92=0.16+0+0.81=0.97由于向量的模长不为 1,说明向量未归一化(由于上图取舍)。
我们需要先归一化向量:
vnormalized=(0.4/0.985,0/0.985,0.9/0.985)≈(0.406,0,0.914)
2. 计算欧拉角
XYZ 欧拉角的旋转顺序为:
1. 绕 X 轴旋转 ϕ(滚转角),
2. 绕 Y 轴旋转 θ(俯仰角),
3. 绕 Z 轴旋转 ψ(偏航角)。
根据归一化后的向量 v=(0.406,0,0.914),我们可以通过以下公式计算欧拉角:
俯仰角 θ :
俯仰角 θ 可以通过向量的 Z 分量计算:
θ=arcsin(z)=arcsin(0.914)≈66.1∘
滚转角 ϕ :
滚转角 ϕ 可以通过向量的 X 和 Y 分量计算:
ϕ=arctan2(y,x)=arctan2(0,0.406)=0∘
偏航角 ψ
偏航角 ψ 通常需要额外的信息来确定,因为仅凭一个向量无法唯一确定偏航角。
假设偏航角 ψ=0∘,则欧拉角为:
(ϕ,θ,ψ)≈(0∘,66.1∘,0∘)
图示:
我们需要夹爪对其Z轴,则需要再将夹爪顺时针旋转90°-66.1°=23.9°
输入:-23.9(右手定则顺时针为负)
可见零件垂直于xy平面
为了定义夹爪的开合方向,我们需要对其所需XY轴,使用测量工具测量一个标记点,可见XY为(39.7,22.5)
角度a=arctan(22.5/39.7)≈30∘
输入:-30,点击执行移动(右手定则顺时针为负),可见零件的位置变成了我们需要的,下面的物体便可直接装在机器人末端
2.3.1.2可活动夹爪构建
确定物体相对于工站默认坐标系的位置都是0
右击物体选择分离物体
合并所需要部分(一般分为基座,手指1,手指2),并且转化为对象
点击实用程序--模型机构或机器人,配置完成点击跟新,关于TCP位置和夹爪开合大小可以使用测量工具测量
如图即可建立一个可动的平行夹爪
2.4实现标准搬运demo
2.4.1 导入搬运的零件和机器人
点击左上角添加模型,点击坐标系或者物体可以调节物体的位置
例:双子BOX可以设置箱子相对于默认坐标系的位置,即实现移动
2.4.2 机器人点位记录
点击机器人,右侧面板可以控制机器人进行关节运动和笛卡尔坐标系下的运动,调节到合适位置,点击下图记录点位
记录好机器人的四个点位,并重命名:
2.4.3 夹爪点位记录
注意选择正确的关联机器人类型,程序也同样需要注意
2.4.4 整体测试
①复位所搬运的物体
由于机器人取放物体后物体的位置变化了,所以我们需要保存当前物体位置(绝对),即每次运行该指令,物体都会会回到初始位置:
程序中的指令:
②物体附着于夹爪:
需要重新导入夹爪模型放置到机器人上面(不能是机构否则无法进行下述附着,设置不可见即可)
指令:
③物体分离于夹爪:
指令:
④新建程序:
先选择点位,再点击移动指令,即插入程序中
(如果设计到多个机器人或机构的移动需特别注意,注意程序需要指定机器人,并用子程序调用)
设置完成即可运行程序(可查看附件示例程序)
3. 常见问题解答
3.1 建议加载模型大小不超过100M否则可能打不开
3.2使用多机构或多机器人在程序和点位里需要指定机器人,否则记录的点位不准确,点位(机器人或者机构)的记录一定要注意指定的机器人,如果默认不是自己想要的,切换后一定要重新示教当前位置,然后再考虑关节角或者笛卡尔坐标。
3.3robodk没有类似SW装配体中的约束配合,模型位置都是记录在坐标数据下的,对于夹爪安装方向的定义建议绘图软件中考虑降低操作复杂度。
3.4 由于理论模型和实际的误差等因素,仿真仅供参考,具体以实际为准。
3.5本文所使用的软件版本为:V 5.6.7