• 172
汽车漂移原理•
ELECTRONICS WORLD ・技术交流
随着控制技术的快速发展,两轮平衡车被广泛的应用。这种紧凑、灵活的双轮平衡车,可以在稍微复杂一点的环境中工作。本系统采用stm32f411ccu6作为主控制器,小车的倾斜度通过陀螺仪和加速度计获得,角度信息使用卡尔曼滤波算法进行修正,然后通过PID 算法控制汽车的速度来完成小车的自平衡。
1 系统整体方案设计
系统使用STM32单片机作为主要的控制器,通过卡尔曼滤波算法使通过MPU6050采集到的角度更加稳定,再通过PID 算法控制输出信号的占空比(PWM 值),进而通过驱动模块控制小车的转速,使小车的平衡。使用MQ-2烟雾传感器来获取周围环境的信息,PID 控制器的速度和倾角是基于传感器所获得的数据,使用蓝牙与手机APP 通信,手机APP 可以覆盖所有输出数据,输出到驱动芯片,并控制小车。
整体设计方案如图1
所示。
图1 系统整体框图
2 系统硬件设计
2.1 主控芯片
Stm32f411ccu6作为主控芯片,使用ARM 公司32位的 Cortex-M4内核,有48个引脚,256K 字节的FLASH 和128K 字节的SRAM 。2.2 电源模块
整个系统的所有模块需要+12V 、+5V 、+3.3V 电压。使用+12V 的锂电池。5V 电源是通过LM317可调线性电源模块降压得到的,由于线性电源波纹较小,因此有助于稳定系统,5V 通过AMS1117-3.3降压至3.3 V ,并提供给STM32。模块示意图如图2
所示。
图2 电源供电示意图
2.3 电机驱动模块
使用TB6612FNG 为直流电机进行驱动。该驱动IC 是基于MOS-FET H 桥原理,它比晶体管H 桥更为有效的驱动。外围电路简单。它支持100KHZ 的PWM 信号。2.4 MPU6050姿态检测模块
MPU6050是六轴运动处理器,芯片内部集成了3轴微机械陀螺仪和3轴微机械加速度计,通过这六个量可以获得俯仰角,横滚角。STM32可以通过IIC 获取MPU6050内部的姿态数据。获取姿态
的准确性和实时性是整个系统中最重要的地方。
图3 软件整体流程图
2.5 蓝牙通信模块
使用HC-06蓝牙模块。STM32通过蓝牙协议与手机APP 进行通信。3.3V 电源进行供电。 2.6 烟雾传感器模块
MQ-2烟雾传感器可以用于液化气、酒精、烟雾等检测。随着浓度变大,电导率变大,输出电阻变低,模拟信号输出变大。STM32可以通过内部12位的ADC 进行模拟信号的采集。
基于STM32的蓝牙平衡小车系统设计
沈阳化工大学 信息工程学院 王子浩 王 健
发布评论