admin 管理员组

文章数量: 1184232


2024年4月23日发(作者:广东韶关特斯拉事件)

智能家居温湿度控制系统设计收获与体会

1引言

随着社会的发展,人们对于生活居住条件的要求越来越高,人们希望可以像比尔盖茨-

样随时随地掌控居住环境。近些年,由于信息技术和传感器技术等的不断发展,智能家庭正

在悄悄走进千家万户。智能家庭是在联网设备的基础上,通过传感器采集数据,网络后台获

取并存储数据,通过特定的算法对数据进行分析,将得到的结果返回给执行机构或通知用户,

从而为用户提供-个智能的居家生活环境。目前智能家庭系统方案众多,各有优缺点。

笔者在智能家庭方面进行了研究,提出了一套易于扩展、高性能的智能家庭系统。本

系统是-个轻级的但功能完整的智能家庭系统。传统的智能家庭对设备的控制大多基于局域

网络,只适应于家庭内部进行监测控制,本系统以家庭为单位,将所有家庭的数据采集到云端

存储,便于以后的分析挖掘,本系统可以更加智能,同时系统采用分层的模块化架构,便于维

护和扩展。本系统在设计的时候充分考虑安全和成本,力求在安全的前提下降低系统成本。

2系统架构

2.1整体架构设计

如图1所示,每个家庭都通过TCP/IP协议接入智能家庭云平台,在家庭和Internet之

间通过网关管理控制,家庭内部则采用Zigbee构建的局域网进行通信,达到监测和控制

的目的。用户可以通过客户端连接到云平台查看家庭环境数据和控制家庭中的联网设备。

评台可以通过特殊的算法对采集到的数据进行分析处理,层而达到越用越聪明的目的。

Zigbee是一种低功耗、短距离、低速短延时、简单大容量、安全可靠的无线网络传输

技术[1]。zigbee具有强大的自组织网络性能,主要工作在ISM频段。中,2.4GHz频段

较为常见,并诅免费使用。在每一个家庭中通过Zigbee构建局域网络,达到安全可靠成本低

低功耗的家庭网络的需求。

家庭网关采用Arduino模块。Arduino是-块基于开放原始代码的Simple I/O平台[2],

因为Arduino是为业余电子爰好者开发的,所以开发语言和开发环境具有简单易懂的特点,

同时Arduino开发语言是建立在C语言的基础上,功能强大,可以尽情发挥想象[3]。Arduino

以其简单、便宜、功能强大赢得了成干上万电子工程师的喜爱。

户端采用WEB形式,降低开发成本并且具有很高的兼容性。当模块增多,功能复杂

的时候可以考虑开发APP,本身APP也可以通过webview等组建直接嵌入WEB页面,同时

WEB也可以直接和微信打通,方便用户使用。

2.2平台架构设计

本系统采用REST架构。REST(Representational State Transfer)表征状态转移是从

资源的角度看待整个网络[4],分布在网络中的各种资源都是通过URL(统-资源定位器)来唯

一确定,应用程序可以通过URL来取得网络资源的表征,从而改变其状态。REST架构希望

通过统的Hypermedia

Controls,实现标准的可扩展性高的标准语义及表现形式,从而达到无需人工干预、机器

之间通用的交互协议边的目的[5]。

物联网(Internet of things)能够让被独立寻址的物体互相连通,其中涉及的联网设备

非常庞大,物联网包含的物体个数保守估计在千万亿级别,面对如此强大的资源世界,采用

REST架构构建物联网系统,在目前来看是最好的解决方案。

3硬件实现

3.1主控制器设计

主控制器采用Arduino+Zigbee模块,如图,Arduino拥有14个数字|O接口和6个

模拟I0接口,外部供电5V~9V直流电源,输出5V和3.3V直流电压,采用Atmega328微

处理器控制器芯片。

Zigbee模块使用T|公司的CC2530芯片,此芯片具有增强型8051CPU,系统内部可以

编程闪存,E具有4种不同的闪存运行模式模式,可直接在片上系统进行编程且代码移植性

好,技术成熟,成本低等优势让其成为目前ZIGBEE开发的主流芯片。

3.2温湿度监测模块

通过DHT1 1温湿度传感器实时采集数据并通过Zigbee网络传输给网关。DHT11具

有快速响应、全程测量数字输出等优点。

3.3继电器控制模块

主要由继电器和简单的电路构成,吁接收动作命令控制大功率家电设备。3.4电路检错

模块

电路检错模块独立封装,用于检测设备是否正常,检错电路工作原理:协调器获得开灯指

令后,如果电路输出为高电压状态,即设备损坏或电路接触不良等,则客户端和主控制器检错

指示灯亮,提醒用户检查电路情况。

4软件实现

4.1硬件系统工作流程

设备开始运行先进行初始化,然后尝试连接到云平台,如果没有连接成功则写入日志并

再次尝试,三次之后若还没有成功则对用户做出反馈。硬件设备成功连接到网络之后开始等

待指令,得到指令之后立即执行指令,成功则继续等待执行下一条指令,如果执行不成功则记

录到日志并对用户做出反馈。用户可以随时查看设备日志,方便发现问题并解决问题。

4.2平台设计实现用

服务器采用技术实现。是一个可以让服务器运行javascript脚本的

平台,使javascript可以像PHP、Perl、Ruby、Python等语言-样不需要依赖于浏览器运

行。为实时WEB而胜,在构建之初就考虑在实时响应、超大规模数据要求下架构

的可扩展性。

Nodejs的"特点是单线程、异步I0、事件驱动,这种程序设计模型的优点是性能优异、

开发效率高[10]。目前Nodejs凭借其优秀的特性吸引了一大批开发者和公司,形成了-个庞

大的生态系统。成千.上万的第三方模块让Nodejs开发更加高效,因此我们选择采用

技术构建智能家庭系统的服务器平台。

4.3客户端设计实现

通过服务器提供的API,可以很方便实现各个平台的客户端。为了减少开发周期和尽可

能多的适配户端,我们选择先实现自适应的WEB客户端。采用WEB技术实现客户端,可

以一-次开发多种

客户端适配,不同尺寸不同平台的设备都可以得到一个完美的呈现。5结束语

本文是在参考了其他智能家庭实现方案的基础上,进-步简化流程和优化操作之后设计

的一种智能家庭解决方案。相比以往Zigbee网络的智能家庭系统,主要增加了HTTP协议

支持,让用户随时随地掌控家庭;采用RESTful风格设计,方便设备连接和二次开发,加入云

平台的概念,给智能家庭带来无限可能。目前系统存在的不足是服务器端无法直接发起会话,

后期会通过mqtt协议解决这个问题。


本文标签: 家庭 智能 系统 设备