當前位置:首頁 > 工業(yè)控制 > 《機電信息》
[導讀]摘要:介紹了如何通過使用solidworks的屬性標簽與VBA接口,快速實現文件屬性的填寫和BOM的導出,避免設計過程中出現重復性的煩瑣工作,提升設計效率。

引言

Solidworks軟件是世界上第一個基于windows開發(fā)的三維CAD系統(tǒng),其操作非常符合windows用戶的習慣,因此新手入門上手比較容易。使用該軟件可以大大縮短設計時間,將產品快速投向市場,目前市面上做非標設計的工程師大多用的都是該軟件。同時,為實現數據共享,solidworks提供了VBA、VB.NET、C#等OLE的開發(fā)語言接口,極大地方便了軟件使用。

在企業(yè)日常使用過程中,模板制作、文檔屬性和標準件管理都是企業(yè)標準化和信息化的重要環(huán)節(jié)。solidworks文檔的屬性作為模型的附屬信息,是后續(xù)信息化的基礎信息。屬性可用于鏈接到工程圖以及輸出BOM等。同時,solidworks也提供了屬性標簽編制的工具程序,可利用它來生成模型的自定義屬性界面,在界面中能方便地進行模型的屬性修改等操作。

文獻闡述了一種進行solidworks文檔屬性及BOM定制的方法,可以提高日常工作效率與防出錯。但屬性編輯一般是手動填寫,BOM輸出也需手動處理或借助第三方插件完成,很多工作都是重復和煩瑣的。如果借助于VBA腳本按特定的規(guī)則進行文件屬性的填寫,同時通過遍歷模型特征樹及讀取屬性信息,快速生成BOM文件,就可避免很多設計過程中的重復性工作。

1文件屬性填寫VBA的實現

為了使VBA腳本能按特定的規(guī)則進行文件屬性的自動填寫,需要規(guī)范信息的輸入與輸出。本文的屬性名稱列表包括:項目、組件、名稱、規(guī)格、版本、外形尺寸、材料、單重、表面處理、類別、單機數量、設計、備注。

文獻闡述了如何用軟件自帶的屬性標簽編制程序來生成solidworks文件的自定義屬性界面,屬性標簽界面的內容與文件的屬性內容是一致的。材料和單重屬性可以是固定文字表達式,其他屬性則通過VBA填寫,同時也可以在執(zhí)行腳本后在自定義屬性界面手動修改。

考慮到在一個項目的設計過程中,一些如項目名稱、設計者等的屬性基本不變,可將信息存于xm1文件中,在整個項目期間僅進行一次寫入,其間直接讀取這些內容即可。對于一些特定材質的零件的表面處理,也可以設置默認的處理方式。屬性填寫的界面如圖1所示,xm1文件格式內容如圖2所示。

圖1屬性填寫界面

xm1文件讀取與寫入的部分腳本如下:

setxm1doc=CreateObject("Microsoft.xMLDOM")!創(chuàng)建xm1doc對象

xm1doc.Load(PathName)!加載xm1文件

ProjectName=xm1doc.getE1ementsByTagName("項目名稱").1tem(0).Text!讀取xm1節(jié)點

xm1doc.getE1ementsByTagName("項目名稱").1tem(0).Text=ProjectName!設置xm1節(jié)點

圖2xmI文件格式內容

在電子文檔存檔的同時,模型文件名字也可以作為輸入信息來源,零件名稱、規(guī)格圖號及種類等可以根據文件名字來進行判斷。solidworks電子文件存檔要求如下:所有3D模型文件分三類一自制件(包含零件和裝配件)、外購件(需要外購的電機、氣缸等及非標定制件等)和標準件(主要為緊固件,如螺釘、平墊、彈墊等)。

自制件命名:圖號+空格(半角)+名稱。

外購件命名:型號+空格+名稱+(品牌),空格和括號均為半角符號,如"R32x80s雙軸氣缸(亞德客)":沒有品牌的,名稱后面可空缺。

標準件命名:從邁迪或too1box等其他3D庫導入且以GB開頭的件,名字保持不變:非GB開頭的件,按外購件處理。

