双轮自平衡小车机器人系统设计与制作.docx

上传人:小飞机 文档编号:5078969 上传时间:2023-06-02 格式:DOCX 页数:44 大小:509.38KB
返回 下载 相关 举报
双轮自平衡小车机器人系统设计与制作.docx_第1页
第1页 / 共44页
双轮自平衡小车机器人系统设计与制作.docx_第2页
第2页 / 共44页
双轮自平衡小车机器人系统设计与制作.docx_第3页
第3页 / 共44页
双轮自平衡小车机器人系统设计与制作.docx_第4页
第4页 / 共44页
双轮自平衡小车机器人系统设计与制作.docx_第5页
第5页 / 共44页
亲,该文档总共44页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《双轮自平衡小车机器人系统设计与制作.docx》由会员分享,可在线阅读,更多相关《双轮自平衡小车机器人系统设计与制作.docx(44页珍藏版)》请在三一办公上搜索。

1、燕山大学课程设计说明书题目:双轮自平衡小车机器人系统设计与制作学院(系):机械工程学院年级专业:12级机械电子工程组 号: 3学生姓名:指导教师:史艳国姚建涛李艳文史小华张庆玲唐艳华李富娟刘晓飞刘正操胡浩波日 期: 2015.11燕山大学课程设计(论文)任务书院(系):机械工程学院基层教学单位:机械电子工程系组号学生姓名设计题目双轮自平衡小车机器人系统设计与制作设计要求在课程研究项目所搭建的伺服控制系统的基础上,自主设计加工双轮车的机械系统,并完成 智能双轮自平衡车系统装配与调试。技 术 参 数所搭建的双轮车系统需要具备以下基本功能:a. 具备一定的自平衡能力,自动检测自身机械系统的倾角并完成

2、姿态的调整;b. 具备一定的负载承载能力,在加载一定重量的重物时能够快速做出调整并保证自身系统 的自我平衡;c. 具备速度调节能力,能够以不同的运动速度实现双轮车系统的前进、后退、左转与右转 等动作;d. 具备无线通讯功能,能够实现双轮自平衡车系统的无线远程操作控制。工 作 量(1)资料分析:查阅相关文献资料,对资料进行分析总结。(2)机器人总体设计:确定机器人的具体任务要求,根据任务初步拟定机器人的技术参数、 运动形式、机械结构、驱动方案、传动方案、控制方案等。(3)机器人机械结构设计:将机器人分解为车身结构、机械臂和手爪等若干部分,分别对 各个结构的关键部件进行详细设计并校核,绘制机器人总

3、装图和关键零部件图。(4)传感和信息检测及信息传输:根据任务要求,完成相关信息检测、处理,并完成信息 的正确传输。(4)运动控制方案设计;基于传感信息,采用单片机完成机器人控制系统硬件和软件的设 计和系统调试。(5)编制课程设计说明书工 作 计 划(1)资料查阅、分析总结,所需天数1天(2)总体方案设计,所需天数2天(3)机械结构设计,所需天数2天(4)传感、信息传输和运动控制系统的设计,所需天数2天(5)关键零部件的设计制作,所需天数2天(6)控制程序编码与调试,所需天数3天(7)绘制总装图和关键零件图,所需天数2天(8)系统整体装配与调试 所需天数3天(9)编制课程设计说明书所需天数2天(

4、10)答辩考核、演示,所需天数1天参考资料通过校园网在我校订阅的电子资料库中可以搜索到大量的有关机电一体化以及电机和电力 拖动的参考资料。同学们也可到学校的图书馆查找纸质期刊资料。机械学院的计算机中心上班时 间免费对本院学生开放。指导教师签字基层教学单位主任签字摘要两轮自平衡小车是一种非线性、多变量、强耦合、参数不确定的复杂系统,他 体积小、结构简单、运动灵活,适合在狭小空间内工作,是检验各种控制方法的一 个理想装置,受到广大研究人员的重视,成为具有挑战性的课题之一。两轮自平衡小车系统是一种两轮左右并行布置的系统。像传统的倒立一样,其 工作原理是依靠倾角传感器所检测的位姿和状态变化率结合控制算

5、法来维持自身平 衡。本设计通过对倒立摆进行动力学建模,类比得到小车平衡的条件。从加速度计 和陀螺仪传感器得出的角度。运用卡尔曼滤波优化,补偿陀螺仪的漂移误差和加速 度计的动态误差,得到更优的倾角近似值。通过光电编码器分别得到车子的线速度 和转向角速度,对速度进行PI控制。根据PID控制调节参数,实现两轮直立行走。 通过调节左右两轮的差速实现小车的转向。制作完成后,小车实现了在无线蓝牙通讯下前进、后退、和左右转向的基本动 作。此外小车能在正常条件下达到自主平衡状态。并且在适量干扰下,小车能够自 主调整并迅速恢复稳定状态。关键词: 自平衡陀螺仪控制调试刖言移动机器人是机器人学的一个重要分支,对于移

6、动机器人的研究,包括轮式、腿 式、履带式以及水下式机器人等,可以追溯到20世纪60年代。移动机器人得到快速 发展有两方面原因:一是其应用范围越来越广泛;二是相关领域如计算、传感、控制 及执行等技术的快速发展。移动机器人尚有不少技术问题有待解决,因此近几年对移 动机器人的研究相当活跃。近年来,随着移动机器人研究不断深入、应用领域更加广泛,所面临的环境和任 务也越来越复杂。机器人经常会遇到一些比较狭窄,而且有很多大转角的工作场合, 如何在这样比较复杂的环境中灵活快捷的执行任务,成为人们颇为关心的一个问题。 双轮自平衡机器人概念就是在这样的背景下提出来的。两轮自平衡小车是一个高度不 稳定两轮机器人,

7、是一种多变量、非线性、强耦合的系统,是检验各种控制方法的典 型装置。同时由于它具有体积小、运动灵活、零转弯半径等特点,将会在军用和民用 领域有着广泛的应用前景。因为它既有理论研究意义又有实用价值,所以两轮自平衡 小车的研究在最近十年引起了大量机器人技术实验室的广泛关注。本论文主要叙述了基于stm32控制的两轮自平衡小车的设计与实现的整个过程。 主要内容为两轮自平衡小车的平衡原理,直立控制,速度控制,转向控制及系统定位 算法的设计。通过此设计使小车具备一定的自平衡能力、负载承载能力、速度调节能 力和无线通讯功能。小车能够自动检测自身机械系统的倾角并完成姿态的调整,并在 加载一定重量的重物时能够快

8、速做出调整并保证自身系统的自我平衡。能够以不同运 动速度实现双轮车系统的前进、后退、左转与右转等动作,同时也能够实现双轮自平 衡车系统的无线远程控制操作目录摘要I前言II第1章项目任务11.1项目概述11.2项目内容21.3预期结果2第2章方案设计22.1芯片的选择22.2电机驱动的选择22.3陀螺仪的选择3第3章平衡车控制原理43.1控制系统要求分析43.2平衡控制原理53.3平衡车数学模型53.4 PID控制原理 93.5 PWM调速原理10第4章硬件设计114.1电路原理图114.2芯片的电路设计 114.3 电机驱动的电路设计124.4 陀螺仪的电路设计134.5编码器的电路设计 14

9、第5章平衡车结构设计155.1 元件清单及成本155.2 三维建模16第6章软件设计186.1程序框图186.2源代码18第7章实验测试197.1keil软件简介197.2测试过程及结果197.3最终实物图20第8章市场前景调查分析21结论22心得体会23参考文献24致谢25附录1 26第1章项目任务1.1项目概述移动机器人是机器人学的一个重要分支,对于移动机器人的研究,包括轮式、腿式、 履带式以及水下式机器人等,可以追溯到20世纪60年代。移动机器人得到快速发展有 两方面原因:一是其应用范围越来越广泛;二是相关领域如计算、传感、控制及执行等 技术的快速发展。移动机器人尚有不少技术问题有待解决

10、,因此近几年对移动机器人的 研究相当活跃。近年来,随着移动机器人研究不断深入、应用领域更加广泛,所面临的环境和任务 也越来越复杂。机器人经常会遇到一些比较狭窄,而且有很多大转角的工作场合,如何 在这样比较复杂的环境中灵活快捷的执行任务,成为人们颇为关心的一个问题。双轮自 平衡机器人概念就是在这样的背景下提出来的。两轮自平衡小车是一个高度不稳定两轮 机器人,是一种多变量、非线性、强耦合的系统,是检验各种控制方法的典型装置。同 时由于它具有体积小、运动灵活、零转弯半径等特点,将会在军用和民用领域有着广泛 的应用前景。因为它既有理论研究意义又有实用价值,所以两轮自平衡小车的研究在最 近十年引起了大量

11、机器人技术实验室的广泛关注。本文是对本质不稳定两轮小车自平衡控制问题的研究。并通过无线蓝牙远程控制小 车前进、后退、和左右转向等基本动作。1.2项目内容(1)设计两轮自平衡小车驱动电路。选择合适的电机、传感器和微控制单元并合理 设计相应的外围电路,最终完成两轮自平衡小车系统的硬件设计。(2)完成驱动板的调试。通过对驱动触发脉冲、D/A输出以及电机空载进行实验, 从功能上验证了其驱动板基本能够满足系统的要求。(3)处理传感器数据。选用惯性导航器件陀螺仪和加速度计,详细分析两者的工作 原理和各自单独使用所存在的问题。(4)研究自平衡小车的控制策略。最终实现平衡车的左转、右转、前进、后退等功 能。1

12、.3预期结果(1)具备一定的自平衡能力,自动检测自身机械系统的倾角并完成姿态的调整;(2)具备一定的负载承载能力,在加载一定重量的重物时能够快速做出调整并保证自身系统的自我平衡;(3) 具备速度调节能力,能够以不同运动速度实现双轮车系统的前进、后退、左转 与右转等动作;(4) 具备无线通讯功能,能够实现双轮自平衡车系统的无线远程控制操作。第2章方案设计2.1主控芯片的选择STM32单片机作为主控芯片。此芯片是以ARM的Cortex-M系列为内核的单片机, 相对其他单片机,外设丰富,主频高,价格便宜,有专门的软件库,操作简单,调试方 便,低功耗。强型系列时钟频率达到72MHz,是同类产品中性能最

13、高的产品;基本型时 钟频率为36MHz,以16位产品的价格得到比16位产品大幅提升的性能,是16位产品 用户的最佳选择。2.2电机驱动的选择TB6612FNG是东芝半导体公司生产的一款直流电机驱动器件,它具有大电流 MOSFET-H桥结构,双通道电路输出,可同时驱动2个电机。TB6612FNG每通道输出最高1.2 A的连续驱动电流,启动峰值电流达2A/3.2 A(连续 脉冲/单脉冲);4种电机控制模式:正转/反转/制动/停止;PWM支持频率高达100 kHz;待机 状态;片内低压检测电路与热停机保护电路;工作温度:-2085GSSOP24小型贴片封装。N1JW4A1N2A1N1.VCC5明GM

