PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Nebenschlusswiderstand(Shunt) an ADS1115



GhostJumper
24.11.2018, 15:54
Hallo Community,

Ich wollte mit einem ATX Netzteil eine "Variables" Netzteil bauen, bin aber auf folgendes Problem Gestoßen:
Da ich einen Arduino und einen ADS1115 benutze sind diese nur bis ungefähr 5V belastbar. Ich möchte aber bis zu 12V messen.
Also habe ich einen Spannungsteiler benutzt, der von 13V auf 5V regelt. Jedoch werden nun die Differenzwerte mit höherem Strom niedriger.
Wenn ich die Stromversorgung von einem unabhängigen Gerät beziehe und den Spannungsteiler weg lasse, funktioniert es super.
Um aber die Spannung messen zu können muss aber ein einziges GND potential benutzt werden.

Zur besseren veranschaulichung hier der Schaltplan und meine Erklärung:

https://easyeda.com/editor#id=|12f3545a13fb452098d43389642b1648
https://youtu.be/Ckk6PhvDMcM

Vielen Dank im Vorraus.
Gruß GhostJumper

Moppi
24.11.2018, 16:24
Hallo,


Also habe ich einen Spannungsteiler benutzt, der von 13V auf 5V regelt. Jedoch werden nun die Differenzwerte mit höherem Strom niedriger.

Ich verstehe das so, wie ich selber auch gerade gemacht habe: einen Spannungsteiler zum Messen der viel größeren Spannung, an einem Arduino-Analog-Eingang. Durch den Spannungsteiler, der an der Energiequelle zwischen Vcc und GND geschaltet ist, ändert sich der Strom nicht. Deshalb verstehe ich jetzt nicht, warum der höher wird und sich dadurch die Differenzwerte (welche sind das?) ändern. Für die Versorgung des ATmega328 verwende ich einen 5V-Spannungsregler, der an derselben Energiequelle betrieben wird.


Nachtrag:

Ich habe mir das gerade mal angesehen, in Deinem Video. Du möchtest 2 Größen messen: den Strom und die Spannung.

Demnach müsstest Du an dem Ausgang einen Spannungsteiler gegen GND haben und dort die Spannung messen.
Den zweiten Spannungsteiler vor dem bekannten (und sehr präzisen Widerstand). Dort misst Du dann auch die Spannung.
Beides ist ja so eigentlich in Deinem Plan eingezeichnet.
Nun kannst Du aus dem Spannungsabfall über dem Widerstand den Strom berechnen.

Trotzdem: welche Differenzwerte werden mit höherem Strom niedriger? Der Spannungsunterschied vor und nach dem Shunt?
Der Atmega328 muss eine stabile Versorgungsspannung haben, die sich nicht mit der Last am Netzteil, dass Du vermessen willst, ändert.


MfG
Moppi

GhostJumper
24.11.2018, 17:20
Trotzdem: welche Differenzwerte werden mit höherem Strom niedriger? Der Spannungsunterschied vor und nach dem Shunt?


Genau. Mit höherem Strom fällt die Spannung nach dem Widerstand um so mehr. Dennoch zeigt der ADS1115 immer kleiner werdende Differenzen an.
Die Spannungsversorgung ist Stabil, das habe ich geprüft.

Hier die Rechnungserklärung:
U: Vor dem Shunt-R kann ich den Analogen Wert durch den Spannungsteiler einlesen und mir so einen Multiplier ausrechnen. Das Funktioniert auch ganz gut.
I: wenn ich beide Werte einlese und die Differenz daraus bilde kann ich mit einem Multiplier auf das Ergebnis kommen. Funktioniert nur richtig ohne verbundenes GND potential. (Also 12V als GND potential)

Problem ist, dass mit Steigendem Strom die Differenz der Analogwerte sinkt, was eigentlich nicht der Fall sein sollte, da es ohne GND-Verbindung funktioniert.

