Eine Fernsteuerung für den Lego EV3 Roboter

Slides:



Advertisements
Ähnliche Präsentationen
Modulare SPS – XC600 Produkt- Eigenschaften (I)
Advertisements

Kurzwiederholung Informatik I, Teil I: Grundkonzepte
Computersimulation steuert echtes Frontpanel an
Befehlssatz und Struktur
HMI / HMI-SPS XV400 HMI oder HMI-PLC – die CompactFlashTM entscheidet
BORT Basically Operating Robot Thing
Palm OS Project Martin Ochs Palm OS Project Inhalt Hardware Schnittstellen Die serielle Schnittstelle Entwicklungsumgebung Test-Programm Hardware-Test.
Robotik mit LEGO Mindstorms
Virtualisierung bei der GWDG, Struktur
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
Vorlesung 5 Interrupts Peter B. Ladkin
Aufgabe Hardwarenahe Programmierung Bluetooth/Lan-Gateway Frank Reichenbach LAN/WLAN Bluetooth Kommunikation zwischen zwei Clients über Client 1 verbindet.
DVG Einführung in Java1 Einführung in JAVA.
Das PS/2-Protokoll.
Medienverarbeitung I, WS 99/00 Simon Barkow, Gunnar Kiesel
Space Based Computing VU SS08
Generelles POVs müssen immer lizenziert werden
Hardware Ordne die Begriffe den Bildern zu!
Robotikprojekte mit dem LEGO NXT und DER Programmiersprache NXC
Stand: November Anforderungen an Systemumgebung und Hardware Anmerkung Gollas, Schulamt Freising: Für unsere Schulen kommt eine Mehrplatz Installation.
iPad mit der ez Share™ Speicherkarte in Digitalkamera drahtlos über WLAN verbinden.
Steuerung externer Komponenten über ein USB-Interface.
Wir zeigen ihnen einen Computer der anderen Art!
Telesnap Voic 2009 Produktpräsentation. Einleitung Doc.No.: ASE/APP/PLM/ 0163 / DE.
Vortrag D. Braun, Praktikum. Übersicht Pleopatra API Pleopatra Tools Twitter Demonstration Ausblick.
OMRON 1 FINS Befehle schicken mit CX – Server Lite Aufgabe :
Betriebssystem Linux Von Sofia & Yasemin WG 12/3.
Präsentation von Alexander Schönfeld
Herzlich willkommen zum Aufbau der Hauptplatine
Die unterschiedlichen Möglichkeiten der PC – RCX Steuerung
Freifach Netzwerktechnik mit Übungen
HMI-SPS – HPG230 Visualisierung, Bedienung und SPS in Einem!
LEGO NXT Konkurrenzsysteme
EasyDiet Team C Team C1. Agenda Das Team Projektdetails Systemvoraussetzungen Funktionsüberblick Showcase Team C2.
Thin Clients IGEL smart-132.
1.NET Assemblies und Metadaten René Löschl. 2 Inhalt Begriffe Eigenschaften von Metadaten Vorteile von Metadaten Typische Metadaten Zugriff und Verwaltung.
Kommunikation mit dem Terminal Achim Sommer FH München FB 07 Informatik/Mathematik Projektstudium Chipkarten SS 2001 Mit freundlicher Unterstützung von.
Hardware.
Ein Vortrag von Simon Bayer
Embedded Linux Portierung auf mobiles Datenerfassungsterminal
Philip Bargiel 8DY Informatik
Version X des Programms: Datenaustausch-Probleme % ( ) (WIRBEL-BASISTEIL GR. 52) N1G29X150Y85I150J25 N2G0X150Y25 Version Y des Programms:
Raspberry Pi Eine erste Übersicht.
PC Club Zürich 28. März 2011 Herzlich willkommen Roger Furter.
Ronny Thiesies Tom Schubert
Modul I Grundlagen Hardware
Hagenuk Jazz Zielgruppe: MP 3 Fans, die ein preiswertes Gerät für Musik und zum Telefonieren haben wollen.
Proseminar TUM Informatik
Evaluation des sprachgesteuerten Assistenten Jasper
Computerbenutzung und Dateimanagement
Juni 2014 Die Begeisterung spüren. Haier PAD.PHONE.
must-haves des POV-PCs
Präsentation von Nadine Hartmann und Buket Barut
TRekstor Wintron 10.1 Kurzvorstellung.
Entwicklung des Attiny-Boards
Rasperry Pi Kameramodul + motor
Raspberry Pi Einführung
Autor: Timo Pagel Nutzung: Diese Lernkarten sind für die Nutzung mit OpenCards gedacht Siehe dazu
Eingereicht von:Michael Schrank Betreuung:o.Univ.-Prof. Dr. Hanspeter Mössenböck Mitbetreuung:Dipl.-Ing. Wolfgang Beer CyberStudent A Multiuser Awareness.
Eine Präsentation von Lennart Böcher und Marcel Remmers
Semesterarbeit SS06 LEGO Mindstorms NeXT Generation
Grundwissen Informatik
Microsoft Student Partner
Roboter programmieren
Nokia N900 Technische Daten Maße: 110,9 x 59,8 x 18 (19,55) mm Gewicht: 181 g Speicher: 32 GB interner Speicher Programmspeicher:256 MB RAM, 768 MB virtueller.
Wii - Embedded for Entertainment -
Computerbenutzung und Dateimanagement
Inhaltsverzeichnis Was ist Arduino? Hardwarekomponenten
Eine kurze Vorstellung Andreas Bieri HB9TSS
Computerbenutzung und Dateimanagement
 Präsentation transkript:

