DOI院10.19557/j.cnki.1001-9944.2018.03.005
基于STM32的双轮平衡机器人的控制系统设计范淇元1袁覃羡烘2袁李洪毅1
渊1.华南理工大学广州学院机械工程学院袁广州510800曰2.广东理工学院工业自动化系袁肇庆526100冤摘要院为了使得机器人在一些复杂的环境和任务中能够更好更平稳地移动袁该文设计了双轮平衡机器人的控制系统方案袁以MPU6050作为双轮平衡机器人的姿态检测模块来调整平衡倾角的大小袁并选用单片机STM32F103C8T6为控制核心驱动电动机产生前进或后退加速度来保持机器人身体平衡的状态遥还采用PID控制算法控制电机袁让双轮平衡机器人在保持平衡的同时实现向前尧向后及转弯运动遥另外袁引入蓝牙作为双轮平衡机器人的遥控方式遥最终完成了双轮机器人控制系统的测试袁验证了系统的可行性袁大大提高了双轮平衡机器人平衡能力和抗干扰能力遥关键词院两轮平衡曰MPU6050曰平衡倾角曰STM32F103C8T6曰PID曰蓝牙中图分类号院TG75
文献标志码院A
文章编号院员园园员鄄怨怨源源渊圆园18冤03鄄园园18鄄园4
DesignofControlSystemofTwoWheeledBalancingRobotBasedonSTM32FANQi鄄yuan1袁QINXian鄄hong2袁LIHong鄄yi1渊1.CollegeofMechanicalEngineering袁GuangzhouCollegeofSouthChinaUniversityofTechnology袁Guangzhou510800袁China曰2.DepartmentofIndustrialAutomation袁GuangdongPolytechnicCollege袁Zhaoqing526100袁China冤Abstract院Inordertoenablerobotstomovebetterandmoresmoothlyinsomecomplexenvironmentsandtasks袁thecontrolsystemoftwowheeledbalancingrobotisintroducedinthispaper袁MPU6050isusedasatwowheeledbal鄄ThePIDcontrolalgorithmisadoptedtocontrolthemotor袁sothatthetwowheeledbalancingrobotcanrealizefor鄄ancingrobottoadjustthesizeofthetiltangle袁andthesinglechipmicrocomputerSTM32F103C8T6isusedastheward袁backwardandturnmotionwhilemaintainingbalance.Inaddition袁bluetoothisintroducedastheremotecontrolmethodofthetwowheeledbalancingrobot.Thetestoftwowheeledrobotcontrolsystemiscompletedandthefeasi鄄balancingrobot.Keywords院twowheelbalance曰MPU6050曰balanceangle曰STM32F103C8T6曰PID曰bluetoothbilityofthesystemisverified袁itgreatlyimprovesthebalanceabilityandanti鄄interferenceabilityofthedualwheelcontrolcoretodrivethemotortoproduceforwardorbackwardaccelerationtokeeptherobotinabalancedstate.伴随着计算尧传感尧控制及执行等技术的快速发展袁科研工作者开始越来越重视移动机器人的研究袁使得机器人学成为目前学科研究炙手可热的领域之一遥社会在发展袁人们对移动机器人的应用要求也越来越高遥所以机器人面临的环境和任务也越
收稿日期院2017-11-17曰修订日期院2017-12-12
来越复杂袁这就要求移动机器人必须能够适应一些在凹凸不平的地面上行走袁有时需要在狭窄的空间运行等遥如何解决机器人在这些环境中更好更平稳地运行袁成为科研工作者须重点考虑的问题遥复杂的环境和任务[1-2]遥比如袁户外移动机器人需要
基金项目院国家教师科研基金十二五规划重点课题野教师专业发展研究冶项目渊GGZ1320946冤
作者简介院范淇元渊1979要冤袁男袁硕士袁副教授袁研究方向为机电工程曰覃羡烘渊1983要冤袁女袁硕士袁讲师袁研究方向为机械工程遥18粤怎贼燥皂葬贼蚤燥灶驭陨灶泽贼则怎皂藻灶贼葬贼蚤燥灶圆园18,33穴3雪
本双轮平衡机器人完美解决了上述问题遥各个模块能够正常并协调工作袁机器人可以在无人干预条件下实现自主平衡遥同时在引入适量干扰情况下机器人能够自主调整并迅速恢复稳定状态遥本控制系统在保证机器人平稳运行的前提下袁具备两方面的优点院硬件电路总体体积小袁而且其所包含的电子元器件价格低尧可靠性高曰程序易开发袁开发耗时少袁修改方便遥
1双轮平衡机器人的数学模型1.1双轮平衡机器人的整体结构
如图1所示袁是双轮平衡机器人的机械结构三
维图遥双轮平衡机器人整体结构由机身和车轮两大部分组成遥机身由上顶板渊亚克力板冤与下底板渊不锈钢板冤通过铜柱联接构成袁机身的底板部搭载的是控制系统板遥机身下部左右各安装1个370直流电机袁2个电机各自驱动左右2个车轮袁控制芯片向电机发送指令从而控制车轮实现机器人前进尧后退和转向3个动作遥经测量袁双轮平衡机器人的尺寸为150mm伊85mm伊110mm遥
图1双轮平衡机器人整体结构三维图Fig.13Dstructureoftwowheeledbalancingrobot1.2平衡的实现
当双轮平衡机器人的控制系统不工作时袁不论机身向前或向后倾倒袁两轮没有任何转动袁这时机身前后摆动与其车轮转动是相互的曰当控制系统开始控制时袁机身的状态变化使机器人有前进尧静止尧后退3种运动的方式袁而机器人上装载的姿态检测系统能够对机器人的倾斜状况进行实时检测并将得到的检测数据发送给单片机袁单片机接收到数据后对车轮转动进行适当的控制袁便可以抵消在这个维度上的倾斜力矩便可以保持双轮机器人的平衡袁如图2所示遥
双轮平衡机器人的控制核心思想是袁当姿态检测系统检测到机身产生倾斜时袁控制系统会根据测得的倾角产生一个相应的力矩袁通过控制电机驱动
圆园18,33穴3雪
控制系统与智能制造
渊a冤前进渊纠正前倾冤
图2渊三b冤种静止
纠正方式渊c冤后退渊纠正后仰冤
Fig.2Threetypesofcorrection车轮朝车身要倒下的方向运动至合适距离袁以保持机身的动态平衡[3-5]遥
2双轮平衡机器人控制系统硬件设计2.1控制系统硬件总体设计方案
STM32F103C8T6双轮平衡机器人的硬件电路主要由牙模块组成遥其中尧测测量量模模块块尧直主流要是电机驱动控制MPU6050模块芯尧磁尧片
蓝
电编码器两部分遥MPU6050测量的是机身的倾角兹与角加速度x渊t冤袁安装在左右2个电机上的磁电编码器将电机轴转过的角度经放大电路放大袁然后经单片机处理后输出两路AB相脉冲信号袁最后得到车轮的转速和方向遥双轮平衡机器人硬件系统结构如图3所示遥
MPU6050磁电编码器渊左冤磁电编码器渊右冤左轮电机
右轮电机
电源模块
TB6612FNG直流电机驱动
图3系统硬件结构Fig.3Hardwarestructurediagramofthesystem2.2STM32F103C8T6芯片
主控模块的STM32F103C8T6单片机是控制器的核心部分遥该单片机采用ST意法半导体公司生产的32位多功能尧低成本尧低功耗单片机袁它的内核采用ARM公司最新生产的CortexM3架构袁最高工MHz作袁频率可达72MHz袁运算速度可达1.25DMIPS/时器遥片片上上集成KB通的信闪接存口尧有202KB个IRAM2袁拥有7个定
个SPI尧1个CAN和1个USB遥
C尧3个USART尧2控制机器人需要的端口如下院淤2个PWM输出袁用于控制2个电机的转速袁用PWMA和PWMB表PB1示来遥输出在此使PWM用定信号时器曰3于的4两个个输出gpio口端用口于PB0控制和219控制系统与智能制造
个电机的正反转与停止遥2个电机分别表示为motor1PB7和motor2控制袁motor2端口曰盂PA02尧个PA1I2C控制模拟motor1gpio端袁口端袁口用PB6于控尧
制SDA获取6轴模块的数据袁使用的端口表示为定CH1时器曰榆和24TIM2的个编编码码CH2器器输模式入端口袁接渊需口即连接袁左PA0到轮尧PA1定的时器编码的端2器使SCL口的冤TIM2
用和了的编码器使用了定时器4的编码器模式袁使用的右端轮
口为TIM4CH1和TIM4CH2端口渊即PB6尧PB7的端口冤曰虞2个蓝牙模块接口袁主要用于接收和发送手机遥控信号袁分别连接至单片机的PB10尧PB11引脚上遥
2.3电源管理模块设计
电源模块由若干相互的稳压电源电路组成遥这样有利于为各模块提供合适的电源并有利于减少模块相互间的干扰遥
整个系统的电源来源为12V18650锂电池袁5V电源由7805稳压器提供遥7805稳压器用的是三端集成稳压电路袁只有3条引脚输出袁分别是输入端尧接LM2596地端和是输出3A端电遥流3.3输出V电降压源则开关由LM2596S型集成稳提压供芯
袁片遥利用该器件只需极少的外围器件便可构成高效稳压电路袁提供的有3.3V尧5V尧12V及可调渊-ADJ冤等多个电压档次产品遥选择3V的电压档遥2.4件袁相MPU6050使用MPU6050较于多组为件全方球测量案首姿态角度
袁例免整除合了性组合6轴陀螺运动仪处与理加速
组器的轴间差问题袁减少了大量的包装空间以及计算误16差字量位遥[6]的MPU6050遥MPU6050ADC袁将对其陀螺的对测得仪运的和加速度计分别用了3个动模状拟态的量转检化测为比可输出较灵敏的袁数对快速和慢速的动作进行准确的跟踪袁使用者可对可
传感器的测量范围进行设置袁陀螺仪的测量范围为依250毅/s袁依500毅/s袁依1000毅/s袁依2000毅/s袁加速度计的测量范围为依2g袁依4g袁依8g袁依16g遥一个片上的FIFOMPU6050有1024B的袁起通到信采降低用系统的接功口耗为的作400用MHz遥本的次I的
2另外袁片上内嵌了温C遥产依1%生变终动的振端信号荡袁连接器遥至SDA度传单片和感机SCL器和遥AD0连接在工接到单作环地遥MPU6050片境机下袁仅INT
有
综合利用了陀螺仪和加速度计的特点袁优势互补获
得较准确的姿态角度遥方法是将模块的姿态数据输
20出表示袁作为系统的状态量袁模块的姿态运动学方程作为滤波的状态转移方程袁加速度信息作为滤波的观察量信息袁然后利用卡尔曼滤波渊本次利用的是简易卡尔曼滤波冤的计算方法迭代计算更新袁从而可得到精度较高的不漂移的三轴角度遥2.5电机及驱动设计
电机型号选择JGA25鄄370袁采用齿轮组减速袁减速比为1颐34遥智能小车常用的直流电机驱动一般是L298N袁但本设计使用的电机驱动是TB6612FNG袁因为与L298N相比袁TB6612FNG在效率上有更显著提高袁而且体积也变得更小袁其大小与1元硬币相当遥
电路TB6612FNG袁效率远高于内部晶体管电路H是桥驱动MOSFET器遥的相H比桥L298N集成
的热耗性和外围二极管续流电路袁它无需外加散热片袁外围电路简单袁只需外接电源滤波电容就可以直接驱动电机袁系统尺寸大幅减小遥由于启动电机的瞬间电流很大袁会瞬间拉低整个系统的电压袁导致其他元器件无法正常工作袁而且还有可能导致电机电源输入端电路烧坏遥所以袁需要在电池电源输入端加上较大的滤波电容C2.6磁电编码器
2遥
使用磁电编码器为61302H2系列霍尔永磁编码器遥该编码器为两通道增量式磁电编码器袁可以直接固定于电机尾部电源脚上袁磁栅固定到电机尾轴上遥霍尔永磁编码器包含1个磁栅和2个磁敏检测传感器袁输出2个通道正交相位角90毅的方波遥永磁编码器响应速度快尧抗震性强尧传输距离远袁在恶劣的环境下使用有较长的使用寿命和较高的可靠性遥
2.7蓝牙模块选择
蓝牙模块选择BC04袁与手机的蓝牙匹配后袁通过手机上装载的遥控软件袁可实现对双轮平衡机器人的遥控和辅助调试袁验证双轮平衡机器人在保持平衡的同时袁还能做前进尧后退尧转弯的动作遥
3控制系统软件总体设计软件设计是双轮平衡机器人控制系统的关键遥本次软件设计实现的主要功能包括系统初始化尧机器人姿态信息的采集和卡尔曼滤波处理尧速度检测尧机器人运动控制渊PID冤尧直立控制尧速度控制及转向控制尧蓝牙遥控和限幅控制遥
粤怎贼燥皂葬贼蚤燥灶驭陨灶泽贼则怎皂藻灶贼葬贼蚤燥灶
圆园18,33穴3雪
图4所示为双轮平衡机器人的主程序流程图袁机器人通电运行后袁便进行单片机的初始化遥初始化包括两部分袁第一部分是对单片机所用到的模块进行初始化曰第二部分是应用程序初始化袁是对于机器人控制程序中应用到的变量值进行初始化遥第一部分代码可以通过网上下载的STM32库进行移
植实现[7-8]程序袁并完成遥初对机始化结器人束的姿态后袁先进信入息机采器集人遥直该立段检程测序中袁单片机读取MPU6050的数值判断是否已完成对机器人的姿态信息采集遥如果一旦采集完成袁则启动机器人直立控制尧速度控制及转向控制遥程序在控制机器人运动的同时袁也向单片机不断地反馈机器人的运动状态袁判断机器人是否跌倒遥跌倒可通过检测机器人的倾角是否超过一定范围进行判断遥如果机器人跌倒袁则停止机器人运行袁然后重新进入姿态信息采集过程遥
开始系统初始化机器人姿态信息采集N采集完成钥直立控制Y速度采集
方向控制速度控制
N机器人跌倒钥机器人停止Y运行
图4主程序框架Fig.4Mainprogramflowchart4系统调试结果4.1姿态检测系统调试
如图5所示袁串口助手显示的Pitch尧Roll尧Yaw
分别代表三轴的角度袁而本设计中袁实际计算需要的只有Pitch渊俯仰角冤袁其大小等于机身倾角兹渊穿ACCEL过机身的水平坐标轴与水平面的夹角冤曰显示的
度遥通过尧GYRO观察Pitch则分的别表值变化可以发现示三轴加速度袁尧机三器轴人角刚速开始运行时机身倾角在0毅附近变化袁在0毅附近说明控制系统能保持双轮机器人保持直立遥
圆园18,33穴3雪
控制系统与智能制造
图5串口输出数据Fig.5Serialoutputdata4.2实际运行效果
为了更好地测试双轮平衡机器人的动态性能袁利用手机蓝牙与其上的蓝牙模块匹配后对其进行遥控袁检验机器人的运动性能遥蓝牙控制界面如图6所示遥
滑动界面上蓝色的圆圈袁可让双轮平衡机器人往图6蓝牙控制界面滑动的方向移动遥经过多次Fig.6Bluetoothcontrol的测试和调整袁本次设计的
interface双轮平衡机器人控制系统可以让机器人在受干扰的条件下保持运动的稳定性袁其稳定性及抗干扰能力较好遥其运行效果如图7所示遥
渊a冤图7运行效果图渊b冤Fig.7Operationeffectdiagram5结语基于STM32设计的双轮平衡机器人的控制系统
在验证试验中取得了良好的结果袁各功能模块相互协调并能正常工作袁在无人干预和适量干扰的情况下袁机器人都能够自主调整并迅速恢复稳定状态袁因此为双轮平衡机器人应用到实际提供了较好的依据遥
参考文献院
[1]
IEEEK.Y.TransactionsCai袁L.Zhang.FuzzyonFuzzyreasoningSystems袁2008as袁a16control渊3冤院600-614.problem[J].
渊下转第41页冤
21控制系统与智能制造
可见袁车身刚开始处于左侧倾倒状态袁由倾倒状态变成平衡状态只需要1耀2s内就可以完成遥单纯采用PD控制方式只能使车身在平衡状态附近维持十几秒袁然后很快出现高频震荡袁直至系统崩溃倾倒在右侧遥而采用模糊PD增益调度控制方式袁能始终维持车身在平衡状态袁超调量小且稳定状态下车身倾斜角兹为-0.02耀0.02rad袁即偏差小于依1.5毅遥
在车身自平衡过程中袁陀螺的进动角与角速度的变化曲线如图10所示遥同样可见袁当采用纯PD控制方式时袁陀螺转子进动角在30s时刻开始高频震荡直至陀螺力矩失效状态遥而采用模糊PD增益调度方式时袁陀螺进动角终态偏差处于-0.2耀-0.1rad袁由图可见袁陀螺进动角终态的偏差中心并未处于0线上袁这是由于制作的样机重心偏向右侧形成偏心力矩所致袁陀螺需要不断地朝一个方向进动来产生抵抗力矩遥
1.51.00.50-0.5-1.0-1.5-2.001050-5-100102030405060708090100t/sPD
模糊PD增益调度
4结语非同轴两轮机器人采用了主动平衡方式袁具有
良好的平衡鲁棒性尧抗冲击性以及调速性袁可在静止或移动中实现平衡袁故安全性更好遥所开发的非同轴两轮的载人交通工具原理样机能够实现自动平衡遥由试验结果可知袁非同轴两轮自平衡机器人PD增益调度方式的平衡性能则表现很好袁车身倾斜角与陀螺进动角都处在比较稳定尧合理的范围内遥
参考文献院
[2][1]
朱磊磊袁.轮式移动机器人研究综述.机床与液压[J].2009袁37渊8冤院242-247.
BeznosAV袁Formal'skyAM袁GurfinkelEV袁etal.Controlof野Segway冶[EB/OL].http院//www.segway.com.
采用纯PD控制平衡的效果并不理想袁而采用模糊
[3]
[4][5][6]
村田制作所[EB/OL].http院//murata.com.辆院中国袁80024268.3[P].2013-07-03.
tomation.IEEE袁1998袁3渊3冤院2670-2675.
lization[C]//IEEEInternationalConferenceonRoboticsandAu鄄
autonomousmotionoftwo鄄wheelbicyclewithgyroscopicstabi鄄
丹尼尔窑基勇窑金袁凯文窑布莱特尼袁安德鲁窑L窑曾.陀螺稳定式车YetkinH袁KaloucheS袁VernierM袁etal.Gyroscopicstabilization
102030405060708090100t/sofunmannedbicycle[C]//AmericanControlConference渊ACC冤.IEEE袁2014院4549-4554.
KarnoppD.Tiltcontrolforgyro鄄stabilizedtwo鄄wheeledvehicles
渊a冤陀螺进动角琢变化曲线
[7][8][9]
PD
模糊PD增益调度
李勇袁耿建平袁林群煦袁等.基于双飞轮陀螺效应的两轮自平衡机器人的研制[J].机电产品开发与创新袁2015袁28渊6冤院14-16袁28.周龙加.一种基于陀螺进动效应的稳定装置研制[J].现代制造袁
[J].VehicleSystemDynamics袁2002袁37渊2冤院145-156.
[10]于法传.基于陀螺进动效应的机器人的研制[D].哈尔滨院哈
尔滨工业大学袁2015.
[11]张婷玉袁陈清梅袁邢红军.自行车转弯问题的研究[J].首都师范大
学学报院自然科学版袁2015袁36渊4冤院30-32.研究[J].控制工程袁2016袁23渊3冤院366-370.[J].控制与决策袁2010袁25渊6冤院862-866.
[12]杨正才袁吕科.基于模糊PD控制方法的两轮直立自平衡电动车[13]胡敬敏袁阮晓钢.一种基于模糊控制理论的独轮机器人控制算法
姻
2016袁21渊24冤院100-101.
觶变化曲线渊b冤陀螺进动角速度琢
图10车身自平衡过程中陀螺进动角及其角速度Fig.10Gyroprecessionangleanditsangularvelocityinautobodyselfbalancing[2]
渊上接第21页冤
199-249.
L.A.Zadeh.Theconceptofalinguisticvariableanditsappli鄄cationtoapproximatereasoning鄄I[J].SpringerUS袁1974袁8渊3冤院罗绥辉.四旋翼控制系统的硬件电路设计研究[J].中国机械袁
[5][6][7][8]
胡从坤袁余泽宇袁陈曦晨.四旋翼飞行器控制系统研究[J].科技广场袁2014渊6冤院61-.
戴维袁岳明袁肖鹏程袁等.单轴双轮自平衡小车的设计研究[J].物理实验袁2014渊12冤院33-36.
甘家辉.两轮自平衡机器人的系统设计及运动控制研究[J].模式识别与智能系统袁2010渊22冤院45-47.
戴福全袁李济泽袁朱悦涵袁等.两轮自平衡机器人转向稳定性优化研究[J].机械设计与制造袁2017渊4冤院256-258.
姻
[3][4]
2014渊16冤院201-210.
[J].科技视界袁2015渊2冤院22-30.
圆园18,33穴3雪
惠易佳袁姜羡袁朱再强.基于Arduino平台的自平衡二轮排爆车
41
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- fenyunshixun.cn 版权所有 湘ICP备2023022495号-9
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务