システムアーキテクチャ設計
概要
インテリジェントビジョン ロボットアーム制御システムは 統合 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)
拡張性
本システムはモジュール化設計となっており、次のような拡張に対応しています:
- 検出モデル:他の YOLO バージョンやカスタムモデルに置き換え可能
- ロボットアームの種類:異なる自由度のロボットアームに対応
- 通信プロトコル:通信方式を追加可能
- センサーの統合:追加センサー用のインターフェースを確保
お問い合わせ
資料のダウンロード・技術サポートについては、HumansX株式会社までお問い合わせください。
ドキュメント