单轴两轮自平衡智能小车姿态控制系统设计

合集下载

两轮智能平衡小车研究思路和方法

两轮智能平衡小车研究思路和方法

两轮智能平衡小车研究思路和方法两轮智能平衡小车是一种应用于机器人领域的新兴技术。

该车可以在不借助外力的情况下,保持平衡状态并完成各种运动任务。

本文将介绍两轮智能平衡小车研究的思路和方法。

一、研究思路两轮智能平衡小车的研究思路是将传感器、控制器和电机组成一个可控制的系统。

系统监测小车的姿态和运动状态,并调整车身的倾斜角度和转速,以保持平衡状态。

具体思路如下:1. 对小车的电路进行设计和搭建,包括底层硬件协议和数据传输协议。

2. 选择和安装传感器,包括加速度计和陀螺仪。

通过这些传感器来获取小车的姿态和运动状态的信息。

3. 设计小车的控制器,包括将传感器获取的数据转换成控制信号的代码。

4. 设计和调试小车的电机驱动程序,以保证控制信号能够按照设定的方式正确地操作电机,并实现车身的平衡控制。

5. 完成小车的充电和充电管理系统。

二、研究方法两轮智能平衡小车的研究方法主要可以分为以下几个阶段:1. 车载装置安装:选择合适的传感器并将其安装在小车上。

同时,需要在小车上安装电池和充电系统。

2. 传感器校准和参数优化:通过收集和分析传感器的数据,可以校准传感器的误差,并对传感器的参数进行优化,以提高控制精度。

3. 控制器设计:开发适用于平衡车的控制器,并对控制器进行验证。

在设计控制器时,需要将传感器输出的数据进行滤波处理,并设置控制参数,以实现正确的运动控制。

4. 电机驱动程序设计和测试:为小车设计驱动程序,使其能够实现平稳的平衡控制,并能够实现必要的运动步态。

同时,需要进行严格的测试和验证,以确保小车在运动时能够保持平衡。

5. 性能测试:通过对小车进行不同场景的测试,可以评估平衡车系统的性能。

测试时需要考虑不同的地形和环境条件,以评估平衡车的实际应用情况。

三、总结两轮智能平衡小车研究是一个复杂的系统工程,需要涉及机械结构、电子技术、传感技术、控制系统等多个领域。

在研究中需要充分利用各种工具和方法,规划研究方向和目标,设计测试方案和方法,以实现高效的研究和开发。

基于单片机的两轮自平衡车控制系统设计

基于单片机的两轮自平衡车控制系统设计

