机器人分布式通信架构
本系统采用基于UDP协议的局域网多机通信架构。多台机器人接入同一局域网内,每台机器人被分配唯一标识端口号。机器人个体针对自身端口发起信息广播,信息中包括位置、控制参数等。其他机器人个体均可通过监听指定端口捕获任意机器人所广播的信息。基于局域网的多机通信方式受网络带宽、数据吞吐量、传输距离等影响,尤其是需要实时视频数据传输时。
机器人编队控制方法
为了使移动机器人在向目的地行进中,编队的保持有相对的调节机制,需要为其选取适宜的参考点,通过对自身和参考点位置的计算和处理后,可以做出适当的调整,使队形能够得到保持。如图2所示,本系统采用基于“Leader-Follower”算法的机器人编队控制方法。本方法以指定的机器人作为领航者,即参考点,领航者无需任何特殊功能,它的任务就是向目标点行进,其他机器人参考领航者进行队形维护。当领航者发生故障时,编队控制系统根据队形维持代价指标自动完成领航者重定义及编队自组织,避免故障导致的编队维持失败、碰撞等造成的损失。此外,“Leader-Follower”算法不用通过大量的信息交流就能供其他节点参考,控制方便,通信简单。
整体方案可实现三台及多台移动机器人的三角编队、横队、纵队及斜队队形的队形生成、编队保持、集群内部避碰的队形切换、编队绕障碍物功能。
开放性及二次开发
本方案提供Ubuntu环境下基于ROS系统的SDK开发包,支持python及C++语言,包含UWB位置信息、飞行时间、时间戳及机器人编队控制方法源码,支持二次开发。
附表. UWB定位系统主要技术指标
单边测距距离 |
500M(Max) |
测距频率 |
10Hz |
测距精度 |
±10cm |
定位模式 |
TWR/TDOA |
定位范围 |
400M×400M |
定位频率 |
2Hz—5Hz |
定位精度 |
x-y平面:±10cm,
z方向:±30cm
|
支持标签数 |
50 |
工作温度 |
-10°—60° |