Forum: Mikrocontroller und Digitale Elektronik +100V & - 20V mit uC-ADC messen


von Marten M. (mcgonahy148)


Lesenswert?

Sehr geehrte Community ;-)


Würde gerne -20V und +100V (bezogen auf einen gemeinsam GND) an einem 
Atmega 2560 und dessen ADCs messen.

Zu der 100V-Messung:
-----------------------------
https://antwortenhier.me/q/wie-lese-ich-hohe-spannungen-am-mikrocontroller-60097178943

--> ich versteh nicht warum hier der Impedanzwandler schon verwendet 
wird, wenn doch die Eingangsimpedanz vom ADC oft im Bereich 100MegOhm 
ist?

-20V-Messung:
-----------------------------
Wie kann ich mir mit möglichst wenig Aufwand diese Spannung messen? 
Genauigkeit ist bei mir relativ, ich kann auch mit +/-0.5V leben :-)

Impedanzwandler und Inverter? Aber dann hab ich wieder das Problem dass 
der Inverter auch eine negative Vcc benötigt...


Gruß,
Marten

von Pandur S. (jetztnicht)


Lesenswert?

Du verkleinerst die zu messende Spannung von +100V auf +-1.5V und hebst 
diese Spannung dann um 1.5V an.
Also Spannungsteiler plus subtrahierer.

von Ingo Less (Gast)


Lesenswert?

Du möchtest also 120V Messbereich mit 20V Offset. Dann baue einen 
Spannungsteiler von deiner Referenz auf, auf den du deine Spannung über 
einen dritten Widerstand einspeist. Wenn deine Spannung -20V beträgt, 
liefert dein Spannungsteiler 0V. Wenn die +100V anliegen, dann liefert 
er Vref. Rechnen darfst du selber...

von MaWin (Gast)


Lesenswert?

Marten M. schrieb:
> wenn doch die Eingangsimpedanz vom ADC oft im Bereich 100MegOhm ist?

Ist sie nicht.
Wenn du das Datenblatt des uC lesen wurdest, würdest du erfahren, dass 
er maximal 10kOhm Quellimpedanz sehen möchte, um noch aufs letzte bit 
genau zu messen.

Marten M. schrieb:
> Wie kann ich mir mit möglichst wenig Aufwand diese Spannung messen

Spannungsteiler.
Den einen von 100V nach GND mit 10k+220k, den anderen von 5V der uC 
Versorgungsspannung nach -20V mit 10k+47k.
Das 'invertieren' macht dann der uC durch subtrahieren.
Nutzt man nicht die ungenauen 5V als Ref, sondern die interne (welcher 
uC auch immer, hast du ja NATÜRLICH nicht gesagt) muss man noch diese 
Spannung gegenüber den 5V messen.

von Ingo Less (Gast)


Lesenswert?

Ingo Less schrieb:
> Rechnen darfst du selber...
Von Vref (hier 5V) über 47,5k auf einen 10k der nach GND geht. Dann das 
Signal (-20...100V) über einen 190k auf den Knoten der zwischen 47,5k 
und 10k entsteht. Das Signal -20V...100V -> 0V...5V

von Thomas E. (thomase)


Lesenswert?

MaWin schrieb:
> (welcher
> uC auch immer, hast du ja NATÜRLICH nicht gesagt)

Marten M. schrieb:
> an einem
> Atmega 2560 und dessen ADCs messen.

von Marten M. (mcgonahy148)


Lesenswert?

MaWin schrieb:
> Ist sie nicht.
> Wenn du das Datenblatt des uC lesen wurdest, würdest du erfahren, dass
> er maximal 10kOhm Quellimpedanz sehen möchte, um noch aufs letzte bit
> genau zu messen.

Ja du hast Recht, hab nochmal nachgesehen. Ich weiß nicht wo ich die 
500Meg Ohm her hab, war mir grad sicher dass ich das vor 2 Tagen gelesen 
hab im Datenblatt.

von Wolfgang (Gast)


Lesenswert?

Marten M. schrieb:
> Ja du hast Recht, hab nochmal nachgesehen. Ich weiß nicht wo ich die
> 500Meg Ohm her hab, war mir grad sicher dass ich das vor 2 Tagen gelesen
> hab im Datenblatt.

Dann sollte dir schon dein Bauchgefühl gesagt haben, dass du dich sehr 
wahrscheinlich verlesen hast.

Damit deine Spannung beim Umschalten eines eventuell vorhandenen 
Multiplexers oder beim Samplen trotz des relativ hochohmigen 
Spannungsteilers halbwegs stabil bleibt, könntes du dem ADC-Eingang noch 
einen Stützkondensator verpassen. Du muss nur drauf achten, dass die 
Bandbreite deines Eingangs nicht niediger als die höchste abzutastende 
Frequenz wird.

von Falk B. (falk)


Lesenswert?

