Podczas obserwacji zachowania AI w EXE 355, rzuciło mi się w oczy że proces hamowania nie do końca jest idealny.
W momencie, gdy AI skanuje tory i zauważa event ograniczający prędkość (przypisany np. do toru, przy którym stoi W9), mimo tego że ten tor jest jeszcze daleko (np. 300m) zaczyna trochę "przeginać" z nabijaniem cylindrów hamulcowych.
1) Hamowanie jest zbyt mocne
2) Zbyt późno włączane jest napełnianie (dopiero po zejściu do odpowiedniej prędkości).
Efekt jest taki, że gdy AI ma szlakową 40 km/h i dojeżdża do W9 ograniczającego do 20 km/h, cały skład się zatrzymuje daleko przed ograniczeniem.
Widoczne jest to szczególnie w składach towarowych, gdy jest niska szybkość hamulca (G). Przy ustawieniach P i R nie jest to tak odczuwalne.
Nie wiem, jak obecnie wygląda algorytm reagowania na zmiany dozwolonej prędkości, ale wydaje mi się, że powinien on zakładać bezwładność hamowania i odległość do ograniczenia.
W chwili, gdy AI natrafia na event wywołujący SetVelocity, a prędkość aktualna jest wyższa od tej z ograniczenia, AI powinno skalkulować odległość do ograniczenia i wyliczać na bieżąco ze wzoru v=s/t czas pozostały do ograniczenia i mając to, ze wzoru na przyśpieszenie/opóźnienie odpowiednią wartość opóźnienia.
Do czasu aż ta wartość docelowa jest mniejsza od rzeczywistego opóźnienia, AI powinien sprawdzać dynamikę napełniania cylindrów i odpowiednio dostosowywać położenie kranu. Gdy opóźnienie hamowania jest już wystarczające, powinien doprowadzić do ustalenia stałego ciśnienia i...
...tutaj jest ten drugi moment, gdy ważna jest bezwładność opróżniania cylindrów. Proces odhamowania powinien rozpocząć się _przed_ uzyskaniem docelowej prędkości. Czas ten pewnie ciężko będzie wyliczyć. Chyba lepiej zrobić to doświadczalnie.
Trochę poeksperymentowałem i zauważyłem, że ten czas nie zależy od prędkości początkowej ani też masy ogólnej składu.
Zależy w zasadzie "tylko" od procentu masy hamującej i szybkości hamulca.
Im szybszy hamulec, tym lepiej - więc AI nie musi wyprzedzać tak bardzo momentu przejścia w napełnianie. Dla składów towarowych AI musi zacząć napełnianie dużo wcześniej.
No tak. To teoria, nie wiem tylko czy w praktyce jest to do oprogramowania.