基于MCU的球动式平衡机器人
2018-05-08陈天海刘宇森郑冰欣
陈天海 刘宇森 郑冰欣
摘要 目前可移动的轮式机器人由于受到运动方向的限制,无法在小范围内实现全向移动,因此出现了球动式平衡机器人。本文通过硬件机械结构,传感器数据采集和处理,控制算法程序设计等方面进行研究。
【关键词】球动式平衡机器人 姿态控制 PID算法STM32
1 引言
现代社会的科技水平不断提高,机器人作为科技发展的产物,在实际应用中极大地提高了生产效率,现在越来越普遍的应用的社会生活的各个方面。
球动式平衡机器人作为轮式机器人的一种,通过驱动电机的运转,球体作为驱动轮在平面上移动。由于球体具有全向移动的特性,使用此结构可以实现机器人的全方位移动,在工作范围极小的空间中也可以灵活运动。
2 系统原理
基于MCU的球动式平衡机器人主要由姿态检测部分,驱动模块,控制中心等组成。工作状态下,将机器人放在平地上,初始化姿态检测传感器,待姿态检测初始化完成,开启电机驱动,机器人开始运行,自此后整个过程中不断采集姿态状态,控制机器人运动。系统原理如图1所示。
3 系统硬件设计
3.1 控制中心
微控制单元(MCU)集成内存、计数器、A/D转换、UART、DMA等接口,在不同的使用场合设计出不同的控制组合。STM32系列芯片是专为嵌入式应用而设计,使用了ARM公司的高性能”Cortex-M3”内核,lμs的双12位ADC,4兆位/秒的UART,18兆位/秒的SPI,18MHz的I/O翻转速度,低功耗设计可以达到在72MHz时消耗36mA(所有外设处于工作状态),待机时下降到2μA。为了使用最佳的控制方案,系统使用STM32F407VET6作为控制中心。
3.2 电机及驱动系统
目前设计应用的主流驱动电机是直流电机和步进电机,直流电机通常采用连续移动的控制方式,而步进电机是以步阶方式分段移动。为了更好的控制机器人,驱动控制系统采用MG42L1步进电机和路LV873IV步进电机驱动模块。MG42L1步进电机适用电压12-25.2V,电感/相:3.2mH,静力矩:3.6Kg-cm,转动惯量:35g-cm,电机重量292.lg。LV873IV步进电机驱动单路典型最大电流2.5A,典型值2A。
3.3 姿态检测系统
为了精确获取机器人的姿态信息,该机器人使用融合3轴加速度计和三轴陀螺仪传感器的六轴姿态传感器MPU6050作为姿态检测传设备,具体参数见表1。
3.4 底盘设计
机器人底盘上安装驱动模块,步进电机,QL万向轮以及所有的控制中心,检测模块等。在实际的机器人运动模型中是通过万向轮的转动来带动球体运动,所以万向轮的位置是影响机器人的整体性能的重要因素。底盘安装示意图如图2所示。
4 系统软件设计
4.1 确立相对空间坐标系
机器人的平衡过程中需要获得整体的姿态信息,而整体的姿态信息是建立在相对空间位置中的。相对坐标系的确立需要三个参数:俯仰角(Pitch)、航偏角(Yaw)、翻滚角(RoII),这三个参数的定义如下:
(1)俯仰角0:载体纵轴与纵向水平轴之间的夹角,向上为正,向下为负。
(2)横滚角γ:载体纵向对称面与纵向铅垂面之间的夹角,横滚角从铅垂面算起,右倾为正,左倾为负。
(3)偏航角ψ:载体纵轴在水平面上的投影与地理子午线之间的夹角,偏航角数值以地理北向为起点沿逆时针方向为正。
在机器人初始化的过程中用以上三个参数确立机器人所处位置的相对空间坐标系。
4.2 数值滤波
使用简易卡尔曼滤波对得到数值进行处理:
X[i+l]-(l-K[i+ll)x[i]+K[i+1]*z[i+1]
x即估计值,z即测量值。
K[i+1]=(P[i]+Q)/(P[i]+Q+R)
P是上一次估计值的方差,Q是高斯噪声的方差,R是测量值的方差,Q和R都是常数。
P[i+1]=(1一K[i+1])P[i]
这一次的方差由上一次的方差和这次的增益系数决定
4.3 速度PID控制
建立如下速度模型对机器人的平衡进行控制:
PID控制器结构简单、稳定性好、可靠性高,因此作为工业控制中应用最为广泛最基本的控制方法。但是在实际应用中需要根据具体的结构情况更改参数。PID控制结构图如图3所示。
5 结束语
在此機器人设计过程中出现了很多问题,最开始的机械结构设计不合理,后来反复修改才得到最终的结构,调试过程中对数据的处理不够,没有利用Matlab等软件对程序进行仿真,这些问题值得在后面的研究设计中解决。
本设计通过滤波算法对传感器采集的数据进行处理,结合电机的速度反馈值,以机器人自平衡算法和PID控制算法构成平衡系统核心,从而实现机器人的自平衡。该机器人在硬件设计方面独具创新,体积小,结构合理,性能稳定,质量较小,成本较低等特点。由于该机器人独特的运动方式,尤其适用于空间结构较小的工作空间,市场应用价值较高。
参考文献
[1]张少昆,单球轮移动机器人控制方法的研究[D].北京:北京科技大学,2013.
[2]朱磊磊,轮式移动机器人研究综述[J].机床与液压,2009,37 (08):142-246.
[3]陈小磊,魏世民,于秀丽,独轮车机器人的发展和技术研究[J].机电产品开发与创新,2010 (23):6-14.
[4]韦巍,何衍,智能控制基础[M],北京:清华大学出版社,2008.