Drive-By-Phone

Willkommen

Herzlich willkommen auf unserer Projektseite. Auf dieser Homepage erhalten Sie Informationen rund um das Projekt Drive-By-Phone - ein ferngesteuertes Auto mit Live-Video-Streaming.

Kurzbeschreibung

Deutsch Drive-By-Phone ist ein innovatives Projekt zur Fernsteuerung eines Autos über eine Web-Oberfläche mit Live-Video-Streaming. Das System besteht aus mehreren Komponenten: Ein ESP32-Mikrocontroller steuert das Auto über BLE (Bluetooth Low Energy), eine Android-App fungiert als Brücke zwischen Web-Interface und ESP32, und ein Spring Boot Server ermöglicht die Kommunikation über WebSockets. Das Besondere an diesem Projekt ist die Integration von WebRTC für Echtzeit-Video-Streaming, sodass der Fahrer das Auto nicht nur steuern, sondern auch sehen kann, wohin es fährt. Die Steuerung erfolgt über eine moderne Web-Oberfläche mit WASD-Tasten oder Touch-Controls für mobile Geräte. Es wurde eine Benutzeroberfläche zur Verwaltung der RC-Cars entwickelt. Benutzer können sich einloggen, alle ihre Autos sehen und verwalten. Mit einem Start-Button kann ein Auto ausgewählt werden, woraufhin die Steuerung gestartet wird. Die Website wurde mit Next.js entwickelt. Das Projekt demonstriert die Verbindung verschiedener Technologien: Web-Technologien (Next.js, HTML5, WebRTC, WebSockets), Android-Entwicklung (Kotlin, BLE), Embedded Systems (ESP32, C++) und Server-Entwicklung (Spring Boot, Java).

Unser Projekt wird bearbeitet und erstellt an der HTL Mössingerstraße

English Drive-By-Phone is an innovative project for remote controlling a car via a web interface with live video streaming. The system consists of several components: An ESP32 microcontroller controls the car via BLE (Bluetooth Low Energy), an Android app acts as a bridge between the web interface and ESP32, and a Spring Boot server enables communication via WebSockets. The special feature of this project is the integration of WebRTC for real-time video streaming, allowing the driver not only to control but also to see where the car is going. Control is done through a modern web interface with WASD keys or touch controls for mobile devices. A user interface for managing the RC cars was developed. Users can log in, see all their cars and manage them. With a start button, a car can be selected, after which the control is started. The website was developed using Next.js. The project demonstrates the connection of various technologies: web technologies (Next.js, HTML5, WebRTC, WebSockets), Android development (Kotlin, BLE), embedded systems (ESP32, C++), and server development (Spring Boot, Java).

Details

Das Projekt besteht aus mehreren Komponenten, die nahtlos zusammenarbeiten:


dashboard Web-Frontend

Verwaltungs-Web-App

Leon entwickelte eine Benutzeroberfläche zur Verwaltung der RC-Cars. Benutzer können sich einloggen, alle ihre Autos sehen und verwalten. Mit einem Start-Button kann ein Auto ausgewählt werden, woraufhin die Steuerung gestartet wird. Die Web-App bietet eine intuitive Verwaltungsoberfläche für mehrere RC-Cars und ermöglicht es Benutzern, ihre Fahrzeuge zentral zu verwalten.

web Web-Interface

Steuerungs-Website

Die Web-Oberfläche ermöglicht die Steuerung des Autos über WASD-Tasten oder Touch-Controls. Sie zeigt das Live-Video-Stream in Vollbild an und überträgt Steuerbefehle in Echtzeit über WebSockets an den Server. Die Website nutzt WebRTC für das Video-Streaming und Socket.IO für die Signalisierung.

phone_android Android App

Receiver-App

Die Android-App fungiert als Brücke zwischen Web-Interface und ESP32. Sie empfängt Steuerbefehle über WebSockets vom Server und leitet diese über BLE an den ESP32 weiter. Zusätzlich streamt die App Live-Video über WebRTC an das Web-Interface, sodass der Fahrer sehen kann, wohin das Auto fährt.

Hardware

ESP32 Mikrocontroller

Der ESP32 steuert das Auto über BLE (Bluetooth Low Energy). Er empfängt Steuerbefehle von der Android-App und steuert Servo (Lenkung) und ESC (Motor) des Autos. Der ESP32 ist mit verschiedenen BLE-Characteristics ausgestattet, um Gas, Bremse, Lenkung und Drosselung zu steuern.

Unser Team

Das Projekt Drive-By-Phone wurde von zwei Schülern der 5BHEL und einem betreuenden Lehrer der HTL Mössingerstraße entwickelt.
Team

Leon Klautzer

Erstellung einer Web-App zur Verwaltung und Steuerung der RC-Autos

Leon entwickelte eine Benutzeroberfläche zur Verwaltung der RC-Cars. Benutzer können sich einloggen, alle ihre Autos sehen und verwalten. Mit einem Start-Button kann ein Auto ausgewählt werden, woraufhin die Steuerung gestartet wird.

Herwig Guggi

Projektmitglied

Als Projektbetreuer begleitet er das Team bei der technischen Planung, der Organisation der Diplomarbeit und der Koordination mit den schulischen Anforderungen.

Nico Mitterdorfer

RC-Car Steuerung, Übertragung Live Stream auf Web-App

Nico entwickelte die Android-App, die als Brücke zwischen Web-Interface und RC-Car fungiert. Er realisierte die Steuerung des RC-Cars über Bluetooth und die Übertragung des Live-Video-Streams zur Web-App. Zusätzlich programmierte er die Steuerung für Lenkung und Motor des RC-Cars.