王航宇
(西安航空职业技术学院电子工程学院,西安710089)
随着电子技术与无线通信网络的飞速发展,数字化家电控制系统已成为未来家电装饰发展的最新方向。目前日常家用电器,虽已经集成一些定时操控,但功能有限,遥控关机状态仍有功耗,无法有效切断电源。阶梯电价的实施,对普通用户来说,家用电器的待机或关机状态的耗电也是电费来源之一。因此,需设计一套可随时便捷控制家电工作状态的控制系统,使能源与电费开支得以有效节约。
常见短距离无线通信有[1-2]:基于 IEEE802.15.4标准的低功耗个域网协议(Zigbee)、射频识别技术 RFID(Radio Frequency Identification)、蓝牙(Bluetooth)、点对点红外通讯(Infrared Ray)、使用802.11标准协议的局域网(Wi-Fi)和无载波通信UWB(Ultra Wideband)等,这些技术各有千秋,之间又存在着相互竞争,但在某些实际应用领域,它们又相互补充,其有效距离范围与传输速率范围如图1所示。
图1 常见短距离无线通信有效范围与传输速率示意图
智能手机的普及,使蓝牙技术得到了迅速的发展,现已普及到普通家庭,而且普通家庭的住房大小,正好在蓝牙的有效传输距离内,亦可使蓝牙得到充分的利用,目前UWB标准化的工作还没有完成,需进一步发展,而ZigBee以及Wi-Fi更适用于别墅家庭局域网的组建。因此,本文设计将选取蓝牙技术作为室内短距离通讯。
本设计家电控制系统主要分为远程无线控制,室内短距离无线控制,其拓扑结构如图2所示。
图2 家电控制系统网络结构图
远程无线控制的实现,主要依靠用户手机通过无线移动基站向家电主控制模块发送命令消息,主控模块通过室内短距离无线蓝牙对用户命令进行响应;当用户在户外时,室内短距离蓝牙无线控制,主要响应来自主控模块操作命令,当用户在室内时,将响应来自用户手机蓝牙的指令。
家电控制系统中的微处理器的选择与设计有2种方案:方案1,GSM/GPRS通信模块与蓝牙模块均以串行方式与微处理器进行通信,故可选择含有2个串口的微处理器,如STC12C5AXX系列的相关型号;方案2,通信模块与蓝牙模块同时共用微处理器的一个串口。本文设计,将采用方案2的共用方式,选取STC89C51RC单片机作为信息交互的处理器。
家电控制系统主要包括:远程GSM/GPRS通信模块电路,蓝牙模块通信电路以及执行电路。执行电路主要由对继电器的控制来完成,以下主要阐述通信模块与蓝牙模块的应用设计。
GSM/GPRS通信模块选取SIMCOM公司的SIM900A[4]尺寸较小的双频无线通讯模块。该通信模块电源部分为3.8 V,非典型固定电压,而且瞬间电流可以达到2 A。本设计选择可调输出电压芯片LM2596,LM2596输出电压范围为1.2 V~37 V,瞬间可以通过最大电流达到3 A,完全符合电路要求。其SIM900A的电源模块如图3所示。
图3 SIM900A电源模块
微处理器与GSM/GPRS通信模块示意图如图4所示。
图4 SIM900A通信模块应用电路图
GSM/GPRS通信模块为静电敏感器件,故电路中需加入静电防护措施。设计中采用STM公司专为静电敏感器件设计的ESDA6V1W5芯片,该器件可承受瞬间静电25 kV,漏电流小于1 μA。
由于所使用的微处理器为5 V接口电压,而SIM900A接口电压为2.8 V左右,因此需要在两者之间加一电平转换芯片,如图4所示,本系统采用NL27WZ07芯片,实现 SIM900A与微处理器STC89C51RC之间的电平转换。
蓝牙模块采用南京国春电气设备有限公司出品的GC-02蓝牙模块,该CLASS2蓝牙模块设计采用了CSR公司的AUDIO-FLASH蓝牙芯片,外围主要元器件选型采用工业级标准,贴片式设计,自带高效板载天线,可完全满足普通家庭基本电器控制的要求。
蓝牙模块接收用户命令(该命令可由主控蓝牙发出也可由用户智能手机的蓝牙发出),并响应指令对电器操控。其接线示意图如图5所示。
图5 蓝牙模块应用电路图
通过单片机串口向SIM900模块的串口发送AT命令[4],实现短消息服务,分组数据等应用。AT指令主要有测试、读、写、执行命令4个种类,每句AT指令以“AT”开始,以“回车”结束。不区分大小写。命令发送成功后设备回复响应信号。
SIM900A模块上电启动后,自动输出“RDY”后,才能够通过AT指令正常通信。
短消息(SMS)格式主要有3种:BLOCK、TEXT和PDU 3种格式,BLOCK现在几乎被淘汰;TEXT模式是基于ASCⅡ码字符的一种结构模式,每条命令容易读懂,实现容易,但不能收发中文短消息。PDU(protocol description unit,协议数据单元)模式被所有手机支持,这也是默认的手机编码方式。
AT指令多达上百个,涉及到传真、语音、短消息、分组数据等等,因此只介绍和本系统相关的短消息中常用到的AT控制命令如表1所示。
系统在收到来自用户的短信指令,并在执行完命令后会回复一条确认信息。PDU字符串的发送和接收,在结构有很大的区别,发送短消息数据格式为:SMSC-PDU-MODE-MR-DA-PID-DCS-VPUDL-UD;接收短消息数据格式为:SMSC-PDUMODE-OA-PID-DCS-SCTS-UDL-UD。
表1 SMS相关控制命令
其中,SMSC,短消息业务中心地址;OA,短消息原发手机地址;DA,短消息的目的地址;PID,远程设备进行协同工作的标示,需要服务商支持;DCS,表示数据编码的方法和消息的类别;UDL,用户数据长度;UD,用户数据;VP,短消息在接收到短消息后,在没有发到目的手机前可以保证短消息存在的时间;MR,1个字节,表示移动台向短消息服务中心提交的短消息序号,一般从0到255;SCTS,服务中心时间戳,告诉目的用户短消息到达的标准时间。
主控制部分,在蓝牙模块处于待机状态的时候,当从串口UART接收到了单片机发送过来的“文件发送指令SN”之后,蓝牙模块将向子系统,当子系统允许接收后,将文件内容发到子系统中,发送结束后,返回待机模式,子系统经判断后对相应的电器进行操作。
普通蓝牙手机一般只支持对象交换协议OPP,没有支持串口通信SPP的应用程序,所以当用户处于室内时,蓝牙模块与蓝牙手机之间将发起基于OPP协议的呼叫。
蓝牙模块GC-02的无线通讯的流程图如图6所示。
图6 蓝牙无线通讯流程图
当主控部分蓝牙模块向子系统蓝牙模块发送信息时,需由主控单片机做进一步判断——判断待发的内容长度究竟是大于251 byte、还是小于等于251 byte,因为不同的长度需要以不同的指令格式发送。
假设单片机判断出待发送内容大于251 byte,那么就先将从最高位开始的251 byte进行一次打包发送,打包发送的目的是为了减少在传输过程中的出错几率。
数据包的发送指令格式是:
SD<数据包长度251(0xFB)><251 byte数据的内容><结束符(XOR NOT)(单字节)>
各部分含义具体如下:
SD:数据包发送指令特指标识符
数据包长度:由于发送的是大于251 byte的内容,所以直接发送251的十六进制0xFB
结束符:文件发送指令结束符,具体是由整个指令的每一个字节(结束符自己除外)的相互异或之后,再将异或后的结果取反作为结束符。
当蓝牙手机成功的收到数据包之后,会返回给蓝牙模块“nextpc”,则蓝牙模块也同时将“nextpc”返回给单片机,表明第一个数据包发送成功,然后单片机就会继续发送剩下的内容。如果蓝牙模块没有正确收到数据包,则返回给蓝牙模块“redata”进行重发操作,蓝牙模块同时将“redata”返回给单片机,此时单片机就会将刚才发送的数据包重新发送一次,此过程将一直重复直到蓝牙收集正确收到单片机发送的数据包为止。
上述文件发送过程只有一种情况将会自行终止,就是当蓝牙手机移出了蓝牙模块的有效通讯范围之外的时候(一般以10 m为限)。当此情况发生的时候,将由蓝牙模块返回给单片机“discon”,此时单片机收到了“discon”则同蓝牙模块一起终止数据传输操作,并一同返回待机状态。
如果单片机判断出待发的内容长度小于等于251 byte,则进行最后数据包的发送。最后数据包的发送指令格式是:
SL<数据包长度(单字节)><数据的内容(双字节)><结束符(XOR NOT)(单字节)>
本文所设计的家电控制系统,成功结合了STC89C51RC微处理器的强大功能、GSM/GPRS网优质的传输性能,具有低成本、低功耗、技术成熟、扩展方便等优势,实现了远程与室内控制的简便切换,为普通用户家电管理,提供了有效途径,同时对家庭智能化家居控制系统的研究以及日用智能电器遥控统一问题的研究,具有一定的指导意义。
[1]周经凯,麻信洛.智能家居控制系统中的无线技术应用与设计[J].工业控制计算机,2008,21(1):36-37.
[2]黄卉.智能家居控制系统的设计与实现[J].电脑知识与技术,2011,7(2):449-450.
[3]高明明,惠晓威,林森.基于GSM短信的智能家居控制系统的研究[J].微计算机信息,2010,26(34):79-81.
[4]翟顺,王卫红,张衎,等.基于SIM900A的物联网短信报警系统[J].现代电子技术,2012,35(5):86-89.
[5]赵霄.基于单片机的蓝牙接口设计及数据传输的实现[D].北京:北京交通大学,2008.
[6]杨瑞.基于蓝牙通信的短信平台设计与实现[J].计算机应用与软件,2011,(28)2:218-219.
[7]周圆.蓝牙家庭网络家电模拟器及远程控制系统设计[D].天津:天津大学,2008.
[8]周倩.基于蓝牙的数字家庭网络框架设计研究[D].长沙:长沙理工大学,2010.