Eltako Funktion

BMLLER6758

Level-1
Beiträge
86
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

kann mir bitte mal einer sagen ob es bei der S7-200 eine Eltako Funktion gibt ? Und wenn nicht, woe ich mit einem Eingang einen Merker setzen und wieder rücksetzen kann ??

Vielen Dank

Bernd
 
Ob es die vordfiniert gibt, weiß ich nicht.
Generell tut es ein Master-Slave-FlipFlop:

LD E0.1 //Takt
U M0.2 //Slave
S M0.3,1 //Master

LD E0.1 //Takt
UN M0.2 //Slave
R M0.3,1 //Master

LDN E0.1 //Takt
U M0.3 //Master
R M0.2,1 //Slave

LDN E0.1 //Takt
UN M0.3 //Master
S M0.2,1 //Slave

LD M0.3
=A0.4

Weil das aber schon ziemlich langatmig ist, und falls du irgendein Merkerbyte frei hast:
LD E0.0
UN M0.0
=M0.1 //steigende Flanke

LD E0.0
= M0.0

U M0.1
+B 1,MB47 //zaehlt pro Flanke 1 hoch

LD M 47.0 // ist abwechselnd 0 oder 1 weil MB47 abwechseln gerade und ungerade
=A 0.4
 
kann die s7 200 auch x-oder?

dann wäre folgender code sehr kurz:

(Step7 300)

U E0.0
FP M0.0
X A4.0
= A4.0
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Vereinfacht

Im Prinzip das Beispiel von Zottel, nur vereinfacht:

NETWORK 1
LD I0.0 //Taster, mehrere mit oder verknüpfen
EU
= M0.0 //Flanke bei Tastendruck

NETWORK 2
LD M0.0 //Flanke
AN Q0.0 //Nicht Ausgang
S Q0.0, 1 //Setze Ausgang

NETWORK 3
LD M0.0 //Flanke
A Q0.0 //Ausgang da
R Q0.0, 1 //Rücksetzen Ausgang

Kann ohne Veränderung als AWL in MicroWin kopiert werden!

Mfg Manuel
 
Hallo MSB.

Ich muss dich leider entäuschen ab dein Vorschlag für die Eltaktoschaltung bei der S7-200 funktioniert nicht. Da der Setzt und Rücksetzebefehl im selben Zyklus stattfinden. Der Q0.0 wird zwar kurz gesetzt ab gleich wieder zurückgesetzt.

Habe auch noch einen Vorschlag. Ist ab ein bisschen kompliziert.

LD E0.0 // Taster
EU // Positive Flanke
LPS // Oberer Stack duplizieren und in den 2 Stack schieben
un A0.0 // Ausgang für Lampe
S M0.0,1 // HM Eltako
LPP // Lade 2 Stack und schiebe ihn in den 1 Stack
u A0.0 // Ausgang für Lampe
R M0.0,1 // HM Eltako
LD M0.0 // HM Eltako
= A0.0 // Ausgang für Lampe

Guten Rutsch und viel Glück im Neuem Jahr

MfG
Wittmann Hubert
 
Re: Vereinfacht

Code:
NETWORK 1
LD     I0.0                         //Taster, mehrere mit oder verknüpfen
EU
=      M0.0                         //Flanke bei Tastendruck

NETWORK 2
LD     M0.0                         //Flanke
AN     Q0.0                         //Nicht Ausgang
S      Q0.0, 1                      //Setze Ausgang
>>>R M0.0,1  //wenn hier schon was gemacht wurde, Bedingung löschen

NETWORK 3
LD     M0.0                         //Flanke
A      Q0.0                         //Ausgang da
R      Q0.0, 1                      //Rücksetzen Ausgang
So sollte es gehen, auch wenn es gegen den "Geist" des Flankenbefehls ist, das Ergebnis zu manipulieren...
Habe sicher keine kurzen oder elegenten Beispiele gegeben, aber Befehle wie EU, FP... meide ich wie die Pest., da es sie auf der einen CPU oder beim einen Hersteller gibt und beim anderen nicht. Außerdem könne sie seltsame Nebenwirkungen haben. Was tut folgender Code?
Code:
LD     I0.0                         //Taster, mehrere mit oder verknüpfen
EU
=      M0.0                         //Flanke bei Tastendruck

LD     I0.0                         //Taster, mehrere mit oder verknüpfen
EU
=      M0.0                         //Flanke bei Tastendruck
[code]
Und was dieser?
[code]
LD     I0.0                         //Taster, mehrere mit oder verknüpfen
EU
=      M0.0                         //Flanke bei Tastendruck

LD     I0.0                         //Taster, mehrere mit oder verknüpfen
EU
=      M0.2                         //Flanke bei Tastendruck
[code]
Und wie lange dauert es, die Antwort in der Doku zu finden?

BMILLER.... fragte ja eigentlich nach einer vordefinierten Funktion, aber auch da finde ich es es oft einfacher, die Funktionalität selbst zu implementieren, als die Dokumentation zu den vordefinierten FBs zu lesen, und zu verstehen. "Verstehen" heißt ja oft genug gar nicht, zu begreifen was die tun, sondern welchen Grenzen sie haben, die man auf den 1. Blick nicht erwarten würde.[code]
 
Zurück
Oben