《基于IPv6的智能家居系统设计(共17页).doc》由会员分享,可在线阅读,更多相关《基于IPv6的智能家居系统设计(共17页).doc(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上基于IPv6的智能家居系统设计 摘要:智能家居系统综合利用网络技术、自动控制技术,实现对家电设备的集中管理,同时为用户提供远程控制的功能,从而使用户能够在千里之外了解家电设备的工作状态,并对家电设备的工作方式进行控制。然而由于基于IPv4的互联网络的地址位宽的限制,路由效率等问题,正阻碍着智能家居系统的推广。IPv6技术的出现,很好解决了上述的问题。本文对基于IPv6技术的互联网络中如何开展智能家居系统的设计问题进行研究,分析和总结IPv6技术中支持智能家居系统的一系列新特性,并以此为基础进行智能家居系统的总体设计,给出一套基于IPv6技术的智能家居系统总体设计方案。
2、 关键词:IPv6 智能家居 网关设备 RIPng 中图分类号:TP273.5 文献标识码:A 文章编号:1007-9416(2014)03-0134-04 在进行智能家居系统的设计时,首先需要确保满足家庭的实际功能需求,充分利用现有的技术条件,并在满足功能需求的基础上适当的保持一定的前瞻性,以支持系统未来一段时间内的扩展性。 1 智能家居系统架构 基于IPv6技术进行智能家居系统设计,与传统的系统设计相比一个显著的优点就是利用IPv6协议所提供的海量的地址空间,可以将系统中的每个设备都通过以太网进行连接,从而使得网络的结构形式统一,且所有的家电设备能够与用户终端进行点对点的直接通讯,降低系统
3、对家庭网关设备的依赖。 用户终端可以是安装了智能家居客户端的电脑和智能手机设备。用户通过智能家居客户端所提供的用户界面进行各类信息的查看和家电设备的控制等操作。家庭网关设备是远程用户终端在家庭网络环境中的一个本地代理设备,主要实现对智能家电设备的本地化管理功能和对所有数据包的路由功能。各类家电设备安装了控制模块的家电设备,可以运行经过裁剪的IPv6协议,从而使得家电设备能够通过以太网与家庭网关设备和用户终端设备进行通讯。 2 智能家居网关设备 智能家居网关设备是系统中的一个重要设备,该设备作为用户终端设备的一个本地代理,负责者系统中的各类家电设备的管理以及用户终端设备与家电设备之间数据交互的路
4、由功能。 2.1 操作系统的选定 目前嵌入式系统中所常用的实时操作系统主要有两类,分别是VxWorks和嵌入式Linux。这两个操作系统中,VxWorks系统内核目前还不支持IPv6协议,因此需要对系统内容进行改造,这一工作不仅技术难度高,同时购买内核源码的费用也相当可观,不适合本课题的研究。而嵌入式Linux系统集成了丰富的网络功能,支持多种平台,并采用了模块化的设计结构,而且集成了IPv6协议,同时嵌入式Linux还是个开源的系统,能够方便的进行相关代码的修改,各类相关学习和研究资料也丰富。因此,Linux系统是一个较好的选择。本课题的研究中选择了嵌入式Linux作为家庭网关设备的操作系统
5、平台。 2.2 IPv6的实现 在嵌入式Linux操作系统的net/IPv6目录和include/net/IPv6.h头文件中,存放了嵌入式Linux系统中实现IPv6协议所需的全部代码。在实现中IPv6是在IPv4的基础之上实现的,因此两种具有很大程度上的共性。在IPv6中的数据包传输过程可以形成三种方式,数据包可以通过三种方式中的任何一种进行传输。本地传输层所创建的数据包通过ip6_xmit接口进行传输,通过一系列中间环节的处理后,最后到达ip6_output_finish,完成发送处理。本地网卡所接受到的数据交给ipv6_rcv接口后开始进行接收处理。 3 网络通信机制详细设计 3.1
6、路由机制详细设计 RIPng路由机制拥有IGP的优势,是一种解决IPv6网络中的路由问题的首选方案,具有无限的潜力。面向IPv6的RIPng路由协议在继承了RIPv1和RIPv2协议主要特性的基础上,进行了一些改进。所作的改进内容主要集中在信息格式以及地址相关方面,主要可以概括为以下三个方面。 (1)RIPng中路由消息传输的通信端口由原先所使用的520端口修改为521端口。(2)由于在IPv6中对地址空间进行了扩展,因此在RIPng的消息格式中,地址空间也由32位扩展到了128位,且去掉了子网掩码字段。(3)RIPng中借助IPv6的安全机制来确保路由信息更新的安全性和保密性,因此无需再设计
7、其他安全操作。RIPng路由功能的实现可以划分为6个功能模块,如(图1)所示。 路由操作的过程可以描述为: (1)启动RIPng;启动RIPng过程中主要完成一系列的初始化操作,包括初始化路由表,初始化接口列表,初始化访问列表,初始化前缀列表,以及重定向路由匹配原则和为各个相关的命令指定相应的接口函数,并生产RIPng所需要的接口。(2)输入管理;输入管理过程主要是对UDP端口进行监听,并对接收到的包进行读取,然后分辨接收到数据包的类型,分别进行相应的请求处理和响应处理。(3)输出管理;输出管理主要负责对路由的周期更新以及触发更新等进行处理,发送相应的路由更新包。在路由更新包中,目的地址设为本
8、地的多播地址,即面向本地局域网内的所有节点进行发送。(4)路由处理;路由处理中主要负责对本地的路由表进行维护和更新。在路由处理中会对接收到的路由响应包进行解析,从路由响应包中提取出相应的RTE信息,并将该RTE与本地路由表中所存放的RTE进行比对,从而对路由记录进行更新,对新发现的路由记录进行添加,对过期的路由信息进行删除。(5)定时器;定时器是整个路由协议中的一项重要功能。根据路由机制的设计,共需要使用到三种定制器,分别是周期更新定时器,超时定时器和路由失效定时器,下面将分别进行描述。(6)停止RIPng;停止RIPng时首先需要通知内核删除由其保存的部分路由信息,然后停止所有的定时器,删除
9、RIPng路由处理模块中所维护的路由信息表,最后清除RIPng所创建的线程和Socket,并释放相应的资源。 3.2 家电信息登记协议 家电信息登记协议主要用于新加入智能家居系统的家电设备进行系统注册和设备识别等过程进行约束。家电信息登记的过程主要包括三个阶段,分别是:网关设备的识别,网络地址的分配和家电设备相关信息的登记。由于在智能家居系统中,家电设备硬件设计上的限制,使得家电终端设备的CPU处理能力有限,因此在设计中对协议栈进行了裁剪,只保留了最基本的TCP/IP网络通信功能和路由功能。由于删除了DNS等协议,因此在网络中就需要自行实现动态地址分配的功能。该功能正式通过上述的网关设备识别和
10、网络地址分配的过程来实现。 (1)家电信息登记协议报文格式;家电信息登记协议报文有几种基本的格式,分别用于家电信息登记过程中的广播网关查询,网关查询应答,设备信息登记和设备登记应答等操作,相应的需要分别定义一种格式的协议报文。报文类型字段占用一个字节的长度,用于指定本条协议报文的类型。该字段用于对上述的四种协议报文进行区分。 (2)家电信息登记协议过程描述;家电信息登记的协议过程可以分为两个阶段,即包含了两次握手的过程。第一阶段是进行网关设备的识别,并从网关设备处获取该家电设备的地址。第二阶段是进行家电设备信息的登记。登记的过程如(图2)所示。 在家电设备发起第一个阶段的通信之前,需要先进行是
11、否需要进行信息登记的判断。该判断通过查询本地所维护的设备登记状态标记来实现。若该标记指示家电设备未完成信息登记,于是家电设备就需要发起家电信息登记的过程。设备组织一条网关查询广播报文,并广播该报文。发送完成后,家电设备就监听网关设备的应答,同时启动一个定时器和一个计数器。该定时器用来进行该广播报文的超时判断,若定时器超时后仍未收到网关设备的应答,则认为该广播报文发送失败,重新发送广播报文。在第二阶段的通信过程中,家电设备根据第一阶段所获取网关设备地址,组织设备信息登记报文,在该报文中详细的描述设备的类型、设备的功能、设备的厂商等信息,根据所指示的网关设备地址,向网关设备发送该报文。 3.3 家
12、电控制协议 家电控制协议是本文所设计的智能家居系统的核心,智能家居网关设备或者用户操作的终端都通过本协议实现对家电设备工作状态的查询和控制;同时家电设备的各类报警信息也是通过该协议向网关设备或者用户终端发送。在本协议交互过程中,涉及到三个主体,分别是用户终端、家庭网关设备和家电设备。在基于IPv6的网络协议中,这三类设备都可以互相直接访问。 (1)控制协议报文格式;控制协议所需要支持的操作流程包括两大类,分别是用户发起的对家电设备的工作进行控制或者是对工作状态进行查询的操作过程和由家电设备所发起的报警操作过程。为了保障通信的可靠性,在每个操作过程中都设计了一个握手交互的过程。 (2)控制协议过
13、程描述;在本智能家居系统中,用户可以通过特定的终端设备来控制各类家电设备、查询家电设备的工作状态或者接收家电设备所上报的各类报警信息。确认提交后,用户终端设备就会组织一条设备工作控制请求消息,在该请求消息中承载用户所提交的控制命令类型和控制参数。然后将用户所指定的控制对象的地址作为该控制请求消息的目的地址,并发送该消息。发送完成后就监听家电设备的响应消息,同时启动一个定时器。如图3所示。 4 安防子系统详细设计 安防子系统是智能家居内网系统中的一个组成部分。安防子系统所包含的功能主要包括门禁控制功能,报警功能和火警功能等。下面将对这些功能模块的设计分别进行描述。 4.1 门禁模块功能设计 (1
14、)功能设计;门禁模块所实现的功能主要包括三个方面,分别是在设备上电后自动进行设备信息登记,然后在用户终端的控制下进行门的开关控制,最后是对门的开关状态进行检测,并在第一时间上报门的开关状态变化。 (2)硬件设计;门禁模块的硬件设计上主要包括三个组成部分,分别是:电插锁模块,门磁传感器和主控模块。其中电插锁模块能够接收数字的控制信号,用于控制锁舌的抬起和放下,从而实现对门开关的控制。门磁传感器由两个磁极构成,当两个磁极靠近时电信号导通,磁极远离时,电信号断开。主控模块主要有STM32的MCU控制器STM32F103C8T6和相应的以太网控制物理层芯片ENC28J60L构成。该MCU控制器具有体积
15、小,功耗低的特点,同时集成了以太网MAC模块,能够方便的实现IPv6协议,与ENC28J60L芯片一起,能够实现与网关设备和用户终端设备之间的网络通信。 (3)软件设计;门禁模块的软件系统工作可以划分为两个阶段,分别是启动阶段和值守阶段。在设备上电后首先进入启动阶段,在该阶段发起设备信息登记过程,与网关设备进行交互握手,从而完成设备的登记操作,将设备的信息添加到网关设备中,然后从网关设备端获取自己的地址,从而完成网络接口的重配置。接下来进入到值守阶段。在值守阶段,同时监听网络端口的设备工作控制请求帧和检测门开关的状态。本系统软件设计上采用一个1s的定时器触发进行两项检测操作。当接收到设备工作控
16、制请求帧后,即对请求的内容进行解析,从中提取出相应的控制内容和控制参数,从而进行相应的开门和关门操作。当检测到门的开关状态发生变化后,即组织相应的设备状态上报帧,上报门的开关状态。上述操作过程的可以用如下的伪代码来描述。 ISR_TIMER() If(接收到设备工作控制请求) 发送开关门指令; 反馈设备工作控制响应; 读取门开关状态; If(当前开关状态!=历史开关状态) 发送设备状态上报消息; 历史开关状态=当前开关状态; 4.2 报警模块详细设计 (1)功能设计;报警模块所实现的功能主要包括两个方面,分别是在设备上电后自动进行设备信息登记,然后是对室内的红外信号进行监测,当出现目标信号后第
17、一时间上报相应的状态。 (2)硬件设计;报警模块的硬件设计上主要包括两个组成部分,分别是红外传感器和主控模块。其中红外传感器主要用于对室内的红外信号进行检测,并在检测到红外信号后在输出引脚上给出高电平报警信号。主控模块的设计与门禁模块相同,采用STM32F 103C8T6和相应的以太网控制物理层芯片ENC28J60L构成。将红外报警模块的输出信号与STM32F103C8T6的Wakeup脚和PA0脚相连。当红外报警器给出报警信号时,能够通过Wakeup脚唤醒主控模块,然后主控模块可以通过检测PA0脚对报警状态进行确认。 (3)软件设计;报警模块的软件系统工作可以划分为两个阶段,分别是启动阶段和
18、值守阶段。在设备上电后首先进入启动阶段,在该阶段发起设备信息登记过程,与网关设备进行交互握手,从而完成设备的登记操作,将设备的信息添加到网关设备中,然后从网关设备端获取自己的地址,从而完成网络接口的重配置。接下来进入到值守阶段。在值守阶段,为了降低设备的能耗,设备的主控模块会进入到休眠态由红外传感器保持对目标区域的检测。当红外传感器检测到红外信号后,给出高电平报警信号唤醒主控模块。主控模块读取PA0脚的状态,并组织设备状态上报帧,向网关设备发送报警消息。上述操作过程的可以用如下的伪代码来描述。 Process_Alarm() 读取红外传感器状态; If(报警信号有效) 发送设备状态上报消息;
19、4.3 火警模块详细设计 (1)功能设计;火警模块所实现的功能主要包括两个方面,分别是在设备上电后自动进行设备信息登记,然后是对室内的烟雾信号进行监测,当出现目标信号后第一时间上报相应的状态。 (2)硬件设计;火警模块的硬件设计上主要包括两个组成部分,分别是:烟雾传感器和主控模块。其中烟雾感器主要用于对室内的烟雾进行检测,并在检测到烟雾浓度超过门限后在输出引脚上给出高电平报警信号。火警模块的主控部分的设计与报警模块相同,采用STM32F103C8T6和相应的以太网控制物理层芯片ENC28J60L构成。将烟雾传感器的输出信号与STM32F103C8T6的Wakeup脚和PA0脚相连。当烟雾传感器
20、给出报警信号时,能够通过Wakeup脚唤醒主控模块,然后主控模块可以通过检测PA0脚对报警状态进行确认。 (3)软件设计;报警模块的软件系统工作可以划分为两个阶段,分别是启动阶段和值守阶段。在设备上电后首先进入启动阶段,在该阶段发起设备信息登记过程,与网关设备进行交互握手,从而完成设备的登记操作,将设备的信息添加到网关设备中,然后从网关设备端获取自己的地址,从而完成网络接口的重配置。接下来进入到值守阶段。在值守阶段,为了降低设备的能耗,设备的主控模块会进入到休眠态由烟雾传感器保持对目标区域的检测。当烟雾传感器检测到烟雾信号后,给出高电平报警信号唤醒主控模块。主控模块读取PA0脚的状态,并组织设
21、备状态上报帧,向网关设备发送报警消息。上述操作过程的可以用如下的伪代码来描述。 Process_Alarm() 读取烟雾传感器状态; If(火警信号有效) 发送设备状态上报消息; 5 控制子系统详细设计 控制子系统是本文所设计的智能家居系统的一个重要子系统,是智能家居内网系统中的一个组成部分。控制子系统所包含的功能主要包括灯光控制功能和窗帘控制功能等。下面将分别对这些功能模块的设计进行描述。 5.1 灯光控制模块详细设计 (1)功能设计;灯光控制模块所实现的功能主要包括三个方面,分别是在设备上电后自动进行设备信息登记,然后在用户终端的控制下进行灯光照明控制,最后是对灯光状态进行检测,并在第一时
22、间上报门的开关状态变化。 (2)硬件设计;灯光控制模块的硬件设计上主要包括三个组成部分,分别是:开关继电器模块,光照传感器和主控模块。其中开关继电器能够接收数字的控制信号,用于控制电灯开关的打开和闭合,从而实现对灯光的控制。光照传感器用于对室内的灯光照明状态进行检测。当室内的照明亮度低于某个门限值时,传感器输出低电平,反之则输出高电平。灯光控制模块的主控部分设计与门禁模块相同,主要由STM32的MCU控制器STM32F103C8T6和相应的以太网控制物理层芯片ENC28J60L构成。同时MCU的输入输出接口与开关继电器和光照传感器相连。分别用于对开关继电器进行控制和对光照传感器进行检测。 (3
23、)软件设计;灯光控制模块的软件系统工作可以划分为两个阶段,分别是启动阶段和值守阶段。在设备上电后首先进入启动阶段,在该阶段发起设备信息登记过程,与网关设备进行交互握手,从而完成设备的登记操作,将设备的信息添加到网关设备中,然后从网关设备端获取自己的地址,从而完成网络接口的重配置。接下来进入到值守阶段。在值守阶段,同时监听网络端口的设备工作控制请求帧和检测门开关的状态。本系统软件设计上采用一个1s的定时器触发进行两项检测操作。当接收到设备工作控制请求帧后,即对请求的内容进行解析,从中提取出相应的控制内容和控制参数,从而进行相应的开灯和关灯操作。当检测到室内的照明状态发生变化后,即组织相应的设备状
24、态上报帧,上报室内的照明状态。上述操作过程的可以用如下的伪代码来描述。 ISR_TIMER() If(接收到设备工作控制请求) 发送开关等指令; 反馈设备工作控制响应; 读取室内照明状态; If(当前照明状态!=历史照明状态) 发送设备状态上报消息; 历史照明状态=当前照明状态; 5.2 窗帘控制模块详细设计 (1)功能设计;灯光控制模块所实现的功能主要包括三个方面,分别是在设备上电后自动进行设备信息登记,然后在用户终端的控制下进行窗帘的开关控制。最后是根据用户终端的查询请求,反馈窗帘的开关状态。 (2)硬件设计;窗帘控制模块的硬件设计上主要包括三个组成部分,分别是:步进电器控制模块和主控模块
25、。其中步进电机控制模块由相应驱动芯片ULN2003和28BYJ永磁步进电机两部分组成,能够接收数字的控制信号来驱动步进电机进行正转和反转,用于控制窗帘的打开和关闭。窗帘控制模块的主控部分设计与门禁模块相同,主要由STM32的MCU控制器STM32F103C8T6和相应的以太网控制物理层芯片ENC28J60L构成。同时MCU的输入输出接口与开关继电器和光照传感器相连。分别用于对开关继电器进行控制和对光照传感器进行检测。 (3)软件设计;窗帘控制模块的软件系统工作可以划分为两个阶段,分别是启动阶段和值守阶段。在设备上电后首先进入启动阶段,在该阶段发起设备信息登记过程,与网关设备进行交互握手,从而完
26、成设备的登记操作,将设备的信息添加到网关设备中,然后从网关设备端获取自己的地址,从而完成网络接口的重配置。接下来进入到值守阶段。在值守阶段,主要监听网络端口的设备工作控制请求帧。本系统软件设计上采用一个1s的定时器触发进行检测操作。当接收到设备工作控制请求帧后,即对请求的内容进行解析,从中提取出相应的控制内容和控制参数,从而进行相应的开窗帘和关窗帘操作。上述操作过程的可以用如下的伪代码来描述。 ISR_TIMER() If(接收到设备工作控制请求) 发送开关等指令; 反馈设备工作控制响应; 6 结语 本文主要对智能家居系统的实现方案进行详细设计,内容包括两个方面,一个是网关设备中所运行的路由机
27、制和在整个智能家居系统中所运行的家电信息登记机制和家电设备控制机制等。基于该通信机制,家电设备能够完成设备信息的登记,用户终端能够实现对家电设备的远程控制。另一个是对智能家居系统中安防子系统和控制子系统的实现方案进行了详细的设计,包括每个子系统中各个模块的功能设计,硬件设计和软件设计等。 参考文献 1高小平.中国智能家居的现状及发展趋势J.低压电器,2005,4:19-21. 2王恒哲.下一代网络及其业务生成技术的研究与发展J.当代通信,2006(6):24-25. 3黎辉.ZigBee技术在中国智能建筑中的应用J.智能建筑电器技术,2009,3(6):89-91. 4吴巍,吴明光.国内三种智能家居网络协议综述J.低压电器,2007,2:24-27. 5鲍祖尚.基于嵌入式Internet的信息家电的研究与设计J.微计算机信息,2001, 06:97-98. 6王唯.基于网络协议层次结构安全性探讨J.网络安全技术与应用,2005,10:26-28.专心-专注-专业