マルチコネクティビティアセットトラッキングアプリケーションを効果的に実装する方法

著者:Jens Wallmann
2023-01-11

家畜監視、フリート管理、ロジスティクスなどの高度なアセットトラッキングアプリケーションでは、追跡対象物の現在のステータス情報や位置座標を自動的に取得します。内蔵のトランスポンダは、そのロギングデータをクラウドにリレーし、コントロールセンターやモバイルデバイスで利用できるようにします。工場現場では、ロジスティクスデータの交換、履歴や監視データの処理、構成の変更、またはトランスポンダメモリ内のファームウェア更新を行うために、短距離ワイヤレスデータ更新が必要になることがよくあります。

このようなアセットトラッキングシステムの開発者は、さまざまな長距離・短距離無線プロトコルで通信し、幅広い測定データを収集し、電池交換なしで数か月間動作し、インターネットサービスを介してすべてのデータを利用できる多機能センサトランスポンダを設計するという課題に直面しています。さらに、コストを削減し、市場投入までの時間を短縮しながら、これらすべてを達成する必要があります。

このタスクの大きさは圧倒的ですが、必要なハードウェアとソフトウェアの多くがすでに統合されている開発キットを使用することで、時間とエネルギーを大幅に節約できます。

この記事では、複数のアプリケーションにわたる高度なアセットトラッキングの技術的要件について説明します。そして、プロトタイプ設計、テスト、評価に必要な労力を大幅に低減するSTMicroelectronicsの多機能開発キットを紹介します。また、開発キットの主要な機能についての理解が得られ、開発者がコード化することなく、組み合わされたシステムオンチップ(SoC)モジュールの機能を簡単にカスタマイズし、クラウドからデータを取得して可視化する方法を示します。

ワイヤレス測定トランスポンダの特長

アセットトラッキングには幅広い応用分野があり、トランスポンダやリンクされたネットワーク用の非常に特化された技術装置がそれぞれ必要となります。図1は、ワイヤレス測定トランスポンダの技術的特長を4つのアプリケーションカテゴリに分類したものです。

図1:ワイヤレス測定トランスポンダの特長は、アセットトラッキング
       アプリケーションによって異なります。(画像提供:STMicroelectronics)

物体とともに運ばれる自律型トランスポンダは、環境の影響、物体の位置や状態を検知し(Sensing、図1)、それを保存し、次の機会にさまざまなワイヤレスインターフェースを介してブロードキャストする必要があります(Connectivity)。信号処理と各種ワイヤレスプロトコルへの変換は、高度なデータセキュリティを備えた十分に強力なマイクロコントローラ(MCU)で処理する必要があります(Processing & Security)。MCUはエネルギー管理も制御することで(Power management)、トランスポンダの電池の長寿命化を実現します。

アセットトラッキングアプリケーションに必要なデータのアベイラビリティは、センサの複雑さに影響し、適切なコネクティビティが必要となります。宅配便のように輸送経路が予測できる場合は、測定信号をトランスポンダに保存するだけで十分です。次のロジスティクスチェックポイントでBluetooth low energy(BLE)や近距離無線通信(NFC)を使用し、近距離でデータを読み取ることができます。

長距離にわたるフリート管理や、ロジスティクス、家畜監視などの場合、トランスポンダからクラウド経由でのエンドユーザーアプリケーションへのデータ転送は、可能な限りリアルタイムに近い状態で行う必要があります。したがって、トランスポンダには、広い範囲をカバーするための移動無線インターフェースが必要になります。その選択肢には、LoRaWAN(長距離広域ネットワーク)、Sigfox、狭帯域モノのインターネット(NB-IoT)が含まれます。これらのプロトコルは、低スループットで省電力のデータ転送に最適化されているためです。

少ない開発労力で完全なアセットトラッキングエコシステムを実現

