王曉輝 王立凱 常 亮 聶小華
(中國飛機強度研究所 陜西 西安 710065)
“材料基因組計劃”MGI(Materials Genome Initiative)是美國總統奧巴馬在2011年6月24日提出,旨在“將先進材料的發現、開發、制造和使用的速度提高一倍”。該計劃主要包括三大系統:高通量材料計算系統、材料性能表征與測試技術系統以及材料設計性能數據庫與信息平臺系統,其中材料數據庫是必不可少的重要部分[1-5],其用途主要為材料計算模擬和材料實驗提供基礎數據和實驗依據,為產品結構分析和性能評定提供有力工具和數據支撐。材料是整個國防工業生產的基礎,材料數據庫的研究和開發則是工業現代化的重要方面。伴隨著工業技術和制造業的迅猛發展,材料已成為當今社會的戰略性資源[6]。隨著信息技術的飛速發展,采用有限元分析技術進行強度分析與評定已成為飛機結構設計過程的標準流程之一。其中在有限元分析中,材料數據直接決定了分析的準確性,因此材料數據庫技術就變得更為重要。
隨著信息化技術的發展和材料科學的進步,材料數據庫系統已成為衡量現代化產品設計和制造業水平的重要指標[7-8]。國外材料數據庫發展起步較早,特別是歐美等發達國家。比如:美國的MatWeb數據庫[9]、Granta MI軟件平臺[10]、先進材料及制備技術中心(AMPTIAC)[10]等;歐洲材料中心的聚變材料性能數據庫[11]; 荷蘭PETTER歐洲研究中心的高溫熱學材料數據庫(MatDB)[12];日本國家材料科學研究院(NIMS)建立的“材料數據平臺”[13]等。在國內,材料數據庫的發展比較緩慢,尤其在材料理論與設計方面遠落后于歐美發達國家。雖然近年來,在信息化建設的支持下,國內相關科研院所建立了一批數據庫,包含EASE4.4新增中國吸聲材料數據庫[14]、北科大支持構建的自然腐蝕材料數據庫[10]、中科院開發的核反應堆材料數據庫平臺NRMD[15]、北京航空材料研究院建立的先進復合材料數據庫[16]等。但在航空領域,隨著新型飛機的出現,超高的技戰術指標促使飛機的設計與分析變的精細化,對新材料的性能提出了更多、更高的要求,也使得材料數據庫的發展顯現出一些問題:一方面,有限元分析類型已從傳統的載荷模型分析過渡到精細化模型分析,其中分析使用的參數類型不局限于傳統的通用材料數據庫具備的材料的彈性模量和泊松比等材料參數,逐漸引入了材料的各項異性性能,并向金屬斷裂損傷,復合材料分析等方向發展;另一方面,大多數商軟或者軍用材料數據庫數據完整,性能優越,但由于技術封鎖,更新落后和虛高價格使得國內進口或購買變得困難,大幅增加了維護和管理成本。因此,結合工程結構分析,材料數據來源可靠,維護成本低廉,開發周期短,自主知識產權將是未來工程材料數據庫開發的重要方向。
鑒于此,本文主要針對結構強度分析流程,以SQLite為數據庫平臺,基于Visual Studio 2010和Qt圖形框架,開發了一個支持精細強度分析的輕量級工程材料數據庫,使其能對材料參數進行查詢、分析、比較和插值擬合,同時具備構建材料模型的功能,使之與有限元分析軟件緊密結合,有效地節約分析時間和成本。
工程材料數據庫通過采用Visual Studio 2010和Qt圖像框架進行編碼實現,完成對SQLite數據庫中創建的材料性能參數表的調用,設計目標應該從數據完整性、功能需求和應用分析三個方面考慮。
? 收集國內航空常用材料力學性能數據,涵蓋了典型金屬、蜂窩、復材、鋪層模板、橡膠以及特殊材料等多種牌號的材料數據,包括這些材料的物理性能、力學性能、工藝性能、試驗性能、化學性能以及基本成形性能等多層次材料參數。
? 包含材料可追溯性參數,如廠家、試驗人員、日期等數據背景信息。
? 在SQLite中按上述性能分類的層次關系創建材料數據表,以材料牌號(底層采取唯一ID標識)作為主鍵,通過構建數據表的內容,將材料信息存入表中,并支持數據庫刪除、修改、查詢等操作。
? 數據庫系統中包含數據插值擬合算法,根據有限的離散化的試驗數據點,通過數據插值的方式提供仿真分析需要的數據曲線。
? 具備良好的跨平臺特性,實現豐富的軟件功能,發展成為各類材料數據應用平臺的集成模塊,增強數據庫應用范圍。
? 具備良好的擴展接口,按照不同分析類型構建對應的材料模型,針對HAJIF、NASTRAN等有限元模擬軟件輸出材料模型文件。
基于以上設計目標,該材料數據庫的系統數據概念結構模型如圖1所示。

