Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: update docs/specifications #8

Merged
merged 4 commits into from
Jun 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added docs/specifications/images/body-collider.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/specifications/images/colliders-object.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/specifications/images/top-view-of-com.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/specifications/images/vehicle-component.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/specifications/images/wheel-collider.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
68 changes: 68 additions & 0 deletions docs/specifications/simulator.en.md
Original file line number Diff line number Diff line change
@@ -1 +1,69 @@
# Simulator

## Overview
This page describes the specifications of the simulator used in the AI Challenge.

The simulator is based on the open-source autonomous driving simulator "[AWSIM](https://github.com/tier4/AWSIM)" developed for Autoware.

## Vehicle (Go-Kart)
The vehicle conforms to the specifications of the [EGO Vehicle](https://tier4.github.io/AWSIM/Components/Vehicle/EgoVehicle/) in AWSIM and is designed with specifications close to an actual go-kart.

![vehicle-appearance](./images/vehicle-appearance.png)

### Parameters

![vehicle-component](./images/vehicle-component.png)

![rigidbody-component](./images/rigidbody-component.png)

| Item | Value |
| --------------------- | ---------- |
| Vehicle Weight | 160 kg |
| Length | 200 cm |
| Width | 145 cm |
| Front Wheel Diameter | 24 cm |
| Front Wheel Width | 13 cm |
| Front Wheel Tread | 93 cm |
| Rear Wheel Diameter | 24 cm |
| Rear Wheel Width | 18 cm |
| Rear Wheel Tread | 112 cm |
| Maximum Steering Angle| 80° |
| Maximum Acceleration | 3.2 m/s^2 |

### CoM Position
CoM (Center of Mass) is the mass center of the vehicle Rigidbody. The CoM position is set at the center of the vehicle and at the height of the wheel axles.

![side-view-of-com](./images/side-view-of-com.png)

![top-view-of-com](./images/top-view-of-com.png)

### Colliders
The configuration of the Colliders object is as follows.

![colliders-object](./images/colliders-object.png)

Colliders ensure that the vehicle can make contact with other objects. The MeshCollider component takes the mesh of the vehicle object and constructs a collider based on it.

![mesh-collider-component](./images/mesh-collider-component.png)

![body-collider](./images/body-collider.png)

### Wheel Colliders
The vehicle has a total of four wheel colliders, one for each wheel, in addition to the visual objects related to the wheels. Wheel colliders are the only parts that make contact with the road.

The Wheel (script) provides a reference to the collider and visual object for the particular wheel. This allows the Vehicle (script) to perform certain actions on each of the wheels, such as:

- Update the steering angle in the WheelCollider.
- Update the visual part of the wheel depending on the speed and angle of the turn.
- Update the wheel contact information stored in the WheelHit object.
- Update the force exerted by the tire forward and sideways depending on the acceleration (including cancellation of skidding).
- Ensure setting the tire sleep (it is impossible to put Rigidbody to sleep, but putting all wheels to sleep allows to get closer to this effect).

The Wheel Collider Config script is designed to prevent inspector input for wheel colliders, set friction to zero, and only enable wheel suspension and collisions. For more details on wheel colliders, please refer to [this manual](https://docs.unity3d.com/Manual/class-WheelCollider.html).

![wheel-collider-component](./images/wheel-collider-component.png)

![wheel-collider](./images/wheel-collider.png)

### Sensor Configuration
TODO
68 changes: 68 additions & 0 deletions docs/specifications/simulator.ja.md
Original file line number Diff line number Diff line change
@@ -1 +1,69 @@
# シミュレーター

## 概要
このページではAIチャレンジで使用されるシミュレーターの仕様について説明します。

シミュレーターは、Autowareのためのオープンソース自動運転シミュレーター「[AWSIM](https://github.com/tier4/AWSIM)」をベースとして作成されています。

## 車両(ゴーカート)
車両はAWSIMにおける[EGO Vehicle](https://tier4.github.io/AWSIM/Components/Vehicle/EgoVehicle/)の仕様に準拠しており、実際のゴーカートに近いスペックで作成されています。

![vehicle-appearance](./images/vehicle-appearance.png)

### パラメータ

![vehicle-component](./images/vehicle-component.png)

![rigidbody-component](./images/rigidbody-component.png)

| 項目 | 値 |
| ------------------ | --------- |
| 車両重量 | 160 kg |
| 全長 | 200 cm |
| 全幅 | 145 cm |
| 前輪タイヤ直径 | 24 cm |
| 前輪タイヤ幅 | 13 cm |
| 前輪ホイールトレッド | 93 cm |
| 後輪タイヤ直径 | 24 cm |
| 後輪タイヤ幅 | 18 cm |
| 後輪ホイールトレッド | 112 cm |
| 最大ステアリング転舵角 | 80 ° |
| 駆動時最大加速度 | 3.2 m/s^2 |

### CoM位置
CoM(Center of Mass)は、車両Rigidbodyの質量中心です。CoM位置は、車両の中心かつ車輪軸の高さに設定されています。

![side-view-of-com](./images/side-view-of-com.png)

![top-view-of-com](./images/top-view-of-com.png)

### コライダー
Collidersオブジェクトの構成は以下の通りです。

![colliders-object](./images/colliders-object.png)

コライダーは、車両が他のオブジェクトと接触できるように設定します。MeshColliderコンポーネントは車両オブジェクトのメッシュを取得し、それに基づいてコライダーを構築します。

![mesh-collider-component](./images/mesh-collider-component.png)

![body-collider](./images/body-collider.png)

### ホイールコライダー
車両は、車輪に関連する視覚オブジェクトとともに、各車輪に1つずつ、合計4つのホイールコライダーを持ちます。ホイールコライダーが、道路と接触する唯一の部分です。

Wheelスクリプトは特定の車輪のコライダーと視覚オブジェクトへの参照を提供します。これにより、Vehicleスクリプトは各車輪に対して以下のようなアクションを実行できるようになります:

- ホイールコライダーのステアリング角を更新する
- 速度とターンの角度に応じて車輪の視覚部分を更新する
- WheelHitオブジェクトに保存された車輪の接触情報を更新する
- 加速(スキッドのキャンセルを含む)に応じてタイヤが前方および側方に及ぼす力を更新する
- タイヤのスリープ設定を保証する(Rigidbodyをスリープ状態にすることは不可能ですが、すべての車輪をスリープ状態にすることで、この効果に近づけます)。

Wheel Collider Configスクリプトは、ホイールコライダーに対するインスペクター入力を防ぎ、摩擦を0に設定し、車輪のサスペンションと衝突のみを有効にするために設定されています。ホイールコライダーの詳細については[こちらのマニュアル](https://docs.unity3d.com/Manual/class-WheelCollider.html)をご覧ください。

![wheel-collider-component](./images/wheel-collider-component.png)

![wheel-collider](./images/wheel-collider.png)

### センサ構成
TODO