Bascom ADC Messung

Bonze

Neues Mitglied
16. Jan. 2010
516
0
0
Altenkirchen (Pfalz)
Sprachen
  1. BascomAVR
irgendwie scheint meine Adc Messung nichr richtig zu funktionieren, ich bekomme immer das gleich Ergebnis,
gemessen wird der Spannungsabfall (an Masse) ueber einen 8,5cm langen 1.5mm² Draht.
Code:
Dim I As Byte
Dim Messergebnis(5) As Word                                 'enthält alle 4 messwerte
Dim Rechenergebnis As Single
Dim Strom(2) As Single
Dim Strom1 As String * 5
Dim Spannung(2) As Single                                   'spannungswerte
Dim Spannung1 As String * 5
Dim Leistung(2) As Single    

Const Adc_multipli = 0.0048875855327468  
Config Adc = Single , Prescaler = Auto , Reference = Avcc   ' , Reference = Internal                 
Enable Adc
Start Adc
do
     Gosub Read_adc 
loop

Read_adc:                                                   ' shunt = 8,5cm 1,5mm² kupferdraht
   For I = 1 To 5
     Messergebnis(i) = Getadc(i)                            'ruft alle analogwerte ab
     'Print "messergebnis" ; I ; " " ; Messergebnis(i)
   Next

   'strom/spannungswandlungen
   Rechenergebnis = Messergebnis(3) * Adc_multipli          'strom links
   Rechenergebnis = Rechenergebnis / 10
   Strom1 = Fusing(rechenergebnis , "##.##")

   Spannung(1) = Messergebnis(2) * Adc_multipli             'Spannung  links ca 1/20 der Messpannung
   Spannung1 = Fusing(spannung(1) , "##.##")

   Leistung(1) = Spannung(1) * Strom(1)
   Leistung(1) = Round(leistung(1))
return

der Strom wird gemessen über den Shunt->OP->adc (0-12A)
SPannung wird nur ueber einen Spannungsteiler gemessen(0-48V), wobei ich davon ausgehe das die SPannungserkennung funktionierenmuesste,. jedoch nur die Stromanzeihe nicht,.
 
Um jetzt was genaueres sagen zu können, ist das zu wenig Input.
-Gegen welch Referenz wird gemessen (bzw mit welcher verglichen)?
(-getadc liefert immer ein 10bit-Ergebnis?)
-laß Dir mal die Rohdaten (Also Deine Messergebnis(n)-Werte ausgeben
-mach mal nähere Angaben zur Schaltung - welcher Strom fließt denn da in etwa? Wie groß ist der Widerstand des Drahtes? (über den Daumen würd ich auf ca 1 Milliohm tippen)

Schildere mal bitte Deine Gedanken bei der Dimensionierung der Meßschaltung und der ADC-Initialisierung - dann wirds für uns einfacher zu suchen...
 
Hallo Bonze!

Initialisiert und gestartet hast du den ADC?

Aus der Bascom-Hilfe:
'configure single mode and auto prescaler setting
'The single mode must be used with the GETADC() function

'The prescaler divides the internal clock by 2,4,8,16,32,64 or 128
'Because the ADC needs a clock from 50-200 KHz
'The AUTO feature, will select the highest clockrate possible
Config Adc = Single , Prescaler = Auto
'Now give power to the chip
Start Adc

'With STOP ADC, you can remove the power from the chip
'Stop Adc
 
so, hab mal den code geupdated..
ich hoffe bei der dimensionierung des Verstärkungsfaktors am OP hab ich alles richtig gemacht,.
der Spannungsteiler funktioniert, wennglich ich noch nen Faktor multiplizieren muss, hab ich gemerkt..

also Stromwert, hab ich jedoch immer den Wert 0.05A als ausgabe,.
 
Hi Bonze,

ohne weitere Angaben zur Schaltung ist es schwer zu sagen, wo der Fehler liegt.

... 8,5cm langen 1.5mm² Draht
Anhand des spezifischen Widerstands von Kupfer ergibt sich ein Widerstand von 0,00095 Ohm also rund 1 MilliOhm.

... der Strom wird gemessen über den Shunt->OP->adc (0-12A)
Der Spannungsabfall über deinem Shunt beträgt also 0 ... 12 MilliVolt. Ist dann jetzt die Frage, wieviel Verstärkung dein OP macht und wie groß die Referenzspannung ist.

... SPannung wird nur ueber einen Spannungsteiler gemessen(0-48V)
Reden wir hier eigentlich über Gleich- oder Wechselspannung ?

Wenn das Eingangssignal des ADC nicht vom Shunt kommt, sondern von einer regelbaren Spannungsquelle (Labornetzgerät), funktioniert die Stromanzeige dann ?

Gruß
Pirx
 
ich glaube ich hab den fehler,.
hab zu testzwecken die referenzspannung auf 5V eingestellt, geplant war sie jedoch auf 2,56V ;), muss das nochma ausprobieren,.
 
