基于SolidWorks二次開發(fā)的自動建模技術與方法

2013-08-05  by:廣州Solidworks培訓中心  來源:仿真在線

基于SolidWorks二次開發(fā)的自動建模技術與方法

 

1 引言

    SolidWorks軟件是基于Windows開發(fā)的三維CAD系統(tǒng),經過十幾年的發(fā)展現(xiàn)在已經成為了一套包括CAD/CAE/CAM/PDM的桌面集成系統(tǒng)。在強大的設計功能和易學易用的操作協(xié)同下,SolidWorks設計是可編輯的,零件設計、裝配設計和工程圖之間的是傘相關的。但SolidWorks建模過程中,零件二維草圖無法類似AutoCAD那樣能將圖形從一張圖紙復制到另外一張圖紙,也無法類似proe可以將草圖直接導出建模,致使工程師們對于開發(fā)同一系列化產品時需要做許多重復的工作,進而延長了產品開發(fā)周期。怎樣實現(xiàn)產品公共零件模型系列化的建證?這也成為企業(yè)技術部門需要考慮的問題。

 

2 SolidWorks軟件自動化建模技術

    基于SolidWorks平臺二次開發(fā)的自動建模技術主要涉及技術有SolidWorks參數驅動技術、基于SolidWorks 的ActiveX Automation技術、數據庫和數據庫訪問技術。 

3 ActiveX Automation技術

    SolidWorks API是基于ActiveX Automation技術的編程接口,它是基于COM和OLE的技術標準。ActiveX是OLE在網絡上的擴展,它是一組可擴充應用程序協(xié)議,使SolidWorks應用程序之間能夠通過數據嵌入或鏈接的方式來共享尺寸參數數據。其宗旨是在Windows系統(tǒng)的統(tǒng)一管理下,來協(xié)調并且控制不同設備上的SolidWorks應用程序的相互通信問題。符合標準的SolidWorks程序會把其內置的對象體系結構顯露出來,從而通過改變其對象的屬性就可以實現(xiàn)跨越程序操作的設想。基于該原理,可以將含有嵌入或者鏈接文檔數據的應用程序稱為容器程序,提供文檔數據編輯的應用程序則稱為服務程序。對于基于SolidWorks的二次開發(fā)就可以將SolidWorks理解為一個服務程序(Server),而二次開發(fā)手段開發(fā)出來的程序為客戶程序(Client)。用戶只要在客戶程序上進行操作,客戶程序將驅動SolidWorks完成相關的工作。

4 SolidWorks API對象層次結構

    為了方便用戶進行二次開發(fā),SolidWorks提供了幾百個API函數,用戶可以使用Visual Basic、VBA、Visual C++、C#、Delphi等高級編程語言對SolidWorks進行二次開發(fā),建立適合用戶需要的、專用的SolidWorks功能模塊。同時,由于SolidWorks API及其有關幫助文檔都包括在SolidWorks軟件中,任何用戶都可以對其進行二次開發(fā)。不管是采用Visual Basic、VBA、Visual C++還是Delphi對SolidWorks進行二次開發(fā),都是通過SolidWorks的對象體系結構來進行的。這種基于ActiveX Automation技術的SolidWorks API將各種功能封裝在SolidWorks對象之中供編程調用。顯示了SolidWorks API中各個對象相互關系,可以利用這張表的關系進行參考編程。 

5 基于ADO的參數數據庫訪問技術

    SolidWorks以VB為開發(fā)平臺支持三種數據訪問技術,即數據訪問對象DAO技術、遠程數據對象RDO技術和ActiveX數據對象ADO技術。其中ADO技術是通過ADO對象的屬性、方法來完成相應的數據庫訪問?;赩B的ADO數據控件是ActiveX外部控件,它的用途及外形都和Data控件相似,但它是通過Microsoft ActiveX數據對象(ADO)來建立對數據源的連接,凡是符合OLEDB規(guī)范的數據源都能連接,而ADO能訪問的數據庫有ODBC、Access、SQL Server、Oracle等,VB直接支持的數據庫是Access。同時ADO數據控件可以通過修改屬性來實現(xiàn)對數據源的連接。創(chuàng)建連接時,可以采用下列連接方式之一:一個連接字符串,一個OLEDB文件(MDL)。一個Access數據源名稱。ADO訪問技術實現(xiàn)SolidWorks尺寸參數數據庫訪問模型。

通過使用ADO數據控件和DataGrid數據網格控件連接由Access創(chuàng)建的尺寸參數數據庫文件,并能濕示數據表,連接DataGrid數據網格控件用戶可以很方便地選取一組尺寸參數數據或者通過點擊ADO數據控件來選取設計參數。ADO對象模型定義了一個可編程的分層對象集合,主要由三個對象成員Connection、Command和RecordSet對象,以及幾個集合對象Errors、Parameters和Fields等所組成。只需要修改屬性窗口,更改控件的數據連接參數就能完成數據連接與數據訪問,無須更改控件的任何其他屬性。這些參數設置被隱藏在VB中,用戶無需再對其增加代碼。ADO處理數據庫的步驟:


    (1)創(chuàng)建數據庫連接對象;

    (2)使用連接對象打開數據庫;

    (3)操作數據庫;

    (4)關閉數據庫。

 

