Verständnis frage ADS1115 Messbereich

Hallo.
ich möchte mit ADS1115 ein Shunt 100A 75mV auswerten und zwa wen möglich ab 1 A bis 100A.
Klappt das oder muss ich ein OP als Verstärker nehmen?
Warum gerade ADS den der hat I2C und vier Eingänge außer dem der Arduino ist in der Gartenlaube und die zu messende dinge im Geräteschuppen ca 3m weiter.
An den ADS kommt 2 mall Spannung 12V mit Spannungsteiler 10 zu 1 und 2 mall Strom zu auswerten
Grüße
Bernhard

ads1115.JPG

ads1115.JPG

Hallo,

ohne Skalierung hat das Teil einen Messbereich von 256mV am Shunt. Der Rest sind nur interne Vorteiler die mehr möglich machen. Das heißt du musst deinen Shunt [R] so auslegen das bei 100% Messstrom nicht mehr die 256mV am Shunt abfallen. Jetzt kannste ausrechnen welche Auflösung [mA/Bit] du am Ende über den Messbereich damit hast. Man könnte sich auch überlegen bei drohender Messbereichsüberschreitung den Vorteiler umzuschalten. Muss man sich durchrechnen ob das lohnt.

Wenn an deinem Shunt bei 100A besagte 75mV abfallen, brauchste gar keinen Vorteiler. Liegt ja locker im Messbereich. Nun kannste gleich mal rechnen welche Auflösung du damit hast und ob dir das ausreicht.

Danke das habe ich auch so Verstanden nach der Übersetzung mit Depl
Andere Frage ich benutze als zweiten Stromsensor den ACS712 20A dan muss ich die Ausgang Spannung auch herunter setzen den der gibt aus 2,5V
Spricht was dagegen? schätze dem ADS ist Wurst was da reinkommt Hauptsache ich bleibe im Spannungsbereich
Grüße
Bernhard

Was mich noch interessiert ob ich Schafe das der ADS "läuft" über meinen I2C busextender mit P82B715.
Normal sollte das klappen. Wenn nicht muss ich was ausdenken
Grüße
Bernhard

Hallo,

laut meiner Rechnung komme ich auf eine theoretische Messauflösung von

256mV / 2^15 = 7,8125µV pro Bit
100A / 75mV * 0,0078125mV = 10,4mA pro Bit

Andere Frage ich benutze als zweiten Stromsensor den ACS712 20A dan muss ich die Ausgang Spannung auch herunter setzen den der gibt aus 2,5V

Kannste machen, solange die zu messende Spannung im Bereich von Ub bleibt.
Aber! Die zu messende Spannung muss auch im Messbereich bleiben der vom "Vorteiler" bestimmt wird. Sonst macht es ja keinen Sinn. Wenn du außen runterteilst, kannste das auch weglassen und im ADS anpassen. Außer du willst die zu messende Spannung genauestens den Meßbereich anpassen. Erfordert wieder Mehraufwand. Wiederum Ub beachten.

Verspreche dir aber nicht die allergenauesten Messwerte. Du wirst mit Rauschen etc. zu tun haben usw. Nicht das du dich auf konstante x mA / Bit versteifst.

Und kannst du bitte im Eingangspost den Freiraum zwischen Text und Bild reduzieren? Danke.

Hallo.
ich will so wie so mit der niedrigster SPS arbeiten das sind 8 mall die Sekunde dan ist das interne Rauschen am niedrigsten erst mall abwarten bis der Shunt ankommt.
Vielleicht kann ich eine stufe höher gehen dan ist das Rauschen noch niedriger
Grüße
Bernhard

fony:
Vielleicht kann ich eine stufe höher gehen dan ist das Rauschen noch niedriger

Das eigentliche Rauschen ändert sich ja nicht. Nur wie du es misst. Daher ist es vernünftiger man rechnet das in Software heraus. z.B. über den Mittelwert mehrerer Messungen

fony:
Was mich noch interessiert ob ich Schafe das der ADS "läuft" über meinen I2C busextender mit P82B715.
Normal sollte das klappen. Wenn nicht muss ich was ausdenken
Grüße
Bernhard

Sobald du den Bus-Extender richtig konfiguriert hast, wird das auch sicher funktionieren.

Hallo .

Das ist korrekt, nur wen ich im höherem bereich messe dan ist der "Abstand" zum Rauschen auch höher = das Rauschen wird nicht so einen großen Einfluss auf das Messergebnis haben, oder?
Grüße
Bernhard

Hallo Dieter,
habe schon zu Probe BME und RTC am laufen über 10m keine Probleme
Grüße
Bernhard

Hier der Schaltplan
Grüße
Bernhard

Hallo,
Übertragung der ACS712 Werte mit ADS1115 funktioniert prima nur warum muss ich bei 30 A Sensor bei umrechen der RAW Werte in Ampere 7,01 addieren damit die Angezeigte werte werte stimmen = stat 0 ist -7,01 danach wird genau angezeigt. bei 20 A Sensor stimmt das wieder nicht :sleepy:

Ampere = ((SensorSpannung - Nullpunkt) / VpA + 7.01);//WARUM die 7,01 dazurechnen bei 30A ACS

Ampere = ((SensorSpannung - Nullpunkt) / VpA + 7.01);//WARUM die 7,01 dazurechnen bei 30A ACS

//
//    FILE: ADS_minimum.ino
//  AUTHOR: Rob.Tillaart
// VERSION: 0.1.0

// view with Serial Plotter
int VpA = 66; // Millivolt pro Ampere (185 für 5A Modul, 100 für 20A Modul und 66 für 30A Modul)
double sensorwert = 0;
int Nullpunkt = 4987 / 2; // Spannung in mV bei dem keine Stromstärke vorhanden ist
double SensorSpannung = 0;
double Ampere = 0;

#include "ADS1X15.h"

ADS1115 ADS(0x48);

void setup()
{
  Serial.begin(9600);
  Serial.println(__FILE__);
  Serial.print("ADS1X15_LIB_VERSION: ");
  Serial.println(ADS1X15_LIB_VERSION);

  ADS.begin();
  ADS.setGain(0);  // 6.144 volt
  Serial.println("Voltage");
}

void loop()
{
  int16_t raw = ADS.readADC(0);
  int16_t raw1 = ADS.readADC(1);
  int16_t raw2 = ADS.readADC(2);
  int16_t raw3 = ADS.readADC(3);
  Serial.print("  0= ");
  Serial.print(ADS.toVoltage(raw), 3);//in Volt
  Serial.print("  1= ");
  Serial.print(ADS.toVoltage(raw1), 3);
  Serial.print("  2= ");
  Serial.print(ADS.toVoltage(raw2), 3);
  double I=ADS.toVoltage(raw2)/0.0177;// 0,0177 Shuntwiederstand
  Serial.print("   A= ");
  Serial.print(I);
  
  Serial.print("   ");
  Serial.print("  3= ");
  Serial.print(ADS.toVoltage(raw3), 3);
  Serial.print("   A= ");
  
  //Ab hier alles in mV
  SensorSpannung = ((double)raw3 / 32767) * 4985; // Hier wird der Messwert in den Spannungswert am Sensor umgewandelt.
 /////////
  Ampere = ((SensorSpannung - Nullpunkt) / VpA + 7.01);//WARUM die 7,01 dazurechnen bei 30A ACS 
  ////////////////
  Serial.println (Ampere);
  delay(500);
}

Danke und Grüsse
Bernhard

Hallo,
hab herausgefunden muss dem ACS712 autarkte stabile 5V versorgung spendieren danach pasen die Ergebnise
Grüsse
Bernhard

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.