面向群体的一体化成型移动机器人设计及其主动避障功能

2022-10-19 01:09崔远哲徐鹏杰张敬涛汤奇荣
机械设计与制造工程 2022年9期
关键词:移动机器人轨迹电机

朱 维,崔远哲,徐鹏杰,张敬涛,汤奇荣

(同济大学机器人技术与多体系统实验室,上海 201804)

1 国内外研究现状

群体机器人因具有鲁棒性好、灵活、可扩展性强等特点,受到了越来越多的学者关注。因此,如何设计大量相对简单的物理可实现主体成为了近年来的研究热点[1]。

群体机器人的研究目的之一为用尽可能简单的机器人实现较为复杂的任务,如区域搜索。而在执行任务期间难免需要避免碰撞,因此避碰也是群体机器人的研究方向之一。早期的群体机器人研究中,大量科研人员在理论指导下提出了很好的控制、群智涌现方法,并通过仿真进行了验证,但是群体机器人本体的缺失使得所提方法的有效性未能得到真正的验证。因此在群体机器人平台上对这些方法进行实验验证具有现实意义。为此,在后期国内外学者开发设计了多款群体机器人平台。

国外对群体机器人实体的研究较早,设计开发了多款群体移动机器人平台。Milybot是一种较早的群体机器人平台,由8个自主的主体组成,并且通过无线通讯进行数据交换。然而,据Vega 和 Buscaron 的研究, Milybot 不能自我重新配置和自我组织,且缺少执行器和与其他模块相连的连接机构[2]。 此外,该平台也十分昂贵。哈佛大学的Nagpal 和Rubenstein 在2010年11月开发了一款名为 Kilobot 的群体移动机器人平台,使用该平台可以实现上千机器人的群体实验。Kilobot 和Milybot 通常仅用于协作运算和算法验证[3]。

国内在群体机器人平台的研究方面亦有不少成果。文献[4]开发了一款四轮全向移动机器人,该机器人功能强大,支持多种模块扩展,如差分全球卫星定位系统(global positioning system,GPS)、红外感应、射频识别(radio frequency identification, RIFD)和机器视觉(配备摄像头)等。但是其缺点也很明显,结构复杂、接线繁琐等导致制造和装配较为困难,从而造成制造成本相对较高。

为了让群体机器人“看得见”,文献[5]中使用了Turtlebot3机器人,该款机器人采用多层结构设计,可以扩展,最大的特点是其顶层装备了激光雷达用于对周边环境进行建图。但是该款机器人层数较多,安装不便,不利于机器人群体系统的构建。

国内外这些群体机器人平台存在的共性问题是安装繁琐、接线复杂。如Milybot,有不少的杜邦线连接各个模块,而Kilobot则因尺寸较小导致安装和接线不便;文献[4]和[5]中提及的移动机器人则明显展现出国内移动机器人因杜邦线繁杂从而造成的安装和调试困难。为此,开发一款杜邦线尽可能少,且可以一体化成型的群体机器人平台具有现实意义,因为这将明显减少研究人员的安装调试时间,减少接线错误,从而提高研究效率。

因此,本文进行了如下两方面的工作:1)设计了一体化成型的三轮全向移动机器人,极大地降低了群体机器人维护人员的时间成本;2)针对群体机器人的避障问题,赋予了所设计的群体机器人主动避障功能。

2 机器人设计

2.1 结构设计

三全向轮移动机器人是一个完整的、可以同时且独立地移动和转动的机器人。3个全向轮在圆周上均匀布置,相邻两个全向轮的轴线之间的夹角为120°。每个全向轮和电机轴直接连接在一起,这可以保证轮子和电机有相同的旋转轴。由于每个全向轮都由独立的电机驱动,因此通过控制3个电机,可以实现平面内机器人的平移、转动等运动。机器人的整体结构和尺寸如图1所示。

图1 机器人结构和尺寸图(单位:mm)

