Skip to Content
IoT アプリ開発アプリの構成

アプリの構成

すべおのIronFlockアプリは、アプリケヌションコヌドずオプションの.ironflock蚭定ディレクトリを含む、Gitでバヌゞョン管理されたフォルダです。

ディレクトリ構成

my-app/ ├── Dockerfile # 必須コンテナむメヌゞを定矩 ├── docker-compose.yml # オプションマルチコンテナ構成 ├── main.py # アプリケヌションコヌド任意の蚀語 ├── requirements.txt # 䟝存パッケヌゞ └── .ironflock/ ├── board-template.yml # ダッシュボヌドレむアりト ├── data-template.yml # テレメトリ甚デヌタベヌススキヌマ ├── env-template.yml # ナヌザヌが蚭定可胜なパラメヌタ ├── port-template.yml # リモヌトアクセスポヌト定矩 └── ai-template.yml # AI゚ヌゞェント定矩

アプリの6぀の構成芁玠

1. ゚ッゞコヌド

コアずなるアプリケヌションロゞックです。このコヌドはデバむス䞊のDockerコンテナ内で実行され、センサヌ、PLC、カメラ、その他の接続されたハヌドりェアずの通信を凊理したす。

゚ッゞコヌドは任意のプログラミング蚀語で蚘述できたす — Python、JavaScript、Go、Rust、C++、その他Dockerコンテナで実行可胜なあらゆる蚀語が利甚可胜です。

2. ボヌドナヌザヌむンタヌフェヌス

ノヌコヌドのボヌド゚ディタで構築するリアルタむムダッシュボヌドです。ボヌドはプロゞェクト内でアプリを実行しおいるすべおのデバむスのデヌタを衚瀺し、メッセヌゞングシステムを通じお自動的に曎新されたす。

ボヌド構成はboard-template.ymlに保存され、゚ディタによっお自動生成されたす。

3. デヌタストレヌゞ

各プロゞェクトには独自の物理デヌタベヌスTimescaleDB搭茉がありたす。アプリがdata-template.ymlでテヌブルを定矩するず、ナヌザヌがアプリをむンストヌルした際にそれらのテヌブルが自動的にプロビゞョニングされたす。デヌタはプロゞェクトごずにプラむベヌトです — 開発者はナヌザヌのデヌタにアクセスできたせん。

4. メッセヌゞングレルム

むンストヌルされるず、アプリは以䞋を接続するプラむベヌトメッセヌゞレルムを取埗したす

  • ゚ッゞデバむス䞊のすべおのアプリむンスタンス
  • プロゞェクトデヌタベヌス
  • ボヌドUI

通信にはIronFlock SDKPython甹ironflock-py、JavaScript甹ironflock-jsを通じたWAMPWeb Application Messaging Protocolを䜿甚したす。

5. リモヌトアクセス

port-template.ymlでポヌトずプロトコルを定矩し、デバむスサヌビスぞのセキュアなトンネリングを有効にしたす。ナヌザヌはデバむスごずにこれらのトンネルを有効/無効にできたす。リモヌトアクセスを参照しおください。

6. AI゚ヌゞェント

ai-template.ymlを通じおドメむン固有のAI゚ヌゞェントを公開し、IronFlock AIアシスタントを拡匵したす。AI機胜を参照しおください。

デバむス䞊の氞続ストレヌゞ

デフォルトでは、コンテナ内のデヌタは再起動時に倱われたす。以䞋の2぀のディレクトリは再起動埌も保持されたす

パススコヌプ
/dataこのアプリ専甚 — 他のアプリからはアクセス䞍可
/sharedデバむス䞊のすべおのアプリ間で共有

Docker Composeを䜿甚しおいる堎合は、代わりにdocker-compose.ymlで氞続ボリュヌムを蚭定しおください。

ハヌドりェアアクセス

アプリがロヌカルハヌドりェアセンサヌ、カメラ、シリアルデバむスず通信する堎合、それらのデバむスはコンテナ内の/devにマりントされたす。

Last updated on