前几天在朋友圈看到面包板社区的小编发了个晒板子的活动,作为面包板社区的活跃用户,这个活动必须要参加一下!
说起分享自己画的板子,我首先想到的就是人生中设计的第一块PCB板子:基于STM32+MPU6050的两轮自平衡小车主控板,也是几年前读大学时的毕业设计。
思绪转到5年前,2017年的夏天,大三的暑假还没有结束,我就一人坐上了开往北京的列车,没想到,这一去,就是5年!
实习的工作不算复杂,样板焊接、样机调试,也会画一些简单的小板子。因为自己是双非普通本科出身,也深知自己的不足,平时白天干活,晚上回去就学习PCB,单片机开发。实习了有半年的时间,到了大四下学期,回校准备毕业设计,由于有了一些实习经历,毕业设计做起来就比较简单了。
![%E5%AE%9E%E7%89%A9%E5%9B%BE.jpg %E5%AE%9E%E7%89%A9%E5%9B%BE.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639ntcvt88pjpndvl8v.jpg)
主控板是自己设计的,小车底盘(轮胎+电机+编码器)和锂电池是购买的成品。
PCB板焊接、硬件调试、软件设计、调参,毕业论文,查重,答辩,一切都比较顺利!记得当时答辩现场,可能是因为我是独立设计、调试的,答辩老师们对我的设计很感兴趣,整个答辩过程都是在和老师们愉快的沟通中进行的!最终,我的毕业设计被所在的学院所收藏,毕业设计所花费的费用也找学校报销了,毕业设计也被评为了优秀!
![%E6%AF%95%E4%B8%9A%E8%AE%BE%E8%AE%A1%E5%8E%8B%E7%BC%A9%E5%8C%85.jpg %E6%AF%95%E4%B8%9A%E8%AE%BE%E8%AE%A1%E5%8E%8B%E7%BC%A9%E5%8C%85.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639s4oaxqz4tqazoltf.jpg)
哈哈,居然还能找到当时在某PCB板厂下的订单,含运费一共90元,现在都是免费了吧!
![2022-03-29_230748.jpg 2022-03-29_230748.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639c93t9u3t9xx2zdo3.jpg)
和主题无关的话说的有点多了,下面来详细介绍一下我当时画的这块处女板!
![%E4%B8%BB%E6%9D%BF1.jpg %E4%B8%BB%E6%9D%BF1.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639wz6hfwpu3cqnnn68.jpg)
硬件电路主要包括以下几部分:
- STM32F103RET6,最小系统电路
- TB6612两路直流电机驱动,电机编码器检测
- 通过分压电阻方式实现的锂电池电压ADC检测
- 通过MOS管实现的锂电池防过放,欠压保护电路
- 板载MPU6050陀螺仪,用于获取实时姿态信息
- 一路红外接收头,预留OLED显示接口,板载HC-05蓝牙模块
- 一路复位按键,一路用户按键、两路用户LED
- 预留SWD、串口、BOOT配置接口
硬件电路设计上的考虑不周到,电机AB相编码器连接到了STM32的普通IO管脚, 而不是定时器的编码器管脚,所以软件控制效果不是太理想,哈哈,也可能是自己没调好参数!
![%E7%9B%B4%E7%AB%8B%E6%95%88%E6%9E%9C.jpg %E7%9B%B4%E7%AB%8B%E6%95%88%E6%9E%9C.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639gipnxm3rckzg26ke.jpg)
![PCB3.jpg PCB3.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639ihza1gcgm1eprg19.jpg)
软件设计上,仅仅实现了直立环,即平衡车直立效果,没有实现速度环转向控制,也没有实现红外、蓝牙的遥控。
所以软件方面的工作也比较简单:
- STM32基本外设驱动,GPIO、UART、TIMER、ADC、DMA、中断等等。
- MPU6050姿态获取,使用官方DMP库
- PID控制算法实现,直立环,参数的整定
- 异常姿态检测算法,小车倒地后刹车,防止堵转造成电机和芯片烧坏。
![%E4%B8%BB%E6%9D%BF%E5%9B%BE.jpg %E4%B8%BB%E6%9D%BF%E5%9B%BE.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639n00y03pmhmydprmm.jpg)
现在,再回看自己当时设计的那块板子,发现还是有很多不足之处的:
- 控制软件方面不完美,仅仅实现了直立环,没有实现速度环、红外蓝牙遥控等。
- PCB布局布线不合理,导致过孔太多,走线比较混乱。
- 蓝牙模块射频天线部分没有预留净空区,可能会导致信号很弱。
- 没有在靠近电机驱动芯片的位置添加储能电容,导致烧了几次驱动芯片,后来加上才好点。
- 电机编码器管脚没有分配到定时器的编码器接口,只能通过GPIO中断方式测速,导致后续软件调起来比较费劲
如今,我已经毕业四年,工作时间算是五年。毕业设计的空板我还保留至今,剩下的都是回忆!
![fb5c929ccb3ade8928ec8071c68a312.jpg fb5c929ccb3ade8928ec8071c68a312.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639v0fhhopieywogezv.jpg)
![c3cf3d709038ef0414cf80932f2d1d3.jpg c3cf3d709038ef0414cf80932f2d1d3.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639q1aak3v7sp2ujdu1.jpg)
虽然时过多年,当时所学的专业也已经停止招生了,而我也不做单片机开发了,转向了另一种可编程器件FPGA的开发,但是当看到单片机相关的技术文章还是会仔细的研读一下。
平时工作之余,也参加了多次面包板社区举办的开发板评测活动:
富芮坤FR8016H开发板+ESP8266实现疫情监控
![%E5%AF%8C%E8%8A%AE%E5%9D%A4%E7%96%AB%E6%83%85%E7%9B%91%E6%8E%A72.jpg %E5%AF%8C%E8%8A%AE%E5%9D%A4%E7%96%AB%E6%83%85%E7%9B%91%E6%8E%A72.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639hwiwjwzj13dihz1z.jpg)
![%E5%AF%8C%E8%8A%AE%E5%9D%A4%E7%96%AB%E6%83%85%E7%9B%91%E6%8E%A7.jpg %E5%AF%8C%E8%8A%AE%E5%9D%A4%E7%96%AB%E6%83%85%E7%9B%91%E6%8E%A7.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639qscc0bvrmvq4cv0p.jpg)
uFUN开发板+自己画的PCIe扩展板实现的联网时钟
![PCB.jpg PCB.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639hs7x4c8c7ku1izx8.jpg)
血的教训,Mini PCIe板子的厚度1.0mm即可,锡手指切掉了一部分才刚好能插进去。
![%E9%A3%9E%E7%BA%BF.jpg %E9%A3%9E%E7%BA%BF.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639at51q9y5z9q5z7jz.jpg)
看起来还挺精致的
![%E6%97%B6%E9%92%9F%E6%98%BE%E7%A4%BA.jpg %E6%97%B6%E9%92%9F%E6%98%BE%E7%A4%BA.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639h6gi37gjjo2ijpiy.jpg)
![%E6%AD%A3%E9%9D%A24.jpg %E6%AD%A3%E9%9D%A24.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639nlm4raey1a1sroz5.jpg)
根据网上开源的资料做得JLink-OB下载器
![fiqnqvahff.jpg fiqnqvahff.jpg](https://static.assets-stash.eet-china.com/forum/202203/29/235639kob0h0y7e7tebb7w.jpg)