PoKeys

Z MaSzyna
Wersja z dnia 10:10, 18 wrz 2017 autorstwa Stele (dyskusja | edycje)
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Skocz do: nawigacja, szukaj


Podłączenie pulpitu przez układ PoKeys55 (PoKeys56 to następca). Poszczególne urządzenia pulpitu sterują grupami bitów podając wprost kod aktualnej pozycji. Wyjątkiem są wejścia analogowe, do których podłączony jest potencjometr.

Piny

Podstawowa płytka

Przeznaczenie pinów należy skonfigurować z poziomu oprogramowania dostarczonego przez producenta, EU07.EXE nie modyfikuje tej konfiguracji. Opis dotyczy wersji 391 i późniejszych. W przyszłości mogą nastąpić kolejne zmiany, opis przydziału pinów zostanie uznany za finalny po zbudowaniu dwóch niezależnych pulpitów, pracujących zgodnie z tym samym schematem połączeń pinów.


Piny Funkcja Zastosowanie
1..7 wejście, 7 bitów* Klawiatura matrycowa 3×3
8 wejście, 1 bit Załączenie przetwornicy 0-1
9 wejście, 1 bit Załączenie sprężarki 0-1
10 wejście, 1 bit Załączenie pantografu A 0-1
11 wejście, 1 bit Załączenie pantografu B 0-1
12 wejście, 1 bit Przycisk SHP/CA 0-1***
13 wejście, 1 bit**
14 wejście, 1 bit Wysoki/niski rozruch 0-1
15 wejście, 1 bit Ogrzewanie pociągu 0-1
16 wejście, 1 bit Buczek CA/SHP
17 wyjście PWM6 Amperomierz 1 (calibrateout 5)
18 wyjście PWM5 Amperomierz 2 (calibrateout 4)
19 wyjście PWM4 Woltomierz wysokiego napięcia (calibrateout 3)
20 wyjście PWM3 Ciśnienie w cylindrze hamulcowym (calibrateout 2)
21 wyjście PWM2 Ciśnienie w przewodzie głównym (calibrateout 1)
22 wyjście PWM1 Ciśnienie zbiornika głownego (calibrateout 0)
23 wyjście, 1 bit Kontrolka SHP
24 wyjście, 1 bit Kontrolka CA
25 wyjście, 1 bit Kontrolka wyłącznika szybkiego
26 wyjście, 1 bit Kontrolka sygnalizacji wentylatorów i oporów
27 wyjście, 1 bit Kontrolka przekaźnika nadmiarowego silników trakcyjnych
28 wyjście, 1 bit Kontrolka przekaźnika nadmiarowego przetwornicy i ogrzewania
29 wyjście, 1 bit Kontrolka styczników liniowych
30 wyjście, 1 bit Kontrolka poślizgu
31 wyjście, 1 bit Kontrolka wysokiego rozruchu
32 wyjście, 1 bit Kontrolka jazdy na oporach rozruchowych
33 wyjście, 1 bit Kontrolka przekaźnika nadmiarowego sprężarki
34 wyjście, 1 bit Kontrolka ogrzewania pociągu
35 wyjście, 1 bit
36 wyjście, 1 bit
37 wyjście, 1 bit
38-39 wejście, 2 bity Przełącznik hamulca T-O-P
40..42 wejście, 3 bity Nastawnik bocznikowania 0..7
43A wyjście/wejście A/C Prędkościomierz (calibrateout 6)
44A wejście A/C
45A wejście A/C
46A wejście analogowe Hamulec dodatkowy FD1 (0÷10kΩ) (calibratein 1)
47A wejście analogowe Hamulec zasadniczy FV4a (0÷10kΩ) (calibratein 0)
48,49 wejście, 2 bity Nastawnik kierunku 0..3
50..55 wejście, 2 bity Pozycja nastawnika jazdy 0..63

* - pin 4 dla egzemplarzy Pokeys55 do 11499 musi być w stanie wysokim na starcie

** - na egzemplarzach Pokeys55 o numerach seryjnych 10134..11499 pin 13 jest uszkodzony

*** - przyciski (położenie chwilowe styków)

PoExtBus

