[Arduino] Arduino開發板 - 外接LED電壓電流量測
Arduino with LED circuit. |
基本上,每個玩Arduino開發板的人,都碰到爛掉的經典案例,就是"LED Blink" (LED閃爍)。而此一案例也是被Arduino官方給寫進程式範例中。
以上圖來說,整個電路就是由3號pin進行電力輸出,串接經過一個220 Ω的降壓電阻後,電力進入LED,再到接地pin (GND)。
Arduino程式燒錄後,LED燈開始閃爍。結束。
相當基本,好像就這樣而已。少了點樂趣?
那到底LED那裏的電壓跟電流到底怎麼變化?
其實我們是沒看到的,該如何去看到,就是本文的內容了。
若使用三用電表去量測電壓及電流,那可能需要兩支表分別量,或是一支表量兩次。這也是一種測試方式。不過三用電表的反應時間及量測精確度,可能會造成看不到合理數據。
既然前陣子入手了示波器,還有相關的電流急急棒,那就有戲了。
接下來將會使用示波器來量測外接LED的的電壓及電流變化。
這是個好機會,可以看到實際的量測效果。
Arduino與示波器接線圖
Arduino板與LED及降壓電阻的串聯電路,維持不變。
示波器的電壓跟電流探棒偵測點,請參考下圖。其中電壓探棒以紅線表示,藍線表示電壓探棒的GND端,箭頭處表示測點。而電流探棒以黑線表示,圈圈處表示探棒勾住電線的位置。
示波器電壓及電流探棒偵測點示意圖。 |
Arduino code
Arduino板的程式碼如下所示。
示波器量測圖
量測出來的電壓變化大約為1.9 V。提供1.9 V電壓給LED一秒後休息2秒,再重新提供電壓。
電流變化則是15 mA。
結果吻合Arduino code的設定。
示波器量得外接LED的電壓及電流變化。 |
量測數據與規格比較
由於使用的是爛大街的紅光LED,因此手頭上沒有該LED的datasheet。
但可由網路上取得一般對紅光LED的技術描述。
本次測試的數據(1.9 V@15 mA)與LED的I-V curve相比,數據合理。
參考資料:
LEDs - Light 'em, Without Smokein'em!
The Light Emitting Diode
示波器調整建議
以下有一些調整建議,可以使示波器獲得較好的數據。
- 使用[Horiz]選擇Roll模式
- 使用[Acquire]選擇High Res模式
在判別電流值時,示波器的調整扮演了很重要的腳色。以下示範一些沒調整好的狀況。
Acquisition
如果Acquisition沒開High resolution時,電流分布範圍過大,非常難以判別數值。如下圖所示。
電流分布範圍過大(綠色區域),非常難以判別數值。 |
此電流範圍過大問題,勉強可以調整電流顯示檔位,來變更顯示圖面,但仍是不準。
調整電流顯示檔位,來變更顯示圖面,但仍是不準。 |
Roll模式
若在一般模式,會看到波形從左邊到右邊,一路變化過去,看起來好像data漸漸被洗過去。
有的人會覺得,沒差啊,反正只要對好時間,就可以看到變化圖了。
這裡有個小魔鬼。
雖然,確實在螢幕上可以看到正在洗過去的全屏圖,但是示波器所擷取的圖檔,卻只會儲存剛洗過去的那部分,舊的部分會消失。
此時得小心,若想要的data在螢幕上,但你發現左側已經有新的data洗過來了,那麼請用外部相機照相的方式來保留數據圖吧。
只有剛出現的新data會被截取(左半邊),舊data就是一片全黑(右半邊)。 |
感想
這是一個很好的經驗,來同時驗證Arduino設計及示波器量測的基本功。同時,也練習將量測數據與資料進行比對,確認數據可信度。
感謝
感謝好友阿峪提供示波器,讓獻慶有機會來自己做測試,並解決開發上的困擾。
感謝超倍能科技林榮豐董事長鼎力相挺,提供獻慶許多資源與時間去學習示波器,及其相關配件。
GOOD! ^_^
回覆刪除