6 參數化尺寸驅動技術

    SolidWorks系統(tǒng)開發(fā)的核心是圖形的處理。目前廣泛使用的圖形處理方法有編碼法、參數化尺寸驅動法和基于工程數據庫建立圖形庫。參數化繪圖,就是將圖形的尺寸與一定的設計條件(或約束條件)相關聯(lián),將圖形的尺寸看成是“設計條件”的函數,當設計條件發(fā)生變化時,圖形尺寸便會隨之得到相應更新。建立的尺寸參數庫中參數傳遞圖。

 

7 自動建模技術應用實例

    本文采用的實例模型為固定球閥10-1500的閥座。閥座自動建模方法實現(xiàn)的具體步驟:

    (1)建立尺寸參數庫數據表

    利用Access數據庫軟件提供的創(chuàng)建數據表向導的功能,創(chuàng)建Access尺寸參數數據表。

    (2)設計閥座參數化設計對話框界面

    運用VB開發(fā)平臺提供的控件創(chuàng)建設計界面??紤]到程序的存在形式既可以是以可執(zhí)行程序(*.EXE)形式獨立存在,也可以是通過VB環(huán)境創(chuàng)建ActiveX DLL文件,同時也能創(chuàng)建自定義菜單和SolidWorks工具條和工具條命令按鈕,根據建立好的DLL生成SolidWorks插件,方便用戶操作。

(3)編寫基于VB的閥座自動建模對話框代碼


    在用VB編寫閥座參數化設計對話框的程序代碼過程中,SolidWorks API接口函數中的參數采用尺寸參數代替尺寸數據的方式,結合SolidWorks API對象的層次結構關系,并利用SolidWorks平臺的尺寸參數驅動技術。


    例如:Part.CreateLine20,(D1-D4)/2,0,B1-B2,(D1-D4),2,0,繪制直線就必須用到CreateLine2對象,它的隸屬關系如Sldworks.Modeldoc2.Create_Line2,只有當前面兩個對象都定義了才能成功地調用CreateLine2對象,另外還必須設定該對象的六位參數,它是直線的起點和終點空間位置坐標,最終實現(xiàn)繪制直線的功能。其他代碼可以參考SolidWorks API的幫助文檔所提供的函數說明來編寫。

    (4)設置ADO和DataGrid數據訪問控件

    ADO數據庫訪問設置可以借助屬性窗口來創(chuàng)建Connection對象。要創(chuàng)建連接,需要選擇該控件,并打開其屬性對話框,從ConnectionString屬性的設置中選擇“新建連接”選項。然后在彈出的“數據鏈接屬性”對話框中,選擇提供程序和設置服務器名稱,數據庫名稱、登錄賬戶和密碼等信息后測試連接是否正確,單擊確定完成ConnectionString屬性的設置,也就完成了ADO對象的創(chuàng)建。

    (5)程序運行

    程序運行時,首先鏈接Access和程序界面的ADO控件和文本框,通過數據的傳輸為變量賦值。然后在內部自動執(zhí)行編譯好的程序,即可實現(xiàn)模型的建立和更新。值得注意的是,零件模型的空間放置情形應盡量與其實際的情形相一致,以便于后續(xù)對零件的裝配。選取參數,運行程序。

    SolidWorks建模會采用自動約束和捕捉功能,能有效地幫助用戶完成實體模型的繪制,但是它們會干涉程序自動建模,需要關閉這種自動約束和自動捕捉功能,特別是關閉水平和垂直方向的捕捉功能。在實例中這種自動建模技術采用參數驅動方式生成模型,以設計參數建模比具體設計數據來驅動尺寸建模的方式速度要快。


開放分享:優(yōu)質有限元技術文章,助你自學成才

相關標簽搜索:基于SolidWorks二次開發(fā)的自動建模技術與方法 基于SolidWorks二次開發(fā)的自動建模技術與方法 SolidWorks培訓課程 SolidWorks設計教程 SolidWorks視頻教程 SolidWorks軟件下載 SolidWorks在建筑室內設計工業(yè)設計的應用 SolidWorks基礎知識 SolidWorks代做 Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓 Abaqus培訓 

編輯
在線報名:
  • 客服在線請直接聯(lián)系我們的客服,您也可以通過下面的方式進行在線報名,我們會及時給您回復電話,謝謝!
驗證碼

全國服務熱線

1358-032-9919

廣州公司:
廣州市環(huán)市中路306號金鷹大廈3800
電話:13580329919
          135-8032-9919
培訓QQ咨詢:點擊咨詢 點擊咨詢
項目QQ咨詢:點擊咨詢
email:kf@1cae.com