四足机器人SOLO技术详解--介绍平台和机器人概述翻译

Posted 灯哥开源

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了四足机器人SOLO技术详解--介绍平台和机器人概述翻译相关的知识,希望对你有一定的参考价值。

摘要

我们提出了一个新的开源机器人的腿部力矩控制系统,这个系统的特点是低成本及结构简单。这个系统由高力矩无刷直流舵机和适合阻抗调节和力矩控制的低传动结构组成。同时我们也设计了一个适应冲撞的新型足底传感器。四足机器人重2.2kg,有8个自由度,四条腿上都搭配了足底传感器。其他零件由3D打印和现成的零件构成,可以做出重量轻且低成本的机器人,这也使得其他研究团队可以快速开发和复制此项目。本文系统地描述了在静态和动态条件下实现足部阻抗的方案,并将无主动阻抗控制调节的最大无量纲腿刚度(dimensionless stiffness)为10.8的腿与人类奔跑状态下的腿部刚度(leg stiffness)进行对比测量。最后,我们演示了四足机器人的性能,提出了一种新的控制器,它将由 kino-dynamic 优化器计算的前馈接触力与质心和基座方向的阻抗控制相结合。此控制模型可以在复杂多变的运动环境下保持稳定。

关键词: 足式机器人,柔顺性和阻抗控制,驱动和关节机构,力控制


Ⅰ. 介绍

在没有大量硬件开发工作或维护成本的情况下,通常很难测试腿部机器人的控制性能和学习算法。现在的硬件机械结构复杂且昂贵,不同的机器人系统很难与其他的机器人进行对比,大部分系统也不能商业化。为了支持在学术研究上的快速和整体的进步,我们认为硬件、固件和中间软件一定要变得便宜且相对容易复制和实现。现在也有许多开源设计蓝图的低成本足式机器人平台如 Oncilla [29]、Stanford-doggo [17],因此我们的研究人员借鉴我们的算法在其他不同形态的机器人平台上测试和开发他们的构思。此外,从开源蓝图中产生的机器人的性能和能力可以直接在各个实验室进行比较。

据我们所知,Stanford-doggo 是除我们之外唯一公开其力矩控制的足式机器人平台。它的大部分零件是用水射流切割,相对容易生产。其他的开源(业余)项目大部分使用位置控制伺服电机,限制了它们应用高级的控制方法和学习算法。四组机器人在展现出高性能的力矩控制的同时也代表了其实现的巨大的难度,如 HyQ [27], Anymal [12] 或者 MIT Cheetah [33].众多的足式机器人像 Oncilla 和 Cheetah cub [30]使其同时包含机械柔顺性( mechanical compliance)让腿部马达在收到外部干扰的情况下直接、迅速的反应。然而这需要复杂的机制使其有效地改变关节的刚度[11](stiffness )。
在这里插入图片描述

图1: 四足机器人SOLO跳跃:记录时的最大跳跃高度是从24厘米的站立高度到65厘米。(由W.Scheible拍摄)

对于一个开源的腿型机器人来说,成功的标准是尽量减少需要精密加工的零件数量,从而能使用现成的组件而不是使用过于复杂的自定义设计方案。为了实现这一个目标 ,我们使用了当前最先进的低成本塑料3D打印和高性能无刷直流电机(BLDC),这些都是现在广泛可用的现成组件。此外在移动设备市场化的浪潮下,我们可以用到价格合理的微型传感器、低功耗和高性能的微型控制器以及先进的电池技术。

测试先进的动态算法locoarmotion[3],[21],[22]时,拥有轻量级、低成本但强大的机器人显得特别重要。实际上,易于操作和协作的开源开发可以加快测试周期。轻型机器人不需要起重机或导向结构,可以由一个研究人员在较小的实验室空间中操作。它们还可以大大减少维修和维护的时间和成本。当直接在实际硬件[31],[32]上测试学习算法时和需要一个安全的平台去探索各种控制模式时,这些特性变得尤为重要。

为了达成这些目标,我们提出了一个新型的、完全开源的模块化腿部力矩控制制动器,用于机器人动态腿部的研究。本文作出了五个主要贡献:1) 一种新型的轻量化、低复杂度、转矩控制执行器模块,适用于基于现成组件和3D打印部件的阻抗和力控制,2)10克以下的轻量级足部接触传感器,可提供全方位的可靠接触检测,可承受剧烈撞击的机器人,3) 每条腿由两个自由度和足底传感器构成,当腿部刚度与人体跑动相似时能正常进行抗阻调节,4)四足机器人“solo”,由四条腿组装而成,总质量为2.2kg,5)用于跟踪控制全身运动的力矩控制器,使用kino-dynamic[9],[22]优化器(kino-dynamic motion optimizer),首次展示了在陌生环境下,机器人运动的真实情况。所有设计都是开源的,包括机械图纸,电路原理和控制软件[1]。

Ⅱ. 平台和机器人概述

A.制动器概念

1)无刷电机制动器模块: 制动器模块如图2(a)所示。其由无刷电机(TMotor Antigravity 4004, 300KV),一个9:1的双级时序同步带(Conti Synchroflflex AT3 GEN III),高分辨率光学编码器(Avago AEDM 5810) 和一个直接安装在电机轴上的转速为5000的码轮。所有的东西都包含在轻量级的3D打印外壳内,低传动比(low transmission ratio) 合适在关节高速转动时产生足够大的峰值力矩。重要的是,在设计中为了保持高精准性/透明性(transparency)以实现单独电机电流能对力矩进行准确的控制。该模块的重量为150g,管段长度为160mm。该模块的组装很简单,需要的组件很少,如图2b所示。除电机轴和滑轮这些需要专门的机械制作的部件外,所有组件均为现成的或3D打印的。将所需的关节力矩转换为所需的电机电流,需要用到这个公式: τ j o i n t = k i i N {\\tau _{jo{\\mathop{\\rm int}} }} = {k_i}i N τjoint=kiiN 其中的 k i = 0.025 N m / A {k_i} = 0.025Nm/A ki=0.025Nm/A ,齿轮减速装置 N = 9 N=9 N=9 以此推导出 τ j o i n t = 0.225 i {\\tau _{jo{\\mathop{\\rm int}} }} = 0.225i τjoint=0.225i。制动器在 12 A 12A 12A 的电流时能输出 τ max ⁡ = 2.7 N m {\\tau _{\\max }} = 2.7Nm τmax=2.7Nm 的关节力矩。
在这里插入图片描述

图2:(a)制动器模块,(b)零部件概述,(c)小腿零部件概述

图2 部件说明: 1、两部分3D打印外壳结构2、高分辨率编码器3、同步带4、输出轴5、无刷电机6、光学编码器7、同步带8、轴承9、紧固件10、机加工部件11、3D打印部件12、除了11之外的所有部件都是现成的,或者可以在普通的3D打印机上打印的。电机轴和滑轮11可以用库存材料进行机械加工。

2)电力系统: 本文在实验中使用现成的TI微控制器评估板(TI micro-controller evaluation boards),每个板都配有两个BLDC(无刷直流电机)接口(图3b.13 )。他们能进行磁场导向控制(FOC),并在10kHz条件下执行双电机转矩控制(图.3a)。为了减少电力模块占用空间,我们对TI电机驱动模块进行微型化处理,将质量减少了6倍,体积减少了10倍,如图.3b所示。由此制造出的开源MPI微驱动电子设备(14),由一个TI的微控制器(TMS320F28069M)和两个无刷电机驱动器芯片(DRV8305)焊接在一个6层印刷电路板上制成。该电路板工作在40V电压,提供可编程的TAG端口、用于控制通信的CAN和SPI端口。
在这里插入图片描述

图3:(a)无刷式系统概述,(b)无刷电机驱动器控制板,(c)脚踏接触式开关

图3 说明:
(a)CAN总线将电脑连接到微控制器板(TI评估板)。两个无刷直流电机控制在距离每个节点10kHz处。高分辨率编码器提供电机轴位置反馈。
(b)我们将一个现成的TI评估板13减少到我们的MPI微驱动电子板14中,通过来自两个光学编码器的反馈来控制两个无刷电机。
(c)我们的定制脚接触开关,在 270度 宽的冲击方向上激活。

B.足底传感器

此足部传感器(图3c)的设计是为了实现在轻微接触和剧烈碰撞情况下的都能对足端接触进行准确的判定。由于脚部的接触点在崎岖的地形中往往不可预测,我们设计的接触激活的感应范围为 270度,确保在复杂地形时机器人能对接触进行对应的检测。我们制作的机械装置基于发光二极管(15)和光敏感元件(17)两个元件。他们由弹簧进行分离,其中的机械直径(18)为1.5mm。可以通过改变接触传感器的机械孔径的直径、长度或弹性硅胶元件(16)的数量来调整接触传感器的灵敏度。外力将孔径移动2mm时产生0V到3V之间的模拟输出信号,该信号由微控制器上的模数转换器读取。脚和小腿结构是用塑料打印的3D组件(图2c)。足底传感器重10g,在接触3N的力时在3ms内长生可靠触发。该传感器组装简单,灵敏度高,响应时间低,可承受高冲击载荷。这使得它适用于在动态运动实验中检测接触。

C. 2自由度的腿和四足机器人SOLO

一条2自由度的腿(图4a)由两个相同的无刷电机致动器模块(髋部19、上肢20)和小腿(21)组成。接触传感器安装在小腿的末端。所有关节都能转动多周,由于空心段之间的电缆布线的限制,每个方向旋转大约三周。

SOLO四足机器人由四条相同的腿和3D打印身体结构组组成(图4c)。机器人的八个自由度可在矢状面(sagittal plane)上运动。在躯干的内部区域有控制8个BLDC电机的电子设备。Solo目前需要保持外部连接来进行数据传输和外部供电。该机器人重2.2公斤,站立的臀部高度约为24厘米(最大臀部高度为34厘米),身体长42厘米,宽33厘米。这个机器人可以折叠到5厘米高(图4c)。SOLO在三个轴上都时对称的。
在这里插入图片描述

图4:(a)2自由度的腿,(b)无刷电机驱动器控制板,(c)8自由度的四足机器人“Solo”

图4 说明:
(a)两个无刷执行器组件19和大腿20、小腿21和脚接触开关22的装配。在90◦的膝角度下,2自由度的腿高0.24m,最大髋关节高度为0.34m。
(b)笛卡尔坐标系下阻抗框架的示意图。
(c)这个2.2公斤的四足机器人可以折叠成一个5厘米的平面结构。

D.通信与控制软件

虽然在TI和自定义电子板上都有用于有线通信的CAN端口,但我们还设计了一个轻量级主板,将机器人电机驱动程序和场外控制计算机之间的所有通信集合在一起。这个基于ESP32集成控制板由具有wifi功能的Xtensa LX6 SoC系统芯片(双核,240MHz)和以太网接口构成。利用MPI微驱动器上的SPI端口(upstream SPI),以35µs长的单命令双向SPI传输方式交换双电动机状态和控制命令数据。主板可控制多达8个双电机驱动器,并连接到其他设备,如IMU和电池监视器。电路板可以通过有线(以太网)或无线(WiFi)网络接口与控制计算机连接。通信方式采用原始MAC层的点对点(P to P)协议和特别的通信协议/供应商特定的操作框架(vendor specifific action frames)进行实时通信。我们在100Mbit/s以太网实现下的往返通信延迟为200µs,包括电机控制延迟。WiFi连接在正常情况下的往返时间约为1100µs,平均数据包丢失约为4%。该协议保持传输完整的机器人状态数据和传感器数据,以防止WiFi上的数据包丢失。我们通过使用多强制转换(multi-cast)来禁用WiFi确认包,以实现快速传输,并优先传输新数据。我们可以在1kHz的通信频率下关闭12个自由度的控制循环。这种开源的主板设计正在被用于最新版本的SOLO机器人与MPI微驱动器电子设备中。

2自由度的腿和四足机器人整体都由一台运行Ubuntu系统的PC远程控制,用RT-Preempt补丁控制它的实时功能。通信控制在1kHz频率下进行控制。我们实现了驱动程序,将电子设备与控制PC进行通信,并可选择CAN、以太网或WiFi三种通信方式。一个C++软件包提供了一个API使PC与电机板接口进行通信,并具备设定电机转动角度和力控制的基本功能。该API附带了Python绑定,从而实现了快速的原型化。我们使用C++接口来实现1kHz频率下的控制循环。在开源存储库[1]中提供了几个快速测试的演示程序。


双足轮开源技术交流QQ群:543613782

原文论文:An Open Torque-Controlled Modular Robot Architecture for Legged Locomotion Research——Felix Grimminger1, Avadesh Meduri1,3, Majid Khadiv1, Julian Viereck1,3, Manuel W¨uthrich1 Maximilien Naveau1, Vincent Berenz1, Steve Heim2, Felix Widmaier1, Thomas Flayols4 Jonathan Fiene2, Alexander Badri-Spr¨owitz2 and Ludovic Righetti1,3

以上是关于四足机器人SOLO技术详解--介绍平台和机器人概述翻译的主要内容,如果未能解决你的问题,请参考以下文章

四足机器人SOLO技术详解--介绍平台和机器人概述翻译

四足机器人SOLO技术详解--目录翻译

四足机器人SOLO技术详解--目录翻译

四足机器人SOLO技术详解--目录翻译

四足机器人SOLO技术详解--实验与结果翻译

四足机器人SOLO技术详解--实验与结果翻译