
Türfreigabe-Schalter funktioniert nicht mehr
- fif_fabian
- Erledigt
Als Gast kannst du nur Inhalte in deiner ausgewählten Sprache sehen. Registrierte Nutzer können die Sichtbarkeit anderer Sprachen in ihrem Kontrollzentrum aktivieren, weitere Infos hier.
Alle Themen sind in den Foren mit einer Sprachflagge gekennzeichnet:
-
-
-
-
Denke, das da die Logfile eher nicht benötigt wird.
Lieber einmal zu viel, als einmal zu wenig.
-
gut, selber gelöst. Man sollte die Scripts ausm Bremer nehmen, da die vom Hügelsdorfer ohne TFreigabe sindFunktioniert nach wie vor nicht
Denke, das da die Logfile eher nicht benötigt wird.
Lieber einmal zu viel, als einmal zu wenig.
Also... mittlerweile kenne ich die Errors.... es ist keine einzige Error vorhanden, die Warnings haben auch nichts mit Schaltern zutun
-
Schau doch mal, ob der clickspot der gleiche ist, wie im doorscript die Freigabe angesprochen wird.
Müsste im Bremer bremse_halte_sw sein. -
Zitat
[mesh]
VDV\Schalter\Bremen_LC_VDV_Schalter_Door0.o3d
[animparent]
Dashboard_trans
[viewpoint]
3
[mouseevent]
bus_20h-switch
[newanim]
origin_from_mesh
origin_rot_y
90
anim_trans
20h_switch_anim
-0.001
[matl]
buttons.dds
0
[matl_change]
buttons.dds
0
bremse_halte
[matl_item]
[matl_nightmap]
buttons_lm.dds
Also hier mal der Abschnitt in der model.cfg... ich meine nicht die Haltestellenbremse an sich, sondern die Türfreigabe für Tür 3
-
Das ist der Taster für die Haltestellenbremse, dieser Gelbe.
Die Türfreigabe hat bei Mouseevent sowas wie bus_dooraft oder so, aber da bin ich mir nicht ganz sicher.
-
Die Türfreigabe hat bei Mouseevent sowas wie bus_dooraft oder so, aber da bin ich mir nicht ganz sicher.
Huch, ja klar. Hatte nen Denkfehler.
-
Zitat
[mesh]
VDV\Schalter\Bremen_LC_VDV_Schalter_12_up.o3d
[animparent]
Dashboard_trans
[matl_change]
buttons.dds
0
lights_stand
[matl_item]
[matl_nightmap]
buttons_lm.dds
[mouseevent]
bus_dooraft
[newanim]
origin_from_mesh
origin_rot_z
-90
anim_rot
bremse_halte_sw
-10
[mesh]
VDV\Schalter\Bremen_LC_VDV_Schalter_12_down.o3d
[animparent]
Dashboard_trans
[matl_change]
buttons.dds
0
lights_stand
[matl_item]
[matl_nightmap]
buttons_lm.dds
[mouseevent]
bus_dooraft
[newanim]
origin_from_mesh
origin_rot_z
-90
Also, habe den Eintrag in der Model gefunden, was soll ich jetzt nochmal genau überprüfen?
-
Ob im Doorscript auch mit bus_dooraft die Freigabe angesprochen wird. Kann ja sein, dass eine andere Variable verwendet wird. Einfach mal suchen und den Abschnitt hier zeigen.
-
-
Schon wieder nen Denkfehler, ich hatte im Ursprung doch recht mit der Variable "bremse_halte_sw", die die Freigabe steuert...
Also, in der Model.cfg, wird über das Mousevent "bus_dooraft" der Trigger im Dash-Script "trigger:bus_dooraft" ausgelöst, der im Macro "trg_bus_dooraft" dann die Variable "bremse_halte_sw" steuert. Ich denke mal, entweder in der Model-Datei oder im Dash-Script fehlt dir da der Zusammenhang.
-
Zitat
[mouseevent]
cp_Fahrschulschalter
[newanim]
origin_from_mesh
origin_rot_z
-90
anim_rot
lights_sw_fahrschulblinker
-10
[mesh]
VDV\Schalter\Bremen_LC_VDV_Schalter_12_up.o3d
[animparent]
Dashboard_trans
[matl_change]
buttons.dds
0
lights_stand
[matl_item]
[matl_nightmap]
buttons_lm.dds
[mouseevent]
bus_dooraft
[newanim]
origin_from_mesh
origin_rot_z
-90
anim_rot
bremse_halte_sw
-10
[mesh]
VDV\Schalter\Bremen_LC_VDV_Schalter_12_down.o3d
[animparent]
Dashboard_trans
[matl_change]
buttons.dds
0
lights_stand
[matl_item]
[matl_nightmap]
buttons_lm.dds
[mouseevent]
bus_dooraft
[newanim]
origin_from_mesh
origin_rot_z
-90
anim_rot
bremse_halte_sw
-10
Hier mal der Abschnitt aus der Model.cfg
Und hier die door.osc:
Zitat'##############
'Door Script
'##############
'Controls Doors
'(c) 2007-2009 Rüdiger Hülsmann
'(c) 2007-2012 Marcel Kuhnt
'(c) 2011 Markus Rabe
'Script Version: 1.1
'Omsi release: 1.0
'Needs:
'- elec
'- articulation
'NrSpecRandom Seed Area:
'301 ... 318
'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 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
'- Markus Rabe 25.02.2011 D92 Schließverhalten der Hintertür und Einstiegsbeleuchtung ans Vorbild angepasst
'- Markus Rabe 27.02.2011 linker Flügel Vordertür: Abfangeinrichtung eingebaut
'- Marcel Kuhnt 29.06.2011 Integration in Standard-Doorscript
'- Marcel Kuhnt 07.07.2011 Druckluftsimulation inkl. Dämpfer
'- Marcel Kuhnt 09.07.2011 Manuelles Öffnen/Schließen
'- Marcel Kuhnt 10.07.2011 Manuelles Öffnen/Schließen optimiert
'- Marcel Kuhnt 10.07.2011 Mit westdeutscher Türsteuerung versehen und für O305 erweitert
'- Marcel Kuhnt 10.09.2011 Entriegelte Türen => Leuchtende Türlichter
'- Marcel Kuhnt 10.09.2011 Unterschiedliche Dämpfereinstellungen je Türflügel möglich
'- Marcel Kuhnt 09.07.2012 Anpassung an neue Busbar-Logik
'- Marcel Kuhnt 30.10.2012 Mausbewegungsrichtung beim manuellen Bewegen angepasst
'- Marcel Kuhnt 01.11.2012 Türentriegelung jetzt auch für E-Türen
'- Marcel Kuhnt 01.11.2012 E-Türen generieren Leitwert
'- Marcel Kuhnt 02.11.2012 Nach E-Türentriegelungsrücknahme verharren die Türen
'- Marcel Kuhnt 02.11.2012 Dreitürer
'- Marcel Kuhnt 04.11.2012 Türvariation fester Wagennummer zugeordnet
'- Marcel Kuhnt 04.11.2012 Türanforderung mit neuen Variablen
'- Rüdiger Hülsmann 18.11.2012 Zwangs-Haltestellenbremse durch Knickschutz
'- Marcel Kuhnt 16.12.2012 Haltewunsch-Abschaltung durch Vordertür konstantenabhängig
'- Marcel Kuhnt 08.01.2013 Je nach Konstante langsam aufbauender Druck erst nach Türtasterbetätigung nach Deaktivierung der Türentriegelung
'- Marcel Kuhnt 09.01.2013 20h-Schalter funktioniert jetzt auch in Verbindung mit SD-Hstbrems-Sperr-Logik
'- Marcel Kuhnt 09.01.2013 Türleuchten sind jetzt im Lights-Script
'- Marcel Kuhnt 09.01.2013 Außentürtaster nur bei eingelegter Haltestellenbremse wirksam
'- Marcel Kuhnt 09.01.2013 Reversierende Türen bei weggenommener Haltestellenbremse korrigiert
'- Marcel Kuhnt 12.01.2013 Außenelemente korrekt angesteuert (Hst-Schalter + Hst-Bremse)
'- Marcel Kuhnt 13.01.2013 Wagen-Hält-Zeichen erlischt bei Öffnen des rechten vorderen Türflügels mit 20h-Schalter
'- Marcel Kuhnt 14.01.2013 Türaußentaster werden auch von Fahrgästen benutzt
'- Rüdiger Hülsmann 28.10.2013 "needs stopbrake" function debugged
'- Rüdiger Hülsmann 29.10.2013 Keine Freigabe der Haltestellenbremse bei aktiviertem Kneeling
'--------------------------------------------------------------------------------
'Zu den Variablen doorEntriegelung_doorActive_01 und doorEntriegelung_doorActive_23:
'Bei Elektrotüren sind die 0, wenn die jeweilige Elektrotür noch entriegelt und in undefinierbarem Zustand ist,
'1, wenn die Tür normal aktiv ist. Bei Drucklufttüren ist sie wiederum 1 im Normalzustand, von 0 bis 1 baut sich
'ggf. der Druck nach erstmaligem Betätigen auf, bei -1 wartet sie auf erstmalige Betätigung und bei -2 ist sie
'drucklos
{trigger:cp_tuersperre}
(L.L.tuersperre_sw) ! (S.L.tuersperre_sw)
(L.L.tuersperre_sw)
{if}
(T.L.ev_VDV_on)
{else}
(T.L.ev_VDV_off)
{endif}
{end}
{trigger:bus_doorfront0}
1 (S.L.cockpit_tuertaster1)
1 (S.L.cockpit_tuertaster1_frame)
(T.L.ev_tuertaster_ein)
{end}
{trigger:bus_doorfront0_off}
0 (S.L.cockpit_tuertaster1)
(T.L.ev_tuertaster_aus)
{end}
{trigger:bus_doorfront0_external}
(L.L.elec_busbar_avail) (C.L.elec_busbar_minV) >
(L.L.bremse_p_tank04) 550000 > &&
{if}
(M.L.trg_bus_doorfront0)
(M.L.trg_bus_doorfront1)
{endif}
{end}
{trigger:bus_doorfront1}
1 (S.L.cockpit_tuertaster2)
1 (S.L.cockpit_tuertaster2_frame)
(T.L.ev_tuertaster_ein)
{end}
{trigger:bus_doorfront1_off}
0 (S.L.cockpit_tuertaster2)
(T.L.ev_tuertaster_aus)
{end}
{trigger:bus_doorfront1_external}
(L.L.bremse_halte)
{if}
1 (S.L.cockpit_tuertaster2_frame)
{endif}
{end}
{trigger:bus_doorfront1_lock}
'Doorfront1-Verriegelung: Funktioniert nur, wenn der Türflügel auch zu ist:
(L.L.door_1) 0.05 <
{if}
(L.L.door_1_locked) ! (S.L.door_1_locked)
{if}
(T.L.ev_doorlock1_on)
{else}
(T.L.ev_doorlock1_off)
{endif}
{endif}
{end}
{trigger:bus_20h-switch}
1 (S.L.20h_switch_anim)
1 (S.L.20h_switch_pressed)
{end}
{trigger:bus_20h-switch_off}
0 (S.L.20h_switch_anim)
{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:door_haltewunsch_2}
1 (S.L.haltewunsch_2) (S.L.door_haltewunsch_knopfdruck_2)
{end}
{trigger:door_haltewunsch_2_off}
0 (S.L.door_haltewunsch_knopfdruck_2)
{end}
{trigger:door_kinderwagenwunsch}
(L.L.door_freigabe) (L.L.door_handsteuerung) ! &&
{if}
1 (S.L.door_kinderwagenwunsch)
{endif}
{end}
{trigger:door0_drag}
(L.S.mouse_y) (L.S.mouse_x) + 20 / (S.L.doorDragAcc_0)
{end}
{trigger:door1_drag}
(L.S.mouse_y) (L.S.mouse_x) - 20 / (S.L.doorDragAcc_1)
{end}
{trigger:door2_drag}
(L.S.mouse_y) (L.S.mouse_x) + 20 / (S.L.doorDragAcc_2)
{end}
{trigger:door3_drag}
(L.S.mouse_y) (L.S.mouse_x) - 20 / (S.L.doorDragAcc_3)
{end}
{trigger:door4_drag}
(L.S.mouse_y) (L.S.mouse_x) + 20 / (S.L.doorDragAcc_4)
{end}
{trigger:door5_drag}
(L.S.mouse_y) (L.S.mouse_x) - 20 / (S.L.doorDragAcc_5)
{end}
{trigger:cp_doorEntriegelung_01}
(L.L.doorEntriegelung_01) ! (S.L.doorEntriegelung_01)
{if}
(T.L.ev_doorEntriegelung_01_on)
{else}
(T.L.ev_doorEntriegelung_01_off)
(L.L.bremse_p_Tank04) 100000 - 0.94 * 100000 + (S.L.bremse_p_Tank04)
{endif}
{end}
{trigger:cp_doorEntriegelung_23}
(L.L.doorEntriegelung_23) ! (S.L.doorEntriegelung_23)
{if}
(T.L.ev_doorEntriegelung_23_on)
{else}
(T.L.ev_doorEntriegelung_23_off)
(L.L.bremse_p_Tank04) 100000 - 0.94 * 100000 + (S.L.bremse_p_Tank04)
{endif}
{end}
{trigger:cp_doorEntriegelung_45}
(L.L.doorEntriegelung_45) ! (S.L.doorEntriegelung_45)
{if}
(T.L.ev_doorEntriegelung_45_on)
{else}
(T.L.ev_doorEntriegelung_45_off)
(L.L.bremse_p_Tank04) 100000 - 0.94 * 100000 + (S.L.bremse_p_Tank04)
{endif}
{end}
{macro:Door_Init}
(L.L.vis_doortype_v_int) 2 =
{if}
0.5 (C.L.door_acc_var) * (C.L.fdoor_acc_schwenk) + (S.L.doorAcc_0)
0.5 (C.L.door_acc_var) * (C.L.fdoor_acc_schwenk) + (S.L.doorAcc_1)
0.5 (C.L.door_maxspeed_var) * (C.L.fdoor_maxspeed_schwenk) + (S.L.doorMaxSpeed_0_norm)
0.5 (C.L.door_maxspeed_var) * (C.L.fdoor_maxspeed_schwenk) + (S.L.doorMaxSpeed_1_norm)
0.5 (C.L.door0_damper_schwenk) * (S.L.doorDamper_0_kennwert)
0.5 (C.L.door1_damper_schwenk) * (S.L.doorDamper_1_kennwert)
{else}
301 (M.V.NrSpecRandom) 2 * 1 - (C.L.door_acc_var) * (C.L.fdoor_acc) + (S.L.doorAcc_0)
302 (M.V.NrSpecRandom) 2 * 1 - (C.L.door_acc_var) * (C.L.fdoor_acc) + (S.L.doorAcc_1)
307 (M.V.NrSpecRandom) 2 * 1 - (C.L.door_maxspeed_var) * (C.L.fdoor_maxspeed) + (S.L.doorMaxSpeed_0_norm)
308 (M.V.NrSpecRandom) 2 * 1 - (C.L.door_maxspeed_var) * (C.L.fdoor_maxspeed) + (S.L.doorMaxSpeed_1_norm)
313 (M.V.NrSpecRandom) 0.9 * 0.1 + (C.L.door0_damper) * (S.L.doorDamper_0_kennwert)
314 (M.V.NrSpecRandom) 0.9 * 0.1 + (C.L.door1_damper) * (S.L.doorDamper_1_kennwert)
{endif}
(L.L.vis_doortype_m_int) 2 =
{if}
0.5 (C.L.door_acc_var) * (C.L.mdoor_acc_schwenk) + (S.L.doorAcc_2)
0.5 (C.L.door_acc_var) * (C.L.mdoor_acc_schwenk) + (S.L.doorAcc_3)
0.5 (C.L.door_maxspeed_var) * (C.L.mdoor_maxspeed_schwenk) + (S.L.doorMaxSpeed_2_norm)
0.5 (C.L.door_maxspeed_var) * (C.L.mdoor_maxspeed_schwenk) + (S.L.doorMaxSpeed_3_norm)
0.5 (C.L.door2_damper_schwenk) * (S.L.doorDamper_2_kennwert)
0.5 (C.L.door3_damper_schwenk) * (S.L.doorDamper_3_kennwert)
{else}
303 (M.V.NrSpecRandom) 2 * 1 - (C.L.door_acc_var) * (C.L.mdoor_acc) + (S.L.doorAcc_2)
304 (M.V.NrSpecRandom) 2 * 1 - (C.L.door_acc_var) * (C.L.mdoor_acc) + (S.L.doorAcc_3)
309 (M.V.NrSpecRandom) 2 * 1 - (C.L.door_maxspeed_var) * (C.L.mdoor_maxspeed) + (S.L.doorMaxSpeed_2_norm)
310 (M.V.NrSpecRandom) 2 * 1 - (C.L.door_maxspeed_var) * (C.L.mdoor_maxspeed) + (S.L.doorMaxSpeed_3_norm)
315 (M.V.NrSpecRandom) 0.9 * 0.1 + (C.L.door2_damper) * (S.L.doorDamper_2_kennwert)
316 (M.V.NrSpecRandom) 0.9 * 0.1 + (C.L.door3_damper) * (S.L.doorDamper_3_kennwert)
{endif}
(L.L.vis_doortype_h_int) 2 =
{if}
0.5 (C.L.door_acc_var) * (C.L.bdoor_acc_schwenk) + (S.L.doorAcc_4)
0.5 (C.L.door_acc_var) * (C.L.bdoor_acc_schwenk) + (S.L.doorAcc_5)
0.5 (C.L.door_maxspeed_var) * (C.L.bdoor_maxspeed_schwenk) + (S.L.doorMaxSpeed_4_norm)
0.5 (C.L.door_maxspeed_var) * (C.L.bdoor_maxspeed_schwenk) + (S.L.doorMaxSpeed_5_norm)
0.5 (C.L.door4_damper_schwenk) * (S.L.doorDamper_4_kennwert)
0.5 (C.L.door5_damper_schwenk) * (S.L.doorDamper_5_kennwert)
{else}
305 (M.V.NrSpecRandom) 2 * 1 - (C.L.door_acc_var) * (C.L.bdoor_acc) + (S.L.doorAcc_4)
306 (M.V.NrSpecRandom) 2 * 1 - (C.L.door_acc_var) * (C.L.bdoor_acc) + (S.L.doorAcc_5)
311 (M.V.NrSpecRandom) 2 * 1 - (C.L.door_maxspeed_var) * (C.L.bdoor_maxspeed) + (S.L.doorMaxSpeed_4_norm)
312 (M.V.NrSpecRandom) 2 * 1 - (C.L.door_maxspeed_var) * (C.L.bdoor_maxspeed) + (S.L.doorMaxSpeed_5_norm)
317 (M.V.NrSpecRandom) 0.9 * 0.1 + (C.L.door4_damper) * (S.L.doorDamper_4_kennwert)
318 (M.V.NrSpecRandom) 0.9 * 0.1 + (C.L.door5_damper) * (S.L.doorDamper_5_kennwert)
{endif}
(L.L.vis_doortype_v_int) 2 =
{if}
(C.L.door_refl_schwenk) (S.L.doorRefl_0)
(C.L.door_refl_schwenk) (S.L.doorRefl_1)
{else}
(C.L.door_refl) (S.L.doorRefl_0)
(C.L.door_refl) (S.L.doorRefl_1)
{endif}
(L.L.vis_doortype_m_int) 2 =
{if}
(C.L.door_refl_schwenk) (S.L.doorRefl_2)
(C.L.door_refl_schwenk) (S.L.doorRefl_3)
{else}
(C.L.door_refl) (S.L.doorRefl_2)
(C.L.door_refl) (S.L.doorRefl_3)
{endif}
(L.L.vis_doortype_h_int) 2 =
{if}
(C.L.door_refl_schwenk) (S.L.doorRefl_4)
(C.L.door_refl_schwenk) (S.L.doorRefl_5)
{else}
(C.L.door_refl) (S.L.doorRefl_4)
(C.L.door_refl) (S.L.doorRefl_5)
{endif}
0 (S.L.door0_warten)
0 (S.L.door0_umkehr)
0 (S.L.door0_physblock)
1 (S.L.door1_physblock)
0
(S.L.door_pressure_open_0)
(S.L.door_pressure_close_0)
(S.L.door_pressure_open_1)
(S.L.door_pressure_close_1)
(S.L.door_pressure_open_2)
(S.L.door_pressure_close_2)
(S.L.door_pressure_open_3)
(S.L.door_pressure_close_3)
(S.L.door_pressure_open_4)
(S.L.door_pressure_close_4)
(S.L.door_pressure_open_5)
(S.L.door_pressure_close_5)
(S.L.doorDamper_0) (S.L.doorDamper_1) (S.L.doorDamper_2) (S.L.doorDamper_3) (S.L.doorDamper_4) (S.L.doorDamper_5)
1 (S.L.doorEntriegelung_doorActive_01)
1 (S.L.doorEntriegelung_doorActive_23)
1 (S.L.doorEntriegelung_doorActive_45)
0 (S.L.cockpit_tuertaster1_frame) (S.L.cockpit_tuertaster2_frame)
{end}
{macro:Door_Frame}
(L.L.notheben_armed)
(L.L.kneel_allowed) &&
{if}
(L.L.door_0) 0.95 >
{if}
(M.L.trg_bus_doorfront0)
{endif}
(L.L.door_1) 0.95 >
{if}
(M.L.trg_bus_doorfront1)
{endif}
(L.L.door_2) 0.95 >
(L.L.door_3) 0.95 > &&
{if}
(M.L.trg_bus_dooraft23)
{endif}
(L.L.door_4) 0.95 >
(L.L.door_5) 0.95 > &&
{if}
(M.L.trg_bus_dooraft45)
{endif}
0 (S.L.notheben_armed)
0 (S.L.kneeling_armed)
1 (S.L.notheben_initialized)
{endif}
(L.L.elec_busbar_main) (C.L.elec_busbar_minV) >
(L.L.bremse_p_tank04) 550000 > &&
{if}
(L.L.velocity) 1 <
(L.L.cockpit_tuertaster1) &&
(L.L.cockpit_tuertaster1_frame) &&
(L.L.lift_pos_x) 0.01 < &&
{if}
1 (S.L.bremse_halte)
(L.L.door_0) 0.2 <
(L.L.door_0) 0.8 >
{if}
(M.L.trg_bus_doorfront0)
{endif}
(C.L.door_ManBackDoorFrontDoorCombined)
{if}
(L.L.tuersperre) 0 =
{if}
(L.L.door_0) 0.2 <
(L.L.door_0) 0.8 >
{if}
(M.L.trg_bus_doorfront1)
{endif}
{endif}
{endif}
0 (S.L.cockpit_tuertaster1_frame)
{endif}
(L.L.velocity) 1 <
(L.L.cockpit_tuertaster2) &&
(L.L.cockpit_tuertaster2_frame) &&
{if}
1 (S.L.bremse_halte)
(C.L.door_ManBackDoorFrontDoorCombined)
{if}
(L.L.door_2) 0.2 <
(L.L.door_3) 0.8 >
{if}
(M.L.trg_bus_dooraft23)
{endif}
{else}
(L.L.door_2) 0.2 <
(L.L.door_3) 0.8 >
{if}
(M.L.trg_bus_doorfront1)
{endif}
{endif}
0 (S.L.cockpit_tuertaster2_frame)
{endif}
{endif}
'Anforderung mit neuen Variablen:
(L.L.haltewunsch)
(L.L.PAX_Exit0_Req)
(L.L.PAX_Exit1_Req)
(S.L.haltewunsch)
(L.L.haltewunsch_2)
(L.L.PAX_Exit2_Req)
(L.L.PAX_Exit3_Req)
(S.L.haltewunsch_2)
'Bei E-Türen die "active"-Variable der Entriegelung nachführen:
(L.L.vis_doortype_v_int) !
{if}
(L.L.doorEntriegelung_01) (L.L.doorEntriegelung_E_active_01) s0 (L.L.elec_busbar_avail) (C.L.elec_busbar_minV) > ! &&
s1
l0 = !
{if}
l1
{if}
(T.L.ev_doorEntriegelung_01_active_on)
0 (S.L.doorEntriegelung_doorActive_01)
{else}
(T.L.ev_doorEntriegelung_01_active_off)
{endif}
{endif}
l1 (S.L.doorEntriegelung_E_active_01)
{endif}
(L.L.vis_doortype_m_int) !
{if}
(L.L.doorEntriegelung_23) (L.L.doorEntriegelung_E_active_23) s0 (L.L.elec_busbar_avail) (C.L.elec_busbar_minV) > ! &&
s1
l0 = !
{if}
l1
{if}
(T.L.ev_doorEntriegelung_23_active_on)
0 (S.L.doorEntriegelung_doorActive_23)
{else}
(T.L.ev_doorEntriegelung_23_active_off)
{endif}
{endif}
l1 (S.L.doorEntriegelung_E_active_23)
{endif}
(L.L.vis_doortype_h_int) !
{if}
(L.L.doorEntriegelung_45) (L.L.doorEntriegelung_E_active_45) s0 (L.L.elec_busbar_avail) (C.L.elec_busbar_minV) > ! &&
s1
l0 = !
{if}
l1
{if}
(T.L.ev_doorEntriegelung_45_active_on)
0 (S.L.doorEntriegelung_doorActive_45)
{else}
(T.L.ev_doorEntriegelung_45_active_off)
{endif}
{endif}
l1 (S.L.doorEntriegelung_E_active_45)
{endif}
(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)
0
(S.L.doorDragAcc_0)
(S.L.doorDragAcc_1)
(S.L.doorDragAcc_2)
(S.L.doorDragAcc_3)
(S.L.doorDragAcc_4)
(S.L.doorDragAcc_5)
(L.S.Time) 14400 >
(L.S.Time) 72000 < &&
{if}
(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_Entry2_Open) (S.L.PAX_Exit0_Open)
(L.L.door_3) 0.9 > (S.L.PAX_Entry3_Open) (S.L.PAX_Exit1_Open)
(L.L.door_4) 0.9 > (S.L.PAX_Entry4_Open) (S.L.PAX_Exit2_Open)
(L.L.door_5) 0.9 > (S.L.PAX_Entry5_Open) (S.L.PAX_Exit3_Open)
{else}
(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)
{endif}
' "Dauerfeuer"-Haltewunsch über Kinderwagenschalter (macht genau dasselbe wie der "trigger:int_haltewunsch"):
(L.L.door_handsteuerung) (L.L.door_haltewunsch_knopfdruck)
{if}
1 (S.L.haltewunsch)
{endif}
(L.L.door_handsteuerung) (L.L.door_haltewunsch_knopfdruck_2)
{if}
1 (S.L.haltewunsch_2)
{endif}
' Außentürtaster werden von Fahrgästen benutzt:
(L.L.door_freigabe) (L.L.PAX_Entry2_Req) (L.L.PAX_Entry3_Req)
&&
{if}
1 (S.L.haltewunsch)
{endif}
(L.L.door_freigabe) (L.L.PAX_Entry4_Req) (L.L.PAX_Entry5_Req)
&&
{if}
1 (S.L.haltewunsch_2)
{endif}
' Setzen der Haltestellenbremse erst bei Stillstand des Busses:
(L.L.bremse_halte_sw) (L.L.20h_switch_pressed) (L.L.door_hstbremse_knickschutz)
(L.L.bremse_halte) ! (L.L.Velocity) (C.L.Door_Bremse_Halte_MaxKMH) < && &&
{if}
(L.L.elec_busbar_main) (C.L.elec_busbar_minV) >
{if}
(T.L.ev_haltebremse_an)
1 (S.L.bremse_halte)
{endif}
{endif}
' Anhand dieser Bedingungen kann nun die Automatiktür geöffnet werden:
(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_4) 0.2 < &&
(L.L.elec_busbar_main) (C.L.elec_busbar_minV) > &&
{if}
1 s0
{else}
0 s0 (S.L.haltewunsch) (S.L.zufall_kinderwagenwunsch) (S.L.door_kinderwagenwunsch)
{endif}
(L.L.haltewunsch_2)
(L.L.door_0) 0.2 < &&
(L.L.door_1) 0.2 < &&
(L.L.door_2) 0.2 < &&
(L.L.door_4) 0.2 < &&
(L.L.elec_busbar_main) (C.L.elec_busbar_minV) > &&
{if}
1 s1
{else}
0 s1 (S.L.haltewunsch_2)
{endif}
l0 l1
(S.L.haltewunschlampe_all)
(L.L.haltewunschlampe_all)
{if}
(L.L.vis_Innenanzeige_int) !
{if}
1 (S.L.haltewunschlampe_innenanzeige)
{else}
0 (S.L.haltewunschlampe_innenanzeige)
{endif}
{else}
0 (S.L.haltewunschlampe_innenanzeige)
{endif}
' Bing:
(L.L.haltewunschlampe_all)
{if}
(L.L.haltewunsch) (L.L.prev_haltewunsch) !
(L.L.haltewunsch_2) (L.L.prev_haltewunsch_2) !
(L.L.elec_busbar_main) (C.L.elec_busbar_minV) > &&
{if}
(T.L.ev_stop)
{endif}
{endif}
(L.L.haltewunsch) (S.L.prev_haltewunsch)
(L.L.haltewunsch_2) (S.L.prev_haltewunsch_2)
' Abfall des Kinderwagenwunsch-Relais bei fehlender Stromversorgung:
(L.L.elec_busbar_main) (C.L.elec_busbar_minV) <
{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.door_kinderwagenwunsch)
{endif}
{endif}
' Beleuchtung der Einstiege
' Ausgelagert in Lights-Script
' Türsperre setzen:
(L.L.door_0) 0 =
(L.L.door_1) 0 = &&
{if}
(L.L.tuersperre_sw) -1 =
{if}
-1 (S.L.tuersperre)
{endif}
(L.L.tuersperre_sw) 0 =
{if}
0 (S.L.tuersperre)
{endif}
(L.L.tuersperre_sw) 1 =
{if}
1 (S.L.tuersperre)
{endif}
{endif}
' Türschließverzögerung
(L.L.doorTarget_23_delayed) !
{if}
(L.L.door_2) 1 =
(L.L.door_3) 1 =
{if}
(L.L.tuer2_piep) (L.S.Timegap) + 1.5 min (S.L.tuer2_piep)
1.5 =
(L.L.vis_doorwarn_int) !
{if}
0 (S.L.doorTarget_23)
{endif}
{else}
0 (S.L.doorTarget_23)
{endif}
{else}
1 (S.L.doorTarget_23)
0 (S.L.tuer2_piep)
{endif}
' in s6 ist die verfügbare Druckmenge:
(L.L.bremse_p_Tank04) 100000 - 850000 / s6
'-------------------------------------------------------------------
' Zunächst die Türentriegelungen:
(L.L.doorEntriegelung_01)
{if}
'Tür ist entlüftet:
-2 (S.L.doorEntriegelung_doorActive_01)
{else}
(C.L.door_safe_reactivating) !
{if}
'Tür steht unter Druck:
1 (S.L.doorEntriegelung_doorActive_01)
{else}
(L.L.doorEntriegelung_doorActive_01) -2 =
{if}
'Tür ist "vorbereitet":
-1 (S.L.doorEntriegelung_doorActive_01)
{endif}
{endif}
{endif}
(L.L.doorEntriegelung_23)
{if}
'Tür ist entlüftet:
-2 (S.L.doorEntriegelung_doorActive_23)
{else}
(C.L.door_safe_reactivating) !
{if}
'Tür steht unter Druck:
1 (S.L.doorEntriegelung_doorActive_23)
{else}
(L.L.doorEntriegelung_doorActive_23) -2 =
{if}
'Tür ist "vorbereitet":
-1 (S.L.doorEntriegelung_doorActive_23)
{endif}
{endif}
{endif}
(L.L.doorEntriegelung_45)
{if}
'Tür ist entlüftet:
-2 (S.L.doorEntriegelung_doorActive_45)
{else}
(C.L.door_safe_reactivating) !
{if}
'Tür steht unter Druck:
1 (S.L.doorEntriegelung_doorActive_45)
{else}
(L.L.doorEntriegelung_doorActive_45) -2 =
{if}
'Tür ist "vorbereitet":
-1 (S.L.doorEntriegelung_doorActive_45)
{endif}
{endif}
{endif}
'-------------------------------------------------------------------
'Druck laaaaangsam aufbauen (sofern nötig):
(L.L.doorEntriegelung_doorActive_01) s1 0 >= l1 0.99 < &&
{if}
1 s0 0.1 s2 s3 (M.L.traegheit) (S.L.doorEntriegelung_doorActive_01)
(L.L.doorEntriegelung_doorActive_01) 0.8 >
{if}
(T.L.ev_doorEntriegelung_01_off_final)
1 (S.L.doorEntriegelung_doorActive_01)
{endif}
{endif}
(L.L.doorEntriegelung_doorActive_23) s1 0 >= l1 0.99 < &&
{if}
1 s0 0.1 s2 s3 (M.L.traegheit) (S.L.doorEntriegelung_doorActive_23)
(L.L.doorEntriegelung_doorActive_23) 0.8 >
{if}
(T.L.ev_doorEntriegelung_23_off_final)
1 (S.L.doorEntriegelung_doorActive_23)
{endif}
{endif}
(L.L.doorEntriegelung_doorActive_45) s1 0 >= l1 0.99 < &&
{if}
1 s0 0.1 s2 s3 (M.L.traegheit) (S.L.doorEntriegelung_doorActive_45)
(L.L.doorEntriegelung_doorActive_45) 0.8 >
{if}
(T.L.ev_doorEntriegelung_45_off_final)
1 (S.L.doorEntriegelung_doorActive_45)
{endif}
{endif}
'-------------------------------------------------------------------
(L.L.doorEntriegelung_doorActive_01) 0 <=
{if}
0 s5
{else}
(L.L.doorTarget_0) ! s5 !
{endif}
(L.L.doorEntriegelung_doorActive_01) l6 * * s0
(L.L.door_pressure_open_0) s1
1 s2 1 s3
(M.L.traegheit) (S.L.door_pressure_open_0)
(L.L.door_pressure_close_0) s1
l5 (L.L.doorEntriegelung_doorActive_01) l6 * * s0
(M.L.traegheit) (S.L.door_pressure_close_0)
'.....................
(L.L.doorEntriegelung_doorActive_01) 0 <=
{if}
0 s5
{else}
(L.L.doorTarget_1) ! s5 !
{endif}
l6 (L.L.doorEntriegelung_doorActive_01) * * s0
(L.L.door_pressure_open_1) s1
1 s2 1 s3
(M.L.traegheit) (S.L.door_pressure_open_1)
(L.L.door_pressure_close_1) s1
l5 (L.L.doorEntriegelung_doorActive_01) l6 * * s0
(M.L.traegheit) (S.L.door_pressure_close_1)
'.....................
(L.L.doorEntriegelung_doorActive_23) 0 <=
{if}
0 s5
{else}
(L.L.doorTarget_23) ! s5 !
{endif}
(L.L.doorEntriegelung_doorActive_23) l6 * * s0
(L.L.door_pressure_open_2) s1
1 s2 1 s3
(M.L.traegheit) (S.L.door_pressure_open_2)
(L.L.door_pressure_close_2) s1
(L.L.doorEntriegelung_doorActive_23) l5 l6 * * s0
(M.L.traegheit) (S.L.door_pressure_close_2)
'.....................
(L.L.doorEntriegelung_doorActive_23) 0 <=
{if}
0 s5
{else}
(L.L.doorTarget_23) ! s5 !
{endif}
(L.L.doorEntriegelung_doorActive_23) l6 * * s0
(L.L.door_pressure_open_3) s1
1 s2 1 s3
(M.L.traegheit) (S.L.door_pressure_open_3)
(L.L.door_pressure_close_3) s1
(L.L.doorEntriegelung_doorActive_23) l5 l6 * * s0
(M.L.traegheit) (S.L.door_pressure_close_3)
'.....................
(L.L.doorEntriegelung_doorActive_45) 0 <=
{if}
0 s5
{else}
(L.L.doorTarget_45) ! s5 !
{endif}
(L.L.doorEntriegelung_doorActive_45) l6 * * s0
(L.L.door_pressure_open_4) s1
1 s2 1 s3
(M.L.traegheit) (S.L.door_pressure_open_4)
(L.L.door_pressure_close_4) s1
(L.L.doorEntriegelung_doorActive_45) l5 l6 * * s0
(M.L.traegheit) (S.L.door_pressure_close_4)
'.....................
(L.L.doorEntriegelung_doorActive_45) 0 <=
{if}
0 s5
{else}
(L.L.doorTarget_45) ! s5 !
{endif}
(L.L.doorEntriegelung_doorActive_45) l6 * * s0
(L.L.door_pressure_open_5) s1
1 s2 1 s3
(M.L.traegheit) (S.L.door_pressure_open_5)
(L.L.door_pressure_close_5) s1
(L.L.doorEntriegelung_doorActive_45) l5 l6 * * s0
(M.L.traegheit) (S.L.door_pressure_close_5)
'.....................
l6 (L.L.doorEntriegelung_doorActive_01) 0 max * (S.L.door_pressure_factor_01)
l6 (L.L.doorEntriegelung_doorActive_23) 0 max * (S.L.door_pressure_factor_23)
l6 (L.L.doorEntriegelung_doorActive_45) 0 max * (S.L.door_pressure_factor_45)
'###############################################################################################
' Dämpferverhalten:
(L.L.vis_doortype_v_int) 2 =
{if}
(L.L.doorSpeed_0) 0 >
{if}
(L.L.door_0) (F.L.damper_f_open_schwenk)
{else}
(L.L.door_0) (F.L.damper_f_close_schwenk)
{endif}
(L.L.doorSpeed_0) * s0
(L.L.doorEntriegelung_01)
{if}
l0
{else}
(L.L.doorDamper_0) s1
3 s2 3 s3
(M.L.traegheit)
{endif}
(S.L.doorDamper_0)
'........................
(L.L.doorSpeed_1) 0 >
{if}
(L.L.door_1) (F.L.damper_f_open_schwenk)
{else}
(L.L.door_1) (F.L.damper_f_close_schwenk)
{endif}
(L.L.doorSpeed_1) * s0
(L.L.doorEntriegelung_01)
{if}
l0
{else}
(L.L.doorDamper_1) s1
3 s2 3 s3
(M.L.traegheit)
{endif}
(S.L.doorDamper_1)
{else}
(L.L.doorSpeed_0) 0 >
{if}
(L.L.door_0) (F.L.damper_f_open)
{else}
(L.L.door_0) (F.L.damper_f_close)
{endif}
(L.L.doorSpeed_0) * s0
(L.L.doorEntriegelung_01)
{if}
l0
{else}
(L.L.doorDamper_0) s1
3 s2 3 s3
(M.L.traegheit)
{endif}
(S.L.doorDamper_0)
'........................
(L.L.doorSpeed_1) 0 >
{if}
(L.L.door_1) (F.L.damper_f_open)
{else}
(L.L.door_1) (F.L.damper_f_close)
{endif}
(L.L.doorSpeed_1) * s0
(L.L.doorEntriegelung_01)
{if}
l0
{else}
(L.L.doorDamper_1) s1
3 s2 3 s3
(M.L.traegheit)
{endif}
(S.L.doorDamper_1)
{endif}
'........................
(L.L.vis_doortype_m_int) 2 =
{if}
(L.L.doorSpeed_2) 0 >
{if}
(L.L.door_2) (F.L.damper_m_open_schwenk)
{else}
(L.L.door_2) (F.L.damper_m_close_schwenk)
{endif}
(L.L.doorSpeed_2) * s0
(L.L.doorEntriegelung_23)
{if}
l0
{else}
(L.L.doorDamper_2) s1
3 s2 3 s3
(M.L.traegheit)
{endif}
(S.L.doorDamper_2)
'........................
(L.L.doorSpeed_3) 0 >
{if}
(L.L.door_3) (F.L.damper_m_open_schwenk)
{else}
(L.L.door_3) (F.L.damper_m_close_schwenk)
{endif}
(L.L.doorSpeed_3) * s0
(L.L.doorEntriegelung_23)
{if}
l0
{else}
(L.L.doorDamper_3) s1
3 s2 3 s3
(M.L.traegheit)
{endif}
(S.L.doorDamper_3)
{else}
(L.L.doorSpeed_2) 0 >
{if}
(L.L.door_2) (F.L.damper_m_open)
{else}
(L.L.door_2) (F.L.damper_m_close)
{endif}
(L.L.doorSpeed_2) * s0
(L.L.doorEntriegelung_23)
{if}
l0
{else}
(L.L.doorDamper_2) s1
3 s2 3 s3
(M.L.traegheit)
{endif}
(S.L.doorDamper_2)
'........................
(L.L.doorSpeed_3) 0 >
{if}
(L.L.door_3) (F.L.damper_m_open)
{else}
(L.L.door_3) (F.L.damper_m_close)
{endif}
(L.L.doorSpeed_3) * s0
(L.L.doorEntriegelung_23)
{if}
l0
{else}
(L.L.doorDamper_3) s1
3 s2 3 s3
(M.L.traegheit)
{endif}
(S.L.doorDamper_3)
{endif}
(L.L.vis_doortype_h_int) 2 =
{if}
(L.L.doorSpeed_4) 0 >
{if}
(L.L.door_4) (F.L.damper_b_open_schwenk)
{else}
(L.L.door_4) (F.L.damper_b_close_schwenk)
{endif}
(L.L.doorSpeed_4) * s0
(L.L.doorEntriegelung_45)
{if}
l0
{else}
(L.L.doorDamper_4) s1
3 s2 3 s3
(M.L.traegheit)
{endif}
(S.L.doorDamper_4)
'........................
(L.L.doorSpeed_5) 0 >
{if}
(L.L.door_5) (F.L.damper_b_open_schwenk)
{else}
(L.L.door_5) (F.L.damper_b_close_schwenk)
{endif}
(L.L.doorSpeed_5) * s0
(L.L.doorEntriegelung_45)
{if}
l0
{else}
(L.L.doorDamper_5) s1
3 s2 3 s3
(M.L.traegheit)
{endif}
(S.L.doorDamper_5)
{else}
(L.L.doorSpeed_4) 0 >
{if}
(L.L.door_4) (F.L.damper_b_open)
{else}
(L.L.door_4) (F.L.damper_b_close)
{endif}
(L.L.doorSpeed_4) * s0
(L.L.doorEntriegelung_45)
{if}
l0
{else}
(L.L.doorDamper_4) s1
3 s2 3 s3
(M.L.traegheit)
{endif}
(S.L.doorDamper_4)
'........................
(L.L.doorSpeed_5) 0 >
{if}
(L.L.door_5) (F.L.damper_b_open)
{else}
(L.L.door_5) (F.L.damper_b_close)
{endif}
(L.L.doorSpeed_5) * s0
(L.L.doorEntriegelung_45)
{if}
l0
{else}
(L.L.doorDamper_5) s1
3 s2 3 s3
(M.L.traegheit)
{endif}
(S.L.doorDamper_5)
{endif}
'###############################################################################################
' Gegenseitiges Blockieren der Türflügel:
' Die jeweilige Tür wird dadurch blockiert, dass ihr Öffnungsgrad kleiner ist als der des anderen Flügels ist, der selbst aber schon fast zu und nicht blockiert sein muss:
(C.L.door_blocking)
{if}
(L.L.door0_physblock)
{if}
(L.L.door_0) (L.L.door_1) (C.L.door_blocking_diff) + < (L.L.door_1) (C.L.door_blocking_area) < && (L.L.door1_physblock) ! && (S.L.door0_physblock)
{else}
(L.L.door_0) (L.L.door_1) < (L.L.door_1) (C.L.door_blocking_area) < && (L.L.door1_physblock) ! && (S.L.door0_physblock)
{endif}
(L.L.door1_physblock)
{if}
(L.L.door_1) (L.L.door_0) (C.L.door_blocking_diff) + < (L.L.door_0) (C.L.door_blocking_area) < && (L.L.door0_physblock) ! && (S.L.door1_physblock)
{else}
(L.L.door_1) (L.L.door_0) < (L.L.door_0) (C.L.door_blocking_area) < && (L.L.door0_physblock) ! && (S.L.door1_physblock)
{endif}
{else}
0 (S.L.door0_physblock) (S.L.door1_physblock)
{endif}
'###############################################################################################
'###############################################################################################
' AI-Ablauf:
(L.L.AI_Scheduled_AtStation) s0 1 =
{if}
(L.L.Velocity) 0.5 <
{if}
1 (S.L.bremse_halte_sw)
(L.L.doorTarget_0) !
{if}
(M.L.trg_bus_doorfront0)
{endif}
(L.L.doorTarget_1) !
{if}
(M.L.trg_bus_doorfront1)
{endif}
(L.L.haltewunsch)
(L.L.PAX_Entry2_Req)
(L.L.PAX_Entry3_Req)
{if}
(L.L.doorTarget_23) !
{if}
(M.L.trg_bus_dooraft23)
{endif}
{endif}
{endif}
{else}
l0 -1 =
{if}
0 (S.L.bremse_halte_sw)
(L.L.doorTarget_0)
{if}
(M.L.trg_bus_doorfront0)
{endif}
(L.L.doorTarget_1)
{if}
(M.L.trg_bus_doorfront1)
{endif}
(L.L.doorTarget_23_delayed)
{if}
(M.L.trg_bus_dooraft23)
{endif}
(L.L.door_0) 0.1 <
(L.L.door_1) 0.1 < &&
(L.L.door_2) 0.1 < &&
(L.L.door_4) 0.1 < &&
{if}
0 (S.L.AI_Scheduled_AtStation)
{endif}
{endif}
{endif}
{end}
'###############################################################################################
' Door Calc Türenpaar 1
'###############################################################################################
{macro:Door0_Calc}
(L.L.vis_doortype_v_int) 2 =
{if}
'Hubverriegelung
(L.L.doorTarget_0)
(L.L.door_0_hub) 1 <= &&
{if}
'Volllaufen lassen über Timegap, Entriegelung
(L.L.door_0_hub) (C.L.door_0_hub_speed) 5 / (L.S.Timegap) * + 1 min (S.L.door_0_hub)
{else}
(L.L.doorTarget_0) !
(L.L.door_0_hub) &&
(L.L.door_0) ! &&
(L.L.door_1) ! &&
{if}
'Volllaufen lassen über Timegap, Verriegelung
(L.L.door_0_hub) (C.L.door_0_hub_speed) 5 / (L.S.Timegap) * - 0 max (S.L.door_0_hub)
{endif}
{endif}
{endif}
(L.L.doorEntriegelung_doorActive_01)
(L.L.doorEntriegelung_01)
{if}
(L.L.doorTarget_0)
{if}
(L.L.vis_doortype_v_int) 1 =
{if}
(L.L.door_0) (F.L.door_0_opn_speed_schiebe) (S.L.doorMaxSpeed_0)
{else}
(L.L.vis_doortype_v_int) 2 =
{if}
(L.L.door_0) (F.L.door_0_opn_speed_schwenk) (S.L.doorMaxSpeed_0)
{else}
(L.L.door_0) (F.L.door_0_opn_speed) (S.L.doorMaxSpeed_0)
{endif}
{endif}
{else}
(L.L.vis_doortype_v_int) 1 =
{if}
(L.L.door_0) (F.L.door_0_cls_speed_schiebe) (S.L.doorMaxSpeed_0)
{else}
(L.L.vis_doortype_v_int) 2 =
{if}
(L.L.door_0) (F.L.door_0_cls_speed_schwenk) (S.L.doorMaxSpeed_0)
{else}
(L.L.door_0) (F.L.door_0_cls_speed) (S.L.doorMaxSpeed_0)
{endif}
{endif}
{endif}
(L.L.vis_doortype_v_int) 2 =
{if}
(C.L.fdoor_acc_schwenk) (S.L.doorAcc_0)
{else}
(C.L.fdoor_acc) (S.L.doorAcc_0)
{endif}
(L.L.doorTarget_0) ! (L.L.doorSpeed_0) s0 abs 0.05 > (L.L.door_0) 0 >
&&
(L.L.doorEntriegelung_01)
{if}
(L.L.door_0_hub) 0.8 >
(L.L.vis_doortype_v_int) !
(L.L.vis_doortype_v_int) 1 =
{if}
l0 /-/ (L.L.doorMaxSpeed_0) <
{if}
(L.L.doorEntriegelung_01)
{if}
(L.L.doorSpeed_0) (L.L.doorDragAcc_0) (L.S.Timegap) * - (S.L.doorSpeed_0)
{else}
(L.L.doorSpeed_0) (L.L.doorAcc_0) (L.S.Timegap) * - (S.L.doorSpeed_0)
{endif}
{else}
(L.L.doorEntriegelung_01)
{if}
(L.L.doorSpeed_0) (L.L.doorDragAcc_0) (L.S.Timegap) * + (S.L.doorSpeed_0)
{else}
(L.L.doorSpeed_0) (L.L.doorAcc_0) (L.S.Timegap) * + (S.L.doorSpeed_0)
{endif}
{endif}
(L.L.door_0) (L.L.doorSpeed_0) (L.S.Timegap) * + (S.L.door_0)
{endif}
{else}
(L.L.doorSpeed_0) abs 0.05 > (L.L.door_0) 1 <
(L.L.doorTarget_0) &&
{if}
(L.L.door_0_hub) 0.5 >
(L.L.vis_doortype_v_int) !
(L.L.vis_doortype_v_int) 1 =
{if}
l0 (L.L.doorMaxSpeed_0) <
{if}
(L.L.doorEntriegelung_01)
{if}
(L.L.doorSpeed_0) (L.L.doorDragAcc_0) (L.S.Timegap) * + (S.L.doorSpeed_0)
{else}
(L.L.doorSpeed_0) (L.L.doorAcc_0) (L.S.Timegap) * + (S.L.doorSpeed_0)
{endif}
{else}
(L.L.doorEntriegelung_01)
{if}
(L.L.doorSpeed_0) (L.L.doorDragAcc_0) (L.S.Timegap) * - (S.L.doorSpeed_0)
{else}
(L.L.doorSpeed_0) (L.L.doorAcc_0) (L.S.Timegap) * - (S.L.doorSpeed_0)
{endif}
{endif}
'Falls die Tür durch den anderen Flügel blockiert wird, geht sie nur gaaanz langsam auf:
(L.L.door_1) (L.L.door_0) < (L.L.door0_physblock) &&
{if}
(C.L.door_blocking_speed) (S.L.doorSpeed_0)
(L.L.vis_doortype_v_int) 0 =
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggeropen_0)
{endif}
{else}
(L.L.vis_doortype_v_int) 1 =
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggeropen_0_schieb)
{endif}
{else}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggeropen_0_schwenk)
{endif}
{endif}
{endif}
{endif}
(L.L.door_0) (L.L.doorSpeed_0) (L.S.Timegap) * + (S.L.door_0)
{endif}
{else}
0 (S.L.doorSpeed_0)
{endif}
{endif}
(L.L.elec_busbar_Rinv_summe)
(L.L.doorSpeed_0) abs (C.L.door_Rinv) * +
(S.L.elec_busbar_Rinv_summe)
{else}
0 (S.L.doorSpeed_0)
{endif}
(L.L.door_0) 1 >
{if}
(L.L.vis_doortype_v_int) !
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doorhitopen_0)
{endif}
{else}
(L.L.vis_doortype_v_int) 1 =
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doorhitopen_0_schieb)
{endif}
{else}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doorhitopen_0_schwenk)
{endif}
{endif}
{endif}
1 (S.L.door_0)
(L.L.doorSpeed_0) /-/ (L.L.doorRefl_0) * (S.L.doorSpeed_0)
{else}
(L.L.door_0) 0 <
{if}
(L.L.vis_doortype_v_int) !
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doorhitclose_0)
{endif}
{else}
(L.L.vis_doortype_v_int) 1 =
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doorhitclose_0_schieb)
{endif}
{else}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doorhitclose_0_schwenk)
{endif}
{endif}
{endif}
0 (S.L.door_0)
(L.L.doorSpeed_0) /-/ (L.L.doorRefl_0) * (S.L.doorSpeed_0)
{endif}
{endif}
(L.L.door_0) (F.L.door_klappe) (S.L.door_0_klappe)
(L.L.door_0) (F.L.door_stange) (S.L.door_0_stange)
(L.L.door_0) (F.L.door_schiebe) (S.L.door_0_schiebe)
(L.L.door_0) (F.L.door_trapez_v) (S.L.door_0_trapez)
{end}
{macro:Door1_Calc}
(L.L.vis_doortype_v_int) 2 =
{if}
'Hubverriegelung
(L.L.doorTarget_1)
(L.L.door_1_hub) 1 <= &&
{if}
'Volllaufen lassen über Timegap, Entriegelung
(L.L.door_1_hub) (C.L.door_1_hub_speed) 5 / (L.S.Timegap) * + 1 min (S.L.door_1_hub)
{else}
(L.L.doorTarget_1) !
(L.L.door_1_hub) &&
(L.L.door_1) ! &&
(L.L.door_0) ! &&
{if}
'Volllaufen lassen über Timegap, Verriegelung
(L.L.door_1_hub) (C.L.door_1_hub_speed) 5 / (L.S.Timegap) * - 0 max (S.L.door_1_hub)
{endif}
{endif}
{endif}
'Nur, wenn nicht verriegelt:
(L.L.door_1_locked) !
{if}
(L.L.doorEntriegelung_doorActive_01)
(L.L.doorEntriegelung_01)
{if}
(L.L.doorTarget_1)
{if}
(L.L.vis_doortype_v_int) 1 =
{if}
(L.L.door_1) (F.L.door_1_opn_speed_schiebe) (S.L.doorMaxSpeed_1)
{else}
(L.L.vis_doortype_v_int) 2 =
{if}
(L.L.door_1) (F.L.door_1_opn_speed_schwenk) (S.L.doorMaxSpeed_1)
{else}
(L.L.door_1) (F.L.door_1_opn_speed) (S.L.doorMaxSpeed_1)
{endif}
{endif}
{else}
(L.L.vis_doortype_v_int) 1 =
{if}
(L.L.door_1) (F.L.door_1_cls_speed_schiebe) (S.L.doorMaxSpeed_1)
{else}
(L.L.vis_doortype_v_int) 2 =
{if}
(L.L.door_1) (F.L.door_1_cls_speed_schwenk) (S.L.doorMaxSpeed_1)
{else}
(L.L.door_1) (F.L.door_1_cls_speed) (S.L.doorMaxSpeed_1)
{endif}
{endif}
{endif}
(L.L.vis_doortype_v_int) 2 =
{if}
(C.L.fdoor_acc_schwenk) (S.L.doorAcc_1)
{else}
(C.L.fdoor_acc) (S.L.doorAcc_1)
{endif}
(L.L.doorTarget_1) ! (L.L.doorSpeed_1) s0 abs 0.05 > (L.L.door_1) 0 >
&&
(L.L.doorEntriegelung_01)
{if}
(L.L.door_1_hub) 0.8 >
(L.L.vis_doortype_v_int) !
(L.L.vis_doortype_v_int) 1 =
{if}
l0 /-/ (L.L.doorMaxSpeed_1) <
{if}
(L.L.doorEntriegelung_01)
{if}
(L.L.doorSpeed_1) (L.L.doorDragAcc_1) (L.S.Timegap) * - (S.L.doorSpeed_1)
{else}
(L.L.doorSpeed_1) (L.L.doorAcc_1) (L.S.Timegap) * - (S.L.doorSpeed_1)
{endif}
{else}
(L.L.doorEntriegelung_01)
{if}
(L.L.doorSpeed_1) (L.L.doorDragAcc_1) (L.S.Timegap) * + (S.L.doorSpeed_1)
{else}
(L.L.doorSpeed_1) (L.L.doorAcc_1) (L.S.Timegap) * + (S.L.doorSpeed_1)
{endif}
{endif}
(L.L.door_1) (L.L.doorSpeed_1) (L.S.Timegap) * + (S.L.door_1)
(L.L.door_1) 0.01 <
{if}
0 (S.L.door0_warten)
0 (S.L.door0_umkehr)
{endif}
{endif}
{else}
(L.L.doorSpeed_1) abs 0.05 > (L.L.door_1) 1 <
(L.L.doorTarget_1) &&
(L.L.doorEntriegelung_01)
{if}
(L.L.door_1_hub) 0.5 >
(L.L.vis_doortype_v_int) !
(L.L.vis_doortype_v_int) 1 =
{if}
l0 (L.L.doorMaxSpeed_1) <
{if}
(L.L.doorEntriegelung_01)
{if}
(L.L.doorSpeed_1) (L.L.doorDragAcc_1) (L.S.Timegap) * + (S.L.doorSpeed_1)
{else}
(L.L.doorSpeed_1) (L.L.doorAcc_1) (L.S.Timegap) * + (S.L.doorSpeed_1)
{endif}
{else}
(L.L.doorEntriegelung_01)
{if}
(L.L.doorSpeed_1) (L.L.doorDragAcc_1) (L.S.Timegap) * - (S.L.doorSpeed_1)
{else}
(L.L.doorSpeed_1) (L.L.doorAcc_1) (L.S.Timegap) * - (S.L.doorSpeed_1)
{endif}
{endif}
'Falls die Tür durch den anderen Flügel blockiert wird, geht sie nur gaaanz langsam auf:
(L.L.door_0) (L.L.door_1) < (L.L.door1_physblock) &&
{if}
(C.L.door_blocking_speed) (S.L.doorSpeed_1)
(L.L.vis_doortype_v_int) 0 =
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggeropen_1)
{endif}
{else}
(L.L.vis_doortype_v_int) 1 =
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggeropen_1_schieb)
{endif}
{else}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggeropen_1_schwenk)
{endif}
{endif}
{endif}
{endif}
(L.L.door_1) (L.L.doorSpeed_1) (L.S.Timegap) * + (S.L.door_1)
{endif}
{else}
0 (S.L.doorSpeed_1)
{endif}
{endif}
(L.L.elec_busbar_Rinv_summe)
(L.L.doorSpeed_1) abs (C.L.door_Rinv) * +
(S.L.elec_busbar_Rinv_summe)
{else}
0 (S.L.doorSpeed_1)
{endif}
{endif}
(L.L.door_1) 1 >
{if}
(L.L.vis_doortype_v_int) !
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doorhitopen_1)
{endif}
{else}
(L.L.vis_doortype_v_int) 1 =
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doorhitopen_1_schieb)
{endif}
{else}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doorhitopen_1_schwenk)
{endif}
{endif}
{endif}
1 (S.L.door_1)
(L.L.doorSpeed_1) /-/ (L.L.doorRefl_1) * (S.L.doorSpeed_1)
{else}
(L.L.door_1) 0 <
{if}
(L.L.vis_doortype_v_int) !
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doorhitclose_1)
{endif}
{else}
(L.L.vis_doortype_v_int) 1 =
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doorhitclose_1_schieb)
{endif}
{else}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doorhitclose_1_schwenk)
{endif}
{endif}
{endif}
0 (S.L.door_1)
(L.L.doorSpeed_1) /-/ (L.L.doorRefl_1) * (S.L.doorSpeed_1)
{endif}
{endif}
(L.L.door_1) (F.L.door_klappe) (S.L.door_1_klappe)
(L.L.door_1) (F.L.door_stange) (S.L.door_1_stange)
(L.L.door_1) (F.L.door_schiebe) (S.L.door_1_schiebe)
(L.L.door_1) (F.L.door_trapez_h) (S.L.door_1_trapez)
{end}
'###############################################################################################
' Hintertürautomatiken
'###############################################################################################
{macro:DoorMid_Open}
(L.L.PAX_Exit0_Req)
(L.L.PAX_Exit1_Req)
(L.L.door_haltewunsch_knopfdruck)
(L.L.haltewunsch)
(L.L.bremse_halte) &&
(L.L.doorEntriegelung_E_active_23) (C.L.electric_doors) && ! &&
(L.L.elec_busbar_main) (C.L.elec_busbar_minV) > &&
(L.L.bremse_p_tank04) 550000 > &&
{if}
(L.L.doorTarget_23) !
(L.L.bremse_halte_sw)
(L.L.door_2) 0 >
(L.L.door_3) 0 >
&&
{if}
(L.L.vis_doortype_m_int) !
{if}
(T.L.ev_doortriggeropen_2)
{else}
(L.L.vis_doortype_m_int) 1 =
{if}
(T.L.ev_doortriggeropen_2_schieb)
{else}
(T.L.ev_doortriggeropen_2_schwenk)
{endif}
{endif}
1 (S.L.doorTarget_23)
(L.L.bremse_p_Tank04) 100000 - 0.94 * 100000 + (S.L.bremse_p_Tank04)
0 (S.L.door_haltewunsch_knopfdruck)
{else}
1 (S.L.doorEntriegelung_doorActive_23)
{endif}
0 (S.L.doorMidLastOpen)
{endif}
{end}
{macro:DoorMidCalc}
(L.L.elec_busbar_main) (C.L.elec_busbar_minV) >
(L.L.bremse_p_tank04) 550000 > &&
{if}
(L.L.bremse_halte) &&
{if}
(L.L.doorMidLastOpen) (L.S.Timegap) + (S.L.doorMidLastOpen)
{endif}
(L.L.doorTarget_23)
(L.L.doorMidLastOpen) (C.L.doorMidOpenTime) > &&
{if}
(L.L.trigger_antirepeat23) 1 + (S.L.trigger_antirepeat23)
(L.L.trigger_antirepeat23) 1 =
{if}
(L.L.vis_doorwarn_int)
{if}
(T.L.ev_doorwarn)
{endif}
{endif}
(L.L.doorwarn_timer) (L.S.Timegap) + 1.5 min (S.L.doorwarn_timer) 1.5 =
(L.L.vis_doorwarn_int) !
{if}
(L.L.vis_doortype_m_int) !
{if}
(T.L.ev_doortriggerclose_2)
{else}
(L.L.vis_doortype_m_int) 1 =
{if}
(T.L.ev_doortriggerclose_2_schieb)
{else}
(T.L.ev_doortriggerclose_2_schwenk)
{endif}
{endif}
0 (S.L.doorTarget_23)
0 (S.L.trigger_antirepeat23)
(L.L.bremse_p_Tank04) 100000 - 0.94 * 100000 + (S.L.bremse_p_Tank04)
{endif}
{else}
0 (S.L.doorwarn_timer)
{endif}
{endif}
{end}
{macro:DoorAft_Open}
(L.L.PAX_Entry4_Req)
(L.L.PAX_Entry5_Req)
(L.L.PAX_Exit2_Req)
(L.L.PAX_Exit3_Req)
(L.L.door_haltewunsch_knopfdruck_2)
(L.L.haltewunsch_2)
(L.L.bremse_halte) &&
(L.L.doorEntriegelung_E_active_45) (C.L.electric_doors) && ! &&
(L.L.elec_busbar_main) (C.L.elec_busbar_minV) > &&
(L.L.bremse_p_tank04) 550000 > &&
{if}
(L.L.doorTarget_45) !
(L.L.bremse_halte_sw)
(L.L.door_4) 0 >
(L.L.door_5) 0 > || || &&
{if}
(L.L.vis_doortype_h_int) !
{if}
(T.L.ev_doortriggeropen_4)
{else}
(L.L.vis_doortype_h_int) 1 =
{if}
(T.L.ev_doortriggeropen_4_schieb)
{else}
(T.L.ev_doortriggeropen_4_schwenk)
{endif}
{endif}
1 (S.L.doorTarget_45)
(L.L.bremse_p_Tank04) 100000 - 0.94 * 100000 + (S.L.bremse_p_Tank04)
0 (S.L.door_haltewunsch_knopfdruck_2)
{else}
1 (S.L.doorEntriegelung_doorActive_45)
{endif}
0 (S.L.doorAftLastOpen)
{endif}
{end}
{macro:DoorAftCalc}
(L.L.bremse_halte_sw) 0 =
(L.L.door_hstbremse_knickschutz) 0 = &&
(L.L.kneel_timer) 0 = &&
(L.L.door_0) 0 = &&
(L.L.door_1) 0 = &&
(L.L.door_2) 0 = &&
(L.L.door_3) 0 = &&
(L.L.door_4) 0 = &&
(L.L.door_5) 0 = &&
(L.L.bremse_halte) &&
(L.L.throttle) 0.125 > &&
{if}
0 (S.L.bremse_halte) (S.L.doorMidLastOpen) (S.L.doorAftLastOpen)
0 (S.L.20h_switch_pressed)
(T.L.ev_haltebremse_aus)
{endif}
(L.L.elec_busbar_main) (C.L.elec_busbar_minV) >
(L.L.bremse_p_tank04) 550000 > &&
{if}
(L.L.bremse_halte) &&
{if}
(L.L.doorAftLastOpen) (L.S.Timegap) + (S.L.doorAftLastOpen)
{endif}
(L.L.doorTarget_45)
(L.L.doorAftLastOpen) (C.L.doorAftOpenTime) > &&
{if}
(L.L.trigger_antirepeat45) 1 + (S.L.trigger_antirepeat45)
(L.L.trigger_antirepeat45) 1 =
{if}
(L.L.vis_doorwarn_int)
{if}
(T.L.ev_doorwarn2)
{endif}
{endif}
(L.L.doorwarn2_timer) (L.S.Timegap) + 1.5 min (S.L.doorwarn2_timer) 1.5 =
(L.L.vis_doorwarn_int) ! ||
{if}
(L.L.vis_doortype_h_int) !
{if}
(T.L.ev_doortriggerclose_4)
{else}
(L.L.vis_doortype_h_int) 1 =
{if}
(T.L.ev_doortriggerclose_4_schieb)
{else}
(T.L.ev_doortriggerclose_4_schwenk)
{endif}
{endif}
0 (S.L.doorTarget_45)
0 (S.L.trigger_antirepeat45)
(L.L.bremse_p_Tank04) 100000 - 0.94 * 100000 + (S.L.bremse_p_Tank04)
{endif}
{else}
0 (S.L.doorwarn2_timer)
{endif}
{endif}
{end}
'###############################################################################################
' Door Calc Türenpaar 2
'###############################################################################################
{macro:Door2_Calc}
' (L.L.vis_doortype_m_int) 2 =
' {if}
'Hubverriegelung
' (L.L.doorTarget_23)
' (L.L.door_2_hub) 1 <= &&
' {if}
'Volllaufen lassen über Timegap, Entriegelung
' (L.L.door_2_hub) (C.L.door_2_hub_speed) 5 / (L.S.Timegap) * + 1 min (S.L.door_2_hub)
' {else}
' (L.L.doorTarget_23) !
' (L.L.door_2_hub) &&
' (L.L.door_2) ! &&
' (L.L.door_3) ! &&
' {if}
'Volllaufen lassen über Timegap, Verriegelung
' (L.L.door_2_hub) (C.L.door_2_hub_speed) 5 / (L.S.Timegap) * - 0 max (S.L.door_2_hub)
' {endif}
' {endif}
' {endif}
(L.L.doorEntriegelung_doorActive_23)
(L.L.doorEntriegelung_23) ||
{if}
(L.L.doorTarget_23)
{if}
(L.L.vis_doortype_m_int) 1 =
{if}
(L.L.door_2) (F.L.door_2_opn_speed_schiebe) (S.L.doorMaxSpeed_2)
{else}
(L.L.vis_doortype_m_int) 2 =
{if}
(L.L.door_2) (F.L.door_2_opn_speed_schwenk) (S.L.doorMaxSpeed_2)
{else}
(L.L.door_2) (F.L.door_2_opn_speed) (S.L.doorMaxSpeed_2)
{endif}
{endif}
{else}
(L.L.vis_doortype_m_int) 1 =
{if}
(L.L.door_2) (F.L.door_2_cls_speed_schiebe) (S.L.doorMaxSpeed_2)
{else}
(L.L.vis_doortype_m_int) 2 =
{if}
(L.L.door_2) (F.L.door_2_cls_speed_schwenk) (S.L.doorMaxSpeed_2)
{else}
(L.L.door_2) (F.L.door_2_cls_speed) (S.L.doorMaxSpeed_2)
{endif}
{endif}
{endif}
(L.L.vis_doortype_m_int) 2 =
{if}
(C.L.mdoor_acc_schwenk) (S.L.doorAcc_2)
{else}
(C.L.mdoor_acc) (S.L.doorAcc_2)
{endif}
(L.L.doorTarget_23) ! (L.L.doorSpeed_2) s0 abs 0.05 > (L.L.door_2) 0 > || &&
(L.L.doorEntriegelung_23) ||
{if}
' (L.L.door_2_hub) 0.8 >
(L.L.vis_doortype_m_int) ! ||
(L.L.vis_doortype_m_int) 1 = ||
{if}
(L.L.tuer2_piep_antirepeat) 1 + (S.L.tuer2_piep_antirepeat)
1 =
{if}
(L.L.vis_doortype_m_int) !
{if}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doortriggerclose_2)
{endif}
{else}
(L.L.vis_doortype_m_int) 1 =
{if}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doortriggerclose_2_schieb)
{endif}
{else}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doortriggerclose_2_schwenk)
{endif}
{endif}
{endif}
{endif}
l0 /-/ (L.L.doorMaxSpeed_2) <
{if}
(L.L.doorEntriegelung_23)
{if}
(L.L.doorSpeed_2) (L.L.doorDragAcc_2) (L.S.Timegap) * - (S.L.doorSpeed_2)
{else}
(L.L.doorSpeed_2) (L.L.doorAcc_2) (L.S.Timegap) * - (S.L.doorSpeed_2)
{endif}
{else}
(L.L.doorEntriegelung_23)
{if}
(L.L.doorSpeed_2) (L.L.doorDragAcc_2) (L.S.Timegap) * + (S.L.doorSpeed_2)
{else}
(L.L.doorSpeed_2) (L.L.doorAcc_2) (L.S.Timegap) * + (S.L.doorSpeed_2)
{endif}
{endif}
(L.L.door_2) (L.L.doorSpeed_2) (L.S.Timegap) * + (S.L.door_2)
{endif}
{else}
0 (S.L.tuer2_piep_antirepeat)
(L.L.doorSpeed_2) abs 0.05 > (L.L.door_2) 1 < || (L.L.doorTarget_23) &&
(L.L.doorEntriegelung_23) ||
{if}
' (L.L.door_2_hub) 0.5 >
(L.L.vis_doortype_m_int) ! ||
(L.L.vis_doortype_m_int) 1 = ||
{if}
l0 (L.L.doorMaxSpeed_2) <
{if}
(L.L.doorEntriegelung_23)
{if}
(L.L.doorSpeed_2) (L.L.doorDragAcc_2) (L.S.Timegap) * + (S.L.doorSpeed_2)
{else}
(L.L.doorSpeed_2) (L.L.doorAcc_2) (L.S.Timegap) * + (S.L.doorSpeed_2)
{endif}
{else}
(L.L.doorEntriegelung_23)
{if}
(L.L.doorSpeed_2) (L.L.doorDragAcc_2) (L.S.Timegap) * - (S.L.doorSpeed_2)
{else}
(L.L.doorSpeed_2) (L.L.doorAcc_2) (L.S.Timegap) * - (S.L.doorSpeed_2)
{endif}
{endif}
(L.L.door_2) (L.L.doorSpeed_2) (L.S.Timegap) * + (S.L.door_2)
{endif}
{else}
0 (S.L.doorSpeed_2)
{endif}
{endif}
(L.L.elec_busbar_Rinv_summe)
(L.L.doorSpeed_2) abs (C.L.door_Rinv) * +
(S.L.elec_busbar_Rinv_summe)
{else}
0 (S.L.doorSpeed_2)
{endif}
(L.L.door_2) 1 >
{if}
(L.L.vis_doortype_m_int) !
{if}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doorhitopen_2)
{endif}
{else}
(L.L.vis_doortype_m_int) 1 =
{if}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doorhitopen_2_schieb)
{endif}
{else}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doorhitopen_2_schwenk)
{endif}
{endif}
{endif}
1 (S.L.door_2)
(L.L.doorSpeed_2) /-/ (L.L.doorRefl_2) * (S.L.doorSpeed_2)
{else}
(L.L.door_2) 0 <
{if}
(L.L.vis_doortype_m_int) !
{if}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doorhitclose_2)
{endif}
{else}
(L.L.vis_doortype_m_int) 1 =
{if}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doorhitclose_2_schieb)
{endif}
{else}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doorhitclose_2_schwenk)
{endif}
{endif}
{endif}
0 (S.L.door_2)
(L.L.doorSpeed_2) /-/ (L.L.doorRefl_2) * (S.L.doorSpeed_2)
{endif}
{endif}
(L.L.door_2) (F.L.door_klappe) (S.L.door_2_klappe)
(L.L.door_2) (F.L.door_stange) (S.L.door_2_stange)
(L.L.door_2) (F.L.door_schiebe) (S.L.door_2_schiebe)
(L.L.door_2) (F.L.door_trapez_v) (S.L.door_2_trapez)
{end}
{macro:Door3_Calc}
' (L.L.vis_doortype_m_int) 2 =
' {if}
'Hubverriegelung
' (L.L.doorTarget_23)
' (L.L.door_3_hub) 1 <= &&
' {if}
'Volllaufen lassen über Timegap, Entriegelung
' (L.L.door_3_hub) (C.L.door_3_hub_speed) 5 / (L.S.Timegap) * + 1 min (S.L.door_3_hub)
' {else}
' (L.L.doorTarget_23) !
' (L.L.door_3_hub) &&
' (L.L.door_3) ! &&
' (L.L.door_2) ! &&
' {if}
'Volllaufen lassen über Timegap, Verriegelung
' (L.L.door_3_hub) (C.L.door_3_hub_speed) 5 / (L.S.Timegap) * - 0 max (S.L.door_3_hub)
' {endif}
' {endif}
' {endif}
(L.L.doorEntriegelung_doorActive_23)
(L.L.doorEntriegelung_23) ||
{if}
(L.L.doorTarget_23)
{if}
(L.L.vis_doortype_m_int) 1 =
{if}
(L.L.door_3) (F.L.door_3_opn_speed_schiebe) (S.L.doorMaxSpeed_3)
{else}
(L.L.vis_doortype_m_int) 2 =
{if}
(L.L.door_3) (F.L.door_3_opn_speed_schwenk) (S.L.doorMaxSpeed_3)
{else}
(L.L.door_3) (F.L.door_3_opn_speed) (S.L.doorMaxSpeed_3)
{endif}
{endif}
{else}
(L.L.vis_doortype_m_int) 1 =
{if}
(L.L.door_3) (F.L.door_3_cls_speed_schiebe) (S.L.doorMaxSpeed_3)
{else}
(L.L.vis_doortype_m_int) 2 =
{if}
(L.L.door_3) (F.L.door_3_cls_speed_schwenk) (S.L.doorMaxSpeed_3)
{else}
(L.L.door_3) (F.L.door_3_cls_speed) (S.L.doorMaxSpeed_3)
{endif}
{endif}
{endif}
(L.L.vis_doortype_m_int) 2 =
{if}
(C.L.mdoor_acc_schwenk) (S.L.doorAcc_3)
{else}
(C.L.mdoor_acc) (S.L.doorAcc_3)
{endif}
(L.L.doorTarget_23) ! (L.L.doorSpeed_3) s0 abs 0.05 > (L.L.door_3) 0 > || &&
(L.L.doorEntriegelung_23) ||
{if}
' (L.L.door_3_hub) 0.8 >
(L.L.vis_doortype_m_int) ! ||
(L.L.vis_doortype_m_int) 1 = ||
{if}
l0 /-/ (L.L.doorMaxSpeed_3) <
{if}
(L.L.doorEntriegelung_23)
{if}
(L.L.doorSpeed_3) (L.L.doorDragAcc_3) (L.S.Timegap) * - (S.L.doorSpeed_3)
{else}
(L.L.doorSpeed_3) (L.L.doorAcc_3) (L.S.Timegap) * - (S.L.doorSpeed_3)
{endif}
{else}
(L.L.doorEntriegelung_23)
{if}
(L.L.doorSpeed_3) (L.L.doorDragAcc_3) (L.S.Timegap) * + (S.L.doorSpeed_3)
{else}
(L.L.doorSpeed_3) (L.L.doorAcc_3) (L.S.Timegap) * + (S.L.doorSpeed_3)
{endif}
{endif}
(L.L.door_3) (L.L.doorSpeed_3) (L.S.Timegap) * + (S.L.door_3)
{endif}
{else}
(L.L.doorSpeed_3) abs 0.05 > (L.L.door_3) 1 < || (L.L.doorTarget_23) &&
(L.L.doorEntriegelung_23) ||
{if}
' (L.L.door_3_hub) 0.5 >
(L.L.vis_doortype_m_int) ! ||
(L.L.vis_doortype_m_int) 1 = ||
{if}
l0 (L.L.doorMaxSpeed_3) <
{if}
(L.L.doorEntriegelung_23)
{if}
(L.L.doorSpeed_3) (L.L.doorDragAcc_3) (L.S.Timegap) * + (S.L.doorSpeed_3)
{else}
(L.L.doorSpeed_3) (L.L.doorAcc_3) (L.S.Timegap) * + (S.L.doorSpeed_3)
{endif}
{else}
(L.L.doorEntriegelung_23)
{if}
(L.L.doorSpeed_3) (L.L.doorDragAcc_3) (L.S.Timegap) * - (S.L.doorSpeed_3)
{else}
(L.L.doorSpeed_3) (L.L.doorAcc_3) (L.S.Timegap) * - (S.L.doorSpeed_3)
{endif}
{endif}
(L.L.door_3) (L.L.doorSpeed_3) (L.S.Timegap) * + (S.L.door_3)
{endif}
{else}
0 (S.L.doorSpeed_3)
{endif}
{endif}
(L.L.elec_busbar_Rinv_summe)
(L.L.doorSpeed_3) abs (C.L.door_Rinv) * +
(S.L.elec_busbar_Rinv_summe)
{else}
0 (S.L.doorSpeed_3)
{endif}
(L.L.door_3) 1 >
{if}
(L.L.vis_doortype_m_int) !
{if}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doorhitopen_3)
{endif}
{else}
(L.L.vis_doortype_m_int) 1 =
{if}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doorhitopen_3_schieb)
{endif}
{else}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doorhitopen_3_schwenk)
{endif}
{endif}
{endif}
1 (S.L.door_3)
(L.L.doorSpeed_3) /-/ (L.L.doorRefl_3) * (S.L.doorSpeed_3)
{else}
(L.L.door_3) 0 <
{if}
(L.L.vis_doortype_m_int) !
{if}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doorhitclose_3)
{endif}
{else}
(L.L.vis_doortype_m_int) 1 =
{if}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doorhitclose_3_schieb)
{endif}
{else}
(L.L.doorEntriegelung_23) !
{if}
(T.L.ev_doorhitclose_3_schwenk)
{endif}
{endif}
{endif}
0 (S.L.door_3)
(L.L.doorSpeed_3) /-/ (L.L.doorRefl_3) * (S.L.doorSpeed_3)
{endif}
{endif}
(L.L.door_3) (F.L.door_klappe) (S.L.door_3_klappe)
(L.L.door_3) (F.L.door_stange) (S.L.door_3_stange)
(L.L.door_3) (F.L.door_schiebe) (S.L.door_3_schiebe)
(L.L.door_3) (F.L.door_trapez_h) (S.L.door_3_trapez)
{end}
'###############################################################################################
' Door Calc Türenpaar 3
'###############################################################################################
{macro:Door4_Calc}
' (L.L.vis_doortype_h_int) 2 =
' {if}
'Hubverriegelung
' (L.L.doorTarget_45)
' (L.L.door_4_hub) 1 <= &&
' {if}
'Volllaufen lassen über Timegap, Entriegelung
' (L.L.door_4_hub) (C.L.door_4_hub_speed) 5 / (L.S.Timegap) * + 1 min (S.L.door_4_hub)
' {else}
' (L.L.doorTarget_45) !
' (L.L.door_4_hub) &&
' (L.L.door_4) ! &&
' (L.L.door_5) ! &&
' {if}
'Volllaufen lassen über Timegap, Verriegelung
' (L.L.door_4_hub) (C.L.door_4_hub_speed) 5 / (L.S.Timegap) * - 0 max (S.L.door_4_hub)
' {endif}
' {endif}
' {endif}
(L.L.doorEntriegelung_doorActive_45)
(L.L.doorEntriegelung_45) ||
{if}
(L.L.doorTarget_45)
{if}
(L.L.vis_doortype_h_int) 1 =
{if}
(L.L.door_4) (F.L.door_4_opn_speed_schiebe) (S.L.doorMaxSpeed_4)
{else}
(L.L.vis_doortype_h_int) 2 =
{if}
(L.L.door_4) (F.L.door_4_opn_speed_schwenk) (S.L.doorMaxSpeed_4)
{else}
(L.L.door_4) (F.L.door_4_opn_speed) (S.L.doorMaxSpeed_4)
{endif}
{endif}
{else}
(L.L.vis_doortype_h_int) 1 =
{if}
(L.L.door_4) (F.L.door_4_cls_speed_schiebe) (S.L.doorMaxSpeed_4)
{else}
(L.L.vis_doortype_h_int) 2 =
{if}
(L.L.door_4) (F.L.door_4_cls_speed_schwenk) (S.L.doorMaxSpeed_4)
{else}
(L.L.door_4) (F.L.door_4_cls_speed) (S.L.doorMaxSpeed_4)
{endif}
{endif}
{endif}
(L.L.vis_doortype_h_int) 2 =
{if}
(C.L.bdoor_acc_schwenk) (S.L.doorAcc_4)
{else}
(C.L.bdoor_acc) (S.L.doorAcc_4)
{endif}
(L.L.doorTarget_45) ! (L.L.doorSpeed_4) s0 abs 0.05 > (L.L.door_4) 0 > || &&
(L.L.doorEntriegelung_45) ||
{if}
' (L.L.door_4_hub) 0.8 >
(L.L.vis_doortype_h_int) ! ||
(L.L.vis_doortype_h_int) 1 = ||
{if}
l0 /-/ (L.L.doorMaxSpeed_4) <
{if}
(L.L.doorEntriegelung_45)
{if}
(L.L.doorSpeed_4) (L.L.doorDragAcc_4) (L.S.Timegap) * - (S.L.doorSpeed_4)
{else}
(L.L.doorSpeed_4) (L.L.doorAcc_4) (L.S.Timegap) * - (S.L.doorSpeed_4)
{endif}
{else}
(L.L.doorEntriegelung_45)
{if}
(L.L.doorSpeed_4) (L.L.doorDragAcc_4) (L.S.Timegap) * + (S.L.doorSpeed_4)
{else}
(L.L.doorSpeed_4) (L.L.doorAcc_4) (L.S.Timegap) * + (S.L.doorSpeed_4)
{endif}
{endif}
(L.L.door_4) (L.L.doorSpeed_4) (L.S.Timegap) * + (S.L.door_4)
{endif}
{else}
(L.L.doorSpeed_4) abs 0.05 > (L.L.door_4) 1 < || (L.L.doorTarget_45) &&
(L.L.doorEntriegelung_45) ||
{if}
' (L.L.door_4_hub) 0.5 >
(L.L.vis_doortype_h_int) ! ||
(L.L.vis_doortype_h_int) 1 = ||
{if}
l0 (L.L.doorMaxSpeed_4) <
{if}
(L.L.doorEntriegelung_45)
{if}
(L.L.doorSpeed_4) (L.L.doorDragAcc_4) (L.S.Timegap) * + (S.L.doorSpeed_4)
{else}
(L.L.doorSpeed_4) (L.L.doorAcc_4) (L.S.Timegap) * + (S.L.doorSpeed_4)
{endif}
{else}
(L.L.doorEntriegelung_45)
{if}
(L.L.doorSpeed_4) (L.L.doorDragAcc_4) (L.S.Timegap) * - (S.L.doorSpeed_4)
{else}
(L.L.doorSpeed_4) (L.L.doorAcc_4) (L.S.Timegap) * - (S.L.doorSpeed_4)
{endif}
{endif}
(L.L.door_4) (L.L.doorSpeed_4) (L.S.Timegap) * + (S.L.door_4)
{endif}
{else}
0 (S.L.doorSpeed_4)
{endif}
{endif}
(L.L.elec_busbar_Rinv_summe)
(L.L.doorSpeed_4) abs (C.L.door_Rinv) * +
(S.L.elec_busbar_Rinv_summe)
{else}
0 (S.L.doorSpeed_4)
{endif}
(L.L.door_4) 1 >
{if}
(L.L.vis_doortype_h_int) !
{if}
(L.L.doorEntriegelung_45) !
{if}
(T.L.ev_doorhitopen_4)
{endif}
{else}
(L.L.vis_doortype_h_int) 1 =
{if}
(L.L.doorEntriegelung_45) !
{if}
(T.L.ev_doorhitopen_4_schieb)
{endif}
{else}
(L.L.doorEntriegelung_45) !
{if}
(T.L.ev_doorhitopen_4_schwenk)
{endif}
{endif}
{endif}
1 (S.L.door_4)
(L.L.doorSpeed_4) /-/ (L.L.doorRefl_4) * (S.L.doorSpeed_4)
{else}
(L.L.door_4) 0 <
{if}
(L.L.vis_doortype_h_int) !
{if}
(L.L.doorEntriegelung_45) !
{if}
(T.L.ev_doorhitclose_4)
{endif}
{else}
(L.L.vis_doortype_h_int) 1 =
{if}
(L.L.doorEntriegelung_45) !
{if}
(T.L.ev_doorhitclose_4_schieb)
{endif}
{else}
(L.L.doorEntriegelung_45) !
{if}
(T.L.ev_doorhitclose_4_schwenk)
{endif}
{endif}
{endif}
0 (S.L.door_4)
(L.L.doorSpeed_4) /-/ (L.L.doorRefl_4) * (S.L.doorSpeed_4)
{endif}
{endif}
(L.L.door_4) (F.L.door_klappe) (S.L.door_4_klappe)
(L.L.door_4) (F.L.door_stange) (S.L.door_4_stange)
(L.L.door_4) (F.L.door_schiebe) (S.L.door_4_schiebe)
(L.L.door_4) (F.L.door_trapez_v) (S.L.door_4_trapez)
{end}
{macro:Door5_Calc}
' (L.L.vis_doortype_h_int) 2 =
' {if}
'Hubverriegelung
' (L.L.doorTarget_45)
' (L.L.door_5_hub) 1 <= &&
' {if}
'Volllaufen lassen über Timegap, Entriegelung
' (L.L.door_5_hub) (C.L.door_5_hub_speed) 5 / (L.S.Timegap) * + 1 min (S.L.door_5_hub)
' {else}
' (L.L.doorTarget_45) !
' (L.L.door_5_hub) &&
' (L.L.door_5) ! &&
' (L.L.door_4) ! &&
' {if}
'Volllaufen lassen über Timegap, Verriegelung
' (L.L.door_5_hub) (C.L.door_5_hub_speed) 5 / (L.S.Timegap) * - 0 max (S.L.door_5_hub)
' {endif}
' {endif}
' {endif}
(L.L.doorEntriegelung_doorActive_45)
(L.L.doorEntriegelung_45) ||
{if}
(L.L.doorTarget_45)
{if}
(L.L.vis_doortype_h_int) 1 =
{if}
(L.L.door_5) (F.L.door_5_opn_speed_schiebe) (S.L.doorMaxSpeed_5)
{else}
(L.L.vis_doortype_h_int) 2 =
{if}
(L.L.door_5) (F.L.door_5_opn_speed_schwenk) (S.L.doorMaxSpeed_5)
{else}
(L.L.door_5) (F.L.door_5_opn_speed) (S.L.doorMaxSpeed_5)
{endif}
{endif}
{else}
(L.L.vis_doortype_h_int) 1 =
{if}
(L.L.door_5) (F.L.door_5_cls_speed_schiebe) (S.L.doorMaxSpeed_5)
{else}
(L.L.vis_doortype_h_int) 2 =
{if}
(L.L.door_5) (F.L.door_5_cls_speed_schwenk) (S.L.doorMaxSpeed_5)
{else}
(L.L.door_5) (F.L.door_5_cls_speed) (S.L.doorMaxSpeed_5)
{endif}
{endif}
{endif}
(L.L.vis_doortype_h_int) 2 =
{if}
(C.L.bdoor_acc_schwenk) (S.L.doorAcc_5)
{else}
(C.L.bdoor_acc) (S.L.doorAcc_5)
{endif}
(L.L.doorTarget_45) ! (L.L.doorSpeed_5) s0 abs 0.05 > (L.L.door_5) 0 > || &&
(L.L.doorEntriegelung_45) ||
{if}
' (L.L.door_5_hub) 0.8 >
(L.L.vis_doortype_h_int) ! ||
(L.L.vis_doortype_h_int) 1 = ||
{if}
l0 /-/ (L.L.doorMaxSpeed_5) <
{if}
(L.L.doorEntriegelung_45)
{if}
(L.L.doorSpeed_5) (L.L.doorDragAcc_5) (L.S.Timegap) * - (S.L.doorSpeed_5)
{else}
(L.L.doorSpeed_5) (L.L.doorAcc_5) (L.S.Timegap) * - (S.L.doorSpeed_5)
{endif}
{else}
(L.L.doorEntriegelung_45)
{if}
(L.L.doorSpeed_5) (L.L.doorDragAcc_5) (L.S.Timegap) * + (S.L.doorSpeed_5)
{else}
(L.L.doorSpeed_5) (L.L.doorAcc_5) (L.S.Timegap) * + (S.L.doorSpeed_5)
{endif}
{endif}
(L.L.door_5) (L.L.doorSpeed_5) (L.S.Timegap) * + (S.L.door_5)
{endif}
{else}
(L.L.doorSpeed_5) abs 0.05 > (L.L.door_5) 1 < || (L.L.doorTarget_45) &&
(L.L.doorEntriegelung_45) ||
{if}
' (L.L.door_5_hub) 0.5 >
(L.L.vis_doortype_h_int) ! ||
(L.L.vis_doortype_h_int) 1 = ||
{if}
l0 (L.L.doorMaxSpeed_5) <
{if}
(L.L.doorEntriegelung_45)
{if}
(L.L.doorSpeed_5) (L.L.doorDragAcc_5) (L.S.Timegap) * + (S.L.doorSpeed_5)
{else}
(L.L.doorSpeed_5) (L.L.doorAcc_5) (L.S.Timegap) * + (S.L.doorSpeed_5)
{endif}
{else}
(L.L.doorEntriegelung_45)
{if}
(L.L.doorSpeed_5) (L.L.doorDragAcc_5) (L.S.Timegap) * - (S.L.doorSpeed_5)
{else}
(L.L.doorSpeed_5) (L.L.doorAcc_5) (L.S.Timegap) * - (S.L.doorSpeed_5)
{endif}
{endif}
(L.L.door_5) (L.L.doorSpeed_5) (L.S.Timegap) * + (S.L.door_5)
{endif}
{else}
0 (S.L.doorSpeed_5)
{endif}
{endif}
(L.L.elec_busbar_Rinv_summe)
(L.L.doorSpeed_5) abs (C.L.door_Rinv) * +
(S.L.elec_busbar_Rinv_summe)
{else}
0 (S.L.doorSpeed_5)
{endif}
(L.L.door_5) 1 >
{if}
(L.L.vis_doortype_h_int) !
{if}
(L.L.doorEntriegelung_45) !
{if}
(T.L.ev_doorhitopen_5)
{endif}
{else}
(L.L.vis_doortype_h_int) 1 =
{if}
(L.L.doorEntriegelung_45) !
{if}
(T.L.ev_doorhitopen_5_schieb)
{endif}
{else}
(L.L.doorEntriegelung_45) !
{if}
(T.L.ev_doorhitopen_5_schwenk)
{endif}
{endif}
{endif}
1 (S.L.door_5)
(L.L.doorSpeed_5) /-/ (L.L.doorRefl_5) * (S.L.doorSpeed_5)
{else}
(L.L.door_5) 0 <
{if}
(L.L.vis_doortype_h_int) !
{if}
(L.L.doorEntriegelung_45) !
{if}
(T.L.ev_doorhitclose_5)
{endif}
{else}
(L.L.vis_doortype_h_int) 1 =
{if}
(L.L.doorEntriegelung_45) !
{if}
(T.L.ev_doorhitclose_5_schieb)
{endif}
{else}
(L.L.doorEntriegelung_45) !
{if}
(T.L.ev_doorhitclose_5_schwenk)
{endif}
{endif}
{endif}
0 (S.L.door_5)
(L.L.doorSpeed_5) /-/ (L.L.doorRefl_5) * (S.L.doorSpeed_5)
{endif}
{endif}
(L.L.door_5) (F.L.door_klappe) (S.L.door_5_klappe)
(L.L.door_5) (F.L.door_stange) (S.L.door_5_stange)
(L.L.door_5) (F.L.door_schiebe) (S.L.door_5_schiebe)
(L.L.door_5) (F.L.door_trapez_h) (S.L.door_5_trapez)
{end}
'###############################################################################################
{macro:trg_bus_doorfront0}
(L.L.doorEntriegelung_E_active_01) (C.L.electric_doors) && !
(L.L.doorEntriegelung_01) ||
{if}
(L.L.doorTarget_0) ! (S.L.doorTarget_0)
{if}
(L.L.vis_doortype_v_int) !
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggeropen_0)
{endif}
{else}
(L.L.vis_doortype_v_int) 1 =
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggeropen_0_schieb)
{endif}
{else}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggeropen_0_schwenk)
{endif}
{endif}
{endif}
{else}
(L.L.vis_doortype_v_int) !
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggerclose_0)
{endif}
{else}
(L.L.vis_doortype_v_int) 1 =
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggerclose_0_schieb)
{endif}
{else}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggerclose_0_schwenk)
{endif}
{endif}
{endif}
{endif}
(L.L.bremse_p_Tank04) 100000 - 0.94 * 100000 + (S.L.bremse_p_Tank04)
1 (S.L.doorEntriegelung_doorActive_01)
{endif}
{end}
{macro:trg_bus_doorfront1}
(L.L.doorEntriegelung_E_active_01) (C.L.electric_doors) && !
(L.L.doorEntriegelung_01) ||
{if}
(L.L.doorTarget_1) ! (S.L.doorTarget_1)
{if}
(L.L.vis_doortype_v_int) !
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggeropen_1)
{endif}
{else}
(L.L.vis_doortype_v_int) 1 =
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggeropen_1_schieb)
{endif}
{else}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggeropen_1_schwenk)
{endif}
{endif}
{endif}
{else}
(L.L.vis_doortype_v_int) !
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggerclose_1)
{endif}
{else}
(L.L.vis_doortype_v_int) 1 =
{if}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggerclose_1_schieb)
{endif}
{else}
(L.L.doorEntriegelung_01) !
{if}
(T.L.ev_doortriggerclose_1_schwenk)
{endif}
{endif}
{endif}
{endif}
(L.L.bremse_p_Tank04) 100000 - 0.94 * 100000 + (S.L.bremse_p_Tank04)
1 (S.L.doorEntriegelung_doorActive_01)
{endif}
{end}
{macro:trg_bus_dooraft23}
(L.L.doorEntriegelung_E_active_23) (C.L.electric_doors) && !
(L.L.doorEntriegelung_23) ||
{if}
(L.L.doorTarget_23_delayed) ! (S.L.doorTarget_23_delayed)
{if}
(L.L.doorEntriegelung_23) !
{if}
(L.L.vis_doortype_m_int) !
{if}
(T.L.ev_doortriggeropen_2)
{else}
(L.L.vis_doortype_m_int) 1 =
{if}
(T.L.ev_doortriggeropen_2_schieb)
{else}
(T.L.ev_doortriggeropen_2_schwenk)
{endif}
{endif}
{endif}
{else}
(L.L.door_2) 1 =
(L.L.door_3) 1 =
{if}
(L.L.vis_doorwarn_int)
{if}
(T.L.ev_doorwarn)
{endif}
{else}
(L.L.doorEntriegelung_23) !
{if}
(L.L.vis_doortype_m_int) !
{if}
(T.L.ev_doortriggerclose_2)
{else}
(L.L.vis_doortype_m_int) 1 =
{if}
(T.L.ev_doortriggerclose_2_schieb)
{else}
(T.L.ev_doortriggerclose_2_schwenk)
{endif}
{endif}
{endif}
{endif}
{endif}
(L.L.bremse_p_Tank04) 100000 - 0.94 * 100000 + (S.L.bremse_p_Tank04)
1 (S.L.doorEntriegelung_doorActive_23)
{endif}
{end}
{macro:trg_bus_dooraft45}
(L.L.doorEntriegelung_E_active_45) (C.L.electric_doors) && !
(L.L.doorEntriegelung_45) ||
{if}
(L.L.doorTarget_45) ! (S.L.doorTarget_45)
{if}
(L.L.doorEntriegelung_45) !
{if}
(L.L.vis_doortype_h_int) !
{if}
(T.L.ev_doortriggeropen_4)
{else}
(L.L.vis_doortype_h_int) 1 =
{if}
(T.L.ev_doortriggeropen_4_schieb)
{else}
(T.L.ev_doortriggeropen_4_schwenk)
{endif}
{endif}
{endif}
{else}
(L.L.doorEntriegelung_45) !
{if}
(L.L.vis_doortype_h_int) !
{if}
(T.L.ev_doortriggerclose_4)
{else}
(L.L.vis_doortype_h_int) 1 =
{if}
(T.L.ev_doortriggerclose_4_schieb)
{else}
(T.L.ev_doortriggerclose_4_schwenk)
{endif}
{endif}
{endif}
{endif}
(L.L.bremse_p_Tank04) 100000 - 0.94 * 100000 + (S.L.bremse_p_Tank04)
1 (S.L.doorEntriegelung_doorActive_45)
{endif}
{end}
{macro:traegheit}
'Simuliert träges Verhalten (exponentiell)
'Ladekonventionen:
' Sollwert l0
' Istwert l1
' Konstante Anlauf l2 (Einheiten/s)
' Konstante Ablauf l3 (Einheiten/s)
'Anlauf oder Auslauf?
l0 l1 >
{if}
l2 (L.S.Timegap) * 1 min -1 max s4
{else}
l3 (L.S.Timegap) * 1 min -1 max s4
{endif}
'Sollwert:
l0
'Istwert:
l1
'Beschleunigung:
- l4 *
'Addition zum Istwert:
l1 + s1
{end}
-
Und die Dash?
Ps: Scripte lassen sich besser als Code-Block hier lesen.
-
Also... ich habe das Problem gefunden...
man sollte auch die Dashboard_18 ausm Bremer wieder in meinen gemoddeden Bus reintun... und überschreiben lassen... das würde helfen
Ich schaue jeze, obs geht, wenn nicht melde ich mich nochmal
-
Wäre hilfreich ja
-