发作品
标准版

【单片机】基于51单片机的智能小车设计

7.6w
0
0
116
简介:基于51单片机的智能小车设计
开源协议:GPL 3.0
创建时间:2021-07-30 14:36:58更新时间:2022-07-30 21:22:37

描述

一、项目介绍

        智能小车是一个非常经典的课程案例,市场上有各种各样的车体模型及套件进行销售,我们能不能自己去设计一辆智能小车呢,基于这个想法,我们设计了这一款STC89C52为主控的智能小车,至于为什么使用STC作为主控,主要还是这款芯片大家认可度较高,非常经典!

应用场景:

  • 单片机课程教学,以智能小车替换开发板贯穿单片机课程教学
  • 单片机课程设计,让学生根据要求实现相关功能
  • 电子认知与焊接练习,完成智能小车的焊接,激发电子学习兴趣

功能介绍:

  • 左右两个车灯,模拟行车过车中的车灯状态
  • 独立按键,练习按键输入与中断功能
  • 无源蜂鸣器,学习音频频率的产生,模拟洒水车音乐
  • 四个电机驱动,实现PWM输出与调速功能
  • 循迹与避障功能,学习比较器电路,实现避障循迹功能
  • 无线遥控,学习无线传输理论,实现遥控功能

二、总体设计方案

        本设计使用了两节锂电池共7.4V作为系统供电,经降压到5V后给单片机系统进行供电,单片机与按键电路、红外接收电路(无线遥控功能)、避障电路、循迹电路、LED车灯、无源蜂鸣器以及电机驱动电路进行连接,电路组成系统框图如下:

wps

图2-1 智能小车系统框图

三、硬件介绍

        这样一辆功能丰富的智能小车是如何设计出来的呢,我们接下来将逐一介绍每个电路模块的功能组成。

3.1 电源输入

        电源是什么?电源是给整个系统提供能量的重要组成部分。“是马也,虽有千里之能,食不饱,力不足,才美不外见,且欲与常马等不可得,安求其能千里也?”车是好车,没有好的电源,那就发挥不出车的性能。在电源的选用上,该项目选用了7.4V可充电锂电池,经过一个7805降压芯片后给单片机和外围器件提供供电,而电机驱动的芯片由电池7.4V直接提供。二极管D1起着防反接的左右,LED2作为电源指示灯,当开关SW1打开时,系统开启供电。

9d4q2tf9cuRlIOTkVNZsDQGfoT9LyiBhsMVGPuGE.png

图3-1 电源输入部分

3.2 单片机最小系统

        51单片机最小系统由主控芯片、晶振电路、复位电路、下载接口以及P0上拉电阻组成。在使用一款芯片设计电路的时候,不能一味地去网络上搜索参考电路,更多地应该去查阅厂家所提供的数据手册,厂家所提供的资料是最有保障的。下图为STC89C52系列单片机器件手册中1.6节最小系统应用图:

4KvWGP9GEm8oCirtyPw7zBtNuUINyD7RwB58oyTx.png

