HumansXドキュメントセンター 公式サイトへ ↗

システムアーキテクチャ設計

概要

インテリジェントビジョン ロボットアーム制御システムは 統合 MCP サーバーアーキテクチャ v2.0.0 を採用し、ビジョン検出とロボットアーム制御の機能をモジュール化されたシステムに統合しています。

アーキテクチャの特長

  • ⚡ 統合サーバー:単一のエントリポイントですべてのサービスを管理
  • ️ 階層型設計:コアロジック層、サービス層、API 層を明確に分離
  • ⚙️ 設定管理:YAML 設定ファイルにより複数環境に対応
  • 型安全性:Pydantic によるデータ検証
  • 非同期連携:洗練されたサービスライフサイクル管理

ディレクトリ構成

Proj_Intelligent-Vision-Arm-Control/
├── vision_arm_mcp/         # 主要源代码目录
│   ├── main.py             # 统一入口点
│   ├── config/             # 配置管理
│   │   ├── settings.py     # 配置数据模型
│   │   └── config_loader.py # 配置加载器
│   ├── core/               # 核心业务逻辑
│   │   ├── detection/      # 物体检测模块
│   │   │   ├── base_model.py
│   │   │   └── yolo_detect.py
│   │   ├── arm_control/    # 机械臂控制模块
│   │   │   ├── arm_move.py
│   │   │   ├── user_arm.py
│   │   │   ├── serial_section.py
│   │   │   └── servo_section.py
│   │   └── utils/          # 工具模块
│   │       ├── measurement.py
│   │       └── visualization.py
│   ├── services/           # 服务层
│   │   ├── web_service.py  # Web服务
│   │   ├── mcp_service.py  # MCP服务
│   │   └── video_service.py # 视频流服务
│   └── api/                # API层
│       ├── routes.py       # 路由定义
│       └── schemas.py      # 数据模型
├── config/                 # 配置文件
│   └── default.yaml        # 默认配置
├── bin/                    # 脚本目录
├── tests/                  # 测试代码
├── docs/                   # 文档目录
├── logs/                   # 日志目录
└── models/                 # 模型文件目录

コアコンポーネント

1. 検出モジュール(Detection)

YOLO11 検出器(vision_arm_mcp/core/detection/yolo_detect.py)

  • BPU アクセラレーションによる YOLO11 モデル
  • オレンジ・緑・赤の 3 カテゴリの形状検出に対応
  • マルチスケールの特徴マップ処理(小・中・大の特徴マップ)
  • 信頼度と IoU しきい値をリアルタイムに調整可能

2. アーム制御モジュール

4 自由度の逆運動学制御(vision_arm_mcp/core/arm_control/)

  • arm_move.py:メインコントローラー。動作計画と可動範囲の保護
  • user_arm.py:逆運動学アルゴリズムの実装
  • serial_section.py:シリアル通信の管理
  • servo_section.py:サーボのプロトコル処理

制御の特長:

  • 作業空間の制限:X[50〜180mm]、Y[-80〜80mm]、Z[-50〜140mm]
  • 直線補間による動作計画
  • 厳格な安全範囲チェック
  • シリアル通信:/dev/ttyS1、ボーレート 115200

3. サービス層(Services)

Web サービス(vision_arm_mcp/services/web_service.py)

  • Flask アプリケーション、ポート 5002
  • リアルタイム MJPEG 動画ストリーミング
  • RESTful API インターフェース
  • システム状態の監視

MCP サービス(vision_arm_mcp/services/mcp_service.py)

  • FastMCP プロトコルサーバー、ポート 8002
  • 18 個のツール関数インターフェース
  • 非同期 HTTP クライアント
  • AI アシスタントとの連携に対応

4. 設定システム

階層型の設定管理:

  • config/default.yaml:デフォルト設定ファイル
  • 環境変数による上書き(プレフィックス VISION_ARM_)
  • Pydantic によるデータ検証
  • 実行時の設定ホットリロード

データフロー

通信プロトコル

1. MCP プロトコル

  • JSON-RPC 2.0 ベース
  • ツール関数の呼び出しに対応
  • 非同期メッセージ処理
  • AI アシスタントとの連携

2. シリアルポートプロトコル

  • ボーレート:115200
  • データビット:8
  • ストップビット:1
  • パリティ:なし

3. HTTP インターフェース

  • RESTful API 設計
  • JSON データ形式
  • CORS 対応
  • エラーコードの標準化

性能特性

  • 検出速度:約 30fps(320x320 入力)
  • 動作応答:遅延 100ms 未満
  • メモリ使用量:500MB 未満
  • CPU 使用率:約 15%(RDK X5)

拡張性

本システムはモジュール化設計となっており、次のような拡張に対応しています:

  1. 検出モデル:他の YOLO バージョンやカスタムモデルに置き換え可能
  2. ロボットアームの種類:異なる自由度のロボットアームに対応
  3. 通信プロトコル:通信方式を追加可能
  4. センサーの統合:追加センサー用のインターフェースを確保

お問い合わせ

資料のダウンロード・技術サポートについては、HumansX株式会社までお問い合わせください。