基于MPU6050的平衡车设计
2018-01-03侯立业刘阔甄广航耿欣李姿沈阳工学院信息学院
侯立业 刘阔 甄广航 耿欣 李姿 沈阳工学院信息学院
基于MPU6050的平衡车设计
侯立业 刘阔 甄广航 耿欣 李姿 沈阳工学院信息学院
平衡车虽然是一个稳定的系统,但其却是一种静不稳定的系统。有些类似于倒立摆与航天领域中飞机空气动力学平衡问题。而平衡车又是种可控制的系统。所以说只要对系统加以适当的控制就可以使其达到平衡。本文通过基于MPU6050的平衡车设计及笔者浅谈采用适当的反馈控制将原先的开环稳定度低的系统与闭环系统加以分析比较,最终将平衡车控制系统的速度、角速度、角度、等变量趋于我们想要的稳定值。
PID控制 陀螺仪 平衡车系统 STM32F103
平衡车,是典型的静不稳定系统。从学术上说,其涉及到自动控制的多种控制方法,前馈调节、串级控制、模糊鲁棒性的分析等问题,是各学科各领域的交叉系统值得学习与探讨。而在日常生活中,根据平衡车系统制作的产品各式各类,广泛用于安保、服务、助老、以及汽车和航空领域;同时还具有使用清洁能源、节能、低排量、环保、便于携带等优势。也间接解决了交通、清洁能源匮乏、保护环境的压力问题。对于现今市面上的平衡车,精度、速度和与人交互反馈的要求不断升高。故此,笔者通过基于MPU6050的平衡车控制系统谈一谈这些问题。
1 基于MPU6050的平衡车设计
1.1 硬件设计
单片机控制系统采用以STM32F103C8T6为核心的最小系统;STM32F103C8T6是一款32位高集成度、高运算速度、多模块、低功耗、体积小的计算机芯片,其价格便宜,开发程度较高,是这次设计选择的原因。
在动力电机选择方面,采用DC有刷电机。其价格便宜,机械特性较硬,调速范围大且较平滑,符合本次选择。与之对应的电机驱动方面,笔者选用TB6612FNG作为主芯片。TB6612FNG是东芝半导体公司生产的一款基于MOSFET的H桥集成电路,TB6612FNG效率高于晶体管H桥驱动器。而相比常用L293D和L298N每通道平均600mA的驱动电流和1.2A的脉冲峰值电流,它的输出负载能力提高了一倍。相比L298N的热耗性和外围二极管续流电路,它无需外加散热片,外围电路非常简单。
图1 平衡车系统结构图
1.2 软件设计
两轮自平衡车属于本质不稳定系统,因此其实现的平衡是一种动态平衡。在遇到外界干扰如何快速恢复,保持自平衡等问题是控制算法需要考虑的问题。传统的PID控制在各类工业场合有着广泛的应用,完全可以满足两轮自平衡车的控制系统要求。为了能够快速稳定的对小车速度进行控制,本系统加入了编码器作为速度反馈环节,形成了速度的闭环控制。而在系统的滤波方式,经过各类比较和总结优缺点采用卡尔曼最优信息处理方式滤波系统采用PID控制作为平衡车速度控制策略。其输入为车速的偏差,而输出为倾角,通过平衡控制达到控制车速平衡的目的。
2 总结
本设计主要研究两轮自平衡小车的设计与实现。通过相应硬件与软件的设计,实现了两轮自平衡小车的动态平衡与运动控制。系统硬件结构以32位单片机STM32F103C8T6为控制核心,采用压电陀螺仪MPU6050构成了惯性姿态检测系统,通过H桥电机驱动及旋转编码器实现了直流电机的闭环调速,最终实现了两轮自平衡车的姿态检测与平衡控制。系统软件设计上比较了各类滤波器优缺点,结合本系统硬件构架设计了以卡尔曼滤波器为核心的数据融合算法。通过卡尔曼滤波器将陀螺仪与加速度计的输出融合为准确的倾角与角速度输出,为系统的控制提供了有力保障。
[1]徐国华,谭民.移动机器人的发展现状及其趋势[J].机器人技术与应用,2001,14(3):7-14.
[2]尔桂花,窦曰轩.运动控制系统[M].北京:清华大学出版社,2002:48-49.
[3]阮毅,陈伯时.电力拖动自动控制系统:运动控制系统[M].北京:机械工业出版社,2009:25-28.
[4]刘金琨.智能控制[M].北京:电子工业出版社,2005:1-2.
侯立业、刘阔、甄广航:沈阳工学院信息与控制学院自动化专业学生,研究方向机器人技术;耿欣:(1981-),女,辽宁沈阳人,副教授,硕士研究生,研究方向机器人技术;李姿(通讯作者):(1982-),女,辽宁沈阳人,讲师,硕士研究生,现从事电气工程及其自动化方向理论课程讲授。