基于视觉跟踪的两轮自平衡移动机器人控制系统
2022-02-20黄亚辉
黄亚辉
(湖南信息职业技术学院,湖南长沙,410200)
0 引言
《中国制造2025》明确提出了中国成为制造大国的战略目标,明确了中国制造业创新能力的提升、着力提高工业化与信息技术的深度结合,大力推进重要领域突破性发展,对高端数控机床与新一代信息技术产业的发展进行产业结构调整,其机器人领域是优先发展事项[1]。两轮自平衡移动机器人已广泛应用于民用、安全、工业和军事等领域[2],但是在实际应用时还存在一定的不足。因此,对两轮自平衡移动机器人进行进一步研究和设计,可以为其提供新的设计思路与控制方法,推动两轮自平衡移动机器人的发展,拓宽两轮自平衡移动机器人的应用领域。
1 系统方案设计
基于视觉跟踪的两轮自平衡移动机器人系统如图1所示,核心处理器单元采用32位的STM32F103低功耗嵌入式芯片,进行算法处理;姿态检测单元采用MPU6050系列芯片,通过该芯片来检测移动器人倾斜角度;磁力计单元用于对移动机器人倾角姿态的补充;速度检测单元用来检测移动机器人的移动速度;电机驱动单元给移动机器人电机提供足功率;编码器整形单元对采集到的速度波形行进整形;图像采集单元采用Open MV开源模块给移动机器人提供视觉支撑;视觉跟踪舵机单元用于在视觉跟踪时实时移动图像采集模块;电源单元给个模块提供不同的电压。
图1 两轮自平衡移动机器人整体设计方案
2 系统硬件设计
2.1 平衡原理
两轮自平衡移动机器人的主体结构由两台直流减速电机和一个控制平台组成,如图2所示,图中虚线箭头表示自平衡移动小车重心方向,实线箭头表示自平衡移动小车运行方向。为了能够自平衡,需要控制电机左右正反转,来调整移动机器人重心,以此来保持平衡。在图2(a)中,此时两轮自平衡移动机器人的重心偏向车轮的右侧,如图中虚线箭头所示,为了维持平衡,必须控制两轮自平衡移动机器人向右行驶,如图中实线箭头所示,来保持机器人的平衡状态。同理当重心偏左时,需调两轮自平衡移动机器人向左行驶[3],自平衡控制采用PID算法来实现,由于篇幅有限,在此不在赘述。
图2 平衡示意图
2.2 视觉跟踪
本文采用采用Open MV模块进视觉跟踪,视觉识别采用其开源算法,对目标物体跟踪采用如下策略[4]。本文所选用的图片分辨率为800×600,其图像像素坐标信息如图3所示。
图3 图像像素坐标
图3所表示图像分辨率800×600每个像素点在图像中的位置,中心坐标位置为(x0,y0),(xc,yc)为目标物体的中心坐标点,l、w为中心区域的长和宽。在进行目标跟踪过程中,因为目标是实时移动的,目标中心位置也是实时变化的,通过调整自平衡机器人以及舵机的转动,使得跟踪目标的中心位置实时位于摄像头成像的中心位置(x0,y0)或其虚线框内,在本系统中l为80,w为50。
通过式1可得出目标物体中心坐标与摄像头成像中心位置横纵坐标差值。
上式中,∆x和∆y分别为目标中心横坐标、纵坐标偏移摄像头成像中心位置差值。根据偏移程度可以将摄像头成像区域进行划分成如图4几个区域。
图4 摄像头成像区域划分
3 系统软件设计
(1)程序整体框架
两轮自平衡移动机器人对程序的处理时间有严格的要求。处理器需要实时采集和处理移动机器人的姿态数据,以保证两轮自平衡移动机器人保持平衡状态。同时,还需要对采集到的图像信息进行处理,控制方向和速度。另外,处理器还需要对电池电压、串口、正交解码等进行处理。
为了合理的执行每个程序,在主程序中采用定时器中断进行处理,定时间为5ms,当定时时间到会在中断程序中执行相应的程序,每隔20ms进行一个循环,如图5、图6所示。
图5 主程序初始化程序流程图
图6 中断程序流程图
在中断程序中,每进入一次中断会读取陀螺仪传感器、加速度计传感器、电池电压、编码器、测距等数据。当中断次数达到相应的次数时,会进行相关的程序处理。
(2)图像处理与发送程序
目标识别需要采集外部图像,具体流程如图7所示。
图7 图像处理与坐标发送程序流程图
4 系统测试
利用两轮自平衡移动机器人实验平台与图像采集传感器进行目标跟踪测试实验,让目标以不同的速度进行移动,两轮自平衡移动机器人做跟随移动,如图8所示。经过多次调试,得到目标在不同移动速度时机器人跟踪测试结果,如表1所示。
图8 两轮自平衡移动机器人视觉跟踪测试
表1 目标在不同移动速度时机器人跟踪测试结果
3 0.2 是4 0.25 是5 0.3 是6 0.4 是7 0.5 是8 1否
对上表进行分析,当目标速度在0.1~0.5m/s之间移动时,机器人能进行跟随。但是当目标以1m/s进行移动时,机器人达不到跟随的效果。通过分析其原因是由于处理器处理速度跟不上以及识别算法在识别高速移动目标时,存在识别难度。
5 结语
在不同类型的机器人中,两轮自平衡移动机器人是一个涉及多学科与多技术的研究对象,如:力学、动力学、自动控制、微机控制和传感器技术等,是一个具有重要研究价值的课题。本文基于Open MV视觉跟踪模块,设计了一个自平衡移动机器人控制系统,对目标跟踪测试进行了测试实验,实验结果表明本机器人具备较强的目标跟踪能力。