2021年3月30日 星期二

Arduino外接電小教室─以WS2812燈環用電為例

 Arduino外接電小教室─以WS2812燈環用電為例

因為國中小老師對電比較不熟悉,因此常會發生板子跳掉、故障燒毀,或者動作不正常等靈異現象,所以要提醒大家使用Arduino的用電問題,我們先來簡單了解一下ARDUINO的用電重點,下面是官網的說明書和部分電路圖,你會發現一些事,讓我把重要的部份說一下:

只要了解這裡的基本用電
所有的微控制板的用電問題都迎刃而解,
不會教的老師其實怕的是這個
  • Arduino每個訊號腳位的輸出能力是20mA
  • 外部輸入的直流電源電壓範圍是7-12V
  • Arduino總用電負荷是500mA(剛好就是USB2.0 Port的輸出能力)
  • Arduino板上的DC外接電經過一個二極體(降壓0.7V)後可在Vin接腳直接取用

另外老師常會遇到的問題:

  • 外接直流供電,不管是3C變壓器、電池盒、行動電源、廢棄電腦電源、車子的12V電池...等,只要安培數大於你的作品需求就能正常使用。
  • 行動電源會有漏電保護的問題,也就是你的輸出電流如果很小,例如只用Arduino本體或接很少的感測器,行動電源會因為電流太小而斷電,然後可能又因為電源需求而供電下,不斷地重開機。

總結:

  • 像馬達、舵機、RGB/2812燈條(1燈以上)、單色LED燈條(3燈以上)...這類的模組,都需要較大的電流量,不應該直接使用訊號端當電源,硬要用的話即使會動,也有可能隨時會掛會當,或撐個幾天才掛。
  • 解決的方法除了程式上輪流或是不要全亮之外,最主要當然就是外接電源,將以上的模組的V/G直接到外接電源或是Vin,當然要注意供電電壓與使用模組是否能承受,例如:你接6V的電池盒,Vin就會有5.3V可用,如果是馬達都沒問題,5V的燈條也不會超出太多,是可以接受的。
  • 外接電的唯一注意事項就是要共地,所以訊號端的迴路要接S/G,供電端的迴路也要接V/G,兩邊的G要接在一起,電壓才不會浮動亂跳。
  • 不要的3C產品變壓器很好用,千萬不要丟掉,5V~12V的變壓器都在Arduino可使用的範圍內。

我用下面的例子來證明與說明你會更加了解:

我在Arduino上用慧手科技的motoblockly寫一個簡單的程式,讓12燈的2812燈環隔兩秒逐一亮起,用測電棒觀察電流的變化:
寫完程式直接燒錄進Arduino

將2812燈環直接接在Arduino板子上D3腳位輸出

直接用主板供電時(感測器擴充板上的V是USB Port進來的5V)
主板供電+亮一個RGB用掉0.08A=80mA

主板供電+亮12個RGB用掉0.42A=420mA
兩個相減=11顆燈的供電=340mA
換算下來,每顆RGB全亮需要31mA左右
所以,如果全亮就耗掉420mA接近500mA的總上限,如果再加個其他的感測器會不會就當了,因此要嘛就是你的程式使用不要全亮或是輪流亮,不然就是要外接電比較妥當!!!

接下來我們使用電池盒外接6V的電,將2812的V/G接到Vin/GND
全亮的狀態下Arduino這邊甚至用不到0.01A,小於10mA
這樣才是穩定的解法!!!電源供電直接來自電池盒,只有訊號來自Arduino

以上,歡迎指教



沒有留言:

張貼留言