Fernsteuerung per WLAN
-
- Beiträge: 328
- Registriert: 06.06.2013 20:37
- Computerausstattung: Satellite A210-19Z, Samsung Netbook N130, VPAD10
Fernsteuerung per WLAN
Hallöchen,
ich habe ein Flugmodell welches über WLAN gesteuert wird.
Vom Ansatz erst mal einfach.
- Befehle vom PC an das Modell senden.
- Parameter vom Modell empfangen.
- Videostreaming vom Modell empfangen.
Wie geht man da ran um soetwas zu programmieren (also diese drei Teile)?
EDIT: Betriebssystem Windows XP oder Win 7
LG
Wolfgang
ich habe ein Flugmodell welches über WLAN gesteuert wird.
Vom Ansatz erst mal einfach.
- Befehle vom PC an das Modell senden.
- Parameter vom Modell empfangen.
- Videostreaming vom Modell empfangen.
Wie geht man da ran um soetwas zu programmieren (also diese drei Teile)?
EDIT: Betriebssystem Windows XP oder Win 7
LG
Wolfgang
Satellite A210-19Z, Samsung N130, VPAD10, WinXP, Win7, PuppyLinux, PB 5.24, 5.31. 5.70
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
- NicTheQuick
- Ein Admin
- Beiträge: 8809
- Registriert: 29.08.2004 20:20
- Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti - Wohnort: Saarbrücken
Re: Fernsteuerung per WLAN
Du musst halt das Protokoll kennen, über das kommuniziert werden soll. Das ist vermutlich eine einfache TCP- oder UDP-Verbindung, also prinzipiell nichts schwieriges.
Wenn du das Protokoll nicht kennst, dann gibt es aber wahrscheinlich schon ein Programm, mit dem das eh schon geht, oder? Dann muss man eben die Netzwerkdaten mitschneiden.
Wenn du das Protokoll nicht kennst, dann gibt es aber wahrscheinlich schon ein Programm, mit dem das eh schon geht, oder? Dann muss man eben die Netzwerkdaten mitschneiden.
-
- Beiträge: 328
- Registriert: 06.06.2013 20:37
- Computerausstattung: Satellite A210-19Z, Samsung Netbook N130, VPAD10
Re: Fernsteuerung per WLAN
Das Protokoll ist in dieser Doku beschrieben:
http://abstract.cs.washington.edu/~shwe ... _Guide.pdf
Auf Seite 17 geht es los.
Es gibt bereits verschiedene Steuersoftware für Windows, Linux, Ipad, Android
Bisher habe ich nur eines für Windows gefunden welches auf meinem Netbook läuft und da fehlen mir Funktionen die ich künftig gerne hätte.
Was es z.B. bisher noch nicht gibt, und zwar in keiner Software, die Steuerung der eingebauten Kamera.
Es geht dabei um eine Drone mit HD-Kamera.
Im Original ist die Kamera fest eingebaut. Ich möchte sie soweit modifizieren, dass sie über die Software geneigt werden kann.
Das geht nur, wenn man eine eigene Software hat in der man das eben einbauen kann wie man will.
Wo fängt man am besten an? Mit der Videoübertragung, weil das wohl das komplizierteste ist?
http://abstract.cs.washington.edu/~shwe ... _Guide.pdf
Auf Seite 17 geht es los.
Es gibt bereits verschiedene Steuersoftware für Windows, Linux, Ipad, Android
Bisher habe ich nur eines für Windows gefunden welches auf meinem Netbook läuft und da fehlen mir Funktionen die ich künftig gerne hätte.
Was es z.B. bisher noch nicht gibt, und zwar in keiner Software, die Steuerung der eingebauten Kamera.
Es geht dabei um eine Drone mit HD-Kamera.
Im Original ist die Kamera fest eingebaut. Ich möchte sie soweit modifizieren, dass sie über die Software geneigt werden kann.
Das geht nur, wenn man eine eigene Software hat in der man das eben einbauen kann wie man will.
Wo fängt man am besten an? Mit der Videoübertragung, weil das wohl das komplizierteste ist?
Satellite A210-19Z, Samsung N130, VPAD10, WinXP, Win7, PuppyLinux, PB 5.24, 5.31. 5.70
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
-
- Beiträge: 328
- Registriert: 06.06.2013 20:37
- Computerausstattung: Satellite A210-19Z, Samsung Netbook N130, VPAD10
Re: Fernsteuerung per WLAN
Ja wie fange ich denn nun an?
- Habe auf dem PC eine WLan - Verbindung zur Drone eingerichtet
- Auf dieser Seite https://www.robotappstore.com/Knowledge ... FI/96.html
steht die Basisinfo.
Wie sieht denn nun eine einfaches Programm mit Editfeld für die Befehlszeile aus um einen Befehl an die Drone zu senden?
Wie kann ich das Livebild der Kamera empfangen und anzeigen?
LG
Wolfgang
- Habe auf dem PC eine WLan - Verbindung zur Drone eingerichtet
- Auf dieser Seite https://www.robotappstore.com/Knowledge ... FI/96.html
steht die Basisinfo.
Wie sieht denn nun eine einfaches Programm mit Editfeld für die Befehlszeile aus um einen Befehl an die Drone zu senden?
Wie kann ich das Livebild der Kamera empfangen und anzeigen?
LG
Wolfgang
Satellite A210-19Z, Samsung N130, VPAD10, WinXP, Win7, PuppyLinux, PB 5.24, 5.31. 5.70
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
Re: Fernsteuerung per WLAN
ich persönlich fange immer mit dem einfachsten an. Wenn ich beispielsweise die Funktionenderschutzhund hat geschrieben:Wo fängt man am besten an? Mit der Videoübertragung, weil das wohl das komplizierteste ist?
einer mir unbekannten DLL aufrufen will, gebe ich mir zuerst die Versionsnummer aus (sofern
vorhanden). Wenn das geklappt hat, traue ich mich Schritt für Schritt an die nächstkomplizierteren
Funktionen heran.
Hast Du denn schon eine grundlegende Kommunikation mit Deiner Drohne hinbekommen?
Grüße ... Kiffi
a²+b²=mc²
Re: Fernsteuerung per WLAN
Probier doch das erstmal aus:
UDP Port 5556 und jeder Befehl wird mit CR abgeschlossen.
UDP Port 5556 und jeder Befehl wird mit CR abgeschlossen.
Code: Alles auswählen
;How to Horizontally Calibrate AR.Drone
If InitNetwork() = 0
End
EndIf
*buffer = AllocateMemory(1024)
con = OpenNetworkConnection("192.168.1.1", 5556, #PB_Network_UDP)
If con
command$ = "AT*FTRIM=1" + Chr(13)
PokeS(*buffer, command$, Len(command$), #PB_Ascii)
SendNetworkData(con, *buffer, Len(command$))
CloseNetworkConnection(con)
EndIf
End
Code: Alles auswählen
;How to Control AR.Drone LEDs
If InitNetwork() = 0
End
EndIf
*buffer = AllocateMemory(1024)
con = OpenNetworkConnection("192.168.1.1", 5556, #PB_Network_UDP)
If con
command$ = "AT*LED=1,0,1056964608,4" + Chr(13)
PokeS(*buffer, command$, Len(command$), #PB_Ascii)
SendNetworkData(con, *buffer, Len(command$))
CloseNetworkConnection(con)
EndIf
End
PB v5.72 x86/x64
Windows 10 Pro 64bit
Windows 10 Pro 64bit
-
- Beiträge: 328
- Registriert: 06.06.2013 20:37
- Computerausstattung: Satellite A210-19Z, Samsung Netbook N130, VPAD10
Re: Fernsteuerung per WLAN
Hallo chris,
ist funktioniert!
Damit kann ich grundsätzlich Befehle an man Drönchen senden.
Wie kann ich Parameter abfragen?
LG
Wolfgang
EDIT: Kannst du damit was anfangen?
ist funktioniert!
Damit kann ich grundsätzlich Befehle an man Drönchen senden.
Wie kann ich Parameter abfragen?
LG
Wolfgang
EDIT: Kannst du damit was anfangen?
Controlling and configuring the drone is done by sending AT commands on UDP port 5556.
The transmission latency of the control commands is critical to the user experience. Those
commands are to be sent on a regular basis (usually 30 times per second). The list of available
commands and their syntax is discussed in chapter 6.
Information about the drone (like its status, its position, speed, engine rotation speed, etc.),
called navdata, are sent by the drone to its client on UDP port 5554. These navdata also include
tags detection information that can be used to create augmented reality games. They are sent
approximatively 15 times per second in demo mode, and 200 times per second in full (debug)
mode.
A video stream is sent by the AR.Drone to the client device on port 5555 (UDP for AR.Drone
1.0 , TCP for AR.Drone 2.0 ). Images from this video stream can be decoded using the codec
included in this SDK. Its encoding format is discussed in section 7.2.
A fourth communication channel, called control port, can be established on TCP port 5559 to
transfer critical data, by opposition to the other data that can be lost with no dangerous effect.
It is used to retrieve configuration data, and to acknowledge important information such as the
sending of configuration information.
Satellite A210-19Z, Samsung N130, VPAD10, WinXP, Win7, PuppyLinux, PB 5.24, 5.31. 5.70
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
Re: Fernsteuerung per WLAN
Geht die Frage auch genauer?
Du musst 3 Server erstellen (CreateNetworkServer()) auch mit dem UDP flag und den angegebenen Ports.
Mit ReceiveNetWorkData() fängst du dann die Daten, die von der Drone gesendet werden ab.
In dem Dokument das du gerade zitiert hast steht dann drin, wie genau diese Daten aufgebaut sind, so dass du sie aufschlüsseln kannst.
Du musst 3 Server erstellen (CreateNetworkServer()) auch mit dem UDP flag und den angegebenen Ports.
Mit ReceiveNetWorkData() fängst du dann die Daten, die von der Drone gesendet werden ab.
In dem Dokument das du gerade zitiert hast steht dann drin, wie genau diese Daten aufgebaut sind, so dass du sie aufschlüsseln kannst.
Signatur und so
-
- Beiträge: 328
- Registriert: 06.06.2013 20:37
- Computerausstattung: Satellite A210-19Z, Samsung Netbook N130, VPAD10
Re: Fernsteuerung per WLAN
Klar geht das!Geht die Frage auch genauer?
Weshalb 3 Server? Sind die Server nur zum Empfangen (Informationen, Video)?Du musst 3 Server erstellen (CreateNetworkServer()) auch mit dem UDP flag und den angegebenen Ports.
Senden kann ich mit dem Beispiel ja auch ohne einen Server.
Was sind UDP flags?
Hast du ein Beispielprogramm CreateNetworkServer + ReceiveNetWorkData ?Mit ReceiveNetWorkData() fängst du dann die Daten, die von der Drone gesendet werden ab.
Satellite A210-19Z, Samsung N130, VPAD10, WinXP, Win7, PuppyLinux, PB 5.24, 5.31. 5.70
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Re: Fernsteuerung per WLAN
Wie wäre es, wenn Du Dir erstmal die notwendigen Grundlagen für Netzwerkprogrammierung erarbeitest?
Also, PureBasic.chm, wikepedia, Beispiele hier im Forum usw.
Ohne die notwendigen Grundlagen (ist nicht so schwer
) wirste uns hier ein Loch in den Bauch
fragen.
Wenn Du die Grundlagen verstanden hast, solltest Du auch in der Lage sein, Dein Projekt alleine umzusetzen,
mal abgesehen von dem Videogedöns.
Gruß
Thomas
Also, PureBasic.chm, wikepedia, Beispiele hier im Forum usw.
Ohne die notwendigen Grundlagen (ist nicht so schwer

fragen.
Wenn Du die Grundlagen verstanden hast, solltest Du auch in der Lage sein, Dein Projekt alleine umzusetzen,
mal abgesehen von dem Videogedöns.
Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
