您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > 基于嵌入式的智能家居控制系统
基于嵌入式的智能家居控制系统演讲者:物联201602尚志智能家居控制系统概述:•智能家居系统是利用先进的计算机技术、网络通讯技术、智能云端控制、综合布线技术、医疗电子技术依照人体工程学原理,融合个性需求,将与家居生活有关的各个子系统如安防、灯光控制、窗帘控制、煤气阀控制、信息家电、场景联动、地板采暖、健康保健、卫生防疫、安防保安等有机地结合在一起,通过网络化综合智能控制和管理,实现“以人为本”的全新家居生活体验。智能家居研究背景及意义•随着信息技术的发展和物质生活水平的提高,人们对家居生活环境的要求越来越高,家居不仅是居住的场所,也是休闲、娱乐的地方[1]。目前,高科技已经应用于智能住宅中,智能的含义也在不断地深入和变革,不仅是对家居设备进行控制,而且希望能够随时随地地了解家中情况并对其进行远程控制。智能家居系统的系统总设计:嵌入式系统设计硬件设备触摸式液晶屏控制浏览器控制系统测试嵌入式系统嵌入式系统架构嵌入式系统搭建Uboot程序Linux内核根文件系统嵌入式硬件平台应用软件层系统软件层嵌入式系统的架构嵌入式系统是以应用为中心、计算机技术为基础、软件硬件可裁剪,对功能、体积、功耗、可靠性要求严格的专用计算机系统。嵌入式系统组成如图2.2所示,由硬件平台、系统软件层和应用软件层组成。硬件平台包括微处理器和外围设备等;系统软件层包括操作系统、根文件系统和底层驱动;应用软件层包括各种应用程序,如Qt应用程序。•嵌入式硬件平台是系统架构的基础,决定系统所具有的功能,上层结构都是基于这些功能进行开发的。硬件平台有微处理器、存储器(ROM、RAM等)、通用外围设备接口(SPI、I2C、USB等)和I/O接口(数模转换接口、模数转换接口、输入/输出等)。微处理器、时钟芯片和存储器芯片组成嵌入式核心控制模块,可根据任务需求,添加控制模块的外围电路,实现功能扩展。•Linux操作系统是系统软件层核心,负责系统的资源分配和任务调度,包含各种硬件驱动程序,针对具体应用可以对系统内核进行裁剪,减少内核文件数量,提高系统运行速度。•应用软件层位于整个系统的最顶层,由Email、文字处理、通讯软件、个人信息处理和人机交互软件等组成,根据具体需求,有针对性地在应用软件层上进行开发,实现人机交互。嵌入式系统搭建嵌入式系统搭建如图2.3所示,主要分为uboot程序、Linux内核和根文件系统。uboot程序包括引导程序和启动参数;Linux内核是嵌入式中的操作系统;根文件系统包括系统文件和应用程序等。•uboot是由DENX团队开发,用于多种嵌入式SOC(X86、ARM等)的BootLoader程序。uboot是通用的BootLoader程序,一是它能够加载多种不同的操作系统(如Linux、VxWorks等);二是它支持多种架构的微处理器(如PowerPC、x86、ARM等)。uboot操作模式分为启动模式和交互模式,启动模式用于初始化硬件设备、设置内存空间映射和为后续的内核启动做准备;交互模式用于文件下载,将内核镜像等系统文件下载到内存。•Linux内核是嵌入式操作系统的核心,主要实现存储管理、设备驱动挂载、文件管理、进程管理、网络通信和系统调用等功能。选择Linux作为嵌入式操作系统,原因有三点:第一专用性强,针对不同任务可对内核进行裁剪,精简内核、提高工作效率和稳定性;第二功能强大,Linux自带虚拟文件系统和内存管理,支持YAFFS2、CRAMFS等多种格式的文件,支持多种设备驱动,包括网卡、音频和USB驱动等,支持多种网络协议,具有完善的网络服务;第三Linux内核源代码是开放的,不存在黑箱技术,有众多的志愿开发者在协同工作,为Linux提供强大的技术支持。•根文件系统与普通的文件系统不同,它是Linux启动后去挂载的第一个文件系统。根文件系统按照树型结构组织,包含系统运行需要的文件和程序,如内核镜像文件、嵌入式Qt软件等。根文件系统包含的目录有固定的命名,表2.1所示是根文件系统中的目录名及其说明。系统硬件•选择Samsung公司生产的S3C2440微处理器,它是基于ARM公司设计的ARM920T内核,是一款32位RISC微处理器。S3C2440微处理器配有CMOS标准宏单元和存储器单元,在高性能和低功耗方面提供最佳特性,具体有以下几点:(1)完整的体系结构:具有丰富和强大的指令系统,MMU支持多种操作系统,缓存结构能减少执行的带宽和延迟性;(2)强大的系统管理:具有大小端转换模式,存储器有完整的访问周期,在掉电时能够自动更新,配有多种不同的启动模式;(3)高速缓存存储器:由64路的指令和数据缓存组成,可以进行直写和回写操作;(4)多种电源管理模式:普通模式,正常运行模式;空闲模式,停止CPU的时钟;睡眠模式,关闭所有外设电源;(5)丰富的扩展接口:触摸屏、IIC总线、IIS总线、SD主机、USB主机和SPI接口等。触摸式液晶屏控制触摸式液晶屏控制实现方案包括操作界面与串口通信,操作界面由Qt界面程序实现,串口通信由串口驱动、Qt串口通信类和Linux系统函数共同完成,图3.2所示是触摸式液晶屏控制方案设计。操作界面•操作界面主要使用Qt技术,Qt是一款基于C++语言进行开发的图形界面软件,它支持跨平台运行,对于不同的操作平台有对应的Qt软件安装包,Qt专用性强、占用资源少、无需额外安装其他软件。在计算机中安装X86和嵌入式两个Qt软件版本,将编写好的Qt文件经嵌入式版本下的Qt类库进行编译,生成可执行程序,经NFS根文件系统将程序拷贝到嵌入式主板中,启动主板,程序可在触摸屏上运行。•Qt界面设计由安全设置、家电控制和环境信息三部分构成。安全设置是从系统和住户的安全性方面考虑,防止外人进入系统,对家居设备进行操控和获取信息,造成安全和财产方面的损失;家电控制主要包括灯光、窗帘和空调控制;环境信息是用温湿度传感器,对室内的温度和湿度信息进行采集。串口通信方式•数据通信是触摸式液晶屏控制的核心,选择串口通信方式,实现触摸屏与ZigBee协调器之间的数据通信。串口通信属于异步通信,按位发送和接收字节,端口可同时进行数据读、写等操作。串口通信布线简单,经地线、发送、接收3根线即可实现设备之间的连接。串口设备与其他硬件设备一样,在Linux系统中是以设备文件的形式存在,编写串口驱动模块,以insmod方式将驱动模块加载到Linux内核,运用Qt串口通信类和Linux系统调用进行串口数据操作。浏览器控制•运用B/S模式实现浏览器控制,B/S模式的工作框架如图4.1所示,包括浏览器、Web服务器、后台CGI程序和ZigBee协调器。工作流程(1)浏览器发送请求,在地址栏中敲入网页控制系统的URL地址,浏览器遵循Http和TCP/IP协议生成请求报文,将请求报文发送给服务器,报文里面包括URL地址、请求方式和状态码等信息。Http(超文本传输)协议属于应用层协议,用于浏览器与服务器之间的超文本文件传输。TCP/IP协议称为网络通讯协议,属于传输层协议,由网络层的IP协议和传输层的TCP协议组成,TCP/IP协议定义设备如何连入Internet和数据如何在它们之间传输。(2)服务器返回响应,嵌入式系统中的Web服务器接收到请求报文后,对报文进行解析,根据URL地址和请求方式在文件系统中查找相应的文件,将文件以响应报文的形式返回给浏览器,响应报文包括报文头与报文体。(3)调用后台CGI程序,实现控制主板与ZigBee协调器之间的串口通信。CGI程序获取从浏览器发送过来的环境变量,根据变量的字节数,开辟内存空间创建具体对象或结构体,运用系统函数去操作串口文件设备,向串口设备发送和接收数据。(4)浏览器收到响应进行解析,将文件以网页形式在浏览器上呈现,文件包括Html文件、JavaScript文件、样式表和图片等。这些文件不是由Web服务器一次性传递给浏览器,存在先后顺序,Web服务器先将Html文件发送给浏览器,浏览器接收到文件后进行加载,发现Html文件中包含JavaScript文件会再次发送请求,向Web服务器请求JavaScript文件,收到请求后,Web服务器根据请求再次从文件系统中找到相应文件,将它返还给浏览器,其他文件也一样。经过多次请求和响应,当浏览器接收完所有需要的数据后会停止请求,网页加载成功。系统测试•根据前面的设计思路和实现功能,对智能家居控制系统的各个模块进行测试,包括嵌入式系统、硬件设备、触摸式液晶屏界面和浏览器页面。对系统整体进行测试并记录测试数据,测试数据表明,系统工作稳定,实现设备的运行状态控制,顺利完成最初的设计思路和实现功能。总结与展望•根据嵌入式技术的自身特点和智能家居市场的发展状况,提出了系统设计方案及架构,实现智能家居系统的家居设备的环境温度采集和灯光、窗帘、空调控制等功能。•随着物联网的不断发展,软件架构的日趋完善,芯片集成度的不断提升,都将为智能家居控制领域提供更大的发展和提升空间,扩大智能家居产品市场。为人们带来更加便利、更加安全舒适的生活。参考文献•王统基于嵌入式的智能家居控制系统杭州杭州电子科技大学•百度百科智能家居系统•俞超嵌入式系统实例分析——智能家居控制系统ThankYou!
本文标题:基于嵌入式的智能家居控制系统
链接地址:https://www.777doc.com/doc-2248177 .html