《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業(yè)界動態(tài) > 基于Web的流體物性數據庫系統(tǒng)研究

基于Web的流體物性數據庫系統(tǒng)研究

2016-03-15
作者:*章新1,李榮興1,侯彥青2,謝剛1,3,崔焱3,汪晶晶1
來源:2016年微型機與應用第2期

*章新1,李榮興1,侯彥青2,謝剛1,3,崔焱3,汪晶晶1

1.昆明理工大學 冶金與能源學院,云南 昆明 650093;  2.省部共建復雜有色金屬資源清潔利用國家重點實驗室(昆明理工大學),云南 昆明 650093; 3.昆明冶金研究院,云南 昆明 650031

  摘要:Web數據庫具有持久性、有效性、共享性等特點,有效實現(xiàn)了物性數據和估算公式的管理。分析了開發(fā)基于Web的流體物性數據庫系統(tǒng)的必要性,對系統(tǒng)開發(fā)環(huán)境的選擇、系統(tǒng)架構、資源權限管理、數據交互、計算模塊實現(xiàn)等方面進行了詳細闡述。該系統(tǒng)的建立不僅解決了傳統(tǒng)方法獲取流體物性數據復雜、繁瑣等問題,而且還克服了傳統(tǒng)數據庫移植性差、用戶體驗性差、數據更新慢、數據不全面等缺點。為工程設計和研究人員提供了方便有效的應用工具。

  關鍵詞流體物性計算;基于Web數據庫;流體

0引言

  流體物性數據是化工、冶金、能源等領域進行工程設計和研究時必不可少的基礎數據。目前獲取物性數據的方式主要包括實驗方法和物性估算方法[12]。在實際工作中由于受到條件限制,大部分工程技術人員往往借助物性估算方法來獲取數據。傳統(tǒng)手工計算物性數據具有復雜、繁瑣等缺點,顯然不能滿足人們的需求。隨著計算機技術的不斷發(fā)展,也相繼出現(xiàn)了一些基于單機版的流體物性數據庫。但是這些數據庫具有移植性差、用戶體驗性差、數據更新慢等缺點,為人所詬病。

  傳統(tǒng)流體物性數據庫主要以表的形式顯示物性數據,其優(yōu)點是能夠提供精確的數據。但是對于用戶獲取某些不同溫度和壓力下的物性數據的需求,卻不能得到很好的解決。用戶仍需利用復雜的計算公式進行計算,這種單一的機械化工作消耗了研究人員相當多的精力,降低了工作效率[3]。流體物性數據計算較為復雜,各種理論、半經驗、經驗公式各有特點,且當前沒有一種共通的方法計算所有物性數據的情況[4],因此,建立一種物性數據和估算公式的管理的數據庫很有必要。

  基于Web的流體物性數據庫整合了常用物質的物性數據,并將其存儲在數據庫中,作為計算系統(tǒng)的基礎數據。利用數據庫具有的持久性、有效性、共享性等特點,有效地實現(xiàn)了物性數據和估算公式的管理,解決了傳統(tǒng)流體數據庫數據更新慢、共享性差的缺點,為用戶計算提供了便利。

1系統(tǒng)集成環(huán)境的選擇

  選擇一種合適的系統(tǒng)集成環(huán)境,不僅能夠滿足軟件的業(yè)務和邏輯需求,而且還保證了系統(tǒng)的訪問效率和運行的安全性。本節(jié)將從系統(tǒng)服務運行的操作系統(tǒng)、開發(fā)語言、服務器軟件以及數據庫4個方面進行重點介紹。具體系統(tǒng)集成環(huán)境如表1所示。

004.jpg

  1.1系統(tǒng)運行的操作系統(tǒng)

  目前主流的操作系統(tǒng)主要包括Windows和Linux。雖然Windows操作系統(tǒng)便捷的視窗界面深受PC用戶歡迎,但是其先天的內核設計,導致其漏洞較多。因此,對于大部分軟表1系統(tǒng)集成環(huán)境條目內容開發(fā)語言Java[5]運行的操作系統(tǒng)Linux系統(tǒng)開發(fā)工具Eclipse 81數據庫MySQL數據庫[6]Web服務器軟件Tomcat服務器前臺開發(fā)語言JavaScript、HtmlMVC框架Struts、Spring、Hibernate

  件開發(fā)機構,很少使用Windows系統(tǒng)作為軟件服務器系統(tǒng)。而Linux系統(tǒng)具有穩(wěn)定的安全保護機制、高效的多任務、多用戶能力,且免費開源,因此選擇Linux系統(tǒng)作為系統(tǒng)運行的操作系統(tǒng)。

