收藏 分销(赏)

Design-and-implementation-of-two-wheeled-self-balancing-vehicle.doc

上传人:精*** 文档编号:2419093 上传时间:2024-05-30 格式:DOC 页数:46 大小:2.58MB
下载 相关 举报
Design-and-implementation-of-two-wheeled-self-balancing-vehicle.doc_第1页
第1页 / 共46页
Design-and-implementation-of-two-wheeled-self-balancing-vehicle.doc_第2页
第2页 / 共46页
Design-and-implementation-of-two-wheeled-self-balancing-vehicle.doc_第3页
第3页 / 共46页
Design-and-implementation-of-two-wheeled-self-balancing-vehicle.doc_第4页
第4页 / 共46页
Design-and-implementation-of-two-wheeled-self-balancing-vehicle.doc_第5页
第5页 / 共46页
点击查看更多>>
资源描述

1、摘要近年来,两轮自平衡机器人的研究取得了快速的发展,两轮自平衡小车的动力学系统是一种多变量、非线性、强耦合的系统,是检验各种控制方法的典型装置。同时由于它具有体积小、运动灵活、零转弯半径等特点,必将会在军用和民用领域有着广泛的应用前景。本文主要介绍了基于Freescale MC9S12XS128单片机为控制核心的两轮自平衡小车系统,以验证经典的PID控制在动态平衡系统上的控制效果。在该系统上,姿态传感器采用MPU6050,单片机在采集到姿态数据后,采用Kalman滤波器对得到的数据进行融合,并在此基础上分析不同滤波方法的效果。借助增量式PID控制PWM的输出和利用TB6612FNG控制电机的转

2、向以及转速,从而实现了小车的自平衡控制。关键词:两轮自平衡系统; Kalman滤波; 数据融合; HCS12; MPU6050 . Design and implementation of two-wheeled self-balancing vehicleAbstractIn recently years, the research of two-wheeled self-balancing robot has made a rapid development, the dynamics system of two-wheeled self-balancing vehicle is a mu

3、ltivariable, nonlinear, strong coupling system, and also ,its a typical devices to test a variety of control methods. Because of it has a small, flexible movement and zero turning radius. It will have a wide range of applications in military and civilian fields.In the article, it describes the Frees

4、cale MC9S12XS128 microcontroller-based control of two-wheeled self-balancing vehicle system to verify the classic PID control system in the dynamic balance . On this system, It used MPU6050 as the car state sensing system, and it used the Kalman filter to fuse the obtained angle data, and analyzed t

5、he effect of different filtering methods based on this. With incremental PID control PWM output and use TB6612FNG steering and speed control motors, enabling the cars self-balance control finally.Keywords: two-wheeled self-balancing system; the Kalman filter;HCS12;MPU6050目录摘要2第1章 绪论61.1 两轮自平衡机器人概述61

6、.2 两轮自平衡机器人的发展61.3 方案论证及选择71.4 关键技术及目标81.4.1 姿态数据处理81.4.2 控制算法的实现91.4.3 目标9第2章 两轮自平衡小车的原理102.1 小车的直立控制102.2 倾角与角速度的测量132.3 本章小结14第3章 电路设计153.1 整体电路框图153.2 电源电路163.3 单片机最小系统173.3.1 S12单片机简介173.3.2 MC9S12XS128最小系统电路173.4 MPU6050183.4.1 MPU6050简介183.4.2 I2C通信193.5 电机驱动电路193.5.1 驱动芯片介绍193.5.2 驱动电路设计203.

7、6 速度传感器电路213.6.1 光电编码器介绍213.7 无线遥控电路213.7.1 Pt2262简介213.7.2 Pt2262应用223.8 液晶显示电路233.8.1 LCD1602简介233.8.2 LCD1602电路233.9 车模控制电路全图243.10 本章小结26第4章 系统软件设计274.1 控制算法介绍274.2 S12单片机初始化284.2.1 锁相环初始化284.2.2 PWM模块初始化284.2.3 串行通信初始化284.2.4 外部中断初始化294.3 PID控制的实现294.4 姿态数据处理294.4.1 角度计算函数294.4.2 滤波方法分析与选择294.5

