使用说明
鲨鱼机器人控制
有两种控制方法可供选择:
方法1:云API(无硬件模块)
通过Shark的云端控制-仅限启动/停止/停靠。
cp .env.example .env
# Edit .env with SharkClean credentials
source venv/bin/activate
python main.py
云API端点
| 方法 | 端点 | 描述 |
|---|---|---|
| 得到 | /status |
机器人状态 |
| 职位 | /start |
开始清洁 |
| 职位 | /pause |
暂停 |
| 职位 | /dock |
返回码头 |
| 职位 | /find |
使机器人发出唧唧声 |
方法2:LLM+MCP控制(硬件模块)
通过Portenta H7实现完全控制-驱动、转向、真空控制。
建筑
Claude (LLM) ◄──MCP──► MCP Server ◄──WiFi──► Portenta H7 ──► Motors
所需硬件
- Arduino Portenta H7
- 电机驱动器(L298N/DRV8833)
- 访问机器人电机连接器
设置
- 闪光
firmware-portenta/shark_controller.ino前往波特塔 - 更新固件中的WiFi凭据
- 通过电机驱动器将电机连接到Portenta
- 添加到MCP配置:
{
"mcpServers": {
"shark-robot": {
"command": "python3",
"args": ["/home/riley/shark/mcp-server/shark_mcp.py"]
}
}
}
MCP工具
| 工具 | 说明 |
|---|---|
| robot_forward | 前进 |
| robot_backward | 向后移动 |
| robot_turn_left | 左转 |
| robot_turn_right | 右转 |
| robot_stop | 全部停止 |
| robot_vacuum_on | 启动真空 |
| robot_status | 获取状态 |
| robot_sensors | 读取传感器 |
LLM命令示例
- “缓慢向前行驶2秒钟”
- “右转90度”
- “以50%的功率开始吸尘”
- “检查传感器读数”
- “停止机器人”
文件
shark/
├── main.py # Cloud API server
├── mcp-server/
│ ├── shark_mcp.py # MCP server for LLM
│ └── test_robot.py # Direct test script
├── firmware-portenta/
│ └── shark_controller.ino # Portenta firmware
└── sharkiq/ # SharkIQ library