学生休息室

分享学生如何在日常项目中使用MATLAB和Simulink的技术和现实例子#studentsuccess万博1manbetx

行走机器人建模和仿真

在此帖子中,我将讨论使用Simulink®,Simscape™和Simscape Multibody™的机器人建模和仿真。万博1manbetx把事情放在上下文中,我会步行你通过行走机器人榜样(得到它?)。

动机

首先...为什么模拟?我已经将福利分为两类。

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

机器人仿真组件

我们现在将查看典型的机器人仿真架构,由多个图层组成。根据您的目标,您可能只需要实现这些模拟的子集。

机器人力学

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

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

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

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

执行器动力学和控制

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

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

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

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

  • 运动规划任务可能需要会议记录模拟,而电机控制响应可以按顺序排列毫秒
  • 要测试运动计划者,您可以假设低级执行器只是工作;对于电子设计,您可能需要一直挖掘执行器电流瞬态,以确保各个组件不会失败。

理想情况下,您希望为不同的尺度模拟具有可重复使用和可配置的模型组件。万博1manbetxSimulink促进了它的建模功能,如变体块库,及模型引用

要了解如何使用行走机器人执行器模型完成,请观看下面的视频。

[短片]行走机器人的建模与仿真

运动规划

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

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

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

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

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

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

下面的视频显示了如何重复模拟模型并收集结果,以优化行走机器人的开环轨迹。批量运行模拟可以类似地帮助您使用优化和机器学习执行调谐控制器或运动规划算法等任务。

[短片]优化行走机器人轨迹

结论

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

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

你在研究腿部机器人运动吗?我们很想听到你的消息。

- 塞巴斯蒂安

|

评论

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