ArduPilot MCP服务器沙盒
ArduPilot 无人机与LLM合作,用自然语言操作的MCP服务器。\
alt text\ https://youtu.be/y1WE1cDC54Y?si=iy6vdGl38aTRcFcF
运行环境(可SITL测试)
- ArduPilot(SITL或実機)
- 最大链路通信
tcp:127.0.0.1:5762可接受 - Python 3.10+
______________________________________________________________________
使用Mission Planner模拟器时
在动态输入提示中单击任务规划器 中描述的场景,使用以下步骤创建明细表,以便在概念设计中分析体量的体积。
- 安装缺少平面器
- 启动后,单击
シミュレーション按钮关闭对话框 - 在下一个屏幕上
Multirotor(マルチローター)列表框中,此格式对应于条目“无” - 对话框,您可以在此定义自定义格式
Stable按钮关闭对话框 - 启动ArduPilot模拟器,在tcp:127.0.0.1:5762开始待机
安装过程
- 准备Python环境
- Python 3.10+ 推奨 - Windows / macOS / Linux 対応
- 安装可用工具
pip install -r requirements.txt- 确认MCP服务器的启动(手动执行)
python ardupilot_mcp_server.py“启动MCP服务器。“就准备好了。
与Cline的协作步骤
{
"cline.apiKey": "sk-xxxxxxx",
"cline.apiBaseUrl": "https://openrouter.ai/api/v1",
"cline.defaultModel": "deepseek/deepseek-chat-v3-0324:free",
"cline.mcpServers": {
"ardupilot-controller": {
"command": "python",
"args": [
"${workspaceFolder}/ardupilot_mcp_server.py"
],
"env": {
"PYTHONPATH": "${env:USERPROFILE}\\.local\\lib\\python3.12\\site-packages"
}
}
}
}※请根据环境调整python的路径和PYTHONPATH。
Claude Desktop的使用方法(GUI协作)
- 克劳德桌面版 安装
- 配置文件
claude_desktop_config.json的双曲正切值
对于Windows: C:\Users\{ユーザー名}\AppData\Roaming\Claude\claude_desktop_config.json
- 补充以下内容:
{
"mcpServers": {
"ardupilot-controller": {
"command": "python",
"args": [
"C:/Users/your-user-name/path/to/ardupilot_mcp_server.py"
],
"alwaysAllow": [
"arm",
"disarm",
"takeoff",
"change_mode"
]
}
}
}※请根据环境调整路径。
- 重新启动Claude Desktop
可用MCP工具列表
|命令|说明| |--------|--------| 机械臂,机械臂 把机体摆臂 起飞到指定高度 更改模式 get_position()|获取当前位置| 清除机体上的任务 获得机体上的任务 |upload_star_mission(altitude=15.0, outer_radius=50.0, inner_radius=20.0, points=5)| 以当前位置为中心创建并上传星形任务 将其更改为AUTO模式,使其成为任务开始状态
聊天提示示例
Cline、或者,您可以与Claude Desktop交谈,以自然语言操作ArduPilot:
- “ArduPilot”
- “起飞到10米。”
- 将模式更改为GUIDED
- “制作高度15米,半径50米的星形任务上传到机体上”
- “松开ArduPilot”
※根据MCP服务器中注册的工具,自动转换自然语句。
