- 12V Akku mit 280 Ah bauen         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 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 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
    Genau, eine Stufe mit 0,01953125 Volt von 256 Stufen. Jede Stufe hat eine Höhe von 0,01953125 Volt. Die erste Stufe reicht also von 0 bis 0,01953125 Volt. Die halbe Höhe der Stufe liegt bei 0,009765625 Volt und entspricht meiner Vorstellung nach genau dem Spannungswert bei dem der ADC ohne, ich sag mal Toleranz den Wert 0 liefert; Toleranz, die der Stufenhöhe entspricht. (oder eben Quantisierungsintervall heißt)

    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
    Hier aber nicht von "Einheit" Stufe auf "Einheit" Wert wechseln (bzw mit 256 rechnen, da Wert 0 bis Wert Wert 255 = 256 Werte sind) Wie oben festgestellt, entspricht der Wert 0 idealerweise einer Spannung von 0,009765625 Volt. Die Rechnung müßte also meiner Meinung nach so lauten:

    5 Volt / 256 Stufen = 0,01953125 Volt/Stufe
    Wert 0 entspricht idealerweise 0,009765625 Volt
    Wert 255 etspricht idealerweise 255 * 0,01953125 Volt + 0,009765625 Volt = 4,990234375 Volt
    Aber auch 5 Volt werden noch auf der letzten Stufe mit Wert 255 digitalisiert (4,990234375 Volt + 0,009765625 Volt = 5 Volt)


    Mich würde einfach mal interessieren, wie Ihr das handhabt bzw. berechnet, oder wie wurde es euch gelehrt.
    Ich nehme also die Anzahl der Stufen, hier also 256 zur Berechnung her.

    Gruß
    Searcher
    Geändert von Searcher (06.02.2020 um 02:43 Uhr)
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  2. #2
    HaWe
    Gast
    Zitat Zitat von Searcher Beitrag anzeigen
    Genau, eine Stufe mit 0,01953125 Volt von 256 Stufen. Jede Stufe hat eine Höhe von 0,01953125 Volt. Die erste Stufe reicht also von 0 bis 0,01953125 Volt. Die halbe Höhe der Stufe liegt bei 0,009765625 Volt und entspricht meiner Vorstellung nach genau dem Spannungswert bei dem der ADC ohne, ich sag mal Toleranz den Wert 0 liefert; Toleranz, die der Stufenhöhe entspricht. (oder eben Quantisierungsintervall heißt)


    Hier aber nicht von "Einheit" Stufe auf "Einheit" Wert wechseln (bzw mit 256 rechnen, da Wert 0 bis Wert Wert 255 = 256 Werte sind) Wie oben festgestellt, entspricht der Wert 0 idealerweise einer Spannung von 0,009765625 Volt. Die Rechnung müßte also meiner Meinung nach so lauten:

    5 Volt / 256 Stufen = 0,01953125 Volt/Stufe
    Wert 0 entspricht idealerweise 0,009765625 Volt
    Wert 255 etspricht idealerweise 255 * 0,01953125 Volt + 0,009765625 Volt = 4,990234375 Volt
    Aber auch 5 Volt werden noch auf der letzten Stufe mit Wert 255 digitalisiert (4,990234375 Volt + 0,009765625 Volt = 5 Volt)



    Ich nehme also die Anzahl der Stufen, hier also 256 zur Berechnung her.

    Gruß
    Searcher
    falsch, es sind zwar 256 mögliche Werte, aber von 0 bis 255 (ADC_max) nur 255 Stufen (Schritte, Segmente), in die die 5V (V_max) "segmentiert" werden..
    Mein gezeigter Dreisatz zeigt, warum hier 255 stimmt.

  3. #3
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.645
    @siro

    Egal, wo Du im Netz schaust, bei Digitalvoltmetern mit einem Arduino, wird immer durch die darstellbaren Werte geteilt. Bei 10 Bit eben 1024.

    https://www.electroschematics.com/ar...tal-voltmeter/
    https://www.allaboutcircuits.com/pro...g-the-arduino/
    https://create.arduino.cc/projecthub...arduino-00e7d1
    https://appuals.com/how-to-make-a-di...using-arduino/

    Hier auch andere Beispiele, mit 1023, bei 10 Bit:

    https://mechatrofice.com/arduino/voltmeter-dc-dvm
    https://provideyourown.com/2012/secr...ttery-voltage/
    https://www.freecodecamp.org/news/ho...-b4dbf5b94d6f/


    Wobei bei 10 Bit, zwischen 1023 und 1024, der Unterschied so gering ist, dass man den mit normalen Messgeräten für den Heimgebrauch nicht nachvollziehen kann.
    Allerdings wird der Maximalwert von 1023 bei 10 Bit, nicht erst ab der Max-Spannung ausgegeben, sondern scheinbar bereits kurz darunter. Was vielleicht den Schluss zulässt, dass man durch 1024 (oder bei 8 Bit, durch 256) teilt. "Scheinbar" muss ich schreiben, weil ich das nicht genau genug bestimmen kann, weder hab ich eine Referenzspannungsquelle, noch geeichte Meßgeräte.

    MfG
    Geändert von Moppi (06.02.2020 um 09:20 Uhr)

  4. #4
    HaWe
    Gast
    Zitat Zitat von Moppi Beitrag anzeigen
    @siro

    Egal, wo Du im Netz schaust, bei Digitalvoltmetern mit einem Arduino, wird immer durch die darstellbaren Werte geteilt. Bei 10 Bit eben 1024.

    https://www.electroschematics.com/ar...tal-voltmeter/
    https://www.allaboutcircuits.com/pro...g-the-arduino/
    https://create.arduino.cc/projecthub...arduino-00e7d1
    https://appuals.com/how-to-make-a-di...using-arduino/

    Hier auch andere Beispiele, mit 1023, bei 10 Bit:

    https://mechatrofice.com/arduino/voltmeter-dc-dvm
    https://provideyourown.com/2012/secr...ttery-voltage/

    Wobei bei 10 Bit, zwischen 1023 und 1024, der Unterschied so gering ist, dass man den mit normalen Messgeräten für den Heimgebrauch nicht nachvollziehen kann.



    MfG
    es wird eben NICHT IMMER durch die Höhe der Auflösung (256 bzw. 1024 bei 2^8 bzw. 2^10) geteilt, sondern in anderen Quellen AUCH durch die Zahl des größtmöglichen Wertes (z.B. 1023), siehe hier:
    voltage =volt* (5.0 / 1023.0);
    https://mechatrofice.com/arduino/voltmeter-dc-dvm
    und so ist es IMO auch korrekt, siehe Dreisatz, bei dem der größtmögliche ADC-WERT zur größtmöglichen Spannung ins Verhältnis gesetzt wird.
    Geändert von HaWe (06.02.2020 um 10:13 Uhr) Grund: Auflösung

  5. #5
    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
    falsch, es sind zwar 256 mögliche Werte, aber von 0 bis 255 (ADC_max) nur 255 Stufen (Schritte, Segmente), in die die 5V (V_max) "segmentiert" werden..
    Mein gezeigter Dreisatz zeigt, warum hier 255 stimmt.
    Für AVRs fand ich noch diese Application Note. Im Kapitel "1.1 General ADC Concepts" heißt es:
    The output range must be divided into a number of
    steps, one for each possible digital output value. This means that one output value does not correspond
    to a unique input value, but a small range of input values.

    Bei Ausgabewerten von 0 bis 255 gibt es also 256 Bereiche (ranges) für die Eingabewerte. 256 Stufen, Quantisierungsintervalle oder wie man es auch nennen möchte.
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  6. #6
    HaWe
    Gast
    Zitat Zitat von Searcher Beitrag anzeigen
    Für AVRs fand ich noch diese Application Note. Im Kapitel "1.1 General ADC Concepts" heißt es:
    The output range must be divided into a number of
    steps, one for each possible digital output value. This means that one output value does not correspond
    to a unique input value, but a small range of input values.

    Bei Ausgabewerten von 0 bis 255 gibt es also 256 Bereiche (ranges) für die Eingabewerte. 256 Stufen, Quantisierungsintervalle oder wie man es auch nennen möchte.
    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?
    Geändert von HaWe (06.02.2020 um 09:42 Uhr) Grund: "steps"

  7. #7
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.645
    Um der Sache aus dem Weg zu gehen, einem Irrtum zu unterliegen, kann man auch mit dem Maximalwert des ADC rechnen. Der ist bei 8 Bit 0xFF. Wenn man durch 0xFF teilt und mit 0xFF, zur Probe, multipliziert geht die Rechnung auf. Datentyp muss nur Fließkomma sein. 0xFF entspricht einem Dezimalwert von 255, bei 256 darstellbaren Werten im Hexadezimalsystem (weil die "0" mitgezählt wird).


    MfG

    Nachtrag: hier gab es dieselbe Diskussion: https://forum.arduino.cc/index.php?topic=215673.0
    Geändert von Moppi (06.02.2020 um 10:11 Uhr) Grund: komma

  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
    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

  9. #9
    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

  10. #10
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.645
    Der Parallelumsetzer, den man für den C64, nach der Zeitschrift, bauen konnte, der hatte 4 Komparatoren (LM324) und eine 2-Bit-Ausgabe. Also 4 Bereiche. Dazu ein paar LEDs zum Abgleich. Den Mittelwert musste man glaub ich einstellen, über ein Poti. Das Audiosignal wurde über einen Kondensator (weiß nicht mehr genau - 10nF ?) zugeführt. War nicht so dolle, aber es war zu erkennen, was man aufgenommen hatte und konnte das mit dem C64 auch wieder abspielen.


    MfG

Seite 1 von 2 12 LetzteLetzte

Ä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
  •  

fchao-Sinus-Wechselrichter AliExpress