参考链接:ROS入门(六):通过launch文件启动gazebo和urdf模型 - 知乎
gazebo_ros中自带launch的位置:/opt/ros/noetic/share/gazebo_ros/launch
所有的world文件:/usr/share/gazebo-11/worlds
roscore &
rosrun gazebo_ros gazebo
如果打开gazebo是之前的world,关闭gazebo,在终端中输入:
killall gzserver
彻底关闭gazebo再重新roslaunch
roslaunch sim_model spawn_world.launch后出现错误:
RLException: while processing /home/chris/ugv_simulation/src/sim_env/sim_model/launch/include/worlds/ISCAS_museum.launch.xml:
Invalid <param> tag: Cannot load command parameter [robot_description]: no such command [['/opt/ros/noetic/share/xacro/xacro.py', '/home/chris/ugv_simulation/src/sim_env/sim_model/urdf/xbot-u/xbot-u.xacro']].
Param xml is <param name="robot_description" command="$(find xacro)/xacro.py $(find sim_model)/urdf/$(arg robot)/$(arg robot).xacro"/>
The traceback for the exception was written to the log file
解决方法:
自己写的一个加载世界和模型到gazebo的launch文件,绝对路径:/ugv_simulation/launch/gazebo.launch
重映射
-
<remap from="/cmd_vel" to="/key_vel"/>:
这个例子将
/cmd_vel
话题重新映射到了/key_vel
话题。这意味着任何发布到/cmd_vel
话题的消息都将被重定向到/key_vel
话题上,节点会接收到在/cmd_vel
话题上发布的消息,但实际上这些消息会被发送到/key_vel
话题。 -
<remap from="/key_vel" to="/cmd_vel"/>:
这个例子将
/key_vel
话题重新映射到了/cmd_vel
话题。这意味着任何发布到/key_vel
话题的消息都将被重定向到/cmd_vel
话题上,节点会接收到在/key_vel
话题上发布的消息,但实际上这些消息会被发送到/cmd_vel
话题。