王洋洋,郭 斌,孙 伟
(新疆农业大学 计算机与信息工程学院,新疆 乌鲁木齐 830052)
目前在家庭中使用的开关大多为墙壁开关,墙壁内埋线工程非常复杂,出现问题不易解决,且老人、儿童、残疾人使用起来不方便。光线是自然醒的必要条件,通过灯光唤醒,人们逐渐从熟睡过渡到浅睡,直到醒来。而物联网技术可以使用无线方式实现物与物之间的感知、通信和相互控制,可以解决上述问题,并给人们带来更多的便利。
近年来,物联网技术唤起了信息技术行业的第三次浪潮[1],国内外政府和一些企业都特别重视物联网的构建。它包含了传感器,通信,计算机等多项技术,用途十分广泛[2],涉及到门禁管理,工业检测,环境保护,智能交通,城市管理,溯源管理等各方面的应用[3]。在家居使用中,海尔正在推广U-home物联网智能家居战略,通过使用ZigBee协议使冰箱、摄像头、空调等与Haier设备相连[4]。目前,基于物联网技术通信和控制开关的研究也相对较少,由于房屋中使用频率最高的电器设备大多是照明系统,所以本设计以控制照明系统为研究对象,实现多种无线控制方式,为后期的基于物联网技术的家居智能设备的研发奠定基础。
系统主要由蓝牙接收模块、GSM接收模块、驱动继电器模块、变压模块、定时设置模块等部分组成。通过蓝牙、GSM接收模块向单片机传送指令,1602液晶显示屏显示时间,扬声器给予时间提醒,经各模块相互配合工作实现无线控制灯光的控制功能,灯光控制系统功能如图1所示。
图1 灯光控制系统的功能图Fig.1 Function diagram of light control system
本系统以STC12C5A60S2单片机为系统的主控芯片,DS12C887+时钟芯片配合其工作,采用SP2338DP多串口扩展芯片作为蓝牙模块、GSM模块与单片机串口相连的桥梁。利用单片机对接收到的指令进行判断,该系统还增加了芯片组PT2262/2272,经放大电路配合常开型继电器完成相应的控制,通过串联IN4007二极管,用以完成电压的变化,从而起到调节灯光的亮度状态,实现了无线控制灯光系统的功能。原理图设计如图2所示。
图2 系统的原理图Fig.2 The schematic diagram of the system
蓝牙和GSM模块使用串口与单片机通信,本系统中STC12C5A60S2单片机仅提供一个UART串口,利用SP2338DP多串口扩展器,可以解决蓝牙模块、GSM模块不能同时与单片机串口相连的问题。
蓝牙模块是无线控制系统的重要组成部分,其通信协议采用蓝牙V2.0协议标准,核心模块使用HC-07从模块,引出接口包括 STATE、EN、VCC、GND、TXD、RXD 连接单片机串口[5]。蓝牙模块RXD端连接SP2338DP的TX0端;蓝牙模块TXD端连接SP2338DP的RX0端;蓝牙模块5 V端连接电源模块的5 V端;蓝牙模块GND端连接电源模块的GND端。
GSM模块通过RS-232接口与设备相连,经过单电源电平转换芯片MAX232芯片处理后,将信号传给多串口扩展芯片SP2338DP,其中MAX232的T2IN端连接SP2338DP的TX1端;MAX232的R2OUT端连接SP2338DP的RX1端。详细连接方式如图3所示。
在通过手机蓝牙方式发送指令之前,手机需要安装Arduino连接程序,打开安装好的APP并与蓝牙模块连接,蓝牙模块上的LED指示蓝牙连接状态,闪烁时表示没有连接,常亮时表示蓝牙已经连接成功并打开了端口。当该用户首次连接时,手机会弹出要求输入配对密码窗口,手动输入密码就可以连接蓝牙模块,以后再次连接则会自动配对。在手机端输入 ‘on’、‘high’、‘low’、‘off’、‘y5’、‘y30’‘open’、‘close’等字符,系统即可实现控制灯光的状态,其中8个字符分别用于控制A灯的打开、强光、弱光、关闭、延时5秒后自动关闭、延时30秒后自动关闭、打开B灯、关闭B灯。单片机接收到数据之后将原数据返回给手机APP并在屏幕显示,以确认指令是否发送成功。若此时手机蓝牙发送端与系统的蓝牙接收模块的距离超出可接收信号的范围,可通过编辑短信发送指令至GSM接收模块,执行相应的操作。
通过芯片组PT2262/2272红外遥控的无线控制方式与灯光系统直接相连,采用锁存输出PT2272解码芯片,只要接收端成功的接收到相应指令,系统设备就能一直保持对应的电平状态,直到再次接收到不同的指令,才发生电平状态的改变。在遥控端按下‘A’、‘B’、‘C’、‘D’4 个按钮中的一个,系统即可实现控制灯光的状态,其中四个字符分别用于控制A灯的打开、强光、弱光、关闭。
图3 蓝牙模块、GSM模块与单片机连接示意图Fig.3 Bluetooth module,GSM module and MCU connection diagram
设计采用DS12C887+时钟芯片,该芯片可用于产生日期、星期、时间等信息,控制芯片可通过自动采集它的时间信息来控制定时。利用模块上的S1、S2、S3、S4 4个按键,系统即可实现定时控制的设定[6]。当系统到达定时提醒时刻,处理器立即向P2.3输出低电平,经放大电路驱动扬声器进行声音提醒,并同时向P2.6输出低电平,经放大电路驱动B灯工作,此时灯光与蜂鸣器同时工作,若只需要关闭扬声器报警可通过手机APP端发送相应的字符如:‘shut’、‘douse’或通过按下设备上S5按键关闭灯光和扬声器报警。
依据功能,系统软件可划分为如下模块:
1)系统初始化,包括串口初始化模块,数据初始化模块,定时器初始化模块,蓝牙初始化模块和GSM初始化模块,如图4所示。
系统初始化函数如下:
图4 系统初始化流程图Fig.4 Flow chart of the system initialization
2)短信发送指令模块设计:通过手机编辑短信的形式发送相应的指令字符到GSM接收端,经过GSM模块的RS232串口将接收到的指令提取出来传给单片机并执行相应的操作。
3)蓝牙接收指令模块设计:蓝牙模块将接收到的指令经模块的RXD、TXD传给串口扩展芯片SP2338DP,最终传给单片机待处理,若单片机成功接收到指令,则通过程序判断后执行相应的驱动继电器操作,并选择SP2338DP的RX0、TX0接收串口后,将接收到的指令重新发送给手机APP。如图5所示。
图5 接收指令流程图Fig.5 Flow chart of the receive instruction
4)定时控制模块设计:包括按键扫描、中断控制的设计,若有按键按下,则开始设置提醒时间,设定成功并退出后屏幕显示当前时间,若到达预订时刻,则启动相应继电器照明,如图6所示。
图6 定时控制流程图Fig.6 Flow chart of the timing control
本系统在控制方面共由蓝牙控制模块,GSM控制模块,红外控制模块和定时控制模块4个部分组成。手机蓝牙模块控制灯光系统的有效距离大约10 m,只需简单发送一个指令就可以很方便的在有效范围内进行操作。若超出蓝牙设备的可接收范围,GSM方式则可以弥补蓝牙方式传输距离的不足。红外控制模块可以防止因手机发生故障时而无法操作设备,并且可以很方便的移植到家庭遥控器上,是以上两种设备功能上的补充。用户可根据需要对灯的光照强弱进行调整,也可通过设置延时的时长来减少关灯的操作,给夜晚起床的人们带来了许多方便之处。通过使用定时功能,可以以声、光等形式准时的唤醒人们。本设计不但实现了灯光与定时器的结合,同时也实现了智能家居中的多种无线灯光控制,由此可推广到操作房屋内所有需要控制的设备,也为下一步开发更方便的基于物联网的控制设备奠定了基础。
[1]李金莹,张日升,杨宏业,等.基于物联网技术的设施农业自动控制系统[J].电子设计工程,2014(21):97-100.
[2]葛东,张国海,胡国栋,等.物联网技术的现状及应用[J].价值工程,2012(12):182-183.
[3]程曼,王让会.物联网技术的研究与应用[J].地理信息世界,2010(5):22-28.
[4]荆艳艳.面向智慧家庭情境感知的物联网信息融合技术研究[D].哈尔滨:哈尔滨工业大学,2012.
[5]朱宇,李静,岳勇.基于蓝牙4.0的设备通信方案设计与实现[J].电子设计工程,2014(19):150-152,155.
[6]王洋洋,古丽米拉·克孜尔别克,张婧婧.基于单片机的智能时钟控制装置的设计[J].现代计算机,2013(8):65-68.