圖1 系統數據概念結構模型
程序設計采用層次化的三層體系結構軟件設計技術,如圖2所示,將數據庫劃分為界面層、業務層和數據層三層[17]。界面層用于實現人機交互;業務層屬于整個數據庫的核心,可將接收到的界面層傳遞過來的操作信號, 按照特定的業務邏輯發送給數據層實現用戶意圖;數據層可實現對底層數據庫的訪問和調用。

圖2 數據庫三層體系架構
材料數據庫中的數據獲取方式主要來源于國內外權威的材料手冊和書籍以及學術論文,如《金屬材料性能的確定與標準化(上/下冊)》[18]《飛機設計手冊》[19]等,也有部分數據來源于有限元模擬軟件和材料試驗。其中,在紙質版的材料手冊和書籍當中,很多的材料性能參數往往以曲線圖片的格式給出,在此可以通過圖片曲線數值化軟件GetData Graph Digitizer處理。如圖3所示,導入15-5PH不銹鋼在不同熱處理狀態的典型拉伸應力-應變曲線圖片,首先選擇GetData工具欄“Set axis scale”操作設置坐標軸范圍,其次選擇工具欄“Point capture mode”操作進行圖片曲線數據采集,結果見表1。以此對同一溫度下的數據進行三次樣條插值擬合,可以得到更多材料數據,為后續數據庫構建奠定基礎。

圖3 材料曲線圖片數據采集界面

