理想的流程是透過AEDT的優化引擎Optimetrics自動調整電感結構參數,檢查L/Q值直到找到符合設計目標的電感尺寸為止。要達到此目標,首先就是要讓結構可以參數化,然而這一點並不是那麼容易。AEDT的3D編輯環境可以做到一定程度的結構參數化,但僅限於簡單幾何操作,如平移、旋轉,張角等等。螺旋電感的結構過於複雜,無法用簡單的操作來達到參數化。要完成複雜結構參數化必須要借助UDP(User Defined Primitives)的技術。UDP的目的是讓使用著透過編程建立複雜3D結構。UDP的相關說明可參考HFSS Scripting Guide第三章。
(圖一)HFSS內建UDP範例 |
UDP基於物件的框架,開發者必須具備物件導向設計(OOP)的概念。繼承IUDPExtension類別,並必須實作類別當中的函式,使其可以相容AEDT。各位可以在HFSS當中開啟一個螺旋電感的UDP範例,如圖一。該範例的Python程式碼RectangularSpiral.py可以在C:\Program Files\AnsysEM\AnsysEM20.2\Win64\syslib\UserDefinedPrimitives\Examples\找到。要開發UDP比較簡單的做法是複製該檔案並修改當中的函式。要注意UDP當中能呼叫的函式與一般使用的Scripting函式不同。我們可以在HFSS Scripting Guide的UDPFunctionLibrary找到UDP函數的完整說明。 以下是其中幾個:
(圖二) UDP函式列表 |
這裡是以螺旋電感為例,但UDP使用並不侷限於螺旋電感。UDP產生的模型可以合併其他參數化模塊生成參數化的3D Component。
沒有留言:
張貼留言