APP下载

分体式空调红外遥控编解码研究及应用

2015-11-01金建超江苏联宏自动化系统工程有限公司

精品 2015年12期
关键词:红外线遥控器遥控

□ 金建超 江苏联宏自动化系统工程有限公司

分体式空调红外遥控编解码研究及应用

□ 金建超江苏联宏自动化系统工程有限公司

本文首先介绍了红外通信的基本原理,然后提出一种利用Neuron芯片边沿记录输入对象采集遥控器编码,分析得出编码脉冲组中每个脉冲的宽度、各个字节数据的方法。介绍一种基于Neuron的红外遥控编码的软件实现。为各类红外遥控控制在LonWorks节点设备中的开发应用提供一个参考。

Neuron 芯片;红外遥控;编解码;研究

红外遥控使用方便、功耗低、成本低廉,已经得到了广泛应用。但都是针对各自的遥控对象(彩电、空调、DVD等),由专用CPU解码,作为一般的单片机控制系统不能直接使用。本文探讨了如何参考红外遥控系统的原理,自行设计解码电路和解码、控制程序,利用现有遥控器使普通单片机控制系统嵌入红外遥控技术。

1.红外通信原理

红外通信,即以红外线作为通信载体,通过红外光在空中的传播来传输数据的通信方式,它由发射端和接收端来完成。在发射端,发送的数字信号经过适当的调制编码后,送入电光变换电路,经红外发射管转变为红外光脉冲发射到空中;在接收端,红外接收器对接收到的红外光脉冲进行光电变换,解调,再经单片机处理,便可以恢复出原数据信号。

2.红外遥控编码

目前应用中的各种红外遥控系统的原理都大同小异,区别只是在于各系统的信号编码格式不同,这里我们以运用比较广泛,解码比较容易的一类来加以说明,现以日本NEC的uPD6121G组成发射电路为例说明编码原理。发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。这种遥控码具有以下特征:采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”,其波形如图2所示。

图2 遥控码的“0”和“1”上述“0”和“1”组成的32位二进制码经38kHz的载频进行二次调制以提高发射效率,达到降低电源功耗的目的。然后再通过红外发射二极管产生红外线向空间发射,如图3所示。

图3 遥控信号编码波形图

UPD6121G产生的遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别不同的电器设备,防止不同机种遥控码互相干扰。该芯片的用户识别码固定为十六进制01H;后16位为8位操作码(功能码)及其反码。UPD6 121G最多额128种不同组合的编码。遥控器在按键按下后,周期性地发出同一种32位二进制码,周期约为108ms。一组码本身的持续时间随它包含的二进制“0”和“1”的个数不同而不同,大约在45—63ms之间,图4为发射波形图。

图4 遥控连发信号波形

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

图5 起始码 连发码

3.遥控信号接收与解码

3.1红外接收电路

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

接收器对外只有3个引脚:Out、GND、Vcc与单片机接口非常方便,如图6所示。

脉冲信号输出接,直接接单片机的IO 口;2)GND接系统的地线(0V);3)Vcc接系统的电源正极(+5V)。

3.2红外解码过程

下面以志高空调遥控器为例,介绍一下红外解码的过程。将逻辑分析仪测试引脚接到红外接收管输出管脚,对准接收管按下遥控器,得到以下波形。

通过分析仪的测量功能可以得出遥控编码协议格式:

将Neuron芯片IO4设置为边沿记录输入对象

IO_4 input edgelog clock(7) io_time_stream;

IO_4 input byte io_time_stream_level;

通过定义边沿记录输入对象,Neuron可以用于连接诸如UPC条形阅读器或红外接收机等I/O设备。通过测量IO_4引脚输入的比特流上升沿(默认)或下降沿之间的时间周期,来分析这些I/O设备产生的复杂波形。

将测量到的时间周期通过网络变量输出:

为方便分析将以上数据放到excel中分析(表格略).通过表格分析,将0/1比特流转换成8位byte,转换时低字节在前,高字节在后(LSB)。可以看出这组波形解码后得到的数据为:

起始码 + {0xff,0x00,0xff,0x00,0xff,0x00,0x87,0x78,0xd5,0x2 a,0x2a,0xd5} + 结束码。

4.遥控信号的发送

4.1红外发送电路

红外发送时由PWM引脚产生38K调制信号,由FR_TX引脚输出相应的红外编码信息。实现相应的红外指令遥控控制。

4.2红外编码过程

红外编码即将解码得到数据按对应的红外协议转出成高低电平时序流发送出去,是解码的逆过程。

发送起始码:

Infrsend_L;

scaled_delay(480); // 约6.11MS

Infrsend_H;

scaled_delay(590); // 约7.412MS

发送bit“1”:

Infrsend_L;

scaled_delay(40); // 约0.53ms

Infrsend_H;

scaled_delay(133); // 约1.685ms

发送bit“0”:

Infrsend_L;

scaled_delay(40); // 约0.53ms

Infrsend_H;

scaled_delay(40); // 约0.53ms

发送结束码:

Infrsend_L;

scaled_delay(40); //约0.53ms

Infrsend_H;

scaled_delay(590); //约7.43ms

Infrsend_L;

scaled_delay(40); //约0.53ms

Infrsend_H;

红外发送子程序软件流程图:

5.结语

本文介绍了利用Neuron芯片边沿记录输入对象进行红外解码的详细方法。在实际应用中红外编码都有规律可循,例如同一遥控器温度、模式等指令代码都在固定的比特位,根据这些规律能进一步简化解码过程加快解码效率。目前以上所介绍的遍解码方法已经应用到多个工程项目中,实现了分体式空调的温度模式远程红外控制的功能。使得分体式空调的用能监测,统一控制管理成为可能。

[1]杨育红.《LON网络控制技术》,2001

[2]Echelon Corporation.《Neuron C Programmers Guide》

[3]Echelon Corporation,《5000 Databook》

[4]Echelon Corporation,《I/O Model Reference》

[5]Echelon Corporation,《LonMark SVNT Master List》

猜你喜欢

红外线遥控器遥控
如何遥控引爆的
红外线应用在体检人群的效果探讨
看不见的光——红外线与紫外线
我是“糊涂虫”
时间遥控器
爸妈有个“遥控器”
他是如何遥控引爆的
行走的飞行遥控器
红外线控制自动水龙头的设计
遥控赛车