mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Spannung vom Shunt mit Arduino messen


Autor: Azouz S. (achhab) Benutzerseite
Datum:

Bewertung
-5 lesenswert
nicht lesenswert
Hallo Leute,

ich will am Shunt die Spannung über ARDUINO messen
die erstmal mit OP LM 358 verstärkt ist und mit A6 Pin verknüpft
als Last ist ein Blei gel Akku zum Aufladen

DC-DC, Shunt, Akku und dazu kommt OP LM358 und ARDUINO NANO V3

WIE SIEHT GENAU DIE sCHALTUNG AUS?
kann jemand mir helfen?

Autor: Karl M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

da gibt es die unterschiedlichsten Schaltungen und Anforderungen!

Ein LM358 ist hier keine gute Wahl, wenn man nicht nur einen Indikator 
haben möchte.

Siehe AN105 "Current Sense Circuit Collection"
https://www.analog.com/media/en/technical-documentation/application-notes/an105fa.pdf

Auch gibt es fertige I2C Mess ICs die man meistens passend Konfigurieren 
kann.

Alls Erstes solltest Du den Messbereich definieren, in etwas: 0-1000V, 
0-100A.

Autor: Florian S. (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Azouz S. schrieb:
> Hallo Leute,
>
> ich will am Shunt die Spannung über ARDUINO messen
> die erstmal mit OP LM 358 verstärkt ist und mit A6 Pin verknüpft
> als Last ist ein Blei gel Akku zum Aufladen
>
> DC-DC, Shunt, Akku und dazu kommt OP LM358 und ARDUINO NANO V3
>
> WIE SIEHT GENAU DIE sCHALTUNG AUS?
> kann jemand mir helfen?

Prinzipiell sollte der Shunt einseitig auf Masse liegen (also nicht in 
der Plus-Leitung liegen). Die ADC-Eingänge des Arduino beziehen sich 
nämlich ebenfalls auf GND.
Und für den Rest der Schaltung zeichne mal deine ungefähren 
Vorstellungen auf, denn mit Prosa tun sich die meisten Leute unheimlich 
schwer...

Autor: Wolfgang (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Florian S. schrieb:
> Prinzipiell sollte der Shunt einseitig auf Masse liegen (also nicht in
> der Plus-Leitung liegen).

Das kommt auf die Prinzipien an. Mit einem INA240 darf der Shunt 
irgendwo im Bereich -6V ... +90V liegen

Beitrag #5724454 wurde von einem Moderator gelöscht.
Beitrag #5724462 wurde von einem Moderator gelöscht.
Autor: Jörg R. (solar77)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Azouz S. schrieb:
> ich will am Shunt die Spannung über ARDUINO messen
> die erstmal mit OP LM 358 verstärkt ist und mit A6 Pin verknüpft
> als Last ist ein Blei gel Akku zum Aufladen

Du möchtest einen Strom messen...der sich in welchem Bereich bewegt und 
mit welcher Genauigkeit gemessen werden soll?


Azouz S. schrieb:
> WIE SIEHT GENAU DIE sCHALTUNG AUS?

Schreien musst Du nicht. Und eine fertige Schaltung wird dir wohl kaum 
jemand liefern, zumal die genauen Anforderungen nicht bekannt sind. 
Vielleicht ist hier etwas für dich dabei:

https://eckstein-shop.de/Stromsensoren_1

#######

dshgktndflg schrieb im Beitrag #5724454:
> Florian S. schrieb:
>> denn mit Prosa tun sich die meisten Leute unheimlich
>> schwer...
>
> Und mit solcher zusammenhanglos dahingerotzten Prosa erst recht.
>
> dshgktndflg

...genauso wie Du deinen Nickname dahinrotzt und einen vollkommen 
sinnfreien Kommentar absonderst.

: Bearbeitet durch User
Autor: Azouz S. (achhab) Benutzerseite
Datum:

Bewertung
-5 lesenswert
nicht lesenswert
Dabei möchte ich den Strom über den Shunt steuern, aber wie ich weiss 
Arduino NAno misst keinen Strom, nur die Spannung. Daher habe ich die 
Spannung am Shunt verstärkt und dann am ARDUINO verknüpft

Autor: Karl M. (Gast)
Datum:

Bewertung
5 lesenswert
nicht lesenswert
Azouz S.,

noch wurde keine Frage beantwortet, oder der Link auf das gesammelte 
Wissen gelesen, somit sehr ich kein Interesse an einer weiteren Hilfe.

Das eine LM358 nicht die beste Wahl ist, habe ich geschrieben.
Also was soll das werden?
Nur eine Anzeige dass da "ein" Strom fließt, messen gegen eine Referenz 
geht anders!

Autor: Stefanus F. (stefanus)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
Azouz S. schrieb:
> Daher habe ich die
> Spannung am Shunt verstärkt und dann am ARDUINO verknüpft

Und wie hast du das gemacht? Zeichne deinen Schaltplan auf, sonst können 
wir hier nur wild herum raten - was für den Fragenden (du) selten 
hilfreich ist.

Autor: Azouz S. (achhab) Benutzerseite
Datum:
Angehängte Dateien:

Bewertung
-1 lesenswert
nicht lesenswert
Das ist der Schaltplan
aber ich weiss nicht, ob das richtig ist

Autor: Joachim B. (jar)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
Azouz S. schrieb:
> aber ich weiss nicht, ob das richtig ist

ich auch nicht, ich drehe meinen Monitor nicht!

Azouz S. schrieb:
> ich will

ist immer ein guter Einstieg (ohne sich Mühe zu geben)

: Bearbeitet durch User
Autor: Azouz S. (achhab) Benutzerseite
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
oh habe ich nicht drauf geachtet
sorry

Autor: Harald W. (wilhelms)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Azouz S. schrieb:

> ich will am Shunt die Spannung über ARDUINO messen

Grundsätzlich ist das zwar möglich, aber wenig empfehlenswert.
Wesentlich einfacher geht die Strommessung mit einem Multimeter.
Da diese inzwischen auch mit recht niedrigen Preisen schon
digitale Datenausgänge haben, kannst Du den Strom dann ja immer
noch digital auswerten.

Autor: Jörg R. (solar77)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Azouz S. schrieb:
> oh habe ich nicht drauf geachtet
> sorry

Gehe bloß nicht auf die Kommentare ein. Die haben die User nur zum Spaß 
und aus purer Langeweile geschrieben.


Azouz S. schrieb:
> Das ist der Schaltplan aber ich weiss nicht, ob das richtig ist..

Er ist vor allem etwas unübersichtlich gezeichnet. Es gibt heutzutage so 
viele kostenlose Programme um Schaltpläne zu zeichnen. Etwas mehr Mühe 
wäre daher wünschenswert. Zudem könntest Du Korrekturen viel schneller 
umsetzen.

Ich habe mir erlaubt den Plan noch etwas aufzuhellen.

: Bearbeitet durch User
Autor: Wolfgang (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Azouz S. schrieb:
> Das ist der Schaltplan aber ich weiss nicht, ob das richtig ist

Hast du mal ins Datenblatt vom LM358 geguckt?

Als Common mode input voltage range ist dort (VCC-) to (VCC+ -2V) 
angegeben.
Dein OP wird mit +/-5V versorgt und dein Shunt liegt auf 13.7V, wenn ich 
jetzt mal unterstelle, dass du die Masseverbindung zwischen 
OP-Versorgung und deiner Akkuschaltung einfach nur vergessen hast.

Autor: Georg M. (g_m)
Datum:

Bewertung
1 lesenswert
nicht lesenswert

Autor: Stefanus F. (stefanus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du den Spannungsabfall am Shunt messen willst, genügt es nicht, nur 
ein Bein davon zu beobachten.

Außerdem liegst du damit warscheinlich außerhalb des funktionierenden 
Eingangs-Spannungs Bereiches. Vergleiche das mal mit dem Datenblatt.

: Bearbeitet durch User
Autor: Stefanus F. (stefanus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Anderer Lösungansatz ohne OP-Amp:

Netzteil
                Shunt
13,7V o---+-----[===]-----+------------------o + Akku
          |               |
         |~|             |~|
         |_|             |_|
          |               |
          +---o ADC1      +---o ADC2
          |               |
         |~|             |~|
         |_|             |_|
          |               |
GND o-----+---------------+------------------o GND
     

ADC1 misst die Spannung vom Netzteil
ADC2 misst die Spannung vom Akku
Die Differenz dazwischen zeigt den ladestrom an.

(ADC1 - ADC2) / Shunt = Ladestrom

: Bearbeitet durch User
Autor: Wolfgang (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefanus F. schrieb:
> Wenn du …

Schön, dass du meine Anmerkungen noch mal mit deinen Worten wiederholst.
Der INA240 zeigt, wie es geht.

Autor: Peter D. (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Florian S. schrieb:
> Prinzipiell sollte der Shunt einseitig auf Masse liegen (also nicht in
> der Plus-Leitung liegen).

Z.B. mit dem ZXCT1110 kann man auch in der Plus-Leitung messen (bis 
36V).

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefanus F. schrieb:
> Anderer Lösungansatz ohne OP-Amp:

das funktioniert recht gut, besonders bei ATmega mit Diff Eingänge und 
GAIN
wie z.B. ATmega 1284p

Autor: Azouz S. (achhab) Benutzerseite
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Ich danke euch für die Vorschläge
das ist der Code zu dem Schaltplan
stimmt der Code ?


int analogInPin = A6;
int analogInput= A0;
float R1=20000;
float R2=10000;
double vin=0;
double vout=0;
double TeilerValue=0;
double OpVolt=0;
double OpValue=0;

void setup() {
Serial.begin(9600); // serielle Ausgabe
}

void loop() {

double OpValue=analogRead(analogInPin); // read the A6 pin value
double OpVolt=( OpValue*5.0)/ 1023.0;
double TeilerValue = analogRead(analogInput); //Messwerte am analogen 
Pin als "values" definieren
double vout = (TeilerValue * 5.0) / 1023.0; // Messwerte in Volt 
umrechnen = Spannung am Ausgang des spgT.

Serial.println(OpVolt,2);


   delay (1000);
}

Autor: Karl M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

double steht nicht zur Verfügung!

Die Formel /1023 ist nicht richtig, prtm:
double OpVolt=( OpValue*5.0)/ 1023.0;
double vout = (TeilerValue * 5.0) / 1023.0;

Also wird es nicht mehr als ein Indikator, dass das da Spannung und 
Strom fließt.

Mehr als 5-7Bit sind dann mit den Anmerkungen zum Datenblatt nicht drin!

Autor: Azouz S. (achhab) Benutzerseite
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
int analogInPin = A6;
int analogInput= A0;
float R1=20000;
float R2=10000;
double vin=0;
double vout=0;
double TeilerValue=0;
double OpVolt=0;
double OpValue=0;

void setup() {
Serial.begin(9600); // serielle Ausgabe
}

void loop() {

double OpValue=analogRead(analogInPin); // read the A6 pin value
double OpVolt=( OpValue*5.0)/ 1023.0;
double TeilerValue = analogRead(analogInput); //Messwerte am analogen 
Pin als "values" definieren
double vout = (TeilerValue * 5.0) / 1023.0; // Messwerte in Volt 
umrechnen = Spannung am Ausgang des spgT.

Serial.println(OpVolt,2);


   delay (1000);
}

Autor: Karl M. (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Azouz S.,

Unsinn wir durch doppelte Posts nicht richtiger!

Keiner weiß auf welche deiner Hardwaremodule sich das beziehen soll und 
wie (ADC-Mode) so ein Atmel ADC arbeitet!

Autor: Azouz S. (achhab) Benutzerseite
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
ist der gleiche Code, nur zwei geschickt
hihi

Autor: Karl M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Azouz S.,

so ein Atmel ADC Eingang mit keiner Referenzspannungsqulle ist eh nur 
ein Schätzeisen.
Ohne ADC Offset- und Linearitätsfehlerkorrektur, kann man keine 
belastbaren Ergebnisse erhalten.
Variiert man dann noch die Temperatur, ist an möglichen Werte ohne Bezug 
nur ein Hinweis auf: das sollte eine Spannung oder Strom anliegen.

Autor: Karl M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Azouz S.,

du solltest wirklich verstehen lernen, was hier ein richtiges Problem 
beschrieben wurde.

Wolfgang schrieb:
> Azouz S. schrieb:
>> Das ist der Schaltplan aber ich weiss nicht, ob das richtig ist
>
> Hast du mal ins Datenblatt vom LM358 geguckt?
>
> Als Common mode input voltage range ist dort (VCC-) to (VCC+ -2V)
> angegeben.
> Dein OP wird mit +/-5V versorgt und dein Shunt liegt auf 13.7V, wenn ich
> jetzt mal unterstelle, dass du die Masseverbindung zwischen
> OP-Versorgung und deiner Akkuschaltung einfach nur vergessen hast.

Am besten wäre vielleicht, Du baust das mal auf und achtest auf Qualm 
und Rauch, dann könntest Du darüber nachdenken, was passiert ist.

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Die Formel /1023 ist nicht richtig,...

Stimmt. Wird aber auch mit /1023.0 nicht richtiger.

MfG Spess

Autor: Korinthenkacker Entenklemmer (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
spess53 schrieb:
> Hi
>
>>Die Formel /1023 ist nicht richtig,...
>
> Stimmt. Wird aber auch mit /1023.0 nicht richtiger.
>
> MfG Spess

Oh, oh, oh...

1/1000 Meßfehler (1023 statt 1024) bringt ihn sicher fast um....

Aber ja: Du hast Recht

Autor: spess53 (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Hi

>Oh, oh, oh...
>1/1000 Meßfehler (1023 statt 1024) bringt ihn sicher fast um....

Das ist mir auch klar. Auch wenn das hier keine Rolle spielt, kann man 
Fehler nicht unwidersprochen stehen lassen. Früher oder später stolpert 
jemand über diesen Treat und nimmt das für bare Münze.

MfG Spess

Autor: Harald W. (wilhelms)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
spess53 schrieb:

Früher oder später stolpert jemand über diesen Treat
> und nimmt das für bare Münze.

Bestimmt:
https://www.dict.cc/?s=treat
:-)

Autor: Mein Senf (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich empfehle dir den INA226.
Misst Strom und Spannung und hat eine I2C Schnittstelle.
Breakoutboard gibts für 3,10 Euro in der Bucht.

Die Zeit, um dir ne Leiterplatte zu schnitzen kannst du dir sparen.
Oder hast du vor, das auf nem Steckbrett zusammenzubasteln?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.