基于智能家居的APP红外控制系统
2019-07-09王美确陈明霞
王美确 陈明霞
摘 要:为了解决NEC协议编码的遥控器通信距离不高,智能化程度低等问题,设计了一种基于智能家居的手机APP红外控制系统。系统采用STC89C52单片机作为控制核心,通过红外接收头采集信息,采用蓝牙传输通信方式将接收信息进行解码存储到系统。经测试,本控制系统能够接收采用NEC协议编码的红外信息,将其存储到AT24C02,同时可以通过按键或者手机APP发送红外编码信息,一定程度上满足了智能家居的有效控制需求。
关键词:STC89C52;蓝牙;AT24C02;解码
网络的飞速发展使手机成为了人们日常生活不可或缺的一部分,手机系统应用程序可直接控制家庭相应电气设备已经成为可能。[1]
本文设计智能家居的APP红外控制系统。系统可以取代NEC协议编码的所有红外遥控器。多个遥控器的密钥代码信息可以在控制系统自适应学习,由于系统的延展性,新电气设备的红外信号都能被系统的学习功能学习,进而被系统控制,以克服独立多个遥控器带来的不便。在使用时,只通过系统面板按键或手机APP发送相应信息,就能控制与之对应的智能设备。不同的红外电器设备所能够识别的红外信号编码信息不同,[2]这为本系统同时学习多个红外遥控器的红外信号编码信息提供了可能。
蓝牙技术实现控制系统与手机之间通信。操作过程更快速简单,手机APP客户端可直接控制相应的电气设备,方便快捷,一定程度上满足了智能家居的有效控制需求。
1 系统设计思路与实现功能
手机APP红外控制系统按键为擦除按键、功能按键、信号发射按键等。硬件部分采用蓝牙模块、红外信号接收器、红外信号发射器灯。系统具有学习、红外信号发射两种模式,红外信号发射模式又可切换为手动或自动模式。系统框图如下所示。
红外控制系统处于学习模式可以学习多个采用NEC协议方式编码的红外信号,并将其存储到外接存储电路中;当手机APP蓝牙连接可操作系统进行红外信号调用实现无线遥控。
系统还可以通过按键对系统的工作模式进行设置,同时可以通过其他一些红外信息指令发送按键发送存储在AT24C02中的红外信号。在发送红外信号时,由于不同的电气设备所接收到的红外编码信息是唯一的,发送所有红外信号,特定电气设备只能接收特定红外信号。因此,所发送的红外信号不会启动其他的电气设备而导致出现混乱。
2 系统硬件设计方案
本次设计使用STC89C52单片机作为控制核心。红外发射器为本设计控制系统输入设备,红外发射器与单片机的外部中断1相连接,当接收到红外信号的时候才能够响应时申请中断,单片机动作并进行红外信号接收并对其进行解码。
按键中功能按键来切换工作模式,实现系统学习模式与红外信号发射模式切换。四个红外信号发射按键可发射相应的红外信号。外接存储器为AT24C02非易失性存储器,能够多次进行擦除与写入操作,能够满足智能家居红外信号控制要求。[3]
红外一体化接收头是由放大电路和红外接收管组成,可以接纳脉冲编码调制红外光信号,具备体积小,密封性好,灵敏度高,价钱低等优点。[4]本设计采用1383一体化接收头,其解调频率为38KHZ,当系统接收到38KHZ红外脉冲信号时向单片机发出中断信号申请中断,触发单片机工作。
蓝牙HC-06作为手机与系统交互媒介,蓝牙连接到STC89C52单片机串口与单片机进行串口通信。波特率为9600bps,系统采用11.0592MHZ晶振,数据传输在波特率为9600bps时没有误差。[5]蓝牙与手机连接之后,如果手机发出红外发射的指令,指令通过串口传输到单片机串口引脚申请中断,此时红外信号被单片机接收并进行相应工作。
3 系统软件设计
系统开始工作后,首先初始化变量,从AT24C02存储器中读出数据。从主函数后开始反复检测是不是有功能键被按下的指令,功能键被按下时则处于学习模式,当处于学习模式时,系统检测是否接收到红外信号并且有相对应的按键按下,如果没有则继续处于红外学习模式,如果有则将接收到的红外信号存储到AT24C02中。如果进入主函数时没有功能键按下,则表明当前系统处于红外信号发送模式,可以通过系统面板上面的非功能按键发送红外信号。系统成功连接上蓝牙,就以通过手机APP发送相应指令去控制系统发送红外信号,软件流程图如下所示。
4 系统调试
红外控制系统调试采用系统硬件总体焊接完成后再逐步调试方案,主要检查系统接线焊接错误、最小系统是否能够正常工作、各个模块是否能够正常上电,、器件是否工作正常等情况。
遥控器发射的红外信号是一系列的高低电平编码信息,在解码时对高低电平获取的方法不当,最后解码得到的信息失真,导致最后系统发射出来的红外信息与原信息不同。
通过文献[6],获得蓝牙连接步骤:
(1)蓝牙模块先配置成从模式。
(2)KEY引脚一定要悬空或接地,再接通电源。
(3)将蓝牙模块经过串口与单片机向连接,在单片机程序中预先设置好波特率,本次使用波特率为9600。
(4)手机上安装APP。
(5)打开手机上的蓝牙功能。
5 系统测试结果及分析
经测试,红外系统能够实现预期的所有功能。当按下功能键时,系统可以进入指令模式与学习模式两种发送模式。
学习模式将所要学习遥控器,对准系统红外接收端口,根据控制平台上不同按键,将红外信号存储到存储器中。电气设备可以通过控制面板上按键控制,同时也可以使用手机打开蓝牙APP连接蓝牙向终端发送相应的指令直接控制对应的电气设备。根据测试结果的科学性与实用性,智能家居的APP红外控制系统能够准确的满足用户的需求,控制系统具有准确性和可靠性。
6 总结
本次设计采用STC89C52单片机作为系统控制器,设计出智能家居的APP红外控制系统,解决了多种红外家电遥控器独立感应带来的各种不便。利用单片機作为控制器,以数字量来对各个模块进行控制以达到效果,经过测试得出设计方案可行,各个模块也都能正常运行。计时功能由单片机的内部定时器来完成,也是本次设计最重要的部分。这对于各种红外系列的家庭电器来说具有很大的市场前景。
参考文献:
[1]汪顺舟,赵怀林,郝旭耀,等.智能管家机器人家电控制系统设计[J].上海应用技术学院学报(自然科学版),2016,16(2):170-174.
[2]聂诗良,李磊民.红外遥控信号的一种编码解码方法[J].仪表技术与传感器,2004(8):28-29.
[3]于秀云.智能打铃器的原理及设计应用分析[J].硅谷,2014(12):23-24.
[4]陈飞鹏.基于STC89C52单片机智能小车设计[J].硅谷,2012(11):43-44.
[5]蒋俊,刘天宇,简雨沛.蓝牙智能小车系统设计[J].信息技术与信息化,2015(6):166-167.
[6]赵婉祯,吴成东,马斌,等.蓝牙接入BACnet的智能家居技术设计与实现[J].电子产品世界,2004(22):77-79.