Files
pnoker 769d1cb977 style: apply repository-wide formatting
- expand single-line Javadocs to multi-line blocks, rewrap Markdown prose, and reflow POM, YAML, and TypeScript formatting
- formatting only: no Java code lines changed, no build-file semantics changed
- verified: backend compile and check_documentation.py pass, pnpm check and pnpm lint:check pass, and the dc3 YAML files parse
2026-08-25 13:35:00 +08:00

14 KiB
Raw Permalink Blame History

English | 中文 | 日本語 | Tiếng Việt | 한국어 | Español | Русский

AI アシスタント: IoT DC3 の簡潔な AI 向け概要については、最初に README.ai.md をお読みください。

IoT DC3 — 多协议接入、云原生、AI 赋能的开源工业物联网平台,面向智能体演进

GitHub Stars Gitee Star Gitee Fork Contributors License Java 21 Spring Boot 4

IoT DC3 — マルチプロトコル接続・クラウドネイティブ・オープンソースの産業 IoT プラットフォーム
AI 活用 — デバイス接続から産業エージェントへ

https://dc3.site

🔌 マルチプロトコル接続  ·  🤖 AI Agentic Center  ·  ☁️ クラウドネイティブマイクロサービス


📸 プロダクトプレビュー

📸 プラットフォーム概要 📸 デバイス管理 📸 AI チャット
プラットフォームダッシュボード
ホーム / ダッシュボード
システム概要 · デバイスオンライン統計 · データトレンドチャート
デバイス管理ページ
デバイス管理
デバイス一覧 · オンライン状態 · 検索とフィルタ
AI チャットページ
AI チャット
自然言語によるデバイス照会 · データ分析 · インテリジェント支援

🏗️ アーキテクチャ概要

製品アーキテクチャ全景

IoT DC3 Architecture Panorama

6層マイクロサービスアーキテクチャの全体像:クライアント → ゲートウェイ → 4つのセンターサービス → メッセージバス → 36 プロトコルドライバー → フィールドデバイス。PostgreSQLTimescaleDB + pgvector + AGE)永続層とオプションの可観測性スタック(ELK + Prometheus + Grafana)を一望できます。

🧱 設計原則 — サービス間呼び出しは常に Facade インターフェース経由;DO/BO/VO の三層モデルで永続化・ビジネス・API の形を厳密に分離;テナント分離をデータベース・キャッシュ・API パスまで一貫して適用。境界が明確で、サービスとチームの規模拡大に強い設計です。

📖 完全なアーキテクチャドキュメントについては、 システムアーキテクチャ概要を参照してください。

主な機能

🔌 マルチプロトコルデバイス接続

IoT DC3 は 36 個の接続ドライバーモジュールを内蔵し、産業オートメーション、IoT 通信、データブリッジ、基本通信、シミュレーションとデバッグのシナリオをカバーします。一般的なデバイスやデータソースの接続コストを下げます。

分類 ドライバーモジュール
🏭 産業プロトコル Modbus TCP · Modbus RTU · OPC UA · OPC DA · Siemens S7 · BACnet/IP · EtherNet/IP · Omron FINS · Mitsubishi MELSEC · IEC 60870-5-104 · IEC 61850 · DNP3 · DLMS · DLT645 · KNX · M-Bus · SL651
📡 IoT プロトコル MQTT · CoAP · LwM2M · HTTP · BLE · Zigbee · LoRaWAN
🗄️ データブリッジ MySQL · PostgreSQL · Oracle · SQL Server · Redis
🔧 基本通信とネットワーク管理 TCP/UDP · Serial · SNMP · CAN · Kafka
🧪 シミュレーションとデバッグ Virtual · Listening Virtual

Driver SDK により、カスタムプロトコルドライバーをすばやく開発し、実行中のプラットフォームへ登録できます。

🤖 AI 機能統合

Spring AI ベースの Agentic Center により、大規模言語モデルを IoT 運用ワークフローへ接続します。

  • 自然言語による運用支援 - LLM が Tool Calling を通じて、権限管理のもとでデバイス照会、ポイント読み書き、コマンド実行を支援します
  • インテリジェントなアラーム分析 - AI が原因分析と対応提案を支援します
  • データインサイト - 自然言語でデバイスデータを照会し、可視化チャートを生成します
  • 複数モデル対応 - OpenAI API 互換プロバイダーや GPT、Claude、DeepSeek、Qwen などの主要モデルに対応します
  • 会話メモリ - 複数ターンの会話とコンテキストメモリをデータベースへ永続化します

🏗️ クラウドネイティブマイクロサービス

