# Gazebo Harmonic中Ackermann模型仅能左转且转向突兀的URDF修复

> 原文链接：https://robotics.hellobike.com/pitfalls/2025-01-22-robotics-se-114375
> 频道：pitfalls | 更新日期：2025-01-22 | 标签：auto, stackexchange, urdf
> 核心摘要：迁移至Gazebo Harmonic后Ackermann车辆仅能向左急转，通过调整主销Y轴内倾位置并补充车轮摩擦参数解决。

# Gazebo Harmonic中Ackermann模型仅能左转且转向突兀的URDF修复

::: v-pre
> 本文由 AI 根据公开内容整理，可能有误，请以原文为准：[Ackermann model won't turn right](https://robotics.stackexchange.com/questions/114375/ackermann-model-wont-turn-right)（Robotics Stack Exchange #114375）

**状态**：已解决

## 问题

从ROS2 Iron/Gazebo Classic迁移至Jazzy/Gazebo Harmonic后，原正常的Ackermann转向车辆出现异常：仅能向左急剧转向，无法向右转向。该问题由URDF模型定义引起，涉及关节几何布局与物理参数缺失。

## 环境

ROS2 Jazzy, Gazebo Harmonic, URDF/xacro描述文件, Ackermann转向底盘

## 解决办法

1. 修正主销（kingpin/steer_link）安装位置，使其不再与车轮在Z轴对齐，而是沿Y轴向车身内侧偏移（如设置steer_link_yoff为0.125），并确保主销与车轮在X和Z轴坐标一致以形成正确转向几何。
2. 为前轮link添加Gazebo物理摩擦参数，在&lt;gazebo reference="front_right_wheel_link"&gt;标签内显式声明&lt;mu1&gt;1.0&lt;/mu1&gt;和&lt;mu2&gt;1.0&lt;/mu2&gt;，防止因默认摩擦系数不足导致单侧转向失效或动力学异常。
3. 更新xacro宏定义，将原axle相关命名重构为steer_link结构，确保惯性矩阵、碰撞体及视觉属性与新几何布局匹配，避免物理仿真中的质量分布错误加剧转向不对称。

原问题作者：Jeremy Shannon；采纳答案作者：Jeremy Shannon。原内容依 CC BY-SA 4.0 授权，本页摘要同样依 CC BY-SA 4.0 授权。
:::

## 原始参考来源 (Sources)

- [Robotics Stack Exchange #114375：Ackermann model won't turn right](https://robotics.stackexchange.com/questions/114375/ackermann-model-wont-turn-right)