Skip to content
This repository was archived by the owner on Apr 24, 2023. It is now read-only.

RoboJackets/igvc-software

Folders and files

NameName
Last commit message
Last commit date

Latest commit

bd65158 · Jul 31, 2022
Nov 28, 2020
Sep 11, 2019
Mar 29, 2020
Apr 28, 2022
Feb 14, 2021
May 27, 2022
May 27, 2022
Apr 21, 2022
May 27, 2022
Jun 5, 2022
Jun 4, 2022
Apr 21, 2022
May 25, 2022
May 25, 2022
Nov 23, 2019
Oct 29, 2019
Jan 15, 2018
Jul 31, 2022
Feb 18, 2020
Feb 14, 2021
Feb 18, 2020
Nov 28, 2020
Oct 29, 2019
Nov 28, 2020
Jul 18, 2021
Apr 15, 2015
Apr 21, 2022

Repository files navigation

RoboJackets IGVC Build Status

Welcome to the RoboJackets IGVC software repo! This document will give you a brief description of the repo's layout and an overview of the repo. For more detailed information, check out the github wiki or the RoboJackets wiki.

Software Lead

Folder Structure

The repo is comprised of multiple ROS packages and one sandbox folder for miscellaneous resources.

  • igvc_description URDF files for our robot and gazebo meshes used for simulation
  • igvc_gazebo Helper nodes used for simulation purposes
  • igvc_msgs Custom ROS messages used in the various ROS packages
  • igvc_navigation Collection of nodes that form our navigation stack
  • igvc_perception Collection of nodes that form our perception stack, most notably the line detector
  • igvc_platform Nodes that are platform specific and used to communicate with the hardware, ie. IMU, joystick and motor controller
  • igvc_rviz_plugins RVIZ plugins that provide visualization for our stack.
  • igvc_utils A collection of utility nodes and classes
  • igvc_sandbox Miscellaneous resources, including the models used by the neural network, udev rules, and waypoints files
  • documents Research and design documents.

Building Code

For an installation guide for ROS, check out the installation guide on the RoboJackets wiki.

  1. Clone the repository (with the git submodules) into the src directory of a catkin workspace:

    git clone https://github.com/RoboJackets/igvc-software --recursive
  2. Install dependencies:

    cd igvc-software
    ./install_dependencies.sh
  3. Use catkin_make in the workspace to build all the packages:

    catkin_make
  4. Make sure the devel/setup.bash is sourced before using any of the nodes in this package:

    source devel/setup.bash

Common Errors

  • Could not find a package configuration file provided by "parameter_assertions" with any of the following names:
    • parameter_assertions comes from a git submodule. Initialize the submodules by doing git submodule update --init --recursive
  • Could not find a package configuration file provided by "XXXX" with any of the following names:"
    • Make sure you have ran rosdep install --from-paths src --ignore-src in the catkin_ws folder already
    • If you still get this error after installing all dependencies, then that means that we forgot to include that package in our dependencies list. File an issue with the error message.

Running Gazebo

You can get started with the IGVC code base right away by launching our simulator!

Load up Swervi: The following command will load our platform into a simulated IGVC qualifications course:

roslaunch igvc_gazebo qualification.launch

Navigate the course: After launching the gazebo simulation, launch the navigation stack for simulation:

roslaunch igvc_navigation navigation_simulation.launch

Alternatively, you can control the robot manually with a USB gamepad with this command:

roslaunch igvc_platform joystick_driver.launch

Past Iterations

To view the software repository for our past differential drive robot, Jessiii, checkout the jessiii-dev branch.

Contributing

Join the chat here!