学生休息室

分享技术和现实生活的例子,学生可以如何使用MATLAB和Simulink在他们的日常项目#学生成功万博1manbetx

步行机器人建模与仿真

在这篇文章中,我将讨论使用Simulink®、Simscape进行机器人建模和仿真™, 和Simscape多体™. 把事情的来龙万博1manbetx去脉说清楚,我会的你可以通过一个步行机器人的例子(明白吗?)。

动机

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

  • 安全:机器人会倒下。原型将被破坏。在转移到硬件之前,您可以验证控制算法在模拟中处于良好的起点。通过模拟,您可以在多种场景下测试机器人和控制器设计,而无需构建原型。在模拟中,您还可以获得故意生成不安全条件以及发现意外问题的好处。
  • 效率:物理实验需要花费时间和精力在两次运行之间进行设置和重置。通过模拟,您可以获得一个编程环境来自动化实验并离开办公桌。如果您的机器人由嵌入式系统控制,那么模拟可以让您测试算法更改,而无需每次在硬件上移植和重建代码。这种算法和实现的分离还可以帮助您确定新问题是由于算法更改还是物理限制造成的。

机器人仿真组件

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

机器人力学

Simscape多体用于为机器人的三维刚体力学建模。有两种方法可以做到这一点。

  • 从头开始构建:从头开始构建模型可能需要一些初始时间。但是,如果设置正确,则可以轻松更改特性,例如尺寸、横截面、体量等。如果仍处于概念设计阶段,则在浏览不同参数并验证设计时,这会很有用。
  • 从CAD导入:如果您已经创建了机器人模型,并且希望使用更真实的几何和惯性特性来模拟其动力学,则此功能非常有用。只要CAD模型的运动学保持不变,就可以在CAD中进行更改并将参数重新导入模型。有关更多信息,请查看我们的关于导入CAD部件的博客文章

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

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

执行器动力学与控制

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

  • 致动器控制:通过在Simscape中为执行器模型指定运动,可以首先执行执行器大小调整。这使您能够确定执行器按要求运行所需的功率(例如,电动执行器的电流、扭矩等)。一旦有了执行器模型,就可以使用Simulink设计控制器,并在部署控制器之前在仿真中对其进行测试。万博1manbetx

  • 执行器动力学:你可以用Simscape建立更详细的致动器模型。这允许您将机器人的三维机械运动连接到其他物理域,例如,机器人的电气域马达或流体域活塞执行器

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

  • 运动规划任务可能需要分钟而电机控制响应的顺序为毫秒
  • 要测试运动规划器,可以假设低级执行器正常工作;对于电子设计,您可能需要深入研究致动器电流瞬变,以确保单个组件不会发生故障。

理想情况下,您希望为不同比例的仿真提供可重用和可配置的模型组件。Simulink通过建模功能(如万博1manbetx变体,块库,模型参考

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

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

运动规划

运动规划可以是一个很好的方法开环闭环活动

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

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

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

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

闭环运动控制器需要通过传感器获得有关环境的信息。腿部机器人的常见传感器包括关节位置/速度传感器、加速计/陀螺仪、力/压力传感器、摄像头和距离传感器。然后,可以使用基于模型的方法确定总体控制策略,如内部模型控制,或使用机器学习技术,如强化学习

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

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

结论

现在,您已经了解了模拟如何帮助您设计和控制腿部机器人。

想了解更多信息,请观看上面的视频并阅读我们的下一篇关于步行机器人控制的博文. 您可以从文件交换github.你也可以找到四条腿的运行机器人示例在文件交换上。

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

-塞巴斯蒂安

|

评论

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