14、BINIHJN2FWKBVM2TB6612FNG 的主要引脚功能(如图 2.2.1): AINl/AIN2、BIN1/BIN2PWMA/PWMB 为控制信号输入端;AO1/A02、B01/B02为2路电机控制输出端;STBY为正常工作/待机状 态控制引脚;VM(4.515 V)和VCC(2.75.5 V)分别为电机驱动电压输入和逻辑电平输 入端。AO匚AO1 T PGND1 T Pf.HDI ITAO2T Ag叵 1102 l|T H曜叵 F(iND2 叵 PCHlJl 地acn叵BOl叵图 2.1 TB6612FNG 引脚TB6612FNG是基于MOSFET的H桥集成电路,其效率高于晶体管H

15、桥驱动器。相 比L293D每通道平均600 mA的驱动电流和1.2 A的脉冲峰值电流,它的输出负载能力 提高了一倍。相比L298N的热耗性和外围二极管续流电路,它无需外加散热片,外围电 路简单,只需外接电源滤波电容就可以直接驱动电机,利于减小系统尺寸。对于PWM 信号,它支持高达100 kHz的频率,相对以上2款芯片的5 kHz和40 kHz也具有较大优 势。2.3陀螺仪的选择MPU-60X0是全球首例9轴运动处理传感器。它集成了 3轴MEMS陀螺仪,3轴 MEMS加速度计,以及一个可扩展的数字运动处理器DMP (Digital Motion Processor), 可用I2C接口连接一个第三

16、方的数字传感器,比如磁力计。扩展之后就可以通过其I2C或 SPI接口输出一个9轴的信号(SPI接口仅在MPU-6000可用)。MPU-60X0也可以通过 其I2C接口连接非惯性的数字传感器,比如压力传感器。MPU-60X0对陀螺仪和加速度计分别用了三个16位的ADC,将其测量的模拟量 转化为可输出的数字量。为了精确跟踪快速和慢速的运动,传感器的测量范围都是用户 可控的,陀螺仪可测范围为250,500,1000,2000 /#(dps),加速度计可测 范围为 2,4,8,16g。一个片上1024字节的FIFO,有助于降低系统功耗。和所有设备寄存器之间的通信 采用400kHz的I2C接口或1MHz

17、的SPI接口(SPI仅MPU-6000可用)。对于需要高速 传输的应用,对寄存器的读取和中断可用20MHz的SPI。另外,片上还内嵌了一个温度传感器和在工作环境下仅有1%变动的振荡器。芯片 尺寸4X4X0.9mm,采用QFN封装(无引线方形封装),可承受最大10000g的冲击, 并有可编程的低通滤波器。关于电源,MPU-60X0可支持VDD范围2.5V5%,3.0V5%,或3.3V5%。另外 MPU-6050还有一个VLOGIC引脚,用来为I2C输出提供逻辑电平。VLOGIC电压可取1.8 5%或者 VDD。第3章平衡车控制原理3.1控制系统要求分析根据系统要求,小车必须要能够在无外界干预下依

18、靠一对平行的车轮保持平衡,并 完成前进,后退,左右转弯等动作。分析系统要求可知,保持小车直立和运动的动力都 来自于小车的两只车轮,车轮由两只直流电机驱动。因此,从控制角度来看,可以将小 车作为一个控制对象,控制输入量是两个车轮的转动速度。整个控制系统可以分为三个 子系统:(1)小车平衡控制以小车倾角为输入量,通过控制两个电机的正反转保持小车 平衡。(2)小车速度控制:在保持平衡的基础上,通过调节小车倾角实现对速度的控制, 实际上还是演变为对电机的控制实现小车的速度控制。(3)小车方向控制:通过控制两个电机间的转速不同实现转向。小车直立和方向控制任务都是直接通过控制车模两个后轮驱动电机完成的,而

19、速度 控制则是通过调节小车倾角完成的。小车不同的倾角会引起车模的加减速,从而达到对 小车速度的控制。三个子系统各自独立进行控制。由于最终都是对同一个控制对象(小车的电机)进 行控制,所以各个子系统之间存在着耦合。为了方便分析,在分析其中之一时,假设其 它控制对象都已经达到稳定。比如在速度控制时,需要小车已经能够保持直立控制;在 方向控制时,需要小车能够保持平衡和速度恒定;同样,在小车平衡控制时,也需要速 度和方向控制已经达到平稳。这三个任务中保持小车平衡是关键。由于小车同时受到三 种控制的影响,从小车平衡控制的角度来看,其它两个控制就成为干扰。因此对小车速 度、方向的控制应该尽量保持平滑,以减

20、少对平衡控制的干扰。以速度调节为例,需要 通过改变车模平衡控制中小车倾角设定值,从而改变车模实际倾斜角度,达到速度控制 的要求。为了避免影响车模平衡控制,这个车模倾角的改变需要非常缓慢的进行。其中 平衡控制是系统的最基本要求,也是整个控制系统的难点。3.2平衡控制原理控制小车平衡的直观经验来自人类日常生活经验。如人类身体拥有丰富的感知器官, 通过大脑调节便可以控制腰部及腿部肌肉保持人体的直立。而一般人通过简单训练就可 以让一根直木棍在手指尖保持直立不倒。这需要两个条件:一个是托着木棍的手指可以自由移动;另一个是人的眼睛可以观察木棍的倾斜角度与倾斜趋势(角速度)。这两个条 件缺一不可,实际上这就

21、是控制系统中的负反馈机制。自平衡车的控制也是通过负反馈来实现的,与在指尖保持木棍直立比较则相对简单。 由于小车只依靠两个车轮着地,车轮与地面会发生相对滚动使得小车倾斜。而小车上装 载的姿态检测系统能够对小车的倾斜状况进行实时检测,通过控制器控制车轮转动,抵 消在这个维度上的倾斜力矩便可以保持小车平衡,如图3.1所示。图3.1小车平衡原理fQ车体向右 偷斜.车 轮向右加 速运行.3.3平衡车数学模型为了准确控制车轮转动,保持小车始终稳定的直立平衡,需要对自平衡车进行运动 学分析并建立其数学模型,从而更好的设计控制系统。为了更加直观的分析系统受力情况,下面将直立小车与单摆模型进行对比说明小车 的受

22、力情况。-级剧立摆我型重力场中使用细线悬挂的重物经抽象化便形成理想化的单摆模型,两轮自平衡车可 以看作一级倒立摆模型进行分析,如图3.2所示。图3.2 一级倒立摆模型示意图对普通单摆进行受力分析如图3.3所示。图3.3单摆受力分析当物体离开平衡位置后便会受到重力与线的合作用力,驱使物体回复至平衡位置。 这个力称为回复力,其大小为:F=mgsin(式 3-1)在偏移角很小情况下,回复力与偏移角之间的大小成正比,方向相反。在此回复力 的作用下,单摆进行周期运动。由于空气阻力的存在,单摆最终会停止在平衡位置。空 气阻尼力与单摆的速度成正比,方向相反。阻尼力越大,单摆会越快停止在平衡位置。 可得出,单

23、摆保持平衡的条件有两点:(1)受到与偏移相反的回复力作用;(2)受到与运动速度相反的阻尼力作用。如果没有阻尼力,单摆会在平衡位置左右晃动而无法停止。如果阻尼力过小(欠阻 尼),单摆会在平衡位置震荡。阻尼力过大(过阻尼)则导致单摆恢复平衡时间加长。因 而存在一个临界阻尼系数,使单摆稳定在平衡位置所需时间最短。对静止的一级倒立摆模型进行受力分析(不考虑车轮与地面的滚动摩擦力),如图 3.4所示。图3.4静止受力分析由一级倒立摆模型静止时的受力分析可知,其回复力大小为:F=mgsin (式 3-2)静止的倒立摆之所以不能像单摆一样可以稳定在平衡位置,是因为在偏离平衡位置 时所受回复力与其偏移方向相同

24、,而不是相反,因此不能回复至平衡位置,而是加速偏 离垂直位置直至倾倒。经分析可知,要控制倒立摆使其能够与单摆一样能够回复至平衡位置并保持稳定有 两种方案。一种是改变重力方向;另一种是在系统中增加另外一种力使合回复力与偏移 方向相反。显然,只能通过第二种方法实现倒立摆的平衡,即在系统中额外增加一种力 使合回复力与偏移方向相反。根据牛顿第一运动定律(即惯性定律),任何一个物体在不受外力或受平衡力的作用 时,总是保持静止状态或匀速直线运动状态,直到有作用在其上面的外力迫使其改变这 种状态为止。牛顿运动定律只在惯性参考系中成立。在非惯性参考系中,由于惯性的存 在,物体会受惯性力。通过控制倒立摆底部车轮

25、,使其做加速运动。在此条件下再次分析倒立摆受力情况, 如图3.5所示。图3.5外力干扰下受力分析sin 0倒立摆之所以不能像单摆一样可以稳定在垂直位置,就是因为在它偏离平衡位置的 时候,所受到的回复力与位移方向相同,而不是相反!因此,倒立摆便会加速偏离垂直 位置,直到倒下。如何通过控制使得倒立摆能够像单摆一样,稳定在垂直位置呢?要达到这一目的, 只有两个办法:一个是改变重力的方向;另一个是增加额外的受力,使得恢复力与位移 方向相反才行。显然能够做到的只有第二种方法。控制倒立摆底部车轮,使得它作加速运动。这样站在小车上(非惯性系,以车轮作 为坐标原点)分析倒立摆受力,它就会受到额外的惯性力,该力

26、与车轮的加速度方向相 反,大小成正比。这样倒立摆所受到的回复力为:F = mgsinO - ma cos0 w mg0 - mk?(式 3-3)式中,由于O很小,所以进行了线性化。假设负反馈控制是车轮加速度a与偏角0成 正比,比例为匕。如果比例匕 g(g是重力加速度)那么回复力的方向便于位移方向相 反了。此外,为了使得倒立摆能够尽快地在垂直位置稳定下来,还需要增加阻尼力。虽然 存在着空气和摩擦力等阻尼力,相对阻尼力比较小。因此需要另外增加控制阻尼力。增 加的阻尼力与偏角的速度成正比,方向相反。因此,上式可变为:F = mg0 - mk 0 - mk 0,(式 3-4)12按照上面的控制方法,可

27、把倒立摆模型变为单摆模型,能够稳定在垂直位置。因此, 可得控制车轮加速度的控制算法:a = ki0 + k20,(式 3-5)式中,0为小车倾角;0 为角速度;匕 七均为比例系数;两项相加后作为车轮加 速度的控制量。只要保证在k1 g, k2 0条件下,可以使得小车像单摆一样维持在直 立状态。总结控制小车直立稳定的条件如下:(1)能够精确测量小车倾角。的大小和角加速度。的大小;(2)可以控制车轮的加速度。3.4 PID控制原理首先给出一个典型的PID算法框图,如下图所示:图3.6 PID算法框图在这里我们先将此图简化为仅剩P控制部分的框图:+ eft) u(t)c(t)图3.7 P算法框图比例

