论文部分内容阅读
摘要:本文提出了一种基于GPRS技术构建空气质量监测系统的方案,前端监测站采用单片机嵌入式系统技术构建,后端则是采用Delphi编程工具实现中心服务器以及采集数据库,它们之间通过GPRS网络进行数据通信。其中重点讨论了前端监测站的硬件选型以及软件设计、前后端通信的数据结构定义以及后端数据库接口的构建。该方案结构清晰,可实施性强,GPRS技术的应用保证了前后端系统之间的无缝链接,能够实现真正意义上的空气质量在线监测功能,具有一定的推广价值。
关键词:空气质量检测;GPRS;嵌入式系统;Delphi
中图分类号:X851文献标识码:A文章编号:1009-3044(2008)21-30559-03
The Design of Air Quality Monitoring System Based on GPRS Technology
WAN Hai-bo
(Zhejiang Water Conservancy And Hydropower College,Hangzhou 310018,China)
Abstract: Based on GPRS technology, this paper discusses a method to build air quality monitoring system. The front side is built on embedded microchip platform and back side server and data base are implemented using Delphi, while communication between two is through GPRS network. We talk about in detail the design of hardware and software at front side, communication data structure and data base interface. This whole system is very clear and easy to implement. The use of GPRS technology guarantees seamless connection between front and back sides, which can help build on line monitoring system of air quality.
Key words: air quality monitoring; GPRS; embedded system; Delphi
1 引言
随着人们生活水平的提高,对环境的监测显得尤为重要,而空气质量监测是其中的一个重要组成部分,监测的内容包括SO2 ,NOx, CO, O3 以及空气中有毒有害的有机物。传统的人工采样 实验室分析的方法不仅成本高,而且不能对多点同时进行实时的在线监测。针对这些缺陷,本文提出基于GPRS(General Packet Radio Service)技术设计的城市空气质量监测系统,具有成本低,易于实施和维护的特点,能对多区域多点的空气质量进行实时在线监测,并可以对监测数据进行综合分析和历史记录。
1)传感器:包括各种空气质量传感器(如TGS2602),为了校正空气质量传感器的数据,增加了温度传感器和湿度传感器。
2)嵌入式微处理器:采用ATEML公司的ATMEGA128 8位AVR微处理器,其128 kB的系统内可编程Flash存储器,4 kB的EEPROM、4 kB的SRAM基本满足了系统对存储空间的要求,不需要扩展存储空间,减少了系统的能耗以及成本;8通道10位A/D转换器基本满足了传感器数据转换和精度的要求;6种可以通过软件选择的省电模式,可以为系统节省大部分电源;先进的指令集以及单周期指令执行时问,ATmega128的数据吞吐率高达1 MIPS/MHz,从而可以缓减系统在功耗与处理速度之间的矛盾。
3)GPRS模块:采用索尼爱立信公司的GR47模块,它本身自带TCP/IP协议栈,这给应用开发带来了方便。GR47模块有两种工作方式,一种是内部控制器方式,即直接利用模块内嵌的CPU和开放的系统资源,将应用程序下载到模块中使用,脚本在模块本身的内部控制器中运行,脚本运行的时候模块可以发送和接收数据并对其进行处理;另一种方式是外部控制器方式,即将模块嵌入到用户的系统中使用,外挂处理器对其进行操作控制,脚本在外部微控制器中运行。本文即是通过ATmega128与GR47模块结合起来,嵌入式微处理器通过GR47的UART1向其发送AT指令。
前端监测站的软件是通过C语言以及汇编语言编程实现,在系统开机后,首先嵌入式微处理器通过串口向GPRS模块发送AT指令,登录到GPRS网络获取动态IP地址,然后个动态IP地址连接监控中心的服务器,连接成功后即进入数据传输阶段,系统启动周期采样程序,获得数据经过处理再次由串口发送到GPRS模块,经过GPRS网络以及Internet网络进入监控中心的服务器中。整个软件的流程如图3所示。
4 中心监测软件的设计
4.1 软件设计的要求
作为整个系统的后端处理模块,中心监测软件主要提供以下两个服务:
1)数据接收服务
中心监测软件运行起来后即进入网络监听状态,前端的监测站向其发送连接请求,并报告监测站的相关信息如唯一标识码、位置信息等,然后就进入数据传送阶段。为了保证前端监测站与中心之间的正确通信,必须对传输的数据格式进行定义。
2)数据存储和查询服务
以数据库的方式对前端监测站传输过来的数据进行存储,每条记录包含有监测站唯一标识码、物理位置、气体名称、浓度以及采样时间这些信息。数据进入数据库后,可以对历史数据按照需要进行查询,例如按照时间点或者物理位置。可以对查询的结果进行简单的分析处理,例如一天或者一星期的空气质量走势,以图表的形式显示出来。
4.2 软件的实现
中心软件采用Delphi编程工具来实现,Delphi是著名的Borland(现在已和Inprise合并)公司开发的可视化软件开发工具,具有以下的特性:基于窗体和面向对象的方法,高速的编译器,强大的数据库支持,与Windows编程紧密结合,强大而成熟的组件技术。 在Delphi众多的优势当中,它在数据库方面的特长显得尤为突出:适应于多种数据库结构,从客户机/服务机模式到多层数据结构模式;高效率的数据库管理系统和新一代更先进的数据库引擎;最新的数据分析手段和提供大量的企业组件。
整个软件的流程如图4所示。
在实现过程中需要注意以下两点:
1)网络数据格式的定义
前端监测站与中心服务器之间的通信分为登录和数据两个阶段,登录阶段成功后即可进入数据阶段。登录阶段的数据格式定义为:
在Delphi中该登陆阶段和数据传输阶段的数据格式对应的结构体定义分别如下:
TLoginInfo = record
dwLength: DWORD;
magicnumber: DWORD;
dwCommand: integer;
placeName:array[0..63] of char;
placeNumber: DWORD;
byRes2: array[0..1] of char;
end;
TSampDataInfo = record
dwLength:DWORD;
magicnumber:DWORD;
dwCommand:integer;
dwState: DWORD;
SO2Content:DWORD;
COContent: DWORD;
O3Content: DWORD;
SampleTime:DWORD;
end;
2)数据库接口
Delphi连接ACCESS数据库需要的控件主要有以下几个:TADOConnection, TADOLabel, TDataSource。 设置TADOConnection控件的connection string, Login prompt等属性,设置TADOLabel的connect属性以及设置TDateSource的DataSet属性,基本的属性设置完成之后,就可以开始进行代码的编写了。
5 结论
GPRS是通信领域中的一项技术,将其应用于空气质量监测系统中具有如下优势:
1)可以发挥其无线传输数据的特点,避免布线带来的不便;
2)实现多点、远程、在线同时进行监测;
3)GPRS业务是按照流量收费,对于数据量不大的空气质量监测系统特别适合;
4)GPRS网络与Internet网络的无缝连接有利于后端监控中心服务器软件的设计和开发。
参考文献:
[1] 虞洋,姜世玲.基于GPRS开发的远程环保监测系统[J].工业控制计算机,2005(04):16-17.
[2] 马增强,燕延.基于GPRS的数据采集系统的研究[J].微计算机信息,2005(14):104-105.
[3] 侯太平,童爱红.Delphi数据库编程[M].北京:清华大学出版社,2004.
关键词:空气质量检测;GPRS;嵌入式系统;Delphi
中图分类号:X851文献标识码:A文章编号:1009-3044(2008)21-30559-03
The Design of Air Quality Monitoring System Based on GPRS Technology
WAN Hai-bo
(Zhejiang Water Conservancy And Hydropower College,Hangzhou 310018,China)
Abstract: Based on GPRS technology, this paper discusses a method to build air quality monitoring system. The front side is built on embedded microchip platform and back side server and data base are implemented using Delphi, while communication between two is through GPRS network. We talk about in detail the design of hardware and software at front side, communication data structure and data base interface. This whole system is very clear and easy to implement. The use of GPRS technology guarantees seamless connection between front and back sides, which can help build on line monitoring system of air quality.
Key words: air quality monitoring; GPRS; embedded system; Delphi
1 引言
随着人们生活水平的提高,对环境的监测显得尤为重要,而空气质量监测是其中的一个重要组成部分,监测的内容包括SO2 ,NOx, CO, O3 以及空气中有毒有害的有机物。传统的人工采样 实验室分析的方法不仅成本高,而且不能对多点同时进行实时的在线监测。针对这些缺陷,本文提出基于GPRS(General Packet Radio Service)技术设计的城市空气质量监测系统,具有成本低,易于实施和维护的特点,能对多区域多点的空气质量进行实时在线监测,并可以对监测数据进行综合分析和历史记录。
1)传感器:包括各种空气质量传感器(如TGS2602),为了校正空气质量传感器的数据,增加了温度传感器和湿度传感器。
2)嵌入式微处理器:采用ATEML公司的ATMEGA128 8位AVR微处理器,其128 kB的系统内可编程Flash存储器,4 kB的EEPROM、4 kB的SRAM基本满足了系统对存储空间的要求,不需要扩展存储空间,减少了系统的能耗以及成本;8通道10位A/D转换器基本满足了传感器数据转换和精度的要求;6种可以通过软件选择的省电模式,可以为系统节省大部分电源;先进的指令集以及单周期指令执行时问,ATmega128的数据吞吐率高达1 MIPS/MHz,从而可以缓减系统在功耗与处理速度之间的矛盾。
3)GPRS模块:采用索尼爱立信公司的GR47模块,它本身自带TCP/IP协议栈,这给应用开发带来了方便。GR47模块有两种工作方式,一种是内部控制器方式,即直接利用模块内嵌的CPU和开放的系统资源,将应用程序下载到模块中使用,脚本在模块本身的内部控制器中运行,脚本运行的时候模块可以发送和接收数据并对其进行处理;另一种方式是外部控制器方式,即将模块嵌入到用户的系统中使用,外挂处理器对其进行操作控制,脚本在外部微控制器中运行。本文即是通过ATmega128与GR47模块结合起来,嵌入式微处理器通过GR47的UART1向其发送AT指令。
前端监测站的软件是通过C语言以及汇编语言编程实现,在系统开机后,首先嵌入式微处理器通过串口向GPRS模块发送AT指令,登录到GPRS网络获取动态IP地址,然后个动态IP地址连接监控中心的服务器,连接成功后即进入数据传输阶段,系统启动周期采样程序,获得数据经过处理再次由串口发送到GPRS模块,经过GPRS网络以及Internet网络进入监控中心的服务器中。整个软件的流程如图3所示。
4 中心监测软件的设计
4.1 软件设计的要求
作为整个系统的后端处理模块,中心监测软件主要提供以下两个服务:
1)数据接收服务
中心监测软件运行起来后即进入网络监听状态,前端的监测站向其发送连接请求,并报告监测站的相关信息如唯一标识码、位置信息等,然后就进入数据传送阶段。为了保证前端监测站与中心之间的正确通信,必须对传输的数据格式进行定义。
2)数据存储和查询服务
以数据库的方式对前端监测站传输过来的数据进行存储,每条记录包含有监测站唯一标识码、物理位置、气体名称、浓度以及采样时间这些信息。数据进入数据库后,可以对历史数据按照需要进行查询,例如按照时间点或者物理位置。可以对查询的结果进行简单的分析处理,例如一天或者一星期的空气质量走势,以图表的形式显示出来。
4.2 软件的实现
中心软件采用Delphi编程工具来实现,Delphi是著名的Borland(现在已和Inprise合并)公司开发的可视化软件开发工具,具有以下的特性:基于窗体和面向对象的方法,高速的编译器,强大的数据库支持,与Windows编程紧密结合,强大而成熟的组件技术。 在Delphi众多的优势当中,它在数据库方面的特长显得尤为突出:适应于多种数据库结构,从客户机/服务机模式到多层数据结构模式;高效率的数据库管理系统和新一代更先进的数据库引擎;最新的数据分析手段和提供大量的企业组件。
整个软件的流程如图4所示。
在实现过程中需要注意以下两点:
1)网络数据格式的定义
前端监测站与中心服务器之间的通信分为登录和数据两个阶段,登录阶段成功后即可进入数据阶段。登录阶段的数据格式定义为:
在Delphi中该登陆阶段和数据传输阶段的数据格式对应的结构体定义分别如下:
TLoginInfo = record
dwLength: DWORD;
magicnumber: DWORD;
dwCommand: integer;
placeName:array[0..63] of char;
placeNumber: DWORD;
byRes2: array[0..1] of char;
end;
TSampDataInfo = record
dwLength:DWORD;
magicnumber:DWORD;
dwCommand:integer;
dwState: DWORD;
SO2Content:DWORD;
COContent: DWORD;
O3Content: DWORD;
SampleTime:DWORD;
end;
2)数据库接口
Delphi连接ACCESS数据库需要的控件主要有以下几个:TADOConnection, TADOLabel, TDataSource。 设置TADOConnection控件的connection string, Login prompt等属性,设置TADOLabel的connect属性以及设置TDateSource的DataSet属性,基本的属性设置完成之后,就可以开始进行代码的编写了。
5 结论
GPRS是通信领域中的一项技术,将其应用于空气质量监测系统中具有如下优势:
1)可以发挥其无线传输数据的特点,避免布线带来的不便;
2)实现多点、远程、在线同时进行监测;
3)GPRS业务是按照流量收费,对于数据量不大的空气质量监测系统特别适合;
4)GPRS网络与Internet网络的无缝连接有利于后端监控中心服务器软件的设计和开发。
参考文献:
[1] 虞洋,姜世玲.基于GPRS开发的远程环保监测系统[J].工业控制计算机,2005(04):16-17.
[2] 马增强,燕延.基于GPRS的数据采集系统的研究[J].微计算机信息,2005(14):104-105.
[3] 侯太平,童爱红.Delphi数据库编程[M].北京:清华大学出版社,2004.