本文力求设计结构简单的群体移动机器人。鉴于在第1节中所提到的机器人结构复杂、安装困难、接线繁琐容易出错以及制造成本高等问题,本文将除电机信号线及电源线以外的所有电源线以及信号线集成在印制电路板(printed circuit board, PCB)中,不再需要额外接线;此外,为了使机器人能自动化批量生产,提高安装和维护的效率,所用到的芯片、电阻、电容等元器件全部集成在该PCB中;为使结构更加简单,该机器人的底盘也由该PCB充当,既减轻机器人的质量,又可通过表面组装技术(surface mounted technology, SMT)将电阻电容以及芯片等自动焊接在PCB上,实现一体化成型,从而能够较为方便地构建数量庞大的机器人集群。

2.2 运动原理

根据图2可得到几何关系:

图2 速度的几何关系

R1=R+L=3L

(1)

(2)

速度关系:

(3)

(4)

根据图3可对机器人进行受力分析,从而得到:

图3 在局部坐标系和全局坐标系下力的几何关系

(5)

则瞬时功率P为

(6)

(7)

可用

(8)

(9)

(10)

对式(10)整理可得:

(11)

式中:v为机器人的速度。

由式(11)可以分析出机器人的3种运动情况:

2)Vw1=Vw2=Vw3,则v=0,机器人转动。

3)如果1)和2)的情况都不满足,机器人在平动的同时绕着某一点转动。

机器人运动过程中的每一瞬时都是上述3种情况中的一种。因此,在平面内运动的三全向轮移动机器人可以通过控制3个电机实现在平面内的灵活运动。

2.3 电路设计

本文设计机器人的核心思想,即设计一款可自动化批量生产且结构简洁的机器人。因此,为了避免控制系统过于庞大繁杂,电控系统采用上位机与下位机两级的控制体系,如图4所示。

图4 机器人电控系统结构

图中上位机由以Raspberry Computer Module 4B(CM4B)为核心的电路以及外围电路组成。安装有树莓派官方操作系统的上位机,作为一个信号接收机和中央处理器,接收广播传递的位置信息和速度信息(通过CM4B的WiFi功能接收信息,采用的通信协议为lightweight communications and marshalling(LCM)),处理后得到本机所需速度,该速度信息经USART传递给下位机。由意法半导体公司的STM32F103RCT6及其外围电路组成的下位机,将上位机传输而来的速度信息,解算为每个电机的转速,并通过PWM控制电机转速,结合电机上的霍尔传感器反馈的电机转速以及PID控制使得每个电机达到所需要的转速,从而使机器人实现所需运动。本文设计的机器人电控系统的PCB底盘如图5所示。

图5 一体化成型机器人底盘正反面

所涉及的主要元器件信息见表1。

表1 机器人主要元件

最终制造出的实物满足结构简洁、无需接线的设计要求,即除电源信号线外所有信号线以及12 V、5 V电源线均集成于PCB中,如图5所示。

图6右上方为与上位机相关的电路,主要为CM4B核心板及相关外围电路,配备了USB、HDMI等接口,通过这些接口可以连接显示器和键盘鼠标,从而赋予该机器人可视化编程的功能,提高调试的效率。此外,考虑到后续机器人功能拓展的需求,在PCB上预留了CSI摄像机模块接口以及40个通用型的输入输出接口(general-purpose input/output, GPIO) ,其中2个GPIO用于上位机与下位机间的通信。预留的GPIO可扩展诸如GPS、红外、RFID等模块,可方便、灵活地增强机器人的功能。

图6 一体化成型机器人实体

图6左上方为电源相关外围电路,为12 V降压至5 V的LM2596S-5.0芯片及其外围电路,包括电阻电容、稳压二极管以及肖特基二极管等,为机器人提供动力。

图6正下方为下位机,其核心为意法半导体的STM32F103RCT6芯片,该芯片在外围电路的协助下,可实现对电机转速的控制。中间尺寸较大的孔附近分布有3个电机驱动芯片A4950,通过接收从下位机发送来的PWM并通过光电编码器反馈电机转速至下位机,从而实现下位机对电机转速的PID调节。

