Step 7 SCL Zeitverzögerung mit Schleifen in STEP 7

jan-b

Level-1
Beiträge
2
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen, ich bin blutiger anfänger im programmieren in scl und habe eine für euch warscheinlich lächerliche frage=).
und zwar... ich habe 1 aktor (A5.0). ich möchte nun über die zielfunktion bspw einer FORschleife, dass der aktor bei dem ansprechen eines bestimmten eingangs eine 1 bekommt und eine 0 sobald die schleife durchlaufen ist. ich glaube man muss FOR mit IF verknüpfen, bin mir aber nicht sicher. auch falls das so sein sollte, weiß ich leider nicht wie.
kann mir bitte jemand dabei behilflich sein und mir die schritte erklären.
vielen lieben dank schonma

IF E.124.1 = 1 THEN

FOR i =:1 TO 100 BY 1 DO A5.0:=1

... KEINE AHNUNG :)
 
Hallo zusammen =), ich bin blutiger anfänger im programmieren mit scl und habe ein für euch wahrscheinlich lächerliche frage =)
und zwar... ich habe 1 aktor(A5.0) und möchte, dass wenn ein bestimmter eingang eine 1 bekommt und so der aktor auch eine 1 bekommt, dass beispielsweise über eine FOR schleife eine zeitverzögerung stattfindet, und der aktor erst nach mehrmaligen durchlaufen wieder eine 0 bekommt.

ich wäre euch super dankbar, wenn ihr mir helfen könntet. ich glaube man muss FOR mit IF verknüpfen, bin mir aber nicht sicher. und wenn das so sein sollte, weiß ich leider auch nicht wie das funktioniert.

liebe grüße
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Vielleicht solltest du erst noch mal nachdenken wie eine SPS prinzipiell funktioniert.
Und danach kannst du dann nochmal übers programmieren nachdenken.

Eine Schleife in der von dir angedachten Form würde die SPS in die Zykluszeitüberwachung rauschen lassen.

Du brauchst also Timer z.B. TON und je nach gewünschter Funktion evtl. ein Case-Konstrukt.

Mfg
Manuel
 
dass der aktor bei dem ansprechen eines bestimmten eingangs eine 1 bekommt und eine 0 sobald die schleife durchlaufen ist.

Das funktioniert in einer SPS so nicht. Wenn Du innerhalb eines Programmzyklus einen Ausgang erst auf 1 und später wieder zu 0 setzt, wird der Ausgang nie 1 sein, da der Hardwareausgang erst geschaltet wird, wenn der Programmzyklus zu ende ist. Man nenn das Aktualisierung des Prozessabbildes.

Zuerst wird das Prozessabbild der Eingänge aktualisiert, dann das Programm abgearbeitet und dann das Prozessabbild der Ausgänge aktualisiert.

Weiterhin sollte man der Übersichtlichkeit halber einen Ausgang nur einmal im SPS-Programm schreiben.

Aber vermutlich willst Du etwas ganz anderes realisieren und hast es nur unglücklich formuliert. Beschreibe noch einmal detailliert die Aufgabenstellung.

Gruß.
 
Zurück
Oben