智能家居控制系统(精编3篇)
【导言】此例“智能家居控制系统(精编3篇)”的范文资料由阿拉题库网友为您分享整理,以供您学习参考之用,希望这篇资料对您有所帮助,喜欢就复制下载支持吧!
智能家居控制系统1
关键词 智能家居控制系统;S5PV210;软件设计;传感器;Zigbee定位
中图分类号:TN92 文献标识码:A 文章编号:1671—7597(2013)041-042-03
随着电子、微电子、软件、通信、控制以及多媒体技术的发展,人们逐渐对自己的生活提出一种更高的要求,他们需要一种智能化、可交互,并且融合现代创新科技的产品来改善他们的生活环境,使他们的生活更加安全、舒适、便捷、智能。基于上述需求,我们迎来了智能家居的时代。
智能家居是一种以楼宇建筑为平台,利用网络通信技术、自动控制技术以及综合布线技术等实现住宅设施与家庭日常事务高效管理的集成控制系统。在国外,运用智能家居理念的著名建筑有位于日本东京的本田青山大厦、NEC办公大厦等。在中国,由于对智能家居的认知起步较晚,发展相对滞后,海尔、清华同方是现今国内为数不多的大型智能家居控制系统供应商之一。
在智能家居领域,安全是重中之重。一直以来,安全都是整个社会赖以生存与发展的基础,尤其在现代化技术高度发展的今天,犯罪手段越来越高明,潜在安全隐患越来越多,所以提升现代化安防技术就显得至关重要。
本文所述的智能家居控制系统主要包含三类监控功能:室内温度监控、室内烟雾监控以及红外门禁监控。与此同时,在软件实现上预留了串口转换硬件模块(GPRS转串口模块、Zigbee转串口模块)的接口,以便于实现硬件功能的拓展。系统的Zigbee模块不仅可以用于客户端与服务器端的通信,而且可以作为汇聚节点,将来自其它Zigbee锚节点的定位信号强度汇总,运用相应的定位算法进行处理,实现对进入室内非法分子的zigbee多点定位。
除此之外,该系统还支持软件版本查询、软件升级以及设备自检,实时采集硬件设备的使用状况(CPU频率、剩余内存、剩余闪存空间等),将相关的工作参数上报至操作与维护终端,并且可以手动配置相应参数。
1 开发环境
1)硬件开发平台。
天嵌TQ210开发板、温度传感器(DS18B20)、烟雾传感器(MQ-2)、红外传感器(D204S)、zigbee转串口模块(FBee_FZB5000+)等。
2)软件开发平台:Linux(Ubuntu_)。
3)嵌入式Linux内核:Kernel_。
4)根文件系统的制作工具Busybox:busybox_。
5)辅助软件:(qtcreator,qtdesigner)。
6)网络通信协议:用户数据报协议(User Datagram Protocol,UDP)。
7)网络环境:Ethernet。
8)编译器:gcc、arm-linux-gcc()。
9)软件调试工具:GDB。
2 系统的软件架构
智能家居控制系统的硬件组成主要包含四大部分:终端控制器、远程控制器、传感器模块以及硬件拓展模块。为了支持该系统的硬件,并且设计一个性能优良、可靠性高的软件系统,必须遵循合理的设计规范与系统架构。
图1 Linux开发环境的软件架构图
3 系统工作流程
1)服务器端:待系统上电之后,启动bootloader引导程序,初始化硬件、启动内核以及完成内存映射等;之后加载内核,初始化驱动程序,并且挂载根文件系统;待根文件系统挂载之后,初始化系统配置,挂载用户分区,启动应用程序。接下来,系统完成初始化日志与消息、创建4条线程以及创建服务器端socket通信等工作;最后,系统开启服务器端的业务流程,监控室内温度、烟雾以及红外门禁信息,并且启动信息查询与上报反馈机制。
2)客户端:首先启动客户端软件,加载主界面并且初始化界面元素信息;然后创建客户端socket通信,并且构建消息,将其传输给服务器端,等待服务器端的消息响应;最后接收来自服务器端的数据,直到服务器端线程结束,main函数返回为止。
4 具体技术实现
根据实际需要,设计基于arm体系结构的智能家居控制系统主要分为以下几个步骤。
Bootloader
Bootloader是在系统内核加载之前运行的一段精简的引导程序,它担负着硬件初始化与操作系统引导的双重职责。也就是说,我们不仅可以通过这段程序实现初始化硬件设备、建立内存空间映射以及坏块检测等功能,为系统的软硬件搭建一个良好的交互环境,而且可以将操作系统从NAND Flash等存储器中加载至RAM中,为最终运行Linux操作系统内核做准备。
Bootloader可以分为Stage1与Stage2两大部分,前者主要实现与系统硬件体系结构关联程度高的引导程序代码与板级初始化代码,通常使用汇编语言编写;后者主要实现功能更加复杂的,并且具有好的可读性与可移植性的程序代码,通常使用C语言编写。
驱动程序开发
嵌入式Linux系统的设备驱动可以分为三大类型:字符设备驱动(Character Device Driver)、块设备驱动(Block Device Driver)、网络设备驱动(Network Device Driver)。
它作为内核的一部分,主要完成以下功能:
1)设备的初始化、与设备相关系统资源的分配与回收。
2)在底层硬件与内核之间建立信息交互环境,以便于传递数据。
3)在设备与应用程序之间实现数据交互。
4)检测与处理设备出现的异常或者错误。
驱动开发的一般流程如图2所示。
图2 底层驱动的基本开发流程
除此之外,在驱动程序的开发过程中还会用到中断处理、定时器、等待队列、内存与I/O访问、Input子系统以及平台总线架构等机制。
封装接口函数,制作动态库
通过系统调用,实现面向用户态接口函数的封装,变量的封装形式采用结构体,功能的封装采用函数,使用指针传递参数。
动态库的制作很简单,只需要使用如下指令即可:
arm-linux-gcc-fpic-shared include_path
根文件系统的制作
根文件系统的制作主要依赖于BusyBox工具。
1)首先在busybox目录下,执行make menuconfig命令配置相应的属性;然后修改busybox自带Makefile文件,将第164行与第190行分别修改成为CROSS_COMPILE?=arm-linux-与ARCH?=arm;最后顺序执行make与make install指令,根据Makefile可以得知busybox的缺省安装目录在/_install目录下。
2)在根文件系统rootfs中创建必要的目录(例如:etc、sys、proc、tmp、var、home、lib、etc、root等)。
3)库文件的部署。将一些必要的库文件与加载器拷][贝到根文件系统rootfs中/lib/目录下,若不清楚库文件的存放位置,可以使用which is arm-linux-gcc进行查找;若需要查看busybox使用共享库(动态库)信息,可以使用arm-linux-readelf-d busybox与arm-linux-readelf–a app|grep“shared”命令进行查看。
4)文件系统瘦身。可以使用sudo arm-linux-strip*命令对文件进行瘦身,以便于缩小文件系统的体积,节约内存或者闪存空间。
5)添加必要的配置信息(例如:etc/inittab、etc/fstab、etc/profile、etc//rcS等)。
6)配置相应的环境,通过NFS挂载测试。
7)制作文件系统镜像。在制作文件系统镜像时,最常用的几种文件系统格式如下所示:cramfs、ramdisk、initramfs、yaffs2等。
图3 根文件系统镜像的制作流程
上述的四种文件格式也可以综合使用,本文综合它们的优点,使用cramfs(rootfs)+yaffs2(userdata)方式制作镜像文件。
运行在开发板上的监控软件的设计
1)底层硬件驱动程序的编写与修改。
2)封装用户态的接口函数,并且将其封装成为动态库(*.so)。
3)依次完成设备初始化,创建4条并行独立线程以及完善相应的线程处理函数等工作,在main()函数返回之前,必须使用pthread_join()分别等待线程的结束。
设备操作与维护软件的设计
1)完成服务器端的配套功能。
在该项目中不需要过多考虑数据安全性与完整性校验问题,因此选用UDP(用户数据报协议))的通信模式。
创建服务器端socket通信函数create_socket(),在该函数中以结构体类型指针的方式传递数据包内容,并且完成数据包接收与解析工作,判断下一步应该做出哪种类型的响应;与此同时,完成消息请求处理与反馈功能。
2)完成客户端界面设计与功能的实现。
使用进行上位机界面设计与功能实现。
①通过QtCreator与QtDesigner设计上位机的图形界面。
②创建客户端socket通信,完成信号函数与相应槽函数的匹配连接(通过QObject::connect()实现)。
③实现消息通信与处理机制。
④实现2种不同方式(串口登录与网口登录)的登录功能。
终端软件设计(支持实时性)
1)使用QtCreator与QtDesigner设计终端软件的图形界面。
2)完成相应功能(接受来自传感器与系统内部的实时信息并且将其反馈至图形界面)。
3)Qt库的移植:
①下载并且解压Qt的私有函数库与触摸屏TouchScreen的函数库;
②首先在vi环境中cd到解压之后的tslib目录下,先后执行。/与。/脚本,然后依次执行。/configure--host=arm-linux--prefix=/opt/arm/tslib、make、make install指令;
③首先在vi环境中cd到解压之后的目录下,执行cp../命令将上级文件夹中的可执行脚本文件拷贝到当前目录中,修改。/mkspecs/qws/linux-arm-g++文件,在arm-linux-gcc或者arm-linux-g++之后添加-lts,保存退出,然后。/,接下来make,最后make install。
4)交叉编译:在Qt工程目录下,依次执行/opt/arm/qt/bin/qmake–project、/opt/arm/qt/bin/qmake、make命令。
5)Qt库的部署:构建文件系统rootfs中/etc/目录下的profile文件,在该文件中添加export QWS_KEYBOARD="TTY:/dev/event1"命令设置相应的环境变量;并且将文件夹qt与tslib拷贝到开发板rootfs指定目录下。
5 Zigbee定位算法
将采集到的Zigbee信号强度信息导入shadowing模型
(1)
其中,d为射频信号接收端与发射端自检的距离,d0为参考距离,Pr(d)为基站接收到用户节点的信号强度,Pr(d0)为基站接收到由参考点发送的信号强度。
利用(1)式可以计算出锚节点到未知节点之间的距离d,接下来建立定位模型(在100×100的试验区域内),本文采用基于三边测距的LMS格型滤波改进算法对定位信息进行处理,仿真结果如图5所示。
6 结束语
该系统基于ARM体系结构与Linux开发平台,通过三类传感器对家庭环境中的温度、烟雾以及红外门禁进行实时监控,并且可以通过Internet远程查看与设置系统的各类参数,也可以通过串口对系统功能进行拓展。与此同时,该系统支持短信与Zigbee通信功能,当家庭有非法分子入侵时,触发红外门禁,并且启动Zigbee定位,运用该定位算法可以较为准确地确定非法分子在室内的位置,并且将定位信息反馈给用户,增强了系统的功能。
该系统稳定可靠、智能化程度较高,并且具有较好的拓展性,这些优点使它具有很好的应用前景与巨大的市场潜力。
参考文献
[1]Xiong Tang,Chunxiu Xu,Muqing Wu,Jingrong Wen,“A DESIGN OF SMART-HOME STSTEM BASED ON 6LOWPAN WIRELESS SENSOR NETWORKS”[C].2012 IEEE 2nd International Conference on Cloud Computing and Intelligence Systems,2012,
[2]王刚,夏平,陈仲滔。智能家居无线远程控制技术[J].电脑开发与应用,2008,21(3):67-69.
[3]宋玲。智能住宅安全防范系统的设计与实现[D].成都:电子科技大学,2010.
[4]杜春雷。ARM体系结构与编程[M].北京:电子工业出版社,2003.
[5]曾宝国。基于RFID的移动基站维护管理终端的研究[J].中国西部科技,2010,26(9):28-30.
[6]曹颖鹏。基于嵌入式Linux驱动程序的研究与设计[D].西安:西安电子科技大学,2010.
[7]刘长柱。基于嵌入式的提花织袜机控制器的设计[D].合肥:合肥工业大学,2009.
[8] Stevens,Stephen 环境高级编程[M].北京:人民邮电出版社,2006.
[9]蔡志明。精通Qt4编程[M].北京:电子工业出版社,2011.
博观而约取,厚积而薄发。以上这3篇智能家居控制系统是来自于山草香的智能家居控制系统的相关范文,希望能有给予您一定的启发。
智能家居控制系统范文2
主要对基于物联网的新型智能家居控制系统的设计展开了研究,从系统整体设计、系统硬件设计、嵌入式网关设计和系统监控页面设计四方面对基于物联网的新型智能家居控制系统的设计进行了详细的介绍,以期能为相关设计提供参考和借鉴。
关键词:
物联网;智能家居控制系统;嵌入式网关;监控页面
随着科技的不断进步和社会信息化脚步的不断加快,物联网技术逐渐得到了迅速的发展,融合了信息采集、数据通信、数据存储、数据分析、节能环保等一系列物联网技术的智能家居控制系统也逐渐走进了人们的生活。智能家居控制系统是以信息传输网络为硬件平台,各种网络技术为软件支撑平台,通过现场总线将家庭生活中所用的通信设备、家居设备和家庭安全防范设备连接起来的一种智能控制系统。该系统能满足人们对家居环境安全性、方便性、舒适性和可控制性的需求,具有良好的市场前景。鉴于此,笔者将对智能家居控制系统的设计进行详细的介绍。
1系统总体设计
根据智能家居控制系统的功能需求,将其分为四个子系统:①环境监控子系统,主要作用是将室内的温湿度、光照度等环境因素控制在适宜的范围内。②安防监控子系统,主要作用是监控室内的防盗、火灾、燃气泄漏等安全状况。一旦出现紧急情况,系统将自动报警,且使执行机构产生相应的动作。③远程抄表子系统,主要作用是采集并显示室内的水、电、煤气数据,月底发送数据报表。④供电控制子系统,主要作用是确保机电设备正常用电,并以室内的温湿度、光照度、安防等为对象进行优化控制。在设计时,应兼顾各个系统之间的交互联动控制,在组态软件Kingview的基础上开发具有开放性的智能家居综合管理系统。
2系统硬件设计
为实现上述智能家居的总体设计,采用无线传感网络通信技术ZigBee和嵌入式ARM技术构建家庭WEB网关平台,通过红外传感器、气敏传感器、湿敏传感器、温度传感器和无线智能插座等设备实现相应的功能。本文仅选择其中两个具有代表性的子系统来介绍具体的设计情况。
环境监控子系统的设计环境监控子系统主要包括温湿度和光照的检测两部分。温湿度检测是非常重要的一环,本设计选用数字式集成温湿度传感器SHT11来实现该功能。SHT11的检测精度能够满足家庭使用需求,其检测信号通过无线传感网络传送到家庭WEB网关平台,并通过家庭网关进行后续信号的处理。无线传感网络采用ZigBee技术。ZigBee这种新型的无线网络具有抗干扰、低功耗、易组网等特点,能够满足物联网行业的需求。本设计选用的ZigBee芯片为CC2430芯片。该芯片是世界上首款符合ZigBee标准的射频单芯片,其频率为,由CHIPCON公司设计,适用于多种ZigBee标准的无线网络节点以及与之相关的路由器、协调器和终端设备等。CC2430芯片集成度很高,只需较少的器件就可以组建一个完整的系统进行信号的接收和发送。在硬件电路的基础上,配合相应软件就可以实现温湿度信号的采集和报警。为了实现对温湿度的检测和控制,除了由上述温湿度检测电路向家庭网关传送数据外,还需要设计一个接收控制命令的执行机构。本文选用以标准CC2430模块为核心的智能插座,并在扩展继电器控制电路,根据开关命令实现继电器的通电和断电。继电器的通电和断电由CC2430的一个输出引脚控制。智能插座硬件节点电路如图1所示。当三极管由导通变为截止时,继电器线圈会出现较大的感应电势,为了保护三极管,在继电器两端反向串联一个续流二极管4418,以吸收该电势。
安防监控子系统的设计安防监控子系统的硬件电路结构如图2所示。其中,气敏传感器负责检测燃气的泄漏情况。本设计选择QM-N5型气敏传感器,当其检测到燃气泄漏时,电导率迅速升高,将此信号放大后通过CC2430模块传送给主控器。热释电红外传感器是基于热电效应的红外传感器,其热电系数高于热电偶,由传感探测元、干涉滤光片和场效应管匹配器三部分组成,通过配套的菲尼尔透镜,能够检测到一定范围内的人体辐射,并进行防盗报警。火灾报警选用烟雾传感器,当检测到烟雾时,传感器的电阻值发生变化,并输出相应的信号进行报警。
3嵌入式网关设计
物联网网关在智能家居控制系统中占据非常重要的地位,它起着承上启下的作用,是连接服务器与终端设备的枢纽,且负责运营商网络和家庭内部网络的交互访问。此外,用户对家居设备的远程控制和管理也需要通过物联网网关完成。本设计的物联网网关采用S3C2440芯片作为主控制器。S3C2440是以ARM920T为核心的RISC微处理器。该芯片具有低功耗和高性能的特点,能够满足设计需求。家庭网关系统结构如图3所示。主控制器S3C2440和ZigBee模块、3G模块的连接通过USB接口实现。
4监控界面设计
利用北京亚控科技发展有限公司开发的组态软件来设计监控界面。Kingview软件是用于过程控制和数据采集的专用软件,提供资源管理模式的操作界面,使用灵活,支持多种主流硬件设备,包括艾默生、欧姆龙、西门子等各厂家的PLC系列、智能仪表系列、智能模块系列、板卡系列等。Kingview软件具有较强的通信功能,并提供OPC接口、网络等功能,在国内市场占有很大的比例。
基于Kingview的设备驱动设计Kingview软件将与其通信的设备都看作是外部设备。为实现与外部设备的通信,Kingview软件内置了大量设备的驱动程序,以此作为通讯接口。在运行期间,Kingview软件通过驱动程序和外部设备收发数据。每一个驱动程序都是Kingview软件的一个COM对象。这种通信方式使驱动程序和Kingview软件组成一个完整的系统。Kingview软件驱动程序是其与硬件设备连接的枢纽,本设计中的通信协议采用小端模式,即默认数据格式为低字节数据在前。该协议定义了光强感测设备、灯光控制设备、温湿度检测设备、电能检测设备、人体检测设备、燃气泄漏检测设备、智能插座、幕布控制设备共八类设备。利用驱动加载工具将驱动加载到Kingview软件中需要以下三步:①给该驱动配置一个描述文件(扩展名为。des)。该描述文件不能单独使用和操作,只能配合驱动文件一起安装使用。②在建好。des文件后,利用驱动开发包工具加载安装驱动。③打开Kingview软件的工程管理器,点击“设备”,然后再点“新建”,出现“设备配置向导”,在“设备驱动”一栏即可看到新加载的驱动。
基于Kingview的监控界面设计监控界面是使用者操控底层设备的界面,通过监控界面可以实现对家居设备的全面检测和实时控制。利用Kingview软件开发工程的一般步骤如下:设计图形界面,即定义画面;定义设备;构造数据库,即定义变量;建立动画连接;运行和调试。
5结束语
综上所述,智能家居控制系统的应用使得家庭生活更安全、方便,提高了人们的生活质量,具有良好的应用前景。本文设计的基于物联网的智能家居控制系统不仅能够将整个家居中可连接到网络的所有电气设备有机整合到一起,并对这些设备进行有效控制,还能够实现对整个系统的实时监控和管理,具有实现简单、性能稳定、适用范围广、安全、可靠等优点,值得被广泛推广和应用。
参考文献
[1]姜宇航。基于物联网的智能家居控制系统设计[D].长春:吉林大学,2014.
智能家居控制系统3
关键词:$3C2440;Linux;QT;无线网络;GPRS
1概述
智能家居的概念早在二十世纪80年代初就已经提出。以“住宅电子化”实现,到了80年代末,逐步提出了“住宅智能化”,也就是现在所说的智能家居的原型。智能家居是一个以住宅为平台安装有智能家居系统的居住环境。它的研究与设计将优化人们的生活方式,帮助人们有效安排时间,增强家居生活的安全性、舒适性,甚至合理控制各种能源的使用。相比于国外,我国对智能家居系统的相关产品的研发起步较晚,主要有三种技术方案,它代表着中国智能家居行业不同时期的技术特点,PC架构的智能控制系统出现于中国智能家居的萌芽阶段,基本上停留在向使用者展示智能家居的概念,实用性不强,属于第一代。目前很多中国智能家居厂商研制的基于单片机架构的智能控制系统,在实际中得到了广泛的应用,但是随着成本的逐步降低,中国的智能家居最终将走向嵌入式。进行智能家居的嵌入式控制系统的设计,可以推动智能家居行业的发展,扩大嵌入式在自动控制领域的应用,具有一定的经济和理论研究的价值。
2总体设计方案
总体设计方案
本文根据用户在现代生活中,对居住环境的便捷性、安全性、舒适性等方面的需求,设计了一种新型多功能智能家居控制系统,总体方案框图如图1所示,室内总控制系统通过无线网络,实现了对门禁模块、灯光模块、窗帘模块、通讯模块、报警模块、RFID模块等多个功能模块的控制。
系统硬件架构
室内总控制系统采用基于ARM920T内核的S3C2440嵌入式微处理器作为主控芯片。S3C2440内部集成触摸屏控制器,支持TFT/SNT屏,本系统选用寸液晶屏,实现人机交互界面的建立。总控制系统连接一个USB摄像头,实现对室内环境的实时监控。总控制系统通过GPRS模块实现与外部的连接,让用户出门在外也可以通过手机对室内情况进行控制。总控制系统通过GPIO口来控制门口电机、光传感器、烟雾传感器等功能模块。系统硬件架构如图2所示。
软件开发流程
智能家居控制系统软件开发分为三个环节:构建家居的Linux系统、设计功能模块的驱动、设计图形界面。
1)构建智能家居的Linux系统的开发流程如图3所示,
2)设计功能模块驱动的流程如图4所示。
3)设计图形界面的流程如图5所示。
3各模块功能及构成
门禁模块
轻点按键,就可以驱动继电器开门。继电器使用的型号是:SRD-05VDC-SL-C,继电器的作用相当于开关,编写继电器的驱动,设计出开关的控制系统。
灯光模块
轻点触摸屏上的按键,就可以控制房间或者客厅的灯光。有两盏LED灯,一盏灯表示客厅,一盏灯表示房间,编写字符驱动来操作这两个LED灯,设计实现灯光控制系统。
窗帘模块
除了可以通过触摸屏上的按键实现窗帘的开关控制,也能根据光感电阻的变化,在室内光线高于预设值时,自动关闭。窗帘控制系统使用步进电动机来控制窗帘的开关,步进电机使用的型号为:25BY48L064A,额定电压12V,四相六线,间距,使用的是ULN2003作为驱动电路。光感传感器是基于光敏电阻的,利用光电效应的传感器,在受到可见光照射后即产生光电效应,将光信号转换成电信号输出。光感传感器通过感应光照的强弱,从而进行窗帘的控制。先进行步进电动机的驱动设计,再进行光感传感器驱动的设计,就可以设计出窗帘控制模块。
通讯模块
可以实现通话和短信通知的功能,当房间的红外监控模块发现异常的事情发生时,会通过GPRS模块,将异常发送到房主的手机上。通用分组无线服务技术(General Packet RadioService)的简称,它是GSM移动电话用户可用的一种移动数据业务。GPRS可说是GSM的延续。GPRS和以往连续在频道传输的方式不同,是以封包(Packet)式来传输,因此使用者所负担的费用是以其传输资料单位计算,并非使用其整个频道,理论上较为便宜。GPRS的传输速率可提升至56甚至114Kbps。通过实际编写GPRS驱动,实现通讯模块。
报警模块
当发现火警或者异常的事情发生,报警器会发出警告,同时通过GPRS模块,通知房主,房间发生异常。该模块使用烟雾传感器,通过监测烟雾的浓度来实现火灾防范的,设计编写烟雾传感器的驱动,烟雾传感器监测到烟雾的浓度过高后,将会驱动报警器报火警。报警器是基于红外传感器的,当红外传感器感应到人体红外线,报警器上的LED灯就会不断闪烁,设计编写这个报警器的驱动,从而实现报警模块。
模块
刷卡识别是不是房主。RFID有标签、读卡器、天线等三个模块组成,它主要通过标签对应的唯一ID号识别标志物。RFID是一种简单的无线系统模块,只有两个基本器件,该模块用于控制、检测和跟踪物体。