• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      全自動小型發(fā)酵罐3D仿真的實現(xiàn)

      2014-12-31 00:00:00楊海軍周小蘋
      計算機光盤軟件與應(yīng)用 2014年23期

      摘 要:用SolidWorks和3dsMax繪制全自動小型發(fā)酵罐3D模型,應(yīng)用VC++結(jié)合DirectXSDK編程,實現(xiàn)全自動小型發(fā)酵罐3D仿真,可用于發(fā)酵過程仿真教學。

      關(guān)鍵詞:發(fā)酵罐;3D;仿真

      中圖分類號:TQ920.5

      全自動小型發(fā)酵罐作為一種常見的生物反應(yīng)器,在高校及科研單位被廣泛用于小型試驗研究,也作為生物工程的典型設(shè)備用于教學。全自動小型發(fā)酵罐容積通常為5L、10L,其形體雖小,但結(jié)構(gòu)較復(fù)雜,包含了空氣系統(tǒng),蒸汽系統(tǒng)、冷水系統(tǒng)和補料系統(tǒng)及pH電極、DO電極、溫度電極和泡沫電極等眾多檢測元件,價格也較昂貴。其管線交錯,閥門眾多,初接觸者很難辨別,極易誤操作造成設(shè)備損壞。為避免初學者誤操作帶來經(jīng)濟損失,有必要制作全自動小型發(fā)酵罐互動仿真軟件,讓操作者先在電腦上操作,達到熟練認知設(shè)備后,再進行真實罐的操作。3D仿真,計算量較大,需要訪問的數(shù)據(jù)較多,早期對電腦硬件要求較高,但隨著電腦硬件技術(shù)的迅速發(fā)展,目前市面上普通電腦已能很好滿足要求。在軟件方面,3D模型制作軟件如SolidWorks、3dsMax越來越完善,制作3D模型也越來越智能化,3D編程方面DirectX SDK自帶了許多示例,只需要在適宜的示例上進行簡單的編程,就可滿足3D仿真要求。文中所用軟件為SolidWorks2014,Autodesk 3ds Max 2012,Microsoft visual studio 2010,Microsoft DirectX SDK(June 2010)。

      1 用SolidWorks制作3D模型

      SolidWorks是基于Windows平臺開發(fā)的一款機械設(shè)計自動化軟件,主要的特點是把任何復(fù)雜或簡單的實體模型都被看作是由一個個單獨成型的系統(tǒng)單元組成,這些系統(tǒng)單元又稱為特征[1],基于特征建模是該軟件最重要方面的特性。SolidWorks中3D建模的方法通常是先在基準面上繪制草圖,再通過拉伸、旋轉(zhuǎn)、掃描操作轉(zhuǎn)化為空間實體,此稱為基于草圖的特征。進一步地可通過倒圓角、打孔、拔模對基礎(chǔ)特征細化,獲得特征又稱為基于特征的特征。小型全自動罐雖然結(jié)構(gòu)復(fù)雜,但其主要由閥門、管線、閥門組成,特征容易把握,用SolidWorks建模也就容易。罐體底部可通過繪制輪廓草圖,按中心軸線旋轉(zhuǎn)獲得。罐身透明部分可通過繪制兩個同心圓草圖通過拉伸得到。罐上部法蘭可通過繪制圓草圖進行拉伸,對其邊再加圓角特征,再加上孔特征,再將孔特征進行圓周陣列便可獲得。SolidWorks還自帶一個工具箱,集成了螺栓和螺釘?shù)雀鞣N常用標準件,可以直接插入使用。因此法蘭間螺栓可以從工具箱直接插入。對管線的建??梢圆捎貌輬D畫圓再經(jīng)沿曲線掃描獲得。圖1是對所建3D模型中對罐體各主要配件的說明。將模型作為一個整體以STL格式保存,保存為“fermentor.stl”。

      圖1 全自動小型發(fā)酵罐罐體3D模型效果圖

      2 3dsMax對3D模型的導(dǎo)入和導(dǎo)出

      3dsMax作為一款功能強大的3D建模軟件,廣泛用于室內(nèi)設(shè)計、游戲建模[2],但在機械設(shè)備建模方面,并不比SolidWorks快捷。DirectXSDK示例“MeshFromOBJ”提供了導(dǎo)入模型格式為“*.obj”的編程方法,3dsMax可直接將模型導(dǎo)出為“*.obj”文件,而3dsMax和SolidWorks可通過STL格式互導(dǎo)。因此可將SolidWorks所建模型導(dǎo)入到3dsMax,再導(dǎo)出“*.obj”格式進行編程。在3dsMax 完成模型材質(zhì)的設(shè)置后,在導(dǎo)出文件名中輸入“fermentor”,保存類型中選“*.OBJ”,導(dǎo)出模型數(shù)據(jù)。導(dǎo)出選項中選擇“面”選擇“三角形”,“材質(zhì)”選項中勾選“使用材質(zhì)路徑”,導(dǎo)出結(jié)果生成“fermentor.obj”、“fermentor.Mtl”兩個文件和一個“maps”文件夾,“maps”中內(nèi)容是材質(zhì)中所用貼圖的文件。

      3 VC++集合DirectXSDK編程

      打開DirectXSDK所帶的DirectX Sample Browser,找到“MeshFromOBJ”示例,點擊下方“install Project”文字,在彈出窗口“name” 編輯框中輸入“fermentor3D”,然后點擊“確定”按鈕,就生成一個名為“fermentor3D”文件夾。將該文件夾下“media”子文件夾中文件全部刪除,再將2中導(dǎo)出模型中的“fermentor.obj”、“fermentor.Mtl”文件和“maps”文件夾拷貝到“media”文件夾中。打開工程文件“fermertor3D_2010.sln”,在Microsoft visual studio 中打開“fermertor3D.cpp”,在 HRESULT CALLBACK OnCreateDevice( IDirect3DDevice9* pd3dDevice, const D3DSURFACE_DESC* pBackBufferSurfaceDesc, void* pUserContext )函數(shù)中,有一句為:

      V_RETURN( g_MeshLoader.Create( pd3dDevice, L\"media\\cup.obj\" ));

      將此句改為:

      V_RETURN( g_MeshLoader.Create( pd3dDevice, L\"media\\ fermentor.obj \" ));

      再經(jīng)過編譯,就生成 fermertor3D.exe程序。程序運行后,滾動鼠標可縮小或放大程序顯示發(fā)酵罐圖形,按著鼠標左鍵拖動鼠標可以改變發(fā)酵罐的觀察角度,可從 各個角度清楚地觀察發(fā)酵罐構(gòu)造。在對軟件添加必要的對話框控件編程實現(xiàn)互動效果和透明效果編程后程序運行界面如圖2顯示。仿真軟件最終實現(xiàn)的功能主要有:罐中培養(yǎng)基添加、排放和取樣;培養(yǎng)基的滅菌;發(fā)酵過程中pH和溫度的自動控制;攪拌器轉(zhuǎn)速的調(diào)節(jié);空氣流量調(diào)節(jié)等。軟件較真實地模擬了全自動小型發(fā)酵罐的發(fā)酵操作。

      圖2 全自動小型發(fā)酵罐3D互動仿真結(jié)果

      4.結(jié)束語

      DirectX SDK提供了豐富的3D編程示例,在適宜的示例基礎(chǔ)上編程,可大大降低3D編程的難度。利用SolidWorks制作全自動發(fā)酵罐的3D模型,載入到3dsMax中導(dǎo)出為“*.OBJ”格式,在DirectX Sample Browser“MeshFromOBJ”示例的基礎(chǔ)上編程,可快速實現(xiàn)全自動小型發(fā)酵罐3D互動仿真。

      參考文獻:

      [1]丁源,周文華.SolidWorks 2014中文版從入門到精通[M].北京:清華大學出版社,2014.

      [2]賀建紅.3ds Max 2012 寫實建模完全實例教程[M].北京:科學出版社,2010.

      [3]李建波,丁海燕.Direct X3D HLSL高級實例精講[M].北京:清華大學出版社,2013.

      作者簡介:楊海軍(1971-),男,四川雅安人,碩士研究生,講師,研究方向:生物過程優(yōu)化及仿真。

      作者單位:信陽農(nóng)林學院,河南信陽 464000

      大英县| 武强县| 抚顺市| 临高县| 宜城市| 靖江市| 闽清县| 靖安县| 鄄城县| 涟源市| 雷波县| 三台县| 盈江县| 靖安县| 广南县| 衡阳市| 宜黄县| 洪泽县| 北海市| 巴林左旗| 栖霞市| 孝感市| 灵台县| 乐清市| 嘉定区| 辽阳市| 江津市| 安塞县| 惠来县| 新津县| 双牌县| 司法| 邵武市| 三原县| 临沭县| 安图县| 布拖县| 德格县| 礼泉县| 容城县| 和政县|