# sansy_ws_analysis **Repository Path**: xinminsu/sansy_ws_analysis ## Basic Information - **Project Name**: sansy_ws_analysis - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-28 - **Last Updated**: 2025-12-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 项目分析报告 ### 项目概述 这是一个名为 **MARS** 的机器人控制系统 ROS 工作空间(`sansy_ws`),采用模块化设计,支持自主导航、建图定位、传感器驱动等功能。 ### 核心功能包 -[1. **mars_controller** - 运动控制核心](https://gitee.com/xinminsu/sansy_ws_analysis/blob/master/mars_controller.md) - 功能:机器人运动控制与导航 - 特性: - PID 控制(X、Y、θ) - 路径跟踪与轨迹规划 - 避障 - 多种工作模式: - `SES_WALL_STATE` - 寻墙模式 - `SES_SWEEP_STATE` - 扫描模式 - `SES_COVER_STATE` - 覆盖模式(全区域覆盖) - 爬墙功能(`ClimbWallAction`) - 支持 EKF、VSLAM 定位融合 -[2. **mars_bringup** - 系统启动与状态管理](https://gitee.com/xinminsu/sansy_ws_analysis/blob/master/mars_bringup.md) - 功能:系统初始化、模块管理、状态监控 - 特性: - 共享内存通信(`AresCmd`) - 建图模块启停控制 - 定位模块管理 - 心跳检测 - 设备状态发布 -[3. **sonar_driver** - 声纳驱动](https://gitee.com/xinminsu/sansy_ws_analysis/blob/master/sonar_driver.md) - 功能:声纳数据处理与可视化 - 特性: - 串口通信(异步) - 点云数据发布 - 与 IMU、里程计融合 - Pangolin 可视化 - OpenCV 图像处理 -[4. **mars_serial_server** - 串口通信服务](https://gitee.com/xinminsu/sansy_ws_analysis/blob/master/mars_serial_server.md) - 功能:硬件设备串口通信 - 特性: - 异步串口通信 - 多设备管理 -[5. **cam_driver** - 相机驱动](https://gitee.com/xinminsu/sansy_ws_analysis/blob/master/cam_driver.md) - 功能:相机数据采集与处理 - 特性: - 双目相机支持(L/R images) - YOLO 目标检测(YOLOv5/v8/v10) - RKNN 推理(RK3588) - 深度学习模型集成 -[6. **rplidar_ros** - 激光雷达驱动](https://gitee.com/xinminsu/sansy_ws_analysis/blob/master/rplidar_ros.md) - 功能:RPLidar 激光雷达数据采集 - 特性: - 标准 ROS 激光扫描接口 - 支持多种 RPLidar 型号(A1/A2/A3) -[7. **mars_msgs** - 自定义消息定义](https://gitee.com/xinminsu/sansy_ws_analysis/blob/master/mars_msgs.md) - 定义了 30+ 种消息类型,包括: - 运动状态(`MotionStates`、`MotionActionState`) - 模块状态(`ModuleStates`、`ModuleAction`) - 任务状态(`TaskState`) - 设备状态(`DeviceStates`、`BatteryDatas`) - 路径规划(`Path`、`GlobalPath`) ### 系统架构特点 -[1. 通信机制](https://gitee.com/xinminsu/sansy_ws_analysis/blob/master/communication_mechanism.md) - ROS 话题通信:节点间数据交换 - 共享内存(`AresCmd`):进程间快速通信 - 串口通信:硬件设备驱动 -[2. 控制模式](https://gitee.com/xinminsu/sansy_ws_analysis/blob/master/control_mode.md) - 系统模式(`MARS_SYSTEM_MODE_STA`):自主控制 - 手动模式(`MARS_MANUAL_MODE_STA`):人工控制 -[3. 定位方案](https://gitee.com/xinminsu/sansy_ws_analysis/blob/master/localization_solution.md) - 轮式里程计 - EKF 融合定位 - VSLAM 视觉定位 - 激光匹配定位 -[4. 导航功能](https://gitee.com/xinminsu/sansy_ws_analysis/blob/master/navigation_function.md) - 路径跟踪导航 - 精确点导航(`PinpointNavigation`) - 全区域覆盖(`FullCoverage`) - 沿墙导航(`TraceWall`) ### 技术栈 - 编程语言:C++11 - 框架:ROS(Catkin) - 数学库:Eigen3 - 图像处理:OpenCV - 可视化:Pangolin - 深度学习:RKNN(RK3588) - 构建系统:CMake ### 应用场景推测 从代码特征(声纳、[爬墙](https://gitee.com/xinminsu/sansy_ws_analysis/blob/master/TraceWall.md) 、覆盖模式)判断,可能用于: - 水下或特殊环境作业 - 清洁/覆盖任务 - 巡检与探测 ### 项目结构 ``` sansy_ws/ ├── src/ │ ├── mars_controller/ # 运动控制核心 │ ├── mars_bringup/ # 系统启动管理 │ ├── sonar_driver/ # 声纳驱动 │ ├── mars_serial_server/ # 串口服务 │ ├── cam_driver/ # 相机驱动 │ ├── rplidar_ros/ # 激光雷达 │ ├── mars_msgs/ # 消息定义 │ └── scripts/ # Python脚本 └── devel/ # 编译输出 ``` ### 配置参数 主要参数(`mars_params.yaml`): - 运动限制:速度 0.2 m/s,角速度 0.6 rad/s - 轮式参数:分辨率 2731,减速比 20,直径 0.1m,轮距 0.2m - PID 参数:X/Y/θ 三轴独立控制 ### 总结 这是一个功能完整的机器人控制系统,涵盖感知、定位、导航与控制,适用于复杂环境下的自主作业。代码结构清晰,模块化程度高,便于扩展与维护。 如需深入分析某个模块或功能,请告知。