Gyroskop mit Matlab/Simulink: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Zeile 74: Zeile 74:
|}
|}


= Verbindungen der EV3 Connect Box =
=== Verbindungen der EV3 Connect Box ===


Bei der ausgewählten Variante musste einmal der PC mit dem Arduino und der Arduino mit dem EV3 Gyroskop verbunden werden.  
Bei der ausgewählten Variante musste einmal der PC mit dem Arduino und der Arduino mit dem EV3 Gyroskop verbunden werden.  

Version vom 28. Juni 2018, 19:02 Uhr

Autor: Philipp Tewes

Betreuer: Prof. Dr.-Ing. Ulrich Schneider

Sensor: EV3-Gyrosensor-45505

EV3 Connect Box

Arduino Nano auf einem Steckbrett

Für die Auslesung des Lego EV3 Gyroskop wurde, wie in der Einleitung bereits erwähnt, die Möglichkeit eines Arduinos verwendet. Dies bietet den Vorteil, dass für die Aufgabe des Datentransfers vom Sensor zum PC kein teurer EV3 Baustein verwendet werden muss. Denn wird die hohe Funktionalität eines EV3 Bausteins, welche einen hohen Preis resultieren lässt, für diese Aufgabe nicht benötigt. Es wurde unter Verwendung eines Arduino Nano eine Connect Box für EV3 Sensoren entwickelt. Diese bietet die Funktionalität, das EV3 Sensoren prinzipiell mit jede PC Anwendung ausgelesen werden können. Alle Lego EV3 Sensoren nutzen die bereits vorgestellte Kommunikation. Die Connect Box wickelt diese Kommunikation mit dem Sensor vollständig ab, die Anwendung auf dem PC kann dadurch Infos zum Sensor oder auch Messdaten des Sensors Auslesen. Die Connect box bietet ein übersichtliches Kommunikationsprotokoll über welche die Kommunikation von PC und Connect Box abgewickelt wird.

Kommunikation mit der EV3 Connect Box

Das entwickelte Kommunikationsprotokoll ist in der Tabelle 2 zu sehen, diese findet zwischen dem PC und der EV3 Connect Box statt. Hierrüber könnte mit der EV3 Connect Box mit jedem beliebigen Gerät kommuniziert werden.

Tab. 2: Kommunikationsbefehle mit der EV3 Connect Box
Befehl Befehls Information
's' Sensor ID auslesen
'm' Sensor Modus auslesen
'0' - '6' Sensor in Modus z.B. 0 versetzen
'r' Sensor Reset durchführen
'f' Connect Box in den Daten-Modus versetzen
'd' Messdaten des Sensors anfordern

Arduino der EV3 Connect Box

Beim Arduino wurde sich für den Arduino Nano entschieden. Dieser besitzt nahezu dieselben Funktionalitäten und Leistungen wie der Arduino Uno, bietet aber eine kompaktere Bauform an. Um den Gyrosensor oder andere Komponenten anschließen zu können, stehen insgesamt 14 I/O Pins, wovon 8 analoge Eingänge sind, zur Verfügung. Die Spannungsversorgung für den Arduino wird durch das USB Kabel umgesetzt, der Gyro Sensor bezieht einen Teil davon für die eigene Versorgung.


Tab. 2: Spezfikationen des Arduino Nano
Einheit Merkmal
Core 16 Mhz ATmega328
Speicher
Flash-Speicher 32 KB
SRAM 2 KB
EEPROM 1KB
Spannungen
Betriebsspannung 5 V
Empfohlene Eingangsspannung 7 V - 12 V
Maximale Eingangsspannung 20 V
Kommunikation
UART Ja
I2C Ja
I/O-Pins 14, davon 6 PWM und 8 analoge Eingänge

Verbindungen der EV3 Connect Box

Bei der ausgewählten Variante musste einmal der PC mit dem Arduino und der Arduino mit dem EV3 Gyroskop verbunden werden.


Die Verbindung von Arduino und PC wurde über die Serielle Schnittstelle des Arduino umgesetzt. Hierzu kann das USB Kabel verwendet werden welches ebenfalls für das Code flashen auf den Arduino verwendet wird. Dieses muss in die mini USB Buchse des Arduino gesteckt werden und in einen USB Anschluss des PC.


Bei der Verbindung vom EV3 Gyroskop und dem Arduino gab es keine Möglichkeit eines verstecken. Buchsen Anschlüsse für den von Lego verwendeten Stecker sind nur sehr schwer erhältlich, so wurde sich gegen eine Buchse entschieden. Es wurde das Kabel was für die Verbindung von EV3 Gyroskop und EV3 verwendet wird durchgeschnitten, um so an die einzelnen Adern im Kabel direkt zu gelangen. Die Verkabelung wurde nach der Tabelle 1 vorgenommen. Am Arduino können beliebige Pins verwendet werden, sie müssen nur Serielle Kommunikation unterstützen.

Tab. 3: Belegung der Kabelverbindungen
Ader im EV3 Kabel Belegung im Sensor Anschluss an Arduino
Pin1 Weiß GND GND
Pin2 Schwarz Nicht angeschlossen Nicht angeschlossen
Pin3 Rot GND GND
Pin4 Grün Vin 5V
Pin5 Gelb RX
Pin6 Blau TX

EV3 Connect Box Anwendung

Matlab GUI

Datenverarbeitung