Skip to content

RobotiXX/Verti-Wheelers

Repository files navigation

Verti-Wheelers: Verti-4-Wheeler (V4W) and Verti-6-Wheeler (V6W) Installation Guidance

Suite image

Dependencies :

ROS Noetic.

PyTorch.

Torchvision

Arduino Arduino Mega 2560.

Python 3.8.10.

RGBD Camera Driver Azure Kinect Camera.

Direct LiDAR-Inertial Odometry (https://github.com/vectr-ucla/direct_lidar_inertial_odometry.git).

Elevation Mapping cupy (https://github.com/leggedrobotics/elevation_mapping_cupy.git)

Create a workspace and clone sources

mkdir -p catkin_ws/src; cd catkin_ws/src; catkin_init_workspace
git clone https://github.com/microsoft/Azure_Kinect_ROS_Driver
git clone https://github.com/microsoft/Azure-Kinect-Sensor-SDK
git clone https://github.com/RobotiXX/Verti-Wheelers.git

Install dependencies with rosdep :

cd catkin_ws; rosdep install --from-paths . --ignore-src --rosdistro=noetic

Install Azure Kinect Sensor SDK on Ubuntu 20.04+ (Current Sensor SDK only supports for Ubuntu 18.04) :

  1. Downlaod the k4a-tools 1.4.1amd64.deb file.
  2. Download the libk4a1.4, libk4a1.4-dev files.
  3. Install SDK.
  4. Create a new file: sudo gedit /etc/udev/rules.d/99-k4a.rules, add the contents as below:
# Bus 002 Device 116: ID 045e:097a Microsoft Corp.  - Generic Superspeed USB Hub
# Bus 001 Device 015: ID 045e:097b Microsoft Corp.  - Generic USB Hub
# Bus 002 Device 118: ID 045e:097c Microsoft Corp.  - Azure Kinect Depth Camera
# Bus 002 Device 117: ID 045e:097d Microsoft Corp.  - Azure Kinect 4K Camera
# Bus 001 Device 016: ID 045e:097e Microsoft Corp.  - Azure Kinect Microphone Array

BUS!="usb", ACTION!="add", SUBSYSTEM!=="usb_device", GOTO="k4a_logic_rules_end"

ATTRS{idVendor}=="045e", ATTRS{idProduct}=="097a", MODE="0666", GROUP="plugdev"
ATTRS{idVendor}=="045e", ATTRS{idProduct}=="097b", MODE="0666", GROUP="plugdev"
ATTRS{idVendor}=="045e", ATTRS{idProduct}=="097c", MODE="0666", GROUP="plugdev"
ATTRS{idVendor}=="045e", ATTRS{idProduct}=="097d", MODE="0666", GROUP="plugdev"
ATTRS{idVendor}=="045e", ATTRS{idProduct}=="097e", MODE="0666", GROUP="plugdev"

LABEL="k4a_logic_rules_end"

Replace source file for Azure_Kinect_ROS_Driver with the one provided in config folder and replace config yaml files for the dlio and elevation mapping cupy with the one provided in respective folder

Build and source

cd catkin_ws; catkin build; source devel/setup.bash

To Launch the Verti-Wheelers' ROS Network

In terminal 1: roslaunch navstack_pub runCAR.launch

To Launch the Three Different Algorithms

Open_loop launch:
In terminal 2: roslaunch navstack_pub open_loop.launch

Rule_based launch:
In terminal 2: roslaunch navstack_pub rule_based.launch

Neural Network Behavior cloning launch:
In terminal 2: cd catkin_ws/src/navstack_pub/src; python3 action_generator.py

Pytorch Model of the End-to-End Learning-Based Controller

Trained Model

All training data can be found at GMU Dataverse

WM-VCT Planner

Launch packages
In terminal 1: roslaunch navstack_pub runCAR_all.launch

Launch planner
In terminal 2: cd catkin_ws/src/WM-VCT; python3 CustromPlanner.py

Verti-Wheelers Control Interface with PS4 Controller

Suite image

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published