Autor Wątek:  Sterowanie anglikiem  (Przeczytany 6951 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline Patrykos

  • Zasłużony dla Symulatora
  • Wiadomości: 4511
    • Zobacz profil
  • Otrzymane polubienia: 9
Sterowanie anglikiem
« dnia: 22 Kwietnia 2008, 16:11:02 »
Witam!
 Jak wiemy, mamy możliwość sterowania zwrotnicą. Bardzo to się przydaje do wykonywania dodatkowych manewrów w celu urozmaicenia służby. Jednak niekiedy utrudnia nam to anglik (czyt. rozjazd krzyżowy). Macie może jakieś pomysły, za pomocą czego można sterować rozjazdem krzyżowym?

Pozdrawiam
Patryk
Pozdrawiam, Patryk
https://www.facebook.com/WarsztatPatrykosa
Węgrom gratulujemy Ikarusa.

Offline RooteK

  • Wiadomości: 1238
    • Zobacz profil
    • Nieoficjalna strona węzła kolejowego Jaworzno.
  • Otrzymane polubienia: 21
Odp: Sterowanie anglikiem
« Odpowiedź #1 dnia: 22 Kwietnia 2008, 16:18:09 »
Mnie na myśl przychodzą tylko eventy pod kolejnymi cyframi. No, i do takiej służby raczej przydała by się także możliwość zmiany świateł na semaforach. Może pan Ra wymyślił by program, elastycznie modyfikujący eventy w sceneriach? coś  do swojego startera, bo odczytywanie pozycji torów i semków już wykonał w starterze :)

To znaczy, odnajdujemy swoje zwrotnice/semafory, klik, wybieramy sygnał/położenie z rozwijanej listy, i w symku na bieżąco się to zmienia.

Offline Cesky Kretek

  • Zasłużony dla Symulatora
  • Wiadomości: 1712
  • Trust no one.
    • Zobacz profil
  • Otrzymane polubienia: 159
Odp: Sterowanie anglikiem
« Odpowiedź #2 dnia: 22 Kwietnia 2008, 16:22:48 »
Mnie na myśl przychodzą tylko eventy pod kolejnymi cyframi.
Cyfr masz tylko 10. A anglików w scenerii? Potem kolejny problem - która cyfra do którego?

Offline RooteK

  • Wiadomości: 1238
    • Zobacz profil
    • Nieoficjalna strona węzła kolejowego Jaworzno.
  • Otrzymane polubienia: 21
Odp: Sterowanie anglikiem
« Odpowiedź #3 dnia: 22 Kwietnia 2008, 16:28:21 »
Faktycznie. Dlatego może ten program sterujący eventami w symku, w czasie rzeczywistym. Wybieram semafor i ustawiam sobie co tam na nim chce.

Offline AtapiCl

  • Zasłużony dla Symulatora
  • Wiadomości: 4426
    • Zobacz profil
    • O warszawskiej części linii kolejowej nr 7 Warszawa – Lublin i nie tylko ;)
  • Otrzymane polubienia: 212
Odp: Sterowanie anglikiem
« Odpowiedź #4 dnia: 22 Kwietnia 2008, 16:32:13 »
Mnie na myśl przychodzą tylko eventy pod kolejnymi cyframi. No, i do takiej służby raczej przydała by się także możliwość zmiany świateł na semaforach. Może pan Ra wymyślił by program, elastycznie modyfikujący eventy w sceneriach? coś  do swojego startera, bo odczytywanie pozycji torów i semków już wykonał w starterze :)

To znaczy, odnajdujemy swoje zwrotnice/semafory, klik, wybieramy sygnał/położenie z rozwijanej listy, i w symku na bieżąco się to zmienia.

W symku na bieżąco przez starter Ra tego nie zmienisz. Takie zmienianie położenia zwroty itd. (wywoływanie eventów) możliwe jest, ale tylko gdy exe symka ma taką możliwość zaimplementowaną... I tylko z poziomu tej aplikacji.

Offline Ra

  • Zasłużony dla Symulatora
  • Wiadomości: 6295
  • Ostatni gasi światło...
    • Zobacz profil
    • Instalator+Starter+Edytor
  • Otrzymane polubienia: 322
