双轮自平衡车设计报告

上传人:ni****g 文档编号:498944780 上传时间:2023-02-09 格式:DOCX 页数:16 大小:289.28KB
返回 下载 相关 举报
双轮自平衡车设计报告_第1页
第1页 / 共16页
双轮自平衡车设计报告_第2页
第2页 / 共16页
双轮自平衡车设计报告_第3页
第3页 / 共16页
双轮自平衡车设计报告_第4页
第4页 / 共16页
双轮自平衡车设计报告_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《双轮自平衡车设计报告》由会员分享,可在线阅读,更多相关《双轮自平衡车设计报告(16页珍藏版)》请在金锄头文库上搜索。

1、姓名姓名姓名双轮自平衡车设计报告学院班级.手机号.手机号.手机号.目录、 双轮自平衡车原理、 总体方案、 电路和程序设计四、 算法分析及参数确定过程.双轮自平衡车原理1. 控制小车平衡的直观经验来自于人们日常生活经验。一般的人通过简单练习就可以让一个直木棒在手 指尖上保持直立。这需要两个条件:一个是托着木棒的手掌可以移动;另一个是眼睛可以观察到木棒的倾 斜角度和倾斜趋势(角速度)。通过手掌移动抵消木棒的倾斜角度和趋势,从而保持木棒的直立。这两个条4:桦迄囲也蚪ft MFrt工I抽.坟理已1件缺一不可,让木棒保持平衡的过程实际上就是控制中的负反馈控制。图 1 木棒控制原理图2. 小车的平衡和上面

2、保持木棒平衡相比,要简单一些。因为小车是在一维上面保持平衡的,理想状态下, 小车只需沿着轮胎方向前后移动保持平衡即可。图 2 平衡小车的三种状态3. 根据图2 所示的平衡小车的三种状态,我们把小车偏离平衡位置的角度作为偏差;我们的目标是通过 负反馈控制,让这个偏差接近于零。用比较通俗的话描述就是:小车往前倾时车轮要往前运动,小车往后 倾时车轮要往后运动,让小车保持平衡。4.下面我们分析一下单摆模型,如图4 所示。在重力作用下,单摆受到和角度成正比,运动方向相反的 回复力。而且在空气中运动的单摆,由于受到空气的阻尼力,单摆最终会停止在垂直平衡位置。空气的阻 尼力与单摆运动速度成正比,方向相反。图

3、 4 单摆及其运动曲线类比到我们的平衡小车,为了让小车能静止在平衡位置附近,我们不仅需要在电机上施加和倾角成正比的 回复力,还需要增加和角速度成正比的阻尼力,阻尼力与运动方向相反。5 平衡小车直立控制原理图5.根据上面的分析,我们还可以总结得到一些调试的技巧:比例控制是引入了回复力;微分控制是引入 了阻尼力,微分系数与转动惯量有关。在小车质量一定的情况下,重心位置增高,因为需要的回复力减小,所以比例控制系数下降;转动惯 量变大,所以微分控制系数增大。在小车重心位置一定的情况下,质量增大,因为需要的回复力增大,比 例控制系数增大;转动惯量变大,所以微分控制系数增大。二.总体方案小车总框图ADli

4、Ci mor10AD陀螺仪加速度计速度检塑MPtJtiOSO2AHA设置与调试亡调试盜控枣時孚示 石連废这置5T-UNK车値直立 车辆运行 方向控制 调试与设更ra!M259-乜出叵璘调试计算机O8N电机驱动1STK132H03RCT6卜算法:三电路和程序设计1.主要元器件选型A. STM32F103RCT6最小核心板小容量增强型,32位基于ARM核心的带16或32K字节闪存的微控制器USB、CAN、6个定时器、2个ADC、 6 个通信接口功能。 内核:ARM 32 位的 Cortex-M3 CPU-最高72MHz工作频率,在存储器的0等待周期访问时可达1.25DMips/MHz(Dhryst

5、one2.1)。- 单周期乘法和硬件除法。 存储器-从16K到32K字节的闪存程序存储器。- 从 6K 到 10K 字节的 SRAM。 时钟、复位和电源管理- 2.03.6伏供电和I/O引脚。-上电/断电复位(POR/PDR)、可编程电压监测器(PVD)。- 416MHz 晶体振荡器。-内嵌经出厂调校的8MHz的RC振荡器。-产生CPU时钟的PLL-带校准功能的32kHz RTC振荡器 低功耗- 睡眠、停机和待机模式- VBAT为RTC和后备寄存器供电 2个12位模数转换器,1US转换时间(多达16个 输入通道)- 转换范围:0 至 3.6V- 双采样和保持功能- 温度传感器 DMA:- 7通

6、道DMA控制器-支持的外设:定时器、ADC、SPI、I2C和USART多达80个快速I/O端口- 26/37/51个I/O 口,所有I/O 口可以映像到16个外部中断;几乎所有端口均可容忍5V信号B. L298N双直流电机驱动模块板载一个 L298N 马达控制芯片和一个7805 稳压芯片。 模块可以同时驱动2个直流电机或者一个五线四相式步进电机。模块输入电压 612V 常用的电机驱动功能够用切资料也很好找。C传感器MPU6050模块此六轴模块采用先进的数字滤波技术(卡尔曼滤波),能有效降低测量噪声,提高测量精度。模 块内部集成了运动引擎DMP,获取四元数得到当前姿态。姿态测量精度0.01度,稳

7、定性极高,性能甚 至优于某些专业的倾角仪!采用高精度的陀螺加速度计MPU6050通过IIC协议输出保证数据的准确 性。电压:3V6V。电流:10mA。体积:17.8mm X 17.8mm 重量:1.1g 测量维度:加速度:3 维,角速度:3维,姿态角:3维量程:加速度:土 16g,角速度:土 2000 /s。分辨率:加速度:6.1e-5g,角速度:7.6e-3 /s。稳定性:加速度:0.01g,角速度0.05 /s。数据输出频率100Hz(波特率115200)/20Hz(波特率9600)。波特率 115200kps/9600kps。D.HC-05 蓝牙主从一体模块供电电压3.3V3.6V;支持

8、AT指令集配置模块;采用CSR主流蓝牙芯片,蓝牙V2.0协议标准;波特率最高为1382400bps;配对以后当全双工串口使用,无需了解任何蓝牙协议,但仅支持8位数据位、1位停止位、无奇偶 校验的通信格式,这也是最常用的通信格式,不支持其他格式。2电路设计STM32 核心板原理图JNTRS.IJ l?u! HUTJE-UPH-I5JPR 11牡H】rPH 4KPY1DSC m FTI4OSt OLTTl KI54us? M:畋017KKST pc 仙gctd PCIAEXH PClADCilPC3 ADCIl VISAVDDAPAi ATCLT ADCDI. MWPArlPTI 时 PA5-SP

9、Jl_SXPA7-SPTI MOSTPGPADCl 斗 PT5昭UF FBP.DCa rttlADC PttiOKKJII!PBIO-1?5ART1_TX PBH IFSARTJ RXPCLQ pal5 rrniPAI WTOE 尿THOPAI3-WBDP PAITBDM PALDLRri_lC PAimATtTI TX PA&OARTltKPAI. USBFgTj电机驱动原理图O1:不二I-rifl XHI.Mj :UlfJ li l 厂* 4M :理ftIXHJ 54+9 朗播 I,灿y .H f.YLSQXfilD2码希口1OTtT |plui二 2WXMPU6050 原理图蓝牙模块原理

10、图UART-TX UARI-RX四算法分析及参数确定 小车直立环使用PD (比例微分)控制器,其实一般的控制系统单纯的P控制或者 PI 控制就可以了,但是那些对干扰要做出迅速响应的控制过程需要 D(微分)控制。直立控制的 PD 代码int balance(float Angle,float Gyro)float Bias,kp=300,kd=1;int balance;Bias=Angle-0; /计算直立偏差 balance=kp*Bias+Gyro*kd; /计算直立 PWM return balance; /返回直立 PWM 参数是平衡小车倾角和 Y 轴陀螺仪(这个取决于 MPU6050

11、 的安装), 调试过程包括确定平衡小车的机械中值、确定 kp 值的极性(也就是正负号) 和大小、kd值的极性和大小等步骤。在调试直立环的时候,我们要在定时中断服务函数里面屏蔽速度环和转向环。确定平衡小车的机械中值把平衡小车放在地面上,绕电机轴旋转观察小车什么时候平衡 用量角器量大概中值在哪。本小车为 2 度。确定 kp 值的极性(令 kd=0)首先我们估计kp的取值范围。我们的PWM设置的是7200代表占空比100%,假如我们设定kp值为720, 那么平衡小车在10的时候就会满转。根据我们的感性认识,这显然太大了,那我们就可以估计 kp 值 在0720之间,首先大概我们给一个值kp=-200,

12、我们可以观察到,小车往哪边倒,电机会往那边加速让小 车到下,就是一个我们不愿看到的正反馈的效果。说明kp值的极性反了,接下来我们设定kp=200,这个时 候可以看到平衡小车有直立的趋势,虽然响应太慢,但是,我们可以确定 kp 值极性是正的。具体的数据 接下来再仔细调试。确定 kp 值的大小(令 kd=0)确定参数的原则是:kp 一直增加,直到出现大幅度的低频抖动。定kp=200,这个时候我们可以看到,小车虽然有平衡的趋势,但是显然响应太慢了。定kp=680,这个时候我们可以看到,小车的响应明显加快,而且来回推动小车的时候,会有大幅度的低频抖动。说明这个时候 kp 值已经足够大了,需要增加微分控

13、制削弱 p 控 制,抑制低频抖动。确定 kd 值的极性(令 kp=0)我们得到的 MPU6050 输出的陀螺仪的原始数据,通过观察数据,我们发现最大值不会超过 4 位数(正 常应用在平衡小车上的时候),再根据7200代表占空比100%,所以我们估算kd值应该在03之间,我 们先设定kd=-0.5,当我们拿起小车旋转的时候,车轮会反向转动,并没有能够实现跟随效果。这说明了 kd 的极性反了。接下来,我们设定kd=0.5,这个时候我们可以看到,当我们旋转小车的时候,车轮会同向以相 同的速度跟随转动,这说明我们实现了角速度闭环,至此,我们可以确定 kd 的极性是正的。具体的数据 接下来再仔细调试。确

14、定 kd 值的大小(令 kp=500)确定参数的原则是: kd 一直增加,直到出现高频抖动。设定kd=0.5,这个时候我们可以看到,低频大幅度频抖动已经基本消除。设定kd=1,这个时候我们可以看到,整体性能已经非常棒。设定kd=3.8,这个时候我们可以看到,小车开始出现剧烈抖动至此,我们可以确定得到 kp=500,kd=1.7 是 P、D 参数的最大值。然后我们进行最关键的一步,对每 个系数乘以0.6,取整得到kp=680,kd=2,这就是最终我们需要的参数,这样做的原因是,我们之前得到的参 数是 kp、kd 最对每个数据乘以 0.6 得到。这个时候我们可以看到,小车没有任何的抖动,非常平稳,但 是依然无法保持长时间的直立,直立很短一段时间后会往一个方向加速倒下。这个等我们下面加上速度环 才能得到更好的性能。只有直立环是很难让小车达到很好的直立效果的。平衡小车速度控制调试平衡小车速

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号