アセットトラッキングアプリケーション(ASTRA)をコスト効率と時間効率のよい方法で実現したいシステム設計者は、STMicroelectronicsの多機能なSTEVAL-ASTRA1B開発プラットフォームを利用できます。このプラットフォームは、複数のICとSoCモジュールで構成されており、革新的なトラッキング・監視ソリューションの試作、プログラミング、テスト、評価を大幅に簡素化できます。この開発キットは、モジュール式の評価ボード、ファームウェアライブラリ、プログラミングツール、回路ドキュメントに加え、モバイルデバイス向けアプリとWebベースの可視化インターフェースで構成されています(図2)。

図2:すぐに使用可能なアセットトラッキングエコシステムは、ワイヤレス測定トランス
ポンダからクラウドやエンドアプリケーションまで広がり、開発工数を削減します。      
(画像提供:STMicroelectronics)

STEVAL-ASTRA1Bボードは、NFCとともに、短距離および長距離コネクティビティ用の2つの低電力SoCモジュールをベースにしています。ボードには、データセキュリティ機能のモジュールも搭載されています。キャリアボードには、複数の環境センサとモーションセンサおよび、位置座標を提供してジオフェンシングを可能にする全地球航法衛星システム(GNSS)モジュールが搭載されています。電源管理システムは、すべてのデバイスコンポーネントの動作モードを安定させ、電源を制御します。電源はスイッチングコンバータ、電池、USB-C充電コントローラで構成され、電池寿命を可能な限り長くしています。納入時のキットには、480mAhのリチウムポリマー(Li-Poly)電池、ケース、SMAアンテナ(LoRa)、NFCアンテナが含まれています。

STEVAL-ASTRA1BボードのICとSoCは、以下のように構成されています。

  • 2種類のワイヤレスSoC:
    • STM32WB5MMGH6TR:2.4GHzワイヤレス超低電力Arm® Cortex®-M4/M0+ MCUをベースにしたこのSoCモジュールは、メインアプリケーションプロセッサとして機能し、802.15.4、BLE 5.0、Thread、Zigbeeに対応します。
    • STM32WL55JCI6:このワイヤレスSoCは、超低電力Arm Cortex M0+ MCUをベースとし、1GHz未満(150~960MHz)のLoRa、Sigfox、GFSKに対応します。
  • ST25DV64K-JFR8D3:NFCトランスミッタ
  • TESEO-LIV3F:同時マルチコンステレーション対応GNSSモジュール
  • 環境センサとモーションセンサ:
    • STTS22HTR:デジタル温度センサ、-40~125°C
    • LPS22HHTR:圧力センサ、26~126kPa、絶対圧
    • HTS221TR:湿度および温度センサ、0~100%相対湿度(RH) I²C、SPI ±4.5% RH
    • LIS2DTW12TR:加速度計X、Y、Z軸、±2g、4g、8g、16g、0.8Hz~800Hz
    • LSM6DSO32XTR:加速度計、ジャイロスコープ、温度センサI²C、SPI出力
  • STSAFE-A110:セキュアエレメント
  • スマート電源管理アーキテクチャを備えたバッテリ駆動ソリューション:
    • ST1PS02BQTR:降圧スイッチングレギュレータIC、正電圧出力、調整可能、1.8V、1出力、400mA
    • STBC03JR:リチウムイオン(Li-ion)/リチウムポリマー(Li-Poly)用バッテリチャージャIC
    • TCPP01-M12:USB Type-Cおよび電力供給保護

この評価ボードは+5~35°Cの温度で動作し、以下の周波数帯域を使用します。

  • BLE:2400MHz~2480MHz、1mWを基準として+6デシベル(dBm)
  • LoRaWAN:863MHz~870MHz、+14dBm(ファームウェアによる制限あり)
  • GNSS(レシーバ):1559MHz~1610MHz
  • NFC:13.56 MHz

STEVAL-ASTRA1Bの内部構造

ASTRAトランスポンダはデータロガーのように動作し、データの流れを3つの主要ブロックに分け、それぞれがハードウェアドライバとソフトウェアドライバ、およびアプリケーション層で構成されています(図3)。データ入力(図3、左)は、すべてのオンボードセンサ信号をキャプチャします。中央のブロック(図3、中央)は、データの処理と保存を行います。最後に、保存されたデータをワイヤレスでブロードキャストします(図3、右)。再構成、ファームウェア更新、またはプロセス/ロジスティクスデータの書き込みが行われた場合、信号の流れは逆方向になります。

