Salt la conținut
Robotică și programare

Controlul robotului cu Meta Quest: teleoperare și vedere prin ochii robotului

Află cum să folosești Meta Quest pentru teleoperarea roboților, să vezi camera robotului în VR și să controlezi roboți cu Carpathron Avatar pentru experiențe XR imersive.

Person in Meta Quest headset viewing live robot camera feed in a dimly lit studio
Ilustrație generată cu AI.

Entuziaștii XR se întreabă adesea cum să controleze un robot din interiorul unui headset Meta Quest, în timp ce vede exact ce vede robotul.

Răspunsul este să folosești Carpathron Avatar pe Quest 3/3S împreună cu funcționalitățile de SSH și streaming video ale Carpathron Remote.

Cum se integrează Carpathron Avatar cu Meta Quest

Carpathron Avatar este o aplicație nativă pentru Meta Quest 3/3S care transformă camera robotului într-o vizualizare live în interiorul căștii. Când utilizatorul pune Quest-ul, aplicația stabilește un tunel WebSocket securizat către agentul Carpathron Remote care rulează pe un PC cu Windows. Agentul remote acționează ca un pod între Quest și orice robot care suportă protocolul deschis Carpathon Robot Protocol (HTTP + MJPEG). Această arhitectură permite căștii să primească un flux MJPEG cu latență scăzută în timp ce trimite comenzi de control generate din orientarea capului sau din input vocal.

Aplicație nativă Quest și agent remote Windows

Instalarea începe din Quest Store, unde Carpathron Avatar apare ca descărcare gratuită. După lansare, aplicația solicită adresa IP a mașinii Windows care găzduiește agentul Carpathron Remote (Carpathron Remote). Agentul se instalează din pachetul Carpathon Robotics & Coding pentru Windows disponibil pe Microsoft Store. Odată ce conexiunea este verificată, Quest primește o descriere JSON a capacităților robotului – comenzile de mișcare suportate, punctele finale ale senzorilor și URL-urile fluxului video.

Agentul remote gestionează, de asemenea, autentificarea, folosind un token generat pe partea Windows și scanat ca cod QR de Quest. Această asociere unică asigură că doar căștile autorizate pot controla robotul, prevenind controlul accidental în medii cu mai mulți utilizatori.

Open Carpathon Robot Protocol

Protocolul este deliberat ușor: video este servit ca flux MJPEG peste HTTP, în timp ce mesajele de comandă sunt simple solicitări POST cu payload-uri JSON. De exemplu, pentru a muta robotul Baby Carpathon ESP32‑CAM înainte, Quest trimite POST /api/move cu { "direction":"forward", "speed":0.5 }. Robotul confirmă cu un răspuns 200, iar agentul remote redirecționează starea înapoi către căști. Deoarece protocolul se bazează pe tehnologii web standard, dezvoltatorii pot extinde la hardware nou fără a recompila aplicația Quest.

Toate robotul care participă la proiect – de la mașina ESP32‑CAM la viitorii umanoizi modulari – implementează același set de puncte finale, pe care aplicația Avatar le citește din punctul final /api/spec al robotului. Această uniformitate înseamnă că aceeași versiune Quest funcționează pe întreaga linie Carpathon.

Link către proiectul mai larg de robotică Carpathon

Specificațiile detaliate ale Carpathron Avatar, agentului Remote și protocolului robotului sunt documentate pe pagina Carpathon robotics. Această pagină descrie intrarea la Meta Global AI Developer Hackathon 2026, canalul de control text/voce WhatsApp și viziunea pe termen lung a roboților umanoizi modulari utilitari. Consultând acea pagină, dezvoltatorii pot vedea cod de exemplu, referințe API și diagrame de implementare care ilustrează cum se încadrează aplicația Quest în ecosistemul global.

