红外循迹模块

红外循迹模块
白细胞介素12模块描述
此模块是为智能⼩车、机器⼈等⾃动化机械装置提供⼀种多⽤途的红外线探
测系统的解决⽅案。该传感器模块对环境光线适应能⼒强,其具有⼀对红外线发
射与接收管,发射管发射出⼀定频率的红外线,当检测⽅向遇到障碍物(反射⾯)
时,红外线反射回来被接收管接收,经过⽐较器电路处理之后,同时信号输出接
⼝输出数字信号(⼀个低电平信号),可通过电位器旋钮调节检测距离,有效距
离范围 2~60cm,⼯作电压为 3.3V-5V。该传感器的探测距离可以通过电位器调
节、具有⼲扰⼩、便于装配、使⽤⽅便等特点,可以⼴泛应⽤于机器⼈避障、避
障⼩车、流⽔线计数及⿊⽩线循迹等众多场合。
模块参数说明
1. 当模块检测到前⽅障碍物信号时,电路板上红⾊指⽰灯点亮,同时 OUT端⼝持续输出低电平信号,该模块检测距离 2~60cm,检测⾓
度 35 ° ,检测距离可以通过电位器进⾏调节,顺时针调电位器,检测距离增加;逆时针调电位器,检测距离减少。
2. 传感器属于红外线反射探测,因此⽬标的反射率和形状是探测距离的关键。其中⿊⾊探测距离最⼩,⽩⾊最⼤;⼩⾯积物体距离⼩,⼤⾯积
距离⼤。
3. 传感器模块输出端⼝ OUT 可直接与单⽚机 IO ⼝连接即可,也可以直接驱动⼀个 5V 继电器模块或者蜂鸣器模块;连接⽅式:VCC-
图解思考VCC;GND-GND;OUT-IO
4. ⽐较器采⽤ LM339,⼯作稳定 。
5. 可采⽤ 3.3V-5V 直流电源对模块进⾏供电。当电源接通时,绿⾊电源指⽰灯点亮 。
天然精油模块接⼝说明( 6 16 线制)
红外探头 VCC GND OUT 对应接⼊中控板 VCC GND INx
中控板供电:模块 6p 排针接⼝处 VCC 外接 3.3V-5V 电压(可以直接与 5v 单⽚机和 3.3v 单⽚机相连);GND 外接 GND ;OUT1-OUT4 接单⽚机 IO ⼝
模块测试说明
测试探头 :移开探头前⾯所有物体,且探头不要指向有阳光的地⽅(光线对探头有较⼤⼲扰),将探头板接上电源后⽤万⽤表测量OUT 和 GND之间的电压,正常范围应该在 0.6v-2.5v 之间,⽤⽩纸挡在探头前,⽤万⽤表测量 OUT 和 GND之间的电压,正常范围应该接近0V.简单的说,就是⽤⽩纸挡住探头后,OUT 和GND 之间的电压会有⼀个明显的降低,这样就算正常。
单独测试中控板:这个需要先了解⼀下 LM339 的⼯作原理,我们以第⼀路来简单
说明⼀下:IN1-为定位器调节的电压输⼊端,IN+为探头输出的电压(就是探头OUT 与 GND 的电压),当 IN1- 电压 >IN1+电压时,对应的 1 OU1 输出的电平电压接近0v ,此时,对应的 D LED 灯会亮;当 IN1- 压 电压 < < < < IN1+电压时,对应的 1 OU1 输出的电平电压接近 5v, 此时 ,对应的 D LED 灯会点亮。这个就是整个电路⼯作的核⼼。我们根据这个原理,就可以简单的进⾏⼀个测试了,调节第⼀路的电位器 ,使 IN-的电压为 2.5v左右,然后根据上⾯的原理,分别对 IN1 接 0V 和 5V 电压 ,然后根据上⾯的原理,就会发现,接 OV 时,LED 灯亮;接 5v时,LED 灯灭。
联机测试:按照要求将探头与中控板连接好,移开探头前⾯所有物体,且探头不要指向有阳光的地⽅(光线对探头有较⼤⼲扰),调节每⼀路的电位器,直到灯刚灭掉,然后⽤⽩纸遮挡探头,会发现led 会点亮,这样就算测试成功了,然后我们就可以将中控板的输出信号传⼊单⽚机进⾏⾼低电平检测了。
电路图
void xunji(void)
{
//四路都检测到
if(Ray1==1&&Ray2==1&&Ray3==1&&Ray4==1)
{
run();
delay_ms(100);
}
//中间两路检测到
if(Ray1 ==0&& Ray2 ==1&& Ray3 ==1&& Ray4 ==0|
Ray1 ==0&& Ray2 ==0&& Ray3==1&& Ray4 ==0|
Ray1 ==0&& Ray2 ==1&& Ray3 ==0&& Ray4 ==0)
{
run();
delay_ms(100);
}
//左边检测到
if(Ray1 ==1&& Ray2 ==0&& Ray3 ==0&& Ray4 ==0|
Ray1 ==1&& Ray2 ==1&& Ray3 ==0&& Ray4 ==0)
{
left();
delay_ms(100);
}
//右边检测到
if(Ray1 ==0&& Ray2 ==0&& Ray3 ==0&& Ray4 ==1|
Ray1 ==0&& Ray2 ==0&& Ray3 ==1&& Ray4 ==1)
{
run();
delay_ms(100);
}
//四路都没检测到
if(Ray1==0&&Ray2==0&&Ray3==0&&Ray4==0)
{
stop();
delay_ms(100);
}
}
#include"redray.h"igg
#include"delay.h"
void RedRayInit(void)
{
GPIO_InitTypeDef  GPIO_InitStructure;
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC | RCC_AHB1Periph_GPIOG , ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7 | GPIO_Pin_8;//配置使能GPIO管脚
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;//配置GPIO模式,输⼊上拉
GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_UP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//配置GPIO端⼝速度
GPIO_Init(GPIOC ,&GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7 | GPIO_Pin_8;//配置使能GPIO管脚
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;//配置GPIO模式,输⼊上拉
GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_UP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//配置GPIO端⼝速度
GPIO_Init(GPIOG ,&GPIO_InitStructure);
}
#ifndef __REDRAY_H
#define __REDRAY_H
#define Ray1          GPIO_ReadInputDataBit(GPIOG, GPIO_Pin_7)  #define Ray2          GPIO_ReadInputDataBit(GPIOG, GPIO_Pin_8) #define Ray3          GPIO_ReadInputDataBit(GPIOC, GPIO_Pin_6) #define Ray4          GPIO_ReadInputDataBit(GPIOC, GPIO_Pin_7)
王寿亭
sonic2000void RedRayInit(void);
void xunji(void);
#endif

本文发布于:2024-09-24 15:17:51,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/503997.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

上一篇:安规脚手架
下一篇:监控措施
标签:模块   探头   检测
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议