IoTにおけるオープンソース:違いを生み出すプラットフォーム、データ、エッジAI

  • オープン IoT プラットフォーム (DeviceHive、ThingSpeak、Mainflux、Thinger.io、OpenRemote) と Google Cloud IoT は、接続、管理、分析をカバーします。
  • リアルタイムの取得、処理、視覚化を実現する Chirpstack、Node-RED、TICK、Grafana、InfluxDB を備えた産業用スイート。
  • 主要なデータ/インフラ リソース (Hudi、Iceberg、Superset、CockroachDB、DuckDB、Istio、Bun、CPython、HTMX/Hyperscript、Claude 2)。

AIoT

モノのインターネットのエコシステムは無制限に成長しており、オープンソース ソフトウェアが主導的な役割を果たしています。 IoTプラットフォームからエッジ向けデータツールやAIモデルまでリーズナブルなコストと優れた柔軟性で強力なソリューションを構築できる幅広い選択肢があります。どのテクノロジーを採用するかを検討している方は、最も関連性の高い情報を網羅した、包括的で実用的なガイドをご覧ください。

本題に入る前に、いくつかの概念を明確にしておくことが重要です。 「オープンソース」は「フリーソフトウェア」と全く同じではないオープンソースフレームワークとカスタムプラットフォームのどちらを選択するかは、プロジェクトのセキュリティ、コスト、そして進化に大きな違いをもたらす可能性があります。さらに、リソースが限られたデバイスを扱う場合は、エッジで優れたパフォーマンスを発揮する軽量AIモデルについても知りたいと思うでしょう。

フリーソフトウェアとオープンソースソフトウェア

これらの用語は混同されることが多いですが、重要なニュアンスがあります。 フリーソフトウェアはユーザーの自由を優先するプログラムを実行、研究、改変、再配布する自由であり、FSFの4つの自由を中心としています。一方、オープンソースは、ソースコードを閲覧、改変、配布するために利用可能であることを重視します。 ライセンスには条件が課される可能性があるが 再配布や変更については自由ソフトウェア運動と必ずしも同じ目標を追求しているわけではありません。

言い換えると、 フリーソフトウェアの焦点はユーザーの権利にあるオープンソースはオープンコードとコラボレーションに重点を置いていますが、もちろん重複する部分もありますが、その哲学と目的は同一ではありません。

IoT プラットフォームとは一体何でしょうか?

IoT プラットフォームは、デバイス、データ、アプリケーションを接続するバックボーンです。 インフラと構成要素を提供する サービスを開発するには: デバイスとの通信管理とプロビジョニング、セキュリティ、クラウド統合、分析ツールなど。 ビジネス機能に集中できます 接続性と操作性において、車輪の再発明をする必要はありません。

IoTエッジ向け軽量AIモデル

最適化されたメモリ、バッテリー、CPUを備えたエッジ実装では、 コンパクトで効率的なモデルが大きな違いを生むサイズと機能のバランスが優れているものとしては、Meta Llama 3.1 8B (多言語の効率とパフォーマンス)、GLM-4-9B-0414 (関数呼び出しとツールとの統合)、Qwen2.5-VL-7B (ビジョンを備えたマルチモーダル インテリジェンス) などがあります。 これらのアプローチは、地域における意思決定を可能にする鍵となる。 常にクラウドに依存する必要はありません。

オープンソースのIoTプラットフォームと関連トピック

デバイスハイブ

DeviceHive は、ビッグ データに重点​​を置いたデバイスの接続とクラウド サービスの管理のための M2M フレームワークを提供します。 非常にシンプルな Web パネルが含まれています。 ネットワークの作成、セキュリティルールと監視の適用、サンプルプロジェクト、オンラインテストインスタンスなどが含まれます。提案内容は以下のとおりです。 クラウド間の橋、 組み込みシステムとモバイルアプリ かなりバランスの取れた方法で。

シングスピーク

ThingSpeak は MathWorks と密接に連携しており、ほぼリアルタイムのセンサー データに対して MATLAB を使用した分析機能で際立っています。 その機能の中には これらには、ライブストリームの集約と分析、プライベート使用のための公開チャンネルの記録、チャンネルの共有、視覚化、REST APIとMQTTによる更新、オンラインMATLABツールなどが含まれます。 TimeControlによるアラート イベントによって引き起こされます。

mainflux

Mainflux は、接続性と管理性に優れた Golang スタックです。 HTTP、MQTT、WebSocket、CoAPをサポートデバイスのプロビジョニングと管理、Docker のデプロイメント、Kubernetes オーケストレーションが組み込まれています。 カスタマイズ可能なAPIキーによるセキュリティ リーチ付きJWTOPEXの削減にも役立ちます。オンプレミス、ハイブリッド環境、クラウドのいずれにもインストールできます。

シングラー

Thinger.io は、Docker コンテナを介して展開されるクラウド プラットフォームです。 多種多様なハードウェアを統合します。 (Arduino IDE、Linux、Sigfox、ARM Mbedボード)は、ユーザーフレンドリーな管理コンソール、Webソケットへのストリーミング、リアルタイムデータダッシュボードなどを提供します。 iOSおよびAndroidモバイルアプリ 複数のデバイスでIFTTTの自動化が可能です。見た目はあまり魅力的ではありませんが、 彼らの「リアクティブプログラミング」アプローチは最大の強みです。.

Google クラウド IoT

Google のプラットフォームは厳密にはオープンソースではありませんが、接続された IoT アーキテクチャに役立つ要素を提供します。 MQTTブリッジを実装する 接続には外部プロキシネットワークバランサを使用します。IoTアプリはPub/Sub経由でデータを使用するか、DataflowのMQTTコネクタを使用できます。また、システムは 鍵管理サービス: 資格、 認証と承認デバイスの構成と登録、ルール エンジン、更新管理も共通の機能です。 デジタルツイン、アラート、統計 その生態系の中で。

リモートを開く

OpenRemote は、HTTP、SNMP、MQTT、Bluetooth などのプロトコルを使用して、インテグレーター、製造元、管理者の統合を容易にします。 あなたの強み これらには、マップと資産ビュー、ユーザー定義型を持つ資産モデル、モデル調整可能なエージェントプロトコル、IF-THENルールのグラフィカルインターフェース、ダッシュボードなどが含まれます。 エッジインスタンスと中央サーバ間の相互接続 マルチテナント管理。適用対象は 艦隊エネルギー、集団管理、建物、都市、空港、医療など。

オープンソースかカスタムプラットフォームか?

多くのオープン プラットフォームは紙の上では似ているように見えるかもしれませんが、選択は目的、予算、リスク、チームによって異なります。 オープンソースは時間を節約し、柔軟性を提供するしかし、課題がないわけではありません。貢献の質が不均一であること、メンテナンスとセキュリティが繊細であること、そしてデータ プライバシーの重要性が高まっていることなどが課題です。 コストは必ずしも低いわけではない 標準機能のセットは、必ずしもあなたの目標に完全には合致しない可能性があります。さらに、 通常、経験の浅いユーザー向けではありません。.

カスタム プラットフォームを選択する場合、主な議論は制御です。 デザイン、セキュリティ、機能性を完全に習得している 既存のシステムとの統合、エンドツーエンドの保護、パフォーマンス、信頼性、拡張性の最適化を実現します。このアプローチは、適切に実行されれば、 リターンを最大化する 急速に変化する環境で成長するためのソリューションを準備します。

eManagerソリューションとツールスイート

eManagerは、ソフトウェアプロフェッショナル向けの産業用IoTコントローラーとして開発されました。 多用途のマルチプロトコルハードウェア プロジェクトを簡単に実行できる場所。リポジトリには、データ収集、可視化、ストレージソフトウェアのトップ8リストがまとめられており、 実際の事例を本番環境に導入する 速い

取得と可視化

Chirpstackは、メッセージ翻訳、クラウド統合、ヘルス管理、インベントリなどを備えたLoRaWANネットワーク向けの完全なオープンソーススタックを提供します。 センサーの起動とデバイスへのデータの送信ユーザー、組織、アプリ、デバイス向けの Web インターフェースを提供し、gRPC および REST API を公開します。 データはMQTT/HTTP経由で流れる InfluxDB で記述されます。

一方、Node-RED は、少ないコードでフローをオーケストレーションできる IoT の万能ナイフです。 ビジュアルプログラミングにより、ハードウェア、API、サービスを簡単に接続できます。 リアルタイムで変換できるため、インダストリー4.0の最適な選択肢となります。急激な学習曲線なしで俊敏性を求めるなら、 それは必需品です。.