Odp: Sterowanie anglikiem
« Odpowiedź #5 dnia: 22 Kwietnia 2008, 16:43:10 »
Trzeba zrobić tak jak ze zwrotnicami. Jeden lub dwa klawisze sterujące, zasięg do 5m.
Cytat: sterowanie ręczne zwrotnicą
//sterowanie zwrotnica za pomoca klawiszy t,T
node -1 0 (p1) eventlauncher (p2) (p3) (p4) 5.0 t 0 (p1)- (p1)+ end
bo mamy dwa eventy sterujące zwrotnicą:
Cytat: wywołanie przełożenia zwrotnicy
//---globalne (zewnetrzne) procedury sterujace:
event (p1)- multiple 0 none (p1)_Wz1 (p1)_0 (p1)_Vmax endevent
event (p1)+ multiple 0 none (p1)_Wz2 (p1)_1 (p1)_V40 endevent

Dla rozjazdu krzyżowego będzie podobnie:
Cytat: wywołanie przełożenia rozjazdu
// 4 zwrotnice wchodzace w sklad rozjazdu krzyzowego maja sie nazywac (p1)_a, (p1)_b, (p1)_c i (p1)_d

// globalne (zewnetrzne) procedury sterujace:
event (p1)ac multiple 0 none (p1)_Wz6 (p1)_aV100 (p1)_a0 (p1)_b0 (p1)_c0 (p1)_d0 endevent
event (p1)bd multiple 0 none (p1)_Wz5 (p1)_aV100 (p1)_a0 (p1)_b0 (p1)_c0 (p1)_d0 endevent
event (p1)bc multiple 0 none (p1)_Wz8 (p1)_aV40  (p1)_a1 (p1)_b1 (p1)_c1 (p1)_d1 endevent
event (p1)ad multiple 0 none (p1)_Wz7 (p1)_bV40  (p1)_a1 (p1)_b1 (p1)_c1 (p1)_d1 endevent

Więc sterowanie można zrobić następująco:
Cytat: sterowanie ręczne rozjazdem
//sterowanie rozjazdem za pomoca klawiszy s,S,t,T
node -1 0 (p1) eventlauncher (p2) (p3) (p4) 5.0 s 0 (p1)ac (p1)ad end
node -1 0 (p1) eventlauncher (p2) (p3) (p4) 5.0 t 0 (p1)bc (p1)bd end

Powyższy wpis musi być poza origin, aby wyzwalanie znalazło się w odpowiednim miejscu (plik sterujący rozjazdem rozkrz34R150.inc i tak nie ma struktury origin, więc wpis można umieścić w dowolnym miejscu).

Sterowanie ręczne semaforami robi się w podobny sposób. Wystarczy poczytać, porównać i pomyśleć.


2008-07-07 Poprawiłem odległości na 5m - są teraz pogrubione, podobnie jak kod klawisza.
« Ostatnia zmiana: 07 Lipca 2008, 17:38:17 wysłana przez Ra »
¯\_( ͡° ͜ʖ ͡°)_/¯ Ra

Polecam: kręgarz Wojciech Walczak, projekt masarni

Offline Patrykos

  • Zasłużony dla Symulatora
  • Wiadomości: 4511
    • Zobacz profil
  • Otrzymane polubienia: 9
Odp: Sterowanie anglikiem
« Odpowiedź #6 dnia: 22 Kwietnia 2008, 17:14:04 »
Trzeba zrobić tak jak ze zwrotnicami. Jeden lub dwa klawisze sterujące, zasięg do 5m.
Kod: (sterowanie ręczne zwrotnicą) [Zaznacz]
//sterowanie zwrotnica za pomoca klawiszy t,T
node -1 0 (p1) eventlauncher (p2) (p3) (p4) 3.0 t 0 (p1)- (p1)+ end
bo mamy dwa eventy sterujące zwrotnicą:
Kod: (wywołanie przełożenia zwrotnicy) [Zaznacz]
//---globalne (zewnetrzne) procedury sterujace:
event (p1)- multiple 0 none (p1)_Wz1 (p1)_0 (p1)_Vmax endevent
event (p1)+ multiple 0 none (p1)_Wz2 (p1)_1 (p1)_V40 endevent

Dla rozjazdu krzyżowego będzie podobnie:
Kod: (wywołanie przełożenia rozjazdu) [Zaznacz]
// 4 zwrotnice wchodzace w sklad rozjazdu krzyzowego maja sie nazywac (p1)_a, (p1)_b, (p1)_c i (p1)_d

// globalne (zewnetrzne) procedury sterujace:
event (p1)ac multiple 0 none (p1)_Wz6 (p1)_aV100 (p1)_a0 (p1)_b0 (p1)_c0 (p1)_d0 endevent
event (p1)bd multiple 0 none (p1)_Wz5 (p1)_aV100 (p1)_a0 (p1)_b0 (p1)_c0 (p1)_d0 endevent
event (p1)bc multiple 0 none (p1)_Wz8 (p1)_aV40  (p1)_a1 (p1)_b1 (p1)_c1 (p1)_d1 endevent
event (p1)ad multiple 0 none (p1)_Wz7 (p1)_bV40  (p1)_a1 (p1)_b1 (p1)_c1 (p1)_d1 endevent

Więc sterowanie można zrobić następująco:
Kod: (sterowanie ręczne rozjazdem) [Zaznacz]
//sterowanie rozjazdem za pomoca klawiszy s,S,t,T
node -1 0 (p1) eventlauncher (p2) (p3) (p4) 3.0 s 0 (p1)ac (p1)ad end
node -1 0 (p1) eventlauncher (p2) (p3) (p4) 3.0 t 0 (p1)bc (p1)bd end

Powyższy wpis musi być poza origin, aby wyzwalanie znalazło się w odpowiednim miejscu (plik sterujący rozjazdem rozkrz34R150.inc i tak nie ma struktury origin).

Sterowanie ręczne semaforami robi się w podobny sposób. Wystarczy poczytać, porównać i pomyśleć.

Albo coś zrąbałem albo nie działa...
Pozdrawiam, Patryk
https://www.facebook.com/WarsztatPatrykosa
Węgrom gratulujemy Ikarusa.

Offline AtapiCl

  • Zasłużony dla Symulatora
  • Wiadomości: 4426
    • Zobacz profil
    • O warszawskiej części linii kolejowej nr 7 Warszawa – Lublin i nie tylko ;)
  • Otrzymane polubienia: 212
Odp: Sterowanie anglikiem
« Odpowiedź #7 dnia: 22 Kwietnia 2008, 17:33:20 »
Albo coś zrąbałem albo nie działa...

Może nie do tego pliku inc co trzeba wsadziłeś te eventy... Ja np. mam 7 plików z anglikami.

rozkrz34R150.inc
krzyzowy8R150.inc
krzyzowy8R150l.inc
krzyzowy8R150p.inc
krzyzowy8R150w.inc
krzyzowy8R150pw.inc
rkpd.inc

Także... W którymś na pewno zadziała.

Offline Patrykos

  • Zasłużony dla Symulatora
  • Wiadomości: 4511
    • Zobacz profil
  • Otrzymane polubienia: 9
Odp: Sterowanie anglikiem
« Odpowiedź #8 dnia: 03 Maja 2008, 15:20:44 »
Więc tak...wiemy jak sterować zwrotnicą, wiemy jak sterować anglikiem, a teraz się zapytam, jak sterować semaforem?(Jak wspomniał @Ra)

Pozdrawiam, Patryk
https://www.facebook.com/WarsztatPatrykosa
Węgrom gratulujemy Ikarusa.

Offline Dolmio89

  • Wiadomości: 1185
    • Zobacz profil
  • Otrzymane polubienia: 9
Odp: Sterowanie anglikiem
« Odpowiedź #9 dnia: 03 Maja 2008, 20:11:50 »
Za plikiem SS5zpcpbI:
//stany semafora:

event (p1)_s1 multiple 0 none (p1)_sem_ligh1 (p1)_sem_info_stop (p7)_os1 endevent

event (p1)_s2 multiple 0 none (p1)_sem_ligh2 (p1)_sem_info_vmax (p1)_sem_distinfo_vmax (p7)_os2 endevent

event (p1)_s3 multiple 0 none (p1)_sem_ligh3 (p1)_sem_info_vmax (p1)_sem_distinfo_v100 (p7)_os2 endevent

event (p1)_s4 multiple 0 none (p1)_sem_ligh4 (p1)_sem_info_vmax (p1)_sem_distinfo_v40 (p7)_os2 endevent

event (p1)_s5 multiple 0 none (p1)_sem_ligh5 (p1)_sem_info_vmax (p1)_sem_distinfo_stop (p7)_os2 endevent

event (p1)_s10 multiple 0 none (p1)_sem_ligh10 (p1)_sem_info_v40 (p1)_sem_distinfo_vmax (p7)_os4 endevent

