论文研究-基于ZigBee的智能家居系统的设计与实现 .pdf

所需积分/C币:22 2019-08-16 11:14:57 421KB .PDF

基于ZigBee的智能家居系统的设计与实现,NGETH Rithea,刘家康,本文给出一个智能家居系统方案。其中使用ZigBee网络技术来构建家庭的内部网,使用三个配置Jennic公司的JN5139模块的传感器板作为硬件平
国科技论文在线 嵌入式系统开发板 本文使用由飞凌嵌入式技术有限公司设计牛产的一款基于 的嵌入式开发平台一 ,它基于三星公司的 处理器 ,主频为 ,具有 内存、 个串口、四个 接口、一个 网口等。目前已成功 移植 等操作系统到 开发板。 系统的软件设计 网络节点的应用程序设计 网络节点的应用程序通过 公司提供的軋置廾发软件平台 软件米实现。运行在 系统上的应用程序实际上是和 协议栈交替地对处 理器和外围部件进行操作。为了实现这个目标, 协议栈的基础上提供了 ()。应用程序负责启动 协议栈和 本文将三个传感器板设为三个不同的 节点类型,即分别设为 (协调 器) (路山器)和 (终端设备),以体现各个节点类型的特点。该三个 节点构成了一个树形拓扑结构网络。因为缺乏硬件的开发,应用功能只能通过假设来完成。 如果需要正式开发作为产品,这些功能需要根据实际的环境下进行设计和扩展。各个节点的 应用程序流程图如图所小。以下为各个节点实现的应用功能。 节点的应用功能 节点就是网络的协调器(主节点)。 通过串∏线或转换 串凵线连接到家庭网关。它的功能除了建立网络、允许其它节点加入网络、转发信息等的网 络功能之外,还要实现的应用功能为:通过解读和转发信息来实现子节点和家庭网关之间的 通信;当有报警信息发送过来时,将一个传感器板的闪烁。 节点的应用功能 本文将 节点板上的一个假设为是一个家电设备,其可以由 节点、 于机短信、监控网页进行监控。当 节点成功加入网络之后,它与 节点进 行绑定 节点除了提供路由和允许其它节点通过它加入刚络的网络功能之外,应用功 能主要是:当收到控制信息之后, 节点将做出相应的操作(将变亮或变灭),然 后将操作完之后的状态通过 节点返回给家庭网关;当有报警信息发送过来 时,将另个的闪烁。 节点的应用功能 节点通电之后通过 节点加入网络,以形成树形拓扑结构,然后它与 节点进行绑定。本文将 节点假设为一个开关,利用了传感器板的两个按 键,其中一个按键用来搾制节点板上的,另一个按键用来发送报警信息。远端用 户可以通过于机短信或监控网页来得知报警信息。报警信息假设为家里发生异常的情况时发 出的信息,本文将其假设为老年人求助的请求。该报警信息通过 节点转发到家 庭网关来做处理。另外, 还负责将采集到的温湿度传感器数据和电池电压值按 定的时间周期性地通过 节点发到家庭网关。该数据也可以通过手机短信来查 询 国科技论文在线 ca- ordinate节点的应用程序流程图 Router节点的应用程序流程图 End-Dcvc节点的应用序沇程图 要金兴掉 喁信息? 建立网络 加人网格 Bos丿sta ERouter节点绑定 妹传感数据 定时时 BOS/Stac 有数来白 解硖并转发 从转发到家庭网关 亲网关? 子节点 有控制息 来自1 采集传感器数据 有数話来自 足解读.理并信息 节息购作 害请求? 转发到所网其 解并做出粗应的处理 通过节点向家庭网大发送 到家庭网 处理完牛之后的状态信」 图每个节点的应用程序流程图 动态网站的设计 木文使用技术、服务器和 数据库来设计一个动态网站。在机上安 装了 系统、健立了交叉编译器并配置了网∏传输协议。交叉编译器用于 编译出在嵌入式环境下运行的代码。用于将文件从机移植到嵌入式开发板上 服务器的搭建 是一个非常小巧的服务器,可执行代码只有约 它是一个单任务 服务器,只能一次完成用户的请求,而不会创建出新的进程来处理并发连接请求,但 支持,能够为程序创建出一个进程来执行。的设计日标是速度和安仝,在其站 点公布的性能测试中 的性能要好于 服务器。源码可以从 网站免费下载,本系统使用 版本 的搭建步骤如下 解压文件包 生成 打廾 ,找到 ,将其改成 ,再找到 ,将其 改成 。另外,安装之前需要确保和都凵经安装,否则 时就会出错。如果还没安装,可以通过 和 命令来安 装。除此之外,为了避免预处理错误,编译之前需要修改 文件,其中将 修改成 然后进行编译: 编译 在开发板的上创建 配置文什中所涉及到的目录,比如:日志文件所在的目录为 文档的主目录为 和脚本所在目录为 和 运行文件放在开发板的口录下。此外,还需要将 文件复制到 开发板的日录下,通常可以从 机的日录下直接复制即可 数据库 是 用语言编写的开源嵌入式数据库引擎 是·个非常 适合嵌入式应用的数据库,这可以从其设计的目的和独立的优势看出。 设计的主要 目的是简单:简单的管理、简单的操作、简单的嵌入、简单的维扩。 数据库的优点 国科技论文在线 来自于的嵌入式运行模式,它使用精简代码编写,零配置,直接在应用程序进行中运行,并 且占用资源非常少,并且它没有管理员,具有自调节和自适应能力,能够“无处不在” 的源码可以从 网站下载,本系统使用版本。 的搭建的步 骤在参考文献中有所介绍 本系统用到的 的操作有: 等。另外, 在网页程序设计中用到了 函数。这个函数用来检测特定数据库连接所有 和 操作,对这些操作中所涉及的每一行鄱进行枍测,该函 数的声明如下: 其中,为数据库的指向指针,中间参数为回调函数。回调函数的第一个参数是一个指向 特定应用数据的指针,其在 的第三参数给出的。 叫调函数的形式如下 其中, 是发生的操作,它的值会为 或 ,分别对应于 或 操作。第三个和第四 参数对应于发生操作的数据库名和表名。最后一个参数是受影响的行号。回调函数不调用系 统表上的操作(例如: 和 )。返回值是指向之前注册的回调函 数参数的指针,如果它存在的话 网页程序的设计 本系统使用技术来实现网页程序。 )是外部扩展 应用程序与服务器交互的一个标准接口。按照标准编写的夕部扩展应用程序可以 处理客户端浏览器输入的数据,从而完成客户端与服务器的交互操作。通过可以提供 许多静态的 网页无法实现的功能,如搜索引擎、基于的数据库访问等。 可以使用多种编程语言米实现,包括 和等,本系统使用语言米编写 。本系统的动态网站设计比较简单,可以继续扩展。本系统的网站的结构图如图所示。 脊录失败 x jsp goff.Jsp 十秒钟刷新 佟本系统的树站结构图 图中的各个网页程序的实现功能为 为主页,要求用户用自己的用户名和密码登录 执行登录的操作,将査数据库中的用户名和密码,如果存在就将转到 否则转到 并提示用户名和密码错误的警告信息。 监控网贞,內贝里面显小求助状态(报警信息 节点的的状态 国科技论文在线 和控制、当前的传感器数据以及之前传感器数据的记录。该网页程序的主要操作吋查询数据 库的数据并将结果显示在页面上。该页面秒钟将刷新一次。 和 :当控制时,如果仗它变亮就执行 ,如果使它变灭就 执行 两个程序将数据库里的状态更新。另外在两个程序中用到 函数,来检测数据库的 操作。在冋调函数中检测到的事件相关 信息将写入到 管道里。当应用程序检测到 有信 息发送过来时,将去读该信息并做相应的处理。这两个程序操作完之后转回到 退出 并返回到 应用程序的设计 应用程序主要完成 的主节点 模块和数据库之间的通信。 主节点 和 模块电路板通过串口或口连接到嵌入式系统开发板。本文使用多进程技术, 将应用程序划分为多个独立的仟务,有效地提高了系统的运行效率。本应用程序主要有四个 进稈:父进稈、处理 主节点的数据子进稈、处理模块的掉制子进程和处理 数据库的操作子进程,将该三个子进程分别称为 进程 进程和 进程。 四个进程通过有名管道方式来逑行通信。进程之间通信的框架如图所示。 Z GBEE进程 进程 GFRS进程 GPRS PIP MINSCLITE II2 SQL TE进程 图进程之间通信的框架 另外,各个进程运用了多路复用的机制来监听管道文件搆述符的有数据可读 的事件以及串口文件描述符的有数据可读或串口可写的事件。各个进程的主要任务如以下的 介绍。应用程序的简略流程图如图所示, 父进程 父进程主要完成子进程之间的通信,子进程将向其它子进程发送的信息先发送到父进程 来处并转发到目的子进程。父进程使用创建子进程之后,使用机制来监听 和 文件描述符的有数据可读的事件 进程 进程主要完成 主节点与 模块和 数据库之间的通信 进程使用机制来监听串口文件描述符有数据可读和串口可写的事件以及 文件描述符的有数据可读的事件。 进程 进程主要完成模块与 主节点之间的通信、以及 模块的控制。 进程使用机制来监听串口文件描述符有数据可读和串口可写的事件以及 国科技论文在线 文件描述符的有数据可读的事件。 进程 进程主要完成 主节点与网页程序( )之间的通信以 及 数据库的操作 进程也使用机制来检测 和 文件描述符的有数据可读的事件。 串口述符 读取到的信息写入到 父进程 2EEE进程 有沐料率件(是否有数可诀 2 GBLL PIPD里以通过 牢||可) 父进程转发到且它子进程 创建子进程 将要发送到GBEE主节点的 命合息写人到串口里 描述符、监听事件 读取并解析数据,准备向 PPL文件描述符 囗写入要发送到 ZIGBEE 监听 ZIGBEE F 是否有数据可读) 主点的控制信息 GHRS‖和 SQLITE PIPE 呼数据读取、解析、做出 柞应的处 文件描述符 (是否有数据可读) 监听串囗文牛茁述符 写人相应的AT指合读 GPRS进程 创建并添加cpo‖ 南迹符、监听事件“(是百有数运可 短信或思除短信又发送 年凵可写) 短信):将跟短信命 将数据认取,解析开 柞应的控制信息写入 写人到相应的管道里 GPRS F|PF里以通过父进程 以转发到目的子进程 转发到GBL[走程 刖除短信发运短信)写入 PPE文件描谏符 囗甲写人要发送相应的 是否有数据可读) 短信的A指合 创建并添加epol 听 SQLITE HOOK lTF讲「 读取并解析数据,对数据库 述符、监听事件 PPE文件描述符 执行相应的操作 是否有数据可读 听MAN2SQLE 读取并解析数据,将票发法 PPE文件描述符 到GEEE主点的控制信息 是否有数据可读) 「写入到Q凵上HH里以通 讨父讲程转发 EZIGBEE井 图应用程序的流程图 整个系统的调试 )将服务器的相关文件 网页程序、 数据库相关的文件及应用程序都 移植到嵌入式系统开发板上;设服务器和应用程序在嵌入式系统开发板启动时候自启 动运行:在嵌入式系统的 文件中加上以下的启动代码(假设运行文 件和应用程序分别放在和日录下) )利用 软件将通过 编译好的二进制文件写入到 传感器板的闪存上 )将 模块电路、 主节点通过串口或口连接到 如图所示。 然后将 开发板、 模块电路先后上电: 国科技论文在线 图整个系统的实际图 )将传感器板上电:先启动 节点,再启动 节点,将 节 点放在离 节点很近的地方再将它启动,以让 节点能通过点加入 网络,以形成个树形拓扑结构网络;从此可以对各个节点的功能进行测试; )通过飞信软件来发送或接收短信,使用短信对传感器板进行控制测试 )通过浏览器进入监控网页,通过监控网页对传感器板的进行控制测试 通过手机短信和浏览器对系统进行调试的运行结果如图所示。经过调试之后 本系统可以实现预期的功能。 Eithea22-12-E c lely is Neeley! 智能家居远程监控系统 Rith422:14:20 连销 3 n roT. 最新数据 电电压 度(c Y地M。dsn led is ff Fi thea22-15:29 从前数据 G3 Moden22-14-40 CPR Moden 22-15-25 x上xm led2 is on naw 1/ot1:14 过手机短信对系统进行调试的运行结果 系统运行时的监控百 图通过手机短信和浏览器对系统进行调试的运行结果 结论 本文给了个智能家居系统方案,其家烶网关的应用程序运行效率比较高。实现的功 能只能应用在实验室中,对实际生活中的应用还需要根据用户的需求进行设计和扩展。本系 统还要做更多的开发工作:根据需求对硬件进行设计;增加更有实用性的功能比如内部网节 点的睡眠功能、家庭网关的监控界面、语音视频传输等;对完成设计的系统进行试用,以了 解用户对系统的感受、需求、评价等,能给制作商或往后的研发工作提供一个参考。 参考文献 蔡俊宇苤于的智能家居系统设计与实现武汉武汉哩工大学 韩双双基于 无线网络的智能家居系统关键技术研究吉林吉林大学 李新峰,何广生,赵秀文基于 的嵌入式开发技术北京:北京航空航天大学出版社,

...展开详情
img

关注 私信 TA的资源

上传资源赚积分,得勋章
相关内容推荐