低溫甲醇洗系統(tǒng)模擬軟件界面開(kāi)發(fā)
- 期刊名字:計(jì)算機(jī)與應(yīng)用化學(xué)
- 文件大?。?/li>
- 論文作者:陳曉峰,張述偉,曲平
- 作者單位:大連理工大學(xué)化工工藝系
- 更新時(shí)間:2020-03-24
- 下載次數(shù):次
第21卷第4期計(jì)算機(jī)與應(yīng)用化學(xué)Vol. 21, No 42004年7月28日Computers and Applied ChemistryJuly 2004低溫甲醇洗系統(tǒng)模擬軟件界面開(kāi)發(fā)陳曉峰,張述偉,曲平大連理工大學(xué)化工工藝系,遼寧,大連,116012)摘要:結(jié)合低溫甲醇洗模擬系統(tǒng)(RS〕旳功能用 Visual FORTRAN成功開(kāi)發(fā)了低溫甲醇洗模擬系統(tǒng)軟件的界面。針對(duì)原RⅣS模擬系統(tǒng)中存在操作不方便專(zhuān)業(yè)性強(qiáng)不容易理解而且模擬計(jì)算過(guò)程復(fù)雜等問(wèn)題對(duì)其進(jìn)行改進(jìn)本軟件新増了數(shù)據(jù)査錯(cuò)、結(jié)果文件打印預(yù)覽和流股斷裂等功能軟件穩(wěn)定運(yùn)行在 Windows系統(tǒng)下并對(duì)低溫甲醇洗進(jìn)行模擬分析關(guān)鍵詞: Visual FORTRAN;低溫甲醇洗工藝;模擬;界面中圖分類(lèi)號(hào):TQO18文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):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前言單元設(shè)備的模擬。系統(tǒng)提供通用的輸入輸岀模塊,并采用菜單驅(qū)動(dòng)方式,為用戶(hù)提供了人機(jī)界面但是低溫甲醇洗凈化法是一種原料氣凈化法通過(guò)如數(shù)據(jù)文件編輯部分結(jié)果文件瀏覽程序執(zhí)行等系此方法以制取合成氨使用的高純度氫。大連理工大學(xué)化工學(xué)院從1983年開(kāi)始就從事低溫甲醇洗裝統(tǒng)功能部分不但麻煩而且容易岀錯(cuò)不十分了解這個(gè)系統(tǒng)的人很難操縱系統(tǒng)。所以改造該系統(tǒng)的部分置模擬分析優(yōu)化研究工作于1993年成功地開(kāi)發(fā)了功能就顯得很重要?!ǖ蜏丶状枷囱b置模擬系統(tǒng)(RPS: Rectisol processRPS軟件原是在DOS系統(tǒng)下開(kāi)發(fā)的程序,在Simulator",以后又對(duì)此軟件不斷完善,形成了Windows系統(tǒng)下操作存在諸多不便本文擬將其改〃RPS95版”和RPS'96版”。軟件中熱力學(xué)模型造為 Windows下運(yùn)行。在許多文獻(xiàn)中都是使用Ⅴi采用馬丁-候狀態(tài)方程和L-K狀態(tài)方程相結(jié)合, I Basic開(kāi)發(fā)DOs程序的 Windows用戶(hù)界面231,部分氣液平衡數(shù)據(jù)采用浙江大學(xué)提供的實(shí)驗(yàn)數(shù)據(jù)為了避免DOS應(yīng)用程序在 Windows下運(yùn)行時(shí)出下通過(guò)回歸求得二元交互作用參數(shù)。用此軟件先后對(duì)的黑屏現(xiàn)象在接口連接的時(shí)候需要根據(jù)不同的子多套低溫甲醇洗裝置進(jìn)行模擬分析提出了一系列程序生成相應(yīng)的DL文件由于RPS中需要的子程改進(jìn)操作和對(duì)裝置進(jìn)行改造的建議被廠(chǎng)家采用后,序很多而且有些還互相嵌套在接口連接的時(shí)候與取得較滿(mǎn)意結(jié)果。操作系統(tǒng)的兼容型不是很好經(jīng)常岀現(xiàn)內(nèi)存不可讀RPS的開(kāi)發(fā)旨在為工程師提供一個(gè)能進(jìn)行低溫或?qū)懼?lèi)的錯(cuò)誤提示。而Ⅴ isual FOrtraN兼容甲醇洗工藝流程模擬計(jì)算的有力工具山。RPS模擬 FORTRAN語(yǔ)言,并提供了 Windows風(fēng)格的界面設(shè)系統(tǒng)既可以進(jìn)行甲醇洗全流程模擬也可以進(jìn)行有關(guān)計(jì)所以本文采用Ⅴ isual FOrtraN來(lái)開(kāi)發(fā)RPS的收稿日期:2003-1101;修回日期:20040225計(jì)算機(jī)與應(yīng)用化學(xué)200421(4)界面,一些 Visual FOrtran不易實(shí)現(xiàn)的功能如磁盤(pán)路徑查找和批處理文生成和文件打印等則用模擬系統(tǒng)主界面Ⅴ isual basic來(lái)實(shí)現(xiàn)本文將RPS系統(tǒng)的部分功能進(jìn)行改造使其在Windows下運(yùn)行這樣一來(lái)RS系統(tǒng)的可視化程度流股斷裂文件生成界面結(jié)果預(yù)覽及打印就大大加強(qiáng)看起來(lái)就更直觀(guān)。另外通過(guò)本文的設(shè)模擬計(jì)算界面幫計(jì)RPS系統(tǒng)的功能有很大程度上的加強(qiáng)像文件生成、模擬計(jì)算等功能。此外在RPS系統(tǒng)原有功能及基礎(chǔ)上新增加了一些功能,如文件輸入差錯(cuò)功圖1程序結(jié)構(gòu)圖能、結(jié)果文件瀏覽及打印功能和流股斷裂功能。使Fig 1 Structure of program用本系統(tǒng)脫離了DOS下操作。并且大量運(yùn)用了界單有相應(yīng)的ID號(hào)然后需要在窗體主程序Main面設(shè)計(jì)把實(shí)現(xiàn)功能的代碼隱藏在界面的背后用戶(hù)WndPrd)中寫(xiě)上具有相應(yīng)I菜單點(diǎn)擊時(shí)所需調(diào)無(wú)需面對(duì)程序的本身即可在可視化界面上完成各用對(duì)話(huà)框的函數(shù)在相應(yīng)的對(duì)話(huà)框中添加所需要的項(xiàng)功能控件和相應(yīng)的子程序。甲PA君2Ⅴ isual fortran簡(jiǎn)介DigitaⅤ isual Fortran是 Compac公司下屬的DEC公司推出的功能強(qiáng)大的 FORTRAN開(kāi)發(fā)工具。Visual FORtRaN基于 Microsoft公司的 DeveloperStudio集成開(kāi)發(fā)環(huán)境因此除了具有 FORTRAN語(yǔ)言擅長(zhǎng)科學(xué)計(jì)算的優(yōu)勢(shì)以外還可以像Ⅴ isual c++甚至 Visual basic一樣輕松開(kāi)發(fā)出基于 Windows的應(yīng)用程序。 Visual Fortran不僅繼承了傳統(tǒng)FOR圖2低溫甲醇洗系統(tǒng)主界面TRAN程序的高效專(zhuān)業(yè)的科學(xué)計(jì)算能力支持最新Fig 2 Main interface of RPS的 FORTRAN語(yǔ)言標(biāo)準(zhǔn),還改變了傳統(tǒng)的科學(xué)計(jì)算部分代碼如下程序漆黑單調(diào)的DOS界面代之以具有友好美觀(guān)的integer function Main WndProc hWnd,mesgWindows風(fēng)格的用戶(hù)界面這無(wú)疑為科學(xué)計(jì)算程序 wParam, Param)的用戶(hù)提供了極大的方便為科學(xué)計(jì)算程序本身的use user32!調(diào)入Ⅴ isual fortran函數(shù)模塊傳播提供了條件。同時(shí)因?yàn)槭褂玫氖窍嗤拈_(kāi)發(fā)平臺(tái), Visual fortran可以實(shí)現(xiàn)和 Visual c++的Integer*4mesg!相關(guān)變量說(shuō)明無(wú)縫連接,極大地?cái)U(kuò)展了Ⅴ isual fortran的功能和使用范圍。對(duì)于熟悉 Visual c++和Ⅴ isual basicselect case(mesg)!菜單選擇等 Developer Studio平臺(tái)上的開(kāi)發(fā)工具的用戶(hù)可以很容易地掌握Ⅴ isual fortrancas( ID MENUITEMT1)!選擇具有相應(yīng)I的菜單3RPS界面的開(kāi)發(fā)和新增功能call dodialogti()!調(diào)用相應(yīng)對(duì)話(huà)框的3.1界面開(kāi)發(fā)函數(shù)RPS界面設(shè)計(jì)的總體功能如圖1所示Main wndProc=0!返回值在初始建立項(xiàng)目時(shí)選擇 Fortran WindowsreturnApplication項(xiàng)目文件41在接下來(lái)選擇 A simple Sin-gle Document Interface(SDI),個(gè)單一主窗體的界end se面就形成了并且其中的主窗體的生成函數(shù)已經(jīng)給nd200421(4)陳曉峰等牴溫甲醇洗系統(tǒng)模擬軟件界面開(kāi)發(fā)549RPS中相應(yīng)的模擬計(jì)算子程序這部分接口啞元的 iK exists1)then連接是通過(guò)調(diào)用已生成文件中的數(shù)據(jù)來(lái)傳遞。所以J= DELFILESQQ text)!刪除相應(yīng)文件變量的數(shù)據(jù)類(lèi)型、位置和個(gè)數(shù)要保持和原RPS子程 end if序中變量一致才能不影響模擬計(jì)算結(jié)果。這部分ⅸⅩⅠ.eq.'SPLI")!判斷是哪個(gè)子函數(shù)程序的部分代碼如下s4)thesubroutine EXECBat( Dlg control_namerelog= Message boxt(Null,輸入的分割器據(jù)文callbacktype)!執(zhí)行批處理件不存在!,錯(cuò)′MBOK)use dFlogm!調(diào)入Ⅴ isual fortran函數(shù)模塊nd ifoper(1File=Y(I) status=' unknown')!打開(kāi)文character text*10, textI*7,text*9,text3*8,件讀入數(shù)據(jù)tex4*8,text5*8!相關(guān)變量說(shuō)明REAL*8read1,(A)’) UnitNoAMH AMC ALPHA TC2 TCI THI TH2ead 1, *)Noselect cas( control_name)!選擇相應(yīng)的子函數(shù)read 1 (A )' infsncase( IDEXECread( 1,(a )) outnl!設(shè)置和判斷相應(yīng)的批處理文件read( 1 (A))outn2retlog= DIgset( Dlg IDC_LISTI 200, DLG_NU-read 1, *)selectorMITEMSs)valuerelog= Dlgget( dIg DC_ eDitI textclos(1)!關(guān)閉文件INQUIRE( FILE text, EXIST existscall SPLIT( UnitNo, No infsn outn1 outn2,selectorvalue)!調(diào)用原RPS中的子程序etrog= Message box(Nul批處理文件不能為空, end if重新輸入!,錯(cuò)誤!MB_OK)returnelse if(. not exists )thenI=I+1relog= Message box(Null’該批處理文件不存END DO在!,錯(cuò)誤!MB_OK)clos(2)!關(guān)閉文件returnend selectend if!批處理執(zhí)行結(jié)束后彈出對(duì)話(huà)框提示I=1relog= Message boxt(Nll批處理執(zhí)行完畢請(qǐng)open(2Hle= text status=' unknown')!查看結(jié)果!,執(zhí)行完畢'MB_OK)打開(kāi)批處理文件讀入相應(yīng)數(shù)據(jù)end subroutineDO WHILE(.NOT.EOF2))!判斷文件是否另外新增的結(jié)果文件預(yù)覽打印功能和批處理生結(jié)束成功能采用 Visual basicl3實(shí)現(xiàn),由 Visual forREAD(2,*)X(I),Y(1)TRAN生成的菜單來(lái)調(diào)用。textI=eps cog3.2流股斷裂功能的實(shí)現(xiàn)text2=′ UNITT.MAX在化工過(guò)程模擬計(jì)算過(guò)程中都需將工藝流程text3 =epsl. cog圖轉(zhuǎn)變?yōu)樾畔⒘鞒虉D。在工藝流程圖中,節(jié)點(diǎn)為機(jī)text5=′FLOW.MAX械或設(shè)備流線(xiàn)表示物料的流向在信息流程圖中INQUIRE(FILE= textI, EXIST= exists 1)!節(jié)點(diǎn)為子程序或方程式流線(xiàn)表示信息的傳遞方向。判斷收斂文件是否存在對(duì)于存在大量節(jié)點(diǎn)的信息網(wǎng)絡(luò)圖即使每個(gè)節(jié)點(diǎn)只INQUIRE( FILE text2, EXIST= exists2用了一個(gè)方程表達(dá),描述它也需成干上萬(wàn)個(gè)方程。INQUIRE( FILE text3, EXIST exists)工程上通常采用序貫?zāi)K法進(jìn)行模擬計(jì)算,它要求550計(jì)算機(jī)與應(yīng)用化學(xué)20042(4)何一條返回流股所包含的全部變量賦以初值用它信們進(jìn)行迭代計(jì)算使網(wǎng)絡(luò)變成樹(shù)形圖對(duì)于樹(shù)形圖很容易決定計(jì)算次序。輸入節(jié)點(diǎn)數(shù)N流股斷裂是新增的功能。文中對(duì)周理61等人輸入數(shù)據(jù)文件名提出的尋找最優(yōu)斷開(kāi)流股集方法進(jìn)行改進(jìn)和補(bǔ)充,輸出信果文件名:得到了一種新的網(wǎng)絡(luò)分解方法。這種新方法邏輯簡(jiǎn)單無(wú)需識(shí)別回路也不需要進(jìn)行復(fù)雜的矩陣運(yùn)算只須將網(wǎng)絡(luò)中的節(jié)點(diǎn)權(quán)重按遞降次序排列然后以使逆流股的權(quán)和減小為原則調(diào)整節(jié)點(diǎn)在序列中的位置。調(diào)整后保留的逆流股便構(gòu)成一組斷開(kāi)流股集圖4流股斷裂界面此時(shí)的節(jié)點(diǎn)序列便是最優(yōu)計(jì)算次序。通過(guò)十幾個(gè)經(jīng)Fig. 4 Interface of tear streams典網(wǎng)絡(luò)的分解表明這種新的分解方法簡(jiǎn)單快速且結(jié)果均是被以前的文獻(xiàn)證明的最優(yōu)解。select case( control name)!判斷點(diǎn)擊哪個(gè)按鈕這部分的實(shí)現(xiàn)分成兩個(gè)子菜單,一個(gè)用于流股case IdChecK)節(jié)點(diǎn)信息錄入另一個(gè)用于對(duì)輸入流股節(jié)點(diǎn)的斷裂。其中流股節(jié)點(diǎn)信息錄入對(duì)話(huà)框界面中需要輸入流relog Dlgget( DIg IDC_EDITI text1股的節(jié)點(diǎn)總數(shù)、是否是有權(quán)圖、需要生成的數(shù)據(jù)文件relog=DlgGet( DIg IDC_EDIT2 text2名和鄰接矩陣文件名在接下來(lái)的對(duì)話(huà)框中輸入每relog=DIgGet( Dlg I DC_EDIT3 text3)個(gè)節(jié)點(diǎn)的詳細(xì)信息,INQUIRE C FILE text2, EXIST exists!判斷數(shù)據(jù)輸入是否完整中節(jié)點(diǎn)if(( textI. eq. "). OR.( text2. eq " ).OR.( text3這個(gè)節(jié)點(diǎn)eq. ))then節(jié)有選票relog= Message Box(Nll’數(shù)據(jù)輸入不全’錯(cuò)輸?shù)竭_(dá)節(jié)計(jì)解該用的誤′AMB_OK)!彈出提示對(duì)話(huà)框流股使用的致德turn觸文件書(shū)Felse if(. NOT exists )then件省Felg= Message boxt(Null'數(shù)據(jù)文件不存在請(qǐng)重新輸入′,錯(cuò)誤′AMB_0K)圖3節(jié)點(diǎn)信息輸入界面relog= DIgset( dlg IDC_edit2;)!設(shè)置為空Fig. 3 Interface of inputting node information所有節(jié)點(diǎn)信息輸入完畢后點(diǎn)擊流股斷裂子菜le單可斷裂已生成在的數(shù)據(jù)文件的流股并把結(jié)果輸rlog= DIgget(Dlg, DC EDITI text)!獲取數(shù)出到文件中??梢栽诓藛沃羞x擇打印和游覽生成的據(jù)數(shù)據(jù)文件、矩陣文件和斷裂結(jié)果文件。ead text, *)n部分?jǐn)嗔殉绦蛉缦聄elog= DIgGet( Dlg IDC_EDIT2 textsubroutine DATACHECK( Dlg, control_name, read text, *)namelIgGet( dlg IDC_edit extuse dflogm!調(diào)入Ⅴ isual fortran函數(shù)模塊read text,*)outputcall netsplit( namel ,n output)!調(diào)用流股斷裂子程序Integer n!相關(guān)變量說(shuō)明CALL DIgeXit( dIgcharacte( 10)text dextl text2 text3 text4′請(qǐng)輸A節(jié)占200421(4)陳曉峰等牴溫甲醇洗系統(tǒng)模擬軟件界面開(kāi)發(fā)551end selectBasic. Computer System Applycation, 1997. (2 )52-53end subroutine3 Wei Xuanping. A simulating program and application developedfortran powerstation platform. Software Reliability and Evaluating結(jié)語(yǔ)Technology, 2002, (2 )52-55針對(duì)R閃S模擬系統(tǒng)使用中的問(wèn)題本界面系統(tǒng)Deng Weiwei and Wang Yuenan. Visual FORTRAN Programmed的開(kāi)發(fā)實(shí)際上是對(duì)RPS系統(tǒng)部分功能的改進(jìn),將5 Bob Roseman and richard peTutorial of VB6, Beiiing tsDOS下的RS系統(tǒng)變成了 Windows下的模擬系統(tǒng),使RPS模擬系統(tǒng)可視化更加直觀(guān)更方便用戶(hù)的University Press, 20016 Zhou Li. New algorithm of finding an optimal set of tear stream使用。對(duì)周理等人提出的尋找最優(yōu)斷開(kāi)流股集方法Journal of Chemical Industry and Engineering, 1985, (3) 312進(jìn)行改進(jìn)和補(bǔ)充得到了一種新的網(wǎng)絡(luò)分解方法利用這種網(wǎng)絡(luò)分解方法把流股斷裂功能加入到RPS附中文參考文獻(xiàn)模擬系統(tǒng)中。系統(tǒng)建立的文件輸入界面只需對(duì)號(hào)1張述偉,陸明亮,徐志武.低溫甲醇洗模擬系統(tǒng)模擬與分析.化入座按中文提示輸入數(shù)據(jù)文件生成十分方便。數(shù)肥設(shè)計(jì),1994,32(1)25-31據(jù)修改功能十分強(qiáng)大它使數(shù)據(jù)直接回到界面上方2馮惠軍.用 Visual B開(kāi)發(fā)DOs程序的 Wind用戶(hù)界面.計(jì)便數(shù)據(jù)的修改。系統(tǒng)査錯(cuò)功能比較完善基本能應(yīng)算機(jī)系統(tǒng)應(yīng)用,1997,(2)52-53付初學(xué)者使用本系統(tǒng)時(shí)的各種誤操作。模擬計(jì)算部3魏選平,卞樹(shù)檀.一種基于 Fortran powerStation平臺(tái)開(kāi)發(fā)的仿真分中的批處理文件編制部分和模擬計(jì)算部分完全脫程序及其應(yīng)用.軟件可靠性與評(píng)測(cè)技術(shù),2002,(2)52-55離了DOS環(huán)境真正做到可視化。系統(tǒng)還增加了結(jié)4鄧巍巍,王越男. Visual FoκTRAN編程指南.北京民郵電岀果文件預(yù)覽打印功能使本系統(tǒng)的功能更加完善。版社,2000References5 Bob Rosenman and Richard Peasley.VB6使用教程.北京清華大I Zhang Shuwei, Lu Mingliang and Xu Zhiwu. Rectisol process simula6周理.過(guò)程模擬信息網(wǎng)絡(luò)的新分解方法.化工學(xué)報(bào),1985,(3):tor and analysis. Chemical Fertilizer Design, 1994 32( 1 )25-31312-3212 Feng Huijun. Interface designing of the dos program using Visual
-
C4烯烴制丙烯催化劑 2020-03-24
-
煤基聚乙醇酸技術(shù)進(jìn)展 2020-03-24
-
生物質(zhì)能的應(yīng)用工程 2020-03-24
-
我國(guó)甲醇工業(yè)現(xiàn)狀 2020-03-24
-
石油化工設(shè)備腐蝕與防護(hù)參考書(shū)十本免費(fèi)下載,絕版珍藏 2020-03-24
-
四噴嘴水煤漿氣化爐工業(yè)應(yīng)用情況簡(jiǎn)介 2020-03-24
-
Lurgi和ICI低壓甲醇合成工藝比較 2020-03-24
-
甲醇制芳烴研究進(jìn)展 2020-03-24
-
精甲醇及MTO級(jí)甲醇精餾工藝技術(shù)進(jìn)展 2020-03-24





