新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 面向智能家居的嵌入式传感网网关的研究与设计

面向智能家居的嵌入式传感网网关的研究与设计

作者: 时间:2011-04-08 来源:网络 收藏


4 家庭软件
4.1 构建Linux操作系统
系统硬件平台与功能应用之间,需要专门的负责管理存储器分配,中断处理以及任务调度等功能的软件模块,这就是操作系统。操作系统是用来支持嵌入式应用的系统的软件,包括硬件相关的底层驱动,系统内核,通信协议,图形用户界面等。
本文的网关系统是WSN和Internet,GSM互联的通信应用,主要完成异构网络之间的通信和控制,因此需要选择实时的操作系统。在众多的嵌入式实时操作系统中,从开发成本,软件支持和代码开放的角度考虑,本文将采用Linux操作系统作为网关的系统的操作系统。
4.2 建立交叉编译环境
交叉编译就是在一个平台上生成另一个平台上可以执行的代码。这里的平台包括体系结构和操作系统。同一体系结构上可以运行不同操作系统。同样,同一个操作系统也可以在不同的体系结构上运行。
本文是在装有Ubuntu 9.10(基于X86架构的Linux操作系统)的PC机上为网关系统建立了基于ARM9的交叉编译环境。建立之后,就可以在PC机上对将在网关系统上运行的应用程序进行编译,从而生成可以在网关系统上运行的可执行代码,最后下到网关系统上。这也就是目前嵌入式程序开发的宿主机/目标机(HOST/TARGET)模式。
Linux交叉编译环境的内容,主要分为4个部分:GCC编译器(C语言编译器),二进制工具包(Binutils),标准C库(Glibc)和Linux内核头文件。Glibc和GCC都有很多版本,需要根据实际需要选择合适的版本。
4.3 网关应用程序
本次网关系统的应用软件架构图4所示。其主要功能是依据器配置文件,分类解析WSN中的数据,为用户提供Socket数据服务和XML-RPC远程调用服务。其工作流程是:网关程序启动以后,从XML文件夹中解析所有的器配置文件;监听串口数据,利用器配置文件解析数据生成XML数据流;创建Socket服务器,等待客户端数据请求,提供XML格式的Socket服务;创建XML-Socket远程调用服务器,完成用户的XML请求。

本文引用地址:https://www.eepw.com.cn/article/150878.htm


程序思路如图5所示:网关程序启动,完成参数初始化,解析XML文件夹下的所有传感器配置文件,创建3个类的实例。4个任务队列。Serialcomm类创建两条线程用读串口和写串口,这样可以保证数据的实时性。基于同样的道理,XMLParser类和XMLComm类也是双线程并行工作。这样就组成了从WSN和Internet的上行通道(图5中的虚线表示),以及Internet到WSN的下行通道(图5中的粗线表示)。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)


评论


相关推荐

技术专区

关闭