'############## 'Door Script '############## 'Controls Doors '(c) 2007-2009 Rüdiger Hülsmann '(c) 2007-2009 Marcel Kuhnt 'Script Version: 1.1 'Omsi release: 1.0 'Needs: '- elec 'Revision History: '- Marcel Kuhnt 13.06.2009 Batterietrennschalter => elec_busbar_main '- Marcel Kuhnt 21.06.2009 AI-Unterstützung hinzugefügt '- Rüdiger Hülsmann 24.10.2009 Ansteuerung des Kinderwagenwunsches modifiziert '- Rüdiger Hülsmann 19.12.2009 Timer für Ausstiegstür jetzt Timegap-basiert, Bugfix: Tür schließt jetzt nur bei elec_busbar=1 '- RÜdiger Hülsmann 22.09.2010 Door light trigger value set to 0.1 '- RÜdiger Hülsmann 07.11.2010 Door speed based on reservoir pressure, air-operated doors made an option '- Marcel Kuhnt 08.11.2010 AI procedure closing doors debugged '- Rüdiger Hülsmann 21.11.2010 Front doors only operable when busbar on '- Rüdiger Hülsmann 23.12.2010 External front door operation included, option: doors only operable with actual stop brake '- Rüdiger Hülsmann 31.12.2010 Electric door function debugged '- Rüdiger Hülsmann 05.01.2011 20h-switch '- Rüdiger Hülsmann 07.01.2011 Backdoor manual switch sound debugged, 20h switch depending on bus type '- Rüdiger Hülsmann 19.01.2011 Electric door support '- Rüdiger Hülsmann 19.01.2011 Electric door support '- Morozov Maxim ---------- Removed automatical back door. Added ramp animation... etc... '- Alexey Vasiliev 09.03.2012 Added more doors for Citaro "Private Edition" '- Ñåðãåé Wizard 14.11.2013 Added automatical back doors. Rework dooraft for citaro 3door '- firenight.poland 16.05.2023 Added division into door types, removed door speed draw, added door wing speed adjustment '- PingPong 09.02.2024 BVG Linie 300 AutoDoor Edit -> https://reboot.omsi-webdisk.de '-------------------------------------------------------------------------------- {trigger:door_all} 1 (S.L.door_all) (S.L.doorsy0_awaryjne) (S.L.doorsy1_awaryjne) (S.L.doorsy2_awaryjne) (S.L.doorsy3_awaryjne) (T.L.ev_VDV_toggle_on) {end} {trigger:door_all_off} 0 (S.L.door_all) (S.L.doorsy0_awaryjne) (S.L.doorsy1_awaryjne) (S.L.doorsy2_awaryjne) (S.L.doorsy3_awaryjne) 0 (S.L.door_all_lock) (T.L.ev_VDV_toggle_off) {end} {trigger:bus_dooraft} (L.L.velocity) 0.1 < {if} (L.L.CG_active) ! (S.L.CG_active) (S.L.door_20h_sw) (L.L.CG_active) ! {if} (T.L.ev_VDV_on) {else} (T.L.ev_VDV_off) {endif} {endif} {end} {trigger:bus_doorfront0} (L.L.velocity) 0.1 < {if} 1 (S.L.door_20h_sw) (L.L.tuersperre_l_sw) ! (L.L.tuersperre_r_sw) ! && {if} (L.L.door_0) ! (L.L.door_1) ! && {if} 1 (S.L.doorsy0) (S.L.doorsy1) (S.L.doorsy0_awaryjne) (S.L.doorsy1_awaryjne) {endif} (L.L.door_0) (L.L.door_1) && {if} 1 (S.L.doorsy0) (S.L.doorsy1) (S.L.doorsy0_awaryjne) (S.L.doorsy1_awaryjne) {endif} (L.L.door_0) (L.L.door_1) ! && {if} 1 (S.L.doorsy0) (S.L.doorsy0_awaryjne) {endif} (L.L.door_0) ! (L.L.door_1) && {if} 1 (S.L.doorsy1) (S.L.doorsy1_awaryjne) {endif} {endif} (L.L.tuersperre_r_sw) ! (L.L.tuersperre_l_sw) && {if} (L.L.door_0) ! (L.L.door_1) ! && {if} 1 (S.L.doorsy1) (S.L.doorsy1_awaryjne) {endif} (L.L.door_0) (L.L.door_1) && {if} 1 (S.L.doorsy0) (S.L.doorsy1) (S.L.doorsy0_awaryjne) (S.L.doorsy1_awaryjne) {endif} (L.L.door_0) (L.L.door_1) ! && {if} 1 (S.L.doorsy0) (S.L.doorsy0_awaryjne) {endif} (L.L.door_0) ! (L.L.door_1) && {if} 1 (S.L.doorsy1) (S.L.doorsy1_awaryjne) {endif} {endif} (L.L.tuersperre_r_sw) (L.L.tuersperre_l_sw) ! && {if} (L.L.door_0) ! (L.L.door_1) ! && {if} 1 (S.L.doorsy0) (S.L.doorsy0_awaryjne) {endif} (L.L.door_0) (L.L.door_1) && {if} 1 (S.L.doorsy0) (S.L.doorsy1) (S.L.doorsy0_awaryjne) (S.L.doorsy1_awaryjne) {endif} (L.L.door_0) (L.L.door_1) ! && {if} 1 (S.L.doorsy0) (S.L.doorsy0_awaryjne) {endif} (L.L.door_0) ! (L.L.door_1) && {if} 1 (S.L.doorsy1) (S.L.doorsy1_awaryjne) {endif} {endif} 1 (S.L.cockpit_tuertaster1) (T.L.ev_tuertaster_ein) {endif} {end} {trigger:bus_doorfront0_off} 0 (S.L.cockpit_tuertaster1) (S.L.doorsy0) (S.L.doorsy1) (S.L.doorsy0_awaryjne) (S.L.doorsy1_awaryjne) (T.L.ev_tuertaster_aus) {end} {trigger:bus_doorfront0_external} 1 (S.L.exter_hold) {end} {trigger:bus_doorfront0_external_off} 0 (S.L.exter_hold) (S.L.lights_sw_warnblinker) {end} {trigger:bus_doorfront1} (L.L.velocity) 0.1 < {if} 1 (S.L.door_20h_sw) (S.L.doorsy2) (S.L.doorsy2_awaryjne) 1 (S.L.cockpit_tuertaster2) 1 (S.L.door23_manual) (T.L.ev_tuertaster_ein) {endif} {end} {trigger:bus_doorfront1_off} 0 (S.L.cockpit_tuertaster2) (S.L.doorsy2) (S.L.doorsy2_awaryjne) (T.L.ev_tuertaster_aus) {end} {trigger:bus_doorfront2} (L.L.velocity) 0.1 < {if} 1 (S.L.door_20h_sw) (S.L.doorsy3) (S.L.doorsy3_awaryjne) 1 (S.L.cockpit_tuertaster3) 1 (S.L.door45_manual) (T.L.ev_tuertaster_ein) {endif} {end} {trigger:bus_doorfront2_off} 0 (S.L.cockpit_tuertaster3) (S.L.doorsy3) (S.L.doorsy3_awaryjne) (T.L.ev_tuertaster_aus) {end} {trigger:CG_1} 1 (S.L.haltewunsch) {end} {trigger:CG_2} 1 (S.L.PAX_Exit0_Req) {end} {trigger:CG_2_prio} 1 (S.L.door_kinderwagenwunsch) 1 (S.L.kinderwagensperre) {end} {trigger:CG_3} 1 (S.L.PAX_Exit2_Req) {end} {trigger:CG_active} 1 (S.L.kinderwagensperre) (T.L.ev_VDV_on) {end} {trigger:CG_inactive} 0 (S.L.kinderwagensperre) 1 (S.L.kinderwagensperre_icon2) (T.L.ev_VDV_on) {end} {trigger:CG_inactive_off} 0 (S.L.kinderwagensperre_icon2) {end} {trigger:bus_20h-switch} (L.L.door_20h_sw) ! (S.L.door_20h_sw) (L.L.door_20h_sw) {if} (T.L.ev_haltebremse_sw_an) {else} (T.L.ev_haltebremse_sw_aus) {endif} {end} {trigger:cp_tuersperre_l} (L.L.tuersperre_l_sw) ! (S.L.tuersperre_l_sw) (L.L.tuersperre_l_sw) ! (L.L.doorTarget_1) 1 = && (L.L.doorTarget_0) 0 = && {if} 1 (S.L.doorsy0) {endif} (T.L.ev_kippschalter_aus) {end} {trigger:cp_tuersperre_r} (L.L.tuersperre_r_sw) ! (S.L.tuersperre_r_sw) (L.L.tuersperre_r_sw) ! (L.L.doorTarget_1) 0 = && (L.L.doorTarget_0) 1 = && {if} 1 (S.L.doorsy1) {endif} (T.L.ev_kippschalter_aus) {end} {trigger:int_haltewunsch} 1 (S.L.haltewunsch) {end} {trigger:door_haltewunsch} 1 (S.L.haltewunsch) (S.L.door_haltewunsch_knopfdruck) {end} {trigger:door_haltewunsch_off} 0 (S.L.door_haltewunsch_knopfdruck) {end} {trigger:cp_schalter_kinderwagen} (L.L.door_handsteuerung) ! (S.L.door_handsteuerung) {if} 0 (S.L.door_kinderwagenwunsch) (S.L.zufall_kinderwagenwunsch) (T.L.ev_kippschalter_ein) {else} (T.L.ev_kippschalter_aus) {endif} {end} {trigger:cp_schalter_kinderwagen2} (L.L.door_handsteuerung2) ! (S.L.door_handsteuerung2) {if} 0 (S.L.door_kinderwagenwunsch) (S.L.zufall_kinderwagenwunsch) (T.L.ev_kippschalter_ein) {else} (T.L.ev_kippschalter_aus) {endif} {end} {trigger:door_kinderwagenwunsch} 1 (S.L.door_kinderwagenwunsch) {end} {trigger:alarm_drzwi} 1 (S.L.alarm_drzwi_sw) (L.L.elec_busbar_main) {if} (S.L.alarm_drzwi) {endif} (M.L.kippschaltersound) {end} {trigger:alarm_drzwi_off} 0 (S.L.alarm_drzwi_sw) (S.L.alarm_drzwi) (M.L.kippschaltersound) {end} {macro:Door_Init} (C.L.door_acc_var) * (C.L.door_0_acc) + (S.L.doorAcc_0) (C.L.door_acc_var) * (C.L.door_1_acc) + (S.L.doorAcc_1) (C.L.door_acc_var) * (C.L.door_2_acc) + (S.L.doorAcc_2) (C.L.door_acc_var) * (C.L.door_3_acc) + (S.L.doorAcc_3) (C.L.door_acc_var) * (C.L.door_4_acc) + (S.L.doorAcc_4) (C.L.door_acc_var) * (C.L.door_5_acc) + (S.L.doorAcc_5) (C.L.door_maxspeed_var) * (C.L.door_0_maxspeed) + (S.L.doorMaxSpeed_0_norm) (C.L.door_maxspeed_var) * (C.L.door_1_maxspeed) + (S.L.doorMaxSpeed_1_norm) (C.L.door_maxspeed_var) * (C.L.door_2_maxspeed) + (S.L.doorMaxSpeed_2_norm) (C.L.door_maxspeed_var) * (C.L.door_3_maxspeed) + (S.L.doorMaxSpeed_3_norm) (C.L.door_maxspeed_var) * (C.L.door_4_maxspeed) + (S.L.doorMaxSpeed_4_norm) (C.L.door_maxspeed_var) * (C.L.door_5_maxspeed) + (S.L.doorMaxSpeed_5_norm) (C.L.door_refl) (S.L.doorRefl_0) (C.L.door_refl) (S.L.doorRefl_1) (C.L.door_refl) (S.L.doorRefl_2) (C.L.door_refl) (S.L.doorRefl_3) (C.L.door_refl) (S.L.doorRefl_4) (C.L.door_refl) (S.L.doorRefl_5) (L.L.tuerverzoegerung_var) (S.L.doortimer0) (S.L.doortimer1) (S.L.doortimer23) (S.L.doortimer45) (S.L.doortimer67) 0 (S.L.tuersperre_sw) 0 (S.L.tuersperre) (S.L.tuersperre_l_sw) (S.L.tuersperre_r_sw) 0 (S.L.foto_w_pierwszych) (S.L.alarm_wtrakcie_otwierania) (S.L.alarm_przed_zamknieciem) 1 (S.L.brak_cg_w_pierwszych) (S.L.alarm_przy_polowce) (S.L.alarm_wtrakcie_zamykania) {end} {macro:Door_Frame} (M.L.Door0_Calc) (M.L.Door1_Calc) (M.L.DoorAftCalc) (M.L.Door2_Calc) (M.L.Door3_Calc) (M.L.Door4_Calc) (M.L.Door5_Calc) ' (M.L.petla_syczenia) 'rewers (L.L.fotokomorka) (L.L.drzwi) 2 = || {if} (L.L.humans_count) (F.L.prawdopodobienstwo) (S.L.prawdopodobienstwo) (L.L.door_5) 0.1 > {if} (L.L.door_5) 0.5 > (L.L.drzwi3_wylosowano) ! && {if} 1 (S.L.drzwi3_wylosowano) 100 random (S.L.drzwi3_czestotliwosc) 60 random (S.L.drzwi3_iloscblokad) {endif} (L.L.door_5) 0.5 < (L.L.drzwi3_czestotliwosc) (L.L.prawdopodobienstwo) > && (L.L.foto3_off) ! && (L.L.doorTarget_45) 0 = && (L.L.drzwi3_iloscblokad) && {if} (T.L.ev_doortriggeropen_5_t2) 1 (S.L.zamykanie_door_45) 0 (S.L.drzwi3_otwarte) 8 (S.L.door45_countdown) (L.L.drzwi3_iloscblokad) 50 < {if} (L.L.drzwi3_iloscblokad) 10 - max 0 (S.L.drzwi3_iloscblokad) {endif} {endif} {else} 0 (S.L.drzwi3_czestotliwosc) (S.L.drzwi3_wylosowano) (S.L.drzwi3_iloscblokad) {endif} (L.L.door_2) 0.1 > {if} (L.L.door_2) 0.5 > (L.L.drzwi2_wylosowano) ! && {if} 1 (S.L.drzwi2_wylosowano) 100 random (S.L.drzwi2_czestotliwosc) 60 random (S.L.drzwi2_iloscblokad) {endif} (L.L.door_2) 0.5 < (L.L.drzwi2_czestotliwosc) (L.L.prawdopodobienstwo) > && (L.L.foto2_off) ! && (L.L.doorTarget_23) 0 = && (L.L.drzwi2_iloscblokad) && {if} (T.L.ev_doortriggeropen_2_t2) 1 (S.L.zamykanie_door_23) 0 (S.L.drzwi2_otwarte) 8 (S.L.door23_countdown) (L.L.drzwi2_iloscblokad) 50 < {if} (L.L.drzwi2_iloscblokad) 10 - max 0 (S.L.drzwi2_iloscblokad) {endif} {endif} {else} 0 (S.L.drzwi2_czestotliwosc) (S.L.drzwi2_wylosowano) (S.L.drzwi2_iloscblokad) {endif} (L.L.foto_w_pierwszych) {if} (L.L.door_0) 0.1 > (L.L.door_1) 0.1 > || {if} (L.L.door_0) 0.5 > (L.L.door_1) 0.5 > || (L.L.drzwi1_wylosowano) ! && {if} 1 (S.L.drzwi1_wylosowano) 100 random (S.L.drzwi1_czestotliwosc) 60 random (S.L.drzwi1_iloscblokad) {endif} (L.L.door_0) 0.1 > (L.L.door_0) 0.5 < && (L.L.drzwi1_czestotliwosc) (L.L.prawdopodobienstwo) > && (L.L.foto1_off) ! && (L.L.doorTarget_0) 0 = && (L.L.drzwi1_iloscblokad) && {if} (T.L.ev_doortriggeropen_0_t2) 1 (S.L.zamykanie_door_0) 0 (S.L.drzwi1_otwarte) 8 (S.L.door01_countdown) (L.L.drzwi1_iloscblokad) 50 < {if} (L.L.drzwi1_iloscblokad) 10 - max 0 (S.L.drzwi1_iloscblokad) {endif} {endif} (L.L.door_1) 0.1 > (L.L.door_1) 0.5 < && (L.L.drzwi1_czestotliwosc) (L.L.prawdopodobienstwo) > && (L.L.foto1_off) ! && (L.L.doorTarget_1) 0 = && (L.L.drzwi1_iloscblokad) && {if} (T.L.ev_doortriggeropen_1_t2) 1 (S.L.zamykanie_door_1) 0 (S.L.drzwi1_otwarte) 8 (S.L.door01_countdown) (L.L.drzwi1_iloscblokad) 50 < {if} (L.L.drzwi1_iloscblokad) 10 - (S.L.drzwi1_iloscblokad) {endif} {endif} {else} 0 (S.L.drzwi1_czestotliwosc) (S.L.drzwi1_wylosowano) (S.L.drzwi1_iloscblokad) {endif} {else} (L.L.door_0) 0.1 > (L.L.door_1) 0.1 > || {if} (L.L.door_0) 0.5 > (L.L.door_1) 0.5 > || (L.L.drzwi1_wylosowano) ! && {if} 1 (S.L.drzwi1_wylosowano) 100 random (S.L.drzwi1_czestotliwosc) 30 random (S.L.drzwi1_iloscblokad) {endif} (L.L.door_0) 0.1 > (L.L.door_0) 0.5 < && (L.L.drzwi1_czestotliwosc) 99 > && (L.L.foto1_off) ! && (L.L.doorTarget_0) 0 = && (L.L.drzwi1_iloscblokad) && {if} (T.L.ev_doortriggeropen_0_t2) 1 (S.L.zamykanie_door_0) 0 (S.L.drzwi1_otwarte) 8 (S.L.door01_countdown) (L.L.drzwi1_iloscblokad) {if} 0 (S.L.drzwi1_iloscblokad) {endif} {endif} (L.L.door_1) 0.1 > (L.L.door_1) 0.5 < && (L.L.drzwi1_czestotliwosc) 99 > && (L.L.foto1_off) ! && (L.L.doorTarget_1) 0 = && (L.L.drzwi1_iloscblokad) && {if} (T.L.ev_doortriggeropen_1_t2) 1 (S.L.zamykanie_door_0) 0 (S.L.drzwi1_otwarte) 8 (S.L.door01_countdown) (L.L.drzwi1_iloscblokad) {if} 0 (S.L.drzwi1_iloscblokad) {endif} {endif} {else} 0 (S.L.drzwi1_czestotliwosc) (S.L.drzwi1_wylosowano) (S.L.drzwi1_iloscblokad) {endif} {endif} {else} 'bezfoto (L.L.door_5) 0.1 > {if} (L.L.door_5) 0.5 > (L.L.drzwi3_wylosowano) ! && {if} 1 (S.L.drzwi3_wylosowano) 100 random (S.L.drzwi3_czestotliwosc) 30 random (S.L.drzwi3_iloscblokad) {endif} (L.L.door_5) 0.5 < (L.L.drzwi3_czestotliwosc) 99 > && (L.L.foto3_off) ! && (L.L.doorTarget_45) 0 = && (L.L.drzwi3_iloscblokad) && {if} (T.L.ev_doortriggeropen_5_t3) 1 (S.L.zamykanie_door_45) 0 (S.L.drzwi3_otwarte) 8 (S.L.door45_countdown) (L.L.drzwi3_iloscblokad) {if} 0 (S.L.drzwi3_iloscblokad) {endif} {endif} {else} 0 (S.L.drzwi3_czestotliwosc) (S.L.drzwi3_wylosowano) (S.L.drzwi3_iloscblokad) {endif} (L.L.door_2) 0.1 > {if} (L.L.door_2) 0.5 > (L.L.drzwi2_wylosowano) ! && {if} 1 (S.L.drzwi2_wylosowano) 100 random (S.L.drzwi2_czestotliwosc) 30 random (S.L.drzwi2_iloscblokad) {endif} (L.L.door_2) 0.5 < (L.L.drzwi2_czestotliwosc) 99 > && (L.L.foto2_off) ! && (L.L.doorTarget_23) 0 = && (L.L.drzwi2_iloscblokad) && {if} (T.L.ev_doortriggeropen_2_t3) 1 (S.L.zamykanie_door_23) 0 (S.L.drzwi2_otwarte) 8 (S.L.door23_countdown) (L.L.drzwi2_iloscblokad) {if} 0 (S.L.drzwi2_iloscblokad) {endif} {endif} {else} 0 (S.L.drzwi2_czestotliwosc) (S.L.drzwi2_wylosowano) (S.L.drzwi2_iloscblokad) {endif} (L.L.door_0) 0.1 > (L.L.door_1) 0.1 > || {if} (L.L.door_0) 0.5 > (L.L.door_1) 0.5 > || (L.L.drzwi1_wylosowano) ! && {if} 1 (S.L.drzwi1_wylosowano) 100 random (S.L.drzwi1_czestotliwosc) 30 random (S.L.drzwi1_iloscblokad) {endif} (L.L.door_0) 0.1 > (L.L.door_0) 0.5 < && (L.L.drzwi1_czestotliwosc) 99 > && (L.L.foto1_off) ! && (L.L.doorTarget_0) 0 = && (L.L.drzwi1_iloscblokad) && {if} (T.L.ev_doortriggeropen_0_t2) 1 (S.L.zamykanie_door_0) 0 (S.L.drzwi1_otwarte) 8 (S.L.door01_countdown) (L.L.drzwi1_iloscblokad) {if} 0 (S.L.drzwi1_iloscblokad) {endif} {endif} (L.L.door_1) 0.1 > (L.L.door_1) 0.5 < && (L.L.drzwi1_czestotliwosc) 99 > && (L.L.foto1_off) ! && (L.L.doorTarget_1) 0 = && (L.L.drzwi1_iloscblokad) && {if} (T.L.ev_doortriggeropen_1_t2) 1 (S.L.zamykanie_door_1) 0 (S.L.drzwi1_otwarte) 8 (S.L.door01_countdown) (L.L.drzwi1_iloscblokad) {if} 0 (S.L.drzwi1_iloscblokad) {endif} {endif} {else} 0 (S.L.drzwi1_czestotliwosc) (S.L.drzwi1_wylosowano) (S.L.drzwi1_iloscblokad) {endif} {endif} (L.L.velocity) 0.1 < (L.L.Velocity) -1 > && (L.L.doorsy0) && {if} (L.L.fotokomorka) (L.L.drzwi) 2 = || (L.L.foto_w_pierwszych) && {if} 0 (S.L.doorsy0) (L.L.doorTarget_0) 0 = {if} (M.L.trg_bus_doorfront0) {else} 1.1 (S.L.door01_countdown) {endif} {else} 0 (S.L.doorsy0) (M.L.trg_bus_doorfront0) {endif} {endif} (L.L.velocity) 0.1 < (L.L.Velocity) -1 > && (L.L.doorsy1) && {if} (L.L.fotokomorka) (L.L.drzwi) 2 = || (L.L.foto_w_pierwszych) && {if} 0 (S.L.doorsy1) (L.L.doorTarget_1) 0 = {if} (M.L.trg_bus_doorfront1) {else} 1.1 (S.L.door01_countdown) {endif} {else} 0 (S.L.doorsy1) (M.L.trg_bus_doorfront1) {endif} {endif} (L.L.velocity) 0.1 < (L.L.Velocity) -1 > && (L.L.doorsy2) && {if} (L.L.fotokomorka) (L.L.drzwi) 2 = || {if} 0 (S.L.doorsy2) (L.L.doorTarget_23) 0 = {if} (M.L.trg_bus_doorback23) {else} 1.1 (S.L.door23_countdown) {endif} {else} 0 (S.L.doorsy2) (M.L.trg_bus_doorback23) {endif} {endif} (L.L.velocity) 0.1 < (L.L.Velocity) -1 > && (L.L.doorsy3) && {if} (L.L.fotokomorka) (L.L.drzwi) 2 = || {if} 0 (S.L.doorsy3) (L.L.doorTarget_45) 0 = {if} (M.L.trg_bus_doorfront5) {else} 1.1 (S.L.door45_countdown) {endif} {else} 0 (S.L.doorsy3) (M.L.trg_bus_doorfront5) {endif} {endif} (L.L.doorsy3_awaryjne) {if} (L.L.foto3_off_timer) (L.S.Timegap) + (S.L.foto3_off_timer) {else} 0 (S.L.foto3_off_timer) {endif} (L.L.doorsy2_awaryjne) {if} (L.L.foto2_off_timer) (L.S.Timegap) + (S.L.foto2_off_timer) {else} 0 (S.L.foto2_off_timer) {endif} (L.L.doorsy1_awaryjne) (L.L.doorsy0_awaryjne) || {if} (L.L.foto1_off_timer) (L.S.Timegap) + (S.L.foto1_off_timer) {else} 0 (S.L.foto1_off_timer) {endif} (L.L.foto1_off_timer) 2 > {if} 1 (S.L.Foto1_off) {else} (L.L.doorsy1_awaryjne) ! (L.L.doorsy0_awaryjne) ! && {if} 0 (S.L.Foto1_off) {endif} {endif} (L.L.foto2_off_timer) 2 > {if} 1 (S.L.Foto2_off) {else} (L.L.doorsy2_awaryjne) ! {if} 0 (S.L.Foto2_off) {endif} {endif} (L.L.foto3_off_timer) 2 > {if} 1 (S.L.Foto3_off) {else} (L.L.doorsy3_awaryjne) ! {if} 0 (S.L.Foto3_off) {endif} {endif} (L.L.alarm_przed_zamknieciem) {if} (C.L.tuerverzoegerung) (S.L.tuerverzoegerung_var) {else} 0 (S.L.tuerverzoegerung_var) {endif} (L.L.alarm_wtrakcie_zamykania) (L.L.alarm_wtrakcie_otwierania) || {if} 1 (S.L.tryb_alarm_var) {else} 0 (S.L.tryb_alarm_var) {endif} (L.L.door_0) 0.9 > (S.L.PAX_Entry0_Open) (L.L.door_1) 0.9 > (S.L.PAX_Entry1_Open) (L.L.door_2) 0.9 > (S.L.PAX_Exit0_Open) (L.L.door_3) 0.9 > (S.L.PAX_Exit1_Open) (L.L.door_4) 0.9 > (S.L.PAX_Exit2_Open) (L.L.door_5) 0.9 > (S.L.PAX_Exit3_Open) (L.L.door_2) (F.L.door2_xposition) (S.L.door2_positionx) (L.L.door_2) (F.L.door2_yposition) (S.L.door2_positiony) (L.L.door_4) (F.L.door3_xposition) (S.L.door3_positionx) (L.L.door_4) (F.L.door3_yposition) (S.L.door3_positiony) (L.L.door_0) (F.L.door0_buegeleisen) (S.L.door0_buegeleisen_pos) (L.L.door_1) (F.L.door1_buegeleisen) (S.L.door1_buegeleisen_pos) (L.L.door_2) (F.L.door2_buegeleisen) (S.L.door2_buegeleisen_pos) (L.L.door_3) (F.L.door3_buegeleisen) (S.L.door3_buegeleisen_pos) (L.L.door_4) (F.L.door4_buegeleisen) (S.L.door4_buegeleisen_pos) (L.L.door_5) (F.L.door5_buegeleisen) (S.L.door5_buegeleisen_pos) (L.L.fotokomorka) (L.L.drzwi) 2 = || {if} (L.L.CG_active) (L.L.velocity) 0.1 < && (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && {if} (L.L.foto_w_pierwszych) {if} (L.L.door01_countdown) 6 > {if} 6 (S.L.door01_countdown) {endif} {endif} (L.L.door23_countdown) 6 > {if} 6 (S.L.door23_countdown) {endif} (L.L.door45_countdown) 6 > {if} 6 (S.L.door45_countdown) {endif} (L.L.door67_countdown) 6 > {if} 6 (S.L.door67_countdown) {endif} {endif} {endif} (L.L.PAX_Entry0_Req) 0 > (L.L.PAX_Entry1_Req) 0 > || {if} 1 (S.L.exit1_lichtschranke) {else} 0 (S.L.exit1_lichtschranke) {endif} (L.L.PAX_Exit1_Req) 0 > (L.L.PAX_Exit0_Req) 0 > || {if} 1 (S.L.exit2_lichtschranke) 1 (S.L.CG_drzwi_2) {else} 0 (S.L.exit2_lichtschranke) {endif} (L.L.PAX_Exit2_Req) 0 > (L.L.PAX_Exit3_Req) 0 > || {if} 1 (S.L.exit3_lichtschranke) 1 (S.L.CG_drzwi_3) {else} 0 (S.L.exit3_lichtschranke) {endif} (L.L.bremse_halte_sw) {if} 1 (S.L.door_20h_sw) {endif} (L.L.door_20h_sw) (L.L.door_0) ! && (L.L.door_1) ! && (L.L.door_2) ! && (L.L.door_3) ! && (L.L.door_4) ! && (L.L.door_5) ! && (L.L.kneel_allowed) ! && (L.L.Throttle) 0 > && (L.L.CG_active) ! && {if} 0 (S.L.door_20h_sw) {endif} (L.L.door_all) (L.L.velocity) 0.1 < && {if} (L.L.door_all_lock) ! {if} 1 (S.L.door_all_lock) (M.L.door_all) {endif} {endif} (L.L.door_kinderwagenwunsch) (L.L.door_2) && {if} 0 (S.L.door_kinderwagenwunsch) (S.L.zufall_kinderwagenwunsch) {endif} '------------ (L.L.door_2) 1 = (L.L.door_3) 1 = && (L.L.pandus_2_mode) && {if} 1 (S.L.ramp_door23_locked) {else} 0 (S.L.ramp_door23_locked) {endif} '------------ (L.L.door23_manual) ! (L.L.kinderwagensperre) ! && (L.L.ramp_door23_locked) ! && {if} (L.L.door_2) 1 = (L.L.door_3) 1 = || {if} (L.L.doorMidLastOpen) (L.S.Timegap) + (S.L.doorMidLastOpen) (L.L.doorTarget_23) (L.L.doorMidLastOpen) (C.L.doorMidOpenTime) > && {if} (T.L.ev_doortriggerclose_2_t3) (M.L.trg_bus_doorback23) 0 (S.L.PAX_Exit0_state) (S.L.PAX_Exit2_state) {endif} {endif} {endif} (L.L.door45_manual) ! {if} (L.L.door_4) 1 = (L.L.Door_5) 1 = || {if} (L.L.doorAftLastOpen) (L.S.Timegap) + (S.L.doorAftLastOpen) (L.L.doorTarget_45) (L.L.doorAftLastOpen) (C.L.doorAftOpenTime) > && {if} (T.L.ev_doortriggerclose_2_t4) (M.L.trg_bus_doorfront5) 0 (S.L.PAX_Exit0_state) (S.L.PAX_Exit2_state) {endif} {endif} {endif} '------------ (L.L.PAX_Exit0_Req) (L.L.PAX_Exit1_Req) || (L.L.door_kinderwagenwunsch) || {if} 1 (S.L.PAX_Exit0_state) 0 (S.L.doorMidLastOpen) {endif} (L.L.PAX_Exit2_Req) (L.L.PAX_Exit3_Req) || {if} 1 (S.L.PAX_Exit2_state) 0 (S.L.doorAftLastOpen) {endif} ' (L.L.PAX_Exit4_Req) (L.L.PAX_Exit5_Req) || ' {if} ' 1 (S.L.PAX_Exit4_state) ' 0 (S.L.doorAftLastOpen) ' {endif} (L.L.CG_active) (L.L.velocity) 0.1 < && (L.L.elec_busbar_main) && {if} 1 (S.L.CG_opened) {endif} (L.L.PAX_Entry0_Req) (L.L.PAX_Entry1_Req) || (L.L.CG_active) && (L.L.Foto1_off) ! && (L.L.brak_cg_w_pierwszych) ! && {if} 0 (S.L.PAX_Exit4_state) 1 (S.L.CG_opened) (L.L.door_1) ! (L.L.tuersperre_l_sw) ! && (L.L.tuersperre_r_sw) ! && {if} (M.L.trg_bus_doorfront0) (M.L.trg_bus_doorfront1) {endif} (L.L.door_0) ! (L.L.tuersperre_r_sw) && (L.L.tuersperre_l_sw) ! && {if} (M.L.trg_bus_doorfront0) {endif} (L.L.door_1) ! (L.L.tuersperre_r_sw) ! && (L.L.tuersperre_l_sw) && {if} (M.L.trg_bus_doorfront1) {endif} {endif} (L.L.PAX_Exit1_Req) (L.L.PAX_Exit0_Req) || (L.L.PAX_Exit0_state) || (L.L.CG_drzwi_2) || (L.L.CG_active) && (L.L.door_3) ! && (L.L.Foto2_off) ! && {if} 0 (S.L.PAX_Exit0_state) 1 (S.L.CG_opened) (M.L.trg_bus_doorback23) {endif} (L.L.PAX_Exit3_Req) (L.L.PAX_Exit2_Req) || (L.L.PAX_Exit2_state) || (L.L.CG_drzwi_3) || (L.L.CG_active) && (L.L.door_4) ! && (L.L.Foto3_off) ! && {if} 0 (S.L.PAX_Exit2_state) 1 (S.L.CG_opened) (M.L.trg_bus_doorfront5) {endif} (L.L.bus_dooraft_sw) (L.L.velocity) 0.1 < && {if} 1 (S.L.bremse_halte) {endif} ' Türsteuerung: ' Türsperre setzen: (L.L.tuersperre_sw) (S.L.tuersperre) ' "Dauerfeuer"-Haltewunsch über Kinderwagenschalter (macht genau dasselbe wie der "trigger:int_haltewunsch"): (L.L.door_haltewunsch_knopfdruck) (L.L.door_kinderwagenwunsch) || (L.L.CG_drzwi_2) || (L.L.CG_drzwi_3) || (L.L.CG_drzwi_4) || {if} 1 (S.L.haltewunsch) {endif} ' Setzen der Haltestellenbremse erst bei Stillstand des Busses: (L.L.bremse_halte_sw) (L.L.door_20h_sw) || (L.L.bremse_halte) ! (L.L.Velocity) (C.L.Door_Bremse_Halte_MaxKMH) < && && {if} (L.L.elec_busbar_main) {if} (T.L.ev_haltebremse_an) 1 (S.L.bremse_halte) (S.L.regelung_stand_timer) {endif} {endif} (L.L.door_0) 0.1 > (L.L.door_1) 0.1 > || (L.L.door_2) 0.1 > || (L.L.door_3) 0.1 > || (L.L.door_4) 0.1 > || (L.L.door_5) 0.1 > || (L.L.bremse_halte) ! && {if} (L.L.elec_busbar_main) {if} (T.L.ev_haltebremse_an) 1 (S.L.bremse_halte) {endif} {endif} ' (M.L.DoorAft_Open) ' Türfreigabekriterium (L.L.bremse_halte_sw) (L.L.bremse_halte) && (S.L.door_freigabe) ' Haltewunschlampe: (L.L.haltewunsch) (L.L.door_0) 0.2 < (L.L.door_1) 0.2 < (L.L.door_2) 0.2 < (L.L.door_5) 0.2 < (L.L.elec_busbar_main) && && && && && {if} 1 (S.L.haltewunschlampe) {else} 0 (S.L.haltewunschlampe) (S.L.haltewunsch) (S.L.CG_drzwi_2) (S.L.CG_drzwi_3) (S.L.CG_drzwi_4) {endif} ' Abfall des Kinderwagenwunsch-Relais bei fehlender Stromversorgung: (L.L.elec_busbar_main) 0 = {if} 0 (S.L.door_kinderwagenwunsch) (S.L.zufall_kinderwagenwunsch) {endif} ' Zufälliges zusätzliches Aufleuchten des Kinderwagenwunsches bei Haltewunsch: (L.L.haltewunsch) 1 = (L.L.zufall_kinderwagenwunsch) 0 = && (L.S.Time) 72000 < (L.S.Time) 28800 > && && {if} 10 random (S.L.zufall_kinderwagenwunsch) (L.L.zufall_kinderwagenwunsch) 9 >= {if} 1 (S.L.kinderwagensperre) 1 (S.L.door_kinderwagenwunsch) {endif} {endif} ' Beleuchtung der Einstiege (L.L.elec_busbar_main) {if} (L.L.bremse_p_tank02) 500000 > {if} (L.L.door_0) 0 > (L.L.door_1) 0 > || {if} 1 (S.L.door_light_1) 0 (S.L.light_timer1) (L.L.elec_busbar_main) 1 = {if} 1 (S.L.door_spotlight_1) {else} 0 (S.L.door_spotlight_1) {endif} {else} (L.L.light_timer1) (L.S.timegap) + 2 min (S.L.light_timer1) 2 = {if} 0 (S.L.door_spotlight_1) {endif} 0 (S.L.door_light_1) {endif} (L.L.door_2) 0 > (L.L.door_3) 0 > || {if} 1 (S.L.door_light_2) 0 (S.L.light_timer2) (L.L.elec_busbar_main) 1 = {if} 1 (S.L.door_spotlight_2) {else} 0 (S.L.door_spotlight_2) {endif} {else} (L.L.light_timer2) (L.S.timegap) + 2 min (S.L.light_timer2) 2 = {if} 0 (S.L.door_spotlight_2) {endif} 0 (S.L.door_light_2) {endif} (L.L.door_4) 0 > (L.L.door_5) 0 > || {if} 1 (S.L.door_light_3) 0 (S.L.light_timer3) (L.L.elec_busbar_main) 1 = {if} 1 (S.L.door_spotlight_3) {else} 0 (S.L.door_spotlight_3) {endif} {else} (L.L.light_timer3) (L.S.timegap) + 2 min (S.L.light_timer3) 2 = {if} 0 (S.L.door_spotlight_3) {endif} 0 (S.L.door_light_3) {endif} 0 (S.L.door_failure) {else} (L.L.Tuerfehler_blinkgeber) (L.S.Timegap) + 1 min (S.L.Tuerfehler_blinkgeber) 0.5 < {if} 1 (S.L.door_light_1) 1 (S.L.door_light_2) 1 (S.L.door_light_3) 1 (S.L.door_failure) {else} 0 (S.L.door_light_1) 0 (S.L.door_light_2) 0 (S.L.door_light_3) 0 (S.L.door_failure) {endif} (L.L.Tuerfehler_blinkgeber) 1 = {if} 0 (S.L.Tuerfehler_blinkgeber) {endif} {endif} {else} 0 (S.L.door_light_1) 0 (S.L.door_light_2) 0 (S.L.door_light_3) 0 (S.L.door_spotlight_1) 0 (S.L.door_spotlight_2) 0 (S.L.door_spotlight_3) {endif} ' Urbino IV doorlight (L.L.dzwonekdrzwi1) {if} (L.L.door_warnlight_timer_1) (L.S.Timegap) + (S.L.door_warnlight_timer_1) {endif} (L.L.door_warnlight_timer_1) 1 > (L.L.dzwonekdrzwi1) ! || {if} 0 (S.L.door_warnlight_timer_1) {endif} (L.L.dzwonekdrzwi2) {if} (L.L.door_warnlight_timer_2) (L.S.Timegap) + (S.L.door_warnlight_timer_2) {endif} (L.L.door_warnlight_timer_2) 1 > (L.L.dzwonekdrzwi2) ! || {if} 0 (S.L.door_warnlight_timer_2) {endif} (L.L.dzwonekdrzwi3) {if} (L.L.door_warnlight_timer_3) (L.S.Timegap) + (S.L.door_warnlight_timer_3) {endif} (L.L.door_warnlight_timer_3) 1 > (L.L.dzwonekdrzwi3) ! || {if} 0 (S.L.door_warnlight_timer_3) {endif} (L.L.dzwonekdrzwi1) (L.L.door_warnlight_timer_1) 0.5 < && (L.L.door_failure) || (L.L.elec_busbar_main) && {if} 1 (S.L.door_light_red_1) 0 (S.L.door_light_white_1) {else} 0 (S.L.door_light_red_1) {endif} (L.L.elec_busbar_main) (L.L.door_light_red_1) ! && (L.L.door_1_opened) (L.L.door_2_opened) || (L.L.door_3_opened) || (L.L.Velocity) 1 < && && (L.L.CG_active) || {if} 1 (S.L.door_light_white_1) {else} 0 (S.L.door_light_white_1) {endif} (L.L.dzwonekdrzwi2) (L.L.door_warnlight_timer_2) 0.5 < && (L.L.door_failure) || (L.L.elec_busbar_main) && {if} 1 (S.L.door_light_red_2) 0 (S.L.door_light_white_2) {else} 0 (S.L.door_light_red_2) {endif} (L.L.elec_busbar_main) (L.L.door_light_red_2) ! && (L.L.door_1_opened) (L.L.door_2_opened) || (L.L.door_3_opened) || (L.L.Velocity) 1 < && && (L.L.CG_active) || {if} 1 (S.L.door_light_white_2) {else} 0 (S.L.door_light_white_2) {endif} (L.L.dzwonekdrzwi3) (L.L.door_warnlight_timer_3) 0.5 < && (L.L.door_failure) || (L.L.elec_busbar_main) && {if} 1 (S.L.door_light_red_3) 0 (S.L.door_light_white_3) {else} 0 (S.L.door_light_red_3) {endif} (L.L.elec_busbar_main) (L.L.door_light_red_3) ! && (L.L.door_1_opened) (L.L.door_2_opened) || (L.L.door_3_opened) || (L.L.Velocity) 1 < && && (L.L.CG_active) || {if} 1 (S.L.door_light_white_3) {else} 0 (S.L.door_light_white_3) {endif} (L.L.Velocity) 1 > {if} 0 (S.L.door_1_opened) 0 (S.L.door_2_opened) 0 (S.L.door_3_opened) {endif} (L.L.door_0) 0.99 < (L.L.tuersperre_l_sw) ! && (L.L.door_1) 0.99 < (L.L.tuersperre_r_sw) ! && || {if} 0 (S.L.doorwarn_1) {endif} (L.L.door_0) 0.05 > (L.L.door_1) 0.05 > || {if} 1 (S.L.door_1_opened) {endif} (L.L.door_2) 0.99 < (L.L.door_3) 0.99 < || {if} 0 (S.L.doorwarn_2) {endif} (L.L.door_2) 0.05 > (L.L.door_3) 0.05 > || {if} 1 (S.L.door_2_opened) {endif} (L.L.door_4) 0.99 < (L.L.door_5) 0.99 < || {if} 0 (S.L.doorwarn_3) {endif} (L.L.door_4) 0.05 > (L.L.door_5) 0.05 > || {if} 1 (S.L.door_3_opened) {endif} ' Wy³¹czanie sygna³u ostrzegawczego drzwi (L.L.bez_sygnalu_ostrzegawczego_drzwi) 1 = {if} 0 (S.L.dzwonekDrzwi1_cfg) (S.L.dzwonekDrzwi2_cfg) (S.L.dzwonekDrzwi3_cfg) {else} (L.L.dzwonekDrzwi1) (S.L.dzwonekDrzwi1_cfg) (L.L.dzwonekDrzwi2) (S.L.dzwonekDrzwi2_cfg) (L.L.dzwonekDrzwi3) (S.L.dzwonekDrzwi3_cfg) {endif} ' Druckabhängige Türgeschwindigkeit (C.L.door_druckluft) {if} (L.L.doorMaxSpeed_0_norm) (L.L.bremse_p_Tank04) 100000 - 850000 / * 4 / (S.L.doorMaxSpeed_0) (L.L.doorMaxSpeed_1_norm) (L.L.bremse_p_Tank04) 100000 - 850000 / * 4 / (S.L.doorMaxSpeed_1) (L.L.doorMaxSpeed_2_norm) (L.L.bremse_p_Tank04) 100000 - 850000 / * 4 / (S.L.doorMaxSpeed_2) (L.L.doorMaxSpeed_3_norm) (L.L.bremse_p_Tank04) 100000 - 850000 / * 4 / (S.L.doorMaxSpeed_3) (L.L.doorMaxSpeed_4_norm) (L.L.bremse_p_Tank04) 100000 - 850000 / * 4 / (S.L.doorMaxSpeed_4) (L.L.doorMaxSpeed_5_norm) (L.L.bremse_p_Tank04) 100000 - 850000 / * 4 / (S.L.doorMaxSpeed_5) {endif} '---------------------- ' AI-Ablauf: (L.L.AI_Scheduled_AtStation) s0 1 = {if} 'Wenn Türen geöffnet werden sollen: (L.L.Velocity) (C.L.Door_Bremse_Halte_MaxKMH) < {if} 1 (S.L.CG_active) 'Nur, wenn v < maxkmh, sonst warten 'Taster jeweils nur betätigen, falls noch nicht an (L.L.bremse_halte_sw) ! {if} (M.L.trg_bus_dooraft) {endif} (L.L.doorTarget_0) ! (L.L.door_AI_timer) 0.3 > && {if} (M.L.trg_bus_doorfront0) {endif} (L.L.doorTarget_1) ! (L.L.door_AI_timer) 0.6 > && {if} (M.L.trg_bus_doorfront1) {endif} (L.L.doorTarget_23) ! (L.L.door_AI_timer) 0.6 > (L.L.haltewunsch) && && {if} (M.L.trg_bus_doorback23) {endif} (L.L.doorTarget_45) ! (L.L.door_AI_timer) 0.6 > (L.L.haltewunsch) && && {if} (M.L.trg_bus_doorfront5) {endif} {else} 0 (S.L.door_AI_timer) {endif} (L.L.door_AI_timer) (L.S.Timegap) + (S.L.door_AI_timer) {else} l0 -1 = {if} 0 (S.L.CG_active) 'Wenn Türen geschlossen werden sollen: 'Taster jeweils nur betätigen, falls noch nicht aus: (L.L.doorTarget_1) {if} (M.L.trg_bus_doorfront1) 0 (S.L.door_AI_timer) {endif} (L.L.doorTarget_0) (L.L.door_AI_timer) 0.3 > && {if} (M.L.trg_bus_doorfront0) {endif} (L.L.doorTarget_23) (L.L.door_AI_timer) 0.3 > && {if} (M.L.trg_bus_doorback23) {endif} (L.L.doorTarget_45) (L.L.door_AI_timer) 0.3 > && {if} (M.L.trg_bus_doorfront5) {endif} 'Haltestellenbremse erst wegnehmen, wenn alle Türen zu. Dann auch erst den Bus AI-mäßig freigeben: (L.L.door_0) 0.1 < (L.L.door_1) 0.1 < && (L.L.door_2) 0.1 < && (L.L.door_4) 0.1 < && (L.L.door_5) 0.1 < && {if} (L.L.bremse_halte_sw) (L.L.door_AI_timer) 0.3 > && {if} (M.L.trg_bus_dooraft) {endif} (L.L.bremse_halte_sw) ! {if} 0 (S.L.AI_Scheduled_AtStation) {endif} {else} 'Sollte eine der Türen auf sein und die Haltestellenbremse aus, dann sofort diese einlegen (L.L.bremse_halte_sw) ! {if} (M.L.trg_bus_dooraft) {endif} (L.L.doorTarget_0) ! (L.L.doorTarget_1) ! && (L.L.doorTarget_23) ! && (L.L.doorTarget_45) ! && {if} 0 (S.L.door_AI_timer) {endif} {endif} (L.L.door_AI_timer) (L.S.Timegap) + (S.L.door_AI_timer) {endif} {endif} '##############################Dzwonek drzwi wtrakcie####### (L.L.tryb_alarm_var) {if} (S.L.tryb_alarm) (L.L.alarm_drzwi) {if} 1 (S.L.dzwonekdrzwi1) (S.L.dzwonekdrzwi01) (S.L.dzwonekdrzwi01_podsw) (S.L.dzwonekdrzwi2_podsw) (S.L.dzwonekdrzwi3_podsw) (S.L.dzwonekdrzwi2) (S.L.dzwonekdrzwi3) {else} (L.L.door_0) 1 < (L.L.doorTarget_0) 1 = && (L.L.door_1) 1 < (L.L.doorTarget_1) 1 = && || (L.L.alarm_wtrakcie_otwierania) 1 = && (L.L.door_0) 0 > (L.L.doorTarget_0) 0 = && (L.L.door_1) 0 > (L.L.doorTarget_1) 0 = && || (L.L.alarm_wtrakcie_zamykania) 1 = && || {if} 1 (S.L.dzwonekdrzwi1) (S.L.dzwonekdrzwi01) (S.L.dzwonekdrzwi01_podsw) (L.L.door_0) 0.01 < (L.L.door_1) 0.01 < && {if} 0 (S.L.dzwonekdrzwi1) (S.L.drzwi1_zamkniete) (S.L.dzwonekdrzwi01) (S.L.dzwonekdrzwi01_podsw) {endif} (L.L.door_0) 0.99 > (L.L.door_1) 0.99 > || {if} 0 (S.L.dzwonekdrzwi1) (S.L.dzwonekdrzwi01) (S.L.dzwonekdrzwi01_podsw) {endif} {else} 0 (S.L.dzwonekdrzwi1) {endif} (L.L.door_2) 1 < (L.L.door_3) 1 < || (L.L.doorTarget_23) 0 = && (L.L.alarm_wtrakcie_zamykania) 1 = && (L.L.door_2) 0 > (L.L.door_3) 0 > || (L.L.doorTarget_23) 1 = && (L.L.alarm_wtrakcie_otwierania) 1 = && || {if} 1 (S.L.dzwonekdrzwi2) (S.L.dzwonekdrzwi2_podsw) (L.L.door_2) 0.01 < (L.L.door_3) 0.01 < && {if} 0 (S.L.drzwi2_otwarte) (S.L.dzwonekdrzwi2) (S.L.dzwonekdrzwi2_podsw) {endif} (L.L.door_2) 0.99 > (L.L.door_3) 0.99 > && {if} 0 (S.L.dzwonekdrzwi2) (S.L.dzwonekdrzwi2_podsw) {endif} {else} 0 (S.L.dzwonekdrzwi2) (S.L.dzwonekdrzwi2_podsw) {endif} (L.L.door_4) 1 < (L.L.door_5) 1 < || (L.L.doorTarget_45) 0 = && (L.L.alarm_wtrakcie_zamykania) 1 = && (L.L.door_4) 0 > (L.L.door_5) 0 > || (L.L.doorTarget_45) 1 = && (L.L.alarm_wtrakcie_otwierania) 1 = && || {if} 1 (S.L.dzwonekdrzwi3) (S.L.dzwonekdrzwi3_podsw) (L.L.door_4) 0.01 < (L.L.door_5) 0.01 < && {if} 0 (S.L.drzwi3_otwarte) (S.L.dzwonekdrzwi3) (S.L.dzwonekdrzwi3_podsw) {endif} (L.L.door_4) 0.99 > (L.L.door_5) 0.99 > && {if} 0 (S.L.dzwonekdrzwi3) (S.L.dzwonekdrzwi3_podsw) {endif} {else} 0 (S.L.dzwonekdrzwi3) (S.L.dzwonekdrzwi3_podsw) {endif} {else} (S.L.tryb_alarm) (L.L.alarm_drzwi) {if} 1 (S.L.dzwonekdrzwi1) (S.L.dzwonekdrzwi01) (S.L.dzwonekdrzwi01_podsw) (S.L.dzwonekdrzwi2_podsw) (S.L.dzwonekdrzwi3_podsw) (S.L.dzwonekdrzwi2) (S.L.dzwonekdrzwi3) {else} 0 (S.L.dzwonekdrzwi1) (S.L.dzwonekdrzwi01) (S.L.dzwonekdrzwi2) (S.L.dzwonekdrzwi3) (L.L.door_0) 1 < (L.L.door_1) 1 < || (L.L.drzwi1_zamkniete) && {if} 1 (S.L.dzwonekdrzwi01_podsw) (L.L.door_0) 0.01 < (L.L.door_1) 0.01 < && {if} 0 (S.L.drzwi1_zamkniete) (S.L.dzwonekdrzwi01_podsw) {endif} {else} 0 (S.L.dzwonekdrzwi01_podsw) {endif} (L.L.door_2) 1 < (L.L.door_3) 1 < || (L.L.drzwi2_otwarte) && {if} 1 (S.L.dzwonekdrzwi2_podsw) (L.L.door_2) 0.01 < (L.L.door_3) 0.01 < && {if} 0 (S.L.drzwi2_otwarte) (S.L.dzwonekdrzwi2_podsw) {endif} {else} 0 (S.L.dzwonekdrzwi2_podsw) {endif} (L.L.door_4) 1 < (L.L.door_5) 1 < || (L.L.drzwi3_otwarte) && {if} 1 (S.L.dzwonekdrzwi3_podsw) (L.L.door_4) 0.01 < (L.L.door_5) 0.01 < && {if} 0 (S.L.drzwi3_otwarte) (S.L.dzwonekdrzwi3_podsw) {endif} {else} 0 (S.L.dzwonekdrzwi3_podsw) {endif} {endif} {endif} (L.L.exter_hold) {if} (L.L.exter_open) (L.S.Timegap) + (S.L.exter_open) {else} 0 (S.L.exter_open) {endif} (L.L.exter_hold) {if} (L.L.exter_open) 2 > (L.L.exter_open) 2.1 < && {if} 0 (S.L.lights_sw_warnblinker) (S.L.exter_hold) 3 (S.L.exter_open) 1 (S.L.exter_swiatlo) (L.L.door_0) 0.9 > (L.L.door_1) 0.9 > && (L.L.door_0) 0.9 < (L.L.door_1) 0.9 < && || {if} (M.L.trg_bus_doorfront0) (M.L.trg_bus_doorfront1) {endif} (L.L.door_0) 0.9 > (L.L.door_1) 0.9 < && {if} (M.L.trg_bus_doorfront0) {endif} (L.L.door_0) 0.9 < (L.L.door_1) 0.9 > && {if} (M.L.trg_bus_doorfront1) {endif} {endif} {endif} (L.L.exter_swiatlo) {if} (L.L.exter_swiatlo_time) (L.S.Timegap) + (S.L.exter_swiatlo_time) {else} 0 (S.L.exter_swiatlo_time) {endif} (L.L.exter_swiatlo_time) 12 > {if} 0 (S.L.exter_swiatlo) {endif} {end} {macro:door_all} (L.L.door_0) (L.L.door_1) || (L.L.door_2) || (L.L.door_3) || (L.L.door_4) || (L.L.door_5) || (L.L.door_6) || (L.L.door_7) || {if} (L.L.fotokomorka) (L.L.drzwi) 2 = || {if} (L.L.foto_w_pierwszych) {if} (L.L.door_0) 0.6 > (L.L.door_1) 0.6 > || (L.L.drzwi1_zamkniete) ! && {if} 1.1 (S.L.door01_countdown) {endif} {else} (L.L.door_0) 0.6 > (L.L.door_1) 0.6 > && (L.L.drzwi1_zamkniete) ! && {if} (M.L.trg_bus_doorfront0) (M.L.trg_bus_doorfront1) {endif} (L.L.door_0) 0.6 < (L.L.door_1) 0.6 > && (L.L.drzwi1_zamkniete) ! && {if} (M.L.trg_bus_doorfront1) {endif} (L.L.door_0) 0.6 > (L.L.door_1) 0.6 < && (L.L.drzwi1_zamkniete) ! && {if} (M.L.trg_bus_doorfront0) {endif} {endif} (L.L.door_2) 0.6 > (L.L.door_3) 0.6 > || (L.L.drzwi2_otwarte) ! && {if} 1.1 (S.L.door23_countdown) {endif} (L.L.door_4) 0.6 > (L.L.door_5) 0.6 > || (L.L.drzwi3_otwarte) ! && {if} 1.1 (S.L.door45_countdown) {endif} {else} (L.L.door_0) 0.6 > (L.L.door_1) 0.6 > && (L.L.drzwi1_zamkniete) ! && {if} (M.L.trg_bus_doorfront0) (M.L.trg_bus_doorfront1) {endif} (L.L.door_0) 0.6 < (L.L.door_1) 0.6 > && (L.L.drzwi1_zamkniete) ! && {if} (M.L.trg_bus_doorfront1) {endif} (L.L.door_0) 0.6 > (L.L.door_1) 0.6 < && (L.L.drzwi1_zamkniete) ! && {if} (M.L.trg_bus_doorfront0) {endif} (L.L.door_2) 0.6 > (L.L.door_3) 0.6 > || (L.L.drzwi2_otwarte) ! && {if} (M.L.trg_bus_doorback23) {endif} (L.L.door_4) 0.6 > (L.L.door_5) 0.6 > || (L.L.drzwi3_otwarte) ! && {if} (M.L.trg_bus_doorfront5) {endif} {endif} {else} 1 (S.L.door_20h_sw) (L.L.tuersperre_l_sw) ! {if} (M.L.trg_bus_doorfront0) {endif} (L.L.tuersperre_r_sw) ! {if} (M.L.trg_bus_doorfront1) {endif} (M.L.trg_bus_doorback23) (M.L.trg_bus_doorfront5) {endif} {end} {macro:door_all_cg} (L.L.door_0) (L.L.door_1) || (L.L.door_2) || (L.L.door_3) || (L.L.door_4) || (L.L.door_5) || (L.L.door_6) || (L.L.door_7) || {if} (L.L.fotokomorka) (L.L.drzwi) 2 = || {if} (L.L.brak_cg_w_pierwszych) ! {if} (L.L.foto_w_pierwszych) {if} (L.L.door_0) 0.6 > (L.L.door_1) 0.6 > || (L.L.drzwi1_zamkniete) ! && {if} 1.1 (S.L.door01_countdown) {endif} {else} (L.L.door_0) 0.6 > (L.L.door_1) 0.6 > && (L.L.drzwi1_zamkniete) ! && {if} (M.L.trg_bus_doorfront0) (M.L.trg_bus_doorfront1) {endif} (L.L.door_0) 0.6 < (L.L.door_1) 0.6 > && (L.L.drzwi1_zamkniete) ! && {if} (M.L.trg_bus_doorfront1) {endif} (L.L.door_0) 0.6 > (L.L.door_1) 0.6 < && (L.L.drzwi1_zamkniete) ! && {if} (M.L.trg_bus_doorfront0) {endif} {endif} {endif} (L.L.door_2) 0.6 > (L.L.door_3) 0.6 > || (L.L.drzwi2_otwarte) ! && {if} 1.1 (S.L.door23_countdown) {endif} (L.L.door_4) 0.6 > (L.L.door_5) 0.6 > || (L.L.drzwi3_otwarte) ! && {if} 1.1 (S.L.door45_countdown) {endif} {else} (L.L.brak_cg_w_pierwszych) ! {if} (L.L.door_0) 0.6 > (L.L.door_1) 0.6 > && (L.L.drzwi1_zamkniete) ! && {if} (M.L.trg_bus_doorfront0) (M.L.trg_bus_doorfront1) {endif} (L.L.door_0) 0.6 < (L.L.door_1) 0.6 > && (L.L.drzwi1_zamkniete) ! && {if} (M.L.trg_bus_doorfront1) {endif} (L.L.door_0) 0.6 > (L.L.door_1) 0.6 < && (L.L.drzwi1_zamkniete) ! && {if} (M.L.trg_bus_doorfront0) {endif} {endif} (L.L.door_2) 0.6 > (L.L.door_3) 0.6 > || (L.L.drzwi2_otwarte) ! && {if} (M.L.trg_bus_doorback23) {endif} (L.L.door_4) 0.6 > (L.L.door_5) 0.6 > || (L.L.drzwi3_otwarte) ! && {if} (M.L.trg_bus_doorfront5) {endif} {endif} {else} 1 (S.L.door_20h_sw) (L.L.tuersperre_l_sw) ! {if} (M.L.trg_bus_doorfront0) {endif} (L.L.tuersperre_r_sw) ! {if} (M.L.trg_bus_doorfront1) {endif} (M.L.trg_bus_doorback23) (M.L.trg_bus_doorfront5) {endif} {end} {macro:Door0_Calc} (L.L.zamykanie_door_0) ! (L.L.doorSpeed_0) s0 abs 0.05 > (L.L.door_0) 0 > || && {if} (L.L.door_0) 1 = {if} (L.L.doortimer0) (L.S.Timegap) + (L.L.tuerverzoegerung_var) min (S.L.doortimer0) (L.L.tuerverzoegerung_var) = {if} (L.L.zamykanie_door_0) (S.L.doorTarget_0) {endif} {else} (L.L.zamykanie_door_0) (S.L.doorTarget_0) {endif} {else} (L.L.doorSpeed_0) abs 0.05 > (L.L.door_0) 1 < || (L.L.zamykanie_door_0) && {if} (L.L.zamykanie_door_0) (S.L.doorTarget_0) {endif} {endif} (L.L.doortimer0) (L.L.tuerverzoegerung_var) = {if} (L.L.zamykanie_door_0) (S.L.doorTarget_0) {endif} (L.L.doorTarget_0) ! (L.L.doorSpeed_0) s0 abs 0.05 > (L.L.door_0) 0 > || && {if} (L.L.door_0) (L.L.door_0) (F.L.door_0_cls_speed_t2) (L.S.Timegap) * - (S.L.door_0) {else} (L.L.doorSpeed_0) abs 0.05 > (L.L.door_0) 1 < || (L.L.doorTarget_0) && {if} (L.L.door_0) (L.L.door_0) (F.L.door_0_opn_speed_t2) (L.S.Timegap) * + (S.L.door_0) 0 (S.L.doortimer0) 0 (S.L.trigger_antirepeat0) {else} 0 (S.L.doorSpeed_0) {endif} {endif} (L.L.doortimer0) (L.L.tuerverzoegerung_var) = (L.L.doortimer0) 0 > && {if} (L.L.trigger_antirepeat0) 1 + (S.L.trigger_antirepeat0) (L.L.trigger_antirepeat0) 1 = {if} (T.L.ev_doortriggerclose_0_t2) 1 (S.L.drzwi1_zamkniete) {endif} {endif} (L.L.door_0) 1 > {if} 1 (S.L.door_0) (L.L.doorSpeed_0) /-/ (L.L.doorRefl_0) * (S.L.doorSpeed_0) {else} (L.L.door_0) 0 < {if} 0 (S.L.door_0) (L.L.doorSpeed_0) /-/ (L.L.doorRefl_0) * (S.L.doorSpeed_0) {endif} {endif} {end} {macro:Door1_Calc} (L.L.zamykanie_door_1) ! (L.L.doorSpeed_1) s0 abs 0.05 > (L.L.door_1) 0 > || && {if} (L.L.door_1) 1 = {if} (L.L.doortimer1) (L.S.Timegap) + (L.L.tuerverzoegerung_var) min (S.L.doortimer1) (L.L.tuerverzoegerung_var) = {if} (L.L.zamykanie_door_1) (S.L.doorTarget_1) {endif} {else} (L.L.zamykanie_door_1) (S.L.doorTarget_1) {endif} {else} (L.L.doorSpeed_1) abs 0.05 > (L.L.door_1) 1 < || (L.L.zamykanie_door_1) && {if} (L.L.zamykanie_door_1) (S.L.doorTarget_1) {endif} {endif} (L.L.doortimer1) (L.L.tuerverzoegerung_var) = {if} (L.L.zamykanie_door_1) (S.L.doorTarget_1) {endif} (L.L.doorTarget_1) ! (L.L.doorSpeed_1) s0 abs 0.05 > (L.L.door_1) 0 > || && {if} (L.L.door_1) (L.L.door_1) (F.L.door_1_cls_speed_t2) (L.S.Timegap) * - (S.L.door_1) {else} (L.L.doorSpeed_1) abs 0.05 > (L.L.door_1) 1 < || (L.L.doorTarget_1) && {if} (L.L.door_1) (L.L.door_1) (F.L.door_1_opn_speed_t2) (L.S.Timegap) * + (S.L.door_1) 0 (S.L.doortimer1) 0 (S.L.trigger_antirepeat1) {else} 0 (S.L.doorSpeed_1) {endif} {endif} (L.L.doortimer1) (L.L.tuerverzoegerung_var) = (L.L.doortimer1) 0 > && {if} (L.L.trigger_antirepeat1) 1 + (S.L.trigger_antirepeat1) (L.L.trigger_antirepeat1) 1 = {if} (T.L.ev_doortriggerclose_1_t2) 1 (S.L.drzwi1_zamkniete) {endif} {endif} (L.L.door_1) 1 > {if} 1 (S.L.door_1) (L.L.doorSpeed_1) /-/ (L.L.doorRefl_1) * (S.L.doorSpeed_1) {else} (L.L.door_1) 0 < {if} 0 (S.L.door_1) (L.L.doorSpeed_1) /-/ (L.L.doorRefl_1) * (S.L.doorSpeed_1) {endif} {endif} {end} {macro:DoorAftCalc} (L.L.bremse_halte_sw) ! (L.L.door_20h_sw) ! && (L.L.door_0) 0 = && (L.L.door_1) 0 = && (L.L.door_3) 0 = && (L.L.door_5) 0 = && (L.L.pandus_2_mode) ! && (L.L.light_timer2) 1 > && (L.L.light_timer3) 1 > && (L.L.elec_busbar_main) ! || (L.L.bremse_halte) && (L.L.throttle) 0.1 > && ' (L.L.kneel_timer) 0 = && (L.L.CG_active) ! && {if} 0 (S.L.bremse_halte) (S.L.doorMidLastOpen) (S.L.doorAftLastOpen) (T.L.ev_haltebremse_aus) {endif} (L.L.fotokomorka) (L.L.drzwi) 2 = || {if} 'odliczanie foto drzwi 1 (L.L.door01_countdown) 1 > (L.L.door01_countdown) 7 < && {if} (L.L.door01_countdown) (L.S.Timegap) 1 * - (S.L.door01_countdown) {else} (L.L.door01_countdown) 1 < {if} 0 (S.L.door01_countdown) {endif} {endif} 'Zamykanie drzwi 1: (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > (L.L.zamykanie_door_1) 1 = (L.L.zamykanie_door_0) 1 = || && ' (L.L.door_1) 0.9 > ' (L.L.door_0) 0.9 > || && (L.L.door01_countdown) 0.1 < && (L.L.zamykanie_door_0) 1 = (L.L.zamykanie_door_1) 1 = || (L.L.Foto1_off) && || {if} (L.L.exit1_lichtschranke) ! (L.L.Foto1_off) || {if} 0 (S.L.zamykanie_door_0) (S.L.zamykanie_door_1) (S.L.Foto1_off_timer) (L.L.tuerverzoegerung_var) 0 > (L.L.door_0) 1 = (L.L.door_1) 1 = || && {if} (L.L.tuersperre_l_sw) (L.L.tuersperre_r_sw) || ! (L.L.alarm_przy_polowce) || {if} (L.L.bez_sygnalu_ostrzegawczego_drzwi) ! {if} (T.L.ev_doorwarn1) {endif} 1 (S.L.doorwarn_1) {endif} {else} (T.L.ev_doortriggerclose_0_t2) (T.L.ev_doortriggerclose_1_t2) 1 (S.L.drzwi1_zamkniete) {endif} (C.L.door_druckluft) {if} (L.L.bremse_p_Tank04) 100000 - 0.96 * 100000 + (S.L.bremse_p_Tank04) {endif} {endif} {endif} 'dzia³anie foto 1 (L.L.exit1_lichtschranke) (L.L.door01_countdown) 8 < && (L.L.Foto1_off) ! && {if} 6 (S.L.door01_countdown) {endif} 'odliczanie foto drzwi 2 (L.L.door23_countdown) 1 > (L.L.door23_countdown) 7 < && {if} (L.L.door23_countdown) (L.S.Timegap) 1 * - (S.L.door23_countdown) {else} (L.L.door23_countdown) 1 < {if} 0 (S.L.door23_countdown) {endif} {endif} 'Zamykanie drzwi 2: (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > (L.L.zamykanie_door_23) 1 = && ' (L.L.door_2) 0.9 > && (L.L.door23_countdown) 0.1 < && (L.L.zamykanie_door_23) 1 = (L.L.Foto2_off) && || {if} (L.L.exit2_lichtschranke) ! (L.L.Foto2_off) || {if} 0 (S.L.zamykanie_door_23) (S.L.Foto2_off_timer) (L.L.tuerverzoegerung_var) 0 > (L.L.door_2) 1 = && {if} (L.L.bez_sygnalu_ostrzegawczego_drzwi) ! {if} (T.L.ev_doorwarn2) {endif} 1 (S.L.doorwarn_2) {else} (T.L.ev_doortriggerclose_2_t3) 1 (S.L.drzwi2_otwarte) {endif} (C.L.door_druckluft) {if} (L.L.bremse_p_Tank04) 100000 - 0.96 * 100000 + (S.L.bremse_p_Tank04) {endif} {endif} {endif} 'dzia³anie foto 2 (L.L.exit2_lichtschranke) (L.L.pandus_2_mode) || (L.L.door23_countdown) 8 < && (L.L.Foto2_off) ! && {if} 6 (S.L.door23_countdown) {endif} 'odliczanie foto drzwi 3 (L.L.door45_countdown) 1 > (L.L.door45_countdown) 7 < && {if} (L.L.door45_countdown) (L.S.Timegap) 1 * - (S.L.door45_countdown) {else} (L.L.door45_countdown) 1 < {if} 0 (S.L.door45_countdown) {endif} {endif} 'Zamykanie drzwi 3: (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > (L.L.zamykanie_door_45) 1 = && ' (L.L.door_4) 0.9 > && (L.L.door45_countdown) 0.1 < && (L.L.zamykanie_door_45) 1 = (L.L.Foto3_off) && || {if} (L.L.exit3_lichtschranke) ! (L.L.Foto3_off) || {if} 0 (S.L.zamykanie_door_45) (S.L.Foto3_off_timer) (L.L.tuerverzoegerung_var) 0 > (L.L.door_4) 1 = && {if} (L.L.bez_sygnalu_ostrzegawczego_drzwi) ! {if} (T.L.ev_doorwarn3) {endif} 1 (S.L.doorwarn_3) {else} (T.L.ev_doortriggerclose_5_t3) 1 (S.L.drzwi3_otwarte) {endif} (C.L.door_druckluft) {if} (L.L.bremse_p_Tank04) 100000 - 0.96 * 100000 + (S.L.bremse_p_Tank04) {endif} {endif} {endif} 'dzia³anie foto 3 (L.L.exit3_lichtschranke) (L.L.door45_countdown) 8 < && (L.L.Foto3_off) ! && {if} 6 (S.L.door45_countdown) {endif} {endif} {end} '-------------------------------------------------------------------------------- '-------------------------------------------------------------------------------- '-------------------------------------------------------------------------------- {macro:Door2_Calc} (L.L.zamykanie_door_23) ! {if} (L.L.door_2) 1 = {if} (L.L.doortimer23) (L.S.Timegap) + (L.L.tuerverzoegerung_var) min (S.L.doortimer23) (L.L.tuerverzoegerung_var) = {if} (L.L.zamykanie_door_23) (S.L.doorTarget_23) {endif} {else} (L.L.zamykanie_door_23) (S.L.doorTarget_23) {endif} {else} (L.L.zamykanie_door_23) (S.L.doorTarget_23) {endif} (L.L.doortimer23) (L.L.tuerverzoegerung_var) = {if} (L.L.zamykanie_door_23) (S.L.doorTarget_23) {endif} (L.L.doorTarget_23) ! (L.L.doorSpeed_2) s0 abs 0.05 > (L.L.door_2) 0 > || && {if} (L.L.door_2) (L.L.door_2) (F.L.door_2_cls_speed_t3) (L.S.Timegap) * - (S.L.door_2) {else} (L.L.doorSpeed_2) abs 0.05 > (L.L.door_2) 1 < || (L.L.doorTarget_23) && {if} (L.L.door_2) (L.L.door_2) (F.L.door_2_opn_speed_t3) (L.S.Timegap) * + (S.L.door_2) 0 (S.L.trigger_antirepeat23) 0 (S.L.doortimer23) {else} 0 (S.L.doorSpeed_2) {endif} {endif} (L.L.doortimer23) (L.L.tuerverzoegerung_var) = (L.L.doortimer23) 0 > && {if} (L.L.trigger_antirepeat23) 1 + (S.L.trigger_antirepeat23) (L.L.trigger_antirepeat23) 1 = {if} (T.L.ev_doortriggerclose_2_t3) 1 (S.L.drzwi2_otwarte) {endif} {endif} (L.L.door_2) 1 > {if} 1 (S.L.door_2) (L.L.doorSpeed_2) /-/ (L.L.doorRefl_2) * (S.L.doorSpeed_2) {else} (L.L.door_2) 0 < {if} 0 (S.L.door_2) (L.L.doorSpeed_2) /-/ (L.L.doorRefl_2) * (S.L.doorSpeed_2) {endif} {endif} {end} {macro:Door3_Calc} (L.L.doorTarget_23) ! (L.L.doorSpeed_3) s0 abs 0.05 > (L.L.door_3) 0 > || && {if} (L.L.door_3) (L.L.door_3) (F.L.door_3_cls_speed_t3) (L.S.Timegap) * - (S.L.door_3) {else} (L.L.doorSpeed_3) abs 0.05 > (L.L.door_3) 1 < || (L.L.doorTarget_23) && {if} (L.L.door_3) (L.L.door_3) (F.L.door_3_opn_speed_t3) (L.S.Timegap) * + (S.L.door_3) {else} 0 (S.L.doorSpeed_3) {endif} {endif} (L.L.door_3) 1 > {if} 1 (S.L.door_3) (L.L.doorSpeed_3) /-/ (L.L.doorRefl_3) * (S.L.doorSpeed_3) {else} (L.L.door_3) 0 < {if} 0 (S.L.door_3) (L.L.doorSpeed_3) /-/ (L.L.doorRefl_3) * (S.L.doorSpeed_3) {endif} {endif} {end} {macro:Door4_Calc} (L.L.zamykanie_door_45) ! {if} (L.L.door_4) 1 = {if} (L.L.doortimer45) (L.S.Timegap) + (L.L.tuerverzoegerung_var) min (S.L.doortimer45) (L.L.tuerverzoegerung_var) = {if} (L.L.zamykanie_door_45) (S.L.doorTarget_45) {endif} {else} (L.L.zamykanie_door_45) (S.L.doorTarget_45) {endif} {else} (L.L.zamykanie_door_45) {if} (L.L.zamykanie_door_45) (S.L.doorTarget_45) {endif} {endif} (L.L.doortimer45) (L.L.tuerverzoegerung_var) = {if} (L.L.zamykanie_door_45) (S.L.doorTarget_45) {endif} (L.L.doorTarget_45) ! (L.L.doorSpeed_4) s0 abs 0.05 > (L.L.door_4) 0 > || && {if} (L.L.door_4) (L.L.door_4) (F.L.door_4_cls_speed_t3) (L.S.Timegap) * - (S.L.door_4) {else} (L.L.doorSpeed_4) abs 0.05 > (L.L.door_4) 1 < || (L.L.doorTarget_45) && {if} (L.L.door_4) (L.L.door_4) (F.L.door_4_opn_speed_t3) (L.S.Timegap) * + (S.L.door_4) 0 (S.L.trigger_antirepeat45) 0 (S.L.doortimer45) {else} 0 (S.L.doorSpeed_4) {endif} {endif} (L.L.doortimer45) (L.L.tuerverzoegerung_var) = (L.L.doortimer45) 0 > && {if} (L.L.trigger_antirepeat45) 1 + (S.L.trigger_antirepeat45) (L.L.trigger_antirepeat45) 1 = {if} (T.L.ev_doortriggerclose_5_t3) 1 (S.L.drzwi3_otwarte) {endif} {endif} (L.L.door_4) 1 > {if} 1 (S.L.door_4) (L.L.doorSpeed_4) /-/ (L.L.doorRefl_4) * (S.L.doorSpeed_4) {else} (L.L.door_4) 0 < {if} 0 (S.L.door_4) (L.L.doorSpeed_4) /-/ (L.L.doorRefl_4) * (S.L.doorSpeed_4) {endif} {endif} {end} {macro:Door5_Calc} (L.L.doorTarget_45) ! (L.L.doorSpeed_5) s0 abs 0.05 > (L.L.door_5) 0 > || && {if} (L.L.door_5) (L.L.door_5) (F.L.door_4_cls_speed_t3) (L.S.Timegap) * - (S.L.door_5) {else} (L.L.doorSpeed_5) abs 0.05 > (L.L.door_5) 1 < || (L.L.doorTarget_45) && {if} (L.L.door_5) (L.L.door_5) (F.L.door_5_opn_speed_t3) (L.S.Timegap) * + (S.L.door_5) {else} 0 (S.L.doorSpeed_5) {endif} {endif} (L.L.door_5) 1 > {if} 1 (S.L.door_5) (L.L.doorSpeed_5) /-/ (L.L.doorRefl_5) * (S.L.doorSpeed_5) {else} (L.L.door_5) 0 < {if} 0 (S.L.door_5) (L.L.doorSpeed_5) /-/ (L.L.doorRefl_5) * (S.L.doorSpeed_5) {endif} {endif} {end} {macro:petla_syczenia} 'Door_0 (L.L.doorTarget_0) 0 = (L.L.door_0) 0.3 > && (L.L.door_0) 0.999 < && {if} 1 (S.L.door_0_zamykanie) 0 (S.L.door_0_hitclose) 0 (S.L.door_0_close) {else} 0 (S.L.door_0_zamykanie) {endif} (L.L.doorTarget_0) 0 = (L.L.door_0) 0.3 < && (L.L.door_0_close) 0 = && {if} (T.L.ev_doorclose_0) 1 (S.L.door_0_close) {endif} (L.L.doorTarget_0) 0 = (L.L.door_0) 0.01 < && (L.L.door_0_hitclose) 0 = && {if} (T.L.ev_doorhitclose_0) 1 (S.L.door_0_hitclose) {endif} (L.L.doorTarget_0) 1 = (L.L.door_0) 0.001 > && (L.L.door_0) 0.9 < && {if} 1 (S.L.door_0_otwieranie) 0 (S.L.door_0_hitopen) {else} 0 (S.L.door_0_otwieranie) {endif} (L.L.doorTarget_0) 1 = (L.L.door_0) 0.9 > && (L.L.door_0_hitopen) 0 = && {if} (T.L.ev_doorhitopen_0) 1 (S.L.door_0_hitopen) {endif} 'Door_1 (L.L.doorTarget_1) 0 = (L.L.door_1) 0.3 > && (L.L.door_1) 0.999 < && {if} 1 (S.L.door_1_zamykanie) 0 (S.L.door_1_hitclose) 0 (S.L.door_1_close) {else} 0 (S.L.door_1_zamykanie) {endif} (L.L.doorTarget_1) 0 = (L.L.door_1) 0.3 < && (L.L.door_1_close) 0 = && {if} (T.L.ev_doorclose_1) 1 (S.L.door_1_close) {endif} (L.L.doorTarget_1) 0 = (L.L.door_1) 0.01 < && (L.L.door_1_hitclose) 0 = && {if} (T.L.ev_doorhitclose_1) 1 (S.L.door_1_hitclose) {endif} (L.L.doorTarget_1) 1 = (L.L.door_1) 0.001 > && (L.L.door_1) 0.9 < && {if} 1 (S.L.door_1_otwieranie) 0 (S.L.door_1_hitopen) {else} 0 (S.L.door_1_otwieranie) {endif} (L.L.doorTarget_1) 1 = (L.L.door_1) 0.9 > && (L.L.door_1_hitopen) 0 = && {if} (T.L.ev_doorhitopen_1) 1 (S.L.door_1_hitopen) {endif} 'Door_23 (L.L.doorTarget_23) 0 = (L.L.door_2) 0.1 > (L.L.door_2) 0.999 < && (L.L.door_3) 0.1 > (L.L.door_3) 0.999 < && || && {if} 1 (S.L.door_23_zamykanie) {else} 0 (S.L.door_23_zamykanie) {endif} (L.L.doorTarget_23) 1 = (L.L.door_2) 0.001 > (L.L.door_2) 0.9 < && (L.L.door_3) 0.001 > (L.L.door_3) 0.9 < && || && {if} 1 (S.L.door_23_otwieranie) {else} 0 (S.L.door_23_otwieranie) {endif} 'Door_2 (L.L.doorTarget_23) 0 = (L.L.door_2) 0.3 > && (L.L.door_2) 0.999 < && {if} 0 (S.L.door_2_hitclose) (S.L.door_2_close) {endif} (L.L.doorTarget_23) 1 = (L.L.door_2) 0.001 > && (L.L.door_2) 0.9 < && {if} 0 (S.L.door_2_hitopen) {endif} (L.L.doorTarget_23) 0 = (L.L.door_2) 0.3 < && (L.L.door_2_close) 0 = && {if} (T.L.ev_doorclose_2) 1 (S.L.door_2_close) {endif} (L.L.doorTarget_23) 0 = (L.L.door_2) 0.01 < && (L.L.door_2_hitclose) 0 = && {if} (T.L.ev_doorhitclose_2) 1 (S.L.door_2_hitclose) {endif} (L.L.doorTarget_23) 1 = (L.L.door_2) 0.9 > && (L.L.door_2_hitopen) 0 = && {if} (T.L.ev_doorhitopen_2) 1 (S.L.door_2_hitopen) {endif} 'Door_3 (L.L.doorTarget_23) 0 = (L.L.door_3) 0.3 > && (L.L.door_3) 0.999 < && {if} 0 (S.L.door_3_hitclose) (S.L.door_3_close) {endif} (L.L.doorTarget_23) 1 = (L.L.door_3) 0.001 > && (L.L.door_3) 0.9 < && {if} 0 (S.L.door_3_hitopen) {endif} (L.L.doorTarget_23) 0 = (L.L.door_3) 0.3 < && (L.L.door_3_close) 0 = && {if} (T.L.ev_doorclose_3) 1 (S.L.door_3_close) {endif} (L.L.doorTarget_23) 0 = (L.L.door_3) 0.01 < && (L.L.door_3_hitclose) 0 = && {if} (T.L.ev_doorhitclose_3) 1 (S.L.door_3_hitclose) {endif} (L.L.doorTarget_23) 1 = (L.L.door_3) 0.9 > && (L.L.door_3_hitopen) 0 = && {if} (T.L.ev_doorhitopen_3) 1 (S.L.door_3_hitopen) {endif} 'Door_45 (L.L.doorTarget_45) 0 = (L.L.door_4) 0.1 > (L.L.door_4) 0.999 < && (L.L.door_5) 0.1 > (L.L.door_5) 0.999 < && || && {if} 1 (S.L.door_45_zamykanie) {else} 0 (S.L.door_45_zamykanie) {endif} (L.L.doorTarget_45) 1 = (L.L.door_4) 0.001 > (L.L.door_4) 0.9 < && (L.L.door_5) 0.001 > (L.L.door_5) 0.9 < && || && {if} 1 (S.L.door_45_otwieranie) {else} 0 (S.L.door_45_otwieranie) {endif} 'Door_4 (L.L.doorTarget_45) 0 = (L.L.door_4) 0.3 > && (L.L.door_4) 0.999 < && {if} 0 (S.L.door_4_hitclose) (S.L.door_4_close) {endif} (L.L.doorTarget_45) 1 = (L.L.door_4) 0.001 > && (L.L.door_4) 0.9 < && {if} 0 (S.L.door_4_hitopen) {endif} (L.L.doorTarget_45) 0 = (L.L.door_4) 0.3 < && (L.L.door_4_close) 0 = && {if} (T.L.ev_doorclose_4) 1 (S.L.door_4_close) {endif} (L.L.doorTarget_45) 0 = (L.L.door_4) 0.01 < && (L.L.door_4_hitclose) 0 = && {if} (T.L.ev_doorhitclose_4) 1 (S.L.door_4_hitclose) {endif} (L.L.doorTarget_45) 1 = (L.L.door_4) 0.9 > && (L.L.door_4_hitopen) 0 = && {if} (T.L.ev_doorhitopen_4) 1 (S.L.door_4_hitopen) {endif} 'Door_5 (L.L.doorTarget_45) 0 = (L.L.door_5) 0.3 > && (L.L.door_5) 0.999 < && {if} 0 (S.L.door_5_hitclose) (S.L.door_5_close) {endif} (L.L.doorTarget_45) 1 = (L.L.door_5) 0.001 > && (L.L.door_5) 0.9 < && {if} 0 (S.L.door_5_hitopen) {endif} (L.L.doorTarget_45) 0 = (L.L.door_5) 0.3 < && (L.L.door_5_close) 0 = && {if} (T.L.ev_doorclose_5) 1 (S.L.door_5_close) {endif} (L.L.doorTarget_45) 0 = (L.L.door_5) 0.01 < && (L.L.door_5_hitclose) 0 = && {if} (T.L.ev_doorhitclose_5) 1 (S.L.door_5_hitclose) {endif} (L.L.doorTarget_45) 1 = (L.L.door_5) 0.9 > && (L.L.door_5_hitopen) 0 = && {if} (T.L.ev_doorhitopen_5) 1 (S.L.door_5_hitopen) {endif} {end} {macro:trg_bus_doorfront0} (L.L.doorTarget_0) (L.L.velocity) 0.1 < || (L.L.vdv_error_door_active) ! && {if} (L.L.zamykanie_door_0) ! (S.L.zamykanie_door_0) {if} (T.L.ev_doortriggeropen_0_t2) 0 (S.L.drzwi1_zamkniete) 8 (S.L.door01_countdown) {else} (L.L.tuerverzoegerung_var) 0 > (L.L.door_0) 1 = && {if} (L.L.tuersperre_l_sw) (L.L.tuersperre_r_sw) || ! (L.L.alarm_przy_polowce) || {if} (L.L.bez_sygnalu_ostrzegawczego_drzwi) ! {if} (T.L.ev_doorwarn1) {endif} 1 (S.L.doorwarn_1) {endif} {else} (T.L.ev_doortriggerclose_0_t2) 1 (S.L.drzwi1_zamkniete) {endif} {endif} (C.L.door_druckluft) {if} (L.L.bremse_p_Tank04) 100000 - 0.98 * 100000 + (S.L.bremse_p_Tank04) {endif} {endif} (L.L.tuersperre_l_sw) (L.L.tuersperre_r_sw) || ! (L.L.alarm_przy_polowce) ! && {if} (L.L.tuerverzoegerung_var) (S.L.doortimer0) {endif} {end} {macro:trg_bus_doorfront1} (L.L.doorTarget_1) (L.L.velocity) 0.1 < || (L.L.vdv_error_door_active) ! && {if} (L.L.zamykanie_door_1) ! (S.L.zamykanie_door_1) {if} (T.L.ev_doortriggeropen_1_t2) 0 (S.L.drzwi1_zamkniete) 8 (S.L.door01_countdown) {else} (L.L.tuerverzoegerung_var) 0 > (L.L.door_1) 1 = && {if} (L.L.tuersperre_l_sw) (L.L.tuersperre_r_sw) || ! (L.L.alarm_przy_polowce) || {if} (L.L.bez_sygnalu_ostrzegawczego_drzwi) ! {if} (T.L.ev_doorwarn1) {endif} 1 (S.L.doorwarn_1) {endif} {else} (T.L.ev_doortriggerclose_1_t2) 1 (S.L.drzwi1_zamkniete) {endif} {endif} (C.L.door_druckluft) {if} (L.L.bremse_p_Tank04) 100000 - 0.98 * 100000 + (S.L.bremse_p_Tank04) {endif} {endif} (L.L.tuersperre_l_sw) (L.L.tuersperre_r_sw) || ! (L.L.alarm_przy_polowce) ! && {if} (L.L.tuerverzoegerung_var) (S.L.doortimer1) {endif} {end} {macro:trg_bus_doorback23} (L.L.ramp_door23_locked) ! {if} (L.L.kinderwagensperre) (L.L.doorTarget_23) ! && {if} (L.L.doorTarget_23) (L.L.velocity) 0.1 < || (L.L.elec_busbar_main) && (L.L.vdv_error_door_active) ! && {if} 1 (S.L.zamykanie_door_23) (T.L.ev_doortriggeropen_2_t3) 0 (S.L.drzwi2_otwarte) 8 (S.L.door23_countdown) {endif} {endif} (L.L.kinderwagensperre) ! {if} (L.L.doorTarget_23) (L.L.velocity) 0.1 < || (L.L.elec_busbar_main) && (L.L.vdv_error_door_active) ! && {if} (L.L.zamykanie_door_23) ! (S.L.zamykanie_door_23) {if} (T.L.ev_doortriggeropen_2_t3) 0 (S.L.drzwi2_otwarte) 8 (S.L.door23_countdown) {else} (L.L.tuerverzoegerung_var) 0 > (L.L.door_2) 1 = && {if} (L.L.bez_sygnalu_ostrzegawczego_drzwi) ! {if} (T.L.ev_doorwarn2) {endif} 1 (S.L.doorwarn_2) {else} (T.L.ev_doortriggerclose_2_t3) 1 (S.L.drzwi2_otwarte) 0 (S.L.door23_manual) {endif} {endif} (C.L.door_druckluft) {if} (L.L.bremse_p_Tank04) 100000 - 0.96 * 100000 + (S.L.bremse_p_Tank04) {endif} {endif} {endif} {endif} {end} {macro:trg_bus_doorfront5} (L.L.doorTarget_45) (L.L.velocity) 0.1 < || (L.L.elec_busbar_main) && (L.L.vdv_error_door_active) ! && {if} (L.L.zamykanie_door_45) ! (S.L.zamykanie_door_45) {if} (T.L.ev_doortriggeropen_5_t3) 0 (S.L.drzwi3_otwarte) 8 (S.L.door45_countdown) {else} (L.L.tuerverzoegerung_var) 0 > (L.L.door_4) 1 = && {if} (L.L.bez_sygnalu_ostrzegawczego_drzwi) ! {if} (T.L.ev_doorwarn3) {endif} 1 (S.L.doorwarn_3) {else} (T.L.ev_doortriggerclose_5_t3) 1 (S.L.drzwi3_otwarte) 0 (S.L.door45_manual) {endif} {endif} (C.L.door_druckluft) {if} (L.L.bremse_p_Tank04) 100000 - 0.96 * 100000 + (S.L.bremse_p_Tank04) {endif} {endif} {end} {macro:trg_bus_20h-switch} (L.L.door_20h_sw) ! (S.L.door_20h_sw) (L.L.door_20h_sw) {if} (T.L.ev_haltebremse_sw_an) {else} (T.L.ev_haltebremse_sw_aus) {endif} {end} {macro:trg_bus_dooraft} (L.L.bremse_halte_sw) ! (S.L.bremse_halte_sw) (L.L.bremse_halte_sw) {if} (T.L.ev_haltebremse_sw_an) {else} (T.L.ev_haltebremse_sw_aus) {endif} {end}