-
        

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: Widerstandsmessung - Frage

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    30.06.2004
    Beiträge
    50

    Widerstandsmessung - Frage

    Anzeige

    Hallo,
    ich möchte über den AD-Port des Atmega8 Widerstände messen.
    Ich wollte daher eine Reihenschaltung von einem festen Widerstand mit dem Mess-Widerstand (auswechselbar) machen.
    Mit AD-Wandler würde ich dann die Spannung messen, die an dem Mess-Widerstand liegt abgreifen.
    Ich möchte Widerstände von 0 bis 18KOhm messen.
    1. Wie groß sollte der feste Widerstand (Vorwiderstand) sein
    2. Warum wird immer die 10kOhm Grenze genannt, steht auch im Atmega8 Datenblatt, aber verstanden habe ich nicht wieso diese Begrenzung.

    Für Antworten wäre ich dankbar...schon mal guten Rutsch

    Heinz

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    10.12.2005
    Beiträge
    52
    Hi

    Ich befasse mich momentan nur mit PIC-Controlern, denke aber, daß die AD-Eingänge ähnlich funktionieren.

    Denke, daß diese 10K als Vorwiderstand für z.B. Transistoren genutzt werden.
    Beim Eingang sollte der µC die Spannung ohne Bedenken abkönnen.
    (Zumindest der PIC)

    Beim PIC wird eine Spannung (0-5V) in einen Wert (0-1023) umgesetzt.
    Dieser Wert dürfte linear zur anliegenden Spannung sein, müsste aber im Datenblatt erläutert sein.

    Wenn wir ein Widerstandsnetzwerk aus 2 Widerstanden bauen, von denen einer dem Controler bekannt ist, können wir durch die gelesene Spannung eine Aussage zu dem zu Testenden Widerstand machen.

    EDIT (Der Weg passte zwar, war aber zu kompliziert ... geht auch einfacher)

    Wenn Du die Spannung misst, die am FEST-Widerstand abfällt, kannst Du den TEST-Widerstand wie folgt berechnen:
    R(test)=R(fest)x(1023-ADC) : ADC
    - bei ADC=0 -> ERROR, der Test-Widerstand ist sehr groß


    Wenn Du die Spannung am TEST-Widerstand misst:
    R(test)=R(fest)xADC : (1023-ADC)
    - bei ADC=1023 -> ERROR, der Test-Widerstand ist sehr groß

    ... wobei ADC der Wert Deines AD-Wandler ist, und die 1023 den Maximal-Wert, den der Wandler ausgeben kann, darstellt.

    Den Vorwiderstand R(fest) könnte man so berechnen:
    R(fest)=5/1023*R(test-max) |5=Spannung am µC 1023=max des ADC
    --> 87,9 Ohm (bei max 18K Test-Widerstand)
    bei 0 Ohm Test -> ganze Spannung fällt an R(fest) ab, an R(test) nichts
    Strom durch die Brücke ca 50mA !!
    Variante 1: ADC=1023
    Variante 2: ADC=0
    bei 18KOhm Test -> 0,03V fällt an R(fest) ab, an R(test) 4,97V
    Variante 1: ADC=1018
    Variante 2: ADC=5


    Wenn die Werte zu ungenau werden, könnte man den Vorwiderstand (automatisch) erweitern, indem man entweder Parallel-Widerstände dazuschaltet (Vorwiderstand wird kleiner) oder Reihenwiderstände dazuschaltet (Vorwiderstand wird größer).
    Dazu bei den
    Parallel-Widerständen einen Transistor mit Diesem in Reihe
    Reihen-Widerständen einen Transistor mit Diesem parallel

    Wenn der Widerstands-Aktivierungspin high ist, wird bei dem
    .. Parallel-Widerstand der Widerstand dazugeschaltet (T leitet) und der gesamt-Widerstand sinkt.
    .. Reihenwiderstand der Widerstand überbrückt (T leitet, der Widerstand wird umgangen) | bei sperrendem T muß der Strom durch den Widerstand -> der gesamt-Widerstand steigt

    Da diese Aktivierungs-Pin's der µC bekannt sind, und auch deren dazugeschalteten Widerstände, kannst Du den Gesamt-FEST-Widerstand berechnen:
    ges. Reihenwiderstand= Summe ALLER Einzelwiderstände
    ges Parallel-Widerstand= Kehrwert der Summe ALLER Parallel-Leitwerte

    Der Leitwert eines Widerstand ist sein Kehrwert.
    Wenn Du 3 Stk 100 Ohm-Widerstände parallel schaltest, ergibt sich folgende Rechnung:
    Rges=1 : (1:100+1:100+1:100)
    * * * *= 1 : (3:100)
    * * * *= 33,333.... Ohm

    Wenn die µC keine Mathe-Befehle zur Verfügung stellt, damit Du mit diesen Zahlen brauchbar rechnen kannst, kann man die Berechnung 'von Hand' programmieren.
    Also dem Programm beibringen, wie man schriftlich multipliziert / dividiert.
    Hierbei muß aber zwingend auf das Komma geachtet werden, sonst kommt nur Müll raus.
    Das hat den Vorteil, daß die Zahlen, mit denen gerechnet werden nahezu unbegrenzt sind, aber den Nachteil, daß viel Speicherplatz und Zeit benötigt wird, um diese Rechnung durchzuführen.

    MfG
    Posti

    Das Problem gefällt mir, werde da glaube gleich mal was PIC'n *g*
    Nachtrag: Da bei mir die Spannungsteiler fest verlötet sind, hat sich das PIC'n erstmal erledigt, aber das Prob hat was.

    PS: Bitte nochmal meine Rechnungen durchdenken ... der Tag war doch recht lang (Edit um 7:24h) ... ich gehe jetzt ins Bett

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    30.12.2005
    Ort
    Tann / ZH
    Alter
    61
    Beiträge
    264
    Eine andere Variante währe einen 4151 oder AD654 zu verwenden.
    Dieser Chip wandelt eine Spannung in eine Frequenz um.

    Vorteile:
    - bessere Auflösung (Grösserer Messbereich)
    - weniger störanfällig da integrierend.

    Studier erst mal die Datenblätter ...

    Guten Rutsch
    Ruedi

  4. #4
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836

    Re: Widerstandsmessung - Frage

    Zitat Zitat von Hei.Mor
    2. Warum wird immer die 10kOhm Grenze genannt, steht auch im Atmega8 Datenblatt, aber verstanden habe ich nicht wieso diese Begrenzung.
    Am Eingang haben die ADC eine Sample & Hold Schaltung.
    D.h. er macht den Eingang kurz auf, lädt einen Kondensator (sample) und macht wieder zu (Hold). Wirklich gemessen wird diese Spannung an diesem kondensator.
    Wenn nun am eingang wegen zu großem Widerstand > ~10k in der kurzen Zeit der Kondensator nicht mehr die Aussen-Spannung erreicht, stimmt natürlich die Messung auch nicht.
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    30.06.2004
    Beiträge
    50
    Hallo,

    vielen Dank für Eure Antworten.

    @Posti :
    die Sache mit dem Transistor kannte ich noch nicht, dachte erst an einen Schalter in CMos (4051 oder so) Form, einzelner Transistor gefällt mir.
    Die ausführliche Berechnung musste ich mir erst mal öfters durchlesen....nicht schlecht was du da aus den Hut gezaubert hast.
    Werde ich mal in der HW prüfen

    @PicNick :
    wenn ich aber an einem 18KOhm Mess-Widerstand messe, sagen wir mal in Reihe liegt der bekannte Widerstand mit 470Ohm um den Strom bei einem 1 Ohm Mess-Widerstand zu begrenzen... warum spielen da die 10 KOhm Begrenzung eine Rolle?
    Habe doch fast die volle 5V anliegen?
    Und wenn der Mess-Widerstand klein wird, durch den kleinen Fest-Widerstand bleibt doch dort trotzdem genug übrig.
    Oder denke ich da falsch?

    Guten Jahresübergang...

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    10.12.2005
    Beiträge
    52
    Hi Mor *gg*

    Aus dem Hut gezaubert ist gut.
    Hatte den Post ja vor Mitternacht erstellt, musste dann weg und dort brannte mir die Formel förmlich unter den Nägeln ... hatte vorher noch U (Spannung) mit drin, ist aber unnötig.
    ... und seit wann braucht man zum Hut-zaubern dutzende von Schmierzettel? *gg*

    Wie gesagt, wenn die genutzte Sprache mit den Zahlenwerten nicht rechnen kann (z.B. Komma-Zahlen in ASM) habe ich früher die Rechnereien in einer SUB-Routiene ausgeführt.
    Eben die Zahlenwerte als Strings abgelegt, und 'schriftlich' die Stellen einzeln verrechnet.
    Hat halt den Nachteil, daß recht viel Platz und Rechenzeit benötigt wird.
    Aber beim Widerstand ausrechnen sollte es auf ne µs oder zwei nicht ankommen.

    @PicNic
    Das mit den 10K hatte ich leider auch nicht verstanden.
    Am als Eingang konfiguriertem Pin sollten Widerstände doch eigendlich nicht notwendig sein, da der Pin keinen Pegel erhalten muß *denk*.

    @All
    Holt schon mal den Sekt aus dem Schrank, in 20 Min wünsch ich Euch was

    MfG
    Posti

  7. #7
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    ..in 20 Min wünsch ich Euch was
    Die berühmten Letzten Worte

    Wenn ich das richtig verstanden habe, geht einfach darum, daß der vorhandene Strom in der Sample-Zeit ausreichen muß, den internen C zu laden.
    Zum Beleg müßt man das einfach mit verschieden dimensionierten Teilern ausprobieren.
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    30.06.2004
    Beiträge
    50
    Hallo und allen ein gutes neues Jahr,

    habe die Schaltung mal mit 1KOhm als bekannten Widerstand aufgebaut.
    Natürlich stimmt deine Berechnung Posti. Widerstände / Spannungen...
    aber sind es ADC 1023 oder 1024? 0-1023 = 1024 Schritte??

    Ich habe mit Poti 32 KOhm gemessen... die 10kOhm Grenze scheint nur zu gelten wenn der Festwiderstand 10kOhm wäre.

    Grüße
    Heinz

  9. #9
    Benutzer Stammmitglied
    Registriert seit
    10.12.2005
    Beiträge
    52
    Zitat Zitat von Hei.Mor
    ... sind es ADC 1023 oder 1024? 0-1023 = 1024 Schritte??
    Logo ... mein Fehler. von 0 bis 1023 sind's 1024 ... wie konnte das nur mir ... *schäm*

    Mit den 10K ... kA, wenn'se drin bleiben sollen (weil se irgendwie gebraucht werden) müsste man die mit in die Formel mit einbeziehen *denk* ... allerdings dürfte der Messbereich darunter leiden.

    Sobald ich mein Proto-Board V2 fertig hab, werde ich das mal antesten.

    Das Problem gefällt mir

    MfG
    Posti

  10. #10
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    16.05.2005
    Beiträge
    734

    Re: Widerstandsmessung - Frage

    Hallo Hei.Mor
    Zitat Zitat von Hei.Mor
    1. Wie groß sollte der feste Widerstand (Vorwiderstand) sein
    Die Genauigkeit bei dieser Messmethode ist am besten bei Widerstandswerten, die ungefähr dem Vorwiderstand entsprechen. Wenn du also in der Gegend von 10kOhm am genauesten messen willst, dann mach den Vorwiderstand auf 10kOhm. Willst du bei 1kOhm sehr genau messen, dann mach den Vorwiderstand auf 1kOhm.

    @posti
    Mit den 10K ... kA, wenn'se drin bleiben sollen (weil se irgendwie gebraucht werden) müsste man die mit in die Formel mit einbeziehen *denk* ... allerdings dürfte der Messbereich darunter leiden.
    Ich denke, da hast du was falsch verstanden. Der Innenwiderstand der Quelle soll nicht größer sondern kleiner als 10kOhm sein. Siehe Auszug aus Datenblatt:
    The ADC is optimized for analog signals with an output impedance of approximately 10 kΩ or less.
    Ist der Quellwiderstand zu groß, dann dauert das Laden des S/H-Kondensators zu lang und verfälscht möglicherweise das Ergebnis.

    Gruß Waste

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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