This repository contains configurations and source codes for demos presented in course OCG120G at University of Rhode Island.
- download the clearpath noetic OS
- check the online jackal manual for vehicle information
- check the online system configure to install all the basic ROS packages.
- IP set to 192.168.131.93 through the website configuration
- install driver:
sudo apt-get install ros-noetic-velodyne-driver
- go to ROS workspace
git clone https://github.com/GSO-soslab/jackal_ocg120g
- install other dependencies:
cd ~/Develop/ros/jackal_ws/
rosdep install --from-paths src --ignore-src -y
catkin build
- install ros noetic
- go to ROS workspace:
cd ~/Your_path/jackal_ws
- install jackal_ocg120g:
git clone https://github.com/GSO-soslab/jackal_ocg120g
- install other dependencies:
sudo apt-get install ros-noetic-jackal-description
- build:
catkin build ocg120g_remote
- Add laptop hostname in Jackal:
- In laptop terminal: get [Laptop_IP] by typing
hostname -I
; and get [Laptop_Hostname] by typinghostname
- In jackal terminal:
echo '[Laptop_IP] [Laptop_Hostname]' | sudo tee -a /etc/hosts
- In laptop terminal: get [Laptop_IP] by typing
- Do the same thing for Jackal hostanme in laptop
- In Jackal, launch Velodyne Lidar:
roslaunch ocg120g_bringup bringup_velodyne.launch
- In laptop:
cd ~/Develop/ros/jackal_ws/src/jackal_ocg120g/ocg120g_remote/setup/J3_laptop
source setup_J3_Demo1.sh
- download the clearpath noetic OS
- check the online jackal manual for vehicle information
- check the online system configure to install all the basic ROS packages.
- install librealsense SDK
sudo mkdir -p /etc/apt/keyrings
curl -sSf https://librealsense.intel.com/Debian/librealsense.pgp | sudo tee /etc/apt/keyrings/librealsense.pgp > /dev/null
sudo apt-get install apt-transport-https
echo "deb [signed-by=/etc/apt/keyrings/librealsense.pgp] https://librealsense.intel.com/Debian/apt-repo `lsb_release -cs` main" | \
sudo tee /etc/apt/sources.list.d/librealsense.list
sudo apt-get update
sudo apt-get install librealsense2-dkms
sudo apt-get install librealsense2-utils
sudo apt-get install librealsense2-dev
sudo apt-get install librealsense2-dbg
-
verify installation: Reconnect the Intel RealSense depth camera and run:
realsense-viewer
-
install realsense ros wrap (needs to be from the source)
cd `/Your_Workspace/src
git clone https://github.com/IntelRealSense/realsense-ros.git
cd realsense-ros/
git checkout ros1-legacy
cd ..
rosdep install --from-paths src --ignore-src -r -y
catkin_init_workspace
cd ..
catkin_make clean
catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release
catkin_make install
- verify the ros wrapper:
roslaunch realsense2_camera rs_camera.launch
- go to ROS workspace
git clone https://github.com/GSO-soslab/jackal_ocg120g
- install other dependencies:
cd ~/Your_Workspace/
rosdep install --from-paths src --ignore-src -y
# point cloud compression setup
sudo apt install ros-noetic-point-cloud-transport ros-noetic-draco-point-cloud-transport
catkin_make
- install ros noetic
- go to ROS workspace:
cd ~/Your_path/jackal_ws
- install jackal_ocg120g:
git clone https://github.com/GSO-soslab/jackal_ocg120g
- install other dependencies:
sudo apt-get install ros-noetic-jackal-description
- build:
catkin build ocg120g_remote
- Add laptop hostname in Jackal:
- In laptop terminal: get [Laptop_IP] by typing
hostname -I
; and get [Laptop_Hostname] by typinghostname
- In jackal terminal:
echo '[Laptop_IP] [Laptop_Hostname]' | sudo tee -a /etc/hosts
- In laptop terminal: get [Laptop_IP] by typing
- Do the same thing for Jackal hostanme in laptop
- In Jackal, launch Realsense camera:
roslaunch ocg120g_bringup bringup_realsense.launch
- In laptop:
cd ~/Develop/ros/jackal_ws/src/jackal_ocg120g/ocg120g_remote/setup/J2_laptop
source setup_J2_Demo1.sh
- download the clearpath noetic OS
- check the online jackal manual for vehicle information
- check the online system configure to install all the basic ROS packages.
- follow instruction to install Livox-SDK
- build ros driver:
cd ~/Your_Workspace/src
git clone https://github.com/Livox-SDK/livox_ros_driver
catkin build
cd ~/Your_Workspace/src
git clone https://github.com/GSO-soslab/jackal_ocg120g
cd ~/Your_Workspace/
rosdep install --from-paths src --ignore-src -y
catkin build
- install ros noetic
- go to ROS workspace:
cd ~/Your_path/jackal_ws
- install jackal_ocg120g:
git clone https://github.com/GSO-soslab/jackal_ocg120g
- install other dependencies:
sudo apt-get install ros-noetic-jackal-description
- build:
catkin build ocg120g_remote
- Add laptop hostname in Jackal:
- In laptop terminal: get [Laptop_IP] by typing
hostname -I
; and get [Laptop_Hostname] by typinghostname
- In jackal terminal:
echo '[Laptop_IP] [Laptop_Hostname]' | sudo tee -a /etc/hosts
- In laptop terminal: get [Laptop_IP] by typing
- Do the same thing for Jackal hostanme in laptop
- In Jackal:
# launch lidar
roslaunch ocg120g_bringup bringup_livox.launch
# time sync
sudo ptpd -M -i br0 -C
- In laptop:
cd ~/Develop/ros/jackal_ws/src/jackal_ocg120g/ocg120g_remote/setup/J1_laptop
source setup_J1_Demo1.sh
First, refer to the Jackal documentation to complete the Jackal setup.
Complete ROS installation for
Create a ros workspace in home directory.
mkdir -p ~/ros_ws/src
git clone https://github.com/GSO-soslab/jackal_ocg120g ~/ros_ws/src
Install packages necessary for building packages
sudo apt install python-rosdep python-rosinstall python-rosinstall-generator python-wstool build-essential
Install package dependencies
cd ~/ros_ws
rosdep install --from-paths src --ignore-src -y
Build the packages with catkin_make
cd ~/ros_ws
catkin_make
Finally, if hacking the default setup or configuring attachments is desired, add directive for sourcing the top level workspace into robot-upstart configuration and attachments if applicable (see accessories.launch). Keep in mind that this step is not necessary.
sudo nano /etc/ros/setup.bash
To control motors individually, you need to use custom jackal and jackal_robot repositories.
For additional configuration regarding network and time sync, please refer to Network Setup and Time Sync Setup.
Launch files for running attachiments resides in ocg120g_bringup package.
roslaunch ocg120g_bringup bringup_livox.launch ## or
roslaunch ocg120g_bringup bringup_realsense.launch ## or
roslaunch ocg120g_bringup bringup_velodyne.launch ## or
roslaunch ocg120g_bringup bringup_zed.launch ## or
roslaunch ocg120g_bringup relay_zed.launch
Driver Name | Repository URL | Working Commit hash | Additional information |
---|---|---|---|
Livox Laser | https://github.com/Livox-SDK/livox_ros_driver.git | 880c46a | Requires additional configuration. Refer to network setup and time sync setup. |
Zed Streo Camera | https://github.com/stereolabs/zed-ros-wrapper.git | 1299a1c | |
Velodyne | - | Refer here | |
Intel Realsense | - | Refer here |
Note: This launch file will run move base as well.
Note #2: If you want to change the algorithm for path finding, you need to modify the jackal_navigation/launch/include/move_base.launch
file in the jackal
repository.
roslaunch ocg120g_mapping cartographer.launch