FrSky Taranis und Variometer openxvario bzw. openxsensor

Status
Nicht offen für weitere Antworten.

kalle123

Jugend forscht ....
Hi Christian.

Da ich keinen Level-Shifter für die I2C Datenleitungen verwenden wollte, habe ich einen Pro Mini mit 3,3V verwendet.

Da bist du der Erste, den ich kenne, der einen 3.3V nimmt. Ein LDO ist ja auf dem BMP180 mit drauf.

Deckst du den BMP180 nicht ab? Ich pack da immer noch etwas Filtermatte aus ner Airconditioning mit drauf.

cu KH
 

rcbebo82

Erfahrener Benutzer
Hi Bernd,
ok verstehe. Aber wie muss ich den Sensor den nun im Modell montieren?
X = ELEV, Y=AIL oder ist das egal wie ich den ins Modell packe?
Und wenn ich die Empfindlichkeit an den Sender per T1_SOURCE gebe wie muss ich den Sensor einstellen damit ich die Werte genau sehe.
Habe eine Taranis X9E!
Ach und noch etwas merkt man einen deutlichen Unterschied zwischen dem normalen Baro und dem mit dem IMU Sensor?

Ps.: Meine Stromsensoren sind leider noch nicht da, kann ich eigentlich auch die Gesamtspannung von 12S messen oder geht das eher nicht?
LG
Bebo
Diese Einstellungen musst du zusätzlich machen:

Code:
// --------- 3 - PPM settings ---------
#define PIN_PPM           3       // default is 2 but my own device use 3
#define PPM_MIN_100       980     // default 1500 - 512 ; // pulse width (usec) when TX sends a channel = -100
#define PPM_PLUS_100      1990    // default 1500 + 512 ; // pulse width (usec) when TX sends a channel = +100

// ***** 4.5 - Vertical speeds calculations *****
#define VARIO_PRIMARY       BARO_AND_IMU        // select between FIRST_BARO, SECOND_BARO , AVERAGE_FIRST_SECOND, AIRSPEED_COMPENSATED , BARO_AND_IMU
#define VARIO_SECONDARY     FIRST_BARO          // select between FIRST_BARO, SECOND_BARO , AVERAGE_FIRST_SECOND, AIRSPEED_COMPENSATED , BARO_AND_IMU
#define SWITCH_VARIO_MIN_AT_PPM 10
#define SWITCH_VARIO_MAX_AT_PPM 90

// --------- 9 - Data to transmit ---------
#define VSPEED_SOURCE  PPM_SELECTION       // select between FIRST_BARO, SECOND_BARO , AVERAGE_FIRST_SECOND, AIRSPEED_COMPENSATED , BARO_AND_IMU or PPM_SELECTION
Dann hast du mit PPM zwischen +10 und +90 IMU-Vario und mit PPM zwischen -10 und -90 normales Vario. Beim normalen Vario kannst du die Empfindlichkeit mit PPM von -10 bis -40 auch ändern, beim IMU-Vario ist sie fest. Die Empfindlichkeit kannst du dir auch zurückmelden lassen, dann hast du eine Funktionskontrolle für PPM z.B. so in T1:

Code:
#define T1_SOURCE       SENSITIVITY                   //  select between TEST_1, TEST_2, TEST_3 , GLIDER_RATIO , SECONDS_SINCE_T0 ,AVERAGE_VSPEED_SINCE_TO , SENSITIVITY, PPM, VOLT_1, VOLT_2, VOLT_3, VOLT_4, VOLT_5, VOLT_6
Gruß Bernd
 

lazyzero

... zu viel geflashdingst
Hi Christian.

Da ich keinen Level-Shifter für die I2C Datenleitungen verwenden wollte, habe ich einen Pro Mini mit 3,3V verwendet.

Da bist du der Erste, den ich kenne, der einen 3.3V nimmt. Ein LDO ist ja auf dem BMP180 mit drauf.

