EV3 mit Simulink: Unterschied zwischen den Versionen
(→Demo) |
(→Demo) |
||
Zeile 31: | Zeile 31: | ||
Gegen Sie in nachfolgenden Schritten vor: | Gegen Sie in nachfolgenden Schritten vor: | ||
# Fügen Sie die C-Datei in den src-Ordner des Support Packages ein. | # Fügen Sie die C-Datei <code>driver_hitechnic_gyro.c</code> in den src-Ordner des Support Packages ein. | ||
# Fügen Sie die H-Datei in den include-Ordner des Support Packages ein. | # Fügen Sie die H-Datei <code>driver_ev3.h</code> in den include-Ordner des Support Packages ein. | ||
# Verknüpfen Sie im System Objekt File die Quelldatei und die Include-Datei unter der Funktion updateBuildInfo (siehe <code>hitechnic_gyro.m</code> Zeile 120ff). | # Verknüpfen Sie im System Objekt File die Quelldatei und die Include-Datei unter der Funktion updateBuildInfo (siehe <code>hitechnic_gyro.m</code> Zeile 120ff). | ||
# Erzeugen Sie einen Simulink Block mit<br><code> Simulink Library Browser -> Simulink -> User-Definded Functions -> MATLAB System</code>. | # Erzeugen Sie einen Simulink Block mit<br><code> Simulink Library Browser -> Simulink -> User-Definded Functions -> MATLAB System</code>. |
Version vom 27. Juni 2017, 15:22 Uhr
Autor: Prof. Schneider
Lego Mindstorms EV3 wird von Matlab und Simulink unterstützt. Dieser Artikel behandelt die Einbindung des EV3 in Simulink.
Systemvoraussetzung
- Matlab R2017a
- EV3 Firmware V1.09H
- Simulink Support Package for LEGO MINDSTORMS EV3 Hardware version 17.1.1.0 by MathWorks
Add-Ons -> Get Hardware Support Packages -> Simulink Support Package for LEGO MINDSTORMS EV3 Hardware
Getting Started
Die ersten Schritte der Installation werden hier beschrieben. hier
- MATLAB R2017a legt die Dateien des Support Packages in folgendem versteckten Ordner ab:
c:\ProgramData\MATLAB\SupportPackages\R2017a\toolbox\target\supportpackages\ev3\
- Im Ordner
..\ev3\src
liegt die Dateidriver_ev3_touch_sensor.c
für einen analogen Tastsensor. Kopieren Sie diesen alsdriver_hitechnic_gyro.c
. - *Liste der von EV3 unterstützten Sensoren
Liste der Unterstützten Sensoren
Dieser Liste lässt sich beispielsweise entnehmen, dass der HiTechnic NXT Gyro Sensor (NGY1044) ein analoger Sensor ist. Um diesen Sensor mit EV3 zu verwenden, sollte man dem Tutorial "Einbindung Analoger Seneosren" folgen.
Diese Liste zeigt zusätzlich die Wertebereiche, die zur Interpretation der Daten notwendig sind.
Demo
Im SVN Ordner liegt ein Demo für die Einbindung des analogen HiTechnic Gyro bereit:
https://svn.hshl.de/svn/BSE_SigSys/trunk/SRC/Demos/EV3_HiTechnic_EOPD/
Gegen Sie in nachfolgenden Schritten vor:
- Fügen Sie die C-Datei
driver_hitechnic_gyro.c
in den src-Ordner des Support Packages ein. - Fügen Sie die H-Datei
driver_ev3.h
in den include-Ordner des Support Packages ein. - Verknüpfen Sie im System Objekt File die Quelldatei und die Include-Datei unter der Funktion updateBuildInfo (siehe
hitechnic_gyro.m
Zeile 120ff). - Erzeugen Sie einen Simulink Block mit
Simulink Library Browser -> Simulink -> User-Definded Functions -> MATLAB System
. - Doppelklicken Sie diesen Block und zeigen Sie verknüpfen Sie den System Objekt Block
hitechnic_gyro.m
.
Troubleshooting
Bei Verbindungsproblemen mit USB rät Matlab folgendes.
- Verwenden Sie die EV3 Firmware 1.03, 1.06, 1.07 oder 1.08.
WLAN Adapter
Folgende WLAN Adapter funktionieren mit EV3
- Edimax EW-7811UN Wireless Adapter
- NETGEAR N150 Wireless Adapter (WNA1100)
Weiterführende Links
- Developing Simulink Device Driver Blocks: Step-By-Step Guide and Examples
- Liste der von EV3 unterstützten Sensoren
- Linux Treiber für EV3 (ev3dev)
- EV3Dev.org: Von EV3 unterstützte Sensoren
- Matlab Tutorial: Create a device driver block to access specific features of your hardware board
→ zurück zum Hauptartikel: Lego Mindstorms EV3