VarioGPS-Sensor
- nightflyer88
- Offline Autor
- Premium Mitglied
- Beiträge: 137
- Dank erhalten: 143
Hallo Jürgen
Danke für die Rückmeldung. Ich habe kurz in den Code geschaut und gesehen, das ich bei der Umrechnung von Druck auf Geschwindigkeit[m/s] die Variablen nur als int deklariert habe, also die Variablen nur Ganzzahlen aufnehmen können. Später wird die Geschwindigkeit von m/s auf Km/h umgerechnet. Dies erklärt warum die Geschwindigkeit letztendlich nur in 3-4km/h schritten angezeigt wird.
Versuch mal folgendes:
Im Arduino Code in der VarioGPS_Sensor.ino bei Zeile 217,218 die Variablen als float zu deklarieren. Solte dan so aussehen:
Bitte gib mir bescheid, ob es funktioniert.
Gruss Michael
Danke für die Rückmeldung. Ich habe kurz in den Code geschaut und gesehen, das ich bei der Umrechnung von Druck auf Geschwindigkeit[m/s] die Variablen nur als int deklariert habe, also die Variablen nur Ganzzahlen aufnehmen können. Später wird die Geschwindigkeit von m/s auf Km/h umgerechnet. Dies erklärt warum die Geschwindigkeit letztendlich nur in 3-4km/h schritten angezeigt wird.
Versuch mal folgendes:
Im Arduino Code in der VarioGPS_Sensor.ino bei Zeile 217,218 die Variablen als float zu deklarieren. Solte dan so aussehen:
Code:
// airspeed variables
int refAirspeedPressure;
float uAirSpeed = 0;
float lastAirSpeed = 0;
Bitte gib mir bescheid, ob es funktioniert.
Gruss Michael
von nightflyer88
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Klippeneck
- Offline
- Senior Mitglied
- Beiträge: 68
- Dank erhalten: 8
Hallo Michael,
besten Dank für deine prompte Reaktion.
Ich habe versucht die vorgeschlagenen Änderungen umzusetzen.
Die Arduino IDE bereitet mir Probleme mit div. Fehlermeldungen.
Meine bisher gebauten Sensoren habe ich alle mit bereits kompilierten hex- Dateien und Teros Hex-Tool programmiert.
Deshalb muß ich mich erst in die Arduino IDE einarbeiten. Dies kann noch eine Weile dauern.
Auf die Schnelle wäre mir eine fertige Hex-Datei am liebsten, dann könnte ich im Laufe der nächsten Woche testen.
Aktuell verwende ich einen Botloader sodaß ich über das Sensorkabel flashen kann, ist für mich optimal.
Der Prozessor läuft mit 5V und 16 MHz.
Grüsse Jürgen
besten Dank für deine prompte Reaktion.
Ich habe versucht die vorgeschlagenen Änderungen umzusetzen.
Die Arduino IDE bereitet mir Probleme mit div. Fehlermeldungen.
Meine bisher gebauten Sensoren habe ich alle mit bereits kompilierten hex- Dateien und Teros Hex-Tool programmiert.
Deshalb muß ich mich erst in die Arduino IDE einarbeiten. Dies kann noch eine Weile dauern.
Auf die Schnelle wäre mir eine fertige Hex-Datei am liebsten, dann könnte ich im Laufe der nächsten Woche testen.
Aktuell verwende ich einen Botloader sodaß ich über das Sensorkabel flashen kann, ist für mich optimal.
Der Prozessor läuft mit 5V und 16 MHz.
Grüsse Jürgen
von Klippeneck
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- nightflyer88
- Offline Autor
- Premium Mitglied
- Beiträge: 137
- Dank erhalten: 143
Kein Problem hier die Hex Datei.
Cool, welcher ist das ? Gibts den Bootloader irgendwo ?Aktuell verwende ich einen Botloader sodaß ich über das Sensorkabel flashen kann, ist für mich optimal.
von nightflyer88
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Klippeneck
- Offline
- Senior Mitglied
- Beiträge: 68
- Dank erhalten: 8
Hallo Michael,
super und nochmals vielen Dank für die Datei.
Ich habe den Sensor bereits auf die die neue Version geflasht, erste Versuche in der Werkstatt sehen gut aus.
Falls wir morgen früh keinen Nebel haben, kann ich die SW im Flug testen und wieder berichten.
Um die Genauigkeit abschätzen zu können, werde ich nächste Woche bei Winstille noch einen Vergleich mit den Auto GPS machen.
Als Bootloader verwende ich Fastboot von P. Dannecker. den habe ich von H. Stöcklein mit der SW für sein Vario bekommen. Prozessortyp, Takt und Pins passen. Ob ich den Bootloader weitergeben darf, muss ich erst Henning anschreiben und sein Einverständnis einholen.
Grüsse Jürgen
super und nochmals vielen Dank für die Datei.
Ich habe den Sensor bereits auf die die neue Version geflasht, erste Versuche in der Werkstatt sehen gut aus.
Falls wir morgen früh keinen Nebel haben, kann ich die SW im Flug testen und wieder berichten.
Um die Genauigkeit abschätzen zu können, werde ich nächste Woche bei Winstille noch einen Vergleich mit den Auto GPS machen.
Als Bootloader verwende ich Fastboot von P. Dannecker. den habe ich von H. Stöcklein mit der SW für sein Vario bekommen. Prozessortyp, Takt und Pins passen. Ob ich den Bootloader weitergeben darf, muss ich erst Henning anschreiben und sein Einverständnis einholen.
Grüsse Jürgen
von Klippeneck
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- lpaelke
- Offline
- Junior Mitglied
- Beiträge: 28
- Dank erhalten: 2
Hallo Michael,
die "paar Tage" haben leider etwas länger gedauert, aber jetzt bin ich wieder dabei.
Das mit dem Strom Offset resetten funktioniert einwandfrei, mein Sensor zeigt ohne Last jetzt 0,0 A an und zählt auch nicht mehr rückwärts.
Danke dafür!
Beste Grüße,
Lutz
die "paar Tage" haben leider etwas länger gedauert, aber jetzt bin ich wieder dabei.
Das mit dem Strom Offset resetten funktioniert einwandfrei, mein Sensor zeigt ohne Last jetzt 0,0 A an und zählt auch nicht mehr rückwärts.
Danke dafür!
Beste Grüße,
Lutz
von lpaelke
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- lpaelke
- Offline
- Junior Mitglied
- Beiträge: 28
- Dank erhalten: 2
Irgendwie stehe ich gerade auf dem Schlauch:
Ich habe mir ein paar ACS759-100B Sensoren besorgt, die für 3,3V Versorgungsspannung ausgelegt sind. (Ich hätte ja lieber die U-Version gehabt, aber die war nicht zu bekommen, zumindest nicht zu vernünftigen Konditionen.)
Der Sensor entspricht ansonsten dem ACS758-100B. Er wird zwar mit 13,2 mV/A gegenüber 20 mV/A für den 5V-Typ angegeben, aber da ja beide Angaben ratiometrisch bezogen auf die Versorgungsspannug sind, entsprechen sie einander.
V_REF habe ich entsprechend meiner 3.3V Arduino Version auf 3300 gesetzt.
Ich dachte daher, dass ich einfach den ACS758-100B im Menü auswählen könnte, da der Stromwert ja anschließend mit dem Faktor 5000.0/V_REF (also 5/3,3) korrigiert wird:
Die angezeigten Stromwerte sind dann allerdings um den Faktor 5/3,3 zu gering.
Ich habe dann mal die Parameter für den ACS759-100B eingefügt (mit gerundet 13 mV/A). Damit funktioniert es, obwohl der Strom doch jetzt eigentlich überkorrigiert werden müsste?
Also: Wo ist mein Denkfehler?
Beste Grüße,
Lutz
Ich habe mir ein paar ACS759-100B Sensoren besorgt, die für 3,3V Versorgungsspannung ausgelegt sind. (Ich hätte ja lieber die U-Version gehabt, aber die war nicht zu bekommen, zumindest nicht zu vernünftigen Konditionen.)
Der Sensor entspricht ansonsten dem ACS758-100B. Er wird zwar mit 13,2 mV/A gegenüber 20 mV/A für den 5V-Typ angegeben, aber da ja beide Angaben ratiometrisch bezogen auf die Versorgungsspannug sind, entsprechen sie einander.
V_REF habe ich entsprechend meiner 3.3V Arduino Version auf 3300 gesetzt.
Ich dachte daher, dass ich einfach den ACS758-100B im Menü auswählen könnte, da der Stromwert ja anschließend mit dem Faktor 5000.0/V_REF (also 5/3,3) korrigiert wird:
Code:
float mVanalogIn = (analogRead(CURRENT_PIN) / 1024.0) * V_REF; // mV
cuAmp = (mVanalogIn - ampOffset) / mVperAmp[currentSensor-1];
if (currentSensor > APM25_A){
cuAmp *= 5000.0/V_REF;
}
Ich habe dann mal die Parameter für den ACS759-100B eingefügt (mit gerundet 13 mV/A). Damit funktioniert es, obwohl der Strom doch jetzt eigentlich überkorrigiert werden müsste?
Also: Wo ist mein Denkfehler?
Beste Grüße,
Lutz
Last Edit:13 Nov. 2018 19:53
von lpaelke
Letzte Änderung: 13 Nov. 2018 19:53 von lpaelke.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
Ladezeit der Seite: 0.969 Sekunden