赛车休息室

学生竞赛的最佳实践和团队合作

行走机器人建模和仿真

在这篇文章中,我将讨论用Simulink®,Simscape™和Simscape Multibody™进行机器人建模和仿真。金宝app为了便于理解,我会的你通过行走机器人榜样(得到它?)。

动机

首先,为什么要模拟?我把好处分成两类。

  • 安全:机器人将会下降。原型将打破。在转向硬件之前,您可以验证控制算法在模拟中处于一个良好的起点。模拟可以让您在不构建原型的情况下在多个场景下测试机器人和控制器设计。在模拟中,您还可以有意地生成不安全的条件,以及发现意想不到的问题。
  • 效率:物理实验需要时间和精力来在运行之间设置和重置。通过仿真,您可以获得一个程序化环境,以自动化实验并远离您的办公桌。如果您的机器人由嵌入式系统控制,则仿真允许您测试算法更改,而无需端口并每次重建硬件上的代码。这种算法和实现的分离也可以帮助您确定新问题是否是由于算法的变化或物理限制。

机器人仿真组件

我们现在来看一个典型的机器人模拟体系结构,它由多个层组成。根据您的目标,您可能只需要为模拟实现其中的一个子集。

机器人力学

simscape multibody.让您为机器人的3D刚性体制力学进行模拟。有两种方法可以做到这一点。

  • 从头构建:从头开始构建模型可能需要一些初始时间。然而,如果设置正确,您可以轻松地更改属性,如尺寸、截面、质量等。如果您仍处于概念设计阶段,这将有助于您梳理不同的参数并验证设计。
  • 从CAD进口:如果您已经创建了机器人模型并希望使用更现实的几何和惯性属性模拟其动态,有用。只要CAD模型的运动学保持不变,您可以在CAD中进行更改并将参数重新通存到您的模型中。有关更多信息,请查看我们的在进口CAD组件上的博客帖子

无论您如何创建机器人模型,下一步都是向它添加动力学。

  • 内部力学:模型中的每个关节块(平移或旋转)都可以指定机械刚度、阻尼和初始条件。
  • 外部力学:首先,你可以设定重力的方向和大小。同样重要的是,对于有腿的机器人,你需要建立与地面接触的模型。从R2019b开始,您可以使用空间接触力块在Simsceive Multibody中。但是,在以前的版本中,您可以使用Simscape Multibody联系Forces库上的文件交换

作动器动力学与控制

如前面的仿真结构图所示,执行器是算法和模型(或机器人)之间的“粘合剂”。执行器建模包括两个部分:一个在控制器侧,一个在机器人侧。

  • 致动器控制:通过对Simscape中的执行器模型进行规定,可以首先执行执行器尺寸。这使您可以根据需要确定执行器所需的电源(例如,电动致动器的电流,扭矩等)。有一个执行器模型,可以使用Simulink设计控制器并在部署之前在仿真中测试。金宝app

  • 执行机构动力学:您可以使用Simscape构建更详细的执行器模型。这允许您将机器人的3D机械运动连接到其他物理域 - 例如,电气域电机或者流体域活塞执行器

不同的设计任务可能需要不同的模型细节。基于此,模拟速度可能比实时速度快得多,也可能比实时速度慢得多,这是一个重要的权衡。让我们来看下面的例子。假设你正在设计一个机器人,它既有一个高级运动规划算法,又有一个具有高频脉宽调制(PWM)的低级电子电机控制器。

  • 运动规划任务可能需要分钟,而电机控制响应的顺序可能是毫秒
  • 为了测试运动规划器,你可以假设底层驱动器正常工作;对于电子设计,您可能需要挖掘所有的致动器电流瞬变,以确保个别组件不会出现故障。

理想情况下,您希望具有可重用和可配置的模型组件,以用于不同规模的模拟。金宝appSimulink通过诸如变体块库,模型参考

要了解如何使用步行机器人执行器模型来实现这一点,请观看下面的视频。

(视频)步行机器人建模与仿真

运动规划

运动规划可以是一个开环闭环活动。

您可以阅读更多关于我们的行走机器人的运动规划和控制下一个博客文章.在这个例子中,我们已经设计了一个初始开环行走模式,使我们的模拟机器人稳定行走。为了进一步改进这种步行模式,您可以添加用于稳定性和/或参考跟踪的闭环组件,或者使用优化等技术来细化步行模式。

优化工具在机器人建模和仿真的许多方面都很有用,例如

  • 机器人设计:确定最佳的几何形状(尺寸、位置、截面等)或动力学(质量/刚度/阻尼,或电气或流体执行器中的等效物)。例如,请参见估计直流电动机的参数
  • 控制设计:调整控制增益、阈值、速率限制等,以满足性能和安全要求。例如,请参见优化系统性能:直流电机
  • 运动规划:找到满足总体规划目标的动作输入序列。下面的动画和视频显示了这种方法遗传算法用于优化机器人的行走轨迹。

通过优化设计开环运动轮廓可能是一个良好的开端,但这可能不适应物理参数、地形或其他外部干扰的变化。理论上,您可以使用优化和模拟来针对覆盖您在现实世界中预期的所有挑战的场景进行测试。在实践中,一个闭环系统——或者一个可以对环境做出反应的系统——更适合处理这些挑战。

闭环运动控制器需要通过传感器提供有关环境的信息。腿机器人的普通传感器包括接头位置/速度传感器,加速度计/陀螺仪,力/压力传感器,摄像机和范围传感器。然后可以使用基于模型的方法来确定整体控制策略内模控制,或使用机器学习技术强化学习

下面的视频展示了如何重复模拟一个模型并收集结果来优化步行机器人的开环轨迹。批量运行模拟同样可以帮助您执行任务,如使用优化和机器学习调整控制器或运动规划算法。

(视频)机器人行走轨迹优化

结论

现在你已经看到了模拟如何帮助你设计和控制一个有腿的机器人。

想了解更多信息,请观看上面的视频并阅读我们的下一个博客帖子在行走机器人控制上.您可以从中下载示例文件文件交换GitHub..你也可以找到四条腿的运行机器人示例文件交换。

你在研究有腿的机器人运动吗?我们很想听听你的意见。

- 塞巴斯蒂安

|

评论

要发表评论,请点击在这里登录您的MathWorks帐户或创建新的。