对射式红外传感器模块(测速传感器模块)

您所在的位置:网站首页 红外感应计数器工作原理视频教程 对射式红外传感器模块(测速传感器模块)

对射式红外传感器模块(测速传感器模块)

#对射式红外传感器模块(测速传感器模块)| 来源: 网络整理| 查看: 265

产品特性:

        使用ITR9606高灵敏度槽型光耦器件,它由一个红外发光二极管和一个NPN光电三极管组成,槽宽度为5mm。传感器特设M3固定安装孔,调节方向与固定方便易用,使用宽电压LM393比较器,信号干净,波形好,驱动能力强,超过15mA。广泛用于电机转速检测,脉冲计数,位置限位等。

产品参数:

工作电压3.3V-5V 输出形式﹔数字开关量DO输出(o和1),模拟输出AO引脚无效

使用说明:

        接好VCC和GND,模块电源指示灯会亮,模块槽中无遮挡时,接收管导通,模块Do输出低电平,开关指示灯亮﹔遮挡时,DO输出高电平,开关指示灯灭。模块DO可与继电器相连,组成限位开关等功能,也可以与有源蜂鸣器模块相连,组成报警器。DO输出接口可以与单片机Io口直接相连,一般接外部中断,检测传感器是否有遮档,如用电机码盘则可检测电机的转速。

测速传感器模块使用说明书(宽槽版):

模块特色:

1、使用进口槽型光耦传感器,槽宽度 10mm。

2、有输出状态指示灯,输出高电平灯灭,输出低电平灯亮。

3、有遮挡,输出高电平;无遮挡,输出低电平。

4、比较器输出,信号干净,波形好,驱动能力强,超过 15mA。

5、工作电压 3.3V-5V

6、输出形式 :数字开关量输出(0 和 1)

7、设有固定螺栓孔,方便安装

8、小板 PCB 尺寸:2.3cm x 2cm

9、使用宽电压 LM393 比较器 

模块使用说明(宽槽版):

1.模块槽中无遮挡时,接收管导通,模块 OUT 输出低电平,遮挡时, OUT 输出高电平;

2、OUT 输出接口可以与单片机 IO 口直接相连,检测传感器是否有遮 档,如用电机码盘则可检测电机的转速。

3.模块 OUT 可与继电器相连,组成限位开关等功能,也可以与有源蜂 鸣器模块相连,组成报警器。

产品接线说明(宽槽版):

1、VCC 接电源正极 3.3-5V

2、GND 接电源负极

3、OUT TTL 开关信号输出

---------------------------------------------------------------------------------------------------------------------------------

测速传感器模块使用说明书(窄槽版):

模块特色(窄槽版):

1、使用进口槽型光耦传感器,槽宽度 5mm。

2、有输出状态指示灯,输出高电平灯灭,输出低电平灯亮。

3、有遮挡,输出高电平;无遮挡,输出低电平。

4、比较器输出,信号干净,波形好,驱动能力强,超过 15mA。

5、工作电压 3.3V-5V

6、输出形式 :数字开关量输出(0 和 1)

7、设有固定螺栓孔,方便安装

8、小板 PCB 尺寸:3.2cm x 1.4cm

9、使用宽电压 LM393 比较器  

模块使用说明(窄槽版):

1.模块槽中无遮挡时,接收管导通,模块 DO 输出低电平,遮挡时, DO 输出高电平;

2、DO 输出接口可以与单片机 IO 口直接相连,检测传感器是否有遮 档,如用电机码盘则可检测电机的转速。

3.模块 DO 可与继电器相连,组成限位开关等功能,也可以与有源蜂 鸣器模块相连,组成报警器。

产品接线说明(窄槽版):

1、VCC 接电源正极 3.3-5V

2、GND 接电源负极

3、DO TTL 开关信号输出

4、AO 此模块不起作用

程序设计:

  传感器51测试程序(宽槽版):

