智能家居是利用先进的计算机技术,嵌入式系统和网络通信技术,将家庭中的各种设备(如照明系统、环境监控、安防系统、网络家电)通过家庭网络连接到一起的,自从美国在1984年真正的智能建筑出现以后,国外已经有将近30年的研究历史,而国内在这方面的研究就相对较晚,从2003年才逐步的应用于高端市场,而且标准不一。由于智能家居的系统具有安全、方便、高效、快捷、智能化等诸多的优点,从而使智能家居的开发建设成为21世界科技发展的必然趋势。
目前市场上使用的无线技术有很多,有蓝牙,WLAN技术等,由于协议复杂,成本高,耗电等,所以在家用系统控制方面推广是有很大困难的,所以本文提出的无线智能家居的设计是基于ZigBee无线模块技术的,因为ZigBee数传模块低功耗,低成本,易于组网和维护,采用簇状网络的同时会具有自愈性的独特优点,可以克服意外导致的网络瘫痪的弊端。
1 系统的结构
本文设计的智能家居系统主要把智能家居分成三个大的部分,以具有Android系统的电视机作为上位机部分,以具有USB功能的CC2531芯片作为中枢传输部分(即USB-DONGLE),以CC2530芯片作为终端控制模块,终端控制模块同时分成三个部分,即安防控制模块、智能控制模块和电能计量统计模块如图1所示。
图1 整个系统设计的效果图
2 系统的工作原理
2.1 通用的ZigBee无线模块的初始化
启动硬件,进入初始化流程,首先是关闭所有的中断,然后是硬件电路板相关的硬件设备的检验并且配置系统时钟,然后进行电压稳定的检测,设置ADC3为一个标准的工作电压的值,通过电路板的ADCl读取外部提供的电路板的工作电压和ADC3比较看是否达到稳定工作的电压,然后进行电路板IO口的初始化,堆栈归零。如果电压不稳定或者电池电量不足或者其他原冈导致的硬件电路无法工作,这里就要进行不同方式的保护电路的复位,如果可以正常工作,那就开始配置IO口的基本工作状态,接着进行硬件驱动层的初始化,里面包括:定时器的初始化、ADC初始化、DMA的初始化、LED的初始化等等。接着是非易失性闪存的初始化流程,擦除所有的NV区域,然后是MAC初始化,扩展地址的初始化,Z-STACK的全面检查,如果某项存在或者不存在,则写入NV里面,然后是操作系统的启动初始化,开启中断,电路板的最终使用值的配置,(把启动的结果在液晶屏上显示出来),电能计量模块的初始化,红外控制模块的初始化,定时模块的初始化,进入操作系统开始工作。
2.2整个网络的建立
首先是启动电视机,打开电视机上面智能家居的控制界面,发送加入网络的命令,开始创建整个智能家居的网络。ZigBee数传模块协调器接收到命令以后,开始建立网络,当网络建立起来以后,在协调器允许加入的有效时间内,开始启动ZigBee无线模块终端设备,终端设备发现网络,并发送加入网络的请求,协调器接收到加入网络的请求以后,开始确认信息,发送确认加入网络,终端设备接收到加入网络的确认请求以后,然后按照ZigBee协议,发送自己的长地址,短地址的信息给协调器,协调器收到信息以后通过USB接口传给电视机。整个系统开始进入正常的工作状态。
3 协凋器的作用
协凋器在整个网络中起到一个中枢作用,连接作为上位机的电视机,通过USB接口通信接收电视机的命令并把接收到的命令进行分析,根据解析来的命令,按照本系统设计的智能家居的协议发送给相应的节点,并接收儿几个终端节点上传的数据,然后发给电视机。具体流程请看流程图:
图2 电视机发送命令让协调器建立网络
4 电能计量统计模块的工作流程
电能计量模块是基于CSE7780芯片、RX8025、BL8023和CC2530芯片构成的一个具有电量计量、RTC时钟和ZigBee通信的模块,这个模块具有一个主要的功能:l把测量的电量实时的测量出来并上传给协调器。2 把测量的数据保存在EEPROM里面,根据电视机的要求,查看一个月每天电量的信息或查看一年电量的信息读取出来上传给电视。3 进行RTC计时,给整个模块提供一个时间信息。从协调器接收到定时的时问信息,按照解析的时间驱动BL8023继电器的芯片,控制继电器的开或者关,以此来达到定时的目的。
图3 电视机上电能计量的UI界面
5 红外控制模块的工作流程
在电视机上点击按键发送控制遥控器的指令到协调器,协调器收到指令以后发送给终端,终端接收到指令以后按照物联网电视的通信协议开始解析数据,把解析出来的指令重新按照机器的控制指令重新进行数据组合,然后利用红外发射的功能把数据发送给空调的遥控器来控制空调工作。如果空凋没有动作,就重新发送一次控制空调的指令,红外发射的载波是38K的载波,本模块使用的是 32M 的晶振,占空比是1/3,主体的工作细节见见图3。
图4 智能控制流程图
6 安防监控模块的工作流程
首先使人体检测模块上电,经过45秒钟的电压稳定时间,使这个模块加入到ZigBee数传网络内,然后在电视机上启动安防监控开始命令,摄像头就会打开,同时发送进入安防模式给协调器,协调器接收到命令以后,把命令发送给终端,终端接收到命令以后就开始启动系统安防模式后,需要延时60~120秒才能进入正常检测状态,以便用户离开监测现场,防止误报。系统进入监控模式以后,如果有人经过,就会产生一个中断,而且这个中断须大于20毫秒,如果小于20毫秒说明是干扰,当中断产生以后,终端就会按协议发送一次有人的警告命令给协调器,协调器收到命令以后就发送给电视机,电视机收到命令以后就开始控制摄像头开始录像,终端每2秒钟发送一次有人的警告命令,持续6秒钟,如果在这6秒钟之内,再次有中断产生,那么有人警告的6秒钟时间就会刷新,重新计时,终端仍然是每2秒发送一次:如果6秒的有人警告时间之内没有再次发生有人中断,就会进入6秒钟的无人警告模式,中断就会每2秒钟发送一次无人的警告命令给协调器,协调器发送给电视机,摄像头仍然继续录像,如果在6秒钟的无人警告时间内,再次发生有人的中断,就会重新进入6秒钟的有人警告模式,摄像头仍然持续的录像,如果6秒钟的无人警告时间结束都没有有人中断产生,那么终端就不会在发送无人的协议命令给协调器,当电视机收到三次无人命令信息以后就关闭摄像头的录像功能。
7 小结
基于ZigBee无线模块的物联网电视智能家居系统相对于WIFI,蓝牙等其他的无线通信系统来说相对简单些,但是其本身还是比较复杂的,通过搭建起来整个物联网电视的结构框架和通信协议,通过几个典型的智能家居的功能来把整个物联网电视的智能家居的具体的工作流程、开发细节以及整个的框架展现给读者,本设计经过实际的开发,已经可以达到演示的效果。智能家居不仅仅是着眼于未来,一切智能化,还要着眼于现在,把现在正在使用的不是智能化的家用电器智能化,做智能家居的宗旨是使家庭生活更舒适,更安全,更方便。