项目简介

SpaceMind是一个先进的智能代理系统,旨在模拟自主航天器在轨服务场景。它通过集成Model Context Protocol (MCP) 服务器,将底层传感器数据和航天器控制能力标准化为工具,供大型语言模型(如GPT-4V, Claude Sonnet 4)调用,以实现实时决策、自主导航、目标感知和精确接近等任务。该系统能够与AirSim仿真环境无缝对接,提供逼真的太空环境模拟。

主要功能点

  • 自主导航与控制: 通过视觉和激光雷达数据,实现航天器的自主定位、姿态调整和位置移动。
  • 多任务模式: 支持目标感知、精确接近和环绕飞行等多种在轨服务任务。
  • 多模态AI集成: 兼容多种大语言模型和视觉语言模型,利用其强大的推理和感知能力进行决策。
  • 实时数据处理: 基于Redis实现传感器数据的实时流式传输和指令通信。
  • AirSim仿真对接: 在AirSim环境中进行逼真的太空任务仿真。
  • MCP工具提供: 将航天器控制和传感器数据接口封装为MCP工具,供LLM调用。

安装步骤

  1. 前置条件:
    • Python 3.10
    • Redis 服务器(确保在 'localhost:6379' 运行)
    • AirSim 仿真环境(需配置航天器场景)
  2. 安装Python依赖:
    pip install -r requirements.txt
  3. 环境变量配置:
    • 在项目根目录创建 '.env' 文件,并填入您的OpenAI API Key:
      OPENAI_API_KEY=your_api_key_here
  4. 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服务器功能的简要描述。

基本使用方法

  1. 启动AirSim仿真: 启动AirSim并加载航天器仿真环境,确保目标航天器和服务航天器已正确放置。
  2. 启动数据采集器:
    cd Airsim-collector
    python fly_redis.py
    此脚本将连接AirSim,采集传感器数据并发布到Redis,同时监听控制指令。
  3. 配置任务:
    • 根据任务类型(感知、接近、环绕)选择合适的配置文件('config_perception.py', 'config_approach.py', 'config_approach_vlm.py', 'config_around.py')。
    • 修改 'host.py',确保其导入了您希望使用的配置(例如 'from config_approach import Config')。
    • 您可以在选定的配置文件中调整LLM模型和参数设置。
  4. 启动自主导航系统:
    python host.py
    'host.py' 将作为MCP客户端启动,连接MCP服务器,从Redis获取图像数据,调用LLM进行决策,并通过MCP服务器调用航天器控制工具执行任务。系统将自动循环执行:等待图像 → 分析 → 决策(调用工具) → 执行 → 再次等待图像,直到任务完成或中断。

信息

分类

AI与计算