initial
This commit is contained in:
183
docs/guides/QUICKSTART.md
Normal file
183
docs/guides/QUICKSTART.md
Normal file
@@ -0,0 +1,183 @@
|
||||
# AGV 路径跟踪控制系统 - 快速入门指南
|
||||
|
||||
本指南将帮助您快速上手 AGV 路径跟踪控制系统。
|
||||
|
||||
## 1. 编译项目
|
||||
|
||||
### Windows 用户
|
||||
|
||||
使用 PowerShell:
|
||||
```powershell
|
||||
.\build.ps1
|
||||
```
|
||||
|
||||
或手动编译:
|
||||
```powershell
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
cmake --build . --config Release
|
||||
```
|
||||
|
||||
### Linux/MacOS 用户
|
||||
|
||||
```bash
|
||||
chmod +x build.sh
|
||||
./build.sh
|
||||
```
|
||||
|
||||
或手动编译:
|
||||
```bash
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
```
|
||||
|
||||
## 2. 运行程序
|
||||
|
||||
### 命令行演示程序
|
||||
|
||||
Windows:
|
||||
```powershell
|
||||
cd build\Release
|
||||
.\agv_demo.exe
|
||||
```
|
||||
|
||||
Linux/MacOS:
|
||||
```bash
|
||||
cd build
|
||||
./agv_demo
|
||||
```
|
||||
|
||||
### 控制台 GUI 程序
|
||||
|
||||
Windows:
|
||||
```powershell
|
||||
cd build\Release
|
||||
.\agv_gui.exe
|
||||
```
|
||||
|
||||
Linux/MacOS:
|
||||
```bash
|
||||
cd build
|
||||
./agv_gui
|
||||
```
|
||||
|
||||
### Qt 图形界面程序
|
||||
|
||||
Windows:
|
||||
```powershell
|
||||
cd build\Release
|
||||
.\agv_qt_gui.exe
|
||||
```
|
||||
|
||||
Linux/MacOS:
|
||||
```bash
|
||||
cd build
|
||||
./agv_qt_gui
|
||||
```
|
||||
|
||||
## 3. 使用示例
|
||||
|
||||
运行 `agv_demo` 后,您将看到交互式菜单:
|
||||
|
||||
1. **选择路径类型**
|
||||
- 1: 直线路径
|
||||
- 2: 圆弧路径
|
||||
- 3: 贝塞尔曲线
|
||||
- 4: S形曲线
|
||||
|
||||
2. **选择控制算法**
|
||||
- 1: Pure Pursuit(推荐用于平滑路径)
|
||||
- 2: Stanley(推荐用于高精度跟踪)
|
||||
|
||||
3. **查看结果**
|
||||
- 程序会在控制台显示控制序列
|
||||
- 可选择保存为CSV文件
|
||||
|
||||
## 4. 可视化结果
|
||||
|
||||
如果保存了CSV文件,可以使用Python脚本可视化:
|
||||
|
||||
```bash
|
||||
python visualize.py
|
||||
```
|
||||
|
||||
需要安装的依赖:
|
||||
```bash
|
||||
pip install pandas matplotlib numpy
|
||||
```
|
||||
|
||||
## 5. 输出文件说明
|
||||
|
||||
生成的 CSV 文件包含:
|
||||
|
||||
- **control_sequence.csv**: 时间、速度、转向角(弧度和角度)
|
||||
- **trajectory.csv**: AGV 的预测轨迹(x, y, θ)
|
||||
|
||||
文件格式示例:
|
||||
```csv
|
||||
# AGV Control Sequence
|
||||
# Time(s), Velocity(m/s), Steering(rad), Steering(deg)
|
||||
0.000000, 1.000000, 0.732770, 41.984039
|
||||
0.100000, 1.000000, 0.732933, 41.993384
|
||||
```
|
||||
|
||||
## 6. 自定义使用
|
||||
|
||||
参考 `examples/demo.cpp` 中的代码,您可以:
|
||||
|
||||
```cpp
|
||||
// 创建自定义路径
|
||||
PathCurve my_path;
|
||||
my_path.generateLine(PathPoint(0, 0), PathPoint(10, 5), 100);
|
||||
|
||||
// 调整 AGV 参数
|
||||
AGVModel my_agv(
|
||||
1.5, // 轴距 1.5m
|
||||
3.0, // 最大速度 3.0 m/s
|
||||
M_PI/3 // 最大转向角 60 度
|
||||
);
|
||||
|
||||
// 生成控制序列
|
||||
tracker.generateControlSequence("pure_pursuit", 0.05, 15.0);
|
||||
```
|
||||
|
||||
## 常见问题
|
||||
|
||||
### Q: 编译时找不到 cmake?
|
||||
**A:** 请安装 CMake:https://cmake.org/download/
|
||||
|
||||
### Q: Windows 下编译失败?
|
||||
**A:** 确保安装了以下之一:
|
||||
- Visual Studio(推荐 2019 或更新版本)
|
||||
- MinGW-w64
|
||||
|
||||
### Q: 如何修改路径参数?
|
||||
**A:** 编辑 `examples/demo.cpp` 或参考完整 README 文档自定义路径
|
||||
|
||||
### Q: 控制序列太长或太短?
|
||||
**A:** 调整 `generateControlSequence` 的 `horizon` 参数(时域长度)
|
||||
|
||||
### Q: Pure Pursuit 和 Stanley 算法有什么区别?
|
||||
**A:**
|
||||
- **Pure Pursuit**:适合平滑路径,计算简单,跟踪稳定
|
||||
- **Stanley**:适合高精度跟踪,对横向误差更敏感
|
||||
|
||||
### Q: 如何调整可视化参数?
|
||||
**A:** 编辑 `visualize.py` 文件中的绘图参数,如箭头间隔、线宽等
|
||||
|
||||
## 下一步
|
||||
|
||||
- 阅读完整的 [README.md](README.md) 了解详细 API 和算法原理
|
||||
- 查看 `examples/` 目录下的示例代码学习使用方法
|
||||
- 尝试不同的路径类型和控制算法组合
|
||||
- 调整 AGV 参数观察对控制效果的影响
|
||||
- 集成到您自己的项目中
|
||||
|
||||
## 技术支持
|
||||
|
||||
如有问题或建议,请在代码仓库中创建 issue。
|
||||
|
||||
祝使用愉快!
|
||||
Reference in New Issue
Block a user