1. 飞控仿真出现 FCU: Preflight Fail: Accel #0 uncalibrated等错误
参考CSDN博客,在仿真时遇到了传感器无数据的错误,解决方法为:输入下方代码后重启 roslaunch
rm ~/.ros/eeprom/parameters*
rm -rf ~/.ros/sitl*
2. 关于gazebo的相关技巧
2.1 gazebo模型开启加速方法
在Home主文件夹下方CTRL+H
显示隐藏文件,打开.gazebo隐藏文件夹,在models文件夹下粘贴模型,再打开就会快很多,不用全盘搜模型了。
2.2 gazebo崩溃解决方法
gazebo经常会出现[gazebo-3] process has died这一类报错,通常是gzserver在捣鬼。
解决方法有俩,操作不同目的一致,就是关了他。
法1:输入
killall gzserver
killall gzclient
法2:
打开System monitor ,它长这样
在Process选项中搜索gz,找到gzserver右键点击,选择kill。
3. 关于运行gazebo仿真时模型不动的问题
在运行小车仿真时,向对应的/…/cmd_vel话题发送指令小车不动,检查运行结果,发现其出现黄字警告(因为不是ERROR,可能会被忽略):
[WARN] [1683943747.356935, 30.325000]: Controller Spawner couldn’t find the expected controller_manager ROS interface.
说明这个gazebo少了点东西,运行如下代码安装(注意切换对应版本):
sudo apt-get install ros-noetic-gazebo-ros-control
再次roslaunch,问题解决。
4. git clone他人项目编译报错问题
git clone他人项目直接编译的时候,有时会出现如下问题:
CMake Error: The current CMakeCache.txt directory
这是由于项目换了文件夹导致。
可以参考如何解决CMake Error:一文,修改相关文件,也可以使用暴力手段:删除/devel、/build文件夹、/src文件夹下的CMakeLists.txt文件,返回工作空间执行catkin_make
,问题解决。