Rolladensteuerung mit S5: Schrittketten usw.

Beetle

Level-1
Beiträge
5
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich habe noch eine alte S5-100-Cpu mit verschiedenen E/A-Baugruppen im Keller liegen und möchte diese für meine elektrischen Rolladen verwenden. Die Rolladen sollen folgendermassen zu steuern sein:
-Taster an jedem Rolladen, mit dem innerhalb einer bestimmten Zeit folgender Ablauf stattfinden soll: 1. Druck: Rolladen fährt ab, 2.Druck: Rolladen stoppt, 3.Druck: Rolladen fährt nach oben, 4. Druck: Rolladen stoppt. Wenn die Zeit, welche etwas länger wie der komplette Fahrweg von oben nach unten dauert, abgelaufen ist, werden der Schritt 2 bzw. 4 übersprungen, d.h. ich fahre einen Rolladen von Hand herunter. Nach z.B. 5 Sek. ist er auf jeden Fall unten, d.h. er soll nach einem erneuten Tastendruck sofort hochfahren, nicht erst in den 2. Schritt "Rolladen stoppt" springen.
-Desweiteren soll eine externe Zeitschaltuhr die Rolladen Abends automatisch herunterfahren und morgens öffnen (Signal "lo"=Nacht, "high"=Tag).
-Über einen Zentraltaster sollen pro Raum die Rolladen zusammen zu fahren sein, tagsüber nach unten und nachts nach oben.
Ich habe mir schon Gedanken über den Ablauf gemacht und wollte einen FB schreiben, da ich insgesamt 18 Rolladen steuern muß. Den Ablauf wollte ich mit Schrittketten programmieren, aber ich habe das Problem, das ich nicht weiß, was ich als Weiterschaltbedingung nehmen soll. Da ich immer nur den einen Tastereingang (z.B. E1.0) habe, werden sofort alle folgenden Schrittketten abgearbeitet, sobald der Eingang betätigt wird und dadurch der vorhergehende Schritt durchlaufen ist. Hat jemand eine Idee, wie ich diese Schrittketten programmieren muß, um die Weiterbearbeitung der nächsten Schritte kontrolliert durchzuführen?
Viele Grüße
Stefan
 
Den Ablauf wollte ich mit Schrittketten programmieren, aber ich habe das Problem, das ich nicht weiß, was ich als Weiterschaltbedingung nehmen soll. Da ich immer nur den einen Tastereingang (z.B. E1.0) habe, werden sofort alle folgenden Schrittketten abgearbeitet, sobald der Eingang betätigt wird und dadurch der vorhergehende Schritt durchlaufen ist. Hat jemand eine Idee, wie ich diese Schrittketten programmieren muß, um die Weiterbearbeitung der nächsten Schritte kontrolliert durchzuführen?

Du musst zunächst eine Flankenauswertung (Wischkontakt) Deines Taster E1.0 machen, so dass Du, wenn Du den Taster 1.0 drückst, für einen Programmzyklus einen Impuls bekommst. Dieser Impuls ist dann die Weiterschaltbedingung der Schrittkette.

Dann musst Du in der Schrittkette die einzelnen Schritte am S-Eingang der SR-Glieder zusätzlich mit dem vorherigen Schritt verriegeln. Ein Beispiel für STEP 7 findest Du hier im FB202:

http://www.sps-forum.de/showpost.php?p=66612&postcount=23

Gruß Kai
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Kai,
vielen Dank für die rasche Antwort. Dazu muß ich aber dann die Schrittketten von hinten nach vorne programmieren, d.h. der erste Schritt muß im Baustein ganz hinten stehen? Ansonsten würde dieser Impuls wieder die Bearbeitung aller weiteren Schritte auslösen.
Viele Grüße
Stefan
 
Hallo Beetle,
ich würde es prinzipiell erstmal so angehen, dass du bei jedem Tastendruck über einen Timer kontrollierst, wie lange die Taste gedrückt wurde (Auswertung "Impuls" oder "Lang") und entsprechend einen Merker zuweisen. (Wird in der Bustechnik "LCN" oder "EIB" genauso gemacht).
Parallel läßt du einen Zähler für die Tastendrücke mitlaufen. (U E_Taste ZV Z11) Ist der Zähler auf 1 fährst du hoch, bei 2 Stop, bei 3 runter, bei 4 Zähler Reset und Stop und entsprechend bei 0 auch Stop. Dadurch bekommst du die 1-Tasten-Bedienung.
Hast du den Impuls gegeben, der z.B. hoch auslößt startest du parallel einen Timer, der wenn abgelaufen den Zähler einen weiter-taktet und damit Stop bewirkt.
Die Verdunklungs-Steuerung nach Uhrzeit legst du als Nebenfunktion dran. Man könnte es aber trotzdem noch so machen, dass eine Vor-Ort-Bedienung Vorrang erhält.

