在上篇 LTspice 系列文章中,我們分享了如何利用ISO模型進行電源線瞬態電傳導干擾測試,本文將介紹使用 .func 命令中的指定常數以有效運行仿真并進行參數分析的方法。更多參數分析的內容,可查閱《活學活用LTspice進行電路設計 — 用 .step 命令更改參數》
關于參數分析
在 LTspice 中可以使用 ".step param " 命令來改變仿真時的多個參數,可通過以下設置輪流運行四個模擬仿真:
step param A list A1 A2
step param B list B1 B2
Step 1; A1 B1
Step 2; A1 B2
Step 3; A2 B1
Step 4; A2 B2
使用 .step 參數運行仿真
嘗試使用 .step param 命令模擬一個實際的 RC 電路。如下圖 (圖1) 所示,將電阻 (RES) 設置為 10k 20k,電容 (CAP) 為 1u 3u,創建一個 RC 電路進行仿真。
圖1 使用 .step 參數命令的 RC 電路
如上圖 (圖1) 中的電路,使用設置了兩種電阻模式和電容模式進行模擬,其仿真結果如下圖 (圖2) 所示,可以看到,在 2x2 模式下總共得到了 4 種不同結果:
圖2 使用 .step 參數的 RC 電路仿真結果
如果想得到如下表 (表1) 中兩種特定組合的仿真結果,需要在僅使用 .step param 命令下運行四次仿真,并只能在必要條件下提取結果。由于這是一個 RC 電路,仿真時間短,所以不必擔心運行四次的耗時。但如果考慮包含多個開關穩壓器的電路,運行四次不同的仿真會花費較長的時間,這時需要考慮如何只運行兩個條件。如果有模擬數組模式或可以任意選擇要運行的參數命令,那么就可以只選擇特定條件并運行模擬。
表1 模擬條件
使用 .func 命令運行仿真
目前還沒有任何命令或函數能夠真正運行仿真數組模式或成對選擇多個參數的函數,然而可以通過編寫和使用 .func 命令來運行仿真,如下圖 (圖3) 所示,可以只選擇上表 (表1) 中的兩個條件進行模擬。
圖3 使用 .func 的參數分析電路
接下來為大家介紹電路圖中描述的 SPICE 命令。在 .func 命令中可自定義函數,這里的函數被命名為 “box”。首先需要輸入元素編號 “x” 作為第一個參數,然后根據需要設置參數 (這里有兩個參數:P0 和 P1)。
在該函數中使用了 “buf” 函數。“buf" 函數的內容為:如果圓括號有效,它返回 "True",如果無效,它返回 "FALSE"。當它為 “True” 時返回 “1”,當它是 “FALSE” 時返回 “0”,因此該函數是乘以參數后相加。如果增加 “x”,那么與 "x" 對應的參數就會被選中,而未選擇的參數將被刪除,其公式為:.func box(x, p0, p1) {buf(x==0)*p0+buf(x==1)*p1}。
關于如何選擇參數,需要在 “.param” 中指定要使用的變量,并根據 “.func” 中定義的函數輸入要輸入的值。需要注意,box () 開頭的是 “. func“ 中定義的參數,所以一定要輸入它,公式為:param RES=box(x, 10k, 20k);param CAP=box(x, 1u, 3u)。接下來使用 “.step 參數” 來增加 “x”。在這種情況下 “x” 被選為 “0” 和 “1”,但最終將以 "x "為參數的指定值被輸入參數,公式為:.step param x list 0 1。最后當運行包含這些命令的電路圖并只對表1中指定的兩個條件進行輸出時,得到的結果如下圖 (圖4) 所示:
圖4 使用 .func 命令的仿真結果
總結
本文介紹了利用 .func 命令運行仿真的方法,并展示了通過設置函數以進行參數分析的過程。
-
仿真
+關注
關注
50文章
4108瀏覽量
133779 -
命令
+關注
關注
5文章
691瀏覽量
22063 -
RC電路
+關注
關注
2文章
163瀏覽量
30300 -
傳導干擾
+關注
關注
1文章
34瀏覽量
12821 -
LTspice
+關注
關注
1文章
117瀏覽量
13433
原文標題:活學活用 LTspice 進行電路設計 — 指定 .func 命令的常數運行仿真并進行參數分析
文章出處:【微信號:駿龍電子,微信公眾號:駿龍電子】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論