Cuprins:
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
Scopul acestui proiect este de a putea controla de la distanță un GoPro Hero 4 printr-un transmițător RC. Această metodă va utiliza API-ul Wifi și HTTP încorporat GoPro pentru controlul dispozitivului și este inspirat de PROTOTIP: CEL MAI MIC ȘI CELE MAI CHEAPTE REMOTE GOPRO. Dacă aveți un GoPro Hero 3, ar putea fi mai ușor să utilizați portul de autobuz pentru control direct, un ghid de identificare poate fi găsit aici. Dar, deoarece portul autobuzului este dezactivat pe Hero 4 (mulțumesc GoPro!), Va trebui să folosim metoda Wifi. Metoda Wifi funcționează și pe Hero 3, deci mergeți pe acest traseu dacă doriți compatibilitatea încrucișată. Acest lucru necesită anumite cunoștințe despre programarea electronică și arduino.
Să începem:
Pasul 1: Piese
Veți avea nevoie de câteva componente pentru a funcționa:
- GoPro Hero 4 (evident)
- O dronă pentru GoPro
- ESP8266 Modul Wifi programabil
- Cablu FTDI / Convertor USB 2 TTL (pentru intermitent codul către ESP8266)
- LD1117V33 3.3v Regulator de tensiune
- Transmițător / receptor RC
Pasul 2: Cod
ESP8266 este efectiv un Arduino cu capabilități Wifi încorporate. Acest lucru ne permite să profităm de API-ul HTTP GoPro și să facem cereri pe baza intrării GPIO. O listă a comenzilor Wifi pe care le puteți face poate fi găsită la:
În codul meu. Am programat ESP8266 pentru a detecta dacă un buton este pornit sau oprit prin decodarea semnalului PPM al receptorului radio RC. Apoi utilizați sincronizarea, pentru a detecta cât timp a fost apăsat butonul. Dacă butonul este apăsat mai puțin de 0,5 secunde, acesta va declanșa GoPro. Dacă butonul este apăsat mai mult de 0,5 secunde, acesta va trece prin modurile de captare de pe GoPro. Aceasta este cea mai bună soluție cu care aș putea veni pentru dronele FPV.
Notă: dacă nu aveți posibilitatea de a vedea afișajul live al GoPro, vă recomandăm să ajustați codul pentru utilizarea dvs. specifică. Altfel nu veți ști în ce mod este.
Codul
Acest cod a fost pus la punct de către Bohdan Tomanek (emerysteele), unele componente au fost împrumutate din diverse surse de pe internet. Sursa principală de informații este de pe https://euerdesign.de și
Pasul 3: Cablarea ESP8266 pentru intermitent
* Adaptorul meu FTDI avea o șină de alimentare de 3,3 v, dar nu era suficient pentru a alimenta unitatea ESP8266. Așadar, vă sugerez să utilizați o altă sursă de alimentare de 3.3v, cum ar fi un Arduino, sau puteți utiliza șina de alimentare de 5v furnizată de adaptorul FTDI printr-un regulator de tensiune de 3.3v.
Cod intermitent către ESP8266 folosind Arduino IDE
Pentru a bloca codul către ESP8266, voi folosi Arduino IDE.
- Adăugați această adresă URL a administratorului de bord la ID-ul dvs. Arduino în fereastra Preferințe (Fișier> Preferințe> Adrese URL suplimentare ale administratorului de bord:): arduino.esp8266.com/stable/package_esp8266com_index.json
- Schimbați-vă placa în „Modul ESP8266 generic”
- Conectați adaptorul FTDI la computer prin USB. Nu uitați să scurtați pinul GPIO 0 timp de 2 secunde în timp ce porniți pentru a intra în modul de programare.
- Selectați portul COM adecvat pentru dispozitivul dvs. FTDI și încărcați codul pe dispozitiv. * Uneori, ESP8266 nu clipește corect din orice motiv … Am constatat că repornirea dispozitivului și / sau repornirea ID-ului Arduino pare să rezolve problema.
Pasul 4: Cablare și configurare GoPro
Odată ce codul este intermitent, puteți conecta ESP8266 la receptorul RC, așa cum se arată în imaginea de mai jos:
Acum va trebui să activați modul de aplicație Wifi pe GoPro dacă nu ați făcut-o deja. Dacă aveți, asigurați-vă că potriviți setările wifi din cod cu setările wifi ale GoPro. Va trebui să utilizați aplicația GoPro pentru configurarea Wifi inițial. Dacă trebuie să resetați setările Wifi ale GoPro, acest lucru se poate face din meniul Resetare, apoi reconfigurat utilizând aplicația GoPro.