image

図3:ワイヤレス測定トランスポンダのデータフロー:センサ信号が処理
され(左)、保存され(中央)、必要に応じて送信されます(右)。      
(画像提供:STMicroelectronics)

FP-ATR-ASTRA1ファームウェアは、STMicroelectronicsのSTM32Cube開発環境を拡張し、長距離(LoRaWAN、Sigfox)および短距離(BLE、NFC)コネクティビティをサポートする完全なアセットトラッキングアプリケーションを実装しています。この機能パッケージは、環境センサとモーションセンサからデータを読み取り、GNSSジオポジショニングを取得し、それらすべてをBLE経由でモバイルデバイスに送信すると同時に、LoRaWANコネクティビティ経由でクラウドにも送信します。

FP-ATR-ASTRA1パッケージは、低電力プロファイルをサポートし、最大限の自律性を確保するために長い電池寿命を実現しています。また、セキュアエレメント管理、カスタムアルゴリズムの追加機能、デバッグ用インターフェース、拡張機能などの主要機能も備えています。

ソフトウェアパッケージは、ドキュメント、ドライバとHAL、ミドルウェア、サンプルプロジェクトに分かれています。プロジェクトには、Keil、IARおよび、STM32Cube統合開発環境(IDE)用のソースコードとコンパイル済みバイナリが含まれています。あらかじめ定義された以下5つのユースケース(フリート管理、家畜監視、物品監視、ロジスティクス、税関)は、個別に設定可能です。

STEVAL-ASTRA1Bは、イベントによって動作モードが変化するシンプルなステートマシンとして動作します。フル稼働(Run)と低電力(LP)という2つの状態をメインに設計されています。Runモードでは、すべての機能がアクティブになり、すべてのデータが設定通りにブロードキャストされます。LPモードでは、MCUを除くすべての部品が低電力モードまたはディスエーブルに設定されます(図4)。

image

図4:STEVAL-ASTRA1Bの主な動作モードは、フル稼働(Run)と
    低電力(LP)モードの2種類です。(画像提供:STMicroelectronics)

サイドキーを押すことで、2つの状態間の遷移がトリガされます。別の入力としては、マイクロエレクトロメカニカルシステム(MEMS)イベントの出力や、アルゴリズムの結果などが考えられます。これは、ステートマシンを実装することでデバイスの動作を変化させる一例に過ぎません。また、システムの応答性と電池寿命を両立させるため、複数の中間状態を実装することも可能です。

想定されるイベントは、以下の通りです。

  • BP:ボタンが押されたイベント
  • SD:シャットダウンイベント
  • ER:エラーイベント
  • EP:次のステップへの自動遷移
  • RN:フル稼働コマンドに移行
  • LP:低電力コマンドに移行

クラウドデータの取得および可視化

STEVAL-ASTRA1BトランスポンダにはFP-ATR-ASTRA1ファームウェアパッケージがプリインストールされているため、環境測定信号やGNSS位置データを数分で可視化できます。

スマートフォンやタブレット用のSTAssetTrackingモバイルアプリを使用し、Bluetoothを有効にしてインターネットに接続することで、myst.comのユーザーアカウントを介したLoRaWAN参加者として、TTN(The Things Network)V3ネットワークサーバにトランスポンダが登録されます。また、Amazon Web Services(AWS)上のDSH-ASSETRACKINGウェブダッシュボードにもリンクされます。

TTN登録後、モバイルアプリの更新されたデバイスリストにSTEVAL-ASTRA1Bが表示されます。メニューの[Start synchronization]ボタンを押すと、トランスポンダの送信モードが起動し、保存されたデータをBLEとLoRaWAN経由で同時送信します。このモバイルアプリでは、メモリからの測定データをダッシュボードに表示したり、トランスポンダのGNSS位置を出力したり、地図上にマーカーで表示したりすることが可能です(図5)。

図5:モバイルアプリは、TTNでトランスポンダを登録し、クラウドダッシュ
  ボードへリンクするのに役立ちます。記録されたセンサ値を可視化し、設定と
デバッグを支援します。(画像提供:STMicroelectronics)                            

ASTRAトランスポンダに加えて、ウェブダッシュボードは、P-L496G-CELL02(LTE)、 NUCLEO-S2868A2(Sigfox RF送信機)などのスタンドアロンワイヤレストラッカーや、STEVAL-SMARTAG1(WiFi)、STEVAL-MKSBOX1V1(BLEエンドノード)、STEVAL-SMARTAG1(NFCエンドノート)などのインターネット結合ノードをクラウドで集計することができます。これにより、クラウドベースのマルチプロトコルワイヤレスエコシステムの開発が可能になります。

個別設定とプログラミング

ASTRAトランスポンダの工場設定が初期試運転で正常に評価されたら、次のステップは、開発者がトランスポンダを独自のアセットトラッキングアプリケーションにカスタマイズすることです。

ハードウェアを追加しない小規模なカスタマイズ作業であれば、BLEとモバイルアプリ(モバイルアプリの「ハンマーとレンチ」アイコンを押す、図5)で各種パラメータや機能を設定すれば十分な場合があります。

プロジェクトを設定するもう1つの方法は、コマンドラインとデバッグコンソールを使用することです。PCの端末プログラム(Tera Termなど)がUSBで仮想COMポートを使用して通信するのに対し、このモバイルデバイスはSTBLESensor(ST BLE Sensor)アプリを使用し、BLEでネットワーク接続します(図6)。

図6:PC上のコマンドラインとデバッグコンソール(左)および、モバイルデバイス上の
コマンドラインとデバッグコンソール(右)。(画像提供:STMicroelectronics)            

ファームウェアのアップデート、他のライブラリ機能の統合、または開発者自身のアプリケーションコードの生成と同様に、ASTRAボードの再プログラムには、JTAGインターフェース経由でのアクセスが便利です。このため、別売のSTLINK-V3MINIEデバッグ/プログラミングアダプタを14ピンのリボンケーブルでASTRAボードに接続します。すると、PCにインストールされたKeil、IAR、STM32CubeなどのIDEは、コンパイルしたバイナリファイルをアプリケーションプログラムメモリに書き込んだり、プログラムシーケンスをデバッグしたりできるようになります。

また、STLINK-V3MINIは、ホストPCとターゲットマイクロコントローラがUART経由で通信するための仮想COMポートインターフェースも提供します。

異なるArm MCUのファームウェア更新を行うには、いくつかの方法があります。

  • PC上のSTM32CubeプログラマがJTAGアダプタとMCUブートローダを使用して、バイナリファイルをフラッシュメモリに書き込みます。
  • PC上のSTM32CubeプログラマがUSBとMCUブートローダを使用して、バイナリファイルをフラッシュメモリに書き込みます。
  • モバイルデバイスのSTBLESensorアプリを使用して、BLE経由でFirmware Upgrade Over-The-Air(FUOTA)を実行します。

アプリケーションコントローラSTM32WL55JC(LoRaWAN)は、STM32WB5MMG(BLE)のマスターとして機能するため、フラッシュする各MCUコアをジャンパで選択する必要があります。

STM32CubeMXを使用したグラフィカルソフトウェア設定

STM32Cubeは、開発工数、時間、コストを削減することで、開発者の生活をより快適にします。このIDEは、STM32 MCUポートフォリオ全体をカバーします。また、STM32CubeMXでは、グラフィカルウィザードを使用した設定やCコードの生成も可能です。FP-ATR-ASTRA1ソフトウェアパッケージは、STM32Cubeの機能を拡張し、STM32CubeMX IDEに直接インストールできます。

図7は、STM32CubeMXシェル、つまりナビゲーション(左と上)、FP-ATR-ASTRA1パック設定(中央)、およびそのアーキテクチャ(右)を示しています。FP-ATR-ASTRA1パックは、カスタマイズのための3つのタブ([Platform Settings]、[Parameter Settings]、[ASTRA ENGINE])を提供します。

