1.嵌入式机器人主控处理器

1.1意法半导体STM32系列

目前意法半导体的STM32系列是采用率很高的低成本机器人主控芯片,目前其面向伺服系、机器人和无人车推出了多种不同算力性能的单片机处理器,覆盖了STM32F0/F1/F2/F3/F4/F7/L0/L1/L4等多个产品系列。以ARMCortex-M4的STM32F4系列MCU为例,其主频为180MHz能满足目前无人机所需要姿态解算、PID控制和EKF融合导航的基本需求,其处理性能达到225DMIPS/608CoreMark,并且内置DMA和FPU硬件加速模块,提供处理在完成通讯和浮点运算的效率,同时具有丰富的GPIO管脚内置SPI、CAN等通讯接口的协议,配合DMA可以不打断主线程完成与外部设备的高速通讯。

目前基于STM32已经有许多无人机主控平台,如OpenPilot,CC3D和PX4等知名的国外开源平台,通过在PCB上集成IMU、GPS接收机和数传、图传链路等芯片集成度得到了极大的提高,使得其能被应用于除无人机外的多种机器人系统中如PIXHAWK 就支持无人车、无人船等多种不同平台的机器人控制,其基于Cortex-M4的STM32单片机作为主控芯片,内置两套陀螺和加速度计MEMS传感器,采用先进的EKF导航算法实现机器人自主巡航和移动。

PX4主控同时兼容多种机器人平台

1.2 单板ARM嵌入式控制器

近年来,低成本单板ARM处理器得到了快速的发展,其从低成本家用电脑转向了高性能低功耗机器人核心控制器,以树莓派为例的嵌入式控制器具有较好的运算性能能满足多自由度机器人运算资源的需求,同时由于可以运行Linux,Debian和Ubuntu等操作系统能方便的集成和使用高性能矩阵计算库如Eigen或优化运算库如g2o等。

ARM的微型电脑主板多以SD/MicroSD卡为内存硬盘,目前也用使用EMMC作为内存的方案,板载USB和网卡的同时还具有可直接控制的硬件GPIO如SPI,UART等典型的通信接口。目前,树莓派已经推出了多个版本的硬件系列,具有成本低、高性能和高扩展的特点,以最新的树莓派4系列处理器为例其已经开始集成低成本GPU和神经网络处理模块,来运行小规模的神经网络,如TensorFlow Lite等典型的深度网络,因此在低成本视频终端模组中被广泛应用。

树莓派

除了树莓派外近年来还出现了许多应用于边缘计算的板卡如华为的Atlas, 华硕的Tinkerboard、ODroid和英伟达的TX和Jetson系列,除了具有多核心、高算力和低功耗的特点外,更多以集成高性能GPU为特点面向终端上的深度学习网络部署以及机器人运动控制。

Odroid主控板

华硕Tinkerboard

Jetson Nano单板嵌入式处理器

Altas 200智能边缘计算平台

2.通用机器人开发平台

2.1高通骁龙机器人开发平台

随着机器人系统架构的不断迭代,其所需的典型外部设备基本已经成熟,如IMU、GPS、视频流和通讯等模块已经成为高性能机器人的基本架构,在此背景下需要芯片厂商开始推出面向机器人开发应用的平台,在单板ARM处理器的基础上集成机器人所需传感器,提高系统的集成度、降低功耗,以高通为例其已经在几年前就推出面向微小型无人机的高性能同用主控平台骁龙Flight平台,其被大量应用于商业无人机、消费级无人机和机器人,其以骁龙801SoC(由四颗主频为2.26GHz的核心组成)运行嵌入式Linux系统,板载MEMS惯性传感器,支持GPS、4K视频拍摄、双通道Wi-Fi和蓝牙模块,所有的功能均集成在一个名片大小的PCB上,同时集成了成熟的单目定位、目标识别和深度学习SDK,并且能够支持大多数的飞控代码如PX4,因此具有极高的通用性能快速从机器人原型向产品进行落地。

骁龙无人机通用主控

近年来高通也继续推出了RB3通用机器人开发,该平台支持Linux和机器人操作系统ROS,同时也支持诸多软件工具,包括面向先进的终端AI神经处理软件开发包(SDK)、计算机视觉套件、DSP加速单元;支持高分辨率照片、4K视频拍摄,以及人体和物体的AI辅助侦测与识别的图像摄像头,并能利用视觉即时定位与地图构建(vSLAM)进行路径规划和避障,同时也可以搭载用于导航的立体摄像头和在弱光条件下也可实现人、动作和物体侦测的TOF摄像头。

Qualcomm® Robotics RB3 通用机器人平台性能参数

2.2 DJI RobotMaster机器人开发平台

DJI近年来致力于推广机器人竞赛和相关的开发开发平台,其推出的RobotMaster开发平台是面向属下无人机和地面机器人产品的驾驶脑开发套件,传承DJI系列产品标志的高模块化和高集成度设计,该系统以及STM32 F4系列高性能嵌入式处理器为核心,拥有丰富的扩展接口和通信接口,板载IMU传感器,可配合RoboMaster出品的M3508、 M2006直流无刷减速电机、UWB模块以及妙算等产品使用,亦可配合DJI飞控SDK使用,配件丰富。

面向机器人所需图像识别、导航和SLAM算法,其配套独立的妙算AI处理单元通过CAN总线与控制开发板进行数据和命令的交互,妙算平台采用定制的英伟达TX2处理器,具有在终端上完成复杂深度学习和运行大规模神经网络的能力,同时板载高清数据链路可以支持DJI旗下的图传和数传信号输入。