În practică, fluxul de integrare constă din trei pași: instalați aplicația Avatar pe Quest, instalați agentul Carpathron Remote pe un PC Windows și asigurați-vă că robotul este accesibil pe aceeași rețea și vorbește protocolul Carpathon Robot. Odată aliniate aceste componente, utilizatorul poate să se uite în jur, să pronunțe comenzi și să experimenteze o perspectivă „see‑through” adevărată a robotului în interiorul Meta Quest.

Configurarea robotului și Quest pentru teleoperare

Începe prin a flasa firmware-ul Carpathen Robot Protocol pe placa ESP32‑CAM. Descarcă cea mai recentă versiune binară de pe pagina Carpathron Robotics & Coding, apoi conectează placa la PC prin USB. Rulează comanda esptool.py --chip esp32 write_flash -z 0x1000 carpathron_firmware.bin și așteaptă mesajul de confirmare.

După ce flash-ul se termină, aprinde placa și deschide un browser pe aceeași rețea Wi‑Fi. Navighează la http://board_ip/setup și activează fluxul HTTP + MJPEG prin comutarea opțiunii „Video Stream”. Salvează setările; placa va reporni și va expune fluxul la http://board_ip/mjpeg. Verifică feed-ul accesând URL-ul într-un browser desktop.

Următorul pas este să instalezi aplicația Carpathron Avatar pe Meta Quest. Deschide Meta Store, caută „Carpathron Avatar” și selectează „Install”. Aplicația înregistrează headset-ul ca client pentru endpoint‑ul HTTP al robotului.

Asociază Quest cu rețeaua Wi‑Fi a robotului. În meniul Quest Settings, mergi la Device > Wi‑Fi, găsește SSID‑ul difuzat de ESP32‑CAM (de exemplu, Carpathron_AP) și introdu parola afișată pe pagina de configurare a plăcii. Odată conectat, pornește aplicația Carpathron Avatar; aceasta va detecta automat adresa IP a robotului prin mDNS.

În final, configurează legăturile de control. În aplicația Avatar, deschide Settings > Controls și mapă „Head Turn” la comanda de direcție a robotului (/move?dir=left / /move?dir=right) și „Voice Command” la endpoint‑ul de încărcare (/upload). Testează conexiunea prin a spune „Start video” și confirmă că feed-ul MJPEG live apare în vizualizarea Quest.

  1. Descarcă firmware-ul de pe pagina produsului și flasează-l cu esptool.py.
  2. Conectează ESP32‑CAM la Wi‑Fi și activează fluxul HTTP + MJPEG prin UI‑ul web al plăcii.
  3. Instalează aplicația Carpathron Avatar pe Meta Quest prin Meta Store.
  4. Asociază headset-ul Quest cu rețeaua Wi‑Fi a robotului folosind parola afișată pe pagina de configurare.
  5. Pornește aplicația Avatar; aceasta va descoperi automat IP‑ul robotului.
  6. Mapă mișcările capului și comenzile vocale la endpoint‑urile HTTP ale robotului în setările de control ale aplicației.
  7. Rulează un test rapid: spune „Start video” și verifică că feed-ul MJPEG apare în headset.
  8. Salvează configurația și repornește ambele dispozitive pentru a asigura persistarea asocierii.

Sfat: Menține versiunea firmware‑ului robotului aliniată cu cea mai recentă versiune Carpathron Avatar; versiuni neconcordante pot cauza creșteri de latență în fluxul MJPEG.

Conectarea la robot de la Meta Quest

Pornește Carpathron Remote pe PC-ul gazdă

Instalează clientul Windows Carpathron Remote din Microsoft Store și rulează-l pe un PC care se află în aceeași rețea locală ca robotul. După ecranul de pornire, apasă New Session. Aplicația generează un ID de sesiune unic și un cod OTP (parolă de o singură utilizare) care apar în panoul Session Details. Copiază ambele valori în clipboard – sunt necesare pentru conexiunea Quest.

Generează credențialele de sesiune

