学生休息室

分享学生如何在日常项目中使用MATLAB和Simulink的技术和现实例子#学生成功#金宝app

机器人机械手的重量感知

在今天的帖子中, 何塞阿根廷 与我们一起讨论一种专门为机器人操纵者开发的感知算法,以确定所抓物体的重量。交给你了,何塞。
机器手,更正式的说法是机器人机械手,是机器人领域的一个活跃研究领域。在这篇博客中,我们将介绍一种专门为机器人操纵者开发的感知算法,以确定所抓物体的重量。一般来说,机器人所处环境的信息越多,算法就会越通用、越健壮。这项研究目前发表在附带的文件是由Bio-robotics实验室国立大学Autónoma de México。在这篇博客中,我们将简要介绍研究的技术方面,以及如何在任何机器人项目中使用这些算法。

灵感(服务机器人)

这个权重估计系统的灵感来自于一个联盟“机器人足球世界杯”竞争.参加比赛的家政服务机器人的任务是寻找家居用品,并从多个地点取回它们。然而,有些物体,比如罐头,可能看起来一样,但实际上是不同的,它们可能是空的!这是人类在捡起它们后很容易确定的事情,但是机器人需要帮助学习如何识别常见物体的这些不同状态。知道一个物体的重量将补充感知算法,否则可能只是基于视觉输入.然而,权重估计的研究并不仅仅适用于服务机器人。类似的算法对于任何自主系统应用,如人机交互、制造业、建筑、医疗设备和军事应用,都具有同样的价值。
Perception.PNG

现有传感器的新见解

在这一点上,你可能会问自己,如果你真的需要知道机器人抓住的东西的重量,为什么不给你的机器人加一个负载传感器呢?(就像你浴室秤上的那些)。
你可以。但这项研究的重点是证明你不需要为你的机器人添加更多的设备或复杂性。相反,你可以使用来自机器人关节的现有信息,以及一些数学运算,来获得几乎相同的结果。再简化一下,如果你知道你的机器人组件的重量,你应该能够教会机器人如何量化它所携带的多余重量。
以下是实现这个虚拟传感器所需要的:
  • 机器人参数(机器人部件的几何形状、质量和惯性)
  • 关节传感器信息(每个机器人关节的扭矩和位置)
Manipulator_geometry.PNG

实现

在这里,算法的解释变得更加复杂。为了找到系统中的故障(误差),它与多余的权重成正比,我们首先必须计算系统在给定配置下的预期状态。然后根据保持机械手构型的期望力矩,计算出物体对机械手关节施加的力矩。为了使所有这些都具有鲁棒性,有必要使用最优状态估计方法。在该实现中,利用机械臂的参数合成滑模观测器,重构必要的扰动项。如果你对数学是如何推导的感兴趣,你可以参考出版.简而言之,滑模观测器是需要系统模型来预测系统输出的估计器,然后它们将这些预测与测量值进行比较以纠正估计。通常,这些模型将在状态空间表示中导出,但为了使算法更可重用文件发布都是使用刚体树特征.MATLABRBT对象封装了机器人的参数,使常见的运动学和动力学算法和实用程序得以实现。完整的系统最终是一个滑模观测器、一个低通滤波器和使用机器人几何结构检测的误差转换的组合,如下面的Simulink模型所示。金宝app
SL_System.PNG

建模与仿真

该算法最初是通过模拟开发的,然后在真正的机器人上进行测试。为此,将机器人结构导入Simscape多体能够模拟机器人组件之间的物理和相互作用。所述模拟植物允许通过使用可变质量分量离散地分配被抓物体的额外重量。使用该仿真,算法设计者可以评估估计的性能参数,如精度、设置时间,甚至通过分配误差源(如传感器量化)来测试鲁棒性。为了测试目的,模拟堆栈还具有机器人关节控制器。根据算法适用的用例和机器人,可以通过使用理想的执行器绕过关节控制器子系统进行仿真,或者可以集成来自其他来源(如专用ROS节点)的自定义控制器。在实现这个重量估计器时必须记住的一件事是,它依赖于设置从抓取位置到运动链上的第一个关节的精确距离测量。这意味着重量估计精度取决于机器人在距离关节的指定距离内始终如一地抓取物体。
MassEstimationGif.gif

用途和可重用性

这项研究合作的一个组成部分是为机器人社区提供一个可重复使用的包。通过将机器人描述导入MATLAB,该算法可以调整为与任何机械手一起工作。这可以通过导入现有的URDF文件或直接创建刚体树对象.然后需要选取离末端执行器最近的关节,其旋转轴垂直于重力矢量。有了这些信息和更新后的刚体树,该算法可以在新的机器人平台上进行测试可以生成ROS节点为了将权重估计集成到复杂的机器人系统中。我们希望你觉得这篇研究综述有用,如果你有兴趣了解更多,演示文件是否可随出版

|
  • 打印
  • 发送电子邮件

评论

如欲留言,请点击在这里登录您的MathWorks帐户或创建一个新帐户。