Piny Funkcja Zastosowanie
I wyjście Wał kułakowy
J wyjście Prędkościomierz

Do przypisania

  • Załączenie baterii 0-1
  • Załączenie wyłącznika szybkiego 0-1***
  • Wyłączenie wyłącznika szybkiego 0-1***
  • Odblok przekaźnika nadmiarowego przetwornicy i ogrzewania 0-1***
  • Odblok przekaźnika nadmiarowego silników trakcyjnych 0-1***
  • Załączenie odluźniacza hamulca lokomotywy 0-1***
  • Załączenie przeciwpoślizgowego 0-1***
  • Załączenie piasecznicy 0-1***
  • Wyłączenie styczników liniowych 0-1***
  • Osygnalizowanie czoła Pc1, Pc2, Pc5, Pc6, Tb1
  • Syrena ton wysoki 0-1***
  • Syrena ton niski 0-1***

Nie podłączone

Przełączniki/przyciski/kontrolki, których podłączenie do Pokeys55 ze względu na ich małe znaczenie nie ma większego sensu.

  • Dostosowanie sił do nacisku kół
  • Oświetlenie kabiny
  • Oświetlenie przyrządów pomiarowych
  • Przyciemnienie reflektorów

Konfiguracja

Wpisy do pliku eu07.ini

W pliku eu07.ini należy umieścić:

  • wpis feedbackmode 4. Wykrycie urządzenia zostanie zapisane w logu.
  • wpisy kalibracyjne wejść
calibratein n w0 w1 w2 w3 //dla funkcji kalibracyjnej 3-go stopnia
calibrate5din n w0 w1 w2 w3 w4 w5 //dla funkcji kalibracyjnej 5-go stopnia
  • wpisy kalibracyjne wyjść
calibrateout n w0 w1 w2 w3 //dla funkcji kalibracyjnej 3-go stopnia
calibrete5dout n w0 w1 w2 w3 w4 w5 //dla funkcji kalibracyjnej 5-go stopnia
  • Opcjonalnie można zastosować określenie wartości maksymalnych dla wyjść (jeśli nie podane funkcja nie odcina do maksymalnej wartości miernika i trzeba tak określać funkcję, żeby nie wychodziła poza granicę wartości)
calibrateoutmaxvalues e1 e2 e3 e4 e5 e6
  • Wpis do testowania funkcji kalibrującej. Pokazuje na wybranym wyjściu wartość, która przychodzi z exe i wartość w V, która idzie na piny.
calibrateoutdebuginfo n
  • W celu zastosowania innej kolejności wyjść PWM można użyć odpowiedniego wpisu, który będzie rzutował wystawiane dane na wybrane wyjście. Jeśli wpis nie jest użyty to obowiązuje opis wyjść. Należy pamiętać, że PWM1 = 0, itd.
pwm <nr_wyjscia_zgodny_z_opisem> <nr_wyjscia_na_ktorym_chcemy_dane>

Sposób działania

W przypadku wejść należy rzutować bezpośrednio ułamek odczytanych napięć do napięcia maksymalnego 3.3V (czyli odczytane napięcie / 3.3V) na wartości pozycji kranu. Przykład poniżej.

Dla wyjść należy tak opisać współczynniki kalibracji aby sprowadzić podaną wartość mierzoną do przedziału <0,1>. Jako, że jest to trudne można zastosować podanie wartości maksymalnych dla każdego miernika (odpowiednik 3.3V). Wtedy zostanie policzony ułamek (wartość mierzona/ wartość maksymalna) i dopiero na nim wykonana funkcja kalibracyjna.

Jeśli podana wartość maksymalna jest równa 0 to ułamek nie zostanie wyliczony i wyjście będzie się zachowywać jak w poprzednich wersjach (działa od EXE_475).

Jednostki w jakich pracują wyjścia

Dla potrzeb kalibracji należy pamiętać, że mierniki użyte w pulpicie mogą być skalowane w innych jednostkach niż te wystawiane przez EXE. Wszystkie wpisy do EU07.INI należy więc przeliczyć tak aby odpowiadały jednostkom wystawianym przez EXE.