基于单片机的两轮自平衡车控制系统设计摘要两轮自平衡车是一种高度不稳定的两轮机器人,就像传统的倒立摆一样,本质不稳定是两轮小车的特性,必须施加有效的控制手段才能使其稳定;本文提出了一种两轮自平衡小车的设计方案,采用重力加速度陀螺仪传感器MPU-6050检测小车姿态,使用互补滤波完成陀螺仪数据与加速度计数据的数据融合;系统选用STC公司的8位单片机STC12C5A60S2为主控制器,根据从传感器中获取的数据,经过PID 算法处理后,输出控制信号至电机驱动芯片TB6612FNG,以控制小车的两个电机,来使小车保持平衡状态;整个系统制作完成后,小车可以在无人干预的条件下实现自主平衡,并且在引入适量干扰的情况下小车能够自主调整并迅速恢复至稳定状态;通过蓝牙,还可以控制小车前进,后退,左右转;关键词:两轮自平衡小车加速度计陀螺仪数据融合滤波 PID算法Design of Control System of Two-Wheel Self-Balance Vehicle based onMicrocontrollerAbstractTwo-wheel self-balance vehicle is a kind of highly unstable two-wheel robot. The characteristic of two-wheel vehicle is the nature of the instability as traditional inverted pendulum, and effective control must be exerted if we need to make it stable. This paper presents a design scheme of two-wheel self-balance vehicle. We need using gravity accelerometergyroscope sensor MPU6050 for the inclination angle of vehicle, and using complementary filter for the data fusion of gyroscope and accelerometer. We choose an 8-bit microcontroller named STC12C5A60S2 from STC Company as main controller of the control system. The main controller output control signal, which is based on the data from the sensors, to the motor drive chip named TB6612FNG for controlling two motors of vehicle, and keeping the vehicle in balance. After the completion of the control system, the vehicle can achieve autonomous balance under the conditions of unmanned intervention, the vehicle can adjust automatically and restored to a stable state quickly in the case of giving appropriate interference as well. In addition, we can control the vehicle forward, backward and turn around. Key words: Two-Wheel Self-Balance Vehicle; Accelerometer; Gyroscope; Data fusion;Complementary filter; PID algorithm1 绪论自平衡小车的研究背景近几年来,随着电子技术的发展与进步,移动机器人的研究不断深入,成为目前机器人研究领域的一个重要组成部分,并且其应用领域日益广泛,其所需适应的环境和执行的任务也更复杂,这就对移动机器人提出了更高的要求;比如,户外移动机器人需要在凹凸不平的地面上行走,有时机器人所需要运行的地方比较狭窄等;如何解决机器人在这些环境中运行的问题,已成为现实应用中所需要面对的一个问题;两轮自平衡小车就是在这些的需求下所产生的;这种机器人相对于其他移动机器人的最显着特点是:采用了两轮共轴、各自独立驱动的方式工作,车身重心位于车轮轴上方,通过车轮的前后滚动来保持车身的动态平衡,并可以在直立平衡状态下完成前进、后退、左右转等任务;正是由于其特殊的构造,两轮自平衡小车适应地形变化的能力较强,且运动灵活,可以胜任一些复杂环境中的工作;两轮自平衡车自面世以来,一直受到世界各国机器人爱好者和研究者的关注,这不仅是因为两轮自平衡车具有独特的外形和结构,更重要的是因为其自身的本质不稳定性和非线性使它成为很好的验证控制理论和控制方法的平台,具有很高的研究价值;早在1987年,日本电信大学教授山藤一雄就提出了两轮自平衡机器人的概念;这个基本的概念就是用数字处理器来侦测平衡的改变,然后以平行的双轮来保持机器的平稳;本世纪初;美国发明家狄恩·卡门与他的DEKA公司研发出了可以用于载人的两轮自平衡车,并命名为赛格威,投入市场后,引发了自平衡车的流行;由于两轮自平衡车有着活动灵活,环境无害等优点,其被广泛应用于各类高规格社会活动中,目前该车已用于奥运会、世博会、机场、火车站等大型场合;自平衡小车研究意义由于两轮自平衡小车具有结构特殊、体积小、运动灵活、适应地形变化能力强、能够方便的实现零半径回转、适合在拥挤和危险的空间内活动、可以胜任一些复杂环境里的工作;因此两轮自平衡车有着广泛的应用前景,其典型应用包括代步工具、通勤车、空间探索、危险品运输、高科技玩具、控制理论测试平台等方面;目前自平衡车的应用如自平衡的代步车正在流行开来;因此两轮自平衡车的研究很有意义;论文的主要内容本论文主要叙述了基于单片机的两轮自平衡车控制系统的设计与实现的整个过程;主要内容为两轮自平衡小车的平衡原理,直立控制,蓝牙控制;整个内容分为六章,包括绪论、课题任务与关键技术、系统原理概述、系统硬件设计、系统软件设计和系统的机械安装及调试;第一章主要讲解了课题的研究背景及意义,国内外研究现状;第二章主要讲解了设计的主要任务与所需的关键技术;第三章主要讲解了两轮自平衡小车控制系统的直立控制原理,转向控制原理;第四章主要讲解了系统的硬件设计,介绍了自平衡小车控制系统的硬件构成,主控芯片STC12C5A60S2的结构及组成,以及稳压电源模块,倾角测量模块,直流电机驱动模块,蓝牙控制模块和两轮测速模块的设计;第五章主要讲解了软件设计的算法功能与框架,主要描述了控制系统的程序实现以及PID算法的使用;第六章主要讲解了系统的调试与参数整定;最后总结与展望,总结本设计的各个模块,并对两轮自平衡小车的优化方向进行简要的阐述;2 课题任务与关键技术主要任务本文研究并设计了一种基于单片机的两轮自平衡小车控制系统,实现了两轮小车的自主直立控制与蓝牙控制功能;系统采用STC12C5A60S2单片机作为核心控制单元,通过增加各种传感器,设计相应电路并编写相应程序完成平衡控制与蓝牙控制;系统需要利用加速度计和陀螺仪获得车体的倾角和角速度,并对数据进行互补滤波融合;通过编码器获得两轮的速度信息;根据获得的数据信息对速度和倾角进行闭环控制;加入蓝牙通信控制,将所有输出数据进行叠加,输出至驱动芯片,实现对小车的控制;关键技术系统设计两轮自平衡车的系统设计包括:车身机械结构设计,硬件系统设计和软件系统设计;在机械结构上必须保持小车重心的稳定性,才能避免控制系统过于复杂;硬件系统必须包含自平衡车所需的所有电子系统与电气设备;软件系统则负责车身平衡控制与目标效果的实现;数学建模模型的建立有助于控制器的设计,以及控制系统各项参数的大概确定;模型的建立主要使用牛顿力学定律;姿态检测两轮自平衡车是一个本质不平衡的系统,控制系统对小车的精确控制依赖于姿态检测系统对车身姿态及运动状态的精确检测;目前,一般采用由陀螺仪和加速度计等惯性传感器组成的姿态检测系统对车身倾角进行实时、准确的检测;但是由于惯性传感器自身固有的特性,随着温度、震动等外界变化,会产生不同程度的噪声与漂移,因此必须采用一些滤波算法,对加速度计和陀螺仪所采集的数据进行融合,使测量角度更加真实稳定;控制算法两轮自平衡车所实现的平衡是一种动态的平衡;在遇到外界干扰时,需要通过控制算法来快速将小车恢复至平衡状态;传统的PID算法在各类工业场合有着广泛的应用,完全可以满足本控制系统的要求,因此本控制系统设计采用PID控制算法;3 系统原理分析控制系统任务分解根据系统要求,小车必须能够在没有外界干预的情况下依靠两个同轴安装的车轮保持平衡,并完成前进,后退,左右转等动作;相对于四轮车,控制系统的任务更为复杂,为了能解决该问题,首先将复杂的问题分解成简单的几个问题进行讨论;对系统要求进行分析,可知维持小车直立,并在受到外界干扰后迅速恢复稳态,完全依赖于一对直流电机对车轮的驱动;因此本控制系统的设计可以从对电机的控制着手,控制电机的转速以及转向来实现对小车的控制;小车的控制任务可以分解成以下三个基本任务:(1)控制小车直立:通过控制两个电机的转向保持小车的直立状态;(2)控制小车车速:通过控制两个电机的转速实现车速控制;(3)控制小车转向:通过控制两个电机的转速差实现转向控制;以上三个任务都是通过控制小车两个车轮的驱动电机完成的;直流电机的控制最终取决于电机两端输入的电压大小,将电机近似认为处于线性状态,因此上述三个基本任务可以等效成三种不同控制目标的电压,将这三种电压进行叠加后,便可以得到最终所需的电压,并将其施加在电机上以达到所追求的控制效果;在这三个任务中,保持小车平衡是关键,三个任务执行的优先级为:平衡控制>速度控制>转向控制;由于小车同时受到三种控制的影响,从平衡控制角度来看,其他两个控制就成为了它的干扰;因此对小车速度、方向的控制应该尽量保持平滑,以减少对平衡控制的干扰;上述三种控制各自独立进行,它们各自假设其他两个控制都已经达到稳定;比如控制小车加速和减速的时候,平衡控制一直在起作用,它会自动改变小车的倾角,使小车实现加速和减速;控制原理生活中有很多直立控制的例子,例如一个正常人可以经过简单的练习,让一根直木棒在水平的掌心中保持直立;这需要两个条件:一是托着木棒的手掌可以移动;二是眼睛可以观察到木棒的倾斜角和倾斜趋势角加速度;可以通过手掌的移动抵消木棒的倾斜角度和趋势,从而保持木棒的直立;这两个条件缺一不可,这就是控制中的负反馈机制;单,因为小车有两个车轮着地,因此车体只会在一个平面内发生倾斜;控制车轮转动便可抵消倾斜的趋势从而保持车体直立;数学模型二轮自平衡小车在建模时可以将其简化为倒立摆,便于进行受力分析并建立其数学模型,从而更好的设计控制系统;图 单摆模型与倒立摆模型通过对单摆模型的观察可知,当物体离开平衡位置后会受到重力与线的合作用力,驱使重物回复至平衡位置,并进行周期运动,由于空气阻力的存在,单摆最终会停在平衡位置;可以得出,单摆保持平衡的条件有两点:(1) 受到与位移方向相反的回复力作用;(2) 受到和运动速度相反的阻尼力作用;如果没有阻尼力的作用,单摆会在平衡位置左右晃动无法停止,如果阻尼力过小,单摆会在平衡位置震荡,如果阻尼力过大,则单摆的回复时间将变长,因此存在一个临界阻尼系数,使得单摆停止在平衡位置所需时间最短;车体垂直,车车体向前倾车体向后倾斜,图 通过车轮控制车体平衡倒立摆在偏离平衡位置时,受到的合力与位移方向相同,因此倒立摆不能像单摆一样稳定在垂直位置,并且会加速偏离平衡位置直至倒下;为了让倒立摆能像单摆一样平衡在稳定位置,只能通过增加额外受力使回复力与位移方向相反;控制车轮做加速运动,以小车作为参考系,重心受到一个额外的惯性力,与车轮加速度大小相同,方向相反;因此倒立摆所受到的回复力为F =mgsinθ−macosθ 3-1根据控制系统的特性,角θ需要控制在很小的范围内,并且假设控制车轮加速度与角θ成正比,比例系数为k 1,因此上式可近似处理为F =mgθ−mk 1θ 3-2此时,只要k 1>g ,回复力的方向便和位移方向相反,此时小车可以恢复到平衡位置;为使小车能在平衡位置尽快的稳定下来,还需要有阻尼力,阻尼力与角速度方向相反,大小成正比;式3-2可变为 F =mgθ−mk 1θ−mk 2θ′ 图 小车受力分析mgsinθ−macosθmgθ m3-3式中,k1,k2均为比例系数,θ为小车倾角,θ′为角速度;只要满足k1>g,k2>0,便可以将小车维持在直立状态;k2是小车回到垂直位置的阻尼系数,选取合适的阻尼系数可以保证小车可以尽快稳定在垂直位置;因此为了控制小车稳定,需要精确的测量小车倾角θ的大小和角速度θ′的大小,并以此控制车轮的加速度;4 系统硬件设计本控制系统主要由以下几个模块组成:STC12C5A60S2单片机最小系统、电源管理模块、车身姿态感应模块、电机驱动模块、速度检测模块、蓝牙模块,各模块关系图如下所示:图硬件设计总体框图STC12C5A60S2单片机介绍本控制系统采用STC12C5A60S2单片机作为控制核心;该单片机是深圳宏晶科技有限公司的典型单片机产品,采用了增强型8051内核,片内集成了60KB程序Flash、1KB数据FlashEEPROM、1280字节RAM、2个16位定时/计数器、44根I/O口线、两个全双工异步串行口UART、高速同步通信端口SPI、8通道10位ADC、2通道PWM/可编程计数器阵列/捕获/比较单元PWM/PCA/CCU、MAX810专用复位电路和硬件看门狗等资源;STC12C5A60S2具有在系统可编程ISP功能和在系统调试ISD功能,可以省去价格较高的专门编程器,开发环境的搭建非常容易,并且该单片机所有指令和标准的8051内核完全兼容,具有良好的兼容性和很强的数据处理能力;STC12C5A60S2系列单片机的内部结构框图如下所示,该单片机中包含中央处理器CPU、程序存储器Flash、数据存储器SRAM、定时/计数器、UART 串口、串口2、I/O接口、高速A/D转换、SPI接口、PCA、看门狗及片内R/C振荡器和外部晶体振荡电路等模块;STC12C5A60S2单片机几乎包含了数据采集和控制中所需的所有单元模块,可称得上一个片上系统;图 STC12C5A60S2系列内部结构框图图单片机最小系统电源管理模块电源管理模块为整个硬件电路提供所需的电源,其稳定性是整个硬件电路可靠运行的基础;为了减少各个模块之间的相互干扰,电源模块由若干相互独立的稳压电路模块组成;整个系统由三节的18650锂电池串联供电;选择LM2596S作为稳压芯片,整个系统的供电模块如下图所示;图系统供电模块示意图LM2596S开关电压调节器是降压型电源管理单片集成电路,能够输出3A的驱动电流,同时具有很好的线性和负载调节特性;该器件内部集成频率补偿和固定频率发生器,开关频率为150KHz,与低频开关调节器相比较,可以使用更小规格的滤波元件;该器件还有其他一些特点:在特定的输入电压和输出载荷的条件下,输出电压的误差可以保证在±4%的范围内,振荡频率误差在±15%的范围内;可以用仅80uA的待机电流;可实现外部断电;具有自我保护电路;该器件完全可以满足系统需要;稳压电路原理图如下图所示;图稳压电路原理图车身姿态感应模块在第三章原理分析中可知,为了控制小车稳定,需要精确的测量小车倾角θ的大小和角速度θ′的大小,并以此控制车轮的加速度,以此消除小车的倾角;因此小车倾角以及倾角的角速度的测量成为了控制小车直立的关键;测量小车倾角和角速度可以通过加速度传感器和陀螺仪实现;本控制系统的设计使用了整合性6轴运动处理组件,相较于多组件方案,免除了组合陀螺仪与加速器时的轴间差的问题,减少了大量的封装空间;MPU6050对陀螺仪和加速度计分别用了三个16位的ADC,将其测量的模拟量转化为可输出的数字量,和所有设备寄存器之间的通信采用400kHz 的I2C 接口;为了精确跟踪快速和慢速的运动,传感器的测量范围都是用户可控的,陀螺仪的可测范围为±250,±500,±1000,±2000°/秒dps,加速度计可测范围为±2,±4,±8,±16g;量程越大,测量精度越低;MPU6050实物及坐标轴示意图如下图所示;加速度计MPU6050的加速度计部分可以测量出各轴方向上的加速度,并经过AD 转换后可输出数字信号;加速度检测的基本原理如下图所示;++++X++X图 MPU6050实物图与对应坐标轴示意图 加速度检测的基本原理通过微机械加工技术在硅片上加工形成了一个机械悬臂;它与相邻的电极形成了两个电容;由于加速度使得机械悬臂与两个电极之间的距离发生了变化,从而改变了两个电容的参数;通过集成的开关电容放大电路测量电容参数的变化,形成了与加速度成正比的电压输出;只需要测量出一个轴上的加速度,便可计算出小车的倾角;如下图所示,设小车前进方向是小车直立时MPU6050的Y 轴正向;当小车前倾时,小车重心在Y 轴上所受的力便是重力在Y 轴上的分力,为mgsinθ,因此MPU6050在Y 轴上所获得的加速度为 gsinθ;似乎只需要获得加速度数据就可以获得小车的倾角,但在实际小车的运行过程中,由于小车本身的运动所产生的加速度会产生很大的干扰信号叠加在上述测量信号上,使得输出信号无法准确的反映小车的倾角,如下图所示;小车运动所产生的振动加速度使得输出电压在实际倾角电压附近波动,可以使用低通滤波将其过滤,但也会使得信号无法实时反映小车的倾角变化,从而影响对小车的控制,使得小车无法保持平衡;图 小车受力分析图 加速度计信号波动陀螺仪陀螺仪可以用来测量物体的旋转角速度,它利用了旋转坐标系中的物体会受到克里利奥力的原理,在器件中利用压电陶瓷做成振动单元;当器件旋转时会改变振动频率从而反映出物体旋转的角速度;将MPU6050安装在小车上时,可以测量出小车倾斜的角速度,将角速度信号进行积分便可得到小车的倾角;如下图所示;由于陀螺仪输出的是车模的角速度,不会受到车体振动的影响,因此该信号中的噪声很小,小车的倾角数据又是由所测角速度积分得来,进一步使信号变得平滑,从而使得角度信号更加稳定;但是在实际情况中,测量所得的角速度信号存在微小的误差,经过积分运算之后,会形成累计误差,并会随着时间的延长逐步增加,最终导致电路饱和,无法形成正确的角度信号;如下图所示;测t图 小车的角速度和角图 角度积分漂如上所述,加速度计对加速度很敏感,所获得的数据会由于小车的运动产生高频噪声;而陀螺仪所测得的数据受到车体振动影响很少,但是随着时间延长,容易存在积分漂移;因此可以使用互补滤波,使得这两个传感器正好能弥补相互的缺点;简而言之,互补滤波就是在短时间内采用陀螺仪得到的角度作为最优,定时对加速度转化而来的角度进行取平均值处理来校正陀螺仪所得到的角度;具体实现方法如下图所示;利用加速度计所获得的角度信息θg 与陀螺仪积分后的角度θ进行比较,将比较的误差信号经过比例T g 放大之后与陀螺仪输出的角速度信号叠加之后再进行积分;从上图的框图可以看出,对于加速度计给定的角度θg ,经过比例、积分环节之后产生的角度θ必然最终等于θg ;由于加速度计获得的角度信息不会存在积累误差,所以最终将输出角度θ中的积累误差消除了;加速度计所产生的角度信息θg 中会叠加很强的噪声信号;为了避免该噪声信号对于角度θ的影响,比例系数T g 应该非常小;这样,加速度的噪声图 互补滤波原理框图信号经过比例、积分后,在输出角度信息中就会变得很小;由于存在积分环节,所以无论T g多小,最终输出角度θ必然与加速度计测量的角度θg相等,但是这个调节过程会随着T g的减小而延长;为了避免输出角度θ跟着θg过长,可以采取以下两个方面的措施:(1)仔细调整陀螺仪的放大电路,使得它的零点偏置尽量接近于设定值,并且稳定;(2)在控制电路和程序运行的开始,尽量保持小车处于直立状态,这样一开始就使得输出角度θ和θg相等;此后,加速度计的输出只是消除积分的偏移,输出角度不会出现很大的偏差;电机驱动模块本控制系统采用了TB6612FNG作为直流电机驱动器件,该器件具有很高的集成度,同时能提供足够的输出能力,运行性能和能耗方面也具有优势,因此在集成化、小型化的电机控制系统中,它可以作为理想的电机驱动器件;TB6612FNG是东芝半导体公司生产的一款直流电机驱动器件,它具有大电流MOSFET-H桥结构,双通道电路输出,可同时驱动2个电机;该器件每通道输出最高的连续驱动电流,启动峰值电流达2A/连续脉冲/单脉冲;4种电机控制模式:正转/反转/制动/停止;PWM支持频率高达100kHz;待机状态;片内低压检测电路与热停机保护电路;工作温度:-20~85℃;SSOP24小型贴片封装;如上图所示,TB6612FNG 的主要引脚功能:AIN1/AIN2、BIN1/BIN2、PWMA/PWMB 为控制信号输入端;AO1/AO2、BO1/BO2为2路电机控制输出端;STBY 为正常工作/待机状态控制引脚;VM~15V 和VCC~分别为电机驱动电压输入和逻辑电平输入端;TB6612FNG 是基于MOSFET 的H 桥集成电路,其效率高于晶体管H 桥驱动器,并且外围电路简单,只需外接电源滤波电容就可以直接驱动电机,利于减小系统尺寸;对于PWM 信号,它支持高达100kHz 的频率;TB6612FNG 在本控制系统中的电路连接如下图所示;如上图所示,AIN1/AIN2,BIN1/BIN2以及STBY 连接直单片机的普通I/O 口,STBY 控制器件的工作状态,AIN1/AIN2和BIN1/BIN2的输入决定电机的正反转;单片机的PCA 模块产生PWM 输出作为电机转速的控制手段,连接至TB6612FNG 的PWMA/PWMB;电路采用耐压值25V 的10uF 电解电容和的电容进行电源滤波,使用功率MOSFET 对VM 和VCC 提供电源反接保护;TB6612FNG 图 TB6612FNG 芯片功能示意图图 TB6612FNG 电路连接示意图的逻辑真值表如下图所示;表1 TB6612FNG逻辑真值表输入输出H H H/L H L L制动L H H H L H反转L H L H L L制动H L H H H L正转H L L H L L制动L L H H OFF停止H/L H/L H/L L OFF待机速度检测模块本系统采用安华高公司的L15D11型光电编码器作为车速检测元件,其精度达到车轮每旋转一周,旋转编码器产生448个脉冲,可满足控制精度的要求;图光电编码器由于光电管器件直接输出数字脉冲信号,因此可以直接将这些脉冲信号连接到单片机的计数器或外部中断端口;编码器每个光电管输出两个脉冲信号,它们波形相同,相位相差90°;如果电机正转,第二个脉冲落后90°;如果电机反转,第二个脉冲超前90°;可以通过这个关系判断电机是否正反转,但是在实际电路中,只检测一路脉冲信号,通过该信号得到电机。

