Programmierung eines Jetson Nano mit MATLAB/Simulink
Autor: | A B M Abir Mahboob |
Modul: | Projektarbeit, TBD (bitte eintragen) |
Starttermin: | TBD |
Abgabetermin: | TBD |
Prüfungsform: | Modulabschlussprüfung als Hausarbeit (Praxisbericht, Umfang 30-50 Seiten Textteil) |
Betreuer: | Prof. Dr.-Ing. Schneider, Tel. 806 |
Mitarbeiter: | Marc Ebmeyer, Tel. 847 |
Einführung
Der JetRacer ist ein Modellrennwagen im Maßstab 1:10. Hierbei handelt es sich um ein leistungsstarkes intelligentes KI-Modellfahrzeug, das speziell für Studierende entwickelt wurde, die den Umgang mit dem Robot Operation Systelm (ROS) erlernen möchten. Das System besteht aus zwei Steuereinheiten. Den Host-Controller bildet das JETSON-NANO-DEV-KIT-A und als Sub-Controller wird ein Raspberry Pi RP2040-Mikrocontroller verwendet. Die Hauptplatine integriert die OLED, den Servomotor-Antriebsschaltkreis, den Batterieschutzschaltkreis, einen Audioausgangsschaltkreis usw., das lästige Löten des Schaltkreises erspart, das Entladen und Laden unterstützt und kein wiederholtes Entfernen des Akkus erfordert. Der verbauter IMU-Lagesensor und DC-Encodermotor regelt die Geschwindigkeit über einen PID-Regler und kann einen Radkilometerzähler ausgeben. Die Software ist mit dem Open-Source-Projektprogramm NVIDIA Jetbot kompatibel und unterstützt AI Deep Learning, SLAM-Mapping und -Navigation, visuelle OpenCV-Verarbeitung, intelligente Sprachinteraktion und andere Funktionen.
Aufgabenstellung
- Einarbeitung in den JetRacer
- Programmierung des Jetson Nano mit MATLAB®/Simulink
- Ansteuerung des Antriebs und der Lenkung
- Einlesen der Sensoren (Kamera, LiDAR,..)
- Fahrt mit der Fernbedienung
- Optional:
- Autonome Navigation mit ROS oder ROS2
- Bildverarbeitung
- LiDAR Objekterkennung
- Systemtest
- Optimierung
- Dokumentation der Vorgehensweise im HSHL-Wiki
Anforderungen
Das Projekt erfordert Vorwissen in den nachfolgenden Themengebieten. Sollten Sie die Anforderungen nicht erfüllen müssen Sie sich diese Kenntnisse anhand im Rahmen der Arbeit anhand von Literatur/Online-Kursen selbst aneignen.
- Umgang mit Linux
- C-Programmierung
- Dokumentenversionierung mit SVN
- Optional:
- AI Deep Learning mit NVIDIA Jetson Nano
- OpenCV Vision Processing
- Simulation mit WeBots
- Umgang mit ROS2
- Partikel Filter SLAM
- Mensch-Roboter Sprachinteraktion
Anforderungen an die wissenschaftliche Arbeit
- Wissenschaftliche Vorgehensweise (Projektplan, etc.), nützlicher Artikel: Gantt Diagramm erstellen
- Wöchentlicher Fortschrittsberichte (informativ), aktualisieren Sie das Besprechungsprotokoll - Live Gespräch mit Prof. Schneider
- Projektvorstellung im Wiki
- Tägliche Sicherung der Arbeitsergebnisse in SVN
- Tägliche Dokumentation der geleisteten Arbeitsstunden
- Studentische Arbeiten bei Prof. Schneider
- Anforderungen an eine wissenschaftlich Arbeit
Repositorium
- Sciebo-Projektordner: \JetRacer_ROS_AI_Robot\
- Sciebo-Abgabeordner: \Jonas_Baisler\Projektarbeit\
Getting started
Lesen Sie zum Einstieg diese Artikel
- Hauptartikel: JetRacer_ROS_AI_Roboter
- Waveshare: JetRacer ROS AI Kit
- Connection to NVIDIA Jetson hardware
- NVIDIA Jetson Support from MATLAB Coder
- Deep Learning with MATLAB, NVIDIA Jetson, and ROS
- Gantt Diagramm erstellen
- Tipps zum Schreiben eines Wiki-Artikels
- PAP Designer Einstieg
- Einführung in SVN
- Einrichtung der ScienceBox (Sciebo)
Nützliche Artikel
→ zurück zum Hauptartikel: Studentische Arbeiten