红外接收器抗干扰方法

红外线感应控制的问题。当红外线接收头遇到太阳光干扰后就进入了饱和
状态此时我的发射头对接收头发射红外线脉冲,接收头接收不到信号。把接收头放回到室内后就接收正常了。

红外接收器失灵的原因:

红外接收器的元器件一般有红外接收头(三个脚的那种,如图1所示)、红外接收管(三个脚的那种,也叫光敏二极管或三极管如图2所示),其他不常用的就不说了。在这些元器件里都有一种PD芯片,起到接收红外线的作用。关键就在这里了,红外接收的作用就是接收红外线,所以如果这个芯片出了问题的话,那么红外接收器就失灵了。而这个PD能接收一段宽范围波长的红外线,所以无论太阳光里的红外还是红外发射管发出的红外线,PD都可以接收。因此,在室外阳光明媚的时候,阳光是常亮的,红外接收器就会由于先接收了阳光里的红外线,PD的感光达到饱和状态,导致无法再接收红外发射管的红外线。这就像一个人吃饱了后就无法再吃别的东西了。

解决步骤:

1.使用抗光干扰能力强的红外接收头,如台湾亿光:W0038HL-26,IRM56384.IRM3638

2.使用940nm波长的红外发射管,因为红外接收头的最佳接收波长是940nm;

3.在发射端加载38KHZ的载波频率;

4.增加遮光罩,避免阳光直射红外接收头;

5.增加滤光片,把多余的光线滤掉,只允许940nm左右的光波进入红外接收头。

硅光电池(硅光二极管)是一个大面积的光电二极管,它被设计用于把射到它表面的光转化为电能,因此,可用在光电探测器和光通信等领域。
 特点:当它照射光时会流过大致与光量成正比的光电流.

引用:http://www.chinawenben.com/file/auieaiuotpioaoivpseci3as_1.html

38kHz 红外发射与接收

红外线遥控器在家用电器和工业控制系统中已得到广泛应用,了解他们的工作原理和性能、进一步自制红外遥控系统,也并非难事。

1.红外线的特点

人的眼睛能看到的可见光,若按波长排列,依次(从长到短)为红、橙、黄、绿、青、蓝、紫,如图1所示。

由图可见,红光的波长范围为0.62μm~0.76μm,比红光波长还长的光叫红外线。红外线遥控器就是利用波长0.76μm~1.5μm之间的近红外线来传送控制信号的。

红外线的特点是不干扰其他电器设备工作,也不会影响周边环境。电路调试简单,若对发射信号进行编码,可实现多路红外遥控功能。

2.红外线发射和接收

人们见到的红外遥控系统分为发射和接收两部分。发射部分的发射元件为红外发光二极管,它发出的是红外线而不是可见光,如图2所示。

常用的红外发光二极管发出的红外线波长为940nm左右,外形与普通φ5 mm发光二极管相同,只是颜色不同。一般有透明、黑色和深蓝色等三种。判断红外发光二极管的好坏与判断普通二极管一样的方法。单只红外发光二极管的发射功率约100mW。红外发光二极管的发光效率需用专用仪器测定,而业余条件下,只能凭经验用拉距法进行粗略判定。

接收电路的红外接收管是一种光敏二极管,使用时要给红外接收二极管加反向偏压,它才能正常工作而获得高的灵敏度。红外接收二极管一般有圆形和方形两种。由于红外发光二极管的发射功率较小,红外接收二极管收到的信号较弱,所以接收端就要增加高增益放大电路。然而现在不论是业余制作或正式的产品,大都采用成品的一体化接收头,如图3所示。红外线一体化接收头是集红外接收、放大、滤波和比较器输出等的模块,性能稳定、可靠。所以,有了一体化接收头,人们不再制作接收放大电路,这样红外接收电路不仅简单而且可靠性大大提高。

图3是常用两种红外接收头的外形,均有三只引脚,即电源正VDD、电源负(GND)和数据输出(Out)。接收头的引脚排列因型号不同而不尽相同,图3列出了因接收头的外形不同而引脚的区别。

红外接收头的主要参数如下:

工作电压:4.8~5.3V

工作电流:1.7~2.7mA

接收频率:38kHz

峰值波长:980nm

静态输出:高电平

输出低电平:≤0.4V

输出高电平:接近工作电压

3.红外线遥控发射电路

红外线遥控发射电路框图如图4所示。

