【VB开源代码栏目提醒】:网学会员为广大网友收集整理了,酒精-水精馏分离计算机模拟计算系统 - 毕业设计,希望对大家有所帮助!
酒精—水精馏分离计算机 模拟计算系统 开发文档
版权所有(C)Perfect Studio 成员: 潘敏尧(生物工程 001) 陈 洵(生物工程 001)
指导老师:马四朋
老师食品与生物工程学院生物工程 2000 级
2003 年 5 月 23 日 目 录一、可行性分析…………………………………………………………………2二、设计说明……………………………………………………………………2三、窗体说明……………………………………………………………………2 主程序流程…………………………………………………………………3 算法一流程…………………………………………………………………3 算法二流程…………………………………………………………………4 差错程序……………………………………………………………………4四、使用说明……………………………………………………………………5 程序介绍……………………………………………………………………5 程序运行……………………………………………………………………6五、用户使用手册………………………………………………………………6 安装/卸载软件指南…………………………………………………………6 计算操作方法………………………………………………………………9 读取与保存…………………………………………………………………10六、系统测试……………………………………………………………………12七、可扩充性能…………………………………………………………………12八、开发感想……………………………………………………………………13九、附录:源
代码………………………………………………………………13一、
可行性分析: 随着化学工业的进步,机械化、只能化生产程度的提高,电脑计算、控制在化学工业生产过程中起着越来越重要的作用。
采用自动化控制有利于提高
生产效率,节约
劳动力,
保护工人的健康和安全。
精馏操作作为
常用的
化工分离手段,很适宜采
用电脑控制。
本软件主要
作用是利用计算机
高速的运算
解决精馏
过程中各参数的计算问题,并为精馏操作实现计算机控制做一个有益的探讨。
二、设计
说明: 辅助窗体一 6 9 7 8 1 3 5入口 窗体一 窗体二 窗体三 2 4 10 11 13 12 辅助窗体二 辅助窗体三各数字所
代表的含义: 操作 1:运行系统的
exe 文件。
操作 2:点击窗体一上的“计算…”按钮后在点激“显示结果”按钮。
〈 操作 3:点击窗体二上的“〈返回”按钮。
操作 4:点击窗体二上“理论塔板数”按钮。
〈 操作 5:点击窗体三上“ 〈返回”按钮。
操作 6:点击窗体一下拉菜单“文件”中的“保存”或“
记录”选项。
操作 7:点击辅助窗体一中的“保存”按钮。
操作 8:点击辅助窗体一中的“读取”按钮。
操作 9:点击窗体三中的“保存”按钮。
操作 10:点击窗体一下拉菜单“帮助”
中的“版本”选项。
操作 11:点击
辅助窗体二中的“关闭”按钮。
操作 12:点击窗体一下拉菜单“帮助”中的“关于”选项。
操作 13:点击辅助窗体三中的“关闭”按钮。
三、窗体说明:窗体一: 本窗体是本程序的主窗体,主要完成 F、D、W、Xf、Xd、Xw、R、Rmin、L、Vd 计算,接受 F、D、W、Xf、Xd、Xw、R、q 值的输入,按钮“计算”为主计算程序,其算法如下:主程序: 入 口 查错程序 出错 提 示 返回入口 数据无误 算法入口 1 算法入口 2 i2 i2.3 进入算法 1 进入算法 2 画图求 Nt 计算最小回流比 计算 L、V 程序出口
算法 1: 入口 1 查错程序 出错 提 示 返回入口 1 数据无误 缺 F、D 缺 F、W 缺 W、D 调用函数 1、2 调用函数 3、4 调用函数 5、6 算法 1 出口算法 2: 入口 2 查错程序 出错 提 示 返回入口 2 数据无误 缺F 缺W 缺D 调用函数 10 调用
函数 11 调用函数 12 判断 缺 Xf 缺 Xd 缺 Xw 调用函数 8 调用函数 8 调用函数 9 算法 2 出口查错流程: 返回主程序 入 口 判断条件为假 Fgt0Dgt0Wgt0 判断条件为假 FgtDFgtW
判断条件为假 Xwgt0 判断
条件为假 Xdlt1 判断条件为假 XdgtXfXfgtXw 条件为真 算法入口窗体二: 本窗体是显示窗体一的计算结果,采用标签
控件显示结果。
窗体三: 本窗体在窗体一计算的基础上通过画图计算理论踏板数和进料板位置,并可最终保存数据。
辅助窗体一: 保存/读取数据的工作窗体。
辅助窗体二: 版本介绍的窗体。
辅助窗体三:
工作组信息窗体。
四、使用说明程序
介绍 本程序为酒精—水精馏分离计算机模拟计算系统程序,可供学校教学使用,亦可在设计精流塔时
初步计算某些参数(进料量、产量、回流比及塔板数等)时使用。
然而本程序编写的主要
目的是为辅助实验操作及计算,更
适合学生使用。
本程序所能实现的功能有:通过物料衡算求进料流量 F、产品流量 D、斧残液流量 W、进料浓度 xf、
产品浓度 xd、斧残液浓度 xw、上升蒸汽流量 V 及回流液
流量 L;作图法求理论板层数 Nt 以及计算最小回流比 Rmin 等。
下面将简要介绍一下。
本程序通用性好,可实现给出 F、D、W、xf、xd、xw 中任两个的值就能求出其余四个的值。
而且本程序有一
特点:对数据输入进行了严格的监控,能查出输入有误或出错数据并向用户提示,方便用户使用。
同时也避免程序的错误运行。
关于理论板层数 Nt 的计算,本程序中采用的是作图法求解,所需参数均可在图上相应的位置找到,图形清晰准确,一目了然,方便用户读取计算结果。
它决定了精馏操作能顺利进行的下限。
最小回流比 Rmin 在
设计中是一个很重要的参数,
关于 Rmin 的计算,本程序运用公式: Rmin/(Rmin1)(xd-yq)/(xd-xq)或 Rmin(xd-yq)/(yq-xq)进行计算,其中由于乙醇—水的平衡关系为非正常曲线,所以(xq,yq)可能是提馏段操作线与平衡曲线的切点坐标,也可能是夹紧点(操作线与平衡线的交点)坐标,在本程序中均可得到
正确结果。
以上便是本程序功能的大体介绍,在
性能方面,本程序数据均为单精度浮点型,输入数据与输出数据可精确到小数点后 7 位。
由于考虑到作图时精度过高对
计算机的要求会很高,而且程序运行的速度也会大大减慢,
影响程序的
通用性及
实用性。
更重要的是精
度的提高对作图
效果及计算结果没多大作用,因此经过多次
试验,作图时精度为 1/10000,已可满足计算需要。
程序运行 本
程序采用的是多窗体显示,程序运行时有三个主要窗体,其一为“输入窗体” ,其上显示输入数据及程序
运行状态提示消息。
其二为“结果显示”窗体,将计算结果输出给用户。
最后是“图形显示”窗体,显示理论板层数图解法的过程及结果。
这一设计是为了用户能更清晰的得到所需结果,同时使程序更具
层次感。
“输入窗体”上有一数据输入区,其中的文本框为用户输入相应数据用。
在输入区右侧有一信息提示框显示运行
状态,及操作要点。
在其下有三个按钮,一为计算按钮,在数据输入完后,单击此按钮则可进行计算。
在计算完成后,信息提示框会显示“操作完成”的字样,便可进行下一步操作。
另一为“显示结果”按钮,在点击“计算”按钮后此按钮才被激活。
单击此按钮可切换到“结果
显示”窗体,查看结果。
剩
下的就是一个“退出”按钮,用 。
于退出程序。
在“输入窗体”的右上方还有两个下拉菜单——“文件”及“帮助”“文件” 、 、菜单中有“保存”“读取”“退出”及“单位”等选项,可执行相应操作。
在此说明在运行程序前必须在“文件”菜单的“单位”选项中选择输入数据的单位,可供选择的单位有“质 和 ,量单位” “摩尔单位” 选项前的“√” “质量单位” 表示该选项被选中。
就是流量以“Kg/h”表示、浓度用质量分率表示;“摩尔单位”即流量用“mol/h”表示、浓度以摩尔分率表示。
输入的数据必须与所选的单位一致,这是
运用本程序要注意的一个重要
的问题,否则会得到 “帮助”菜单中用户可获得
有关程序的某些
相关信息。
错误结果。
如上所述,当单击“输入窗体”的“显示结果”按钮后将会切换到“结果显示”窗体,与此同时“输入窗体”被隐藏。
在“结果显示”窗体上将输出所以数据,包括
用户输入的及计算结果。
注意在输出数据中均采用摩尔流量及摩尔分率。
一是 在此窗体上有两个按钮, “返回”按钮,用于返回前一窗体,重新输入、计算。
一是“显示图形”按钮,单击则可进入下一步
的作图与计算,同时进入第三个窗体“图形显示”窗体。
同样“结果显示”窗体被隐藏。
必须指出此处的“下一步计算”是指计算理论板层数 Nt,因为本程序在计算所以参数时,是两步的,即在第一步结果显示时可求得出 Nt 外的
所有参数,在显示
图形时才计算得 Nt。
进入“图形显示”窗体时,用户可见“平衡关系曲线图”
以及理论板作图求解的部分步骤。
在图上标出了相应的一些参数,方便用户
理解。
在图形下方有计算结果的输出和三个 “返回”“保存”和“退出”按钮。
按钮, 、 “返回”与前述相同,用于回到前一窗体。
单击“保存”按钮可将所有数据保存下来,此时会弹出一对话框,根据对话框选项
进行 Save 的操作, “退出”按钮用于结束程序运行,在此建议使用此按钮,注意保存
文件类型必须为.txt
文本。
不要
直接点击“图形显示”窗体的“关闭”按钮,否则会出现无法结束程序运行的
现象。
这也是本程序的缺点之一。
在此补充
几点,由于时间与精力
有限,本程序仅适
用于 0ltq(进热状况系数)lt1。
且由于
平衡曲线是根据回归方程: y/y1B3xz2expB1/z1-B2/z2/1-xz1 作出的,因此
存在一定误差,当 xdgt95是误差较大,但
作为一个参考数据,本程序
还是可用的。
其次,在保存后会自动生成一个.txt 文件。
用户可随时查看该文件获取数据及数据保存时间,但建议用户不要
改变该文件类型
及其内数据
格式,否则会导致读入时
发生错误。
本程序还有一缺点,就是读入时只能读取该 txt 文档的第一组数据,而数据存入是按
时间先后顺序排列的,因此每次只能读取同一 txt
文档中最早存入的数据。
为此
建议保存时使用不同
的文件名,将不同数据存入
不同的 txt
文档中,方便读取。
五、用户使用手册:1、安装/卸载软件
指南: ,
进入安装界面,如图所示: 双激安装程序(图中选定的图标)自动进入安装
界面:按“next”进入下一步:接受协议按“yes”进入下一步在 user name、company name、serial name 三项中随意输入(但必须三项都输入
内容才可以继续下面的安装
步骤),输入完之后按“next”选择
安装路径,按“next”选择安装
类型,由于本软件
比较简单,设定的三种安装类型结果都是一样的 继续按“next” 按“finish”完成安装。
至此,你已经把“酒精—水精馏分离计算机模拟计算
系统”
成功的安装到你的计算机上。
2、计算操作
方法: 安装完成后,双击运行程序,如下图示: 首先在菜单“文件”选项中
确定单位: : 在“数据输入区”输入数据,然后点击“计算” 计算完成后,便可按下“显示结果”按钮,将会弹出下一窗体读取计算结果: ,如上图箭头所示,便可得到下面所示窗体,可得到
理论板数: 此时单击“理论塔板数” 计算完成,可按下“返回”按钮返回前一级窗体重新计算,也可按“退出”结束程序。
单击“保存”可进行数据保存。
3、读取与保存 计算完成后,可在窗体上按“保存”键,则有如下箭头所示:亦可返回第一窗体,在该窗体的下拉菜单“文件”中找到 Save 选项:当选择“保存 S CtrlS”后,则可见下图示
对话框:保存完毕后会自动
生成下示文档:读取的操作是在第一个窗体的菜单选项中完成的:选择“读取 R”后便可进入下图示对话框: 选好需读入的文档后,点击“读取”按钮便可完成,此时便会得到所需数据: 至此保存与读取的操作也就完成了。
六、系统测试:本软件编写环境:Windows2000 Server Visual
Basic6.0测试平台:Windows
2000 Server Windows XP Profession 通过测试系统配置:CPU:c-4 1.7G 内存:256M DDR适用平台:
Window95/98 WindowMe Window2000 Window
XP NT4.0 该
软件为 1.00.00 beta 版,现测试出如下 bug: 1、在第三个窗体(即计算理论塔板数的窗体) ,假如切换桌面其他应用程序时,将会导致该窗体画图部分变为空白,
出现原因不明,疑为
vb 画图功能的 bug 所致。
建议用户在观看
第三个窗体时不要切换其他应用程序。
,会导致第三个窗体关闭,但 2、单击第三个窗体右上角“×”按钮(即关闭窗体按钮)实际上整个应用程序并未关闭,即程序模块仍驻留
内存。
建议不要使用该按钮关闭窗口。
请 如若配置
问题无法应用该软件或
发现程序的 bug, e-mail 联系:bergkemp821cn.com七、可扩充性能 由于时
间的仓促,本程序的设计到此为止。
现将其可
发展的功能简述一下,仅供参考。
首先,本程序的
适用范围,关于进料热
状况系数的
分析可以更全面。
可以考虑增加 qlt0及 qgt1 的情况。
其次,关于平衡曲线的绘制,可考虑增加利用平衡方程:yax/1a-1xa 为相对挥发度,进行绘图计算理论板层数和最小回流比的算法,使程序更丰富、更准确。
再次,可以考虑物系的选择,本程序紧能用于乙醇—水系统的精馏计算。
可考虑在此基础上改篇成适用于多种
物系的精馏操作计算,要求用户输入相应物系的
分子量及平衡方程便可实现该功能。
还有,可增加
实验的模拟操作(此处
需要计算机
编程专业知识),对模拟实验数据进行分析计算。
或者再
发挥想象力,将此程序与自动化控制相
联系应用于工业生产的
监控。
八、辛酸苦辣: 这个软件是我们第一次
独立开发软件,利用所学知识与计算机
知识结合起来的
一次有益
的实践
活动。
在
开始阶段,
我们首先熟悉精馏操作
的基本理论,利用物料恒算式写出各变量的求解公式。
然后利用软
件工程的理论,进行算法的设计和分析,运用了巧妙的方法完成数据的查错和计算工作,直到计算理论踏板数,程序精简明了。
但由于在软件
计划时期设想不充分,到后来有
希望加如更多的功能,
最后加入了
可以自由设定 q 值,可以使用不同的单位、可以读写数据等功能,导致最后
代码的复杂程度远远超出预料。
导致不少 bug 的出现,这点正犯了开发系统的大忌。
但通过这次
实践,即加深了对
课堂知识的
认识,又尝试了开发一个计算机软件的滋味,可以说是一次很有
意的尝试。
附录:源
代码标准
模块: End FunctionPublic stime As Variant nt As Integer Function funhga As Single As SinglePublic xxx As Single yyy As Single qx As Dim z1 As Single z2 As Single e As Single fSingle qy As Single hbx As Single qr As As SingleSingle qxx As Single qyy As Single z1 a 0.2163 1 - aPublic t
test As Integer ii As
Integer jlb As z2 1 - a 0.8158 a
Integer e 0.2163 / z1 - 0.8158 / z2Public i As Single change As Integer f 2.2076 a z2 Expe / 1 - a z1Public rec5 As Integer funhg f / 1 fPublic rm As Single l As Single v As Single End FunctionPublic w As Single d As Single f As Single Function funjlb As Single As Singlexw As Single xf As Single xd As Single r As funjl b r / r 1 xd / r 1Single End FunctionFunction fun1a As Single b As Single c As Function funtlc As Single As SingleSingle As Single funtl xw - qy c - qx / xw - qx qyfun1 a - b / b - c End FunctionEnd Function Function funqd As Single As SingleFunction fun2a As Single b As Single c As funq qr / qr - 1 d - xf / qr - 1Single d As Single e As Single End Functionfun2 a b - c d / e Function funjlye As Single As SingleEnd Function funjly r 1 e / r - xd / rFunction fun3a As Single b As Single End Functionfun3 a - b Function funchange1f As Single As Singlefunchange1 f / 46 / f / 46 1 - f / 18 w ValForm1.Text12.TextEnd Function xf ValForm1.Text20.TextFunction funchange2g As Single h As Single xd ValForm1.Text21.TextAs Single xw ValForm1.Text22.Textfunchange2 g / h 46 1 - h 18 r ValForm1.Text3.TextEnd Function qr ValForm1.Text4.TextPublic Sub check 1:Dim j End SubIf Form1.Text4.Text quotquot
Then Public Sub count1MsgBox quot.