Simatic S5 Fließkommaformat?

Jun 30, 2006 10 Replies

Hallo,



hat jemand einen Tipp, wo ich die Infos über das 32 Bit Fließkommaformat einer S5-135 SPS finde?



Hintergrund: Ich lese die 4 Bytes in einen PC ein und muss dann daraus das Float berechnen. An der SPS Software soll möglichst nichts geändert werden.



Gruß



Stefan


IEEE 754 passt nicht?

Gruß, Johannes

durch dei Verdunstung kült das sogar ziemlich gut das ist wie schweiß. Hünde müssen da hecheln so wie Lüfter. Markus Gronotte in de.sci.electronics

Stefan Brroering schrieb:

So eine Routine hab ich vor ca. 16 Jahren für einen Kollegen geschrieben, aber die ist verschollen :-). Ich weiß nicht mal mehr, ob die im PC oder in der SPS lief. Aber über das Format haben wir eventuell noch Unterlagen. Ich schau am Montag mal nach.

Gruß Willi

Klingt schon mal interessant, werd mal sehen, ob ich dazu Infos finde.

Gruß

Stefan

Das wäre wirklich klasse,

Gruß

Stefan

Stefan Brroering schrieb:

Ich hab's bei Siemens gefunden. Guckst Du hier :-)

formatting link

Gruß Willi

"Willi Marquart" schrieb im Newsbeitrag > Ich hab's bei Siemens gefunden. Guckst Du hier :-)

formatting link

Prima, genau das hab ich gesucht. Vielen Dank

Gruß

Stefan

Willi Marquart schrieb:

Hallo,

das ist dummerweise gerade nicht IEEE-754 konform. IEEE-754 hat auch die =

speziellen Kodierungen NaN 0xFFFFFFFF, +INF 0x7F800000 und -INF=20

0xFF800000, NaN bedeutet Not a Number. Bei IEEE-754 wird auch =FCblicherweise der Wertebereich von +-1,176E-38=20 bis +- 3,40E+38 angegeben, Siemens schreibt da: =B10,1701412 e+39 ...=20 =B10,1469368 e-38, wenn man das anders formatiert =B11,701412 e+38 ...=20 =B11,469368 e-37 sieht man das die zwei Formate doch recht verschieden=20 sind. Also viel Spass bei der Umwandlung in das PC interne Format, das=20 ist IEEE-754 konform.

Wenn beide Systeme IEEE-754 konform ist es einfach, da muss man nur auf=20 die richtige Bytereihenfolge achten, dann stimmt alles. Been there, done =

that. ;-)

Bye

Naja, die Siemens-Zahlen haben halt kein Vorzeichen und dafür ein Bit Mantisse mehr... eigentlich ist die Umwandlung aber recht trivial, wenn man mal verstanden hat, wie Flots kodiert werden.

Gruß, Johannes

durch dei Verdunstung kült das sogar ziemlich gut das ist wie schweiß. Hünde müssen da hecheln so wie Lüfter. Markus Gronotte in de.sci.electronics

Johannes Bauer schrieb:

Bit

Hallo,

da stecken schon noch einige Gemeinheiten drin, die Zahlen nach IEEE=20 sind immer normalisiert, die f=C3=BChrende 1 wird nicht gespeichert. Die = S5=20 Zahlen k=C3=B6nnen unnormalisiert sein, das h=C3=B6chstwerige Bit der Man= tisse=20 wird gespeichert.

Bye

Uwe Hercksen schrieb:

Das seh ich nicht, Wenn der Exponent=0 und die Mantisse0 ist, ist die IEEE-Zahl nicht normalisiert und es gilt: w=(-1)^v*0.f*2^(-126)

Da schreibt Siemens: Die Mantissewerte werden immer in normierter Form dargestellt, ... und nennt nur die Null als Ausnahme.

Gruß Willi

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required