APP下载

基于PID控制的机器人自行车自平衡系统研究

2018-11-01熊超伟王峰揭云飞智凯旋李学易

电脑知识与技术 2018年19期
关键词:数据融合PID控制陀螺仪

熊超伟 王峰 揭云飞 智凯旋 李学易

摘要:为了实现单轨车辆的自平衡控制,设计了一种基于PID控制的单轨自平衡小车控制系统,该系统将STM32作为主控制器,通过加速度计和陀螺仪采集到的加速度和角速度信号进行数据融合得到小车倾角,然后经过PID控制算法来调整PWM的占空比来控制直流减速电机的转速和舵机的转向,进而实现单轨车辆的自平衡控制。该控制算法使用STM32微处理器,控制模型自行车,实现机器人自行车的自动平衡。关键词:PID控制; 机器人自行车;自平衡; STM32; 加速度计; 陀螺仪; 数据融合

中图分类号:TP273 文献标识码:A 文章编号:1009-3044(2018)19-0274-02

Abstract:In order to realize the self-balanced control of monorail vehicles, a monorail self-balancing vehicle control system based on PID control is designed. The system uses STM32 as the main controller and obtains acceleration and angular velocity signals collected by accelerometers and gyroscopes for data fusion. The tilt angle of the trolley then passes through a PID control algorithm to adjust the duty cycle of the PWM to control the speed of the DC geared motor and the steering of the steering gear, thereby realizing the self-balanced control of the monorail vehicle. The control algorithm uses the STM32 microprocessor to control the model bike and achieve automatic balance of the robot bike.

Key words: PID control; robotic bicycle; self-balancing; STM32; accelerometer; gyro; data fusion

1 引言

目前,电动小型单轨车辆被广泛应用于城市短距离交通。这些车辆不仅价格便宜,而且也节能环保,深受广大用户的欢迎。然而,单轨车辆一个突出的问题就是安全性,由于单轨车辆本身是不稳定的[1],并且在驾驶过程中也受驾驶人技术水平影响,单轨车辆出事故的概率也远高于汽车。

虽然左右轮平衡车Segway问世以来,技术和市场都比较成功,但由于其左右轮的设计结构使得它的制动距离比较的长,这样使得其刹车方式在很大程度上限制了平衡车的性能和应用范围。因此,为了让不稳定的单轨车辆变成安全稳定的交通工具,对单轨车辆自平衡控制的研究就具有十分重要的意义[2]。

单轨自平衡控制系统整体可以分为姿态自平衡,速度控制以及转向控制。通过对姿态传感器采集到的信息进行数据融合得到倾角,并经过PID控制算法来得到所需的控制量进而控制驱动电机和舵机来达到单轨小车的自平衡。在整个的循环控制过程中,采用5ms定时中断来确保对小车的姿态进行实时更新。

2 自平衡控制系统原理

2.1 系统总体结构

单轨自平衡控制系统主要由STM32主控芯片、姿态传感器、舵机、带编码器的直流电机等模块组成。其系统总体结构框图如图1所示。单片最小系统采用STM32作为主控芯片,其中主要包括复位电路、时钟电路、串口通讯电路,并且需要控制板内部集成的PWM模块能够输出至少两路PWM信号来分别控制舵机转向以及电机转动。

在系统结构框图中可知,STM32主控芯片要处理本軟件系统的大量工作。包括读取线加速度传感器以及陀螺仪上的加速度和角速度信息,并将这些采集到的信息进行数据融合得到小车当前状态的倾斜角度,再经过PID直立控制算法来计算出小车需要保持平衡状态所需的控制量,然后将得出的控制量作用于直流减速电机和舵机,使小车保持平衡,再通过姿态传感器采集姿态信息并进行处理,如此反复,使得小车保持动态平衡。

此外,稳定的电源也对整个平衡系统起到了至关重要的作用。整个平衡车系统通过12V的航模锂电池供电,通过稳压芯片产生3.3V和5V电源,其中3.3V来给STM32以及MPU6050线加速度传感器供电,5V来为OLED显示屏等外围设备供电,而带编码器的直流减速电机可以工作在7~13V之间。

