INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Problem Werte aus EEPROM nach FLOAT



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

30.12.2011, 11:38
Beitrag #1

H-STB Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Dec 2011

8.5.1
2009
DE



Problem Werte aus EEPROM nach FLOAT
Hallo zusammen

Theorie/Hintergrund:
Ich arbeite an einer Software um Microstrain Geber auslesen zu können.
Vom Hersteller habe ich eine SDK erhalten aus der hervorgeht, dass im EEPROM jedes Gebers Konstanten gespeichert sind, durch Verwendung derer der ausgegebene Bit-Wert in einen skalierten Wert mit Einheit umzuwandeln (typischerweise ein Float-Wert)
Die Werte des EEPROM liegen in MSB /LSB vor (Big Endian), diese habe ich ausgelesen und versuche nun diese gemäss der Formel aus der SDK anzuwenden.
In der SDK ist ebenfalls ein Beispiel für das Gain aufgeführt:
EEPROM 2: 44571
EEPROM 4: 33220
die Konvertierung ergibt den Wert -1032.86499

Problem:
Ich habe ein kleines VI erstellt (angehängt) um dies zu testen, aktuell sind die gelesenen Werte aus dem EEPROM darin gespeichert
Nur die Float-Zahl die ausgegeben wird verfehlt meine Vorstellung bei weitem, da Sie extrem klein ist und mit Anwendung der Formel aus der SDK zu einem Inf. als Ergebnis führt
Wenn ich die Zahlen aus dem Beispiel einfüge sieht es ähnlich seltsam aus, ich komme nicht einmal in die Nähe des Resultats aus dem Beispiel
Daraus ziehe ich den Schluss, dass ich etwas Grundsätzlich falsch mache, ich wäre froh, wenn sich mal jemand von euch mein BSP ansehen könnte, vielleicht(wahrscheinlich) gibt es ja einen groben Fehler, den ich nicht finde...

Besten Dank schon mal im Voraus

Gruss STB


Angehängte Datei(en)
8.5 .vi  bsp.vi (Größe: 15,76 KB / Downloads: 170)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.12.2011, 11:56
Beitrag #2

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Problem Werte aus EEPROM nach FLOAT
Leider zu wenig Infos, um dir eine fundierte Antwort zu geben.

Ganz wichtig wäre die Information: Was sollen die beiden U16-Register EEPROM 162 & EEPROM 164 (bzw. 166 & 168) wirklich darstellen. Soll das wirklich die Darstellung einer FLOAT-Zahl im IEE 754 Format sein?

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.12.2011, 12:15
Beitrag #3

H-STB Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Dec 2011

8.5.1
2009
DE



RE: Problem Werte aus EEPROM nach FLOAT
Besten Dank für deine schnelle Antwort

Allright, Sorry war wohl zu sehr bemüht das ganze lesbar zu halten...

In den Speicherplätzen sollen Werte abgelegt sein, mit hilfe einer Formel und dieser Werte soll der Messwert auf die Einheit G skaliert werden können.

Die Formel ist: Resultat=(messwert-offset)/gain

Und ja gemäss Unterlagen ist dies eine Flot Zahl im (big endian) format IEEE 754

brauchtst du noch sonstige Infos?


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.12.2011, 13:15
Beitrag #4

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Problem Werte aus EEPROM nach FLOAT

Akzeptierte Lösung

So kommt was Sinnvolles raus:

8.5 .vi  bsp.vi (Größe: 16,3 KB / Downloads: 227)

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.12.2011, 14:31 (Dieser Beitrag wurde zuletzt bearbeitet: 30.12.2011 14:44 von Lucki.)
Beitrag #5

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Problem Werte aus EEPROM nach FLOAT

Akzeptierte Lösung

Die Umwandlung einer Gleitkommazahl in "raw bytes" (oder raw U16-Words) und wieder zurück ist normalerweise ganz einfach. Du hast pro Zahl 4 bytes (2 Words). Das entspricht einer GLeitkommazahl im SGL-Format.
So geht normalerweise die Konvertierung:

   

Es kommen allerdings andere Zahlen heraus. Aber vielleicht kannst Du mit irgendwelchen Vertauschungen noch etwas Brauchbares herauskitzeln.

Edit: Habe das Vertauschen mal selbst gemacht. Damit ist dann alles OK - Problem gelöst.

   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.12.2011, 17:09 (Dieser Beitrag wurde zuletzt bearbeitet: 30.12.2011 17:11 von H-STB.)
Beitrag #6

H-STB Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Dec 2011

8.5.1
2009
DE



RE: Problem Werte aus EEPROM nach FLOAT
Wow! Alle Achtung danke euch
Habe jetzt den ganzen Nachmittag recherchiert bis ich eure schnellen Antwort bemerkte.(hatte die Autobenachrichtigung aus und wartete auf E-Mail Confused)

Ein Grosses Danke für eure Hilfe! Werde mich nun ans verstehen der Unterschiede zu dem von mir gemachten machen

Gruss
STB

Edit: habs nun verstanden, danke!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Encoder werte nach bestimmte steps in Array speichern ziarehmann 4 4.753 09.07.2017 23:33
Letzter Beitrag: Trinitatis
  Array 4 Elemente (Float) aufbrechen Tobiii 6 4.774 13.02.2017 09:24
Letzter Beitrag: Tobiii
  Werte nach Zeitablauf in Array speichern mundb 3 3.919 14.04.2016 13:56
Letzter Beitrag: mundb
  Werte nach gültiger Bedingung zurücksetzen patriote00 11 6.612 04.01.2016 17:04
Letzter Beitrag: GerdW
  Formatbezeichner für float und Dezimalzeichen %.; kombinieren (In String formatieren) dali4u 0 2.956 21.02.2015 11:45
Letzter Beitrag: dali4u
  String -> float number gottfried 6 7.642 11.05.2013 08:36
Letzter Beitrag: gottfried

Gehe zu: