Skip to content

umigv/marvin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Marvin

This repository includes the code for our 2022-2023 robot, codename Marvin.

Contents

Clone the Package

Make sure you are in the src folder of an existing catkin workspace.

git clone https://github.com/umigv/marvin.git

Dependencies

Set up Cartographer

Comment out line 46 (<!-- <depend>libabsl-dev</depend> -->) in Cartographer package.xml as per cartographer-project/cartographer_ros#1726.

Run these commands from the catkin workspace base folder (not src).

# Install prerequisites
sudo apt update
sudo apt install -y python3-wstool python3-rosdep ninja-build
sudo apt install -y liblua5.3-dev python3-sphinx libeigen3-dev
sudo apt install -y stow

# Install Cartographer dependencies
src/cartographer/scripts/install_debs_cmake.sh
src/cartographer/scripts/install_abseil.sh
src/marvin/scripts/install_proto3_fixed.sh

# Install ROS dependencies
sudo rosdep init
rosdep update
rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y

Build the Workspace

catkin build
source devel/setup.bash # run this command from the catkin workspace base folder (not src)

Launch the Simulation

# Launch just simulation with sensors in RVIZ (no Cartographer)
roslaunch marvin world.launch 2> >(grep -v -E 'TF_REPEATED_DATA|buffer_core|lookupTransform')

# Launch just simulation with no RVIZ (for running with Cartgrapher separately)
roslaunch marvin world_no_rviz.launch 2> >(grep -v -E 'TF_REPEATED_DATA|buffer_core|lookupTransform')

# Launch Cartographer
roslaunch marvin cartographer_sim.launch 2> >(grep -v -E 'TF_REPEATED_DATA|buffer_core|lookupTransform|at line|^$')

# Launch simulation together with Cartographer
roslaunch marvin sim.launch 2> >(grep -v -E 'TF_REPEATED_DATA|buffer_core|lookupTransform|at line|^$')

Launch the Robot

Make sure to plug in all of the following and check their ports:

  • IMU (/dev/ttyUSB0)
  • Encoder Arduino (/dev/ttyACM0)
  • Motor Arduino (/dev/ttyACM1)
  • Velodyne LiDAR (ethernet)
  • ZED Camera (USB)
roslaunch marvin marvin.launch

Control the Robot

For both simulation and the real robot.

# Control using keyboard
rosrun marvin teleop_twist_keyboard.py

# Control using Dualshock 4 controller
rosrun marvin velocity.py

About

2022-2023 ARV Robot

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published