diff --git a/docs/modules/robot_control.md b/docs/modules/robot_control.md new file mode 100644 index 0000000..2820dc3 --- /dev/null +++ b/docs/modules/robot_control.md @@ -0,0 +1,46 @@ +# 机械臂控制模块 (`src/robot_control`) + +## 模块概述 +本模块实现了机械手臂的控制接口,支持笛卡尔空间运动规划和基本操作。 + +## 类说明 +### `RoboticArmController` +机械手臂控制接口类,提供以下功能: + +#### 方法 +- `__init__(port='COM3', baud_rate=115200)` + 初始化机械手臂控制器 + +- `connect()` + 建立与机械手臂的连接 + +- `disconnect()` + 断开机械手臂连接 + +- `move_to_position(position)` + 移动到指定位置(x, y, z) + +- `move_along_path(path_points, speed=0.1)` + 沿指定路径移动机械臂,支持路径点列表和速度参数 + +- `perform_pick_and_place(start_pos, end_pos)` + 执行抓取和放置操作,从起始位置移动到目标位置 + +## 使用示例 +```python +from src.robot_control.arm_controller import RoboticArmController + +# 创建控制器实例 +arm = RoboticArmController() + +# 连接机械臂 +arm.connect() + +# 移动到指定位置 +arm.move_to_position([0.3, 0.2, 0.1]) + +# 执行抓取和放置操作 +arm.perform_pick_and_place([0.3, 0.2, 0.0], [0.1, 0.4, 0.0]) + +# 断开连接 +arm.disconnect() \ No newline at end of file diff --git a/docs/modules/utils.md b/docs/modules/utils.md new file mode 100644 index 0000000..6ea83c9 --- /dev/null +++ b/docs/modules/utils.md @@ -0,0 +1,22 @@ +# 工具模块 (`src/utils`) + +## 模块概述 +本模块包含辅助工具和测试数据,为其他模块提供基础支持功能。 + +## 子模块说明 +### `data/test_scenarios.json` +存储测试场景配置文件,包含不同测试环境的参数设置。 + +### `test_data.py` +提供测试数据生成和处理功能,用于单元测试和示例演示。 + +## 使用示例 +```python +import json +from src.utils.data.test_scenarios import load_test_scenarios + +# 加载测试场景 +scenarios = load_test_scenarios() + +# 打印第一个场景的配置 +print(json.dumps(scenarios[0], indent=2)) \ No newline at end of file diff --git a/docs/modules/vision.md b/docs/modules/vision.md new file mode 100644 index 0000000..f0f5dae --- /dev/null +++ b/docs/modules/vision.md @@ -0,0 +1,53 @@ +# 视觉识别模块 (`src/vision`) + +## 模块概述 +本模块实现了目标识别与跟踪功能,特别针对电力设备的检测和跟踪进行了优化。 + +## 类说明 +### `TargetTracker` +目标跟踪器类,提供以下功能: + +#### 方法 +- `__init__(camera_index=0)` + 初始化摄像头和跟踪参数 + +- `get_frame()` + 获取当前视频帧 + +- `detect_power_equipment(frame)` + 增强版电力设备检测算法,使用HSV颜色空间进行检测 + +- `start_tracking(frame, bbox)` + 开始跟踪指定区域 + +- `update_tracking()` + 更新跟踪结果 + +- `calibrate_hand_eye(arm_positions, image_points)` + 执行手眼标定,计算相机坐标系到机械臂坐标系的转换矩阵 + +- `get_camera_to_world_transform(arm_controller)` + 获取从相机坐标系到世界坐标系的转换 + +## 使用示例 +```python +from src.vision.target_tracker import TargetTracker + +# 创建目标追踪器 +tracker = TargetTracker() + +# 获取当前帧 +frame = tracker.get_frame() + +# 检测电力设备 +boxes = tracker.detect_power_equipment(frame) + +# 开始跟踪第一个检测到的目标 +if boxes: + tracker.start_tracking(frame, boxes[0]) + +# 更新跟踪结果 +success, bbox = tracker.update_tracking() + +# 释放资源 +tracker.release() \ No newline at end of file