3 主动避障功能实现

3.1 常用的避障算法

群体机器人在执行任务过程中常常遇到的问题是静态的或动态的障碍物在其行进的路径上,避开这些障碍物对群体机器人而言至关重要。因此,对于每一个群体机器人平台,能够实现避障功能是必须的。本文中设计开发的群体机器人平台是否具备避障的能力,必须通过实验进行验证。

机器人常见的避障方法有人工势场法[6](artifical potential field,APF)、速度障碍法[7](velocity obstacle,VO)、最优交互避碰法[8](optimal reciprocal obstacle avoidance,ORCA)等,这些方法也被用于各类群体机器人平台的避障功能验证。

人工势场法和速度障碍法以及在此基础上改进的方法在仿真和实际中均有较多应用,如应用于船舶、无人机等的避障和路径规划[9-10]。而最优交互避碰法虽然仿真效果较为理想,但是少有实际应用,鲜有基于该方法的实验。鉴于最优交互避碰法在仿真上的理想结果,本文采取改进的最优交互避碰法,即将最优交互避碰法与卡尔曼滤波器相结合,从而使得该方法更加适用于实际的群体机器人平台。

3.2 最优交互避碰

最优交互避碰的核心是求取速度可行域。

图7[11](a)描述了机器人A和B的位置和尺寸信息,用公式表达为:

D(p,r)={q|‖q-p‖

(12)

式中:D(p,r)为以p为机器人圆心、r为机器人半径的圆内所有点的集合;q为描述机器人形状的点。

根据位置和尺寸信息,可以求得机器人B对机器人A造成的速度障碍区域,如图7(b)所示,阴影部分即为速度障碍区域,可表示为:

图7 速度障碍的构建

(13)

若机器人A相对机器人B的速度落在式(13)描述的速度障碍区域内,由于机器人A和B均采取相同的避障策略,因此机器人A和B均需要改变速度,机器人需要改变的速度由式(14)描述,形成的可行域由式(15)描述。可行域的几何解释如图8[11]所示。

图8 单个机器人引起的速度可行域构建

(14)

(15)

显然对于群体机器人中的个体A而言,还有许多其他个体将会对自身产生速度障碍,因此机器人需对除自身外的所有机器人求取最优的速度可行域,并与自身最大速度取交集,从而获得最终速度可行域,用式(16)描述为:

(16)

图9 取交集得到最终速度可行域

获取到的机器人位置信息经过卡尔曼滤波器,得到较为准确的机器人位置信息后,将其作为最优交互避碰的输入量,可以获得较为准确的速度可行域。

4 实验

4.1 实验设置

本次实验的场地是一边长为2 m的正方形区域,机器人所需要的位置信息通过场地上方的机器视觉系统获得。该系统通过捕捉机器人上方粘贴的标识对机器人进行识别,而后将识别得到的机器人位置信息进行广播,采用的通讯协议为LCM,机器人通过上位机的WiFi接收广播信息,从而获知其余机器人的位置信息。

4.2 实验场景

1)标准情形实验。

群体机器人避障方法验证实验有多种,其中常用的一种实验验证情形为机器人初始时分布于圆周上,实验开始后机器人向圆心靠拢,然后与圆心之间的距离小于一定值后,开始围绕圆心旋转,经过一段时间后,机器人停止围绕圆心旋转,返回初始位置。

基于这一实验思想,本次实验设计了类似的实验,如图10所示。机器人较为成功地实现了目标。每个机器人在实验时由机器视觉系统记录下的轨迹如图11(a)所示。

图10 标准情形实验

图11 标准情形与非标准情形下机器人轨迹图

2)随机故障实验。

群体机器人避障方法验证实验的另一常用情形为:正常运行过程中,发生突发状况,某一机器人停止运转,测试其他机器人能否正常完成指定任务。基于这一思想,设计了随机故障情形下的实验。随机故障情形实验的内容与正常情形实验类似,即仍然从初始位置向目标点靠拢并旋转,最后回到初始位置,其不同点在于,某一机器人停止运转,会阻碍其他机器人的运行,从而验证动态障碍和静态障碍均存在的情形下避障方法的可靠性。本次实验使机器人B在实验中途发生“状况”停止,其余机器人继续完成原定目标,如图12所示。每个机器人在实验时由机器视觉系统记录下的轨迹如图11(b)所示。机器人在发生突发情形后仍然成功完成了目标。

图12 随机故障实验

4.3 实验结果分析

在实验之前,本文进行了一次标准情形的仿真。仿真参数和实验参数一致,并且记录了每个机器人的轨迹信息。通过仿真所得的轨迹信息与实验记录的轨迹信息可以计算得出每一采样次数下机器人的轨迹误差。图13所示的即为机器人的轨迹误差图。

图13 仿真与实验轨迹误差图

记实验场地的边长为a,a=200 cm;机器人当前位置与仿真位置的偏差值为e;机器人直径为d;定义偏离系数为k,k=e/d;定义rate=a/d,用于表示机器人与实验场地的相对大小。

由图13可知,e的取值范围为0~70 cm,而机器人的直径d=20 cm,因此k的最大值为3.5。k的值在实验的初始和末尾阶段较小,小于1,这表明在初始阶段和末尾阶段,机器人当前位置和仿真位置的偏差较小,小于一个机器人的尺寸。此外,根据rate=a/d=10可知,场地的尺寸并没有远远大于机器人的尺寸,因此在实验中无法将机器人抽象成质点;而在仿真中,rate=a/d=100,将机器人抽象成质点较为合理。因此,如果实验场地足够大,(k/rate)max=3.5/100=3.5%,这一相对误差还是可以接受的。受限于实验场地,无法实现如此大的rate。

仿真和实验中在造成开始阶段和末尾阶段机器人轨迹误差值较小,而在中间阶段轨迹误差值较大的原因在于,采用的避障方法为最优交互避碰法,其核心是避免碰撞,即使控制器内的卡尔曼滤波可以对传感器获取的较为不准确的信息进行较为准确的预测,但还是难以保证绝对精确,无法复现仿真中的理想环境。因此,虽然在仿真和实验中的参数一致,但由于实验中存在的摩擦力、电机转速误差等并未在方法中涉及,从而导致机器人位置与仿真中同一时刻的位置发生较大偏差。位置发生偏差后,相应的避障策略也发生变动,从而使得机器人在速度可行域中选取的速度与仿真中同一时刻选取的速度存在较大差异,进而使得实验轨迹与仿真轨迹相比偏差较大。由于机器人往初始位置移动时,彼此之间解耦,影响实验与仿真的因素也因此减少,仿真与实验也就越接近,从而造成机器人在逐渐回到初始位置的过程中,实验与仿真的误差迅速减小,回归到10 cm左右,直到机器人到达预定的位置。

5 结束语

本文设计并制造了一款面向群体的一体化成型移动机器人平台,该机器人平台的最大特色在于高度集成化,上位机和下位机均位于同一PCB中,且电阻电容等元器件均可通过SMT完成,显著提高了制造效率,杜绝了模块之间接线出错或繁琐的问题,提高了后续维护的效率,有利于构建数量庞大的机器人集群。此外,本文基于仿真效果较为理想的最优交互避碰法,结合卡尔曼滤波器对其进行了小幅度的改进,并将改进后的方法应用于本文设计开发的机器人进行了避障实验,暴露出了最优交互避碰在实际应用中存在的问题,即实验场地的边长与机器人直径的比值越大越好,否则机器人的避障过程中对轨迹跟踪的相对精度会下降。

猜你喜欢
移动机器人轨迹电机
基于ROS 和PX4 飞控的四轮驱动移动机器人研究
新能源车用驱动电机系统的匹配应用
浅谈求轨迹方程中的增解与漏解
无从知晓
小番茄发电机
拉货机器人
移动机器人技术的应用与展望
捕捉物体运动轨迹
移动机器人图像目标识别
X2412S多旋翼专用电机