Forum: Mikrocontroller und Digitale Elektronik Arduino WLAN Servo Steuerung


von Jürgen E. (rantan)


Lesenswert?

Hallo,

ich hab mir ein kleines Programm in C geschrieben welches per Joystick 
zwei Servos steuern soll. Der Arduino Uno ist mit einem WLAN 
Modul(RedFly-Shield) ausgestattet. Auf dem Arduino läuft ein 
Programm(Server) welches auf eine Verbindung wartet. Starte ich das 
Client Programm auf einem Linux System verbindet es sich zum Arduino und 
übermittelt ihm vorerst mal nur die Joystick Koordinaten der X-Achse. 
Das funktioniert auch soweit, aber nur sehr langsam. Starte ich hingegen 
auf einem Linux den Server und stelle lokal eine Verbindung her, so 
werden die Daten recht zügig übertragen. So nun zu meiner Frage. Warum 
ist Übertragung so arg verzögert? Liegt es an der WLAN Verbindung bzw. 
am RedFly-Shield oder liegt es vllt. an der Taktfrequenz des Arduinos? 
Vielleicht könnte es ja noch andere Ursachen geben. Die WLAN Verbindung 
würde ich gerne ausschließen, sind ja nur geringfügige Daten die 
übertragen werden.

Grüße Jürgen

von Andreas W. (andreasw) Benutzerseite


Lesenswert?

Eine gewisse Verzögerung hat man durch WLAN auf jeden Fall, so ca. 10-20 
ms.
Was bei der Geschwindigkeit beim RedFly viel ausmacht, ist die Baudrate 
mit der die Kommunikation zwischen Arduino und WiFi-Modul abläuft. Diese 
kann man mit der init() Funktion einstellen:
RedFly.init(115200, HIGH_POWER); //Standard: 9600

Hier ist auch ein ähnliches Projekt:
http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MAIN.ArduinoWifiServeurControleServox2PanTilt

Gruß
Andreas

von Jürgen E. (rantan)


Lesenswert?

Hi,

Der Author in dem Link den du beigelegt hast, nimmt auch die Baudrate 
9600. Ich hab testhalber trotzdem mal 115200 ausprobiert, konnte aber 
keine nennenswerte Verbesserung feststellen. Leider kann ich kein 
französisch, somit bringt mir der Artikel wenig. Danke trotzdem. Hast du 
vielleicht noch einen Vorschlag?

Gruß Jürgen

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.