magicant / bve-autopilot

Bve trainsim 用自動運転車両プラグイン
GNU Lesser General Public License v2.1
21 stars 6 forks source link

速度に応じて想定惰行時間を 5 秒より長くする #82

Closed magicant closed 4 years ago

magicant commented 4 years ago

これまではブレーキをかける 5 秒前まで力行していたが、高速度まで加速している場合は力行をやめるのを多少早くしても列車の到着時刻はほどんと変わらない。力行をやめるタイミングを速度に応じて変えることで、より自然な運転にする。

magicant commented 4 years ago

惰行時間を長くすること自体は最初のコミットでできているが、それだけだと上り勾配で惰行時間が長くなり過ぎ (力行を終えるのが早すぎ) てしまう。これを改善するには、上り勾配で速度が自然に落ちる分を出力制御での計算に入れなくてはいけない。

これまでは、惰行するか力行するかの判定を、下り勾配による速度上昇を考慮しつつ一定距離惰行した後でブレーキをかける必要があるかどうかを基準として行っていた。これからは、以下の二つの基準の両方を見ることにする。

前者は、列車が減速パターンに近付いてゆく際に適度なタイミングで力行を終えるための判定である。減速パターンの減速度が上り勾配による減速度より大きいことを前提として、パターンに最も近い地点 (つまり一定距離惰行し終わった地点) でのみ判定を行えば十分である。 後者は、列車が既に制限速度区間に入っている場合に制限速度を超えないようにするための判定である。こちらは、パターン速度が一定である前提で、列車速度が最も高くなるところがパターンに最も近いところなのでそこで判定すればよい。 地形によっては二つの判定が同じ地点になる場合もある。

magicant commented 4 years ago

f39f4f6 の時点で二つ課題がある

どちらも強い上り勾配の途中で制限速度区間に近付くときに発生しやすい。

magicant commented 4 years ago

b0ed9f6 の時点で、prebrake 無効の場合に ATC 現示が下がる直前まで力行してしまうことがある。詳細は未調査。