我会通过本系列文章,详细介绍如何从零开始用51单片机去实现智能小车的控制,在本系列的上一篇文章中介绍了如何让小车动起来,本文作为本系列的第二篇文章,主要介绍让小车实现自动避障所涉及的一些传感器,如超声波模块、漫反射光电管、4路红外寻迹避障传感器的介绍及使用。 对于熟悉这些模块的读者,可跳过此篇文章,直接阅读本系列的下一篇文章  
本系列文章链接:

详细介绍如何从零开始制作51单片机控制的智能小车(一)———让小车动起来 详细介绍如何从零开始制作51单片机控制的智能小车(二)———超声波模块、漫反射光电管、4路红外传感器的介绍和使用 详细介绍如何从零开始制作51单片机控制的智能小车(三)———用超声波模块和漫反射光电传感器实现小车的自动避障 详细介绍如何从零开始制作51单片机控制的智能小车(四)———通过蓝牙模块实现数据传输以及通过手机蓝牙实现对小车运动状态的控制 详细介绍如何从零开始制作51单片机控制的智能小车(五)———对本系列第四篇文章介绍的手机蓝牙遥控加减速异常的错误的介绍及纠正

一、4路红外寻迹避障传感器模块

1、线路连接 传感器与控制板之间的连接很简单,每个传感器与控制板都有3根线相接,即一根VCC,一根GND,还有一根信号线,传感器和控制板上都有白色标识,连线很方便,稍微细心一下就行,别把VCC和GND接反了就行(接反了,一通电传感器可能就烧坏了,我烧过…),控制板与单片机之间的连接,有6根线,一根VCC,一根GND,4根信号线,接法如下:DO1— 第1路TTL电平输出,接在单片机选定的管脚上,如P10,D02—第2路TTL电 平输出,接在单片机选定的管脚上,如P11,DO3—第3路TTL电 平输出,接在单片机选定的管脚上,如P12,DO4—第4路TTL电平输出,接在单片机选定的管脚上,如P13,GND— 接单片机的GND管脚,VCC— 接单片机的5V管脚   2、工作原理 每1路的传感器的红外发射管不断发射红外线,当发射出的红外线没有被反射回来或被反射回来但强度不够大时,红外接收管一直处于关断状态,此时模块的TTL输出端为高电平,相应指示二极管一直处于熄灭状态;当被检测物体出现在检测范围内时,红外线被反射回来且强度足够大,红外接收管导通,此时模块的TTL输出端为低电平,指示二极管被点亮。   简单点说,当传感器检测到障碍物时,对应的TTL输出低电平,比如第一路传感器信号线连接在单片机的P10口,当第一路传感器检测到障碍物时,单片机P10口就为低电平,也就是说通过读取传感器信号线连接的单片机I/O口的高低电平,就可以知道传感器前方有没有障碍物。   3、检测距离的调节 当模块检测到前方障碍物信号时,电路板上红色指示灯点亮电平,同时oUT端口持续输出低电平信号,也就是说,我们可以通过在传感器前面一定距离放置障碍物,通过观察电路板上的指示灯的亮灭,来调节检测距离,检测距离可以通过电位器进行调节,顺时针调电位器,检测距离增加;逆时针调电位器,检测距离减少,官方介绍该模块检测距离2~30cm,但是根据我的实测在20cm以上时,随着距离的增加会趋向不稳定,尤其是在30cm附近,车处于运动状态时可能会由于车的震动从而使传感器始终处于检测到障碍物状态,所以检测距离一般调节在20几厘米左右较好。   4、注意事项 (1)使用本模块时候,避免探头阳光直射。光线对模块有干扰作用。也就是说本模块受阳光干扰严重,在室外传感器大概率不能正常工作,当然可以采取一定的防护措施,但是效果有限,这也是本次我不采用这种传感器的原因 (2)灵敏度调节不应过高,过高的灵敏度可能引起误触发。 (3)在临界值时,会出现ED微亮,这种情况是未触发状态。此时输出为高电平。  

二、漫反射式传感器

