技术中心
 
 

基于GIS的河流水质动态监测系统

   日期:2008-08-06     来源:中国测控网    作者:管理员    
 

    摘要:针对目前水质监测手段的缺陷,本文将嵌入式系统、TCP/IP、水质模型和GIS技术结合起来,提出一种基于GIS的河流水质动态监测系统,并详细描述了系统的实现及动态监测的过程。

    关键词:GIS嵌入式系统TCP/IP水质模型动态监测

    1 引言

    目前环保部门主要通过监测站点来采集数据,然后在监测中心通过水质模型对这些数据进行处理分析以达到对河流水质状况的监测。而这些站点分散度较大,所采集的河流水质数据比较片面,不能反映整个河流的水质状况;加上传送分析手段落后,监测的结果总是滞后于水质变化,不能及时反映河流水质的动态状况[1]。因此研制一种能够实时反映河流水质的系统非常必要。随着计算机技术、通信技术和GIS(地理信息系统)技术的发展,使得研制这种系统成为可能。本文就是基于这些技术,提出一种基于GIS的河流水质动态的监测系统,这个系统能够及时反映水质的状况。

    2 系统的总体设计

    整个系统由监测中心和数据采集终端两部分组成。监测中心是整个系统的服务器,运行GIS系统;数据采集终端即嵌入式系统,进行河流水质数据的实地采集。由于河流水质监测覆盖的范围广,GIS系统与数据采集终端之间通过TCP/IP进行互联通讯。数据采集终端通过TCP/IP来实现数据远距离的可靠传输,监测中心GIS接收所有终端采集的河流水质数据,对水质数据进行存储、分析、管理、查询和显示以及管理所有采集终端。

    3 GIS系统的实现

    GIS即地理信息系统,是集地理学、几何学、计算机学等科学于一体,利用图形技术和数据库技术,对空间信息及其属性信息进行采集、存储、分析管理和显示的系统[2]。它主要的特点是管理空间对象,能够将各种空间位置、空间分布以及空间关系通过数字地图显示出来[3][4][5]。

    本设计中,利用GIS对河流水质数据进行存储、分析、模拟和显示,实现对河流水质的监测。整个系统由数据库、GIS可视化界面以及水质模型组成。系统框图如图

GIS系统框图

