MRS-UAV System on Jetons
After the initial setup, package upgrades, and ROS installation, installing mrs-uav-system-full may result in unmet dependencies. The error message might look like this:
The following packages have unmet dependencies:
ros-noetic-mrs-uav-system-full : Depends: python-is-python3 but it is not going to be installed
Depends: ros-noetic-mrs-mins-core but it is not going to be installed
Depends: ros-noetic-mrs-open-vins-core but it is not going to be installed
Step 1: Resolve the First Dependency
The first dependency can be resolved directly by installing:
sudo apt install python-is-python3
Step 2: Resolve the Remaining Dependencies Locally
To address the other dependencies, you need to modify the package.xml file. Follow these steps:
-
Create a folder and clone the GitHub repository:
mkdir git
cd git/
git clone https://github.com/ctu-mrs/mrs_uav_system- If prompted for a username and password and the authentication fails, download the repository directly from GitHub as a .zip file, then extract it into the folder. This method is less ideal but quick and straightforward.
-
Navigate to the directory containing the package.xml file:
cd mrs_uav_system_master/ros_packages/mrs_uav_system_full
vim package.xml -
Remove the lines with the problematic dependencies. Specifically, delete these lines:
<exec_depend>mrs_open_vins_core</exec_depend>
<exec_depend>mrs_mins_core</exec_depend>
Step 3: Reinstallation and Addressing Errors
-
Proceed with reinstallation:
rosdep install --from-paths . -y -
If you encounter errors during reinstallation or sourcing the .bashrc file does not work, there may be an issue with the ffmpeg package. Ubuntu might prompt that there are held broken packages. Run the following command to fix them:
sudo apt-get --fix-broken install -
If this results in errors related to overwriting ffmpeg, force the overwrite:
sudo dpkg -i --force-overwrite /var/cache/apt/archives/ffmpeg_7%3a4.2.7-nvidia_arm64.deb
sudo apt -f install -
Once completed, verify the installation with:
apt-get check- The
apt-get checkor--fix-brokenoption should not return any issues, allowing the installation to proceed cleanly.
- The
-
Retry the installation:
rosdep install --from-paths . -y
Fixing RViz
After successfully running the simulation, RViz might fail to start. The issue is likely related to certain modules, plugins, or the OpenCV library.
-
Run the simulation and check for errors:
roscd mrs_uav_gazebo_simulation/tmux/one_drone
./start.sh -
Create a new ROS workspace with the RViz plugins:
mkdir catkin_workspace
cd catkin_workspace/
catkin init
mkdir src
cd src/
git clone https://github.com/ctu-mrs/mrs_rviz_plugins
catkin build -
Add the new workspace to the .bashrc file:
source ~/catkin_workspace/devel/setup.bash -
Source the .bashrc file and try running the simulation again. RViz should start and work as expected. If the issue persists, try rebooting the system first.