gazebo部分
直接报错的情况
运行ros并且启动gazebo的时候发现其实就是缺少了ros的gazebo方面的包,安装就可以
sudo apt-get install ros-melodic-gazebo-ros-pkgs ros-melodic-gazebo-ros-control
有问题,无法启动的情况
这个好像是因为原教程中编译gazebo源码时候导致的,所以我们删除掉catkin_ws空间下的build和devel文件夹,然后重新使用catkin build编译,就可以正常运行了
rqt部分
[ERROR] [1677497476.125058421]: Skipped loading plugin with error: XML Document ‘/opt/ros/melodic/share/rqt_virtual_joy/plugin.xml’ has no Root Element. This likely means the XML is malformed or missing…
RosPluginProvider._parse_plugin_xml() plugin file “/opt/ros/melodic/share/rqt_virtual_joy/plugin.xml” in package “rqt_virtual_joy” not found
RosPluginProvider._parse_plugin_xml() plugin file “/opt/ros/melodic/share/rqt_virtual_joy/plugin.xml” in package “rqt_virtual_joy” not found
在使用rqt_graph或者tf_tree的时候经常碰到这种问题,总结了一下解决方案
这个问题的出现实际上就是plugin.xml文件的缺失,所以我们创建一个即可
cd /opt/ros/melodic/share/rqt_virtual_joy/
sudo touch plugin.xml
sudo gedit plugin.xml
三行命令的含义:切换到对应目录,使用管理员权限创建文件,然后使用文本编辑器编辑
把下面的内容粘贴进去
<library path="src">
<class name="My Plugin" type="rqt_virtual_joy.virtual_joy_module.MyPlugin" base_class_type="rqt_gui_py::Plugin">
<description>
An example Python GUI plugin to create a great user interface.
</description>
<qtgui>
<group>
<label>Robot Tools</label>
</group>
<!-- <group>
<label>Subgroup</label>
</group> -->
<label>Virtual Joystick</label>
<icon type="file">resource/input-gaming.png</icon>
<statustip>Great user interface to provide real value.</statustip>
</qtgui>
</class>
</library>
然后给这个文件权限
sudo chmod 666 plugin.xml
之后就一切正常
VIO部分
Vins-Fusion
编译的时候现实缺少ceres库,于是我在github上下载并且编译,但是发现不行,然后搜索到VINS无法适配2.0.0和2.1.0的包,于是重新下载1.4.0的包,编译安装后可正常编译VINS-Fusion
大家在安装不同版本的ceres库时,要先删除之前的库
sudo rm -r /usr/local/lib/cmake/Ceres
sudo rm -rf /usr/local/include/ceres /usr/local/lib/libceres.a