ワイヤレスメナジェリへようこそ:組み込み開発者向けのRF帯域幅とプロトコルの選択、第2部
DigiKeyの北米担当編集者の提供
2018-05-08
編集者メモ:この2部シリーズの第1部では、組み込みシステムの設計者が利用可能なさまざまなワイヤレス接続オプションについて説明し、関連のある例を示しました。第2部では、ワイヤレスモジュールの特徴をより詳細に説明するとともに、その特徴をいかに効果的に使用するかについての情報を提供します。
モノのインターネット(IoT)と人工知能(AI)の急激な進化によって、ワイヤレスシステム接続の必要性が増大し、開発者は適切なプロトコルを選択し、迅速かつ低コストで設計することが不可欠になっています。こういった状況をサポートするために、利用可能な多くのワイヤレスモジュールがあります。ただし、設計者は適切な設計を行うために、論理的な選択と統合のプロセスをたどる必要があります。
この記事では、組み込みアプリケーションに最適なワイヤレスプロトコルとワイヤレスモジュールを選択および実装するための、4つの手順で構成されるプロセスについて説明します。手順は次のとおりです。
- 帯域幅、範囲、およびコストの要件に基づいて、ワイヤレスインターフェースとプロトコルを選択します。
- ワイヤレスプロトコルの実装に加えて、組み込みアプリケーションの処理機能をワイヤレスモジュールに含める必要があるかを判断します。
- ワイヤレスモジュールまたはチップのI/O要件を特定します。
- 最初の3つの手順で行った決定に基づいて、適切なモジュールまたはチップを選択します。
この記事では、ワイヤレス接続された組み込みシステムを設計する際に検討できる多数のワイヤレスモジュールのうち、代表的なサンプルとして6個のワイヤレスモジュールについて説明します。
手順1:ワイヤレスプロトコルの選択
最も一般的なワイヤレスプロトコルの一部を帯域幅と範囲に対して相対的に示します(図1)。

図1:複数のワイヤレスプロトコルに関する範囲(メートルからキロメートル)と帯域幅(ビット/秒からMビット/秒)の概念図。(画像提供:DigiKey)
このシンプルな図を使用することで、単純に範囲と帯域幅の要件に基づいて、オプションを迅速に精査することができます。左側のプロトコル、つまりWi-Fi、Bluetooth、およびBluetooth LE(低エネルギー)は、数十メートル(m)の単位で測定される範囲にわたって、毎秒数百キロビット(Kビット/秒)または毎秒数メガビット(Mビット/秒)のデータを配信します。これらのプロトコルは主に屋内のネットワークに適しています。右側のプロトコルは、数キロメートルの範囲にわたってデータを配信します。これらのプロトコルは、キャンパスや町中に遠隔設置された組み込みデバイスに適しています。
Wi-Fi、Bluetooth、およびBluetooth LE(またはこれらの組み合わせ)を実装するモジュールには、一般的にオンボードアンテナが搭載されています。その明確な例として、Adafruitの3320 Wi-Fi/Bluetooth/Bluetooth LEモジュールに組み込まれた統合型アンテナを示しています(図2)。統合型アンテナは回路基板の上部にあるジグザグのトレースです。
アンテナ開発に要する複雑な作業がすでに完了しているため、統合型アンテナは、ワイヤレスにネットワーク接続された組み込みシステムの設計を大幅に簡素化します。

図2:Adafruitの3320 Wi-Fi/Bluetooth/Bluetooth LEモジュールは、150Mビット/秒の速度で動作します。(画像提供:Adafruit)
このモジュールは回路基板に取り付けるように設計されており、追加の電気回路が必要であるため、試作を開始するのに最適な製品ではない可能性があります。このモジュールは開発キット(Espressif SystemsのESP32-DEVKITC、図3に示す)として小型回路基板にはんだ付けして使用できます。ESP32-DEVKITCは、モジュールのすべてのピンを0.1インチのヘッダーに取り出し、USB-TTLシリアルのアダプタチップ、プログラミングとリセットボタン、および3.3Vのオンボードレギュレータを組み込みます。

図3:Espressif SystemsのESP32-DEVKITCは、Adafruit 3320モジュールのすべてのピンを0.1インチのヘッダーに取り出し、USB-TTLシリアルのアダプタチップ、プログラミングとリセットボタン、および3.3Vのオンボードレギュレータを組み込みます。(画像提供:Espressif Systems)
長距離無線プロトコルとオンボードアンテナは混在しない
長距離ワイヤレスネットワーク通信では外部アンテナが必要であるため、それに伴う複雑さが発生します。たとえば、Semtech Corp.のSX1276MB1LASは、高周波アンテナと低周波アンテナを取り付けるために2つのSMAコネクタを組み込んだLoRaトランシーバです(図4)。

