本記事はソラコムが提供する「SORACOM公式ブログ」に掲載された「IoTデバイスの電波状況をSORACOMに保管し、SORACOM ユーザーコンソールで一覧する方法」を再編集したものです。
こんにちは、ソラコムのtakiponeこと大瀧です。
IoTデバイスの運用には、ネットワークへの接続をより確実にするために無線の電波状況を把握することが重要です。SORACOM Air forセルラーで提供する3G/LTE/LTE-M通信の場合、IoTデバイスに搭載する通信モジュールから現在の電波状況を取得できる一方で、離れた場所にある複数のデバイスからそれらの値を集めて一覧するのには工夫が必要です。そこで本ブログでは手軽に電波状況を一覧する手段として、SORACOMが提供するウェブ管理画面(ユーザーコンソール)のSIM一覧に電波状況を表示する手順をご紹介します。
表示する仕組み
SORACOM Air forセルラーにはSIMごとにデータを保存するメタデータサービス機能があり、デバイスからHTTP リクエストでデータを送信し、SORACOMプラットフォームでSIMおよびタグというラベル単位にそのデータを保持します。最近、SORACOMユーザーコンソールにSIM一覧画面で保持するタグの値を表示する機能が追加されたので、デバイスで取得した電波状況をこの仕組みを用いて表示させるわけです。電波状況はデバイスのLTE通信モジュールから取得します。
メタデータサービスは電波状況に限った仕組みではありませんので、デバイスで取得する様々な単一データの簡易な表示にも応用できます。一方で複数データの表示や過去の履歴を一覧する機能はありませんので、移動体に載せて電波状況が頻繁に変化するような用途には向きません。その場合はSORACOM Harvest Dataなどデータを扱うためのSORACOMサービスを検討いただくのが良いでしょう。
設定手順
SORACOMの設定
メタデータサービスはSIMグループで有効にするため、まずはSIMグループを作成します。
グループの設定画面にある [SORACOM Air for セルラー設定] の[メタデータサービス]のスイッチをオン、今回は SIM からデータを書き込むため、[読み取り専用]のチェックをオフにします。
続いてSORACOM IoT SIMをSIMグループにセットします。SIMを選択して[操作] – [所属グループ変更]をクリックし先ほど作成したSIM グループを選択、[グループ変更]で変更します。
これで SORACOM の設定は完了です。
デバイスの設定
デバイスでは、通信モジュールから電波状況を取得する方法を選択します。Linuxが動作するデバイスの場合は、ModemManagerのmmcliコマンドが手軽です。
ModemManagerがインストールされていないLinuxや組み込みデバイスの場合は、通信モジュールへのATコマンド AT+CSQでRSSI値が取得できます。例えば、Raspberry Pi OSをインストールしたRaspberry PiにSORACOM Onyx LTE USBドングルSC-QGLC4-C1をセットする場合、ATコマンド用デバイスファイルは/dev/ttyUSB3になるので、以下のように確認できます。
電波状況の善し悪しは用途や現場の状況によるため、実際の通信に支障がないかどうかの検証を通してこれらの値を評価するのがおすすめです。今回ご紹介したRSSIやsignal qualityの値の詳細についてはSORACOM IoT SIMが動作確認済のIoT ゲートウェイArmadillo-IoTを製造・販売しているアットマークテクノさんのウェブサイトを参照ください。
3G/LTEを使用する際、設置場所決定に必要な参考情報
https://armadillo.atmark-techno.com/howto/armadillo_3g-lte_installation-location
取得した値をHTTPリクエストとしてメタデータサービスに送出します。Linuxの場合はcURLコマンドが手軽でしょう。
メタデータサービスのURLおよびリクエストボディーは以下のドキュメントを参考にします。
さまざまな機能の使い方: SORACOM Air メタデータサービス機能を使用する | SORACOM Air for セルラー | SORACOM Users
https://users.soracom.io/ja-jp/docs/air/use-metadata/
組み込みデバイスの場合は組み込みOSのライブラリーのほかに、HTTPクライアント機能を持つ通信モジュールでは ATコマンドで送信できることがあります。たとえばQuectel製通信モジュールにはTCPクライアントのATコマンドがあり、以下のコマンドを組み合わせてHTTP PUTリクエストを送出できます。
AT+QISENDで送信するデータの例( \r\n はCRLFを示す改行コードです)
Quectel 製通信モジュールのATコマンドにはHTTPクライアントもありますが、PUTリクエストを送信するコマンドは無いため、TCPクライアントのデータ送信にHTTPリクエストの形式を指定して代用します。
動作確認
では、送信したメタデータをSORACOMユーザーコンソールのSIM一覧画面に表示します。SIM一覧画面上部の歯車アイコンをクリックし、表示列の設定ダイアログを表示します。
ダイアログ末尾の [+ 追加] ボタンをクリックします。
デバイスから送信したタグ名(前述のcURLコマンドの例ではsignal)を入力し、[タグの表示列を追加] – [保存] ボタンをそれぞれクリックします。
SIM一覧の表にsignal列が追加され、デバイスから送信したデータが表示されました!
電波状況が良くなくLTE通信に失敗する場合、データの更新が滞ることになります。電波状況の値に加えて電波状況の取得時刻を任意のタグでSORACOM Airメタデータサービスに送信し、ユーザーコンソールで確認できるようにするのも良いでしょう。
まとめ
デバイスの電波状況をSORACOMのSIM管理画面で一覧するために、SORACOM Airメタデータサービスへのデータ送信と一覧画面での表示方法をご紹介しました。今回のタグを含めたSIM一覧の情報はAPIでも取得できますので、他のシステムとの連携も検討いただけると思います。通信はもちろんですが、SIMやデバイスの管理に役立つSORACOMの様々な機能をご活用ください。
この連載の記事
-
第484回
デジタル
AWS re:Invent 2024に見る、IoTの成熟と生成AIとの融合 -
第483回
デジタル
二歳半の子供を持つエンジニアの一日の働き方 -
第482回
デジタル
VPN 対応の産業用 LTE ルーターの価格改定【30%オフ】 -
第481回
デジタル
時間帯に応じたメール通知の構築方法 : SORACOM LTE-M Button と SORACOM Flux の活用 -
第480回
デジタル
SORACOM Flux 料金プランを発表しました -
第479回
デジタル
12/11-13 商業施設・店舗DX展に出展:最新IoTソリューションや事例をご紹介 -
第478回
デジタル
コープさっぽろが、クラウド型カメラ「ソラカメ」を全店舗で導入、現場主導の改善を実現、サーバールームの異常な温度上昇を通知する新規掲載レシピ takuyaのほぼ週刊ソラコム 11/16-11/29 -
第476回
デジタル
WebRTCとMedia over QUIC Transportの性能比較 -
第475回
デジタル
SORACOM Lagoon 3 の [Math] 機能で、複数データを組み合わせた通知の手順 -
第474回
デジタル
SORACOM Flux の AI アクションに Amazon Bedrock – Anthropic Claude 3.5 Haiku を追加、Teltonika RUT240 の価格を改訂 takuyaのほぼ週刊ソラコム 11/02-11/15