摘要
近年来,两轮自平衡车的研究与应用获得了迅猛发展。本文提出了一种两轮自平衡小车的设计方案,采用陀螺仪ENC-03以及MEMS加速度传感器MMA7260构成小车姿态检测装置,使用卡尔曼滤波完成陀螺仪数据与加速度计数据的数据融合。系统选用飞思卡尔16位单片机MC9S12XS128为控制核心,完成了传感器信号的处理,滤波算法的实现及车身控制,人机交互等。
整个系统制作完成后,各个模块能够正常并协调工作,小车可以在无人干预条件下实现自主平衡。同时在引入适量干扰情况下小车能够自主调整并迅速恢复稳定状态。小车还可以实现前进,后退,左右转等基本动作。
关键词:两轮自平衡 陀螺仪 姿态检测 卡尔曼滤波 数据融合
Abstract
In recent years, the research and application of two-wheel self-balanced vehicle have obtained rapid development. This paper presents a design scheme of two-wheel self-balanced vehicle. Gyroscope ENC-03 and MEMS accelerometer MMA7260 constitute vehicle posture detection device. System adopts Kalman filter to complete the gyroscope data and accelerometer data fusion.,and adopts freescale16-bit microcontroller-MC9S12XS128 as controller core. The center controller realizes the sensor signal processing the sensor signal processing, filtering algorithm and body control, human-machine interaction and so on.
Upon completion of the entire system, each module can be normal and to coordinate work. The vehicle can keep balancing in unmanned condition. At the same time, the vehicle can be adjusted independently then quickly restore stability when there is a moderate amount of interference. In addition, the vehicle also can achieve forward, backward, left and right turn and other basic movements.
Key Words: Two-Wheel Self-Balance; Gyroscope; Gesture detection; Kalman filter; Data fusion
目 录
1.绪论 1
1.1研究背景与意义 1
1.2两轮自平衡车的关键技术 2
1.2.1系统设计 2
1.2.2数学建模 2
1.2.3姿态检测系统 2
1.2.4控制算法 3
1.3本文主要研究目标与内容 3
1.4论文章节安排 3
2.系统原理分析 5
2.1控制系统要求分析 5
2.2平衡控制原理分析 5
2.3自平衡小车数学模型 6
2.3.1两轮自平衡小车受力分析 6
2.3.2自平衡小车运动微分方程 9
2.4 PID控制器设计 10
2.4.1 PID控制器原理 10
2.4.2 PID控制器设计 11
2.5姿态检测系统 12
2.5.1陀螺仪 12
2.5.2加速度计 13
2.5.3基于卡尔曼滤波的数据融合 14
2.6本章小结 16
3.系统硬件电路设计 17
3.1 MC9SXS128单片机介绍 17
3.2单片机最小系统设计 19
3.3 电源管理模块设计 21
3.4倾角传感器信号调理电路 22
3.4.1加速度计电路设计 22
3.4.2陀螺仪放大电路设计 22
3.5电机驱动电路设计 23
3.5.1驱动芯片介绍 24
3.5.2 驱动电路设计 24
3.6速度检测模块设计 25
3.6.1编码器介绍 25
3.6.2 编码器电路设计 26
3.7辅助调试电路 27
3.8本章小结 27
4.系统软件设计 28
4.1软件系统总体结构 28
4.2单片机初始化软件设计 28
4.2.1锁相环初始化 28
4.2.2模数转换模块(ATD)初始化 29
4.2.3串行通信模块(SCI)初始化设置 30
4.2.4测速模块初始化 31
4.2.5 PWM模块初始化 32
4.3姿态检测系统软件设计 32
4.3.1陀螺仪与加速度计输出值转换 32
4.3.2卡尔曼滤波器的软件实现 34
4.4平衡PID控制软件实现 35
4.5两轮自平衡车的运动控制 37
4.6本章小结 39
5. 系统调试 40
5.1系统调试工具 40
5.2系统硬件电路调试 40
5.3姿态检测系统调试 41
5.4控制系统PID参数整定 44
5.5两轮自平衡小车动态调试 44
5.6本章小结 45
6. 总结与展望 46
6.1 总结 46
6.2 展望 46
参考文献 47
附 录 48
附录一 系统电路原理图 48
附录二 系统核心源代码 49
致谢 52