LabVIEWForum.de
Integer Mathematik - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Integer Mathematik (/Thread-Integer-Mathematik)



Integer Mathematik - Svente - 22.09.2006 10:13

Hallo,

ich verwende einen PID Regler auf FPGA Ebene.
Dieser Regler akzeptiert lediglich Regelparameter als I16.
Nun steht in der Hilfe folgendes dazu:
"The upper 8 bits of each integer represent the integer portion of the gain, and the lower 8 bits of each integer represent the fractional portion of the gain. ":blink:

Ich versteh' zwar ungefähr was da steht und auch das eine Fließkommazahl
mit diesem Format darstellbar ist - aber wie???

Kann jemand helfen??

Svente


Integer Mathematik - diplNisse - 22.09.2006 10:54

Du wandelst die beiden Teile (Vorkomma und Nachkomma zahl) in Bool-Arrays und verküpfst diese.

In meinem Beispiel habe ich eventuell noch das LOW und das HI Byte vertauscht, keine Ahnung. Aber das Prinzip ist klar.
Dann wandelst du das sich ergebende 16 Stellige Bool-Array wieder in eine I16


Siehe anhang


Integer Mathematik - Svente - 22.09.2006 12:17

Sad

Vieleicht doch irgendjemand????

Bin für alle Geistesblitze offen......

nochmal Svente


Integer Mathematik - IchSelbst - 22.09.2006 12:46

' schrieb:Ich versteh' zwar ungefähr was da steht und auch das eine Fließkommazahl mit diesem Format darstellbar ist - aber wie???
Ich tippe mal auf folgende Formel:

Hi(I16) = int(DoubleValue)
Lo(I16) = int(frac(DoubleValue)*256)

wobei du natürlich kontrollieren musst, dass die Zahlteile jeweils nicht überlaufen, und dass möglicherweise bei dem LO-Anteil gerundet werden muss.


Integer Mathematik - Svente - 22.09.2006 13:15

ups - da war ich wohl wieder zu ungeduldig.
Vielen Dank. Da wäre ich nie und nimmer drauf gekommen!


(Und wieder war das Forum schneller als NI-München - da hatten 2 Leute
2,5 Stunden Vorsprung!!! Und immer noch kein Rückruf!!!)
Tongue


Svente


Integer Mathematik - Lucki - 22.09.2006 14:01

Warum alles so kompliziert machen? Die gesuchte Gleitkommazahl ist das 1/256tel der I16-Zahl, Amen.