- 公開日:2020年03月30日
- | 更新日:2022年12月01日
TIの超低消費電力マイコン「MSP430」はレモン電池で動くのか!?
- ライター:Macnica
- マイコン
こんにちは。
テキサスインスツルメンツ社(Texas Instruments、以降TI)には超低消費電力マイコン「MSP430」があります。超低消費電力といってもどれほどのものだろうかと疑問に思いますよね?
そんなとき、ある自由研究テーマを思い出しました。
レモン電池
本記事をご覧の方にもレモン電池の自由研究をしたことがあるかもしれませんね。レモンに2種類の金属板を挿して豆電球に繋ぎ、光るかどうかの実験です。
今回は、このレモン電池を使って豆電球の代わりにMSP430評価ボードを動かせるのか、試していきます。
MSP430には多数のラインナップがありますが、その中でもFRAMシリーズを今回は採用します。FRAMは書き込み速度、低消費電力等でFLASHやEEPROMよりも優れている点が特徴です。MSP430FRシリーズの詳細はTIのホームページに掲載してますので、是非ご覧ください。
MSP430FRxx FRAM とは
レモン電池の準備をしよう
今回は市販のレモン電池自由研究キットを購入しました。中には2種類の金属板(銅Cu、亜鉛Zn)とエナメル線、電池の先に繋ぐメロディーICが入っています。キットに入っていたエナメル線では実験がしづらいので、ワニ口のケーブルを使用します。電池となるレモンはスーパーで買ってきて、1/4サイズにカットします。メロディーICの代わりにLCD(液晶ディスプレイ)が付いたTIの評価ボード、MSP430FR4133 Launch Padを使用します。
まず1個のレモン電池を作ってみます。銅板を+、亜鉛板を-として1枚ずつレモンに挿します。このとき、金属板同士を接触させないようにある程度放して挿します。このときのレモン電池の電圧をマルチメータで測定してみます。
その結果、0.886Vでした。
ここで、MSP430FR4133のデータシートより、動作可能な電圧範囲を見てみます。
見てみると、電圧の推奨動作範囲は1.8~3.6Vのようです。先程のレモン電池は1個で0.886Vの電圧だったので、レモン電池を3個用意すれば、推奨動作条件を満たすことができそうです。実際に、3個を直列でつないでみると、2.62Vになりました。
MSP430の準備をしよう
MSP430にプログラムを書き込みます。書き込みにはTIの統合開発環境CCS(Code Composer Studio)を使います。
手順は以下の通りです。
- プロジェクト内の「main.c」にサンプルプログラムをコピー&ペーストします。
- CCSを起動します。はじめ、workspaceを指定するGUIが出ますが、任意のPCフォルダを指定、もしくは新規作成します。
- File -> New -> CCS Project で書き込み用のプロジェクトを作成します。
本記事ではTIが提供している「MSPWare」の中からLCDに時刻を表示するサンプルコードを使用します。見た目で動作が分かるサンプルコードであれば、そちらを使用しても問題ありません。
- PCと MSP430LaunchPadを付属のUSBケーブルでつなぎ、画面上側のデバッグボタンをクリックします。
CCS画面がデバッグモードに切り替わり、これでMSP430にソフトウェアが書き込まれます。
- 一度デバッグしてみます。
実行(Run)ボタンを押し、LaunchPadが動いているか確認します。確認できたら、ターミネートボタンを押し、CCS画面が切り替わったら、USBケーブルを抜きます。
これで、MSP430の準備は完了です。
レモン電池をLaunchPadにつないでみよう
では、いよいよレモン電池でMSP430を動かしてみます。このとき、LaunchPadのジャンパを外しておいてください。
LaunchPadはMSP430にプログラムの書き込みやデバッグをするためのエミュレータがオンボードで搭載されています。ジャンパはボード上のエミュレータとMSP430を接続し、PCのツールからUSBを経由してプログラムを書き込むために取り付けられています。レモン電池の+側はMSP430の3V3ピンに、-側はGNDピンに接続します。
いざ、繋いでみると、、、
あ、あれ?点かない。。。
動かない原因は、、、電流不足!?
電圧は先ほど、2.62Vだったので、次は電流がどれだけ流れているか確認します。MSP430の電源ラインに流れる電流を測定してみると、20.5uAでした。
再びMSP430FR4133のデータシートを見てみます。
アクティブモードでの消費電流は126uAと書かれています。MSP430には低消費電力モードがあり、このモードになれば1uAほどまで抑えられます。ただ、電源が入った瞬間はアクティブモードで動きますので、電源投入直後は126uAより大きい電流を流さないと動かないようです。
さて、どうやって電流を増やすことができるのか、、、文献を調べてみると、以下のような方法があるみたいです。
- 並列に金属板をつないでみる
- レモンに塩をかけて、レモンの内部抵抗を減らす。
(1)は電気回路の基本です。並列に電池を増やせば、電流量は大きくなります。これを試すため、先程のレモン電池に金属板もう1組挿しこみ、並列に繋いでみました。イメージ図と実際の測定写真は以下の通りです。
先程の電流20.5uAに比べ、57.8uAと増えました。
(2)は化学のお話になります。塩は塩化ナトリウム(NaCl)の結晶なので、水分に入れると、ナトリウムイオン(Na+)と塩素イオン(Cl-)に分解されます。それぞれのイオンが金属板の-極とプラス極に引き寄せられ、電流が流れます。この理論の下、レモンに塩をかけてみます。
上記方法を試したり、レモンを変えたりと試行錯誤しながら実験をした結果、ついにLCDが点灯しました!!
このときはレモンを変え、塩を振ったのみですが、これで動きました。
※この実験はあくまでレモン電池でMSP430が動くかを検証するものです。また、実験で使用したレモンは絶対に召し上がらないでください。
超低消費電力マイコン「MSP430」の寿命はどれくらい?
レモンでもMSP430を動かすことができました。では、このレモン電池を市販の電池にかえたときMSP430がどれくらい持つのか、気になりますね。ということで、今度はMSP430の稼働時間を計算してみます。
まずは、MSP430の消費電力を求めます。先程測定した、レモン電池3個の電圧は2.62Vです。LCDが点灯してからの電流量を新たに測定してみます。
LCD点灯中の消費電流量は3.6uAでした。
では、消費電力量を計算してみます。消費電力の計算式は次のようにして求めます。
(MSP430の消費電力量) = (消費電流[A]) × (電圧[V])
測定値から上記計算式に当てはめると、次のような結果になります。
3.6 × 2.62
= 9.432[uW]
= 9.432 × 10-6[W]
測定した値からMSP430の消費電力は約9.4uWということがわかりました。
次に、電池の電力量を計算します。今回はコイン型リチウム電池CR2032(公称電圧:3V、公称容量:0.22Ah)を1個使うと仮定します。電池の電力量は次の式で求められます。
(電池の電力量)=(公称容量[Ah])×(公称電圧[V])
よって、CR2032の電力量は次のようになります。
0.22 × 3
= 0.66[Wh]
計算した2つの値を使い、次の計算式に当てはめて、MSP430の稼働時間を求めます。
(稼働時間[h]) = (コイン電池の電力量[Wh]) ÷ (MSP430の消費電力量[W])
0.66 ÷ (9.432 × 10-6))
= 69974.554…
≒ 69975[h]
MSP430をボタン電池で動かすと、約7万時間持つという結果になりました。年数にすると約8年持つことになります!
※本記事で算出したMSP430の稼働時間はレモン電池実験で得られた値、TI提供のサンプルプログラムと評価ボードを用いた結果になります。さらに、電池の特性等を考慮していない、あくまでも数値上の理論値で計算したものになります。実際の電池で使用したときの計算結果ではないので、ご注意ください。
おわりに
ここまでレモン電池でTIマイコン「MSP430」の動作実験を行い、その結果からマイコンの持ち時間も計算していきました。いかがでしたでしょうか。もしMSP430に少しでも興味を持っていただけたら、是非TIホームページをご覧ください。
MSP430™超低消費電力マイコン
http://www.tij.co.jp/lsds/ti_ja/microcontrollers_16-bit_32-bit/msp/overview.page
超低消費電力の新しい時代を拓く MSP430FRAM マイコン
http://www.tij.co.jp/lsds/ti_ja/general/advertorial/sp16_fram_mcu.page
低消費電力 16 ビット MSP430 マイコンの ARM Cortex-M4 版 [MSP432 マイコン]
http://www.tij.co.jp/lsds/ti_ja/general/advertorial/sp24_tv_tv_msp430.page
また、本記事のようなレモン電池や他のフルーツを使ってMSP430を動かす実験はTIでも行っていたようです。少々古いですが、フルーツ電池を使ったデモの様子を撮影した動画がYoutubeに上がっていますので、よろしければこちらもご覧下さい。
How to Power an MCU
https://www.youtube.com/watch?v=Db6TWl5FSGw
参考ツール
MSP430FR4133 LaunchPad 開発キット | |
Code Composer Studio IDE | |
MSP430 サンプルコード集 MSPWare |