首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
其他好文
> 详细
看完这篇文章,还不会做平衡小车,你来打我
时间:
2020-04-23 15:01:05
阅读:
107
评论:
0
收藏:
0
[点我收藏+]
标签:
inf
image
没有
驱动
加强
平衡
工作
难度
添加
看完这篇文章,还不会做平衡小车,你来打我
原谅我起这么猛的标题,但看完,你不会来打我的。
如果此项目有朋友已经做过,可以越过不看。
回归正题,平衡小车,这个开源项目已经出来很多年了,虽然是一个比较基础的项目,但也牵扯到方方面面的知识,单片机程序开发、硬件电路设计、焊接手法等。
在许多朋友咨询信盈达小编,电子设计入门,该选什么项目时,小编都会首推这个。
那么,如果一个新手,或者对电子设计兴趣但有不知道从何下手时,看这篇文章就对了。
我将平衡小车分为三种技术路线,不同的技术路线都可以实现完成平衡小车,不同的路线,针对不同的基础的人群,难度都不同。
1、模块拼接+手工焊接布线
1.1 车架
1.2 电路如何设计?
有了车架,还差电路部分,如何设计?
为了让大家快速熟悉平衡小车的系统电路,加快开发速度。
第一条路线,我们采用模块化的设计方式。
也就是,电路部分都采用模块,将各个模块电路连接起来即可完成电路设计。
那么需要哪些模块电路呢?
单片机最小系统:这个是用来写入程序的。
电机驱动:用来驱动电机;单片机IO电流不够,不足以驱动电机。
姿态传感器:MPU6050(用来获取小车姿态数据,来保持平衡)。
电源模块:用来做电源升降压,给各个单元电路(单片机、电机驱动MPU6050)供电。
电池:给整个系统供电。
无线模块:用来做遥控,控制小车移动行走。
1.3 手工焊接
将各个系统模块化之后,根据电路原理图,要进行的就是,手工焊接。
针对完全不熟悉的朋友而言,更推荐此种方式,此种方式能让我们更快速且有效的去搭建起电路,并去验证我们的电路。
毕竟PCB的绘制以及腐蚀都是需要时间的,更加不说那些对PCB设计不熟悉的朋友了。
手工焊接,需要一块和车架板差不多大小的洞洞板,方便我们的板子后面安装在车上。
手工焊接和PCB设计一样,需要考虑各个模块以及元件的布局。也就是各个模块的摆放位置。
模块位置的摆放正确与否,能让我们少走锡,少布跳线。
能让我们省去许多精力,到底能多省。
用烙铁去体会!
2、模块+PCB绘制
第二条路线,模块化+PCB绘制。
同样的,第二条路线也采用模块化设计,但与第一条不同的是,在于不再使用洞洞板焊接,但此种方法路线,针对于基础较好,对PCB绘制以及一些单片机基本电路较为熟悉的朋友。
当然,用第一种方法完成平衡小车的设计之后,可以采用第二种方法进行进阶学习,可以通过此方法来学习或加强PCB设计。
毕竟,别人的电路板,哪有自己设计的香。
本质上,此种方法路线与第一种没有什么不同。省去了人工焊接布线,使用机器布线,再通过自我腐蚀或发厂打样制作。来完成整个电路板的设计。
3、集成化主板
第三条路线:集成化主板。
同样的,第三条路线都可以作为第一条、第二条的进阶学习之路。
想要完成集成化主板的设计,需要对单片机系统以及外围电路非常熟悉,能进行自我电路设计,包括一些基本的电源电路等。
当然,网上也有许多电路可以进行参考,毕竟做的人特别多。
我也为大家准备了一套完整的电路和程序。
下图就是我们信盈达工程师设计的主板和小车。
即可获取该平衡小车资料网盘下载链接,开源所有设计资料。
4、程序设计思路
讲完了三种硬件搭建路线之后,需要谈论的应该是程序部分了。
我为大家已经准备好了各个“单词”,只要大家学会拼即可。
如何做?
在资料包中,我准备好了MPU6050测试、电机驱动测试、蓝牙测试程序。
我们可以通过程序对单个模块电路进行测试,一步一步的移植拼接。
比如:
第一步,先测试MPU6050程序,通过测试程序正确读取出6050数据。
第二步,单独再调试单片机和电机,单片机程序是否能正确控制电机驱动,使得电机正反转、加减速。
第三步,以MPU6050程序为基础,将电机转动程序加入其中,并添加PID控制函数,以6050数据为闭环入口参数,调节PID参数,计算出控制PWM,来控制电机转动,保持小车车身平衡。
第四部,小车控制平衡后,对蓝牙测试程序进行单独测试,并将蓝牙控制信号输入到PID控制函数中,作为速度环和转向环的一个控制变量,来达到控制小车前后左右移动的效果。
以上,是小车程序的整体设计思路。
5、最后
最后,想要表明一点,关于平衡小车设计,说来简单且粗暴,但实施起来,需要花费的时间和精力不言而喻。
因为其涵盖软硬件设计,对于新手而言,工作量确实较高,但等完成之后,回过头再看,脑子里觉得没什么工作量。
但手上却多了各种技术活。
添加微信17727800897获取学习资料
看完这篇文章,还不会做平衡小车,你来打我
标签:
inf
image
没有
驱动
加强
平衡
工作
难度
添加
原文地址:https://blog.51cto.com/13258379/2489682
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
分布式事务
2021-07-29
OpenStack云平台命令行登录账户
2021-07-29
getLastRowNum()与getLastCellNum()/getPhysicalNumberOfRows()与getPhysicalNumberOfCells()
2021-07-29
【K8s概念】CSI 卷克隆
2021-07-29
vue3.0使用ant-design-vue进行按需加载原来这么简单
2021-07-29
stack栈
2021-07-29
抽奖动画 - 大转盘抽奖
2021-07-29
PPT写作技巧
2021-07-29
003-核心技术-IO模型-NIO-基于NIO群聊示例
2021-07-29
Bootstrap组件2
2021-07-29
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!