FastSim 库 API

FastSim 的 Python SDK 按功能划分为以下几个子包,每个包职责独立、可单独引用。

包结构概览

fastsim.configs

配置系统。提供 ConfigManager(加载/校验/导出 YAML·JSON 配置)以及各配置块对应的数据类:GeneralConfigSimulationConfigSceneConfigTaskConfigExtensionConfig

fastsim.unisim

场景与仿真器抽象层。SceneManager 管理所有实体的生命周期(构建、访问、更新节奏);UniSim 定义后端无关的仿真器接口(step / reset / is_running);UniSimFactory 根据配置实例化对应后端。

fastsim.simulators

各仿真后端的具体实现。目前内置 isaaclab 后端(IsaacLab(UniSim)),可通过继承 UniSim 并注册 stereotype 接入新后端。

fastsim.controllers

控制层。ControllerManager 维护 Command 队列并在每帧调度执行;四个高层控制器封装常用操作:

  • SpawnableController:线程安全的实体反射调用与运行时 spawn
  • RobotController:关节轨迹执行与无碰撞检测 IK
  • MotionPlanController:规划器接口(IK、运动规划、物体附着)
  • ActionController:从配置字典执行单个 Action

所有控制器方法均返回 Result(success, msg, data)

fastsim.extensions

可插拔扩展层。ExtensionManager 按配置启用扩展,各扩展通过 enable(sim) 向仿真生命周期注册回调。内置扩展包括:data_collect(观测采集)、record(录制与 HDF5 导出)、replay(轨迹回放)、server(REST API 服务化)、benchmark(episode 评估)。

fastsim.planner

运动规划器抽象层。Planner 定义规划器接口(solve_ik / solve_fk / gen_motion_plan / attach_objects);PlannerFactory 根据配置实例化规划器;目前内置 curobo 规划器实现。

fastsim.utils

通用工具库,供其他模块内部调用,也可在用户代码中直接引用:

  • Pose:位姿数据类,封装位置与四元数(wxyz),提供坐标变换、插值等操作
  • Asset:资产路径解析(root_key:// 协议、远端下载缓存等)
  • Log:统一日志工具
  • kinematics:运动学辅助计算

fastsim.cli

命令行与 TUI 工具。main_cmd() 对应 fastsim 命令入口;main_cli() 对应 fastsim_cli TUI 入口;COMMANDS 字典定义所有可用命令(launch_simulationvalidate_configurationshow_config 等)。


📖
Python SDK 完整参考文档
所有方法签名、参数说明与代码示例
本页仅作功能概览。如需查阅具体方法的完整签名、参数类型与返回值说明,请前往 Python SDK 参考文档,按模块浏览完整 API。
查看完整 API 文档 →