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

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

点动:

点动包括两个部分,第一个点动是每一个关节电机的点动,第二个是机器末端向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 等知道了,每一个差补点下的位姿等信息,进行利用机器逆解进行不断的计算让电机运行。从而实现了直线运行。

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

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

相关推荐
zzzzzz3105 天前
假如我是掘金管理员,我先给评论区装个'代码审查'系统
python·程序员·机器人
通信小呆呆5 天前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
生成论实验室5 天前
机器人:一个自主运动的系统
人工智能·算法·语言模型·机器人·自动驾驶·agi·安全架构
Dick5076 天前
ROS2 常用命令表
人工智能·学习·算法·机器人
沫儿笙6 天前
川崎机器人二保焊节气设备
人工智能·机器人
C++ 老炮儿的技术栈6 天前
Qt工控实战:自研机器人TCP长连接客户端(粘包处理+心跳保活+自动重连完整源码解析)
qt·tcp/ip·机器人
Deepoch6 天前
VLA多模态架构加持 采摘机器人实现精细化智能采收
人工智能·机器人·开发板·具身模型·deepoc·采摘
选与握6 天前
$\pi_{0.7}$: 一个具备涌现能力的可引导的通用机器人基础模型
机器人·vla·pi07
梦想的旅途26 天前
企业微信外部群自动化:一期交付应聚焦双向会话闭环
java·开发语言·机器人·自动化·maven·企业微信