2.2 单轨自平衡直立控制

在小车直立控制中,若要保持小车的平衡,首先要知道小车的倾角以及倾角方向,然后根据倾角大小通过直立PID控制器计算出小车平衡所需要的控制量,并根据倾角的方向来确定舵机的转把方向以此来使得小车能够保持平衡。其控制原理如下图2所示。

在小车倾角测量的过程中,线加速度传感器根据惯形变来测量加速度,它反映的是合力对运动物体所造成的影响[3]。陀螺仪用来测量小车的角速度,并对倾斜角速度进行积分就能得到小车的倾角,但是如果采集到的角速度信息存在很小的偏差或者漂移[4],紧接着通过积分运算就会有一个累计误差。然而由于陀螺仪和加速度传感器有着不同的误差特性,所以在小车的平衡控制中,通常的做法是使用加速度传感器和陀螺仪来对加速度和角速度进行采集并进行数据融合来得到需要的角度[5]。

2.3 速度闭环控制

速度闭环控制根据单位时间内编码器得到的脉冲数来测量直流电机的速度信息,并且和目标值进行对比来得到控制偏差[6],再经过对该偏差进行比例、积分、微分控制来使得该偏差趋于零的一个过程。其速度控制原理如下图3所示。

2.4 自平衡控制系统流程

在自平衡控制系统初始化后,在5ms定时中断里STM32和MUP6050加速度计传感器通过I2C通信来读取单轨小车的姿态信息,然后将加速度计所得到的信息和陀螺仪采集到的角速度信息通过数据融合得到倾斜角。然后通过PID控制算法计算出主控芯片需要给舵机和电机驱动器控制量。整个平衡控制系统软件功能流程图如下图4所示。

在小车的直立控制中,通过直立PID控制器计算出的控制量用来作用于舵机来实现车把的转向,通俗来说,当小车往前进方向左偏时,舵机应该控制车把往左打方向,当小车往前进方向又偏时,舵机也就需要控制车把往右打方向,即通过车把转向来实现小车的平衡。

在把整个平衡控制系统所需的硬件搭建好之后,把其应用在单轨模型小车上,如图5所示,可以看到,在基于PID控制系统中,单轨车辆是可以实现自平衡的,也验证了该方法的可行性。

3 结论

单轨车辆能够通过PID控制来实现自平衡,其自平衡控制系统以STM32作为主控芯片,通过5ms定时中断来读取加速度传感器和陀螺仪的姿态信息,并进行数据融合得到可靠的傾角,再通过PID算法计算出相应的控制量,从而对电机和舵机进行相应的控制,以此来实现单轨车辆的自平衡,最后本设计在模型自行车硬件上实现平衡,验证本方法的有效性。

参考文献:

[1] 黄用华,廖启征,魏世民,等.前轮驱动自行车机器人定车运动的建模与实现[J].北京邮电大学学报,2012,35(2):5-9.

[2] 沈凌伟.单轨车辆自平衡控制研究[D].杭州电子科技大学,2015.

[3] 马思远,鲁庭勇,张丽君.两轮自平衡车运动姿态的测量和控制[J].测控技术,2015,34(4):71-73.

[4] 师树恒,曹阳, 师素娟.一种直立智能循迹小车的设计[J].自动化仪表,2014,35(2):66-68.

[5] 赵翔, 杜普选,李虎,等.基于MEMS加速度计和陀螺仪的姿态检测系统[J].铁路计算机应用,2012,21(3):15-18.

[6] 曹杰,蓝贤桂,周书民,等.基于单片机的自平衡小车设计与实现[J].科技广场,2017(6):79-81.

猜你喜欢

数据融合PID控制陀螺仪
基于EMD的MEMS陀螺仪随机漂移分析方法
我国著名陀螺仪专家——林士谔
内模控制在火电厂主汽温系统中的应用
常规PID控制和常规模糊控制的比较
微机械陀螺仪概述和发展
MEMS三轴陀螺仪中不匹配干扰抑制方法