- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
龙源期刊网 基于STM32的两轮自平衡小车研究作者:赵磊来源:《数字技术与应用》2017年第01期 ????????摘要:本文以STM32单片机为核心控制器,以MPU-6050为姿态读取模块,实现两轮自平衡小车的设计,能够使小车的控制效果得到提高,以电池为电源,设计两轮自平衡小车的硬件和软件设计;用卡尔曼滤波算法作为数据的平衡滤波,用PID算法作为控制算法,提高控制精度,从而设计和实现了小车的自平衡。 ????????关键词:STM32;自平衡;卡尔曼滤波;PID ????????中图分类号:TP273+.4 文献标识码:A 文章编号:1007-9416(2017)01-0035-02 ????????微控制器STM32的内核为Cortex-M3,CPU为32位,存储器为SRAM,大小为6-64kB。以STM32为基础,实现对姿态检验传感器等系统各方面数据的控制,能够使小车的姿态更加合理,控制精度高,控制速度快。 ????????1 基于STM32的两轮自平衡小车的硬件设计 ????????基于STM32的两轮自平衡小车的硬件设计包括电源模块、主控制器模块、姿态读取模块与驱动模块四个部分。 ????????1.1 电源模块 ????????电源提供是两轮自平衡小车行驶的动力支撑。本设计以电池作为电源,为小车的行驶提供能量[1]。小车电机电压须要12V,拟用3节3.6V的锂电池作为电源。 ????????控制器STM32和MPU-6050均需要3.3V电压支撑。本设计以3节锂电池的12电压进行降压供电。采用LM2596-3.3设计降压稳压电路。 ????????1.2 主控制器模块 ????????主控制器为STM32,是ST公司突出的一款微控制器。内核为Cortex-M3,CPU为32位,存储器为SRAM,6-64 kB。其增强型系列处理速度能达到72MHz,具有高性能,低成本等特点。在上述主控制器的支持下,实现对两轮自平衡小车的控制,使其能够在控制下平衡行驶[2]。 ????????1.3 姿态读取模块 ????????姿态读取的目的在于将两轮自平衡小车的姿态控制在合理的范围,保证其在控制下能够平衡行驶。系统以MPU-6050为姿态读取模块与STM32内的运动处理器程序相结合。为了保证姿态读取时实性,将陀螺仪与加速计联合使用,两者均选为3轴,共同构成姿态读取模块,可以有效提高姿态读取的实时性。 ????????1.4 电机驱动模块 ????????电机驱动模块的功能在于实现驱动。小车采用L298N组成的双H桥作为电机驱动模块。对两轮自平衡小车可以起到良好的自动化控制。为了使电机驱动模块的功能能够得到有效发挥,以直流电机作为驱动的来源。 ????????2 基于STM32的两轮自平衡小车的软件设计 ????????在硬件设计完成之后,以STM32作为核心控制,实现对两轮自平衡小车软件的设计。用卡尔曼滤波算法做姿态数据的平滑滤波;用PID控制算法做控制数据输出。 ????????2.1 系统初始化 ????????在程序正式开始运行之前,需要完成系统的初始化过程。系统初始化包括的流程如图1所示。 ????????时钟初始化:由于主程序的运行过程中,需要判断定时是否已经达到了5ms,因此系统中需要设置时钟,且时钟功能的发挥十分重要。鉴于主程序的上述特点,在系统初始化过程时,需要首先进行时钟的初始化。 ????????NVIC中断初始化:为了保证按时中断的准确性,并使5ms到达之后,能够实现中断,并开始读取MU-6050所采集的小车姿态数据的过程,必须保证将定时中断初始化。 ????????定时器初始化:该初始化实现的目的同样在于保证在5ms时间达到时,使定时中断能够顺利实现,并开始姿态数据读取过程。 ????????通信初始化:又称I2C初始化,其功能在于使数据采集能够有效的实现,并使所采集的数据,能够被有效传输。 ????????测速模块初始化:为了保证两轮自平衡小车在被控制的环境下行驶的稳定性与可靠性,提高姿态控制的准确度以及时实性非常重要,而测速模块的功能,便在于保证上述功能的顺利实现。对于小车的行驶与控制非常重要。 ????????MPU-6050初始化:MPU-6050为姿态读取模块,初始化的意义在于实现对小车的姿态检验。 ????????电机PWM初始化:电机PWM输出,为系统主程序的最后一个流程,保证电机能实现不同速度的输出。 ????????2.2 定时中断设计 ????????基于STM32的两轮自平衡小车在完成系统的初始化过程后等待定时中断产生调整姿态的实现流程。 ????????读取姿态:如果5ms时间已到,则可以直接读取MU-6050这一姿态控制模块所采集的小车姿态数据,与此同时,完成电机速度检测(编
您可能关注的文档
最近下载
- RIGOL普源PVP2350 无源探头用户手册.pdf VIP
- 电气试验管理制度.docx VIP
- 考研真题东北农业大学食品学院816食品生物化学历年考研真题汇编.docx VIP
- 化学锚栓计算(修改版).xls VIP
- osi七层模型教学课件.ppt VIP
- 新民主主义革命理论PPT2024版毛泽东思想和中国特色社会主义理论体系概论课件.pptx VIP
- ZOOM声乐乐器L-12快速入门(Chinese)说明书用户手册[1].pptx VIP
- 《成人密闭式吸痰技术操作规范》.pdf VIP
- 《图纸会审(表格)》.docx VIP
- 北京市房屋租赁合同(2008版-新)【模板范本】 .pdf VIP
文档评论(0)