DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2148|回复: 1
打印 上一主题 下一主题

[待整理] 采用ATMEGA16单片机设计的两轮自平衡电动车

[复制链接]
跳转到指定楼层
楼主
发表于 2015-4-29 08:06:28 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
近两年来,在公共场合常常能见到一种叫做体感车(或者叫平衡电动车)的代步工具,由于其便捷灵活,使得其颇为流行,并被称为“最后一公里神器”。其运作原理主要是建立在一种被称为“动态稳定”的基本原理上,也就是车辆本身的自动平衡能力。以内置的精密固态陀螺仪来判断车身所处的姿势状态,透过精密且高速的中央微处理器计算出适当的指令后,驱动马达来做到平衡的效果。
       
        下文采用AVR Atmega16芯片作为主控制芯片,设计制作了两轮的自平衡电动车。文中分析了测量角度和角速度传感器的选择,通过Atmega16单片机多路信号AD采集陀螺仪和加速度计的信号,经过Kalman滤波算法计算动态的角度和角速度,通过LCD1602显示角速度和角度的值、转向值。利用PID控制算法控制自平衡车的平衡状态,使车体在平衡位置稳定。利用大功率MOS管设计驱动电路,通过单片机有效地控制电机的转速、电机的转向,从而有效地控制自平衡车的前进、后退及转弯功能。我们来看看具体的设计细节吧。
       
        1研究意义
       
        随着科学技术水平的不断进步,交通工具正朝着小型、节能、环保的方向发展,“电动车”正是在这个背景下孕育而生并为人们所熟识。据不完全统计,我国的电动车保有量已超过1.2亿辆,是增长速度最快的交通工具。随着石油储量的不断减少和人们环保意识的增强,“电动车”无疑将成为未来交通工具的主力军。就目前而言,电动车的种类主要有电动自行车、电动摩托车和电动汽车。由于电动机制造水平的提高,尤其是大功率直流无刷电动机制造工艺的成熟,带动了电动自行车和电动摩托车行业的飞速发展。同时,人们也根据两轮自平衡机器人工作原理,设计出了一些新式电动车——两轮自平衡电动车。它是一种新型的交通工具,它一改电动自行车和摩托车车轮前后排列方式,而是采用两轮并排固定的方式,这种结构将给人们带来一种全新的驾驭感受。两轮自平衡电动车仅靠两个轮子支撑车体,采用蓄电池提供动力,由电动机驱动,采用微处理器、姿态感知系统、控制算法及车体机械装置共同协调控制车体的平衡,仅靠人体重心的改变便可以实现车辆的启动、加速、减速、停止等功能。两轮自平衡车主要是绿色环保。电动车使用电池作为动力能源,并可以反复充电使用,大大减少了对环境的污染。转弯半径为零,在小空间范围内可以灵活运动。无刹车系统,由CPU自动给出正反转力矩,从而达到快速稳定的刹车效果。
       
        控制极其方便,前进后退自如。两轮自平衡电动车是一个高度不稳定的系统,其动力学方程是一多变量、严重不稳定、耦合、时变、参数不确定性的非线性高阶方程,加上运动学方程中的非完整性约束,要求完成的控制任务也具有多重性,因此,两轮自平衡电动车作为一个具体的复杂系统,给控制理论提出了很大的挑战,是检验各种控制方法处理能力的典型装置。两轮自平衡电动车作为一种研究装置,可进行不确定性系统控制、非线性系统控制、自适应控制、智能控制等研究。
       
        2系统总体设计方案
       
        两轮自平衡自动车采用AVR Atmega16芯片作为主控制芯片,选择外部16 MHz晶振,使用JTAG仿真器进行实时仿真与调试;采用LCD1602显示转弯角度传感器测量的动态角度和角速度,为了让调试的过程中更加直观。动态角度和角速度的测量通过陀螺仪测量角速度,三轴加速度计测量角度。由于平衡车是运动的,所以三轴加速度计测量的角度里面参杂动态角度,最终通过卡尔曼硬件融合电路精确地测量出动态的角度和角速度。转向模块采用高精度电位器,当手把向右偏转时,两轮车向右转,当手把向左偏转时两轮自平衡车向左转弯,可以实现原地转弯。电机采用直流减速电机,主要是因为直流减速电机能耗低、性能优越、减速机效率高达95%以上,而且振动小、噪音低、节能高、选用优质段钢材料,钢性铸铁箱体,齿轮表面经过高频热处理。节省空间,可靠耐用,承受过载能力高,经过精密加工,确保定位精度,扭矩大。电机驱动模块采用大功率MOS管,由于电机的功率大,需要的电流大。电机的转动通过PID控制算法,实现两轮车的自平衡状态。系统简易硬件结构框图如图1所示。
       
       
        图1系统简易硬件结构框图
       
        2.1车模直立控制方案

         
       
        两轮白平衡车的直立是通过负反馈来实现的,但是两轮自平衡车的直立相对木棒的直立是相对简单的,木棒的直立是二维的而自平衡车有两个轮子着地且直立是一维的。所以通过控制轮子的转动,抵消倾斜的趋势便可以很好地保持车体直立。两轮自平衡车模型如图2所示。
       
       
        图2两轮自平衡车模型图

         
        两轮自平衡车之所以在不加外力的情况下不能够直立,是因为车体的偏转方向和受力方向是在同一方向,所以车体会加速倒下,如果要车体直立不倒下那就需要添加外力作用才能够保持平衡状态,这个外力就是车轮对地的摩擦力。由于电机在转动时给地面一个摩擦力,根据牛顿第三定律,地面给车体一个与相对运动方向相反的作用力,这样才会不至于让车体加速倒下。
       
       
        图3受力分析图

         
        两轮自平衡车的受力分析:
       
        两轮自平衡车的受力分析
        2.2车模行走控制方案
          两轮自平衡车的速度是通过车轮的速度实现的。车轮的速度通过直流电机经过减速箱,增大扭矩。利用直流电机驱动器控制电机的正反转和PWM调速系统控制两轮自平衡车的平稳运行。然后通过电机的加速度控制车体的平衡,通过电机的恒定速度和静止状态控制车体的匀速运动和静止状态。
       
        在运行的过程中当人体的倾角增大时车轮的加速随之增大以控制车体的平衡,当车体恢复平衡时,以恒定的速度匀速前进。
       
        当转把转动时可实现自动复位功能,在转把的轴径方向安装一个大强度的弹簧,使转把在转动的过程中自动恢复原位,实现了灵活转弯的效果,如果转把的偏向角足够大可以实现原地转弯,使两轮车的运行更加灵活,方便在狭小的地方使用。转把示意图如图4所示。
       
       
        图4转把示意图

         
        转把的方向和偏向角是通过高精度电位器检测的,在转把的固定轴上安装个角度传感器,实现角度的测量。
       
        3程序流程图
       
        为了便于程序的开发和以后的使用与维护,全部程序采用模块化结构,即由一个主程序和若干个子程序模块构成。主程序首先完成初始化工作,包括定时器初始化、LCD16 02液晶模块初始化、定时器中断初始化、系统时钟初始化、其他参数的初始化等。然后启动定时器进行定时,开中断允许单片机响应内部中断请求。定时器中断流程图如图6所示。各程序功能模块包括LCD1602液晶显示、电机驱动、动态角度测量、转向、欠压报警等。主程序流程图如图5所示。
       
       
        图5主程序流程图
       
        图6定时器中断流程图

         
        整个系统软件采用模块化结构。软件系统包括:主程序负责显示。车体直立模块用定时器1中断完成,每进入一次中断完成一次PID算法控制车体平衡,在车体保持平衡状态的情况下通过采集转把数据实现转弯功能。
       
        4总结
       
        本系统采用ATMEGA16控制芯片简化了系统的硬件结构,提高了系统的可靠性和实时性。利用MMA7260和ENC-03MB可以精确地测量出车体的动态角度和角速度,采用大功率MOS管和板桥驱动芯片可以很好地去除MOS管的发热问题,减少能量的损耗。本电动车采用锂电池供电既节能又环保,本设计的两轮自平衡电动车可以在狭小的环境中行走自如,使出行带来方便。本系统对实际工程应用有一定的指导意义。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-12-23 15:47 , 耗时 0.089152 秒, 20 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表