1、线路连接 对于我使用的这个是NPN型常开漫反射传感器,每个传感器有三根线,棕色的线接正极,虽然产品介绍是6v到36v的输入电压,我接到单片机上的5v管脚上,测试传感器是可以正常工作的,蓝色的线接单片机的负极(GND),黑色的线是信号线,接单片机的I/O口   2、关于漫反射式传感器的简单介绍 光电开关是一种具有开关量输出的位移传感器,输出有NPN、PNP、常开、常闭及继电器等,可检测金属(如钢、铁、铜)、塑料、玻璃、木头、水、纸、磁铁等透明和不透明物体,可与PLC、伺服控制器、变频器、计算器、控制器相连接达到自动输入信号的目的,广泛应用于机械、纺织、轻工造纸、印刷、包装等行业。   光电开关属于无接触测量传感器,其检测距离范围比较宽,在计数、测距和行程控制等许多测控系统中得到广泛应用。反射式光电开关又分为漫反射和镜反射式光电开关 3、工作原理 漫反射光电开关是一种集发射器和接收器于一体的传感器,当有被检测物体经过时,将光电开关发射器发射的足够量的光线反射到接收器,于是光电开关就产生了开关信号。当被检测物体的表面光亮或其反光率极高时,漫反射式的光电开关是首选的检测模式。   简单点说,就本文介绍的NPN型常开漫反射光电传感器,当检测到障碍物时,与黑线连接的单片机I/O口被置低电平0,也就是说通过读取该I/O口的电平高低,就可以知道传感器前方有没有障碍物   4、检测距离的调节 顺时针调节电位器检测距离变远,逆时针调节检测距离变近,当我用手充当障碍物时,在20cm处可正常工作,最终检测距离我调节在了17cm。  

三、超声波模块

 
1、线路连接
我使用的这种HC-SR04型号的超声波传感器需要4根线,VCC接单片机的5v接口(该传感器工作电压为5v),Trig (控制端)接单片机的I/O口(跟程序定义的管脚相同就行),是超声波传感器的控制管脚,Echo (接收端)接单片机的I/O口(跟程序定义的管脚相同就行),是超声波传感器的接收管脚、GND接单片机的GND。   2、工作原理 (1)采用(I/O口触发测距、给至少10us的高电平信号) (2)模块自动发送8个40khz的方波、自动检测是否有信号返回 (3)有信号返回、通过I0输出一高电平、高电平持续的时间就是超声波从发射到返回的时间、测试距离=(高电平时间_声速(340M/s)/2)   详细点说,它是怎么工作的呢,首先我们需要让超声波模块Trig 管脚所接的单片机I/O口置为高电平,而且需要持续10us以上,这时超声波模块就会自动发出8个40khz的方波、自动检测是否有信号返回,也就是检测前方有没有障碍物,若有障碍物则通过Echo所接的单片机I/O口将信号返回,该I/O被置为高电平1,通过测量高电平持续的时间,也可以通过公式:测试距离=(高电平时间_声速(340M/s)/2),计算出障碍物距传感器的距离,这个公式很容易理解吧,距离=时间X速度,除以2是因为,超声波测距测得是一个来回的距离,也就是真实距离的两倍,所以要除以2。   跟前面两种传感器不同,前面两种传感器使用起来很简单,只需要检测传感器信号线电平的高低就可以知道有没有障碍物,传感器呢 只需要接到单片机上,在程序上只需要定义个I/O口就行了,所以他们的工作原理不理解,也可以正常的使用,但是超声波模块不同,如果上面的工作原理不理解,或超声波模块工作的的过程不理解,就很难去写或者修改超声波模块的程序。所以一定要理解上面的步骤,至于如何去写超声波测距的程序,我会在本系列下一篇博文:“详细介绍如何从零开始制作51单片机控制的智能小车(三)———用超声波模块和漫反射光电传感器实现小车的自动避障”中介绍,当然我会把超声波模块的一些参考例程,和相关资料放在本文附件里,需要者自取,大家可以先自己看一下。   3、检测距离的调节 与前两种传感器不同,超声波模块没有调节距离的电位器,不能通过硬件调节检测距离,需要通过程序调节,我将会在本系列下一篇文章中介绍如何写超声波测距程序时介绍如何调节检测距离,值得一说的是超声波模块的检测距离比前面两种传感器远得多,比如本文介绍的这种检测距离可达450cm,即4.5米,有些型号可达7m 、15m 而且检测精度很高误差在3mm 1mm 甚至更小,所以说超声波模块还是有很多优势的。   4、注意事项 模块应先插好在电路板.上再通电、避免产生高电平的误动作,如果产生了、从新通电方可解决。 本文到这里就结束了,超声波模块的资料我会放在附件里,需要者自取,我放的时候都是免费的,但是过段时间它会自己涨…需要的在评论区留言我可以直接发给你,欢迎大家继续阅读本系列的后续文章“详细介绍如何从零开始制作51单片机控制的智能小车(三)———用超声波模块和漫反射光电传感器实现小车的自动避障”   欢迎大家积极交流,本文未经允许谢绝转载