框图4是目前所有红外遥控器发射电路的功能组成,其中的编码器即调制信号,按遥控器用途的编码方式可以很简单、也可以很复杂。例如用于电视机、VCD、DVD和组合音响的遥控发射的编码器,因其控制功能多达50种以上,此时的编码器均采用专用的红外线编码协议进行严格的编程,然而对控制功能少的红外遥控器,其编码器是简单而灵活。前者编码器是由生产厂家的专业人员按红外遥控协议进行编码,而后者适用于一般电子技术人员和电子爱好者的编码。图4中的38kHz振荡器即载波信号比较简单,但专业用的和业余用的也有区别,专业用的振荡器采用了晶振,而后者一般是RC振荡器。例如彩电红外遥控器上的发射端用了455kHz的晶振,是经过整数分频的,分频系数为12,即455kHz÷12= 37.9kHz。当然也有一些工业用的遥控系统,采用36kHz、40kHz或56kHz等的载波信号。

因红外遥控器的控制距离约10米远,要达到这个指标,其发射的载波频率(38kHz)要求十分稳定,而非专业用的RC(38kHz)载波频率稳定性差,往往偏离38kHz甚至很远,这就大大缩短了遥控器的控制距离。因晶振频率十分稳定,所以专业厂家的遥控器全部采用晶振的38kHz作遥控器的载波发送信号。

图4中编码器的编码信号对38kHz的载波信号进行调制,再经红外发射管D向空间发送信号供遥控接收端一体化接收头接收、解调输出、再作处理。

利用红外线的特点,可以制作多路遥控器。在遥控发射电路中,有两种电路,即编码器和38kHz载波信号发生器。在不需要多路控制的应用电路中,可以使用常规集成电路组成路数不多的红外遥控发射和接收电路,该电路无需使用较复杂的专用编译码器,因此制作容易。

4.频分制编码的遥控发射器

在红外发射端利用专用(彩电、VCD、DVD等)的红外编码通讯协议作编码器,对一般电子技术人员或业余爱好者来说,是难于实现的,但对路数不多的遥控发射电路,可以采用频分制的方法制作编码器,而对一路的遥控电路,还可以不用编码器,直接发射38kHz红外信号,即可达到控制的目的。

图5是一种一路的红外遥控发射电路,在该电路中,使用了一片ICl高速CMOS型4-2输入的“与非”门74HC00集成电路,组成低频振荡器作编码信号(f1),用IC2 555电路作载波振荡器,振荡频率为f0(38kHz)。f1对f0进行调制,所以IC2的③脚的波形是断续的载波,该载波经红外发光二极管发送到空间。电路中的关键点A、B、B’波形如图2所示,其中B’是未调制的波形。

在图5中,选用了555电路作载波振荡器,其目的是说明电路的调制工作原理,即利用大家熟悉的555产生38kHz方波信号,再利用555的复位端④脚作调制端,即当④脚为高电平时,555是常规的方波振荡器;当④脚为低电平时, 555的③脚处于低电平。④脚的调制信号是由ICl的与非门的低频振荡器而获得。

在实际应用中,遥控发射器是3V电池供电,为此只需把555电路ICl剩余的两个与非门组成的38kHz取而代之,如图7所示。

注意:这里未引用CMOS 4-2输入的“与非”门CD4011作图5电路中的编码器和载波发生器,是因为CD4011作振荡产生方波信号时,属于模拟信号的应用。为了保证电路可靠起振,其工作电压需4.5V以上,而74HC00的CMOS集成电路的最低工作电压为2V,所以使用3V电源,完全可以可靠的工作。

5.遥控接收解调电路

图8为红外接收解调控制电路,图8中IC2是LM567。LM567是一种锁相环集成电路,采用8脚双列直插塑封装,工作电压为+4.75~+9V,工作频率从直流到500kHz,静态电流约8mA。⑧脚为输出端,静态时为高电平,是由内部的集电极开路的三极管构成,允许最大灌电流为100mA。鉴于LM567的内部电路较复杂,这里仅介绍该电路的基本功能。

LM567的⑤、⑥脚外接的电阻(R3+RP)和电容C4,决定了内部压控振荡器的中心频率f01,f01=1/1.1RC,①、②脚接的电容C3、C4到地,形成滤波网络,其中②脚的电容C2,决定锁相环路的捕捉带宽,电容值越大,环路带宽越窄。①脚接的电容C3为②脚的2倍以上为好。

弄清了LM567的基本组成后,再来分析图8电路的工作过程。

ICl是红外接收头,它接收图1发出的红外线信号,接收的调制载波频率仍为3 8kHz,接收信号经ICl解调后,在其输出端OUT输出频率为f1(见图2)的方波信号,只要将LM567的中心频率f01调到(用RP)与发射端f1(见图2)相同,即f0 1=fl,则当发射端发射时,LM567开始工作,⑧脚由高电平变为低电平,该低电平使三极管8550导通,在A点输出开关信号驱动D触发锁存器,再由它驱动各种开关电路工作。这样,只要按一下图1电路的微动开关K,即发射红外线,接收电路图4即可输出开关信号开通控制电路,再按一下开关K,控制开关信号关闭,这就完成了完整的控制功能。

