当前位置:首页 > 嵌入式 > 嵌入式微处理器
[导读]0、前 言 原谅我起这么猛的标题,但看完,你不会来打我的。 如果此项目有朋友已经做过,可以越过不看。 回归正题, 平衡小车 ,这个开源项目已经出来很多年了,虽然是一个比较基础的项目,但也牵扯到方方面面的知识,单片机程序开发、硬件电路设计、焊接手法





0、前 言

原谅我起这么猛的标题,但看完,你不会来打我的。
如果此项目有朋友已经做过,可以越过不看。
回归正题, 平衡小车 ,这个开源项目已经出来很多年了,虽然是一个比较基础的项目,但也牵扯到方方面面的知识,单片机程序开发、硬件电路设计、焊接手法等。
在许多朋友咨询我,电子设计入门,该选什么项目时,我都会首推这个。
那么,如果一个新手,或者对电子设计兴趣但有不知道从何下手时,看我这篇文章就对了。
我将平衡小车分为 三种技术路线 ,不同的技术路线都可以实现完成平衡小车,不同的路线,针对不同的基础的人群,难度都不同。

1、模块拼接+手工焊接布线



第一条路线,也是我首推的:模块化+手工焊接布线。
当一个人对平衡小车这个项目完全不熟悉时,如何开展?
首先,没有硬件平台的支撑,软件无法存活。
同样,要想完成平衡小车,首先我们应该要搭建好硬件平台。
那么,我们应该要知道需要那些元器件?那些模块?
当然,首要的,既然是做小车,应该要有轮子、电机、车架。

1.1  车架    
直接网上买一套平衡小车底盘,100元以内足以,太贵的没必要买。一般来说,车底盘都含有电机、轮子、车板。
PS: 偷偷告诉你们,图中有我的淘宝店【大鱼电子】
这个红黑骚气的就是我店里的,哈哈哈,欢迎各位来购买,报我名字有特大优惠!

1.2  电路如何设计?
有了车架,还差电路部分,如何设计?
为了让大家快速熟悉平衡小车的系统电路,加快开发速度。
第一条路线, 我们采用 模块化的设计方式。
也就是,电路部分都采用模块,将各个模块电路连接起来即可完成电路设计。
那么需要哪些模块电路呢?
  • 单片机最小系统:这个是用来写入程序的。
  • 电机驱动: 用来驱动电机;单片机IO电流不够,不足以驱动电机。
  • 姿态传感器: MPU6050(用来获取小车姿态数据,来保持平衡)。
  • 电源模块: 用来做电源升降压,给各个单元电路(单片机、电机驱动MPU6050)供电。
  • 电池: 给整个系统供电。
  • 无线模块: 用来做遥控,控制小车移动行走。


做个简要说明:
单片机最小系统(10~20元): 根据自己的单片机型号来选择,喜欢用32的可以买32,喜欢用51的可以用51,等等。

电机驱动(10~15元): 根据购买的电机电压来购买,比如,你的电压是12V,应该选用工作在12V下的电机驱动。
一般来说,由于平衡小车的电机功率都不大,常用的电机驱动有三种,TB6612,L298N,A4950。这三种都是常用的驱动IC,可以驱动7V~12V之间的电机。
A4950还会更高一些,从数据手册看,可以驱动二十几V的电机。但我没用过,有兴趣的可以自行测试。

姿态传感器(10元): 这个基本不用考虑其他的,常用的就是MPU6050,当然,还有其他的一些数字的、模拟的姿态传感器,像icm20602+ak8975+spl06-001 等。
但我建议大家选用MPU6050,因为用的人多,相应的资料也会多一些。
毕竟,前人走过的路,我们再去走,会好走的多。
电池和电源模块: 为了方便,多少V的电机就选多少V的电池,一般而言,现在都是12V的直流减速电机。直接选用12V的航模电池套装即可。切记,选配充电器。航模电池大都比较昂贵,电池和充电器一套得要好几十块钱。
嫌贵的,可以选配18650电池,一节3.7V,几节串联即可。
唯一的缺点,18650的放电电流较小,不过单单用来做平衡小车的供电,足以。
电池准备好之后,要根据单片机和传感器的工作电压对电池进行降压。
较为常见的降压模块LM2596,也别其他,这个太便宜了,就用这个。简直不要太香!
如果需要同时降压到5V和3.3V,用2个LM2596即可。
切记,单个LM2596最大电流2A,请注意功率。
无线模块:无线模块建议选用蓝牙,HC05/06主从一体。串口通信,便宜,主要是,可以直接连接手机蓝牙,用手机APP直接对小车进行控制。这还不“骚”?