Die ganze Angelegenheit ist m.E. nicht unbedingt ein Anwendungsfall für eine Schrittkette.
 
Dazu muß ich aber dann die Schrittketten von hinten nach vorne programmieren, d.h. der erste Schritt muß im Baustein ganz hinten stehen? Ansonsten würde dieser Impuls wieder die Bearbeitung aller weiteren Schritte auslösen.

Nein, die Schrittkette wird ganz normal von vorne nach hinten programmiert, der erste Schritt steht also vorne. Wenn ich Zeit habe, dann stelle ich dazu heute noch mal ein Beispiel ins Forum.

Gruß Kai
 
Zuviel Werbung?
-> Hier kostenlos registrieren
So, hier ist nun mein Programmbeispiel für eine Schrittkette mit 4 Schritten. Es gilt dabei die Zuordnung:

E1.0 = M100.0 = Taster Ein
E1.1 = M100.1 = Taster Reset

Das Programm habe ich mit STEP 5 V7.2 geschrieben, die Programmdateien sind als ZIP-Archiv beigefügt.

Gruß Kai
 

Anhänge

  • STEP 5 - AWL.pdf
    4,4 KB · Aufrufe: 114
  • STEP 5 - FUP.pdf
    4,8 KB · Aufrufe: 138
  • STEP 5 V7.2.zip
    3,1 KB · Aufrufe: 73
So, hier ist nun mein Programmbeispiel für eine Schrittkette .............

nur mal ne frage nebenbei.
hast du eigentlich keine arbeit, das du hier für jeden der was haben möchte ein prog schreibst?

wenn das so ist, poste ich hier auch mal ein paar sachen.
das würde mich dann (vielleicht) ein wenig in meiner arbeit entlasten. :ROFLMAO:
 
Hallo Kai,
vielen Dank für Dein Programmbeispiel. Es funktioniert ganz gut in meiner Simulation, hat aber einen kleinen Schönheitsfehler, den ich auch bei der Programmierung über einen Zähler, wie Larry Laffer es geraten hat, auftritt. Und zwar läuft das Programm beim ersten Durchlauf ganz normal, aber wenn die Schrittkette im Schritt 4 steht, springt diese nach dem nächsten Tastendruck erst wieder in den Schritt 0, d.h. ich muß den Taster 2x drücken, um den Rolladen wieder abzufahren. Eigentlich dürfte der Schritt 0 nur einmal beim Anlauf des Programmes abgearbeitet werden, danach übernimmt der Schritt 4 die Funktion von Schritt 0, oder man lässt den Schritt 4 komplett weg und springt nach Schritt 3 sofort wieder zu 0, da bei Schritt 0 und 4 der Rolladen sowieso steht.
Viele Grüße
Stefan
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ohne mir das jetzt genauer anzusehen... ;)

ergänze das so

nach schritt4
U SR04
S HIM_SR4

im schritt1
U SR00
O HIM_SR4
.....

him_sr4 kannst du bei neustart im ob100-102 zurücksetzen
 
Hallo,
mein Ansatz wäre gewesen :
Code:
U E 1.0
ZV Z1
***
L Z1
L KF 3
>F
R Z1
***
L Z1
L KF 1
!=F
= A_senken
***
L Z1
L KF 3
!=F
= A_heben

... und für das Zwangs-Steuern per Master-Schalter könnte man den Zähler auf den passenden Wert setzen ...
... und nach Ablauf der Fahrzeit einfach weiterschalten ...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo HDD,
die Suchfunktion hatte ich eigentlich benutzt, aber dieses Beispiel habe ich dabei nicht gefunden!? Ich habe zwar schon einige Lösungen im Internet gefunden, aber meistens sind zwei Taster und/oder Endschalter für die Rolladen eingesetzt, was bei mir aber nicht zutrifft.
Aber vielen Dank für Deinen Link, das sieht auch gut aus, wobei z.B. bei der Steuerung des Zentraltasters wieder zwei Eingänge verwendet werden.

@Larry Laffer
Deine Lösung ist ja absolut minimalistisch! Dazu funktioniert diese genau so, wie ich mir den Ablauf vorgestellt habe, so habe ich jetzt wenigstens ein Grundgerüst welches ich nun noch für meine Bedürfnisse anpassen muß. Aber ich denke, das ich das hinbekomme, aber da ich schon seit Ewigkeiten nicht mehr programmiert habe, treten doch die einen oder anderen Probleme auf. Sollte ich mal nicht mehr weiterkommen, melde ich mich wieder!

Viele Grüße
Stefan
 
Zurück
Oben