マルツTOP > APPLICATION LAB TOPページ おすすめ技術記事アーカイブス > デュアルモードWi-Fi/Bluetooth IoT設計で電池寿命を最大化する方法

デュアルモードWi-Fi/Bluetooth IoT設計で電池寿命を最大化する方法

著者 Stephen Evanczuk 氏
Digi-Keyの北米担当編集者 提供
2020-09-24

マルツ掲載日:2021-1-25


 電池駆動のIoTデバイスや他のコネクテッド製品の設計者は、連続ワイヤレスコネクティビティと電池寿命の延長という競合する要件を満たすことを求められます。すでに制約のある電力の制限をさらに引き延ばすという需要が、同じデバイスのBluetooth 5とWi-Fiコネクティビティの両方において高まっています。

 Wi-FiとBluetoothは消費電力を低減するのに役立つ標準プロトコルを提供していますが、より直接的なサポートがアーキテクチャの形で提供されています。これは、ネットワーク処理タスクをオフロードできる無線サブシステムと低電力マイクロコントローラを組み合わせます。

 この記事では、デュアルモードWi-Fi/Bluetoothコネクティビティの重要性と、それによりIoT設計がどのように複雑になるかを説明します。次に、連続コネクティビティと電池寿命の延長に対応するデュアルモードWi-Fi/Bluetooth IoTデバイスを開発する際において、Cypress Semiconductorの開発ボードと関連ソフトウェアをどのように使用できるかを説明します。

増大するデュアルモードWi-Fi/Bluetooth連続コネクティビティのニーズ

 Bluetoothコネクティビティは、Bluetooth対応スマートフォンや他のモバイルデバイスを介してユーザーとやり取りするように設計された多くのIoTデバイスにおいて、標準の要件として考えられています。

 しかし、多くのIoTアプリケーションにおいて、IoTデバイスにはワイヤレスローカルエリアネットワーク(WLAN)にアクセスして直接インターネットに接続したり、同じネットワーク上のピアデバイスやホストシステムとやり取りしたりするためのWi-Fiコネクティビティが必要です。

 これらのIoTデバイスがデータや他のメッセージを送信する際にWLANやBluetoothホストに接続する必要があるだけなら、開発者が電池寿命の延長を行うことはいろいろな意味ではるかに簡単だったでしょう。

 多くのIoTデバイスのアクティブデューティサイクルは一般的に低いため、これらのデバイスは主に低電力スリープモードで動作して、センサ測定を実行したり、関連処理タスクを完了したり、低電力モードに戻る前に派生データを送信したりするのに十分な時間ウェイクすることにより、電池寿命を延長できたことでしょう。

 実際には、ほとんどのIoTデバイスがピアデバイスやホストシステム、あるいはエンドユーザーからの非同期受信コマンドやデータに迅速に応答する必要があります。

 応答性を維持するために、IoTデバイスは連続コネクティビティの外観を提供して、許容可能な期間内で応答できるように受信トラフィックに対してアラートを残す必要があります。

 開発者がデバイスを繰り返しウェイクして受信トラフィックを受信することによってこの基本的要件を満たそうとすると、デバイスの電池はすぐに劣化してしまいます。実際、電池駆動Wi-Fiデバイスの無線レシーバは一般的に、個別の送信動作に関連した消費電力が大きいかどうかにかかわらず、時間の経過と共に無線トランスミッタよりも多くの電力を消費します。

 もちろん、デバイスのホストプロセッサにより各受信動作で消費される電力自体も、電力バジェットにかなりの負荷をかけます。幸いなことに、ワイヤレス規格が定義するプロトコルにより、開発者は連続コネクティビティの錯覚を維持しながら電力を低減できます。

