关键词:智能小车;传感器;STC89C52RC;循迹;避障
智能小车主要由传感器检测感应、中央处理模块和机械执行模块三大部分组成。通过传感器的感应检测到障碍物或黑线或火焰,进行智能避障、循迹、灭火等功能。本款小车是一款以STC89C52单片机为主控制器的智能小车,由电源模块、直流电机驱动模块、数码管显示模块、按键模块、黑线循迹模块、红外避障模块、风扇灭火模块和STC89C52RC单片机模块组成。利用各类传感器检测到黑线或障碍物或火源,传达给主控制器进而控制小车的速度及转向,从而实现自动循迹、避障、遥控、灭火的功能。电机驱动由L293D驱动电路完成,小车运行方向和速度由单片机控制。
1、核心控制模块
本次设计中所采用的控制中心是STC89C52RC单片机。该模块主要分为供电部分、下载接口部分、控制部分、时钟部分五大块。其中供电部分是为单片机提供电源,下载接口部分是给单片机进行程序下载,控制部分则是TC89C52RC单片机,控制小车的所有行为,时钟部分则是给予单片机一个时钟,让单片机在此时钟上制造一个时序。
STC89C52RC单片机是一种低功耗、高性能、超强抗干扰的CMOS8位微控制器,具有8K在系统可编程Flash存储器,且指令代码完全兼容传统8051单片机。
2、时钟电路
时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路有两种方式,一种是内部时钟方式,另一种是外部时钟方式。在此次设计中系统采用内部时钟。STC89C52RC内部有一个用于构成振荡器的高增益反相放大器,输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,构成一个稳定的自激振荡器,电路中的电容?C10和?C13的典型值通常选择为?30pF。晶体振荡频率的范围通常是在?1.2~12MHz。STC89C52RC单片机常选择振荡频率6MHz或12MHz的石英晶体。
3、循迹模块
循迹模块主要由两对红外光电传感器构成,使用红外光线探测法进行循迹,红外光线对于不同的颜色有不同的反射性质,当传感器的红外发射二极管发射出红外线时,由于颜色的不同,红外发射管发出的红外线被反射回来的情况不同,传感器的红外接收二极管也会接收到不同的信息。
小车循迹的原理是在白色路面或浅色系路面中有黑色的轨道上运行,根据红外光线对于不同的颜色有不同的反射而判断小车的循迹轨道。当小车行驶在白色的路面上时,红外发射管发出的红外线就会被反射回来,红外接收管接收到红外光线,其阻值变小,向单片机输出低电平。当小车行驶在黑色的轨道上时,红外发射管发出的红外线就会被吸收,红外接收管没有接收到光线,其阻值不变,输出高电平,指示灯导通。同时若单片机I/O口发现是高电平的信号,则说明小车处在黑色轨道上,若单片机I/O口发现是低电平的信号,则说明小车处在白色轨道路上。
4、循迹电路分析
当没有检测到黑线时,则左侧红外光电传感H4发射端发出光线到白纸,光反射到左侧红外光电传感H4接收端,左侧红外光电传感H4接收端导通,导通则T1接地=0;
当有检测到黑线时,则左侧红外光电传感H4发射端发出光线到黑线,光全部被吸收,左侧红外光电传感H4接收端,没有收到任何信号,因为左侧红外光电传感H4不导通,则T1=VCC。
5、避障模块
红外避障模块
红外避障模块由一对红外光电二极管组成,它的主要功能就是将光信号转换为电信号,被广泛的应用于现代的各种家用电器和它们的遥控器,它能够十分有效地接收红外发光二极管发射的红外光信号,这种光信号的波长一般为940nm,而对于其他类型和其他波长的光信号,它都不会接收,所以它的抗干扰能力还是比较强的。
红外线避障的原理是利用光线反射性质。当前方有障碍物时,红外发射二极管之前发射出的光线就被被反射回来,红外接收二极管接收到光线,其自身电压变小,通过电压比较器LM393比较,传感器输出的低电平;前方没有障碍物时,红外接收二极管没有接收到光线,其自身电压不变,通过电压比较器LM393比较,传感器输出高电平。所以只要通过单片机来检测传感器的输出端电平是高还是低,就能得知是否遇到障碍。
6、超声波避障模块
本设计采用的是HC-SR04超声波避障模块,超声波模块固定在小车的最前方。当小车运行时超声波避障模块自动发送8个40千赫兹的方波,自动检测是否有信号返回,当前方有障碍物出现在道路前面时,信号返回,通过IO口输出一个高电平,当单片机接收到一个高电平,就会判断出前方有障碍物,做出避障反应。当前方没有障碍物时,也就没有信号返回,通过IO口输出一个低电平,小车继续按原路线行驶。超声波从发射到返回的时间就是高电平持续的时间,高电平持续的时间也就是声波来回所用时间。当有高电平输出时定时器计打开时,当变为低电平时,次时定时器的读数值,就是此次测距的时间。通过计算可得到测试距离。
7、电机驱动模块
L293D驱动共有16个引脚,属于DIP封装。是四倍高电流的H桥驱动程序。使能信号ENA是高电平有效,若为低电平,则L293D内部的三极管截止,电机是无法转动的。IN1和IN2是控制电机旋转方向。当IN1=1、IN2=0时,表示电机正向转动,当IN1=0、IN2=1时,表示电机反向转动。选中一PWM与使能端引脚相连接,那么PWM的占空比直接与整个电机的旋转速度挂钩。选中一I/O口,通过反向器74HC14与两个方向控制信号的引脚相连接,使其控制转向问题。
8、灭火模块
灭火模块由两部分组成,分别为寻火模块和灭火模块。寻火模块由两个火焰传感器组成,火焰传感器能够探测到波长在700~1000nm左右红外光。如果检测到火源时,火焰传感器将火焰的亮度转化为高低变化的电平信号,根据电平的变换判断火源的远近。灭火模块在寻火模块检测到火源时,启动灭火装置。本次设计的灭火装置选用的是风扇,通过LG9110驱动模块驱动。主控制器接收到电平信号,判断火源相对于小车的方向,如果左侧检测到火源,则向左侧转动,右侧检测到火源,则向右侧转动,直到两侧都检测到火源时,启动风扇灭火。
总结:
此次设计采用的主控芯片是STC89C52RC,用L293D电机驱动直流电机,避障和循迹功能都是根据光线探测法来实现的,每个器件的使用也都是通过重重测试和比较选择出最优方案而来。
参考文献:
[1]张宇婷.基于模糊理论的小车避障应用研究[D].西京学院,2017
[2]骆第含,赵子豪,岳有山.智能小车的发展现状与趋势[J].河南科技,2017(23):92-93
[3]陈文澄,张辉,张晋滔.??一种多功能循迹避障智能小车的研制[J].科技创新与应用.2019(04)
[4]董洁,杨涛,白倩靖.?预置目标自动避障路径优化智能小车设计[J].?电脑迷.2017(08)
[5]马相一,初俊博,强胜岭.?具有人体感应和避障功能的智能小车设计[J].?科技创新与应用.2017(16)
[6]张铮,张江宁,薛竹村,黄浩策,薛利荣.?循迹避障灭火功能智能小车设计[J].?实验室研究与探索.2016(11)
[7]李帅男.??基于STM32的循迹避障智能小车的设计[J].数字技术与应用.2018(08)
[8]杨小博,胡强,苏玉香.?基于STC12C5A60S2的循迹避障智能小车的设计[J].?福建电脑.2017(11)
[9]陈威,陈静.??基于多传感器的智能小车避障控制系统设计[J].工业控制计算机.2018(07)
[10]余秀玲,余秀娟.?基于单片机的智能小车红外避障循迹系统设计与制作[J].?现代商贸工业.2018(12)