Automated lane following of a Waveshare JetRacer with artificial intelligence: Unterschied zwischen den Versionen
Zeile 55: | Zeile 55: | ||
[[Datei:spec | [[Datei:spec.jpg|mini]] | ||
Specifications of the Jet-Racer | Specifications of the Jet-Racer |
Version vom 5. Januar 2023, 14:02 Uhr
Autor: Tasawar Siddiquy
Art: Bachelorarbeit
Dauer: 14.09.2022 -
Betreuer: Prof. Schneider
Aufgabenstellung
- Mechanischer und elektrischer Aufbau eines JetRacers
- Literaturrecherche zu den verfügbaren Programmierumgebungen
- Vergleich und Auswahl einer passenden Programmierumgebung
- Einarbeitung in die Programmierumgebung
- Anlernen des Deep Learning Netzwerkes zur Spurführung
- Modul und Systemtests mit dem JetRacer auf der Fahrbahn
- Ergebnisdarstellung und Ausblick
- Dokumentation des Umgang mit dem JetRacer im HSHL Wiki
- Bereitstellung von Demoprogrammen zum einfachen Einstieg
- Dokumentation nach wissenschaftlichem Stand
Anforderungen an die wissenschaftliche Arbeit
- Wissenschaftliche Vorgehensweise (Projektplan, etc.), nützlicher Artikel: Gantt Diagramm erstellen
- Wöchentlicher Fortschrittsberichte (informativ)
- Projektvorstellung im Wiki
- Studentische Arbeiten bei Prof. Schneider
- Anforderungen an eine wissenschaftlich Arbeit
Getting Started
Nutzen Sie diese Artikel, um sich in das Thema einzuarbeiten:
- Wiki-Artikel_schreiben, die Vorlage finden Sie hier: Artikelvorlage
- Regeln zum Umgang mit SVN
- HSHL-Wiki: JetRacer
Nützliche Artikel
- Anleitung zum einfachen Einstieg in ROS2
- Doku des Projektstands WS2021/22
- Sicherer Betrieb eines AMR
- Navigation eines AMR mit ROS2
Projektplan
Anforderungen
Hardwareanforderungen
Softwareanforderungen
Funktionaler Systementwurf / Technischer Systementwurf
Komponentenspezifikation
Specifications of the Jet-Racer
Programmierung
For the implementation phase, a Jupyter notebook was utilized, and the code was developed in Python since it is extremely user-friendly and permitted direct wifi connectivity between the Windows PC and the Jetracer. A library file for the jetracer already exists. It has all of the basic functionalities for the jetracer and has been designed. First, using the Etcher tool, an SD card was produced with a prebuilt image based on the jetpack 4.5 file. This file was obtained from the waveshare website. Installing the jetpack 4.5 file followed. The NVIDIA JetPack software development kit is the most comprehensive instrument for creating apps with artificial intelligence. The JetPack software development kit is compatible with all Jetson modules and developer kits. The most recent Linux Driver Package for the Linux operating system is included in the JetPack software development kit, together with CUDA-X accelerated libraries and APIs for Deep Learning, Computer Vision, Accelerated Computing, and Multimedia. The software development kit further contains the Linux kernel. The micro SD card was then inserted into the Jetson nano, and the device is now set to connect to a wifi network using the Jupyter notebook. Having gotten the IP address via the USB connection, the system is now accessible from the personal computer. After successfully login in, the Jupyter notebooks' code will be available and can be modified. Following the installation of Python packages, the power mode should be specified. This may be seen on their website in full detail. First, it was evaluated using a controller that enables the user to manually manipulate the jetracer. The jetracer comes with this controller. Inside is a file for a simple motion and teleportation notebook, which the controller may use to operate the jetracer. It is advised that the controller be connected to the computer through the jupyter notebook, which then transfers the signal to the jetracer. The controller may be calibrated by utilizing the ipywidgets library. Using the Jupyter notebook, every aspect of the car, including the throttle gain, steering offset, and axes, may be modified[1].
The process of collecting data and feeding it into a neural network model is one of the most crucial components of developing one. For our needs, the data must portray the track from many perspectives. The jetracer's camera has been employed for this purpose. The camera widget is configured to show a preview on one screen and precisely define the direction vector, depending on which the autonomous vehicle will go, on the second screen. Use the widget's sliders to modify these parameters[1].
-
Block Diagram of the system [2]
Komponententest
Ergebnis
After successfully completing all of the processes, the car was able to drive without assistance. It has been put through a significant number of test laps, and each time it has demonstrated its ability to stay on the track and negotiate its lanes properly.
Zusammenfassung
Lessons Learned
Projektunterlagen
YouTube Video
Das Video von diesem Projekt finden Sie auf Youtube unter dem Link:
Weblinks
Literatur
- ”jetracer ai kit b, ai racing robot powered by jetson nano”, comes with waveshare jetson nano dev kit, https://www.waveshare.com/wiki/mainpage, 2023.25
- Deep learning with matlab, nvidia jetson, and ros video,https://de.mathworks.com/videos/matlab-and-simulink-robotics-arena-deep-learning-with-nvidia-jetson-and-ros–1542015526909.html, 2023.
- Kacper Podbucki and Tomasz Marciniak. Aspects of autonomous drive control using nvidia jetson nano microcomputer. In 2022 17th Conference on Computer Science and Intelligence Systems (FedCSIS), pages 117–120, 2022.
→ zurück zum Hauptartikel: Studentische Arbeiten