• 
    

    
    

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

      基于VB的電機沖片CAD圖形的二次開發(fā)

      2011-07-20 03:59:06蔣麗萍
      微特電機 2011年11期
      關(guān)鍵詞:沖片端點圓弧

      楊 亞,蔣麗萍,王 健

      (中國電子科技集團公司第二十一研究所,上海200233)

      0 引 言

      電機作為生產(chǎn)工業(yè)的“發(fā)動機”,目前發(fā)展十分迅猛,競爭非常激烈,在激烈的競爭環(huán)境中必須不斷地提高競爭力和生產(chǎn)能力以適應(yīng)電機多品種、短周期的生產(chǎn)特點。沖片是電機的關(guān)鍵零件,在特種電機研制開發(fā)中,電機沖片的繪制往往比較復(fù)雜,傳統(tǒng)的沖片設(shè)計往往是通過在CAD系統(tǒng)中進行手工繪制,繪制過程比較繁瑣,需要進行上百次的修改、裁剪、刪除等命令來實現(xiàn),非常費時。一旦某個參數(shù)需要調(diào)整,則整個沖片的設(shè)計需要重新進行。待電機設(shè)計完成后準(zhǔn)備進行生產(chǎn)時,一般首輪小批量研制沖片的加工是通過線切割來實現(xiàn),線切割編程時也需要對沖片的槽形進行建模,此處也需要對槽形進行繪制。待產(chǎn)品進行較大批量的生產(chǎn),沖片的加工主要是通過單沖后進行落料或是直接通過復(fù)沖來完成。單沖模或復(fù)沖模的槽形與沖片槽形相仿,由于沖模設(shè)計需要考慮沖裁間隙,其槽形尺寸與沖片零件尺寸并不相同,仍需要重新設(shè)計。在電機的整個研發(fā)生產(chǎn)過程中需要多次繪制沖片槽形圖,非常耗時,效率不高。勢必需要引入新的設(shè)計方式來解決此類問題,以提高設(shè)計和生產(chǎn)效率。沖片的參數(shù)化設(shè)計應(yīng)運而生。

      通過使用 Visual Basic 6.0(以下簡稱 VB)對AutoCAD 2008進行二次開發(fā),把常用的系列化的沖片進行參數(shù)化編程,可使沖片圖形的繪制時間由原先的10 min以上,縮減到1 min以內(nèi),大大提高了設(shè)計和生產(chǎn)效率。在提高效率的同時,也增加了繪圖的精準(zhǔn)性,只要輸入正確的參數(shù)就可以得到1∶1的dwg格式的沖片圖,可以直接為設(shè)計和加工所用,極大提高設(shè)計開發(fā)的效率。同時把完成設(shè)計的沖片參數(shù)保存的相應(yīng)數(shù)據(jù)庫中,為后續(xù)產(chǎn)品的設(shè)計提供參考或借用,可進一步提高設(shè)計效率,節(jié)約成本,促進沖片的標(biāo)準(zhǔn)化設(shè)計。

      1 參數(shù)化沖片設(shè)計程序的實現(xiàn)

      1.1 VB與AutoCAD的連接

      本程序采用VB調(diào)用AutoCAD來建立參數(shù)化設(shè)計系統(tǒng),首先要解決的是實現(xiàn)VB和AutoCAD的連接。VB應(yīng)用程序與AutoCAD的連接ActiveX Automation技術(shù)應(yīng)用的第一步。ActiveX Automation是一個建立在COM(Component Object Model)對象模型之上的標(biāo)準(zhǔn)通信開放協(xié)議,允許對象間通過一定的接口相互通訊。通過ActiveX Automation一個程序操縱另外一個應(yīng)用程序中現(xiàn)實的對象,并且該對象具有它原有的屬性和方法。ActiveX Automation由客戶程序和服務(wù)器組成,服務(wù)器方實現(xiàn)客戶方發(fā)出的請求。只要服務(wù)器程序提供一定的接口,客戶程序就可以通過標(biāo)準(zhǔn)接口訪問,使任何服務(wù)器程序?qū)ο髮崿F(xiàn)自動化。這里可以理解為AutoCAD為服務(wù)器程序。我們所要編制的程序是客戶端程序,它們之間通過ActiveX Automation建立連接,并操縱AutoCAD實現(xiàn)自動化繪圖。

      首先在VB主菜單上點擊【工程】然后選擇【引用】,在彈出的對話框中找到“AutoCAD 2008 Type Library”在其前面的方框中打鉤,并進行確定。然后在VB中建立公共模塊LinkCAD,以便在整個VB工程中都可以對此模塊進行調(diào)用。主要程序如下:

      1.2 圖形的處理流程

      對于一個繪制完整的二維工程圖形,除了一些基本的結(jié)構(gòu)線、輔助線外,還需要設(shè)計不同線條的圖層、標(biāo)注、文字說明等。所以在程序的開發(fā)過程中需要利用ActiveX Automation技術(shù)對圖形的圖層、文字、標(biāo)注等進行處理,具體流程如圖1所示。

      圖1 圖形處理流程圖

      1.3 圖形處理的程序?qū)崿F(xiàn)

      參數(shù)化設(shè)計圖形的實現(xiàn)都是依靠程序代碼來實現(xiàn),在VB調(diào)用AutoCAD進行參數(shù)化繪圖的過程中,最常見的是設(shè)置圖形的各種線條和圖層。在線型上,沖片圖形的設(shè)計主要用到的是線段、圓和圓弧的繪制。下面主要對線段、圓和圓弧的實現(xiàn)方法進行說明。

      1.3.1 線段繪制的程序?qū)崿F(xiàn)

      線段只需要兩個端點就可以確定,所以只要確定兩個點的坐標(biāo)就可以確定一條直線了。首先定義要繪制線段的兩個端點分別為PointO(0~2)和PointO1(0~2)以及一個線段的對象LineObjOO1,然后調(diào)用AutoCAD的接口函數(shù)Set LineObjOO1=acadApp.ActiveDocument.ModelSpace.AddLine(PointO,PointO1),將兩個端點的坐標(biāo)代入到對應(yīng)的AddLine(PointO,PointO1)中即可完成線段的繪制。

      1.3.2 圓的繪制的程序?qū)崿F(xiàn)

      確定一個圓的圖形只需要原點坐標(biāo)和半徑即可繪制出圓。首先定義要繪制圓的圓心點為PointO(0~2)和一個圓的對象 CrlObjDos,然后調(diào)用 Auto-CAD的接口函數(shù)Set CrlObjDos=acadApp.Active-Document.ModelSpace.AddCircle(PointO,Rad),將圓心的坐標(biāo)和圓的半徑值代入到對應(yīng)的AddCircle(PointO,Rad)中即可完成圓的繪制。

      1.3.3 圓弧繪制的程序?qū)崿F(xiàn)

      確定一個圓弧的圖形需要圓弧圓心坐標(biāo)、圓弧的半徑、圓弧的兩個端點的坐標(biāo)。首先定義要繪制的圓弧的圓心點為PointO(0~2)、圓弧的兩個端點PointA(0~2)和PointB(0~2)以及要繪制的圓弧的對象 acadArc,通過 AutoCAD內(nèi)建函數(shù) Angle-FromXAxis(PointO,PointB)將 PointO(0~2)、PointA(0~2)和PointO(0~2)、PointB(0~2)分別代入該函數(shù),則可得到∠AOX和∠BOX的角度(弧度),然后調(diào)用AutoCAD的接口函數(shù)Set arcObjAOB=acadApp. ActiveDocument. ModelSpace. AddArc(PointO,Rad,angleFrAOX,angleFrBOX),將圓心的坐標(biāo)和圓弧半徑值和上面求得的∠AOX、∠BOX代入到對應(yīng)的AddArc(PointO,Rad,angleFrAOX,angleFrBOX)中即可完成圓弧AOB的繪制(如圖2所示)。

      圖2 圓弧繪制圖

      1.4 沖片圖形參數(shù)化實現(xiàn)

      基于電機沖片類型的不同,其計算方式有很大不同,需要根據(jù)不同類型的沖片劃分程序模塊。電機設(shè)計常用的8種類型槽形沖片如圖3所示。下面將以圓底槽轉(zhuǎn)子沖片圖形的參數(shù)化的實現(xiàn)過程為例進行闡述。

      圖3 槽形圖

      1.4.1 半槽形的繪制

      已知量槽數(shù) N、槽口寬度 B0、沖片外徑 Dos、齒寬BZ、小節(jié)圓直徑 Dxj、大節(jié)圓直徑 Ddj、槽口高度H0、沖片內(nèi)徑Dis,如圖4所示。通過已知參數(shù)可求出a點坐標(biāo)、b點坐標(biāo)、c點坐標(biāo)、d點坐標(biāo)、e點坐標(biāo)、f點坐標(biāo)和O1點坐標(biāo)。并求出作圓弧所需的各線與原點的角度即線段、圓弧和圓的方法制作出半個槽形。具體算法如下:

      ao線相對于X軸的夾角∠AOX的計算:

      a點坐標(biāo)計算:

      在求得∠AOX的角度后通過AutoCAD內(nèi)建的PolarPoint函數(shù)可以求得a點坐標(biāo):PointA=acadA-pp.ActiveDocument.Utility.PolarPoint(PointO,AngleAOX,Dos/2)

      b點坐標(biāo)計算:

      c點坐標(biāo)計算:

      d點坐標(biāo)計算:

      如圖5所示,欲求d點坐標(biāo),先求出O2點坐標(biāo),參照a點坐標(biāo)計算方法可以得到 O2點坐標(biāo):PointO2。然后建立一個原點為O2,X軸和Y軸分別平行于絕對坐標(biāo)系的X軸和Y軸的坐標(biāo)系,在此相對坐標(biāo)系中求出d點坐標(biāo)。

      PointDd=acadApp.ActiveDocument.Utility.PolarPoint(PointO2,AngleAOX,Bz/2),此處的夾角與∠AOX大小相等。最后把d點坐標(biāo)換算到絕對坐標(biāo)中的到d點的X、Y坐標(biāo)分別:

      e點坐標(biāo)計算:

      齒底圓O1半徑r:

      然后參照d點坐標(biāo)計算方法可求出e點相對于O1坐標(biāo)系的坐標(biāo):

      PointEe=acadApp.ActiveDocument.Utility.PolarPoint(PointO1,AngleAOX+π,r),最后可以得到 e點坐標(biāo):

      待完成 a、b、c、d、e、f六個點的坐標(biāo)值的計算后,分別進行線段和圓弧的繪制,即可完成半個槽形的繪制,即 a、b、c、d、e、f所圍成的半個槽形圖如圖6所示。

      圖6 半槽形圖

      1.4.2 鏡像方法

      基于上述半個槽形繪制完成后,只要對此半邊槽形進行鏡像處理就可以完成一個完整槽形的繪制,這里ActiveX Automation為我們提供了針對圓弧和線段對象進行鏡像方法Mirror(PointO1,PointO),這里PointO1和PointO是鏡像中心線上的任意兩點的坐標(biāo)。通過此方法分別對AOB弧、bc線段、cd線段、de線段和eO1f弧進行鏡像,就可以完成一個槽形的繪制。

      1.4.3 旋轉(zhuǎn)陣列方法

      客戶端程序通過ActiveX Automation接口程序控制AutoCAD 2008自動繪制一個完整的沖片圖,可直接為設(shè)計所用。其它7類沖片可依據(jù)類似方法實現(xiàn)沖片的參數(shù)化設(shè)計,此處不做累述。

      1.4.4 界面設(shè)計

      為增加程序界面的友好性,采用單頁面進行設(shè)計。采用選項卡控件(SSTab)來實現(xiàn),把每一種槽形布置在選項卡的每一個標(biāo)簽中,節(jié)約頁面資源,同時選項卡的標(biāo)簽可以根據(jù)需求增減,為后續(xù)程序的開發(fā)提供較好的擴展空間?;诓坌纬叽巛^復(fù)雜,且有相對位置關(guān)系,在必要參數(shù)的左側(cè)以Image控件顯示每一類槽形的示意圖及示意標(biāo)注,可最大限度的指導(dǎo)程序使用者的使用。具體使用方法以圓底槽為例,如圖7所示。按照示意圖的示意標(biāo)注在右側(cè)的參數(shù)欄中輸入需要繪制沖片的相關(guān)參數(shù),點擊【生成沖片圖】按鈕,既可在AutoCAD 2008的環(huán)境中生成指定參數(shù)的沖片圖,如圖8所示。待設(shè)計參數(shù)確定后,只要點擊【存入數(shù)據(jù)庫】按鈕即可將設(shè)計完成的沖片參數(shù)存入指定數(shù)據(jù)庫。其它類型沖片與此類似。

      2 結(jié) 語

      對于沖片等較復(fù)雜、使用頻繁且成系列化的零件,采用傳統(tǒng)的手工繪制容易出錯,繪制速度較慢,而采用參數(shù)化的尺寸驅(qū)動方式,繪圖時間大大節(jié)省,降低錯誤發(fā)生,大大提高了電機設(shè)計、模具設(shè)計、估計工分、線切割加工人員的工作效率和質(zhì)量,降低動強度。同時可將此種方法推廣到電機設(shè)計其它零件中,如槽楔、非標(biāo)的波紋墊圈等。本文介紹了沖片輔助設(shè)計的開發(fā)思想,在此基礎(chǔ)上還可以進行補充完善,以增強軟件的功能,提高實用性。

      [1] 張樹兵.Visual Basic 6.0中文版入門與提高[M].北京:清華大學(xué)出版社,1999.

      [2] 蘇金明.用Visual Basic開發(fā)交互式CAD系統(tǒng)[M].北京:電子工業(yè)出版社,2002.

      [3] 張晉西.Visual Basic與AutoCAD二次開發(fā)[M].北京:清華大學(xué)出版社,2002.

      [4] 徐 源,荊冰彬,賀利樂,等.AutoCAD2000二次開發(fā)技術(shù)[M].北京:人民交通出版社,2001.

      猜你喜歡
      沖片端點圓弧
      非特征端點條件下PM函數(shù)的迭代根
      淺析圓弧段高大模板支撐體系設(shè)計與應(yīng)用
      中、小型電機沖片生產(chǎn)中接料機構(gòu)的選擇應(yīng)用
      異步電動機定子沖片槽型優(yōu)化
      防爆電機(2021年1期)2021-03-29 03:02:46
      外圓弧面銑削刀具
      不等式求解過程中端點的確定
      參數(shù)型Marcinkiewicz積分算子及其交換子的加權(quán)端點估計
      交直流電機整圓定轉(zhuǎn)子沖片沖槽模設(shè)計
      基丁能雖匹配延拓法LMD端點效應(yīng)處理
      數(shù)控車削圓弧螺紋程序編制與加工
      永胜县| 乌拉特中旗| 山丹县| 阿图什市| 富裕县| 锡林郭勒盟| 永州市| 白河县| 山阴县| 西平县| 织金县| 喜德县| 保山市| 泾川县| 柯坪县| 绥宁县| 独山县| 永善县| 六安市| 克山县| 岳普湖县| 施甸县| 吴桥县| 扶绥县| 广宁县| 茶陵县| 柘城县| 长乐市| 深泽县| 宁乡县| 阆中市| 拜泉县| 靖安县| 陕西省| 安福县| 黑山县| 江川县| 海南省| 新野县| 静海县| 万年县|