EclipseVortoを使用した特定のデバイスペイロードの調和
Alexander Edelmann
你好(中国語で「こんにちは」)、私はシンガポールを拠点とし、2006年からRobert Boschのソフトウェアエンジニアとして働いています。私はIoTに情熱を注いでおり、さまざまなIoTプラットフォーム間でデバイス間の相互作用を成功させるオープンスタンダードを信じています。 。そのため、私はEclipse IoT Vortoプロジェクトに積極的に貢献しています。このプロジェクトは、クラウドベースのツールを提供してIoTデバイスを均一に記述し、オープンIoT標準に基づいてさまざまなIoTプラットフォームに統合することを目的としています。 IoTのオタクな面は別として、箸のスキルを練習できるアジア料理を楽しんでいます。コートで友達とテニスボールを打っている私を見つけることもできます。
グローバルスタンダードのない技術環境では、IoTデバイスのメーカー、インテグレーター、プラットフォームプロバイダーは、膨大な量のさまざまなペイロード形式、API、独自のプロトコルに対応するのに苦労しています。
オープンソースプロジェクトのEclipseVortoは、再利用可能なVorto機能ブロックとしてベンダー固有のデバイスペイロードを抽象化するクラウドベースのエディターを提供することで、この問題に対処しています。次に、これらを集約して、Vorto情報モデルの形式でデバイス全体を記述します。情報モデルと機能ブロックは vortolang で記述されています 、 簡単な文法 物理デバイスとそれに対応するデジタルツイン間のインターフェイスを定義します。 IoTソリューションは、これらの抽象的な関数ブロックとそれらの相互に関連するデータスキーマを介してのみ物理デバイスと通信します。このようにして、IoTソリューションは、多数の異なるデバイスデータ形式、API、およびエンコーディングから切り離されます。しかし、デバイスデータをこれらの抽象的なファンクションブロックインターフェイスに変換するにはどうすればよいですか?シンプル:いわゆるVortoマッピング仕様を使用します。これには、デバイス固有のペイロードを調和させるために必要なすべての指示が含まれています。
一般的なペイロードの正規化
データの正規化は、IoTユースケースの要件に応じて、さまざまなシステムノードで処理できます。この分離により、エンティティは独自のデータを正規化されたデータに変換する場所を完全に制御できます。
- デバイスノードでの正規化
このシナリオでは、IoTデバイスはスマートデバイスであり、オンボードセンサーを利用して追加のサービスを提供します。例として、正規化されたデータに関する組み込みの分析を提供するBoschスマートオーブンがあります。クラウドデータレイクに集約できるデータ。 - ゲートウェイノードでの正規化
さまざまなプロトコルドライバー(BLE、GPIOなど)によって複数のセンサーまたはデバイスを接続するゲートウェイは、分析機能やその他のビジネス固有の機能などのゲートウェイ機能を提供するために、デバイスデータを調和させます。 - IoTプラットフォームノードでの正規化
ゲートウェイノードと非常によく似て、クラウドIoTプラットフォームは、ノースバウンドIoTソリューションに付加価値サービスを提供するために、さまざまなプロトコルアダプター(MQTT、CoAPなど)からの着信テレメトリデバイスデータを正規化します。例としては、デバイス管理やデータ分析機能があります。 - アプリケーションノードでの正規化
アプリケーションは、サポートされているデバイスにとらわれず、技術的なデバイス固有のデータデコーダーを実装するのではなく、アプリケーション固有のビジネス機能に重点を置くために、データを正規化します。
デバイスがペイロードマッピングを実行できない場合があります。しかし、役割を果たすことができる他の要因もあります。モバイル接続を介してバックエンドにデータを送信することに伴う制限について考えてみてください。多くの場合、送信するデータの量を最小限に抑えたいと思うでしょう。問題は、マッピング後、正規化とバイナリデータおよび同様の情報からの変換により、デバイスのペイロードがさらに肥大化することです。したがって、帯域幅を節約するには、別のシステムノードでペイロードマッピングを実行する方が理にかなっています。たとえば、プラットフォーム上で。
デバイスでペイロードマッピングが実行されない場合、このステップを実行できる別のエンティティが必要です。マッピングエンジンを使用する必要があります。これにより、ペイロードをゲートウェイなどの中間プラットフォームで、またはアプリケーションで直接変換できます。
出典:Eclipse Vortoデータの正規化は、デバイスノード(1)、ゲートウェイノード(2)、IoTプラットフォームノード(3)、またはアプリケーションノード(4)のいずれかで処理できます。
Tim Grossmann
ドイツのコンピュータサイエンスの学生として、私は過去1年半にわたって、ボッシュの3つの異なる部門で宿題を引き受けてきました。私は特にオープンソースとEduTechテクノロジーに興味があります。 IoTと自動化は、人々の生活、仕事、楽しみ方を変え、改善する大きな可能性を秘めていると思います。情熱的な学習者であり開発者でもある私は、常に新しいスキルとツールを学びたいと思っています。私は通常の仕事に加えて、Instagram用の世界最大の無料のオープンソース自動化ボットを構築して維持しています。余暇には、友達と一緒に登山を楽しんだり、海外旅行を楽しんだりしています。
EclipseVortoが正規化に対処する方法
Eclipse Vortoは、デバイスのVorto情報モデルを介して構成できるランタイムライブラリを提供します。これには、デバイス固有のペイロード変換ルールで情報モデルを強化するマッピング仕様が含まれています。実際には、ランタイムライブラリはデバイスのペイロードを入力として受け取り、マッピング仕様を適用することで、変換および正規化されたペイロードを出力します。
マッピング仕様は、デバイスの情報モデルとともに、Vortoリポジトリで管理およびバージョン管理されます。これにより、正規化がデバイス、ゲートウェイ、プラットフォーム、またはアプリケーションノードのいずれで行われるかに関係なく、マッピング仕様を他のユースケースで再利用できます。マッピングライブラリは現在、JavaおよびNode.jsプラットフォームでサポートされています。 Vorto PayloadMappingライブラリの詳細をご覧ください。
例:EclipseVortoを使用した業界データの正規化
前述の概念を明確にするために、Vorto情報モデルとマッピングがどのように使用されるかの具体例を見ていきます。
この例では、CSVデータを永久磁石同期モーター(PMSM)からEclipse HonoMQTTコネクターに送信します。
Vorto Payload正規化ミドルウェアは、Eclipse Honoからのデータを消費し、Vorto Payload Mapping Engineを介してパイプ処理し、正規化されたデバイスデータをAMQPトピックとして公開します。 AMQP 1.0サブスクライバーは、Bosch IoT Thingsなどのデジタルツインソリューションを使用して、接続されているデバイスに関係なく、調和したデバイスデータを取得して処理できるようになりました。
この例では、正規化されたEclipse Vortoデータを受信して保存する、オープンソースのデジタルツインサービスであるEclipseDittoを使用しています。次に、VortoダッシュボードはEclipse DittoデジタルツインAPIからデータを要求し、事前定義されたEclipseVorto準拠のUIウィジェットを使用してデータを適切にレンダリングします。
出典:EclipseVortoデバイスペイロードマッピングパイプラインの完全な概念設定。Vorto Mapping Engineを使用してさまざまなデバイスペイロードをマッピングするパイプライン全体がどのように機能するかを確認したい場合は、Vortoダッシュボードデモに進んでください。
この記事では、ペイロードマッピングについて簡単に紹介します。独自のユースケース向けにこのパイプラインを設定するプロセス全体を実行したい場合は、詳細なチュートリアルを使用して実行できます。カスタムデバイスのペイロードを段階的にマッピングする方法を説明します。
モノのインターネットテクノロジー