001.jpg

  1.2開發(fā)語言

  針對系統(tǒng)的業(yè)務和邏輯需求,選擇了Java作為系統(tǒng)開發(fā)的基本語言。相比其他開發(fā)語言,Java語言具有以下優(yōu)點。

  (1)跨平臺性:對于Java程序,不管是Windows平臺還是Linux平臺或者其他平臺,它都適用。Java編譯器把Java源程序編譯成與體系無關的字節(jié)碼指令,只要安裝了Java運行系統(tǒng)(JVM),Java程序就可以在任意的處理器上執(zhí)行[7]。

  (2)安全性:Java適用于網絡分布式環(huán)境,適用Java可以構建防病毒、防篡改的系統(tǒng)。

 ?。?)健壯性:Java語言開發(fā)初期,開發(fā)人員投入了大量的精力進行問題檢測、后期動態(tài)檢測,采用指針模型設計消除了重寫內存和損壞數據的可能性。

 ?。?)便捷性:Java語言采用了面向對象開發(fā)模式,實現(xiàn)了代碼復用。

  同時,由于Java語言的開源性,使得越來越多的成熟的開發(fā)框架問世,比較著名的框架有:Struts、Spring、Hibernate。這些優(yōu)點使得開發(fā)更加便捷,提高了開發(fā)人員的工作效率。

  1.3系統(tǒng)服務器軟件

  開發(fā)語言的選擇決定了服務器軟件的選擇,基于Java語言開發(fā)服務器軟件主要包括:Tomcat服務器、Resin服務器、JBoss服務器、WebSphere服務器、WebLogic服務器??紤]到開發(fā)成本以及系統(tǒng)運行所占的資源不大的特點,選擇了免費開源的Tomcat服務器。

  1.4數據庫的選擇

  目前流行的數據庫主要包括:甲骨文的Oracle、微軟的SQLServer、IBM的DB2以及瑞典 MySQL AB公司的MySQL。這些數據庫的運行效率和安全性各有特點。由于版權和開發(fā)成本的問題,系統(tǒng)采用了MySQL數據庫。MySQL是一種跨平臺數據庫,可以在多種平臺部署。其客戶端/服務端的架構的分布式管理模式完全滿足網絡運行的需求。MySQL中的SQL語言具有功能強、使用簡單、管理方便、運行速度快、可靠性高的特點。同時,它具有免費開源的特點,用戶可以自由地下載安裝和使用,并且可以無限制地應用到商業(yè)軟件開發(fā)中。

2系統(tǒng)總體設計

  2.1系統(tǒng)結構

  系統(tǒng)由流體物性計算系統(tǒng)、數據庫管理系統(tǒng)、流體物質數據庫、數據校驗系統(tǒng)、數據庫幫助系統(tǒng)五大模塊組成。各個模塊基于MVC模式開發(fā),保證了系統(tǒng)的高內聚、低耦合,為系統(tǒng)后期功能擴展提供了條件。系統(tǒng)功能框架圖如圖1所示。

  2.2流體物質數據庫

  流體物性計算系統(tǒng)需要一些參數數據。為了減輕用戶查閱相關參數數據的工作量,系統(tǒng)提供了流體物質數據庫,方便用戶隨時調用。目前流體數據庫包括了常見的500多種流體物質的物理化學性質,如密度、分子式、摩爾體積、分子結構、沸點、熔點、臨界參數、偶極矩等幾十種性質數據。流體物質數據庫是整個計算系統(tǒng)的核心部分,系統(tǒng)計算所用的基礎數據都來源于該數據庫。維護好、擴展好數據對整個系統(tǒng)使用和發(fā)展起到了至關重要的作用。因此,開發(fā)人員開發(fā)了一套功能齊全的數據庫管理系統(tǒng)。通過數據庫管理系統(tǒng),系統(tǒng)管理人員可以實時地對數據進行維護。同時,系統(tǒng)也會定期備份數據庫中的數據,防止數據庫損壞所帶來的數據丟失[8]。

  流體物質數據庫開放了數據檢索接口,為用戶提供了流體物性數據檢索服務。系統(tǒng)檢索方式包括:關鍵字檢索、名稱檢索、CAS號檢索以及化學式檢索。用戶可根據需要,切換不同檢索方式。對于數據檢索結果頁面,系統(tǒng)提供了兩種顯示方式:概覽和細覽模式。概覽模式能顯示所查物質的最常用的屬性;細覽模式能顯示所查物質的所有屬性并顯示其他表中與其相關聯(lián)的內容。流體物質數據庫還提供了數據下載和打印按鈕,方便用戶使用相關數據。

  2.3數據庫管理系統(tǒng)

  為了合理有效地分配和維護流體物性數據庫系統(tǒng)的資源,系統(tǒng)集成了數據庫管理系統(tǒng)。該系統(tǒng)提供了超級管理員、普通管理員和會員3種角色。超級管理員可以分配普通管理員的相關操作權限,如流體物質數據庫數據維護的增加、刪除、更新的操作。而普通管理員可以根據不同的普通會員的需求,分配相關流體物性計算模塊以及數據檢索權限。以上這些操作,管理員可以在任意的計算機上登錄數據庫管理系統(tǒng)進行管理,而不必要遠程登錄服務器進行管理。

  2.4流體物性計算系統(tǒng)的實現(xiàn)

  2.4.1數據交互

  系統(tǒng)提供了豐富的表單元素作為Web訪問接口[9],如:文本框、多選框、單選按鈕、下拉框等。在TCP/IP和HTTP傳輸協(xié)議的支持下,通過點擊數據提交按鈕,即可將數據傳輸到服務器上,服務器經過一系列數據計算后,將數據以HTML形式反饋給用戶[1011]。對于計算量較大的模塊,系統(tǒng)采用Ajax技術實現(xiàn)了多線程異步技術,緩解了客戶端由于長時間等待計算結果而帶來的卡頓現(xiàn)象[12]。

  系統(tǒng)集成了一套基于JavaScript腳本語言開發(fā)的數據校驗模塊。該模塊會隨時監(jiān)控用戶輸入的數據,如果數據有錯系統(tǒng)會及時提示給用戶。校驗模塊是針對客戶端的數據驗證,所以用戶提交數據時,數據只是在本地進行驗證。這樣的設計不僅可以降低服務器負擔,還可以提高程序的運行速度,節(jié)省了服務器的運行資源。

  2.4.2實現(xiàn)的計算模塊

  目前已完成的主要計算模塊有:氣液體臨界性質計算、常壓/高壓下純氣體黏度計算、常壓/高壓下混合氣體黏度計算、常壓/高壓下純氣體導熱系數計算、常壓/高壓下混合氣體導熱系數計算。進入模塊界面前,需要先登錄用戶界面(如圖2所示),然后通過系統(tǒng)驗證判斷是否有權限訪問。

  

002.jpg

  該模塊編碼所需的公式全部來源于文獻,每種物性計算提供了兩種計算方式。由于模塊中的計算需要大量物性參數,因此模塊集成了一套參數智能回填系統(tǒng)。對于數據庫存在的流體物質,用戶只需通過流體選擇界面點擊所要計算的物質。當選中物質后,系統(tǒng)后臺會自動檢索所選物質的物性參數(臨界參數、相對分子質量、偶極矩、密度等),檢索完畢后系統(tǒng)則會將物性數據填寫在對應位置。針對某些物性數據計算需要基于基團貢獻法,系統(tǒng)也收集了大量文獻中的基團貢獻值,并且在相關的計算模塊中提供基團貢獻值查詢界面,方便用戶使用。考慮到計算模塊操作的復雜性,系統(tǒng)在不同的計算模塊界面上提供了相關的計算幫助文檔,用戶可以參考文檔中相關的算例,正確地使用模塊計算。圖3是計算293 K、1 bar下,摩爾分數為697%甲烷和303%正丁烷混合氣體的黏度,通過系統(tǒng)計算最后得出其黏度為97987,與實驗數據誤差為3%。

  

003.jpg

3結論

  本文對基于Web的流體物性數據庫系統(tǒng)開發(fā)環(huán)境的選擇、系統(tǒng)的架構、資源權限的管理、數據交互、模塊功能實現(xiàn)等方面進行了詳細的闡述,實現(xiàn)了流體物質數據庫檢索、流體物性數據計算以及數據下載等功能。該系統(tǒng)具有架構合理、使用方便、檢索快捷等優(yōu)點,可廣泛應用于化工、冶金、能源等領域,為流程模擬和工藝生產條件優(yōu)化提供可靠的物性數據。服務器端采用Java+Tomcat+MySQL開發(fā),既保證了系統(tǒng)的安全性,也實現(xiàn)了系統(tǒng)的跨平臺性[13]。

  隨著研究工作的深入,基于Web的流體物性數據庫系統(tǒng)功能將得到充實完善。在不斷擴充系統(tǒng)基礎數據以及物性計算模塊的基礎上,逐步實現(xiàn)流體模擬計算、文獻檢索、數據評估等功能,使其適應廣大工程人員和研究人員的需求。

參考文獻

  [1] 吳江濤, 劉志剛, 張可,等. 基于 Web 的流體熱物性遠程計算系統(tǒng)研究[J]. 計算機與應用化學, 2004, 21(4): 529532.

 ?。?] 王小艷. 化工物性數據庫系統(tǒng)軟件開發(fā)[D].青島:青島科技大學,2012.

 ?。?] 郝磊磊,方覺,王同賓,等. 冶金熱力學計算軟件的開發(fā)[J]. 河北聯(lián)合大學學報(自然科學版),2014,36(2):1316.

 ?。?] 張健, 陳丙珍. 基于面向對象的化工物性數據庫系統(tǒng)[J]. 計算機與應用化學, 1999, 16(4): 245248.

 ?。?] ASHOK S, BANSALB V K. JAVA: networkcentric enterprise computing[J]. Computer Communications, 1998, 20(16):14671480.

  [6] KORHONEN K, DONADINI F, RIISAGER P, et al. GEOMAGIA50: an archeointensity database with PHP and MySQL[J]. Geochemistry Geophysics Geosystems, 2008, 9(4):366389.

 ?。?] 羅時民.Java程序的國際化[J]. 中文信息, 2002(3):7376.

 ?。?] 李東風,謝昕. 數據庫安全技術研究與應用[J]. 計算機安全,2008(1):4244.

  [9] PATETOSRN L.HMTL4編程指南[M].徐征,馮文墉,等譯.杭州:浙江科學技術出版社,1998.


本站內容除特別聲明的原創(chuàng)文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創(chuàng)文章及圖片等內容無法一一聯(lián)系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。