OpenPilotのステアリングをチューニングする(わかりやすい版)
1
前回記載した調整手順がやはりわかりにくいのでわかりやすく書き直しました。
注:kfとkpV/kiVは個別に1つずつ調整してください。
2
ステップ1
kpV と kiV を 0 に設定し、OpenPilotのソースコードを調べて、類似車両の kf を探して使用してみましょう。
いい数値が見つからない場合は、kfを0.00001から始めましょう。
kf はカーブにのみ作用するため、テストするときは直線の動作について心配する必要はありません。
言い換えると、テスト中に直進時のアシストは効かなくなります。注意してテストしてください。
kf を0.00001 から始めた場合は、次は0.00003 に増やして再度テストします。どの程度増やすかは、各自の自由です。
適正値に近づくと、より曲率の高いカーブでステアリング角度が理想に近くなるはずですが、振動が発生したりするかもしれません。
車が比較的自然に曲がり、オーバーステア(切りすぎ)やアンダーステア(ふくらみ)が発生してしない状態になるまで増やします。
kf が高すぎると、オーバーステア(切りすぎ)が発生したり、カーブの終点で直進に戻りにくくなる場合があります。
適切にカーブできることが確認出来たら、次のステップに進んでください。
3
ステップ2
kf がカーブを正しく通過できることが確認出来たら、 steerActuatorDelay を微調整できるかもしれません。
この時点でOpenPilotが行うのはカーブの制御のみなので、アシストのタイミングが明確に分かるはずです。
ハンドルを回し始めるタイミングに注目して、早すぎる、または遅すぎると思われる場合は、 steerActuatorDelay を調整します。
初期値は0.1です。数値が小さいほどアシストの開始が遅くなり、大きいほど早くなります。
適切なタイミングでOpenPilotのアシストが介入していることを確認出来たら、次のステップに進んでください。
4
ステップ3
kf を0に設定し、kpV の調整を開始します。類似車両の初期値を使用してください。
kpV は車両の基本的なセンタリング力に作用します。値を増やすと、センタリング精度が高まります。ただし、上げすぎると左右に揺れ始めます。
kpV を左右に揺れ始めるまで増加させます。その後、カーブ・直線・センタリング中にステアリングを軽く動かす等しても振動しないギリギリまで kpV を下げます。
適切な動きになったら、次のステップに進んでください。
5
ステップ4
kpV をそのままにして、kiV の調整を開始します。類似車両の初期値を使用するか、良い数値が見つからなければ1を使用してください。
カーブ中のステアリング操作を滑らかにし、安定してセンタリングすることができます。
数値を0から変更した直後のテストでステアリングが振動し始めた場合は、kpV を10%下げてテストしてください。
kiV は、横風に煽られたり、斜めの道路、長いカーブ全体でのなめらかなセンタリングに影響を及ぼします。なるべく高い数値にすることをおすすめします。
この時点で、オーバーステア(切りすぎ)が発生したり、カーブの終点で直進に戻りにくく感じた場合は kiV が高すぎるので少し減らしてください。(kfをわずかに減らすのも良いです)
カーブ中にステアリングを追加で切ったり戻す操作が振動する場合は、あとのステップで調整出来ます。
適切に安定してカーブでセンタリングできたら、次のステップに進んでください。
6
ステップ5
ここまでのチューニングで下記の問題が発生する場合、これらの数値を調整してください。
・直線で振動する場合…kpVを下げる
・曲線で振動する場合…kfとkpVを下げる
・曲線で曲がりきれない、または曲がりすぎる場合…kiVを下げる(ついでにkfをわずかに減らすのも効果あり?)
・ステアリングのアシストタイミングが合ってない…ステップ2に従ってsteerActuatorDelayを調整する
さらに詳細なindiチューニングを行いたい場合は、ステップ6に進んでください。
7
ステップ6
下記の数値は登録がない場合、類似他モデルから既存値をコピペして編集することをおすすめします。
lateralTuning.indi.actuatorEffectiveness
上記はステアリングアシスト全体の強度レベルを指します。
数値が小さいほどアシストが強く、大きいほど弱くなります。
高すぎる場合、アシスト力が不足してカーブに追従出来なくなったり、ゆっくり左右に揺れるような動きになります。
低すぎる場合、アシスト力が強すぎてギクシャクしたり、左右にガタガタ揺れる動きになります。
ちょうどいい数値になると、直線・カーブにおいて適切にセンタリング出来ます。
lateralTuning.indi.timeConstant
上記はステアリング出力の指数移動平均レベルを指します。
高すぎる場合、平均化しすぎてセンタリングが雑になり、車線をはみ出す可能性があります。
低すぎる場合、平均化が不足しステアリングが過敏に動作し、センタリングが不安定になります。
ちょうどいい数値になると、スムーズで安定したセンタリングが出来ます。
lateralTuning.indi.innerLoopGain
上記はカーブ突入時のアシスト調整レベルを指します。
高すぎる場合、高い曲率のカーブでのセンタリング時にギクシャクした動きや振動が発生します。
低すぎる場合、高い曲率のカーブのセンタリングが出来ず曲がりきれない可能性が高くなります。
ちょうどいい数値になると、高い曲率のカーブ突入時のセンタリングが安定します。
lateralTuning.indi.outerLoopGain
上記はカーブ出口のアシスト調整レベルを指します。
高すぎる場合、過剰なセンタリングでギクシャクした動きや振動、オーバーステア(切りすぎ)が発生する可能性があります。
低すぎる場合、センタリングが不足しはみ出す可能性があります。
ちょうどいい数値になると、スムーズで安定したセンタリングが出来ます。
8
自分はカーブ中、角度が大きくなるとガクガクする症状に悩まされていましたが、次の作業をすると解消しました。
①kiVをガッツリ上げる
②lateralTuning.indi系の変数をMazda3からコピペする
③lateralTuning.indi.timeConstantをチョイ上げる
④lateralTuning.indi.innerLoopGainをチョイ下げる
⑤lateralTuning.indi.outerLoopGainをチョイ下げる
初期値でちょっと揺れるな~って場合はこれで割りとなんとかなりました。
[PR]Yahoo!ショッピング
入札多数の人気商品!
[PR]Yahoo!オークション
関連コンテンツ
関連整備ピックアップ
関連リンク