ワイヤレスコネクティビティ規格によりデバイスの消費電力を低減する方法

 通常の動作において、Wi-Fiの受信ステーション(STA)は、大部分のWi-Fiサブシステムをパワーダウンすることにより電力を節約します。アクセスポイント(AP)はスリープ中のSTAのフレームをバッファするため、メッセージは1つも失われません。

 通常のネットワーク管理動作の一部として、APはトラフィック通知マップ(TIM)と呼ばれるビットマップを含むビーコンを定期的に送信します。このビットマップは、APに各STAの待機トラフィックがあるかどうかを示します。

 APは、バッファ付きマルチキャストやブロードキャストデータの入手性を示す配信トラフィック通知マップ(DTIM)を含むビーコンも周期的に送信します。STAは、通常のビーコン間隔の倍数であるDTIM周期値内で定期的にウェイクアップすると期待されています。高いDTIM周期値が設定されたIoTネットワークにより、そのネットワークのデバイスは消費電力を低減できます。

 なぜなら、それらのデバイスは、レシーバをウェイクしてAPがそのためのフレームを保持していることを示すビーコンを受信する前に、より長くスリープできるからです。これは、以下で説明する標準的な802.11パワーセーブポールメカニズムの背後にある基本的なアプローチです。

 Bluetooth Low Energy(BLE)は、Bluetoothのアドバタイジング周波数とペイロードを最適化することにより、デバイスが消費電力を低減できるようにします。アドバタイジング間隔を増やすことにより、IoTデバイスはトランスミッタの動作を遅延させることができます。ペイロードを減らすことにより、IoTデバイスはトランスミッタイベントの期間を短縮できます。

 もちろん、すべてのアプリケーションが長いアドバタイジング間隔や最小ペイロードに耐えられるわけではありません。たとえば、オーディオやリアルタイムセンシングデバイスにおいて、長いアドバタイジング間隔は接続の遅延を意味します。これは、アプリケーション全体の動作に悪影響を及ぼす可能性があります。

 ペリフェラルデバイスは、スレーブレイテンシと呼ばれる別のBLE機能を使用できます。これにより、ペリフェラルが接続イベントをスキップできるようになります。Wi-Fi DTIMと同様に、BLEスレーブレイテンシにより、デバイスはより長い期間にわたって低電力モードにとどまることができます。

 この特別なモードにより、ペリフェラルデバイスは接続間隔をただ増やすのではなく、ホストとの接続イベントをスキップできます。それでも、さらなる遅延を招くことなく、必要に応じてウェイクしてデータを送信します。

デュアルモードコネクティビティと電池寿命の延長に対するサポート

 これらの方法はWi-FiとBluetoothデバイスの全電力動作の期間と周波数を低減するのに役立ちますが、開発者はCypress SemiconductorのCY8CKIT-062S2-43012 Wi-Fi BTパイオニアキットが実証するハードウェアとソフトウェア機能を使用することにより、電池寿命を延長するためにはるかに多くのことができます。

 CypressキットにはジャンパワイヤやUSBケーブルに加えて、低電力IoT設計を実装するための包括的な開発プラットフォームとフル機能ハードウェアシステムを提供するPSoC 62S2 Wi-Fi BTパイオニアボードが含まれます。CypressキットをCypressソフトウェアと一緒に使用することにより、開発者は洗練されたさまざまな電源管理機能を即座に評価し、迅速に展開できるようになります。

 このキットのボードには複数のインターフェースコネクタやボタン、LEDに加えて、Cypress KitProg3オンボードプログラミングとデバッギングを提供するCY8C5868LTI-LP038 PSoC 5LPデバイスが内蔵されています。

 Cypressは付加的なオンボードストレージとして、S25FL512S 512MビットシリアルNORフラッシュメモリデバイスとCY15B104 4MビットシリアルFRAM(強誘電体ランダムアクセスメモリ)を内蔵しています(図1)。


図1:CypressのPSoC 62S2 Wi-Fi BTパイオニアボードは、PSoC 6マイクロコントローラを内蔵するキャリアモジュールとWi-Fi/Bluetoothワイヤレスコネクティビティモジュールを中心に構築されたシステム機能の包括的なセットを提供します。(画像提供:Cypress Semiconductor)

 キャリアモジュールはボードの中核として、Cypress SemiconductorのPSoC 6マイクロコントローラと村田製作所のType 1LV LBEE59B1LVワイヤレスコネクティビティモジュール(受動部品付き)を内蔵しています。サポートデバイスには、無線周波数(RF)スイッチとデュアルバンド2.45GHz/5GHzミニチップアンテナも含まれます。

 処理性能と消費電力間の従来のトレードオフを排除するために特別に設計されたPSoC 6は、主要なアプリケーションプロセッサとして動作する150MHzのArm Cortex-M4と、低電力動作を処理する100MHzのArm Cortex-M0+を内蔵しています。

 PSoC6には内蔵フラッシュとスタティックRAM(SRAM)に加えて、暗号エンジン、プログラム可能なアナログ/デジタル周辺機器、CapSenseタッチセンシングサポート、複数のシステムインターフェースなどが含まれます(図2)。


