Fernsteuerung mit dem Esp8266

Minimalist

Neuer Benutzer
#21
Da bin ich aber schon sehr neugierig, ob die Performance reicht. Muss ja alles durch den I2C Bus. Aber ich will nicht unken. Zum stabilen Fliegen wird's wohl reichen und ein wenig Telemetrie sollte auch noch funktionieren. :)

Ich bastle zZ an der ESP8266-ESPNOW-Funke. Ein D1mini mit aufgesetzter OLED 64x48.
8 Analog Kanäle (2xPCF8591) und Akku-Kontrolle mit A0 vom D1mini.
(Hanfried, kennst du die mc-10 wieder?)
 

Anhänge

cesco1

Erfahrener Benutzer
#22
> ESP8266-ESPNOW-Funke

Goldlösung :)
Ich verwende flysky funke, flysky-ppm empfänger, esp8266 sender. Das ist ein flysky to espnow converter. Zwei sender und zwei empfänger auf 2.4g ... eigentlich ein nogo.

Zum EspCopter:
Über I2C gehen 12 bytes und über UART 5 bytes per 5ms zyklus. Der esp braucht zwischen 0.7 und 1.1 ms rechenzeit / zyklus. Der esp ist einiges schneller als ein arduino.

Das "schwammige" fliegen lag and der senderate, hat nur alle 100ms gesendet, 10Hz. Inzwischen fliegt das etwas besser, ist indoor auf 1x1 m kontrollierbar. Uuund ich hab gleich den akku tiefentladen :(
 
Zuletzt bearbeitet:

handuc

Erfahrener Benutzer
#23
Bin derzeit wg. Renovierungsarbeiten etwas aussen vor, verfolge aber was hier so passiert ;-).
@Bernhard, ja natürlich die kenne ich noch - meine Einstiegsfunke in unser tolles Hobby! Prima was Du daraus machst!!!

@cesko, was den Einsatz der ESPxxxx Module als FC im Kopter betrifft, da hatte ich ziemliche Zweifel, auf Grund meiner bisherigen Erfahrungen mit Verbindungsverlusten. Aber es scheint ja doch zu funktionieren, wenn man es richtig anfasst :))).

Hier hat das auch schon jemand getestet:
http://espcopter.com/

Bernhard hat mir auch bestätigt, das es zw. Server und Client mit der FW von cesko bisher keine Unterbrechungen gegeben hat. Ich denke, das ich ab Anfang April wieder aktiv in das Thema einsteige - als Betatester ;-).
 

Minimalist

Neuer Benutzer
#24
Meine "ESP8266-ESPNOW-Funke" läuft wie geplant. :D
Gegen die Nunchuck Steuerung ist das pures Gold !

Falls es jemanden interessiert, werde ich mal den Schaltplan zeichnen und zusammmen mit der Software veröffentlichen. Ist alles ganz einfach gehalten mit 2x 2200mAh (parallel) 18650 Lipos gepowert. Ein Piepser gekoppelt mit einer roten Diode ist an Board, damit irgendwelche Probleme deutlich signalisiert werden können. Die Anzeige hat zZ 6 Zeilen mit je 10 Charakter. Die ersten 3 Zeilen habe ich für diesen Sender reserviert und die letzten 3 Zeilen für den SERVER. Der kann dann in Zukunft selbst bestimmen, was in den Zeilen angezeigt werden soll. So ist das am fexibelsten. Und den Sender piepsen lassen können, soll der SERVER natürlich auch.

Soweit erstmal ... :)
 

handuc

Erfahrener Benutzer
#25
Na da melde ich mich doch gleich mal an ;-). Große klasse Bernhard, Step 1 abgehakt. Nun noch RX seitig fertig stellen und dann ab in den Garten mit 2WD oder Tankchassis!
Die optionalen Anzeigemöglichkeiten sind eine prima Idee, so eine Fehleranzeige oder was auch immer angezeigt werden soll ist nie verkehrt.

@cesko, was macht Dein ESP-NOW Copter, gibt es Neuigkeiten?
 

cesco1

Erfahrener Benutzer
#26
Eigentlich nix grosses
- copter mechanisch stabiler aufgebaut.
- failsafe abschaltung nach 80ms weil ich im garten fliegen war.
- telemetrie getestet (az & el winkel, läuft gut)
- sendekonverter tx nach rx synchronisiert

Geplant aber zu faul:
- normale esc ansteuerung über pwm um das projekt mehr leuten zugänglich zu machen.
- mahony oder magdewick data merger anstatt complimentary filter.
- auf mpu9250 umstellen (wegen kompass) und gps - RTH code einbauen.


3 Zeilen für den SERVER. Der kann dann in Zukunft selbst bestimmen, was in den Zeilen angezeigt werden soll
Genial !
Nur noch eine seiter der soft ändern. Werde ich übernehmen.
Wie machst du sprintf(), int nach string wandlung?

:!: Auslieferung jan 2018 .. "project failed" steht da. :!:

https://www.indiegogo.com/projects/espcopter#/updates/all
 
Zuletzt bearbeitet:

Minimalist

Neuer Benutzer
#27
Die erste OLED-Teilung funktioniert. :)

