好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

基于arm的智能家居系统方案.docx

8页
  • 卖家[上传人]:平***
  • 文档编号:12141550
  • 上传时间:2017-10-17
  • 文档格式:DOCX
  • 文档大小:532.51KB
  • / 8 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 基于 ARM 的智能家居系统设计方案1. 系统综述智能家居(Smart Home)是以住宅为平台,利用综合布线技术、网络通信技术、 安全防范技术、自动控制技术、音视频技术将家居生活有关的设施集成,构建高效的住宅设施与家庭日程事务管理系统,以提升家居安全性、便利性、舒适性、艺术性,并实现环保节能的居住环境衡量一个智能家居系统的成功与否,并非仅仅取决于智能化系统的多少、系统的先进性或集成度,而是取决于系统的设计和配置是否经济合理并且系统能否成功运行,系统的使用、管理和维护是否方便,系统或产品的技术是否成熟适用,换句话说,就是如何以最少的投入、最简便的实现途径来换取最大的功效,实现便捷高质量的生活智能家居通常包括以下子系统:访问/控制系统通过电脑、手持终端等设备了解家中状况,对设备进行控制门禁系统门禁系统主要包括以下功能,室外监控功能:当门口有异响自动提示,能在家中或远程看到外面情况;拍照存档功能:当家中没人且有人按动门铃,便自动拍照存储,方面房屋主人查询;可视对讲功能:有客来访,可自由通话,并能看到外面情况,并能控制门锁的打开关闭;远程开锁功能:可以通过Internet 网,在任何地方开启家里的门锁。

      视频监控系统视频监控的基本功能主要有:远程监控:可以进行实时本地和远程网络监控;远程控制:可以实现远程对设备的各种控制,可以对图像质量,分辨率,图像缩放进行操作,可以对云台的移动方向进行控制;视频存储:能够将视频数据本地存储,能够在任何时候对这些数据进行回放;移动侦测:布防后能够发现移动的物体并报警门窗控制系统可以在室内任何位置以及远程对门窗以及窗帘进行打开关闭操作具备自动防风防雨功能,当检测到下雨刮风时,自动关闭窗户同时能与环境检测系统联动,当发现室内空气环境不好或者发现可燃气体时能自动开窗通风入侵检测功能能够及时发现暴力入侵情况,并向安防系统发送报警信号家电控制系统通过ZigBee/红外转发器,以红外遥控和电源控制相结合的方式对传统家电(如:电视机、空调、冰箱、电饭煲、淋浴器、微波炉等)进行控制以及状态查询同时对家中总电源以及各个电源接口进行打开关闭的操作,实现对部分家电的控制,同时可杜绝家电待机耗电情况环境检测系统环境监测系统主要对家庭内部环境数据进行监测包括:温度监测、可燃气体监测、火灾监测、空气质量检测等等并能与安防系统联动,出现异常情况时能够及时报警 智能家居系统示意图2. 平台选择2.1控制系统平台选择智能家居的控制系统是智能家居的核心组成部分,相当于整个智能家居系统的神经中枢,因此系统平台的选择对于项目成功与否至关重要。

      嵌入式处理器有众多的架构和种类,不同的处理器从性能到成本以及总线接口、外围电路各有不同目前,采用ARM体系的微处理器已经遍布在消费电子、工业控制、通信、网络等领域据统计,基于ARM体系结构的嵌入式微处理器占据了RISC类型处理器75% 以上的市场份额在全球范围内,使用ARM授权生产微处理器芯片的厂商多达数十家,就连众所周知的芯片巨头英特尔公司在通信领域也开发了基于ARM 体系结构的微处理器基于本项目高性能,低功耗,低成本的要求,本项目采用基于ARM 的嵌入式系统由于本系统主要目的是用于实验验证,因此采用时下流行的树莓派(Raspberry Pi )作为控制系统开发平台树莓派是专为学生计算机编程教育而设计,只有信用卡大小的卡片式电脑,自问世以来,受众多计算机发烧友和创客的追捧,曾经一“派”难求树莓派外表虽然“娇小” ,内“心”却很强大,视频、音频等功能通通皆有,可谓是“麻雀虽小,五脏俱全” 树莓派功能示意图2.2客户端平台选择智能家居客户端主要指用户操作界面及其软件系统,包括完整的智能家居控制界面,具备无线编码学习功能和个性化情景模式,用户可以通过配置,来实现自定义的智能家居体验据调研机构 Strategy Analytics 最新的报告显示,Android 以 83.6%的市场占有率稳居移动操作系统市场之首。

      为了最大限度的运用市场上现有的资源,本系统首先开发基于Android 的智能家居远程客户端3. 硬件设计方案控制系统硬件设计方案由于该系统主要用于实验验证,硬件设计上以简单为主,主要包括一下几个模块: 主控系统:树莓派开发板( Raspberry Pi Model B+) 监视系统:USB 摄像头(罗技 Pro5000) 家电模拟系统:控制器(单片机 AT89C51) 、模拟家电(LED 灯) 、模拟传感器(按键) 通信系统:Wi-Fi 模块(联想 2 代 B 型迷你无线网卡 )控制系统硬件示意图3.2客户端硬件设计方案客户端需支持市面上主流 Android 4. 软件设计方案4.1控制系统软件设计方案控制系统软件设计包括两个方面:一是嵌入式操作系统,另一个是嵌入式服务器软件在选择嵌入式操作系统的时候,首先要考虑到对硬件系统的支持,由于ARM处理器的应用非常广泛,目前的主流嵌入式操作系统对ARM体系结构的处理器都提供良好的支持其次要考虑嵌入式操作系统的可移植性,可移植性良好的操作系统,可以在不同平台、不同硬件系统上运行,从而可以减少或避免以后代码的移植工作,降低开发工作的难度最后考虑到需要快速、低成本、高质量的完成用户的需求,对嵌入式操作系统的可利用资源和成本的考虑也十分重要。

      对于嵌入式服务器软件的选择,首先考虑本系统主要面向家庭,因此访问量很小,不需要复杂的功能,但当出现紧急情况时要求尽快相应,对实时性有一定要求因此需要选择一款功能简单、体积小、占用资源少、速度快的服务器;其次由于服务器需要长时间稳定运行,因此对可靠性有较高的要求;最后由于控制系统运行着系统中各个模块的控制程序,这些程序需要浏览器通过CGI 接口进行调用返回,因此服务器必须支持 CGI调用基于以上原因,本例选择嵌入式Linux系统+Boa 嵌入式服务器作为控制系统软件设计方案Linux系统是1991年由芬兰人Linus Torvalds发明的,从诞生到现在的短短十几年的时间,Linux 获得了飞速的发展尤其是在嵌入式操作系统领域嵌入式Linux是指对标准Linux 进行小型化裁剪处理,可固化在存储器或单片机中,适合于特定嵌入式应用场合的专用Linux 操作系统Boa是一个小型Web Server,系统兼容性好,可在多数Unix 系统中运行,特别适合在嵌入式的场合中使用它是一个单任务的HTTP 服务器,如果有两个用户同时访问它,那么其中的一个用户必须等待片刻,它产生独立的进程来处理CGI 程序,因此占用较少的系统资源。

      Boa的优点在于其快速性和可靠性而且完全免费控制系统软件架构示意图4.2客户端软件设计方案本文采用的客户端软件基于时下流行的 Android 移动操作系统,即基于 Android 的智能家居远程客户端基于 Android 的智能家居远程客户端是通过 Android 智能家居软件控制的以通信网络为纽带的智能家居远程控制系统,用来实现对用户家庭智能家居系统及其设备的远程控制,其基本思想是实现智能控制、分类操作、分级管理、配置灵活Android 智能家居远程客户端按功能可划分为五部分:登陆控制单元、信息存储单元、智能控制单元、智能情景模式及人机界面 客户端软件架构示意图5. 实施步骤5.1嵌入式开发环境搭建(简要介绍)嵌入式开发环境搭建主要包括: 宿主机(PC)系统的安装配置(Ubuntu 14.04) NFS 服务配置(使目标机和宿主机共享文件) 交叉编译器安装(在宿主机上进行程序的开发和编译工作,在目标机中执行)5.2控制端软件设计5.2.1 嵌入式 Linux 内核配置与编译Linux 内核配置的内容有数百项之多,想要完全了解非常困难也没有必要。

      本文只介绍一下内核配置编译的一般步骤内核下载首先需要下载Linux 源代码压缩包一般从Linux 官方网站http://www.kernel.org 下载,然后将压缩包解压到指定目录下;编译配置修改修改源码树根目录下的Makefile文件中 ARCH:=arm CROSSCOMPILE:=arm-linux- 两个变量,以适用于嵌入式系统使用make menuconfig 对内核进行裁剪,配置内核产生 .config文件根据系统功能需求选择相关的功能模块,保存即可这里需要说明的是内核配置选项多达数百项,需要根据不同的硬件平台进行修改配置,其余的采用默认设置即可编译内核生成镜像完成了对内核的配置以后,内核仍然是源码的形式,还不能下载到硬件平台上运行内核编译的目的就是生成最终可以在硬件平台上运行的可执行代码内核的编译过程是由Makefile文件控制的,Makefile 定义了一系列的规则来指定哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译内核编译步骤非常固定,需要用到以下几个命令:make clean用来把以前编译内核时产生的文件删除掉,避免上次编译的文件对本次编译产生影响。

      5.2.2 根文件系统制作嵌入式Linux支持多种文件系统虽然在嵌入式系统中,由于资源受限的原因,它的文件系统和非嵌入式Linux 的文件系统有较大的区别,但是他们的总体架构是一样的,都是采用目录树的结构本文中采用的是cramfs 文件系统这种系统是一种简单的只读文件系统,因此非常适合嵌入式系统本文适用busybox进行根文件系统的制作,步骤如下:Busybox配置编译下载busybox源码,执行make menuconfig 进行相关配置(如:General Configuration中,一定要选择“Support for devfs”选项) 生成.config 文件后执行 make TARGET_ARCH=arm,编译busybox,编译结束后,执行make install ,生成一个_install 文件夹,内有一个linuxrc文件和bin、sbin、usr三个文件夹,删除linuxrc,将三个文件夹打包Rootfs制作创建一个文件夹,比如rootfs,转到rootfs ,执行命令mkdir bin dev etc home lib mnt proc sbin sys tmp var usr,建立相应的文件夹,再建立etc下的init.d文件夹。

      然后准备启动所需的文件:linuxrc 、 rcS、inittab、fstab四个文件将刚才在busybox的_install 下的三个文件夹的打包文件复制到rootfs目录,解压后删除打包文件调试开发将自己开发的相关程序拷贝到rootfs相应目录下,适用命令mkcramfs rootfs rootfs.cramfs运行成功后,将产生的rootfs.cramfs文件烧写到目标板上就可以了5.2.3 Boa 嵌入式服务器移植下载并编译Boa源码从www.boa.org下载Boa源码,将其解压并进入源码目录的src子目录,在源码目录下执行./configure生成 Makefile 文件;然后执行Make 命令对源码进行编译配置移植将boa.conf 拷贝到etc/boa目录下,修改boa.conf 文件中的以下部分,其他配置保持不变;DocumentRoot /var/www //后面的目录为自己存放网页的目录ScriptAlias /var/www/cgi-bin/ //后面的目录为cgi 程序的存放目录运行测试在解压的之前解压的boa-0.94.13/src 目录下有个boa 的可执行程序。

      执行后boa就开始运行了,正常执行后可以通过ps –A 看到boa 进程将一个静态网页拷贝到 /www 下,通过IE 就可以访问了将解压后 boa 目录下的examples\cgi-test.cgi 拷贝到/www/cgi-bia 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.