NXT mit Simulink programmieren
Installation
Simulink Support Package für NXT
Siehe Simulink_Support_Package_für_NXT_unter_Matlab2013b.
Firmware auf dem NXT ersetzen
Achtung: hierbei wird der komplette Speicher des NXT gelöscht.
- Öffnen Sie den Update firmware im Support Package Installer mit der folgenden Methode:
- Klicken Sie Continue> auf der Install/update complete Anzeige.
- In einem Modell wählen Sie Tools>Run on Target>Update Firmware.
- Geben Sie im Matlab Command Window
targetupdater
ein.
- Wählen Sie
LEGO MINDSTORMS NXT
und klicken Sie next. - Verbinden Sie den NXT mit Ihrem PC via USB Kabel.
- Klicken Sie Finish und öffnen Sie eines der Beispiele.
Troubleshooting
Matlab x32
Betreiben Sie Matlab x32, so können Sie den Fantom Treiber von Lego installieren. Dann laufen beide Toolboxen (RWTH Toolbox & Simulink NXT Target Linker) problemlos.
Matlab x64
Unter Matlab x64 läuft lediglich der Fantom Treiber mit dem Simulink NXT Target Linker. Sollten Sie bereits den LibUSB Treiber installiert haben gehen Sie in nachfolgenden Schritten vor.
Vorgehensweise:
- Deinstallieren Sie den
LibUSB
Treiber. - Der
Lego Fantom
Treiber wurde automatisch über denSimulink Target Installer
installiert. - Verbinden Sie den NXT via USB-Kabel. Prüfen Sie, ob im Gerätemanager
Lego Mindstorms NXT
anstelle vonLibUSB
angezeigt wird. - Nach der Installation sollte ein kleiens "USB" Icon auf den Bildschirm des NXT zu sehen sein, sobald das Kabel steckt. Dann sollte auch alles gehen.
Alternativ:
- Installieren Sie das Zadig Treiberverwaltungstool.
- Clicken Sie nach dem Starten des Programms auf "Options" und wählen "List all Devices" aus.
- Im untenstehen Dropdown-Menü taucht nun der NXT als Wahlmöglichkeit auf (in seltenen Fällen auch "Unknown Device").
- Ersetzen Sie den libusb-Treiber durch den "win"-Treiber und drücken Sie auf Install/Replace.
- Öffnen Sie den Gerätemanager in der Systemsteuerung und suchen Sie unter "USB-Geräte" den NXT.
- Clicken Sie mit rechter Maustaste auf den NXT und wählen Sie die Option "Gerät deinstallieren" und setzen Sie im folgenden Dialog den Haken um alle Treiber für dieses Gerät zu deinstallieren.
- Falls der sich auf dem SVN befindende Fantom-Treiber noch nicht installiert wurde, muss dies an dieser Stelle nachgeholt werden.
- Nun können Sie den NXT von Ihrem Computer trennen und erneut verbinden. Der Brick wird nun unter "LEGO Devices" aufgelistet und kann mit Simulink genutzt werden.
Fehlermeldung "File Error!" auf dem NXT:
Ersetzen Sie die aktuelle Firmware durch die von Simulink (Vorsicht: Es werden alle Daten auf dem NXT gelöscht). Tools -> Run on Target Hardware -> Update Firmware
Empfehlung: Aktualisieren Sie die Firmware mit der NXT-G Software auf Tools\Enhanced NXC Firmware\lms_arm_nbcnxc_132_20130303_2051.rfw.
Beispiele
- Drücken Sie für die Beispiele F1.
- Im Hilfefenster klicken Sie Supplemental Software.
- Öffnen Sie Examples im Fenster Supplemental Software.
- Hier finden Sie einige NXT Simulink Beispiele.
Reset
NXT-Firmware_Wiederherstellung Klick Fehler
siehe https://legostadlpaura.jimdofree.com/aktuelles/problem-nxt-klickt/ und http://www.mindsensors.com/blog/how-to/how-to-recover-nxt-from-clicking-brick-syndrome
Problem: NXT klickt ständig und Firmware kann nicht auf den NXT geladen werden
Problembeschreibung
Heuer hatten wir gleich in der ersten LEGO-Einheit ein Problem mit unseren Robotern, dass vorher noch nie aufgetreten ist:
Beim Aktualisieren der Firmware kam eine Fehlermeldung, der Brick begann zu klicken und ein Herunterladen der Firmware auf den Brick war nicht mehr möglich.
Die Fehlermeldung leutete: NXT-Gerät kann zum Herunterladen der Firmware nicht lokalisiert werden.
Dieses Problem hatten wir gleich bei der Hälfte unserer Roboter.
Problemlösung (System: Windows10)
Das System sucht sich den falschen Treiber.
-> Geräte-Manager öffnen
-> Der NXT wird angezeigt als unbekanntes Gerät oder als Bossa Program Port
-> Rechtsklick
-> Treibersoftware aktualisieren
-> Auf dem Computer nach Treibersoftware suchen
-> Aus einer Liste von Gerätetreibern auf dem Computer auswählen
-> Lego Mindstorms NXT
Ist kein Treiber vorhanden, so ist der Fantom-Treiber zu installieren:
http://www.lego.com/de-de/mindstorms/downloads
Oder vielleicht hilft der Treiber von ROBOTC:
http://www.robotc.net/download/nxt/
Vielleicht ist aber auch ein Reset nötig:
Auf der Unterseite des NXT befindet sich unterhalb des USB-Anschlusses der Resetknopf.
-> Drücken das Dauerklicken aufhört und ein einzelner Klick kommt.
-> Wieder auslassen und warten bis wieder das Dauerklicken kommt.
dann So first disconnect from the internet then open up device manager by going to my computer right click and select manage. Then connect your NXT to the computer and you will see the device manager refreshes. Go to ports and select the Bossman port and click on update driver, click manual update and then select “select own program” then there will be a list of drivers and select the lego driver. Then you can go to the nxt software and update the firmware to get it working again.
(For hard resetting, there is a press button in top corner mounting well on the bottom of the brick - press and hold it down for about 5 seconds).
Demos
Weblinks
- Matlab R2014a Doku - Lego Mindstorms NXT meets Simulink
- Simulink Support Package für NXT
- Lego Mindstorms NXT
Videos
- Introduction to Simulink Support for Target Hardware
- Bringing NXT Robots to Life with MATLAB and Simulink
Literatur
- Pietruszka, W. D.: MATLAB® und Simulink® in der Ingenieurpraxis. Wiesbaden: Springer, 3. Auflage 2012. ISBN 978-3-8348-1764-8
→ zurück zum Hauptartikel: Lego Mindstorms NXT