单片机控制单轴双轮自动平衡小车设计_第1页
单片机控制单轴双轮自动平衡小车设计_第2页
单片机控制单轴双轮自动平衡小车设计_第3页
单片机控制单轴双轮自动平衡小车设计_第4页
单片机控制单轴双轮自动平衡小车设计_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计(论文)题 目:单片机控制单轴双轮自动平衡小车设计 系 别:电气工程系 专 业:电气工程及其自动化 班 级:电气 121 学 号: 学生姓名: 指导教师: 2016 年 月摘要两轮自平衡车由于其特有的灵活性以及便捷性越来越受到人们的关注,在人们的日常生活中也作为代步工具被越来越多的人群接受。本设计采用了基于 ARM CORTEX-M3 内核的 STM32 单片机,使平衡车姿态调整速度更快,数据处理更准确,运动性能更佳。并且放弃分别采用陀螺仪和加速度传感器来获取小车的姿态信息,而是直接采用了全球首例 9 轴运动处理传感器 MPU-6050,通过 DMP 获取四元数,以算出角度,并通过 PID 控制实现小车的直立平衡行走。采用蓝牙模块实现和小车之间的通讯工作,设计最终实现了小车的平衡站立、前进、倒退功能。实现小车的平衡直立行走,其实就是要对电机进行适时的控制,电机作为机电转换装置,遍布于国民经济的各个领域以及人们日常生活的方方面面,所以对电机的完美控制更显得极其重要,也是本设计的主要目的之一。STM32F10x 系列芯片是新型的 32 位嵌入式微处理器,具有优秀的数据处理能力,速度更快,在对本设计中的小车模型进行速度调整时,能展现出更灵敏的反应速度,更重要的是,它还具有较好的移植性,在很好的实现本设计任务的同时,利于将来更多功能的扩展。关键词: 平衡车; MPU6050;STM32;PID 控制 AbstractMore and more people have paid attention to The Two-wheeled Self-balancing Robot due to its unique flexibility and convenience. People had accept it as transport in peoples daily life. This study is just based on the purpose of explore the The Two-wheeled Self-balancing Robot .This design bases on STM32 micro controller which based on the CORTEX-M3 ARM core.because of that , the robot adjust faster, data processing more accurate ,performance better . At the same time, we directly using the worlds first 9 axis motion processing sensor MPU-6050 instead of the gyro and acceleration meter sensors to get the cars attitude information . to calculate the angle Through the DMP. And to achieve the cars upright balance walking through the PID control. Using Bluetooth module to achieve communication with the car. The Designed will achieve the balance of the car stand, forward, backward function. To achieve the balance of the car upright walking, in fact, is to timely control of the motor, electric motor is an electric machine conversion device which through all areas of the national economy and peoples daily life, so the perfect control of the motor is more important and is one of the main objectives of this design.stm32f10x series chip is new 32-bit embedded microprocessor , it has excellent performance, good portability and improve the efficiency of the DC motor control, and we have modular the l system, which will be conducive to the balance of the car after the function expansion.Key Word:Self-balancing Robot MPU6050 STM32 PID controller 目 录1 绪论 .12 平衡车总体设计方案 .22.1 系统平衡原理分析 .22.2 系统整体设计 .33 系统硬件电路设计 .53.1 系统硬件选型 .53.2 最小系统设计 .63.3 姿态检测电路设计 .63.4 电源稳压模块 .73.5 电机驱动模块设计 .84 系统软件部分设计 .104.1 软件系统总体结构 .104.2 单片机初始化 .104.3 姿态检测系统软件设计 .114.3.1 MPU6050 姿态获取方法 .114.3.2 卡尔曼滤波算法 .124.4 平衡 PID 控制软件实现 .134.4.1 直立环 PD 控制.134.4.2 速度环 PI 控制.145 系统调试 .165.1 角度矫正 .165.2 卡尔曼滤波调试 .165.3 PID 参数的整定 .165.3.1 PD 控制调试 .165.3.2 PI 控制调试 .166 结论 .18致谢 .19附录 1 程序 .20附录 2 电路图 .25参考文献 .26中原工学院信息商务学院毕业设计(论文)11 绪论近几年,不管是独轮车还是双轮平衡车都越来越受到人们的关注,随着时间发展,科技的进步,双轮平衡车也变得越来越智能化。最开始,瑞士研制了用 DSP 和 FPGA 控制的基于倒立摆理论的双轮车,通过倾斜传感器和倾角传感器来检测车体,通过电机上的编码盘检测电机的速度。该设计采用了基于状态反馈的线性控制策略,车的运动被分解成直线和旋转运动,然后分析直线运动和旋转运动,得到电机需要的控制量,最终把控制量耦合叠加。其主要的设计思想是:使车子朝车体倾斜的方向运动来保持车身的平衡,该控制只能让小车平衡运动,而不能让小车自主直立。之后,赛格威公司研发了 Segway 平衡车,它拥有更多的姿态传感器,有 5 个陀螺仪传感器,然而事实是检测车身倾斜只需要3 个传感器就够了,其他的两个传感器只是增加安全性。传感器采集到的数据发送给集成有许多处理器的电路板。这个集群是为了保证载人平衡车在其中任何一个处理器出现问题时能报告错误,保证了平衡车的安全性。它的设计是针对民用代步设计的,很具有代表性。国内方面,也已经有基于传感器 ADXL202 及反射式红外线距离传感器来获得姿态信息的设计 1,该设计基于 PWM 动态来控制直流电机的速度,车与上位机间的数据通信显示使用人机交互界面使用图形液晶点阵、方向摇杆、按键。依靠这些可靠并且完备的硬件,使用独特的软件算法,最终实现 Sway 的数据交换和平衡直立控制。发展趋势:平衡车正在朝着越来越智能化 2的方向的发展,已经提出了众多的解决平衡控制的方案。未来平衡车必将越来越小巧轻便,配备更完善的人机交互介面。另外,两轮自平衡车的应用前景将会十分的广泛,未来的目标是制造出外形结构简洁,并且具有稳定自平衡性能的平衡车,还能有方便的驾驶模式,必将方便大家的出行。中原工学院信息商务学院毕业设计(论文)22 平衡车总体设计方案2.1 系统平衡原理分析分析双轮平衡小车的平衡站立,我们自然联想到一根直立木棍在手指上保持直立,这正是人们在日常生活中对直立平衡控制的直观经验和感受。通过仔细分析不难发现,通过手指移动可以保持木棍的直立不倒,类比于单轴双轮平衡小车,我们在发现车身倾斜的时候,需要直接使车子向相反的方向运动,目的是抵消在这个维度上由于车身重力产生的倾斜,这样就能使车身保持直立平衡。导致车体倾斜的主要因素是 角度 3的产生, 角度是车身发生倾斜后车身和垂直于地面的直线的夹角,所以要想小车平衡,需要消除倾角,或将倾角控制在一个可控的范围之内,整个平衡控制流程如图 2-1 所示。图 2-1 平衡控制框图保持车身平衡的方法是转动电机来调整车身下部,以改变车身倾斜角度,来使车身保持在一水平垂直线上。然而这只是我们的直观感受,真正应用于理论设计的时候,就要写出小车的运动方程 4。车身受力分析如图 2-2 所示。车模运动方程:(2-1)在角度 很小时,运动方程简化为:cossind2 ttagtL中原工学院信息商务学院毕业设计(论文)30attLatgdtL2lm)(x)(taLgdtL2(2-2)车模静止时: (2-3)图 2-2 车模受力分析2.2 系统整体设计 目前市场上已经开发出单轴双轮自动平衡小车,已经可以满足代步和娱乐的目的,本设计的要求是,要设计出这样一个系统,使它具有自动平衡的功能,并且能够前进和后退。图 2-3 硬件结构图整个设计流程以 STM32 单片机为核心,选用了与该主控芯片相融和的其他几个必要的模块。姿态传感器模块电路测算小车车身姿态信息、并把信息提供给主控芯片 STM32。主控芯片 STM32 是整个小车模型的大脑,在接收到小车车身信息之后,与预先设定车身平衡数据进行比较,计算出小车需要调整的余量,转化成 PWM5控制信号,输出给电机驱动电路模块,电机驱动模块在接收到 PWM 信号之后再完成对电机的控制,电机上的编码器测速模块采集到电机速度信息,再把信息反馈给主控芯片 STM32。重复这样一个过程,完成车模的直立平衡控制、直立运动控制 6,依中原工学院信息商务学院毕业设计(论文)4靠蓝牙模块发送对整个小车的运动控制命令。 整个小车被设计成如图 2-3 所示的几种模块。选用基于 ARM 的 STM32F10X 系列单片机,这是一系列功能更强大的数据处理能力更强的主控芯片 7,必将会为之后平衡车的功能拓展提供方便。整个设计采用模块化的思想,这也正好切合了设计之初的想法,为实现小车更多功能的扩展提供方便。中原工学院信息商务学院毕业设计(论文)53 系统硬件电路设计3.1 系统硬件选型姿态传感器选型:InvenSense 公司的 MPU-6050 内置了一个数字可编程的低通滤波器、自带的可扩展的数字运动处理器 DMP。并且,InvenSense 提供了一个 MPU6050 的嵌入式运动驱动库,结合 MPU6050 的 DMP,可将原始数据直接换算成四元数输出,而得到四元数之后,就可以很方便的计算出欧拉角,从而得到yaw,roll, pitch,他们分别是俯仰角、横滚角、航向角。使用内置的 DMP,使主控芯片不用进行姿态解算过程。应用在平衡车上的 MPU-6050 有很多优点:体积小,功耗小,测量也很精确。MPU6050 内部集成了三轴陀螺仪以及加速度传感器 8。如果选用多组方案,成本会升高。所以最终,直接采用集成了动态滤波功能的 9 轴姿态传感器,传感器可以把处理后的姿态

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论