Tym czym w samolocie jest czarna skrzynka, która swoją drogą jest raczej pomarańczowa, tym w pojazdach kolejowych z napędem jest prędkościomierz rejestrujący. W moim przypadku jest to Hasler RT-9, którego integrację z pulpitem opisuję tutaj i tutaj. Zdobycie tego urządzenia wydawało mi się mało realne, a jak już go miałem i podłączyłem to wydawało się, że rejestracja czasu i prędkości jest w zupełności wystarczająca. Z czasem jednak, gdy większość tematów jest ogarnięta to zaczyna korcić, żeby również zająć się mniej rzucającymi się w oczy detalami. Tak się właśnie stało z dodatkowymi rysikami, które rejestrują kilka wybranych parametrów pracy. Nie było to priorytetem, bo nie widać tego podczas jazdy pomijając ciche klikanie cewek zamkniętych w obudowie prędkościomierza. No i aby podziwiać efekty ich pracy trzeba założyć taśmę, która jest towarem dość deficytowym, przynajmniej dla mnie. No ale pokusa była większa i przesiadka na platformę Arduino otwierała znacznie szersze możliwości. Puki wykorzystywałem PoKeys nie było co marzyć o uruchomieniu rysików.
Temat okazał się dość prosty, więc postanowiłem uniknąć tworzenia dedykowanej płytki i wykorzystałem gotowy moduł przekaźnikowy, który wystarczyło tylko podłączyć do przygotowanych wcześniej złącz i styków. Cieszę się, że projektując płytkę ACB, o której trochę więcej można poczytać tutaj, wyprowadziłem stosowne złącze do sterowania tymi przekaźnikami. Płytka zawiera sześć przekaźników, a potrzebnych jest pięć ale zawsze jakaś rezerwa się przyda. Te pięć przekaźników steruje pięcioma cewkami, które wg dokumentacji wymagają napięcia 72V ale okazuje się, że i 40V z zasilacza wykorzystywanego do napędu silnika Haslera jest wystarczające. Uniknąłem dzięki temu konieczności montowania trzeciego zasilacza.
Cewek jest pięć, a rysiki tylko trzy. Jest tak dlatego, że dwa z nich mają możliwość wychylania się w dwie strony do czego potrzeba pary cewek. Pierwsze dwie pary umożliwiają rejestrację informacji z której kabiny prowadzi się pojazd (wychylenie górne – kabina A, a dolne to kabina B) oraz efekt przejechania nad rezonatorem przytorowym SHP. To co na pulpicie powoduje zaświecenie lampek SHP jest rejestrowane na pierwszym dodatkowym wykresie jako powrót rysika do pozycji środkowej, co widać na wykresie w postaci szpilki (po skasowaniu przyciskiem czujności rysik wraca do skrajnego położenia wynikającego z oznaczenia kabiny).
Drugi wykres dodatkowy pokazuje obecność ciśnienia w cylindrach hamulcowych (czyli krótko mówiąc hamowanie). W takim przypadku rysik wędruje do położenia dolnego, gdy przy normalnej jeździe znajduje się w pozycji środkowej. Pozycja górna (lub środkowa podczas hamowania) pojawia się w chwili kasowania CA. Zatem na tym wykresie co około 60 sekund pojawia się szpilka w górę od aktualnie zajmowanej przez rysik pozycji.
Dolny, trzeci wykres rejestruje jazdę pod prądem lub bez. Wykorzystywany tu rysik ma tylko dwa położenia więc potrzebuje tylko jednej cewki do poprawnego działania.
Większość potrzebnych informacji jest wyprowadzona z symulatora w postaci stosownych bitów (jazda pod prądem lub bez, a także pojawienie się ciśnienia w cylindrach) co dość łatwo pozwoliło dostosować kod do obsługi drugiego i trzeciego rysika dodatkowego. Większy problem jest z pierwszym, gdyż niestety symulator nie zwraca informacji o tym, z której kabiny aktualnie prowadzony jest pojazd. Czekam zatem cierpliwie na uaktualnienie EXE MaSzyny, a do tego czasu muszę przełączać kabinę ręcznie. Zostało kilka wolnych hebelków na pulpicie, więc wykorzystałem jeden z nich.
Uaktualnienie
Nie trzeba było długo czekać. Wczoraj wieczorem dostałem nowe EXE do testów i teraz zmiana kabiny jest widoczna w danych przesyłanych do Arduino. To jest cały urok bezpośredniego kontaktu z deweloperami. Od dzisiaj zmiana kabiny nie będzie wymagała już ręcznego przełączania. Kolejny mały krok w rozwoju symulatora został wykonany.