APP下载

易溶盐成盐计算软件的研发

2014-11-05向新益马翔杨小宁

电子技术与软件工程 2014年18期

向新益 马翔 杨小宁

摘 要

离子成盐计算是新疆公路工程勘察盐渍土评价的重要内容。本文介绍了本软件的开发目标和意图、开发原则、开发依据、软件主要功能和功能实现方法,程序源代码采用Visual Basic 6.0编写编译完成,附上了全部源代码。

【关键词】盐渍土评价 离子成盐计算 Visual Basic源代码

1 系统开发目标和原则

1.1 软件开发目标

离子成盐计算是新疆公路工程勘察盐渍土评价的重要内容。随着社会经济的发展,公路工程勘察任务的繁重,手工计算已很难满足生产需要。离子成盐手工计算极其繁琐,它的基本步骤包括:依据规范规定的成盐顺序原则,写出化学反应方程式,将各种离子的摩尔浓度代入化学反应方程式进行成盐计算,逐项“吃完”离子含量。在计算过程中,判断、选择、衔接繁多,扩展计算路径繁杂,一个步奏搞错,将会导致进入错误的计算路径,造成后面的计算结果全是错误的。因此本软件的开发目标和意图是把离子成盐手工计算过程系统起来,把众多的判断、选择、衔接和扩展计算由计算机完成,在程序界面设计方面更友好,更便于操作,更简单实用,便于广大勘察人员学习和使用。

1.2 软件开发原则

离子成盐计算程序软件开发原则如下:(1)离子成盐计算程序软件是一个基于pc单机的应用软件,其运行环境为Windows 98~XP,采用窗体用户界面的操作方式。(2)为提高软件的开发速度,软件开发尽可能与成熟的应用软件进行衔接,如把Windows Excel 作为数据录入系统和编辑系统。(3)输出结果文件为Windows‘记事本TXT文本格式文件,便于与Windows Word和Windows Excel公共软件的连接使用。(4)离子成盐计算程序软件提供在机帮助。(5)程序源代码采用Visual Basic 6.0编写编译完成。

1.3 软件开发依据

《新疆公路盐渍土勘察规范》附录B 规定的“易溶盐成盐计算方法”:

一般可溶性盐类在水中都是呈离子状态存在,因此测得的易溶盐成分结果都是以离子含量表示。而且以离子的毫摩尔数(mmol/kg)表示各离子间的化合关系。路基土则以成盐存在于土中,为了工程勘察设计需要,据《新疆公路盐渍土勘察规范》,测得的离子含量应进行成盐计算。

试验测得的离子有Na+、Mg2+、Ca2+,阴离子Cl-、SO42-、CO32-、HCO3-、NO3-。各种离子的结合,一般是按上列顺序,依次达到满足。可溶盐中以钠盐活性最大,以钠离子结合原则为例,一般可分为三种情况:

(1)Na+< Cl-,首先全部Na+与 Cl-结合成NaCl ,不可能有其他钠盐,而多余的Cl-离子则依次与Mg2+、Ca2+结合。

(2)Cl-< Na+< Cl-+SO42-,首先全部Na+与 Cl-结合成NaCl,剩余的Na+与SO42-结合成Na2SO4。而多余的SO42-依次与Mg2+、Ca2+结合。

(3)Na+> Cl-+SO42-,而又有CO32-存在,Na+首先满足Cl-、SO42结合成NaCl、Na2SO4,多余的Na+与CO32-结合成Na2CO3。

单位换算(mg/kg→mmol/kg):利用离子的摩尔质量数进行单位换算,可在Excel 表中完成。

K++Na+:摩尔质量 25.0 g/mol ,K+:摩尔质量 39.1 g/mol,Na+:摩尔质量 22.99 g/mol,Mg2+:摩尔质量 24.30 g/mol ,Ca2+:摩尔质量40.08 g/mol,Cl-:摩尔质量35.45 g/mol,SO42-:摩尔质量96.06 g/mol,CO32-:摩尔质量30.0 g/mol,HCO3-:摩尔质量61.0 g/mol,NO3-:摩尔质量62.01 g/mol 。

例如: Na+(mmol/kg)= Na+(mg/kg)/22.99;Mg2+(mmol/kg)= Mg2+(mg/kg)/24.30;其它依次类推。

2 系统构成和主要功能

离子成盐计算软件是一个面向广大公路勘测单位的计算机软件。其主要特点是:操作简单,界面友好,便于学习使用。

根据离子成盐计算步骤和要求,整个系统共划分为以下几个功能模块;数据录入编辑、成盐计算、计算成果输出、帮助等功能。

(1)数据录入编辑模块:该模块的主要功能是把土样化学分析得到的离子的毫摩尔数(mmol/kg)录入计算机,把Windows Excel 作为数据录入系统和编辑系统。只需规定数据录入表头、格式、行数、数据的单位、保存格式。保存得到的数据文件作为后续成盐计算模块的数据源。

(2)成盐计算模块:首先要打开由Windows Excel生成得数据文件,调入土样化学分析得到的各种离子的毫摩尔数;然后要根据《新疆公路盐渍土勘察规范》附录B 规定的“易溶盐成盐计算方法”进行成盐计算;最后要输出计算结果。

(3)帮助模块:为了方便用户学习和使用该软件系统,在系统中开发了帮助功能。该帮助文档采用网页编辑器编写,文档中的关键词解释采用了超文本链接方式进行连接,最后经编译形成标准Microsoft HTML帮助文档。

在系统功能模块划分中,各模块是相对独立的,但在系统的程序实现中,各功能模块的击活是通过菜单的选择得以实现,各功能模块之间的数据传递采用同名异后缀的数据文件实现。

3 系统功能实现的基础

3.1 数据录入编辑模块

采用Windows Excel 作为数据录入系统和编辑系统。规定数据录入表头、格式、行数、数据的单位、保存格式如图1所示。

必须按此格式在Windows Office Excel 表格软件中录入数据,在第1行依次写入“试样编号、Na+、Ca2+、Mg2+、Cl-、SO42-、HCO3- 、CO32-、NO3-”,作为表头,每项占一小格,顺序不能错;在第2行至100行依次写入与表头相对应的离子摩尔浓度实验分析数据,单位:mmol/kg 。可以是大于等于1行,小于100行的任意行数据。如果化学分析结果中无硝酸根离子(NO3-)分析项目,在数据录入时也要在“NO3-”头下写入“0”,不能是空白。保存成(*.CSV)格式文件。endprint

3.2 成盐计算模块

首先要打开由Windows Excel生成得(*.CSV)格式数据文件,是一个对文件操作的编程,可利用Visual Basic 6.0提供的CommonDialog控件,给打开和保存文件提供标准对话框,并获取程序代码所需的文件名,再用Open语句打开文件,把“试样编号、、Na+、Ca2+、Mg2+、Cl-、SO42-、HCO3- 、CO32-、NO3-”数据文件表单原封不动的放入内存,以备后续程序调用计算。

成盐计算:试验测得的离子有Na+、Mg2+、Ca2+,阴离子Cl-、SO42-、CO32-、HCO3-、NO3-。各种离子的结合,一般是按上列顺序,依次达到满足。

输出计算结果:可利用Visual Basic 6.0提供的CommonDialog控件,给打开和保存文件提供标准对话框,并获取程序代码所需的文件名,再用writ语句写文件,格式为:

本程序使用Windows 记事本 (*.TXT)格式文件作为结果输出文件,文件格式如图2所示。

3.3 帮助模块

帮助文档采用网页编辑器编写,文档中的关键词解释采用了超文本链接方式进行连接,最后经编译形成标准Microsoft HTML帮助(chengyan.chm)文档,该文当可独立在windows下打开阅读。在程序代码中用ShellExecute(hwnd, "open", ss4, "", "", 8)语句打开阅读。

4 关于离子成盐计算程序软件

该应用程序主要功能是利用土化学分析出的易溶盐离子含量结果,依据《新疆公路盐渍土勘察规范》规定的成盐顺序原则,进行成盐计算。

运行环境:主机PentiumIII 500MHz以上,内存128MB,硬盘8GB。Windows98~XP操作系统。

软件安装系统由压缩包和安装运行软件(ChengYan.CAB,Setup.exe)组成,4.03MB。

版权所有 2007 保留所有权利

警告: 本计算机应用程序受著作权法、知识产权法和国际公约的保护。未经受权擅自复制传播者,将受到起诉和法律制裁。

5 软件安装

安装包由 ChengYan.CAB,Setup.exe,Setup.LST,安装说明文件组成。

安装时,双击setup.exe2--确定2--选择安装目录(如:d:\chengyan,如果该目录不存在,将自动创建该目录)2--开始安装2--安装完成.。

安装完成后 ,在“开始”→“所有程序”列表中可以找到ChengYan 程序。单击“ChengYan”就可启动“离子成盐计算程序软件”

注意:(1)安装时如遇冲突,选择忽略!通常发生在第二次安装前,没有彻底卸载第一次安装的组件。(2)本安装程序包未对 MSVBVM60.DLL 公共文件进行打包,如果你的计算机中没有此公共文件,安装时会出错。你可以到别的计算机中搜索(查找)MSVBVM60.DLL 公共文件,并把他复制到你的计算机中 C:\windows\system 目录下,再重新安装,就OK!了。(3)该软件的《用户手册》在你创建的安装目录下,安装完成后即可找到。

作者简介

向新益(1963-),男,四川省苍溪县人。大学本科学历。现为新疆水利水电勘测设计研究院高级工程师,研究方向为水文地质、工程地质。

作者单位

1.新疆水利水电勘测设计研究院 新疆维吾尔自治区乌鲁木齐市 830000

2.核工业西南勘察设计研究院 四川省成都市 610061endprint