文獻介紹了如何利用VBA宏來自動分離零件文件名中的代號與名稱。本文通過讀取模型文件名字,并以半角符號的空格作為標志提取,可以得到零件名稱和規(guī)格圖號,實現功能的部分腳本如下:

'PartTit1e=圖號+空格+名稱

spacePos=Instr(PartTit1e,"")'獲取分隔標識符(空格)的位置

PartNumber=Left(PartTit1e,spacePos-l)'獲取圖號/規(guī)格

PartName=Mid(PartTit1e,l+spacePos,Len(PartTit1e)-spacePos-7)'獲取名稱

由于自制件的圖號是以公司項目代號開頭,與外購件這些型號可以區(qū)分開來,而標準件則是以GB開頭,因此可以憑此區(qū)分類別。

文獻提出了通過VBA腳本批量處理原有的solidworks模型屬性的思路和方法。

在裝配體下執(zhí)行腳本,可以對特征樹里面的每個部件和零件進行遍歷設置屬性,一次完成所有填寫,通過遞歸調用部件屬性設置函數,實現的部分腳本如下:

PrivatesubMysetComponentsProp(swMode1Doc2,ParentPartNo)

Components=swMode1Doc2.GetComponents(True)

ForEachswComponentInComponents'遍歷頂層子部件

setswComMode1Doc2=swComponent.GetMode1Doc2()

swConfigName=swComponent.ReferencedConfiguration

ret=setFi1eProperty(swComMode1Doc2,swConfigName,ParentPartNo)

IfswComMode1Doc2.GetType=swDocAssEMBLYThenCa11

MysetComponentsProp(swComMode1Doc2,ParentPartNo)'遞歸調用

Next

Endsub

屬性腳本執(zhí)行前的情況如圖3所示,屬性腳本執(zhí)行后的情況如圖4所示,所有屬性信息按預先設置自動填寫完成,如需修改,可在屬性標簽頁直接修改相應內容。

文獻講述了如何使用solidworks軟件創(chuàng)建模型與工程圖鏈接,來實現工程圖標題欄中相關內容的自動生成。因此,模型屬性可以自動鏈接到工程圖圖框中,如圖5所示,避免人為出錯。

2BOM清單輸出VBA的實現

縱觀整個B0M清單,除了零部件層次,其余信息可以直接從文件屬性中讀取,實現的部分腳本如下:

PrivatesubGetFi1eProperty(swMode1Doc2,configname)'獲取文件屬性

setcusPropMgr=swMode1Doc2.GetConfigurationByName(configname).

CustomPropertyManager

1RetVa1=cusPropMgr.Get2(B0M(3),Va10ut,Reso1vedVa10ut(3))'名稱

1RetVa1=cusPropMgr.Get2(B0M(4),Va10ut,Resolvedvalout(4))‘規(guī)格/圖號

零部件層次信息則從最頂層裝配體開始,遍歷特征樹即可獲取相關信息,實現的部分腳本如下:

PrivatesubMyGetComponents(Components)‘獲取裝配體頂層子部件

ForEachswComponentInComponents‘遍歷頂層子部件

If(False=swComponent.ExcludeFromBOM)ThensetswModelDoc2=swComponent.GetModel

Doc2()

CallGetFileProperty(swModelDoc2,swComponent.ReferencedConfiguration)

EndIf

Next

Endsub

最終生成的BOM清單如圖6所示。

3結語

本文結合solidworks模板的建立、定制屬性標簽界面、規(guī)范模型的命名、默認設置的xml儲存以及VBA宏程序等技術,實現了Solidworks模型文件屬性的一鍵快速填寫和B0M文件的快速生成,避免了設計過程中的重復性工作,大大提高了設計文件的編制效率,同時為企業(yè)的標準化和信息化夯實了基礎。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據媒體報道,騰訊和網易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數據產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數據產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數字經濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯合牽頭組建的NVI技術創(chuàng)新聯盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現場 NVI技術創(chuàng)新聯...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