基于STM32的两轮自平衡小车控制系统设计

基于STM32的两轮自平衡小车控制系统设计

基于STM32的两轮自平衡小车控制系统设计本文主要对两轮自平衡小车的姿态检测算法、PID控制算法两方面进行展开研究。

用加速度传感器和陀螺仪传感器融合而成的姿态传感系统与互补滤波器组合得到自平衡小车准确而稳定的姿态信息,然后PID调节器则利用这些姿态信息输出电机控制信号,控制电机的转动,从而使小车得以平衡。

标签:STM32;自平衡小车;控制系统;控制算法1 研究意义应用意义:两轮平衡车是一种新型的交通工具,它与电动自行车和摩托车车轮前后排列方式不同,而是采用两轮并排固定的方式,就像一种两轮平行的机器人一样。

两轮自平衡控制系统是一种两轮左右平行布置的,像传统的倒立摆一样,本身是一个自然不稳定体,必须施加强有力的控制手段才能使之稳定。

两轮平衡车具有运动灵活、智能控制、操作简单、节省能源、绿色环保、转弯半径为0等优点。

因此它适用于在狭小空间内运行,能够在大型购物中心、国际性会议或展览场所、体育场馆、办公大楼、大型公园及广场、生态旅游风景区、城市中的生活住宅小区等各种室内或室外场合中作为人们的中、短距离代步工具。

