【单片机项目】平衡小车(一) 控制流程

    在上周终于将做了三个礼拜的平衡车项目结尾,实现了平衡、遥控以及抬起电机停转放下电机恢复的功能,超声波未能搞出来,原因是模块出了故障,等新的模块到要很久而且超声波的难度并不大,所以就阉割了这个功能,让组内的小伙伴们去搞这个吧。

    本项目的总结将分为三部分:流程控制硬件设计控制算法

    平衡小车是通过读取、计算传感器的数据来控制电机的转动,从而达到小车的动态平衡。平衡小车的控制中用到了三级的PID算法,还是很有难度的,而对于小车的硬件结构来说,重心越低,越容易平衡,而重心越高平衡的难度就越大。

    首先是平衡小车的控制流程图,我把路程图分为主函数中断控制函数直立环速度环转向环五个部分。

   1、在主函数中完成系统各部分的初始化,并且在循环中每50ms在OLED显示运行数据。

             

  2、由MPU6050的中断引脚触发的外部中断的中断函数是整个系统的控制函数,MPU6050每5ms触发一次中断,而我调节的周期为10ms

             

 3、直立环是平衡小车最重要的部分,对于小车来说立起来是最终要的,在我的PID分类下有一篇专门记录如何将小车立起来的博客,我在这个过程也是花费了大量的时间,经过长时间的调节参数终于使小车可以稳定直立。

          

 4、速度环的作用是使小车在平衡时趋向于原地静止,当然要想使小车完全不动的直立在原地是不可能的,通过速度环只能使小车尽可能的减少移动。

       

  5、转向环可能是平衡小车中最不重要的一部分,但是想要使小车走直线或者可以通过遥控控制转向,转向环也是必不可少的,转向环通过编码器和加速度计的融合算法来使小车实现转向功能。

        

 

  • 41
    点赞
  • 316
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值