DeepGuider Cart for ROS (shortly dg_cart_ros) is a mobile platform for DeepGuider project to acquire datasets and test algorithms integrated with sensors.
- Mobile platform: CareLine Nadri 500
- Maximum velocity: 15 km/hr (~ 4.2 m/s)
- Maximum climbing angle: 10 deg
- Battery capacity: 64 AH (mileage: 35 km)
- Computing board: Gigabyte Aero 15 OLED XA
- UVC camera: Logitech C930e (uvc_camera)
- 1920x1080 / 30 fps / FOV: 90 deg
- RGB-D camera: Intel RealSense D435i (realsense2_camera)
- RGB: 1920x1080 / 30 fps / FOV (HxV): 69.4x42.5 deg
- Depth: 1280x720 / 90 fps / FOV (HxV): 87x58 deg
- IMU: 3 DoF accleration ($\pm$4 g), 3 DoF gyroscope ($\pm$1000 deg/s)
- Spherical camera (UVC camera): Ricoh Theta S
- IMU/AHRS: Xsens MTi-30 (xsens_driver)
- Gyro bias stability: 18 deg/hr
- Roll/Pitch accuracy: Static 0.2 deg, dynamic 0.5 deg
- Yaw accuracy: 1.0 deg
- GPS receiver: Ascen Korea GPS620 (nmea_navsat_driver)
- Accuracy (Position Single Point L1): 3.0 m
- Frequency: 1 Hz
- TTFF (hot/cold): 1/35 sec
- RTK-GPS receiver: Novatel PwrPak7 + OEM7700 + GNSS-802 (novatel_oem7_driver)
- Accuracy (Position Single Point L1): 1.5 m
- Accuracy (DGPS/RTK): 40/1 cm
- ROS Melodic Morenia (Installation Instructions)
- Tested on Ubuntu 18.04 LTS
sudo apt install ros-melodic-uvc-camera ros-melodic-realsense2-camera ros-melodic-xsens-driver ros-melodic-nmea-navsat-driver ros-melodic-novatel-oem7-driver ros-melodic-rosserial-arduino
If you don't have a ROS workspace, please make it as the following. You can change its name dg_ws
to your desired.
mkdir -p dg_ws/src && cd dg_ws && catkin_make
If you can run the following to add dg_ws
to ROS_PACKAGE_PATH
.
echo "source ~/dg_ws/install/setup.bash" >> ~/.bashrc
Or you need to run source ~/dg_ws/install/setup.bash
every time when you open a terminal.
- Clone dg_cart_ros repository
cd dg_ws
git clone https://github.com/deepguider/dg_cart_ros.git src/dg_cart_ros
- Build and install dg_cart_ros
catkin_make install
- Add udev rules for accessing and mounting sensor devices
sudo cp src/dg_cart_ros/udev.rules /etc/udev/rules.d/99-dg-device.rules
- Running sensor nodes
roslaunch dg_cart_ros dg_run_sensor.launch
- Running and visualizing sensor data
roslaunch dg_cart_ros dg_show_sensor.launch
- Running, visualizing, and recording sensor data
roslaunch dg_cart_ros dg_record_sensor.launch
- Add
bag_path:=/your/target/path/
to specify a path to save a bag file (default: yourHOME
directory)
roslaunch dg_cart_ros dg_main_module.launch
Sometimes you want to operate a single sensor without dg_cart_ros. The following single-line commands will run a ROS node for each sensor. (Please be aware of running roscore
before rosrun
commands.)
- UVC camera (uvc_camera)
rosrun uvc_camera uvc_camera_node
- Add
_device:="/dev/videoLGT0"
to specify a camera device
- RGB-D camera (realsense2_camera)
roslaunch realsense2_camera rs_camera.launch
- Add
serial_no:="000000000000"
to specify a camera device
- IMU/AHRS (xsens_driver)
roslaunch xsens_driver xsens_driver.launch
- Add
device:="/dev/ttyIMU0"
to specify a serial port
- GPS receiver (nmea_navsat_driver)
roslaunch nmea_navsat_driver nmea_serial_driver.launch
- Add
port:="/dev/ttyGPS0" baud:="9600"
to specify its serial port
- RTK-GPS receiver (novatel_oem7_driver)
roslaunch novatel_oem7_driver oem7_tty.launch
- Add
oem7_tty_name:="/dev/ttyNVT0"
oem7_tty_baud:="9600"
to specify a serial port
Please refer DeepGuider Project LSA.
The authors thank the following contributors and projects.