【技术实现步骤摘要】
一种基于ROS的传感器阵列移动机器人定位系统
[0001]本专利技术涉及机器人定位
,具体涉及一种基于ROS的传感器阵列移动机器人定位系统。
技术介绍
[0002]随着计算机技术的发展以及社会需求的不断提升,移动机器人在各个领域都得到了广泛的应用。移动机器人在实际应用中经常需要准确定位,以便完成给定任务,如环境勘测、物品搬运等。因此,实时定位系统对于移动机器人的应用至关重要。由于机器人不断渗透到各行各业,面对的外部环境越来越复杂,对机器人的精度、稳定性、智能化提出了新的要求。然而,传统的实时定位方法存在着许多问题,例如误差较大、鲁棒性较差等。
[0003]而采用多个(例如传感器阵列)传感器却仅是从多个侧面孤立地获取目标信息的方式,但单纯的不断增加传感器的做法,会增加系统的复杂度,对平台的算力要求提高,且割断了各传感器信息间的内在联系,丢失了信息经有机组合后可能蕴含的深层有效信息,造成信息资源浪费,甚至可能导致决策失误。因此,在多重因素影响下,发展多传感器融合技术便表现出了它的必然性。
[0004]现有技 ...
【技术保护点】
【技术特征摘要】
1.一种基于ROS的传感器阵列移动机器人定位系统,其特征在于:包括设置在移动机器人中心的MCU,以及与MCU连接的多个传感器;多个传感器的驱动板以环形方式分布在MCU的周边,将所有传感探头延申排布在机器人各个方向,形成传感器阵列获取移动机器人的周边环境数据;通过传感器阵列获取的全方位的环境信息,并根据周围信息获取到机器人当前的位置,以及判断是否处于安全的工作状态;MCU作为主处理器接收多个传感器的读数,并将其传递给ROS节点,ROS节点接收来自多个传感器的数据,并将其集成至一个消息中,该消息可以被其他ROS节点订阅,以便ROS节点使用传感器数据进行导航和其他任务;具体的操作步骤包括:步骤一:接收超声波传感器数据,将超声波传感器的位置与对应的机器人坐标系进行转换,以机器人坐标系为基准,获取超声波传感器的数据;步骤二:接收单点激光雷达数据,通过单点激光雷达获取机器人前方的障碍物信息,根据障碍物和机器人之间的距离,给定机器人最大的速度的限定,防止机器人速度过快发生碰撞;并根据下式得出障碍物的宽度:其中,上式中的w是障碍物的宽度,D
a
和D
b
为障碍物左右两端最值的的角度,L
a
和L
b
是D
a
角度和D
b
位置上对应和到障碍物的距离;步骤三:接收IMU数据并进行转换,将接收到的9轴IMU传感器数据中的加速度、角速度、磁场强度的值通过欧拉变换得到欧拉角,欧拉角分为俯仰角、偏航角、滚转角三个角度;IMU原始数据数据的形式为下式的四元数形式:Q=q0+q1i+q2j+q3k;通过下式将四元数形式的IMU初始数据转换为欧拉角,并通过节点发布出去;psi=atan2(2(q0*q1+q2*q3)),1
‑
2(q1*q1+q2*q2)th eta=asin(2(q0*q2‑
q3*q1))phi=atan2(2(q0*q3+q1*q2)),1
‑
2(q2*q2+q3‑
q3)其中,psi为偏航角,theta为俯仰角,phi为滚动角,q0、q1、q2、q3为IMU初始数据的四个分量,atan和asin分别为反正弦函数和反余弦函数;步骤四:将接收到的传感器数据进行处理后通过ROS话题发布;采用无迹卡尔曼滤波对接收到的传感器数据进行滤波处理,在获得处理过的数据后,再通过MCU建立ROS节点和话题,并将接收到的传感器数据进行发布;再通过上位机进行接收,从而在不同主机间协同工作,分散计算压力;步骤五:接收电机编码器的数据并进行PID控制;接收电机编码器的数据并将其与上位机下达命令的数据进行对比,确保电机实际转动的方向和速度与上位机的命令始终保持相一致,并在出现错误时,实时进行PID校正,以确保机器人始终在上位机的控制范围以内;通过IMU以及电机编码器的数据可以得出机器人的里程计;差分模型机器人始终做的是以R为半径的圆弧运动;机器人的线速度V、角速度ω,左右轮速用VL和VR表示,用D表示轮间距,D=2d,右轮到旋转中心的距离为L;左右轮速V
L
和V
R
来进行速度控制:
V
L
=ω*(L+D)=ω*(R+d)=V+ωdV
R
=ω*L=ω*(R
‑
d)=V
‑
ωdωd连续控制系统的理想PID控制规律为:其中,K
p
为比例增益,K
p
与比例度成倒数关系;T
t
为积分时间常数;T
D
为微分时间常数;u(t)PID控制器的输出信号;e(t)给定值r(t)与测量值之差;步骤六:在上位机上通过接收到的信息对机器人进行实时定位,在获取每个传感器的数据后,通过机器人的运动模型得出机器人...
【专利技术属性】
技术研发人员:艾米尔,丁楠,李芬芬,耿君佐,孔荣双,李彪,费宏彦,王德烨,周泓,林剑楚,肖绍章,
申请(专利权)人:淮阴工学院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。