# LTspice MacOS Tutorial LTspice 在 MacOS 上面可以安裝也可以跑 但介面還有某些 dot commadns 跑出來的樣子跟 Windows 版本差很多 所以寫了這個 tutorial 協助使用 MacOS 的同學操作 LTspice 這是一個不太專業的 tutorial 基本上只介紹作業會用到的功能 其他東西沒有研究就先沒 cover 了(而且「作業」只有徐碩鴻教授的電子學 其他班要求的不保證全部 cover🥵) 另外 我的寫法、用詞可能也不太專業🤦🏼♀️ 請大家見諒 如果發現邏輯有 bug 的話歡迎留 comment 跟其他讀者說明~ ## 安裝 到[這個網站](https://www.analog.com/en/design-center/design-tools-and-calculators/ltspice-simulator.html)找到 "download for MacOS" 的選項 點一下就會下載一個 .pkg 檔  點開 .pkg 檔會跳出 installer 就一直按 continue 還有 agree 最後要 install 的時候輸個密碼就裝好了  裝完會自己跳出把 installer 刪掉的指示 按一下直接幫你刪除 就算安裝完成~ ## 檔案 * Documents 裡面會有一個 LTspice 的資料夾 沒有特別指定的話檔案會存在那邊 * 從另外一個資料夾開啟檔案的話 檔案就會改存到那邊 * 要按 cmd + s 才會存檔 不會自動儲存 * 存檔的副檔名是 .asc 點開來就是電路圖的樣子 可以繼續操作 * 執行的時候會跑出幾個檔案(一個 .log,一個 .net,一個 .op.raw,一個 .raw)他們都會在關掉執行畫面後消失  ## 介面&工具 剛打開會問你要如何開始 創新檔案就選 "Start a new, blank Schematic"  然後就會跳到一個簡潔到像裝了一個半成品的畫面:上面的功能鍵只剩下三個 背景也沒有 Windows 版的圖騰 **不用擔心 等下直接在這個畫面拉出你的電路圖 所有東西都用快捷鍵操作就好了~**  ### 設定格點 畫電路的時候比較好對齊:secondary click > View > Grid Dots   ### zoom in / zoom out & drag 就是一般 zoom in zoom out 的手勢 游標是箭頭的情況下按著拉動就可以 drag 整個 canva ### wire fn + F3 * 會跑出十字 中心點就是要畫下去的點 * secondary click 可以斷開 形成一個 mesh 也會自動斷開 * ⚠️左邊的交叉相當於 wire 直接跨過去 像右邊那樣有小方塊才代表有形成一個 node * **how:** 在碰到 wire 的時候點一下斷開 再按一次從那邊接著畫  ### delete fn + F5 游標變成一個剪刀 可以把碰到的元件或者那段 wire 刪除 ### move fn + F7 游標變成一個手套 按著可以選取要移動的元件 放開後他們會跟著游標移動 移到定點後點一下即可放置 ### undo / redo cmd + Z / cmd + shift + Z ### label net 給那個 node 取名字 1. 游標移到要命名的 node 上 secondary click 一下 然後選 label net  2. 輸入那個 node 的名稱  3. input / output 另有圖示 點一下 port type 旁的選單會看到  4. 完成後長這樣  ## componenets 按 fn + F2 可叫出元件總覽  有些常用的元件有快捷鍵 |C|D|G|L|R|V |---|---|---|---|---|--- |capacitor|diode|ground|inductor|resistor|voltage source 常用但要從總覽點的元件主要就是 BJT 跟 MOSFET 一般 BJT 選 npn  MOSFET 選 nmos4(中間自己幫他接地)  ### rotate & mirror cmd + R / ctrl + R / opt + R 都可 rotate 用 R,mirror(鏡像)用 E ### 設定名稱 1. 游標移到名稱(default: R1, C1...)上方 2. 游標變成輸入模式後 secondary click 3. 跳出以下對話框即可改變名稱  ### RLC 參數 有兩種設定方式 #### 第一種 1. 游標移到數值(default: R, L, C)上方 2. 游標變成輸入模式後 secondary click 3. 跳出以下對話框即可設定數值上方  *注意不要和名稱搞混* #### 第二種 1. 游標移到元件上方 2. 游標變成手指後 secondary click 3. 跳出以下對話框可設定進階參數  #### 數量級 prefix |kilo|mega|giga|terra |---|---|---|--- |K / k|MEG / meg|G / g|T / t |10^3|10^6|10^9|10^12 |milli|micro|nano|pico|femto |---|---|---|---|--- |M / m|U / u|N / n|P / p|F / f |10^-3|10^-6|10^-9|10^-12|10^-15 ### voltage source #### DC source 適用:VDD, VCC 這些只有直流的電壓源 1. 游標移到元件上方 2. 游標變成手指後 secondary click 3. 跳出以下對話框設定電壓值  #### small signal 適用:Vin 只要考慮 small signal 的時候 1. 上一個步驟按一下 advance 2. DC Value 設定 0V 3. 下面 Small Signal Parameters 設定 Amplitude = 1, Phase = 0  #### sinusoidal signal 適用:指定 Vin 是 sin 波的時候 1. 一樣按一下 advance 2. DC value 那個選單打開選 SINE(...) 那個 3. offset 設 0,amplitude 跟 freq 依照題目需求設定  #### dependent source 跟 independent source 是不同的元件: |type|VCCS|VCVS|CCCS|CCVS |---|---|---|---|--- |代號|G|E|F|H |圖示|||| 我這學期的作業只有用到 voltage control 的 所以就先只講 voltage control xx source 要怎麼接 基本上就是把 + 和 - 那邊另外接到控制他的 V+ & V- 端 e.g.  secondary click 下方的數值(0.01 那裡,預設為 G 或 E)可以改變 A(倍率)的值 --- 以下幾個參數設定要用到 dot command ".model" 要怎麼生成 dot command 下一個章節有寫 ### diode 參數 #### 語法 .model <diode 型號> D (...) #### 可設定的參數(寫在括號內) |Vfwd |--- |V_D,on e.g.  D1 是這顆 diode 的名字 Diode 是這顆 diode 的「型號」,一個電路裡面型號是 Diode 的 diodes 會 share 一樣的參數 ### BJT 參數 #### 語法 .model <bjt 型號> npn (...) #### 可設定的參數(寫在括號內) |Bf|Vaf|Is |---|---|--- |β(放大倍率)|Va (Early Voltage)|Is(飽和電流) e.g.  Q1 是這顆 BJT 的名字 NPN 是這顆 BJT 的「型號」,概念同 diode 的型號 ### MOSFET 參數 #### 語法 .model <mosfet 型號> nmos (...) #### 可設定的參數(寫在括號內) |level|kp|vt0|lambda| |---|---|---|--- |不同種類 設為 1 就好了|μnCox|V_TH|λ (1/Va) e.g.  M1 是這顆 MOSFET 的名字 NMOS 是這顆 MOSFET 的「型號」,概念同 diode 的型號 #### 除此之外 W & L 的值也可以設定 1. 游標移到元件上方 2. 游標變成手指後 secondary click 3. 跳出以下對話框,L 設為 1u,W 依給定的值輸入(記得數量級也是 u)  ## dot commands 給不同的 commands 可以幫你用不同方式模擬電壓、電流等 ### 怎麼打出來 1. 按一下 s 會跳出這個對話框 記得打一個英文句號 "." 再開始打指令  2. 按 ok 之後找一個看了舒服的地方把那串 dot command 放在那裡  3. 要操作的時候按左上在跑的小人 或者 secondary click 也可以找到他  ### .model 用法參考上面 diode, BJT & MOSFET 的參數設定 ### .op Operating point analysis 就是模擬每個節點的電壓還有流經元件的電流 #### 語法 一個 .op 就好了 後面不用加參數 #### 讀取結果 一開始會跳出空白的視窗 這時候不用擔心 按看起來像「做圖」的那個 icon  這時候會跳出很多選項 可以選擇想模擬出的電壓/電流(可以同時選很多項模擬)  有時候不知道想模擬的 node 叫什麼名字 可以把游標移到他上面 點一下就可以選取 像是下面的例子 我把游標移到桃紅色 x 上點一下 就相當於選擇觀察 N001 節點的電壓  要注意的是游標要變成某些特定造型才可以選取 變成這樣代表有電壓可以模擬  變成這樣代表有電流可以模擬  選取後會自動幫你畫成圖 要讀取數值的話游標移到上面的名稱點一下  會跳出這個小視窗 讀取圈圈裡面的數值即可 作業 LTspice 實作題我是直接貼上這個視窗的截圖  同時觀察很多項的話 一開始線都是藍色很難分辨哪條線屬於哪個變數 可以將游標移到某一個項目 secondary click 一下 就能改變顏色  想模擬出某兩個 node 的電位差也可以直接在選的時候打出來  ### .dc DC analysis 電壓源供應直流電 給一個供應電壓的 range 模擬各處電壓、電流隨電壓源大小的變化 #### 語法 .dc <電壓源名稱> <最低值> <最高值> <每次跳多少> e.g. .dc V1 -5 5 0.01 V1 電壓源從 -5V 到 5V 每次跳 0.01V #### 讀取結果 跟 .op 一樣 可以選要觀測的項目  x 座標是 voltage source 的值 y 座標是該節點電壓/電流隨 voltage source 而改變的值  一樣點一下名稱就可以讀取數值 (這時候 Horz 會有值 對比 .op 時那邊是 -- N/A -- )  按一下鍵盤的向右就可以跳 10mV 因為設定「一次跳 0.01V」 (向左就 -10mV)  有時候因為精確度的關係 LTspice 不會準確地顯示 0 而會顯示一個很小的值 不需要太擔心  要在做圖那邊標上數值的話 在畫面任何地方 secondary click > draw > Cursor Position  標起來像這樣  游標移到數值標示上方 secondary click 一下可以改變他的顯示 (對的 連顯示什麼數值都可以自己設定😀)  ### .ac AC analysis 基本上就是在畫 Bode Plot 會同時畫給你 magnitude 還有 phase (不知道 Bode Plot 是什麼的話 簡單來說就是 magnitude / phase 與frequency 的關係圖;frequency 會取 log,magnitude 會取 20 * log,單位是 dB) #### 語法 .ac **dec** <每個 decade 切多細> <開始的 freq> <截止的 freq> e.g. .ac dec 1000 1 10T 座標設為 decade 顯示法(i.e. 取 log 值) 每一個 decade 裡面再細切成 1000 份,frequency 從 1 Hz 到 10THz #### 讀取結果 跟 .op 一樣 可以選要觀測的項目  x 座標是 frequency (取過 log magnitude 的) 實線是 magnitude 值看左側的 y 座標(已轉換為 dB) 虛線是 phase 值看右側的 y 座標(deg)  一樣點擊名稱可以看到確切數值,magnitude 和 phase 可以同時觀測 在圖上標示數值的話 一次只能標 magnitude 或 phase,取決於右邊藍色點點選到哪個  ### .tran Transient analysis 電壓源輸出隨時間改變的 V(t),模擬各處電壓、電流隨時間的變化 #### 語法 .tran <模擬多長的時間> e.g. .tran 5m 從 0s 觀測到 5ms #### 讀取結果 跟 .op 一樣 可以選要觀測的項目  x 座標是時間 y 座標是觀測到的數值  一樣點一下可以讀取數值  ### .tf Transfer Analysis 分析一個 "amplifier" 的 properties 包括 gain, input impedance 還有 output impedance #### 語法 .tf V(輸出節點) <輸入電壓源> e.g. tf V(Vout) V1 模擬出輸入為 V1 輸出為 Vout 節點的各項 properties #### 讀取結果 跟 .op 一樣 可以選要觀測的項目 只是這次可以觀察的不是電壓或電流 而是三個 properties: gain (transfer function), input impedance, output impedance  做圖結果跟 .op 一樣 沒有 x 座標 就是一個常數(觀測得到的值)   ### .step 前面 .dc 的時候設 voltage source 的電壓值為變數,用 .step 我們可以設更多東西為變數,e.g. 電阻值 模擬各個電壓/電流值隨該變數的變化 #### 語法 .step **param** <變數名> <最小值> <最大值> <一次跳多少> e.g. .step param Rc 350 400 .01 "Rc" 的數值從 350 到 400,每 0.01 模擬一次 #### 前置作業 i.e. 變數怎麼設 在原本應該輸入數值的地方改成 {x} x 是任意變數名稱 記得要有大括號 e.g.  dot command 裡面的 "param" 就在說 <變數名> 是你設的 parameter #### 讀取結果 跟 .op 一樣 可以選要觀測的項目  跟 .dc 的概念差不多 只是 x 軸變成你設的變數   比較好玩的是 因為要多一個「設變數」的動作 執行之後程式要跑的東西變多 會看到有東西一直在跳 不是因為有東西寫錯請放心 :D
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.