Ausgang mehrmals nacheinander schalten

marcel0509

Level-1
Beiträge
25
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Zusammen,

ich habe eine Anfängerfrage, die bestimmt ganz einfach zu lösen ist.

Ich möchte das wenn z.B. E0.0 (Lichtschranke unterbrochen wird gibt Signal 1) das dann z.B. ein Motor 5 mal nacheinander (z.B. A 8.0) an geht (auf Signal 1 schaltet). Der Ausgang muss zwischen den 5 mal immer auf 0 zurück gesetzt werden.

Ich Danke Euch schon mal im Voraus
 
Benutze doch einen Zähler...

Ich tippe jetzt nicht den code...

aber wenn Lichtschranke unterbrochen -> starte Zyklus.
Der Zyklus wirkt auf einen Zähler. Nach erreichen der Grenze wird der Zähler und der Zyklus zurückgesetzt.

Hilfe zum Zähler findest du unter F1
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Versuch doch zwei Einschaltverzögerungen hintereinander zu setzen.

Wenn der Eingang da ist läuft T1 ab, wenn T1 abgelaufen ist läuft T2 ab. Wenn T2 abgelaufen ist wird T1 zurückgesetzt.


Die Anzahl der Takte kannst du über einen Zähler begrenzen.
 
so spontan:
Code:
U Eingang Lichtschranke
S M XY
 
U M XY
U Taktmerker 1s
= AUSGANG Motor
 
U AUSGANG Motor
ZV Z1
 
L WERT Z1
L 5
>=I
R M XY

Greez
 
Hi,

das kannst du auch mit einem Zähler und einem Timer machen.
Eingangsflanke=> Ausgang schalten, Timer laufen lassen. Z.b. 1 sec.
Time 500ms abgelaufen=> Ausgang wieder rücksetzen.
Solange laufen lassen bis der Zähler den gewünschten Wert erreicht!
Zähler mit der Flanke am Ausgang hochzählen.

Gruß
com
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Erst einmal vielen Dank für die vielen Antworten.

Ich würde gerne die Lösung von Approx benutzen, nur leider komm ich mit 2 Befehlen nicht klar:

"U Taktmerker 1s" -> Ich habe den Taktmerker MB100 festgelegt wenn ich dort jetzt "U MB100.5" eintippe kommt eine Fehlermeldung

"L WERT Z1" -> Beim Befehl WERT kommt auch eine Fehlermeldung.

Vielen Dank im Voraus und Sorry für die Anfängerfragen
 
Abfragen darfst du nur den einzelnen Merker, nicht das Merkerbyte.
Also U M 100.5
Den Zählerwert lädst du mit
L Z1
Und schwuppdiwupp sollten deine Fehlermeldungen verschwinden.
 
Also mit

U Ausgang
ZV Z1

Zähle ich ja Hoch

Mit
L Z1
L 5
>=I
R Merker

Damit soll ich doch vergleichen Z1 mit der Zahl 5 nur leider geht das nicht. Da Z1 nicht Z1 ist. Z1 ist einmal eine temp. Variable (Int) und das andere mal ist es nur Z1. Das versteh ich nicht.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ZV Z1 erhöht den Wert des Zählers

L Z1 lädt den Wert des Zählers in Akku1
L5 lädt den Wert 5 in den Akku 1 und verschiebt den Zählwert in Akku 2
>=I vergleicht ob Akku 2 >= Akku 1 ist

Ist dies der FAll, so wird dein Merker zurückgesetzt
 
Die Akkus sind übrigens Register mit denen die SPS intern Werte verarbeiten kann. Stell sie dir mal als so eine Art Zwischenspeicher vor.
Sehr hilfreich ist auch die Onlinehilfe im Step7.
Dort findest du unter "Hilfe zu AWL" auch eine Beschreibung der Akkus und der Lade und Transferbefehle. Und auch von Zähloperationen. Ein Blick dorthin lohnt sich also auf jeden Fall. Was jetzt aber nicht bedeutet, dass Du hier nicht mehr fragen sollst.:p
 
Hallo Zusammen,

nochmals vielen Dank für die Hilfreichen Antworten. Das mit dem Ausgang funktioniert spitze :)

Nur eine Frage habe ich noch, ich kann den Block

L WERT Z1
L 5
>=I
R M XY

Nicht im FUP darstellen, gibt es eine Möglichkeit diesem im FUP zu sehen?
Da ich gerade versuche L 5, mittels Touchpanel (TP177A) zu ändern und wenn ich

L Z 1
L DB10.DBW 4
>=I
R M XY

eintrage, geht meine Steuerung in STOP.
Und vielleicht sehe ich im FUP eher das Problem.

Vielen Dank im Voraus
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hast du auch einen Datenbaustein DB 10 erzeugt und in die CPU geladen ???
Wenn nicht dann findet das Programm den DB 10 nicht und geht in stop. Das auslesen des Fehlerspeichers sollte da klarheit bringen.

peter(R)
 
Also du solltest mal versuchen in einem weiteren Netzwerk das ganze was du in awl da siehst in Fup darzustellen (du nimmst einen Vergleicher CMP... setz ihn vor einen Rücksetzen ....). So begreifst du es dann, weil du es selbst probiert hast.
 
Zurück
Oben