Spring Boot 4 + Spring Cloud 2025 を基盤とする分散マイクロサービスアーキテクチャです。

  • サービスガバナンス - Spring Cloud Gateway を統一入口とし、静的ルーティングと環境変数で柔軟に設定できます
  • 効率的な通信 - gRPC によるサービス間呼び出しと Protobuf シリアライズ
  • 水平スケール - ステートレス設計により、業務負荷に応じてサービスを個別にスケールできます
  • レジリエンス - 交換可能なサービスノードと障害分離

📊 リアルタイムデータエンジン

  • データ収集 - ドライバー層がデバイステレメトリを収集し、RabbitMQ 経由で非同期に転送します
  • 時系列ストレージ - リアルタイムデータと履歴データを効率的にクエリできます
  • ルールエンジン - 柔軟なアラームルール、多段階アラーム、通知をサポートします
  • イベント追跡 - コマンドとイベントの履歴を保持します

🔐 エンタープライズセキュリティとマルチテナンシー

  • テナント分離 - データベース、キャッシュ、API パスでテナント単位の分離を行います
  • 認証と認可 - JWT + Spring Security、RBAC 権限モデル
  • 通信暗号化 - TLS/SSL 通信をサポートします
  • 監査追跡 - ユーザー操作とシステムイベントのログを保持します

🧩 開発者フレンドリー

  • Driver SDK - 充実したドライバー開発ツールキットです。ドライバー開発ガイド を参照してください
  • フロントエンド / バックエンド分離 - Vue 3 + TypeScript フロントエンド、RESTful + gRPC API
  • コンテナ化デプロイ - Podman / Docker Compose でワンコマンド起動でき、Kubernetes などのコンテナプラットフォームへ移行しやすい構成です
  • ドキュメント整備 - オンラインドキュメント、クイックスタート、トラブルシューティングガイド

クイックスタート

ソースからローカル開発する場合は、PostgreSQL と RabbitMQ を起動し、ローカル環境変数を読み込んでからビルドします。

make up-db
source dc3/env/dev.env.sh
mvn -s .mvn/settings.xml clean package

中国大陸向けの Alibaba Cloud レジストリを使う場合は make up-db-cn を利用してください。

📖 サービスの起動順序、IDE 設定、検証コマンド、よくある落とし穴については、 完全なクイックスタートを参照してください。

🛠️ 技術スタック

IoT DC3 は Java 21、Spring Boot 4、Spring Cloud 2025、Spring AI 2、PostgreSQL、RabbitMQ、gRPC、Vue 3、TypeScript、Vite を基盤に構築されています。

各コンポーネントの役割と詳細は Technology Stack を参照してください。

📖 ドキュメントとコミュニティ

リソース リンク
📚 オンラインドキュメント docs.dc3.site
🚀 クイックスタート クイックスタートガイド
🛠️ 技術スタック Technology Stack
🏗️ アーキテクチャ モジュールと依存関係
🔧 ドライバー開発 ドライバー開発ガイド
🐛 トラブルシューティング よくある問題と解決策
📋 変更履歴 リリース変更履歴
🐛 問題報告 GitHub Issues
🇨🇳 Gitee ミラー Gitee GVP プロジェクト

🌍 ユースケース

🏭 スマートファクトリー 生産ライン設備の状態監視、工程パラメータ収集、予知保全、OEE 分析
エネルギー監視 電力 / 水道 / ガスの遠隔検針、エネルギー傾向分析、異常アラーム
🌾 スマート農業 温室環境監視、自動灌漑制御、病害虫警告、収量予測
🏙️ スマートシティ 街路灯管理、環境品質監視、公共施設運用、安全監視

🤝 コントリビューション

あらゆる形のコントリビューションを歓迎します。以下の流れに従ってください。

  1. Fork とブランチ作成 - main からブランチを作成し、feature/your_name/feature_description 形式で命名します (例: feature/pnoker/mqtt_driver
  2. 開発とコミット - 新しいブランチで変更を完了し、Conventional Commits 仕様に従います
  3. PR 作成 - develop ブランチへ Pull Request を提出し、メンテナーのレビューとマージを受けます

📄 ライセンス

IoT DC3 は AGPL 3.0 ライセンスの下でオープンソースとして公開されています。

  • 個人学習、研究、内部利用 - 無料
  • コードを変更し、その変更をオープンソース化すること - 歓迎します
  • ⚠️ 変更を公開せず第三者向け商用サービスとして提供する場合 - 商用ライセンスが必要です

商用ライセンスの詳細は LICENSE.txt を参照してください。