ID-ul este un șir alfanumeric de 12 caractere, de exemplu AB12CD34EF56. OTP-ul este un cod numeric de șase cifre care expiră după 10 minute. Dacă OTP-ul expiră, apasă Regenerate OTP în Carpathron Remote; noul cod înlocuiește cel vechi fără a schimba ID-ul sesiunii. Menține PC-ul pornit; serviciul remote se închide automat când gazda se oprește sau sesiunea este închisă.

Alătură-te sesiunii din aplicația Meta Quest

Lansează aplicația Carpathron Avatar pe headsetul Quest. Din meniul principal selectează Connect to Remote. Apare un tastatură virtuală; introdu ID-ul sesiunii exact așa cum apare în clientul PC, apoi apasă Next. Ecranul următor solicită OTP-ul – tastează codul de șase cifre și confirmă. Headsetul stabilește un tunel WebSocket securizat către PC, iar fluxul video al robotului apare în vizualizarea Avatar.

Limitări ale licenței personale gratuite

Licența personală gratuită permite o sesiune activă simultan și limitează rezoluția video la 720p. Lățimea de bandă este limitată la 5 Mbps, suficientă pentru majoritatea scenariilor de teleoperare în interior, dar poate provoca pierderi ocazionale de cadre pe rețele Wi‑Fi congestive. Utilizatorii pot crea până la trei ID-uri de sesiune distincte pe lună; fiecare ID trebuie folosit în fereastra OTP de 10 minute. Pentru configurări multi-robot extinse sau fluxuri de rezoluție mai mare, actualizarea la o licență Pro elimină aceste restricții.

Depanarea problemelor comune de conexiune

  • Firewall PC blochează traficul: Adaugă o regulă de intrare pentru carpathron-remote.exe pe porturile 443 (TLS) și 8080 (video).
  • Izolație Wi‑Fi: Asigură-te că Quest și PC-ul gazdă sunt pe același SSID și că routerul nu separă dispozitivele client.
  • OTP expirat: Regeneră parola în clientul PC și reintrodu-o pe Quest înainte de expirare.

Când conexiunea este stabilă, headsetul Quest afișează fluxul camerei robotului într-un panou flotant. Utilizatorii pot acum trece la pasul următor – controlarea robotului cu mișcări ale capului și comenzi vocale.

Controlarea robotului cu mișcările capului și vocea

Trackingul capului ca volant

Avatarul Carpathen citește datele de orientare cu șase grade de libertate ale Meta Quest prin SDK-ul Meta Muse. Fiecare schimbare de cuplu de mai mult de 5° este tradusă într-o comandă de viteză diferențiată a roților trimisă la punctul final HTTP al robotului (/control/steer). De exemplu, virarea capului cu 15° spre dreapta generează un payload JSON {"left":120,"right":80} care face roata din dreapta mai încet, provocând o virare spre dreapta. Aceeași logică se aplică și la înclinare pentru mișcări înainte și înapoi când utilizatorul incline headset-ul în sus sau în jos.

Pentru a activa această mapare, deschide aplicația Avatar Carpathen pe Quest, navighează la Setări → Control Mapping și selectează „Head‑Steer”. Aplicația înregistrează automat fluxul de rotație al headset-ului și începe să publice comenzi către adresa IP a robotului, introdusă în timpul pasului de perechere.

Comenzi vocale prin WhatsApp

Demo-ul hackathonului de pe pagina /robotics arată o integrare WhatsApp care direcționează instrucțiunile vorbite către robot. După ce ai asociat numărul tău WhatsApp în panoul de control Muse, serviciul Meta Muse creează un webhook temporar de voce‑la‑text. Când spui „stop” sau „increase speed”, fraza vorbită este transcrisă, potrivită cu o tabelă de comenzi și transmisă ca HTTP POST la http://<robot_ip>/command cu un corp JSON simplu, de ex. {"action":"stop"}.

Pentru a testa pipeline-ul, trimite un mesaj vocal către numărul WhatsApp desemnat în timp ce porți Quest-ul. Consola Muse va afișa textul recunoscut și cererea HTTP rezultată. Poți extinde setul de comenzi editând fișierul commands.yaml din depozitul Carpathen pe GitHub (github.com/qubitpage) și redeployând webhook-ul.

Combinarea capului și a vocii pentru manevre precise

Sarcini complexe cum ar fi „navighează la markerul roșu” sunt împărțite în două etape. În primul rând, îndrepți robotul aliniind vizualizarea Quest cu ținta; avatarul trimite un flag „lock‑direction” către robot. În al doilea rând, emiti o comandă vocală „mută înainte zece secunde”. Robotul execută mișcarea temporizată menținând direcția blocată, permițând navigație fără mâini în medii aglomerate.

În cadrul Meta Global AI Developer Hackathon 2026, echipa a demonstrat acest flux conducând un Baby Carpathen ESP32‑CAM printr-un labirint, folosind doar viraje de cap și comenzi vocale trimise prin WhatsApp. Latentța măsurată pe Quest a fost sub 120 ms, bine în limita pragului pentru teleoperare lină.

Sfat: Calibrează orientarea de bază a headset-ului înainte de fiecare sesiune (Setări → Calibrare). Un punct zero constant previne deriva și asigură că mișcările mici ale capului se traduc în ajustări precise ale roților.

Compararea caracteristicilor: planuri Free, Pro și Max pentru controlul robotului

Serviciul Carpathron Remote oferă trei niveluri care determină cât timp poți opera un robot, câte roboți poți gestiona simultan și nivelul de asistență AI‑tehnician pe care îl primești. Toate nivelurile oferă acces la interfața principală de teleoperare Meta Quest, dar se diferențiază prin limitele de resurse și opțiunile de suport.

Plan Lungime sesiune Număr roboți Suport AI tehnician Preț
Free Până la 30 minute per sesiune 1 robot Forum comunitar doar Gratuit
Pro Până la 4 ore per sesiune 5 roboți Chat live cu AI tehnician (orele de lucru) Vezi pagina de prețuri
Max Lungime sesiune nelimitată Roboți nelimitati AI tehnician dedicat 24/7 + actualizări prioritare Vezi pagina de prețuri

Planul Free este ideal pentru pasionați care doresc să experimenteze cu un singur robot pentru perioade scurte. Oferă urmărirea capului și comenzile vocale de bază fără asistență directă de la tehnicienii AI ai Qubitpage.

Profesioniștii care au nevoie de ferestre operaționale mai lungi și de capacitatea de a comuta între mai multe platforme—cum ar fi o mașină ESP32‑CAM, un rover Raspberry Pi sau un model Meta Muse—ar trebui să ia în considerare planul Pro. Suportul de chat live ajută la rezolvarea erorilor de încărcare a firmware-ului sau a problemelor de conectivitate fără a părăsi mediul VR.

Întreprinderile care implementează umani modulari utilitari sau rulează stații de monitorizare continue beneficiază de planul Max. Sesiunile nelimitate elimină necesitatea repornirii aplicației Quest, iar canalul de tehnician 24/7 asigură că orice diagnostic AI este abordat instantaneu, menținând timpul de nefuncționare la minimum.

Toate cele trei planuri se integrează cu aplicația Carpathron Avatar disponibilă pe Microsoft Store. Când selectezi un plan în aplicație, limitele corespunzătoare sunt impuse automat, prevenind suprasolicitarea accidentală. Comutarea între niveluri se realizează prin portalul de gestionare la distanță, unde poți, de asemenea, să upgradezi sau downgradezi fără a reinstala software-ul.

Alegerea nivelului potrivit depinde de fluxul tău de lucru: demonstrații scurte în clasă, încercări extinse pe teren sau implementări de producție la scară largă. Tabelul de mai sus rezumă diferențele cheie, permițându-ți să asociezi planul cu cerințele operaționale ale flotei tale de roboți.