具有很大的市场和应用前景。

理论研究意义:车体状态运算主要是将各传感器测量的数据加以融合得出车体倾斜角度值、倾斜角速度值以及行车速度等。

平衡控制运算根据车体状态数据,计算保持平衡需要的行车速度和加速度,或者转弯所需要的左右电机速度变化值,向电机控制驱动模块发送控制指令。

运算模块相当于两轮自平衡电动车的大脑,它主要负责的工作是:控制电机的起停,向控制模块发出加速、减速、电机正反转和制动等速度控制信号,接收电机Hall信号进行车速度计算,并通过RS 一232串口向PC发送车速数据以供存储和分析。

另外,还负责接收车体平衡姿态数据,进行自平衡运算。

现有的自平衡车结构种类繁多,但车体都归根于由三层的基本结构组成,从上到下依次是电池层、主控层、电机驱动层。

电池层用于放置给整个系统供电的6V锂电池,主控层由主控芯片系统和传感器模块组成,电机驱动层接受单片机信号,并控制电机。

双轮平衡车的控制系统硬件设计方案小车机器人论文

双轮平衡车的控制系统硬件设计方案小车机器人论文

摘要双轮自平衡车是一个高度不稳定两轮机器人,是一种多变量、非线性、绝对不稳定的系统,需要在完成平衡控制的同时实现直立行走等任务因其既有理论意义又有实用价值,双轮自平衡小车的研究在最近十年引起了大量机器人技术实验室的广泛关注。

本文主要介绍了双轮平衡车的控制系统硬件设计方案。

此方案采用ATmega328 作为核心控制器,在此基础上增加了各种接口电路板组成整个硬件系统,包括单片机最小系统,姿态检测模块,直流驱动电机控制模块,电源管理模块,测速编码模块,串口调试等模块。

对于姿态检测系统而言,单独使用陀螺仪或者加速度计,都不能提供有效而可靠的信息来保证车体的平衡。

所以采用一种简易互补滤波方法来融合陀螺仪和加速度计的输出信号,补偿陀螺仪的漂移误差和加速度计的动态误差,得到一个更优的倾角近似值。

本文先阐述了系统方案原理,再分别就各模块工作原理进行详细的介绍与分析,最终完成车模的制作和电路原理图以及1PCB 板的绘制。

最后根据调试情况对整个系统做了修改,基本达到设计要求。

关键词双轮自平衡车模块设计传感器AbstractTwo-wheeled self-balanced car is a highly unstable robots, it is a system with Multivariable, nonlinear and absolute instability, it needs to complete the balance control tasks such as walking upright because of both theoretical significance and practical value. Two-wheeled self-balanced car in the last decade has aroused widespread concern in the robotics laboratory.This paper describes the control system hardware design of the wheel balanced car.This program uses ATmega328 as the core controller,base on this increase of various interface circuit board to building the hardware system. Peripheral circuits including the smallest single-chip system, the gesture detection module, the DC drive motor control module, power management module, velocity encoding module and serial debugging module. For the posture monitoring system,the information solely depends on the gyroscope or the accelerometer couldn’t make sure the balance of vehide.So the signals from the gyroscope and accelerometer were integrated by a simple method of complementary filtering for an optimal angle to compensate the gyroscope drift error and the accelerometer dynamic error.This article first describes the principle of the system program,then described in detail each module how to working out, the final completion of car models produced and circuit schematics and the PCB drawing.In the end, according to debug the situation on the whole system changes, the hardware system basically reached the design requirements.Keywords two-wheeled self-balanced car modular design sensor目录前言 (1)第1章绪论 (2)1.1 设计的依据与意义 (2)1.2 国内外同类设计的概况综述 (3)1.3 设计要求与内容 (3)第2章总体硬件方案设计 (5)2.1 总体分析 (5)2.2 总体方案设计 (5)2.3 方案框图 (7)第3章单元模块设计 (8)3.1 姿态检测模块 (8)3.2 单片机控制单元模块电路 (14)3.3 电机驱动模块 (19)3.4 串行通信模块 (21)3.5 电源管理模块 (24)结论 (26)参考文献 (27)致谢 (28)附录 (29)前言自平衡车自动平衡运作原理主要是建立在一种被称为“动态稳定”(DynamicStabilization)的基本原理上,也就是车辆本身的自动平衡能力。

两轮自平衡小车毕业设计

两轮自平衡小车毕业设计

两轮自平衡小车毕业设计毕业设计题目:两轮自平衡小车设计一、毕业设计背景与意义目前,智能机器人技术已经在各个领域得到广泛的应用,其中自平衡小车是一种非常具有代表性的机器人。

自平衡小车能够通过自身的控制系统来保持平衡姿态,并能够实现各种转向和动作。

因此,自平衡小车不仅能够广泛应用于工业生产中,还可以成为搬运、巡逻和助力等领域的优秀协助工具。

本毕业设计的目标是设计和实现一种能够自动控制、实现平衡的两轮自平衡小车。

通过这个设计,进一步探究并研究自平衡技术的原理及应用,增加对机器人控制系统和传感器的理解,提高对计算机控制和嵌入式系统的应用能力。

二、毕业设计的主要内容和任务1.研究和调研a)研究两轮自平衡小车的构造和原理;b)调研目前市场上相关产品,并分析其特点和存在的问题。

2.模块设计a)根据研究结果,设计自平衡小车的主要模块,包括平衡控制模块、动作控制模块和传感器模块;b)设计相关控制算法和策略,使小车能够保持平衡并能够实现转向和动作。

3.硬件搭建和调试a)根据模块设计的结果,搭建小车的硬件系统,包括选择适用的电机、陀螺仪、加速度计等;b)进行相应的调试和优化,保证小车的平衡和动作控制能力。

4.软件开发和系统集成a)开发小车的控制系统软件,包括实时控制系统和传感器数据处理等;b)将硬件系统和软件系统进行有机地集成,实现小车的平衡和动作控制。

5.实验和测试a)进行实验测试,验证设计的有效性和稳定性;b)进行相关的性能测试和比较研究。

三、设计预期成果1.自平衡小车的系统设计和实现,能够平衡姿态并能够实现转向和动作控制;2.控制系统软件的开发和优化,实现小车的实时控制和数据处理;3.相关模块和算法的设计和实现,如平衡控制模块和动作控制模块;4.实验和测试结果的总结和分析;5.毕业设计报告的撰写。

四、设计周期和工作安排1.阶段1:研究和调研阶段(1周)2.阶段2:模块设计阶段(2周)3.阶段3:硬件搭建和调试阶段(2周)4.阶段4:软件开发和系统集成阶段(2周)5.阶段5:实验和测试阶段(1周)6.阶段6:总结和报告撰写阶段(2周)五、预期解决的关键问题和技术难点1.小车平衡控制算法的设计和优化;2.小车动作控制算法的设计和优化;3.小车硬件系统与软件系统的有效集成;4.多个传感器数据的处理和融合。

单轴两轮自平衡小车姿态控制系统设计

单轴两轮自平衡小车姿态控制系统设计

单轴两轮自平衡小车姿态控制系统设计
刘海刚;宋一标;陈恒伟;龙察;廖惜春;刘海潮
【期刊名称】《工业控制计算机》
【年(卷),期】2013(026)009
【摘要】两轮自平衡车是动态平衡机器人的一种,需要靠运动保持平衡不倒,要施加强有力的控制手段使其稳定.介绍一种单轴两轮自平衡小车姿态控制系统设计过程,采用Freescale Kinetis 60作为核心控制单元,三轴加速度传感器MMA7260和陀螺仪ENC-03M测量车模的倾角和倾角速度,测速编码器获取电机运动状态,通过PD调节控制两个电机正反向运动,保持车模直立平衡状态.为了增加小车的机械稳定性,采取了降低重心和减轻小车质量的方法,比如把小车电池和主控板等尽量压下,将整个车模的重心降到轮轴附近.
【总页数】3页(P16-18)
【作者】刘海刚;宋一标;陈恒伟;龙察;廖惜春;刘海潮
【作者单位】五邑大学信息工程学院,广东江门529020;五邑大学信息工程学院,广东江门529020;五邑大学信息工程学院,广东江门529020;五邑大学信息工程学院,广东江门529020;五邑大学信息工程学院,广东江门529020;广州日滨科技发展有限公司,广东广州510060
【正文语种】中文
【相关文献】
1.基于STM32的两轮自平衡小车系统设计 [J], 王素青;熊维堂
2.两轮自平衡小车的系统设计与实现 [J], 刘春阳;刘幸;杨曼;王帅;徐巧玉;薛玉君
3.基于互补滤波的两轮自平衡小车系统设计 [J], 朱敏超;李莉莉
4.基于STM32的两轮自平衡小车控制系统设计 [J], 王磊;宁欣
5.两轮自平衡小车控制系统设计 [J], 吴正朕;仝硕;毋健
因版权原因,仅展示原文概要,查看原文内容请购买。