图3-2 STC官网提供资料(点击查看数据手册

        在最小系统图中也说明了复位电路与晶振电路,下方还有具体的选型参数说明。复位功能在第九引脚,设计上官方给出了用一个10K电阻和10uF的电容组成的上电复位的电路,结合实际使用情况可以在加一个按键,需要复位的时候按一下按键即可。

        晶振功能在18和19引脚,在底下给出的参数选择中提到了晶振大小以及谐振电容C2和C3大小以及R2电阻的取值,在学习过程中,结合51单片机定时器的特性,一般选用11.0592MHz的晶振,因为这个时钟频率在进行分频时可以准确地划分时钟频率,在做波特率通信时所计算出来的值为一个整数,保持通信的准确性。

        除了上图中的最小系统应用电路需要注意之外,还需要查看器件的引脚说明,能帮助我们更好地理解芯片每个引脚的功能,值得注意的是STC89C52的P0口(32至39引脚)比较特殊,在数据手册1.8节有专门提到:P0口内部无上拉电阻,做I/O口使用使需要外接一个10K~4.7K的上拉电阻进行使用。

OA5rIEmmLRjgMs9K4cSn1YRR7CCS9f7CM81IMily.png

图3-3 单片机管脚说明表(部分)

        结合以上理论与计算基础,加上一个程序下载接口就可以使这个单片机能够正常工作了。该智能小车的主控最小系统电路设计如下,其中紫色的为网络标签,使用相同的网络标签可以减少连线,使电路看起来更加简洁,RST用的是一个网络端口,用法与网络标签一致。J10将多余引脚引出,可以外接其它电路进行学习。

JRhoZV9MYGaYW2h3JHzyXxemwpshHQ5i6VfHl0pP.png

图3-4 单片机最小系统图

3.3 电机驱动电路

        要想小车跑得稳,电机驱动不可少。单片机直接输出的电流太小,不足以带动小车行走。电机电路采用了RZ7899电机专用驱动芯片,该芯片外围电路简单,适用于自动阀门电机驱动、电磁门锁驱动等应用电路。它由逻辑输入端口BI和FI控制电机前进、后退以及制动,配合单片机PWM输出可以控制电机转速。该应用电路具有良好的抗干扰能力,微小的待机电流,低的输出内阻等优秀功能。在焊接时注意在电机上并联一个104的瓷片电容起着防干扰的作用。

ZAGZfAhZI0eP2dW2wJRv22feMyJ9E5JCYWZQZi9z.png

图3-5 RZ7899电机驱动电路

3.4 循迹和避障电路

        循迹和避障电路都是采用393电压比较器与两种不同类型红外对管进行设计。循迹电路的对管选用了内部集成发射和接收管的ITR9909这个器件,小车循迹一般是在白色地板上沿着一根黑线行走,利用红外光在不同颜色的反射情况进行识别。红外光一直对外发射,车底如果是白色地板,光线会被折射回去,此时接收管接收到信号,经过比较器输出高电平反馈给单片机,如果车行驶在黑线周边,红外光被黑色吸收,接收管接收不到发射的信号,此时比较器电路输出为低电平。避障电路的原理与循迹类似,大家可以自行分析一下。

8uByIunTv76UdDtpYpur6lHxQUUvZ00IbiU2tonq.png

图3-6 循迹与避障电路

3.5 其它电路

        实现小车基本循迹和避障功能之外,为了进一步优化小车的功能,设计了一个按键作为外部控制,也可以用于功能切换和代码调试等功能;既然是要做车,那车灯就必不可少了,选用了两颗高亮LED分布在小车左前和右前方模拟行驶过程中的不同场景进行常亮、双闪以及近光灯和远光灯等功能;

ZoSZYchLNHJ4p6AvC9uVfl8zoSdHcBQeOo6Su2KA.png

图3-7 车灯与按键电路

        当行驶过程中遇到特殊情况时,我们一般会进行鸣笛示意,那我们就可以加一个蜂鸣器电路,既然加了蜂鸣器,那就用上一个无源蜂鸣器,这就可以一样边走边播放音乐啦。由于单片机驱动电流有限,可以加一个数字三极管进行驱动,提高输出能力,如果手头上没有合适的三极管,直接连接也是可以使用的。

4RP3QDI9lNnX32eZktCd4X7Ej1XmDbxiVcSNaaBJ.png

图3-7 蜂鸣器电路

        遥控功能是十分有用的,在小车行驶的过程中我们无法任意控制行走方向,这时候无线遥控的重要性就体现出来了。遥控的方式有很多,比如蓝牙、WIFI、4G等常用技术,这里我们选用了更为简单的方案,使用大家非常熟悉的红外遥控,这个你肯定用过,没想到?你再想想家里的电视和空调的遥控器是不是就是一个红外遥控器,哈哈,红外技术其实在我们身边应用十分广泛。那如何使用红外遥控器控制小车行走呢,电路连接十分简单,只需要把接收器和单片机连接一个引脚进行通信,再配套一个遥控器就可以进行控制了。

        智能小车电路图整理后如下所示:

dFJMQC8CqAjaQtUUU8zS4NzB5LWdagK2zb7ljJYM.png

图3-10 智能小车电路图

        扩展:有源蜂鸣器通电就响,输出固定频率的音调,而无源蜂鸣器需要PWM进行驱动,可以输出不同音调。

四、原理图及PCB设计注意事项

4.1 原理图设计注意事项

4.1.1 工程创建

        在进行原理图设计前,需要先创建工程文件夹,文件归属可以是个人,也可以选择保存到团队里面。如果高校有使用教育版,需要在对应的教育版工作区内创建工程并保存到对应的班级里。创建工程文件夹后会自动生成一个原理图图纸,需要手动保存到工程内,按照原理图内容进行修改文件名称。例如工程名为:【单片机】基于51单片机的智能小车设计,原理图命名为:基于51单片机的智能小车设计_SCH。

jF1lMtvt0OztmEbBk1D27sUikAeLL2AYSBMPkmql.png

图4-1 工程命名参考

4.1.2 元器件选型与放置

        前面已经对电路方案进行了介绍,接下来就可以在立创EDA上设计电路了。原理图设计也就是在图纸上放置元器件,连接电路实现电气功能。在放置元器件过程中,我们会遇到一个器件有各种不同封装的情况,比如一个LED灯,有的是两个引脚插到板子里焊接的,也有的是直接贴到板子上焊接的,而且大小间距各有不同,在设计的时候需要考虑我们需要一个什么大小的器件,它在实验室里有没有,是否可以买得到,选用的封装能不能进行焊接等选型问题。该项目大部分器件选用了直插器件,对新手焊接非常友好!

cI2zPfRaPUk2Q1NplHowz7dDVV3hoHLk9GREqCRp.png

图4-2 LED符号与封装

        在选择器件的时候初学者可以选择在立创EDA的基础库中选择需要的器件进行调用,基础库每个器件都可以下拉选择不同的封装,如果对器件封装还不熟悉,那可以在元件库中直接对所需器件进行搜索,比如在元件库中把搜索引擎改为立创商城,在里面输入 1K 电阻,进行搜索,在类目下选择插件电阻后点击应用筛选。在搜索出来的结果内找到自己所需的器件,点击放置到画布就可以放到原理图内进行设计了。

8qgGlHPulVpBA4JVgicW1PrZpLYnNHPdyovQjGGy.png

图4-3 元件库中搜索器件

        在立创商城里面的所有器件都有一个唯一的商品编号,可以将这个编号复制后在元件库中搜索得到,例如该项目中小车主控STC89C52RC这款芯片的商品编号是:C14022,在元件库中输入编号,点击搜索,类型选择符号,库别选择立创商城,在里面就可以看到搜索结果,点击放置即可使用这个库进行设计,也可以点击编辑,修改官方库后另存为自己的库。

mxU2t6WBXMDrpByIgmbI2I5pKEBALqpvWG93YMeJ.png

图4-4 指定商品编号搜索器件

        在元器件选型不熟悉的同学可以跟随该项目配套的学习视频进行学习选择器件。元器件种类繁多,需要在学习过程中不断地进行积累。设计完成后一定要检查电路,错误的原理图会生成错误的PCB,导致电路无法正常工作。检查无误后对原理图进行整理,使用绘图工具悬浮窗中的线条工具(快捷键L)按各模块进行布局摆放,可参考案例进行布局。

4.2 PCB设计注意事项

4.2.1 边框外形

        设计完原理图就到了PCB的设计,PCB外形的设计就是第一步需要确定的。既然是要做一辆智能小车,那我们要设计的边框就是小车的底盘。使用立创EDA里面的边框层进行设计,边框大小控制在10cm*10cm之内,主要还是为了免费打样,在设计这辆小车的时候也是可以满足的。使用绘图工具中的直线和圆弧工具进行设计,也可以充分利用网格大小和栅格尺寸辅助画线可以帮助我们更加精准地设计外框。关于车型和样式可以根据自己的喜好进行设计,不拘泥于参考图,比如卡丁车、四驱车、赛车等样式。每个人心中的车都是不一样的,我们所做的就是需要把心中所想表达出来。设计参考外形图如下所示:

hN5oyhSAzDqdLDMS6Q3tZhhmicvI2BGCEZQ8xcCf.png

图4-5 智能小车外形参考图

 

4.2.2 PCB布局

        将PCB边框外形确定之后就可以进行元器件的布局了,结合智能车的特点将车轮位置摆放在两侧,循迹、避障和车灯电路放在小车前方,四个驱动分别放在四个电机附件,主控最小系统放置中间,电源电路放在板子底部,开关朝外。原理图转PCB后的元器件布局是比较随意的,需要把它摆放到合适的位置需要慢慢调整,在进行元器件布局时善于使用立创EDA原理图中顶部菜单栏选择工具的布局传递功能(快捷键:CTRL+SHIFT+X)可以快速地对元器件进行分类布局展示。器件布局中需要考虑几个原则:

(1)按电路模块布局,每个电路的核心器件和外围器件放到一起;

(2)按电路功能布局,特殊器件布局时周边不能放置元件,避免干扰等;

(3)按器件特性布局,输入输出接口应放到板子边缘,方便操作。

4.2.3 PCB走线

        一个好的元器件布局已经完成了整个PCB设计的一大半工作,但是前面的布局也只能是大概的布局而已,实际需要在进行PCB走线的时候调整,边画边调,直到完成我们脑海中样子。以下提供PCB走线需要注意以下几个要点,更多的设计要点还需要我们在设计中不断积累经验,提升自己的设计绘图能力。

(1)电源及信号走线按照信号电流流向,严格按照原理图设计图进行布局设计,即使它们都连接上去了,没有报错,但也要考虑先后顺序,先经过A再到B,最后到C,不能直接从A到C到B,这点在初学的时候尤其重要。

MGxNFEKR2bmOKKF4HnmlDvDZ9nRESHBz9REtVyC7.png

图4-8 走线参考

        如图所示,芯片U1为降压芯片,电源从C1左侧输入,经过电容C1,流到芯片U1进行降压后通过C2进行输出,在进行布局摆放的时候要求电容与芯片靠近且整齐摆放。

(2)在PCB走线过程中注意线宽设置大小,电源线应比信号线稍微粗一些,可以设为30mil,常规信号线设为15mil。线宽不能设置过细,应考虑工厂生产工艺,列举嘉立创PCB生产工艺如下图所示:

ffM4T5hNVCx7fvSPtHoshAxhNnWXs79cTmEKHCkq.png

图4-9 嘉立创工艺图

        在实际走线过程中连接两个相同网络的焊盘用导线连接,导线应优先走直线,横平竖直,可以通过调整器件布局使两个点间的连线最短,如果无法保持直线应优先使用135°钝角或者圆弧走线,保持设计美观。

UMhOtM5BnrApKWbySpHxl0AH52JJIVpi9xIm803n.png

五、项目资料

点击查看焊接视频: https://www.bilibili.com/video/BV1ff4y1H7aw

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

附件

序号文件名称下载次数
1
【立创课堂】基于STC89C52的智能小车设计学习手册.pdf
2858
2
智能小车渲染图.png
880
3
智能小车实物图.png
929
4
51单片机-智能小车例程(零妖).zip
10555
5
智能小车演示视频.mp4
14493
克隆工程
分享
0
0
添加到专辑
侵权投诉
全部评论(1
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程