Optimizarea calității video și a latenței în VR

Avatarul Carpathron transmite un flux MJPEG de la ESP32‑CAM-ul robotului către căștile Meta Quest. Pentru a obține o vizualizare lină, trebuie să echilibrați bitrate-ul, configurarea rețelei și setările de afișare ale Quest-ului. Mai jos găsiți pași concreți care reduc pierderea cadrelor și neclaritățile vizuale fără a compromite reacția robotului.

1. Configurați fluxul MJPEG al robotului

  • Deschideți fișierul de configurare Carpathen Robot Protocol carpathron.cfg pe ESP32‑CAM.
  • Setați mjpeg_bitrate_kbps=2500 pentru un flux HD 720p; reduceți la 1500 dacă legătura Wi‑Fi este congestivă.
  • Activați frame_rate=30 pentru a menține mișcarea fluidă, dar limitați la 20 fps când utilizați o rețea 2.4 GHz pentru a evita pierderea pachetelor.
  • Salvați fișierul și reporniți robotul: system_restart() din consola Carpathron.

2. Optimizați setările rețelei pe Quest

Dispozitivele Meta Quest preferă o conexiune Wi‑Fi stabilă pe 5 GHz. Folosiți următoarea listă de verificare:

  1. Conectați Quest-ul la același SSID ca robotul; evitați rețelele publice sau cele de oaspeți care izolează dispozitivele.
  2. În setările Wi‑Fi ale Quest-ului, activați „Advanced Router Settings” și setați canalul la 36–48 pentru a reduce interferențele.
  3. Dezactivați „Background App Refresh” pentru aplicațiile neesențiale pentru a elibera lățimea de bandă.
  4. Activați „Low‑Latency Mode” în Opțiunile pentru Dezvoltatori ale Quest-ului (Settings → System → Developer).

3. Ajustați opțiunile de afișare ale Quest pentru latență redusă

Quest-ul redă video-ul primit ca textură. Reducerea rezoluției de randare poate reduce latența cu până la 15 ms:

  • Deschideți Settings → Device → Display și setați „Render Resolution” la 80 % din valoarea implicită.
  • Opriți „Dynamic Foveated Rendering” dacă observați fantome; compromisul este o creștere moderată a sarcinii GPU, dar margini mai clare.
  • Activați „Motion Smoothing” doar când rata de cadre scade sub 72 fps; altfel mențineți-o dezactivată pentru a păstra mișcarea reală a robotului.

4. Sfat pentru gestionarea lățimii de bandă

Sfat: Rezervați un canal dedicat 5 GHz pentru perechea robot‑Quest. Pe router, creați un VLAN sau o rețea de oaspeți cu o lățime maximă de 10 Mbps în sensul ascendent și 20 Mbps descendent. Aceasta izolează traficul, împiedică aplicațiile de streaming de pe alte dispozitive să limiteze fluxul MJPEG și menține latența sub 80 ms.

5. Verificați performanța în timp real

Lansați Avatarul Carpathron de pe pagina Products și deschideți panoul de diagnostic integrat (apăsați butonul de meniu al controlerului stâng). Panoul afișează bitrate-ul curent, latența cadrelor și pierderea pachetelor. Vizați bitrate ≥ 2 Mbps, latență ≤ 80 ms și pierderea pachetelor ≤ 1 %. Dacă vreun parametru depășește aceste praguri, reduceți bitrate-ul MJPEG cu 200 kbps și repetați testul.

Aliniind setările fluxului robotului, configurarea rețelei Quest-ului și opțiunile de afișare, puteți obține un link vizual clar și cu latență scăzută, care să se simtă ca și cum ați privi prin ochii robotului.

Întrebări frecvente

Cum pot transmite camera unui robot pe Meta Quest fără hardware suplimentar?

Aplicația Carpathon Avatar pe Meta Quest 3/3S se conectează direct la camera încorporată a robotului prin protocolul deschis Carpathon Robot Protocol. Robotul rulează un server HTTP care servește un flux MJPEG, pe care clientul Quest îl consumă în timp real. Nu sunt necesare carduri de captură externe sau adaptoare HDMI; singura cerință este ca robotul și căștile să fie pe aceeași rețea Wi‑Fi.

Pot controla mai mulți roboți de pe o singură căști Quest?

Da. Interfața Carpathon Avatar include un selector de roboți care afișează fiecare dispozitiv care difuzează protocolul Carpathon Robot pe subnetul local. Prin atingerea numelui unui robot, căștile schimbă feedul video și legăturile de control către acea unitate. Poți trece prin orice număr de roboți fără a reporni aplicația, atâta timp cât fiecare robot este accesibil pe rețea.

Care sunt măsurile de securitate pentru sesiunile de robot la distanță?

Toată comunicația Carpathon este împachetată în HTTP criptat TLS, iar fiecare robot necesită un token unic generat în tabloul de bord Carpathon Robotics. Tokenul trebuie introdus în aplicația Quest înainte ca sesiunea să poată fi stabilită, prevenind conexiunile neautorizate. În plus, firmware-ul robotului poate fi configurat să accepte conexiuni doar de la intervale IP alăturate.

Licența gratuită Carpathron Remote suportă modul de vizualizare numai, fără limită?

Licența gratuită acordă acces nelimitat în modul doar-vizualizare la orice robot care rulează serverul Carpathon Remote. Poți deschide atât fluxuri video simultane pe cât permite lățimea de bandă a rețelei tale, însă licența nu include injectarea de comenzi la distanță sau actualizări firmware. Pentru funcționalități de control complet, este necesară o licență plătită.

Este necesar un tehnician AI pentru controlul robotului pe Quest?

Nu. Carpathon Avatar oferă o interfață UI gata făcută pentru navigație, direcționare a camerei și acțiuni de bază ale robotului, toate funcționând din cutie. Funcția de tehnician AI din Carpathon Robotics & Coding este opțională și necesară doar când vrei ca sistemul să genereze sau să modifice firmwareul automat. Teleoperarea standard poate fi efectuată de orice utilizator cu căștile și un token valid.

Începeți cu controlul robotului Meta Quest

Instalați aplicația Carpathron Avatar pe Quest 3 sau 3S din Meta Store, apoi asociați căștii cu agentul Windows Muse Carpathron care rulează pe un PC conectat la aceeași rețea Wi‑Fi. Lansați aplicația, selectați Conectează-te la Robot și introduceți adresa IP a robotului (de exemplu, 192.168.1.42) afișată în interfața Windows.

Odată conectat, activați modul Vizibilitate printr-o‑părere în setările avatarului; căștile transmit fluxul video MJPEG al robotului prin HTTP, permițându-vă să vedeți mediul direct în câmpul vizual. Folosiți rotația capului pentru a ghida: virarea la stânga sau la dreapta trimite un comanda /steer?angle=-15 sau /steer?angle=15 la punctul final Carpathron Robot Protocol al robotului.

Pentru control vocal, deschideți conversația WhatsApp asociată cu numărul robotului, tastați sau vorbiți o comandă, cum ar fi „mutați înainte zece centimetri”, iar agentul Windows o traduce în cererea HTTP corespunzătoare. Testați fiecare comandă într-un spațiu deschis și sigur înainte de a opera în zone restrânse.

Urmați acești pași pentru a experimenta teleoperare fără mâini, apoi explorați module suplimentare de robot pe pagina cea mai relevantă de pe Qubitpage.

Scris de

Mircea S. Rusu

Fondator și inginer Qubitpage. Inginer de suport din 2005, dezvoltator CMS, fost consultant tehnic la Spitalul Niguarda Ca' Granda din Milano și autor al cărții „The Architect”.

Mai multe despre autor →