两轮自平衡小车设计报告

两轮自平衡小车设计报告

两轮自平衡小车设计报告设计报告:两轮自平衡小车一、引言二、设计理念本设计希望实现一个简洁、稳定和高效的两轮自平衡小车。

考虑到小车需要快速响应外界环境变化,并迅速做出平衡调整,因此采用了传感器、控制器和执行机构相结合的设计思路。

通过传感器获取小车倾斜角度和加速度等数据,通过控制器对采集的数据进行处理和判断,并通过执行机构实时调整车身的倾斜角度,以实现平衡行走。

三、原理四、硬件结构1.车身结构:车身由两个电机、一个控制器、一个电池和一个平衡摆杆组成。

2.电机:采用直流无刷电机,具有较高的转速和输出功率。

3.控制器:采用单片机控制模块,能够对传感器数据进行处理和判断,并输出控制信号给电机。

4.传感器:主要包括陀螺仪、加速度计和倾斜传感器,用于感知小车的倾斜角度和加速度等数据。

5.电池:提供小车的电力供应,保证小车正常运行。

五、软件控制小车的软件控制主要包括数据处理和判断、控制信号生成和输出三个方面。

1.数据处理和判断:通过获取的传感器数据,包括倾斜角度和加速度等信息,根据预设的控制算法进行数据处理和判断。

2.控制信号生成:根据处理和判断得出的结果,生成相应的控制信号。

控制信号包括电机的转动方向和速度。

3.控制信号输出:将生成的控制信号输出给电机,实现倒立摆的平衡。

六、小车性能测试为了验证小车的设计和功能是否符合预期,进行了多项性能测试。

1.平衡行走测试:将小车放在平坦的地面上,通过传感器检测到小车的当前倾斜角度并进行调整,实现小车的自平衡行走。

2.转向测试:在平衡行走的基础上,通过控制信号调整两个电机的速度差,从而实现小车的转向。

3.避障测试:在平衡行走和转向的基础上,添加超声波传感器等避障装置,实现小车的避障功能。

七、总结通过本设计报告的详细介绍,我们可以看出两轮自平衡小车具备平衡行走、转向和避障等功能,为用户提供了一个稳定、高效的移动平台。

未来,我们将进一步优化小车的设计和控制算法,提高小车的性能和应用范围。

单片机控制单轴双轮自动平衡小车设计

单片机控制单轴双轮自动平衡小车设计

毕业设计(论文)题目:单片机控制单轴双轮自动平衡小车设计系别:电气工程系专业:电气工程及其自动化班级:电气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 people's daily life. This study is just based on the purpose ofexplore the The Two-wheeled Self-balancing Robot.This design bases on STM32 microcontroller which based onthe CORTEX-M3 ARM core.because of that , the robot adjust faster, data processingmore accurate ,performance better . At the same time,we directly using the world's first 9 axis motion processing sensor MPU-6050 instead of the gyro and accelerationmeter sensors to get the car's attitude information . to calculate the angleThrough the DMP. Andto achieve the car's upright balance walkingthrough 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 people's 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.KeyWord:Self-balancing Robot MPU6050 STM32 PID controller目录1 绪论 (1)2 平衡车总体设计方案 (2)2.1 系统平衡原理分析 (2)2.2 系统整体设计 (3)3 系统硬件电路设计 (5)3.1 系统硬件选型 (5)3.2 最小系统设计 (6)3.3 姿态检测电路设计 (7)3.4 电源稳压模块 (7)3.5 电机驱动模块设计 (8)4 系统软件部分设计 (9)4.1 软件系统总体结构 (9)4.2 单片机初始化 (9)4.3 姿态检测系统软件设计 (10)4.3.1 MPU6050姿态获取方法 (10)4.3.2 卡尔曼滤波算法 (11)4.4 平衡PID控制软件实现 (12)4.4.1 直立环PD控制 (12)4.4.2 速度环PI控制 (13)5 系统调试 (15)5.1 角度矫正 (15)5.2 卡尔曼滤波调试 (15)5.3 PID参数的整定 (15)5.3.1 PD控制调试 (15)5.3.2 PI控制调试 (15)6 结论 (17)致谢 (18)附录1 程序 (19)附录2 电路图 (24)参考文献 (24)1 绪论近几年,不管是独轮车还是双轮平衡车都越来越受到人们的关注,随着时间发展,科技的进步,双轮平衡车也变得越来越智能化。

基于两轮自平衡小车的测控系统课程设计教学改革

基于两轮自平衡小车的测控系统课程设计教学改革

基于两轮自平衡小车的测控系统课程设计教学改革随着科技的发展,自平衡小车已经成为了一种颇受欢迎的新型交通工具。

它不仅在生活中提供了便利,同时也在教学领域中得到了广泛的应用。

针对基于两轮自平衡小车的测控系统课程设计教学,本文将着重探讨教学改革的必要性,以及改革的具体步骤和效果。

我们来聊一聊为什么需要对基于两轮自平衡小车的测控系统课程设计进行教学改革。

传统的测控系统课程设计往往只注重理论知识的传授,而忽略了实际应用能力的培养。

学生们缺乏对于理论知识的实际运用能力,导致他们在工程领域的实际操作中遇到了困难。

而基于两轮自平衡小车的测控系统课程设计,可以很好地结合理论与实践,培养学生的工程实践能力。

对于这一点,我们可以从学生的就业现状来看,很多企业对于学生的技术实践能力有着较高的要求。

我们有必要对于基于两轮自平衡小车的测控系统课程设计进行教学改革,以提高学生的实践能力,增强他们的就业竞争力。

接下来,我们来讨论一下基于两轮自平衡小车的测控系统课程设计教学改革的具体步骤。

我们需要加强对自平衡小车原理的教学。

自平衡小车的原理和结构是该课程设计的基础,学生们必须对这方面有着深入的了解。

我们需要通过直观的实物展示和数字模拟等多种方式,引导学生理解自平衡小车的原理。

我们需要增加对测控系统设计的实际案例分析。

学生们通过分析实际的案例,可以更好地理解测控系统设计的各个环节,加深对知识的理解。

我们需要注重实践操作环节的设计。

通过实际操作,学生们可以更加深入地理解课程设计内容,提高他们的工程实践能力。

通过以上的步骤设计,可以更好地激发学生的学习兴趣,提高他们的学习效果。

基于两轮自平衡小车的测控系统课程设计教学改革是非常有必要的。

通过加强自平衡小车原理的教学,增加实际案例分析,注重实践操作的设计,可以更好地提高学生的学习效果,增强他们的工程实践能力,提高他们的就业竞争力。

我们有必要对该课程设计进行教学改革,为学生们创造更好的学习环境,提高他们的学习效果。

两轮自平衡车控制系统的设计与实现

两轮自平衡车控制系统的设计与实现

两轮自平衡车控制系统的设计与实现一、自平衡车系统概述1、定义自平衡车是一种以双轮直立结构/双轮平移结构的小型无线遥控电动车,最初由电动车作为主要的运动机构,但也有可能有其他特殊机构,进行实时控制,使其能够在平衡和模式控制下,保持水平稳定态,实现自动平衡、自主康复和自由行走。

2、系统功能自平衡车系统的功能是通过实时控制平衡并实现模式控制,使自平衡车实现自动平衡、自主康复和自由行走,从而达到智能化的操作目的,解决双轮自行车无主动平衡功能的问题。

二、系统设计1、硬件系统自平衡车的硬件系统由电池、ESC(电子转向控制器)、遥控组件、周边传感器组件、电路板组件等构成。

2、软件系统自平衡车的控制系统主要由ARMCortex-M0 MCU、单片机程序、PID算法组成。

三、系统实现1、硬件系统实施(1)第一步,在自平衡车上安装ESC,ESC的电池由智能充电器连接,使自平衡车进行自动充电;(2)第二步,给控制器方向键插上遥控器,使用户可以控制车辆移动;(3)第三步,在车辆上安装多个传感器,在控制板上增加芯片,使用户可以对车辆进行实时监测;(4)第四步,在控制板上安装一个ARM Cortex-M0 MCU处理器,将控制算法由单片机程序烧录形成可控制的处理系统。

2、软件系统实施(1)随着ARM处理器的安装,自平衡车可以被SONI的特殊的烧录器进行烧录,该程序可以控制车辆的转向和速度;(2)安装完毕后,需要建立多个变量从传感器接受数据,读取车辆的平衡状态,并控制车辆前后左右的运动;(3)最后,我们选择PID算法来实现车辆实时的控制,根据车辆当前的实际情况,调节PID距离和速度增量使自平衡车实现实时的模式控制。

四、结论本文介绍了自平衡车控制系统的设计思想和实现步骤,通过控制平衡,实现自动平衡、自主康复和自由行走,使得自平衡车有更多的功能,在以后的应用中,自平衡车的研究和应用实际会有很大的推动作用。

两轮自平衡小车控制系统的设计

两轮自平衡小车控制系统的设计

两轮自平衡小车控制系统的设计摘要:介绍了两轮自平衡小车控制系统的设计与实现,系统以飞思卡尔公司的16位微控制器MC9S12XS128MAL作为核心控制单元,利用加速度传感器MMA7361测量重力加速度的分量,即小车的实时倾角,以及利用陀螺仪ENC-03MB测量小车的实时角速度,并利用光电编码器采集小车的前进速度,实现了小车的平衡和速度控制。

在小车可以保持两轮自平衡前提下,采用摄像头CCD-TSL1401作为路径识别传感器,实时采集赛道信息,并通过左右轮差速控制转弯,使小车始终沿着赛道中线运行。

实验表明,该控制系统能较好地控制小车平衡快速地跟随跑道运行,具有一定的实用性。

关键词:控制;自平衡;实时性近年来,随着经济的不断发展和城市人口的日益增长,城市交通阻塞以及耗能、污染问题成为了一个困扰人们的心病。

新型交通工具的诞生显得尤为重要,两轮自平衡小车应运而生,其以行走灵活、便利、节能等特点得到了很大的发展。

但是,昂贵的成本还是令人望而止步,成为它暂时无法广泛推广的一个重要原因。

因此,开展对两轮自平衡车的深入研究,不仅对改善平衡车的性价比有着重要意义,同时也对提高我国在该领域的科研水平、扩展机器人的应用背景等具有重要的理论及现实意义。

全国大学生飞思卡尔智能车竞赛与时俱进,第七届电磁组小车首次采用了两轮小车,模拟两轮自平衡电动智能车的运行机理。

在此基础上,第八届光电组小车再次采用两轮小车作为控制系统的载体。

小车设计内容涵盖了控制、模式识别、传感技术、汽车电子、电气、计算机、机械及能源等多个学科的知识。

1 小车控制系统总体方案小车以16位单片机MC9S12XS128MAL作为中央控制单元,用陀螺仪和加速度传感器分别检测小车的加速度和倾斜角度[1],以线性CCD采集小车行走时的赛道信息,最终通过三者的数据融合,作为直流电机的输入量,从而驱动直流电机的差速运转,实现小车的自动循轨功能。

同时,为了更方便、及时地观察小车行走时数据的变化,并且对数据作出正确的处理,本系统调试时需要无线模块和上位机的配合。

两轮自平衡小车设计

两轮自平衡小车设计

两轮自平衡小车设计一、任务要求图1两轮自平衡车两轮自平衡车结构原理如图1所示,主控制器(DSP)通过采集陀螺仪和加速度传感器得到位置信号,通过控制电机的正反转实现保持小车站立。

1、通过控制两个电机正反运动,实现小车在原地站立。

2、实现小车的前进、后退、转弯、原地旋转、停止等运动;二、方案实现2.1电机选型图2直流电机两轮自平衡车由于需要时刻保持平衡,对于倾角信号做出快速响应,因此对电机转矩要求较大。

在此设计中选用国领电机生产的直流电机,其产品型号为GB37Y3530,工作电压6v-12v。

为增大转矩,电机配有1:30传动比的减速器。

2.2电机测速方案图3霍尔测速传感器在电机测速方案上主流的方案有两种,分别是光电编码器和霍尔传感器。

光电编码器测量精度由码盘刻度决定,刻度越多精度越高;霍尔传感器精度由永磁体磁极数目决定,同样是磁极对数越高精度越高。

由于两轮自平衡车工作于剧烈震动环境中,光电编码器不适应这种环境,因此选用霍尔传感器来测量速度。

电机尾部加装双通道霍尔效应编码器,AB双路输出,单路每圈脉冲16CPR,双路上下沿共输出64CPR,配合1:30的减速器传动比,可以计算出车轮转动一圈输出的脉冲数目为64X30=1920CPR,完全符合测速要求。

2.3电机驱动控制系统概述本平台电机驱动采用全桥驱动芯片L298N,内部包含4通道逻辑驱动电路,两个H-Bridge的高电压、大电流双全桥式驱动器。

本驱动桥能驱动46V、2A 以下的电机。

其输出可以同时控制两个电机的正反转,非常适合两轮自平衡车开发,其原理图如下图所示图4L298N原理图采用脉宽调制方式(即PWM,Pulse Width Modulation)来调整电机的转速和转向。

脉宽调制是通过改变发出的脉冲宽度来调节输入到电机的平均电压,即通过不同方波的平均电压不同来改变电机转速。

图5PWM脉宽调节示意2.4倾角位置采集倾角和角速度采集是两轮自平衡车控制的重点,选用MPU6050模块作为其采集模块。

基于PID控制器的两轮自平衡小车设计

基于PID控制器的两轮自平衡小车设计

基于PID控制器的两轮自平衡小车设计一、引言在自动控制领域中,PID控制器是一种常用的控制器。

它通过对系统输出进行反馈,来调节系统的输入,使系统的输出尽可能接近预期值。

本文将基于PID控制器设计一个两轮自平衡小车。

二、系统模型两轮自平衡小车是由两个驱动电机控制的,通过控制电机的转速来实现小车的前进、后退、转向等功能。

小车的整体结构是一个倒立摆,通过控制电机的转速,使其保持垂直状态。

系统的输入是电机转速,输出是小车的倾斜角度。

三、PID控制器PID控制器由比例(P)、积分(I)和微分(D)三个部分组成。

这三个部分根据误差来计算控制信号,实现对系统的控制。

1.比例控制部分:比例控制器根据误差的大小来计算控制信号。

误差是指系统输出与期望输出之间的差异。

比例控制器的计算公式为u_p=K_p*e(t),其中u_p是比例输出,K_p是比例增益,e(t)是误差。

2. 积分控制部分:积分控制器根据误差的累积值来计算控制信号。

积分控制器的计算公式为u_i = K_i * ∫e(t)dt,其中u_i是积分输出,K_i是积分增益,∫e(t)dt是误差的累积值。

3. 微分控制部分:微分控制器根据误差的变化率来计算控制信号。

微分控制器的计算公式为u_d = K_d * de(t)/dt,其中u_d是微分输出,K_d是微分增益,de(t)/dt是误差的变化率。

PID控制器的输出信号为u(t)=u_p+u_i+u_d,其中u(t)是控制信号。

四、设计与实现在设计两轮自平衡小车的PID控制器时,需要根据系统的特性来选择合适的参数。

通常可以通过试验或仿真来获得系统的模型,进而进行参数调节。

1.参数调节:首先,可以将系统的转角作为输入信号,通过试验或仿真来获得小车的倾斜角度与转角的关系。

然后,可以根据比例、积分和微分控制部分的特性,来选择合适的增益参数。

比例增益越大,系统的响应速度越快,但可能会引起震荡;积分增益可以消除静态误差,但可能会引起过冲;微分增益可以减小震荡,但可能会引起超调。

两轮自平衡小车的设计与实现

两轮自平衡小车的设计与实现

两轮自平衡小车的设计与实现一、本文概述随着科技的飞速发展,智能化、自主化已经成为现代机器人技术的重要发展方向。

两轮自平衡小车作为一种典型的动态稳定控制机器人,其设计与实现技术对于推动机器人技术的进步具有重要意义。

本文旨在深入探讨两轮自平衡小车的设计理念、实现方法以及关键技术,为相关领域的研究者和爱好者提供有益的参考。

本文将首先介绍两轮自平衡小车的基本概念和原理,阐述其动态稳定控制的基本思想。

随后,将详细介绍两轮自平衡小车的硬件设计,包括电机驱动、传感器选型、控制器设计等关键部分,并阐述各部件之间的协同工作原理。

在此基础上,本文将重点探讨两轮自平衡小车的软件实现,包括平衡控制算法、运动控制算法以及人机交互界面设计等。

本文还将对两轮自平衡小车的性能优化和实际应用进行深入分析,探讨如何提高其稳定性、响应速度以及续航能力等问题。

本文将对两轮自平衡小车的发展趋势和前景进行展望,为相关领域的研究和发展提供有益的参考。

通过本文的阐述,读者可以全面了解两轮自平衡小车的设计与实现过程,掌握其关键技术和应用方法,为推动机器人技术的发展做出贡献。

二、两轮自平衡小车的基本原理两轮自平衡小车,又称作双轮自稳车或双轮倒立摆,是一种基于动态稳定技术设计的个人交通工具。

其基本原理主要涉及到力学、控制理论以及传感器技术。

两轮自平衡小车的稳定性主要依赖于其独特的力学结构。

与传统三轮或四轮的设计不同,双轮自平衡小车只有两个支撑点,这意味着它必须通过动态调整自身姿态来维持稳定。

这种动态调整的过程类似于杂技演员走钢丝,需要精确的平衡和快速的反应。

实现自平衡的关键在于控制理论的应用。

两轮自平衡小车通常搭载有先进的控制系统,该系统通过传感器实时监测小车的姿态(如倾斜角度、加速度等),并根据这些信息计算出必要的调整量。

控制系统随后会向电机发送指令,调整小车的运动状态,以保持平衡。

传感器在两轮自平衡小车中扮演着至关重要的角色。

常见的传感器包括陀螺仪、加速度计和角度传感器等。

两轮自平衡车系统的设计

两轮自平衡车系统的设计

两轮自平衡车系统的设计【摘要】两轮自平衡小车是一个集传感器系统、控制系统和推进系统于一体的机器人,通过多种传感器进行加速度、角度等数据采集、读取、处理后,将数据发送给控制器,由控制器控制电机的输出速度和转矩,让车体保持平衡,并能够按照操作者的意图前进、后退或转弯。

【关键词】自平衡车;传感器;控制器0.引言两轮自平衡小车是一个高度不稳定两轮机器人,是一种多变量、非线性、强耦合的系统,是检验各种控制方法的典型装置。

同时由于它体积小、运动灵活、零转弯半径等特点,将会在军用和民用领域有着广泛的应用前景。

1.系统功能设计维持车体直立行驶可以设计出很多的方案,本方案假设维持车体直立,运行的动力都来自于车体的两个轮子,图(1)所示为自平衡小车系统框图。

两个车轮由大功率直流电机驱动。

因此从控制角度来看,车体作为一个控制对象,它的控制输入量是两个电极的转动速度。

车体运动控制任务可以分解成以下三个基本控制任务:(1)控制车体平衡:通过控制两个电机正反向运动保持车体直立平衡状态。

(2)控制车体速度:通过调节车体的倾角来实现车体速度控制,实际上最后还是演变成通过控制电机的转速来实现车轮速度的控制。

(3)控制车体方向:通过控制两个电机之间的转动差速来实现车模转向控制。

三个分解任务各自独立进行控制。

由于最终都是对同一个控制对象进行控制,所以他们之间存在耦合。

最终三个控制参量累加到一起作用到电机上。

2.系统机械设计平衡车的整体结构主要包括车身、左右车轮、左右悬架和操纵杆。

悬架和车轮之间6颗螺丝相连且可以相互转动;操纵杆则是靠2只较大的螺丝和车架固定。

3.系统硬件电路设计3.1陀螺仪与加速计的数据采集与处理陀螺仪采用村田公司的ENC-03,加速计采用MMA7260。

因为陀螺仪的动态响应较好,而加速计的静态响应较好,这就需要对两个传感器输出信号进行必要的处理。

陀螺仪输出模拟信号,且有差分接口,采用差分运放可以有效去除信号中的直流分量,在经过硬件积分电路,转换成陀螺仪输出角度。

基于两轮自平衡小车的测控系统课程设计教学改革

基于两轮自平衡小车的测控系统课程设计教学改革

基于两轮自平衡小车的测控系统课程设计教学改革随着科技的不断发展和应用,越来越多的机器人产品被广泛应用于生产制造、医疗、军事等领域。

小型自平衡车是一种智能机器人,可以通过自主平衡实现轻松地在平地上行走,因此具有广泛的应用前景。

基于两轮自平衡小车的测控系统课程设计教学改革,旨在通过设计、制作、调试自平衡小车,从实践中掌握现代测控系统的思想和方法,提高学生的实践技能和创新能力。

一、课程设计的背景和意义随着工业自动化和智能化发展,具备测控技术知识的工程技术人才越来越受到市场的需求。

而现代测控技术是以微电子技术、计算机技术、传感器技术、通信技术和控制技术为支撑的交叉学科,涉及硬件、软件、通信、控制等众多方面。

因此,设计和制作一种能够自主平衡的小型机器人,可以让学生系统地学习实践中的传感器应用、信号检测、控制算法等知识,全面了解测控技术的相关环节,为将来从事相关工作打下坚实的理论基础和实践经验。

此外,通过小型自平衡车的课程设计,可以帮助学生发展计划、设计和执行实验的能力,培养创新思维和探究精神,提高学生自主学习和解决实际问题的能力,同时也可以激发学生的兴趣和热情。

二、课程设计的主要内容1.硬件设计:设计并制作两轮自平衡小车的机械结构,选择合适的驱动电机和电子元器件,搭建硬件电路,完成电路的连接和电池充电电路的设计等。

2.传感器应用:选择合适的加速度计、陀螺仪等传感器进行安装和调试,学习传感器应用知识和掌握传感器数据采集和处理技术。

3.控制算法:研究自平衡控制算法的理论原理,利用MATLAB等软件进行模拟仿真,从而设计出基于PID控制算法的控制程序,并进行实验验证。

4.软件开发:基于Arduino开发板平台,利用C/C++语言开发控制程序,完成传感器数据采集、控制命令输出、状态显示等功能。

5.整体调试:对自平衡小车进行硬件和软件的整体调试,通过调整参数等方法完成自平衡小车的控制和平衡。

三、教学改革的具体举措1. 课程设置的改革:在测控系统单元中,增加以小型自平衡车为主题的课程设计,将理论与实践相结合,通过设计和制作自平衡小车,培养学生的实际操作能力和创新意识。

两轮自平衡小车设计报告

两轮自平衡小车设计报告

沈阳工业大学信息科学与工程学院第五届创新杯大学生电子设计竞赛双轮自平衡小车摘要:本作品采用STM32单片机作为主控制器,用一个陀螺仪传感器来检测车的状态,通过TB6612控制小车两个电机,来使小车保持平衡状态,通过手机蓝牙与小车上蓝牙模块连接以控制小车运行状态。

关键字:智能小车;单片机;陀螺仪;蓝牙模块。

一、系统完成的功能根据老师的指导要求,在规定的时间内,由团队合作完成两轮自平衡小车的制作,使小车在一定时间内能够自助站立并且自由行走,以及原地转圈,上坡和送高处跃下站立。

二、系统总体设计原理框架图图2.1 系统总体框图三.系统硬件各个组成部分介绍3.1.STM32单片机简介(stm32rbt6)主控模块的STM32单片机是控制器的核心部分。

该单片机是ST意法半导体公司生产的32位高性能、低成本和低功耗的增强型单片机,它的内核采用ARM 公司最新生产的Cortex—M3架构,最高工作频率可达72MHz,256K的程序存储空间、48K的RAM,8个定时器/计数器、两个看门狗和一个实时时钟RTC,片上集成通信接口有两个I2C、3个SPI、5个USART、一个USB、一个CAN、两个和一个SDIO,并集成有3个ADC和一个DAC,具有80个I/0端口。

STM32单片机要求2.0~3.6V的操作电压(VDD),本设计采用5.0V电源通过移动电源给单片机供电。

3.2.陀螺仪传感器陀螺仪可以用来测量物体的旋转角速度。

本设计选用MPU-6050。

MPU-60X0 是全球首例9 轴运动处理传感器。

它集成了3 轴MEMS 陀螺仪,3 轴MEMS加速度计,以及一个可扩展的数字运动处理器DMP(Digital Motion Processor),可用I2C接口连接一个第三方的数字传感器,比如磁力计。

扩展之后就可以通过其I2C 或SPI 接口输出一个9 轴的信号(SPI 接口仅在MPU-6000 可用)。

MPU-60X0 也可以通过其I2C 接口连接非惯性的数字传感器,比如压力传感器MPU-60X0 对陀螺仪和加速度计分别用了三个16 位的ADC,将其测量的模拟量转化为可输出的数字量。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
总方案结构图如图 1 所示。
陀螺仪
加速度传感器
主电源
数 据 融 合
电源转换电路
复位电路
Kinetis 60 MCU
编码器