Eine Fernsteuerung für den Lego EV3 Roboter Von Marius Christ

Zielsetzung Raspberry Pi Client USB-Verbindung zum EV3 Serverdienst Direct Commands Serverdienst Steuerung des EV3 über USB Byte Code WLAN-Zugriff Kamerastream Client C# / WinForms Netzwerkverbindung zu Raspberry Pi Funktionen Steuerung über Tastatur/Joystick Wiedergabe Kamerabild

Lego EV3 3. Generation 64MB RAM 300 MHz ARM-CPU MicroSD-Kartenslot August/September 2013 64MB RAM 300 MHz ARM-CPU MicroSD-Kartenslot USB-Hostport WLAN-Adapter verfügbar Linux-Firmware Erweiterbar über SD- Karte ev3dev (Debian) MonoBrick (C#) LeJOS (Java)

Raspberry Pi 700 MHz ARM-CPU 512MB RAM Kamera 2x USB 2.0 1GHz möglich 512MB RAM Kamera 2x USB 2.0 4x AA-Batterien SD-Karte als HDD Linux, BSD u.a.

Fernsteuerung Serielle Kommunikation USB und Bluetooth möglich USB-Verbindung sehr stabil 500 Befehle/Sekunde problemlos Bluetooth recht instabil Systembefehle Datei Up-/Download Programm starten Firmware aktualisieren Direkte Befehle Motorensteuerung Sensordaten Töne / LEDs / Display Dokumentation kaum vorhanden c_com.h u.a. im Quellcode der Firmware EV3 API von BrickxCC

Beispiel: Bremsen 09 00 00 00 80 00 00 A3 00 06 01 Code 0 1 2 3 4 5 6 7 8 9 10 ByteNr Byte 0-1: Nachrichtenlänge Little Endian Nicht mitzählen! Byte 2-3: Nachrichtenzähler Unwichtig Byte 4: Command Type 0x80 == DIRECT_COMMAND_NO_RE PLY 0x00 == DIRECT_COMMAND_REPLY Siehe c_com.h in den Firmwarequellen Byte 5-6: Anzahl der Variablen Komprimiert (siehe c_com.h) Byte 7: opCode A3 bedeutet opOutputStop Siehe ev3_constants.h in der BricxCC API Byte 8: Daisy Chain Layer Mehrere verbundene EV3 Byte 9: Motor Motor A ist das 1. Bit, Motor B das 2. Bit usw. 00000010 0x02 Motor B 00000100 0x04 Motor C 00000110 0x06 Motor B|C Motoren mit ODER verknüpfen | Operator in C Byte 10: Bremsmodus 00 ist Coast (kein Widerstand) 01 ist Brake (Motoren halten still)

Beispiel: Fahren Byte 7: opCode Byte 8: Daisy Chain Layer 0D 00 00 00 80 00 00 A5 00 06 81 00 A6 00 06 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Byte 7: opCode A4 == opOutputPower Asynchroner Motorenlauf A5 == opOutputSpeed Synchroner Motorenlauf Byte 8: Daisy Chain Layer Byte 9: Motoren Byte 10: Sinnloses Byte Normal Speed- Angabe Speed +/- 31 möglich Byte 11 weglassen Nicht dokumentiert Byte 11: Speed Wertebereich +/- 100 Byte 12: opCode A6 == opOutputStart Manuell notwendig Byte 13: Daisy Chain Layer Byte 14: Motoren

Struct drive_t Sammelt Fahrdaten in einer Struktur Speed und Turn Bremse, Bremsmodus, Lenkverhalten Wird zur Netzwerkkommunikation serialisiert Kann als Eingabe in die Methode ev3_USBCom::drive(drive_t drv) verwendet werden Zentrale Auswertung und Ausführung

Klasse ev3_USBCom Verwaltet die Kommunikation mit dem EV3 USB-Variante Bluetooth-Variante nicht gepflegt Enthält vorgefertigte Byte Codes Byte Codes werden vor dem Senden angepasst Detaillierte Fehlercodes

UML-Diagramm: ev3_USBCom

Codebeispiele oder Fragen?