Gleitkommekonvertierung in 12 Bit

Gast #4633097
Hallo zusammen,

ich bin gerade dabei, ein Analogausgangsmodul anzusteuern. Dazu muss ich 
einen Spannungssollwert 0-10 V in eine 12bit-Zahl umwandeln.

Hierbei habe ich ein Rundungs- oder Genauigkeitsproblem. Entweder 
schaffe ich es, alle Sollwerte bis auf den Endwert (10V=32767) 
umzuwandeln, oder der Endwert ist richtig und die Zwischenwerte liegen 
um 1 daneben..... Im Bild ist auf der linken Seite ein Ausschnitt aus 
der Bedienungsanleitung angefügt. So sollten die Werte aussehen. Daneben 
die von mir berechneten Ergebnisse.

Kann jemand sehen, wo der Fehler liegt?
Angehängte Dateien:
Gast #4633111
Marcel R. schrieb:
> Kann jemand sehen, wo der Fehler liegt?

Es kann ja nicht funktionieren, die Tabelle ist schon falsch.

Bis auf den Letzen wert haben alle in der Hexdarstellung hinten 000 und 
dann kommt auf einmal ein FFF aber die Schrittweite ist gleich.

die 10V müssten in der Tabelle als 9.99V stehen, dann stimmt alles auch 
deine Berechnung 1.
Moderator (Firma: Titel) Persönliche Seite #4633119
Marcel R. schrieb:
> Entweder schaffe ich es, alle Sollwerte bis auf den Endwert (10V=32767)
> umzuwandeln
Das ist falsch. Der Endwert ist 10V-1LSB = 9,99V
Variante 1 ist korrekt.

> Kann jemand sehen, wo der Fehler liegt?
In der Tabelle des Datenblatts. Dort ist der falsche Endwert angegeben. 
Da müsste stehen:
1
|   9,99   |  '0111.111.111.111'  |
2
|  10,00   |  '1000.000.000.000'  |
Denn logischerweise sind die letzten 12 Stellen jeder Binärzahl darüber 
auch immer 0. Offenbar hat derjenige, der die Anleitung geschreiben 
hat, das auch nicht kapiert. Ein gern gemachter Fehler und für manche 
sind die 1023 fast schon eine Art "Ersatzreligion". Siehe dazu den 
Beitrag "1023 oder 1024"
Gast #4633124
1. Mit 12 Bit kannst Du Zahlen 0 - 4095 darstellen.
2. Brauchst Du die volle Auflösung von 2,44 mV am Ausgang? Falls nein, 
ist Auf- oder Abrundung vernachlässigbar.

Gewöhnlich wird man den Augangsspannungsbereich von 0,000 V bis 
10/4096*4095 abbilden. 10 V werden also nie erreicht.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.