OpenXSensor - Strom und Spannungssensor

Status
Nicht offen für weitere Antworten.
Da hast du dich ja schnell durchgekämpft, Respekt!

Genauer brauchts nicht sein, alles andere ist eh schon Augenwischerei.
Stimmt schon, aber oXs kann auch 16 bit Auflösung mit dem ADS1115, wenn du mal Langeweile hast :D

Nun benötige ich noch passende Widgets für das Display oder was vergleichbares- hab bisher nichts gefunden :-(
Ich hab zwar keine Horus, aber was Udo da gebaut hat, sieht doch gut aus.
 
Hi Bernd,

na ja kämpfen kann man nicht sagen, hatte schon etwas Arduino Erfahrung. Hätte alleine den richtigen Einstiegspunkt nicht gefunden. Deine spontane Hilfe hat mir viel Zeit erspart und vorallem das unnötige Stochern im Nebel.
Danke nochmal.

Momentan habe ich für den ADS1115 bei mir keine Anwendung, mal beobachten was daraus so alles entsteht.
Das kompensierte Vario würde mich noch reizen, die Teile hierfür liegen schon in der Kiste :eek:

Den oben genannten Link kenne ich bereits und hatte ihn schon in die Funke eingepflegt. Für mich ist es zu umfangreich, weil meine Bedürfnisse anders gelagert sind. Strom, Spannung und Kapazität wären für mich völlig ausreichend und vorallem sollte es viel größer darstellbar sein. Ja hab den Thread schon gelesen, die Größe kann man ändern, nur das Gimmick drum rum bleibt erhalten.
Bin eher für das Schlichte:D

Sollte jemand eine weitere Lösung für die Anzeige haben, nur her damit :)

Gruß
Robert
 
Hi,

gibt es bei der Horus die Möglichkeit beim erreichen oder überschreiten einer bestimmten Kapazität, Alarm aus zu lösen?
Ich denke wenn ich die KAP schon messen kann so sollte ich doch auch einen Schwellwert einstellen können.
In alten Anleitungen hab ich gelesen dass es wohl analoge Eingänge gibt,A1-A4 gibt.
RSSI/RX ist klar, nur wo kann ich die anderen Eingänge finden und bearbeiten, hmmm

Viele Grüße
Robert
 
....gibt es bei der Horus die Möglichkeit beim erreichen oder überschreiten einer bestimmten Kapazität, Alarm aus zu lösen?
Ich denke wenn ich die KAP schon messen kann so sollte ich doch auch einen Schwellwert einstellen können.
In alten Anleitungen hab ich gelesen dass es wohl analoge Eingänge gibt,A1-A4 gibt.
Du kannst jedes Telemetriefeld, nativ oder berechnet, mit logischen Schaltern überwachen und weitere Aktionen auslösen - in der Regel mit einer Spezialfuntion, diese wird wiederum ausgelöst vom entsprechenden logischen Schalter.

Solche allgemeinen Fragen sind besser im Horus OpenTX Thread aufgehoben, hier sind nur ein paar Verwirrte unterwegs ;)

Gruß Bernd
 
Hallo Bernd,

danke für die Info, werde das nächstemal die entsprechenden Fragen im richtigen Thread stellen, sorry.
Danke.
Viele Grüße
Robert
 
Hallo,
ich habe den openxsensor V.8.01 mit ADS1115 gebaut, um genauere Einzelzellenüberwachung zu bekommen und das Problem mit der richtigen Referenzspannung zu umgehen. Bis 4S geht das ja.
Klappt auch grundsätzlich. Damit die Daten auch als Telemetriewert erscheinen musste ich accx, accy, accz und fuel für die Ausgabe der 4 Einzelspannungen aktivieren. Die Ausgabe als Cells und damit auch die Berechnung von Cellmin ist mir nicht gelungen.
Hat da jemand eine Idee, wie das mit dem ADS1115 für 4S geht. (Ergebnisse wie bei der üblichen Einzelzellenüberwachung)
 
Im Code müsste man Volt1-4 durch die 4 ADS Spannungen ersetzen, aus dem Kopf vermutlich in der openXsensor.ino. Oder mstrens fragen, ob er die config erweitert, ist ja nur ein Schalter. Mstrens erreicht man über das openrcforum, oder schick mir eine PM, dann geb ich dir die EMail.

Gruß Bernd
 