Marten M. schrieb:
> Sehr geehrte Community ;-)
>
> Würde gerne -20V und +100V (bezogen auf einen gemeinsam GND) an einem
> Atmega 2560 und dessen ADCs messen.

Kein Thema.

>
> Zu der 100V-Messung:
> -----------------------------
> 
https://antwortenhier.me/q/wie-lese-ich-hohe-spannungen-am-mikrocontroller-60097178943
>
> --> ich versteh nicht warum hier der Impedanzwandler schon verwendet
> wird,

Kann man machen, muss man aber nur, wenn man relativ oft messen will, 
sagen wir mehr als mit 1 kHz. Denn dann muss die Signalquelle, hier der 
Spannungsteiler, den Sample & Hold Kondensator immer wieder schnell 
aufladen. Eine hochohmige Quelle kann das eher schlecht, und je 
hochohmiger um so größer der Meßfehler.

> wenn doch die Eingangsimpedanz vom ADC oft im Bereich 100MegOhm
> ist?

Statisch. Aber nicht dynamisch. Der Sample und Hold Kondensator hat 
vielleicht 5-10pF. Die müssen vor jeder Messung auf die volle 
Meßspannung geladen werden.
Beispiel

I = C  U  f  = 10pF  5V  1kHz = 50nA

Klingt wenig, ist es auch. Aber diese 50nA fließen im Mittel aus der 
Quelle in den ADC-Eingang und erzeugen einen Spannungsabfall, der die 
Messung verfälscht. Bei 10kHz sind es schon 500nA = 0,5uA.

Für langsame Messungen reicht ein kleiner 10-100nF Kondensator am 
ADC-Eingang. Der liefert die kurzen Strompulse zum Aufladen des Sample & 
Hold Kondensators. Den Fehler durch den mittleren Strom des ADC macht 
man klein, indem man den Strom durch den Spannungsteiler ausreichend 
groß macht, hier z.B. 1000x50nA = 50uA.

> -20V-Messung:
> -----------------------------
> Wie kann ich mir mit möglichst wenig Aufwand diese Spannung messen?
> Genauigkeit ist bei mir relativ, ich kann auch mit +/-0.5V leben :-)

Mit einem Spannungsteiler aus drei Widerständen.

> Impedanzwandler und Inverter?

Braucht man beides nicht.

> Aber dann hab ich wieder das Problem dass
> der Inverter auch eine negative Vcc benötigt...

Nein, man kann einfach einen Rail to Rail OPV wie einen TS912 nehmen.

von Wolfgang (Gast)


Lesenswert?

Falk B. schrieb:
> Nein, man kann einfach einen Rail to Rail OPV wie einen TS912 nehmen.

Aus Sicht einer Analogsignalverarbeitung ist die Bezeichnung 
Rail-to-Rail mehr oder weniger ein Werbeversprechen. Sobald am Ausgang 
der kleinste Strom fließt, wird die Vresorgungsschiene nicht mehr 
erreicht.

von Marten M. (mcgonahy148)


Lesenswert?

Danke Falk für die Erläuterung!

Dann wird es wohl ein R-Teiler und ein 100nF Cap direkt am ADC-Pin.

von Marten M. (mcgonahy148)


Lesenswert?

Jetzt muss ich nochmal was fragen...

In dem Datenblatt hier steht in den abs. Max. Ratings, dass der Strom 
max. +/-20mA sein darf, wenn Vi > Vcc +0.5V ist.

--> bedeutet das, dass ich auch auf 10V gehen kann solange der STrom 
<20mA ist? Also dort ziemlich große Schutzdioden drin sind?

Ich kenns aus den meisten Datenblättern nur, dass sie Max. Vcc + 0.5V 
angeben, aber keine Spannung darüber angeben.

Oder ist mein Verständnis falsch von den Schutzdioden?


Gruß,
M

von Falk B. (falk)


Lesenswert?

Marten M. schrieb:
> Jetzt muss ich nochmal was fragen...
>
> In dem Datenblatt hier steht in den abs. Max. Ratings, dass der Strom
> max. +/-20mA sein darf, wenn Vi > Vcc +0.5V ist.

Ja. Das passiert, wenn man dort halt über einen Widerstand 20mA 
einspeist.

> --> bedeutet das, dass ich auch auf 10V gehen kann solange der STrom
> <20mA ist?

Aber  nur, wenn der Längswiderstand zwischen deinen 10V und dem 
EIngangspin groß genug ist, hier >250R. Das ist aber eine absolute 
Grenze, die gerade noch so keinen Schaden macht. Praktisch sollte man 
diesen Zustand eher vermeiden.

> Also dort ziemlich große Schutzdioden drin sind?

Jain. 20mA sind nun auch nicht sooo, viel, wenn gleich viele andere ICs 
mit deutlich weniger zulässigem Eingangsstrom spezifiziert sind.

