Alle gesetzten Merker einer Funktion zurücksetzen

dominik_Thesis

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

Ich würde gerne (wenn möglich in FUP), mit einem bestimmten Befehl alle gesetzten Merker einer Funktion zurücksetzen. Hintergrund ist, das ich eine Anlage in Hand- und Automatikbetrieb schalten möchte. Und die Merker sich nicht gegenseitig "behindern sollen". Weiss vll jemand Rat?

Vielen Dank

Dominik
 
Hallo,

gebe dir eine flinke Antwort.
je nachdem was du verwendet hast, also wieviele Byte oder Wörter oder DW.


als Beispiel.

SET (Braucht man ansich nicht)
L 0
T MW 0
T MW 2
T MW 4
T MW 6
T MW 8

und schon sind alle Merker von 0.0 bis 9.9 auf 0 :)

Den Ladebehl kannst du im programm Ausklammern, das macht der ordentliche Programmierer aber nicht.
Sondern mit einen Sprung

U M 100.0 (Merker sollen gelöscht werden)
SPBN 0123

SET (Braucht man ansich nicht)
L 0
T MW 0
T MW 2
T MW 4
T MW 6
T MW 8

0123: Nop 0



Hoffe ist dir auf die schnelle hilfreich,

grüsse
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also erstmal danke für die schnelle Antwort!
leider ist mir damit noch nicht so geholfen :(

Bin eher ein SPS-Neuling! Ich würde gerne z.B. mit dem Taster "Handbetrieb" die Merker aus der Funktion "automatikbetrieb" zurücksetzen, ohne alle Merker ausser Kraft zu setzen (was, wenn ich deinen Tipp Richtig verstanden habe damit der Fall gewesen wäre). Ich habe also noch andere Funktionen, deren Merker gesetzt bleiben sollten.

Gruss

Dominik
 
Hallo Dominik,

die einfachste Lösung ist sicherlich, dass du beim Zuweisen/Setzen deiner Merker (z.Bsp. vom Automatikbetrieb) immer die Abfrage ob Hand- oder Automatikbetrieb aktiviert ist mit verknüpfst.

z.Bsp.:

U M 1.0 //Automatik EIN
U .....
U .....
S M 100.0 //Automatik Schritt 1

O M 1.1 //Hand EIN
O M 100.1 //Automatik Schritt 2
O ...
O ...
R M 100.0 //Automatik Schritt 1

MfG
FrankW
 
leider ist mir damit noch nicht so geholfen :(
Wieso ist dir damit nicht geholfen ?
Das Beispiel von maxi löscht 80 Merker, da bleiben, je nach CPU, noch mindestens 1968 Merker übrig, die nicht gelöscht werden.
Du darfst halt für die gewünschte Betriebsart nur Merker aus diesem Bereich verwenden.
Alternativ müsstest du alle gewünschten Merker einzeln zurücksetzen.

Grüße von HaDi
 
@Ralle genau das hab ich ja dedacht umgehen zu können ;)

Naja vll war ich dann doch zu Faul und muss halt in den sauren Apfel beissen!

Habe gedacht es gibt vll so nen Spezialbefehl "Setze alle Merker zurück die in FC13 gesetzt waren wenn Taster XY betätigt wird"

schade eigentlich*ROFL*
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

als Beispiel.

SET (Braucht man ansich nicht)
L 0
T MW 0
T MW 2
T MW 4
T MW 6
T MW 8

und schon sind alle Merker von 0.0 bis 9.9 auf 0 :)

Den Ladebehl kannst du im programm Ausklammern, das macht der ordentliche Programmierer aber nicht.
Sondern mit einen Sprung

U M 100.0 (Merker sollen gelöscht werden)
SPBN 0123

SET (Braucht man ansich nicht)
L 0
T MW 0
T MW 2
T MW 4
T MW 6
T MW 8

0123: Nop 0



Hoffe ist dir auf die schnelle hilfreich,

grüsse


Ich glaube du hast die Flankenauswertung vergessen. Sonst werden die Merker immer rückgesetzt. Und so wie ich das verstanden habe, möchte er die Merker im Handbetrieb verwenden.
 
Hallo

..... Ich würde gerne z.B. mit dem Taster "Handbetrieb" die Merker aus der Funktion "automatikbetrieb" zurücksetzen, ......

Ich persönlich finde das unschon. Was ist wenn die Merker (die zurückgesetzt werden sollen) mit = verwendet (gesetzt) werden?

Da gefällt mir der Vorschlag von FrankW schon viel besser.
Hallo Dominik,

die einfachste Lösung ist sicherlich, dass du beim Zuweisen/Setzen deiner Merker (z.Bsp. vom Automatikbetrieb) immer die Abfrage ob Hand- oder Automatikbetrieb aktiviert ist mit verknüpfst.

z.Bsp.:

U M 1.0 //Automatik EIN
U .....
U .....
S M 100.0 //Automatik Schritt 1

O M 1.1 //Hand EIN
O M 100.1 //Automatik Schritt 2
O ...
O ...
R M 100.0 //Automatik Schritt 1

MfG
FrankW

Gruss Hoyt
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich glaube du hast die Flankenauswertung vergessen. Sonst werden die Merker immer rückgesetzt. Und so wie ich das verstanden habe, möchte er die Merker im Handbetrieb verwenden.

Lesen :O)

Code:
Den Ladebehl kannst du im programm Ausklammern, das macht der ordentliche Programmierer aber nicht.
Sondern mit einen Sprung

U M 100.0 (Merker sollen gelöscht werden)
SPBN 0123

SET (Braucht man ansich nicht)

Grüsse

PS: hätte nichts gebracht wie man Datenbereiche komplett beschriebt, das währe zu komliziert gewesen udn für mich zu zeitaufwenidg.
Grüsse
 
Ja, aber da er nicht weiss wie man mit dem Ladebefehl umgeht wird er vermutlich den Merker direkt mit seinem Schalter Auto/Hand verknüpfen. Dann würde er Sich wundern warum die Ausgänge bei Hand immer 0 sind.

Ich fänd es schöner wenn man den Baustein nur mit der Variable Auto_Ein bzw. Hand_Ein versorgen würde. Die Flankenauswertung des Wahlschalters Hand/Auto gehört meiner Meinung nach da mit zu.
 
Vielen Dank für eure Antworten! habe es jetzt auf die herkömmliche(vll nicht ganz so schöne) Weise gemacht.

U E0.6
R M1.0
R M1.1
.
.
.

usw.

Aber es Funktioniert und das ist erstmal die Hauptsache!

Lieben Gruss

Dominik
 
Ich weiss ja ned was er damit machen möchte. Ich kann nur die Fragen beantworten und leider noch nicht Hellsehen.
Aber wir arbeiten hier daran, bis Weihnachten können wir bestimmt auch Hellsehen ;)

*spass*


Für Jackjones:

Möglichkeit 1: Für fortgeschrittene Anfänger:
U E0.6
R M1.0
R M1.1
.
.
.

in

FP E0.6 (Flanke Positiv)
R M1.0
R M1.1

oder Müglichkeit 2: Für Anfänger

U E0.6
UN M 100.0
R M1.0
.
.
R M1.1
S M100.0
UN E0.6
R M 100.0




Grüsse
 
Zurück
Oben