8、 小车的运动控制334.6 无线遥控334.7 本章小结33第5章 系统调试355.1 软件调试工具355.2 系统调试工具355.3 系统硬件电路调试355.4 姿态检测模块调试355.5 Kalman滤波器参数的整定375.6 PID参数的整定375.7 本章小结38第6章 总结396.1 总结与展望39参考文献41附录43附录一 系统主控板43附录二 系统核心源码44致谢47第1章 绪论两轮自平衡系统最早可追溯到上世纪80年代,日本电气通信大学的山藤一雄教授提出的基于倒立摆原理的自动站立机器人的模型被认为是两轮自平衡小车的构思起源。本章主要介绍两轮自平衡小车的起源与发展、研究意义以及国内

9、外的研究现状,并依此提出了本论文研究的主要内容。1.1 两轮自平衡机器人概述两轮自平衡小车是一种只有两个车轮且能在没有人为因素干预的条件下,能够自动保持的平衡的这样一个装置。自平衡小车系统的运作原理主要是飞机平衡的原理,也就是车辆本身的自动平衡能力1。自平衡小车系统通过陀螺仪和加速度计模块来检测小车的加速度以及角速度,MCU采集相关数据并进行运算,产生与当前系统姿态所适应的信号来驱动电机运动以达到平衡的效果。例如当系统向前倾时,经过姿态检测传感器检测出当前系统的姿态,MCU提取有关数据以后进行计算,驱动电机以一个合适的加速度向前运动,以此来使系统处于平衡状态。相反的,如果系统向后倾斜,那么小车

10、将会以某个速度向后运动,保证小车处于直立状态。虽然两轮自平衡系统提出的时间并不是很长,可是由于对两轮自平衡系统的研究有很重要的意义而得到了快速的发展。两轮自平衡小车的数学模型类似一阶倒立摆,它是一个典型多变量、存在严重非线性、非自治不稳定系统。这个系统是检验各种控制方法的理想平台。例如我们可以用经典的PID控制对其进行控制2,也可使用模糊控制理论对系统进行控制。另外两轮自平衡系统具有体积小、硬件易实现、运动灵活、零转弯半径等特点,这将会使其在未来得到广泛的应用。1.2 两轮自平衡机器人的发展本世纪初,由于控制理论趋于完善,而且电子技术得到飞跃式的发展,实现两轮自平衡系统成为可能,于是该项技术迅

11、速引起了研究机构和机器人爱好者极大地关注。出于不同的应用与目的,不同设计方案和控制策略的自平衡系统相继诞生。在两轮自平衡系统的研究领域,国外的研究起步较国内早,国外已经有公司做出了非常成熟的产品,而且其技术己经达到了一个很高的水平,国内的研究相对较少。下面分别介绍国内外一些主要的两轮自平衡系统的发展:1. SEGWAY HT2001年,美国的科学家Kamen发明了一种新型的两轮交通工具“Segway”3 。这种交通工具节能环保、方便快捷以及更为实用,而且由于其体积较一般的交通工具要小很多,所以在解决交通拥堵方面具有得天独厚的优势。图1.2.1为Segway公司生产的一种两轮自平衡电动车。Seg

12、way的运作基本原理主要是建立在“动态稳定”的基本原理之上的,它通过高精度的陀螺仪和其他角度传感器来检测车身的姿态,并通过高速的中央处理器发出指令,驱动电机以保持车身出于直立的平衡状态。图 1.2.1 Segway2. Nbot由美国科学家David P.Anderson研发的两轮自平衡机器人Nbot也是非常成功的应用例子。Nbot通过使用惯性传感器和电机编码器来实现系统的平衡。3. Unibot2007年,Unibot诞生于加州大学圣地亚哥分校,Unibot是两轮自平衡系统的最新研究成果,采用了独轮自平衡机器人控制,结合了倒立摆和惯性系统的驱动方式。在Unibot这个系统中,采用了陀螺仪和加

