0 引 言
基于SOPC 的在线分析仪器平台从数据采集到显示已经可以完成分析仪器的基本功能,但是随着仪表在线检测、显示、传送等要求逐渐提高,以及方便仪器与PLC、DCS 等生产过程自动化的仪表相连,有必要为分析仪器设计信息管理系统。
1 信息管理系统界面设计
测量界面采用双缓存图片。把一个图像作为缓存,两个图像就是双缓存了。一个作为前台缓存,一个作为后台缓存。即:
创建一个绘制缓冲区,以bufImage 表示,先将主要的图形元素一个一个地绘制到此缓冲图像上,再将此缓冲图像一次性绘到代表屏幕的Graphics 对象上。
本设计在Visual C++ 界面编程中使用了Skin++.Skin++是一款通用的软件换肤套件,目前支持各种版本操作系统,Windows9x、Windows2000、WindowsXP、Windows2003 等,并支持VC、VB、C#、PB、Delphi、C++Builder 等各种开发语言。
Skin++ 换肤的效果较好,程序本身也比较稳定。
另外,本文在界面设计中也采用了复合文件,结构化存储,这是微软组件思想的起源。
系统的功能模块包括用户管理、成分选择、仪器状态、参数设置、非线性验证、TCP/IP 传输等。主界面如图1 所示,对应的分析仪器测量界面如图2 所示。
1.1 系统登录界面
系统登录界面用户分为两级:管理员和普通用户。当输入完用户名和密码并按下“确定”按钮后,程序会在数据库中查询用户名和密码是否匹配。在确认匹配之后,程序根据用户的级别分配权限,然后进入主界面等待用户下一步的操作。
在登录成功后,系统会进入测量界面。如果用户名输入错误,则会提醒用户输入的不是用户名而不能进入系统,系统也会给出相应的提示信息。
1.2 用户管理
管理员可以通过“用户管理”界面添加、删除、更改普通用户的设置,普通用户也可以修改密码。图3 所示是系统用户管理界面。管理员和用户都能根据实际情况,点击列表头可以实现用户的升降序重新排列。操作可使得用户管理界面更加人性化。
1.3 成分选择
通过图4 所示的成分选择界面,可以根据不同的要求选择不同的通道号(通道1 ~通道4)和选择不同的成分(H2、CO、SO2、NO、NO2),单位也可以选择。因为比较常用的气体单位为“%”和“ppm”,所以单位设置了这两个选择。选择确定后,在测量界面也会有相应的更新。
1.4 仪器状态和参数读取
本系统的仪器状态和参数读取界面如图5 所示。仪器状态界面的主要功能就是让用户可以方便地知道仪器信息,便于下一步操作。
1.5 非线性验证
本设计采用5 次方程代替能斯特方程的方法来求出气体组分含量,并在上位机通信这一块设计了直接利用能斯特方程来验证数据,这一验证方法对于用户来说更具有说服力。图6 所示是系统的非线性验证界面。
其中C++ 中部分代码如下:
1.6 TCP/IP 传输
TCP/IP 传输是方便数据能够通过互联网把实时数据传到本地监控中心或环境监测中心,其TCP/IP 通讯界面如图7 所示。在基于SOPC 的在线分析仪器平台,可以利用 NiosII 这个用户可定制的CPU 来增加新的外设、新的指令,分配外设的地址等。用户可以直接在客户端通过IE 浏览器访问服务器,浏览存储在Flash 中的信息。根据Web 服务器的原理, Altera公司新提供的Nichestack TCP/IP Stack 协议设计实现了应用程序提供的标准的Socket 接口以及TCP/IP 等协议。
由于设计采用了Altera 公司低端的一款FPGA,数据存储能力比较有限,所以在设计中通过RS232 读出数据,再通过上位机传输给网络。TCP/IP 通讯功能已经在某公司实时监控视频传输中成功实现。
2 系统调试和数据验证
图8 所示是最小二乘法拟合氧含量和输出电压的曲线图。
操作时可选取10 个数据点,在最常用的Excel 中实现最小二乘曲线拟合。(x,y)是根据样气浓度选择的待测气体的测量点,x 为传感器输出电压值,y 为对应的样气中的氧含量值,n为拟合多项式的次数。其中x 和y 取值分别为表2 中的标准气值和传感器输出电压。从n=2 即二次多项式拟合开始,经过试验,当n=5 时,即拟合多项式的格式为:
设计以该5 次方程替代能斯特方程,能够精确地计算出氧气含量,精度满足仪器设计要求[3].Excel 最小二乘法实现氧含量与对应输出电压曲线拟合如图8 所示。图中曲线为输出电压的拟合曲线。拟合多项式系数和拟合精度评定如表1所列。
将拟合多项式系数a,b,c,d,e 通过仪表键盘输入到仪表系统中,当开启仪表“非线性校准”功能时,仪表将根据5 次方程将检测到的电压信号换算成浓度信号并显示在测量界面。将氧化锆传感器加热到700 ℃,控制标准气体流量280 ml/min,分别通入五组标准样气,测量结果如表2 所列。
由表2 可见,用最小二乘原理拟合曲线代替能斯特计算公式,仪器测量的氧含量整体误差小于0.5%,达到0.5 级表的要求。换几组气测试,测试结果也在误差范围内。其测试结果如表3 所列。
3 结 语
本文首先对上位机的信息管理的核心做了部分设计,包括了非线性验证和TCP/IP 通讯的实现;然后对基于SOPC 的在线分析仪器智能平台的数据处理做了验证,结果表明,本仪表能达到0.5 级表的要求。