基于ATmega128和μC/OS-II的在线钠离子分析仪的设计
扫描二维码
随时随地手机看文章
摘要:阐述了一种智能在线钠离子分析仪的软硬件设计。采用灵敏度高、稳定性强的电化学传感器。硬件应用低功耗、高性能的微控制器及外围器件,软件采用μC/OS-II操作系统。整个系统具有精度高、检测速度快、功耗低、稳定性强,操作界面友好等优点。
关键词:钠离子分析仪;ATmega128;μC/OS-II;AD7714
1 引言
水和蒸汽是热力系统中的锅炉、汽轮机、过热器等设备的重要工作介质。当火力发电厂正常运行时,热力设备中都有水或蒸汽在流动。水、汽的品质都有规定的指标,一旦水、汽品质的指标超标,就会加速热力设备的腐蚀、结垢和积盐。当水汽中携带一些含钠的杂质时,将会导致汽轮机金属材料的点蚀、应力腐蚀或腐蚀疲劳,这些腐蚀通常会造成重大的经济损失。严重时甚至造成重大事故。钠离子含量是发电厂水汽品质的重要指标之一。因此,为防止结垢、结盐,减缓系统中金属部件的腐蚀。保证系统的安全经济运行,必须对电厂水汽系统中钠离子含量进行严格监测和控制。
2 测量原理
钠离子的测量是基于电化学中的电位分析法,由测量电极和参比电极及待测溶液构成原电池。测量电极是对钠离子具有选择性的玻璃电极,参比电极的电位保持恒定。当测量电极与参比电极同时浸入溶液后,即组成测量电池对,图1给出测量电池的示意图。其中钠测量电极的电位随溶液中钠离子的浓度符合能斯特方程式:
式中:E为钠电极电位;E0为钠电极的理论等电位点电位;R为气体常数,R=8.317 J/(mol.K),T为溶液的绝对温度,T=273+t,K;F为法拉第常数,F=9.649×104 C/mol;C为钠离子的浓度,ppb;f为钠离子活度系数,对于1 000 ppb以下的稀溶液f≈1。由钠离子选择性电极、参比电极以及待测溶液构成测量电池,通过一个高阻抗的毫伏计对被测溶液进行精确的电位测量,从而可直接测定溶液中钠离子的含量。
3 水路设计
对钠有选择性的玻璃电极对氢离子的响应比对钠离子响应还敏感,所以氢离子是钠测量时主要的干扰源,要用碱性试剂加以抑制。在对Na+的测量过程中需要合适的水路设计,对水样进行恒流,碱化。水路设计及工作过程如图2所示。
在正常测量时,样水从进口经三通电磁阀进人恒流杯,过多的样水从溢流口流出,由于负压原理,样水在T形块带动碱化气进入测量杯,水气混合后,PH值达到要求,流经测量电极和参比电极经出水口排出。当标定时,电磁阀进行切换,校准用标准溶液经电磁阀进入恒流杯,样水经卸压阀流出。该水路设计削弱了H+和流速造成的误差,提高了测量精度。
4 硬件电路设计
在线钠离子分析仪的硬件电路设计是以8位的微控制器ATmega128为核心,其总体的设计框图如图3所示。主要包括电源、信号调理电路、A/D转换、微控制器、扩展存储器、人机接口6个部分。
电极输出的是一个近似直流的电压信号,经放大处理后,进行A/D转换,将数字信号输入微控制器进行分析处理,然后存储和显示数据,并通过串口把数据传输给控制室。
4.1 微控制器
这里选用高性能8位单片机ATmega128。ATmega128为基于AVR RISC结构的8位低功耗CMOS微处理器,可广泛应用于计算机外部设备、工业实时控制、仪器仪表、通信设备、家用电器等各个领域。
ATmega128特点:内嵌128 KB的Flash程序存储器,擦写方便,便于产品的调试、开发、更新;内嵌4 KB的E2PROM和4KB的RAM,具有64 KB的外部存储器寻址空间;具有PWM功能的定时器/计数器(T/C);具有片内振荡器的可编程看门狗定时器:SPI串行端口;与IEEE1149.1规范兼容的JTAG测试接口(同时还可用于片上调试);低电压供电、宽工作电压范围:2.7~5.5 V;抗干扰能力强,可降低一般8位机中的软件抗干扰设计的工作量和硬件的使用量;工作温度范围符合工业级要求,达到-55℃~+125℃。基于ATmega128的诸多特点.因此这里选用ATmega128单片机作为在线钠离子分析仪的核心控制器。
4.2 A/D转换器
A/D转换器采用TI公司的AD7714。AD7714是适用于低频测量应用的完整模拟前端。器件直接从传感器接受低电平信号并输出串行数字。它使用∑-△转换技术以实现高达24位的无误码性能。输人信号加至专有的基于模拟调制器,具有可编程增益的前端。调制器的输出由片内数字滤波器处理。通过片内控制寄存器可对此数字滤波器编程,允许调整滤波器的截止频率和稳定时间。AD7714具有3个差分模拟输入(它也可配置为5个准差分模拟输入)以及差分基准输入,分别对温度信号和钠离子浓度信号采样。
4.3 存储部分
由于系统移植了μC/OS-II操作系统,各个任务均需要分配独立的堆栈空间,总线上扩展32 K字节的随机存储器KM62256。KM62256是8位数据宽度32 K字节的随机存储器,具有低功耗、速度快等优点。同时还扩展了64 KB字节的E2pROM AT24C512,用来存储电路校准数据和实时测量数据,并可存储一个月的历史数据,绘制历史曲线,详细反映水质变化过程和趋势,有利于发现和解决问题。
4.4 人机接口
采用TFT3224真彩液晶显示器,支持256色显示,带有触摸屏功能,改变了以往单一颜色显示、按键操作的风格。触摸屏接口器件选用ADS7846,它具有同步串行接口的12位取样模数转换器。此外测量值经串口远程传输到控制室。
5 软件设计
8位单片机为核心的测控系统程序一般采用前后台方式编写,后台运行一个大的无限循环,前台为多个中断,在这种方式中,中断服务程序提供的信息一直要等到后台程序运行到处理该信息时才能得到处理,所以在处理信息的及时性上这种系统要比实际做到的差,而且代码编写复杂,增加功能时任务量大,不便于维护。因此采用μC/OS-II操作系统。
5.1 嵌入式实时操作系统μC/OS-Ⅱ
μC/OS-II是一个完整的,开源的,可移植、固化、裁剪的占先式实时多任务内核。程序量,仅7~8K,绝大部分代码采用ANSI C编写.便于移植。其稳定性与安全性方面已经过美国联邦航空管理局认证。
使用μC/OS设计软件系统首先要实现μC/OS在硬件应用平台上的移植,主要就是完成对OS_CPU_C.C,OS_CPU_A.ASM等多个与处理器相关文件的改写,在μC/OS的官方网站有在数十种处理器上移植成功的范例,可以免费下载,这里不再详细介绍。
基于μC/OS-II编写应用程序比较简单,首先根据系统功能合理划分任务,确定任务间的通信机制。每个任务都是相对独立的子模块,有唯一的优先级和自己的堆栈空间。每个任务处于以下5种状态的一种:休眠态、就绪态、运行态、挂起态及被中断态。内核在一个定时中断函数中查询进入就绪态中的优先级最高的任务,然后把当前任务挂起,保存现场,执行该任务。各个任务间根据信号量、消息邮箱、队列等通信方式传递信息。
5.2 任务划分
基于μC/OS-II编写应用程序主要的工作是划分任务和分配优先级及任务之间信息的传递。设计中,将整个系统划分为:①数据处理与显示;②菜单显示任务;③串口通信任务。A/D中断:AD7714的定时中断;触摸屏中断:点击触摸屏触发外部中断。软件设计如图4所示。
在AD7714的A/D定时中断服务中发送消息,数据处理及显示任务接收到消息后,把消息中的A/D数据经过公式推导,转换成相应的钠含量并显示。
在触摸屏中断处理函数中发送消息给菜单任务,菜单任务接收到消息中的坐标值后,进行判断并显示相应的菜单界面。串口通信任务把测量值经过串口远传到控制室。
6 结语
系统创新性在于将高性能微处理器MEGA128和新器件AD7714首次应用于水质监测信号采集。同时移植μC/OS-II操作系统。系统硬件电路简洁可靠,功耗低、可靠性高。软件实时性好,便于扩展功能。将此分析仪与进口仪表进行对照实验,数据如表1所示。
由表1数据可知,该分析仪的测量精度接近进口仪表。通过与国家标准比对,分析仪的各项指标已符合国标,可作为在线式仪表用于水质钠离子含量的连续检测。