13、速度计作为姿态检测传感器,在车轮方向上利用电机驱动控制,在垂直于车轮方向上,利用不平衡体旋转来提供补偿力矩。虽然目前只实现了倾角小范围控制,但具有很重要的指导意义4。国内在这方面的研究主要成果有:台湾国立中央大学在2004年利用模糊控制实现了两轮自平衡小车的控制5。在2009年,北京工业大学电子工程与智能信息研究所研制出了“原人3号”机器人6,它是一种基于红外姿态检测的两轮自平衡机器人。通过设置机器人上部的红外传感器检测其与地面的距离,得出姿态信号,经过相应的处理之后,产生驱动信号。这种方法简单易行且有优良的控制效果。1.3 方案论证及选择由于两轮自平衡系统完美的综合了控制技术与电子技术知识,

14、对加深所学的理论知识有很大的帮助。实现两轮自平衡系统的主要方式就是通过单片机采集姿态传感器的数据来控制电机的运动。姿态传感器选用数字输出的六轴姿态传感器MPU6050。方案上的选择主要就是对MCU、电机驱动单元及控制算法的选择。首先,常见的单片机有8位的51单片机、8位的ATmega16单片机以及16位的Freescale单片机。那么两轮自平衡小车系统有三种方案可供选择。方案一,选用51单片机作为主控芯片。51单片机时目前发展最成熟的单片机,且型号众多、价格相对较低。可是由于其片内资源较少,而两轮自平衡小车系统需要A/D转换模块、PWM模块。如果选用51单片机的话,会增加外围电路的设计难度,而

15、且由于51单片机的运行速度相对较慢,这将导致系统的整体性能不高。方案二,选用ATmega16单片机作为两轮自平衡系统的主控芯片。虽然ATmega16单片机片内集成了A/D等资源,而且运算速度相比51单片机会快很多。但是由于ATmega16单片机只有32路I/O端口,若使用该单片机作为主控芯片,会导致I/O资源紧张。所以也不建议采用ATmega16作为主控芯片。方案三,使用Freescale的16位单片机S12XS128作为主控芯片。Freescale单片机运用在汽车控制方面有独特的优势,片内资源丰富、运算速度快、而且有非常丰富的I/O端口资源,便于两轮自平衡小车系统的扩展。因此,以Freesc

16、ale的16位S12单片机作为两轮自平衡系统的主控芯片是极其合适的7。第二,在两轮自平衡小车系统中,单机驱动单元影响着整个系统的性能。如果电机驱动单元效率高而且功率较大,那么整个系统的性能就得到了保障。常见的电机驱动芯片有L298N及东芝半导体公司的TB6612FNG等。本小车系统选用TB6612FNG芯片驱动电机8。TB6612FNG与L298N相比,除了具有L298N所具有的可以同时驱动两个直流电机之外,还有以下三个优势: TB6612FNG所能提供的驱动电流比L298N更大。 TB6612FNG的效率比L298N更高。 TB6612FNG有很小的发热量。因此选择TB6612FNG作为电机

17、驱动芯片是不错的选择。第三,两轮自平衡车属于本质不稳定系统,因此其实现的平衡是一种动态平衡。在遇到外界干扰如何快速恢复,保持自平衡等问题是控制算法需要考虑的问题。传统的PID控制完全可以满足两轮自平衡车的控制系统要求。因此核心控制算法采用PID控制即可。综上所述,整个系统的实施方案就是以MPU6050来获得姿态参数,然后送给Freescale S12单片机进行相关计算处理9,产生PWM信号。通过电机驱动芯片TB6612FNG驱动电机完成相应的控制要求,最终使小车能够直立。1.4 关键技术及目标1.4.1 姿态数据处理两轮自平衡小车系统中,姿态数据的处理包括角度、角速度等数据的采集,数据的转换与

18、计算以及相应的滤波处理。姿态数据的处理之于两轮自平衡小车系统犹如地基之于建筑。如果不能获得正确的姿态数据,那么系统将不能达到期望的控制要求。而且在两轮自平衡小车系统中,对数据的准确性、实时性要求非常高。所以在两轮自平衡小车系统中,能够获取正确的、具有控制意义的姿态数据也就成功了一半。在得到姿态数据之后,由于得到的数据中包含了一些噪声,所以并不能直接用来控制小车。需要进行相应的滤波处理。常用的软件滤波手段主要有平均值滤波、互补滤波以及Kalman滤波。其中,Kalman滤波效果最好,可是原理较难,单片机运算时间较长。互补滤波实现比较容易,但是效果不及Kalman滤波10。关于滤波的方法在后面的章

19、节中将详细介绍。1.4.2 控制算法的实现PID控制算法的实现又可以分为增量式PID和位置式PID。其中,增量式PID和位置式PID相比,具有运算量小的特点,非常适合在单片机中实现。PID控制算法也可以做的很深很广,但是在两轮自平衡小车系统中,只需要简单入门算法即可承担控制任务。PID算法的实现根据增量式PID的表达式书写即可11。1.4.3 目标本文主要介绍制作两轮自平衡小车系统的实现原理及方法,目标是:(1) 完成两轮自平衡小车的硬件设计与程序设计。(2) 能够通过无线遥控器对小车的运动方式进行控制,并将其运动状态显示出来。(3) 软件滤波的实现及结果分析,并分析Kalman滤波与互补滤波

20、的优劣势。(4) PID控制算法的实现。(5) 检测PID的控制效果,并在理论上与其他控制方法进行对比分析。第2章 两轮自平衡小车的原理本章主要介绍两轮自平衡小车系统的原理,结合相应的数学公式说明及简单的推导过程说明自平衡小车实现直立的原理及可操作性。2.1 小车的直立控制在杂技表演里经常可以看到这样的表演,一个杂技演员可以用头或者身体的其他某个部位支起一个物体,并能使物体保持垂直于地面的状态。这也是两轮自平衡小车的最直观的体验,所以控制车模直立的直观经验来自于人们的生活经验。一个人通过练习可以让一支笔在手指尖上保持直立,不过这需要两个条件:其一,手指可移动。其二,人眼可看到笔的运动趋势。其实

21、,人眼、大脑和手构成了一个负反馈系统。同理,两轮自平衡小车系统的直立控制也是通过负反馈来实现的。由于小车的两个轮子有两个共轴电机连接,所以小车只能在轮子滚动的方向上发生倾斜,那么这个时候只要控制车轮向与倾斜方向相同的方向运动,就可以抵消小车的倾斜趋势,也就可以使小车保持平衡了13,如图2.1.1所示。图 2.1.1 小车保持平衡示意图车体垂直车轮保持静止车体向左倾斜,车轮向左加速运行车体向右倾斜,车轮向右加速运行 。 当车体发生倾斜时,为了确定车轮的运动方式,下面对小车的模型进行分析。两轮自平衡小车系统可以看作是一个底部可移动的单摆模型14,通过对比单摆系统的特性进行对比分析。我们都知道单摆能

22、够稳定在竖直位置,其条件有两个:(1) 系统受到的回复力与位移相反;(2) 系统受到的阻尼力与速度的方向相反。正是因为有了则两个力的存在,所以单摆才能稳定在平衡位置。同理,如果小车要像单摆那样能够保持平衡,那么小车也要满足上面的两个条件。下面分析一下小车处于直立状态时的受力情况。如下图所示:图 2.1.3 小车受力分析mmgsin-mgsinF=mgl图 2.1.2 小车受力分析通过分析可以发现,两轮自平衡小车之所以不能稳定在竖直方向上,是因为当小车偏离平衡位置时,小车受到的回复力与位移方向相同,而不是相反。因此,当小车偏离平衡位置时,小车会加速偏离平衡位置直到倒下。如果要通过控制是小车能够像

23、单摆一样稳定在平衡位置,有两个办法可以达到目标:(1) 改变重力的方向。(2) 施加另外一个力,使得小车的回复力与位移相反。显然,只有第二种办法可行。当小车偏离平衡位置时,控制小车向其倾斜的方向做加速运动,这样小车就会受到一个额外的力,这个力与车轮的加速度方向相反,大小成正比。此时,小车所受到的回复力变为: (2-1)如果小车的加速度a与偏角成正比,比例为k1。当k1g时,那么回复力的方向便和位移的方向相反,小车就可保持平衡。此外,为了使能小车能够尽快的在垂直位置稳定,根据单摆的运动特性,还需要增加一个阻尼力。根据单摆的特性,增加的阻尼力大小应与偏角的速度成正比,方向相反。式2-1可以转换为:

24、 (2-2)按照上面的控制方法,两轮小车能够稳定在竖直方向上。因此,可得到控制车轮加速度的控制算法: (2-3)式中,为车模倾角;为角速度;k1、k2均为比例系数;k1、k2两个参数的作用如下图所示。两项相加后作为车轮加速度的控制量。图 2.1.3 小车平衡控制的两个系数为了进一步确定比例系数k1、k2与小车稳定的关系,下面将通过对小车模型建模来确定其应满足的条件。在进行建模之前,设定以下假设条件:假设小车的高度为L,质量为m,外力干扰引起车模产生的角加速度为x(t)。沿着垂直于小车地盘方向进行受力分析,可以得到小车倾角与车轮运动加速度a(t)以及外力干扰加速度x(t)之间的运动方程。图 2.

25、1.4 小车运动方程通过分析可以发现,当车模静止时,系统的输入输出传递函数为: (2-4)此时系统具有两个极点。显然,一个极点位于s平面的右半平面。根据控制理论可知,此时的系统是不稳定。引入上面得到的加速度负反馈控制后,得到新的系统如下图所示:P(s)图 2.1.5 小车直立控制框图此时系统的传递函数为: (2-5)系统的两个极点为:。系统稳定的条件是其两个极点都位于s平面的左半平面。因此,当时,小车能够在竖直方向上稳定。至此,可以得到要实现小车直立控制的条件有两个:(1) 能够准确的测量小车的倾角及角速度的大小。(2) 可以控制小车的加速度。关于小车倾角及角速度的测量会在后面的章节中介绍。对

26、小车加速度的控制实际上也是对电机的的运行状态进行控制。而电机的运行状态是与施加在电机上的电压相关的。通过对电机模型的简化,可以得到电机转速与电压之间的关系,即电机模型可看成一个一阶惯性环节。 (2-6)式中,E为电压;u(t)为单位阶跃函数;T1为惯性环节的时间常数;km为电机转速常数。对应不同的电压时,电机的转速变化曲线如图所示:/转速加速阶段恒速阶段t/minE=5VE=4V E=3VE=2V E=1V图 2.1.6 电机在不同电压下的速度曲线通过图中我们可以看到,电机的运行过程明显的分为两个阶段:加速阶段和恒速阶段。通过控制电机运行过程中的加速阶段的加速度就可以控制小车保持平衡。而此时施

27、加的电压大小等于上面计算的得到的加速度乘以一个比例系数的值。施加这样一个电压给电机,那么小车就可以保持平衡了15。2.2 倾角与角速度的测量倾角与角速度的测量是利用姿态传感器MPU6050得到的,将MPU6050安装好之后,当其敏感轴产生可测量的旋转时,相应轴的输出电压发生变化,经过MPU6050内部的16位AD转换器转换为数字量后,通过I2C总线输出,单片机直接采集相应的信号即可。在这里,需要采集一轴的加速度与角速度。将采集到的数据乘以相应的量纲过后,就得到了小车的倾角。2.3 本章小结本章主要从原理上对两轮自平衡小车的直立控制方法进行了分析。其中最重要的就是能够准确的、快速的获得小车当前的

28、角度与角速度。然后通过PID控制控制方法控制单片机PWM的输出来驱动电机运动,从而使小车能够自平衡。第3章 电路设计在了解了两轮自平衡小车系统的原理之后,接下来的关键问题就是硬件的设计。合理的电路设计能够使小车系统更加的稳定可靠,也会使调试过程变的相对容易。本章将介绍两轮自平衡小车的电源电路、单片机最小系统、测速电路、MPU6050模块以及无线遥控电路。3.1 整体电路框图在设计两轮自平衡小车系统之前,要先明确系统的输入量与输出量,并分配好I/O端口。这样才能有目的的设计硬件电路。在两轮自平衡系统中,系统的输入输出有:(1) 外部中断接口(3路)a) 测速:左右两路,光电编码器B相脉冲输入。b