also , nochma zum verständnis,

Spannungsmessung:
Spannungsteiler direkt an den Adc,. = 1/20 Spannungswert
d.h. 2,56V = 255 => 2,56V*20 = ~51V (maximale Messspannung)
zum umrechnen

Code:
messergebnis = adc(x) *Adc_multipli '0-2,56V
messergebnis = messergebnis * 20 'ums wieder auf meinen gewünschten anzeigewert zu bekommen

Strommessung:
0,001Ohm Shunt in GND Leitung "eingeschleift"
0,001ohm*12A(max zu messender Strom) = ~0,012V (max messpannung)
d.h. 0,012V*200(Verstärkungsfaktor vom OP-AMP) = 2,4V
und dann einfach umrechnen 2,56V/255 = 0,01
macht dann 2,4V= 240 'max anzunehmender Wert

Code:
messspannung =  adc(x)*Adc_multipli
Strom = ??
 
also die normierung scheint zu funktionieren,.

jetzt hab ich aber das problem, das ich im Leerlauf schon 4A angezeigt bekomme.
will ich dann die Spannung noch messen geht der Wert auf 10A hoch,
entferne ich die Messleitung wieder, geh der wert wieder auf 4A runter.. 4 A im Leerlauf sind eigentlich schon zu viel,..
naja gut, aber es scheint mir das irgendwo etwas falsch auf meiner Messplatine is,.
oder ist vl die Masse nicht richtig verbunden, und deshalb bekomme ich beim anschluss meiner Messspannung den höheren Strom wert angezeigt? sodass vl irgendwo kriechströme fliessen?
 
Hi Bonze,

entferne ich die Messleitung wieder, geh der wert wieder auf 4A runter.. 4 A im Leerlauf sind eigentlich schon zu viel,..
naja gut, aber es scheint mir das irgendwo etwas falsch auf meiner Messplatine is,.
das können auch Offset-Spannungen von deinem OPAmp für die Strommesung sein. Leg mal nen Digitalmultimeter an den ADC-Eingang und sieh nach was da im Leerlauf ankommt.

Gruß
Dino
 
Hallo zusammen,

Sorry, habe den Thread nur schnell überflogen. Kann sein, dass ich etwas übersehen habe, aber ich vermisse den Schaltplan...

MfG

FreeVee
 
ja, das dumme is, der is leider verloren gegangen, nachdem ich mein windows aufgrund virenbefalls plattmachen musste, ich denke aber icht, das der falsch is,,.
bzw das is genau die 0815- Shunt Messchaltung die man in jedem Forum findet,.

EDIT:
so, also Eingangsspannung ist 40mV und Ausgangsspannung des OPAMps ist 3,65V, egal ob ich ne Spannung messe oder nicht,. ich hege gerade zweifel ob ich vl nich doch en Programmfehler hab, ...
 
Nur mal so nebenbei. Ich hab auch gerne Probleme mit dem ADC. nur dass bei der OPamp erst ab 3,3mV durchbricht und anfängt zu verstärken. So versaut er auch die ganzen Messwerte. gibz (gabs) hier irgendwo ein Thema dass dieses Problem (Durchbruchspannung) behandelt?
Gruß
 
Hallo Folienkondensator,

Nur mal so nebenbei. Ich hab auch gerne Probleme mit dem ADC. nur dass bei der OPamp erst ab 3,3mV durchbricht und anfängt zu verstärken. So versaut er auch die ganzen Messwerte. gibz (gabs) hier irgendwo ein Thema dass dieses Problem (Durchbruchspannung) behandelt?
Gruß


Was meinst Du genau mit "Durchbruchspannung" ? Die 3,3mV am Ausgang, obwohl Du an beiden Eingängen des OPV (invertierter und nicht invertierter Eingang) 0V anliegen? Beachte, OPV haben um den Nullpunkt herum oft sogenannte Übernahmeverzerrungen, d.h. sie sind um den Nullpunkt meistens nicht so wie man sich das wünscht.

Aber mal ehrlich, was sind 3,3mV? Also bisher hatte ich bei meinen analogen Basteleien in der Vergangenheit noch nie Probleme mit so etwas gehabt. Bin schon etwas länger in Sachen Elektronik unterwegs, gerade früher, als µC noch nur was für Spezial-Spezialisten waren, da für den normalen Elektroniker viel zu teuer - und damit meine ich hauptsächlich die Entwicklungsumgebung. Da mussten sehr viele Aufgaben durch analoge Rechentechnik - also OPV's gelöst werden.

Etwas teurere OPV's sind da auch oft besser, als die Billigteile - ein Blick in das Datenblatt sollte helfen.

Was mir eben noch in Sachen ADC einfällt: In der Application-Note von Atmel wird eine genaue Beschaltung des µC empfohlen. Oft werden die Standard-Kondensatoren direkt am µC auch noch weggelassen und dann können relativ schnell die merkwürdigsten Sachen passieren. Wichtig ist auch eine relativ gut stabilisierte Versorgungsspannung. Oft wird ja keine eigene Referenzspannung verwendet, sondern die Versorgungsspannung des µC - dies kann gutgehen, muss aber nicht...


MfG

FreeVee
 
Hallo,

nur dass bei der OPamp erst ab 3,3mV durchbricht und anfängt zu verstärken. So versaut er auch die ganzen Messwerte. gibz (gabs) hier irgendwo ein Thema dass dieses Problem (Durchbruchspannung) behandelt?
herzlich willkommen in der realen Welt der Schaltungsentwicklung :p :aetsch:

Bei ganz normalen OPAmps kannst du glücklich sein wenn der am Ausgang (bei 5V Versorgung) zwischen 0,5V und 4,5V arbeiten kann (so 0,50..1,50eur Dinger). Wenn du weiter an die Betriebsspannung rann mußt dann mußt du Rail-to-Rail OPAmps nehmen. Die liegen im Preis aber gleich ein wenig höher (etwa 2,00..5,00eur). Wenn du dann noch rauscharme Meßverstärker benötigst dann leg mal so etwa 5,00..10,00eur für ein IC mit einem Einzel-OPAmp da drin auf den Ladentisch. Nur mal als Anhaltswert.

Aber selbst damit wirst du nicht mit dem Ausgang genau auf 0,000mV an die Betriebsspannung rankommen. Es sind nun mal keine Relais-Kontakte an den Ausgängen. Selbst Kontakte hätten Übergangswiderstände die einen Spannungsabfall haben wenn man Strom durchschickt.

Ein normaler NPN-Transistor hat im durchgeschalteten Zustand immer noch etwa 0,2-0,3V zwischen Collector und Emitter liegen. Bei MOSFETs ist es besser aber eben auch nicht gleich Null.

Gruß
Dino
 
Hi

Ich mein eher das Problem dass ich eine Spannung von um die 0-20 mV für den Chip lesbar machen muss. das bedeutet 0-20mV sollen zu 0-ca5V werden. Da mein OPAmp aber erst ab einer Eingangsspannung von 3,3mV anfängt zu arbeiten springt die Ausgangsspannung ab einem gewissen Eingangswert sofort auf 0,5V.

Beispiel
Eingang-----------Ausgang
0V----------------0V
1mV--------------0V
2mV--------------0V
3mV--------------0V
4mV--------------0,5V
5mV--------------0,6V
6mV--------------0,7V
usw...

Die Eingangsspannung schwnakt im Bereich von 0-ca20mV. deswegen sind die 3mV die fehlen schon ein Problem.
Die Ausgangsspannung von 0V-0,5V fehlt komplett.
Ich hoffe das Problem ist jetzt besser ersichtlich ^^

Gruß
 
Hi,

Die Eingangsspannung schwnakt im Bereich von 0-ca20mV. deswegen sind die 3mV die fehlen schon ein Problem.
Die Ausgangsspannung von 0V-0,5V fehlt komplett.
Ich hoffe das Problem ist jetzt besser ersichtlich ^^
jou! alles klar. Nimm einen ICL7660 (ist das glaube ich) und bau damit einen Spannungsinverter. Also das IC was über Kondensatoren auch Spannung verdoppeln kann. Dann nimmst du die gelieferten -5V und legst sie über nen Vorwiderstand auf ne ROTE LED nach GND. Rote LEDs sind relativ stabil und rauscharm. Dann hast du eine Spannung von etwa -1,6V als negative Betriebsspannung für den OPAmp. Damit kommt er weit genug runter. Nicht vergessen alles gut zu sieben (Keramiks, Elkos, ...). Wenn dir die -1,6V zu hoch sind dann nimm statt dessen ne einfache 1N4148. An der fallen dann etwa 0,6V ab.

Bei der negativen Versorgung des OPAmps dran denken das er am Ausgang auch nach negativ ausschlagen kann. Darum den Eingang des ADCs mit nem Vorwiderstand schützen !! Sonst gibts Elektronikschrott wegen defekter Schutzdioden im Controller.

Wenn du sowieso nen MAX232 (serielle Schnittstelle) dran hast, dann kannst du die negative Spannung für die LED/1N4148 auch dort entführen ;)

Gruß
Dino
 
Hallo,


herzlich willkommen in der realen Welt der Schaltungsentwicklung :p :aetsch:

Ja, ja, gerade bei Schaltungen mit den kleinen OPV's können die merkwürdigsten Dinge passieren...

Leider sieht man bei diesem Bauteil, dass die Theorie und die Praxis manchmal doch weiter auseinander liegen.
Bei OPV's macht man oft den Fehler (ist mir auch schon so ergangen), dass man sie zu sehr als ideale OPV's betrachtet.
Dies wird auch oft so in der Ausbildung gelehrt. Leider kennt die praktische Schaltungsentwicklung keine idealen OPV's.
1.Tipp:
Bei ganz großem Interesse besorge Dir das Fachbuch "Tietze-Schenk" - eines der besten Fachbücher die ich kenne.
Ein ebenfalls sehr gutes Fachbuch ist: Einführung in die Elektronik 2 Kontaktlose Signalverarbeitung aus dem Stam-Verlag.

Das mit den Rail to Rail Typen lag mir auch auf der Zunge (bzw. im Finger), aber ich wollte niemanden verwirren.

Wenn wir schon dabei sind:
Was evtl. auch noch erwähnenswert ist, es gibt spezielle Schaltungen z.B. den Instrumentenverstärker. Diesen gibt es sogar als fertiges IC.
Evtl. noch etwas "Hühnerfutter" - also noch ein paar Widerstände dabei, und schon hat man einen brauchbaren Messverstärker.
Zumindest eine sehr gute erste Stufe.
2.Tipp: Schau doch mal unter dem Begriff "Instrumentenverstärker" in einem Fachbuch oder eben bei Google.

MfG
FreeVee
 
Wenn wir schon dabei sind:
Was evtl. auch noch erwähnenswert ist, es gibt spezielle Schaltungen z.B. den Instrumentenverstärker. Diesen gibt es sogar als fertiges IC.
Evtl. noch etwas "Hühnerfutter" - also noch ein paar Widerstände dabei, und schon hat man einen brauchbaren Messverstärker.
Zumindest eine sehr gute erste Stufe.
2.Tipp: Schau doch mal unter dem Begriff "Instrumentenverstärker" in einem Fachbuch oder eben bei Google.
Sieh dir mal folgende ICs an ...

AD620 - Instrumentation OPAmp (etwa 4,- .. 5,50)
AD622 - Instrumentation OPAmp
LT1490 - Rail-to-Rail OPAmp (knappe 3,-)

Eventuell ist da ja schon was brauchbares für dich dabei. Die liegen preislich auch noch im Rahmen.

Gruß
Dino
 
ähm ja, bitte back to topic :d
setz heut mittag mal den schaltplan rein, wobei ich nich denke das da was sensationelles zu finden sein wird,.
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)