Skip to content

Commit

Permalink
Feature ike_planner README (#52)
Browse files Browse the repository at this point in the history
* Fix reference

* Add README
  • Loading branch information
uhobeike authored Sep 7, 2023
1 parent 239a04a commit 3d78b8c
Show file tree
Hide file tree
Showing 3 changed files with 54 additions and 3 deletions.
2 changes: 1 addition & 1 deletion ike_controller/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ Model Predictive ControlのROS 2実装です。
| `recovery_rotate_velocity` | `double` | 最適化計算が開始されるまで回転する時の角速度 |
| `limit_absolute_rotate_velocity` | `double` | 設定した以上の角速度は出力されないようにする |

### Reference
## Reference

* [Model Predictive Control: モデル予測制御入門](https://myenigma.hatenablog.com/entry/2016/07/25/214014)
* [モデル予測制御(MPC)による軌道追従制御](https://qiita.com/taka_horibe/items/47f86e02e2db83b0c570)
Expand Down
4 changes: 2 additions & 2 deletions ike_localization/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ Monte Carlo localization[^1]のROS 2実装です。
| `loop_mcl_hz` | `double` | MClの周期 |
| `publish_particles_scan_match_point` | `bool` | 各パーティクルのスキャンと尤度場のマッチポイントの可視化(可視化すると、見応えがあるが非常に重い処理) |

### Reference
## Reference

* 動作モデル
* https://github.com/ros-planning/navigation2/blob/ef4de1527997c3bd813afe0c6296ff65e05700e0/nav2_amcl/src/motion_model/differential_motion_model.cpp#L57-L61
Expand All @@ -64,4 +64,4 @@ Monte Carlo localization[^1]のROS 2実装です。

### Citation

[^1]: Jens-Steffen Gutmann and Dieter Fox: ``An Experimental Comparison of Localization Methods Continued,'' Proc. IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp.~454-459, 2002.
[^1]: Jens-Steffen Gutmann and Dieter Fox: ‘‘An Experimental Comparison of Localization Methods Continued,’’ Proc. IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp.~454-459, 2002.
51 changes: 51 additions & 0 deletions ike_planner/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# ike_planner

## Package overview
A*[^1]およびDijkstra[^2]のROS 2実装です。

地図上での自己位置から与えられた目標位置までの最短経路を求めます。

## Input / Output

### Input

| **Name(Service)** | **Type** | **Description** |
| ------------- | --------------------------------------------- | --------------------------------------- |
| `/get_twist` | `ike_nav_msgs::srv::GetTwist` | ロボットの姿勢、目標経路を入力 |

### Output

| **Name(Topic)** | **Type** | **Description** |
| -------------------- | ------------------------------------ | ------------------------------------------------ |
| `/predictive_horizon` | `nav_msgs::msg::Path` | 予測ホライズン |

| **Name(Service)** | **Type** | **Description** |
| ------------- | --------------------------------------------- | --------------------------------------- |
| `/get_twist` | `ike_nav_msgs::srv::GetTwist` | ロボットの姿勢、目標経路から速度を出力 |

### [Parameters](../ike_nav_parameters/config/ike_planner_parameter.yaml)

| **Name(Parameter)** | **Type** | **Description** |
| ------------------- | ----------- | ---------------------- |
| `delta_time` | `double` | 予測モデルでの経過時間 |
| `predictive_horizon_num` | `int` | 方策の数 |
| `lower_bound_linear_velocity` | `double` | 最低速度 |
| `lower_bound_angular_velocity` | `double` | 最低角速度 |
| `upper_bound_linear_velocity` | `double` | 最大速度 |
| `upper_bound_angular_velocity` | `double` | 最大角速度 |
| `max_num_iterations` | `double` | 最大反復回数 |
| `recovery_rotate_velocity` | `double` | 最適化計算が開始されるまで回転する時の角速度 |
| `limit_absolute_rotate_velocity` | `double` | 設定した以上の角速度は出力されないようにする |

## Reference

* [MATLABよる経路平滑化(Path Smoothing)プログラム](https://myenigma.hatenablog.com/entry/20140510/1399694663)
* [AtsushiSakai/PythonRobotics PathPlanning/AStar/a_star.py](https://github.com/AtsushiSakai/PythonRobotics/blob/master/PathPlanning/AStar/a_star.py)

## LICENSE

Apache License, Version 2.0に基づいています。

### Citation
[^1]: P. E. Hart, N. J. Nilsson and B. Raphael: ‘‘A Formal Basis for the Heuristic Determination of Minimum Cost Paths,’’ in IEEE Transactions on Systems Science and Cybernetics, vol. 4, no. 2, pp. 100-107, July 1968.
[^2]: E. W. Dijkstra: ‘‘A note on two problems in connexion with graphs,’’ Numer. Math., vol. 1, no. 1, pp. 269–271, Dec 1959.

0 comments on commit 3d78b8c

Please sign in to comment.