> Ich kenns aus den meisten Datenblättern nur, dass sie Max. Vcc + 0.5V
> angeben, aber keine Spannung darüber angeben.

Du meinst Strom. Logisch, denn bei VCC+0,5V leiten die Schutzdioden noch 
nicht, also fließt kein Strom.

> Oder ist mein Verständnis falsch von den Schutzdioden?

Kann sein. Im Normalfall sind die dazu da, ESD abzuleiten und zu 
begrenzen. Das sind nur SEHR kurze Pulse im Bereich von ein paar Dutzend 
Nanosekunden mit begrenzter Spannung und Energie. Man kann sie auch für 
Klemmung benutzen, sollte es aber mit dem Eingangsstrom nicht 
übertreiben. In den meisten Anwendungen wird man anstreben, keinerlei 
Strom durch die Klemmdioden fließen zu lassen.

von Marten M. (mcgonahy148)


Angehängte Dateien:

Lesenswert?

Beim AVR Atmega2560 steht zum Beispiel das hier drin.

Hier wird bei den 40mA kein Bezug auf die Dioden genommen, das würde mir 
eigentlich intuitiv sagen dass es wirklich um die Fähigkeit geht wieviel 
Strom der Pin treiben/aufnehmen kann, weniger was die Dioden abkönnen.

Wenn ich also das AVR Blatt ganz simple lese nehme ich an, alles über 
5.5V ist tabu. Das war in dem anderen Datenblatt irgendwie deutlicher 
beschrieben mit der Angabe >Vcc+0.5V.

von Axel R. (axlr)


Lesenswert?

Marten M. schrieb:
> Aber dann hab ich wieder das Problem dass
> der Inverter auch eine negative Vcc benötigt...
@all
Der TO hat keine -20V zur Verfügung. Sein Eingangsspannungsbereich 
überstreicht den Bereich -20V bis +100V. Spanungsteiler mit drei 
Widerständen gegen -20V wäre sonst auch meine Idee.
@Marten
Spannungsteiler 1 zu 10 und von links 2Volt einspeisen.
Beim Eingangssignal von -20V sinds dann 0Volt am ADC. Bei +100V dann 
+12V.
Bei 0Volt am Eingang sinds 2Volt. Das ergebnis dann  noch mal 1zu8 oder 
gleich am Anfang mit was binären 2^n teilen, dass es in den Wertebereich 
passt.
Die negative Spannung kannst Du Dir zur Not mit 2x1µF(zB) und 1N4148 
ausm Timer-Pin ziehen.
Beitrag "Re: Negative Kontrastspannung am LCD per Atmega PWM regeln?"
https://www.holger-klabunde.de/dcdc/picdcdc.htm
https://www.holger-klabunde.de/dcdc/hcnegat.gif
http://elm-chan.org/docs/lcd/lcd3v.html
http://elm-chan.org/docs/lcd/rc/lcd2.png

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Marten M. schrieb:
> Ich weiß nicht wo ich die 500Meg Ohm her hab, war mir grad sicher dass
> ich das vor 2 Tagen gelesen hab im Datenblatt.
Das muss ein anderes DB gewesen sein, denn 500MOhm sind zwischen 2 
IC-Pins nicht zu machen. Da ist schon die (Luft-)Feuchtigkeit im 
IC-Platik niederohmiger.


MaWin schrieb:
> Ist sie nicht.
> Wenn du das Datenblatt des uC lesen wurdest, würdest du erfahren, dass
> er maximal 10kOhm Quellimpedanz sehen möchte, um noch aufs letzte bit
> genau zu messen.
Man kann die niedrige Impedanz auch mit einem Kondensator 
gewährleisten. Siehe dazu den 
Beitrag "Re: Problem mit Spannungsteiler"

Durch den erwähnten 100nF Kondensator vom Analogeingang nach GND bleibt 
die Umladung und damit der Messfehler in jedem Fall unter 1/7000 und ist 
damit 7x besser als der 10-Bit-ADC auflösen kann (der kann ja nur 
1/1024).

Ich messe -20V...+20V mit einem ADC mit 2,5V Referenzspanung so:
1
              +10V Ref
2
               |
3
               -
4
              | |
5
              | | 75k
6
               -
7
       ____    |
8
 In --|____|---o----o---- ADC
9
      150k     |    |
10
               -   --- 100n
11
         11k5 | |  ---
12
              | |   |
13
               -    |    
14
               |    |
15
GND -----------o----o-----
Das kann man durch geschickte Bemessung der Widerstände und der 
Referenzspannung auch noch anpassen. Siehe den bereits genannten Artikel 
Spannungsteiler und das selbe mit anderen Worten:
http://www.lothar-miller.de/s9y/archives/36-Analogeingang-unipolarbipolar-mit-Widerstandsnetzwerk.html

: Bearbeitet durch Moderator
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.