Wie stellt ein A/D-Wandler die gemessenen Werte dar?

Zuviel Werbung?
-> Hier kostenlos registrieren
Warum die bei den negativen Zahlen aber unbedingt bis 32768 gehen wollen ist ein Rätsel.
Hätten sie den Bereich auf -32767 .. +32767 eingeschränkt, so würden sicherlich viele "auf die Barrikaden gehen".
Zumindest diejenigen, die sich an die ZweierKomplementDarstellung gewöhnt UND ihre Vorteile zu schätzen gelernt haben.
Wenn ich höre/lese, dass Beckhoff nicht daran herumgefummelt hat, beruhigt mich das. Vor allem vor dem Hintergrund, dass Beckhoff andererseits scheinbar (nicht anscheinend!) die Genauigkeit zu erhöhen versucht.

PS: könnte es sein, daß die 1-Bits durch Statistik/Mittelwertbildung entstehen?
Sicher doch, Harald!
Ich vermute mal, dass sich genau das hinter dem Begriff 'Filter' verbirgt. Ist ja nicht gesagt, dass sie "nur" z.B. 50 Hz wegfiltern wollen.
 
Kleinster Wert = -32768 wiederum ist eigentlich kein Rätsel, sondern "natürliche" Folge, wenn man möglichst wenig den ADU-Wert manipuliert. -32768 = 16#8000 entspricht "alle Bits 0" verschoben zu Zweierkomplement.
Wenn ich die diversen Artikel über A/D-Wandler richtig verstehe arbeiten die eigentlich immer symmetrisch, also z.B. -2047 - +2047 bei 12 Bit.
Bei Siemens gibt es zwischendurch keine ungeraden Werte, da "springen" die Werte in 16er Schritten (0 - 16 - 32 - 48 - 64 - ...) ---> es werden also 0-Bits angehängt/aufgefüllt. Entweder durch feste Verdrahtung oder durch Schieben.
Super, danke für die Info, damit kann ich arbeiten.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
macht Beckhoff wirklich bei 10V 32767???

Bei Siemens ist jedenfalls 0...10V -> 0...27648

Die größeren/kleineren INT-Werte sind dann für "Sonderfunktionen" wie Übersteuerungsbereich, Überlauf, Untersteuerungsbereich, Unterlauf usw.

d.h. der AD-Wandler macht auch noch etwas mehr als nur 0...10V
 
Bei Siemens ist jedenfalls 0...10V -> 0...27648
Die größeren/kleineren INT-Werte sind dann für "Sonderfunktionen" wie Übersteuerungsbereich, Überlauf, Untersteuerungsbereich, Unterlauf usw.
d.h. der AD-Wandler macht auch noch etwas mehr als nur 0...10V
Die "Sonderfunktionen" kann man aber auch in eigenen StatusBits ausserhalb des ErgebnisWorts unterbringen.
 
@Oliver
denk auch mal an Deine FAQ. Die Leute haben so schon Probleme mit der Umrechnung der Werte auf die Meßgröße. Wie man an den diversen Nachfragen sieht.

Wenn man jetzt die Werte als 8, 10, 12 oder 16 Bit Werte angeben würden müßte man entsprechend viele Skalierungsbausteine haben. Durch das Verschieben nach links wird alles auf 16 Bit abgebildet und es wird nur noch ein Baustein benötigt.

Problem ist dabei aber, daß bei 16 Bit der größte pos. Wert 32767 (15^2-1) ist, während es bei 12 Bit 4095 (2^12-1). Verschiebt man jetzt nur um 3 Stellen wären der größte Werte aber nur 32760, so daß man mit dem Skalierungsbaustein den oberen Grenzwert nicht erreicht. Daher wird da wohl mit entsprechenden Bits aufgefüllt.

@Alle
ich verstehe auch nicht warum 16 Bit Karten im allgemeinen inklusive Vorzeichen sind, 12 Bit Karten aber exklusive

Zum Glück verwendet Wago bei neueren Karten auch Unter- und Übersteuerungsbereiche bzw. lassen sich verschiedene Analogwertdarstellungen einstellen.

Dieses konsequente Abschneiden, z.B. bei 4 mA -> 0 bzw. 20 mA -> 32767, an den Grenzen stört gewaltig. Besonders wenn man die Grenzen auch benötigt und der eigene Eingang nicht mit der Gegenstelle übereinstimmt was denn nun 4 oder 20 mA sind.

Gruß
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wenn ich die diversen Artikel über A/D-Wandler richtig verstehe arbeiten die eigentlich immer symmetrisch, also z.B. -2047 - +2047 bei 12 Bit.
Ein so symmetrisch angegebener Wandler-Teilbereich sieht "schöner" aus, das ist aber nicht der gesamte ADU-Wandlerbereich, weil da fehlt noch eine Stufe. Da würde das Signal auf ungerade 4095 Stufen umgesetzt - das macht ein normaler 12-Bit-ADU aber nicht, sondern erzeugt 4096 Stufen zwischen einem unteren und einem oberen Grenzwert (Full Scale). Dabei ist auch unerheblich, ob das nun ein bipolarer Eingangsspannungsbereich -10V..+10V oder ein unipolarer Eingangsspannungsbereich 0..+20V ist, der ADU wandelt sowieso nur die Spannungsdifferenz zu einer Bezugsspannung um.

Ich vermute mal, ein ADU -10V..+10V zu -2047..+2047 ist in Wirklichkeit ein ADU -10,00488V..+10V zu -2048..+2047. Oder ist da garantiert, daß der Wert 16#800 = -2048 oder +2048 (oder auf 16 Bit hochgezogen 16#8000 = -32768) als Ergebnis nie vorkommt?

Im Rahmen der Messgenauigkeit macht es praktisch wohl auch keinen bemerkbaren Unterschied, ob das nun ein ADU
* -10V..+10V zu -2047..+2047 oder
* -10V..+10V zu -2048..+2047 oder
* -10,00488V..+10V zu -2048..+2047
ist.

Bei dem systembedingten Quantisierungsfehler von 1/2 LSB kann man auch noch unmerklich einen Nullpunktfehler von 1/2 LSB verstecken.

Harald
 
Zurück
Oben