牛人用单片机系统开发两轮平衡车

面包板社区 2020-03-28

在国外,两轮载人平衡车早已被用于一些公共场合了,如今很多机场、火车站、汽车站等公共场所都运用了两轮载人平衡车。研究两轮平衡车小车有利于研究两轮载人平衡车。


本作品主要由一块IAP15F2K61S2单片机开发板做主控板,一个电源和传感器模块来采集角度数据并为系统供电,一个测速模块来测得电机的速度信息,最后把角度信息转化成PWM输出给一个电机驱动模块来控制两个空心杯电机。



本设计是基于IAP15F2K61S2单片机系统开发的两轮平衡车,采用IAP15F2K61S2单片机开发板做主控板,用MPU6050 陀螺仪和加速度传感器采集加速度和角速度,通过计算得出角度以确定小车姿态,再通过光电门传感器测出小车电机转速,以计算出车速,运用PID算法再根据传感器测得数据处理后对电机驱动进行PWM输出,调节合适的PID参数使小车能稳定直立起来。



本作品使用简单,打开总开关小车即可直立。两轮载人平衡车在一些公共场合有一定的优势,研究两轮平衡小车对开发两轮载人平衡车有一定的帮助,本作品具有结构简单清晰,使用方便等特点。


设计特色:

小车底盘是我们用游标卡尺量出电机支架的孔径和位置,用Altium Designer 软件画出底盘模型,再用雕刻机和亚克力板雕刻出底盘。车上面传感器模块和电池盒的安装具有对称性,使小车重心在电机上方,传感器安装比电机稍微高点,大概在重心处,这样有助于小车的平衡和稳定性。在算法上我们采用精简PID算法和卡尔曼滤波算法来控制电机,使系统更稳定可靠。


平台选型说明:

本系统采用IAP15F2K61S2单片机开发板做主控板,IAP15F2K60S2是1T的8051单片机。是真正意义上的单片微机,宽工作电压,不 需要外部复位电路和外部晶振,内部晶振5—33.1776M可选。片上外设丰富,具有3通道捕获\比较单元(CCP/PCA/PWM),8通道10位高速 AD,3个定时器/计数器,双串口,高速串行通信ISP接口,大容量片内EEPROM。电机驱动采用LM298N,测速采用透射式光电门,信号经反向器输 出稳定脉冲,电机采用空心杯,频率可达十几千赫兹。



本作品用到IAP15F2K61S2单片机的内部资源有定时器1、定时器2、串口1、ADC、外部中断0、外部中断1、PWM等这些资源。定时器1以10ms的周期处理数据,定时器2作为串口1的波特率发生器,串口1用于调试时与上位机软件通讯,ADC是采集电位器可调端的电压用于调试 PID参数,外部中断0、1用于计数测速模块的脉冲,PWM作为使能电机驱动输入信号。



MPU6050采用IIC通讯传输数据,电源模块采用LM7805($0.2053)做稳压芯片给单片机和传感器供电。



每个电机尾部都有两个光电门用以测速,光电门输出信号经反向器输出后更稳定可靠。电机接线用转接板转接有利于保护电机接线。


keep out层画边框、顶层画辅助线,用雕刻机先打孔再割边。


设计说明:

本设计在IAP15F2K61S2单片机开发板的基础上,利用陀螺仪和加速度传感器以周期为10ms测出角度信息,经卡尔曼滤波算法滤波处理后再经PD算法处理输出,测速模块以周期为100ms测出速度信息,在经互补滤波算法滤波后再经PI算法处理输出,将角度环的输出量与速度环的输出量融合作为PWM的设定值对电机驱动输入从而控制电机。


推荐阅读:

  • 终于有人把EMC知识总结得如此清晰 !

  • 磁珠虽小,神通广大——最全的磁珠知识总结

  • 电阻、电容、电感…这回终于讲齐了

  • 卷积的本质及物理意义,幽默、风趣的讲解,看完必有收获!

  • 高手经验:学电路原理,你得这么做

  • 如何避免MOS管过热烧毁?详细分析来了(附具体措施)

  • 设计三极管放大电路时应该注意哪些技巧?(通俗易懂)

  • 牢记这四句口诀 分分钟玩转三极管

  • 这么好的二极管知识,电子人都得懂

  • 无刷电机与有刷电机的区别,这样看一目了然!

  • 最有趣生动的方法讲解三极管(当年我的老师为啥不这样教?)


▼ 点击阅读原文,10万下载资料

面包板社区 面包板社区——中国第一电子人社交平台 面包板社区是Aspencore旗下媒体,整合了电子工程专辑、电子技术设计、国际电子商情丰富资源。社区包括论坛、博客、问答,拥有超过250万注册用户,加入面包板社区,从菜鸟变大神,打造您的电子人脉社交圈!
评论
热门推荐
相关推荐
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