论文研究-基于S3C2440A的智能家居网关设计 .pdf

所需积分/C币:44 2019-08-22 20:18:45 420KB .PDF
44
收藏 收藏
举报

基于S3C2440A的智能家居网关设计,冯军,,智能家居网关集成了协议转换、自动控制以及安全验证等服务,是一种功能强大的服务平台,对智能家居的发展起着重要的促进作用。本
团技论文在线 http:/www.paper.edu.cn 优良,和标准的 Linux一樺,嵌入式 linux支持各种各样的硬件平台,花费不高、拥有卓 越的性能,而且对网络功能有很好的支撑。 嵌入式Iinuⅸx属于微内核的体系结构,只提供最基本的操作系统功能,如内存管理、中 断处理和仼务管理等。文件系统等功能可由用户自选,内核的体积大大减小,移植起来也更 加方便。和其他的嵌入式操作系统比起来,嵌入式 Linux具有较大的优势,因此,本文将以 嵌入式 Linux为例,以说明如何基于嵌入式 Linux操作系统来设计和开发智能家居网关的软 件 2智能家居网关设计 85 21网关硬件设计 在智能家居的背景下,通常需要通过互联网实现对智能家居设备节点的控制,同时,家 庭内部的设备之间也需要实现通信于互控。本文所设计的智能家居网关的硬件框图如图1 显示屏 感器 通用IO端口 DRAM Flash 「设备1k RS232 S3C2440A 高速总线 设备n 串口 AX8|80k-RJ4→-网络出口 MCU智能节点 图1智能家居网关硬件框图 90 Fig 1 Smart home gateway hardware diagram 所示。一般,家庭內部可能存在多种硬件设备,智能家居网关需要通过不同的接口和这些设 备建立连接。如通过通用IO端口控制显示屏、传感器等硬件设备,通过不同的工业总线标 准(RS232、I2C)接口来控制外部设备,以及通过高速总线来访问上存以及网卡设备等。 此外,在本文所设计的智能家居关硬件框图中,內关处理器还能和MCU等智能节点建立 95 了连接,使得MCU能够通过网关实现对家庭內部其他设备的控制。AX88180等网卡芯片使 得网关能够接入互联网络,用户可通过网络服务器实现对网关的远程访问,从而实现对家庭 内部设备的远程控制。 2网关软件设计 本文所设计的网关软件框图如图2所示,整个软件框图主要分两部分,网关应用模块和 嵌入式 Linux操作系统模块。嵌入式Iinκ操作系统模块辶要包含了嵌入式 Linux内核、驱 动程序以及 Yaffs2文件系统。驱动程序实现了对家庭内部设备的控制,如智能节点、传感 团技论文在线 http:/www.paper.edu.cn 器等字符设备,以及网卡等块设备,Yafs2文件系统为智能家网关存储数据提供了支持, 而嵌入式 Linux内核则是对标准的Linuⅸx内核进行裁剪所得到的。嵌入式 Linux操作系统为 网关应用提供了API,使得网关应用能够对家庭内部的设备进行控制,是网关应用开发的基 105 功能逻辑单元 网关 应用 协议解析安全 传输控制认证 嵌入式 嵌入式 Linux内核 Linux Yaffs 2 设备驱动 ↑R文件系统 智能节点 字符设备 块设备 (MCU (传感器) (网卡) 图2智能家居网关软件框图 Fig 2 Smart home gateway sofiware diagram 內关应用则主要包含了传输控制、协议解析、安全验证以及功能逻辑单儿四个模块。传 110 输控制模块主要用于接收家庭内部设备的数据,并且能够根据上层应用给出的指令实现对家 庭内部设备的控制。 由图1可知,智能家居网关作为家庭内部设备的沟通桥梁,汇集了不同协议格式的数据。 为」实现家庭内部设备的互通与控制,本文在智能家居內关应用中包含了一个协议解析模 块,用于解析来自家庭內部以及互联网中的不同协议袼式的数据。此外,协议解析模块还能 l15 够实现不同协议间的转换,使得家庭内部的设备间能够相互传递数据 网关应用中的功能逻辑单元主要用于逻辑控制功能。来自互联网或者家庭内部的设备需 婓和內关应用进行通信,以传输控制命令等。功能熤辑单元主要负责控制命令的解析,并对 解析后的命令做适当的处理,例如调用协议鐸析模块进行数据的封装,之后再通过传输控制 模块将数据传递至特定的家庭内部设备,实现对家庭内部设备的访问和控制。 120 此外,由于智能冢居网关实现了家庭内部网络和因特网的互联,而家庭内部网络传输的 数据大多涉及到用户隐私,因此,在木文所设计的网关软件架构中,添加了安全认让模块。 安全认证模块应该实现数据的加密传输和保存功能,同时应该对网关接收到的控制请求命令 进行验证,以防止非法的数据获取、以及控制请求等操作。 4 国技论文在线 http:/www.paper.edu.cn 3智能家居网关软件平台的实现 125 31嵌入式 Linux的移植 实现网关应用的第一步是将嵌入式Liuⅹ移植到S3C2440A平台上,而在移植嵌入式 Iinuⅸx时,第一步要做的就是移植交叉编译环境。交叉编译环境主要包含了交叉编译器、交 叉调试器等工具,⊥要用于在宿主机上编译得到日标平台上的可执行应用程序以及嵌入式 Linux内核镜像,关于交叉编译器的工作流程,可参考图3。交叉编译环境的搭建一般较简 130 单,只需要下载ARM交叉编译工具的源码,按照给定的教程来操作即可 ARM交叉编译器 标准库 源代码 目标文件 可执行程序 编辑器 交叉链接器 图3交叉编译器作流程 Fig 3 Cross compiler work flow 交叉编译环境制作完成之后,便是对嵌入式 Linux进行移植操作。移植嵌入式Liux操 135 作系统的主要步骤是对嵌入式 Linux内核的配置和编译。接下来,本文主要以GT2440开发 版为例,说明如何对嵌入式 Linux操作系统进行移植、 内核的配置主要分三种: make config、 make menuconfig,以及 make xconfig,本文采用 makc menuconfig的配置方式,也就是采用图形化的方式实现对 Linux内核的配置。进入嵌 入式 Linux源码跟日录之后,输入 140 make menuconfig 启动内核配置菜单,首先是处理器的配置,要对处理器进行配置,需选择 System Type 选项,进入 Systcm Typc之后,如图4所示。 Systen Type Arrow keys navigate the menu, <Enter> selects submenus HighLighted letters are hotkeys. Pressing cY> incl udes. <N> exc l udes eM> modularizes features. Press <Esc<Esc> to exit. <?2 for Hlelp. </> For Search. Legend:[ built-in exel uded← modules anagement Support Ru systen typ sungS32410.s9C2412.S3C2413.s3C2416 Boot options s3C Initial sati on watchdog ssC Reboot on decompression error I Force UART FIFO on during boot process (O) S3C UART to use For low-level me (o) Number of addi tional GPIo pins o) Space between gpio banks L ADC common dri ver suppo select EVIL> s Help> 图4ARM处理器配置菜单 l45 Fig 4 Configuration menu for ARM processor 在选择正确的处理器之后,需继续选择对应的开发板型号,如图5所示。配置完处理器之后, 团技论文在线 http:/www.paper.edu.cn 可按照同样的步骤实现对LCD、 SDRAM以及 Flash等硬件模块的配置 内核配置完之后,输入一些命令,进入内核编译阶段: S make zImage 150 编译之后得到内核文件 zImage,之后,可以将内核文件下载至开发板,以启动运 行。但是在启动移植后的嵌入式 Linux之前,还需要为嵌入式 Linux制作对应的文件系统。 本文所选择的文件系统为YAFS( Yet Another Flash File system,由 Aleph one为NAND fash,以页(page)为最小存储单位,每页512 bytes此外,为了能够正常的启动嵌入式 Linux,还需要为开发板作 Boot loader。由于U-Boot性能好,能支持多种操作系统,如 Vx Works、QNX、Linuⅸx等,因此,本文主要是对U-Boot进行了移植。 Arrow keys navi gate the menu. Enter> selects submenus Highli ghted letters are hotkeys. Pressing si> incl udes. N> excl udes <M modularizes features. Press EscsEscs to exit. <2> for Help./> for Search. Legend: [ built-in excl uded <M module<> [I Openmoko GTAo2 Freerunner phone [I Simtec IM24-10D20 (OsIRIS) module ⊥H⊥ PAS rN3715 [.10 Nesvsi on NEXCODER 2-110 Light Board SMDK2410 wi th s3c210 CPU module LI SMDM240 wi th S3C24-12 CPU module vantech AT2IoEVB devel opment board GT2440 development board MINI2.0 development board Eut> Help 图5选择目标开发板 Fig. 5 Selecting target development board 32网关应用开发流程 160 在为S3C2440A移植了嵌入式 Linux之后,便是对网关应用进行开发。本节以远端服务 器对家庭内部的电灯控制为例,以说明远端服务器如何通过智能家居网关实现对家庭内部设 各的控制。首先是为电灯编写驱动程序,驱动程序的注册和卸载流程如图6所示 模块 内核 n it m odu le o 设备注册 设备功能 用户程序 cleanup m oduk o 卸载没备 图6驱动程序开发流程 165 Fig 6 Driver development procedure 在编与好电灯的驱动程序之后,由于电灯通过通用IO和S3C2440A相连接,属于字符 设备,因此,电灯使用以下结构体米表示,在编写驱动程序的时候,需要对结构体中的各字 段赋适当的值。 struct miscdevice int minor, const char name 6 团技论文在线 http:/www.paper.edu.cn const struct filc opcrations *fops; struct list head list device*parent 175 struct device *this device const char Mnodename 之后使用函数 int misc register(struct miscdevice*misc)实岘对电灯驱动程序的注册。注 册好驱动程序之后,用户便可以将电灯视为文件,对其写入特定的数据,以控制电灯的亮灭。 为了使服务器能够控制电灯,服务器和智能家居网关之间的通信需要采用一定的协议,使得 网关能够解析来自服务器的命令,并对电灯进行控制。本文所设计的远端服务器控制家庭内 部电灯设备的整体流程如图7所示,服务器通过网关控制其他设备的流程和控制字符设备 (电灯)的流程类似。 开始 监听 <接受连接请求 接收服务器命令 <命令解析成功 控制电灯亮灭 结束 185 图7服务器通过智能內关控制家庭内部电灯 Fig 7 Server controls the home bulb via smart home gateway 结论 木文主要是对智能家居网关的设计进行了研究。首先对智能家居网关进行了介绍,将智 l90 能家居网关和传统的网关进行了区分和对比,说明了智能家居网关应兼具协议解析、自动控 制以及安全验证等功能。之后对智能家居网关的软硬件平台的选择、设计以及部分实现进行 了说明,并以远端服务器控制家庭內部电灯为例,说明了智能家居网关的工作流程。以本文 的工作为基础,可以对智能家居网关的设计和实现进行深入的研究,从而对智能家居的发展 起到促进作用,因此,本文对智能家居网关的研究存在着重要的意义 195 参考文献]( References 7 即国武技论文在线 http:/www.paper.edu.cn l」朱敏玲,李宁.智能家居发展现状及未来浅析J.电祝技术,2015,39(4):82-85 [2]满莎,杨恢先.基于ARM9的嵌入式无线智能家居网关设计[.计算机应用,2010,30(9):2541-254 [3]SamsungCorporation.3c2440a32-bitRiscmicroprocessorusersmanual[ol].[2009-10-12].http:/ww wsansung.Com [4]林建民.嵌入式操作系统技术发展趋势[门计算机工程,2001,27(10):1-4 [5]晢,树林,红征,房.嵌入式操作系统基础μC/OS-Ⅱ和 Linux[M].北京:北京航空航天大学出版社, 2006

...展开详情
试读 8P 论文研究-基于S3C2440A的智能家居网关设计 .pdf
立即下载
限时抽奖 低至0.43元/次
身份认证后 购VIP低至7折
一个资源只可评论一次,评论内容不能少于5个字
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
  • 至尊王者

关注 私信
上传资源赚钱or赚积分
最新推荐
论文研究-基于S3C2440A的智能家居网关设计 .pdf 44积分/C币 立即下载
1/8
论文研究-基于S3C2440A的智能家居网关设计 .pdf第1页
论文研究-基于S3C2440A的智能家居网关设计 .pdf第2页

试读结束, 可继续读1页

44积分/C币 立即下载