2014/06/28

[ble]nRF51の省電力はどういうのがあるんだろう?

比較的、小さいものを作ることが多い。
私がハードを作れないので、そういうのは仕事でしかやれないんだけど、だいたい「省電力」が課題になる。
まあ、小さい→電池で動かす→長持ちさせねば!となるのは、当然な流れだ。

基本的な手段は、こんなところ。

  • 動作クロックを落とす
  • 使わない機能ブロックを止める

他にもあるけど、まあこんなところで。
マイコンの資料を見ると、消費電流が出ている。
この機能を使うとこのくらい、みたいなことが書いてあるので、じゃあ使うのをやめよう、とか、使う時間を短くしよう、とか、そういうことを考えるのだ。

では、nRF51822はどうかというと・・・ああっ!
スペックシートも、リファレンスマニュアルも、ユーザ登録が必要じゃないか!
ええい、もどかしい。。。

http://www.nordicsemi.com/eng/Products/Bluetooth-R-low-energy/nRF51822

ここにおおざっぱな消費電流が出ている。
送受信がmAオーダーなのに対して、待機中はμAオーダーだ。
これだけでも、送受信する時間を短くすれば消費電流が抑えられることがわかる。

とはいえ、BLEなんだから送受信しないと始まらない。
あるいは、Beacon端末であれば送信しっぱなしでいいのかもしれない。
送信しっぱなし、とはいえ、送信間隔が長くなればなるほど、消費電流は抑えられる。

じゃあ、その間隔を製品の性格に合わせて最大にしたとしよう。
次に待つのは、送信するまでの間をどうするか、だ。
本当に何もしなければ良いのなら、タイマを割込設定して、割込が発生するまで眠らせる、ということもできる。

でも、場合によっては間に受信をしないといけないかもしれない。
その時間がタイマで良いならば、同じようにタイマ割込にしておけば良い。
そうではなくユーザ操作が絡むとかだと、じゃあどうしよう。
いやいや、実は受信が不定期に来るから受信もやらないと、とか・・・。

そういう製品の仕様を考えながら省電力のことをやると、かなり電力を抑えることができる。
できるけど、汎用的なやり方ではなく、かなりOSみたいなことになってくる。
省電力を中心とした仕様設計や実装になる、という感じだろうか。


そういう細々したことをやってるから日本は・・・っていわれるのかもなあ、と思わなくもない。
そんな暇があったら、新しいサービスとかに力を入れろよ、みたいな。
でも、誰かがやらんといかんのよねぇ、とも思う私で、そういう方面が好きなのであった。

2 件のコメント:

  1. 省電力性能ではルネサスのRL78シリーズも優れてますが、残念ながら無線コミコミのSoCじゃないんですよね。。GR-SAKURAとかで遊ぶにはお手軽なんですが。 http://jp.rs-online.com/web/generalDisplay.html?id=promotions/gadget_renesas#.VO1GF_nODw8

    返信削除
    返信
    1. RL78はルネサスとあれこれしながら省電力させていたので、印象が強いです。
      そのときは無線は外付けで、そっちも考えながらやってたので、もうしっちゃかめっちゃかでした(笑)。

      がじぇるねはRXなんですね。
      最初はRL78版も作りそうな感じがしてたんですが、あれこれやるには力が足りなかったのでしょうか。。
      個人でやる分にはあれもこれもできないので、もうARMだけでいいや、って気になってます。

      削除

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。