-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
38 changed files
with
1,648 additions
and
290 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,13 @@ | ||
# Community | ||
|
||
## Autonomous Driving AI Challenge Advent Calendar 2024 | ||
|
||
<https://qiita.com/advent-calendar/2023/jidounten-ai> | ||
|
||
## Articles on Autonomous Driving AI Challenge Efforts | ||
|
||
<https://automotive.panasonic.com/feature/jaaic> | ||
|
||
<https://www.ritsumei.ac.jp/ise/suki_ict/story01.html/> | ||
|
||
We are actively seeking contributions!!! |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,11 @@ | ||
# 移動しました | ||
# Redirect | ||
|
||
このページの内容は[こちら](../../information/rules.ja.md)に移動しました。 | ||
<!doctype html> | ||
<html> | ||
<head> | ||
<title>Redirect</title> | ||
<meta http-equiv="refresh" content="0;url=../../information/rules.html"> | ||
</head> | ||
<body> | ||
</body> | ||
</html> |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,81 @@ | ||
# Main Module | ||
|
||
## Customizing Autoware | ||
|
||
For this competition, we have prepared an implementation based on the autonomous driving software Autoware. This page provides background information and explanations on how to utilize this implementation effectively. | ||
|
||
In the previous simulation competition, we provided a launch file that could start a reduced configuration of Autoware by limiting functions and reducing the number of nodes from the default Autoware. For the background and purpose of this setup, please refer to the [previous competition's documentation](https://automotiveaichallenge.github.io/aichallenge2023-racing/customize/index.html). | ||
|
||
For this simulation competition, we have similarly prepared a [reduced configuration of Autoware designed for use with AWSIM](https://github.com/AutomotiveAIChallenge/aichallenge-2024/blob/main/aichallenge/workspace/src/aichallenge_submit/aichallenge_submit_launch/launch/reference.launch.xml) to enable partial use and flexible integration of Autoware. | ||
|
||
## Background of the Reduced Configuration of Autoware | ||
|
||
### Challenges of Using Autoware | ||
|
||
The default Autoware is composed of many nodes to accommodate various driving environments. | ||
|
||
You can also view the [configuration diagram of ROS nodes that constitute Autoware](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-architecture/node-diagram/) in the official Autoware documentation. The current diagram is shown below. | ||
|
||
![node-diagram](./images/architecture/autoware-node-diagram.png) | ||
|
||
Autoware is equipped with a wide range of functions in each component related to autonomous driving, designed to handle complex driving environments. | ||
|
||
However, understanding this complex configuration, the meaning and adjustment of each parameter, and switching or replacing modules is not necessarily easy. | ||
|
||
### Preparing a Reduced Configuration of Autoware-Micro | ||
|
||
Therefore, in the previous simulation competition, we prepared a reduced configuration of Autoware by limiting functions and reducing the number of nodes from the default Autoware. | ||
|
||
The node diagram of Autoware-Micro is shown below. You can see that the number of nodes has significantly decreased, and only the functions necessary for basic autonomous driving are included. | ||
|
||
![micro-node-diagram](./images/architecture/reference-autoware.png) | ||
|
||
Features of Autoware-Micro include: | ||
|
||
- Almost all nodes are started directly from a single launch file. | ||
- Parameters are written directly at the node startup, making it easy to track which parameters are needed for which nodes. | ||
- The ROS topic names used for input and output of each node are directly remapped at the node startup, making it easy to change the topic names. | ||
|
||
By writing autonomous driving software based on this Autoware, you can: | ||
|
||
- Understand the inner workings of Autoware more deeply due to its simple configuration. | ||
- Easily replace Autoware modules with your custom modules to work on functionality improvements. | ||
- Clearly see the impact of parameter changes on the overall system operation. | ||
- Add existing Autoware nodes that are not included in this version of Autoware. | ||
|
||
Changes and features of each component include: | ||
|
||
- Localization: Self-position estimation using GNSS, IMU, and wheel speed. | ||
- Planning: Simplified by omitting behavior_velocity_planner and obstacle_stop_planner, directly outputting a driving trajectory from the output route. | ||
- Control: A simple implementation example of control with simple_pure_pursuit. | ||
|
||
## Utilizing Autoware-Micro | ||
|
||
By utilizing Autoware-Micro, you can focus on the challenges of this competition: | ||
|
||
1. Strategic route planning for curves. | ||
2. Vehicle control at high speeds. | ||
|
||
Moreover, while referring to the implementation example of Autoware-Micro, you can try implementation methods slightly different from Autoware's architecture or create and introduce new custom nodes. | ||
|
||
By incorporating your custom nodes, you can improve driving performance and increase your score. | ||
|
||
For example, you can consider the following configuration, implement "Planning" and "Control" separately, or implement a node that handles both "Planning & Control." | ||
|
||
You are free to customize as long as the ROS topics for route input and vehicle interface output match. | ||
|
||
![racing-diagram](./images/architecture/racing_simple.png) | ||
|
||
## Workspace Structure | ||
|
||
For reference, the workspace structure used in this competition is as follows: | ||
|
||
docker-dev | ||
|
||
![dev](./images/docker/dev.drawio.svg) | ||
|
||
docker-eval | ||
|
||
![eval](./images/docker/eval.drawio.svg) | ||
|
||
## [NextStep: Reference](./reference.en.md) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
# Reference | ||
|
||
## Incorporating Changes | ||
|
||
When there are significant updates to the competition environment, announcements will be made accordingly. For reference, the following instructions are provided. | ||
|
||
Update Docker | ||
|
||
```bash | ||
docker pull ghcr.io/automotiveaichallenge/autoware-universe:humble-latest | ||
``` | ||
|
||
Update Repository | ||
|
||
```sh | ||
cd aichallenge2024 # path to aichallenge2024 | ||
git pull origin/main | ||
``` | ||
|
||
## Installing AWSIM with Visualization | ||
|
||
If you want to check the simulation screen of AWSIM, follow the steps in [this guide](../setup/visible-simulation.en.md) to install AWSIM with visualization. | ||
|
||
## Setting up Three Terminals for Debugging (Reference) | ||
|
||
To develop with three terminals for debugging, open the first terminal using `Alt+Ctrl+T` and then execute the following commands by pasting them with `Ctrl+Shift+P` and pressing `Enter`. | ||
|
||
```bash | ||
cd ~/aichallenge-2024 | ||
./docker_run.sh dev cpu | ||
``` | ||
|
||
```bash | ||
cd /aichallenge | ||
bash run_simulator.bash | ||
``` | ||
|
||
Open the second terminal using `Alt+Ctrl+T` and then execute the following commands by pasting them with `Ctrl+Shift+P` and pressing `Enter`. | ||
|
||
```bash | ||
cd ~/aichallenge-2024 | ||
./docker_run.sh dev cpu | ||
``` | ||
|
||
```bash | ||
cd /aichallenge | ||
bash run_autoware.bash | ||
``` | ||
|
||
Open the third terminal using `Alt+Ctrl+T` and then execute the following commands by pasting them with `Ctrl+Shift+P` and pressing `Enter`. | ||
|
||
```bash | ||
cd ~/aichallenge-2024 | ||
./docker_run.sh dev cpu | ||
``` | ||
|
||
```bash | ||
cd /aichallenge | ||
ros2 topic pub --once /control/control_mode_request_topic std_msgs/msg/Bool '{data: true}' >/dev/null | ||
``` | ||
|
||
When the screen below appears, the startup is complete. To terminate, press CTRL + C in each terminal. | ||
![autoware](./images/autoware.png) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
# 参考 | ||
|
||
## 変更点の取り込み | ||
|
||
大会環境の重大なアップデートがあった際には適宜アナウンスがあります。 | ||
参考までにこちらに記載しています。以下を実行してください。 | ||
|
||
Dockerのupdate | ||
|
||
```bash | ||
docker pull ghcr.io/automotiveaichallenge/autoware-universe:humble-latest | ||
``` | ||
|
||
Repositoryのupdate | ||
|
||
```sh | ||
cd aichallenge2024 # path to aichallenge2024 | ||
git pull origin/main | ||
``` | ||
|
||
## 描画ありAWSIMの導入 | ||
|
||
AWSIMのシミュレーション画面を確認したい方は、[こちら](../setup/visible-simulation.ja.md)の手順に従って描画ありAWSIMの導入を行ってください。 | ||
|
||
## Debug用にTerminalを3つ用意して開発したい場合 (参考) | ||
|
||
`Alt+Ctrl+T`で1つ目のターミナルを立ち上げてから、以下のコマンド`Ctrl+Shift+P`で貼り付けた後に`Enter`で実行します。 | ||
|
||
```bash | ||
cd ~/aichallenge-2024 | ||
./docker_run.sh dev cpu | ||
``` | ||
|
||
```bash | ||
cd /aichallenge | ||
bash run_simulator.bash | ||
``` | ||
|
||
`Alt+Ctrl+T`で2つ目のターミナルを立ち上げてから、以下のコマンド`Ctrl+Shift+P`で貼り付けた後に`Enter`で実行します。 | ||
|
||
```bash | ||
cd ~/aichallenge-2024 | ||
./docker_run.sh dev cpu | ||
``` | ||
|
||
```bash | ||
cd /aichallenge | ||
bash run_autoware.bash | ||
``` | ||
|
||
`Alt+Ctrl+T`で3つ目のターミナルを立ち上げてから、以下のコマンド`Ctrl+Shift+P`で貼り付けた後に`Enter`で実行します。 | ||
|
||
```bash | ||
cd ~/aichallenge-2024 | ||
./docker_run.sh dev cpu | ||
``` | ||
|
||
```bash | ||
cd /aichallenge | ||
ros2 topic pub --once /control/control_mode_request_topic std_msgs/msg/Bool '{data: true}' >/dev/null | ||
``` | ||
|
||
下記の様な画面が表示されたら起動完了です。終了するには各ターミナル上でCTRL + Cを入力します。 | ||
![autoware](./images/autoware.png) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,11 @@ | ||
# 移動しました | ||
# Redirect | ||
|
||
このページの内容は[こちら](../../setup/requirements.ja.md)に移動しました。 | ||
<!doctype html> | ||
<html> | ||
<head> | ||
<title>Redirect</title> | ||
<meta http-equiv="refresh" content="0;url=../../setup/requirements.html"> | ||
</head> | ||
<body> | ||
</body> | ||
</html> |
Oops, something went wrong.