TICK スタックは、Telegraf (メトリックおよびイベント エージェント)、Kapacitor (リアルタイム処理)、Chronograf (InfluxData インターフェイス) を InfluxDB を基盤として組み合わせたものです。 これらを組み合わせることでエンドツーエンドのソリューションが実現します 大量の書き込みとクエリ負荷を伴う時系列をキャプチャ、監視、視覚化、自動化します。

Grafana は、豊富なダッシュボードとアラートで視覚化サイクルを完了します。 InfluxDB データを活用するのに最適です。 複雑な手順を踏まずに魅力的なダッシュボードを構築できます。パターンや異常を検出する必要がある場合は 肉眼ここにあなたの味方がいます。

データベース

TICK スタック内の InfluxDB は時系列に最適化されています。 たくさんの文章、簡単な質問監視、指標、センサー、そしてリアルタイム分析。一秒一秒が重要な時、 そのアーキテクチャが違いを生む.

MariaDB は MySQL の優れた機能を継承し、さらに改良を加えています。 複雑なクエリのキャッシュ新しい接続管理、クラスタアクセス、そして高度な階層構造のサポート。MySQLエコシステムから移行する場合、 親しみやすく、力強いものになるでしょう.

PostgreSQL は、高い同時実行性、多様なデータ型、オブジェクト指向、クロスプラットフォームの互換性を備えたオープンソースのリレーショナル データベースのベンチマークです。 リレーショナル データには SQL を、非リレーショナル データには JSON をサポートします。これにより、ハイブリッド プロジェクトで非常に柔軟に対応できるようになります。

SQLite は組み込みシステムや小規模なハードウェアに最適です。 軽量、効率的、高速 シンプルなローカルストレージ用。デバイスが主な関心事でリソースが限られている場合は、 複数の窮地から抜け出すことができます。.

スイートの新機能

eManager 製品シリーズでは、ソフトウェアが Node-RED 2.1.4 および Yocto Dunfell にアップデートされ、UPnP プロトコルやその他の改良も組み込まれています。 パフォーマンス、セキュリティの更新、デバッグ、ログ記録が向上します要求の厳しい産業用途向けにエクスペリエンスを洗練させています。より詳細な情報をご希望の場合は、 公式ドキュメントを参照してください ニュースレターで最新情報を入手してください。

オープンソース:それが何を意味するのか、そしてなぜ重要なのか

ソースコードが公開されているツールをオープンソースと呼びます。 閲覧、変更、再配布が可能これにより、コミュニティがバグ修正、新機能、品質向上に貢献する、協力的で透明性の高い開発が可能になります。ライセンスでは通常、これらの使用が許可されています。 革新と適応を促進する 特定のニーズに合わせて。

オペレーティング システムの Linux、ブラウザーの Mozilla Firefox、オフィス スイートの LibreOffice など、例はたくさんあります。 パターンは繰り返される大きな問題が発生し、解決策がない場合、その問題に対処するためのオープン プロジェクトが登場します。

データ、バックエンドなどの注目のオープンソース リソース

1) アパッチ・フディ

Hudi は、Hadoop と Spark 上でリアルタイムの増分ストレージと処理を実現するフレームワークを提供します。 アップサート、削除、増分に重点を置いている これにより、継続的なデータ取り込みとインタラクティブな分析に最適となり、データレイクやレイクハウスと連携して、 低レイテンシクエリ 大容量データに最適です。Spark、Flink、Presto、StarRocks、Amazon Athenaと統合できます。

2) アパッチアイスバーグ

Icebergは、アトミック書き込み、スナップショット、 最適化された読み取りとパーティション/ソートSpark、Hive、Presto、その他のエンジン(ClickHouse、Dremio、StarRocks)と連携し、 大規模データセットにおける HDFS/Hive のボトルネック スキームの進化、圧縮、ロールバックを容易にします。

3) Apache スーパーセット

Superset は、多くのチームが拡張する必要のあるセルフサービス分析プラットフォームです。 SQL、データ ウェアハウス、データ レイクと接続するチャートビルダーとSQL IDEを備え、棒グラフや円グラフから高度な地理空間可視化まで、あらゆるものをサポートしています。プロジェクトに強力なBIコンポーネントが含まれている場合は、 時間と手間を省きます。.

4) パン

Bun は、サーバー側 JS 用の単一のランタイム ツール、パッケージ マネージャー、パッケージャーに集約されています。 その最大の強みはパフォーマンス (Zigのおかげもあって)統合されたエクスペリエンスにより、NodeやDenoの本格的な代替手段となっています。CLIとビルド時間を数秒短縮したいなら、 試してみましょう.

