Taula de continguts:

Control de servidors RC sense fils mitjançant UDP: 3 passos
Control de servidors RC sense fils mitjançant UDP: 3 passos

Vídeo: Control de servidors RC sense fils mitjançant UDP: 3 passos

Vídeo: Control de servidors RC sense fils mitjançant UDP: 3 passos
Vídeo: КАК НАСТРОИТЬ L4D2 2024, Desembre
Anonim
Image
Image
Maquinari
Maquinari

En aquest projecte vull utilitzar el meu iPhone per controlar servos RC. Faré servir l’acceleròmetre per controlar dos servos a través de la connexió UDP. Es tracta d’un projecte Proof Of Concept per verificar que una connexió entre un iPhone i un perifèric pot aconseguir taxes d’actualització elevades (superiors a BLE) mitjançant UDP.

Pas 1: llista de peces

Maquinari

  • Taula ESP8266 (Wemos D1 mini pro)
  • Dos servos RC
  • Un banc d'alimentació USB com a font d'alimentació
  • Alguns cables de pont
  • Un iPhone o iPad amb iOS12
  • Un Mac per construir el projecte

Programari

  • Arduino IDE amb nucli Arduino ESP8266 instal·lat: manual d'instal·lació
  • Xcode 10:
  • L'esbós d'Arduino es pot trobar aquí
  • La font Swift de l'aplicació per a iPhone ja és aquí

Pas 2: maquinari

Maquinari
Maquinari

La configuració del maquinari és molt senzilla. Utilitzo la sortida D1 (pitch) i D2 (roll) de l’ESP8266 per controlar els servos RC respectivament. La placa s’alimenta des d’un banc d’alimentació USB. Els servos RC s’alimenten des dels pins 5v i GND de la placa.

Pas 3: programari

L'aplicació de control per a l'iPhone està escrita en Swift, que es connecta a la placa de control ESP8266 sense fils i controla els servos pitch and roll basats en les dades de moviment de l'iPhone. La placa del controlador crea un punt d’accés Wifi i escolta com s’actualitzen paquets UDP que contenen la informació de posició del servo com un flux de bytes amb el format general següent:

Índex servo | Posició MSB | Posició LSB

L’índex de servo és 1 per al pitch o 2 per al roll. La posició del servo es calcula a partir del grau d’inclinació x, y del telèfon i es converteix en microsegons entre 1000 i 2000. La velocitat d’actualització és de 20 mil·lisegons.

L’aplicació utilitza el nou Network.framework per establir la connexió UDP, de manera que només s’executa a iOS 12 i versions posteriors.

Es tracta d’una aplicació POC per demostrar la facilitat d’ús de la connexió UDP a iOS 12. Per simplificar-ho, els paquets UDP s’envien per separat per al pitch and roll.

Recomanat: