Positionen speichern

Zuviel Werbung?
-> Hier kostenlos registrieren
Das Tauschen kannst du auch weglassen, wenn du im nächsten Schritt das <=D durch >D ersetzt. Es geht ja nur darum, dass durch den Offset ein negativer Wert herauskommen kann und für diesen Fall dann wieder 4096 drauf addiert werden muss.
Der MOD-Befehl macht ja im Grunde genommen aus deinem Multiturn einen Singleturn-Geber.

Grüße von HaDi

[edit]
mal wieder zu langsam...
[/edit]

Nicht ganz, er muß dann (wenn er TAK wegläßt) auch den Divisionsrest zwischenspeichern, um damit weiterrechnen zu können und das Ergebnis in den Output zu bekommen. Aber das hab ich ja schon geschrieben ;).
 
@Ralle
Vielen Dank, das ist mal ne toll Erklärung.
Das habe selbst ich verstanden. :p
Dein kleines aber eigentlich simples Netzwerk hilf mir sehr weiter.
Funktioniert das denn auch wenn der Geber überläuft,
sprich wieder bei null anfängt? Zählt #Istwert_Scale dann weiter oder?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@Nordischerjung

Ehrlich, darüber hab ich noch gar nicht nachgedacht, da ich ja nur mit irgendwelchen Werten getestet habe. Aber wenn der Überlauf genau im Modulo von 4096 liegt (wovon ich mal ausgehe) könnte das funktionieren. Die Frage ist ja auch, ob nicht vorher die DINT überläuft. wieviel Bit hatte nochmal der Geber, also wo läuft er über?
 
25 Bit, er läuft bei 16777216 über so viel ich weiß :rolleyes:

Dann geht es, das liegt im Modul von 4096, ist also ein Vielfaches davon.

4096 * 4096 = 16777216

Kannst das mit dem FB leicht ausprobieren. Scheibe an den Input ein MD
dort hinein 16777210, dann Set setzen. Danach den Wert schrittweise erhöhen und dann bei 16777216 eine 0 rein, Ergebnis beobachten, das funzt.
 
Zurück
Oben