用户故事

德国航空航天中心(DLR)机器人与机电一体化中心开发基于模型设计的自主人形机器人

挑战

开发具有53个自由度的双臂移动人形机器人的控制系统

解决方案

使用MATLAB和Simulink的基于模型的设计对控制器和设备进行建模,生成金宝app半实物仿真测试和实时操作代码,优化轨迹,并自动化传感器校准

结果

  • 消除编程缺陷
  • 在数小时内实现的复杂功能
  • 学生先进的控制发展

“基于模型的设计和自动代码生成使我们能够应对Agile Justin的53个自由度的复杂性。如果没有基于模型的设计,就不可能为这样一个具有硬实时性能的复杂机器人系统构建控制器。”

伯索尔德·比乌姆,德国航空航天局

德国中心für Luft- und Rundfahrt (DLR,德国航空航天中心)机器人与机电一体化中心(RMC)的工程师和研究人员正在开发能够学习环境并与环境互动的机器人。其中之一是敏捷贾斯汀它是世界上最先进的双臂移动类人机器人之一。Agile Justin有53个自由度,其中上半身有19个自由度,手部有26个自由度,移动平台有8个自由度。它通过头部的立体摄像头和RGB-D传感器、所有关节上的扭矩传感器和手指皮肤上的触觉传感器来感知环境。

DLR RMC团队使用基于模型的设计与MATLAB®和仿真软金宝app件®为Agile Justin开发高级控制、校准和路径规划算法。

“使用MATLAB和Simulink进行基于模型的设计,涵盖了先进机器人金宝app系统设计所需的广泛软件领域,”DLR自主学习机器人实验室负责人Berthold Bäuml说。“它能够模拟复杂的机电系统和控制器,为实时HIL测试生成代码,信号和图像处理,以及数据分析和可视化。”

挑战

先进的仿人机器人需要能够快速处理各种传感器输入、规划连续轨迹和同时管理数十个关节运动的控制系统。

最初,DLR RMC的工程师用C/ c++为机器人的手和手臂手工编写了单独的控制算法。当他们开始为从指尖到肩膀的所有自由度创建一个单一的控制回路时,他们发现这个系统太复杂了,无法手工编码。

DLR开发了一个新的机器人软件框架aRDx,以帮助解决这一挑战,但他们也需要能够从设计模型自动生成代码并执行硬件在环(HIL)测试的工具。此外,他们希望研究生能够使用这些工具快速开发自己的机器人控制系统。

解决方案

DLR RMC采用基于模型的设计,使用MATLAB和Simulink为Agile Justin和其他自金宝app主机器人开发先进的控制系统。

对于单个关节,团队使用微分方程创建了一个植物模型,并将其作为S函数并入Simulink。金宝app

他们利用Simulink和Control System Toolbox™创建了比例-积分-微分(PID)控制器,并通过仿真调整控制参数。金宝app

使用Simu金宝applink编码器™ 他们从控制器模型中生成C代码,并将其部署到运行QNX实时操作系统的PC上。HIL测试使他们能够补偿传感器噪声和精度,以及关节齿轮的显著弹性和电机扭矩的非线性。

在验证了控制器设计后,团队为他们的生产目标——Texas Instruments™DSP生成了C代码。

然后,他们为拥有多个关节的敏捷贾斯丁组件开发了运动控制器,比如躯干和手臂。为了处理这些更大、更重的机构的更复杂的动力学,该团队在Simulink中设计了一个笛卡尔阻抗控制系统。金宝app

与单关节控制器一样,团队在Simulink中调整参数,并使用Simulink编码器生成HIL测试代码。金宝app

在测试期间,该组使用statflow®按顺序排列任务,如抓和提篮子。

他们应用了Optimization Toolbox™中可用的顺序二次规划算法来执行一个有约束的、非线性的优化来规划整个身体的动作——例如,使敏捷的Justin可以抛球的距离最大化。

该团队在MATLAB中开发了自动校准算法,使用图像处理工具箱™从立体和RGB-D相机捕获的图像中识别手上的标记。该算法使用Signal Processing Toolbox™中的Butterworth滤波器去除标记定位中的噪声。

DLR正在使用基于模型的设计来开发新的控制器,这将提高敏捷Justin从其环境中学习的能力。

结果

  • 编程缺陷消除。Bäuml说:“用Simulink Code金宝appr生成代码已经消除了在C/C+中手工编码控件设计时引入的编程缺陷。”“功能缺陷减少了约80%,尽管我们设计的算法比手工编码要复杂得多。”
  • 在数小时内实现复杂的功能。Bäuml说:“对于投掷运动,贾斯丁的控制器协调20个自由度来产生最佳TCP轨迹。”“我们用MATLAB、Simulink和最优化工具箱在一个下午就完成了这项工作。”金宝app
  • 学生先进的控制发展。Bäuml指出:“通过基于模型的设计,与我们合作仅6个月的工程专业学生就可以为一个拥有53个自由度的机器人开发复杂的控制,因为他们不需要编写代码。”“金宝appSimulink使他们能够处理多个反馈循环的交互,并以图形方式构建和执行复杂的算法。”