首页 > 案例 > 基于ATmega16单片机的水质监测控制系统设计

近年来,由于国际上一些地区和国家频繁发生恶性事件,饮水安全和卫生问题引起了全球的关注,饮水安全已成为全球性的重大战略性问题,所以水资源的保护成了我国重中之重的一个问题,水土流失矿山污水导致人类周围的水环境污染日趋严重,严重制约了经济的发展和危害着人类的健康。严峻的水形势提高了人们对水污染控制的重视,对废水的处理和检测成为了维护良好人民生活环境所必不可少的要求,废水中是否有对环境产生重大影响的元素和他们的含量是否在标准以内,直接关系到我们的生存环境。


多年以来, 我国的环境监理工作一直采用人工采集、分析数据、手工汇总制表等工作手段,由于采样间隔时间长,数据分析汇总慢,传递不及时,难以对当地的环境现状正确、及时地进行整体把握。近年来,国内的环境监测部门也逐渐将城市水质参数与污水流量监测网络列入近期实施计划内,但从事水质参数检测研究的极少,我国最早研究水质检测仪器的上海雷磁仪器厂,曾经研制出SJG一704型在线式pH、溶解氧、浊度、电导率和温度五项参数检测仪器;北京市水环境监测中心与北京市水电科学研究院自动化所联合研制了“北京市地下水和地表水水质自动监测网络”。但是,迄今为止,还没有一种普遍适用于基层水环境在线监测与数据远程传输的仪器设备在国内生产。


水质自动监测系统WQMS (W at e r Qu ality Monitoring System)以监测水质污染综合指标及其某些特定项目为基础,通过在一个水系或一个地区设置若干个有连续自动监测仪器的监测站,由一个中心站控制若干个子站,随时对该区的水质污染状况进行连续自动监测,形成一个连续自动监测系统。


水质自动监测系统是20世纪70年代发展起来的,在美国、英国、日本、荷兰等国已有相当规模的广泛应用, 并被纳入至网络化的“环境评价体系”和“自然灾害防御体系”。一则可为综合评价水功能区的水环境质量提供基础性数据,二则可迅速发现突发性水质污染事故或天灾, 将水域异常水质情况、污染传播源及影响规模通过系统的通讯网络传至控制中心,为决策部门把握灾害的性质状态,从而制定灾害的防治对策提供依据。


1 系统总体设计


本设计采用美国GLOBAL WATER公司的WQ系列水质参数检测传感器,自行设计了现场参数在线监测子系统、数据远程传输子系统和数据管理子系统,构成一个完整的水质参数在线监测及远程传输系统。


在研制的过程中,选取ATmega16单片机作为现场参数在线监测子系统的核心器件,配合相关的外围电路, 将水质传感器监测到的电信号转换成4-20mA/0-5V的标准信号,经过数据运算处理,变成代表实际化学或物理量的数据显示在液晶屏上,以供现场人员的观测、记录和分析。这部分也可作为一个独立的智能仪表,即水质参数在线监测仪使用。


在设计数据传输网络时,把基层监测部门作为系统的监控中心,而把辖区内各污染物排放企业作为监测站点,监控中心的计算机便是网络的服务器。监控中心的服务器和各监测站点的水质监测仪都是通过调制解调接入GSM网络的短消息业务(SMS)进行信息交换与数据传输。


在监控中心的电子地图上显示监控中心和和各监测站点的位置,用数据管理软件实时监测每一项水质参数或者在一段时间内对部分数据做出统计结果,为有关部门的分析和决策提供科学依据。


本系统是基于AT单片机技术的水质监测系统,硬件电路主要包括传感器的选取,单片机的选取与应用,A/D 转换的选用,电源设计,显示部分设计等;软件设计主要包括主程序设计和子程序设计,监测结果通过显示模块显示。传感器采集目标对象的信息,将信息送到A/D的模拟通道中,由单片机通过程序将经过A/D模数转换后的信息读到自己内部的寄存器中,单片机通过自己内部的ROM 中的程序,将输入的信息处理,然后将得到的信息通过显示装置显示出来。系统结构图如图1所示。


2系统硬件设计


2.1 单片机选型


单片机也被称为微控制器,它在很多智能控制系统都有广泛的应用。单片机是电脑CPU的小型化。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。ATmega16 具有16K字节的系统内可编程Flash(具有同时读写的能力,即RWW),512 字节EEPROM,1K 字节SRAM,32 个通用I/O 口线, 32 个通用工作寄存器,用于边界扫描的JTAG 接口,支持片内调试与编程,三个具有比较模式的灵活的定时器/ 计数器(T/C),片内/外中断,可编程串行USART,有起始条件检测器的通用串行接口,8路10位具有可选差分输入级可编程增益(TQFP 封装) 的ADC ,具有片内振荡器的可编程“看门狗”定时器,一个SPI 串行端口,以及六个可以通过软件进行选择的省电模式。

  

图 1 系统结构图


本系统采用ATmega16芯片作为核心,ATmega16 是基于增强的AVR RISC结构的低功耗8位CMOS微控制器。AVR 内核具有丰富的指令集和32 个通用工作寄存器。所有的寄存器都直接与算逻单元(ALU) 相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。这种结构大大提高了代码效率,并且具有比普通的CISC 微控制器最高至10 倍的数据吞吐率。AVR有一个灵活的中断模块。控制寄存器位于I/O空间。状态寄存器里有全局中断使能位。每个中断在中断向量表里都有独立的中断向量。各个中断的优先级与其在中断向量表的位置有关,中断向量地址越低,优先级越高。I/O 存储器空间包含64 个可以直接寻址的地址,作为CPU 外设的控制寄存器、SPI,以及其他I/O 功能。映射到数据空间即为寄存器文件之后的地址0x20-0x5F。