event (p1)_s11 multiple 0 none (p1)_sem_ligh11 (p1)_sem_info_v40 (p1)_sem_distinfo_v100 (p7)_os4 endevent

event (p1)_s12 multiple 0 none (p1)_sem_ligh12 (p1)_sem_info_v40 (p1)_sem_distinfo_v40 (p7)_os4 endevent

event (p1)_s13 multiple 0 none (p1)_sem_ligh13 (p1)_sem_info_v40 (p1)_sem_distinfo_stop (p7)_os4 endevent

event (p1)_ms2 multiple 0 none (p1)_sem_lighs2 (p1)_sem_info_shunt2 endevent

event (p1)_sz1 multiple 0 none (p1)_sem_lighz1 (p1)_sem_info_v20 endevent

event (p1)_wyg multiple 1 none (p1)_sem_ligh0 endevent

Czyli generalnie mamy nazwa_sygnał

Trzeba tylko sprawdzić czy dany semafor ma możliwość wyświeltenia danego sygnału. W tym celu zaglądamy do pliku .inc danego typu semafora.

Polecam temat:
http://eu07.pl/forum/index.php/topic,2451.0.html

Do tego oczywiście scenry.doc i wszystkiego się nauczysz.

Offline youBy

  • Deweloper
  • Wiadomości: 6161
  • Co tam?
    • Zobacz profil
    • Automat Weryfikujący Regulację i Lambdę
  • Otrzymane polubienia: 862
Odp: Sterowanie anglikiem
« Odpowiedź #10 dnia: 03 Maja 2008, 21:17:59 »
ale zastępczy poda prawie każdy :)
node -1 0 (p1)_ev eventlauncher (p2) (p3) (p4) 3.0 s 0 (p1)_s1 (p1)_sz1 end
Xoov
Powyższy post wyraża jedynie opinię autora w chwili publikacji. Autor zastrzega sobie prawo do zmiany poglądów bez podawania przyczyny, jak również informowania o tym.

Offline Darth Luk

  • Wiadomości: 367
    • Zobacz profil
  • Otrzymane polubienia: 2
Odp: Sterowanie anglikiem
« Odpowiedź #11 dnia: 07 Maja 2008, 21:31:59 »
No dobra zrobiłem z rozjazdami krzyżowymi, ale jak mam zrobić z semaforami bo nie mogę załapać.
Zapraszam na Mgławicę Mocy http://mglawicamocy.pl

Offline youBy

  • Deweloper
  • Wiadomości: 6161
  • Co tam?
    • Zobacz profil
    • Automat Weryfikujący Regulację i Lambdę
  • Otrzymane polubienia: 862
Odp: Sterowanie anglikiem
« Odpowiedź #12 dnia: 08 Maja 2008, 15:10:49 »
Wklejasz mój wpis do inca odpowiedniego semafora, podlatujesz i naciskasz S -> dostajesz zastępczy; dasz s -> dostaniesz s1
Xoov
Powyższy post wyraża jedynie opinię autora w chwili publikacji. Autor zastrzega sobie prawo do zmiany poglądów bez podawania przyczyny, jak również informowania o tym.

Offline Darth Luk

  • Wiadomości: 367
    • Zobacz profil
  • Otrzymane polubienia: 2
Odp: Sterowanie anglikiem
« Odpowiedź #13 dnia: 08 Maja 2008, 16:51:32 »
Jeśli mogę zapytać: Czy da się tak zrobić żeby naciskając S przy semaforze sygnały zmieniały się po koleji tzn S1, S2, S3... Oczywiście na te które jest w stanie semafor wyświetlić.
Zapraszam na Mgławicę Mocy http://mglawicamocy.pl

Offline AtapiCl

  • Zasłużony dla Symulatora
  • Wiadomości: 4426
    • Zobacz profil
    • O warszawskiej części linii kolejowej nr 7 Warszawa – Lublin i nie tylko ;)
  • Otrzymane polubienia: 212
Odp: Sterowanie anglikiem
« Odpowiedź #14 dnia: 08 Maja 2008, 16:57:16 »
Rade da - trzeba się z komórkami pamięci pobawić i eventami z warunkami.

Zrobione "na szybko" dla SS5zpcpbI.inc:

node -1 0 (p1)s_mem memcell 0 0 1 s1 1 1 none endmemcell

