1、吉林工业技术学院 0目录第 1 章 绪论 11.1 溶氧概述 11.2 溶解氧测定仪的工作原理 11.3 设计目的 2第 2 章 方案论证 .32.1 概述 32.2 方案的选择 3第 3 章 硬件电路设计 53.1 模拟通道的设计 53.1.1 传感器的选型 53.1.2 仪表放大器选型 53.1.3 A/D 转换器的选型 63.2 后向通道的设计 73.2.1 单片机的选型 .73.2.2 时钟芯片的选择 73.2.3 液晶显示器 83.2.4 报警电路 93.2.5 键盘电路 93.2.6 输出电路 103.3 总体设计电路 11第 4 章 软件设计 .12第 5 章 总结 13参考文献
2、 .14附录.15 吉林工业技术学院 1第 1 章 绪论1.1 溶氧概述近年来,随着科学技术的不断发展,越来越多的人开始意识到监测水中溶氧的必要性和重要性。尤其是大中型发电厂、水处理厂、油田及环保等单位,为确保水质,保证设备长期正常运行,必须严格地监测和控制所用水中的溶解氧含量。目 前,普遍采用专用仪器(溶氧仪)代替化学法测定溶解氧含量。溶氧仪主要由主机和传感器( 电极) 构成。传感器主要有两种,即原电池式“DO”电极和极谱式复膜电极。原电池式“DO”电极由于消耗电极材料、精度低、寿命短而逐渐被淘汰。而极谱式复膜电 极以其受干扰小、使用寿命长、便于储存等优点被大量应用在 DO测量上。目前,国内
3、也生产极谱式电极溶氧仪,但存在准确度差、稳定性差、定标复杂、各种补偿功能不足的缺点。国外的溶氧仪虽然精度高,但其价格昂贵,维护困难,难以满足国内的需求。溶解氧(DO)是指溶解于水中的氧的含量,它以每升水中氧气的毫克数表示。溶解在水中的氧称为溶解氧,溶解氧以分子状态存在于水中。水中溶解氧量是水质重要指标之一,也是水体净化的重要因素之一,溶解氧高有利于对水体中各类污染物的降解,从而使水体较快得以净化;反之,溶解氧低,水体中污染物降解较缓慢。水中溶解氧含量受到两种作用的影响:一种是使 DO 下降的耗氧作甩,包括好氧有机物降解的耗氧,生物呼吸耗氧;另一种是使 DO 增加的复氧作用,主要有空气中氧的溶解
4、,水生植物的光合作用等。这两种作用的相互消长,使水中溶解氧含量呈现出时空变化。水被有机物污染后,由于好氧菌作用使其氧化,消耗掉溶解氧。如果得不到空气中氧的及时补充,那么水的溶解氧就减少,最终导致水体变质。所以把溶解氧作为水质污染程度的一项指标。溶解氧越少,表明污染程度越严重。1.2 溶解氧测定仪的工作原理测量水中溶解氧含量的仪表属于电流式分析仪器,电流式分析仪的传感器能够吉林工业技术学院 2把被分析物质浓度的变化转换成电流信号的变化。按工作原理的不同,又可分为原电池式和极普式。常见的溶解氧测定仪多采用隔膜电极作换能器,将溶氧浓度(实际上是氧分压)转换成电信号,再经放大、调整(包括盐度、温度补偿
5、) ,模数转换显示。测定溶解氧实用的膜电极有两种类型:极谱型(Polarography)和原电池型(Galvanic Cell) 。 极谱型(Polarography):电极中,由黄金( Au)环或铂(Pt)金环作阴极;银-氯化银(或汞-氯化亚汞)作阳极。电解液为氯化钾溶液。阴极外表面覆盖一层透氧薄膜。薄膜可采用聚四氟乙烯、聚氯乙烯、聚乙烯、硅橡胶等透气材料。阴阳两电极之间外加 0.51.5V 的极化电压。有的极化电压为 0.7 伏。当溶解氧透过薄膜到达黄金阴极表面,在电极上发生如下反应:阴极被还原:O2+2H2O+4e 4OH;阳极被氧化: 4Cl+4Ag-4e4AgCl 。1.3 设计目的
6、国内生产的极谱式电极溶氧仪存在准确度差、稳定性差、定标复杂、各种补偿功能不足的缺点。国外的溶氧仪虽然精度高,但其价格昂贵,维护困难,难以满足国内的需求。因此,设计了基于 AT89C51 微控制器的智能在线溶解氧分析仪,该系统具有低功耗、精确度高、稳定 性好、存储量大等特点。吉林工业技术学院 3第 2 章 方案论证2.1 概述智能溶解氧测定仪采用超低功耗单片机测量和控制,功耗低,可靠性高,可实现智能化测量,采用极谱法测量, 采用微处理技术,操作简单。有四个按键可以实现相应参数的设置,采用液晶显示,可以实现当前 DO 含量、水温和系统时间的显示。2.2 方案的选择 图 2.1 是智能水中溶氧测定仪
7、的基本组成方框。主要由温度传感器、溶氧传感器、放大器、A/D 转换器、单片机控制、液晶显示器,电源等组成。温度传感器是把温度转换成电压(或电流)的器件,温度传感器输出电压的大小随温度的高低变化而变化,电压值的变化范围从几个微伏到几个毫伏。不同的温度传感器,输出电压的范围也差别很大。放大器的主要功能是把微弱的温度电压信号放大到(02)伏或(05)伏的范围内,以便进行 A/D 转换。A/D 转换器把放大后的模拟温度电压信号转换成对应的数字温度电压信号。单片机 AT89C51 是智能温度计的控制核心,一方面控制 A/D 转换器实现模拟信号到数字信号的转换,另一方面将采集到的数字温度电压值,经过计算处
8、理,得到相应的温度值,送到液晶显示器以数字形式显示测量的温度。液晶显示器用于显示测量温度,水中氧含量的结果和系统时间。当DO 含量低于设定标准值时,能够进行声光报警。温度传感器 单 片机89c51液晶显示器仪表放大器 A/D转换器电 源氧传感器 仪表放大器报警电路键盘吉林工业技术学院 4图 2.1 智能水中溶氧测定仪的基本组成方框图本设计也可以直接选用输出为数字量的温度度传感去和氧传感器,但是由于其造价太高,所以选用以上设计方案。吉林工业技术学院 5第 3 章 硬件电路设计智能在线溶氧仪的设计以低功耗 8 位控制器 AT89C51 为核心,可分为八个部分:微控制器、氧传感器、温度传感器、信号处
9、理及 A/D 转换、键盘显示电路、报警电路等。3.1 模拟通道的设计本设计的模拟输入通道一般包传感器、仪表放大器和 A/D 转换器。根据设计要求和工艺要求本设计采用温度传感器测量水温和溶氧传感器测量水中氧含量。由于采集的模拟信号微弱,并为了充分利用 A/D 转换器的分辨率,通常将放大器的工作窗口定位在信号的特点范围内,以“窗口放大”的形式工作,采用仪表放大仪对信号进行放大。为了便于把信号输入单片机,必须将信号转为数字信号所以采用 A/D转换器将模拟信号转为数字信号。3.1.1 传感器的选型温度传感器选为 AD590,AD590 是美国模拟器件公司生产的单片集成两端感温电流源,精度高,输出为模拟
10、量。AD590 参数:AD590 的测温范围:-55 +150 ;AD590 的电源电压范围:4V30V。电源电压从 4V 到 6V 变化,电流变化1A,相当于温度变化 1K。AD590 可以承受 44V 正相电压和 20 V 反相电压。因而器件反接也不会损坏器件;输出电阻:710 。氧传感器采用的复合式溶氧传感器,其中氧传感器基于极谱原理。3.1.2 仪表放大器选型放大器选为 BB 公司的仪表放大器 INA114。INA114 内部集成了 3 个运算放大器和 6 个 50k 的精密电阻,可以方便的改变放大系数。主要功能是把模拟的温度电压信号放大到 A/D 转换器要求的输入电压范围。使放大器
11、A 的输出电压为0.0V。放大器的放大倍数选择为 10,保证温度在 0150范围内变化,而放大器的吉林工业技术学院 6输出电压在 50V 的范围内。3.1.3 A/D 转换器的选型根据设计要求 A/D 转换器选为 MAX1132。MAX1132 转换的电压范围可达+12V,比其他 ADC 转换电压范围要宽;它的精度达到 16 位,转换速度最高可达到200kp/s,足以满足系统对精度和速度的要求,DO200 个变化值,温度 400 个变化值。新型 ADC 芯片 MAXl132 与一般 ADC 芯片相比,仅需单一+5V 供电,同时带有内部基准电压且外围电路简单,因而可简化电路设计。同时,基于 MA
12、Xll32 的串行接口也易于与单片机进行连接。图 3.1 为 MAX1132 与单片机的连接图。图中将 MAX1132 的 CS 与单片机 P1.0 脚相连,MAX1132 的片选端由单片机经P1.0 脚发出信号选通;控制字节由单片机 P1.1 脚输出到 ADC 的 DIN 端;转换结果则由 P1.3 脚从 ADC 的 DOUT 端读入单片机,读取转换数据的时钟 SCLK 可由 P1.2脚依次发出高低电平来构成:P1.4 脚接至表示 MAX1132 工作状态的串行选通输出SSTRB,单片机则通过 P1.4 脚查询 ADC 的工作状态;而进行逐次逼近转换的时钟则由 MAX1132 内部时钟发生器
13、产生。1 2 3 4 5 6ABCD654321DCBATitleNumber RevisionSizeBDate: 6-Jan-2011 Sheet of File: C:Documents and SettingsAdministrator仪仪仪仪仪仪仪仪仪仪MyDesign.ddbDrawn By:REFREFADJAGNDAVDDDGNDSHDNP2P1P0SSTRBAINAGNDCREFCSDINDVDDDGNDSCLKRSTDOUT+5VC1C2C3+5VC4+5VMAX1132P1.4 P1.3P1.2P1.0P1.1仪仪仪仪仪仪仪仪仪仪仪仪仪仪仪仪仪仪仪吉林工业技术学院 7图
14、3.1 MAX1132 与单片机的连接图3.2 后向通道的设计3.2.1 单片机的选型单片机选用 AT89C51,AT89C51 由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中,ATMEL 的 AT89C51 是一种高效微控制器,AT89C2051 是它的一种精简版本。AT89C 单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。3.2.2 时钟芯片的选择时钟芯片选用 DALLAS 公司的 DS1302 芯片,DS1302 是一种高性能、低功耗、带 RAM 的实时时钟,具有计算 2100 年之前的秒、分、时、日、星期、月、年的能力,并能计算调整闰年。在系统关机时可以保存关键
15、数据。简单的三线串行 I/O 口方式,宽范围工作电压 2.05.5V,当工作电压为 2.0V 时工作电流小于 300nA;备份电源引脚 Vcc1 可接入电池或大容量电容器,对备份电源有可选的涓流充电能力。DS1302 与单片机的连接如图 3.2 所示。吉林工业技术学院 81 2 3 4 5 6ABCD654321DCBATitleNumber RevisionSizeBDate: 7-Jan-2011 Sheet of File: C:Documents and SettingsAdministrator仪仪仪仪仪仪仪仪仪仪MyDesign4.ddbDrawn By:AT89C51P1.5P1
16、.6P1.7CEI/OSCLKGNDVcc1Vcc2X1 X2DS1302C2C1Y1CRYSTALVCCVCCVCC6pf 6pf图 3.2 DS1302 与单片机的连接3.2.3 液晶显示器本系统选用 TCl602A 液晶显示模块。TICl602A 是 2x16 个字符型液晶显示模块。LCD 控制器 HD44780 是整个显示系统的核心,具有自身的时钟信号,并有完整的指令系统,它是用低功耗 COMS 技术制造的大规模点阵 LCD 控制器,和微处理器相连,它能使点阵 LCD 显示大小写英文字母,数字和符号;LCD 驱动器 HD44100是用低功耗 COMS 技术制造的大规模 LCD 运动驱动
17、 IC,它既可当行驱动用,也可当列驱动用;LCD 显示器其上排列着若干字符显示位,每个显示位可显示一个字符。把 TCl602A 液晶显示模块作为终端接在单片机的并行接口上。图 3.3 给出了TCl602A 液晶模块与单片机连接的接口电路。图中的 RS 端接单片机的 P3.4 口,RW 端接 P3.5 口,E 端接 P3.3 的口,D0D7 端接平 P1.0P1.7 口。液晶显示模块在编制驱动子程序的时候,要注意时序的配合,根据 TCl602A 时序的规范,在写操作时,使能信号 E 的下降沿有效,在软件设置顺序上,先设置 RS 和 RW 的状态,吉林工业技术学院 9再设置数据,然后产生 E 信号
18、的脉冲,最后复位 RS 和 RW 状态。在读操作时,使能信号 E 的高电平有效,所以在软件设置顺序上,先设置 RS 和 RW 状态,再设置 E 信号为高电平,这时从数据口读取数据,然后将 E 信号置低,最后复位 RS和 R W 状态。1 2 3 4 5 6ABCD654321DCBATitleNumber RevisionSizeBDate: 6-Jan-2011 Sheet of File: C:Documents and SettingsAdministrator仪仪仪仪仪仪仪仪仪仪MyDesign.ddbDrawn By:TC1602D0D1D2VSSD3D4D5D6D7VDDVoR/W
19、RSEANBLELED+LED-+5P1.0P1.1P1.2VccP1.3P1.4P1.5P1.6P1.7P3.5P3.4P3.3VSSRESETAT89C51CR2R1图 3.3 液晶模块与单片机连接的接口电路3.2.4 报警电路本设计需要声光报警,所以选用蜂鸣器和 LED 灯作为执行器件接在单片机的输出口。蜂鸣器和 LED 灯与单片机的连接如图 3.4 所示。吉林工业技术学院 101 2 3 4 5 6ABCD654321DCBATitleNumber RevisionSizeBDate: 5-Jan-2011 Sheet of File: C:Documents and Settings
20、Administrator仪仪MyDesign4.ddbDrawn By:P2.0 R1LEDSPEAKERT1D1R2AT89C51VCC图 3.4 报警电路3.2.5 键盘电路按键选择查询方式的独立按键,通常按键都是低电平有效,上拉电阻保证了按键断开时 I/O 口线有确定的高电平。图 3.5 为独立式按键电路。吉林工业技术学院 111 2 3 4 5 6ABCD654321DCBATitleNumber RevisionSizeBDate: 6-Jan-2011 Sheet of File: C:Documents and SettingsAdministrator仪仪仪仪仪仪仪仪仪仪My
21、Design4.ddbDrawn By:K1K2K3K4R1 R4R3R2VCCP2.1P2.2P2.3P2.4AT89C51图 3.5 独立式按键电路3.2.6 输出电路输出电路由标准电流输出电路、控制继电器和通信接口等组成。利用 AT89C51的 PWM(脉宽调制)输出 420mA 标准电流,用于控制或外接记录仪。通信电路采用 RS485 总线接口同上位计算机组成工控网络,RS485 采用平衡式差分传输方式,抗干扰能力强,传输距离远,通讯速率高。采用 MAX485 芯片实现通信,通信线路采用双绞线,图 3.6 为 MAX485 的接口电路。1 2 3 4 5 6ABCD654321DCBA
22、TitleNumber RevisionSizeBDate: 6-Jan-2011 Sheet of File: C:Documents and SettingsAdministrator仪仪仪仪仪仪仪仪仪仪MyDesign4.ddbDrawn By:RxDTxDROREDEDIVccBAGNDMAX485P3.0P3.3P3.1R PC仪仪仪仪VCCAT89C51吉林工业技术学院 12图 3.6 MAX485 的接口电路。3.3 总体设计电路氧传感器及温度传感器输出的模拟信号,经过放大处理后,进行 A/D 转换,并将转换后的数字信号输入微控制器进行分析处理,然后对数据进行存储和上传,并显示。
23、当 DO 含量低于设定值时,进行声光报警。吉林工业技术学院 13第 4 章 软件设计设计的部分流程图如图4.1。图 4.1 程序流程图开 始 初始化,设堆栈指针,清除 RAM 缓冲区,初始化 LCD 显示器,调用 MAX1132 的A/D 转换程序,对温度和 DO 进行采样,送LCD 显示器,显示当前温度调用 MAX1132 的 A/D 转换子程序,将温度的电压数字值和 DO 存放到内部 A/D 输入数据缓冲区调用 A/D 输入数字值到数字温度转换子程序,将数字温度电压值转换为其相应的温度数字,存放到数字温度的缓冲区调用送 LCD 显示器显示子程序,然后调用动态扫描子程序吉林工业技术学院 14
24、第 5 章 总结本课程设计叙述了智能水中溶氧测定仪的设计,包括硬件组成和软件的设计,该系统在硬件设计上主要是通过温度传感器对温度进行采集,氧传感器对氧含量进行采集,把温度和氧含量转换成变化的电压,然后由放大器将信号放大,通过 A/D转换器 MAX1132 将模拟信号转化为对应的数字信号。其硬件设计中最核心的器件是单片机 AT89C51,它一方面控制 A/D 转换器实现模拟信号到数字信号的转换,另一方面,将采集到的数字温度电压值经计算机处理得到相应的温度值,送到液晶显示器,以数字形式显示测量的温度和氧含量。整个系统结构紧凑,简单可靠,操作灵活,功能强大,性能价格比高,较好的满足了现代农业生产和科
25、研的需要。吉林工业技术学院 15参考文献1 高锋.单片机应用系统设计及实用技术.北京:机械工业出版社,20062 郭强.液晶显示器的驱动和控制.北京:北京清华蓬远科贸公司,20063 李朝青.单片机原理及接口技术.北京:北京航空航天大学出版社,20074 徐惠民,安德宁 .单片微型计算机原理.北京:北京邮电大学出版社,20075李朝青.PC 机及单片机数据通信技术M .北京航空航天大学出版社,2006吉林工业技术学院 16附录TC1602 液晶显示程序如下:#include #include#include#include#includesbit P1_4 = P14;sbit P1_3 =
26、P13;sbit P1_5 = P15;#define LCM_RW P1_4 #define LCM_RS P1_3#define LCM_E P1_5#define LCM_Data P2 #define Busy 0x80 void WriteDataLCM(unsigned char WDLCM);void WriteCommandLCM(unsigned char WCLCM,BuysC);unsigned char ReadDataLCM(void);unsigned char ReadStatusLCM(void);void LCMInit(void);void DisplayO
27、neChar(unsigned char X, unsigned char Y, unsigned char DData);void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData);void Delay5Ms(void);void Delay400Ms(void); unsigned char code uctech=“Win_belong_to“;unsigned char code net=“Guo_Xiaoxin“;void main(void)Delay400Ms(); LCMIn
28、it();Delay5Ms(); DisplayListChar(0,0,uctech);DisplayListChar(0,1,net);ReadDataLCM(); while(1); 吉林工业技术学院 17void WriteDataLCM(unsigned char WDLCM)ReadStatusLCM(); LCM_Data = WDLCM;LCM_RS = 1;LCM_RW = 0;LCM_E = 0; LCM_E = 0; LCM_E = 1;/写指令void WriteCommandLCM(unsigned char WCLCM,BuysC) /BuysCif (BuysC)
29、 ReadStatusLCM(); LCM_Data = WCLCM;LCM_RS = 0;LCM_RW = 0;LCM_E = 0;LCM_E = 0;LCM_E = 1;/读数据unsigned char ReadDataLCM(void)LCM_RS = 1;LCM_RW = 1;LCM_E = 0;LCM_E = 0;LCM_E = 1;return(LCM_Data);/读状态unsigned char ReadStatusLCM(void)LCM_Data = 0xFF;LCM_RS = 0;LCM_RW = 1;LCM_E = 0;LCM_E = 0;LCM_E = 1;whil
30、e (LCM_Data 吉林工业技术学院 18return(LCM_Data);void LCMInit(void) LCM_Data = 0;WriteCommandLCM(0x38,0); Delay5Ms();WriteCommandLCM(0x38,0);Delay5Ms();WriteCommandLCM(0x38,0);Delay5Ms();WriteCommandLCM(0x38,1);WriteCommandLCM(0x08,1); WriteCommandLCM(0x01,1);WriteCommandLCM(0x06,1); WriteCommandLCM(0x0F,1);
31、 void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData)Y X if (Y) X |= 0x40; X = 0x80; WriteCommandLCM(X, 1);WriteDataLCM(DData);void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData)unsigned char ListLength;ListLength = 0;Y X while (DDataListLength0x20) if (X = 0xF) DisplayOneChar(X, Y, DDataListLength);ListLength+;X+;吉林工业技术学院 19void Delay5Ms(void)unsigned int TempCyc = 5552;while(TempCyc-);void Delay400Ms(void)unsigned char TempCycA = 5;unsigned int TempCycB;while(TempCycA-)TempCycB=7269;while(TempCycB-); 吉林工业技术学院 20