基于Dragon Board 410c实现对家庭电器的智能开关控制
扫描二维码
随时随地手机看文章
一、前言
智能家居越来越多的在普通家庭普及,一套智能家居就是一个系统,包含传感单元、中央处理单元、信号传输单元和控制单元等等,利用不同的传感器和处理方法可以做出不同的体验效果,这里就基于Dragon Board 410C简单的搭建一个系统,以实现“智能家居”,旨在抛砖引玉。
二、概述
最近发现一种比较有趣的Sensor——Grid-EYE(红外阵列传感器),与普通的红外感应器不同,顾名思义,这种sensor的感应区是由阵列排布的若干红外感应头组成,此sensor可以将外界物体表面发出的红外光转成二维阵列点图像,随着物体的移动,接收阵列红外强度分别也相应变化,那么我们可以应用该Sensor做外界热量分辩,进而实现物体移动位置跟踪。在此,我们就举个例子,基于Dragon Board 410c结合此类Sensor实现对家庭电器(如电灯、风扇)的智能开关控制。
三、设计说明
3.1 系统原理
系统框图如下图所示,Grid-Eye通过I2C接口与Dragon Board 410C相连,接收到的外界红外图像由I2C传给CPU APQ8016,由CPU分析当前位置,相对与上次采集的数据对比,判断物体(如:人体)的移动方向,根据这些数据,CPU可以提前发出电器(如:电灯)动作控制指令,考虑到家庭现成布线情况,使用无线通信控制,可以大大简化安装工作,所以CPU发出的指令会通过Dragon Board自带的Wifi/BT模块发送出去,由MCU Board上的Wifi/BT接收,再由MCU将指令解调并做出处理,通过GPIO对继电器做出控制,最终使家用电器成功开关,从而实现电器“智能化”。
3.2 Grid-EYE原理
如上面所提到的,sensor的感应区是由阵列排布的若干红外感应头组成,举例Panasonic的AMG88xx系列,感应器由8*8=64个感应头,如下图所示,人体发出的红外线被感应形成与人体形态对应的图像,人体做出不同形态,对应不同感应图像。同理,当人体在“可视”范围内移动,Sensor会感应到人体的运动位置,通过一定算法,还可以预测人体的运动趋势,进而预先对外做出控制,给用户带来更贴心体验。
Sensor原理框图如下,红外接收头阵列接收的光强通过光电转换后,每一个点强度与内部自带的基准温度传感器,再经ADC转为64组数据,通过I2C接口一组一组送给CPU(APQ8016),数据处理和分析由CPU完成。
3.2 WiFi/BT模块
在此Wifi/BT紧用于开关控制指令的无线传输,考虑到不同无线通信距离的需求,一般同一房间内BT可满足10m可靠传输,若需要更远的距离可考虑使用Wifi模块。由于传输数据量不大,对硬件接口速率要求不高,所以Wifi/BT模块使用UART、SPI或者SDIO接口与MCU相连,又低端MCU一般不支持SDIO,选择UART或者SPI接口较为适宜。
3.3 MCU控制
MCU通过UART/SPI从Wifi/BT模块接收到数据,其实是一个控制指令,MCU只是简单的将这个控制指令转成几个GPIO输出状态的变化,如当人体移动到电灯1照明区域时,Dragon Board上的CPU会做出判断,发出点亮电灯1的指令,MCU接收到指令后使GPIO1输出高电平,经过驱动电路电流放大使继电器1闭合,于是电灯1被点亮。
四、体验
搭建好此系统,我们便可以记录室内/监控范围内的人员情况,如存在的时间及简单的人数统计。在此基础上,我们可以实现对人体所在的区域用电器的控制,如:在有人在的地方打开照明,没人的地方关闭照明,如下图所示。再进一步的,我们还可以预测室内人体的运动方向,就可以预先打开即将进入区域的电器,显得更人性化。