feat(lane_departure_checker): add parameter of footprint_extra_margin #1565
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
本PRでは「自己位置推定が大きくずれる前に停車する機能」を実現するため、lane_departure_checkerにおける車両周囲に固定のマージンを設ける機能を追加する。
この機能は下記の通り、車両左右方向に0.2[m]下駄を履かせた範囲を監視するために利用する想定となっている。
autoware最新ではこれに相当するパラメータとして footprint_extra_marginが存在するが、
本PRではこのパラメータに対する簡易実装で上記機能を実現する。
計算式
Footprintの計算は、従来下記のように計算していた。
これに対して固定値のマージンを加算したい。
ここでcalcFootprintMargin関数はFootPrintMargin構造体
{double lat, double lon}
を戻り値にとるため、各要素にマージンを加算する必要がある。c++にはoperatorのオーバーロード機能があるため、これを活用して和の形で計算できるようにする。
パラメータ値
本PRでは「自己位置推定が大きくずれる前に停車する機能」に対するパラメータ値の適用を可能とするとともに、既存の機能のリグレッションを防止しなければならない。
よってdefaultの値としては固定マージンの値を0.0と設定し、新たな機能を適用する際に外部リポジトリからパラメータ値を変更するポリシーとする。
Related links
How was this PR tested?
パラメータ値 footprint_extra_marginを設定ファイルから変更することで経路逸脱判定結果が変動することを確認した。
これにより
を確認できている。
狭路走行、footprint_extra_margin = 0.0[m]
経路逸脱(及び逸脱予測)の判定が発生は見られない。
LatestLaneDepartureLevel = 0 (=OK)
狭路走行、footprint_extra_margin = 0.5[m]
経路逸脱の判定が常に発生し続けた。
LatestLaneDepartureLevel = 2 (=ERROR)
Notes for reviewers
None.
Interface changes
None.
Effects on system behavior
None.