- fchao-Sinus-Wechselrichter AliExpress         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 20 von 68

Thema: Ein ADC Schritt Ref/n oder Ref/(n-1)

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.703
    Blog-Einträge
    133
    Zitat Zitat von HaWe Beitrag anzeigen
    nein, bei 0 bis 255 gibt es 255 Bereiche (Quantisierungsintervalle), nicht 256 !!

    wenn z.B. nur die Werte 0,1,2,3 möglich wären (2-bit ADC, 2²=4) , entspräche
    0 -> 0 V
    1 -> 1,67 V
    2- > 3,33 V
    3 -> 5 V

    das sind 4 Werte, aber nur 3 Schritte, jeder Schritt 1/3 von 5V. Capisce?
    Aha, da habe ich wieder was gelernt. Aber nicht über den ADC.
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.703
    Blog-Einträge
    133
    Zitat Zitat von HaWe Beitrag anzeigen
    Und lass einfach deine bekannten Anfeindungen, insb. wenn dir die Argumente ausgehen!
    Anfeindungen sind eher von dir bekannt. Bis jetzt sind mir die Argumente nicht ausgegangen. Und Folgendes stammt nicht von mir:

    Zitat Zitat von HaWe Beitrag anzeigen
    ogottogottogott...
    ... Das ist Mathe aus der 5. Klasse!!
    Zitat Zitat von HaWe Beitrag anzeigen
    ... Capisce?
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    872
    Zitat Zitat von HaWe Beitrag anzeigen
    nein, bei 0 bis 255 gibt es 255 Bereiche (Quantisierungsintervalle, steps), nicht 256 !!

    wenn z.B. nur die ADC-Werte 0,1,2,3 möglich wären (2-bit ADC, 2²=4) , entspräche
    0 -> 0 V
    1 -> 1,67 V
    2- > 3,33 V
    3 -> 5 V

    das sind 4 Werte, aber nur 3 Schritte, jeder Schritt 1/3 von 5V. Capisce?
    Kannst Du das mal bitte für einen 1Bit-Wandler auf 5V vorrechnen?

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    07.03.2011
    Beiträge
    1.899
    Zitat Zitat von Siro Beitrag anzeigen
    Mich würde einfach mal interessieren, wie Ihr das handhabt bzw. berechnet,
    Mal das Ende zuerst, ich berechne gar nicht, ich gleiche ab. Ich will das mal an ein paar Beispielen erläutern.

    Wenn ich eine Spannung messen will, brauche ich typisch einen Spannungsteiler, da der Eingangsspannungsbereich des ADC nicht passt. Den kann ich mir nicht frei aussuchen, es gibt nicht jeden Widerstandswert und ich hab auch nicht jeden vorrätig. Außerdem sollten die Widerstände klein sein, der ADC möchte eine kleine Eingangsimpedanz und sie sollten groß sein, um die Messspannung nicht zu belasten. Ich schalte also den Spannungsteiler vor den ADC und nehme meine beste Spannungsreferenz oder mein bestes Voltmeter, nehme ein paar Messwerte auf und bestimme damit den Umrechnungsfaktor für meinen µC.

    Meist interessiert mich die wirkliche Spannung gar nicht. Wenn ich den Ladezustand eines Akkus überwachen will, stelle ich die Entladeschlußspannung, die ich mir vorstelle, auf dem Labornetzteil ein und lese den ADC aus. Danach benutze ich den reinen ADC-Wert. Ist er kleiner, ist der Akku alle.

    Wenn es mal um Strom geht, mach ich das ähnlich. Strom kann man mit dem ADC nicht messen, man kann nur die Spannung an einem Widerstand im Stromkreis messen. Diese Shunts sind häufig klein und damit auch die Spannung. Statt Spannungsteiler kommt hier ein Verstärker ins Spiel. Sowohl den Shunt als auch die Verstärkung kann ich nicht beliebig frei wählen. Also nehme ich mein bestes Amperemeter und gleiche das ganze ab.

    Häufig hat man aber Sensoren, die ihren Widerstand ändern. Wenn ich Übertemperatur an einem Motor feststellen möchte, verschalte ich den Sensor, z.B. NTC, bringe ihn auf die Grenztemperatur und lese den ADC aus. Das ist dann mein Grenzwert.

    MfG Klebwax
    Strom fließt auch durch krumme Drähte !

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.645
    Zitat Zitat von Siro Beitrag anzeigen
    Bei einem 8 Bit ADC habe ich 256 Stufen.
    Wenn ich 256 Stufen habe, wäre ein Schritt die Referenzspannung / 256
    Nehmen wir an, ich habe eine Referenz von 5 Volt, dann wäre dies also
    5 / 256 = 0,01953125 Volt

    Der höchste Wert meines ADU bei 8 Bit ist aber nicht 256 sondern nur 255
    somit entspricht der umgerechnete ADU Wert 255 nicht meiner Referenzspannung von 5 Volt
    sondern nur 4,98046874 Volt. Da fehlt doch was

    Da fällt mir noch etwa sein:

    Die Frage ist, wie der ADC die Werte aufteilt.
    So wie Searcher meint, liegen alle Bereiche innerhalb des zu messenden Spannungsbereichs.
    Wenn dem so ist, erhältst Du natürlich bei 0xFF diese 4,98046874V.
    Denn jedem Digitalwert ist ein Offset und ein Bereich zuzuordnen, der abgedeckt wird.
    Während der abgedeckte Bereich eines Wertes immer gleich ist, ist der Offset jedesmal ein anderer.
    Der Offset für den letzten Wert ist also 4,98046874V, der abgedeckte Bereich beträgt 0,01953125V.
    Macht zusammen 4.99999V. Da hast Du (Rundungsfehler) die 5V Obergrenze.
    Der letzte Wert 0xFF reicht also von 4,98046874V bis 5,0V.

    Da der Fehler, bezogen auf einen absoluten Spannungswert, bei insgesamt 0,01953125V liegt,
    musst Du eigentlich den errechneten Wert runden. Beispielsweise auf 1 Stelle nach dem Komma.
    Dann kommst Du bei den errechneten 4,98046874V auf 5,0V.

    Und noch etwas, was vielleicht irgendwie interessant ist:
    Ein Wert vom ADC entspricht einem analogen Schwellenwert. Bei langsam fallender Spannung liegt die Schwellenspannung theoretisch höher,
    bei langsam steigender Spannung liegt die Schwellenspannung niedriger. Weil ein Wert vom ADC einen Spannungsbereich abdeckt.



    MfG

  6. #6
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.653
    .. Der Offset für den letzten Wert ist also 4,98046874V, der abgedeckte Bereich beträgt 0,01953125V ..
    Köstlich. Da teilen wir 5 V durch 256 - oder 255 Teile und erhalten ne Zahl auf ein paar Billionstel genau. Noch dazu, wo im Datenblatt (zumindest in Atmel-42735B-ATmega328/P_Datasheet_Complete-11/2016) steht: ±2 LSB Absolute Accuracy . . . Schön, gut - es geht hier um die Theorie. Aber ich finde so wunderbare Stellenvermehrung einfach - wunderbar - köstlich.

    Ich will ja nicht päpstlicher sein als der Papst, aber die Strecke von Hamburg nach Südschwaben (wo ich wohne) auf Milliardstel aufzuteilen hieße die Entfernung auf etliche Zentimeter (wenige Dezimeter) genau anzugeben. Und wenn man das Ganze auf 256 Teile aufteilt . . . gut , sind immerhin gut 300 Zentimeter.

    .. Bei einem 8 Bit ADC habe ich 256 Stufen ..
    Also in meinen 8Bittern (siehe z.B. Datenblatt oben) können die ADCs nicht nur 8 Bit sondern üblicherweise auch 10 Bit auflösen. Die Daten stehen dann halt in zwei Registern: ADCL und ADCH. Dies nur der Vollständigkeit halber. Die verringerte Auflösung von 8 Bit ist eher ein Sonderfall, der entprechend programmiert werden kann.
    Ciao sagt der JoeamBerg

  7. #7
    HaWe
    Gast
    Zitat Zitat von oberallgeier Beitrag anzeigen
    Köstlich. Da teilen wir 5 V durch 256 - oder 255 Teile und erhalten ne Zahl auf ein paar Billionstel genau. Noch dazu, wo im Datenblatt (zumindest in Atmel-42735B-ATmega328/P_Datasheet_Complete-11/2016) steht: ±2 LSB Absolute Accuracy . . . Schön, gut - es geht hier um die Theorie. Aber ich finde so wunderbare Stellenvermehrung einfach - wunderbar - köstlich.
    richtig, es geht um die Theorie.
    Zäumen wir das Pferd von hinten auf, am Beispiel eines sehr "kleinen" 2-bit ADCs, weil das Prinzip deutlicher hervortritt:

    wie schon angemerkt, hat ein 2bit ADC 2² mögliche ADC-Werte (0,1,2,3) mit 3 Messintervallen.
    Daher wären die 5V Messspannung durch 3 zu teilen (entsprechend dem höchsten ADC-Wert), in Schritten zu 5/3=1,666

    0 -> 0 V
    1 -> 1,67 V
    2 -> 3,33 V
    3 -> 5 V

    Würde man hingegen mit 4 Intervallen rechnen, ergäbe sich, in Schritten zu 5/4=1,25:
    0 -> 0 V
    1 -> 1,25 V
    2- > 2,50 V
    3 -> (...5 V)
    Hier wird deutlich, dass dann der letzte Schritt (das letzte Intervall) zu groß wäre im Vergleich zum Messbereich und zu den anderen Intervallen.

    Bei einem 8-bit ADC mit 256 Messwerten in 255 Stufen/Intervallen (entsprechend dem höchsten ADC-Wert) ist dieses Verhalten "analog":
    5V durch 255 geteilt ergäbe gleich große Intervalle (steps), durch 256 geteilt entstünde der gleiche Fehler wie oben beim 2-bitter gezeigt.

    Daher ist mein schon im 2. Post gezeigter Vorschlag mit 255er Teiler IMO der korrekte, und nicht der mit 256.

  8. #8
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.703
    Blog-Einträge
    133
    Zitat Zitat von HaWe Beitrag anzeigen
    wie schon angemerkt, hat ein 2bit ADC 2² mögliche ADC-Werte (0,1,2,3) mit 3 Messintervallen.
    Daher wären die 5V Messspannung durch 3 zu teilen (entsprechend dem höchsten ADC-Wert), in Schritten zu 5/3=1,666

    0 -> 0 V
    1 -> 1,67 V
    2 -> 3,33 V
    3 -> 5 V

    Würde man hingegen mit 4 Intervallen rechnen, ergäbe sich, in Schritten zu 5/4=1,25:
    0 -> 0 V
    1 -> 1,25 V
    2- > 2,50 V
    3 -> (...5 V)
    Hier wird deutlich, dass dann der letzte Schritt (das letzte Intervall) zu groß wäre im Vergleich zum Messbereich und zu den anderen Intervallen.

    Bei einem 8-bit ADC mit 256 Messwerten in 255 Stufen/Intervallen (entsprechend dem höchsten ADC-Wert) ist dieses Verhalten "analog":
    5V durch 255 geteilt ergäbe gleich große Intervalle (steps), durch 256 geteilt entstünde der gleiche Fehler wie oben beim 2-bitter gezeigt.

    Daher ist mein schon im 2. Post gezeigter Vorschlag mit 255er Teiler IMO der korrekte, und nicht der mit 256.
    Falsch!

    Extrem könnte man auch einen als Input konfigurierten I/O Pin als einen 1-Bit ADC betrachten mit zwei möglichen Ausgabewerten. Die zu digitalisierende Eingangsspannung am Pin liegt zwischen GND (0 Volt) und Vcc (zB 5V). Der Ausgabe Wert ist 0 oder 1.

    Nun die Preisfrage: Es gibt zwei mögliche Ausgabewerte (entweder die 0 oder 1). Gibt es einen oder zwei Bereiche (Quantisierungsintervalle) der Eingangsspannung am Input Pin, die den Ausgabewerten zugeordnet sind? Wie sehen diese aus mit Angabe der von- bis-Werten und zugehörigen Ausgabewerte?

    @oberallgeier: Hier nur die Theorie. Die Fehler eines realen ADC sind auch in der App.-Note erwähnt, die ich oben schon mal verlinkt hatte:
    http://ww1.microchip.com/downloads/e...ote_avr120.pdf
    Dort wird findet man auch den Begriff "perfect ADC", der hier diskutiert wird.
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  9. #9
    HaWe
    Gast
    Zitat Zitat von Searcher Beitrag anzeigen
    Falsch!

    Extrem könnte man auch einen als Input konfigurierten I/O Pin als einen 1-Bit ADC betrachten mit zwei möglichen Ausgabewerten. Die zu digitalisierende Eingangsspannung am Pin liegt zwischen GND (0 Volt) und Vcc (zB 5V). Der Ausgabe Wert ist 0 oder 1.

    Nun die Preisfrage: Es gibt zwei mögliche Ausgabewerte (entweder die 0 oder 1). Gibt es einen oder zwei Bereiche (Quantisierungsintervalle) der Eingangsspannung am Input Pin, die den Ausgabewerten zugeordnet sind? Wie sehen diese aus mit Angabe der von- bis-Werten und zugehörigen Ausgabewerte?

    @oberallgeier: Hier nur die Theorie. Die Fehler eines realen ADC sind auch in der App.-Note erwähnt, die ich oben schon mal verlinkt hatte:
    http://ww1.microchip.com/downloads/e...ote_avr120.pdf
    Dort wird findet man auch den Begriff "perfect ADC", der hier diskutiert wird.
    Falsch!
    es geht um die Abbildung von ADC-Messwerten auf zugehörige Spannungen im gesamten Messintervall!
    Dabei wäre auch sowohl die niedrigste als auch die höchstmögliche Spannung abzubilden (zu repräsentieren).
    ein 1-bit ADC aus deinem Beispiel hat 2 mögliche Messwerte bzw. Zustände (0,1) mit 1 Intervall dazwischen (5/1 = 5):
    0 -> 0V
    1 -> 5V
    Es gibt keine Zwischenschritte oder "fließende Bereiche", da 0 und 1 Integerwerte (Natürliche Zahlen) sind, keine rationalen oder reellen Zahlen: sondern nur feste Schritte in nicht stetigen festen Stufen.
    Da die Schrittgröße beim ADC 1 ist, ist die statistische Genauigkeit beim ADC immer ±1, das gleiche gilt für das zugeordnete Spannungswert-Intervall (das hatte oberallgeier bereits angedeutet).
    Geändert von HaWe (06.02.2020 um 16:57 Uhr) Grund: typo

Seite 2 von 2 ErsteErste 12

Ähnliche Themen

  1. Entscheidungshilfe Schritt oder Getriebemotor
    Von Atmega328 im Forum Motoren
    Antworten: 2
    Letzter Beitrag: 30.04.2014, 16:38
  2. Antworten: 5
    Letzter Beitrag: 09.10.2013, 10:50
  3. Suche Drehtisch/Schwenkkopf für Kamera (Schritt oder Servo)
    Von MasterFX im Forum Suche bestimmtes Bauteil bzw. Empfehlung
    Antworten: 5
    Letzter Beitrag: 13.07.2013, 07:28
  4. Schritt- oder Getriebemotor?
    Von logliner im Forum Suche bestimmtes Bauteil bzw. Empfehlung
    Antworten: 22
    Letzter Beitrag: 28.08.2012, 14:47
  5. welchen motor, schritt oder servo?
    Von x3oo im Forum Motoren
    Antworten: 7
    Letzter Beitrag: 23.03.2010, 21:41

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress