Via Bluetooth und Wi-Fi Android gesteuert RC Fahrzeug mit Echtzeit-Video

5 Schritt:Schritt 1: Schritt 2: IP-Kamera Schritt 3: Chassis Schritt 4: Hardware Schritt 5: Software

Via Bluetooth und Wi-Fi Android gesteuert RC Fahrzeug mit Echtzeit-Video
Auf dem Internet gibt es viele Artikel über die Verwendung von RC-Cars mit IP- oder Web-basierte Kamera. Aber die meisten von ihnen benutzt einen Laptop oder einen internen Router mit Open-WRT oder DD-WRT-Firmware. Sehen Sie das Video und die Kontrolle über die RC-Car in solche Projekte in der Regel mit einem PC oder Laptop implementiert. In diesem Artikel werden die Steuer Crawler-Plattform von jedem Android-Gerät (Tablet, Smartphone, etc.), sowie zum Anzeigen von Echtzeit-Video-und Drehsteuer Pan / Tilt IP-Kamera. Die gesamte Hardware hat in der ersten Projekt nahezu unverändert geblieben, Änderungen Android-Applikationen mit dem Wi-Fi-IP-Kamera arbeiten, gemacht.



Das Projekt basiert auf dem Arduino gebaut. Um das Auto mit Bluetooth-Kanal zu steuern. Als IP-Kamera Ich habe das beliebteste Modell Foscam FI8918 (80-100 $) Schritt 1.:



Via Bluetooth und Wi-Fi Android gesteuert RC Fahrzeug mit Echtzeit-Video
Wie oben in der Figur zu sehen, die Wechselwirkung zwischen dem Smartphone und verfolgt Plattform direkt auf Bluetooth-Kanal implementiert, und das Zusammenspiel mit der Kamera auf Wi-Fi-Kanal implementiert, aber über den Router. Und das ist ein großer Nachteil - denn ohne Router, alle Operationen mit der Kamera funktioniert nicht richtig, zum Beispiel auf der Straße oder irgendwo außerhalb der Stadt. Ich habe versucht, eine direkte Kontrolle über Wi-Fi machen, Einschalten Android'e Modus Host-Wi-Fi, aber nichts half. In Zukunft werde ich versuchen, eine direkte Interaktion ohne Router zu machen. Ich habe Vorschlag, dies erfordert eine Kamera mit Unterstützung W-LAN Direct.Step 2: IP-Kamera

Via Bluetooth und Wi-Fi Android gesteuert RC Fahrzeug mit Echtzeit-Video
IP-Kamera Foscam FI8918 gibt ein Video-Stream in einem Format MJPEG (Motion JPEG), bei dem jeder Rahmen komprimiert mit dem beliebten JPEG-Bildkompressionsalgorithmus. Bei einer Auflösung des Video-Streams 320x240, ist 25-30 FPS. Wenn die Videoauflösung von 640x480, fällt die FPS von ca. 2 mal. Für Android auf dem Internet wurde MJPEG-Klasse für die Bearbeitung und Anzeige von Daten in diesem Filter finden.

FI8918-Modell hat die Funktion der Drehung und Neigung der Kamera über die Web-Schnittstelle. In diesem Projekt ist diese Funktion implementiert. Funktionen Foscam Kameras sind gut dokumentiert (siehe Datei IPCAM CGI SDK V1.7). Sehen Sie Video-Stream, Kontrolle, Konfiguration durch CGI-Skripte aus. Sehen Sie sich die Video-Stream über Script videostream.cgi mit den entsprechenden Parametern, zum Beispiel:
http://192.168.1.10:8081/videostream.cgi?user=cxemcar&pwd=cxemcar&resolution=8
wo der Benutzer - Benutzernamen, pwd - Kennwort Auflösung - Videoauflösung (8 - 320x240px, 16 - 640x480px)

Um die Bewegung der Kamera (die Funktion Pan / Tilt) steuern wird decoder_control.cgi Skript verwendet wird, und der Parameter "Befehl" Set-Befehl:
0 - Bewegen Sie die Kamera nach oben
1 - die Aufwärtsbewegung zu stoppen
2 - nach unten bewegen
3 - die Abwärtsbewegung zu stoppen
4 - nach links drehen
5 - mehr drehen gelassen
6 - nach rechts drehen
7 - mehr drehen nach rechts
25 - in der Mitte gesetzt
26 - vertikal "patrol"
27 - Stop vertikale "patrol"
28 - Horizontal "Patrouillen"
29 - Stop horizontal "patrol"

In der Android-Anwendung habe ich erst das Zusammenwirken mit nur zwei Skripte verwendet, aber wie bereits erwähnt, über CGI-Skripte können eine Menge Dinge zu tun:
get_camera_params.cgi - bekommen Sie die aktuellen Kameraeinstellungen. Das Skript gibt die Auflösung, Helligkeit, Kontrast, 50/60 Hz-Modus Modus, Flip-Modus.
camera_control.cgi - Kameraeinstellungen.
reboot.cgi - Neustart der Kamera.
restore_factory.cgi - Werkseinstellungen wiederherstellen.
get_params.cgi - Informationen über die Kamera und den vielen Parametern.
set_datetime.cgi - die Uhrzeit und das Datum einzustellen.
set_network.cgi - Netzwerkeinstellungen.
set_wifi.cgi - Wi-Fi-Netzwerk.
set_ddns.cgi - Reihe von Konfigurations Dynamic DNS.
set_ftp.cgi - Einstellung FTP-Verbindung.
set_mail.cgi - Einstellung für MAIL.
Etc.

Die Kamera so konfiguriert, dass mit einer statischen IP-Adresse arbeiten. So dass es von der Android-Anwendung zugegriffen werden. Obwohl Foscam Unterstützung DDNS-Dienste, so können Sie eine dynamische IPStep 3 verwenden: Chassis

Via Bluetooth und Wi-Fi Android gesteuert RC Fahrzeug mit Echtzeit-Video

Via Bluetooth und Wi-Fi Android gesteuert RC Fahrzeug mit Echtzeit-Video

Via Bluetooth und Wi-Fi Android gesteuert RC Fahrzeug mit Echtzeit-Video

Via Bluetooth und Wi-Fi Android gesteuert RC Fahrzeug mit Echtzeit-Video

Via Bluetooth und Wi-Fi Android gesteuert RC Fahrzeug mit Echtzeit-Video

Via Bluetooth und Wi-Fi Android gesteuert RC Fahrzeug mit Echtzeit-Video

Alle 8 Artikel anzeigen
Da die IP-Kamera stellt eine massive Konstruktion, so dass die Plattform muss von geeigneter Größe sein. Als Chassis, habe ich die weit verbreitete Unterwagen "Rover 5".
Die Plattform wird ohne obere Abdeckung. Der Deckel ist aus Kunststoff geschnitten und montiert auf einem kleinen Racks in Batterien setzen, um die Kamera und Motoren, eine Batterie, um den Arduino Kraft und eine 5V-Spannungswandler zur Stromversorgung der Kamera zu betreiben.
Batterien und Wandlerplatine wurden im Inneren des Gehäuses platziert. Die Abdeckung wurde Löcher für die Kabel an die Steuerkarte, die Kamera und Motortreiber geschnitten. Zum Aufladen der Batterien wurden 2-Anschluss setzen. IP-Kamera, Arduino, Bluetooth-Modul und Motor-Treiber wurden auf der Gehäuseabdeckung montiert.
Für elektronische Teile wurden aus den Kunststoffstoßstangen schneiden und machte †<†<eine kleine Kappe, die auf Schrauben verschraubt und kann entfernt werden, wenn necessary.Step 4: Hardware

Via Bluetooth und Wi-Fi Android gesteuert RC Fahrzeug mit Echtzeit-Video
Die Hardware des Projektes ist fast identisch Arduino RC Auto. Fügte aber hinzu, eine Kamera, und es hat einen 5V-Versorgung benötigt. So wurde Setzungsspannungswandler auf einem Chip LM2596 zugegeben.

Verwendet von: Bluetooth-Modul HC-06, Arduino Nano v3 und Motor Driver L298N. Wenn Sie die Arduino-Board von 4 V und höher, zwischen dem Anschluß RX (Modul HC-06) mit TX (Board Arduino) notwendige Leistung legte einen Spannungsteiler, weil HC-06 Logikpegel ist 3,3. Noch besser wäre es, verwenden Sie Spezialchip, wie MAX232.

Sketch für Arduino ist gleich geblieben, und auf der GitHub'e (Link unten) geschrieben .Schritt 5: Software

Via Bluetooth und Wi-Fi Android gesteuert RC Fahrzeug mit Echtzeit-Video

Via Bluetooth und Wi-Fi Android gesteuert RC Fahrzeug mit Echtzeit-Video

Via Bluetooth und Wi-Fi Android gesteuert RC Fahrzeug mit Echtzeit-Video

Software in der Open-Source geschrieben IDE von Eclipse.

Projekt enthält 4 Tätigkeitsbereich: Wichtigste, über das Programm, die Arbeit mit Flash und Haupttätigkeit für Fahrwerksregelung und zeigen Sie das Video. Mit MJPEG-Stream zu arbeiten, gibt es 2 Klassen: MjpegInputStream und MjpegView.

Auf der linken Seite befinden sich Schaltflächen für die Steuerungsplattform, in der Mitte ist das Video-Stream der Kamera und auf der rechten Seite angezeigt werden Tasten für Kamera Pan / Tilt-Steuerung.

Wenn Sie auf dem PC vertraut sind Programmierung, können Sie die Kontrolle über Laufbahn-Plattform von Ihrem Computer über das Internet und andere Mittel zu implementieren.

Project for Android (GitHub)
Projekt für Arduino (GitHub)