<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.hshl.de/wiki/index.php?action=history&amp;feed=atom&amp;title=Experiment_Preparation_For_Autonomous_Driving</id>
	<title>Experiment Preparation For Autonomous Driving - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.hshl.de/wiki/index.php?action=history&amp;feed=atom&amp;title=Experiment_Preparation_For_Autonomous_Driving"/>
	<link rel="alternate" type="text/html" href="https://wiki.hshl.de/wiki/index.php?title=Experiment_Preparation_For_Autonomous_Driving&amp;action=history"/>
	<updated>2026-05-01T04:42:36Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in HSHL Mechatronik</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://wiki.hshl.de/wiki/index.php?title=Experiment_Preparation_For_Autonomous_Driving&amp;diff=135158&amp;oldid=prev</id>
		<title>Evrard.leuteu-feukeu@stud.hshl.de: Die Seite wurde neu angelegt: „=== Materials and Setup ===  * Jetson Nano Developer Kit * USB Gamepad * MATLAB® 2020B (compatible with CUDA 10.2) [https://de.mathworks.com/support/requirements/supported-compilers.html] * Wi-Fi connection between Jetson Nano and host PC   === Experiment Design and Requirements ===  * MATLAB® was used to connect to the Jetson Nano via SSH. * The Gamepad receiver had to be physically connected to the Jetson Nano. * MATLAB® controlled the Gamepad indire…“</title>
		<link rel="alternate" type="text/html" href="https://wiki.hshl.de/wiki/index.php?title=Experiment_Preparation_For_Autonomous_Driving&amp;diff=135158&amp;oldid=prev"/>
		<updated>2025-04-30T14:56:37Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „=== Materials and Setup ===  * Jetson Nano Developer Kit * USB Gamepad * MATLAB® 2020B (compatible with CUDA 10.2) [https://de.mathworks.com/support/requirements/supported-compilers.html] * Wi-Fi connection between Jetson Nano and host PC   === Experiment Design and Requirements ===  * MATLAB® was used to connect to the Jetson Nano via SSH. * The Gamepad receiver had to be physically connected to the Jetson Nano. * MATLAB® controlled the Gamepad indire…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=== Materials and Setup ===&lt;br /&gt;
&lt;br /&gt;
* Jetson Nano Developer Kit&lt;br /&gt;
* USB Gamepad&lt;br /&gt;
* MATLAB® 2020B (compatible with CUDA 10.2) [https://de.mathworks.com/support/requirements/supported-compilers.html]&lt;br /&gt;
* Wi-Fi connection between Jetson Nano and host PC&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Experiment Design and Requirements ===&lt;br /&gt;
&lt;br /&gt;
* MATLAB® was used to connect to the Jetson Nano via SSH.&lt;br /&gt;
* The Gamepad receiver had to be physically connected to the Jetson Nano.&lt;br /&gt;
* MATLAB® controlled the Gamepad indirectly using SSH commands to access libraries on the Jetson.&lt;br /&gt;
* Data such as images and steering values were collected and transferred via Wi-Fi.&lt;br /&gt;
&lt;br /&gt;
[[File:matlab_ssh_code&lt;br /&gt;
[[Datei:Matlab ssh code.jpg|mini]]&lt;br /&gt;
.jpg|frame|Fig. 3: Ssh code snipped to connect using MATLAB and JetRacer]]&lt;br /&gt;
&lt;br /&gt;
== Experiment Procedure ==&lt;br /&gt;
&lt;br /&gt;
=== Step 1: System Connection and Gamepad Control ===&lt;br /&gt;
Since MATLAB® could not directly access the Gamepad receiver, an SSH command method was developed to control the Jetson Nano libraries from the background without delay or signal loss.&lt;br /&gt;
&lt;br /&gt;
=== Step 2: Data Collection ===&lt;br /&gt;
* Data was collected using the integrated camera at 256×256 pixel resolution.&lt;br /&gt;
* Real-time steering commands were logged and synchronized with images.&lt;br /&gt;
* To reduce image distortion, camera calibration was performed using a calibration256by256.mat parameter.&lt;br /&gt;
[[File:Camera_no_calibration.png|frame|Fig. 5: Camera setup for image without calibration]]&lt;br /&gt;
[[File:&lt;br /&gt;
[[Datei:Camera_with_calibration.png|mini]]&lt;br /&gt;
.png|frame|Fig. 6: Camera setup for image with calibration]]&lt;br /&gt;
&lt;br /&gt;
=== Step 3: Neural Network Training ===&lt;br /&gt;
* Initially, a pretrained network was used with RGB images, but results were poor. with the following parameters:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Pretrained 50 epoch.png|mini]]&lt;br /&gt;
[[Datei:Pretrained 50 epoch 2.png|mini]]&lt;br /&gt;
&lt;br /&gt;
* Regression methods were tried but also showed poor performance. with the following parameters:&lt;br /&gt;
&lt;br /&gt;
[[File:regression_50_epoch2.png|mini]]|Fig. 9: regression_50_epoch2]]&lt;br /&gt;
&lt;br /&gt;
[[File:regression_50_epoch.png|mini]]|frame|Fig. 10: regression_50_epoch]]&lt;br /&gt;
&lt;br /&gt;
* The project switched to **classification** using **discrete steering values**. with the following parameters:&lt;br /&gt;
&lt;br /&gt;
* MATLAB® Apps (GUI) were used to manually annotate images by clicking the correct path.&lt;br /&gt;
&lt;br /&gt;
=== Step 4: System Optimization ===&lt;br /&gt;
* Lane tracking algorithms were integrated to automatically label lane positions.&lt;br /&gt;
* Additional features like lane angles were extracted to improve model inputs.&lt;br /&gt;
* Grayscale image recordings were used to achieve better generalization and faster processing.&lt;br /&gt;
* Still using **classification**. with the following parameters:&lt;br /&gt;
[[File:&lt;br /&gt;
[[Datei:Cleaned CNN Classify.png|mini]]&lt;br /&gt;
.png|frame|Fig. 13: Camera setup for image recording during driving]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Experiment Analysis ==&lt;br /&gt;
&lt;br /&gt;
=== Training Results ===&lt;br /&gt;
* Models trained on discrete steering values showed significantly better results than regression-based approaches.&lt;br /&gt;
* Grayscale recordings increased model stability.&lt;br /&gt;
* Calibrated images helped reduce the steering error caused by lens distortion.&lt;br /&gt;
&lt;br /&gt;
=== System Performance ===&lt;br /&gt;
* A maximum speed limit (~1 m/s) was successfully enforced via software.&lt;br /&gt;
* The JetRacer could autonomously drive several laps counterclockwise in the right lane.&lt;br /&gt;
* However, simultaneous recording, steering, and saving caused performance bottlenecks due to the Jetson Nano’s limited resources.&lt;br /&gt;
&lt;br /&gt;
=== Limitations ===&lt;br /&gt;
* Hardware constraints limited the maximum processing speed.&lt;br /&gt;
* Initial data quality was poor due to randomized manual steering input.&lt;br /&gt;
* Better results were obtained after switching to discrete, consistent control signals.&lt;br /&gt;
&lt;br /&gt;
== Summary and Outlook ==&lt;br /&gt;
&lt;br /&gt;
This project demonstrated that it is possible to optimize autonomous navigation on the JetRacer using a combination of classical control algorithms and neural networks. Despite hardware limitations, stable autonomous driving behavior was achieved.&lt;br /&gt;
&lt;br /&gt;
Future improvements could include:&lt;br /&gt;
* Expanding the dataset with more diverse environmental conditions.&lt;br /&gt;
* Flash working Model directly on jetson nano using gpu coder&lt;br /&gt;
* Use accurate gamepad and use more complex training method.&lt;br /&gt;
* Improving automated labeling and refining the PD controller parameters for faster driving without loss of robustness.&lt;/div&gt;</summary>
		<author><name>Evrard.leuteu-feukeu@stud.hshl.de</name></author>
	</entry>
</feed>