基于红外传感器自主避障平衡车.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于红外传感器自主避障平衡车

基于红外传感器自主避障平衡车   [摘 要]本设计以2016年第十一届恩智浦杯智能车大赛为背景,自主设计车模的硬件结构,独自构思控制策略和算法结构,以恩智浦公司生产的32位Kinetis系列单片机作为核心处理器,硬件上采用MOS管驱动电机,传感器上采用数字陀螺仪和数字加速度计综合检测车模的平衡角度,用编码器反馈速度信息,采用电磁传感器来检测赛道位置信息和检测采用红外传感器检测障碍物起,并使用蓝牙、无线、液晶辅助调试,以PID控制作为控制电机的主要算法原理,最终控制车模达到在赛道上稳定直立行走并且遇到障碍能减速制动的效果 [关键词]k66微处理器,红外传感器,两轮电磁平衡车 中图分类号:TV76 文献标识码:A 文章编号:1009-914X(2017)06-0140-02 0.引言 近年?恚?国内外有很多关于两轮自平衡车的研究,甚至已经生产出相应的代步产品。随着现代科技的发展,对于自平衡的车身响应速度和姿态控制精确度提出了更高的要求。与此同时,两轮自平衡直立车的智能化也是当前研究的另一大热点。如何更好地在无人操控的基础上实现这种平衡车的控制。可以说这体现了多学科领域的交叉和综合,也是未来发展的趋势。[1] 两轮自平衡小车是一个高度不稳定两轮机器人,是一种多变量、非线性、绝对不稳定的系统,是检验各种控制能力的典型装置。通过推导出小车自平衡条件,计算最大可控角度,并得到可控角度与路面摩擦因数间的关系。作者对可控角度的推导,为系统数学建模和平衡控制的实现提供了重要的理论数据和理论依据。[2] 自平衡系统是一种两轮左右平行布置结构类似于传统的倒立摆与蹊跷板平衡系统其本身是一个自然不稳定体同时两轮自平衡车在姿态控制过程中,物理支撑部位直接与自然地面接触。这与一般的一级倒立摆运行在经过加工的导轨上不同,虽然二者动力学模型类似,但是其控制过程中受到的干扰因素更丰富,因此两轮自平衡小车是研究各种控制算法性能的理想平台。[3][4] 1.硬件设计 本文所设计的平衡车,选用了NXP公司Kinetis K 系列中的MK66FX1M0VLQ18。Kinetis K系列MCU基于ARM Cortex-M4F内核,其适合需要高存储器密度、低功耗和高处理效率的应用。使用的姿态传感器为NXP公司最新的FXAS21002 系列3轴陀螺仪与MMA8452Q三轴、电容式微机械加速度传感器加速度传感器,其都具备超低功耗和先进的嵌入式特性,特别适合应用在增强运动控制等应用。故大大提高了平衡车控制的系统稳定性及实时性,而在红外传感器上选用了E18-D80NK-N红外传感器,这款传感器最远可以检测80厘米距离的问题,该传感器具有探测距离远、受可见光干扰小、价格便宜、易于装配、使用方便等特点,可以广泛应用于机器人避障、流水线计件等众多场合。[5] 整个系统的核心控制采用NXP的MK66FX1M0VLQ18型号单片机, MK66FX1M0VLQ18 是Kinetis系列双高速和全速USB,2MB闪存微控制器,基于ARM Cortex-M4内核的K66 微控制器主频180M,144LQFP封装,适合需要高存储器密度、低功耗和高处理效率的应用。该微控制器提供高速USB,带集成高速USB物理收发器、SDRAM控制器、全速无晶体USB支持等功能,其多达32通道的DMA用于外设和存储器,可以降低CPU负载,实现更快的系统吞吐功能。在本次平衡车设计中,使用了MK66单片机的GPIO,PIT,UART,IIC,FTM,DMA等外设。[6] 控制流程图为(图1): 由于平衡车需要保持直立状态运行,运行时对车模的重心要求比较高,为了能够充分降低车模的重心,将主板和电机驱动电路做成一块PCB是最佳方案,[7]主板电路图如图2 2.系统软件设计 2.1 直立控制 平衡车姿态控制由直立环、速度环和方向环三个闭环构成,其相互影响,并相互制约。车模直立控制采用 PD 控制,由加速度计和陀螺仪模块采集数据通过互补滤波算法运算得出,配合PD 控制使得平衡车保持直时立状态 互补滤波算法可以将获得的加速度数据与陀螺仪数据积分后得到的角度进行对比校正,通过对比积分所得到的角度和重力加速度所得到的角度,使用它们之间的偏差改变角度的输出,从而积分后的角度逐步跟踪到加速度传感器所得到的角度,从而保证实时性,图为互补滤波后得到的角度信号(图3) 部分程序程序: void AngleCalculate(void) { F4 lnDeltaValue=0; lnDeltaValue = ACC_MMA8451_Z; if(CarControlFlag == 0)//起跑直立 lnDeltaValue = lnD

您可能关注的文档

文档评论(0)

docman126 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档