JTAG 接口
蓝牙模块
上位机
图 1 总方案结构图
3Hale Waihona Puke 系统硬件设计微处理器选用基于 Cortex-M4 的飞思卡尔 Kinetis 60 系列微处理器。Kinetis 是基于 ARM® CortexTM-M4 具有超强可扩展性的低功耗、混合信号微控制器。ARM Cortex-M4 内 核带 DSP 指令,性能可达 1.25 DMIPS/MHz,带有 8 路电机控制/通用/PWM 定时器(FTM) 通道。快速、高精度的 16 位 ADC、12 位 DAC、可编程增益放大器、高速比较器和内部电 压参考。提供强大的信号调节、转换和分析性能的同时降低了系统成本。加速度计传感器选 用飞思卡尔 MMA7260, MMA7260 是一款三轴低 g 半导体加速度计,可以同时输出三个方向 上的加速度模拟信号,通过设置可以使得 MMA7260 各轴信号最大输出灵敏度 800mV/g , 这个信号无需要再进行放大,直接可以送到单片机进行 AD 转换[2]。陀螺仪可以用来测量物 体的旋转角速度。陀螺仪选用村田 ENC-03M,它利用了旋转坐标系中的物体会受到科里奥 利力的原理,在器件中利用压电陶瓷做成振动单元。当旋转器件时会改变振动频率从而反映 出物体旋转的角速度[3]。陀螺仪模块电路图如图 2 所示, 该电路采用典型的差分放大电路, 其中 R32,R33 为直流偏置。
float fAngleDelta;
iAccZORG = (iAccZADC - g_iAccZOffset) / (-1) ; g_fAccZ = iAccZORG * ACC_Z_SCALE ; iGyroHORG =(iGyroHADC - g_iGyroHOffset) / 12 ; g_fGyroH= (float) iGyroHORG * fRgyro * 12.0 ; g_fAngle = g_fGyroHIntegral ; fAngleDelta = (g_fAccZ - g_fAngle)/ fTz; g_fGyroHIntegral += (g_fGyroH + fAngleDelta)/ fTp ; }
MMA7260 和 ENC-03M 模块的信号输出引脚分别与微处理器的 AD 引脚连接,然后对 采集到的数据进行数据融合,才能得到准确的姿态信息。数据融合部分没有用到复杂的 Kalman 滤波[4],而是用了另一种方法,原理框图如图 4 所示。
图 4 数据融合原理框图[5] 以下是数据融合部分的关键程序段。 void AngleCalculate(void) /*角度数据处理 输入值为陀螺仪角速度、加速度传感器加速度*/ {
5.3 电机速度采集程序
小车的速度传感器采用编码器,在一个固定时间内 T(5ms)的脉冲数目与相应的车速成 正比,由此获得当前车轮运动状况。采集回来的数据经过低通滤波后再进行单位转换,然后 通过前一刻 PWM 通道的输出判断电机正反转。采集数据处理流程如图 5 所示。 /***************电机速度控制部分******************/ void GetMotorPulse(void) //采集电机速度脉冲 {
5 系统软件设计
两轮自平衡小车软件部分主要由姿态传感器数据融合处理程序、平衡控制算法程序和电 机控制程序组成。姿态传感器数据融合处理程序主要解决 MMA7260 和 ENC-03M 输出的模 拟信号进入微控制器以及数据融合。由于本系统采用的 Kinetis 60 系列微处理器具有 PWM 功能,因此极大地简化了电机控制程序的编制,主要是 PWM 功能寄存器的使用。平衡控制 算法是独立于以上两类程序的单独模块,在以上两部分程序解决了与硬件相关的程序后,平 衡控制算法程序部分只需关注控制算法本身的编程问题。 5.1 MMA7260 和 ENC-03M 的数据融合
主要程序段如下: void AngleControl(void) {
图 5 电机速度控制部分框图
float fValue; /*分(前后)正负角度 PD,解决车模前后配重不一致引起的移动,注意车模往后仰的角度为正 方向*/ if(g_fAngle>0.0) fValue=(g_fAngleSet-g_fAngle) * g_fAngle_P_Positive + (g_fGyroHSet-g_fGyroH)* g_fAngle_D_Positive;//后仰 else if(fAngle<0.0) fValue=(g_fAngleSet-g_fAngle) * g_fAngle_P_Negative + (g_fGyroHSet-g_fGyroH)* g_fAngle_D_Negative;//前倾 else if(fAngle==0.0) /*设置上下限 */ if(fValue>1000.0) fValue=1000.0; if(fValue<-1000.0) fValue=-1000.0; g_fPWMAngleCtrl=fValue; }
// *(-1)/30 校正极性,去毛刺 //单位:角度 //去毛刺 //单位:角度/秒
//时间补偿常数 fTz=1.0 //控制频率 fTp=200.0
5.2 PID 算法与平衡控制算法程序
PID 控制是工业控制过程中历史最悠久,生命力最强的控制方式。位置式 PID 的算式为:
其中 x0 为偏差信号为 0 时的控制作用,是控制量的基础。 在用计算机控制的离散系统中,PID 的算式为:
Keywords: Attitude control;Multi-sensor data fusion;Since the balance control algorithm; PD algorithm
1 引言
近年来,两轮自平衡电动车以其行走灵活、便利、节能等特点得到了很大的发展。国内 外多家科研单位和企业以及自平衡车的爱好者都对自平衡理论的应用和发展做出了许多贡 献, 大大推进了自平衡技术的发展, 同时也推出了一批杰出的自平衡机器人和载人代步车作 品。在第七届“飞思卡尔”杯全国大学生智能车竞赛的电磁组比赛中,也利用了其赛用 C 型车模双后轮驱动的特点,要求实现两轮自平衡直立行走,对推动自平衡理论的应用和发展 有着重大意义。开展对两轮自平衡车的深入研究对提高我国在该领域的科研水平、扩展机器 人的应用背景等具有重要的理论及现实意义。
目前关于两轮自平衡车的研究和成果已经很多,国内外众多商家已经将两轮自平衡车作 为运输载具商业化量销售[1]。本文的目的是探索使用比较廉价的元器件搭建一个简易的自平 衡系统,以便进行各种控制算法的实验和理论研究。
2 系统总体方案
本文设计的两轮自平衡智能小车控制系统,考虑到自平衡控制需要较高且稳定的控制速 度,采用飞思卡尔 Kinetis 60 系列微处理器作为主控制器。采用飞思卡尔 MMA7260 三轴高 灵敏度加速度传感器与村田公司的 ENC-03M 陀螺仪作为自平衡小车的姿态传感器。采用
单轴两轮自平衡智能小车姿态控制系统设计 宋一标 陈恒伟 龙察
(五邑大学 信息工程学院 广东 江门 529030) 摘 要: 两轮自平衡车属于动态平衡机器人的一种, 需要靠运动保持平衡不倒,要施加强有 力的控制手段使其稳定。本文介绍一种单轴两轮自平衡小车姿态控制系统设计过程,采用 Freescale Kinetis 60 作为核心控制单元,三轴加速度传感器 MMA7260 和陀螺仪 ENC-03M 测量车模的倾角和倾角速度,测速编码器获取电机运动状态,通过 PD 调节控制两个电机正 反向运动,保持车模直立平衡状态。为了增加小车的机械稳定性,采取了降低重心和减轻小 车质量的方法,比如把小车电池和主控板等尽量压下,将整个车模的重心降到轮轴附近。
BTS7960 作为电机的驱动芯片,实现对电机正反转的控制。 同时,为了增加小车的机械稳定性,采取了降低重心和减小小车质量的方法,比如把小
车的电池和主控板等尽量的放在靠下的地方,将整个车模的重心降到轮轴附近,解决两轮自 平衡机器人非线性、强耦合和绝对不稳定的特点。重心越低的物体越稳定,不倒翁是一个很 好的实例。小车质量越轻,重心位置越低,则小车绕电机轴的转动惯量越小,电机的机电时 间常数越小,因此越有利于小车平衡的控制。
unsigned int uiLeftMotorPulse,uiRightMotorPulse; uiLeftMotorPulse = FTM2_CNT; //读取寄存器 uiRightMotorPulse= FTM1_CNT; //读取寄存器 FTM1_CNT=0;//清零 FTM2_CNT=0;//清零 //------------低通滤波---------------// g_iLeftMotorPulseNew = uiLeftMotorPulse; g_iRightMotorPulseNew = uiRightMotorPulse; g_iLeftMotorPulse = (int) 0.1 * g_iLeftMotorPulseOld + 0.9 * g_iLeftMotorPulseNew; g_iRightMotorPulse = (int) 0.1 * g_iRightMotorPulseOld + 0.9 * g_iRightMotorPulseNew; g_iLeftMotorPulseOld = g_iLeftMotorPulse; g_iRightMotorPulseOld = g_iRightMotorPulse; //-----------------------------------// g_iLeftMotorPulse = (int)uiLeftMotorPulse; g_iRightMotorPulse = (int)uiRightMotorPulse; if(g_ucLMotorPolar==0) g_iLeftMotorPulse = (-g_iLeftMotorPulse); //如果反转 速度为负 if(g_ucRMotorPolar==0) g_iRightMotorPulse = (-g_iRightMotorPulse); g_iLeftMotorPulseSigma += g_iLeftMotorPulse; g_iRightMotorPulseSigma += g_iRightMotorPulse; }
相关文档
最新文档