Skip to content

SoonerRobotics/autonav_software_2024

Folders and files

NameName
Last commit message
Last commit date

Latest commit

1bd99ff · Jun 2, 2024
Oct 31, 2023
Mar 12, 2024
Jun 2, 2024
May 30, 2023
May 31, 2024
May 28, 2024
Aug 25, 2023
May 21, 2024
Jun 4, 2023
Jan 10, 2024
Oct 31, 2023
Nov 9, 2022
Nov 12, 2023

Repository files navigation

autonav_software_2024

Github Workflow Status

Software for our 2024 Intelligent Ground Vehicle Competition AutoNav challenge entry, Danger Zone.
We are using ROS2 Humble on Ubuntu 22.04.

Dependencies

To setup all dependencies, run the following two commands. It is CRITICAL you do NOT run these commmands as sudo

cd setup
echo "machine files.dylanzeml.in login <user> password <password>" > vectorsecrets.txt
./setup.sh

Building

source /opt/ros/humble/setup.bash
cd autonav_ws
colcon build
source /install/setup.bash

Autonomous/Manual

Follow the steps in building and then run the following command

ros2 launch autonav_launch competition.xml

or

ros2 launch autonav_launch practice.xml

Simulation

Follow the steps in building and then run the following command

ros2 launch autonav_launch simulation.xml

VSCode

To edit the software with Visual Studio Code, please install the ros extension and open VSCode through the command line via code after running all steps under Building. To get proper intellisense for C++, create the following file: .vscode/c_cpp_properties.json

{
    "configurations": [
        {
            "name": "Linux",
            "includePath": [
                "${workspaceFolder}/**",
                "/opt/ros/humble/include/**"
            ],
            "defines": [],
            "compilerPath": "/usr/bin/gcc",
            "cStandard": "c17",
            "cppStandard": "gnu++17",
            "intelliSenseMode": "linux-gcc-x64"
        }
    ],
    "version": 4
}

Style

All folder names including packages should be in snake_case

Avoid most abbreviations

Tab length is 4 spaces (default)

CMakeLists.txt and package.xml should follow the patterns found in format_packages

Python

Python files should be written in the PEP-8 style

C++

file names should be in snake_case

class names should be in UpperCamelCase (to agree with rclcpp)

function names should be in camelCase