JetRacer: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
(53 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
[[Kategorie:Autonome Systeme]] | [[Kategorie:Autonome Systeme]] | ||
[[Datei: | [[Kategorie:JetRacer]] | ||
[[Datei:JetRacer Waveshare.jpg|thumb|rigth|500px|Abb. 1: JetRacer AI Pro von Waveshare]] | |||
[[Datei:JetRacer GitHub.gif|thumb|rigth|500px|Abb. 2: JetRacer AI Pro GitHub Projekt]] | [[Datei:JetRacer GitHub.gif|thumb|rigth|500px|Abb. 2: JetRacer AI Pro GitHub Projekt]] | ||
Zeile 9: | Zeile 8: | ||
''' | '''Autor:''' [[Benutzer:Ulrich_Schneider| Prof. Dr.-Ing. U. Schneider]]<br> | ||
'''Ort''': Campus Lippstadt<br> | |||
'''Art''': Praxissemester, Projektarbeit, Bachelorarbeit, Masterarbeit (die Schwierigkeitsstufe ist skalierbar)<br> | |||
== Einleitung == | == Einleitung == | ||
Zeile 17: | Zeile 18: | ||
Melden Sie sich bei [[Benutzer:Ulrich_Schneider| Prof. Schneider]] wenn Sie an diesem Projekt mit einer studentischen Arbeit teilnehmen möchten. | Melden Sie sich bei [[Benutzer:Ulrich_Schneider| Prof. Schneider]] wenn Sie an diesem Projekt mit einer studentischen Arbeit teilnehmen möchten. | ||
Themengebiete sind: | |||
* Entwicklung auf einem Linux PC | |||
* Modellbasierte Entwicklung in einer Simulationsumgebung | |||
* Künstliche Intelligenz/Deep Learning | |||
* Modellbau | |||
* 3D-Druck | |||
Aufgabe des JetRacers könnten sein: | |||
* Autonome Spurführung | |||
* Autonomes Einparken | |||
* Schildererkennung | |||
* Objekterkennung und Klassifikation | |||
* Berücksichtigung von Verkehrsregeln | |||
* Sensorerweiterung (Odometrie, IMU,..) | |||
* Adaptive Cruise Control (ACC) | |||
* Gehäusenetwurf | |||
{| class="wikitable" | |||
|- | |||
| [[Datei:NVIDIA.png]] || [https://developer.nvidia.com/embedded/jetson-nano-developer-kit NVIDIA] Hersteller der NVIDIA® Jetson Nano™ Hardware | |||
|- | |||
| [[Datei:TensorFlow.png]] || [https://www.tensorflow.org/ TensorFlow] ist ein Open-Source-Framework für maschinelles Lernen und künstliche Intelligenz von Google. Einsatz findet TensorFlow insbesondere bei Deep Learning Anwendungen wie Bilderkennung und Textverarbeitung wie Natural Language Processing oder Spracherkennung. | |||
|- | |||
| [[Datei:OpenCV.png]] || [https://opencv.org/ OpenCV] (englische Abk. für Open Computer Vision) ist eine freie Programmbibliothek mit Algorithmen für die Bildverarbeitung und Computer Vision. Sie ist für die Programmiersprachen C, C++, Python und Java geschrieben und steht als freie Software unter den Bedingungen der Apache 2 License. | |||
|- | |||
| [[Datei:Python_Logo.png]] || Im Gegensatz zu HTML, CSS und Javascript ist [https://www.python.org/ Python] eine Allzwecksprache, so dass es für verschiedene Arten der Programmierung verwendet werden kann, nicht nur für die Webentwicklung. Dies kann die Backend-Entwicklung, das Erstellen von Software und das Schreiben von Skripts umfassen. | |||
|- | |||
| [[Datei:TensorRT_Logo.png]] || [https://developer.nvidia.com/tensorrt TensorRT] ist ein Framework für maschinelles Lernen. Es wurde von NVIDIA herausgegeben, um auf deren Hardware KI Algorithmen zu verwenden. TensorRT wurde optimiert um auf NVIDIA GPUs ausgeführt zu werden. Dies ist vermutlich der schnellste Weg Algorithmen auszuführen. | |||
|- | |||
| [[Datei:Keras_Logo.png]] || [https://keras.io/ Keras] ermöglicht die schnelle Implementierung neuronaler Netzwerke für Anwendungen des Deep Learnings. Es handelt sich um eine Open-Source-Bibliothek, die in Python geschrieben ist und zusammen mit Frameworks wie TensorFlow oder Theano verwendet werden kann. | |||
|- | |||
| [[Datei:PyTorch_Logo.png]] || [https://pytorch.org/ PyTorch] ist zur Zeit eines der populärsten Frameworks zur Entwicklung und zum Trainieren von neuronalen Netzwerken. Es zeichnet sich vor allem durch seine hohe Flexibilität und die Möglichkeit aus, Standard-Python-Debugger einzusetzen. Dabei müssen keinerlei Abstriche bezüglich der Trainingsperformance gemacht werden. | |||
|- | |||
| [[Datei:ROS2.png|80px]]||Das Robot Operatong System 2 (ROS2) ist der Nachfolger von ROS1, einem Open-Source-Software-Framework, das sich in den letzten Jahren zu einem der beliebtesten Prototyping-Plattformen für die Entwicklung von Robotern entwickelt hat. | |||
|} | |||
== Spezifikation == | == Spezifikation == | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
| PC || | | PC || [https://www.arducam.com/nvidia-jetson-nano-b01-update-dual-camera/ NVIDIA® Jetson Nano™], PN: 3450 B01, 4 GB 64-bit LPDDR4 @ 25.6 GB, 64-bit Quad-Core ARM A57, 472 GFLOPS @5 W, 128 NVIDIA CUDA® GPU | ||
|- | |- | ||
| Kamera || Sony IMX219, 8 MP, 160° Sichtfeld, Auflösung | | Kamera || Sony IMX219, 8 MP, 160° Sichtfeld, Auflösung 3280x2464 pixel | ||
|- | |- | ||
| Motor || 37-520 UPM, 1:10 Übersetzung, 12 V, 740 UPM Leerlaufdrehzahl | | Motor || 37-520 UPM, 1:10 Übersetzung, 12 V, 740 UPM Leerlaufdrehzahl | ||
Zeile 29: | Zeile 66: | ||
| Servo || MG996R, 9 kg/cm Drehmoment bei 4,8 V | | Servo || MG996R, 9 kg/cm Drehmoment bei 4,8 V | ||
|- | |- | ||
| | | Akkus || 4 Akkus vom Typ 18650, 3,7 V, 2 parallel und 2 in Serie, (maximal 67mm Bauhöhe), Strom (Impulsstrombelastbarkeit) = xx A (xx A) | ||
|- | |- | ||
| Display || 0,91 inch ILED, 128x32 pixel | | Display || 0,91 inch ILED, 128x32 pixel | ||
Zeile 36: | Zeile 73: | ||
|- | |- | ||
| Wireless || NIC AC8265, 2,4 GHz/5 GHz, Bluetooth 4.2 | | Wireless || NIC AC8265, 2,4 GHz/5 GHz, Bluetooth 4.2 | ||
|- | |||
| AI Frameworks||TensorFlow, PyTorch, Caffe/Caffe2, Kera und MXNet | |||
|} | |} | ||
== Übersicht == | == Übersicht == | ||
=== Dokumentation === | === Dokumentation === | ||
*[https://www.waveshare.com/wiki/JetRacer_Pro_AI_Kit Wiki] | *[https://www.waveshare.com/wiki/JetRacer_Pro_AI_Kit Waveshare JetRacer Wiki] | ||
=== Hardware === | === Hardware === | ||
*[https://www.waveshare.com/w/upload/f/fa/Jetracer_pro_Assembly_EN.pdf Bauanleitung] | *[https://www.waveshare.com/w/upload/f/fa/Jetracer_pro_Assembly_EN.pdf Bauanleitung] | ||
*[[Der_sichere_Umgang_und_das_Laden_von_Akkumulatoren | Der sichere Umgang und das Laden von Akkumulatoren]] | |||
=== Software === | === Software === | ||
Zeile 51: | Zeile 91: | ||
== Weiterführende Links == | == Weiterführende Links == | ||
*[https://www.waveshare.com/wiki/JetRacer_AI_Kit Waveshare JetRacer Wiki] | |||
*[https://www.waveshare.com/jetracer-ai-kit.htm Herstellerseite: Waveshare] | *[https://www.waveshare.com/jetracer-ai-kit.htm Herstellerseite: Waveshare] | ||
*[https://eckstein-shop.de/WaveShare-JetRacer-Pro-AI-Kit-18433 Vertrieb] | *[https://eckstein-shop.de/WaveShare-JetRacer-Pro-AI-Kit-18433 Vertrieb: Eckstein] | ||
*[https:// | *[https://tutorial.cytron.io/2021/04/16/getting-started-with-robotic-operating-system-ros-and-jetracer-ai-kit/ Getting Started with Robotic Operating System (ROS) and JetRacer AI Kit] | ||
*[https:// | *[[JetRacer: Teach-In Tutorial| Teach-In Tutorial für Autonome Systeme]] | ||
{{#ev:youtube|https://youtu.be/Jul0s3qsRn8 | 500 | right | YouTube: Time Trials for Waveshare Jetracer Pro kit V.S. Traxxas Jetracer "DIY" build |frame}} | |||
{{#ev:youtube|https://youtu.be/bwDbZgUgWmc | 500 | right | YouTube: Time Trials for Waveshare Jetracer Pro kit V.S. Traxxas Jetracer "DIY" build |frame}} | |||
{{#ev:youtube|https://youtu.be/Azv2DRt0eoE | 500 | right | YouTube: Carolo Cup 2022 Team KITcar (mit Jetson Xavier NX) |frame}} | |||
== Literatur == | |||
* Chollet, F.: ''Deep Learning mit Python und Keras : Das Praxis-Handbuch vom Entwickler der Keras-Bibliothek.'' Frechen: mitp-Verlag, 1. Auflage 2018. ISBN: 9-7839-5845-8406. URL: [https://hshl.bsz-bw.de/cgi-bin/koha/opac-detail.pl?biblionumber=127029&query_desc=kw%2Cwrdl%3A%20deep%20learning HSHL Bib.] | |||
* Gedigk, S.: ''Spurerkennung aus Kameradaten mittels maschinellem Lernen.'' Hamburg: Hochschule für angewandte Wissenschaften Hamburg 2021. URL: [https://autosys.informatik.haw-hamburg.de/papers/2021GedigkSebastian.pdf 2021GedigkSebastian.pdf ] | |||
* Kim, P.: ''MATLAB deep learning : with machine learning, neural networks and artificial intelligence.'' Apress, 2017. URL: [https://hshl.bsz-bw.de/cgi-bin/koha/opac-detail.pl?biblionumber=133078&query_desc=kw%2Cwrdl%3A%20deep%20learning%20kim HSHL Bib.], [https://learning.oreilly.com/library/view/matlab-deep-learning/9781484228456/?ar= O'Reilley] | |||
* Wick, C.: ''Deep Learning''. Informatik-Spektrum volume 40, pages 103–107 (2017). URL: [https://link.springer.com/content/pdf/10.1007/s00287-016-1013-2.pdf https://doi.org/10.1007/s00287-016-1013-2] | |||
== Studentische Arbeiten == | |||
*[[Automated_lane_following_of_a_Waveshare_JetRacer_with_artificial_intelligence|Automated lane following of a Waveshare JetRacer with artificial intelligence]] | |||
*[[Simulationsumgebung für einen JetRacer]] | |||
---- | ---- | ||
→ zurück zum Hauptartikel: [[Robotik_und_autonome_Systeme|Robotik und autonome Systeme]] | → zurück zum Hauptartikel: [[Robotik_und_autonome_Systeme|Robotik und autonome Systeme]] |
Aktuelle Version vom 24. Juli 2024, 10:46 Uhr
Autor: Prof. Dr.-Ing. U. Schneider
Ort: Campus Lippstadt
Art: Praxissemester, Projektarbeit, Bachelorarbeit, Masterarbeit (die Schwierigkeitsstufe ist skalierbar)
Einleitung
Der JetRacer der Firma Waveshare wird gesteuert von einem NVIDIA® Jetson Nano™. Dieser Mini-Computer ermöglicht es, Millionen von kleinen, energieeffizienten KI-Systemen mit unglaublichen neuen Funktionen auszustatten. So entstehen neue Möglichkeiten für eingebettete IoT-Anwendungen, wie zum Beispiel einfache Netzwerkvideorekorder (NVRs), Haushaltsroboter oder intelligente Gateways mit vollen Analysefähigkeiten.
Jetson Nano ist außerdem das perfekte Werkzeug, um die Grundlagen von KI und Robotik zu erlernen – anhand von vorgefertigten Projekten und mit der Unterstützung einer aktiven und leidenschaftlichen Entwicklergemeinde. In unserem Fall steuert die KI einen JetRacer der Firma Waveshare.
Melden Sie sich bei Prof. Schneider wenn Sie an diesem Projekt mit einer studentischen Arbeit teilnehmen möchten.
Themengebiete sind:
- Entwicklung auf einem Linux PC
- Modellbasierte Entwicklung in einer Simulationsumgebung
- Künstliche Intelligenz/Deep Learning
- Modellbau
- 3D-Druck
Aufgabe des JetRacers könnten sein:
- Autonome Spurführung
- Autonomes Einparken
- Schildererkennung
- Objekterkennung und Klassifikation
- Berücksichtigung von Verkehrsregeln
- Sensorerweiterung (Odometrie, IMU,..)
- Adaptive Cruise Control (ACC)
- Gehäusenetwurf
NVIDIA Hersteller der NVIDIA® Jetson Nano™ Hardware | |
TensorFlow ist ein Open-Source-Framework für maschinelles Lernen und künstliche Intelligenz von Google. Einsatz findet TensorFlow insbesondere bei Deep Learning Anwendungen wie Bilderkennung und Textverarbeitung wie Natural Language Processing oder Spracherkennung. | |
OpenCV (englische Abk. für Open Computer Vision) ist eine freie Programmbibliothek mit Algorithmen für die Bildverarbeitung und Computer Vision. Sie ist für die Programmiersprachen C, C++, Python und Java geschrieben und steht als freie Software unter den Bedingungen der Apache 2 License. | |
Im Gegensatz zu HTML, CSS und Javascript ist Python eine Allzwecksprache, so dass es für verschiedene Arten der Programmierung verwendet werden kann, nicht nur für die Webentwicklung. Dies kann die Backend-Entwicklung, das Erstellen von Software und das Schreiben von Skripts umfassen. | |
TensorRT ist ein Framework für maschinelles Lernen. Es wurde von NVIDIA herausgegeben, um auf deren Hardware KI Algorithmen zu verwenden. TensorRT wurde optimiert um auf NVIDIA GPUs ausgeführt zu werden. Dies ist vermutlich der schnellste Weg Algorithmen auszuführen. | |
Keras ermöglicht die schnelle Implementierung neuronaler Netzwerke für Anwendungen des Deep Learnings. Es handelt sich um eine Open-Source-Bibliothek, die in Python geschrieben ist und zusammen mit Frameworks wie TensorFlow oder Theano verwendet werden kann. | |
PyTorch ist zur Zeit eines der populärsten Frameworks zur Entwicklung und zum Trainieren von neuronalen Netzwerken. Es zeichnet sich vor allem durch seine hohe Flexibilität und die Möglichkeit aus, Standard-Python-Debugger einzusetzen. Dabei müssen keinerlei Abstriche bezüglich der Trainingsperformance gemacht werden. | |
Das Robot Operatong System 2 (ROS2) ist der Nachfolger von ROS1, einem Open-Source-Software-Framework, das sich in den letzten Jahren zu einem der beliebtesten Prototyping-Plattformen für die Entwicklung von Robotern entwickelt hat. |
Spezifikation
PC | NVIDIA® Jetson Nano™, PN: 3450 B01, 4 GB 64-bit LPDDR4 @ 25.6 GB, 64-bit Quad-Core ARM A57, 472 GFLOPS @5 W, 128 NVIDIA CUDA® GPU |
Kamera | Sony IMX219, 8 MP, 160° Sichtfeld, Auflösung 3280x2464 pixel |
Motor | 37-520 UPM, 1:10 Übersetzung, 12 V, 740 UPM Leerlaufdrehzahl |
Servo | MG996R, 9 kg/cm Drehmoment bei 4,8 V |
Akkus | 4 Akkus vom Typ 18650, 3,7 V, 2 parallel und 2 in Serie, (maximal 67mm Bauhöhe), Strom (Impulsstrombelastbarkeit) = xx A (xx A) |
Display | 0,91 inch ILED, 128x32 pixel |
Chassis | Aluminiumlegierung |
Wireless | NIC AC8265, 2,4 GHz/5 GHz, Bluetooth 4.2 |
AI Frameworks | TensorFlow, PyTorch, Caffe/Caffe2, Kera und MXNet |
Übersicht
Dokumentation
Hardware
Software
Demos
Weiterführende Links
- Waveshare JetRacer Wiki
- Herstellerseite: Waveshare
- Vertrieb: Eckstein
- Getting Started with Robotic Operating System (ROS) and JetRacer AI Kit
- Teach-In Tutorial für Autonome Systeme
Literatur
- Chollet, F.: Deep Learning mit Python und Keras : Das Praxis-Handbuch vom Entwickler der Keras-Bibliothek. Frechen: mitp-Verlag, 1. Auflage 2018. ISBN: 9-7839-5845-8406. URL: HSHL Bib.
- Gedigk, S.: Spurerkennung aus Kameradaten mittels maschinellem Lernen. Hamburg: Hochschule für angewandte Wissenschaften Hamburg 2021. URL: 2021GedigkSebastian.pdf
- Kim, P.: MATLAB deep learning : with machine learning, neural networks and artificial intelligence. Apress, 2017. URL: HSHL Bib., O'Reilley
- Wick, C.: Deep Learning. Informatik-Spektrum volume 40, pages 103–107 (2017). URL: https://doi.org/10.1007/s00287-016-1013-2
Studentische Arbeiten
- Automated lane following of a Waveshare JetRacer with artificial intelligence
- Simulationsumgebung für einen JetRacer
→ zurück zum Hauptartikel: Robotik und autonome Systeme