Skip to content
@IcebergASV

Iceberg ASV

Inter-disciplinary Engineering Club based at Memorial University aiming to compete in RoboNations Roboboat competition

Welcome ⛵

Iceberg ASV is a student-led, inter-disciplinary engineering competition team representing Memorial University at the annual International RoboBoat Competition in Florida. Our team works collaboratively to design, construct, and test an Autonomous Surface Vehicle (ASV).

GitHub Structure

Outline of how our repositories are structured.

asv-system

asv-system is our main repository that integrates all software used on our boat. There exists asv-system submodules for each hardware component, such as asv-lidar and asv-camera.

graph TD;
    asv-system-->asv-lidar;
    asv-system-->asv-camera;
    asv-system-->asv-imu;
    asv-system-->asv-pixhawk;
Loading

gz-simulator

gz-simulator contains all software and resources used in our GAZEBO simulation environment.

Workflow

Feature Branch Workflow

Iceberg ASV uses a Git Feature Branch Workflow. When a developer is working in a repository, they must must make or resolve an issue associated with that repository. The developer must also make a 'feature' branch to resolve the issue.

If a developer runs into a problem while working to resolve an issue, they must make a new issue and a new feature branch to resolve the issue.

Repository Readme

In each repository for hardware components it is essential that developers add the links and commands used to install packages on the TX2.

Developer Coding Guidelines

Name Convention

  • A name should cover the reason for its existence. It should be able to answer the following questions:
    • What will it achieve?
    • How will it be utilized?
  • Names should be pronounceable and avoid encoding.

Functions

  • A function should carry out one task. Functions should not be lengthy.

Comments

  • Adequate naming convention can replace the use of comments.
  • Comments can be used to:
    • Explain a decision behind a code implementation
    • Clarify and Inform

Formatting

  • Concepts that are closely related should keep a close vertical distance.
  • Declarations of variables or functions should take place close to where they will be used.
  • The order of file should be high to low. The detail should progress as the file is scrolled.

Vertical Formatting

  • Concepts that are closely related should keep a close vertical distance.
  • Declarations of variables or functions should take place close to where they will be used.
  • The order of file should be high to low. The detail should progress as the file is scrolled.

Horizontal Formatting

  • Aim for short lines (100-120 characters)
  • Horizontal spacing brings attention to related concepts
  • Indentation gives structure to the file

About TX2 Setup

We used the rootOnNVMe repository to put the root directory on out Samsung 970 Pro SSD.

Benefits: SSD is faster and larger than the storage on the TX2.

Sponsors

Popular repositories Loading

  1. usv_gazebo_plugins usv_gazebo_plugins Public

    basically a fork of osrf/vrx's usv_gazebo_plugins

    C++ 1

  2. object_detection_pkg object_detection_pkg Public

    Real-time object detection with ROS, based on YOLOv5 and PyTorch tailored for Iceberg ASV using Intel RealSense D435.

    CMake 1

  3. real_world_marine_markers_custom_dataset_yolo_training real_world_marine_markers_custom_dataset_yolo_training Public

    Repository showcasing YOLOv5 training on a custom dataset of real-world marine markers, featuring comprehensive Jupyter notebooks and archived model weights for advanced object detection in marine …

    Jupyter Notebook 1

  4. general general Public

    C++ 1 1

  5. asv-system asv-system Public

    ASV system integration

    Makefile

  6. .github .github Public

Repositories

Showing 10 of 36 repositories
  • general Public
    IcebergASV/general’s past year of commit activity
    C++ 1 1 1 3 Updated Nov 25, 2024
  • real_world_marine_markers_custom_dataset_yolo_training Public

    Repository showcasing YOLOv5 training on a custom dataset of real-world marine markers, featuring comprehensive Jupyter notebooks and archived model weights for advanced object detection in marine environments.

    IcebergASV/real_world_marine_markers_custom_dataset_yolo_training’s past year of commit activity
    Jupyter Notebook 1 0 0 0 Updated Nov 23, 2024
  • IcebergASV/rosbag_camera_parser’s past year of commit activity
    Python 0 0 0 0 Updated Nov 16, 2024
  • general-njord2024-archive Public archive Forked from IcebergASV/general

    Forked archive of general repo after development for Njord 2024.

    IcebergASV/general-njord2024-archive’s past year of commit activity
    C++ 0 1 0 0 Updated Nov 4, 2024
  • visualization Public

    GUI, RVIZ & RQT configuration

    IcebergASV/visualization’s past year of commit activity
    Python 0 MIT 0 0 1 Updated Oct 27, 2024
  • IcebergASV/njord_real_world_marine_markers_custom_dataset_yolo_training’s past year of commit activity
    Jupyter Notebook 0 0 0 0 Updated Aug 15, 2024
  • MudderBoard Public

    KiCad Development of the 2024-2025 PCB; The MudderBoard

    IcebergASV/MudderBoard’s past year of commit activity
    Rich Text Format 0 0 0 0 Updated Jul 17, 2024
  • iceberg_sim Public

    Gazebo simulation package for use with ardupilot_gz and ardupilot_sitl_models packages

    IcebergASV/iceberg_sim’s past year of commit activity
    Python 0 Apache-2.0 0 0 0 Updated Jul 4, 2024
  • laser_segmentation Public Forked from ajtudela/laser_segmentation

    Implementation of differents algorithms for segmentation of laserscans, splitting them into subsets of beams, with a ROS2 interface.

    IcebergASV/laser_segmentation’s past year of commit activity
    C++ 0 Apache-2.0 3 0 0 Updated Apr 23, 2024
  • gazebo_simulation_marine_markers_custom_dataset_yolov5_training Public

    Repository documenting YOLOv5 training on Gazebo-simulated marine markers, with detailed Jupyter notebooks and stored model weights for enhanced object detection.

    IcebergASV/gazebo_simulation_marine_markers_custom_dataset_yolov5_training’s past year of commit activity
    Jupyter Notebook 0 0 0 0 Updated Mar 7, 2024

Top languages

Loading…

Most used topics

Loading…