図2:CypressのPSoC 62S2 Wi-Fi BTパイオニアボードのキャリアモジュールに内蔵されたPSoC 6マイクロコントローラは、アプリケーション処理と低電力リアルタイム実行の両方の要件を満たすマルチコアアーキテクチャを使用しています。(画像提供:Cypress Semiconductor)

 村田製作所のLBEE59B1LVモジュールは、CypressのCYW43012組み込みデバイス向けワイヤレスインターネットコネクティビティ(WICED)Wi-Fi + Bluetoothデバイス、リファレンスクロック、フィルタを搭載する10.0×7.2×1.4mmのパッケージで、完全な無線サブシステムを提供します(図3)。


図3:村田製作所のType 1LV LBEE59B1LVワイヤレスコネクティビティモジュールは、CypressのCYW43012 WICEDデバイスを中心に構築された完全な事前認証済みWi-Fi + Bluetooth無線サブシステムを提供します。(画像提供:Murata Electronics)

 このモジュールは、Bluetooth 5.0とWi-Fi 802.11a/b/g/nとの2.4GHzと5GHzワイヤレスコネクティビティをサポートします。さらに、このモジュールは、5GHz帯の20MHzチャンネルで802.11acの256直角位相振幅変調(QAM)をサポートする802.11acフレンドリーモードを提供します。

 これにより、802.11nのみの製品よりも高いスループットを実現し、1ビット当たりのエネルギーを軽減できます。開発を高速化させるために設計された村田製作所のLBEE59B1LVモジュールは、複数の地域で事前認証済みであるため、コンプライアンステストや認証に関連した長い遅延を排除できます。

 このモジュール内で、CypressのWICEDデバイスはWi-FiとBluetoothサブシステムのArm Cortex-M3プロセッサとArm Cortex-M4プロセッサをそれぞれ内蔵しています。Arm Cortex-M3プロセッサは顧客コードには使用できませんが、Wi-Fi動作と追加機能(後述のオフロード機能を含む)をサポートするCypressファームウェアを実行します。

 BluetoothサブシステムのArm Cortex-M4は、Bluetoothコントローラファームウェア、Bluetoothスタック、プロファイルを実行します。さらに、このコアはCypressのWICEDソフトウェア開発キット(SDK)を使用して、プログラムされた顧客コードを実行できます。