29、) 无线遥控有效信号确认:一路,无线遥控中断信号。(1)(2) PWM接口(2路)a) 控制左右两个电机双向运行。(3) 通讯接口(9路)a) SCI(UART):三路,用于串口通信,调试使用。b) BDM:六路,用于下载程序。(4) 通用I/O接口a) I2C:两路,模拟I2C通信接口,用于与MPU6050通信。b) 无线遥控接收数据:四路,用于接收无线遥控解码数据。c) LCD1602接口:十一路,其中8路用于1602数据线,三路用于1602控制线号线。d) 电机控制信号:五路,一路用于电机运行状态信号STBY。另外四路用于电机转动方向控制。e) 方向判别:两路,用于连接光电编码器B相脉冲

30、,进行方向判断。可以看出,两轮自平衡小车系统用到的I/O资源是比较多的。MC9S12XS128具有丰富的I/O资源,能够满足系统要求,而且剩下的I/O资源还方便以后的拓展,比如加上超声波避障等功能。小车控制电路整体框图如下:图 3.1.1 小车整体电路图根据小车整体电路框图可知,控制电路分为以下几个模块:(1) 电源电路:电源电压降压稳压与滤波。(2) 单片机最小系统:包括时钟电路、复位电路、BDM下载接口等。(3) 电机驱动:驱动两个电机的功率电路。(4) 速度检测:光电编码器检测电机的转速。(5) 姿态数据采集电路:(6) 无线遥控:Pt2262/Pt2272发码、解码电路。下面分别介绍各

31、模块电路的详细设计方法。3.2 电源电路如果说单片机是两轮自平衡小车系统的大脑的话,那么电源无异于小车的心脏。电源系统设计的质量关系到整个系统的运行情况。只有一个稳定的电源,整个系统才能正常的工作。尤其是给单片机供电的电源,对电源质量的要求更高,如果电源波动很大,单片机就会出现复位的情况,由于电池的供电能力有限,所以当电机反向制动时,耗电非常大,这时电池电压就会被拉得很低,这时就要对单片机的供电进行保护。一种简单实用的方式就是用大电容给单片机储存电能,在电池电压拉低的短时间内给单片机提供电源,防止由于电压过低导致单片机复位。在两轮自平衡小车系统中,需要12V、5V两种电压大小的电源。其中12V

32、电压为电机的驱动电压,5V的电压是单片机以及姿态传感器、光栅编码器以及无线遥控模块的工作电压。整个系统的电源由一个大容量的12V锂电池提供,然后经过稳压芯片降压后得到5V的电压。用于产生5V电压的芯片选用常用的L7805三端稳压电压。使用L7805具有外围电路简单、价格便宜等优点。可是其内部功率损耗较大。5V的电源电路设计如下图:图 3.2.1 电源电路3.3 单片机最小系统3.3.1 S12单片机简介MC9S12XS128是Freescale公司推出的S12系列单片机中的一款增强型16位单片机。片内资源丰富,接口模块有SPI、SCI、IIC、A/D、PWM等常见模块,在汽车电子应用领域具有广

33、泛用途。MC9S12XS128单片机基于S12的CPU内核,可达到25MHz的HCS12的25倍性能。S12X系列增加了172条额外指令,可以执行32位计算(共280条指令),总线频率最高可以达到40MHz,改进了中断处理能力16。S12X系列的CPU采用复杂指令集CISC架构,集成了中断控制器,有丰富的寻址方式。中断有7个优先级并且内核支持优先级的调度,最多可有117个中断源,S12X可访问最多8M的全部存储空间(包括片内和片外资源)。MC9S12XS128单片机介绍主要特点有:(1) CPU:增强型16位HCS12 CPU,片内总线时钟最高40 MHz;(2) 片内资源:8 KB RAM、

34、128 KB程序闪存、2 KB数据闪存;(3) 串行接口模块:SCI、SPI;(4) 脉宽调制模块(PWM)可设置成4路8位或者2路16位,逻辑时钟选择频率宽;(5) 1个16路12位精度A/D转换器;(6) 控制器局域网模块(CAN);(7) 增强型捕捉定时器。 MC9S12XS128单片机有112、80和64引脚3种封装形式。80-pin封装的单片机没有引出用于扩展方式的端口,仅引出了一个8路A/D接口。在本自平衡小车系统中,采用112引脚封装形式的单片机,这样便于以后功能的拓展。3.3.2 MC9S12XS128最小系统电路本设计采用Freescale公司16位单片机MC9S12XS12

35、8为控制器,最小系统原理图如图3-3所示,主要包括单片机供电、复位电路、时钟电路以及BDM接口电路。图 3.3.1 HCS12最小系统3.4 MPU60503.4.1 MPU6050简介MPU6050是全球首例6轴姿态传感器,而且其超小的封装在业界更是创下纪录。与MMA7260加速度计及ENC-03陀螺仪相比,免除了组合陀螺仪与加速度计之间的轴差问题,同时也大大的降低了原件占用的空间,更利于模块化与小型化。MPU6050内部集成了3轴陀螺仪与3轴加速度计,内部拥有两个I2C端口,一个用于扩展其他的传感器,而另一个则作为MPU6050与MCU的通信端口。因此只需要两个端口就可以获取加速度与角速度

36、等参数,能够节省I/O端口资源。MPU6050内部集成了6个16位的AD转换器,输出加速度、角速度的数字量,通过I2C协议即可读取已经转换好的姿态数据,不用MCU在进行AD转换,减轻了MCU的运算负担17。另外,通过编程可以设置MPU6050内部加速度计与陀螺仪的量程。其中陀螺仪的量程可设为250、500、1000与2000/sec 几种方式。加速度计的量程有4种可选,分别为2g、4g、8g和16g。3.4.2 I2C通信I2C总线是由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。是微电子通信控制领域广泛采用的一种总线标准18。它是同步通信的一种特殊形式,具有接口线少,

37、控制方式简单,器件封装形式小,通信速率较高等优点。虽然I2C通信具有很多优点,可是对于是I2C通信的器件的读写必须严格的遵守I2C的工作时序,否则将不能成功的器件通信。MPU6050的I2C操作时序图如下:图 3.4.1 I2C通信时序3.5 电机驱动电路3.5.1 驱动芯片介绍在两轮自平衡小车系统中,需要控制电机正反转与停止。因此对电机驱动单元的要求比较高。在本系统中,电机驱动芯片采用东芝半导体公司生产的TB6612FNG电机驱动芯片。TB6612FNG是一款新型驱动器件,它具有大电流MOSFET-H桥结构,双通道电路输出,可同时驱动2个直流电机。它具有很高的集成度,同时能提供足够的输出能力

38、,运行性能和能耗方面也具有优势,因此在集成化、小型化的电机控制系统中,它可以作为理想的电机驱动器件。TB6612FNG的主要特点有:(1) 每通道输出最高1.2 A的连续驱动电流,启动峰值电流达2A/3.2 A(连续脉冲/单脉冲);(2) 4种电机控制模式:正转/反转/制动/停止;(3) PWM支持频率高达100 kHz;待机状态;(4) 片内低压检测电路与热停机保护电路;(5) 工作温度:-2085;(6) SSOP24小型贴片封装;(7) 外围电路简单,只需外接电源滤波电容。TB6612FNG芯片的封装图如下: 图 3.5.1 TB6612FNG引脚图 其中,PWMA/PWMB为控制信号输

39、入端;AO1/A02、B01/B02为2路电机控制输出端;STBY为正常工作/待机状态控制引脚;VM(4.515 V)和VCC(2.75.5 V)分别为电机驱动电压输入和逻辑电平输入端。TB6612FNG的逻辑真值表如下表所示:输入输出AIN1/BIN1AIN2/BIN2PWMSTBYAO1/BO1AO2/BO2状态HHH/LHLL制动LHHHLH反转LHLHLL制动HLHHHL正转HLLHLL制动LLHHOFF停止H/LH/LH/LLOFF待机表 3.5.1 TB6612FNG控制真值表3.5.2 驱动电路设计下图所示为TB6612FNG与单片机组成的电机控制单元。单片机的通用I/O口输出作

40、为AIN1/AIN2和BIN1/BIN2控制信号。STBY引脚作为控制电机运行或制动状态以及器件工作状态信号,也通过单片通用I/O口控制。PWMA、PWMB输入采用定时器输出硬件PWM脉冲,使得单片机CPU只在改变PWM占空比时参与运算,大大减轻了系统运算负担和PWM软件编程开销。电路采用耐压值25 V的10F电解电容和0.1F的电容进行电源滤波,使用功率MOSFET对VM和VCC提供电源反接保护。图 3.5.2 TB6612FNG电路图3.6 速度传感器电路3.6.1 光电编码器介绍在本自平衡小车系统中,测速采用光电编码器进行测速19。光电编码器是一种通过光电转换将输出轴上的机械几何位移量转

