commit
1acfb6ca28
|
@ -1 +1,3 @@
|
||||||
db/*.db
|
db/*.db
|
||||||
|
doxygen/html/
|
||||||
|
site/
|
|
@ -0,0 +1,7 @@
|
||||||
|
nav:
|
||||||
|
- Introduction: index.md
|
||||||
|
- installation
|
||||||
|
- tutorials
|
||||||
|
- how-to-guides
|
||||||
|
- design
|
||||||
|
- support
|
|
@ -0,0 +1,2 @@
|
||||||
|
nav:
|
||||||
|
- index.md
|
|
@ -0,0 +1 @@
|
||||||
|
# Design
|
|
@ -0,0 +1,2 @@
|
||||||
|
nav:
|
||||||
|
- index.md
|
|
@ -0,0 +1 @@
|
||||||
|
# How-to-guides
|
|
@ -0,0 +1,16 @@
|
||||||
|
# AutowareV2X Documentation
|
||||||
|
|
||||||
|
## About AutowareV2X
|
||||||
|
|
||||||
|
AutowareV2X is an open-source module that can be added onto the newest [Autoware.universe](https://github.com/autowarefoundation/autoware) to enable V2X communication.
|
||||||
|
|
||||||
|
It utilizes [Vanetza](https://github.com/riebl/vanetza) as the protocol suite for ETSI C-ITS standards.
|
||||||
|
|
||||||
|
We have also provided a working example of a CPM application, where Collective Perception Messages can be used to exchange perception information in Autoware.
|
||||||
|
|
||||||
|
## Getting started
|
||||||
|
|
||||||
|
- [Installation](/installation) pages explain the installation steps of AutowareV2X and its prerequisites.
|
||||||
|
- [Tutorials](/tutorials) pages provide several tutorials to follow after installation.
|
||||||
|
- [Design](/design) pages explain the design concept and architecture of AutowareV2X.
|
||||||
|
- [Support](/support) pages are the place to go if you need additional help.
|
|
@ -0,0 +1,3 @@
|
||||||
|
nav:
|
||||||
|
- index.md
|
||||||
|
- docker-installation.md
|
|
@ -0,0 +1,63 @@
|
||||||
|
# Docker Installation
|
||||||
|
|
||||||
|
In order to run the simulations explained in the [Tutorials](/tutorials) section, you will need to proceed with the Docker installation.
|
||||||
|
|
||||||
|
## Installing Autoware (Docker version)
|
||||||
|
|
||||||
|
For the newest documentation for the Docker installation of Autoware, see their [official documentation](https://autowarefoundation.github.io/autoware-documentation/main/installation/autoware/docker-installation/).
|
||||||
|
|
||||||
|
In a nutshell, the following commands should work:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/autowarefoundation/autoware.git autoware_docker
|
||||||
|
cd autoware_docker
|
||||||
|
|
||||||
|
# Install dependencies using Ansible
|
||||||
|
./setup-dev-env.sh docker
|
||||||
|
|
||||||
|
# Make directory to store maps
|
||||||
|
mkdir ~/autoware_map
|
||||||
|
|
||||||
|
# Launch Autoware container
|
||||||
|
rocker --nvidia --x11 --user --volume $HOME/autoware_docker --volume $HOME/autoware_map -- ghcr.io/autowarefoundation/autoware-universe:latest-cuda
|
||||||
|
```
|
||||||
|
|
||||||
|
## Adding AutowareV2X
|
||||||
|
|
||||||
|
From here, run commands inside the container.
|
||||||
|
|
||||||
|
1. Move into `autoware_docker` directory.
|
||||||
|
```bash
|
||||||
|
cd autoware_docker
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Edit the `autoware.repos` file and add the following two repositories to the end.
|
||||||
|
```
|
||||||
|
v2x/autoware_v2x:
|
||||||
|
type: git
|
||||||
|
url: git@github.com:tlab-wide/autoware_v2x.git
|
||||||
|
version: main
|
||||||
|
v2x/vanetza:
|
||||||
|
type: git
|
||||||
|
url: git@github.com:tlab-wide/vanetza.git
|
||||||
|
version: socktap-cpm-tr103562
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Update the repository
|
||||||
|
```
|
||||||
|
vcs import src < autoware.repos
|
||||||
|
vcs pull src
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Install dependent ROS packages
|
||||||
|
```bash
|
||||||
|
sudo apt update
|
||||||
|
rosdep update
|
||||||
|
rosdep install --from-paths . --ignore-src --rosdistro $ROS_DISTRO
|
||||||
|
```
|
||||||
|
|
||||||
|
5. Build the workspace
|
||||||
|
```
|
||||||
|
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
|
||||||
|
```
|
|
@ -0,0 +1,68 @@
|
||||||
|
# Installing AutowareV2X
|
||||||
|
|
||||||
|
AutowareV2X is used as an add-on module to the open-source autonomous driving stack called [Autoware](https://autowarefoundation.github.io/autoware-documentation/main/). Therefore, in order to properly use AutowareV2X, Autoware must first be installed on the system.
|
||||||
|
|
||||||
|
## Prerequisites
|
||||||
|
|
||||||
|
- OS
|
||||||
|
- Ubuntu 20.04
|
||||||
|
- Ubuntu 22.04
|
||||||
|
- ROS
|
||||||
|
- ROS2 Galactic
|
||||||
|
|
||||||
|
## Installing Autoware
|
||||||
|
|
||||||
|
Refer to the [Official Autoware Documentation](https://autowarefoundation.github.io/autoware-documentation/main/installation/autoware/source-installation/) for the newest installation procedures. In a nutshell, you can run the following commands:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Clone repository
|
||||||
|
git clone https://github.com/autowarefoundation/autoware.git
|
||||||
|
cd autoware
|
||||||
|
|
||||||
|
# Install dependencies using Ansible
|
||||||
|
./setup-dev-env.sh
|
||||||
|
|
||||||
|
# Use vcstool to import more repositories
|
||||||
|
mkdir src
|
||||||
|
vcs import src < autoware.repos
|
||||||
|
|
||||||
|
# Install dependent ROS packages
|
||||||
|
source /opt/ros/galactic/setup.bash
|
||||||
|
rosdep update
|
||||||
|
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO
|
||||||
|
|
||||||
|
# Build the workspace
|
||||||
|
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
|
||||||
|
```
|
||||||
|
|
||||||
|
## Adding AutowareV2X
|
||||||
|
|
||||||
|
1. Edit the `autoware.repos` file and add the following two repositories to the end.
|
||||||
|
```
|
||||||
|
v2x/autoware_v2x:
|
||||||
|
type: git
|
||||||
|
url: git@github.com:tlab-wide/autoware_v2x.git
|
||||||
|
version: main
|
||||||
|
v2x/vanetza:
|
||||||
|
type: git
|
||||||
|
url: git@github.com:tlab-wide/vanetza.git
|
||||||
|
version: socktap-cpm-tr103562
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Update the repository
|
||||||
|
```
|
||||||
|
vcs import src < autoware.repos
|
||||||
|
vcs pull src
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Install dependent ROS packages
|
||||||
|
```bash
|
||||||
|
source /opt/ros/galactic/setup.bash
|
||||||
|
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Build the workspace
|
||||||
|
```
|
||||||
|
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
|
||||||
|
```
|
|
@ -0,0 +1,2 @@
|
||||||
|
nav:
|
||||||
|
- index.md
|
|
@ -0,0 +1,3 @@
|
||||||
|
# Support
|
||||||
|
|
||||||
|
- Contact: yuasabe[at]hongo.wide.ad.jp
|
|
@ -0,0 +1,2 @@
|
||||||
|
nav:
|
||||||
|
- index.md
|
|
@ -0,0 +1,18 @@
|
||||||
|
# Tutorials
|
||||||
|
|
||||||
|
Simulations can be an easy way of verifying the functionality of AutowareV2X before an actual field test.
|
||||||
|
Here, since we want to test both the sending and receiving of information through AutowareV2X, we will need at least two AutowareV2X instances. For this, we will use a Docker-based environment.
|
||||||
|
|
||||||
|
## Using CPM in a simulation-based environment
|
||||||
|
|
||||||
|
1. Create Docker networks
|
||||||
|
```
|
||||||
|
$ docker network create --driver=bridge --subnet=10.0.0.0/16 v2x_net -o com.docker.network.bridge.name="v2x_net"
|
||||||
|
```
|
||||||
|
# Launch Autoware container
|
||||||
|
rocker --nvidia --x11 --user --volume $HOME/autoware_docker --volume $HOME/autoware_map -- ghcr.io/autowarefoundation/autoware-universe:latest-cuda
|
||||||
|
|
||||||
|
$ cd autoware_docker
|
||||||
|
$ . install/setup.bash
|
||||||
|
$ ros2 launch autoware_v2x v2x.launch.xml network_interface:=eth1
|
||||||
|
```
|
|
@ -0,0 +1,67 @@
|
||||||
|
site_name: AutowareV2X
|
||||||
|
theme:
|
||||||
|
name: material
|
||||||
|
features:
|
||||||
|
- navigation.expand
|
||||||
|
- navigation.indexes
|
||||||
|
- navigation.instant
|
||||||
|
- navigation.sections
|
||||||
|
- navigation.tabs
|
||||||
|
- navigation.tabs.sticky
|
||||||
|
- navigation.top
|
||||||
|
palette:
|
||||||
|
- scheme: default
|
||||||
|
primary: white
|
||||||
|
toggle:
|
||||||
|
icon: material/weather-sunny
|
||||||
|
name: Switch to dark mode
|
||||||
|
- scheme: slate
|
||||||
|
primary: grey
|
||||||
|
toggle:
|
||||||
|
icon: material/weather-night
|
||||||
|
name: Switch to light mode
|
||||||
|
language: en
|
||||||
|
|
||||||
|
extra:
|
||||||
|
font:
|
||||||
|
text: Roboto
|
||||||
|
code: Roboto Mono
|
||||||
|
version:
|
||||||
|
provider: mike
|
||||||
|
|
||||||
|
extra_css:
|
||||||
|
- https://use.fontawesome.com/releases/v5.15.4/css/all.css
|
||||||
|
|
||||||
|
extra_javascript:
|
||||||
|
- https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML
|
||||||
|
|
||||||
|
plugins:
|
||||||
|
- awesome-pages
|
||||||
|
- search
|
||||||
|
|
||||||
|
markdown_extensions:
|
||||||
|
- abbr
|
||||||
|
- admonition
|
||||||
|
- attr_list
|
||||||
|
- codehilite:
|
||||||
|
guess_lang: false
|
||||||
|
- fontawesome_markdown
|
||||||
|
- footnotes
|
||||||
|
- mdx_math
|
||||||
|
- plantuml_markdown:
|
||||||
|
server: http://www.plantuml.com/plantuml
|
||||||
|
format: svg
|
||||||
|
- pymdownx.arithmatex
|
||||||
|
- pymdownx.details
|
||||||
|
- pymdownx.highlight
|
||||||
|
- pymdownx.snippets:
|
||||||
|
auto_append:
|
||||||
|
- includes/abbreviations.md
|
||||||
|
- pymdownx.superfences:
|
||||||
|
custom_fences:
|
||||||
|
- name: mermaid
|
||||||
|
class: mermaid
|
||||||
|
format: !!python/name:pymdownx.superfences.fence_code_format
|
||||||
|
- toc:
|
||||||
|
permalink: "#"
|
||||||
|
toc_depth: 3
|
Loading…
Reference in New Issue