楊靜
(上饒幼兒師范高等??茖W(xué)校學(xué)前系 江西省上饒市 334000)
VB.NET(Visual Basic.Net)不僅簡(jiǎn)單易學(xué),而且可以嵌入到各類模型設(shè)計(jì)軟件,開(kāi)發(fā)出各種模型設(shè)計(jì)系統(tǒng)。通過(guò)VB.NET,用戶可以合理運(yùn)用各類控件,設(shè)計(jì)軟件平臺(tái),通過(guò)編寫代碼,實(shí)現(xiàn)定制化功能。為了便于使用者,本設(shè)計(jì)選用Visual Studio 2019 軟件作為VB.NET 的開(kāi)發(fā)平臺(tái),并選擇Solidworks2021 軟件作為模型設(shè)計(jì)軟件。
教具在高校教育中有著重要的作用,但是傳統(tǒng)教具管理信息系統(tǒng)是固化的,只能把教具信息調(diào)用出來(lái),無(wú)法對(duì)尺寸進(jìn)行參數(shù)化定制,這就限制了教具應(yīng)用的場(chǎng)合。本平臺(tái)設(shè)計(jì)的教具可以根據(jù)尺寸大小設(shè)計(jì),可以滿足參數(shù)化定制需求。
1.2.1 軟件界面
本平臺(tái)采用Visual Studio 2019 設(shè)計(jì)制作,采用VB.NET 窗體應(yīng)用。平臺(tái)主要分為四個(gè)功能模塊,文件、教具介紹、教具模型設(shè)計(jì)及幫助文檔,如圖1 所示。在文件模塊中,包括打開(kāi)、退出等常用功能;在教具介紹中,包括平臺(tái)內(nèi)目前集成的幾款教具的文字說(shuō)明,圖片介紹,數(shù)據(jù)列表等;在教具模型設(shè)計(jì)中,會(huì)提供教具的參數(shù)化設(shè)計(jì)工具,以及保存模型文檔;在幫助文檔中,會(huì)提供該平臺(tái)的具體使用方法等。
圖1:平臺(tái)界面
1.2.2 軟件架構(gòu)
本平臺(tái)的管理系統(tǒng)架構(gòu)分為三層,分別是系統(tǒng)層、設(shè)計(jì)層和基礎(chǔ)層。系統(tǒng)層就是軟件的顯示界面,集成了平臺(tái)的所有功能,設(shè)計(jì)層包括軟件設(shè)計(jì)模塊、二次開(kāi)發(fā)模塊以及零件建模模塊,每個(gè)模塊分別對(duì)應(yīng)了相應(yīng)的底層設(shè)計(jì)方式,如圖2 所示。
圖2:軟件功能圖
為了對(duì)教具模型進(jìn)行參數(shù)化設(shè)計(jì),就需要運(yùn)用二次開(kāi)發(fā)技術(shù)。為了方便用戶對(duì)建模軟件進(jìn)行二次開(kāi)發(fā),建模提供了幾百個(gè)API 函數(shù)。用戶可以通過(guò)C#、VBA、Visual Basic.Net 等高級(jí)語(yǔ)言對(duì)建模進(jìn)行二次開(kāi)發(fā),對(duì)零件的模型進(jìn)行參數(shù)化設(shè)計(jì),把建模中需要完成的一系列操作,例如實(shí)現(xiàn)直線、草圖、實(shí)體、裝配等功能,通過(guò)VB 控件集成到平臺(tái)中,實(shí)現(xiàn)輸入數(shù)據(jù)以后一鍵生成模型,這極大的方便了非專業(yè)用戶的日常化需求[1]。
二次開(kāi)發(fā)需要相應(yīng)的API 函數(shù)來(lái)實(shí)現(xiàn),因?yàn)榱慵W畛S玫木褪遣輬D、直線、拉伸等命令,因此在這里進(jìn)行介紹[2]。
2.2.1 建立草圖
草圖命令是建模的基礎(chǔ),因此要在二次開(kāi)發(fā)語(yǔ)言中插入草圖命令,首先添加Sldworks2021 Type Library 作為類型庫(kù),然后用ModelDoc2 命令聲明實(shí)體特征Part,用SketchManager 命令聲明草圖Sketchmer,選擇零件模板新建零件,再插入草圖,相應(yīng)代碼如下。
2.2.2 直線
直線命令為Sketchmer.CreateLine,該命令需要直線的兩個(gè)端點(diǎn),直線坐標(biāo)的表示方法為X、Y、Z,例如起點(diǎn)坐標(biāo)為A1, A2, A3,終點(diǎn)坐標(biāo)為B1, B2, B3,相應(yīng)代碼如下。
2.2.3 拉伸
拉伸屬于特征的命令,所以要先聲明引用,用FeatureManager命令聲明要特征管理器,再用SelectByID2 選擇草圖,然后再用FeatureExtrusion3 進(jìn)行拉伸,拉伸厚度為B_size,相應(yīng)代碼如下。
當(dāng)教具設(shè)計(jì)完成以后,需要保存為STL 格式,STL 格式是3D打印的通用格式,因此生成出來(lái)的模型需要通過(guò)SaveAs3 命令保存到電腦路徑中,方便在3D 打印軟件中使用,以模型1.stl 命名為例,保存路徑為桌面,代碼中的雙引號(hào)為路徑的全名稱。
教具的種類繁多,在本平臺(tái)中設(shè)計(jì)了四款教具,分別是七巧板、魯班鎖、孔明鎖和索瑪立方體,每款教具首先根據(jù)圖紙進(jìn)行設(shè)計(jì),在建模軟件中進(jìn)行建模及裝配嘗試,對(duì)各零件尺寸都設(shè)計(jì)到合理的數(shù)值以后,對(duì)尺寸進(jìn)行參數(shù)化設(shè)置,使模型在結(jié)構(gòu)上能夠?qū)崿F(xiàn)功能要求,而具體的尺寸參數(shù)能夠任意設(shè)置。
在本設(shè)計(jì)中,運(yùn)用VB.NET 工具對(duì)建模進(jìn)行參數(shù)化建模,運(yùn)用了兩種建模方法。
第一種是完全參數(shù)化設(shè)計(jì),運(yùn)用VB 代碼直接在軟件中實(shí)現(xiàn)草圖、拉伸,設(shè)計(jì)出所需要的建模文件,這種適合尺寸比較簡(jiǎn)單,通過(guò)設(shè)計(jì)某一個(gè)或者幾個(gè)尺寸就可以把裝配體中所有模型都設(shè)計(jì)出來(lái),例如七巧板、索瑪立方體等[3]。
另一種是在建模軟件中先建立好模型,然后修改模型的參數(shù)尺寸來(lái)實(shí)現(xiàn)模型的重建,這種適合尺寸比較多,結(jié)構(gòu)復(fù)雜,需要對(duì)尺寸進(jìn)行微調(diào)的模型,例如魯班鎖、孔明鎖等。
3.3.1 運(yùn)用VB 編程建模
VB 編程建模的思路是先新建一個(gè)零件,然后插入草圖,按照繪圖順序,依次使用相應(yīng)的代碼命令繪制圖形,然后退出草圖,在特征管理器中選擇這個(gè)草圖,進(jìn)行拉伸,完成建模。
3.3.2 運(yùn)用Access 數(shù)據(jù)庫(kù)建模
根據(jù)初期建模,將各零件的尺寸信息都儲(chǔ)存在Access 數(shù)據(jù)庫(kù)中通過(guò)VB.NET 設(shè)計(jì)有關(guān)控件,讓用戶可以先預(yù)覽數(shù)據(jù)庫(kù)中的尺寸數(shù)據(jù),再根據(jù)自己的需要選擇相應(yīng)的數(shù)據(jù),即可將數(shù)據(jù)傳入建模軟件完成建模。
根據(jù)本平臺(tái)的設(shè)計(jì)思路,運(yùn)用VB.NET 設(shè)計(jì)相應(yīng)的軟件平臺(tái)。根據(jù)實(shí)際使用的情況,設(shè)計(jì)了文件管理、教具介紹、教具模型設(shè)計(jì)以及幫助文檔等功能,能夠在一定程度上滿足部分教具的設(shè)計(jì)與實(shí)現(xiàn),但是還存在許多問(wèn)題,例如復(fù)雜的模型設(shè)計(jì)還無(wú)法實(shí)現(xiàn)等。在后續(xù)的研究中,會(huì)繼續(xù)完善。