5) クロード2

この Anthropic アシスタントは、膨大なコンテキスト (最大 100.000 トークン) を処理し、複数の言語でテキストをスムーズに下書きまたは変換します。 要約、抜粋、書き直し、回答することができます コンテンツに基づいた指導が可能で、一般的なプログラミング言語を理解しています。HHH原則(Helpful、Honest、Harmless)に基づいてトレーニングを受けています。 危険な出口に陥りにくい あなたのデータを使ってトレーニングしたり、インターネットを参照して回答したりすることはありません。

6) コックローチDB

自動レプリケーションとACID準拠の分散型高可用性SQLデータベース 読み取りと書き込みの水平スケーリング大量のトランザクションや複数リージョンに展開するアプリケーションに最適で、レイテンシを低減し、規制コンプライアンスの遵守に役立ちます。Netflixや金融機関などの組織にとって便利です。 大規模生産に使用.

7) CPython(最近の改良)

Python 3.11と3.12では、 基準となる演奏者のパフォーマンスの目に見える飛躍コードを変更することなく、ほとんどのプロジェクトにメリットをもたらします。近い将来、GILに対処する計画が、 マルチプロセスにおける真の並列処理 そして追加の収入。

8) ダックDB

埋め込み可能な分析エンジン 列実行、並列処理、低消費ノートパソコンや組み込みシステムでの複雑なクエリやインタラクティブな探索に最適です。標準SQL、ACIDトランザクションに対応し、pandasやdplyrとの統合も可能です。 分析とアプリケーション間の摩擦を軽減.

9) HTMLとハイパースクリプト

彼らは従来のHTMLを「フルスロットル」で実行することを提案しています。HTMLMXは繰り返しのJavaScriptを AJAX、状態、データの宣言属性HyperScriptはHyperCardスタイルの構文で非同期性とDOMを簡素化します。これらを組み合わせることで、 リアクティブフレームワークの落ち着いた代替手段 過負荷にならない速度を求めている場合。

10) イスティオ

究極のサービスメッシュ:ルーティングと負荷分散を容易にし、 詳細な観測可能性マイクロサービス間の暗号化、認証、認可。Kubernetesと統合し、 ネットワークとセキュリティに関する懸念 コードの、複雑な展開におけるポリシーの標準化。

コミュニティと優れた実践

AI や自動化ツールを使用する場合は、コード、ヒント、ベスト プラクティスを共有するコミュニティに参加することをお勧めします。 ChatGPTを使ったプログラミングに特化したサブレディットがあります 交流、使用のヒント、完成したプロジェクトが公開されています。投稿する前にルールを読んで維持することを忘れないでください。 有益で敬意のある環境.

資源と拡大

オープンソース ツールについてさらに詳しく知りたい場合は、開発、データ、分析、AI、ML を網羅した数十のプロジェクトが掲載された広範なリストがあります。 前回の選択範囲は1から10です 以降の記事でさらに詳しく説明します。より詳しい情報については、大学のレポートやホワイトペーパーなどの資料や技術ガイドをダウンロードできます。 データ レイク、ウェアハウス、レイクハウスの概念を拡張します。以下は PDF 形式の参考例です。 相談可能ちなみに、 TwitterとLinkedInでフォローしてください 最新ニュースを入手したい場合。

全体を見ると、非常に堅牢な技術的構造であることがわかります。 成熟したコンポーネントを備えたオープンIoTプラットフォーム (DeviceHive、ThingSpeak、Mainflux、Thinger.io、OpenRemote)、オープンワークフローに適したクラウドオプション(Google Cloud IoT)、eManagerのような主要ツールを備えた産業用スイート(Chirpstack、Node-RED、TICK、Grafana、InfluxDB、MariaDB、PostgreSQL、SQLite)、そしてデータとバックエンドのためのオープンソースプロジェクト(Hudi、Iceberg、Superset、Bun、Claude 2、CockroachDB、CPython、DuckDB、HTML/Hyperscript、Istio)など、 摂取から閲覧、ガバナンスまですべてをカバーしますこれらすべてにより、制御を失うことなく成長できる、堅牢で安全かつスケーラブルな IoT ソリューションを設計するのに十分な材料が得られます。

MKR1000
関連記事
MKR1000、IoT用の新しいArduinoボード