41、换成脉冲或数字量的传感器。这是目前应用最多的传感器,光电编码器是由光栅盘和光电检测装置组成。光栅盘是在一定直径的圆板上等分地开通若干个长方形孔。由于光电码盘与电动机同轴,电动机旋转时,光栅盘与电动机同速旋转,经发光二极管等电子元件组成的检测装置检测输出若干脉冲信号,通过计算每秒光电编码器输出脉冲的个数就能反映当前电动机的转速。此外,为判断旋转方向,码盘还提供相位相差90的两路A、B相脉冲信号。该编码器单圈输出4200个脉冲,精度很高。3.7 无线遥控电路3.7.1 Pt2262简介为了能够更好的控制小车,采用由Pt2262构成的无线遥控方式控制小车的运动状态。PT2262/2272是一对带地址

42、、数据编码功能的红外遥控发射/接收芯片。其中发射芯片PT2262-IR将载波振荡器、编码器和发射单元集成于一身,使发射电路变得非常简洁。接收芯片PT2272的数据输出位根据其后缀不同而不同,数据输出具有“暂存”和“锁存”两种方式,方便用户使用。后缀为“M”为“暂存型”,后缀为“L”为“锁存型”,其数据输出又分为0、2、4、6不同的输出,在本系统中使用的是暂存型数据输出方式。PT2262-IR发射芯片地址编码输入有“1”、“0”和“开路”三种状态,数据输入有“1”和“0”两种状态。由各地址、数据的不同接脚状态决定,编码从输出端Dout输出,通过红外发射管发射出去。其编码时序波形如图2所示。Dou

43、t输出的编码信号是调制在38kHz载波上的,OSC1、OSC2外接的电阻决定载频频率,一般电阻可在430k470k之间选择即可。PT2272的暂存功能是指当发射信号消失时,PT2272的对应数据输出位即变为低电平。而锁存功能是指,当发射信号消失时,PT2272的数据输出端仍保持原来的状态,直到下次接收到新的信号输入。 图 3.7.1 Pt2262/Pt2272通信时序图3.7.2 Pt2262应用图3是红外发射和接收的典型应用原理图,为了能正确解调出调制的编码信号,接收端需加一级前置放大级,保证输入PT2272的信号幅度足够大。PT2272各输出端通过各种接口即可控制相应的负载。图 3.7.2

44、 Pt2262/Pt2272典型运用电路3.8 液晶显示电路3.8.1 LCD1602简介1602是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义CGRAM,显示效果也不好)。1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)20。1602具有对比度可调、内含复位电路、提供各种控制命令、有80字节显示数据存储器DDRAM、8个可由用户自定义的5X7

45、的字符发生器CGRAM等特点。同时,微功耗、体积小、显示内容丰富、超薄轻巧。因此用1602来显示小车的运行速度是非常合适的。3.8.2 LCD1602电路下图是LCD1602的典型应用电路图,图 3.8.1 LCD1602运用电路图 3.8.2 1602操作时序LCD1602模块的读写操作都是通过指令编程来实现的。1602内部有专用的清零、复位以及读写等指令,把这些指令写入相应的寄存器即可完成对应的操作。为了保证读写的正确性,对1602的读写操作均有相应的时序要求。其中1602的读写操作时序图如下图:3.9 车模控制电路全图综合前面各节设计的子电路,可以得到两轮自平衡小车的控制电路,电路全图如下:图 3.9.1 小车控制电路全图 3.10 本章小结本章主要介绍了两轮自平衡小车的主要部分电路设计,电路的设计直接关系到系统的性能的好坏。在设计电路时,应充分考虑干扰的影响。在电源电路的设计时,输入输出都并接电容是为了增加电源的可靠性。在使用实时,输入端的电容容量可以适当的大一点,而输出端的电容则不能太大,在100uF以内为宜。输入端电容较大时,当切断电源之后,电容可以

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 考试专区 > 中考

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服