GIS系统框图

   GIS可视化界面直接管理空间对象,显示空间对象的空间位置、空间分布等空间属性,并通过关联空间属性来显示空间对象的非空间属性数据。这些空间属性和非空间属性分别以空间数据库和非空间数据库进行管理。空间数据库管理GIS的各种空间数据,包括地形图、各种专题地图,流域、嵌入式系统终端、污染源等对象的地理位置坐标、形状等。非空间属性数据库通过SQL数据库来实现,管理各种非空间属性数据,包括水质监测数据(如河流流量、流速、溶解氧DO等)、统计数据、社会属性数据(如经济状况、工业布局、水体水质标准等)等。

    GIS可视化界面通过数据库提供的各种标准数据库接口,读取数据库中的空间数据和非空间数据,并通过空间数据与非空间数据之间的关联作用,在GIS界面进行共同分析和显示等处理。同时,通过与数据库的相互作用,GIS实现了查询、定位、分析、模拟和预警等功能。

    水质模型是污染物在水环境中的变化规律及影响因素之间相互关系的数学描述,是水质监测的重要手段之一[6]。今年来各种多变量综合水质模型得到研究和应用,如美国国家环保局开发的QUAL模型系列,丹麦水动力研究所开发的MIKE模型系列[7][8]。这些水质模型非常细致地描述了污染物在水体中的迁移和转化过程,但参数众多,结构复杂。设计中根据实际的需要对综合水质模型进行一定的简化,实现了零维、多维水质模型和水环境容量模型。

    实际上水质模型处理的对象是流域,是空间对象,因此设计中将水质模型完全集成在GIS中,成为GIS的一部分功能。GIS能够直接利用水质模型对水质数据进行分析模拟,而模拟的结果可以直接在GIS可视化界面上显示;这样弥补了水质模型在表达方面的不足和GIS在分析模拟方面的不足。

   4 嵌入式系统的实现

    嵌入式系统是以应用为中心,软件硬件可裁减的计算机系统,具有集成度高、成本低、支持各种实时操作系统以及网络功能等优点[9][10]。

    本设计中采用嵌入式系统进行野外水质数据采集,并通过TCP/TP将采集数据传送到监测。根据实现功能的不同,系统划分为处理器模块、存储模块、数据采集模块、网络模块和其他外设接口。系统模块划分图如图3。每一模块由硬件和软件两部分组成,它们一起完成特定的功能。

    处理器模块是整个系统的核心,由低价位、低功耗的32位核ARM7TDMI和实时操作系统μC/OS-II构成,主要负责外部硬件设备的管理、外部中断控制、任务的调度和各个功能模块之间的通讯和信息交换。所有其它模块的软件都在操作系统的基础上实现和运行,是具有不同的优先级的任务,任一时刻处于睡眠态、就绪态、运行态、等待态及中断态的状态之一。操作系统通过发送邮箱结构消息来控制各个模块状态。

    数据存储模块由存储器和文件系统构成,负责程序和采集数据的存放。存储器采用2MFlashRom+16MNandFlash+8MSdram,其中2MFlashRom用来存放系统的引导程序,16MNandFlash负责存贮程序以及数据,8MSdram负责程序运行和数据存贮等任务。针对NandFlash,设计中实现了Fat16格式的文件系统。文件系统将系统任务与数据分开存储,这样避免了存储与读写数据时影响系统;并且提供标准的API接口以及引入高速读写缓冲,避免了任务直接对NandFlash读写,解决了CPU和Flash存储器之间读取数据的速度问题。

    数据采集模块由各种传感器、数据采集任务以及数据处理任务构成,负责各种数据的采集和处理工作。水质监测中,传感器采集的数据主要是水质综合指标(如溶解氧DO)、水质污染指标(如生化需氧量BOD、化学需氧量COD)以及水文参数(流速和流量)。数据采集任务主要完成模拟量采集、模数转换以及数字量处理等功能。它通常处于等待状态,等待包含控制参数的消息。控制参数主要是采用频率、通道的选择以及启动模数转换器等。同时为数据采集任务设计一个4K容量的环型堆栈,用来暂时保存采样数据。数据处理任务大多时候处于空闲状态,具有与数据采集任务同样大小的堆栈,当需要立即传送数据时才被调用。

    网络模块由网卡芯片8019as、嵌入式TCP/IP协议以及网络任务构成,主要完成网络的数据发送和接收以及与监测中心GIS系统进行通信。本系统参照UNIX的TCP/IP协议,实现的TCP/IP的所有基本协议。整个TCP/IP分为应用层、传输层、网络层和数据链路层;其中网络层由TP协议和ICMP协议组成,数据链路层由网卡驱动程序和ARP协议组成。各个层之间操作是互相隔离的,通过调用API接口函数进行通讯,把需要处理的数据传送给上层或者下层协议。

    同时,系统保留了一些外设接口,以便今后系统功能的扩展和升级。

    5 嵌入式系统运行过程

    嵌入式系统上电后,启动FlashRom中的BootLoader对CPU进行初始化以及网卡等硬件自检;接着开始将NandFlash中的操作系统内核以及应用程序任务拷贝到Sdram中。

    完毕后操作系统获得CPU控制权,开始了操作系统和应用程序任务的初始化操作。首先初始化所有数据结构,分配堆栈空间,建立消息队列,建立任务等;接着读取存储在文件系统中的系统运行状态参数,这些参数包括各个任务的运行状态、数据采集的采样频率、远程主机的IP地址,本地的默认网关和系统的登陆密码等系统信息,并对任务进行参数调整。

    系统初始化后,各个任务处于睡眠状态,必须通过消息来激活。

   6 水质动态监测的实现

    水质动态监测的实现是通过TCP/IP将野外采集的水质数据实时传送到监测中心,监测中心将接收到的水质数据经过一定的分析处理后在GIS上显示,以达到动态监测的作用。整个水质动态监测分为两个部分:水质数据的实时采集传送和水质数据的动态显示。

    6.1 水质数据的实时采集传送

    水质数据的实时采集传送由数据采集任务、数据处理任务、网络任务、操作系统任务和文件系统共同完成。

    通常情况下数据采集任务处于睡眠延时等待状态,延时时间到数据采集任务被激活,进行一次数据采集并将数据保存在自己的堆栈中,完毕后重新进入睡眠等待状态。本设计中延时一次为10s,即10s采集一次。可以通过改变采集任务的延时时间来改变整个系统的采样频率。

    一次数据采集完毕后,对堆栈中的数据有两种处理方式,一种是立即传送

 
  
  
  
  
 
更多>同类技术
 
全年征稿 / 资讯合作