DJI妙算2视觉AI处理单元

3.国内外典型机器人主控处理器架构

3.1 空中机器人

(1)消费级无人机主控

DJI-Mavic

DJI推出的消费级无人机产品具有着高性能、高智能的绝对优势,针对消费级无人机的需求其主控板设计具有着集成度高、算力功耗最优和小体积的特点,以下图为例其控制板上集成了双目视觉立体成像系统、高精度GPS接收机、高清实时图传和数传模块,主控板设计对电磁兼容和结构布局都有着严格的要求。

视觉、GPS、IMU高集成度主控板

核心主控采用了ATMEL的最新M7内核的ATSAME70Q21主频300MHZ,集成2048KB FLASH和384KB RAM性能相比同系列STM32处理器具有更好的算力。为解决消费级无人机视觉导航应用中所需要的人脸识别、手势跟踪、感应和实时避障,采用了Movidius 2神经网络加速ISP芯片,为实现与地面遥控端高清视频流的传输采用高通Atheros AR1021X芯片构建2.4G/5G双频高速通讯。

高集成度核心控制板设计

(3)工业级无人机主控

工业级无人机主要应用于安防、巡检等行业应用中,主控相比消费级无人机对芯片和PCB设计要求更关注于对温度、机械振动和湿度等可靠性和EMC的指标,因此其主控板设计除了满足飞控算法所需算力要求外,对电气连接接口设计和多冗余设计有着更多的要求,在集成度、智能化和小型化上的要求相比消费级无人机来说较为薄弱。

为保证外部设备交互的可靠性,工业无人机主控多采用航空插头和多层板EMC设计,同时在输入输出接口中都会进行隔离保护处理,采用如RS485、CAN、DP等工业通讯总线与外部传感器或执行器交互,控制器主板上往往有多组备份控制器和传感器保证飞行的可靠。对于核心处理器来说则主要采用嵌入式DSP或单片机处理器完成飞控算法运行,如成都纵横推出的飞控采用了飞思卡尔公司的MPC5200B处理器(400Mhz主频单核微处理器),其抗干扰能力强、可靠性高、处理能力强、功耗低,对高低温适应性上均能满足工业级的指标,对于图像处理或者图传数传等模块则一般不会集成在控制板内部,但如IMU的基本的传感器会集成在主控板上同时考虑到陀螺仪震动和温飘等因素,往往采用软排线减震和主动加温,散热等手段保证关键器件的正常工作。

3.2 地面机器人

(1)MIT-Cheetah四足机器人

MIT-Cheetah是目前最高性能的电驱动四足机器人之一,其具有可靠的步态控制通过运行PR-MPC算法能适应复杂的地形并实现不同的步态,同时能进一步搭载激光雷达和视觉传感器完成对地形建模和落足重规划以及SLAM导航避障感知,其主控采用了一个i7处理器的工控机 (Sandy Bridge Core i7, 8 Gb ram)运行Linux操作系统通过EtherCAT与底层ARM处理器进行交互控制。对于其后续推出的Mini Cheetah四足机器人其主控架构采用了更低成本的方案,使用x86架构的单板处理器UP Board 作为主控其采用x5-Z8350 处理器(4核1.4Ghz, 4 gb RAM,5W低功耗)通过运行PREEMPT-RT 实时补丁的Linux系统保证算法的1Khz运行,最终通过扩展SPI接口板实现与底层电机的CAN高速交互通讯。

X86架构主控制器和SPI-CAN扩展通讯板

(2)ETH-StarlETH和Anymal四足机器人

Anymal是由ETH研发的高性能多功能四足机器人,其能搭载多种工业任务载荷包括了激光雷达、双目视觉和气体红外传感器,为保证对SLAM和步态算法的可靠运行该系统主要机器人ROS框架对不同的模块进行集成,其采用华硕P8H61主板使用Core i7处理器(2.66Ghz X86架构 8核)支持所需算法的运行,通过USB完成与如X-sense MTi IMU 等外部设备的交互通讯以及传感器数据读取。

Anymal作为面向工业级足式机器人的产品其采用了intel NUC PCs作为核心主控,同样通过USB完成与Hokuyo UTM-30lx激光雷达、 MTi-100 IMU等设备的通信交互,基于Wifi完成ROS组网和远程地面站通信,并使用扩展CAN通信板实现与底层电机关节的控制交互。

intel NUC PCs系列最新款迷你工控主机

(3)HYQ和HyQ2MAX

HyQ是由意大利理工学院研发的高性能液压四足机器人,其采用模块化液压伺服驱动关节。采用Intel i5(8G RAM)工控机运行步态算法,并使用 Ethernet 网卡、CAN接口板与机器人伺服驱动系统和传感器、感知模块交互。

(4)其他小型四足机器人

RXHEX是早期的四足机器人代表,其采用一个PC104运动控制器(266Mhz)完成对6个电机的控制和传感器数据的采集。

Miniature四足机器人采用STM32F3作为伺服控制器控制每条腿的两个电机,通过以太网与核心树莓派进行交互, 树莓派通过SPI接口与传感器扩展进行高速交互通讯,扩展板板载IMU、GPS接收机等模块,具有集成度高,通用性强的特点。

通过在树莓派等Linux处理平台上安装实时内核补丁可以充分地发挥其高算力的优点,同时能在控制算法外集成图像、语音等丰富的功能。