Skip to Content
IoT アプリ開発概要

IoT アプリ開発

任意のプログラミング言語を使用してIoTアプリケーションを構築し、プロジェクト内のデバイスで利用できます。

アプリとは?

IronFlockアプリは、単にデバイス上で動作するソフトウェアではありません。フィールドでデバイスを運用するために必要なすべてを統合した、完全な自己完結型プロダクトです。

  • エッジコンポーネント — コンテナ内でデバイス上で実行されるアプリケーションロジック。これはアプリの一部です。
  • ボード — アプリ自体の一部として定義された、データの可視化やデバイスとのインタラクションのためにユーザーがブラウザで開くダッシュボード。
  • データスキーマ — 時系列データベースに収集・保存するテレメトリをIronFlockに指示するテーブル定義。
  • パラメータ — コードに触れずに、デバイスごとまたはグループごとにオペレーターが調整できる設定項目。
  • リモートアクセス設定 — Node-REDやGrafanaなどのデバイス側WebUIをブラウザ上で直接公開するトンネル定義。
  • AI連携 — デバイスのデータに関する質問に回答できるオプションのAIエージェント設定。
IronFlock アプリのアーキテクチャ:エッジソフトウェア、AI エージェント、UI ボード、データスキーマ、リモートアクセストンネル設定をまとめた単一のデプロイ可能なユニット。

アプリがデバイスやグループに追加されると、IronFlockはエッジコンポーネントのデプロイ、データ収集の接続、ボードとリモートアクセスの有効化を一括でOTA(Over-the-Air)で実行します。

独自アプリを開発するタイミング

IronFlock App Storeには一般的なユースケース向けの既製アプリが用意されています。ただし、以下のような場合には独自アプリの開発が有効です:

  • 既存のソフトウェアがある場合 — コンテナで実行可能なアプリケーションであれば、IronFlockアプリにできます。IronFlockアプリ定義でラップするだけで、ダッシュボード、データ収集、OTAアップデート、フリート管理がすぐに利用可能になります。
  • ビジネスロジックを完全に制御したい場合 — カスタムセンサー処理、エッジAI推論、プロトコル変換、ドメイン固有のアルゴリズムなど。
  • 独自のダッシュボードが必要な場合 — 内蔵のボードエディタで、フロントエンドコードを書くことなく、オペレーターに必要な可視化とコントロールを設計できます。
  • 製品を構築している場合 — ソフトウェアをIronFlockアプリとしてパッケージ化し、有料ライセンスのオプション付きでApp Store経由で顧客に配布できます。
  • フリート全体で標準化したい場合 — 1つのアプリ定義を数千台のデバイスに同一にデプロイし、パラメータを一元管理できます。

得られるもの

IronFlockでアプリを開発すると、以下が利用できます:

  • OTAデプロイ — SSH不要で、ワンクリックですべてのデバイスにアップデートを配信。
  • 標準搭載のデータストレージ — テーブルスキーマを一度定義するだけで、IronFlockが時系列データベースを作成し、自動的にデータ収集を開始。
  • 内蔵ダッシュボード — 別途フロントエンドサービスは不要。ボードはアプリの一部であり、IronFlockがホスティング。
  • 設定可能なパラメータ — APIキー、閾値、アドレスなどの設定を公開し、コードに触れずにデバイスごとまたはグループごとにオペレーターが変更可能。
  • リモートアクセストンネル — デバイス上で動作するWeb UIをIronFlockのトンネルインフラを通じてブラウザ上で直接表示。
  • アプリ配布 — App Storeに公開し、他のIronFlockユーザーや顧客にアプリを提供可能。

アプリアーキテクチャ

IronFlockアプリは6つのコンポーネントで構成される自己完結型パッケージです:

コンポーネント設定ファイル説明
エッジコードDockerfileデバイス上で実行されるアプリケーションロジック
ボード.ironflock/board-template.ymlユーザーインターフェース / ダッシュボード
データストレージ.ironflock/data-template.ymlテレメトリ用データベーステーブル
パラメータ.ironflock/env-template.ymlユーザーが設定可能な項目
リモートアクセス.ironflock/port-template.ymlWeb UI用トンネルポート
AIエージェント.ironflock/ai-template.ymlAIアシスタント連携 — AI機能を参照

.ironflock/ディレクトリ内の設定ファイルはすべてオプションです。最低限、アプリにはDockerfileとアプリケーションコードが必要です。

このセクションの内容

Last updated on