项目简介
SpaceMind是一个先进的智能代理系统,旨在模拟自主航天器在轨服务场景。它通过集成Model Context Protocol (MCP) 服务器,将底层传感器数据和航天器控制能力标准化为工具,供大型语言模型(如GPT-4V, Claude Sonnet 4)调用,以实现实时决策、自主导航、目标感知和精确接近等任务。该系统能够与AirSim仿真环境无缝对接,提供逼真的太空环境模拟。
主要功能点
- 自主导航与控制: 通过视觉和激光雷达数据,实现航天器的自主定位、姿态调整和位置移动。
- 多任务模式: 支持目标感知、精确接近和环绕飞行等多种在轨服务任务。
- 多模态AI集成: 兼容多种大语言模型和视觉语言模型,利用其强大的推理和感知能力进行决策。
- 实时数据处理: 基于Redis实现传感器数据的实时流式传输和指令通信。
- AirSim仿真对接: 在AirSim环境中进行逼真的太空任务仿真。
- MCP工具提供: 将航天器控制和传感器数据接口封装为MCP工具,供LLM调用。
安装步骤
- 前置条件:
- Python 3.10
- Redis 服务器(确保在 'localhost:6379' 运行)
- AirSim 仿真环境(需配置航天器场景)
- 安装Python依赖:
pip install -r requirements.txt - 环境变量配置:
- 在项目根目录创建 '.env' 文件,并填入您的OpenAI API Key:
OPENAI_API_KEY=your_api_key_here
- 在项目根目录创建 '.env' 文件,并填入您的OpenAI API Key:
- Redis配置:
- 确保Redis服务器已启动并在 'localhost:6379' 监听。
MCP服务器配置
MCP客户端连接SpaceMind服务器时,需要配置以下信息以建立通信:
{ "name": "SpaceMind Control Server", "command": "python", "args": ["server_en.py"], "description": "SpaceMind航天器控制与感知工具服务,提供姿态控制、位置移动、LiDAR感知、视觉感知等功能。可根据需要将args中的'server_en.py'替换为'server_en_vlm.py'以启用纯视觉导航模式。" }
- name: MCP服务器的名称,用于标识该服务。
- command: 启动MCP服务器的命令,这里是'python'。
- args: 传递给命令的参数,这里是服务器脚本文件'server_en.py'。
- description: 对MCP服务器功能的简要描述。
基本使用方法
- 启动AirSim仿真: 启动AirSim并加载航天器仿真环境,确保目标航天器和服务航天器已正确放置。
- 启动数据采集器:
此脚本将连接AirSim,采集传感器数据并发布到Redis,同时监听控制指令。cd Airsim-collector python fly_redis.py - 配置任务:
- 根据任务类型(感知、接近、环绕)选择合适的配置文件('config_perception.py', 'config_approach.py', 'config_approach_vlm.py', 'config_around.py')。
- 修改 'host.py',确保其导入了您希望使用的配置(例如 'from config_approach import Config')。
- 您可以在选定的配置文件中调整LLM模型和参数设置。
- 启动自主导航系统:
'host.py' 将作为MCP客户端启动,连接MCP服务器,从Redis获取图像数据,调用LLM进行决策,并通过MCP服务器调用航天器控制工具执行任务。系统将自动循环执行:等待图像 → 分析 → 决策(调用工具) → 执行 → 再次等待图像,直到任务完成或中断。python host.py
信息
分类
AI与计算