event (p1)podaj_s2 multiple 1.0 (p1)s_mem (p1)_s2 (p1)_podaj_upd1 condition memcompare s1 * * endevent
event (p1)podaj_s3 multiple 1.0 (p1)s_mem (p1)_s3 (p1)_podaj_upd2 condition memcompare s2 * * endevent
event (p1)podaj_s4 multiple 1.0 (p1)s_mem (p1)_s4 (p1)_podaj_upd3 condition memcompare s3 * * endevent
event (p1)podaj_s5 multiple 1.0 (p1)s_mem (p1)_s5 (p1)_podaj_upd4 condition memcompare s4 * * endevent
event (p1)podaj_s10 multiple 1.0 (p1)s_mem (p1)_s10 (p1)_podaj_upd5 condition memcompare s5 * * endevent
event (p1)podaj_s11 multiple 1.0 (p1)s_mem (p1)_s11 (p1)_podaj_upd6 condition memcompare s10 * * endevent
event (p1)podaj_s12 multiple 1.0 (p1)s_mem (p1)_s12 (p1)_podaj_upd7 condition memcompare s11 * * endevent
event (p1)podaj_s13 multiple 1.0 (p1)s_mem (p1)_s13 (p1)_podaj_upd8 condition memcompare s12 * * endevent
event (p1)podaj_ms2 multiple 1.0 (p1)s_mem (p1)_ms2 (p1)_podaj_upd9 condition memcompare s13 * * endevent
event (p1)podaj_sz1 multiple 1.0 (p1)s_mem (p1)_sz1 (p1)_podaj_upd10 condition memcompare ms2 * * endevent
event (p1)podaj_wyg multiple 1.0 (p1)s_mem (p1)_wyg (p1)_podaj_upd11 condition memcompare sz1 * * endevent
event (p1)podaj_s1 multiple 1.0 (p1)s_mem (p1)_s1 (p1)_podaj_upd12 condition memcompare wyg * * endevent


event (p1)_podaj_upd1 updatevalues 1 (p1)s_mem s2 * * endevent
event (p1)_podaj_upd2 updatevalues 1 (p1)s_mem s3 * * endevent
event (p1)_podaj_upd3 updatevalues 1 (p1)s_mem s4 * * endevent
event (p1)_podaj_upd4 updatevalues 1 (p1)s_mem s5 * * endevent
event (p1)_podaj_upd5 updatevalues 1 (p1)s_mem s10 * * endevent
event (p1)_podaj_upd6 updatevalues 1 (p1)s_mem s11 * * endevent
event (p1)_podaj_upd7 updatevalues 1 (p1)s_mem s12 * * endevent
event (p1)_podaj_upd8 updatevalues 1 (p1)s_mem s13 * * endevent
event (p1)_podaj_upd9 updatevalues 1 (p1)s_mem ms2 * * endevent
event (p1)_podaj_upd10 updatevalues 1 (p1)s_mem sz1 * * endevent
event (p1)_podaj_upd11 updatevalues 1 (p1)s_mem wyg * * endevent
event (p1)_podaj_upd12 updatevalues 1 (p1)s_mem s1 * * endevent


event (p1)_zmien_syg2 multiple 0 none (p1)podaj_s13 (p1)podaj_ms2 (p1)podaj_sz1 (p1)podaj_wyg (p1)podaj_s1 endevent
event (p1)_zmien_syg multiple 0 none (p1)podaj_s2 (p1)podaj_s3 (p1)podaj_s4 (p1)podaj_s5 (p1)podaj_s10 (p1)podaj_s11 (p1)podaj_s12 (p1)_zmien_syg2 endevent



Całość odpalana eventem NazwaSemafora_zmien_syg
« Ostatnia zmiana: 08 Maja 2008, 17:15:02 wysłana przez ZiomalCl »

Offline Patrykos

  • Zasłużony dla Symulatora
  • Wiadomości: 4511
    • Zobacz profil
  • Otrzymane polubienia: 9
Odp: Sterowanie anglikiem
« Odpowiedź #15 dnia: 13 Maja 2008, 21:21:17 »
No dobrze, to praktycznie wiemy jak sterować podstawowymi elementami w sceneri, ale jednak jest problem z anglikami, otóż nie są wyzwalane przez eventy, poprostu trzeba ręcznie przestawiać. Jak temu zaradzić?
Pozdrawiam, Patryk
https://www.facebook.com/WarsztatPatrykosa
Węgrom gratulujemy Ikarusa.