Uebung_004a6a_AX: Toggle Flip-Flop mit IE und E_REND (Rendezvous)¶
Einleitung¶
Diese Übung realisiert einen Toggle-Flip-Flop (Wechselschalter) unter Verwendung von Ereignis-Eingängen (IE) und einem Rendezvous-Baustein (RT_E_REND).
Das System erwartet zwei Tasterereignisse (Eingänge I1 und I2), die innerhalb einer bestimmten Zeitschranke (Deadline) eintreffen müssen. Erst wenn beide Ereignisse synchronisiert wurden, wird der Flip-Flop getaktet und der Digitalausgang Q1 umgeschaltet. Ein dritter Taster (I3) dient als Reset für den Rendezvous-Mechanismus.
Die Übung demonstriert den Umgang mit zeitkritischen Ereignisverbindungen, Rendezvous-Synchronisation und einfachen Toggle-Funktionen in der 4diac-IDE.
Verwendete Funktionsbausteine (FBs)¶
Die SubApp verwendet folgende (Sub-)Bausteine:
DigitalInput_CLK_I1– Typ:logiBUS::io::DI::logiBUS_IE- Parameter:
QI=TRUEInput=Input_I1InputEvent=BUTTON_SINGLE_CLICK
- Ereignisausgang:
IND(sendet Ereignis bei Tastendruck) -
Funktion: Erzeugt ein Ereignis, sobald der Taster an Eingang I1 einmal gedrückt wird.
-
DigitalInput_CLK_I2– Typ:logiBUS::io::DI::logiBUS_IE - Parameter:
QI=TRUEInput=Input_I2InputEvent=BUTTON_SINGLE_CLICK
- Ereignisausgang:
IND -
Funktion: Erzeugt ein Ereignis bei Tastendruck an Eingang I2.
-
DigitalInput_CLK_I3– Typ:logiBUS::io::DI::logiBUS_IE - Parameter:
QI=TRUEInput=Input_I3InputEvent=BUTTON_SINGLE_CLICK
- Ereignisausgang:
IND -
Funktion: Erzeugt ein Ereignis bei Tastendruck an Eingang I3 (dient als Reset).
-
RT_E_REND– Typ:eclipse4diac::rtevents::RT_E_REND - Parameter:
QI=TRUETmin=T#100ms(minimale Ereigniszeit, hier nicht ausgenutzt)Deadline=T#20ms(maximale Zeit zwischen EI1 und EI2)WCET=T#1ms(worst-case execution time)
- Ereigniseingänge:
EI1,EI2,R(Reset) - Ereignisausgang:
EO - Datenverbindungen: keine
-
Funktion: Führt ein Rendezvous zwischen den Ereignissen an
EI1undEI2durch. Wenn beide innerhalb derDeadlineeintreffen, wirdEOausgelöst. Der EingangRsetzt den internen Zustand zurück. -
AX_T_FF– Typ:adapter::events::unidirectional::AX_T_FF - Parameter: keine
- Ereigniseingang:
CLK(Taktsignal) - Adapterausgang:
Q -
Funktion: Toggle-Flip-Flop. Jedes Ereignis am
CLK-Eingang wechselt den Zustand des AusgangsQ. -
DigitalOutput_Q1– Typ:logiBUS::io::DQ::logiBUS_QXA - Parameter:
QI=TRUEOutput=Output_Q1
- Adaptereingang:
OUT(Steuersignal) - Funktion: Gibt den Wert von
OUTauf dem physischen Ausgang Q1 aus.
Programmablauf und Verbindungen¶
- Ereigniserfassung:
-
Die drei Tastereingänge (
Input_I1,Input_I2,Input_I3) werden durch dieDigitalInput_CLK_IX-Bausteine überwacht. Bei jedem einfachen Tastendruck (EreignisBUTTON_SINGLE_CLICK) wird der EreignisausgangINDaktiviert. -
Rendezvous (Ereignissynchronisation):
- Die Ereignisse von
I1undI2werden anEI1undEI2desRT_E_REND-Bausteins weitergeleitet. - Solange nicht beide Ereignisse eingetroffen sind, wartet der Baustein. Die maximale Wartezeit zwischen dem ersten und zweiten Ereignis beträgt 20 ms (
Deadline). Überschreitet die Differenz diesen Wert, wird der Vorgang verworfen und der nächste Versuch wird erwartet. -
Ein Ereignis von
I3(Reset-Pin) setzt den Rendezvous-Zustand sofort zurück, ohneEOauszulösen. -
Toggle-Flip-Flop:
- Wenn der Rendezvous erfolgreich ist, sendet
RT_E_RENDein Ereignis an denCLK-Eingang desAX_T_FF. -
Der Flip-Flop wechselt seinen internen Zustand (von
FALSEaufTRUEoder umgekehrt) und gibt diesen über den AdapterausgangQaus. -
Ausgabe:
- Der Zustand des Flip-Flops (
Q) wird an denOUT-Adaptereingang desDigitalOutput_Q1-Bausteins angeschlossen. Dieser steuert den physischen AusgangOutput_Q1entsprechend. - Bei jedem erfolgreichen Rendezvous schaltet die Ausgabe also um (Toggle-Funktion).
Zusammenfassende Verbindungstabelle:
| Quelle | Ziel |
|---|---|
DigitalInput_CLK_I1.IND |
RT_E_REND.EI1 |
DigitalInput_CLK_I2.IND |
RT_E_REND.EI2 |
DigitalInput_CLK_I3.IND |
RT_E_REND.R |
RT_E_REND.EO |
AX_T_FF.CLK |
AX_T_FF.Q (Adapter) |
DigitalOutput_Q1.OUT (Adapter) |
Zusammenfassung¶
Die Übung zeigt:
- Die Verwendung von Ereignis-Eingängen (logiBUS_IE) zur Erfassung von Tasterdrücken.
- Die zeitgesteuerte Rendezvous-Synchronisation (RT_E_REND) mit konfigurierbarer Deadline.
- Den Betrieb eines Toggle-Flip-Flops (AX_T_FF), der durch das Rendezvous-Ereignis getaktet wird.
- Die Anbindung eines Digitalausgangs (logiBUS_QXA) zur Ausgabe des Flip-Flop-Zustands.
Damit wird die Grundlage für zeitkritische, ereignisgesteuerte Logik in der Automatisierungstechnik vermittelt.