図7:STM32CubeMXツールを使用したグラフィカルソフトウェア設定。
   ナビゲーション(左と上)、FP-ATR-ASTRA1パック設定(中央)、および
そのアーキテクチャ(右)。(画像提供:STMicroelectronics)                

すべの設定が完了したら、ボタンを押すことで、STM32CubeMXからコードを生成できます。目的のIDEを開いて、ファームウェアコードをカスタマイズし、コンパイルし、ボード上にフラッシュすることができます。

生成されたソースコードは、ハードウェアブロックと機能の観点からモジュールアーキテクチャになっています。ハードウェアブロック管理は、特定の定義(USE_GNSS)によって識別されます。各機能は、システムの初期化、ステートマシンの設定、データ管理など、さまざまなファイルで管理されています。

ファイルツリーが複雑であるにもかかわらず、このユースケースのアプリケーション構成に関わるファイルはわずかです。

  • app_astra.c/.h
    このメインファイルはエントリポイントであり、MX_Astra_Init()内の初期化関数を呼び出します(リスト1)

image

リスト1:このMX_Astra_Init()関数は、システム初期化に使用されます。
(リスト提供:STMicroelectronics)

  • astra_confmng.c/.h
    このボード構成マネージャには、各ハードウェアブロックとユースケースの実装と構成を有効/無効にするためにユーザーによって選択された変数が含まれます。
  • astra_datamng.c/.h
    このファイルでは、センサなどの入力から収集したデータがRAMに保存されます。データに対して特定のアルゴリズムを実行するなど、すぐに操作できる状態になっています。
  • astra_sysmng.c/.h
    ここには、システム関連の機能が実装されています。主な機能としては、コマンドラインインターフェース、ボタンコールバック、アルゴリズム、LED、アセットトラッキングユースケース管理、タイマ管理などがあります。
  • SM_APP.c/.h
    これらのファイルには、ステートマシンの設定構造が含まれています。

まとめ

アセットトラッキングアプリケーションの開発は複雑で多段階のプロセスですが、多機能なSTEVAL-ASTRA1B開発プラットフォームがそのタスクを簡素化します。必要なハードウェアとソフトウェアをすべて搭載しており、ウェブインターフェースまたはモバイルデバイスアプリでワイヤレストランスポンダのログデータを迅速かつ簡単に可視化する方法を提供します。上述したように、開発者はコードプログラミングを行うことなく、柔軟な設定ツールを使用して、このワイヤレスデータロガーをトラッキング・監視アプリケーションに合わせて簡単にカスタマイズできます。また、自動コード生成ツールを使用することも可能です。

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

関連動画
公開日:2018-09-18

公開日:2019-08-30

公開日:2017-10-03


関連プロダクトトレーニングモジュール

Pre-packaged Solutions for the Wearable Market
This presentation will provide an overview of the design ecosystem STM32 ODE and the turn-key solutions.


関連製品ハイライト

LIS2DTW12TR MEMSデジタル出力デュアルモーションおよび温度センサ
STMicroelectronicsのLIS2DTW12TRは、「フェムト」ファミリに属する超低電力高性能3軸リニア加速度計および温度センサです。

LPS22HH高精度圧力センサ
STMicroelectronicsのLPS22HH検出素子は、絶対圧力を検出し、STの独自のプロセスを使用して製造された懸架膜で構成されています。

静電容量式デジタルセンサ
STMicroelectronicsのHTS221は、相対湿度および温度用の超小型センサです。 これは小型のトップホールランドグリッドアレイパッケージで入手可能です。


著者について
image
Jens Wallmann

Jens Wallmannはフリーランスの編集者として、印刷物やオンラインのエレクトロニクス出版物に寄稿しています。電気技術者(通信工学)および熟練の工業用電子技術者として、計測技術、車載用電子機器、プロセス産業、高周波を中心とした電子機器開発に25年以上携わっています。




オリジナル・ソース(English)