2.2 复位电路和晶振电路


单片机若要正常工作,还需要有一些必要的外围电路,才能正常的工作。比如复位电路和晶振电路就是单片机必要的外围的电路。


(1)复位电路


单片机的复位如同计算机的重启一样,任何单片机工作之前都要有一个复位的过程,对于单片机来说,复位是单片机还没有执行程序之前而做的准备工作。一般单片机的复位只需要5ms的时间。


复位电路是典型的单片机系统的外部电路,基本的复位电路一般采用上电复位和按键复位两种复位方式。本系统设计采用按键复位电路,方便并且可以对单片机工作状态进行直接重启。


(2)晶振电路


与复位电路一样,晶振电路同样是单片机系统的典型外围电路。单片机的工作,是从ROM中读取指令,然后执行的过程。单片机访问一次存储器的时间,称为一个机器周期,作为单片机工作的时间基准。没有晶振,就没有时钟周期,没有时钟周期,就无法执行程序,单片机就无法工作。因此,晶振可以说是单片机系统的心脏。本系统采用的晶振频率为12MHz。


晶振电路一般可以分为内部时钟方式和外部时钟方式。本系统采用内部时钟方式的晶振电路。

  

2.3 显示电路设计

  

本系统实现的功能要求对待测场所的环境温度实现实时监控和显示,因此,需要有显示电路的设计,来完成这一功能。

  

表 1 数字字符对应共阴极和共阳极字段码


  表 2 传感器的性能测试实验数据表

  

(1)数码管介绍

  

单片机应用系统中,LED数码管一般用做简单显示输出设备,一般用于显示数字和简单信息。LED数码管显示器具有显示清晰、亮度高、操作简单、接口方便等优点, 基本可以满足普通单片机系统的需要而被广泛使用。

  

LED数码管是由发光二极管按一定的结构排列而成的显示器件。通常使用的是带有小数点的8段数码管,分为共阳极和共阴极数码管两种。(见表1)

  

2.4 传感器的选择

  

变光型浊度传感器原理:当被测物质浊度变化时, 使光源的强度随之变化,光源的强度可对应到被测物质的浊度。当液体浊度增加时,由于液体阻碍增强,光的通过率低,光敏电阻器接受光线弱。当液体浊度下降时,光敏电阻器接受光线强。让传感器接收到的光信号强度一定, 当被测物质浊度发生变化时,使光源的强度随之变化,光源强度可对应到被测物的浊度。

  

变光型浊度传感器的结构:传感器由光敏电阻器、平衡检测器、固定电源、反馈控制、可调电源、光源和外壳等组成,本传感器的最主要的特点就是要求2个光敏电阻器的阻值相等,也就是他们接受的光强一样,如不同平衡检测器能识别出来,然后,由反馈控制产生信号调整可调电源,从而调整光源的强度来实现这一要求。

  

此传感器具有量程宽、标定过程简单、功耗低、成本低、体积小等特点,该传感器的另一个特点是在高浑浊度时分辨率比低浑浊度高,可满足一些特殊的测量要求。(见表2)

  

2.5 A/D转换的选用

  

由于单片机只能识别数字信号所以必把传感器输出的模拟信号进行数字化处理,因此,在智能仪器的输入通道中加入能把模拟信号转换成数字信号的芯片即A/D转换芯片。使用A/D转换器时需要根据实际所需精度与分辨率的不同选择不同的A/D转换芯片,确定采样频率,保证单片机的实时行要求。由于环境对A/D转换器存在一定影响,一次在选择A/D转换器的时候必须考虑环境因素,还应根据单片机接口特征选择A/D转换器的输出状态。 A/ D转换器与单片机的接口一般要完成的操作有单片机发出启动转换信号,单片机取回转换结束状态信号,读取需要转换的数据。由于A/D转换对于提高数据精度具有较大影响,因此需要选择一款精度较高的器件,所以本次采用ADC0832作为A/D转换芯片。

  

图 2 监控中心应用程序主体框图

  

ADC0832 是美国国家半导体公司生产的一种 8 位分辨率、 双通道 A/D 转换芯片。由于它体积小,兼容性强,性价比高,其目前已经有很高的普及率。

  

ADC0832 具有以下特点:


(1)8位分辨率;

  

(2) 双 通 道 A/D 转 换 ; 


(3)输入输出电平与 TTL/CMOS 相兼容; 


(4)5V 电供电时输入电压在 0~5V 之间;

  

(5)工作频率为 250KHZ,转换时间为 32μS; (6) 一 般 功 耗 仅 为 15mW; (7)8P、14P—DIP(双列直插) 、PICC 多种封装; (8)商用级芯片温宽为0°C to +70°C,工业级芯片温宽为−40°C to +85°C。

  

单片机对ADC0832的控制原理:正常情况下单片机与ADC0832的接口应该为4条数据线,分别是DI、CS、DO、CLK。但因为DI端和DO端在通信时未同时有效地并与单片机的接口是双向的,故电路设计时可以将DI和DO并联在一根数据线上使用。

  

3 监控中心应用程序的设计

  

监控中心应用程序的主体框图如图2所示。该程序采用VB6.0设计用户界面,整个程序中各子模块的功能可以通过相应的操作菜单体现出来。监控中心应用程序的主程序模块主要由文件、视图、设置、监控、工具、维护和帮助等子模块组成。

  

4 结论

  

本系统采用C语言编程,用ATmega16单片机作控制系统核心,将传感器和数据采集元件有效的组合在一起进行使用,本设计配置了两套传感器壳用于检测浑浊度和自由离子浓度,预留有外扩接口可通过增加传感器,方便的检测水中的PH值和溶解氧等。