.. HB_Ros_Robot_Python documentation master file, created by sphinx-quickstart on Mon Feb 2 09:56:35 2026. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. HB_Ros_Robot_Python documentation ================================= ``HB_Ros_Robot_Python`` (别名 ``ros_robot``) 是一套面向 ROS(机器人操作系统)的高层封装 Python 库,旨在抽象底层 ROS 话题、服务与动作服务器的通信细节,为开发者提供简洁、统一、开箱即用的机器人控制接口。 通过该库,开发者无需深入理解底层 ROS 框架的复杂交互逻辑,即可快速实现机器人的底盘运动、导航规划、外设控制、传感器数据读取、机器视觉处理等核心功能,大幅降低 ROS 机器人应用开发的门槛,提升开发效率。 该库适用于配备底盘、导航模块、升降电机、舵机、各类传感器(IMU、激光雷达、红外等)及视觉相机的轮式机器人,广泛应用于教学演示、小型自主巡检、物料抓取等场景。 ------------------------------------------------------------------------------- 核心功能模块 ----------------------- ``ros_robot`` 采用模块化设计,各功能模块职责清晰,相互配合形成完整的机器人控制链路,核心模块及功能如下: * **ros_robot.chassis - 底盘控制模块** 机器人运动基础模块,负责底盘速度控制、里程计管理及 IO 端口操作,核心能力包括: - 底盘状态管理(``ChassisManager``): 支持自动/手动运动模式切换、速度指令发送、里程计数据/位姿获取、里程计初始化/清零。 - IO 端口管理(``IOManager``): 读取数字输入状态、设置数字输出电平,满足外接外设信号交互需求。 * **ros_robot.navigation - 导航运动规划模块** 高阶运动规划模块,支持多种预设运动模式,无需手动拼接速度指令即可实现复杂路径运动,核心能力包括: - 运动套件管理(``BaseMotionKit``): 支持差速跟随、全向轮运动、点对点运动、基础旋转/直线运动等模式。 - 运动状态反馈: 实时获取执行进度、当前位姿等数据,支持运动取消、等待执行完成等操作。 * **ros_robot.oms - 外设操作管理模块** 非底盘外设控制模块,涵盖升降电机和舵机,满足机器人抓取、姿态调整等扩展需求,核心能力包括: - 升降电机控制(``LiftMotor``): 支持回零、目标位置设置、行程限制查询及运动反馈获取。 - 舵机管理(``ServoManager``): 支持单个/多个舵机 PWM 信号设置、复位,预设相机俯仰、夹具控制等快捷接口。 * **ros_robot.sensor - 传感器数据采集模块** 各类内置传感器数据封装模块,提供统一的初始化校验及数据获取方式,核心能力包括: - 常规传感器管理(``SensorManager``): 读取红外、超声波、限位传感器检测数据。 - 高精度传感器管理: IMU 姿态/角速度获取、激光雷达扫描数据/指定角度测距值获取。 - 传感器校准(``SensorCorrect``): 支持红外、激光雷达、超声波等传感器校准,提升采集精度。 * **ros_robot.utils - 工具辅助模块** 机器人开发通用辅助工具模块,解决文件操作、控制算法等需求,核心能力包括: - PID 控制器(``PIDController``): 实现标准 PID 算法,支持控制输出计算、控制器状态复位。 - 文件管理(``FileManager``): 支持机器人端文件/文件夹上传、下载、删除及系统命令执行。 * **ros_robot.vision - 机器视觉处理模块** 基础机器视觉能力模块,为机器人自主识别、抓取提供视觉支撑,核心能力包括: - 相机控制: 支持彩色视频流读取、深度相机抓拍、视频流启停。 - 目标检测与处理: 支持彩色球检测、3D 目标中心提取、相对坐标转世界坐标。 * **ros_robot.config - 配置管理模块** 全库配置支撑模块,负责加载、存储机器人各类硬件参数(底盘、传感器校准、外设行程等),保障各功能模块正常运行。 ------------------------------------------------------------------------------- .. toctree:: :maxdepth: 2 :caption: API 接口: modules Indices and tables ================== * :ref:`genindex` * :ref:`modindex` * :ref:`search`