学生休息室

分享学生如何在日常项目中使用Matlab和Simulink的技术和现实生活示例#studentsuccess金宝app

行走机器人控制:从PID到加固学习

在一个上一篇博文,我描述了建模并以高级别讨论对您如何实现控制器,一旦构建了模型。

在这篇文章中,我们将挖掘控制的细节。我们将描述人形机器人可以控制的不同方式,以及何时以及您应该使用不同的策略。虽然概念扩展到许多类型的系统,但我们将专注于我们的例子的双层人形机器人的运动。

基于模型的方法-控制设计

控制工程是一个非常成熟的领域,其技术已成功部署在许多BipeDal机器人上。一些最着名的包括本田Asimo(最近在2018年退休)和波士顿动态地图集.

与大多数控制设计方法一样,用于创建成功控制器的核心是数学模型。模型通常具有相互矛盾的要求,即它必须是

  • 简单地足以应用PID,LQR和MPC等知名控制设计技术。
  • 复杂到足以真实地近似真实的机器人行为,因此控制器在实际中工作。

有了这些信息,维护这两个简单的低保真度模型用于控制器设计和复杂高保真模型用于模拟和测试。

用于腿机器人的常见低保性模型是线性倒立摆模型(Lipm),由诸如Tomomichi Sugihara博士的领域中广泛使用。请参见此处以获取他的出版物之一.

对于一个有腿的机器人,如着名Raibert Hopper.,模拟接触阶段(当脚在地上时,并且假定被固定)和飞行阶段(当脚离开地面时)是很重要的。对于诸如Biped的多腿机器人,一种方法是假设机器人总是在地上一只脚,因此系统总是被建模为唇膏。对比这与诸如跑步的更多动态行为,其中你可能有两个脚在地面上的阶段 - 这导致运动更快,但更复杂的控制。所以我们现在假设我们总是有一只脚接触。

要了解有关Lipm方法的更多信息,请观看我们的基于模型的仿人步行控制视频

另一个需要了解的重要概念是零时刻点(ZMP). 这被定义为接触点,在该接触点上,由于重力产生的力矩与由于与地面接触产生的力矩完全平衡,从而使摆锤系统稳定。

一种控制行走机器人的典型方式,所以它是稳定的,那么,是为了确保ZMP在内部金宝app支持多边形机器人 - 也就是说,质心的中心是机器人静稳定的范围。只要机器人在支持多边形内采取台面,步进运动就是理论上稳定的。金宝app我说“理论上”,因为,记住,真正的机器人不是线性倒立的摆锤,所以在安全系数中建立了一个好主意!

最后,该相同的线性模型可以与模型预测控制(MPC)一起使用,以产生物理上一致的行走模式。这是由舒吉博士议员展示的本出版物.我也喜欢这个博客帖子作为LIPM在腿部机器人控制中所起作用的总结。

当然,控制脚相对于质心的位置只是完整系统的一部分。一旦建立了行走模式,仍有其他较低级别的控制问题可以解决,以使机器人遵循这种模式。这包括将目标脚动转换为目标致动器运动(逆运动学),控制致动器本身,稳定和鲁棒性与扰动等等。您可以在下面看到一些典型组件的图表。

此时,您可能希望考虑使用高保真仿真测试算法,因为LIPM模型不足以测试所有这些低级控制组件。

您可以使用Matlab和Simulink通过观看我们的方式了解更多有关对BipeDal人形机器人的控制的更多信息金宝app步行机器人模式生成视频.

无模型方法 - 机器学习

机器学习算法和计算能力(这两者是相互关联的)的剧增开启了一个研究领域,致力于让计算机学习如何控制一个物理系统——而这个物理系统通常是一个机器人,正如著名的Google DeepMind出版物所述丰富环境中运动行为的出现.

本例中的“控制器”指的是我们想要分配给控制机器人的软件的任何数字结构。从技术上讲,你可以使用机器学习来参数化一些简单的东西,比如PID控制器;然而,这些模型结构受到它们的线性行为和接受简单数值数据的能力的限制,因此你不会从机器学习中获得太多收益——事实上,我将简单地称之为“优化”。机器学习控制的真正力量来自深神经网络,这可以近似极度非线性行为并处理更复杂的输入和输出数据。

应用于控制的深度神经网络有两种风格:

  • 监督学习 -使用现有数据集进行培训,其目标是概括为新情况。例如,我们可以从附加到运动捕获系统的行走人员,远程控制机器人的专家或基于模型的控制器中的专家收集数据。然后,监督学习可用于参数化神经网络。
  • 加强学习- 通过经验或试验和错误学习参数化神经网络。与监督学习不同,这不需要收集任何数据先验,其代价是训练时间要长得多,因为强化学习算法探索(通常)巨大的参数搜索空间。

当然,总有可能结合两种方法。例如,现有的控制策略可用于收集引导增强学习问题的初始数据集 - 通常称为仿制学习.这提供了“从零开始”的明显好处,这显着缩短了培训时间,并且由于初始条件理想地证明已经在一定程度上工作了,因此具有较高的可能性更高的可能性。

通过观看我们的金宝app步行机器人视频的深增强学习.

一般来说,使用机器学习来控制机器人系统有其利弊。

优势:

  • 机器学习可以启用直接使用图像和点云等复杂传感器数据的端到端工作流程。相比之下,传统的控制方法首先需要处理该数据 - 例如,创建可以识别感兴趣位置的对象检测器。
  • 可以使用传统的控制设计方法来实现困难,甚至不可能的复杂非线性行为。
  • 通常,设计控制器的人员需要较少的领域专业知识。

缺点:

  • 机器学习方法容易“过度拟合”对于一个特定的问题,这意味着结果不一定推广到其他任务。当您使用模拟来训练控制器时,这尤其困难,因为控制器可能会利用真实机器人中不存在的模拟工件。这个问题非常常见,因此被命名为SIM2REAL..
  • 机器学习有另一个臭名昭着的“解释性”挑战 - 换句话说,一旦控制器使用您最喜欢的机器学习技术训练,我们如何解释学习行为并将其应用于其他问题?
  • 一般而言,人员设计控制器需要较少的域名专业知识(是的,这是一个Pro和Con)。

结合控制和机器学习

关键的外卖是基于机器的基于机器的控制方法具有很大的潜力,但是已经有多年的研究和成功实施了基于模型的控制器,这些控制器使用了很好的地理知识,这些控制器对行走机器人动态进行了很好的身体知识......而且我们将被遗弃抛弃所有这些信息!

一个重要的注意事项是机器学习和传统控制可以(而且应该!)结合起来

  • 使用机器学习将数字数据和感知传感器(例如颜色和深度图像、激光雷达等)的组合转换为机器人的“良好”运动计划和操作模式。
  • 使用基于模型的控制技术来定位机器人的脚,将其转换为关节角度,并控制单个执行器来执行此操作。安全关键因素(如稳定性)也将完全独立于训练有素的代理可能决定的因素来处理。

上面只是一个例子,您应该随意探索在可解释的分析算法与“黑匣子”学习策略中绘制解释,分析算法与特定问题的“黑匣子”策略之间的分区。两者的仔细考虑结合可以导致强大而复杂的自主行为,可以超出培训环境和平台,并提供一些对可能需要安全至关重要的行为的保证。

我们希望您喜欢阅读这篇文章,我们期待您的意见和讨论。

|

댓글

댓글을남기려면링크를클릭하여mathworks계정계정에로그인하거나계정을새로새로새로