基于物联网的智能家居系统设计
2018-03-03陈迪李泽龙
陈迪+李泽龙
摘要:采用物联网的思维,利用嵌入式系统搭建处理核心,直接连接电器或者通过供电插座来收集合个电器的信息,通过总线控制对整个系统进行统一的管理和控制。实现家居的智能化。
关键词:物联网智能家居;嵌入式;单片机;家居系统
Abstract: the Internet of things of thinking, the use of embedded system structures, processing core, the connections for electrical appliances directly or through a power supply socket to collect information appliances, through the bus control for unified management and control of the whole system. Realize the intelligence of household.
Key words iot smart home embedded single chip computer home system
前言:
随着人们对生活质量的要求也不断提高,在日常生活中,智能家电过于独立,无法对家庭电网进行集中控制。所以在安全、节能方面难以进行有效把控。对于智能化的又一要求就是智能化远程控制。所以现代智能家居急需解决的问题有如下几点:
1.安全方面:
家用用电安全方面有:(1)漏电短路(2)电器使用不当(3)电器自身意行外故障(4)意外接触。
不同的故障有不同的解决方法,智能家居系统应该及时分辨故障类型,并能及时进行处理。
2.节能方面:
在不影响正常生活的情况下,节能也是智能家居的特点,节能型智能家居,可以增加电器寿命,通过自动判别环境进行电器开关,使生活更方便,智能家居节能的实现有两种途径:(1)控制电器开关(2)控制电器功率
3.可远程操控:
虽然传统家居电器具备自动开始工作的功能,例如可以定时开关的电饭锅,电磁炉等,但是对于突发事件,传统家居电器不能自动更改设定,因此,对电器中个别器件进行开放权限设计,实现远程操控的功能,可解决上述问题。
4.远程监控:
尽管现代有许多家庭中安装有简单的监控设施,但风险较大,通信安全性极差。因此,在安全的状态下进行远程监控需要对家中监控设施的安全通道进行加密,并且按需发送数据,使远程监控功能安全、可靠。
1实施方案
1.硬件电路[1]:以整个家居环境作为大系统,进行电路搭建,总线可分为插头系统,暗线系统,照明系统,控制系统,监管系统和备用电源。系统的运行信息和来自各个传感器的家居环境信息均通过信号线连接核心处理器。
首先是插头系统,插头系统为所有外接电源电器提供供电,可以通过控制系统控制对电器的供电可以控制电器的开关或使用功率;暗线电路为一些不需要控制的电路;照明电路为整个家居环境的照明系统,负责照明,开关由系统控制或手动控制,其中手动控制权限最高;并且照明系统与备用电源相连,在紧急情况的停电下可使用备用电源供电并降低照明系统的功率以保证长时间照明;监管系统由检测部分和监测部分构成,检测部分主要负责整个系统的检测,如插头系统异常(短路或功率异常),暗线电路异常,控制系统故障,以及备用电源的检测,监测部分则是摄像头,人体传感器,气体传感器,温度传感器等传感器组;控制系统则负责整个系统的控制与数据处理,采用双单片机冗余控制,主芯片为STM32F407,副芯片为STM32F103[2],采用嵌入式编程,当一个芯片出现问题时,另一个芯片可以及时接管;备用电源属于紧急用电,在断电的环境下仍然能保持小功率设备正常运行,它受监管系统监管,由监管系统控制它定时充放电,以保证电池活性,同时监控电池性能。
2.家居系统设计:为了使控制的更精准,更智能,可以将整个家居环境进行模式分类,如果要求更为精确,还可使用子模式。为了方便,在本文中只模拟三种场景:白天模式,夜晚模式,离家模式。(对于被控制目标,由于篇幅所限,本文只选取照明系统,其他系统原理相同)白天模式与夜晚模式由内置时钟与安装在户外的光照传感器共同确定;在白天模式下,采光好的房间灯光功率降低或者长灭,采光较差的不受影响,夜晚模式下灯光均正常,并在固定时间自动关闭。离家模式由用户确定,在离开前手动设置模式,并在主门关闭后启动;整个系统将进入一个防盗环境,在检测到有人进入室内并且没有得到确认,便自动向绑定手机发送消息。
3.嵌入式系统[3]:我们此次选择μC/OS III作为家居系统的核心处理系统。
我们把μC/OS III的任务分为五种,分别为(1)休眠态:任务已经在CPU的flash中了,但是还不受μC/OS III管理(2)就緒态:系统为任务分配了任务控制块,并且任务已经在就绪表中登记,这时这个任务就具有了运行的条件,此时任务的状态就是就绪态(3)运行态:任务获得CPU的使用权,正在运行。(4)等待态:正在运行的任务需要等待一段时间,或者等待某个事件,这个任务就进入了等待态,此时系统就会把CPU使用权转交给别的任务。(5)中断服务态:当发送中断,当前正在运行的任务会被挂起,CPU转而去执行中断服务函数,此时任务的任务状态叫做中断服务态。
基于以上平台,组织物联网家居系统,流程如图2所示。首先连接核心电路,将整个传感器组分类连接入单片机接口,然后搭建μC/OS III 系统,接下来结合之前确定的家居系统模式:白天模式,夜晚模式,离家模式,进行预编译定义,并且写入每个控制函数中,这样在执行控制函数前会进行模式判断,根据不同的判断进行不同的控制,例如照明控制电路,在亮灯前对模式进行判断,若为白天模式,则根据光照传感器调整光照强度,若为夜晚模式则正常亮灯,如果离家模式则不会启动。编写控制函数时将函数写入嵌入式系统提供的子函数中,检测中断函数是一些检测系统的处理函数,检测到家中有异常时会进行判断,如果处于离家模式则会通过无线传输通知用户;而轮询系统则是负责监测系统本身的运行,如果发生系统异常则通知副核心,通过副核心发出损坏信号;值得注意的是日志记录系统,它是整个系统的记录系统,由于单片机本身内存极小,所以日志系统通过操作内存卡进行储存系统运行信息,在系统出错后可通过它查询问题。最后程序完成后需要在开发板和实物连接测试。
2存在问题
在物联网的智能家居系统中,整个系统是基于程序运转的,所以对代码的长期维护是非常重要的,只有不断的在实际运用中发现错误改正错误,才能对系统进行不断的完善。
参考文献:
[1](美)Albert Malvino;David J. Bates.电子电路原理(原书第7版) [M]. 机械工业出版社,2014.
[2](英)姚文祥.ARM Cortex M3权威指南(第三版) [M].清华大学出版社,2015.
[3]朱珍民.嵌入式实时操作系统μC/OS-III[M].北京邮电出版社,2006