低温甲醇洗系统模拟软件界面开发 低温甲醇洗系统模拟软件界面开发

低温甲醇洗系统模拟软件界面开发

  • 期刊名字:计算机与应用化学
  • 文件大小:
  • 论文作者:陈晓峰,张述伟,曲平
  • 作者单位:大连理工大学化工工艺系
  • 更新时间:2020-03-24
  • 下载次数:
论文简介

第21卷第4期计算机与应用化学Vol. 21, No 42004年7月28日Computers and Applied ChemistryJuly 2004低温甲醇洗系统模拟软件界面开发陈晓峰,张述伟,曲平大连理工大学化工工艺系,辽宁,大连,116012)摘要:结合低温甲醇洗模拟系统(RS〕旳功能用 Visual FORTRAN成功开发了低温甲醇洗模拟系统软件的界面。针对原RⅣS模拟系统中存在操作不方便专业性强不容易理解而且模拟计算过程复杂等问题对其进行改进本软件新増了数据査错、结果文件打印预览和流股断裂等功能软件稳定运行在 Windows系统下并对低温甲醇洗进行模拟分析关键词: Visual FORTRAN;低温甲醇洗工艺;模拟;界面中图分类号:TQO18文献标识码:A文章编号:10014160(2004)4547551Interface designing of rectisol process simulatorCHEN XiaoFeng, ZHANG ShuWei and QU PingDepartment of Chemical Engineering Dalian University of Technology Dalian, 116012, Liaoning, ChinaAbstract: Novel simulation interfaces of RPS were developed with Visual FORTRAN language to improve some shortcoming of RPSsuch as inconvenient operations strong specialties, difficult comprehends, complicated algorithms in calculation process and so onThe software has a perfect wrong-checking function enhances functions of previewing and printing of the calculation results and adds anew algorithm of finding an optimal set of tear streams. The software can run stably based on windows system and simulate RectisolKey words: Visual FORTRAN, rectisol process simulation interfaceChen XF, Zhang SW and Qu P. Interface designing of rectisol process simulator. Computers and Applied Chemis-try,2004,21(4)547-5511前言单元设备的模拟。系统提供通用的输入输岀模块,并采用菜单驱动方式,为用户提供了人机界面但是低温甲醇洗净化法是一种原料气净化法通过如数据文件编辑部分结果文件浏览程序执行等系此方法以制取合成氨使用的高纯度氢。大连理工大学化工学院从1983年开始就从事低温甲醇洗裝统功能部分不但麻烦而且容易岀错不十分了解这个系统的人很难操纵系统。所以改造该系统的部分置模拟分析优化研究工作于1993年成功地开发了功能就显得很重要。〃低温甲醇洗装置模拟系统(RPS: Rectisol processRPS软件原是在DOS系统下开发的程序,在Simulator",以后又对此软件不断完善,形成了Windows系统下操作存在诸多不便本文拟将其改〃RPS95版”和RPS'96版”。软件中热力学模型造为 Windows下运行。在许多文献中都是使用Ⅴi采用马丁-候状态方程和L-K状态方程相结合, I Basic开发DOs程序的 Windows用户界面231,部分气液平衡数据采用浙江大学提供的实验数据为了避免DOS应用程序在 Windows下运行时出下通过回归求得二元交互作用参数。用此软件先后对的黑屏现象在接口连接的时候需要根据不同的子多套低温甲醇洗装置进行模拟分析提出了一系列程序生成相应的DL文件由于RPS中需要的子程改进操作和对装置进行改造的建议被厂家采用后,序很多而且有些还互相嵌套在接口连接的时候与取得较满意结果。操作系统的兼容型不是很好经常岀现内存不可读RPS的开发旨在为工程师提供一个能进行低温或写之类的错误提示。而Ⅴ isual FOrtraN兼容甲醇洗工艺流程模拟计算的有力工具山。RPS模拟 FORTRAN语言,并提供了 Windows风格的界面设系统既可以进行甲醇洗全流程模拟也可以进行有关计所以本文采用Ⅴ isual FOrtraN来开发RPS的收稿日期:2003-1101;修回日期:20040225计算机与应用化学200421(4)界面,一些 Visual FOrtran不易实现的功能如磁盘路径查找和批处理文生成和文件打印等则用模拟系统主界面Ⅴ isual basic来实现本文将RPS系统的部分功能进行改造使其在Windows下运行这样一来RS系统的可视化程度流股断裂文件生成界面结果预览及打印就大大加强看起来就更直观。另外通过本文的设模拟计算界面帮计RPS系统的功能有很大程度上的加强像文件生成、模拟计算等功能。此外在RPS系统原有功能及基础上新增加了一些功能,如文件输入差错功图1程序结构图能、结果文件浏览及打印功能和流股断裂功能。使Fig 1 Structure of program用本系统脱离了DOS下操作。并且大量运用了界单有相应的ID号然后需要在窗体主程序Main面设计把实现功能的代码隐藏在界面的背后用户WndPrd)中写上具有相应I菜单点击时所需调无需面对程序的本身即可在可视化界面上完成各用对话框的函数在相应的对话框中添加所需要的项功能控件和相应的子程序。甲PA君2Ⅴ isual fortran简介DigitaⅤ isual Fortran是 Compac公司下属的DEC公司推出的功能强大的 FORTRAN开发工具。Visual FORtRaN基于 Microsoft公司的 DeveloperStudio集成开发环境因此除了具有 FORTRAN语言擅长科学计算的优势以外还可以像Ⅴ isual c++甚至 Visual basic一样轻松开发出基于 Windows的应用程序。 Visual Fortran不仅继承了传统FOR图2低温甲醇洗系统主界面TRAN程序的高效专业的科学计算能力支持最新Fig 2 Main interface of RPS的 FORTRAN语言标准,还改变了传统的科学计算部分代码如下程序漆黑单调的DOS界面代之以具有友好美观的integer function Main WndProc hWnd,mesgWindows风格的用户界面这无疑为科学计算程序 wParam, Param)的用户提供了极大的方便为科学计算程序本身的use user32!调入Ⅴ isual fortran函数模块传播提供了条件。同时因为使用的是相同的开发平台, Visual fortran可以实现和 Visual c++的Integer*4mesg!相关变量说明无缝连接,极大地扩展了Ⅴ isual fortran的功能和使用范围。对于熟悉 Visual c++和Ⅴ isual basicselect case(mesg)!菜单选择等 Developer Studio平台上的开发工具的用户可以很容易地掌握Ⅴ isual fortrancas( ID MENUITEMT1)!选择具有相应I的菜单3RPS界面的开发和新增功能call dodialogti()!调用相应对话框的3.1界面开发函数RPS界面设计的总体功能如图1所示Main wndProc=0!返回值在初始建立项目时选择 Fortran WindowsreturnApplication项目文件41在接下来选择 A simple Sin-gle Document Interface(SDI),个单一主窗体的界end se面就形成了并且其中的主窗体的生成函数已经给nd200421(4)陈晓峰等牴温甲醇洗系统模拟软件界面开发549RPS中相应的模拟计算子程序这部分接口哑元的 iK exists1)then连接是通过调用已生成文件中的数据来传递。所以J= DELFILESQQ text)!删除相应文件变量的数据类型、位置和个数要保持和原RPS子程 end if序中变量一致才能不影响模拟计算结果。这部分ⅸⅩⅠ.eq.'SPLI")!判断是哪个子函数程序的部分代码如下s4)thesubroutine EXECBat( Dlg control_namerelog= Message boxt(Null,输入的分割器据文callbacktype)!执行批处理件不存在!,错′MBOK)use dFlogm!调入Ⅴ isual fortran函数模块nd ifoper(1File=Y(I) status=' unknown')!打开文character text*10, textI*7,text*9,text3*8,件读入数据tex4*8,text5*8!相关变量说明REAL*8read1,(A)’) UnitNoAMH AMC ALPHA TC2 TCI THI TH2ead 1, *)Noselect cas( control_name)!选择相应的子函数read 1 (A )' infsncase( IDEXECread( 1,(a )) outnl!设置和判断相应的批处理文件read( 1 (A))outn2retlog= DIgset( Dlg IDC_LISTI 200, DLG_NU-read 1, *)selectorMITEMSs)valuerelog= Dlgget( dIg DC_ eDitI textclos(1)!关闭文件INQUIRE( FILE text, EXIST existscall SPLIT( UnitNo, No infsn outn1 outn2,selectorvalue)!调用原RPS中的子程序etrog= Message box(Nul批处理文件不能为空, end if重新输入!,错误!MB_OK)returnelse if(. not exists )thenI=I+1relog= Message box(Null’该批处理文件不存END DO在!,错误!MB_OK)clos(2)!关闭文件returnend selectend if!批处理执行结束后弹出对话框提示I=1relog= Message boxt(Nll批处理执行完毕请open(2Hle= text status=' unknown')!查看结果!,执行完毕'MB_OK)打开批处理文件读入相应数据end subroutineDO WHILE(.NOT.EOF2))!判断文件是否另外新增的结果文件预览打印功能和批处理生结束成功能采用 Visual basicl3实现,由 Visual forREAD(2,*)X(I),Y(1)TRAN生成的菜单来调用。textI=eps cog3.2流股断裂功能的实现text2=′ UNITT.MAX在化工过程模拟计算过程中都需将工艺流程text3 =epsl. cog图转变为信息流程图。在工艺流程图中,节点为机text5=′FLOW.MAX械或设备流线表示物料的流向在信息流程图中INQUIRE(FILE= textI, EXIST= exists 1)!节点为子程序或方程式流线表示信息的传递方向。判断收敛文件是否存在对于存在大量节点的信息网络图即使每个节点只INQUIRE( FILE text2, EXIST= exists2用了一个方程表达,描述它也需成干上万个方程。INQUIRE( FILE text3, EXIST exists)工程上通常采用序贯模块法进行模拟计算,它要求550计算机与应用化学20042(4)何一条返回流股所包含的全部变量赋以初值用它信们进行迭代计算使网络变成树形图对于树形图很容易决定计算次序。输入节点数N流股断裂是新增的功能。文中对周理61等人输入数据文件名提出的寻找最优断开流股集方法进行改进和补充,输出信果文件名:得到了一种新的网络分解方法。这种新方法逻辑简单无需识别回路也不需要进行复杂的矩阵运算只须将网络中的节点权重按递降次序排列然后以使逆流股的权和减小为原则调整节点在序列中的位置。调整后保留的逆流股便构成一组断开流股集图4流股断裂界面此时的节点序列便是最优计算次序。通过十几个经Fig. 4 Interface of tear streams典网络的分解表明这种新的分解方法简单快速且结果均是被以前的文献证明的最优解。select case( control name)!判断点击哪个按钮这部分的实现分成两个子菜单,一个用于流股case IdChecK)节点信息录入另一个用于对输入流股节点的断裂。其中流股节点信息录入对话框界面中需要输入流relog Dlgget( DIg IDC_EDITI text1股的节点总数、是否是有权图、需要生成的数据文件relog=DlgGet( DIg IDC_EDIT2 text2名和邻接矩阵文件名在接下来的对话框中输入每relog=DIgGet( Dlg I DC_EDIT3 text3)个节点的详细信息,INQUIRE C FILE text2, EXIST exists!判断数据输入是否完整中节点if(( textI. eq. "). OR.( text2. eq " ).OR.( text3这个节点eq. ))then节有选票relog= Message Box(Nll’数据输入不全’错输到达节计解该用的误′AMB_OK)!弹出提示对话框流股使用的致德turn触文件书Felse if(. NOT exists )then件省Felg= Message boxt(Null'数据文件不存在请重新输入′,错误′AMB_0K)图3节点信息输入界面relog= DIgset( dlg IDC_edit2;)!设置为空Fig. 3 Interface of inputting node information所有节点信息输入完毕后点击流股断裂子菜le单可断裂已生成在的数据文件的流股并把结果输rlog= DIgget(Dlg, DC EDITI text)!获取数出到文件中。可以在菜单中选择打印和游览生成的据数据文件、矩阵文件和断裂结果文件。ead text, *)n部分断裂程序如下relog= DIgGet( Dlg IDC_EDIT2 textsubroutine DATACHECK( Dlg, control_name, read text, *)namelIgGet( dlg IDC_edit extuse dflogm!调入Ⅴ isual fortran函数模块read text,*)outputcall netsplit( namel ,n output)!调用流股断裂子程序Integer n!相关变量说明CALL DIgeXit( dIgcharacte( 10)text dextl text2 text3 text4′请输A节占200421(4)陈晓峰等牴温甲醇洗系统模拟软件界面开发551end selectBasic. Computer System Applycation, 1997. (2 )52-53end subroutine3 Wei Xuanping. A simulating program and application developedfortran powerstation platform. Software Reliability and Evaluating结语Technology, 2002, (2 )52-55针对R閃S模拟系统使用中的问题本界面系统Deng Weiwei and Wang Yuenan. Visual FORTRAN Programmed的开发实际上是对RPS系统部分功能的改进,将5 Bob Roseman and richard peTutorial of VB6, Beiiing tsDOS下的RS系统变成了 Windows下的模拟系统,使RPS模拟系统可视化更加直观更方便用户的University Press, 20016 Zhou Li. New algorithm of finding an optimal set of tear stream使用。对周理等人提出的寻找最优断开流股集方法Journal of Chemical Industry and Engineering, 1985, (3) 312进行改进和补充得到了一种新的网络分解方法利用这种网络分解方法把流股断裂功能加入到RPS附中文参考文献模拟系统中。系统建立的文件输入界面只需对号1张述伟,陆明亮,徐志武.低温甲醇洗模拟系统模拟与分析.化入座按中文提示输入数据文件生成十分方便。数肥设计,1994,32(1)25-31据修改功能十分强大它使数据直接回到界面上方2冯惠军.用 Visual B开发DOs程序的 Wind用户界面.计便数据的修改。系统査错功能比较完善基本能应算机系统应用,1997,(2)52-53付初学者使用本系统时的各种误操作。模拟计算部3魏选平,卞树檀.一种基于 Fortran powerStation平台开发的仿真分中的批处理文件编制部分和模拟计算部分完全脱程序及其应用.软件可靠性与评测技术,2002,(2)52-55离了DOS环境真正做到可视化。系统还增加了结4邓巍巍,王越男. Visual FoκTRAN编程指南.北京民邮电岀果文件预览打印功能使本系统的功能更加完善。版社,2000References5 Bob Rosenman and Richard Peasley.VB6使用教程.北京清华大I Zhang Shuwei, Lu Mingliang and Xu Zhiwu. Rectisol process simula6周理.过程模拟信息网络的新分解方法.化工学报,1985,(3):tor and analysis. Chemical Fertilizer Design, 1994 32( 1 )25-31312-3212 Feng Huijun. Interface designing of the dos program using Visual

论文截图
版权:如无特殊注明,文章转载自网络,侵权请联系cnmhg168#163.com删除!文件均为网友上传,仅供研究和学习使用,务必24小时内删除。