ワイヤレスIoT設計における省電力方法の使用

 消費電力を最小化するために設計されたPSoC 6とワイヤレスコネクティビティモジュールは、電力モードや電力低減機能の包括的なセットを備えています。Cypressは、電力効率の高いこのハードウェアプラットフォームを多くの補完ソフトウェアで補強しています。

 それらは、ワイヤレスIoT設計で省電力方法の使用を簡素化するために設計されています。たとえば、開発者は独立した組み込みWi-Fiホストドライバ(WHD)ライブラリを使用して、前述のパワーセーブポール方法を簡単に実装できます。

 開発者は、単にWHDアプリケーションプログラミングインターフェース(API)関数whd_wifi_enable_powersave()を呼び出してパワーセーブポールを有効にした後で、whd_wifi_disable_powersave()を呼び出してデバイス内でそれを無効にします。有効にすると、STAはそれがスリープに移行したことをAPに通知します。

 前述のとおり、APはスリープ中のSTAフレームをバッファし、その周期的なビーコンを構成して、フレームが使用可能であることを示します。STAがウェイクしてビーコンを確認すると、それらのフレームを取得する標準プロセスが開始されます。

 パワーセーブポールのメカニズムは低デューティサイクルを備えたSTA向けに意図されていますが、ポールなしのパワーセーブと呼ばれる類似の方法は、高いスループット要件を備えたSTAをサポートしています。ここでSTAは、APからのフレーム転送を開始する零関数データフレームを送信します。

 パワーセーブポールとポールなしのパワーセーブにより、デバイスはレシーバ動作を低減できますが、オーバヘッドのネットワーク動作に関連した不必要なトランザクションを排除するのには役立ちません。たとえば、IoT WLANを含むネットワークは、外部ネットワーク(特に公衆インターネット)に接続されると、不要なパケットトラフィックを通信します。

 IoTデバイスのホストプロセッサを関係させることなく、通信サブシステム内でそれらのパケットを除去する機能により、ホストプロセッサは低電力スリープモードにとどまることができます。

 不要なパケットに加えて、正規のネットワークトラフィックもホストプロセッサを不必要にウェイクさせる場合があります。たとえば、Wi-Fi標準のアドレス解決プロトコル(ARP)は、ブロードキャストパケットをその機能の一部として使用し、デバイスのメディアアクセス制御(MAC)アドレスにデバイスと関連付けられたIPアドレスをマッピングします。

 この動作は、通常のWLAN機能に不可欠で、デバイスがネットワーク内の他のデバイスに到達したり、重複したIPアドレスを検出したり、IPアドレスが任意の理由で変更された場合に他のデバイスに通知したりできます。

 ARP要求と応答パケットはネットワーク動作にとって非常に基本的なため、ARP要求と応答を処理するだけで、IoTデバイスのホストプロセッサに過度な負担がかかる可能性があります。デバイスのWLANインターフェースがホストとネットワーク間で要求と応答を受け渡すだけで、各ARP要求が不必要にホストをウェイクすることがあります。

 対照的に、村田製作所のワイヤレスコネクティビティモジュールはこの交換に介入し、ARP要求処理をPSoC 6マイクロコントローラからオフロードします。PSoC 6が主要なIoTアプリケーション機能に従事している場合、この機能によりアプリケーション実行のためにプロセッササイクルが維持されます。

 PSoC 6がスリープモードにある場合、この機能はIoTデバイスの消費電力全体を軽減するのに役立ちます。村田製作所のモジュールでキャッシュされたエントリにより受信ARP要求が満たされない場合、村田製作所のモジュールはピア自動応答でARPオフロードを有効にすることにより、PSoC 6のみをウェイクします(図4、左)。


図4:ARPオフロードが有効にされると、ネットワーク(左)やホストプロセッサ(右)からのARP要求を妨害します。キャッシュが要求を満たす場合は自動的に応答し(上)、キャッシュミスではプロセッサのみをウェイクします(下)。(画像提供:Cypress Semiconductor)

 この同じアプローチは、WLANの消費電力を低減するのにも役立ちます。通常の動作において、村田製作所のモジュールはネットワークトラフィックや他のARP応答からのキャッシュIP:MACペアを監視(スヌーピング)できます。ホスト自動応答を使用することで、村田製作所のモジュールはPSoC 6からのARP要求に応答でき、PSoC 6の要求がARPキャッシュから満たされない場合にのみ、その無線サブシステムを呼び出します(図4、右)。

省電力機能の簡単なメニューベースの実装

 パイオニアキットによるARPオフロードの実装は、非常に簡単です。CypressのModusToolBox(MTB)統合開発環境(IDE)に含まれるCypressのDevice Configuratorツールにより、開発者は数回のメニュー選択でこの機能を展開できます。Cypressは事前に構築された構成ファイルを提供して、開発者がARPオフロードを含む異なる構成を迅速に選択できるようにします。

 Device Configuratorツールを使用して構成を明示的に定義することは、非常に簡単です。開発者はツールのメニューオプションを使用することで、ホストがピンをウェイクし、そのピンに名前を付け(CYBSP_WIFI_HOST_WAKE)、ピンパラメータを設定できるようにします(図5)。


図5:CypressのDevice Configuratorツールにより、開発者はメニューを使用してパイオニアボードで使用可能な省電力オプションを設定できます。(画像提供:Cypress Semiconductor)

 開発者はそのツールのWi-Fiタブで、ホストがウェイクして、割り込みピンを以前入力した名前(CYBSP_WIFI_HOST_WAKE)に設定できるようにします。さらなるメニューエントリにより、ARPオフロードを有効化し、機能をピア自動応答に設定し、ネットワークスヌーピングを有効化し、キャッシュエントリの満了時間を設定できます(図6)。


