李昌平,饒建華,胡俊林
LI Chang-ping, RAO Jian-hua, HU Jun-lin
(中國(guó)地質(zhì)大學(xué)(武漢)機(jī)械與電子信息學(xué)院,武漢 430074)
近年來(lái),潛孔鉆頭由于鉆孔深、鉆孔直徑大、鉆孔效率高、適應(yīng)范圍廣等特點(diǎn),除廣泛應(yīng)用于工程建筑、礦物勘探、露天礦山開(kāi)采、國(guó)防建設(shè)等領(lǐng)域外,還擴(kuò)展到地?zé)峋⒂吞锞?、煤層氣開(kāi)采等領(lǐng)域[1]。潛孔鉆頭根據(jù)地層、巖石特性的不同,其端面的形狀、吹洗孔、排粉槽等特征都不相同。潛孔鉆頭種類繁多,設(shè)計(jì)工作量大,傳統(tǒng)的人工和通用CAD軟件對(duì)潛孔鉆頭存在設(shè)計(jì)效率低、歷史產(chǎn)品設(shè)計(jì)信息管理應(yīng)用不足等缺點(diǎn)。
潛孔鉆頭采用氣動(dòng)潛孔鉆進(jìn)技術(shù)和氣舉反循環(huán)鉆進(jìn)技術(shù),受力狀態(tài)極其復(fù)雜,設(shè)計(jì)難度大,對(duì)潛孔鉆頭歷史產(chǎn)品設(shè)計(jì)的特征信息具有較強(qiáng)的依賴性。近年來(lái),我國(guó)的潛孔鉆具工業(yè)取得了長(zhǎng)足的發(fā)展,但和國(guó)際上著名生產(chǎn)廠商如Atlas Copco公司的產(chǎn)品相比,國(guó)產(chǎn)潛孔鉆頭設(shè)計(jì)主要是仿制,存在著技術(shù)性能指標(biāo)和質(zhì)量指標(biāo)偏低,可靠性和使用壽命不穩(wěn)定,結(jié)構(gòu)設(shè)計(jì)欠佳,產(chǎn)品種類及品種規(guī)格偏少等一系列不足之處[2]。
針對(duì)存在的這些問(wèn)題,首先分析了用在不同巖層潛孔鉆頭重要結(jié)構(gòu)特征,同時(shí)鑒于實(shí)際應(yīng)用中潛孔鉆頭工作巖層復(fù)雜,種類繁多,設(shè)計(jì)工作量大、效率低等特點(diǎn),利用VB.NET開(kāi)發(fā)一套潛孔鉆頭SolidWorks三維參數(shù)化設(shè)計(jì)二次開(kāi)發(fā)系統(tǒng),該系統(tǒng)可實(shí)現(xiàn)對(duì)潛孔鉆頭進(jìn)行參數(shù)化設(shè)計(jì),提高了設(shè)計(jì)效率;可與Access數(shù)據(jù)庫(kù)進(jìn)行連接,將潛孔鉆頭歷史產(chǎn)品設(shè)計(jì)的特征信息保存在數(shù)據(jù)庫(kù)中等功能。
如圖1所示潛孔鉆頭端面為平面型,常用的潛孔鉆頭端面有四種,即中心凹陷型、凹面型、平面型、凸面型[2],它們分別作用在堅(jiān)硬程度不同的巖層以及對(duì)鉆孔直線度要求不同的場(chǎng)合。國(guó)外近幾年還出現(xiàn)了新型端面結(jié)構(gòu)即火箭型鉆頭。平面型潛孔鉆頭通常沒(méi)有排粉槽,適用于非常堅(jiān)硬的巖層以及對(duì)鉆孔的直線度要求不高的場(chǎng)合。
圖1 平面型潛孔鉆頭結(jié)構(gòu)圖
圖1中潛孔鉆頭齒孔用來(lái)鑲嵌硬質(zhì)合金齒;該潛孔鉆頭有兩個(gè)吹洗孔,與中心孔相連,通過(guò)反循環(huán)系統(tǒng)結(jié)構(gòu),巖屑將從吹洗孔吸入,經(jīng)過(guò)中心孔,鉆桿中心通道排至地面;潛孔鉆頭外側(cè)裙邊部位鑲上平頂?shù)挠步饘傩K,提高鉆頭的耐磨性;鉆頭周邊上銑了一些小缺口,從而減少鉆頭與孔壁的接觸面積,減少摩擦,防止卡鉆;鉆頭與沖擊器之間采用花鍵聯(lián)接,優(yōu)點(diǎn)是傳遞的扭矩大、受力均勻、磨損小、壽命長(zhǎng),因此潛孔鉆頭具有特征復(fù)雜等特點(diǎn)。
潛孔鉆頭吹洗孔的數(shù)目、端面排粉槽、齒孔、中心孔的形狀和尺寸等特征在不同的鉆頭上是有標(biāo)準(zhǔn)的,但也可以組合于任何鉆頭上,使其更適合特殊鉆進(jìn)條件下的應(yīng)用。同時(shí)潛孔鉆頭型號(hào)種類很多,故需一套二次開(kāi)發(fā)軟件對(duì)潛孔鉆頭進(jìn)行參數(shù)化設(shè)計(jì),并對(duì)尺寸特征進(jìn)行管理,提高設(shè)計(jì)效率。
潛孔鉆頭二次開(kāi)發(fā)系統(tǒng)應(yīng)用了三種開(kāi)發(fā)平臺(tái):Visual Studio2010、Access、SolidWorks。Visual Studio主要用在該系統(tǒng)開(kāi)發(fā)中,開(kāi)發(fā)用戶操作界面所用到的控件以及圍繞控件所做出特定的響應(yīng)都通過(guò)此軟件。Access數(shù)據(jù)庫(kù)主要對(duì)鉆頭的型號(hào)、系列、尺寸等特征信息進(jìn)行存儲(chǔ)管理,Access通過(guò)ADO技術(shù)實(shí)現(xiàn)與Solidworks的連接,通過(guò)datagrid控件實(shí)現(xiàn)顯示、修改尺寸數(shù)據(jù)等操作,實(shí)現(xiàn)對(duì)數(shù)據(jù)的方便管理。Solidworks主要對(duì)鉆頭的三維模型進(jìn)行展示,將預(yù)覽的模型進(jìn)行保存,并通過(guò)API接口實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的連接,將修改或新增后的鉆頭的尺寸特征映射到三維模型上,實(shí)現(xiàn)對(duì)三維模型的參數(shù)化設(shè)計(jì)。此外系統(tǒng)還具有尺寸示意圖預(yù)覽、尺寸合法性檢驗(yàn)、型號(hào)編輯等功能,系統(tǒng)框架結(jié)構(gòu)如圖2所示。
2.2.1 Visual Studio與SolidWorks之間的連接
圖2 系統(tǒng)結(jié)構(gòu)圖
該二次開(kāi)發(fā)系統(tǒng)以插件的形式與SolidWorks運(yùn)行在同一進(jìn)程空間,菜單、工具欄及屬性控制頁(yè)都可以用插件在SolidWorks中實(shí)現(xiàn),通過(guò)Visual Studio編程后生成的插件可實(shí)現(xiàn)與SolidWorks的連接。
此二次系統(tǒng)的開(kāi)發(fā)采用使用簡(jiǎn)單的面向?qū)ο蟮腣B.NET語(yǔ)言。創(chuàng)建插件前需安裝軟件整合的插件程序API SDK[3],用來(lái)建立SolidWorks插件向?qū)С绦颍惭b成功后將在Visual Studio的項(xiàng)目類型列表中出現(xiàn)SwVBAddin項(xiàng)目類型。然后運(yùn)用VB.NET創(chuàng)建潛孔鉆頭二次開(kāi)發(fā)系統(tǒng)插件應(yīng)用程序,并添加類型庫(kù)。最后應(yīng)用編譯成功后,將bin文件中生成的插件加載到SolidWorks中,則成功實(shí)現(xiàn)了Visual Studio2010與SolidWorks兩硬件平臺(tái)的連接。二次開(kāi)發(fā)系統(tǒng)插件加載到SolidWorks后初始化界面如圖3所示,菜單欄上將出現(xiàn)“鉆頭開(kāi)發(fā)”選項(xiàng)。
圖3 初始化界面圖
2.2.2 數(shù)據(jù)庫(kù)的建立與連接
在實(shí)現(xiàn)SolidWorks與Aceess連接之前,需創(chuàng)建數(shù)據(jù)表,將父類潛孔鉆頭的型號(hào)尺寸等特征信息錄入到數(shù)據(jù)庫(kù)中。以某企業(yè)使用較多的qz系列,型號(hào)包括:qz080101、qz080201、qz060101、qz040203、qz040202、qz070201、qz070101、qz080101;zq系列,型號(hào)包括:zq13105648、zq13105647的潛孔鉆頭為父類,對(duì)于新增或修改的新型號(hào)的潛孔鉆頭,可在父類特征的基礎(chǔ)上進(jìn)行參數(shù)化設(shè)計(jì),進(jìn)而提高設(shè)計(jì)效率。數(shù)據(jù)庫(kù)中每個(gè)表具體內(nèi)容及功能如表1所示。
表1 Access數(shù)據(jù)庫(kù)表及功能
為了實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的連接,VB.NET提供了大量強(qiáng)大而實(shí)用的工具[4]。與數(shù)據(jù)庫(kù)的連接主要依靠數(shù)據(jù)對(duì)象ADO.NET,在軟件實(shí)現(xiàn)與Access之間的連接需要經(jīng)過(guò)三步,即數(shù)據(jù)連接:本程序使用的數(shù)據(jù)源是Access數(shù)據(jù)庫(kù),因此使用的數(shù)據(jù)連接對(duì)象為OleDbConnection;數(shù)據(jù)適配:功能是負(fù)責(zé)維護(hù)與數(shù)據(jù)源的連接,根據(jù)數(shù)據(jù)源的類型,本系統(tǒng)用到的數(shù)據(jù)適配對(duì)象為OleDbDataAdapter;數(shù)據(jù)集:有了數(shù)據(jù)適配器后, 就可以使用數(shù)據(jù)適配器生成相應(yīng)的數(shù)據(jù)集(DataSet),它由數(shù)據(jù)庫(kù)及關(guān)系構(gòu)成,代表了一個(gè)數(shù)據(jù)“緩存”,即在程序中為數(shù)據(jù)分配內(nèi)存空間,它在程序中模仿了關(guān)系數(shù)據(jù)庫(kù)結(jié)構(gòu)。本程序?yàn)橹付ǖ臄?shù)據(jù)結(jié)構(gòu)維護(hù)提供兩個(gè)對(duì)象:一個(gè)是后臺(tái)對(duì)象dataset,用戶不可見(jiàn);另一個(gè)是界面對(duì)象datagrid。
2.2.3 SolidWorks API對(duì)象接口
API是由一組接口組成[5],這些接口被組織為接口對(duì)象模型,它包含了SolidWorks中使用到的類。
API接口功能強(qiáng)大,例如本二次開(kāi)發(fā)系統(tǒng)實(shí)現(xiàn)三維模型預(yù)覽時(shí),使用API了中SldWorks.OpenDoc6 ( filename, type, options, configuration,&Errors, &Warnings )函數(shù)。
參數(shù)化設(shè)計(jì)的潛孔鉆頭尺寸特征與datagrid列表數(shù)據(jù)一一映射,可以用程序?qū)崿F(xiàn):
即SolidWorks通過(guò)API對(duì)象接口,讀取Access中父類潛孔鉆頭的尺寸特征后,與datagrid控件中的尺寸數(shù)據(jù)對(duì)比,如果不同,則對(duì)相對(duì)應(yīng)的特征進(jìn)行修改。但最終實(shí)現(xiàn)鉆頭特征的參數(shù)化修改還需在SolidWorks中添加驅(qū)動(dòng)方程,即對(duì)每個(gè)尺寸特征編輯或添加一個(gè)驅(qū)動(dòng)方程,界面如圖4所示,利用該驅(qū)動(dòng)方程命令,用戶可以在不同尺寸之間或者尺寸和自定義屬性之間建立一種關(guān)系。
圖4 編輯和添加驅(qū)動(dòng)方程界面
為了使操作界面更簡(jiǎn)潔,程序系統(tǒng)選擇使用單窗口,根據(jù)需實(shí)現(xiàn)的功能,最終設(shè)計(jì)的系統(tǒng)操作界面如圖5所示。
圖5 二次開(kāi)發(fā)系統(tǒng)操作界面
該二次開(kāi)發(fā)系統(tǒng)的模塊劃分圖以及操作流程圖分別如圖6,圖7所示。
圖6 系統(tǒng)模塊劃分圖
圖7 系統(tǒng)操作流程圖
從圖5~圖7可知系統(tǒng)操作界面部分包括:
加載數(shù)據(jù)GroupBox:主要功能是找出數(shù)據(jù)庫(kù)存放路徑以及將數(shù)據(jù)庫(kù)中的特征參數(shù)加載到下拉菜單中。加載響應(yīng)使用自定義的加載函數(shù)loading()實(shí)現(xiàn)此功能。
模型文件夾GroupBox:主要功能是找出潛孔鉆頭父類文件及示意圖所存放文件夾的路徑。
型號(hào)選取GroupBox:主要功能是確定所需預(yù)覽或修改的鉆頭的系列、型號(hào)、尺寸類型等,為后續(xù)的操作做準(zhǔn)備。當(dāng)型號(hào)選擇完畢后,用datagr_show()函數(shù)將對(duì)應(yīng)型號(hào)潛孔鉆頭的參數(shù)顯示在datagrid控件上。
文件另存GroupBox:它的主要功能是保存經(jīng)過(guò)參數(shù)化設(shè)計(jì)后的三維模型,并顯示保存路徑,用戶既可將當(dāng)前文件以原文件名保存為solidworks文件,也可在新的位置以新的文件名進(jìn)行保存。
編輯型號(hào)GroupBox:主要作用是新增、刪除、修改型號(hào)以及對(duì)修改后的尺寸特征進(jìn)行還原。新增型號(hào)響應(yīng)函數(shù)通過(guò)自定義的函數(shù)add()實(shí)現(xiàn)。修改型號(hào)響應(yīng)函數(shù)通過(guò)自定義函數(shù)renew_()實(shí)現(xiàn)。以新增型號(hào)為例,單擊“新增型號(hào)”按鈕后,程序彈出一個(gè)對(duì)話框,如圖8所示,要求用戶輸入新增鉆頭的型號(hào)。待用戶輸入型號(hào)后,單擊“確定”按鈕,程序彈出另一個(gè)對(duì)話框,如圖9所示,要求用戶輸入新增鉆頭的父類零件名稱,用戶輸入父類零件名稱后后,單擊“確定”按鈕,然后系統(tǒng)將自動(dòng)彈出對(duì)話框提示用戶已經(jīng)將映射表置為當(dāng)前型號(hào)的對(duì)應(yīng)值,點(diǎn)擊確定后即可完成新增型號(hào)的添加過(guò)程。新型號(hào)的尺寸特征信息以及父類名稱、所屬系列等信息將自動(dòng)保存到Access數(shù)據(jù)庫(kù)中。
圖8 輸入新型號(hào)
圖9 輸入新型號(hào)
數(shù)據(jù)顯示組件:數(shù)據(jù)顯示控件datagrid主要功能是對(duì)特定型號(hào)的潛孔鉆頭的尺寸信息進(jìn)行顯示,此控件有5列,即“索引”列、“名稱”列、“數(shù)值”列、“最大值”列、“最小值”列,同時(shí)檢驗(yàn)尺寸合法性按鈕可檢驗(yàn)尺寸是否在尺寸范圍之內(nèi)。
二維、三維圖預(yù)覽組件:主要功能是利用顯示控件PictureBox對(duì)二維尺寸示意圖進(jìn)行瀏覽;對(duì)修改后的鉆頭三維圖進(jìn)行預(yù)覽。如圖10為尺寸示意圖預(yù)覽組件,三個(gè)示意圖在外部庫(kù)文件中以型號(hào)命名,并以主、俯、左視圖分別命名為型號(hào)名1、型號(hào)名2、型號(hào)名3,尺寸示意圖中的標(biāo)號(hào)不是指尺寸的大小而是尺寸名編號(hào)。如圖11為將潛孔鉆頭中dim1的值從294mm改為300mm后進(jìn)行預(yù)覽的三維圖。
圖10 尺寸示意圖預(yù)覽
圖11 參數(shù)化修改后的鉆頭
潛孔鉆頭在礦山開(kāi)采等很多領(lǐng)域有著廣泛的應(yīng)用,本文分析了不同巖層潛孔鉆頭的重要結(jié)構(gòu)特征,對(duì)潛孔鉆頭設(shè)計(jì)提供了指導(dǎo)。潛孔鉆頭二次開(kāi)發(fā)系統(tǒng)利用VB.NET語(yǔ)言進(jìn)行開(kāi)發(fā),以插件的形式在SolidWorks中運(yùn)行,通過(guò)API對(duì)象接口實(shí)現(xiàn)與SolidWorks的連接,實(shí)現(xiàn)了潛孔鉆頭參數(shù)化設(shè)計(jì)的功能,提高了設(shè)計(jì)效率。系統(tǒng)將歷史產(chǎn)品設(shè)計(jì)信息保存在Access數(shù)據(jù)庫(kù)中,通過(guò)ADO技術(shù)實(shí)現(xiàn)與Aceess數(shù)據(jù)庫(kù)的連接,能方便對(duì)多種類型的潛孔鉆頭的尺寸特征進(jìn)行管理。
[1]胡銘,董鑫業(yè).中高風(fēng)壓潛孔鑿巖鉆頭[A].第十四屆全國(guó)釬鋼釬具年會(huì),2008.
[2]胡銘,董鑫業(yè).Sandvik公司潛孔鉆具產(chǎn)品類型[A].2011全國(guó)釬鋼釬具會(huì)議,2011.
[3]葉修梓,陳超祥.SolidWorks高級(jí)教程:二次開(kāi)發(fā)與API[M].北京:機(jī)械工業(yè)出版社,2009.
[4]邵謙謙.精通Visual Basic.NET 2003數(shù)據(jù)庫(kù)開(kāi)發(fā)[M].北京:清華大學(xué)出版社,2003.
[5]朱傳敏,王寶海.基于Solidworks的齒輪變速箱個(gè)性化設(shè)計(jì)系統(tǒng)[J].制造業(yè)自動(dòng)化,2005.