図4:SemtechのSX1276MB1LAS LoRaトランシーバモジュールには、高帯域と低帯域のRFアンテナに対応する2つのSMAコネクタがあります。(画像提供:Semtech Corp.)
米国でのLoRa通信に使用される433MHzと915MHzの周波数帯をモジュールが個別に処理できるようにするために、2つのアンテナポートが必要です。モジュールの最大リンクバジェットは168dBであり、到達範囲は数キロメートルになります。しかしながら、モジュールと外部アンテナ間の同軸ケーブルとSMAコネクタによって、このリンクバジェットの一部が消費されます。
設計を軌道に乗せるために、SemtechはSX1276MB1LAS LoRaトランシーバモジュールをベースとしたSX1276DVK1JAS開発キットも提供しています。このキットには、LoRaトランシーバが2個、Eigerプラットフォームが2個、ミニUSBケーブルが2本、タッチスクリーンスタイラスが2個、および高周波数帯と低周波数帯に対応するダイポールアンテナが含まれています。
図5に示すように、Digi InternationalのXBC-V1-UT-001 Digi XBeeセルラーLTE Cat 1モデムにも外部アンテナが必要です。アンテナ接続に関して類似しているものの、若干異なるアプローチを採用しています。

図5:Digi InternationalのXBC-V1-UT-001 XBeeセルラーLTE Cat 1モデムは、Verizonのセルラー通信ネットワーク上に組み込みシステムを配置します。(画像提供:Digi International)
Digiのモデムには、プライマリLTEアンテナとセカンダリLTEアンテナを取り付けるために、2つのU.FL超小型RFコネクタが搭載されています。プライマリアンテナは必須です。セカンダリアンテナは、特定の状況においてレシーバのパフォーマンスを改善するため、Digiによって推奨されています。このアンテナは、セルラーモデムモジュール(およびその他の金属製の物)からできる限り離れた場所に配置する必要があります。プライマリアンテナとセカンダリアンテナの両方を取り付ける場合、最高の結果を得るには2つのアンテナを互いに最適な角度に向ける必要があります。
手順2:ワイヤレスネットワークモジュールにおけるアプリケーション処理の必要性
ワイヤレスネットワークモジュールの中には、オンボードプロセッサが搭載されているものもあれば、そうでないものもあります。開発中の組み込みシステムにすでにプロセッサが搭載されている場合は、プログラム可能な別のプロセッサをワイヤレスネットワークモジュールに導入する必要はないかもしれません。ワイヤレスモジュールで組み込みシステムのアプリケーションコードを実行する必要がある場合は、判断プロセスの一環として利用可能なプログラミングツールやモジュールの実行機能を決定する必要があります。ワイヤレスネットワークモジュールのオンボードインテリジェンスを利用して組み込みアプリケーションを実行することで、基板スペースを確実に節約できます。さらに、ハードウェア設計の簡素化と部品表(BOM)コストの削減を実現できます。
上で説明した一部のモジュールは、プログラミング環境全体を実装します。上で説明したDigiのXBC-V1-UT-001 XBeeセルラーモデムの場合、モデムの組み込みインテリジェンスをシンプルなアプリケーションに適用するオンボードMicroPython環境があります。たとえば、モジュールのデジタルおよびアナログI/Oピンに接続されたセンサは、読み取り、処理、および送信が可能です。アクチュエータのコマンドを受信して動作できます。モジュールには13個のデジタルI/Oピンと、4個の10ビットアナログ入力ピンがあります。MicroPythonは、バッテリ駆動の組み込みシステム内において、モデムに基づいて電力を管理するのにも役立ちます。
プログラミングは、USBケーブルを使用してPCをインターフェースボードに接続するDigi XBIB-U-DEVインターフェースボードにXBC-V1-UT-001をプラグインし、ターミナルプログラムを起動することで実行されます。DigiのXCTU構成およびテストユーティリティソフトウェアにはMicroPythonターミナルプログラムがあります。XBC-V1-UT-001モジュールには、保存用に24キロバイト(KB)のRAMと8KBのフラッシュメモリが付属しています。
他のワイヤレスネットワークモジュールに搭載したオンボードインテリジェンスからは、より高い性能を引き出すことができます。たとえば、上記の手順1で説明したEspressif SystemsのESP32-DEVKITC開発キットに含まれているWi-Fi/Bluetooth/Bluetooth LEモジュールには、2個の32ビットXtensa LX6 RISCプロセッサコアが組み込まれていて、どちらも160MHzで稼働します。慣例により、これらのプロセッサのうちの1つが「プロトコル」プロセッサで、もう1つが「アプリケーション」プロセッサです。ただし、どちらのプロセッサもすべてのオンボードリソースにアクセスできます。これは、大部分の組み込みアプリケーションに対応できる十分な処理能力です。
手順3:ワイヤレスモジュールまたはチップのI/O要件の特定
ワイヤレスネットワークモジュールが内部で組み込みアプリケーションを実行するかどうかに関係なく、組み込みシステム内にある他のものに接続する必要がある可能性があります。組み込みシステム内のホストCPUに接続する必要があるか、あるいはセンサやアクチュエータに直接接続する必要があるかです。おそらく、どちらの接続も必要になります。
最もシンプルな方法は、プラグアンドプレイアプローチです。モジュールをプラグインして、ドライバを読み込むだけです。Advantech Corp.のEWM-W151H01E 802.11b/g/nミニPCIeカードはミニPCIeソケットに差し込み、PCIeを介してホストCPUと通信します(図6)。