Deckst du den BMP180 nicht ab? Ich pack da immer noch etwas Filtermatte aus ner Airconditioning mit drauf.

cu KH
Ich bin davon ausgegangen, dass der BMP180 keine 5V auf den Datenleitungen aushält. Sieht zumindest nach dem Datenblatt so aus. Der BMP wird natürlich noch abgedeckt, fürs Foto hat ich das halt nicht gemacht.

Gruß Christian
 

kalle123

Jugend forscht ....

Anhänge

Hi Bernd,
ok verstehe. Aber wie muss ich den Sensor den nun im Modell montieren?
X = ELEV, Y=AIL oder ist das egal wie ich den ins Modell packe?
Genauso hab ich ihn montiert, für das Vario muss ja nur Z stimmen, also waagrechte Montage.

Und wenn ich die Empfindlichkeit an den Sender per T1_SOURCE gebe wie muss ich den Sensor einstellen damit ich die Werte genau sehe.
Habe eine Taranis X9E!
Der Sensor muss nicht eingestellt werden, der Standard passt für das gewünschte Verhalten:
Code:
// ***** 4.3 - Sensitivity adjusted from the TX *****
#define SENSITIVITY_MIN_AT_PPM 10    // sensitivity will be changed by OXS only when PPM signal is between the specified range enlarged by -5 / +5
#define SENSITIVITY_MAX_AT_PPM 40
#define SENSITIVITY_PPM_MIN  20      // common value for vario is 20
#define SENSITIVITY_PPM_MAX 100      // common value for vario is 100
Oder du hast dich vertippt und meinst Sender einstellen, dort brauchst du einen Mixer, der entweder positiv oder negativ Werte von 10-40 liefert, ich habs so gemacht:

MIxer.png

Dann Sensoren einlesen, T1 umbenennen in "Sens" z.B. und ohne Einheit anzeigen lassen, aber das weißt du ja.

Ach und noch etwas merkt man einen deutlichen Unterschied zwischen dem normalen Baro und dem mit dem IMU Sensor?
Beim Testflug habe ich ~0,4 s ermittelt. Ich muss aber ehrlicherweise sagen, dass das "normale" Vario für mich schnell genug ist, das IMU Vario entstand aus der Idee, aus der Beschleunigung eine Energiekompensation zu errechnen. Ich bin da eher skeptisch, das ist mstrens´Baby.

Ps.: Meine Stromsensoren sind leider noch nicht da, kann ich eigentlich auch die Gesamtspannung von 12S messen oder geht das eher nicht?
Klar geht das, du musst halt die Widerstände so dimensionieren, dass am Arduino nur maximal 5V ankommen (beim Standardfall mit 5 V Referenzspannung) und die Widerstände nicht überlastet werden. Bei 50V muss man das im Auge behalten.

Gruß Bernd
 

lazyzero

... zu viel geflashdingst
Christian, den thread hier kennst du? http://www.rclineforum.de/forum/boa...und-telemetrie/311808-openxsensor/index4.html

Klaus hat damals den BMP180 mit ins oXs Projekt eingebracht.

Hab glaube ich 2 dieser BMP180 an pro minis 5V und die leben beide noch.

Hier das Schaltbild vom GY-68. Beim MS5611 mit level shifter ist es natürlich eleganter.

Gruß KH
Nein den Thread kannte ich nicht.

Gut zu wissen das der BMP das aushält. Wobei ich eigentlich immer ein paar 3,3V Arduino Pro Mini zu Hause habe.

Gruß Christian
 

rcbebo82

Erfahrener Benutzer
Klar geht das, du musst halt die Widerstände so dimensionieren, dass am Arduino nur maximal 5V ankommen (beim Standardfall mit 5 V Referenzspannung) und die Widerstände nicht überlastet werden. Bei 50V muss man das im Auge behalten.

