学习型红外遥控器.docx
- 文档编号:9386141
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:14
- 大小:179.55KB
学习型红外遥控器.docx
《学习型红外遥控器.docx》由会员分享,可在线阅读,更多相关《学习型红外遥控器.docx(14页珍藏版)》请在冰豆网上搜索。
学习型红外遥控器
信息与电气工程学院
电子信息工程CDIO一级项目
(2013/2014学年第二学期)
题目:
学习型红外遥控器
专业班级:
电子信息1101
学生姓名:
学号:
指导教师:
马永强老师
设计周数:
15周
设计成绩:
2014年6月4日
1项目设计目的及任务
设计学习型红外遥控器,具有以下功能:
(1)不同电器遥控间模式切换;
(2)学习、发射、退出模式切换;
(3)学习遥控件值并存储、显示;
(4)对存储键值调用、发射,控制电器;
(5)加串口或蓝牙与上位机通信。
2项目设计背景
无线遥控是指利用无线电波、红外线、超声波等作为载体,不用导线,而在空间传输,实现对被控目标的控制。
实现对以家用电器为代表的中小型电器的遥控方法,主要有无线电遥控和红外线遥控。
红外线遥控与无线电遥控相比:
红外光波的波长远小于无线电波的波长,因此红外线遥控信号不会影响其它家用电器,也不会影响到邻近的无线电设备。
另外,红外线遥控不具有无线电遥控那样穿透障碍物去控制被控对象的能力,在设计家用电器的红外线遥控器时,不必要像无线电遥控那样,每套发射器和接收器要有不同的遥控频率或编码,否则,就会隔墙控制或干扰邻居的家用电器,所有同类产品的红外线遥控器,可以有相同的遥控频率或编码,而不会出现遥控信号“串门”的情况,这对于大批量生产以及在家用电器上普及红外线遥控提供了极大的方便;此外,红外线为不可见光,对环境影响很小,同时又具有很强的隐蔽性和保密性。
由此可见,红外线遥控具有结构简单、制作方便、成本低廉、抗干扰能力强、工作可靠性高等一系列优点,是近距离遥控、尤其是室内遥控的优选遥控方式。
3项目设计思路
3.1学习型遥控介绍
学习型红外遥控,可以分为两类:
以固定码格式学习的遥控器和波形拷贝方式学习的遥控器。
前者,需要收集各种不同种类的遥控器信号,然后进行识别比较,最后再记录。
但是,要实现几乎所有的红外遥控器的成功复制就太难了。
因为,红外遥控器的红外编码格式变化太多。
不过这种学习型遥控器对硬件要求相对简单,处理器的工作频率可以不高,存储容量也较小,其缺点是对未知编码的遥控器无效。
后者主要是把原始遥控器所发出的信号进行完全拷贝,而不管遥控器是什么格式,存储在EEPROM等存储器中。
当发射时,只需将储存器中记录的波形长度还原成原始信号即可。
这种学习型遥控器对MCU的主频要求高,RAM要求较大,其优点是对任何一种红外遥控器都可以进行学习。
常用的红外遥控系统一般分发射和接收两个部分。
发射部分的主要元件为红外发光二极管。
它实际上是一只特殊的发光二极管,由于其内部材料不同于普通发光二极管,因而在其两端施加一定电压时,它便发出的是红外线而不是可见光。
目前大量使用的红外发光二极管发出的红外线波长为940nm左右,外形与普通发光二极管相同,只是颜色不同。
接收部分的主要元件为红外接收二极管,一般有圆形和方形两种。
在实际应用中要给红外接收二极管加反向偏压,它才能正常工作,亦即红外接收二极管在电路中应用时是反向运用,这样才能获得较高的灵敏度。
由于红外发光二极管的发射功率一般都较小(100mW左右),所以红外接收二极管接收到的信号比较微弱,因此就要增加高增益放大电路,最近几年大多都采用成品红外接收头。
3.2硬件设计
本设计硬件电路分为两大模块,分别是:
红外线发射模块和红外线接收模块。
用单片机制作的15路电器遥控器,可以分别控制15个电器的电源开关,并且可对一路电灯进行亮度的遥控。
采用脉冲个数编码,4*8键盘开关,可扩充到对32个电器的控制。
图3为该系统遥控发射器原理图,其中P1口和P0口作键扫描端口,具有32个功能操作键;第9脚为单片机的复位脚,采用简单的RC上电复位电路;15脚作为红外线遥控码的输出口,用于输出38KHz载波编码;18、19脚接12MHz晶振。
P0口需接上拉电阻。
图4为该系统遥控接收原理图,其中P1.1-P1.2口作为数码管的二进制数据输出,显示数字为0-7,7代表最亮,0代表最暗,采用4511集成块硬件译码显示数值;P0.0-P0.7以及P2.0-P2.6口作为15个电器的电源控制输出,接口可以用继电器或可控硅,在本电路中,P2.0口控制一个电灯的亮灭;P2.7口为可控硅调光灯的调光脉冲输出;第10脚P3.0口为50Hz交流市电相位基准输入,第12脚为中断输入口;P3.1口用于接收红外线遥控码输入信号。
3.3软件设计
学习型遥控器的设计性能及实现与其软件设计编写具有密切的关系,在设计中采用内部定时器对信号高低电平计时的方法来采集数据并保存。
当系统识别到起始码的低电平时,系统启动内部定时器对输入低电平计时,当起始码的低电平结束时保存定时器此时的值,记录下起始码的低电平信号脉冲宽度值;然后依次保存采集到的编码信号脉冲宽度值,如果采集到编码信号位数大于设定值M(程序中设定值),就认为编码采集已经结束,即学习子程序结束。
在软件设计过程中,使用了2个外部中断和2个内部定时器,外部中断0启动定时器0停止定时器1计数并保存定时器1的数据,外部中断1启动定时器1停止定时器0计数并保存定时器0的数据,用定时器0记录红外解调信号的高电平时长。
用定时器1记录红外解调信号的低电平时长,本文采用12MHz晶振,1个机器周期是1μs,计数器采用16位计数器。
如果在外部中断0和外部中断1之间不发生内部定时器中断,可以记录的最大时间间隔为65.5ms;如果在外部中断0和外部中断1之间发生内部定时器中断则可以记录的最大时间间隔是n×65.5ms,其中n为中断次数。
其值保存在设定的数据存储器中,然后写入到外部E2PROM存储器中。
发射过程再从外部的E2PROM存储器读出,通过用软件模仿38kHz载波信号发送编码信息。
3.3.1数据压缩编码
在设计过程中研究发现:
尽管空调遥控器存在帧格式多样、码型多样、编码长短不同、发送方式不同等问题,但对于某一个独立的空调遥控器还是有规律可依的。
在系统设计方案时,选择通用性好的就能解决这个问题。
例如测得一款空调遥控器的1个命令码如下:
低电平(有红外发送载波)信号码时长数据是:
0x73680x05780x05770x05630x05550x05840x05640x05450x05720x0554……
高电平(无红外发送载波)信号码时长数据是:
……0x05780x13770x05630x05550x13840x05640x05450x13820x05540x01345……
尽管码型有帧头、系统码、操作码、同步码、帧间隔码、帧尾,但不论是低电平(有红外发送载波)信号码时长或是高电平(无红外发送载波)信号码时长其结构都相对简单。
但是1个帧如此多的数据占据了大量的内存空间,增加了硬件成本和程序运行时间,有必要在数据分析的基础上采取数据压缩。
数据压缩根据使用场合和要求的不同分有损和无损压缩。
为了在数据发送时准确再现接收到的红外数据,本文采用无损压缩的方法,使用的编码方式是改进型的游程编码,根据游程编码的原理,游程长度(游程或游长)RL(Run-Length)指的是由信号采样值构成的数据流中各个数据重复重现的长度,只要给出重复的数据、数据长度和位置就可以恢复原来的数据流。
3.3.2编码具体实现过程
(1)在接收红外信号时分别按高电平和低电平不同的时间长度编号(时间长度规定一定的误差范围),每1次测得的数据根据电平持续时间记录其编号,再将同编号的数据相加求平均值作为标准时间长度,根据红外信号格式的不同,可以选择4bit压缩方式和2bit压缩方式,即压缩比达到1/4和1/8。
在接收红外数据时采用的是中断方式,不占用过多的CPU时间,还可以一边学习一边存入E2PROM以达到节省内存空间的目的。
将上述遥控器的1个命令码(其中红外编码长度为150bit,压缩比为1/8)的数据存储在E2PROM中的数据格式如下:
01100101……(共10个字节低电平数据);
11010101……(共10个字节高电平数据);
0x96(字节总长度);
0x13770x05600x05720x370(4个不同的时长);
(2)发送红外数据时,先从E2PROM中读出字节总长度、4个不同的时长及部分高低电平数据,在发送高电平时(即不发送红外载波信号)且时长大于1ms,再读E2PROM数据,这样更可以节省内存空间。
4具体程序介绍
4.1遥控发射及接收控制程序流程图
遥控发射及接收控制流程图如图1和图2所示:
图1遥控发射控制流程图
图2遥控接收控制流程图
图3遥控发射
图4遥控接收
4.2遥控不同模式的切换
学习型遥控器可以控制多种电器,例如:
电视机,电冰箱,空调,电磁炉等。
利用每种电器分配不同的功能界面,来控制不同的电器进行相应的操作。
因为每种电器的控制不一样,所以控制界面需要切换,而且当要选换另一种电器控制界面时,还需要有退出功能,即退出到原始界面从而选择其他功能。
学习型遥控器提供了一种只需较小的存储空间来存储遥控按键数据的存储方法,其技术方案是,学习型遥控器的数据存储方法,其特征在于,包括以下步骤:
进入学习状态;接收目标按键的键码;分析目标按键键码里的引导码、系统码和功能码并判断目标键码里的引导码及系统码与存储器中已存储的引导码及系统码是否相同,若相同直接进入下一步,若不相同就存储目标按键的引导码及系统码,然后进入下一步;存储目标按键的功能码。
本发明的有益效果是,对同一引导码和系统码只记忆一次,只记忆不同按键的功能码,从而大大减少了需要存储的数据,节省了存储器的存储空间。
切换流程图如图5:
图5遥控不同模式的切换
4.3遥控器硬件结构
学习型红外遥控器由红外一体化接收电路、反相器、温度传感器、单片机、红外发送电路、E2PROM存储器、键盘及LED指示灯构成,如图6所示
图6遥控器硬件结构图
单片机AT89S52构成红外遥控的处理器,其数据存储器RAM(258B)用来存储学习过程中编码信号的脉冲宽度和编码。
(1)红外发射电路:
38kHz方波直接由单片机模拟产生,经过三极管放大后,驱动红外发光二极管(注意:
38kHz载波不能用AT89S52定时器产生,因为38kHz载波信号的周期只有26μs,考虑到有载波时的占空比为1/3,即定时器的最小中断时间间隔只有8μs,在执行中断时中断处理过程(如保护现场等)实际运行时间根据中断点的不同需要的时间也不同,有时会大于8μs,这样不能保证38kHz信号的稳定性),在软件处理过程中应用延时程序模仿38kHz的红外载波信号。
(2)红外一体化接收头:
接收器选用一体化红外接收器MK0038,该接收器是黑色环氧聚光透镜,能够滤除可见光的干扰,集红外接收和放大于一体,内含红外线PIN接收管、选频放大器和解调器。
不需任何外接元件,就能完成从红外遥控信号(38kHz的载波信号)中分离出基带信号,输出与TTL电平兼容的所有工作。
在与单片机连接时,将接收来的红外遥控信号反相,其正向信号接外部中断0,反相信号接外部中断1。
通过记录2个中断间的间隔时间来测量红外遥控信号的高低电平的脉宽值。
(3)外接E2PROM存储器:
用于存放学习到的控制命令的编码和高低电平信号的脉宽值。
(4)按键盘:
启动一个学习过程。
(5)温度传感器:
用于测量室内温度,根据已学习的温度控制命令自动开启或关闭空调。
(6)LED指示灯:
用于显示遥控器的工作状态。
5核心电路设计
5.1红外串行通信接口电路设计
单片机控制的红外通信系统主要有红外发射器,红外接收器,以及单片机89C51三部分组成,单片机本身并不具备红外通信接口,可以利用单片机的串行接口与片红外发射和接收电路,组成一个单片机控制系统的红外串行通信接口。
5.2发射部分设计
红外发送电路包括脉冲振荡器、三极管和红外发射管等部分。
其中脉冲振荡器有NE555定时器、电阻和电容组成,用于产生38kHz的脉冲序列作为载波信号,红外发射管HG选用Vishay公司生产的TSAL6238,用来向外发射950nm的红外光束。
其发送的过程为:
串行数据有单片机的串行输出端TXD送出并驱动三极管,数位“O”使三极管导通.通过有NE555构成的多谐振荡电路调制成38kHz的载波信号,并利用红外发射管以光脉冲的形式向外发送。
数位“l”使三极管截止,红外发射管不发射红外光。
NE555构成的多谐振荡电路的振荡周期公式为T=O.693(R1+R2)C,其中,R1为充电电阻,R2为放电电阻,C为充电电容。
5.3红外接收器的设计
红外接收电路选用Vishay公司生产的专用红外接收模块TSOP1738。
该模块是一个三端元件,使用单电源+5V供电,具有功耗低、抗干扰能力强、输入灵敏度高、对其他波长(950nm以外)的红外光不敏感的特点,其内部结构框图如图7所示。
图7TSOP1738内部结构框图
TSOPl738的工作过程为:
首先,通过红外光敏元件将接收到的载波频率为38kHz的脉冲红外光信号转换为电信号,再由前置放大器和自动增益控制电路进行放大处理。
然后,通过带通滤波器进行滤波,滤波后的信号由解调电路进行解调。
最后,由输出级电路进行反向放大输出。
6系统的功能实现方法
1)遥控码的编码格式
该遥控器采用脉冲个数编码,不同的脉冲个数代表不同的码,最小为2个脉冲,最大为17个脉冲。
为了使接收可靠,第一位码宽为3ms,其余为1ms,遥控码数据帧间隔大于10ms,如图8所示:
图8遥控码的编码格式
2)遥控码的发射
当某个操作按键按下时,单片机先读出键值,然后根据键值设定遥控码的脉冲个数,再调制成38kHz方波由红外线发光管发射出去
3)数据帧的接收处理
当红外线接收器输出脉冲帧数据时,第一位码的低电平将启动中断程序,实时接收数据帧。
在数据帧接收时,将对第一位(起始位)码的码宽进行验证。
若第一位低电平码的脉宽小于2ms,将作为错误码处理。
当间隔位的高电平脉宽大于3ms时,结束接收,然后根据累加器A中的脉冲个数,执行相应输出口的操作。
图9红外线接收器输出的一帧遥控码波形图
7项目设计心得
本学期学习单片机的时间很短,对设计掌握的深度不够,但通过此次课程设计,却改变了很多,首先,对于硬件电路的工作原理有了进一步的学习,同样就有了进一步的认识;其次,软件方面,在程序的设计,学到了很多东西,特别是应用到汇编语言,这也是很重要的知识。
在汇编中出现问题时,一定要戒骄戒躁,脚踏实地,认真看书,仔细分析,仔细调试,就一定会发现错误,克服困难,我也是这么做的,这在课程设计中十分重要。
在大学课堂的学习只是纯理论的专业知识,而我们应该把所学的用到现实生活中去,此次的音乐播放器设计给我奠定了一个实践基础,我会在以后的学习、生活中磨练自己,使自己适应社会激烈的竞争。
在这次的课程设计过程中,无论是在理论学习阶段,还是在设计的选题、资料查询和撰写的每一个环节,我都得到到了许多人的悉心的指导和帮助。
设计学习型红外遥控器的时间花的算比较多,不是从XX里找就是从老师给的资料里一个一个拼凑起来。
这次的设计是基于一定的模版才设计出来的,好多不懂,都是从头学。
感觉最难的是汇编语言的编程,从开始的每个电路的设计,继而是子程序,最后让整个程序流畅连贯,花了好多精力过去。
同时,我要感谢授课的老师,正是由于你们的传道、授业、解惑,让我学到了专业知识,并从你们身上学到了如何求知治学、如何为人处事。
8参考文献
[1]苏长赞,周殿贵,红外线与超声波遥控(第二版)[M].北京:
人民邮电出版社2001
[2]李明利,一种新颖实用的红外线遥控系统[J].现代电子技术,2001
[3]张毅刚,单片机原理与应用[M].成都:
电子科技大学出版社,2000.
[4]李迟生,智能遥控器的设计[J].电子技术应用,2000
[5]李广弟,单片机基础[M].北京:
北京航空航天大学出版社,1994
[6]陆先海.复合材料的数字化射线照相检测[J].航空制造技术,2006(01)
项目设计
评语
项目设计
成绩
指导教师
(签字)
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学习 红外 遥控器