RC-Einstell-Tool zum Vermessen von Ruderausschlägen und zur Ansteuerung eines Servos

2. MPU9250: Denke der 6050 ist ausreichend. Der hat eine exzellente MotionProcessingUnit mit DMP on Board. Wir haben damit experimentiert (Code ist noch da und sollte funktionieren #ifdef USE_MPU6050_MPU), aber die Messgenauigkeit, die wir uns wünschen ist nur bei der Messung zur Erdbeschleunigung genau genug. Zudem wird es das gleich richtig kompliziert. Man muss dem 6050 binäre Firmware hochladen und die dahinter steckende Mathematik ist sehr aufwändig.
Unsere Versuche mit dem Seitenruder waren aber einfach zu ungenau, da die Winkel als Integration von kleinen Beschleunigungswerte "gerechnet" wird. Ob das ein 9250 besser ist, wer weiss? Vielleicht habe ich auch nur nicht wirklich kapiert wie die DMP funktioniert, aber es gibt dazu kaum Dokumentation. Aber die I2CDev lib von J.Rowberg (https://github.com/jrowberg/i2cdevlib/tree/master/Arduino/MPU6050) gibt dazu einiges her.

Bezüglich Seitenruder, war meine idee eher, dass man den Kompass dafür verwenden könnte, den gibts ja nur beim MPU9250. Aber es braucht sicherlich ein paar tests, ob die Genauigkeit ausreichend dafür ist, oder ob es evtl. einen Drift gibt..
 

kalle123

User
Hallo Rainer.

Läuft !

Kompilieren und flashen geht jetzt beim MMA8451.

8bIoyh1l.png


0AFxUhul.png


Zwei Sachen sind blöd:

- hab jetzt zwei gleichlautende MMA8451 Libs. Ich weiß jetzt nicht, inwieweit deine Modifikation in andere Anwendungen rein greifen. Aber das ist zu klären.

- und den hier hab ich gerade 'geschrottet'. Falsch rum auf den Sockel gesteckt. Richtig rum drauf und der lies sich noch flashen, aber da sind wohl Ports abgeka.... Eigene Blödheit, aber man hat ja Reserve :D

Grüße KH


ylL8w0nl.png
 
Die gepatchte 8451-Lib hat nur eine erweiterte Schnittstelle zur Initialisierung, bei man zusätzlich zur I2C Adresse noch die Ports des I2C Interfaces mitgeben kann.
D.h. es gibt eine neuen Methode begin() mit 2 weiteren Parametern.
Ist vollkommen abwärtskompatibel.
Code:
bool begin(uint8_t sdaPin, uint8_t sclPin, uint8_t addr = MMA8451_DEFAULT_ADDRESS);

Wenn du alle Änderungen sehen möchtest, kannst du das einfach hier machen: https://github.com/adafruit/Adafruit_MMA8451_Library/compare/master...Pulsar07:master ;-)

Gruß Rainer
 

kalle123

User
Sorry für die 'blöde' Frage, aber hier in der aktuellen *.ino seh ich immer noch die Selektion 6050 und 8451.
Code:
// !!!!!!!!!!!!!!!!!!
// if you enable this define, the sligthly patched lib
// Adafruit_MMA8451_Library from 
// https://github.com/Pulsar07/Adafruit_MMA8451_Library
// has to be added to the arduino library folder
// #define SUPPORT_MMA8451
// !!!!!!!!!!!!!!!!!!
#ifdef SUPPORT_MMA8451
#include <Adafruit_MMA8451.h>         // MMA8451 library
#endif
// I2Cdev and MPU6050 must be installed as libraries, or else the .cpp/.h files
// for both classes must be in the include path of your project
#include "I2Cdev.h"
// #define USE_MPU6050_MPU
#ifdef USE_MPU6050_MPU
#include "MPU6050_6Axis_MotionApps20.h"
#else
#include "MPU6050.h"
#endif


Und in der *.bin sind jetzt beide Sensoren aktiviert?!

Gruß KH
 
genau, in der bin-Datei sind beide eingebunden. Kannst Du auch in der Ino-datei machen, musst dann halt die Bibliothek noch laden. Da aber die meisten User einen 6050 verwenden haben wir das so realisiert.
Weiter unten im Sketch wird dann geprüft ob ein 6050, 8451 (oder 8452 :-) ) verwendet wird.

Gruß Jochen
 

andipe

User
Vielen, herzlichen Dank fürs veröffentlichen

Vielen, herzlichen Dank fürs veröffentlichen

Ich hatte bis gestern noch nie etwas mit Arduino zu tun. Heute, nach ca. 10 intensiven Stunden, läuft mein RC-Einstell-Tool.

Vielen Dank und einen schönen Sonntag
Andreas
 

onki

User
Hallo,

Vielen Dank für dieses tolle Projekt.
Hab mir ein kleines, kompaktes Tool aus Bestandsmaterial zzgl. des GY-521 gebaut.

rc_tool.jpg

Da ich es kompakt und unkompliziert haben möchte und die Servogeschichte nicht benötige, hab ich als Stromversorgung eine kompakte LiIon Zelle (Pollin Restposten) verwendet.
https://www.pollin.de/p/lithium-ion-akku-lp653450rs-v1-3-7-v-1280-mah-gebraucht-271799

Der Mini-Schiebeschalter verbindet den Akku in der Aus-Position mit dem USB LiIon Lader, damit die Zelle geladen werden kann.
Die Klemme im unteren Bereich ist ein Selbstklebe-Kabelhalter aus der Grabbelkiste.

Gruß
Onki
 

RayX

User
Hallo,

Vielen Dank für dieses tolle Projekt.
Hab mir ein kleines, kompaktes Tool aus Bestandsmaterial zzgl. des GY-521 gebaut.

Anhang anzeigen 2262296

Da ich es kompakt und unkompliziert haben möchte und die Servogeschichte nicht benötige, hab ich als Stromversorgung eine kompakte LiIon Zelle (Pollin Restposten) verwendet.
https://www.pollin.de/p/lithium-ion-akku-lp653450rs-v1-3-7-v-1280-mah-gebraucht-271799

Der Mini-Schiebeschalter verbindet den Akku in der Aus-Position mit dem USB LiIon Lader, damit die Zelle geladen werden kann.
Die Klemme im unteren Bereich ist ein Selbstklebe-Kabelhalter aus der Grabbelkiste.

Gruß
Onki

Das Teil sieht groß und schwer aus.
Da senken sich bestimmt die rudder beim anstecken ab?
 

onki

User
Hallo,

Sofern sich die Ruder senken würden, wäre der komplette Flieger schon ein Fall für die Tonne.

Wir leben im Zeitalter von 10kg Servos, da ist so eine Mimik ein Witz für aktuelle Servos.
Das Teil ist ja auch dazu geplant um Scalemodelle oder Steckenflieger einzustellen ohne das man ewig um das Modell herumlaufen muss.
Leicht ist sicher kein Fehler aber mir war einteilig und kompakt wichtiger.
Sicher ist der Akku überdimensioniert und ein kleinerer würde genauso funktionieren. Aber er hatte einen gravierenden Vorteil - er war verfügbar.
Den gleichen setze ich auch in der Schwerpunktwaage ein. Wird über die zweite USB-Buchse geladen.

Nachtrag: Mein Tool bring 39g auf die Waage. Nichts worüber ich mir Sorgen mache.

Gruß
Onki
 

RayX

User
Mit Akku, integriertem Ladegerät, Display und Halteclip.
Mir persönlich gefällt es so besser, mit dem Display, ich bin nicht so ein Handy Freak und sehe auch wenig sinn darin, vielleicht bin ich einfach zu Alt.... Modisch :D

IMG_20200226_210322.jpg

@Kalle dein Sensor ist zwar leicht aber dafür baumelt ein Kabel dran rum, etwas suboptimal
 

kalle123

User
.. und was hat das jetzt mit dem Projekt hier von Rainer, Steffen und Jochen zu tun?

Naja, noch ne Messung, da sind wir seit 3 Jahren dran. :)

Die Sache hier ist halt interessant wegen der Servokopplung und der Darstellung und Auswertung.

Die hab ich auch noch hier.

HfneH25l.png


Kein 'baumelndes' Kabel, kein Akku, der auch mal leer sein kann, lageunabhängig!! und analoge Ablesung :D

cu KH
 
Ein Klasse Projekt, @kalle123 hat mich in einem anderen Thread darauf aufmerksam gemacht.

Der Nachbau funktioniert bestens und nach kurzem Studium der Einstellungen kann ich das Teil auch bedienen :)

Der Sketch lief auf Anhieb und ich konnte ihn auch über das IDE problemlos compilieren :D

Um den IP-Eintrag des APs im *.ino/AdminPage zu ändern, muss man nicht lange suchen, weil nicht jeder, oder wahrscheinlich nur eine kleine Gruppe,

verwendet die 192.168.4.xxx, als Gateway am Router. Ist natürlich nur nötig, wenn man am PC einstellt.

In dem Zusammenhang hab ich versucht das PW und die SSID für das WLan, direkt im sketch einzupflanzen. Leider bin ich bei dem Versuch, den entsprechenden Eintrag zu finden, gescheitert.

Dies wäre halt einfacher, per copy and paste, ein komplizierte(s) und lange(s) SSID/PW, rein zu pinseln, als sich am Smartphone die Finger zu verbiegen :D

Ich baue sehr gerne nach und bin begeistert wenn es ohne Anlaufschwierigkeiten sofort funktioniert. Alles ist hier verständlich erklärt und beschrieben :)

Ein sehr durchdachtes Projekt - Danke an das Entwicklerteam!
 

onki

User
Hallo,


ich hätte da noch eine Anregung. Bei der Schwerpunktwaage mit ESP32 ist es so, dass zwei Modi möglich sind. Man kann die heimischen WLAN-Zugangsdaten einerseits eintragen und das Teil meldet sich dann bei Vorhandensein des WLAN dort an und kann somit über jeden PC bzw. jedes lokale Device auf den eingebauten Webserver zugreifen. Ist das lokale WLAN nicht vorhanden (z.B. am Flugplatz) so wird das "eigenen WLAN aufgespannt und man kann sich so damit verbinden.

Empfinde ich als extrem flexible und praktische Lösung.

Einen Nachteil hat meine kleine Lösung allerdings. Ich hab es derzeit verlegt und finde es gerade nicht :-(.

Gruß
Onki
 
Hallo,


ich hätte da noch eine Anregung. Bei der Schwerpunktwaage mit ESP32 ist es so, dass zwei Modi möglich sind. Man kann die heimischen WLAN-Zugangsdaten einerseits eintragen und das Teil meldet sich dann bei Vorhandensein des WLAN dort an und kann somit über jeden PC bzw. jedes lokale Device auf den eingebauten Webserver zugreifen. Ist das lokale WLAN nicht vorhanden (z.B. am Flugplatz) so wird das "eigenen WLAN aufgespannt und man kann sich so damit verbinden.

Empfinde ich als extrem flexible und praktische Lösung.

Einen Nachteil hat meine kleine Lösung allerdings. Ich hab es derzeit verlegt und finde es gerade nicht :-(.

Gruß
Onki
Hi Onki,

dein Vorschlag ist spitze, muss dir aber leider sagen, dass er schon von Anfang an implementiert ist :D.
Wenn der Sensor kein WLAN zum verbinden mit validen Zugangsdaten findet, wird immer ein Accesspoint mit der SSID "UHU" und Kennwort "12345678" zur Verfügung gestellt. Kann nach Verbindung geändert werden. Man kann sogar, parallel zu einer HEIM-WLAN zusätzlich einen Accesspoint aufmachen. Siehe Einstellungen.
Idee sind immer willkommen, vor allem wenn sie schon implementiert sind :D:cool::D
 

onki

User
Hi,

Oh weh - Eigentor. Egal - ich probier das mal aus, wenn ich mein Teil wieder finde.

Also die SSID etc. in der .INO-Datei sind die Daten, die das geräteeigene WLAN betreffen.
Meine heimischen Zugangsdaten werden dann im Webinterface eingetragen.

Gruß
Onki
 
Ansicht hell / dunkel umschalten
Oben Unten