表1 15-5PH不銹鋼不同熱處理狀態和應變所對應的應力值
三次樣條數據擬合算法原理:已知平面上n個離散點(xi,yi)(i=1,2,…,n),其中x1 經過編碼實現,通過三次樣條插值可得到分段的插值多項式,數據擬合效果如圖4所示??梢钥闯觯瑪祿M合既增加了數據選取范圍,又可以方便地通過插值多項式計算獲取所需要的材料參數。 圖4 插值擬合后的15-5PH不銹鋼不同熱處理狀態對應的應力-應變曲線 通過收集及試驗獲取材料數據,最終確定了266種材料數據和1 788種的復材鋪層數據模板,如下為收集的材料的牌號及名稱: ? 鋁: 2024,2219,5052,7075,LC4,LC9 ? 鎂: AZ31,MB15 ? 特種鋼: AISI4140 ? 不銹鋼: 0Cr18Ni9,1Cr18Ni9Ti,2Cr13Ni14Mn9,1Cr13,2Cr13,1Cr17Ni2, 15-5PH ? 鈦: Ti6Al4V,TA1,TA2,TC1,TC3,TC4,TB3 ? 鈹: SF200D,Be S200F,AlBe162,AlBe140 ? 銅: T2,T3,Ti153,Ti533,Ti6Al2Sn4Zr2Mo ? 高溫合金: Inconel718,Inconel Alloy 600,A-286,Hastelloy X,Rene41,Haynes 188,GH1035,GH1140 ? 紙蜂窩: 1/8-Paper-.004 ? 鋁蜂窩: 1/4-5052-.007N ? 鈦蜂窩: 1/4-75A-.002 ? 鋼蜂窩: 1/4-17-7PHA-.002 ? 復材蜂窩: ECK-1/8-2.5 (1.4),ECA-1/8-3.0 (2),ECK-R-3/16-3.0 (1.8),ECK-1/8-5.0(2.8) ? 合金蜂窩: Ti-3Al-2.5V_.002_3/16,Ti-3Al-2.5V_.002_1/4,Ti-3Al-2.5V_.002_1/8,Ti-3Al-2.5V_.002_3/8,IN617_.002_3/8 ? 石墨環氧樹脂: IM7/977-2,M46J/7714, IM7/977-2,AS4/3502,IM7/8551-7, IM7-5250-5,Gen/PMR-15,T650/PMR-15 ? 鈦基復材: SCS-6/Ti21S,SCS-6/Ti-15-3-3 ? 陶瓷基: Carbon/Carbon CC137 ? 復材鋪層模板: 包含航空常用鋪層模板數據,按照鋪層角度和層數進行劃分 ? 天然橡膠: 1140,1141,1142,1143,1144,1150,1151,1152,1180, ? 丁苯橡膠: 3160,3180,3383 ? 氯丁橡膠: 4150,4160,4161,4162,4170,4171,4172,4190 ? 丁腈橡膠: 5160,5170,5172,5180,試5171,P106 ? 乙丙橡膠: 8360,8370,8380,E-2-90 ? 硅橡膠: 6141,6142,6143,6144,G105,G168 ? 氟硅橡膠: G401,G409,G441 ? 氟橡膠: FX-4,FX-5,FX-10,F275,F370 每一種材料都包含了材料的物理性能參數、力學性能參數,以及與溫度相關的參數曲線和材料的本構模型等。這些參數可以直接用于數據庫的開發以及有限元模擬時材料模型的構建。 SQLite數據庫具有小巧、開源、易用、高效等特點,無需安裝,維護方便[20],很大程度上減輕了開發技術人員的工作量,可以滿足輕量級工程材料庫對于數據傳輸和存儲效率的要求。因此,通過對材料數據信息劃分歸類,進行了材料數據結構的總體設計。在SQLite中建立了名為.db的數據庫文件,在該數據庫中創建7個數據信息表和7個對應的性能參數表,分別存儲材料數據信息和材料性能參數等,各數據表之間通過主鍵(材料編號ID)相互關聯。 基于功能需求分析,材料數據庫的開發主要在Visual Studio 2010框架下采用面向對象的程序設計思想進行開發,包含數據庫界面設計、界面交互、業務功能處理和SQLite數據庫的封裝,具體用到以下工具: ? 計算機操作系統:Windows7 64位系統。 ? 編程語言及第三方庫:C++、Qt,Qwt。 ? 編程開發平臺:Visual Studio 2010,SQLite Expert Professional。 本文在C++編程框架下,將以用戶為中心的設計思想和功能分析思想進行融合[21-22],基于Qt進行了數據庫軟件的用戶界面設計與開發。其中QT作為一個面向對象的圖形用戶界面應用程序框架,以其良好的跨平臺移植性能而著稱,具有較好的封裝性和強大的API,豐富的函數庫和擴展類可以為開發人員提供方便的調用,進行組件編程[21]。另外,Qt擁有的信號與槽機制,操作簡便靈活,可實現對象間的數據響應和通信,完成界面交互,且界面事件獨立于其他事件循環,執行效率很高[23-24]。 如圖5所示,Qt所具備的控件可匹配主界面(QMainWindow 或QDialog)的所有顯示元,如菜單欄(QMenuBar)、工具欄(QToolbar)、結構樹(QTreeWidget)、按鈕(QPushButton)、輸入框(QLineEdit)、標簽(QLabel)和二維曲線(QwtPlot)等,滿足了數據庫軟件操作和界面美觀的要求。對于具體材料定義,不僅包含輸入參數,還有基于試驗數據通過三次樣條插值擬合的二維曲線,可通過鼠標拾取獲得感興趣的性材料參數。對于具體材料都有一個材料參數定義界面(QDialog),不僅包含輸入參數,還有基于試驗數據通過三次樣條插值擬合的二維曲線,可通過鼠標拾取獲得感興趣的性材料參數。 圖5 材料數據庫主界面 對于具體材料,如圖6所示都有一個材料參數定義界面(QDialog),不僅包含輸入參數,還有基于試驗數據通過三次樣條插值擬合的二維曲線,可通過鼠標拾取獲得感興趣的性材料參數。 圖6 材料數據定義界面 執行層主要通過封裝程序接口,實現數據庫訪問的功能,因此需要建立數據執行引擎。 3.2.1 核心對象 database_connection和prepared_statement是SQLite中最主要的兩個對象[25],主要用在各個SQLite具體操作中。其中,數據庫基本操作涉及到的標準接口見表2。 表2 SQLite標準接口 3.2.2 二次封裝 將SQLite數據庫的API二次封裝為適合調用的擴展類DbSqlite的接口函數(見表3)。通過在Visual studio2010建立工程項目,編譯Win32/64平臺所需要的SQLite庫文件,供材料庫項目調用,完成數據庫的基本操作。 表3 SQLite 二次封裝接口 構建輕量級工程材料庫的目的是便于為強度結構工程分析和有限元仿真提供幾何模型的物理屬性支持。其中,HAJIF是由中國飛機強度所自主研發推出的國內航空界功能最為全面的大型CAE分析軟件系統,具有高度可擴展性。因此,基于HAJIF基礎平臺和開發環境,將材料數據庫以組件的形式和HAJIF軟件系統進行了無縫結合。如圖7所示,在HAJIF軟件平臺上,通過材料庫的加載材料數據或寫出材料卡片等操作可以方便快速地進行模型材料屬性的構建,進而輔助完成有限元分析,提高了建模分析的效率。 圖7 材料庫與分析軟件HAJIF無縫結合 采用Visual studio 2010和SQLite及Qt開發出了一套功能完善的可跨平臺的輕量級工程材料數據庫軟件,將收集及試驗得到的多種材料數據錄入該數據庫中。通過程序實現了對材料性能參數的增刪改以及查詢等功能,并且可以作為組件模塊通過定義接口直接與分析軟件無縫結合,為企業的選材和仿真分析提供了一定的依據。 該材料數據庫最初主要是針對結構強度分析用的材料性能數據所開發,在未來還將收集各類工程需求,更新軟件功能和數據內容。目前,該數據庫除了為濟南特種結構研究所定制軟件所應用,也在相關型號研制中發揮了重要作用,體現了很好的應用價值。
2.2 數據的存儲
3 材料數據庫的開發
3.1 用戶界面的設計開發


3.2 SQLite數據庫封裝


4 材料數據庫的可行性驗證

5 結 語