删除URDF和SDRF文件中的特殊注释#, !,:
xacro文件解析为字符串时出现报错
一开始疯狂报错Waiting for '/controller_manager' node to exist
1717585645.4673686 [spawner-2] [INFO] [1717585645.467015300] [spawner_joint_state_broadcaster]: Waiting for '/controller_manager' node to exist
1717585647.4782753 [spawner-2] [INFO] [1717585647.478000995] [spawner_joint_state_broadcaster]: Waiting for '/controller_manager' node to exist
1717585649.4881501 [spawner-2] [ERROR] [1717585649.487808213] [spawner_joint_state_broadcaster]: Controller manager not available
1717585649.6335490 [ERROR] [spawner-2]: process has died [pid 39251, exit code 1, cmd '/opt/ros/humble/lib/controller_manager/spawner joint_state_broadcaster --controller-manager controller_manager --ros-args'].
1717585649.6425650 [INFO] [spawner-8]: process started with pid [39588]
1)是控制器没安装,把所有控制器都安装一遍后
sudo apt-get install ros-humble-controller-manager
sudo apt install ros-humble-ros2-control
sudo apt-get install ros-humble-gazebo-ros2-control
sudo apt install ros-humble-gazebo-ros-pkgs
Controller manager not available in ROS2
确认安装
ros2 pkg list | grep ros2_control
ros2 pkg list | grep ros2_controllers
#更新软件源
sudo add-apt-repository ppa:openrobotics/gazebo11-non-amd64
sudo apt update
# 安装gazebo11
sudo apt install gazebo
sudo apt install ros-humble-gazebo-*
此时,注意到gazebo_ros2_control为最新版0.4.8
我遇到的问题就是在另一台虚拟机上可以正常进行moveit2+Rviz+Gazebo的联合仿真,但是相同的文件换一台电脑就无法执行了。
Rviz中显示报错TF有部分显示No transform from [..._link] to [world]
2)命名空间问题?Unicode编码?Fix Frame设置?gazebo世界模型加载失败?
安装Unicode
sudo apt-get install unicode
下载Gazebo模型到本地~/.gazebo/models
cd ~/.gazebo/models/
wget http://file.ncnynl.com/ros/gazebo_models.txt
wget -i gazebo_models.txt
ls model.tar.g* | xargs -n1 tar xzvf
rviz模型显示异常,且rviz中提示rviz No transform from [link1] to [link2]
/spawn_entity无响应,RViz模型加载失败
日志管理器
ros2 run rqt_console rqt_console
Node: gazebo_ros2_control Time: 21:06:37.236569001 (2024-06-05) Severity: Error
parser error Couldn’t parse parameter override rule: '–param
robot_description:=<?xml version="1.0" ?>
<mesh filename="file:///home/jjmczd/test/install/dual_descr, at ./src/rcl/arguments.c:343Location: ./src/gazebo_ros2_control_plugin.cpp:Load:260
删除URDF和SRDF文件的所有注释
删除注释中的冒号
source /usr/share/gazebo/setup.sh