This repository contains the main ROS packages for the 2020th iteration of UNICORN, the refuse collecting robot.
-
LabVIEW implementations - Repository containing the LabVIEW implementations for the National Instruments RoboRIO board.
-
2019th iteration - The code from the previous iteration of the project, which all code in this repository is based on.
All software is based on ROS Kinetic, and has not been tested for later versions.
-
ROS Kinetic - ROS Kinetic installation instructions for Ubuntu 16.04.
-
ROS Tutorials - Guide for setting up your ROS workspace.
Please read through the coding style guides we are using
- CppStyleGuide - ROS Cpp Style Guide
- PyStyleGuide - ROS Python Style Guide
Make sure you have cloned the repository into the src folder of your workspace (the following instructions assumes that it is called catkin_ws).
cd ~/catkin_ws/src
git clone https://github.com/HusqvarnaResearch/hrp.git
git clone https://github.com/husky/husky.git
Goto hrp/am_driver_safe and insert a CATKIN_IGNORE file.
cd hrp/am_driver_safe
touch CATKIN_IGNORE
The AprilTag library and ROS wrapper ROS wrapper is also needed.
Install additional dependencies automatically using rosdep
cd ~/catkin_ws
rosdep install --from-path src --ignore-src -r -y
The above dependencies should be enough to get the simulator working.
-
ZED Camera SDK - Install the SDK for JETPACK 3.3 on the TX2 platform if needed
-
Intel RealSense SDK - Install the RealSense SDK and ROS wrapper.
The simulator can be started using the simulator_2020.launch file in the main unicorn package.
roslaunch unicorn simulator_2020.launch
Launching without any additional arguments will start SLAM by default, but can be turned off with the do_slam argument.
roslaunch unicorn simulator_2020.launch do_slam:=false
The gazebo client is not started by default, and needs to be stared manually.
gzclient
A rviz configuration including all sensors is included in the unicorn package, and can be launched using the rviz.launch file.
roslaunch unicorn rviz.launch
Please refer to docs/QuickStart.md for help on how to launch the platform.
Generate documentation using rosdoc_lite by running:
./generate_doc.sh
Then access the documentation by running:
xdg-open docs/doc/unicorn/html/annotated.html xdg-open docs/doc/local_planner/html/annotated.html
Or by going to the html folder and double-clicking on annotated.html.
Please refer to this cheat sheet before doing anything.
- GitCheatSheet - Git Cheat Sheet
Open a command window and run:
man git
To access the git manual.
cd ~/catkin_ws/src
git clone https://github.com/willys0/UNICORN-2020.git
git branch --list
git checkout <branch>
git branch <new-branch>
git checkout <branch>
git merge <local-branch>
If you are working on the same branch it's good practice to always run a fetch & pull when you start your workday.
git fetch
git pull
git add .
git commit -m "Commit message goes here"
git push origin <branch>