
今回はXBeeにおけるAPIモードと透過モードとATコマンドモードについてそれぞれのモードの機能や用途などを解説します。 XBeeモジュールは、無線通信の用途に応じて複数の動作モードを提供しており、それぞれのモードには特有の機能や使用方法があります。目的に応じて適切なモードを選択することで、より効果的かつ柔軟な通信が可能になります。以下に、主要な3つのモードについて詳しく解説します。

1.Transparent Mode(透過モード)
(機能の概要)
このモードでは、XBeeモジュールはまるでシリアルケーブルの延長のように動作します。例えばエンドデバイスのXBeeが送信するシリアルデータをそのまま無線でローカルXBeeに送信します。データは無線送信のために自動的に送信キューに蓄積され、相手側のモジュールでは受信したデータをそのままシリアルポートに出力します。
(主な用途)
このモードは特別なパケット構造や送信元・送信先の識別情報を必要としない、単純な1対1のポイントツーポイント通信に最適です。例えば、単純なセンサーデータの送受信や、簡易的なシリアルデバイス間の通信などで使用されます。
(制限事項)
送信されるデータには、どのモジュールから送信されたかという情報が含まれないため、ネットワーク上で複数のモジュールを扱うには不向きであり1対1通信に向いています。また、通信先の変更や設定の変更を行う場合は、一度「コマンドモード」に切り替える必要があります。
2.API Mode(APIモード)
(機能の概要)
APIモードでは、データはあらかじめ定義された構造(APIフレーム)に従って送信されます。この構造化された通信方式により、データに送信元や送信先の情報やRSSI等に加えエラー検出のためのチェックサムなどを含めることができます。
(主な利点)
・複数のデバイスへの同時通信が可能になる
・受信データに送信元アドレス等の情報が含まれる
・ATコマンドをAPIフレームとして送信できるため、モードを切り替えずに設定変更が可能
(用途の例)
センサーネットワークや遠隔地にある複数デバイスの制御等に適用可能であり、より複雑で柔軟な通信が必要なアプリケーションに適しています。APIモードを使用すれば、各デバイスの識別、状態監視、制御を容易に実現できます。
3.AT Command Mode(ATコマンドモード)
(機能の概要)
このモードでは、ユーザーが送信するテキスト形式のATコマンドを使って、XBeeモジュールの動作設定を行うことができます。Transparent Mode(透過モード)でSerial consoleから“+++”と入力することでコマンドモードに入り、そこから各種設定変更が可能になります。


(使用例)
通信速度の設定や送信先アドレスの指定など、モジュールの基本設定を行う場面で用いられます。例えば、「ATDL」コマンドで送信先のデバイスアドレスを設定することができます。
(制限事項)
ATコマンドモードは、設定操作に特化しており、実際のデータ通信には向いていません。また、APIモードのようにバイナリ形式で効率よく操作できるわけではないため、処理速度や柔軟性の面でやや制限があります。
モードの選び方について XBeeモジュールの各モードは、使用する通信ネットワークの構成やアプリケーションの要件に応じて使い分ける必要があります。単純な通信には透過モードが適していますが、複数のノードとの通信や動的な設定変更が必要な場合には、APIモードが圧倒的に有利です。特に、APIモードは高度な通信制御を簡潔に実現できるため、センサー管理やIoTシステムなど、柔軟な制御が求められる場面で広く利用されています。
XBeeモジュールの通信モード比較表
特徴・項目 | 透過モード | APIモード | ATコマンドモード |
通信方式 | シリアルデータをそのまま無線で送受信 | 構造化されたAPIフレームでデータを送受信 | ATコマンドを使用して設定や制御を行う |
設定・制御 | ATコマンドモードで設定変更が必要 | ATコマンドをAPIフレーム内で送信可能 | ATコマンドモードで設定変更が必要 |
データ構造 | 生データ(ヘッダーなし) | ヘッダー付きの構造化データ(送信元・送信先アドレスなど) | 生データ(ヘッダーなし) |
送信先の指定 | ATコマンドモードで設定する必要あり | APIフレーム内で直接指定可能 | ATコマンドモードで設定する必要あり |
送信元の識別 | 不可 | 可能(APIフレーム内に送信元アドレスが含まれる) | 不可 |
用途の例 | シンプルな1対1通信 | センサーネットワーク、リモートデバイス制御など | デバイスの設定や制御、ファームウェアの変更など |
利点 | 実装が簡単で高速 | 柔軟な通信制御が可能、複雑なネットワーク構成に対応 | デバイスの詳細な設定が可能 |
制限事項 | 複雑なネットワーク構成には不向き | 実装がやや複雑、データ量が増加する可能性あり | 通信速度が遅く、データ通信には不向き |
【モード選択の目安】
・透過モード(Transparent Mode)
シンプルな1対1の通信や、既存のシリアル通信を無線化したい場合に適しています。設定が簡単で、データの送受信が高速です。
・APIモード(API Mode)
複数のデバイスとの通信や、ネットワーク構成が複雑な場合に適しています。送信元・送信先の識別や、リモートデバイスの設定変更など、柔軟な通信制御が可能です。
・ATコマンドモード(AT Command Mode
デバイスの設定や制御、ファームウェアの変更など、モジュールの詳細な設定が必要な場合に使用します。通信速度は遅く、データ通信には不向きです。