Ist noch etwas "schmuddelig" programmiert. Ich wollte auch doppelte Schriftgröße mit dabei haben. So habe ich in diesem Beispiel die Spannung des Robot-Cars in doppelter Größe dargestellt. Das stellt die Software des Robot-Cars ein. Meist ist die Lipo Spannung des Gefährts ja die wichtigste und sollte auf den ersten Blick erfassbar sein.
( Da soll doch schon mal jemand einen Lipo tiefentladen haben ... :rolleyes: )

Code:
void read_A0Voltage(void)
{
 // read the input on analog pin 0:
 A0Value = analogRead(A0);
 // Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 10.0V):
 float A0Voltage = A0Value * (10.0 / 1023.0);
// Serial.println(A0Value);
// Serial.println(A0Voltage);
 sprintf((char *)&message[1],"%.2fV",A0Voltage);
 message[0]=strlen((char *)message+1)+1;  // value + (V)
 message[0] |= 0x80; // mark double size
}
So sieht das zB aus. message[0] ist der Descriptor von message-1. Die Typkonvertierungen nerven, aber der Compiler ist sehr pingelig. ;)
Funktioniert zZ nur mit der ersten message von dreien. Ich wollte schon mal sehen, wie's aussieht. :D

Die ersten drei Zeilen:
1. Senderakku Spannung - Senderate
2. Stickwerte in HEX
3. Potiwerte in HEX

Irgendwas musste ich ja schon mal darstellen.

edit: ich habe einen 680k Widerstand zwischen Lipo und ESP-A0 gelötet.
 

Anhänge

Zuletzt bearbeitet:

cesco1

Erfahrener Benutzer
#28
Kleiner test. PID / rates sind immer noch nicht gut. Dafür läuft sprintf, danke.

[video=youtube;OhVVPzNwx6M]https://www.youtube.com/watch?v=OhVVPzNwx6M[/video]

Ich hab auch ne version für normale ESC aber ungetestet.

Das hier ist telemetrie über espnow. Gyrodaten.

[video=youtube;0AWHVxgIqno]https://www.youtube.com/watch?v=0AWHVxgIqno[/video]
 
Zuletzt bearbeitet:

Minimalist

Neuer Benutzer
#29
Der fliegt ja prima, also ist der ESP8266 auch für einen Quadro gut zu gebrauchen. :D
Mal schauen, was noch so in meinen Bastelecken vor sich hin schlummert ...
 

handuc

Erfahrener Benutzer
#30
Super was per espnow so machbar ist! Leider zu wenig Resonanz, scheinbar kauft man inzwischen lieber als selber was zu kreieren :-(.
Ich finde es prima, das der espnowcopter mit so wenig Hardwareaufwand so gut fliegt :) !!!
Es kribbelt schon in den Fingern ....
Spätestens nach Ostern bin ich dabei, Material ist genug vorhanden
 

Minimalist

Neuer Benutzer
#32
Super, danke.
Ich denke grade darüber nach, dass sich damit auch leicht eine Lagestabilisierung für eine Kamera realisieren ließe, gesteuert von zwei Servos.
 

handuc

Erfahrener Benutzer
#33
Auch von mir, besten Dank das Du die Sourcen frei gegeben hast. Ich habe noch ein ZMR 250 Frame, da passt ein NodeMCU Board perfekt.
 
#34
Hallo ihr,

Ich bin Kermit und neu im Forum mit FPV hab ich noch nicht so viel am Hut ich bin aber durch
cesco1/ PepeTheFroggi ´s espCopter hier gelanded.
Ich hab mir den Code deiner ESP-Now RC-TX mal genommen und um ein Display , zwei Taster und klein kram erweitert. kermit943/espnow_RC_TX
Im Moment steck alles noch aufm Breadboard ist aber Funktions tüchtig, zumindest so das ich am ESP-Copter Prototyp die daten empfangen und Seriel auswerten konnte.

photo_2018-06-11_19-22-44.jpg

Der plan ist das ganze im 3D-Gedrucktengehäuse an die Funke zuklemmen. PPM Signal bekomme ich über die Lehrer-Schüler/PC-Link Buchse auf der Rückseite (Modelcraft FS T6).

Die Mac-Adressen lassen sich jetzt via Taster und Display bequem beim Start wählen und um panik zu vermeiden, liest der ADC via Spannungsteiler die Spannung vom Akku des Senders.
Ich will noch die Copter-Spannung via Telemetrie empfangen und auf dem Display anzeigen lassen.

Jetzt Fehlt noch der ESP-Copter, erstmal ein bebürsteter MicroCopter aber dem wird noch bisschen dauern, Transen kommen aus China.
 

brm

Erfahrener Benutzer
#35
>PS: schön, dass das 0xF5 Protokoll noch lebt.
würde mich dafür interessieren.
gibt es daze irgendwo ein beschreibung?

danke!
 

cesco1

Erfahrener Benutzer
#36
> würde mich dafür interessieren.
> gibt es daze irgendwo ein beschreibung?

Blueseries simonk uart firmware - RC Groups

Ich schäze an dem protokoll dass es minimal und funktional ist. Steps sind 200 per motor, oder 250 mit mod. Bytes sind "anzahl motoren" plus 1 syncbyte, 0xF5. Ich bin das schon mit 125kbaud geflogen, kein problem.

Sorry für delay, bin nach SZ umgezogen (35% wniger steuern) und hab ein altes haus gekauft. Keine zeit für nix mehr ausser renovation / umbau / gartenarbeit.
 
Zuletzt bearbeitet:
RCLogger

FPV1

Banggood

Banggood

Oben