6. 小结

利用图5和图8的电路,可以实现多路遥控器,即在发射端,将ICl组成的低频振荡器,其电路模式不变,只改变电阻R2,即可构成若干种R组成的多个频率不同的低频振荡器(即编码),利用微动开关转接,38kHz的载波电路共用;在接收电路中,一体化红外接收头共用,再设置与接收端编码器相同个数的LM5 67锁相器和后级锁相驱动控制电路,各锁相环的振荡频率与各编码器的低频编码信号的频率对应相等。这样发射端(图5)按压不同的按钮,载波信号接入不同频率编码的调制信号时,在接收端(图8),各对应的LM567的⑧脚的电平会发生变化,从而形成多路控制信号。上述所述的工作方式,称为频分制的编码方式。这种频分制工作方式,其优点是可实现多路控制,但缺点是电路复杂,对于路数不多的控制电路,因电路工作原理简单,对一般电子技术人员仍然是有用的。

光谱位于红色光之外,波长为0.76~1.5μm,比红色光的波长还长,这样的光被称为红外线。

红外遥控是利用红外线进行传递信息的一种控制系统,红外遥控具有抗干扰,电路简单,编码

及解码容易,功耗小,成本低的优点,目前几乎所有的视频和音频设备都支持这种控制方式。

一、红外遥控系统结构

红外遥控系统主要分为调制、发射和接收三部分,如图1 所示:

图1 红外遥控系统

1.调制

红外遥控发射数据时采用调制的方式,即把数据和一定频率的载波进行“与”操作,这样可以提高发射效率和降低电源

功耗。

调制载波频率一般在30khz到60khz之间,大多数使用的是38kHz,占空比1/3的方波,如图2所示,这是由发射端所使用的

455kHz晶振决定的。在发射端要对晶振进行整数分频,分频系数一般取12,所以

455kHz÷12≈37.9 kHz≈38kHz。

图2 载波波形

1.发射系统

目前有很多种芯片可以实现红外发射,可以根据选择发出不同种类的编码。由于发射系统一般用电池供电,这就要求芯片

的功耗要很低,芯片大多都设计成可以处于休眠状态,当有按键按下时才工作,这样可以降低功耗芯片所用的晶振应该有

足够的耐物理撞击能力,不能选用普通的石英晶体,一般是选用陶瓷共鸣器,陶瓷共鸣器准确性没有石英晶体高,但通常

一点误差可以忽略不计。

红外线通过红外发光二极管(LED)发射出去,红外发光二极管内部材料和普通发光二极管不

同,在其两端施加一定电压时,

它发出的是红外线而不是可见光。

图3a 简单驱动电路图3b 射击输出驱动电路

如图3a和图3b是LED的驱动电路,图3a是最简单电路,选用元件时要注意三极管的开关速度要快,还要考虑到LED的正向

电流和反向漏电流,一般流过LED的最大正向电流为100mA,电流越大,其发射的波形强度越大。

图3a电路有一点缺陷,当电池电压下降时,流过LED的电流会降低,发射波形强度降低,遥控距离就会变小。图3b所示的

射极输出电路可以解决这个问题,两个二极管把三级管基极电压钳位在1.2V左右,因此三级管发射极电压固定在0.6V左右,

发射极电流IE基本不变,根据IE≈IC,所以流过LED的电流也基本不变,这样保证了当电池电压降低时还可以保证一定的遥控距离。

1.一体化红外接收头

红外信号收发系统的典型电路如图1所示,红外接收电路通常被厂家集成在一个元件中,成为一体化红外接收头。

内部电路包括红外监测二极管,放大器,限副器,带通滤波器,积分电路,比较器等。红外监测二极管监测到红外信号,

然后把信号送到放大器和限幅器,限幅器把脉冲幅度控制在一定的水平,而不论红外发射器和接收器的距离远近。交流

信号进入带通滤波器,带通滤波器可以通过30khz到60khz的负载波,通过解调电路和积分电路进入比较器,比较器输出

高低电平,还原出发射端的信号波形。注意输出的高低电平和发射端是反相的,这样的目的是为了提高接收的灵敏度。

一体化红外接收头,如图5所示:

图5 红外接收头

红外接收头的种类很多,引脚定义也不相同,一般都有三个引脚,包括供电脚,接地和

信号输出脚。根据发射端调制

载波的不同应选用相应解调频率的接收头。

红外接收头内部放大器的增益很大,很容易引起干扰,因此在接收头的供电脚上须加上滤波电容,一般在22uf以上。

有的厂家建议在供电脚和电源之间接入330欧电阻,进一步降低电源干扰。

红外发射器可从遥控器厂家定制,也可以自己用单片机的PWM产生,推荐使用超小封装(TSSOP20)的STC12C4052AD

或STC12C5406AD,可产生37.91KHz的PWM, PWM占空比设置为1/3, 通过简单的定时中断开关PWM, 即可产生发射波形。

接收部分电路和程序比较简单,这里不一一赘述。

红外遥控解码程序

红外线遥控是目前使用最广泛的一种通信和遥控手段。由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。

1 红外遥控系统

通用红外遥控系统由发射和接收两大部分组成,应用编/解码专用集成电路芯片来进行控制操作。发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路。

2 遥控发射器及其编码

遥控发射器专用芯片很多,根据编码格式可以分成两大类,这里我们以运用比较广泛,解码比较容易的一类来加以说明,现以日本NEC的uPD6121G组成发射电路为例说明编码原理。当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。这种遥控码具有以下特征:

采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms 的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms 的组合表示二进制的“1”。

UPD6121G产生的遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别不同的电器设备,防止不同机种遥控码互相干扰。该芯片的用户识别码固定为十六进制01H;后16位为8位操作码(功能码)及其反码。UPD6121G 最多额128种不同组合的编码。

遥控器在按键按下后,周期性地发出同一种32位二进制码,周期约为108ms。

一组码本身的持续时间随它包含的二进制“0”和“1”的个数不同而不同,大约在45~63ms之间。

当一个键按下超过36ms,振荡器使芯片激活,将发射一组108ms的编码脉冲,这108ms发射代码由一个起始码(9ms),一个结果码(4.5ms),低8位地址码(9ms~18ms),高8位地址码(9ms~18ms),8位数据码(9ms~18ms)和这8位数据的反码(9ms~18ms)组成。如果键按下超过108ms仍未松开,接下来发射的代码(连发代码)将仅由起始码(9ms)和结束码(2.5ms)组成。

3接收器及解码

一体化红外线接收器是一种集红外线接收和放大于一体,不需要任何外接元件,就能完成从红外线接收到输出与TTL电平信号兼容的所有工作,而体积和普通的塑封三极管大小一样,它适合于各种红外线遥控和红外线数据传输。

红外一开始发送一段13.5ms的引导码,引导码由9ms的高电平和4.5ms的低电平组成,跟着引导码是系统码,系统反码,按键码,按键反码,如果按着键不放,则遥控器则发送一段重复码,重复码由9ms的高电平,2.25ms的低电平,跟着是一个短脉冲,本程序经过试用,能解大部分遥控器的编码!

//串口通信程序

//向pc串口发送数据

//pc端使用超级终端建立连接

//9600 8位数据 1位停止

#include <iom16v.h>

#include <macros.h>

#include "uart0.h"

#define uint unsigned int

#define uchar unsigned char

uchar irr_b=0,s_s=0;

uchar wb=0,a=0,ds=0;

long da=0;

uchar d1,d2,d3,d4;

uchar ten_1,ten_2,ten_3,ten_4,i;

void ms(uint aa)

{

for(;aa>0;aa--);

}

void write_cn(uchar *cn,uchar cn_nub)

{
uchar i;

for(i=0;i<(cn_nub);i++)

{

uart_tx(cn[i]); //发送数据i

PORTA=i;

ms(60000);

}

}

//定时器T1初始化

void t1_init()

{

TCCR1B=0x00; //关闭定时器

TCNT1H=0x00; //定时器初值

TCNT1L=0x00;

TCCR1A=0x00; //普通模式

TCCR1B=0x05; //1024分频

}

#pragma interrupt_handler ext_int0_isr:2 //指定外部中断函数//中断接收

void ext_int0_isr(void)

{

if(irr_b==0) //第一个中断

{

irr_b=1; //状态为:开始接收

TCNT1L=0x00; //定时器清零

}

else if(irr_b==1) //第二个以后的中断

{

a=TCNT1L; //读取定时器的值

//判断是引导,还是数据

if((170<a)&&(a<235)) //引导

{

wb=0; //数据计数清零

da=0; //数据清零

TCNT1L=0x00; //定时器清零

}

else if((8<a)&&(a<25)) //数据0

{

wb++;

da=(da<<1);

TCNT1L=0x00;

}

else if((25<a)&&(a<45)) //数据1
}

if(s_s==1) //显示开关打开,开始显示 {

SREG=0x00; //关闭全局中断

//显示设备码

d1=da>>24;

write_cn(&d1,1);

d1=da>>16;

write_cn(&d1,1);

d1=da>>8;

write_cn(&d1,1);

d1=da;

write_cn(&d1,1);

DDRD=0x00; //中断输入

PORTD=0xff; //内部上拉

s_s=0; //关闭显示开关

SREG=0x80; //开全局中断

}

}

}

参考:http://www.everlight-gx.com/cpyy.php?action=show&id=263&category=16

猜你喜欢

转载自blog.csdn.net/jiangchao3392/article/details/81501808