面向智能家居的嵌入式传感网网关的研究与设计
程序设计思路如图5所示:网关程序启动,完成参数初始化,解析XML文件夹下的所有传感器配置文件,创建3个类的实例。4个任务队列。Serialcomm类创建两条线程用读串口和写串口,这样可以保证数据的实时性。基于同样的道理,XMLParser类和XMLComm类也是双线程并行工作。这样就组成了从WSN和Internet的上行通道(图5中的虚线表示),以及Internet到WSN的下行通道(图5中的粗线表示)。 监控界面是该系统用户界面的主要部分。它主要是查看目前家里的环境信息。和这相关的文件有query.ui,ui_query.h,query.h,query.cpp等,其中query.ui是Qt Designer设计的主界面函数,如图7所示。Ui_query.h是moc编译器产生的函数。本文中需要的函数一般都在query.h,query.cpp中得到体现和实现,主要包括信息的查询,这里既可以查看一段时间内家庭内的环境信息,也可以输入查询日期,查询某天的数据信息。根据需求,设计的主要实现函数为: 这些槽函数是根据按钮要实现的具体功能而设计的。具体实现在query.cpp中。
4.4 人机接口模块的设计
人机接口使用的是项目中使用的触摸屏是240×320 TFT彩屏LCD。该模块主要设计以下4个菜单供用户操作:文件菜单,查询菜单,报警菜单和管理菜单。这部分的设计使用Qt设计。Qt是一个跨平台的C++图形用户界面库,由挪威TrollTech公司开发,目前包括Qt/X11、基于Framebuffer的Qt/Embedded、快速开发工具Qt Designer以及国际化工具Qt Linguist等。Qt的良好封装机制使其模块化程度非常高,可重用性较好,对于用户来说非常的方便。Qt API和开发工具对所有支持平台都是一致的,从而可以进行独立于平台的程序开发和配置。它使得跨平台软件编程直观、简易和方便。
本文所有的可视化界面都是通过Qt自带的工具Qt designer设计,它是一个可视化的界面设计工具,对于其每个组件内部的关系通过编写代码来实现。
网关登陆界面主要用于用户登陆信息的输入,包括用户名和密码。用户正确输入用户名和密码之后,就可以进入网关的主界面,如图6所示,可以看到,这里有4个菜单,当点击每一个菜单分别进入相应的功能界面,例如点击文件菜单,可进入配置文件的编辑界面。在此界面上可以修改网关系统的配置文件。这个界面具有一般文件界面的所有功能。这几个界面都比较简单,比较容易实现。在此重点介绍监控界面的设计。
通过这部分的设计,实现了网关的人机界面部分。可以对通过此网关系统对家庭信息进行查询。
4.5 报警功能
该网关的报警功能主要是网关主控制器通过操作串口来操作GSM模块,使用AT指令来完成。在该网关中,报警功能实现当家庭网络中的信息超过某一阈值时,发送报警信息。
5 结语
本文立足于WSN和Internet,GSM异构互联研究,针对WSN与Internet,GSM互联的网络接入要求,完成了基于ARM9的家庭网关系统的研究与设计。从硬件平台上来说,提供了丰富的接口以便不同网络的接入,从软件平台来说,实现了用户对家庭网关的访问,通过用户可操作的人机界面来对家庭内的环境信息进行查询。当家庭内某一项环境信息超标时,通过使用AT指令控制GSM模块来向用户发送报警短信。
- 基于DSP的音频会议信号合成算法研究(05-10)
- 基于定点DSP的MP3间频编码算法研究(07-04)
- DSP的并联电力有源滤波器的仿真研究(02-15)
- PCI总线数据采集系统的硬件研究(09-12)
- PIC单片机在温度测量领域的应用及仿真研究(11-23)
- 嵌入式软PLC 的设计与研究(06-27)