right_front_wheel_joint
的 URDF 定義如下:
🔍 分析說明
項目 | 說明 |
---|---|
type="continuous" | 適用於輪子這類可自由旋轉、不設上限角度的關節。常見於差速驅動車。 |
origin rpy="0 0 1.5708" | 表示車輪的朝向做了 Z 軸旋轉 90 度(1.5708 rad),這是必要的前處理,但也可能代表幾何方向與旋轉軸需要額外檢查。 |
<axis xyz="0 0 1"/> | 表示輪子旋轉軸朝向 Z 軸。但這通常不正確,除非車輪垂直裝在地上旋轉,正常輪子應繞 Y 軸旋轉(左右轉動)。 |
✅ 建議修正方式
若以車輪位於地面、並朝著前方滾動的正常輪子方向為準,則其旋轉軸應為:
若你已透過 <origin rpy="0 0 1.5708"/>
將輪子模型朝向轉了 90 度,則也需要讓 axis
對應變為 X 軸旋轉:
✅ 正確範例(若模型輪子原本是 Y 軸方向)
✅ 更強健方式:直接觀察 STL 模型方向
若你不確定你的 wheel.stl
是哪個方向:
-
載入至 RViz 或 Blender 觀察模型方向。
-
假如輪子的圓心是繞 Y 軸轉動,那 axis 設 Y 軸(0 1 0)即可。
-
如果你模型旋轉了 90 度(例如使用
<origin rpy="0 0 1.5708"/>
),則你可能需修正軸為(1 0 0)
。
⚙️ 額外建議
如要做成 Xacro 模板,建議將軸向與位姿參數化:
這樣可靈活地定義四顆輪子的 joint。
沒有留言:
張貼留言