YOLO Veb Kontrola predstavlja napredni klijentski interfejs izgrađen pomoću React-a i Next.js-a.
Aplikacija služi kao komandni most za autonomno vozilo, integrišući video strim i WebSocket komunikaciju u jedinstven, moderan korisnički doživljaj.
Ovaj projekat koristi prednosti moderne web arhitekture kako bi osigurao nultu latenciju i maksimalnu reaktivnost:
use clientDirektivne: Optimizovano za klijentsko renderovanje (CSR) kako bi se omogućio direktan pristup browser API-jima (WebSockets, EventListeners).- State Management: Korišćenje React
useStateiuseEffectkuka za upravljanje statusom konekcije i obradu dolaznih logova u realnom vremenu. - Performance: Brzo učitavanje zahvaljujući Next.js optimizaciji resursa i Tailwind CSS-u za minimalni CSS otisak.
- TypeScript Safety: Ceo interfejs je strogo tipiziran, što sprečava greške prilikom slanja komandi ka robotu.
Interfejs je dizajniran da simulira profesionalne kontrolne panele:
Sistem mapira tastere direktno na WebSocket komande:
- W / S: Napred / Nazad
- A / D: Skretanje
- Q / E: Rotacija oko ose
Svako dugme na ekranu podržava onMouseDown i onTouchStart događaje, omogućavajući "hold-to-move" funkcionalnost koja simulira pravi džojstik.
| Komponenta | Tehnologija | Uloga |
|---|---|---|
| UI Library | React 18 | Reaktivne komponente i interfejs |
| Framework | Next.js 14 | Routing i optimizacija |
| Logic | TypeScript | Sigurnost koda i tipovi podataka |
| Icons | Lucide React | Vizuelni simboli i indikatori |
| Styling | Tailwind CSS | Glassmorphism i Layout |
Da bi kontrola radila, Next.js aplikacija komunicira sa Python backendom na vozilu:
Important
Proverite da li je vaš uređaj na istoj mreži kao i vozilo pre pokretanja komandne table.
- WebSocket:
ws://192.168.4.1:1606 - Video Feed:
http://192.168.4.1:1607/capture
Autor: Danilo Stoletović • Mentor: Dejan Batanjac
ETŠ „Nikola Tesla“ Niš • 2026