こんにちは。
NaKaTaFuです。
microbit Advent Calendar 2017 の6日目です。
今日は、micro:bitの電源について確認して行きたいと思います。
所謂 NeoPixel LED、WS2812Bは最大輝度で50mAの電流を消費します。
デバイスの供給電流に制限がある場合は、多数のWS2812Bを使う場合はプログラムで同時点灯数や輝度を調整する必要があります。
micro:bit本体経由でエッジコネクタに電源を供給する場合は、取り出せる電流を良く確認の上、プログラムを工夫(brightnessの調整など)する必要があります。
micro:bitの電源供給についての仕様は、
http://tech.microbit.org/hardware/powersupply/
に記されていますので、これをじっくり読んで、どうすればどれくらいの電流が取り出せるのか、確認してみました。
#電源概要
電源供給方法は大きく3つに大別されます。
- USBポートから供給
- 電源コネクタ(PHコネクタ)から供給
- エッジコネクタから供給
それぞれについて、自分なりにまとめたものを以下に示します。
供給方法 | 供給電圧範囲(V) | 供給電圧(V) | エッジコネクタ供給可能最大電流(mA) |
---|---|---|---|
USBポート(>3.6V) | 5 (3.6~5.5) | 3.3 | 90mA |
USBポート(<3.6V) | (2.7~3.6) | 入力電圧-(0.1~0.2) | 90mA |
PHコネクタ | 3 (1.9~3.6) | 入力電圧-(0.1~0.2) | 供給側制限と3Aの小さいほう |
エッジコネクタ | 3 (1.7~3.6) | 入力電圧 | 供給側制限 |
#USBから供給する場合
USB I/FのKL26が内蔵しているレギュレータを使ってmicro:bit用の3.3Vが生成されます。
逆流防止用のダイオードBAT60を経由して他のデバイスに供給されます。
KL26のレギューレータにかけられる電圧は2.7~5.5Vとなります。供給電圧が3.6V以上の時に供給される電圧は3.3V, それ以下の場合はパススルーモード(ほぼ入力電圧を供給)として動作します。この値からBAT60の電圧降下(0.1~0.2V)を引いた電圧が回路に供給されます。
KL26のレギュレータが供給可能電流の最大値は120mAとなっています。ただし、micro:bitボード上のデバイスで30mAを最大使用するので、エッジコネクタ等から取り出して使用出来るのは最大90mAとなります。
#電源コネクタ(PHコネクタ)から供給
逆流防止用のダイオードBAT60を経由して他のデバイスに供給されますので、供給される電圧は0.1~0.2V電圧降下します。
ボード上のデバイスの動作下限とBAT60の電圧降下を考慮すると、最低電圧は1.9Vとなります。
センサー類の最大電圧が3.6Vですので、3.7V以上を供給するとmicro:bit上のデバイスを壊す可能性があります。
オフィシャルサイトには、Li-Poバッテリはフル充電時に4.2Vを超えるので直結するとメインデバイスのnRF51822を壊す可能性があると記載されています。PHコネクタからの供給は電池での供給に留めるのが良いでしょう。
BAT60の順方向最大電流は3Aですので、この場合でもエッジコネクタにそれを超えるようなデバイスを接続することはできません。
参考:
乾電池電流目安 : http://ecwkit.nomaki.jp/shiryou/batt.htm
コイン電池電流目安 : https://ja.wikipedia.org/wiki/%E3%82%B3%E3%82%A4%E3%83%B3%E5%BD%A2%E3%83%AA%E3%83%81%E3%82%A6%E3%83%A0%E9%9B%BB%E6%B1%A0
#エッジコネクタから供給
エッジコネクタから供給する場合、回路の直接電圧がかかります。電圧はボード上の電圧制限値に収める必要があります。電流は、特に制限はありません。
#参考資料
- USB I/Fに使われているKL26のデータシート : https://www.nxp.com/docs/en/data-sheet/KL26P64M48SF5.pdf
- BAT60ダイオードのデータシート : https://www.infineon.com/dgdl/Infineon-BAT60ASERIES-DS-v01_01-en.pdf?fileId=db3a304313d846880113def70c9304a9