/****************************************** ´«¸ÐÆ÷´¥·¢²âÊÔ µ¥Æ¬»ú£ºSTC89C52 ²¨ÌØÂÊ£º9600 *****************************************/ #include unsigned char date; #define uchar unsigned char #define uint unsigned int sbit key1=P0^1; /* º¯ÊýÉêÃ÷ -----------------------------------------------*/ void delay(uint z); void Initial_com(void); //*********************************************************** /* ******************************************************************************** ** º¯ÊýÃû³Æ £º delay(uint z) ** º¯Êý¹¦ÄÜ £º ÑÓʱº¯Êý ******************************************************************************** */ void delay(uint z) { uint i,j; for(i=z;i>0;i--) for(j=110;j>0;j--); } //****************************** //*****´®¿Ú³õʼ»¯º¯Êý*********** //****************************** void Initial_com(void) { EA=1; //¿ª×ÜÖÐ¶Ï ES=1; //ÔÊÐí´®¿ÚÖÐ¶Ï ET1=1; //ÔÊÐí¶¨Ê±Æ÷T1µÄÖÐ¶Ï TMOD=0x20; //¶¨Ê±Æ÷T1£¬ÔÚ·½Ê½2ÖжϲúÉú²¨ÌØÂÊ PCON=0x00; //SMOD=0 SCON=0x50; // ·½Ê½1 Óɶ¨Ê±Æ÷¿ØÖÆ TH1=0xfd; //²¨ÌØÂÊÉèÖÃΪ9600 TL1=0xfd; TR1=1; //¿ª¶¨Ê±Æ÷T1ÔËÐпØÖÆλ } //************************* //**********Ö÷º¯Êý********* //************************* main() { Initial_com(); while(1) { if(key1==0) { delay(); //Ïû¶¶¶¯ if(key1==0) //È·ÈÏ´¥·¢ { SBUF=0X01; delay(200); } } if(RI) { date=SBUF; //µ¥Æ¬»ú½ÓÊÜ SBUF=date; //µ¥Æ¬»ú·¢ËÍ RI=0; } } }

  传感器51测试程序(窄槽版): 

/****************************************** ´«¸ÐÆ÷´¥·¢²âÊÔ µ¥Æ¬»ú£ºSTC89C52 ²¨ÌØÂÊ£º9600 *****************************************/ #include unsigned char date; #define uchar unsigned char #define uint unsigned int sbit key1=P0^1; /* º¯ÊýÉêÃ÷ -----------------------------------------------*/ void delay(uint z); void Initial_com(void); //*********************************************************** /* ******************************************************************************** ** º¯ÊýÃû³Æ £º delay(uint z) ** º¯Êý¹¦ÄÜ £º ÑÓʱº¯Êý ******************************************************************************** */ void delay(uint z) { uint i,j; for(i=z;i>0;i--) for(j=110;j>0;j--); } //****************************** //*****´®¿Ú³õʼ»¯º¯Êý*********** //****************************** void Initial_com(void) { EA=1; //¿ª×ÜÖÐ¶Ï ES=1; //ÔÊÐí´®¿ÚÖÐ¶Ï ET1=1; //ÔÊÐí¶¨Ê±Æ÷T1µÄÖÐ¶Ï TMOD=0x20; //¶¨Ê±Æ÷T1£¬ÔÚ·½Ê½2ÖжϲúÉú²¨ÌØÂÊ PCON=0x00; //SMOD=0 SCON=0x50; // ·½Ê½1 Óɶ¨Ê±Æ÷¿ØÖÆ TH1=0xfd; //²¨ÌØÂÊÉèÖÃΪ9600 TL1=0xfd; TR1=1; //¿ª¶¨Ê±Æ÷T1ÔËÐпØÖÆλ } //************************* //**********Ö÷º¯Êý********* //************************* main() { Initial_com(); while(1) { if(key1==0) { delay(); //Ïû¶¶¶¯ if(key1==0) //È·ÈÏ´¥·¢ { SBUF=0X01; delay(200); } } if(RI) { date=SBUF; //µ¥Æ¬»ú½ÓÊÜ SBUF=date; //µ¥Æ¬»ú·¢ËÍ RI=0; } } } 逻辑设计: 测距离:

        测速传感器输出为脉冲信号,一个脉冲中断一次﹔红外射线导通的时候是低电平,所以我们设置中断为低电平触法模式。一般码盘上有整数格子,无论是多少格其实原理一样,例如10格码盘,也就是有10个空格子,电机转一圈后便是射线导通10次,外部低电平触法10次﹔安装上面的思路,我们的测速传感器就可以发挥出效果了,我们知道一圈就有10个中断,于是我们计算中断次数,得到的总次数除于10也就是电机转动次数了,然后按照轮子的周长,计算轮子一圈是多长,就可以推算出小车已经跑多远了。

测速度;

        按照测距离的思路,我们用一个MCU定时器计算,1秒内接收多少个外部中断,例如一秒内接收了20个外部中断,我们就可以判断小车速度为i秒小车轮子转两圈,然后再计算出小车轮子的周长,就可得知小车1秒行驶的速度。

注意事项:

        正确接线!切勿将正负接反,使板子电子器件烧毁。Raspberry Pi 玩家应该设置MCU的I/o口为输入模式/接收模式,否则无法使用。其他MCU,或者更为高级的控制板如ARM这些,若需设置I/o口为输入输出模式,都必须设置为输入模式/接收模式,否则无法使用。51系列单片机可直接使用,无需设置输入输出模式。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3