版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
20165人,两轮自平衡机器积小,运动灵活,能够在比较狭窄、需要大转角的场合中运本设计以两轮车模为研究平台,以公司32位微处理器MK60FX512VLQ15为控制。通过加速度传感器和陀螺仪,设计滤波算法,实现了倾角的测量;通过设计MOS电机驱动电路,使用单片机输出,实现了电机速度控制;通过编写控制算法,实现了两轮车模的自平衡功能;通过编测量电机转速,对速度进行闭环控制,实现了两轮自平衡机器人的速度控制功能。最终通过无线,使小车能够在自平衡单片机,PID,倾角测量,MOSSelf-balancingrobotbasedonPIDAlongwiththefurtherroboticsresearch,androbotswaswidelyusedintheindustrial Things.Inapracticalapplication,the paredwiththeWheeledrobotwhichhasseveralwheels,self-balancingtwo-wheelrobothastheadvantagesofflexiblemovementbecauseofit’ssmallsize,it’ssuitableinthemorenarrowuseoftheenvironment.Thiskindofrobothastwowheelsofcoaxial,tokeepbalancebywayofmovement.Therobotcanachievethebasicmovementfunction,itcanmoveforwardandbackward,turnleftandright,aswellasstillstanding.Duetoit’sspecialstructure,itcanadapttodifferentterrainenvironment.Forthereasongivenabove,researchesontheTwo-WheeledSelf-BalancingRobotwouldbesignificant.asthecontrollingkernel.Themainworks plishedinthepaperinclude:(1)Designingafilteralgorithm,achievingAnglemeasurementbasedonInertialMeasurementUnit-controlthroughtechnology.(3)Designingcontrolalgorithm,achievingself-balancing.(4)Measuringmotorspeed,achievingspeedcontrolundertheconditionofself-balancingthroughClosed-LoopControl.Finally,realizingfreemovementbyusingaremote:Microcontroller,PID,Measurementofangle,Drivingcircuitof绪 研究目的和意 国内外发展现 设计内 总体设计方 设计思 硬件设计方 机械结构设计方 硬件电路设 单片机最小系统电 加速度传感器模 陀螺仪模 电机驱动模 电源管理模 软件程序设 系统流程图 程序初始化 PID控制算法 PID控制算法介 PID控制算法参数整 倾角估计算法 互补滤波 卡尔曼滤波 直立控制程序设 速度控制程序设 方向控制程序设 开发工具及调试结 开发工具介 MDK介 SerialDigitalScope介 调试结 PID算法控制电机调试结 互补滤波法调试结 卡尔曼滤波法调试结 总结与展 附录A主控板原理图与PCB 附录B电机驱动原理图与PCB 附录C主要源程 参考文 致 研究目的和意两轮自平衡机器积小,运动灵活,能够在比较狭窄、需要大转角的场合中运动[1]。国内外发展现两轮自平衡机器人的构想来源于电气通信的喀左教授在1986年一种自2002年,工业大学的FelixGrasser等人设计出可的两轮自平衡机器人,运动速度可达到1.5m/s。两轮共轴,每个有独立的驱动,能实现速度控制、2002年,的赛格威公司设计了第一辆载人电动平衡车Segway,设计时速可20km/h,并且成功推向市场,但是价格昂贵,高达5000[3]2004设计了一款两轮自平衡电动代步车,可实现领半径转弯。使用简单,用户经过10分钟简单的练习就可以驾驶,正常工作时,使用者通过身体前倾和后仰来控制加速和,通过手柄,可实现转弯,时速可达10km/h,30km。设计内使用ARMCortex-M4内核的FreescaleK60单片机为主控制器,对加速度计和陀螺仪的数据进行融合,得到车身倾角最优估计,设计MOS电机驱动电路,编写PID控制算法控制车轮,达到自主直立的目的。利用编构成速度反馈回路,使用PID控制算法设计思2.1硬件设计方键电路蜂鸣器电路其中电源管理电路分为3.3V电源管理电路和5V电源管理电路,5V管理电路使用LM2940三端线性稳压器,输入7.2V电池电压,输出5V电压。3.3V管理电路使用LM1117三端线性稳压器,输入接LM2940的5V电压,输出3.3V电压。考虑到本系统中器件、传感器较多,因此5V管理电路和3.3V管理电路均使用两个。微控制器接口主要包括:OLED接口、蓝牙接口、MMA7361传感器接口、L3G4200D传感器接口、编正交接口2个、四通道 接口、接口,以及预留IO,方便调试图2.2机械结构设计方的角度安装在轮轴,使用热熔胶加以固定。图2.3单片机最小系统电K60(ARMCortex-M4耗、混合信号微控制器,Cortex-M4内核带DSP指令,性能可达1.25DMIPS/MHz(部分本系统使用MK60FX512VLQ15单片机为控制,该单片机主频高达150MHz,内部512KBFlash、144KBSRAM,可以轻松应对大多数的嵌入式应用场合。片内集成了4个可配置分辨率的高速16位模数转换器(ADC)、两个12位数模转换器(ADC)、4个可输出的高速比较器、6个支持IrDA的UART、3个硬件IIC总线接口和3个硬SPI总线接口、32通道DMA控制器以及大量的多功能定时器,丰富的片内外设资源,不式,运行功耗低至350uA/MHz,静态功耗低至5.6uA,在高性能应用场合也可有效降低系[8]LQFP144图3.1主 加速度传感器模MMA7361是公司(原飞思卡尔)的微型电容式加速度传感器,其功耗低,体2.2-3.6V400uA,3uAMMA7361的引脚图如下图3-1所示,引脚排列如下表3.1所示引12引12X3Y4Z5地6789g-3.2MMA7361陀螺仪模L3G4200D16具有三种可选分辨率(250/500/2000dps),集成高通、低通滤波器,用户可带2.4-3.6V,通过IIC/SPI接口输出数据。3.3L3G4200D电机驱动模采用集成电机驱动使用集成电机驱动设计(常用的电机驱动有BTS7970、L298N等),电路简单、可靠性高,但是驱动的性能有限。由于本系统车模的电机的内阻小于10毫欧,而集成驱动内部的每个场效应管导通电阻在120毫欧以上,这样,电机驱动回路总电阻就太大了,驱动电路的输出功率和发热量都很大,电机性能得不到充分发挥。采用N沟道场效应管和栅极驱动设计,分立的N沟道场效应管的导通电阻很低,一般小于10毫欧,大大减小了电机驱动回路总电阻。另外的栅极驱动可以提高场效应管的开关速度,使控制方式的调制频率提高,从而减少电枢电流脉动[9]。,经过多次试验与调试,我们最终选用大电路电机半桥驱动IR2184,它可以驱动高端和两个N沟道场效应管能提供较大的栅极驱动电流并具有硬件死区、硬件防同臂导通等功能使用两片IR2184型半桥驱动可以组成完整的直流电机H桥式驱动电路。其性能优异、价格便宜,所以我们选择它进行设计10]。电源管理模(7805LM2940LM1117和开关(LM2596LM2941较低,因此应该选择开关型稳压电源[1]。LM2940:LM2940-5.05V,1A,在输出电流为1A时,最小输入输出电压差为0.8V,最大输入电压为26V。工作温度-LM1117:LM1117是一个低压差线性三端稳压5个固定电压输出的型号:1.8V、2.5V、2.85V、3.3V和5V。当其在输出电压3.3V,输出电流为800mA时输入输出电压差1.2V。LM1117±1%,输出端需要一个至少10uF的钽电解电容来改善瞬态响应和稳定具有TO-263TO-220SOT-223和TO-2523.3VLM1117OLED12]。系统流程图4.1程序初始化LEDLED转换器进行,MK60单片机内部集成4个16位ADC转换器,通道多达数十个,分辨 ADC_QuickInit(ADC_ACCEL_Z,kADC_SingleDiff10or11);//单端10OLED_P8x16Str(0,2,"oWorld!");初始化:本系统通过控制电机转动,频率10Khz,初始化程序如下:UARTDMA初始化:UART即通用异步收发器(UniversalAsynchronous便进行调试和观测数据。DMA指直接器技术(DirectMemoryAccess),GPIO_CallbackInstall(KEY_GPIO,GPIOA_ISR);//按键中断回调函数Cortex-能,即estedVectoredInterruptController的缩写。通过NVIC控制器,可NVIC_EncodePriority(NVIC_PriorityGroup_2,0,0));PID控制算法PID图4.2PIDPID控制器的微分方程U(t)Kp[e(t)1te(t)dtTde(t)r(tc(t
Ti
PID
D(s)=U(s)
1Ti*
Td*S]
数字式PIDU(n)Up(n)Ui(n)Ud(n)
Up(n)
nUi(n)KpTn
Ud(n)Kp*Td[e(n)e(nT
Ti
P PI PD PID
U(n)Up(n)U(n)Up(n)Ui(n)U(n)Up(n)Ud(n)U(n)Up(n)Ui()Ud(n)PIDPIDU(n)Kp{e(n) ne(i)Td[e(n)e(nTT
PIDU(n)=U(n)-U(n-=Kp[e(n)e(n1)]KpTe(n)KpTd[e(n)2e(n1)e(n= PIDPID的参数整定是PID控制算法设计的内容,根据系统的特性确定PID控制器的比例系数Kp、积分时间Ti和微分时间Td。PID的参数整定方法有很多,概括起来有PID参数的工程整定法,主要有临界比例法、反应曲和衰减法。三种方法各有PIDPIDPIDKpPIDTi=0、Td=0,PID60%~70%,0Kp,Kp输出振荡,记下此时的比例系数Kp,设定比例系数Kp为当前记录值得60%~70%。KpTi,Ti,直到系统出现振荡,然后再逐渐加大Ti,直到系统振荡。记下此时的积分时间常数Ti,PID控制器的Ti150%~180%。TdKpTi30%PID4.3①arctan(X/Z②arcsin(X/③arccos(Z/INS[23]。K1dt,直到满意为止。其中,K1K1[24]float // voidYijie_Lvbo(floataccel_pro,floatgyro_pro){angle=K*accel_pro+(1-K)*(angle+gyro_pro*}卡尔曼滤波法源于匈牙利数学家RudolfEmilKalman的《ANewApproachtoLinearFilteringandPredictionProblems》(线性滤波与预测问题的新方法)。卡量倾角的情况下,设定目标平衡角度,使用PID算法进行闭环控制。因为车体只会在一转动,抵消车体在该维度上的倾斜,就可以完成平衡控制[27]2.2.14.4L,mx(t)。如4.5a(t)以及外x(t)之间的运动方程。4.5
g g a(t)cos[
在角度很小时,运动方程简化
g(t)a(t)
dt
2.2.34.64.7void{angle_Accel=(A_Z-AZ_ZERO);angle_Accel=asin(angle_Accel);Gyro_Now=(T_Y-TY_OFFSET)* elseif(FilterSwitch==1) elseif(FilterSwitch==2) elseif(FilterSwitch==3) {}{}
elseif(AngleControlOut_D<-500)AngleControlOut_D=-500;if(AngleControlOut>800)AngleControlOut=800;}改变车模直立控制的目标角度,直立控制PD算法中,有一个目标倾角,当目标倾角不是真正的平衡位置倾角时,车模会一直运动。通过编测量转速,形成PID很难维持平衡,在直立控制的作用下,车模就会运行。通过编测量转速,形成PID4.8void{if(SpeedControlOut>300)SpeedControlOut=300;//速度环输出限幅elseif(SpeedControlOut<-300)SpeedControlOut=-300;}PD具备自主识别路径的功能,因此PD算法的输入参数使用完成。为了改善转向的PDe(t)-e(t-1),X4.9voidDirection_Calculate(int16_t{if(DIR.error_sum>2000)DIR.error_sum=2000;elseif(DIR.error_sum<-2000)DIR.error_sum=-2000;DirectionControlOut=DIR.P*DIR.error++DIR.D*(T_X-if(DirectionControlOut>300)DirectionControlOut=300;elseif(DirectionControlOut<-300)DirectionControlOut=-}开发工具介MDKMDKKeilARMCortex-MCortex-R4ARM7ARM9、调试,支持C/C++语言和汇编语言,并且可以联合编写,编译效率高,具有多种优化等级,用于开发大多数嵌入式软件非常方便。MDKARMC/C++Cortex-M0/M3/M4、Cortex-R4、ARM7ARM9KeilRTXTCP/IPUSBUSBGUIMDKCMSIS(CortexSerialDigitalScopeSerialDigitalScope数据分析功能,支持最大波特率115200。协议简单可靠,具备CRC校验功能,可以很方调试结PID为了学习和验证PID算法,设计了位置式PID算法在电机空载情况下进试,PID图5.1PID算法方波效图5.2PID算法锯齿波效图5.3PID算法正弦波效互补滤波主要调节的是对于加速度计的K,K越大,则速度越快,但滤波效果越差。根据需要,选择适合系统的K系数。下面两幅图分别为K=0.01,和K=0.05时当K=0.01时,滤波效果更明显,平滑度很高。当K=0.05时 效果好,平滑度差5.4(K=0.015.55.6人,两轮自平衡机器积小,运动灵活,能够在比较狭窄、需要大转角的场合中运本设计以32位微控制器MK60FX512VLQ15为,自行设计了主控电路板和电机驱动电路板,以两轮车模为研究平台,编写CPIDOLED蓝牙可以将系统同外部设备如电脑等连接起来可进行无线控制和调试通过可以控制自平衡机器人运动如果加入环境识别系统如头CCD红外对难达到较高水平。2)PIDPIDPIDPIDA主控板原理图与PCBB电机驱动原理图与PCBCint{uint8_tdirswitchtemp,spswitchtemp;{ {spswitchtemp=SpeedControlSwitch;}}}void{staticuint16_tFindZeroIndex=0;{}{systime_speed=0;Sp_Smooth=0.05;//}{{{}}}}void{/*******DMP用到了printf*********///**********LED初始化,用作系统运行指示***********///********OLED初始化**************///**************模拟加速度计陀螺仪初始化 ////**************IIC及L3G4200D\HMC5883初始化******************//{} /****DMP数据输出中断*/ //DMP输出输出中断/****************初始化*****************//**************FTM正交初始化/***********初始化位脉冲-方向型编入//**********************按键中端配置//*****************PIT定时中断初始化*****************//*******************NVIC配置****************/ //中断优先级分成2组NVIC_SetPriority(PIT0_IRQn,NVIC_EncodePriority(NVIC_PriorityGroup_2,1,NVIC_SetPriority(PORTE_IRQn,NVIC_EncodePriority(NVIC_PriorityGroup_2,2,OLED_P8x16Str(0,2,"o}[1],,,等.移动机器人技术研究现状与未来[J].机器人,2002,黄永志,.两轮移动机器人运动控制系统的设计与实现[J].机器人,1:40-梁栋,尹晓红,王梦晴.移动机器人研究现状及发展趋势[J].科技信息2014(9):33-.两轮自平衡机器人控制系统研究与设计[D].哈尔滨工业大学,.两轮自平衡小车的控制技术研究[D].西安电子科技大学,PathakK,FranchJ,AgrawalSK.Velocityandpositioncontrolofawheeledinvertedpendulumbypartialfeedbacklinearization[J].IEEETransactionsonRobotics,2005,赖义汉,王凯.基于MPU6050的双轮平衡车控制系统设计[J].学报:自然科学版,2014,01期(1):53-57.K60Sub-FamilyReferenceManual. .,杜杨,,等.基于场效应管的直流电机驱动控制电路设计[J].电子设计工程,2008(2):3-6.卓晴.学做智能车[M].航空航天大学,.嵌入式硬件系统设计与开发实例详解[M].电子工业,徐亮,阮江军,甘艳,等.去耦电容在PCB板设计中的应用[J].电测与仪表2002,杨东轩.ARMCortex-M4笔记[M].航空航天大学,ARMCortex-M4DevicesGenericUserGuide.刘金琨.先进PID控 仿真(第3版)[M].电子工业,历风满.数字PID控制算法的研究[J].辽宁大学学报:自然科学版,2005,GudeJJ,Kahoraho ysisandPerformanceComparisonofPIDandFractionalControllers[J].Dynamics&ControlofProcessSystems,YoshikazuNishikawaNobuoSannomiyaTokujiOhta,等Amethodforauto-tuningofPIDcontrolparameters[J]
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《行政诉讼法》课程教学大纲
- 2024年低价装修月租房合同范本
- 2024年代理拓客合同范本大全
- 2024年冲床加工合伙人协议书模板范本
- 保育员与家长沟通技巧培训
- 动脉硬化的预防与治疗
- 山东省德州市齐河县刘桥乡2024-2025学年度八年级上学期期中考试物理试题(含答案)
- 2024-2025学年福建省福州市福九联盟高一上学期期中考试数学试题(含答案)
- 下雪在学校注意事项和安全
- 员工岗位培训范本
- 技能大师工作室建设PPT幻灯片课件(PPT 66页)
- 《逻辑学》第五章-词项逻辑
- 头痛的国际分类(第三版)中文
- 新概念第一册语法知识点汇总(完美版)
- 建筑力学完整版全套ppt课件
- 【课件】Unit4Readingforwriting课件高中英语人教版(2019)必修第二册
- 学生学习过程评价量表
- 1.我们生活的世界
- 欧陆590系列数字直流式调速器中文说明书
- 分布函数(课堂PPT)
- 古城南京的城市演变与现代规划
评论
0/150
提交评论