tracking_pid 开源项目安装与使用指南
项目目录结构及介绍
tracking_pid
是一个基于PID控制器的设计,用于精确追踪路径的机器人控制系统。下面是该仓库的基本目录结构及其简介:
.
├── CHANGELOG.rst # 版本更新日志
├── CMakeLists.txt # CMake构建配置文件
├── LICENSE # 许可证文件,采用Apache-2.0
├── README.md # 项目说明文档
├── package.xml # ROS包描述文件
├── setup.py # Python环境设置脚本
├── github/workflows # GitHub工作流相关文件夹
├── src # 源代码目录
│ ├── 包含控制逻辑的CPP或PY文件
├── include/controller # 控制器相关的头文件
├── nodes # 节点执行文件所在目录
├── scripts # 可能存在的Python脚本
├── test # 测试相关文件夹,包括单元测试和系统测试
│ ├── test_controller # 控制器的测试代码
│ └── ... # 其他测试文件
└── doc/figures # 文档中使用的图表
项目的启动文件介绍
在 tracking_pid
中,主要通过launch文件来启动不同的功能组件。例如,以下是一些典型启动示例:
- test_tracking_pid.launch: 启动主要节点进行测试,允许通过rviz可视化跟踪过程。
- test_tracking_pid_cpp.launch: 这个launch文件结合了路径规划器和本地跟踪PID控制器,特别适用于使用特定全局路径规划算法(如full_coverage_path_planner)时。
启动这些launch文件的命令通常格式为 roslaunch tracking_pid 文件名.launch [参数:=值]
,其中可以根据需要添加特定参数进行定制。
项目的配置文件介绍
动态重配置
tracking_pid
使用(rqt_)dynamic_reconfigure进行大部分配置管理,这意味着可以在运行时调整参数。关键配置项包括:
- l (跟随距离): 控制点相对于机器人旋转中心的距离,可用于微调跟踪行为。
- PID参数 (
Kp_
,Ki_
,Kd_
): 对于纵向、横向和角速度三个控制回路的增益。 - 反馈使能 (
feedback_loop_name
): 单独控制每个循环是否启用反馈。 - 前馈控制 (
feedforward_loop_name
): 是否启用基于轨迹速度的前馈控制。 - 耦合参数 如
coupling_ang_long
,dead_zone_yaw_error_cal
, 和max_yaw_error_cal
,用来实现角度与纵向控制之间的耦合逻辑。
初始化配置
虽然项目依赖动态重配置来修改参数,但初始配置可以通过修改源代码中的默认值或在启动launch文件时传递参数来设定。
参数文件
除了动态重配之外,一些特定的行为可能需要配置文件来指定,默认情况下这些配置大多嵌入在代码或者launch文件的参数中。对于更复杂的场景,可能涉及到环境变量或外部配置文件的定义,这需参照具体文档或源码注释。
注意: 实际操作时,确保已安装ROS并配置好开发环境。遵循上述指南可以帮助您理解和配置tracking_pid
项目,进行机器人路径跟踪实验。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考