一)小车功能实现
利用光电传感(红外对射管,红外发射与接收二极管组成)检测黑白线,实现小车能跟着白线(或黑线)行走,同时也可避开障碍物,即小车寻迹过程中,若遇障碍物可自行绕开,绕开后继续寻迹。
二)电路分析
1.光电传感
循迹光电传感器原理,利用黑白线对红外线不同的反射能力。然后通过光敏二极管或光敏三极管,接收反射回的不同光强信号,把不同光强转换为电流信号,最后通过电阻,转换为单片机可识别的高低电平。光电传感器实现循迹的基本电路如下图所示 、
循迹传感器基本电路
电路解释:TC端是传感器工作控制端,为高电平时,发光二极管不工作,传感器休眠,为低电平时,传感器启动。Signal端为检测信号输出,当遇到黑线,黑线吸收大量的红外线,反射的红外线很弱,光敏三极管不导通,signal输出高电平,当遇到白线,与黑线相反,反射的红外线很强,使光敏三极管导通,signal输出低电平。
寻迹部分
调整左右传感器之间的距离,两探头距离约等于白线宽度最合适,一般白线宽度选择范围为3 – 5 厘米比较合适。注意:该传感器的灵敏度是可调的,偶尔传感器遇到白线却不能送出相应的信号,通过调节传感器上的可调电阻,适当的增大或减小灵敏度。另外,循迹传感器的安放也算是比较有讲究的,有两种方法,一种是两个都是放置在白线内侧但紧贴白线边缘,第二种是都放置在白线的外侧,同样紧贴白线边缘。我们通常采用第二种方法。
编写程序使小车遇白线时,小车跟着白线走。当小车先前前进时,如果向左偏离了白线。那么右边传感器会产生一个低电平,单片机判断这个信号,然后向右拐。回到白线后。两
传感器输出信号为高电平。小车前进。如果小车向右偏离白线,左边传感器产生一个低电平,单片机判断这个信号,然后向左拐。如此如此,小车必不偏离白线。若小车的两对光电传感器同时输出的信号为高电平(黑底)或低电平(白底),即单片机判断的都为高电平或低电平,小车向前直走,在此过程中(直走)小车若遇白线,小车又重复上面动作跟着白线走。
避障部分
当小车在寻迹(沿着白线走或直走)过程中遇障碍物,小车亦可自行转弯,转弯动作完成后,又继续寻迹。
2.电机驱动电路
电机驱动芯片采用L298N,是一款承受高压大电流的全桥型直流/步进电压驱动器,如下图
L298N引脚编号与功能
引脚编号 | 名称 | 功能 |
1 | 电流传感器A | 在该引脚和地之间接小阻值电阻可用来检测电流 |
2 | 地震云与地震预测视频抗干扰器输出引脚1 | 内置驱动器A的输出端1,接至电机A |
3 | 输出引脚2 | 内置驱动器A的输出端2,接至电机A |
4 | 电机电源端 | |
5 | 输入引脚1 | 内置驱动器A的逻辑控制输入端1 |
6 | 使能端A | 内置驱动器A的使能端 |
7 | 输入引脚2 | 内置驱动器A的逻辑控制输入端2 |
8 | 逻辑地 | 逻辑地 |
9 | 逻辑电源端 | 逻辑控制电路的电源输入端为5V |
10 | 输入引脚3 | 内置驱动器B的逻辑控制输入端1 |
11 | 使能端B | 内置驱动器B的使能端 |
12 | 输入引脚4 | 内置驱动器B的逻辑控制输入端2 |
13 | 输出引脚3 | 内置驱动器B的输出端1,接至电机B |
14 | 输出引脚4 | 内置驱动器B的输出端2,接至电机B |
15 | 电流传感器B | 在该引脚和地之间接小阻值电阻可用来检测电流 |
| | |
L298N内部原理图
电机驱动A/B的控制逻辑如下表所示
输入信号 | 电机运动方式 |
使能端A/B | 输入引脚1/3 | 输入引脚2/4 |
1 | 1 | 0 | 前进 |
1 | 0 | 1 | 后退 |
1 | 1 | 1 | 紧急停车 |
1 | 0高频变压器参数 | 0 | 紧急停车 |
0 | X | X | 自由转动 |
| | | |
电机驱动A/B的工作原理
电机控制逻辑如下:以电机A为例,当使能端A为高电平是,如果输入端M1 Direction引脚为高电平,三极管导通,输入引脚1为低电平而输入引脚2为高电平,电机A反转;如果输入端M1 Direction引脚为底电平,三极管截止,输入引脚1为高电平而输入引脚2为低电平,电机A正转。
电机驱动原理图
3.中文液晶显示器128x64
带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块。双向触发二极管其显示分辨率为128×64, 内置8192个16*16点汉字,和128个16*8点ASCII字符集。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8×4行16×16点阵的汉字,也可完成图形显示。具有低电压低功耗特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。
基本特性: 低电源电压(VDD:+3.0--+5.5V)
奥沙利显示分辨率:128×64点
内置汉字字库,提供8192个16×16点阵汉字(简繁体可选)
内置 128个16×8点阵字符
2MHZ时钟频率
显示方式:STN、半透、正显
驱动方式:1/32DUTY,1/5BIAS
视角方向:6点
背光方式:侧部高亮白LED,功耗仅为普通LED的1/5—1/10
通讯方式:串行、并口可选
内置DC-DC转换电路,无需外加负压
无需片选信号,简化软件设计
工作温度: 0℃ - +55℃ ,存储温度: -20℃ - +60℃
模块接口说明:
PIN15 | LED+ | 背光正极,接4.8V-5V |
PIN116 蜂巢发动机 | LED- | 背光负极,接0V |
| | |
*注:1:如在实际应用中仅使用并口通讯模式,可将PSB接固定高电平,也可以将模块上的J8和“VCC”用焊锡短接;2:模块内部接有上电复位电路,因此在不需要经常复位的场合可将该端悬空;3:如背光和模块共用一个电源,可以将模块上的JA、JK用焊锡短接。
引脚控制信号应用
D/I,R/W的配合选择决定控制界面的4种模式:
D/I | R/W | 功能说明 |
L | L | MPU写指令到指令暂存器(IR) |
L | H | 读出忙标志(BF)及地址记数器(AC)的状态 |
H | L | MPU写入数据到数据暂存器(DR) |
H | H | MPU从数据暂存器(DR)中读出数据 |
| | |
E信号操作:
E状态 | 执行动作 | 结果 |
高——>低 | I/O缓冲——>DR | 配合/W进行写数据或指令 |
高 | DR——>I/O缓冲 | 配合R进行读数据或指令 |
低/低——>高 | 无动作 | |
| | |
内部寄存器信号
● 忙标志:BF