図6:CypressのDevice Configuratorツールの追加メニュータブを使用することにより、開発者はARPオフロードに加えてピア自動応答など特定の機能を有効にできます。(画像提供:Cypress Semiconductor)

 構成の保存後、開発者は単にソースファイルを生成して、変更済みプロジェクトを構築し、パイオニアボードをプログラムします。開発者は同様の方法を使用して、村田製作所のモジュールがWi-Fiパケットフィルタリングをオフロードし、ネットワーク動作の他の一般的なタイプに対応するように構成できます。

 この同じアプローチにより、IoTデバイスはIoTホストプロセッサをウェイクせずに、Wi-Fiコネクティビティを維持するのに必要なWi-Fi TCPのキープアライブプロトコルを実行できます。

 通常のWLAN動作において、クライアントデバイスとホストサーバは、キープアライブパケットを交換することによりTCP接続を維持します。この交換のどちらか一方が数回の試行後も応答を受信しない場合は、接続を終了します。

 電力に制約のあるIoTデバイスにおいてさえ、ホストプロセッサはこの交換に参加するためにウェイクアップし続け、さらに多くの電力を使用して継続的に接続を再確立する必要があります。

 ARPオフロードと同様に、開発者はDevice Configuratorツールを使用して、TCPのキープアライブオフロードを有効化できます。この機能を有効にすると、MurataのモジュールはPSoC 6をウェイクせずに、キープアライブプロトコルを自動的に実行します(図7)。


図7:TCPのキープアライブオフロードを有効にすると、ワイヤレスコネクティビティモジュール(WLANデバイス)はキープアライブプロトコルを自動的に実行し、ホストプロセッサが低電力スリープモードにとどまることを許可します。(画像提供:Cypress Semiconductor)

 CypressはDevice Configuratorツールの使用を実装の最も簡単な方法として推奨していますが、開発者はARPオフロード、パケットフィルタリング、TCPのキープアライブオフロードなどを含むCypressプラットフォームの省電力機能を手動で実装することもできます。

 両方のアプローチの基盤となるのが、Wi-Fi、Bluetooth、PSoC 6マイクロコントローラ向けにこれらの省電力機能やこの記事で言及していない他の機能をサポートする、Cypressの低消費電力アシスタント(LPA)ミドルウェアです。

 開発者がメニューを使用して、または手動で構成コードを追加することにより構成を定義した後、LPAファームウェアはアプリケーションに対して透過的に動作し、低電力ハードウェア機能とソフトウェア機能の使用を自動的に調整します。

結論

 IoTデバイスにおける連続ワイヤレスコネクティビティと電池寿命延長のニーズは、競合する要件を開発者に提示します。それらの要件は、Wi-FiとBluetoothの両方をサポートするというニーズによってさらに困難なものとなります。

 前述のとおり、ネットワーク処理タスクをオフロード可能な無線サブシステムを低電力マイクロコントローラと組み合わせることにより、Cypress SemiconductorのCY8CKIT-062S2-43012 Wi-Fi BTパイオニアキットは、開発者がIoTワイヤレスコネクティビティおよび低電力の要件を満たせるようにします。



免責条項:このウェブサイト上で、さまざまな著者および/またはフォーラム参加者によって表明された意見、信念や視点は、Digi-Key Electronicsの意見、信念および視点またはDigi-Key Electronicsの公式な方針を必ずしも反映するものではありません。

 

このページのコンテンツはDigi-Key社より提供されています。
英文でのオリジナルのコンテンツはDigi-Keyサイトでご確認いただけます。
   


Digi-Key社の全製品は 1個からマルツオンラインで購入できます

※製品カテゴリー総一覧はこちら



ODM、OEM、EMSで定期購入や量産をご検討のお客様へ【価格交渉OK】

毎月一定額をご購入予定のお客様や量産部品としてご検討されているお客様には、マルツ特別価格にてDigi-Key社製品を供給いたします。
条件に応じて、マルツオンライン表示価格よりもお安い価格をご提示できる場合がございます。
是非一度、マルツエレックにお見積もりをご用命ください。


ページトップへ