Hallo Carbonator,
genau so sehe ich das auch. config erweitern wäre das Beste. Ich werde über das openrcforum versuchen das unterzubringen. Ich hoffe, mein englisch reicht dafür.
Danke für Deine Info.
 
Einzelspannungsmessung

Hallo zusammen,

ich versuche mich gerade an der Einzelspannungsmessung für LIPO_Zellen.
folgendes steht mir zur Verfügung:

Code:
oXs_config_advanced.h

// ***** 6.1 - Voltage Reference to measure voltages and current *****
#define REFERENCE_VOLTAGE 4953    // set value in milliVolt;  


// ***** 6.2 - Voltage parameters *****
#define PIN_VOLTAGE         1     , 2       , 0   , 6    , 7    , 8               
#define RESISTOR_TO_GROUND  3.9   , 1       , 0   , 3.3  , 3.9  , 0              
#define RESISTOR_TO_VOLTAGE 3.3   , 1       , 0   , 5.6  , 10.0 , 0               
#define OFFSET_VOLTAGE      0     , 0       , 0   , 0    , 0    , 0               
#define SCALE_VOLTAGE       1     , 0.05    , 1   , 1    , 1    , 1               


oXs_config_basic.h
 
// ***** 6.3 - Max number of Lipo cells to measure (and transmit to Tx) *****
#define NUMBEROFCELLS 4
A0 = Zelle 1
A1 = Zelle 2
A2 = Temperatur
A6 = Zelle 3
A7 = Zelle 4

Spielt es eine Rolle in welcher Reihenfolge ich dies in oXs_config_advanced.h "6.2" angebe?
Was muß ich in der oXs_config_basic.h noch eintragen.
Unter 6.3 hab ich die NUMBEROFCELLS schon drinnen.

Bei der oXs_config_description.h steig ich nicht durch, Scale und Offset sind jedoch nicht das Thema.

Gruß
Robert
 
Spielt es eine Rolle in welcher Reihenfolge ich dies in oXs_config_advanced.h "6.2" angebe?
Die 6 Spalten in der 6.2 entsprechen VOLT_1 bis VOLT_6. Bei NUMBEROFCELLS X werden die ersten X Spalten für die Zellenspannungen benutzt. In deinem Beispiel müsste die erste Zeile so aussehen:

#define PIN_VOLTAGE 0 , 1 , 6 , 7 , 8 , 8

Statt der "8" bei VOLT_5 und VOLT_6 könnten natürlich auch weitere Analogpins für eine oder zwei weitere Spannungen stehen, die man dann in VFAS, A3 oder A4 z.B. übertragen könnte. Die Spannungsteiler müssen dann auch in der passenden Spalte stehen.

In der basic muss noch 6.2 auf YES stehen, um Spannungen messen zu können:

// ***** 6.2 - Voltage parameters *****
#define ARDUINO_MEASURES_VOLTAGES YES

Dann sollte es eigentlich funktionieren.

Gruß Bernd
 
#define PIN_VOLTAGE 0 , 1 , 6 , 7 , 8 , 8
Sollte es dann nicht so aussehen, da ich ja A2 für Temp verwende?
Code:
#define PIN_VOLTAGE         0   ,   1    ,   6   ,   7   ,   2   ,  8
Für was ist dann der Eintrag 2.1 oXs_config_basic gut?

Code:
// --------- 2 - Data to transmit ---------   uncomment the lines below if you want to transmit some extra oXs measurements into some telemetry fields
// ***** 2.1 - Frsky data *****                
#define VFAS_SOURCE   VOLT_1                 // select between VOLT_1, VOLT_2, VOLT_3 , VOLT_4, VOLT_5 , VOLT_6, ADS_VOLT_1, ADS_VOLT_2, ADS_VOLT_3, ADS_VOLT_4 
//#define FUEL_SOURCE   ADS_VOLT_1                 // select between VOLT_1, VOLT_2, VOLT_3 , VOLT_4, VOLT_5 , VOLT_6, ADS_VOLT_1, ADS_VOLT_2, ADS_VOLT_3, ADS_VOLT_4
#define A3_SOURCE     ADS_VOLT_1                 // select between VOLT_1, VOLT_2, VOLT_3 , VOLT_4, VOLT_5 , VOLT_6, ADS_VOLT_1, ADS_VOLT_2, ADS_VOLT_3, ADS_VOLT_4
//#define A4_SOURCE     ADS_VOLT_3                 // select between VOLT_1, VOLT_2, VOLT_3 , VOLT_4, VOLT_5 , VOLT_6, ADS_VOLT_1, ADS_VOLT_2, ADS_VOLT_3, ADS_VOLT_4
//#define ACCX_SOURCE     TEST_1                   //  select between TEST_1, TEST_2, TEST_3, GLIDER_RATIO , SECONDS_SINCE_T0 ,AVERAGE_VSPEED_SINCE_TO , VOLT_1, VOLT_2, VOLT_3, VOLT_4, VOLT_5, VOLT_6, PITCH, ROLL , YAW, ADS_VOLT_1, ADS_VOLT_2, ADS_VOLT_3, ADS_VOLT_4 
//#define ACCY_SOURCE     TEST_2                 //  select between TEST_1, TEST_2, TEST_3, GLIDER_RATIO , SECONDS_SINCE_T0 ,AVERAGE_VSPEED_SINCE_TO , VOLT_1, VOLT_2, VOLT_3, VOLT_4, VOLT_5, VOLT_6, PITCH, ROLL , YAW, ADS_VOLT_1, ADS_VOLT_2, ADS_VOLT_3, ADS_VOLT_4
//#define ACCZ_SOURCE     TEST_3                 //  select between TEST_1, TEST_2, TEST_3, GLIDER_RATIO , SECONDS_SINCE_T0 ,AVERAGE_VSPEED_SINCE_TO , VOLT_1, VOLT_2, VOLT_3, VOLT_4, VOLT_5, VOLT_6, PITCH, ROLL , YAW, ADS_VOLT_1, ADS_VOLT_2, ADS_VOLT_3, ADS_VOLT_4
#define T1_SOURCE       VOLT_2 // T = Temperatur
#define T2_SOURCE       SENSITIVITY

Sollte denn da unter
Code:
#define VFAS_SOURCE   VOLT_1
nicht noch irgend etwas anderes stehen?

Gruß
Robert
 
Mir ging es erstmal darum, die 4 Zellenspannungen klarzumachen.

Es ist nicht ganz klar, wie du die Temperatur messen willst. So wie du es vorschlägst, ist dann in der oXs internen Variable VOLT_5 eine Spannung enthalten, die irgendwie der Temperatur entspricht. Diese Spannung kannst du mit Offset und Scale noch manipulieren. Dann würde ich sie in einem T1 oder T2 Feld übertragen, wie du es ja mit VOLT_2 schon vorschlägst.

VFAS muss in deinem Fall nicht belegt werden. Du könntest aber zum Bespiel in der Spalte VOLT_6 noch eine Spannung messen und in VFAS übertragen.

In 2.1 kann man sozusagen die "freien" FrSky Telemetriefelder belegen. Beispiel: Würde man mit dem Eingang A7 die Empfängerakkuspannung in der Spalte VOLT_6 messen, könnte man theoretisch alle Felder in 2.1 für die Übertragung "missbrauchen". Sinnvollerweise nimmt man natürlich ein "Spannungsfeld", also VFAS, A3 oder A4. Genausogut könnte man auch ein ACCx oder ein Tx Feld benutzen und in OpenTX den Namen und die Einheit des Feldes ändern. Diese Flexibilität ist der Wahnsinn, ein kleiner Nachteil ist halt immer, dass man durch die vielen Optionen anfangs leicht den Überblick verliert. Das war bei mir auch so.

Edit: Nutzt man ein ACCx Feld, muss man den Faktor 100 beachten, den OpenTX ins Spiel bringt.
 
Zuletzt bearbeitet:
Es ist nicht ganz klar, wie du die Temperatur messen willst. So wie du es vorschlägst, ist dann in der oXs internen Variable VOLT_5 eine Spannung enthalten, die irgendwie der Temperatur entspricht. Dann würde ich sie in einem T1 oder T2 Feld übertragen, wie du es ja mit VOLT_2 schon vorschlägst.
Temp verwende ich schon einige Zeit ist jedoch nicht auf meinem Mist gewachsen.

Code:
#define T1_SOURCE  VOLT_2
Im Grunde wird eine lineare Spannungsänderung übertagen, mehr nicht.
Im Sender benötigt man dazu nur noch die entsprechende Einheit, das war's.

So wie ich es jetzt verstanden habe steht für VFAS_SOURCE VOLT_1 die Range 1-4 zur Verfügung und für T1_SOURCE VOLT_2 eben alles was danach kommt bzw Volt_5 eben.
Danke

Ähm noch was,
heißt also ich könnte mit Volt_1 - Volt_6, jeweils eine eigene Gruppe bennen und dieser je nach Bedarf, Werte übertragen lassen, welche dann über "Data to transmit" zugewiesen werden können.

Gruß
Robert
 
Zuletzt bearbeitet:
Die Tabelle in 6.2 dient zur Erfassung von bis zu 6 Spannungen in openXsensor intern. Diesen müssen noch Telemetriefelder zugeordnet werden. Mit
#define NUMBEROFCELLS 4
belege ich das FrSky Feld für Zellenspannungen und in diesem Fall werden VOLT_1 bis VOLT_4 als Zellenspannungen übertragen. Den Rest macht OpenTX im Sender. In 2.1 muss ich hierfür nichts eintragen, VFAS oder weitere Felder brauche ich dafür nicht.

Wenn ich aber zu den 4 Zellenspannungen noch eine weitere Spannung übertragen möchte, definiere ich diese oXs intern in der Spalte 5 oder 6 von 6.2 und übertrage dann VOLT_5 oder VOLT_6 in einem freien Telemetriefeld. Hier kommt jetzt 2.1 ins Spiel, wo ich VOLT_5 oder VOLT_6 einer FrSky Telemetrievariable zuordne, zum Beispiel mit:

#define VFAS_SOURCE VOLT_5
oder
#define A3_SOURCE VOLT_5
oder
.
.
.
 
Die Tabelle in 6.2 dient zur Erfassung von bis zu 6 Spannungen in openXsensor intern. Diesen müssen noch Telemetriefelder zugeordnet werden. Mit
#define NUMBEROFCELLS 4
belege ich das FrSky Feld für Zellenspannungen und in diesem Fall werden VOLT_1 bis VOLT_4 als Zellenspannungen übertragen. Den Rest macht OpenTX im Sender. In 2.1 muss ich hierfür nichts eintragen, VFAS oder weitere Felder brauche ich dafür nicht.
Nun bin ich soweit:
Bei der Sensorsuche wird "Cels" als Gesamtspannung gefunden, da ich ja gerne eine Einzelspannugsüberwachung hätte möchte ich gerne jede Spg einzeln angezeigt haben, damit ich bei unterscheiten einer bestimmten Schwelle Alarm auslöst wird.
Muß ich jetzt zusätzlich jede Spgsabfrage unter 9.1 eintragen, so wie hier:
Code:
#define FUEL_SOURCE   VOLT_1                 
#define A3_SOURCE     VOLT_2                 
#define A4_SOURCE     VOLT_3                 
.
.
oder mach ich in der config einen Fehler?

Gruß
Robert
 
In dem besonderen "Cels Paket" sind die Einzelspannungen schon enthalten. Die kannst du mit OpenTX Bordmitteln anzeigen. Hab ich noch nie gemacht, aber da findest du Hinweise hier im Forum. Hobby46 hat das schon ein paar Mal gezeigt.
Deine Methode geht auch, aber dann überträgst du die Einzelzellen doppelt, einmal im Paket und einmal in den Variablen. Macht aber nix kaputt.........

Edit: VOLT_2,3 sind gar nicht die Einzelzellen, sorry für das Durcheinander. Das ist nur VOLT_1, VOLT_2 und 3 sind schon Summen. Die Einzelzellen bekommst du nur mit OpenTX
 
Zuletzt bearbeitet:
Danke für die Info.
Einzelspgen machen ja nur Sinn wenn ich sie auch darstelle und überwache. Die Gesammtspg kann ich einfacher übertragen, dazu benötige ich keinen Balancer Anschluß.
Werde mich auf die Suche begeben ...
Gruß
Robert
 
Super Mario,

gut beschrieben, hab auch was gefunden in Helles Anleitung "Taranis OpenTX_Manual_Deutsch_ ab V220 0511_289" auf Seite 205. Hier ist es für die Einheimischen nachzulesen:ding:

Jetzt nur noch kalibieren und die Alarme eintragen dann kann's los gehen.
Danke für die Hilfe

Gruß
Robert
 
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten