Hallo Forum,
hab mir mein Netzteil überarbeitet und bin umgestiegen auf den LM2596
die aus einem SNT versorgt werden.
Zusätzlich habe ich ein digitales Poti getestet der einen LM2596 in der
Ausgangsspannung ändert, welches auch sehr gut funktioniert.
Nun zum eigentlichen Problem mit der Strommessung mit dem INA126 +-5V
welcher versorgt wird durch die Ladungspumpe ICL7660 mit -5V.
Rshunt = 100 mOhm macht bei einem Is von 100mA eine Spannungsdifferenz
von 0,01V. Wenn man mit Rg = 16kOhm eine Verstärkung von 10 einstellt
dachte ich mir dort sollte eine gewisse Linearität rauskommen.
Leider ist dem nicht ganz so wenn ich bei Is = 0A die Anzeige mit
R16/R17 auf 0 Abgleiche und dann 100mA als Laststrom habe wird mir
knappe 20mA zu wenig angezeigt. Wird der Laststrom erhöht z.B auf 500mA
werden ca 430mA angezeigt.
Wenn es immer 20mA wären würde ich es per SW ja rausrechnen.
Wo ist mein Denk / Schaltungsfehler ?
Gruß Chris
F. F. schrieb:> Du musst doch erstmal wissen, ob es am INA liegt oder am ADC/uC.> Deshalb, überm ADC oder am INA?
Also übern Shunt bei 100mA sinds 0,01V, die Differenz kommt auch am INA
an und am Ausgang des INA's sinds dann auch wiederum 0,1V.
Was mir halt auch aufällt, obwohl 0V am Ausgang des INA's anliegt,
bekomme ich einen Wert angezeigt halt diese 20mA obwohl selbst am
Eingang des µC 0V anliegen. Im Simulator die Berechnung mehrere male
geprüft und kann es nicht richtig einorden wie sich das zusammensetzt.
Am Handy kann ich nicht so gut den Schaltplan gucken, deshalb nur
Grundsätzliches.
Lies im Datenblatt alles über ADC nach, was wie beschaltet sein muss,
die Referenz und dann gehe mit dem Wissen noch mal an deine Schaltung.
Mit dem ADC des M8 hab ich schon gute Erfahrungen gemacht aber um es
evtl auszuschließen werd ich mal den 33er einseitig abnehemen und mal
das Poti von PC5 dranhalten was fürn Wert rauskommt. Mich beschleicht
eher das Gefühl das ich irgend ein Kleinigkeit beim INA126 übersehe da
ich das erste mal mit diesen arbeite.... vllt ungünstige
Widerstandskombinationen....
Wenn ich mal deinen Schaltplan mit dem Datenblatt vergleiche, würde ich
sagen, dass es evtl. mit dem REF-Pin zu tun haben könnte. Dazu fehlt
evtl. ein 0,1µF an den Versorgungsspannungs-Pins.
Aus dem Datenbladl:
http://www.ti.com/lit/ds/symlink/ina126.pdf
7.4.1 Single-Supply Operation
The INAx126 can be used on single power supplies of 2.7 V to 36 V. Use
the output REF pin to level shift the internal output voltage into a
linear operating condition. Ideally, connecting the REF pin to a
potential that is midsupply avoids saturating the output of the
amplifiers. See Application Information for information on how to
adequately drive the reference pin.
9.1 Low Voltage Operation
[...]
The INAx126 can be operated from a single power supply with careful
attention to input common-mode range, output voltage swing of both op
amps, and the voltage applied to the Ref terminal. Figure 25 shows a
bridge amplifier circuit operated from a single +5-V power supply. The
bridge provides an input common-mode voltage near 2.5 V, with a
relatively small differential voltage.
10.1 Layout Guidelines
[...]
– Connect low-ESR, 0.1-μF ceramic bypass capacitors between each supply
pin and ground, placed as close to the device as possible. A single
bypass capacitor from V+ to ground is applicable for single-supply
applications.
geh doch einfach mal systematisch vor:
Mach eine Tabelle mit
- Spannungsabfall am Shunt
- Ausgangsspannung INA
- Ausgangswert ADC
Das ganze misst du für 6-10 verschiedene Ströme (inkl. 0 und
Maximalstrom).
Dann trägst du die Werte gegeneinander auf, und kannst sofort
unterscheiden, ob was nichtlinear ist, ob für eins der Elemente (INA,
ADC) die Verstärkung nicht stimmt, ob eins der Elemente einen
Offsetfehler hat, ....
Mit den isolierten Einzelwerten, die du hier jeweils postest (und bei
denen man erst auf Nachfrage rauskriegt, wo sie gemessen wurden) ist es
ungleich schwerer, die Quelle der Ungenauigkeit zu bestimmen.
chris schrieb:> wenn ich bei Is = 0A die Anzeige mit> R16/R17 auf 0 Abgleiche
Na ob das ne gute Idee war? Mit R16 und R17 verstellst du zwar auch den
Offset des INA, vor allem aber auch dessen Verstärkung und
Gleichtaktunterdrückung (weil auch die Shuntspannung damit runtergeteilt
wird). Und die Empfindlichkeit, Gleichtaktunterdrückung und den Offset
des Analogverstärkers falsch einzustellen, um einen Offsetfehler des ADC
zu kompensieren, ist - eher ungeschickt.
Falls der INA einen Offsetfehler haben sollte (kriegst du mit der
vorgeschlagenen Messung leicht raus), dann korrigiere ihn, indem du Ref
am INA verstellst (wie auch von K. Hegy angerissen). Wenn der ADC einen
Offsetfehler hat, dann schau dass du ihn am ADC loswirst (durch bessere
Beschaltung oder - wenn es nicht anders geht - durch Subtraktion des
Offsetwerts vom ADC-Ergebnis).
Achim S. schrieb:> Mach eine Tabelle mit> - Spannungsabfall am Shunt> - Ausgangsspannung INA> - Ausgangswert ADC
Ich würde noch ein oder zwei Spalten hinzufügen:
Eingangsspannung INA (also direkt an den Pins gemessen)
und
Eingangsspannung ADC (auch direkt an den Pins gemessen)
Damit sollte sich der "Fehler" zügig finden lassen.
M. K. schrieb:> Ich würde noch ein oder zwei Spalten hinzufügen:
Stimmt: die Eingangsspannung des INA muss man auf jeden Fall mit
aufzeichnen, weil die beiden Spannungsteiler ja bei irgendwelchen
undefinierten Werten stehen.
Bei der Eingangsspannung des ADC darf man vielleicht hoffen, dass sie
mit der Ausgangsspannung des INAs übereinstimmt. Aber das
nachzukontrollieren kann tatsächlich auch nicht schaden.
Achim S. schrieb:> chris schrieb:>> wenn ich bei Is = 0A die Anzeige mit>> R16/R17 auf 0 Abgleiche>> Na ob das ne gute Idee war? Mit R16 und R17 verstellst du zwar auch den> Offset des INA, vor allem aber auch dessen Verstärkung und> Gleichtaktunterdrückung (weil auch die Shuntspannung damit runtergeteilt> wird).
Warum wird die Verstärkung verändert ?? Das DB sagt doch eindeutig bei
Widerstand X ist Verstärkung Y Seite 12.... G = 5+ (80K/Rg). Die
Rückkopplungswiderstände sind im IC ja schon enthalten. o.0
Achim S. schrieb:> Und die Empfindlichkeit, Gleichtaktunterdrückung und den Offset> des Analogverstärkers falsch einzustellen, um einen Offsetfehler des ADC> zu kompensieren, ist - eher ungeschickt.
mmhh was meinst du denn jetzt mit falsch ? Wo ist denn jetzt was falsch
eingestellt ? R16/R17 soll nur die Eingänge schützen das diese nicht
über die Ub kommen das ist alles. Würden sich Festwiderstände eher
anbieten wäre meine Frage ? Oder aber denk ich falsch und brauch die
gesamten Widerstände im Eingangskreis nicht ?
Achim S. schrieb:> Falls der INA einen Offsetfehler haben sollte (kriegst du mit der> vorgeschlagenen Messung leicht raus), dann korrigiere ihn, indem du Ref> am INA verstellst (wie auch von K. Hegy angerissen).
7.4.1
Single-Supply Operation The INAx126 can be used on single power supplies
of 2.7 V to 36 V. Use the output REF pin to level shift the internal
output voltage into a linear operating condition. Ideally, connecting
the REF pin to a potential that is midsupply avoids saturating the
output of the amplifiers.
See Application Information for information on how to adequately drive
the reference pin.
Dieser Text bezieht sich zwar auf SingleSupply wobei auch hier nur kurz
der Ref -Pin angerissen wird, welcher bei mir auf GND liegt.
Letztendlich ist es doch die typische Beschaltung die ich gewählt habe:
SplitSupply mit REF = GND
> Wenn der ADC einen> Offsetfehler hat, dann schau dass du ihn am ADC loswirst (durch bessere> Beschaltung oder - wenn es nicht anders geht - durch Subtraktion des> Offsetwerts vom ADC-Ergebnis).
Joar würd ich ja machen wolln siehe
chris schrieb:> Wenn es immer 20mA wären würde ich es per SW ja rausrechnen.
Achim du hast es ja schon erwähnt das die Eingangsbeschaltung vllt
beschissen ist, nun ist es denn Sinnvoll die Eingangspins eher 1:1
anzuschließen ?
Wobei dann wiederum das Problem besteht, dass die Uin > Ub des INA126
wird und ich ihn dann wharscheinlich in die Begrenzung fahre.
Daten werden in nächster Zeit nachgereicht das ist ja nun an und
Pfirsich kein Problem aber kann ein wenig dauern.... ist nur n Hobby von
mir welches ich ungern komplett aufgeben möchte... aber habt Geduldt...
chris schrieb:> Warum wird die Verstärkung verändert ??
Die Verstärkung des INA wird nicht geändert. Aber wenn du vor dem INA
die Eingangssignale herunterteilst (und zwar um unterschiedliche
Faktoren), dann wird dadurch die Gesamtverstärkung des Systems natürlich
geändert. Die ergibt sich aus deinem Teilerfaktor mal der Vertärkung des
INA. Von beiden Parametern macht mir nur dein Teilerfaktor Sorge, die
Verstärkung des INA passt schon.
Besonders ungeschickt ist, dass du mit den beiden Teilern nicht nur die
Differenzverstärkung änderst, sondern dass du vor allem eine Verstärkung
der Gleichtaktspannung erzeugst, wenn deine Teiler nicht exakt gleich
eingestellt sind. Wenn der "linke" Teiler mit R1 die 15V um den Faktor
6,5 runterteilt, der "rechte" Teiler mit R17 aber um 6,6, dann sieht der
INA an seinen Eingängen eine Differenz von 35mV wenn überhaupt kein
Strom fließt. Und wenn die Spannung mal nicht 15V beträgt sondern 14V,
dann siehst du einen anderen Fake-Wert des Stroms. Willst du das?
chris schrieb:> ist es denn Sinnvoll die Eingangspins eher 1:1> anzuschließen ?> Wobei dann wiederum das Problem besteht, dass die Uin > Ub des INA126> wird und ich ihn dann wharscheinlich in die Begrenzung fahre.
Nein: wenn du Uin>Ub auf den INA126 gibst, dann geht er nicht in
Begrenzung, sondern er geht kaputt!
Es gibt andere Shunt-Verstärker, die du so betreiben kannst. Aber den
INA126 nicht. Wenn du mit dem INA126 arbeiten willst, dann achte darauf,
dass die Teiler an seinen Eingängen exakt gleich eingestellt sind und
missbrauche sie nicht, um einen Offset zu kompensieren, der an einer
ganz anderen Stelle deiner Schaltung entsteht.
chris schrieb:> Letztendlich ist es doch die typische Beschaltung die ich gewählt habe:> SplitSupply mit REF = GND
Ich sag auch nicht, dass du unnötig mit Ref rumspielen sollst. Ich sage
nur: wenn du den Offset des INA verändern wolltest, dann wäre der
Ref-Eingang die richtige Stelle, um das zu tun (und die Spannungsteiler
am Eingang sind die schlechteste Stelle, um das zu tun).
Aber der von dir beobachtete Fehler entsteht aller Wahrscheinlichkeit
nach nicht durch den INA, sondern entweder wegen deiner falsch
abgestimmten Spannungsteiler oder durch ADC und digitale
"Nachbearbeitung" der Stromwerte. Mach die vorgeschlagene Messtabelle,
dann siehst du wo der Fehler herkommt, und dann weißt du auch, wo du ihn
"abstellen" kannst.
Achim S. schrieb:> Aber der von dir beobachtete Fehler entsteht aller Wahrscheinlichkeit> nach nicht durch den INA, sondern entweder wegen deiner falsch> abgestimmten Spannungsteiler oder durch ADC und digitale> "Nachbearbeitung" der Stromwerte.
Der ADC könnte insofern die Ursache sein, weil irgendwo im Datenbladl
geschrieben steht, dass der erste Wert einer DA-Konversion für die Tonne
ist und erst der 2. Wert brauchbar ist. Ob das in diesem Fall zutrifft,
k. A. Deswegen nur als Hinweis.
K. H. schrieb:> Der ADC könnte insofern die Ursache sein, weil irgendwo im Datenbladl> geschrieben steht, dass der erste Wert einer DA-Konversion für die Tonne> ist und erst der 2. Wert brauchbar ist. Ob das in diesem Fall zutrifft,> k. A. Deswegen nur als Hinweis.
nope wurde berücksichtig.
Hallo ich nochmal,
hab nochmal alles nachgemessen die Werte passen soweit und der INA126
verrichtet sein Job solide.
Ua = 5V -->> an R17/R16 eingestellt das 0,5V am INA anliegen (ohne Last)
RLast = 100Ohm
Ia = 50mA
Udiff = 0.5mV - 0,6mV
jetzt kommt der Knackpunkt
Rg = 1,8kOhm / Vu = 50
Macht am Ausgang des INA126 25-30mA dies mit 2 multipliziert ergibt mein
richtigen Stromwert.
Hab mich wohl irgendwie im Widerstand vergriffen bei der Bestückung....
0.o
Bei Vu = 10 sollten es ja 16kOhm sein
Mit den angesprochnen Abweichung des ADC's usw kann ich leben. Bleibt
konstant bei 5mA die zu wenig zum realen Wert sind.
Du hast Gain und Offset. Zumindest wenn du nur Fehler 1. Ordnung hast.
Den Offset bekommst du raus, indem du den Ausgang bei I=0 misst. Den
brauchst du nicht abzugleichen, den kann man einfach herausrechnen. Du
musst lediglich die Last ausschalten können. Kann man z.B. bei jedem
Hochlauf machen.
Den GAIN bekommst du, indem du die Differenz zwischen zwei Werten
nimmst. Nehmen wir z.B. I = 0 und I = max. Der Gain ist die Steigung. In
der Schaltung kann man dazu eine bekannte Last zuschalten (wie eine
Stromquelle, oder, wenn die spannung genau bekannt ist, einen
Widerstand)).
Auch das kann man herausrechnen.
Dann musst du halt die Rohwerte so behandeln:
Wert = (Rohwert - Offset) * GAIN
Um den Fehler zu finden:
Miss eine Übertragungsfunktion der Schaltung: Erhöhe dazu den Strom
mittels Poti oder Stromsenke und miss den Strom und die
Ausgangsspannung.
- Ist das linear?
- Entspricht das der Erwartungshaltung?
- Sind Gain und Offset realistisch?
Gleiche GAIN und Offset ab - mit den gemessenen Werten ist das möglich.
Wie groß ist dann die Abweichung?
Man kann sagen: Potis sind nicht nötig, ein Abgleich in Software ist
genauso genau, aber möglicherweise besser, weil man den oft zumindest
teilweise zur Laufzeit machen kann und so Drift in den Griff bekommen
kann.