Hier noch ein Bild zu den Widerständen: https://ibb.co/kwOJ4q

MfG
GhostJumper

Moppi
24.11.2018, 17:51
Ich denke, das birgt alles zu viel Unsicherheit. Den Spannungsabfall kann man auch direkt über dem Shunt messen. Also Dein niedrigeres Bezugspotential liegt vor dem Shunt, Dein höheres Potential befindet sich nach dem Shunt. Daher sollte man doch einen Spannungsteiler zwischen diesen beiden Punkten installieren können und dann von dort an den Analogeingang des ATmega gehen. GND des ATmega muss natürlich nach wie vor mit GND des Netzteils verbunden sein. Dann sollte man doch den Spannungsabfall direkt messen können?

Ja ich bin bisschen .. na ja .. ok .... ADS1115...
Boa, Mann, Tunnelblick :eek:

:) Warum verwendest Du noch einen ADS1115?
Aber egal, mit dem ADS1115 verfährst Du eben genau so - also warum nicht ein Spannungsteiler über dem Shunt und nur einen Analog-Eingang?


Funktioniert nur richtig ohne verbundenes GND potential. (Also 12V als GND potential)
Das entspricht dem Spannungsteiler über dem Shunt.
Die 72mV Spannungsabfall am Shunt sind auch nur bei 50A vorhanden, nicht?

Wenn Du den ADS1115 weglässt, kannst Du am Arduino AREF-Eingang eine kleinere Spannung anlegen, eine die immer etwas größer ist, als die über dem Shunt. Dann kannst Du auch kleine Spannungsbereiche am Arduino-Eingang vermessen. Nun gut der ADS1115 hat eine höhere Auflösung. Miss nur mit einem Analogeingang, mit einem Spannungsteiler von, Deinem Beispiel folgend: 10k in Reihe mit 2x10k parallel.
33802

Wenn Du mit Spannungsteilern zum Messen arbeitest, sollten die möglichst hochohmig sein. 10k und 5k in Reihe gegen Masse sind nicht viel. 100k und 50k, 200k und 100k oder 2M und 1M wären vielleicht besser geeignet. Ich messe am Atmega328-Analogeingang mit einem Spannungsteiler bestehend aus 220k und 100k gegen Masse. Spannungsquelle ist bei mir ein Akku.


MfG

Moppi
24.11.2018, 21:27
Das Ermitteln des Stroms ist auf einer Seite genauer beschrieben. Über den Spannungsabfall werden die mA ausgerechnet. Da der Spannungsabfall sehr gering ist, wird er dort ein LM358 als Verstärker eingesetzt.
https://roboterarm.tsn.at/content/adc-strommessung

Insgesamt nicht so schwer, mit Beispielprogramm.

MfG
Moppi

GhostJumper
26.11.2018, 16:42
Vielen Dank. Ich versuche dies mal über die nächsten Tage umzusetzen. Habe gerade leider wenig Zeit.
Ich melde mich dann mal wieder.

MfG
GhostJumper

Moppi
26.11.2018, 17:08
Der Messwiderstand wird hier parallel zur Last gegen GND geschaltet. Nicht in Reihe.

MfG

avr_racer
26.11.2018, 18:02
http://www.ti.com/lit/ds/symlink/ads1115.pdf

Mal ins Datenblatt gucken der ADS1115 kann auch so wie du es hast das Differenzsignale messen (AIN0/AIN1 gegenüber AIN3).

LOW und HIGHSIDE-Messung sind hier die Begriffe.

HIGHSIDE:
1. Richtige anschließen bedeutet AIN0 oder AIN1 an die eine Seite des Shunts und AIN3 ist dein Bezugssinal also die andere Seite des Shunts....
AIN0 ----Shunt----AIN3

2. Richtig konfigurieren im ConfigREG siehe Seite 28/29 und

Oder

LOWSIDE:
siehe Seite 36 oder sowie moppi es schon erwähnt hat