Poszczególne wyjścia wystawiane są w:

  • woltomierze - [V] przy czym mierniki raczej też operują na [V]
  • amperomierze - [A] przy czym mierniki raczej też operują w [A]
  • ciśnieniomierze - [Bar], tzw. atmosfera, przy czym mierniki raczej operują w [MPa] dla potrzeb konfiguracji należy przeliczyć 1 [bar] = 0,1 [Mpa]

Funkcja kalibracyjna

Używany jest wielomian 5-go stopnia.

f(x) = w5*x^5 + w4*x^4 + w3*x^3 + w2*x^2 + w*x + w0

W przypadku zastosowania wpisu dla funkcji trzeciego stopnia wyrazy w5 i w4 są równe 0

Wersja 355

Wersja obsługuje próbnie 11 kontrolek (wyjścia) oraz testowo podaje prąd głównego amperomierza na pin 17 (100%=1024A). Wejścia należy skonfigurować jako podłączone pod klawiaturę. Enkodery (nastawniki, przełącznik hamulca, osygnalizowanie czoła) nie będą działały poprawnie. W kolejnych wersjach planowane jest uniezależnienie sterowania kabiną od odczytu klawiatury, co pozwoli jednocześnie odczytywać enkodery.

W pliku eu07.ini należy umieścić wpis feedbackmode 4. Wykrycie urządzenia zostanie zapisane w logu.

Wersja 372

Od wersji 364 współczynniki kalibracyjne dla wejść oraz wyjść są wczytywane z pliku EU07.INI, co pozwala korygować nieliniowość obwodów (funkcją trzeciego stopnia):

calibratein n w0 w1 w2 w3
calibrateout n w0 w1 w2 w3

Sposób liczenia:

y[n] = ( ( ( w3 · x[n] ) + w2 ) · x[n] + w1 ) · x[n] + w0

Przykładowe wpisy dla hamulca zasadniczego oraz pomocniczego:

calibratein 0 7.781 -10.562 0.0 0.0 //hamulec zasadniczy, przedział <-2;6>
calibratein 1 0 16.00 0 0 //hamulec pomocniczy, przedział <0;10>

Przykład kalibracji hamulca FV4a

Aby uzyskać kalibrację hamulca, należy odczytać napięcie odczytywane przez PoKeys dla poszczególnych pozycji, ustawionych na modelu kranu. Następnie należy te napięcia odnieść do napięcia 3.3V i przedstawić jako ułamek.

Pozycja: f(x) Napięcie odczytane: U Ułamek: x = U / 3.3V
-2 (odcięcie) 2.83V 0.8575757576
-1 (luzowanie) 2.45V 0.7424242424
0 (jazda) 2.09V 0.6333333333
1 1.80V 0.5454545455
2 1.77V 0.5363636364
3 1.30V 0.3939393939
4 0.94V 0.2848484848
5 0.48V 0.1454545455
6 (nagłe) 0.10V 0.0303030303

Dla tak ustalonych wartości odpowiednia jest liniowa regresja o równaniu: f(x) = 6.5968141593 - 9.9219026549x, czyli należało by wpisać:

calibratein 0 6.5968 -9.9219 0.0 0.0

Plik:Kalibracja hamulca.png

Oczywiście ten "fałd" może świadczyć o jakimś błędzie podczas pomiarów i dla pewności należało by je powtórzyć. Niemniej dla ilustracji ten przykład jest wystarczający. Jeśli jednak kolejne pomiary potwierdziły by brak liniowości, należy aproksymować funkcją kwadratową lub trzeciego stopnia, używając jednego albo obu pozostałych współczynników.

Wersja 390

Dodana została obsługa drugiego amperomierza i woltomierza wysokiego napięcia. Przykładowe ustawienia kalibracji:

calibrateout 3 0 0.00006 0.0 0.0 //woltomierz WN
calibrateout 4 0 0.0001 0.0 0.0 //amperomierz 2
calibrateout 5 0 0.0001 0.0 0.0 //amperomierz 1

Wersja 391

Rekonfiguracja pinów pod kątem budowanego pulpitu. Ta strona zawiera opis po aktualizacji.


Szablon:MaSzyna wersje