高速机器人的点动与直线运动

工业机器人中的点动和直线运动非常之重要,接下来说一下他们的实现过程。

点动:

点动包括两个部分,第一个点动是每一个关节电机的点动,第二个是机器末端向xyz的三个方向进行点动处理。

第一个点动是非常简单的,即把对控制关节的电机进行给入一步的运行即可。

第二个点动是需要对新的末端坐标(已知的)与初始位置的坐标进行求解总距离,之后利用末端新的位姿的xyz三个方向 减去 初始位姿xyz的坐标 并除以空间中的总距离,得到单位方向的矢量,之后利用T型的速度轨迹规划进行对机器末端点动进行规划。

具体的方法是:在得到机器末端的位姿时,通过机器逆解进行求解出相对应的关节移动状态和所需的时间,并且得到单位方向的矢量,比如x方向上的单位向量,后面只需要求出x方向上的行程,行程和相对性的单位方向矢量即可,之后利用每2ms进行不断给电机进行输入位置,速度,加速度等控制信息,此时运用了T形的速度轨迹规划,有加速运行和匀速运行和减速运行,注意一点是在加速运行的过程中要时刻观察两个节点:1,剩余距离是否满足减速运行的距离,2,加速度的速度是否到达最大速度。利用以上几个条件进行判断T形速度规划的加速,匀速和减速过程。直到2ms累加到所需要的时间时,结束运行。

同时还有Last_ms进行记录0-当前时间的所计算出的位移之和,这样做的目的是保证这次2ms的位移是在当前时间之前的总位移下在进行累加的。

直线运行:

直线运行的本质是 y = y + ms,但是单单的直线运行的位置,速度和加速度并不平滑,需要使用5次多项式等轨迹规划进行对位置,速度和加速度平滑处理,增大机器的性能,和稳定性。

首先知道了机器末端的目标端位姿,求出单位矢量,完后根据总时间(自己给定)和2ms的时间(系统设置)知道了总的步长,步数,完后根据五次多项式知道了每2ms(每步数)的运行位移,速度和加速度,之后利用 y = y + ms 等知道了,每一个差补点下的位姿等信息,进行利用机器逆解进行不断的计算让电机运行。从而实现了直线运行。

而最后加载到电机上的,是第一段算出的距离 + 第二段算出的距离,所相交的点,就是会运行到位的点。

多点的平滑处理:是利用不同时间段让电机进行运行所实现的功能。

相关推荐
zhbi985 小时前
RoboDK 自定义机器人
机器人
Tipriest_6 小时前
Pinocchio 库详解及其在足式机器人上的应用
机器人·动力学·足式机器人·运动学·pinocchio
zhuhit6 小时前
FASTDDS的安全设计
分布式·机器人·嵌入式
曹勖之16 小时前
基于ROS2,撰写python脚本,根据给定的舵-桨动力学模型实现动力学更新
开发语言·python·机器人·ros2
ABB自动化17 小时前
for AC500 PLCs 3ADR025003M9903的安全说明
服务器·安全·机器人
DFminer17 小时前
【LLM】fast-api 流式生成测试
人工智能·机器人
珂朵莉MM1 天前
2021 RoboCom 世界机器人开发者大赛-高职组(初赛)解题报告 | 珂学家
java·开发语言·人工智能·算法·职场和发展·机器人
遨博学院1 天前
机器人编程界面
机器人
曹勖之2 天前
在 UE5 蓝图中配置Actor类型的Asset以作为位置和旋转设置目标
ue5·机器人
曹勖之2 天前
UE 5 和simulink联合仿真,如果先在UE5这一端结束Play,过一段时间以后**Unreal Engine 5** 中会出现显存不足错误
matlab·ue5·机器人