28、调节的公式是:u(t) = Kp * e(t), e(t) = r(t) t)(式 3-6)其中:r(t)是设定值,就是你想让被控系统某个参数所要保持的状态值;c(t)是系统的 这个参数的实际状态值。比例调节的过程就是即时成比例地反应控制系统的偏差信号e(t),偏差一旦产生, 通过Kp * e(t)产生控制作用以减小偏差。理想的情况是有多大的误差,通过这个调节 作用之后,就能将误差消除。但实际情况并非都是那么理想,Kp小了,修正不到位, Kp大了就会出现矫枉过正的现象。对于自平衡小车来说,要控制的这个参数就是小车的倾斜角度,就是想办法让这个 小车停在你所设定的角度上,这样小车就能稳定平衡了。这

29、样我们就知道了,控制的作用就是想让被控系统稳定在你所设定的某个值上。拿 小车的平衡来说就是让小车的倾斜角度与其物理(就是小车不控制时,能够自然稳定) 平衡角度一致,始终保持在这个倾斜状态。对于有些结构比较好的小车,仅比例这一项,在没有大的扰动的情况下,的确就能 稳定的控制小车平衡。但往往情况并非这么理想,所以还要用到积分项I或微分项D。 那么实际会出现小车来回摆动,或者始终往某个方向倾斜,造成小车往一边跑,最后控 制不住就倒地了。先说说来回摆动的问题吧,来回摆动是不是就是小车有一定的倾斜转动角速度,角 速度就是角度的微分。要不想让他摆动,就是控制这个角速度为0,这就不摆动了。那 么,我们增加D