Gruß Bernd
Hallo meine 200A Hal Sensoren sind nun da und ich möchte nun mal einen Strommessensor bauen. Wenn ich das richtige sehe und ich 12S direkt messen möchte dann bräuchte ich einen Wiederstand mit ca. 2,3kOhm der mindestens 1Watt aushält. Das wir dann aber ordentlich Warm oder?

LG
Bebo
 
Hallo,

du baust einen 10:1 Spannungsteiler: 4,7 kOhm vom Analogeingang des Arduino nach GND, 47 kOhm von diesem Analogeingang an Plus des 12s (~ 51V hat es dort).

An den 47 kOhm fallen dann 10/11 von 51V ab und am Arduino 1/11 von 51V = 4,63 Volt, damit hast du noch ein paar Prozent Sicherheit. Der 47 kOhm wird nur mit ca. 0,05 Watt belastet, der 4,7 kOhm mit 0,005 Watt, Händewärmen wird bei diesen Werten schwierig.

Es ist vielleicht eine gute Idee, erst den Spannungsteiler aufzubauen und die Spannung über dem 4,7 kOhm Widerstand mit dem Multimeter zu messen - und dann erst den Arduino anzuschließen. Man hat schnell mal die Widerstände verwechselt und den Arduinoeingang abgeschossen.

Den 47 kOhm würde ich direkt am Akku anschließen (Balancerstecker?). Das hat den Vorteil, dass bei einem Kurzschluss nach dem Widerstand einfach nix passiert, außer dass 1mA fließt.

Wenn etwas unklar ist, frag sicherheitshalber nochmal nach, 12s geben schon ein schönes Feuerwerk.

Gruß Bernd
 

rcbebo82

Erfahrener Benutzer
Hallo,
hier mein Schaltplan:


Wenn ich RPM auslesen mag muss ich dann auch aufpassen das der Signalpegel nicht über 5V geht? Der Yge hängt ja auch an den 6,8 Volt. Was müsste ich ändern damit das auch klappt?
Ansonsten sollte das so passen oder?
 
Zuletzt bearbeitet:
Hallo, sieht gut aus, aber:

der ACS muss an einen Analogeingang, du hast ihn an PIN 3, der sollte an A3 (die Beschriftung ist relativ schlecht zu lesen).

Häng am besten mal ein Multimeter an den RPM-Ausgang und Masse und miss mal im Gleich- und Wechselspannungsbereich. Wenn du nur 0V (also nix) messen kannst - was ich vermute - braucht der RPM Ausgang einen pullup-Widerstand. Dann löte mal 4,7 kOhm von VCC auf PIN 8.

Wenn du eine Spannung messen kannst, würde ich es erst mal mit einem Spannungsteiler versuchen, RPM -> 4,7 kOhm -> PIN 8 -> 4,7 kOhm -> GND.

Bin gespannt!

Gruß Bernd
 
Ja, das geht, dann würde ich aber den Vorwiderstand mit 4,7 kOhm anstelle 47 kOhm dimensionieren, damit die Anzeige nicht zu träge wird. Übrigens, das Messen am RPM Ausgang muss natürlich bei laufendem Motor passieren, aber ich denke, das war klar.

Gruß Bernd
 
Interrupt verdrahtet? Am Besten mal die Verbindungen und die oxs.config.h anhängen.

Gruß Bernd
 
Guten Morgen

@kalle und carbo

danke für eure Inputs. Die Adresse der IMU war es. An zwei Stellen musste die geändert werden und nun läuft es.

Noch eine Frage an Kalle : bei welchem Chinesen hast Du die ACS758 bezogen ?

mfg Andi
 

DerCamperHB

Erfahrener Benutzer
konnte auf die schnelle nichts finden
Hat sich schon jemand mit RPM Aufnahme einer/zweier Motorphasen beschäftigt, und nicht über Magnetsensor am Getriebeteil?

Müsste über die Analogeingänge doch direkt machbar sein
 
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten