基于ZYNQ移动机器人控制器设计(1)背景

本文借鉴机器人分级范式的思想,把移动机器人控制器划分为驱动传感层、实时控
制层和交互层。在调研现有移动机器人控制器特点的基础上,提出了一种新型的控制器
方案。该方案针对移动机器人控制的特点,选用集成了多核 ARM CPU 和 FPGA 的 Xilinx 
ZYNQ 全可编程 SOC 作为硬件平台。在该平台上,应用软硬件协同设计的思想,完成
了如下工作:在 FPGA 上集成面向驱动传感的硬件 IP 核;在不同 CPU 上部署面向实时
控制的裸机软件和面向交互的 Linux 软件。

此控制器方案适合于移动机器人需要携带大量传感器,又对实时性有较高要求的应
用场景。将其应用于一款轮式移动机器人,实验证明,该移动机控制器能稳定工作,具
有良好的实时性。

移动机器人控制器在硬件平台上种类十分丰富,有的采用工控机,诸如先锋机器人
采用 PC104 作为上位机处理器,同时使用日立 H8S 微控制器作为下位机处理器;有的
是采用 DSP,如 BMP 采用 TI C2000 作为硬件平台,有的采用通用处理器,如 iRobot;
有的采用专用处理器,如日本 Asimo 使用 Hondd 定制的处理器、有的则采用上述硬件
平台的混合方案。软件方面,对控制、调度要求较高的控制器方案常常会搭载嵌入式操
作系统,如 Pioneer3-AT 的上位机控制器搭载 Window2000 的操作系统;Linux 在小型机
器人控制器中比较常见,如法国 Aldebaran  Robotics 公司的 Nao 机器人,Tecent 的教育
和娱乐机器人 Qrobot,Xilinx 的 Zrobot 智能小车;有的控制器也会采用混合方案。 

Pioneer[13]是由 ActivMedia Robotics 公司设计实现的一系列轮式机器人,目前已经发
展到了第三代,主要型号有适合室内运行的 DX 型,具有较强越障性能的 AT 型,在人
机交互界享有声音的 PeopleBot,以及面向机器人协作的 AmigoBot。Pioneer3-AT 的控制
器硬件平台使用的是 32 位工控机 SH2 系列,软件方面,搭载 ARCOS 嵌入式 OS。移动
机器人的上位机和下位机控制器以一种客户机-服务器的方式运行工作。下位机控制器
是服务器,负责掌控机器人的各种底层的细节问题,诸如保持平台的驱动速度,越过不
平坦地形,读传感器信号——比如声纳,管理附件-如机械手臂。于此同时通过串行口
将 PC 上位机控制器与机器人下位机控制器连接,在 PC 上运行上层的智能控制软件,
比如障碍规避、路经规划、人脸识别、定位、导航等等。这种客户机—服务器运行方式
的优点是,不同的机器人服务器系统可以运行同一上层客户机软件。多用户也可以在一
台机器人服务器上共同分担各自的控制任务,这就可以完成分布式的通讯、控制试验、
计划等。

 华南理工大学大学智能软件与机器人实验室设计并实现了一种非载人的,用户可以在上位机设置指令进行运动控制的两轮自平衡移动机器人[14]。其控制器硬件采用德州仪器的 C2000 系列微控制器;软件上搭载 TI 公司提供的 BSP,在上面开发自己的应用程序。该控制器的优点是能够发挥 DSP 擅长的 PWM 控制、卷积、滤波等功能,方便地执行电机驱动,传感数据融合,机器人姿态估计等任务[31]。

华中科技大学的何项新,胡航笛等人提出了一种通用的控制器设计方案:它是模块化的,可快速配置的[2]。其设计的移动机器人控制器可以划分为抽象的三层,自顶向下
分别是层传感、实时控制层(电源管理系统)、驱动层。这个控制器系统的实时控制层
负责掌管实时任务,由一片 ARM 处理器与一片 FPGA 组成异构处理单元;驱动与传感
层负责管理移动机器人的各类传感器和驱动执行机构;层则掌管一些高性能的任务,是
控制器系统的扩展部分。这种设计方案的优点在于可以提高硬件复用率,降低设计时间;
缺点是 ARM 处理器和 FPGA 均是单片而并非是 SoC 方案,二者没有专门设计的互联通
路,则数据交互很容易成为瓶颈,如果处理器与 FPGA 的性能优势都不能发挥出来,那
么希望通过 FPGA 实现硬件加速的想法也无从实现,还会附加地提高设计的成本,增加
设计体积和整体功耗[5]。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值