Turinys:

RC servo valdymas belaidžiu būdu per UDP: 3 žingsniai
RC servo valdymas belaidžiu būdu per UDP: 3 žingsniai

Video: RC servo valdymas belaidžiu būdu per UDP: 3 žingsniai

Video: RC servo valdymas belaidžiu būdu per UDP: 3 žingsniai
Video: naudojant „HJ Digital Servo“ variklį ir „ESC tester“ variklius be šepetėlių [su subtitrais] 2024, Lapkritis
Anonim
Image
Image
Techninė įranga
Techninė įranga

Šiame projekte noriu naudoti savo „iPhone“valdydamas RC servo. Aš naudosiu akselerometrą, kad valdyčiau du servo per UDP ryšį. Tai yra „Proof Of Concept“projektas, skirtas patikrinti, ar ryšys tarp „iPhone“ir išorinio įrenginio gali pasiekti aukštą atnaujinimo greitį (didesnį nei BLE) naudojant UDP.

1 žingsnis: dalių sąrašas

Techninė įranga

  • ESP8266 („Wemos D1 mini pro“) plokštė
  • Du RC servos
  • USB maitinimo blokas kaip maitinimo šaltinis
  • Kai kurie trumpieji laidai
  • „IPhone“ar „iPad“, naudojant „iOS12“
  • „Mac“projektui kurti

Programinė įranga

  • „Arduino IDE“su įdiegta ESP8266 „Arduino“šerdimi: diegimo vadovas
  • „Xcode 10“:
  • Arduino eskizą rasite čia
  • „Swift“„iPhone“programos šaltinis yra čia

2 žingsnis: Aparatūra

Techninė įranga
Techninė įranga

Techninės įrangos sąranka yra labai paprasta. Aš naudoju D1 (pikio) ir D2 (ritinio) išvestį ESP8266, kad valdyčiau atitinkamai RC servus. Plokštė maitinama iš USB maitinimo banko. RC servos yra maitinamos iš plokštės 5v ir GND kaiščio.

3 žingsnis: programinė įranga

„IPhone“valdymo programa parašyta „Swift“, kuri belaidžiu ryšiu jungiasi prie ESP8266 valdiklio plokštės ir valdo „pitch and roll“servo pagal „iPhone“judesio duomenis. Valdiklio plokštė sukuria „Wifi“prieigos tašką ir klauso naujų UDP paketų, kuriuose yra servo padėties informacija kaip baitų srautas tokiu bendru formatu:

Servo indeksas | Pozicija MSB | Pozicija LSB

Servo indeksas yra 1, jei yra žingsnis, arba 2, kai ritinys. Servo padėtis apskaičiuojama iš telefono x, y pakreipimo laipsnių ir konvertuojama į mikrosekundes tarp 1000 ir 2000. Atnaujinimo dažnis yra 20 milisekundžių.

Programa naudoja naują „Network.framework“, kad užmegztų UDP ryšį, todėl ji veikia tik naudojant „iOS 12“ir naujesnes versijas.

Tai yra POC programa, skirta parodyti, kaip lengva naudoti UDP ryšį „iOS 12.“. Kad būtų paprasta, UDP paketai siunčiami atskirai dėl pikio ir ritinio.

Rekomenduojamas: