OpenXSensor - Strom und Spannungssensor

Status
Nicht offen für weitere Antworten.
Der ACS770 ist ein Hall-Effekt-Sensor und dadurch sind Potentialverschiebungen zwischen Lastkreis und Auswerteschaltung kein Problem.

ACS770HE.png

Wenn Du zusätzlich die Spannung messen willst, wird allerdings der Spannungsabfall auf der Masseverbindung unter Last vom Akku zum Messpunkt zu einem kleinen Fehler führen. Dieser wird aber bei vernünftig dimensionierten Kabeln und Steckverbindungen vernachlässigbar sein.

Gruß Bernd
 

rcbebo82

Erfahrener Benutzer
Ok, das hört sich ja alles super an.
Der ACS770 ist deutlich teurer als zum Bsp. der ACS758. Diesen gibt es aber auch bis 200A wenn nichts dagegen spricht würde ich dann den nehmen.
Du hast im Post 99 noch etwas von einem "RC-Glied" ins Spiel gebracht, ist das der Kondensator zwischen Gnd und VIOUT? Oder was meinst du damit?
Bin zwar Fachinformatiker aber so tief bin ich dann noch nicht in die Elektrotechnik eingestiegen :eek:, vorab schon einmal vielen dank für die Ausführungen.
 
Der ACS770 ist deutlich teurer als zum Bsp. der ACS758. Diesen gibt es aber auch bis 200A wenn nichts dagegen spricht würde ich dann den nehmen.
Der 758 hat u.U. einen etwas größeren Fehler, den kannst du aber trotzdem bedenkenlos nehmen.

Du hast im Post 99 noch etwas von einem "RC-Glied" ins Spiel gebracht, ist das der Kondensator zwischen Gnd und VIOUT?
Genau, RF und CF bewirken eine Glättung des Messsignals. Der real fließende Strom ist ja kein gleichmäßiger Strom, sondern durch den Regler zerhackt. Ohne Filter (=Glättung) würde man einen schwankenden Stromwert in der Anzeige sehen. Deswegen sind die plug and play Sensoren alle stark gefiltert, um keine Reklamationen von den Kunden zu bekommen. Der große Nachteil des Filterns ist die Zeitverzögerung. Bei manchen Systemen kann man das Kabel trennen und es fließt laut Anzeige immer noch Strom für ein paar Zehntelsekunden bis Sekunden. Kurzzeitige Unterbrechungen kann man so niemals in der Telemetrie sehen. Beim Eigenbausensor entscheidest du selbst über die Filterung: Ideal ist, so wenig wie möglich filtern, aber die Anzeige sollte halbwegs ruhig stehen.

In OpenTX 2.1.7 kannst du einen Softwarefilter im Telemetriescreen aktivieren, deswegen würde ich ohne Hardwarefilter bauen und diesen schaltbaren Filter benutzen. Wenn du wirklich mal schnellste Messwerte willst/brauchst, kannst du den Filter einfach abschalten.

Gruß Bernd
 

ofro

Erfahrener Benutzer
Moin Moin,

Ich bin auf der suche nach einem Stromsensor bis 100A am besten einen wo ich das Stromkabel durchstecken kann.

Oder ist es Möglich einen Openxsensor paraell zu einem Frsky FCS 150A zubetreiben?

Quasi vom S-port zum Frsky FCS 150A und von da aus noch mal zum Openxsensor?

Danke und gruss jens
 

ofro

Erfahrener Benutzer
Oder gibt es auch einen ähnlichen Stromsensor den ich am Openxsensor betreiben kann?

Ich möchte da gerne 16/20mm² durch stecken... oder halt schraubterminals wo man ordentliche Kabelschuhe dran befestigen kann.

Danke und gruss Jens
 
Da scheint der Arduino nicht zu funktionieren. Wurde der Sketch ohne Fehlermeldung übertragen?

Zumindest sollte ein Strom angezeigt werden, auch wenn er noch nicht stimmt (Spannungsteiler bei 6.4 noch kommentieren oder nullen). Zusätzlich kann man noch RPM aktivieren (ohne etwas anzuschließen), damit ein zweites Feld übertragen wird.

Bei 12. sollte "#define USE_6050" kommentiert werden, ebenso ist ganz unten bei XX. "define debug" aktiviert, das auch kommentieren (ist aber beides nicht die Ursache für das Nichtfunktionieren).

Gruß Bernd
 

rcbebo82

Erfahrener Benutzer
Hallo Bernd,
nun zeigt mir die Taranis Curr und RPM an. Curr ist aber immer 0. Wenn ich A3 gegen Ground messe verändert sich der Wert auch je nachdem wie stark meine Lampe leuchtet!

Ich messe allerdings im MVolt Bereich da stimmt doch was nicht.
Wenn ich mein Messgerät auf Volt stelle zeigt es mir 0,02 Volt an wenn kein Strom fließt und 0,00V wenn ich 1.5A durchjage.

LG
Bebo
 
Zuletzt bearbeitet:
Miss doch direkt am ACS Analogausgang, an A3 sollte aber der gleiche Wert anliegen, so siehst du, ob die Verbindung ACS - oXs OK ist (Vorwiderstand und Kondensator). Dann musst du bei 6.4 den Offset in die config.h eintragen, also Spannung an A3 bei 0 Ampere und den Faktor mV/Ampere, dann sollte die Ampereanzeige in der Taranis stimmen.

Was war der Grund für das erste Nichtfunktionieren? Haben die Kommentierungen etwas damit zu tun? Das wäre ein oXs Bug.

Gruß Bernd
 

rcbebo82

Erfahrener Benutzer
Also der Sensor geht je nachdem welche Stromstärke ich durchjage kann ich andere Werte von A3 gegen Ground messen nur leider zeigt mir die Taranis immer 0A an zum weinen!

Ich messe nun nochmal direkt am ACS Ausgang. Ja anscheinend ich habe die Kommentierungen gesetzt und dann wurden die Sensoren angezeigt.
 

rcbebo82

Erfahrener Benutzer
Also die Spannungen direkt am Ausgang entsprechen den Spannungen die am A3 anliegen! Die Offsets habe ich nun angepasst für 0A habe ich 2525 mVolt eingetragen und für Mvolt per A 10mv.
 

rcbebo82

Erfahrener Benutzer
Nein 0A :(. Müsste eigentlich gehen Spannungen liegen an der Sensor misst korrekt aber immer 0A. Sollte ich mal einen anderen analog Eingang probieren evtl. hat der A3 ja nen Schuss?
 
Nein, wenn die Spannung am PIN anliegt, muss oXs diese auch (als Strom) melden. Häng noch mal die aktuelle congig.h an, ich ändere die dann mal auf Spannungsmessung an einem anderen PIN, damit wir eine Kontrolle haben.
 
Die debug-Werte kann ich nicht interpretieren.

Edit: ich glaube doch: die Werte beziehen sich auf die 1024 steps des A/D Wandlers, machen also Sinn, es sind die umgerechneten Werte aus der config.

Du hast den Sensor PIN noch auf 3, welchen Anschluss hast du genommen? Das musst du noch ändern. Die config.h unten hat A0, A1 und A2 zur Spannungsmessung aktiviert, dort kannst du auch mal direkt den Analogausgang vom ACS anklemmen. Irgendwie kann ich keine Dateien mehr hochladen, deswegen hier die Änderungen:

Code:
// ***** 6.2 - Voltage parameters *****
#define PIN_VOLTAGE         0  , 1     , 2   , 8    , 8   , 8               // set this line as comment if no one voltage have to be measured, set a value to 8 for the voltage(s) not to be measured.
#define RESISTOR_TO_GROUND  0 , 0  , 0  , 19.8 , 50  , 60               // set value to 0 when no divider is used for a voltage, can contains decimals 
#define RESISTOR_TO_VOLTAGE 0 , 0  , 0 , 39   , 500 , 600              // set value to 0 when no divider is used for a voltage, can contains decimals 
#define OFFSET_VOLTAGE      0 , 0  , 0   , 0    , 0   , 0                // optionnal, can be negative, must be integer
#define SCALE_VOLTAGE       1 , 1  , 1  , 1.004, 1   , 1                // optionnal, can be negative, can have decimals
Code:
// --------- 9 - Data to transmit ---------
//#define VSPEED_SOURCE  BARO_AND_IMU       // select between FIRST_BARO, SECOND_BARO , AVERAGE_FIRST_SECOND, AIRSPEED_COMPENSATED , BARO_AND_IMU or PPM_SELECTION
// ***** 9.1 - Frsky data *****
#define VFAS_SOURCE   VOLT_1                 // select between VOLT_1, VOLT_2, VOLT_3 , VOLT_4, VOLT_5 , VOLT_6
//#define FUEL_SOURCE   VOLT_1                 // select between VOLT_1, VOLT_2, VOLT_3 , VOLT_4, VOLT_5 , VOLT_6
#define A3_SOURCE     VOLT_2                 // select between VOLT_1, VOLT_2, VOLT_3 , VOLT_4, VOLT_5 , VOLT_6
#define A4_SOURCE     VOLT_3                 // select between VOLT_1, VOLT_2, VOLT_3 , VOLT_4, VOLT_5 , VOLT_6
 
Zuletzt bearbeitet:
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten