Skip to content
This repository was archived by the owner on Oct 18, 2025. It is now read-only.
/ HydrakonSimV1 Public archive

Code that runs our HydrakonSim V1, based on CARLA with ROS2 Humble. Developed for FS-AI 2025

Notifications You must be signed in to change notification settings

Atlas-Racing/HydrakonSimV1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Table of Contents

Folder Structure


ROS2 Topics

🛰 Sensors & Environment

  • /carla/imu_sensor
    IMU data from Carla’s onboard IMU
    ‣ Type: sensor_msgs/msg/Imu

  • /carla/gnss
    GNSS data from Carla’s onboard GPS sensor
    ‣ Type: sensor_msgs/msg/NavSatFix

  • /carla/lidar
    Raw LiDAR point cloud
    ‣ Type: sensor_msgs/msg/PointCloud2

  • /zed2i/camera_info
    Intrinsic camera parameters from the ZED2i simulation
    ‣ Type: sensor_msgs/msg/CameraInfo

  • /zed2i/depth/image
    Depth image from the ZED2i simulation
    ‣ Type: sensor_msgs/msg/Image

  • /zed2i/rgb/image
    RGB image from the ZED2i simulation
    ‣ Type: sensor_msgs/msg/Image


🚘 Vehicle Control

  • /carla/vehicle/*
    Set of vehicle control topics (e.g., throttle, brake, reverse)
    ‣ Type: Carla-specific control interfaces
    ‣ Driven via keyboard_control_node.py

🧠 Perception & Localization

  • /perception/lidar_cluster
    Clustered cone candidates from LiDAR
    ‣ Type: sensor_msgs/msg/PointCloud2

  • /perception/cone_markers
    RViz markers representing clustered cones
    ‣ Type: visualization_msgs/msg/MarkerArray

  • /gps/filtered
    GPS data after initial fusion/filtering
    ‣ Type: sensor_msgs/msg/NavSatFix

  • /gps/pose
    GPS fused pose as geometry_msgs/PoseStamped
    ‣ Type: geometry_msgs/msg/PoseStamped

  • /odometry/gps
    Odometry based on raw GNSS + IMU
    ‣ Type: nav_msgs/msg/Odometry

  • /odometry/filtered
    Contains odometry output from robot_localization EKF
    ‣ Type: nav_msgs/msg/Odometry


🧭 Transforms & Logs

  • /tf
    Dynamic transform tree (e.g., map → base_link)
    ‣ Type: tf2_msgs/msg/TFMessage

  • /tf_static
    Static transforms (e.g., base_link → imu_link)
    ‣ Type: tf2_msgs/msg/TFMessage

  • /rosout
    Internal ROS 2 logging messages (for rqt_console, ros2 log)
    ‣ Type: rcl_interfaces/msg/Log

Getting Started

  1. ✅ Prerequisites

    • Ensure the following are installed:
      • Ubuntu 22.04 (Preferred) or later
      • ROS2 Humble
      • CARLA Simulator
      • Python 3.10
      • colcon, rosdep, and other ROS dev tools
      • NVIDIA GPU with drivers for Carla rendering
  2. 📁 Clone the Workspace

    cd ~
    git clone https://github.com/<your-username>/hydrakon_ws.git
    cd hydrakon_ws
  3. 📦 Build the Workspace

    source /opt/ros/humble/setup.bash
    rosdep install --from-paths src --ignore-src -r -y
    colcon build --symlink-install
  4. 🔧 Source the Setup

    source install/setup.bash
  5. 🧪 Run Carla Simulator

    cd ~/<location-to-your-Carla-sim>
    cd Linux
    ./CarlaUnreal.sh 

    Use the -quality-level=Low flag if needed

    ./CarlaUnreal.sh -quality-level=Low
  6. 🚗 Launch the Full System

    ros2 launch hydrakon_launch hydrakon_launch.py
  7. 📊 Visualize in RViz

    rviz2
    

    Open this in a new terminal, and make sure base_link is selected as the correct fixed frame, then go ahead and choose your desired topics to visualize

About

Code that runs our HydrakonSim V1, based on CARLA with ROS2 Humble. Developed for FS-AI 2025

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published