Nochmals Sprungoptionen

sps-questioner

Level-1
Beiträge
88
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
hallo leute,
ich muss nochmal schreiben, da es immer noch nicht so funktioniert wie ich mir das vorstelle...
also wie schon beim ersten beitrag geht es um sprünge, klar....
so sieht der programmausschnitt aus:
OB 1

call fc 4 --Modusanwahl
call fc 7 --Ausgänge

// HAND Betrieb

U "Handbetrieb Merker"
SPB m000

// AUTOMATIK Betrieb

U "Automatik Merker"
SPB m001
SPA ende

m000 :CALL "HAND"
SPA ende
m001 :CALL "AUTOMATIK"
SPA ende

ende :NOP 1

FC 4:

//HAND
U "Steuerung EIN Merker"
U "OP Tasten_DB".HANDbetrieb
UN "Schritt 2"
S "Handbetrieb Merker"
U(
ON "Steuerung EIN Merker"
O
U "Automatik Merker"
UN "OP Tasten_DB".HANDbetrieb
)
R "Handbetrieb Merker"
NOP 0
//AUTO

U "OP Tasten_DB".AUTOMATIKbetrieb
U "Steuerung EIN Merker"
S "Automatik Merker"
U(
ON "Steuerung EIN Merker"
O
U "Handbetrieb Merker"
UN "OP Tasten_DB".AUTOMATIKbetrieb
)
R "Automatik Merker"
NOP 0

also ich setze im fc 4 jeweils einen merker der entweder für den hand oder für den automatik modus ist.
im ob1 wird dieser dann abgefragt und so wird der jeweilige fc angewählt.
in den fcs für auto und hand werden nur merker gesetzt, keine ausgänge.
im fc 7 werden dann die ausgänge über die jeweiligen merker angesteuert.
ich habe es im ob 1 mit dem en eingang für den fc probiert, das ergebnis war dasselbe, sobald ich mich in einem der fcs (auto oder hand) befinde, komme ich nicht mehr zurück in den anderen fc.
weiss jemand rat????
oder wie schaffe ich es, sobald ich den fc wechsle, also z.B. von hand auf auto, dass alles was in hand war rückgesetzt wird???
mfg
 
Was ist das mit deinem "Schritt_2" in deinem FC4 ?
Werden deine Betriebsarten-Merker denn korrekt gesetzt ?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ab schritt 2 im automodus kann nicht mehr in den hand modus gewechselt werden, aber ich hab auch grade gesehen dass wahrscheinlich da das problem liegt....aber trotzdem wie schaffe ich es dass alles was in einem fc gesetzt wurde beim wechsel auf einen anderen wider rückgängig gemacht wird????
 
oder wie schaffe ich es, sobald ich den fc wechsle, also z.B. von hand auf auto, dass alles was in hand war rückgesetzt wird???
Am Anfang von dem FC für Hand setzt Du alle Automatik-Merker zurück.
Am Anfang von dem FC für Automatik setzt Du alle Hand-Merker zurück.

Code:
Call FC Hand
   SET
   R M Automatik_Start
   R M Automatik_???
   R M u.s.w.
 
Call FC Auto
   SET
   R M Hand_Start
   R M Hand_Tippen
   R M u.s.w.
Vielleicht kannst Du ja auch alle Automatik-/ Handmerker auf einen Bereich legen.
Zum Beispiel:
Hand = M 10.0 - M 11.7
Auto = M 20.0 - M 21.7
Code:
Call FC Hand
   L 0
   T MW Auto
 
Call FC Auto
   L 0
   T MW Hand
 
Zuletzt bearbeitet:
Du könntest zum Beispiel beim ersten Aufruf des Gegen-FC's die Merker des Vorgänger-FC's alle löschen. Oder in beiden Bausteinen mit den gleichen Merkern arbeiten. Oder beide Betriebsarten ineinander integrieren.
Aber eigentlich würde mein erster Vorschlag noch am Besten passen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
okay das klappt ja ganz gut aber ein problem noch , meine op anzeige sind alle in einem db hinterlegt, also z.b. automatikbetriebanzeige oder presse anzeige, wenn ich jetzt meine anlage ausschalte wie setze ich alle anzeige zurück?
 
Na ... du baust dir für den Zustand STOP auch noch einen Baustein in dem du sowohl deine Hand-Merker wie auch deine Automatik-Merker löscht ...

Der Zustand Stop sollte allerdings nicht Hauptschalter-Aus sein.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
also jetzt ist es gleich wider soweit...warum geht mir meine sps auf stop wenn ich sage
UN "OP Tasten_DB".DBX0.1 --Ausschalten
SPB m010
SPA endy

m010 :L 0
T AW 0
T MW 0
T MW 1
T MW 2
T "OP Anzeigen_DB".DBW0
T "OP Anzeigen_DB".DBW1
T "OP Anzeigen_DB".DBW2


//= z0
//= z1
//= t0
//= t1
SPA endy

endy :NOP 1

und gleich noch was kann ich auch zähler und timer zurücksetzen?????
 
Was sagt denn die Diagnose dazu ?
Hat dein DB die richtige Größe ?

Das MW0 beinhaltet übrigens die MB's 0 und 1. Wenn du MW0 und MW2 löscht ist das schon OK. Gleiches gilt auch für deinen DB ...
 
dummer fehler meinerseits..ich hab jetzt dbw0 und dbw1 gelöscht.....mein fehler....
ähm und wie kann ich zähler und timer löschen?????
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ein Zähler wird mit der Befehl "R" gelöscht - also z.B. "R Z 11" und ein Timer dadurch, dass er nicht mehr angesteuert wird. Es gibt da allerdings auch den Befehl "R T 1" - ich würde es aber vermeiden Timer bedingt zu bearbeiten - das macht nur unnotige Probleme ...
 
Ich stimme Lupo zu!
Den DB bitte kontrollieren, ob er existiert und ob er die richtige Länge hat!

Als kleinen Tip wenn du die Fehler OB´s mit auf die CPU überträgst geht die CPU bei Fehlern nicht so schnell auf Stop sonder zeigt nur den SF Fehler an!

Im Prinzip lässt sich alles zurücksetzen!

Gruß
 
Zurück
Oben