Abgelaufene Zeit remanent erfassen

Braucht es dafür denn einen FB? Für den Zählwert, ja, aber den könnte man auch in einem globalen DB ablegen und als InOut übergeben.

Die Vorgehensweise wäre hier, alles was zwischen den einzelnen Einheiten unterschiedlich ist (also Eingangssignale der Taster, Ausgabesignale der Motoren, Zählwert) auf die Bausteinschnittstelle zu legen (oben findest du In, Out, InOut). Dann kannst du in deinem OB1 den FC "Rollladensteuerung" aufrufen und musst dann beim Aufruf jeweils die Signale an den FC übergeben.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Braucht es dafür denn einen FB? Für den Zählwert, ja, aber den könnte man auch in einem globalen DB ablegen und als InOut übergeben.
Und die Flanken. Und die FlipFlops.
Und was da vielleicht sonst noch so kommt.

Kann man sicher alles auch per InOut übergeben, aber schön ist IMHO anders...
🤷‍♂️
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich habs jetzt so gelöst.
Die zu schaltenden Ausgänge werden direkt vom jeweiligen Taster oder von dem ENO der ADD_I oder SUB_I geschalten. Das geht schnell.
Gibts da Einwände?

Anhang anzeigen 83574

Anhang anzeigen 83575




bzw. ohne das ODER Glied


Anhang anzeigen 83576

Anhang anzeigen 83577
Hat das eigentlich einen besonderen Grund, dass du beim Rolladen herunterfahren subtrahierst und beim hochfahren addierst? Die Grundstellung ist doch eigentlich "Rolladen oben" oder?
 
Ich möchte die Position des Rollos damit ermitteln.
Das Rollo fährt ja eine gewisse Zeit max auf bzw. zu. Die von mir gezählte Zeit während der Tasterbetätigung kann ins Verhältnis der Gesamtverfahrzeit gesetzt werden. So weiss ich, wo das Rollo sich befindet, wenn Zwischenpositionen angefahren wurden. Eine Grundstellung (Rollo komplett oben) setzt den DB1.DBW2 auf 0.
 
Ja. Aber wenn die Grundstellung oben ist, müsstest du ja beim herunterfahren die Zeit zählen(addieren) und beim hochfahren zurückzählen(subtrahieren). In deinem Beispiel ist es umgekehrt.;)
 
Zurück
Oben