ros2 launch ros_ign_gazebo ign_gazebo.launch.py gz_args:="-r $(ros2 pkg prefix my_maze_world)/share/my_maze_world/worlds/maze.world"
你這行指令是用來啟動 Ignition Gazebo (現在叫 Gazebo Sim),但你現在想改用 Gazebo Classic(v11)。這兩者的架構、啟動方式不一樣,
不能直接共用 ros_ign_gazebo
的 launch 檔。
✅ 目標:改成用 Gazebo Classic v11 + ROS 2(gazebo_ros) 來啟動 maze.world
🔧 Step 1:安裝對應套件(如尚未裝)
這會安裝:
🧱 Step 2:確認 world 檔案路徑存在
你的 world 應該在:
可用這指令驗證:
▶️ Step 3:用 gazebo_ros
官方 launch file 啟動 Gazebo Classic v11
✅ 說明
-
gazebo_ros gazebo.launch.py
是 ROS 2 for Gazebo Classic 的官方啟動器
-
world:=...
是它支援的參數,用來指定 .world 檔
-
這會啟動 GUI + server + ROS plugin(/clock, /spawn_entity 等)
🛠️ 進階用法(加參數)
你也可以關掉 GUI,只啟動 server:
💡 附:你原本那行的問題(for Ignition)
這是用來啟動 Ignition Gazebo(Gazebo Sim Fuel / Fortress 版)
它呼叫的是 ign launch
而不是 gzserver
,兩套系統 plugin 完全不同。
✅ 總結指令(改用 Gazebo Classic):
如要我幫你寫一個 .launch.py
直接載入 world + 車子模型,也可以幫你整合。只要提供你的套件與模型名稱即可。
沒有留言:
張貼留言