図6 :Advantechの EWM-W151H01E 1TミニPCIeカード(ハーフサイズ)は、IEEE 802.11b/g/nベースのWi-Fi規格を実装します。(画像提供:Advantech Corp.)
EWM-W151H01Eを使用して開発を開始するには、Windows(7、8、または10)またはLinuxドライバを読み込みます。組み込みシステムは、最大150Mビット/秒のデータレートで既存のWi-Fiシステムにいつでも接続できます。カードのプラグインミニPCIeフォームファクタをWindowsおよびLinux用のドライバと併せて使用することで、このカードモジュールは組み込みPC(x86プロセッサ)設計にとって最適なモジュールになります。
Espressif SystemsのESP32-DEVKITCの説明では、センサとアクチュエータへの接続に使用できるモジュールでのアナログ入力とシンプルなデジタルI/Oピンについて言及しています。しかしながら、このモジュールには、より複雑なシリアルインターフェースも搭載されています(3個のUART、2個のI2Cポート、3個のSPIポート、2個のI2Sポートを含む)。これらは、さまざまなペリフェラルデバイスに接続するために使用でき、ホストCPUに対するインターフェースとして使用できます。それぞれにいくつかの特質があります。
- モジュールのUARTの最大転送レートは5Mビット/秒です。
- I2Cポートは、100Kビット/秒(標準モード)と400Kビット/秒(高速モード)両方の転送レートをサポートします。
- I2Sポートは、40Mビット/秒の転送をサポートします。
- SPIポートは、50Mビット/秒をサポートします。
最適なプロトコルモジュールに必要なI/O機能が備わっていない場合、組み込みシステムによって、I/O拡張チップの追加が要求されます。このI/O拡張チップは、より広い基板スペースを占有し、電力消費量を増加させ、プログラミングをより複雑なものにし、BOMコストを増大させます。可能であれば、1個のワイヤレスネットワークモジュールですべてを実現する方がはるかに適しています。
手順4:選択と実装
プロセスのこの時点では、選択の幅が狭まり、選択肢が数個または1個だけになっている可能性もあります。帯域幅と範囲の要件によって選択の幅が狭まり、適切なプロトコルは1個または2個になるはずです。ワイヤレスネットワークモジュールによるオンボードアプリケーション処理の必要性やオンボード処理の量によって、さらにいくつかの選択肢が除外されるはずです。最後に、I/O要件によって選択肢が最後の数個に削減されます。この時点で、選択肢は明らかであるか、適切な選択肢がいくつかあるだけです。この場合、最終的に残る選択条件は、習熟度や実装のしやすさである可能性があります。
まとめ
組み込みワイヤレス接続に関する要件は増え続けています。利用可能なプロトコルが数多くあるため、一見したところ、一部の組み込み設計者にとっては紛らわしく感じる可能性があります。しかし、各プロトコルにはそれぞれの得意分野(範囲、電力、データレート)があるため、そういった観点から見ると、はるかに簡単に選択できるようになります。
この記事では、多数の、もっと言えば何百個もの利用可能なワイヤレスネットワークモジュールの中から選択するための、4つの手順で構成されるプロセスを紹介しました。
- 帯域幅、範囲、およびコストの要件に基づいて、ワイヤレスプロトコルを選択します。
- ワイヤレスプロトコルの実装に加えて、組み込みアプリケーションの処理機能をワイヤレスモジュールに含める必要があるかを判断します。
- ワイヤレスモジュールまたはチップのI/O要件を特定します。
- 最初の3つの手順で行った決定に基づいて、適切なモジュールまたはチップを選択します。
どのようなアプリケーションであっても、要件を十分に満たすことができる少なくとも1つの標準ワイヤレスプロトコルと、いくつかの関連モジュールがあります。
免責条項:このウェブサイト上で、さまざまな著者および/またはフォーラム参加者によって表明された意見、信念や視点は、DigiKeyの意見、信念および視点またはDigiKeyの公式な方針を必ずしも反映するものではありません。


