Autor Thema: Selbsthaltung für Ausgang via XOR pulst/blinkt obwohl nicht gewünscht  (Gelesen 3188 mal)

Offline mail@goelz.it

  • Newbie
  • *
  • Beiträge: 4
Selbsthaltung für Ausgang via XOR pulst/blinkt obwohl nicht gewünscht
« am: November 01, 2023, 15:42:22 Nachmittag »
Hallo Easy-Gemeinde,

ich bin mit der Easy E4 (V1.42) noch ganz frisch und bitte deshalb hier um Unterstützung/Tipps.

Auf einer alten KM PS4-101-DD1 lief seit 25 Jahren ein einfaches Programm zur Lampensteuerung.
Jetzt wollte ich aufgrund des Alters der SPS diese gegen eine E4 tauschen.

Folgendes soll mit 3 Taster (I1-I3) und einem Ausgang (Q4) erreicht werden:
Wird einer der Taster innerhalb von 2sec 3x betätigt, dann soll Ausgang Q4 sich selbst halten.
Wird anschließend erneut einer der Taster innerhalb von 2 sec wieder 3x betätigt, dann soll Q4 wieder erlischen.

Folgendes habe ich in ST erstellt:

******************************* schnipp ****************************************

//Eingänge I01, I02 und I03 auf Merker M04 spiegeln
M04:=I01 OR I02 OR I03;

//Steigende Flanken der Eingänge I01, I02 und I03 erkennen
M02:=M01 AND M04;
 
//Eine steigende Flanke kann nur entstehen, wenn kein Eingang gesetzt war
M01:=NOT I01 AND NOT I02 AND NOT I03; 

//2sec Torzeit-Timer
T01 (
   EN := M02,
   RE := ,
   ST := ,
   I1 := T#2s,
   I2 := ,
   Q1 => ,
   QV =>
);

//Zähler für Eingangsimpulse via I01-I03
C01 (
   EN := ,
   C_ := M02,
   D_ := FALSE,
   SE := ,
   RE := NOT T01Q1,
   SH := 3,
   SL := ,
   SV := ,
   OF => ,
   FB => ,
   CY => ,
   ZE => ,
   QV =>
);

//Ansteuerung Ausgänge
Q04 := Q04 XOR C01OF;

// Programmende


******************************* schnipp ****************************************

Das kuriose ist, dass die Funktion ansich bereits klappt, aber aus mir unerklärlichen Gründen
der Q4 pulst/blinkt bevor er sich selbst hält  ::)

Im angefügten GIF sieht man das pulsen/blinken an Q4

Vorab Danke
Dirk

Offline weiss_nix

  • Sr. Member
  • ****
  • Beiträge: 608
  • it has to be easy, it's a easy!
Antw:Selbsthaltung für Ausgang via XOR pulst/blinkt obwohl nicht gewünscht
« Antwort #1 am: November 01, 2023, 18:08:00 Nachmittag »
Hallo Dirk,

im Prinzip ist das Verhalten des blinkenden Ausgang nachvollziehbar!

C01OF wird erst mit Ablauf des Timer  zurückgesetzt, das bedeutet dass dein XOR in der Zeit zwischen erreichen des Zählerstand und Ablauf des Timer immer wieder als toogle fungiert ...
Sollte ich (gefährliches) Halbwissen verbreiten, beuge ich demütig mein Haupt mit der Gewissheit versagt zu haben!
WICHTIG: Sämtliche Programme dienen lediglich der Veranschaulichung von Funktionen und sind nicht für den Produktiveinsatz geeignet!

Offline weiss_nix

  • Sr. Member
  • ****
  • Beiträge: 608
  • it has to be easy, it's a easy!
Antw:Selbsthaltung für Ausgang via XOR pulst/blinkt obwohl nicht gewünscht
« Antwort #2 am: November 01, 2023, 18:15:40 Nachmittag »
... da der Zähler NUR! bei positiver Flanke zählt kannst du dir die Flankenauswertung aus meiner Sicht sparen und den Timer nimmst du Impulsformend.

//2sec Torzeit-Timer
T01 (
   EN := I1 or I2 or I3,
   RE := C01OF,
   ST := ,
   I1 := T#2s,
   I2 := ,
   Q1 => ,
   QV =>
);

//Zähler für Eingangsimpulse via I01-I03
C01 (
   EN := ,
   C_ := I1 or I2 or I3,
   D_ := FALSE,
   SE := ,
   RE := NOT T01Q1,
   SH := 3,
   SL := ,
   SV := ,
   OF => ,
   FB => ,
   CY => ,
   ZE => ,
   QV =>
);

//Ansteuerung Ausgänge
Q04 := Q04 XOR C01OF;
;
« Letzte Änderung: November 01, 2023, 18:19:59 Nachmittag von weiss_nix »
Sollte ich (gefährliches) Halbwissen verbreiten, beuge ich demütig mein Haupt mit der Gewissheit versagt zu haben!
WICHTIG: Sämtliche Programme dienen lediglich der Veranschaulichung von Funktionen und sind nicht für den Produktiveinsatz geeignet!

Offline mail@goelz.it

  • Newbie
  • *
  • Beiträge: 4
Antw:Selbsthaltung für Ausgang via XOR pulst/blinkt obwohl nicht gewünscht
« Antwort #3 am: November 02, 2023, 18:37:33 Nachmittag »
Hallo weiss_nix,

Dein Tipp funktioniert auf Anhieb.
Es war bei mir die fehlende Rücksetzfunktion für das Zeitglied
(
T01 (
   EN := I1 or I2 or I3,
   RE := C01OF,
...
)

Herzlichen Dank.
Dirk

PS: Ich plädiere auch dafür, dass Du Dein Account-Name änderst... evtl. in weiss_doch_was  ;D

Offline weiss_nix

  • Sr. Member
  • ****
  • Beiträge: 608
  • it has to be easy, it's a easy!
Antw:Selbsthaltung für Ausgang via XOR pulst/blinkt obwohl nicht gewünscht
« Antwort #4 am: November 02, 2023, 19:20:08 Nachmittag »
... freut mich wenn's geholfen hat!
... und der Name bleibt *ggg*
Sollte ich (gefährliches) Halbwissen verbreiten, beuge ich demütig mein Haupt mit der Gewissheit versagt zu haben!
WICHTIG: Sämtliche Programme dienen lediglich der Veranschaulichung von Funktionen und sind nicht für den Produktiveinsatz geeignet!