第1章 Moco-8四足机器人简介

1.1 四足机器人现状介绍

四足机器人是近年来十分热门的一个研究领域,虽然其相关系统设计和控制算法已经发展了近数十年但是在波士顿动力公司发布其产品后才真正被大众所知,并打破人们对机器人的认识,波士顿动力公司正式研发军用四足机器人大疆刚在创业比赛中脱颖而出,二者经过十年的发展一个成为无人机领域的独角兽,一个占据了足式机器人领域的半壁江山。

M200行业级无人机
SpotMini机器人

目前,波士顿动力公司已经正式推出了SpotMini机器人,另外ETH、GhostRobtic、MIT等机构也推出了相应的四足机器人原型机,而国内仅有宇树科技推出了正式的四足机器人产品。在今年的CES展会上,上述众多的四足机器人首次聚首可以说各有特点,SpotMini在各方面都代表着当前足式机器人的最高水平无论在自身的控制还是导航技术上,ETH的机器人与SpotMini平分秋色二者推广的方式也不尽相同,在之前都给出了工业巡检、无人物流和教育研发的解决方案,MIT的机器人后来居上而宇树的机器人则做到了性能与成本的平衡,但仅有前两者目前集成了视觉导航和规划控制,其余的四足机器人主要还是主要完成搭建高性能伺服系统,在控制算法方面比较类似大多沿用波士顿动力早期的算法,而在视觉导航、SLAM辅助足端轨迹规划上没有更深入的研究,因此主要面向科研机构作为控制和导航算法研究的平台。

(相关视频:https://www.bilibili.com/video/av47544021)

随着Github开源社区的不断发展,目前上面出现了许多机器人所需的开源项目,对于四足机器人来说其最重要的是腿部的伺服系统。最简单的是直接采用舵机作为关节,其成本低能快速构建原型机对算法进行验证,但无法检测足尖着地更无法实现柔性控制和力控制。采用无刷伺服是目前的主流方案,以直驱和行星减速方案构建的四足机器人在今年的Robotcon比赛中大放光彩,而基于本杰明电调和Odrive的开源无刷驱动系统许多国外极客也开发出了很多小型四足机器人,其中也有不少项目是开源的如前不久斯坦福开源的8自由度机器人,其采用Odrive作为驱动使用皮带减速驱动同心轴承实现对足端轨迹的控制,虽然其整机成本小于2万RMB但对国内的四足机器人开发爱好者来说这仍然难以接受,并且其相应的软硬件开发方式也不太符合国内以STM32单片机和树莓派为主的开源硬件环境。

(国外极客DIY机器人视频连接:https://www.bilibili.com/video/av46405055)

Doggo机器人
腿部结构(非机电专业难以复现)

1.2 Moco-8四足机器人

针对目前国内很多机器人爱好者主要以开源飞控为研究背景,多采用舵机来降低机器人成本,以STM32单片机和c语言完成控制算法编程,并以树莓派构建相应的图像识别和导航算法,我们构建了Moco-8四足机器人并以开源加SDK授权的方式发布在Github上

而本文全面介绍了其所使用的相关控制算法和代码具体的编程方式。

Moco-8四足机器人

Moco-8是目前国内首个真正意义上的开源足式机器人二次开发平台,其同样采用8自由度的足部结构,借鉴了GhostRobtic推出的Minitature机器人的外形设计。之所以没有采用 12自由度一方面考虑了成本和维护难度,另外对于小体积足式机器人来说其尺寸相比外部环境来说不存绝对意义上狭窄的区域,驱动器固定安装的方式大大增加了寿命。

Moco-8采用12g微型无刷舵机驱动腿部,以3D打印件作为机器人主体,采用STM32F4作为核心控制器完成姿态解算、里程计导航融合和步态算法,以树莓派A3+实现图像导航、激光雷达SLAM。控制板中集成了10轴IMU传感器包括3轴加速度计、3轴陀螺仪、3轴磁力计和气压计,能最多输出12路PWM,完成对4路AD采样和开关信号的采集实现对足尖着地的判断,并且留有3路串口方便后续模块的添加和外部控制信号的介入。

表1.1 Moco-8控制器参数

表1.2 Moco-8机器人参数

在核心步态算法方面Moco-8相比Doggo采用正弦足端轨迹规划结合虚拟腿模型(波士顿动力提出的《Legged Robots That Balance》)来说更加智能,除了在其基础上增加IMU实现姿态增稳外还增加了足底传感器实现舵机驱动下判断触地,实现了更低的成本和更优异的性能可以在崎岖路面上稳定移动,而目前淘宝能买到的足式机器人均无法达到该水平,大多仍停留在动作组和玩具的层面,而主打的运动学逆解噱头仅是机器人运动控制的最基础理论的应用,性价比十分低并且买来也学习不到真正的控制或导航知识。

(Moco-8机器人测试视频:bilibili.com/video/av53

Doggo四足机器人步态算法

后续文章将从虚拟模型步态算法、姿态解算、里程计数据融合和图像导航等多个方面进行介绍,深入浅出地帮助大家理解如何开发Moco-8机器人!