30、项,就能达到这个目的,虽然不是绝对的解决,但还是明显的改善了很 多的。下面说下始终往一边偏的问题,如果能不往一边偏,仅来回摆动,也就是这个角度 一会大、一会小,一会正、一会负,经过积分,这个角度平均值几乎是0,如果往一边 偏的话,这个平均值就是某个不为0的值了,这是我们加上I项就能克服这个问题了。总结一下PID控制:对于角度环来说:P是消除角度的误差,I是消除角度累积的误 差,D是消除角度变化率(角速度)的误差;同理,对于速度环来说:P是消除速度的 误差,I是消除速度累积(位置)的误差,D是消除速度变化率(加速度)的误差。3.5 PWM调速原理对于电机的转速调整,我们是采用脉宽调制(PWM)办

31、法,控制电机的时候,电源 并非连续地向电机供电,而是在一个特定的频率下以方波脉冲的形式提供电能。不同占 空比的方波信号能对电机起到调速作用,这是因为电机实际上是一个大电感,它有阻碍 输入电流和电压突变的能力,因此脉冲输入信号被平均分配到作用时间上,这样,改变 在始能端PE2和PD5上输入方波的占空比就能改变加在电机两端的电压大小,从而改变 了转速。此电路中用微处理机来实现脉宽调制,通常的方法有两种:(1)用软件方式来实现,即通过执行软件延时循环程序交替改变端口某个二进制位 输出逻辑状态来产生脉宽调制信号,设置不同的延时时间得到不同的占空比。(2)硬件实验自动产生PWM信号,不占用CPU处理的时

32、间。第4章硬件设计4.1电路原理图am* I apt e - -fe kCT.rr.1图4.1电路原理图4.2主控芯片的电路设计(stm32)ARM公司的高性能” Cortex-M3”内核1.25DMipsMHz,而 ARM7TDMI 只有 0.95DMipsMHz1 us的双12位ADC, 4兆位秒的UART, 18兆位秒的SPI, 18MHz的IO翻转速度一流的外设,低功耗,最大的集成度,简单的结构和易用的工具在72MHz时消耗36mA(所有外设处于工作状态),待机时下降到2 u A复位电路、低电压检测、调压器、精确的RC振荡器等FAQ-WKU? . ADC12_1N)PAI / ADC1

33、2_IN1/ nxa_orFA2 / ADC121N2 T1XI2H3PA3 . ADC12_M3 / TIM2_CHJ PA4 / ADC12IN-J i SFI1_NSS PA5 / ADC1205 / SPlCsCK PAfi / TEvi3_CHl t ADClltf PA7 / TIKiCH2 ADC111N7TIN M_CH4 / timob / TIM4_Cm J DC1_EDA / TDM EC2_SCL / PBiO USARTSKX j DClSDA / PBil USBDP /CA5TTX / PA12CANRX / TIM1 CH4 /FA11 USARTl O f T

34、IXirCFB / PA10 6 函fi讶F TIM匚CEEP恐 TIXlfCHI / PAS 弭 12 MO5I / TIM1_CH3N / PB15 SPDAflSO / TEMLCH2N PBM SPI2_SCL Z TEI1_CH1N / PB13一 SPT2_NSS i PB12CNDJTKO2T103CS图4.2 STM32引脚4.3 电机驱动的电路设计(TB6612FNG)图 4.3 TB6612FNG 引脚STBY 口接单片机的IO 口清零电机全部停止,置1则通过AIN1 AIN2, BIN1,BIN2 来控制正反转,VM接12V以内电源,VCC接5V电源,GND接地,PWMA

35、和PWMB分别接接单片机的PWM 口,A01和AO2接电机1的两个脚BO1 和BO2接电机2的两个脚。表4-1电机1真值表AIN1001AIN2010停止正转反转表4-2电机2真值表BIN1001BIN2010停止正转反转4.4陀螺仪的电路设计MPU-60X0是全球首例9轴运动处理传感器。它集成了 3轴MEMS陀螺仪,3轴 MEMS加速度计,以及一个可扩展的数字运动处理器DMP,可用I2C接口连接一个第 三方的数字传感器。扩展之后就可以通过其I2C或SPI接口输出一个9轴的信号。 MPU-60X0也可以通过其I2C接口连接非惯性的数字传感器。图 4.4 Mpu6050 引脚接线方法:如图4.4

36、所示,VCC接5V电源,GND接地,SDA是数据线,接stm32 单片机的PB9引脚,SCL是时钟线,接stm32单片机的PB8引脚。4.5编码器电路设计图4.5为编码器结构示意图,中间为带有光栅的码盘,光通过光栅,接收管接收到 高电平,没通过,接收到低电平。电机旋转一圈,码盘上有多少光栅,接受管就会接收 多少个高电平。图4.5编码器结构原理图由于光电管器件直接输出数字脉冲信号,因此可以直接将这些脉冲信号连接到单片 机的计数器端口。每个光电管输出两个脉冲信号,它们波形相同,只是相位相差90。如果电机正转, 第二个脉冲落后90;如果电机反转,第二个脉冲超前90。可以通过这个关系判断电 机是否正反

37、转。在实际电路中,只检测了一路脉冲信号,通过它的频率测量得到电机的 转速。电机的转向是通过施加在电机上的电压正负进行判断的。虽然由于车模惯性存在, 可能在电机转速低的情况下,电机的转动方向与施加在其上的电压正负有可能不同,从 而造成电机转速测量不准。由于比赛时竞速比赛,一般情况下电机都是运行在高速状态 下,电机的转向与电压的方向是一致的。通过实验验证这个方法可以有效判断电机的转 动方向并进行速度控制。第5章 平衡车结构设计5.1元件清单及成本表5-1元件清单表序号元器件数量预算合计1轮胎22*9.5192带编码器电机22*551103电机犀22*5104雅克力板33*2.126.365焊接电路

38、板15.85.86stm32f103c8芯119.619.67电机驱动模块118.7218.728陀螺仪18.88.89降压模块22*12.52510蓝牙通讯模块118.5618.5611铜柱若干1012螺栓螺母若干513开关11114排针若干215排母若干216导线若干517烧录模块1222218电池113013019串口11010合计428.84 元5.2三维建模平衡车的结构比较简单,目前我们已经完成了对小车结构的设计,用solidwoks对 其进行三维建模。主要零件图如下:图5.1轮胎图5.2电机座图5.3亚克力板图5.4带编码器电机其装配图如下:图5.5小车装配图电机速度检测第6章软件

39、设计6.1程序框图传感器数据融合、滤波电机速度与姿态角度、角速度关w系女PID控制算法PWM输出图6.1程序框图运行程序时,首先系统程序初始化,接着是检测过程,分别对姿态角和角速度进行 检测。然后对所测数据进行融合与滤波。接着找出电机速度与姿态角度以及角速度的关 系对电机的速度进行检测。然后通过PID控制,用PWM进行输出对速度进行调整。最 后返回对姿态角和角速度检测的位置进入下一个循环。6.2源代码见附录1第7章实验测试7.1 keil软件简介Keil是德国知名软件公司Keil (现已并入ARM公司)开发的微控制器软件开发平 台,是目前ARM内核单片机开发的主流工具。Keil提供了包括C编译

40、器、宏汇编、连 接器、库管理和一个功能强大的仿真调试器在内的完整开发方案,通过一个集成开发环 境(uVision)将这些功能组合在一起。uVision当前最高版本是uVision3,它的界面和常 用的微软VC+的界面相似,界面友好,易学易用,在调试程序,软件仿真方面也有很 强大的功能。因此很多开发ARM应用的工程师,都对它十分喜欢。MDK-ARM 软件为基于 Cortex-M、Cortex-R4、ARM7、ARM9 处理器设备提供了一 个完整的开发环境。MDK-ARM专为微控制器应用而设计,不仅易学易用,而且功能 强大,能够满足大多数苛刻的嵌入式应用。MDK-ARM 有四个可用版本,分别是 M

41、DK-Lite、MDK-Basic、MDK-Standard、 MDK-Professionalo所有版本均提供一个完善的C / C+开发环境,其中MDK-Professional 还包含大量的中间库。7.2测试过程及结果本次项目整个过程基本都围绕着MDK-ARM软件进行着不断的测试与调试,在最初 的阶段我们通过对陀螺仪和电机的初步调试实现了电机的正反转。接着便是小车的自平 衡过程,一开始由于我们没有使用卡尔曼滤波计算倾角所以导致在测试时小车本体抖动 十分严重,完全达不到测试要求。通过卡尔曼滤波的计算后小车的抖动明显减小,但是 仍不能达到项目要求。然后我们通过改变PID的控制,对其Kp和Kd进

42、行不断的更改 和调试,使小车能够基本地保持平稳状态。通过进一步的优化,小车最终能够平稳站立 且基本没有抖动,甚至在有外界因素的干扰下也能自动回复其平衡状态。最后,我们通 过无线蓝牙通讯技术对小车进行了远程控制,小车可以在控制下实现前进后退与刹车等 功能。7. 3最终实物图图7.2最终实物图根据各个零件的尺寸要求,加工各个零件,根据三维建模的装配体,我们将小车 成功组装;另外还根据电路原理图,将各个电路模块正确连接。我们竟可能的降低小车 的重心,最终完成小车的组装,及电路的连接,最终的实物图如图7.2所示。第8章市场前景调查分析两轮自平衡小车是一个集动态决策和规划、环境感知、行为控制和执行等多种

43、功能 于一体的综合复杂系统,其关键是在解决自平衡的同时,还能够适应在各种环境下的控 制任务。通过运用外速度传感器、角速度传感器等,可以实现小车的平衡自主前进。近十年来,两轮自平衡机器人引起同外许多研究机构和机器人爱好者极大关注,各 种基于不同目的、不同设计方案和控制策略的自平衡系统相继而生。在这方面国外的研 究比较超前,研制出了一些具有代表性的机器人。目前市场上已经出现了两轮自平衡小车,而且他的制造技术也越来越成熟,我们可 以在广场,公园,机场,展览馆、体育馆都可以看见,他越来越被人们所青睐。之所以会如此受青睐首先,他的形体比较小,占用的空间小,特别适合在交通拥挤 的城市。其次,他的制造技术也

44、趋于成熟,制造成本不是很高,可以实现批量生产。最后, 他有极其广阔的市场,开发价值特别大。结论本设计主要研究两轮自平衡小车的设计与实现。通过相应硬件与软件的设计,实现 了两轮自平衡小车的动态平衡与运动控制。系统硬件结构以stm32为控制核心,采用mpu6050构成了姿态检测系统,通过电机 驱动模块及旋转编码器实现了直流电机的闭环调速,最终实现了两轮自平衡车的姿态检 测与平衡控制。本设计的控制策略采用PID控制算法。通过对小车的运动建模,构建了小车运动控 制的PD控制算法,并对PID参数进行了整定,使小车能够稳定地平衡。另外,我们还实现了蓝牙无线通讯,但是由于电机的缘故小车还不能完全实现前进、

45、后退。后期我们将继续努力,对其完善,最终实现小车的蓝牙遥控转弯,以及一些复杂 的动作。心得体会本次课设我们拿到的题目是了基于stm32控制的二轮平衡小车,由于之前我们对这方 面的知识了解的比较少,许多方面对于我们来讲都是极大的挑战。对我们而言,基本上所 有的知识在这之前都没接触过,这不仅给了我们对智能控制领域和自平衡领域有了一次更 深层次的学习的机会,也是对我们之前学的知识的总结。刚刚拿到这个题目的时候,我们束手无策,不知道从哪里开始但是,经过和老师已经 同学们的探讨,在电子开发网和各大技术论坛上和别人交流时,慢慢有了思路。基本上前 期我们处于探索阶段,学STM32单片机、C语言。在进行具体的电路设计和程序设计的 时候,我发现理论到实践的过程确实有相当的难度,这时候也是我们进度最慢

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号