基于ARM9的智能家居模拟系统实现

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于ARM9的智能家居模拟系统实现智能家居是以住房为平台,利用了综合布线、系统设计、网络通信、安全防范、自动控制等技术。将家居生活有关的设施集成,构建成高效的住宅设施与家庭日程事务的管理系统。提升了家居安全性、便利性、舒适性、艺术性,并实现了环保节能的居住环境。因其牵涉到的知识面很广,现实中实现难度较大。通过研究总结,利用amr9开发板和网页技术完全可以实现模拟智能家居系统的搭建。

硬件设备:

(1)装有linux系统或装有linux虚拟机的pc机一台;

(2)凌阳s3c2440 开发板一个(5vdc电源适配器);

(3)gprs模组(9vdc电源适配器,sim卡);

(4)温湿度传感器:sht10;

(5)usb摄像头;

(6)导线若干(10芯单排线,4芯单排线,开发板串口线,网线)。

大体步骤如下:

(1)移植boa;(2)编写html文件;(3)编写cgi 程序;

(4)移植mjpg-streamer;(5)编写gprs 相关程序。

将开发板模拟住宅设备,利用ie浏览器访问boa 服务器,通过在浏览器终端点击不同button,使boa 服务器调用不同的cgi 脚本程序,实现对住宅内设备信息的读取及控制等操作,从而完成对

住宅的远程管理。可以实现的功能有灯光控制,温湿度监控和报警,实时视频监控。原理结构图如下:

图1

一,boa 是一款单任务的http 服务器,与其他传统的web 服务器不同的是,当有连接请求到来时,它并不为每个连接单独创建进程,也不通过复制自身进程来处理多链接,而是通过建立http请求列表来处理多路http连接请求,同时它只为cgi 程序创建新的进程,这样就在最大程度上节省了系统资源。boa 服务器和普通web 服务器一样,能够完成接收客户端请求、分析请求、响应请求、向客户端返回请求结果等任务。

boa 的工作过程主要包括:

(1)完成web 服务器的初始化工作,如创建环境变量、创建tcp 套接字、绑定端口、开始侦听、进入循环结构,以及等待接收客户浏览器的连接请求。

(2)当有客户端连接请求时,web服务器负责接收客户端请求,并保存相关请求信息。

(3)在接收到客户端的连接请求之后,分析客户端请求,解析出请求的方法、url 目标、可选的查询信息及表单信息,同时根据请求做出相应的处理。

(4)web 服务器完成相应处理后,向客户端浏览器发送响应信息,关闭与客户机的tcp 连接。

boa 服务器根据客户端请求方法的不同,做出不同的响应:

(1)如果客户端请求方法为head,则直接向浏览器返回响应首部。

(2)如果客户端请求方法为get,则在返回响应首部的同时,将客户端请求的url 目标文件从服务器上读出,并且发送给客户端浏览器。

(3)如果客户端请求方法为 post,则将客户发送过来的表单信息传送给相应的cgi 程序,作为cgi 的参数来执行cgi 程序,并将执行结果发送给客户端浏览器。boa的功能实现也是通过建立连接、绑定端口、进行侦听、请求处理等来实现的。

二,html文件在开头通过申明包含编写好的javascript,实现信息交互处理。可以添加用户登录认证,室内设备状态显示区域和控件,在浏览器上模拟出家居环境。从而为终端控制建立友好的用户界面。

三,通常情况下cgi程序被用来解释处理来自用户浏览器表单的输入信息,在服务器产生相应的处理,并将相应的信息反馈给浏览器处理。 cgi可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。

四,mjpg-streamer,是用于从摄像头采集图像的视频服务器,它把图像以流的形式通过基于ip的网络传输到浏览器如ie。可以利用某些摄像头的硬件压缩功能来降低服务器cpu 的开销。它为嵌入式设备和一些常规服务器提供了一个轻量且更少cpu 消耗的方案。需要注意的是首先安装浏览器播放视频流所需的插件,其次编

写html时将开发板的ip作为激活摄像头的超连接,最后给开发板烧写配置好摄像头的内核镜像。

相关文档
最新文档