S5 AWL Programm in FUP übersetzen

Wenn der TE ein Gesamtprogramm einstellen würde oder zumindest die Rahmenbedingungen definierte, könnten wir uns einen Reim darauf machen. PN/DP hätte sicher die Lösung und allen wäre geholfen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wenn der TE ein Gesamtprogramm einstellen würde oder zumindest die Rahmenbedingungen definierte, könnten wir uns einen Reim darauf machen. PN/DP hätte sicher die Lösung und allen wäre geholfen.
Das wäre gut denke ich. Schließen wir eine Wette ab
;):LOL:
 
Ohne eine Rückmeldung von Harald schließe ich bestimmt keine Wette ab.;)
Da ich mir 100%ig sicher bin brauche ich nicht auf Harald zu warten. Genau diese Flankenauswertungen habe ich unzählige male im Einsatz. In unseren Anlagen haben wir das als Puls positiv wie negativ vom NSW.
Leider kann ich gerade "nur" mit Codesys Simulieren aber sieh dir mal den Anhang an...

1703687418624.png

Bin mir sicher da wird mir auch @PN/DP zustimmen (-;
 
Mein Problem ist: 1. Ein Programm was funktioniert, wird nicht krank.
2. Was ist mit M81.0 bzw M81.4. Was bewirken die oder wer setzt die zurück. Ansonsten könnte ich keine Fehler erkennen. Aber ich habe ja eh keine Ahnung.
Zu 1. Das sehe ich nicht als Problem an, da gebe ich dir zu 98% recht. Die fehlenden 2% kommen aus den Kuriositäten meiner S5 "Erfahrung", Aber das wäre zu Umfangreich.
Zu 2. Das ist eigentlich nur die boolsche Algebra in SPS Zyklen übertragen und Zyklus für Zyklus Analysieren
=> Eingabe (PAE) -> Verarbeitung (PROGRAMM) -> Ausgabe (PAA)...

Zu Aber ich habe ja eh keine Ahnung. Das ist jederzeit änderbar ;)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Forum.jpg
Jetzt wird es spannend. Wir sind uns allen sicher
:ROFLMAO:

Für mich ist es noch immer eine normale Zuweisung die jede Zyklus aktualisiert wird.
Ist das VKE 1 bleibt M81.0 true.
Aber sogeagt weiß ich auch nicht ob der S5 nocht irgendwelche zickereien hatte.

Aber mal zur Vergleich.
in mein Beispiel, was FUP umschaltbar ist wird M81.0 zugewiesen "=" und gelesen"U".
Im reine AWL brauche ich die Lesezugriff nicht weil das VKE im Akku steht.
Also ist für mich die Code gleich und ist M81.0 kein Flanke aber eine normale Zuswiesung.

Retter @PN/DP , meldst dich mal zur Wort :)
 
Sagt mal was macht ihr hier für ein Theater um ganz normale positive Flanken?
M81.0 ist die pos. Flanke. M81.1 ist der Flankenhilfsmerker.

War bei S5 im Prinzip die Standardflanke, da sie in einem FUP-Netzwerk funktionierte.

Wenn ich für jede dieser Flanken, die ich so programmiert hab, nen Euro bekommen würde, wär das sicher ein schöner Urlaub.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Sagt mal was macht ihr hier für ein Theater um ganz normale positive Flanken?
Weil ich es nicht verstehe dann.
// Nachtrag,
ih sehe es jezt.

Hier mal Code aus eine alte tread. beitrag 2 von @Zottel
https://www.sps-forum.de/threads/s5-flankenimpuls.267/

Code:
positive Flanke:
U E0.0 // Eingang da
UN M0.0 // und voher nicht da
= M0.1 // positive Flanke
U E0.0
= M0.0 // merken für nächsten Zyklus

negative Flanke:
UN E0.0 // Eingang nicht da
U M0.0 // und war voher noch da
= M0.1 // negative Flanke
U E0.0
= M0.0 // merken für nächsten Zyklus
 
Zuletzt bearbeitet:
Weil ich es nicht verstehe dann.

Hier mal Code aus eine alte tread. beitrag 2 von @Zottel
https://www.sps-forum.de/threads/s5-flankenimpuls.267/

Code:
positive Flanke:
U E0.0 // Eingang da
UN M0.0 // und voher nicht da
= M0.1 // positive Flanke
U E0.0
= M0.0 // merken für nächsten Zyklus

negative Flanke:
UN E0.0 // Eingang nicht da
U M0.0 // und war voher noch da
= M0.1 // negative Flanke
U E0.0
= M0.0 // merken für nächsten Zyklus

Funktional genau gleich.
Natürlich darf man bei der neg. Flanke nicht auch M0.0 und M0.1 nehmen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Den Flankenmerker M0.0 könnte man schon für beide Flanken verwenden
Code:
positive Flanke + negative Flanke:
U  E0.0 // Eingang da
UN M0.0 // und voher nicht da
=  M1.0 // positive Flanke

UN E0.0 // Eingang nicht da
U  M0.0 // und war voher noch da
=  M1.1 // negative Flanke

U  E0.0
=  M0.0 // merken für nächsten Zyklus

@PN/DP , meldst dich mal zur Wort :)
Ich bin im Urlaub, z.Zt. in Bangkok
 
M81.0 (M81.4) sind, wie schon mehrfach erwähnt nur einen Zyklus true.
Allerdings hat der TS uns ja noch gar nicht verraten ob er das Problem bzw. den Fehler in diesem Programabschnitt vermutet, er hat ja nur gesagt er versteht den Code nicht. Wo genau sein Fehler liegt oder was nicht funktioniert (an der Anlage oder im Programm) hat er noch gar nicht erwähnt. Vielleicht werden ja die aufgeführten Merker noch woanders im Programm gesetzt, zurückgesetzt oder in einem Byte, WORD oder DW überschrieben.
 
U E106.5
UN M81.1
= M81.0
S M81.1
UN E106.5
R M81.1
Ich frage mich, warum der Erfinder dieser Zeilen den Code so unnötig kompliziert und verwirrend gemacht hat. Auch in meinem Urlaub bin ich der Meinung, dass der Code folgendem einfachen Code entspricht:
Code:
U E106.5
UN M81.1
= M81.0 // positive Flanke

U E106.5
= M81.1 // merken für nächsten Zyklus

Der M81.0 wird FALSE genau einen Zyklus nachdem der M81.1 TRUE ist, da hat @Ralle einen Denkfehler drin.
Nö, Ralle lag richtig. Ihr habt beide recht bzw. eure Teil-Erklärungen sind beide richtig.
 
Zurück
Oben