《水质监测系统的软件设计(共39页).doc》由会员分享,可在线阅读,更多相关《水质监测系统的软件设计(共39页).doc(39页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上水质监测系统的控制软件设计摘要水是生命的源泉、农业的命脉、工业的血液。哪里有水,哪里就有生命,一切生命活动都是起源于水。但随着全球工业生产的发展和社会经济的繁荣,大量的工业废水和城市生活废水排入水体,水体污染日益严重。多年来,我国水资源质量不断下降,水环境持续恶化,由于污染所导致的缺水和事故不断发生,不仅使工厂停产、农业减产甚至绝收,而且造成了不良的社会影响和较大的经济损失,严重地威胁了社会的可持续发展,威胁了人类的生存。由于水体污染严重并且已经对人类的生活生成了威胁,所以不得不采取各种各样的方法来进行水体监测。目前的检测设备主要依赖于实验室的大型设备,这些设备体积庞
2、大,检测时间长,分析时会消耗大量的化学试剂,价格昂贵。当然随着技术的发展,慢慢开始出现一些小型的检测设备,主要是依据光学以及流量检测的方法来检测,最典型的就是传感器探头以及GPRS探头检测。利用网络技术、环境监测技术、自动控制技术和计算机技术,设计开发先进的“水质监测控制系统”是现代环境信息管理的需要,本文以中国现状的水质情况以依托,进行水质监测控制系统的软件系统设计。本文介绍的水质监测的控制系统软件是基于光学智能分析水后,从测量的光谱信号中提取有关污染物含量的所有信息,再经过A/D转换成数字信号,经过单片机转换成有用的数据存储成数据。然后用该软件时行数据接收、显示、统计、自动综合分析、存储、
3、应用、发布等,并实现远程的监控。关键词:水质监测系统、水质检测、软件设计、控制软件系统设计Control software design of water quality monitoring systemABSTRACTWater is the source of life, the lifeblood of agriculture, industry blood. Where there is water, there is life, all life activities are originated in the water. But with the development of
4、global industrial production and socio-economic prosperity, a large number of industrial wastewater and urban domestic wastewater discharged into water bodies, water pollution is getting worse. Over the years, the declining quality of water resources, water environment continued to deteriorate, due
5、to pollution and accidents caused by water shortages continue to occur, not only factories closed and agricultural production or crops, and resulted in adverse social impacts and the larger economy loss, a serious threat to the sustainable development of society and threaten the survival of humanity
6、. Since water pollution is serious and has already generated a threat to human life, we had to take a variety of methods for water monitoring. The current testing equipment mainly depends on large-scale laboratory equipment, these devices trap volume, testing time is long, and the analysis will cons
7、ume a large amount of chemical reagents and expensive. Of course, as technology evolves, some minor testing equipment slowly began to appear, it based on the optical and flow detection methods, the most typical sensor probe and probe detection is the GPRS. As network technology, environmental monito
8、ring technology, automatic control technology and computer technology put into use, design and development of advanced Water Quality Monitoring System is a modern environmental information management needs, this paper is supported to the status of water quality in China, and design the control softw
9、are of water quality monitoring system. This article describes the water quality monitoring of the control system software is based on intelligent analysis of the optical water, then spectral signal from the measurement to extract all the information about contaminants , and then through the A / D c
10、onverted into digital signals, after conversion into useful single data storage into the data chip. And then use the software to line of data reception, display, statistics, auto comprehensive analysis, storage, application, release, etc., and remote monitoring. KEYWORDS : Water Quality Monitoring S
11、ystem、Water quality testing、Software Design、Control software system design 专心-专注-专业目 录摘要ABSTRACT第1章 绪 论1.1水质监测的意义1.1.1中国水环境的现状随着全球工业生产的发展和社会经济的繁荣,大量的工业废水和城市生活废水排入水体,水体污染日益严重。多年来,我国水资源质量不断下降,水环境持续恶化,由于污染所导致的缺水和事故不断发生,不仅使工厂停产、农业减产甚至绝收,而且造成了不良的社会影响和较大的经济损失,严重地威胁了社会的可持续发展,威胁了人类的生存。综合考虑我国地表水资源质量现状,符合地面水环
12、境质量标准的、类标准只占32.2%(河段统计),符合类标准的占28.9%,属于、类标准的占38.9%,如果将类标准也作为污染统计,则我国河流长度有67.8%被污染,约占监测河流长度的2/3,可见我国地表水资源污染非常严重 。我国地表水资源污染严重,地下水资源污染也不容乐观。我国北方五省区和海河流域地下水资源,无论是农村(包括牧区)还是城市,浅层水或深层水均遭到不同程度的污染,局部地区(主要是城市周围、排污河两侧及污水灌区)和部分城市的地下水污染比较严重,污染呈上升趋势。1.1.2水体污染来源水污染主要由人类活动产生的污染物而造成的,它包括工业污染源,农业污染源和生活污染源三大部分。工业废水为水
13、域的重要污染源,具有量大、面广、成分复杂、毒性大、不易净化、难处理等特点。据1998年中国水资源公报资料显示:这一年,全国废水排放总量共539亿吨(不包括直电流冷却水),其中,工业废水排放量409亿吨,占69%。实际上,排污水量远远超过这个数,因为许多乡镇企业工业污水排放量难以统计。农业污染源包括牲畜粪便、农药、化肥等。农药污水中,一是有机质、植物营养物及病原微生物含量高,二是农药、化肥含量高。我国目前没开展农业面上的监测,据有关资料显示,在1亿公顷耕地和220万公顷草原上,每年使用农药110.49万吨。我国是世界上水土流失最严惩的国家之一,每年表土流失量约50亿吨,致使大量农药、化肥随表土流
14、入江、河、湖、库,随之流失的氮、磷、钾营养元素,使2/3的湖泊受到不同程度富营养化污染的危害,造成藻类以及其他生物异常繁殖,引起水体透明度和溶解氧的变化,从而致使水质恶化。生活污染源主要是城市生活中使用的各种洗涤剂和污水、垃圾、粪便等,多为无毒的无机盐类,生活污水中含氮、磷、硫多,致病细菌多。据调查,1998年我国生活污水排放量184亿吨。我国每年约有1/3的工业废水和90%以上的生活污水未经处理就排入水域,全国有监测的1200多条河流中,目前850多条受到污染,90%以上的城市水域也遭到污染,致使许多河段鱼虾绝迹,符合国家一级和二级水质标准的河流仅占32.2%。污染正由浅层向深层发展,地下水
15、和近海域海水也正在受到污染,我们能够饮用和使用的水正在不知不觉地减少。1.1.3水质监测的意义随着流域人口的增加,社会经济的发展和城市化进程的加快,在诸多自然和人为因素影响下,水文条件、资源与生态环境特征发生不断变化,流域水资源与水环境安全受到威胁,面临着水质性缺水、工程型缺水和区域资源性缺水三大问题。我国水资源一直处于紧缺状态,而水环境质量却逐年恶化,水生态环境脆弱,富营养化日趋严重,水安全受到严重威胁。与此同时我们国家进入了加快工业化、城市化、信息化、市场化和国际化的小康型社会,提前基本实现了现代化。随着经济体制改革的深入,新一轮经济发展扩张也必将随之到来,由此带来能源、资源消耗的增加和污
16、染物排放增加,对资源环境提出了更高的要求。今后,经济发展对环境资源产生的压力和环境问题对经济发展的制约将是我们建设小康社会、促进社会全面发展的主要困难和突出矛盾之一。如何保持经济与环境、资源之间的相互协调发展,实现区域经济的可持续发展,已成为社会各界普遍关注的问题。要获得经济发展与环境保护的双赢就必须正视与解决这些问题。因此加强水资源管理,保护水环境,实现水质在线自动监测己经成为是关系国计民生的大事。我国的环境保护政策是预防先于治理,水质监测是保护水环境、治理水污染所需要迈出的第一步,是有效治理和控制水污染的技术支持和保障。水质监测的内容和目的主要包括:(1)对进入江、河、湖、库等地表水体的污
17、染物进行经常性的监测,以掌握水质现状和发展趋势。(2)对生产、生活设施及其它排放源排放的各类废水进行监视性监测,为污染源管理和排污收费提供依据。(3)对水环境污染事故进行应急监测,为分析判断事故起因、危害及采取对策提供依据。利用水质在线连续自动监测系统,能够及时准确地了解突发性环境污染事故的情况,快速得出污染物的种类、浓度、污染范围和可能的危害,为有关部门的决策提供准确可靠的科学依据。(4)为水环境污染事件的进行预报预判工作,以便对可能产生的环境污染状况提早的进行处理。(5)为国家政府部门制订各类法规和规划、全面开展保护管理工作提供依据。(6)为开展水环境质量评价、预测及进行环境科学研究提供基
18、础资料。为了改变中国水环境的严峻现状,保护地表水环境,建立一个完善的地表水水质自动监测系统成为了一项刻不容缓急需完成的工作。1.2水质滥测的现状为了保护我们日益严峻的生存环境,国家正不断加大环境保护的力度,并把环保产业作为优先发展的基础产业之一。我国新时期的治水方针是把水资源可持续利用提升为我国社会发展的战略问题,强调水资源短缺己成为我国经济社会发展的严重制约因素,提出要强化水资源的规划与统一管理,加强水资源的合理开发、科学配置、全面节约、高效利用、有效保护、综合治理,促进人口、资源、环境和经济的协调发展。多年以来,我国的环境监理工作一直采用人工采集、利用化学试剂的方法、分析数据、手工汇总制表
19、等工作手段,由于采样时间间隔长,数据分析汇总慢,传递不及时,难以对当地的水质正确及时地进行整体掌握,因此水质在线分析、监控技术应运而生。与经典的化学分析、实验室食品分析相比,在线分析具有速度快,操作简单,自动化程度高,节省试剂与人力,并且可以进行连续实时监测等优点,使得工作人员可以及时得到当地水质变化情况。近年来,各种水质的在线分析已引起政府部门和企业的极大兴趣,因此出现了许多水质在线分析仪器及有关技术。目前水质在线分析仪主要有如下特点:(1)能完全自动地完成分析测定任务。只要有水样连续输入,仪器就能自动连续地输出测量信号。(2)在线分析仪器的精度可能低一些,但是长期稳定性能要好。在线分析仪器
20、不必像实验室仪器那样频繁地去校准零点与量程,否则就失去了在线分析的意义。(3)在线分析仪器的使用通常必须配有自动取样和样品预处理系统。随着在线分析仪器技术的发展,地表水水质在线监测已经成为环境管理、保护的一个必然趋势。国家环保总局于2001年开始在全国重点流域干支流及重点湖泊建设30个地表水水质自动监测站,每个站投资约200万元,可对地表水中主要污染物进行24小时自动监测,并可通过电话和卫星线路实时传输监测数据。虽然国家已经加大地表水水质自动监测站的投入,但是总体上,国家级监测站数目较少,无法满足各地环境监测的要求。近年来,各地环保部门从业务发展需要出发,自行建设了一些环境监测系统。由于各省各
21、地区的独立开发建设,在全国范围内没有形成统一的环保软件开发规范和标准,开发平台及数据库的选择也多种多样,且对环保信息的采集能力不强,信息封闭,数据库规模小,无法实现资源共享,导致信息资源十分有限,不能满足环保部门的决策需求,因而与整个环保部门的管理要求相比还有较大的差距。1.3水环境监测的发展趋势环境监测的主要作用是监测环境现状,评价环境质量,为管理和决策提供科学依据。随着环境保护工作力度的不断加强和自动监测站的增多,如何有效充分地利用现代计算机技术、网络技术和通信技术,高效率处理监测数据,提高信息传递、统计、报告的效率和监测数据的综合利用率,是新一代环境自动监测系统追求的目标和要实现的功能。
22、建立集现代化管理思想与先进的计算机数据库技术为一体的完整的信息管理系统,实现环境监测信息的全方位管理和信息资源的共享,提高工作效率,以满足当今环境监测信号化、网络化建设及环境管理的要求。这也是环境监测系统的发展趋势。1.4论文研究的内容和目标1.4.1论文研究内容论文研究的主要内容是水质自动监控系统智能化集成的控制软件(即现场监测站集成控制软件设计)和现场自动监控系统与远程管理中心自动控系统的软件设计,以及对水质指标变化趋势进行预测研究。本文研究设计的水质自动监控系统是根据我国水环境自动监测的实际情况,依托先进的网络技术,借鉴国内外其他行业在资源共享建设方面的先进经验,结合环境监测技术、仪器测
23、量技术、传感器技术、自动控制技术和计算机网络技术,按照中国环境监测中心站制定的环境自动监测系统技术规范和监测数据传输规约来规定。1.4.2论文研究目标论文研究的目标是根据现有水质监测系统硬件基础的实现,构建的水质监测控制软件,实行对现场的监测系统进行自动化监测、控制和管理,从而能够对监测数据进行收集,统计分析,获得具有价值的统计和预测数据,及时、直接地为环境管理与决策提供技术支持,进而实现水质监测的科学化、标准化、规范化和网络化。为了实现设计目标,要求运用系统化、智能化标准化于一体的设计思想和方法进行水质自动监测和控制。(1)智能化水质自动监控系统能够在无人看守的环境下长期可靠运行,这就要求一
24、套智能化的水质监控软件对其进行控制管理,自动实现仪器的数据采集、控制、数据处理、报警、现场断电保护、远程通讯、自动生成报表等多项功能。(2)标准化软件设计驱动,接口等均按照现有的标准,与远程的通信均采用国标标准通信协议,能过网络与远程计算机联网,通过TCP/IP标准协议实现双向数据传输;对于数据的具体格式,字段的定义等,均按照有关部门的标准定义。第2章 水质监测系统的控制软件结构设计2.1水质监测系统的控制软件设计规划2.1.1系统化的设计思想水质监测控制系统是环境监测系统的重要有机部分。环境自动监测信息系统是应用于环境监测与信息管理的一个课题,监测控制软件更是作为整个监控的系统的一个不可缺少
25、的一部分,软件的整体设计好坏直接关系到监控的自动化实施和管理好坏。这里所设计的水质监测控制系统采用分布式的网络结构的数据采集和监控系统,对于监控系统结构如下所示,它是在开放式的系统结构设计思想指导下开发的新一代监控系统的主要构成部分,可分为四大类。一类属于现场基础设备,包括现场仪器、仪表、系统,电源控制系统等;一类属于计算机基本软硬件平台支持,凶手计算机,操作系统、网络系统、数据库系统等;一类是与应用系统直接有关的产品,如应用软件等;一类是介于计算机平台和应用系统之间,就是通用数据采集和监控软件。在水质监测现场站中具备了上述四层的所有设备,它是整个监测系统的核心部分,而远程中心站只具有四层中的
26、上面三层。而主要的系统结构是应用了后面的三层。报表现场站通讯控制A/D采样Socket通讯托管站命令执行PLC程序FTP上传数据库操作中心站事件压缩处理通讯报警仪器1显示GSM发送仪器2查询设置日志. 仪器n控制图2.1 水质监测控制系统结构Socket通讯报警压缩事件控制查询FTP上传报表数据库操作托管站命令执行日志GSM发送处理通讯显示设置图2.2水质监测系统的控制软件设计结构图本设计的水质监控软件系统设计总体上追求功能完善、稳定、可靠、配置灵活、适应强和便于扩充等特性,设计遵循了“开发”的设计原则,虽然计算机硬件的升级、更新换代有可能会影响应用,但不会影响系统的基本结构和已实现的功能,系
27、统中可以不断地加入新的高性能硬件设备,只要做出相应的改动,已有的设备、已实现的功能和新添加的设备以及新功能可以灵活地应用 2.1.2软件的结构化体系与现场站、中心站之间的通信(1)数据的实时监测 中心站的管理人员可以在该层实习地了触到监测点中的水质数据变化情况,如果出现严重污染等突发情况,能够及时地得到信息,做出快速地处理。(2)监测数据的获取和保存 现场站建有数据库,长期保存监测中的数据。同样中心站也建有数据库对其管理的站点进行数据管理、备份,也为中心站生成报表提供数据。(3)远程监控和维护 由于地表水监测现场站一般建在偏僻的交界断面,工作在无人值守的状态,一些简单的控制和维护工作,需要能够
28、在中心站远程完成。应用层、控制软件层与各层之间通过各种网络和通讯设备时行连接如:无线GPRS接入internet 方式,无线CDMA接入internet 方式,ADSL接入internet方式等。在中心站中设有一个FTP服务器,该服务器主要接收水质自动监测站主动上传的数据。中心站由各现场站主动上传数据,通过各种通讯设备接入internet之后,现场与FTP服务器利用Socket编程实现通信。热气数据的通讯过程,分为两种情况:(1)数据上传 每天的固定时刻(选择网络较为空闲的时刻)发送当天的监测数据,也可以设置多次上传。如果数次连接不成功,在下个发送周期会自动再次发送未成功的数据。(2)数据查询
29、 FTP服务器可以通过网络连接现场站,按照规定的格式下发查询,查询的内容可以是历史数据,也可以是实时数据。现场 站系统收到命令后,将做出不同的响应,根据命令,上传不同类型的数据。2.2水质监测系统的控制软件功能分析水质监测系统的控制软件包括现场站软件和远程中心站软件两大部分。现场站软件是安装在监测现场,完成仪器数据的采集、系统的控制、数据的处理保存与通讯等一系列工作。远程中心站软件安装在各监测站的计算机上,来实现远程的数据监控和简单的远程操作。2.2.1现场自动监测系统的控制功能(1)实时监测在线水质监测的主要功能之一就是实时掌握水质参数变化情况。地表水水质监测软件需要24小时不间断地监测出水
30、质参数,以及反应整个系统的运行情况。实时监测需要完成以下功能:监测水质参数数据包括:温度、pH、DO、EC、TU、NH3N、COD、TP、TN、TOC,如果有新的监测参数,按情况增加;监测水质状态数据监测环境状态信息包括:室温、电压;监测仪器状态信息包括:仪器故障信息、仪器的工作信息、泵阀开关状态。(2)报警功能报警功能主要包括水质参数超标报警功能和现场异常状态报警功能。水质参数超标报警:当发生突发性环境污染事故的情况,水质指标异常时需要进行两方面工作,一是及时通知监测管理人员,以便能采取及时有效的措施;二是记录报警的具体各项信息,为查询分析提供有效的数据。不同的站点需要不同的报警标准,软件设
31、计中需要提供动态修改报警限的功能。现场异常状态报警:当系统发生报警、停电、设备故障等事件时,要求通过GSMPSDN以短信的方式通知有关人员,并同时记录下发生时间、具体状况等相应信息。(3)历史数据压缩和长期保存通过实时监测得到的数据,只反应当前的时刻水质状况。对于环境保护部门还需要一段时间内的平均数据。水质监测站需要压缩得到:五分钟数据、小时数据和天数据。其中五分钟数据要求保存一周时间、小时数据和天数据需要进行长期保存在数据库中,该数据是开展水环境质量评价、预测及进行环境科学研究的基础资料,也为国家政府部门制订各类法规和规划、全面开展保护管理工作提供依据。(5)数据查询分析功能实时变化趋势的对
32、比分析根据监测到的水质参数实时数据描绘出水质参数的短期内的变化趋势,可以进行多个参数的对比分析,以分析其相关性。历史水质数据的对比分析对保存在数据库中的水质历史数据进行查询分析,以及多个参数的对比分析。报警数据的查询能够查询所有任意时间段内的发生超限的参数数据,及发生超限报警时其他环境参数的信息。日志数据查询“日志”是记录下地表水水质监控系统的运行信息的数据,主要包括以下信息:记录本地站点对各泵、阀等部件的操作;对工作参数和报警参数的修改;对PLC校准时间;远程中心站对现场站的各种远程查询、控制和参数修改等;记录工控机与仪器的RS485通信情况;记录工控机发送GSM短信的情况;仪器清洗。事件数
33、据查询“事件”主要记录下系统运行时出现的一些非正常状况,主要包括:系统发生故障;现场停电;烟雾防盗报警;通讯故障。(5)报表功能报表有形式日表报、月报表、周报表和年报表四种报表。内容包括各水质参数在指定时间段内的平均值、最大值和最小值,以及根据这些数据判断得出的首要污染物、水质质量评价。报表要求实现以下功能:能够选择word和excel两种方式进行报表生成预览生成报表采用的数据数据筛选与修改,从数据库取出的原始数据并不是都是有效数据,有些不能参与报表的生成,需要按一定的规则进行筛选,有些数据可能要进行人工的修正。筛选或修正后的数据不能覆盖原始数据库,以免破坏原始数据,需要另外进行保存。保存报表
34、,报表的具体格式省环保部门有详细统一的规定,需要按照这个格式规定,制作报表打印报表。(6)仪器控制功能系统软件需要有对所有监测仪器的控制功能,其功能主要包括:自动功能和手动功能的切换,当在自动功能状态时,仪器所有的反冲、清洗等维护过程安预设参数自动定期完成:当在手动功能状态时,需要系统软件发出控制命令,才开始上述操;对具体某个泵、阀的控制操作:即时测量,水质参数按一定周期定时测量,接受此命令进行一次即时测量;即时采样,采样器定时采样水质标本,接受此命令进行一次即时采样;(6)GSM报警功能当水质指标异常或系统运行状况异常时需要把情况信息通过GSM发送到负责人手机上,以便负责人及时的做出相应措施
35、,触发GSM报警的条件有:水质参数超标;地表水现场监测点水位过低:地表水现场监测系统进口压力过小;自动站泵、阀发生故障;出现火警、防盗报警;现场发生停电事件;(8)参数设置功能工作参数设置,包括仪器的测量周期、测量时间段、起始时间的设置;采样器参数设置,包括采样器的工作方式、起始时间、采样量的设置;报警参数设置,对每个水质指进行评价,需要有报警限和奇异现。报警限用来判断是否为超限报警数据,奇异限用来判断是否该数据为有效数据。报警限和奇异限的要求能够修改; GSM手机发送设置,水质指标异常和系统运行状况异常时需要通过GSM发送到负责人手机上进行及时的通知,手机号码和发送次数要求能够修改。(9)系
36、统停电保护功能现场长期运行时,要考虑到现场的停电状况。如果在突然停电时不做好保护措施,很容易对系统造成严重的破坏。系统安装UPS装置,当现场发生停电状况时,系统能够监测到UPS发出的停电信号,接受到信号后需要做下列工作:记录停电事件;通过GSM向负责人发出现场停电信息;通知UPS一分钟后停止供电;退出应用程序;退出操作系统,实现正常的电脑关机过程。当现场恢复供电后,在无人干预下,要求地表水水质监控系统投入正常的运行,需要做的工作有:工控机的自动启动;自动运行地表水水质监控系统软件;自动运行SQL数据库服务器;运行与省站的通信程序;(10)与中心站通讯功能中心站对其管辖范围内的一个和多个现场站有
37、管理的权限。因此现场站要有与现场站之间进行数据通讯,实现的功能主要有:实时监测数据的传递,让中心站能够了解到任意时刻的监测流域的水质变化情况;仪器状态信息的传递,包括仪器的泵阀状态、采样器的工作状态等;历史数据的传递,五分钟数据、小时数据、查询报警数据、日志数据、事件数据需要在现场站数据长期保存,同样需要在中心站进行备份;参数的传递:包括系统时钟、报警参数和仪器工作参数等参数的传递,中心站和现场站需要保持两边参数的同步修改;仪器的控制型号通讯,远程中心站同样需要仪器的控制功能,控制命令经中心站发送,现场站接受到后执行相应的操作。FTP主动上传数据,上传的内容包括小时数据、五分钟数据、报警数据、
38、事件信息、日志信息。要求:通讯方式根据实际可选择、上传的服务器的地址和个数可选择、上传的参数可选择。socket通信功能,通信内容包括:实时监测数据、仪器状态信息、五分钟数据、小时数据、查询报警数据、日志数据、系统时钟、报警参数、仪器工作参数。2.2.2远程管理中心监测控制系统功能现场站一般都建在需要监测的江河湖泊流域边上,而站点管理员只能定期到现场站管理和维护,一个管理员可能需要同时监测和管理多个现场站点,因此需要有远程中心站软件进行远程监控。中心站的主要功能有:(1)站点管理一个中心站需要管理多个现场站,需要中心站能够在不同的管理站点之间切换管理,设置不同站点的信息。(2)实时监测实现的功
39、能同现场站,但是不需要数据采集,直接从现场站获取数据。(3)历史数据备份能够将现场监控系统在数据库中保存的五分钟数据、小时数据、天数据、报警数据、日志信息等自动备份到远程管理中心数据库。(4)数据查询分析功能、报表功能、仪器控制功能、参数设置功能与现场监控系统功能基本相同。第3章 水质监测系统的控制软件设计3.1软件开发的基本原则由于微电子学技术的进步,计算机硬件性能价格比平均每十年提高两个数量级,而且质量稳步提高;与此同时,计算机软件成本却在逐年上升,质量没有可靠的保证,软件开发的生产率也远远跟不上普及计算机应用的要求。软件己经成为限制计算机系统发展的关键因素。在计算机系统发展的早期时代所形
40、成的一些错误概念和做法,严重地阻碍了计算机软件的开发,更严重的是,用错误的方法开发出来的许多大型软件几乎根本无法维护,只好提前报废,造成大量人力、物力的浪费。西方计算机科学家把软件开发和维护过程中遇到的一系列严重问题统称为“软件危机”,并且在60年代后期开始认真研究解决软件危机的方法,从而逐步形成了计算机科学技术领域中的一门新兴的学科计算机软件工程学通常简称为软件工程。水质监控系统软件严格遵循软件工程的开发七条基本原理:(1)用分阶段的生命周期计划严格管理(2)坚持进行阶段评审(3)实行严格的产品控制(4)采用现代程序设计技术(5)结果应能清楚地审查(6)开发小组的人员应该少而精(7)承认不断
41、改进软件工程实践的必要性。这七条原理是水质监控系统软件质量和开发效率的保证。为了提高软件开发的成功率和软件开发的效率,在水质监控系统软件设计过程中,把软件生命周期划分成若干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发工程的困难程度;在软件生命周期的每个阶段都采用科学的管理技术和良好的技术方法,而且在每个阶段结束之前都从技术和管理两个角度进行严格的审查,合格之后才开始下一阶段的工作,这就使软件开发工程的全过程以一种有条不紊的方式进行,保证了软件的质量,特别是提高了软件的可维护性。3.2程序设计方法程序设计方法主要分为两种,分别称为自顶向下的程序开发方
42、法和自底向上的程序开发方法。使用自顶向下的方法开发程序,程序员首先实现软件结构的最高层次,用“存根”代表低层次的模块,所谓存根就是简化模拟较低层次模块功能的虚拟子程序。实现了软件结构的一个层次之后,再用类似方法实现下一个层次,如此继续下去直到最终用程序设计语言实现了最低层次为止。自底向上的方法和上述开发过程相反,从底层开始构造系统,直至最终实现了最高层次的设计为止。在设计水质监测控制系统软件时我们采用的是自顶向下和自底向上两种方法结合的开发方式。一般说来,用自顶向下的开发方法得到的程序可读性较好,可靠性也较高;用自底向上的开发方式得到的程序往往局部是优化的,系统的整体结构却比较差。但是,采用自
43、底向上的开发方法能够及早发现关键算法是否可行,发生较大返工的可能性比较小。为了扬长避短,我们采用了两种方法结合的设计思想来开发软件系统。这种开发方式需要我们在正式开始编写水质监控系统软件代码前,做一个完善的总体设计和根据总体设计要求做详细的需求分析和模块设计。写程序的风格对软件的质量也有很大影响。水质监测系统的控制软件在设计过程中特别注意了以下几方面:(1)程序内部文档程序内部文档包括恰当的标志符、适当的注解和程序、视觉组织等;(2)完善、标准的数据说明;(3)语句构造设计期间确定了软件的逻辑结构,然而个别语句的构造却是编写程序的一个主要任务。构造语句时应该遵循的原则是,每个语句都应该是简单而
44、直接的,不能为了提高效率而使程序变得过分复杂。(4)输入/输出在设计和编写程序时应该考虑下述有关输入/输出风格的规则:对所有的输入数据都进行检查;检查输入项重要组合的合法性;保持输入格式简单;使用数据结束标记,不但要求用户指定数据的数目;明确提示交互式输入的请求,详细说明可用的选择或边界数值;当程序设计语言对格式有严格要求时,应保持输入格式一致;设计良好的输出报表;给所有输出数据叫标志。(6)效率 效率问题要从程序运行时间、存储器效率和输入/输出的效率三方面考虑。写程序之前先简化算术和逻辑的表达式;仔细研究嵌套的循环,以确定是否有语句可以从内层往外层移;尽量避免使用多维数组;使用执行时间段的算
45、数运算;不要混合使用不同的数据类型;尽量使用整数运算和布尔表达式我们虽然提出了提高效率的要求,但是在提高效率的同时要注意三条原则:首先,效率是性能要求,因此应该在需求分析阶段确定效率方面的要求。软件应该像对它要求的那样有效,而不应该如同人类可能做的那样有效。其次,效率是靠好设计来提高的。第三,程序的效率和程序的简单程度是一致的。不要牺牲程序的清晰性和可读性来不必要地提高效率。3.3软件的需求分析精度:要求与测量仪器测量精度保持一致。时间:特性要求:采样时间间隔小于10秒;能够长期连续工作。灵活性:通讯方式变化时可以通过配置适应;仪器停止工作时可以改变应监测参数的有效性;可以在软件中动态减少或者
46、增加仪器;3.3.1运行环境需求设备CPU:P3933以上:内存:256M以上;硬盘:4OG以上;显示器:VGA256色以上;通讯设备:MODEM、PSDN、ADSL、CDMA、GPRS之一。软件操作系统:windows2000SP4、windows xp、windows 7(限于中心站软件);数据库:MssQLZ000sp3personal;办公软件:Office XP、office 2003、office 2007。接口串口要求:工控机自带的两个串口加上串口扩展卡的8个扩展串口,它可以选择RS232和485两种通讯方式。网络通讯:采用TCP八P通讯协议。3.3.2可靠性需求平均无故障时间大
47、于3000小时;在网络正常时,中心站连接现场站成功概率高于95%;与仪器的通信成功率高于90%;远程和本地对监测仪器和PLC模块的通信和控制操作成功率高于95%。3.3.4数据管理能力需求小时数据、日志数据、报警数据能存储3万条以上记录(一年);小时数据保存一周;能同时容纳10个以上客户端的查询需求;数据库要有自动备份功能,防止数据丢失。3.3.5编程语言的选择自1960年以来人们已经设计和实现了数千种不同的程序设计语言,但是只要其中很少一部分得到了比较广泛的应用。现有的程序设计语言虽然五花八门、品种繁多,其中包括汇编语言和高级语言(包括超高级语言)和针对某些具体应用的编程语言。不同的语言有不同的特点和适用范围,开发软件系统时必须做出的一个重要抉择是,使用什么样的程序设计语言实现这个系统。适宜的程序设计语言能使根据设计去完成编码时困难最少,可以减少需要的程序测试量,并且可以得到更容易阅读和更容易维护的程序。由于软件系统的绝大部分成本用在生命周期的测试和维护阶段,所以容易测试和容