1.3 手工焊接 
将各个系统模块化之后,根据电路原理图,要进行的就是, 手工焊接。
针对完全不熟悉的朋友而言,我更推荐此种方式,此种方式能让我们更快速且有效的去搭建起电路,并去验证我们的电路。
毕竟PCB的绘制以及腐蚀都是需要时间的,更加不说那些对PCB设计不熟悉的朋友了。
手工焊接,需要一块和车架板差不多大小的洞洞板,方便我们的板子后面安装在车上。
手工焊接和PCB设计一样,需要考虑各个模块以及元件的布局。也就是各个模块的摆放位置。
模块位置的摆放正确与否,能让我们少走锡,少布跳线。
能让我们省去许多精力,到底能多省。
用烙铁去体会!

2、模块+PCB绘制


第二条路线,模块化+PCB绘制。
同样的,第二条路线也采用模块化设计,但与第一条不同的是,在于不再使用洞洞板焊接,但此种方法路线,针对于基础较好,对PCB绘制以及一些单片机基本电路较为熟悉的朋友。
当然,用第一种方法完成平衡小车的设计之后,可以采用第二种方法进行进阶学习,可以通过此方法来学习或加强PCB设计。
毕竟,别人的电路板,哪有自己设计的香。
本质上, 此种方法路线与第一种没有什么不同。省去了人工焊接布线,使用机器布线,再通过自我腐蚀或发厂打样制作。来完成整个电路板的设计。
比如视频中这种:

视频中,绿色是STM32F103C8T6,黑色是MPU6050。控制主板都是模块化设计,基本上可以直接拔插,如果烧毁某器件,可以直接进行更换。
此种电路设计方法,非常适合大家在完成某系统设计的前期试验,能节省不少时间。并且调试及其方便。
值得一提的是,车上除了红色的TB6612FNG模块从网上购买,其他电路部分都是自己设计。

3、集成化主板



第三条路线:集成化主板。
同样的,第三条路线都可以作为第一条、第二条的进阶学习之路。
想要完成集成化主板的设计,需要对单片机系统以及外围电路非常熟悉,能进行自我电路设计,包括一些基本的电源电路等。
当然,网上也有许多电路可以进行参考,毕竟做的人特别多。
我也为大家准备了一套完整的电路和程序。
下图就是我自己设计的主板和小车。

关注公众号【 大鱼机器人 】,后台回复关键词【 大车
即可获取该平衡小车资料网盘下载链接,开源所有设计资料。
如果网盘链接失效了,可以加我微信: well_xiaolong ,我单独再发。

4、程序设计思路



讲完了三种硬件搭建路线之后,需要谈论的应该是程序部分了。
写程序就像是学英语一般,先记单词、学基本语法,再学着去造句。
同样的,做一段代码量较大的程序也是如此。
我们应该从各个“单词”入手,也就是各个“模块”。
先把各个模块驱动起来,再拼接。
最后成为一段优美的程序(BUG)。
那么平衡小车程序如何拼接?
我为大家已经准备好了各个“单词”,只要大家学会拼即可。
关注公众号【大鱼机器人】,后台回复关键词【大车】即可获取该程序。

如何做?
在资料包中,我准备好了MPU6050测试、电机驱动测试、蓝牙测试程序。
我们可以通过程序对单个模块电路进行测试,一步一步的移植拼接。
比如:
第一步,先测试MPU6050程序,通过测试程序正确读取出6050数据。
第二步,单独再调试单片机和电机,单片机程序是否能正确控制电机驱动,使得电机正反转、加减速。
第三步,以MPU6050程序为基础,将电机转动程序加入其中,并添加PID控制函数,以6050数据为闭环入口参数,调节PID参数,计算出控制PWM,来控制电机转动,保持小车车身平衡。
第四部,小车控制平衡后,对蓝牙测试程序进行单独测试,并将蓝牙控制信号输入到PID控制函数中,作为速度环和转向环的一个控制变量,来达到控制小车前后左右移动的效果。
以上,是小车程序的整体设计思路。

5、最后


最后,想要表明一点,关于平衡小车设计,说来简单且粗暴,但实施起来,需要花费的时间和精力不言而喻。
因为其涵盖软硬件设计,对于新手而言,工作量确实较高,但等完成之后,回过头再看,脑子里觉得没什么工作量。
但手上却多了各种技术活。
这也许就是电子设计的魅力之所在:
享受设计制作过程之折磨,收获成果后之享受。


本文授权转载自公众号“大鱼机器人”,作者:张巧龙

免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

嵌入式ARM

扫描二维码,关注更多精彩内容

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