Skip to content

KumarRobotics/dcist_master_ros2

 
 

Repository files navigation

DCIST Master

Docker CI Build

This is the base image used for the DCIST robots at KR, for the Jackals to run ROS2-Jazzy on Ubuntu-24.04

TL;DR:

  • It installs the dependencies required by many user packages (see dcist-master-jazzy/Dockerfile).
  • It copies the ws main dcist workspace and builds it.
  • It provides helper scripts build.bash, run.bash and join.bash

Architectures

Three architectures are provided:

  • kumarrobotics/dcist-master-jazzy-bare - x86_64 CPU: To run in CPU-only platforms, such as the Intel NUC for the high-altitude quads. Based on ubuntu Docker images.
  • kumarrobotics/dcist-master-jazzy-nvda - x86_64 CUDA: To run in x86_64 GPU-accelerated platforms, such as the computers on the Jackals. Based on nvidia/cuda Docker images.
  • kumarrobotics/dcist-master-jazzy-nvda - arm64 CUDA: To run in Nvidia Jetson platforms.

How to build and use?

git clone https://github.com/KumarRobotics/dcist_master_ros2.git
cd dcist_master_ros2 && git submodule update --init --recursive
./build.bash dcist-master-jazzy x86_64_nvda
./run.bash dcist-master-jazzy-nvda:latest

Notes on how to start up the Jackal

To launch the base hardware (no sensors), use the following commands:

ros2 launch /etc/clearpath/platform/launch/platform-service.launch.py
ros2 run safety_controller safety_controller

To ensure the jackal can respond to autonomous commands, ensure the controller is set to "Auto" mode and that command velocities are published as TwistStamped messages to the topic: /j100_0000/autonomous/cmd_vel.

If the jackal does not move with teleop, make sure to check the following things:

  • The controller is in manual mode
  • run ros2 service list. You'll find a service that looks like /platform/mcu/configure. Note that it may have a prefix, such as /jackal. If this is the case, the namespace needs to be udpated. Run the following command: ros2 service call /platform/mcu/configure clearpath_platform_msgs/srv/ConfigureMcu "{domain_id: 0, robot_namespace: 'j100_0000'}"

Notes on how to start the ouster and zed

To launch the LiDAR and camera, use the following commands:

ros2 launch ouster_ros sensor.composite.launch.py viz:=false
ros2 launch zed_wrapper zed_camera.launch.py camera_model:=zed2i

Notes on how to get odometry estimates

To receive odometry, use the following commands:

ros2 launch direct_lidar_inertial_odometry dlio.launch.py rviz:=false

About

Master image for DCIST robots (Titan/Jackal)

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 44.9%
  • Shell 34.3%
  • Dockerfile 20.8%