-> Hier kostenlos registrieren
Hallo zusammen,
ich möchte mich kurz vorstellen. Mein Name ist Sebastian und vor ca. 13 Jahren habe ich in meiner Mechatroniker Ausbildung ein paar Basiskenntnisse in Step 7 sammeln können. Nun wollte ich mich wieder etwas fit machen. Will im Haus nach und nach alles an die S7 hängen und somit ein paar dezentrale Lösungen ablösen. Folgende Sache beschäftigt mich etwas:
U "Gaszähler" // Flankeneineingang
FP M 46.0 //Flankenmerker
SPBN M001 //keine Flanke = nicht addieren
L DB2.DBD 0 //Doppelwort Laden
L 1
+D
T DB2.DBD 0
ITD // wandelt eine Ganzzahl 16>32bit
DTR // wandelt eine Ganzzahl > Gleitpunkt
L 1.000000e+002 //lädt den Faktor in den Akku
/R // dividiert
T MD 47 //überträgt nach MD
M001: NOP 0
Diesen AWL Code habe ich erstellt, aus einigen Versuchen und andere Anregungen aus Foren. Wie man sieht, zähle ich Impulse aus einem Gaszähler und speichere sie in einem Datenbaustein ab. Nun habe ich wohl das Problem, dass ich wohl mit 16bit Ganzzahlen arbeite und demnach bei 32768 Schluss ist. ITD wandelt ja von 16bit nach 32bit, aber wie arbeite ich generell auf 32bit Basis?
Wäre wirklich Klasse wenn ihr mir helfen könntet, hänge da schon etwas länger.
Vielen Dank!
Liebe Grüße Sebastian
ich möchte mich kurz vorstellen. Mein Name ist Sebastian und vor ca. 13 Jahren habe ich in meiner Mechatroniker Ausbildung ein paar Basiskenntnisse in Step 7 sammeln können. Nun wollte ich mich wieder etwas fit machen. Will im Haus nach und nach alles an die S7 hängen und somit ein paar dezentrale Lösungen ablösen. Folgende Sache beschäftigt mich etwas:
U "Gaszähler" // Flankeneineingang
FP M 46.0 //Flankenmerker
SPBN M001 //keine Flanke = nicht addieren
L DB2.DBD 0 //Doppelwort Laden
L 1
+D
T DB2.DBD 0
ITD // wandelt eine Ganzzahl 16>32bit
DTR // wandelt eine Ganzzahl > Gleitpunkt
L 1.000000e+002 //lädt den Faktor in den Akku
/R // dividiert
T MD 47 //überträgt nach MD
M001: NOP 0
Diesen AWL Code habe ich erstellt, aus einigen Versuchen und andere Anregungen aus Foren. Wie man sieht, zähle ich Impulse aus einem Gaszähler und speichere sie in einem Datenbaustein ab. Nun habe ich wohl das Problem, dass ich wohl mit 16bit Ganzzahlen arbeite und demnach bei 32768 Schluss ist. ITD wandelt ja von 16bit nach 32bit, aber wie arbeite ich generell auf 32bit Basis?
Wäre wirklich Klasse wenn ihr mir helfen könntet, hänge da schon etwas länger.
Vielen Dank!
Liebe Grüße Sebastian