前言:在IT行业摸爬滚打了好几年,好不容易从学生熬成了社会人士,通过自己的不断努力又从社会人士熬成了学生。这几年的修行,同道博友给了我很多的帮助,很早之前就有写博客的想法,想借自己绵薄之力来回馈一下默默奋斗的你,但是一直拖着,最近闲暇无事,才真正提笔,愿能够对你有用。
上周末去苏州玩儿,同行小伙伴的侄女骑着一辆小米平衡车,运用自如好拉风的感觉。此时我的职业病又犯了,思考了一下原理,觉得不是很难,就是一个陀螺仪姿态加几个PID的事情(专业毒已病入膏肓)。平衡车的制作冲动从这一刻迸发,回家之后事不宜迟直接着手去做,这都要归功于闲暇的暑期。
通过网上查资料发现,两轮平衡车的资料并不多,大多都是飞思卡尔比赛的直立小车资料,但是两者有一定的联系,由于飞思卡尔资助的原因,限制了器件的选型等,而我们业余的选择是广泛的。我选择了当前主流的STM32F103为主控,成熟的MPU6050陀螺仪加速度计,车架让一位同事帮忙组装,很快平衡车成型,心情有点激动,忍不住要上一张图。
细心的同事帮我加了配重,非常感谢我的热心朋友。(PS:珍惜身边的朋友,他们都是缔造你生命意义的人!)哈哈,这个小车看上去还是有模有样。加配重的原因是让车架的平很轴接近电机轴,也就是车架在水平时,车前后的质量分布基本一致。说的有点抽象,换句话说就是找车架的平衡位置或者平衡角度。
好了,废话说了一大堆,接下来进入正题。
首先从控制板说起,借用以前公司的一个控制板,主要用到的模块有降压模块,PWM与编码器接口,IIC接口,SPI接口TFT屏幕。由于主控板没有集成MPU6050,用了一个外部的小模块,使用IIC接口。电池使用14.8V锂电池,电机驱动是TI的LMD18200,与L298比较相似,但性能更彪悍一些。电机是带正交编码器的减速电机。基本硬件就是这些了,其实这种配置已经算得上豪华配置了,但是都是借用的没有花钱(硬件烧钱,