如何使用OpticStudio中的動態CAD鏈接 ( Dynamic CAD Link )
概要
這篇文章講解了:
- 如何在OpticStudio中打開或動態編輯SolidWorks?,Autodesk Inventor?以及PTC Creo Parametric?零件。
http://customers.zemax.com/ZMXLLC/media/Knowledge-Base/Attachments/11011_DynamicLink.zip
簡介
照明設計,因其複雜建模無法用數學公式直接表達的特性,推進了光線追跡軟體的發展。大多數軟體允許使用者進行基本形狀(例如球體、立方體等)或普通設計(例如非球面、CPC等)的簡單建模,一旦所需物體無法通過簡單的物體結合來構建,在軟體中就難以實現建模,尤其是需要使用參數來控制物體形狀的情況下。此時,即使使用CAD文件(IGS、STP、SAT或其他格式)進行文件轉換,也無法達到所需要的靈活性。
但在旗艦版的OpticStudio中,可以在非序列模式下打開SolidWorks、Autodesk Inventor以及PTC Creo Parametric的零件文件。這些原生CAD零件可以很便捷地通過相應的非序列模式物體,結合至非序列元件編輯器內:圖1. 動態鏈接至CAD零件的非序列物體
任何明確定義了尺寸的物體都可以在非序列元件編輯器中顯示其尺寸且被參數化控制。更重要的是,這類零件如同其他任意OpticStudio中的物體一樣,可分配膜層或散射屬性、模擬黑體發射器、複製構成矩陣等。於是,光學及照明工程師可以使用同一文件與機械工程師進行合作,而不需要進行繁瑣的文件轉換。下面內容將以SolidWorks為例,詳細介紹動態CAD功能是如何工作的。安裝CAD軟體
若想使用OpticStudio中的動態CAD功能,第一要求就是安裝好合適的CAD軟體:
- 需要安裝SolidWorks? 2017*,以使用動態鏈接SolidWorks零件文件 (*.SLDPRT) 的「CAD Part:SolidWorks」物體。
- 需要安裝Autodesk Inventor? 2018*,以使用動態連接Autodesk Inventor零件文件 ( *.IPT) 的「CAD Part: Autodesk Inventor」物體。
- 需要安裝PTC Creo Parametric? 4.0*,以使用動態連接Creo Parametric零件文件 ( *.PRT ) 的「CAD Part: Creo Parametric」物體。
請注意,OpticStudio技術支持團隊將不提供SolidWorks、Autodesk以及Creo的安裝幫助及技術支持。無論是使用CAD Part: Creo Parametric物體還是CAD Part: SolidWorks物體,相應的程序都應該在載入零件至OpticStudio之前打開,並在OpticStudio運行期間保持打開狀態,此舉可以確保OpticStudio與CAD軟體之間通信保持時刻暢通。不同的是,使用CAD Part: Autodesk Inventor物體時,不需要在OpticStudio載入零件前打開Autodesk Inventor。此時OpticStudio將自動在後台打開Autodesk Inventor,程序不出現在用戶的顯示器範圍內,但可以通過任務管理器查詢到該進程。應保持該軟體在OpticStudio運行時一直運行,以確保OpticStudio與Autodesk Inventor之間的通訊保持時刻暢通。上述所有的情況內,保持OpticStudio與CAD軟體之間的穩定通訊是在OpticStudio中修改零件物體的先決條件。
SolidWorks示例
下述示例使用了SolidWorks零件文件,該零件文件來自於CAD發布網站GrabCAD。下一步我們要把下圖中的檯燈參數化建模至OpticStudio中:
圖2. GrabCAD中的展示檯燈渲染圖
此*.SLDPRT文件可以通過GrabCAD網站進行下載:https://grabcad.com/library/schone-1當文件下載好後,可在SolidWorks內進行探索。通過FeatureManager Design Tree我們可以了解到構建這個檯燈模型的特徵和尺寸:
圖3. SolidWorks中的檯燈特徵
點擊FeatureManager Design Tree內的特徵選項,可以在窗口內查看其相關尺寸。下圖所展示的是構建Sketch 1所使用的尺寸:
圖4. 檯燈尺寸
檯燈的尺寸在下方列出以作為參考:- D1 =100 mm
- D2 = 10 mm
- D3 = 70 degrees
- D4 = 125 mm
- D5 = 50 mm
- D6 = 120 mm
- D7 = 70 degrees
一旦該*.SLDPRT文件在OpticStudio中打開,Sketch 1內的尺寸即可在非序列元件編輯器內獲取及修改。OpticStudio將默認使用Dx@Sketch1來標註這些尺寸,其中的x是代表Sketch 1中各類尺寸的整數。同樣的,Revolve 2的尺寸(唯一尺寸為360度)將被標記為D1@Revolve2。
需要注意的是,這些特徵和尺寸的名稱都可以在SolidWorks內進行修改,使得我們可以在OpticStudio中更直觀的查看與修改參數。可通過右鍵點擊FeatureManager Design Tree中的特徵名稱,並在菜單中選擇「Feature Properties」來實現此操作。圖5. 右鍵點擊Sketch 1
圖6. Sketch 1的特徵屬性
同樣也可在Sketch 1上完成尺寸命名設定。在Design Tree內選擇Sketch 1,如之前圖示。右鍵點擊布局圖中的一個尺寸,在右鍵菜單中選擇「Configure Dimension」選項,再右鍵點擊單元格名字(如下方示例中的D4)來對尺寸進行重命名。
圖7. 右鍵點擊SolidWorks布局圖中的D4 ( 125 mm )
圖8. 右鍵點擊D4單元格進行重命名
上述方法只作為演示,我們仍在此示例中使用默認的特徵和尺寸名稱。下一步,保存並關閉*.SLDPRT文件,SolidWorks在後台保持打開和運行。圖9. SolidWorks保持打開,但不打開任何零件
OpticStudio動態CAD鏈接
為了在OpticStudio中打開此SolidWorks零件,*.SLDPRT文件必須存放在恰當的Zemax用戶數據文件夾下。在用戶數據文件夾<…DocumentsemaxObjects>下有三個分別的文件夾用於存放SolidWorks、Autodesk Inventor以及PTC Creo Parametric文件,如下圖所示:
圖10. 存放PTC Creo Parametric、Autodesk Inventor以及SolidWorks文件的Zemax用戶數據文件夾
在OpticStudio中可以對這些文件夾位置進行用戶化設置,位於Setup tab > Project Preferences > Folders:
圖11. 在OpticStudio內的Project Preferences中設置用戶數據文件夾
一旦*.SLDPRT文件保存至「SolidWorks Files」文件夾,即可使用OpticStudio中的非序列元件編輯器打開此文件。實際操作為:建立新的非序列系統,在非序列元件編輯器中展開Object Properties菜單,並在Type下拉菜單內選擇「CAD Part: SolidWorks?」作為物體類型:圖12. 在非序列元件編輯器內選擇CAD Part: SolidWorks
選擇使用的*.SLDPRT文件:圖13. 選擇Lamp.SLDPRT
點擊OK按鈕,再打開NSC Shaded Model來查看該零件。該元件與在SolidWorks內看到的一模一樣。圖14. NSC Shaded Model內的Lamp.SLDPRT
在此示例中,SolidWorks零件文件的單位與OpticStudio中默認的鏡頭單位一樣為毫米。當打開Autodesk Inventor、PTC Creo Parametric或SolidWorks文件的時候,OpticStudio將自動確定其單位是否與當前鏡頭單位設置匹配。若單位之間不匹配,將發出警告。為了避免潛在的困惑和錯誤,強烈建議用戶將OpticStudio內的鏡頭單位與CAD軟體內的系統單位設為一致。 在OpticStudio中,可為CAD物體設置光學屬性,例如膜層、材料以及散射函數。與此同時,零件的尺寸可以選擇在非序列元件編輯器的參數欄下被直接顯示。打開Object Properties的CAD 設置,可以看到*.SLDPRT文件內的Smart Dimensions和結構 ( Configurations ) 定義列表。SolidWorks中的可結構化功能 ( Configuration Capability ) 與OpticStudio中的多重結構功能 ( Multiple Configuration Capability ) 十分相似。該功能允許用戶給一個文件中的同一零件定義多種不同的形態。在SolidWorks與OpticStudio內的功能可以通過SWCN這一多重結構操作數鏈接起來,用於控制SolidWorks中的Configuration設置。 默認的,零件的尺寸不會在非序列元件編輯器中的參數欄內顯示,但可以在Part Dimension Name組合框內點擊Expose按鈕,將尺寸顯示。需要注意的是,對於Inventor和Creo零件而言也可以使用同樣的方法將尺寸展示出來。圖15. 非序列元件編輯器內的CAD設置
在此示例內,點擊Expose All按鈕,使得所有的尺寸都可以在非序列元件編輯器內動態地修改。
圖16. 在非序列元件編輯器中展示CAD零件尺寸
可嘗試修改其中的幾個參數,更新NSC Shaded Model以查看這些改變。可參考之前圖4內SolidWorks布局圖中的尺寸標註。圖17. 在OpticStudio中修改Sketch 1的尺寸。將D2從10 mm改為15 mm,D7從70度改為80度。
儲存修改好的文件
在OpticStudio對CAD物體做出的任何改動都可用物體原有文件格式保存起來。在此示例中,我們可以將修改後的零件文件以*.SLDPRT的格式保存。對於Inventor與Creo物體則使用*.IPT或*.PRT文件保存。實際操作為:在非序列元件編輯器的工具欄內,找到CAD工具並展開,在展開菜單內選擇「Save Modified Part」:
圖18. 非序列元件編輯器工具欄內的CAD工具
可將修改後的物體保存為新的文件,或使用同樣的文件命名用以覆蓋原有的CAD物體。需要注意的是,將物體作為新CAD文件保存時不會自動替換OpticStudio中當前使用的CAD文件。如果需要更換當前使用的CAD文件,返回Object Properties下的Type設置內,在Data File下拉菜單內選擇新創建的CAD文件即可。
除此之外,修改後的零件尺寸或是OpticStudio中設置的光學屬性(例如膜層或材料)也可在原生的CAD文件中被保存下來。參考之前的圖18以及「Save CAD Assembly/Part Properties」選項。在SolidWorks之中,光學屬性將被保存至File > Properties菜單內的Configuration Specific選項卡下。在Autodesk Inventor之中,光學屬性將被保存至iProperties對話框的Custom選項卡下。在PTC Creo Parametric之中,光學屬性將被保存為Annotations Notes,可在零件或裝配體的Model Tree下找到(只要Model Tree Filters 菜單下的Display Annotation被勾選)。在Autodesk Inventor和SolidWorks中,光學屬性的名稱以「OpticStudio」開頭。但在Creo Parametric中Annotations Note將以字母「Z」開頭(此時完整的屬性在Note的內容中展示,而不在Note的命名中展示)。
在CAD軟體中這些存儲信息對軟體本身而言是沒有意義的,僅可作為參考。然而,當這一文件後續被讀取進其他OpticStudio設計中時,OpticStudio可以讀取這些屬性信息,並給新的OpticStudio設計物體分配光學屬性。 下圖展示了OpticStudio中的修改過後的SolidWorks零件。此SolidWorks零件含有MIRROR材料,且散射配置文件被分配至檯燈的內表面。點光源被列陣至檯燈內部,用來模擬放置白光LED,並用一個Detector Color來顯示True Color的照度分布 ( Irradiance Distribution ) 。圖19. 當SolidWorks零件的一些表面被配置了光學屬性之後,在NSC Shaded Model內的Detector Color上可展示光線追跡數據
總結
動態CAD鏈接功能可將SolidWorks *.SLDPRT文件、Autodesk Inventor *.IPT文件以及PTC Creo Parametric *.PRT文件整合進OpticStudio的非序列光學系統內。OpticStudio與軟體間的動態鏈接可以參數化修改這些零件的尺寸,比靜態的CAD交換文件更加實用。並且,此功能使得光學工程師和機械工程師之間的合作不再需要來迴轉換文檔,極大地提高了合作效率。
推薦閱讀:
※使用Python創建AutoCAD DXF文檔
※流暢的運行 Rhino,CAD,分析軟體,等建築設計電腦配置?台式機。謝謝
※CAD2Excel:繪製表格與Excel表格相互轉換
※直接轉換打開的AutoCAD內的地形
※那些你知道,或是不知道的AutoCAD小秘密-002
TAG:AutoCAD |