Workshop 2 - SenGier/SabGier - Gruppe 1 - SoSe2024: Unterschied zwischen den Versionen
KKeine Bearbeitungszusammenfassung |
|||
(8 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 89: | Zeile 89: | ||
Je nach Ausführung kann der Sensor ±100°/s und ±400°/s messen. | Je nach Ausführung kann der Sensor ±100°/s und ±400°/s messen. | ||
Das Modul verfügt über einen 3.3V Spannungsregler, sodass dieser auch mit 5V betrieben werden kann. Die Drehgeschwindigkeit kann pro Drehachse an 2 Sensorpins abgelesen werden, wobei jeweils einer der Pins immer eine 4-Fach so hohe Geschwindigkeit messen kann, jedoch mit einer geringeren Genauigkeit (8-Bit AD-Wandler). Genauere informationen sind zu finden unter: https://a.pololu-files.com/product/1267 | Das Modul verfügt über einen 3.3V Spannungsregler, sodass dieser auch mit 5V betrieben werden kann. Die Drehgeschwindigkeit kann pro Drehachse an 2 Sensorpins abgelesen werden, wobei jeweils einer der Pins immer eine 4-Fach so hohe Geschwindigkeit messen kann, jedoch mit einer geringeren Genauigkeit (8-Bit AD-Wandler). Genauere informationen sind zu finden unter: https://a.pololu-files.com/product/1267 | ||
===Technische Funktionsweise des LPY510AL === | |||
Der LPY510AL ist ein MEMS-Gyrosensor (MEMS = Mikroelektromechanische Systeme), der für die Messung von Drehraten oder Drehgeschwindigkeiten in einem bestimmten Bereich entwickelt wurde. | |||
Bei der MEMS-Technologie werden winzige mechanische Strukturen auf einem Siliziumchip hergestellt werden. | |||
Diese Strukturen können sich bewegen oder verformen und werden verwendet, um physikalische Größen wie Beschleunigung oder Drehgeschwindigkeit zu messen. | |||
Mithilfe von kapazitiven Sensoren können die Bewegungen der Schwingungsmasse erfasst und in elektrische Signale umgewandelt werden. Diese Signale können anschließend interpretiert werden. | |||
=== Literatur === | === Literatur === | ||
Zeile 94: | Zeile 100: | ||
=== Sensordaten Verarbeitung=== | === Sensordaten Verarbeitung=== | ||
[[Datei:Messkette Gyrosensor 2023.png|800px|mini|links|Abbildung 5: Verarbeitung der Daten vom Gyrosensor]] | |||
<br clear="all"> | |||
=== Sensoreigenschaften=== | === Sensoreigenschaften=== | ||
Zeile 100: | Zeile 108: | ||
'''Messgenauigkeit:''' Abhängig von AD-Wandler Auflösung. Ausgabespannung (0V - 3.3V): -100/-400°/s (0V), 0°/s (1,23V), 100/400°/s (3.3V) (mit Uref 3.3V)<br /> | '''Messgenauigkeit:''' Abhängig von AD-Wandler Auflösung. Ausgabespannung (0V - 3.3V): -100/-400°/s (0V), 0°/s (1,23V), 100/400°/s (3.3V) (mit Uref 3.3V)<br /> | ||
'''Stromversorgung:''' 3.3V bis 5V<br /> | '''Stromversorgung:''' 3.3V bis 5V<br /> | ||
'''Offset:''' 1.23V <br /> | |||
'''Drift:'''0.02°/s/°C <br /> | |||
'''Rauschen:'''0.017°/s <br /> | |||
=== Sensoranschlussplan === | === Sensoranschlussplan === | ||
Zeile 186: | Zeile 197: | ||
|SabGier_psi_filt_K_deg_f64 | |SabGier_psi_filt_K_deg_f64 | ||
|- | |- | ||
|} | |||
{| class="wikitable" | |||
|+ Messtabelle | |||
|- | |||
! Nr. !! Lenkwinkel !! Gas !! Zeit in s | |||
|- | |||
| 1 || +5° (links) || 0,9 | |||
|| 17:01<br>17:00<br>16:88<br>16:00<br>16:02<br>16:04 | |||
|- | |||
| 2 || -5° (rechts) || 0,9 || 14:90<br>14:14<br>14:86<br>14:14<br>13:95<br>13:88 | |||
|} | |} | ||
Zeile 191: | Zeile 213: | ||
== Stillstand == | == Stillstand == | ||
[[Datei:Stillstand.png| | [[Datei:Stillstand.png|800px|mini|links|Abbildung 6: Gierrate und Gierwinkel im Stillstand]] | ||
Direkt nach der Kalibrierung ist der Offset bei 0°/s <br> | |||
Der Drift der Gierrate beträgt im Stillstand: -0.2986°/s <br> | |||
Der Drift des Gierwinkels beträgt im Stillstand: -0.2983°/s <br> | |||
Gierwinkel Offset: -0.3687° nach Kalibrierung: -0.0030° | |||
Gierrate Offset: -0.0309°/s nach Kalibrierung: -0.0444°/s | |||
<br clear="all"> | <br clear="all"> | ||
=== Rauschen | === Rauschen für den Stillstand === | ||
[[Datei:Rauschen Stillstand.png|800px|mini|links|Abbildung 7: Rauschen im Stillstand]] | |||
<br clear="all"> | |||
== Kreisfahrt im Uhrzeigersinn == | |||
[[Datei:Kreisfahrt Rechts.png|800px|mini|links|Abbildung 8: Gierwinkel und Gierrate in der Kreisfahrt rechts]] | |||
Gierwinkel Offset: -1760° nach Kalibrierung: -0.5261°<br> | |||
Gierrate Offset: -25.3498°/s nach Kalibrierung: 0.0327°/s nach 5 Sekunden | |||
<br clear="all"> | |||
=== Rauschen für die Kreisfahrt Rechts === | |||
[[Datei:Rauschen Kreisfahrt Rechts.png|800px|mini|links|Abbildung 9: Rauschen bei der Kreisfahrt Rechts]] | |||
== Kreisfahrt im | <br clear="all"> | ||
[[Datei: | == Kreisfahrt im Gegenuhrzeigersinn == | ||
[[Datei:KreisfahrtLinks.png|800px|mini|links|Abbildung 10: Gierwinkel und Gierrate in der Kreisfahrt links]] | |||
Gierwinkel Offset: -2554° nach Kalibrierung: -0.00027°<br> | |||
Gierrate Offset: -0.1102°/s nach Kalibrierung: -0.0393°/s | |||
<br clear="all"> | <br clear="all"> | ||
=== Rauschen | === Rauschen für die Kreisfahrt Links === | ||
[[Datei:Rauschen Kreisfahrt Links.png|800px|mini|links|Abbildung 11: Rauschen bei der Kreisfahrt Links]] | |||
<br clear="all"> | |||
== | == Open Loop Simulation == | ||
[[Datei: | Mit einer Open Loop Simulation wurde die Eckfrequenz des PT1-Filters angepasst, um dessen Auswirkung auf die Gierrate zu überprüfen. Für die Open Loop Simulation wurden die Messdaten der Kreisfahrt links verwendet. Die benötigten Messdaten wurden mit dem "From Workspace" Block in die Simulink Bilbliothek SabGier eingefügt. Die folgende Abbildung zeigt das Simulink Modell: | ||
[[Datei:Open Loop Main Gierrate.png|800px|mini|links|Abbildung 11: Open Loop Main Simulink Modell]] | |||
<br clear="all"> | |||
Damit die gefilterte Gierrate in Matlab dargestellt werden kann, wurde diese mit dem "To Workspace" Block nach der Simulation in das Matlab Workspace geladen. | |||
Um die Auswirkung der Frequenz des PT1 Filters darzustellen, wurden mehrere Simulationen durchgeführt. Für jede Simulation wurde die Variable "PAR_SabGier_f_K_f64" angepasst, welche sich in der "param_Sab.m" Datei befindet. Nach jeder Simulation wurde die gefilterte Gierrate in einer .mat Datei abgespeichert. Die einzelnen Gierraten wurden in einem weiteren Skript einzelnt geöffnet und in einem Plot dargestellt. Die folgende Abbildung zeigt einen Teil der Messung für die Kreisfahrt Links. | |||
[[Datei:OpenLoop Eckfrequenz PT1-Filters.png|800px|mini|links|Abbildung 12: Open Loop Simulation für die Eckfrequenz des PT1-Filters]] | |||
<br clear="all"> | <br clear="all"> | ||
Die Abbildung 11 zeigt das ungefilterte Gierraten Signal und das gefilterte Signal mit unterschiedlichen Eckfrequenz des PT1-Filters. Die Frequenzen gehen dabei von 0,2Hz bis 1Hz in 0,2Hz Schritten. | |||
Bei den vorherigen Abbildung wurde eine Frequenz von 0,2Hz verwendet. Diese filtert das Signal relativ gut, jedoch entsteht dabei ein Delay. Die schnelleren Frequenzen filtern das Signal schlechter, dafür reagieren diese schneller. | |||
Wir sind zu dem Ergebnis gekommen, dass eine Frequenz von 0,4Hz einen gutem Kompromiss von Schnelligkeit und Glättung bietet. Diese Frequenz sollte übernommen werden | |||
<br clear="all"> | |||
== Literatur == | == Literatur == |
Version vom 9. Mai 2024, 20:24 Uhr
Autoren: Paul Janzen & Daniel Block
Hauptseite
SDE Praktikum
Termine SoSe-24
Lernzielkontrolle 1
Abstandssensorik (SenAbs)
Beschreibung
Aufgabe 1.3 Vergleich Softwarearchitektur Online/Offline-Modell
In diesem Artikel wird die Messkette vom Infrarotsensor (Sharp GP2D120) aufgezeigt. Außerdem werden die unterschiede der Messkette in einer Vergleichstabelle dargestellt.
Genauere Informationen zum Sensor finden Sie unter: [1]
Messketten
Offline Modell:
Online Modell:
Vergleich I/O
Eingänge | Ausgänge |
---|---|
SEN_eing | SenAbs_xVR_K_f64 |
SenAbs_xHR_K_f64 | |
SenAbs_yHR_K_f64 | |
SenAbs_yHL_K_f64 |
Eingänge | Ausgänge |
---|---|
SenAbs_ADC_xVR_f64 | SenAbs_xVR_K_f64 |
SenAbs_ADC_xHR_f64 | SenAbs_xHR_K_f64 |
SenAbs_ADC_yHR_f64 | SenAbs_yHR_K_f64 |
SenAbs_ADC_yHL_f64 | SenAbs_yHL_K_f64 |
Blöcke |
---|
Matlab Funktion |
Blöcke |
---|
ADC |
Gain |
Lookup Table |
Median Filter |
Gyro LPR510AL
Lernzielkontrollfragen 1
In dem Wagen 1 ist der LPR510AL Gierratensensor verbaut.
Einbauposition
Der Gierratensensor ist im gelben Rechteck auf der Hauptplatine verbaut.
Primärsensor
Der LPY510AL ist ein 2-Achsen Sensor (X-Z), welcher die Gierrate (Z) und das Nicken (X) misst. Dieser ist auf der Hauptplatine verlötet. Je nach Ausführung kann der Sensor ±100°/s und ±400°/s messen. Das Modul verfügt über einen 3.3V Spannungsregler, sodass dieser auch mit 5V betrieben werden kann. Die Drehgeschwindigkeit kann pro Drehachse an 2 Sensorpins abgelesen werden, wobei jeweils einer der Pins immer eine 4-Fach so hohe Geschwindigkeit messen kann, jedoch mit einer geringeren Genauigkeit (8-Bit AD-Wandler). Genauere informationen sind zu finden unter: https://a.pololu-files.com/product/1267
Technische Funktionsweise des LPY510AL
Der LPY510AL ist ein MEMS-Gyrosensor (MEMS = Mikroelektromechanische Systeme), der für die Messung von Drehraten oder Drehgeschwindigkeiten in einem bestimmten Bereich entwickelt wurde. Bei der MEMS-Technologie werden winzige mechanische Strukturen auf einem Siliziumchip hergestellt werden. Diese Strukturen können sich bewegen oder verformen und werden verwendet, um physikalische Größen wie Beschleunigung oder Drehgeschwindigkeit zu messen. Mithilfe von kapazitiven Sensoren können die Bewegungen der Schwingungsmasse erfasst und in elektrische Signale umgewandelt werden. Diese Signale können anschließend interpretiert werden.
Literatur
Datenblatt SVN Checkout URL: https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Literatur/Datenblätter/Gyro/
Sensordaten Verarbeitung
Sensoreigenschaften
Messgröße: Zentrifugalkraft [N]
Messbereich: +/-100°/s und +/-400°/s
Messgenauigkeit: Abhängig von AD-Wandler Auflösung. Ausgabespannung (0V - 3.3V): -100/-400°/s (0V), 0°/s (1,23V), 100/400°/s (3.3V) (mit Uref 3.3V)
Stromversorgung: 3.3V bis 5V
Offset: 1.23V
Drift:0.02°/s/°C
Rauschen:0.017°/s
Sensoranschlussplan
Nr | Name | Funktion | dSPACE Anschluss |
---|---|---|---|
1 | VIN | Spannungseingang des Boards | |
2 | GND | Masse | |
3 | Vref | Referenzspannung | |
4 | 4Z | Drehung um die Z-Achse (Gieren) | |
5 | Z | Drehung um die Z-Achse (Gieren) | DS1104MUX ADC1 CH3 |
Messungsaufbau
Versuche:
1. 3 min im Stillstand
2. 5 Runden im Uhrzeigersinn
3. 5 Runden im Gegenuhrzeigersinn
Messungsablauf:
1. Video Aufnahmestart (Für die Zeitenmessung)
2. Messung start im ControlDesk
3. Resetbetätigung am Fahrzeug (Zum Kalibrieren)
4. Fahren. (Die erste und letze Runde zählt nicht)
5. Aufnahme beenden
Aufgenommene Daten:
Nr | Variablen |
---|---|
1 | Zeit |
2 | SabGier_Reset_bit |
3 | SabGier_psi_filt_K_f64 |
4 | SabGier_psip_filt_K_f64 |
5 | SabGier_psip_offset_K_f64 |
6 | SabGier_psip_unfilt_K_f64 |
7 | SenGier_psi_reset_bit |
8 | SenGier_psip_OffsetSensorrohwert_f64 |
9 | SenGier_psip_roh_ADC_f64 |
10 | SenGier_psip_roh_K_f64 |
11 | SabGier_psi_filt_K_deg_f64 |
Nr. | Lenkwinkel | Gas | Zeit in s |
---|---|---|---|
1 | +5° (links) | 0,9 | 17:01 17:00 16:88 16:00 16:02 16:04 |
2 | -5° (rechts) | 0,9 | 14:90 14:14 14:86 14:14 13:95 13:88 |
Signalanalyse
Stillstand
Direkt nach der Kalibrierung ist der Offset bei 0°/s
Der Drift der Gierrate beträgt im Stillstand: -0.2986°/s
Der Drift des Gierwinkels beträgt im Stillstand: -0.2983°/s
Gierwinkel Offset: -0.3687° nach Kalibrierung: -0.0030°
Gierrate Offset: -0.0309°/s nach Kalibrierung: -0.0444°/s
Rauschen für den Stillstand
Kreisfahrt im Uhrzeigersinn
Gierwinkel Offset: -1760° nach Kalibrierung: -0.5261°
Gierrate Offset: -25.3498°/s nach Kalibrierung: 0.0327°/s nach 5 Sekunden
Rauschen für die Kreisfahrt Rechts
Kreisfahrt im Gegenuhrzeigersinn
Gierwinkel Offset: -2554° nach Kalibrierung: -0.00027°
Gierrate Offset: -0.1102°/s nach Kalibrierung: -0.0393°/s
Rauschen für die Kreisfahrt Links
Open Loop Simulation
Mit einer Open Loop Simulation wurde die Eckfrequenz des PT1-Filters angepasst, um dessen Auswirkung auf die Gierrate zu überprüfen. Für die Open Loop Simulation wurden die Messdaten der Kreisfahrt links verwendet. Die benötigten Messdaten wurden mit dem "From Workspace" Block in die Simulink Bilbliothek SabGier eingefügt. Die folgende Abbildung zeigt das Simulink Modell:
Damit die gefilterte Gierrate in Matlab dargestellt werden kann, wurde diese mit dem "To Workspace" Block nach der Simulation in das Matlab Workspace geladen.
Um die Auswirkung der Frequenz des PT1 Filters darzustellen, wurden mehrere Simulationen durchgeführt. Für jede Simulation wurde die Variable "PAR_SabGier_f_K_f64" angepasst, welche sich in der "param_Sab.m" Datei befindet. Nach jeder Simulation wurde die gefilterte Gierrate in einer .mat Datei abgespeichert. Die einzelnen Gierraten wurden in einem weiteren Skript einzelnt geöffnet und in einem Plot dargestellt. Die folgende Abbildung zeigt einen Teil der Messung für die Kreisfahrt Links.
Die Abbildung 11 zeigt das ungefilterte Gierraten Signal und das gefilterte Signal mit unterschiedlichen Eckfrequenz des PT1-Filters. Die Frequenzen gehen dabei von 0,2Hz bis 1Hz in 0,2Hz Schritten.
Bei den vorherigen Abbildung wurde eine Frequenz von 0,2Hz verwendet. Diese filtert das Signal relativ gut, jedoch entsteht dabei ein Delay. Die schnelleren Frequenzen filtern das Signal schlechter, dafür reagieren diese schneller.
Wir sind zu dem Ergebnis gekommen, dass eine Frequenz von 0,4Hz einen gutem Kompromiss von Schnelligkeit und Glättung bietet. Diese Frequenz sollte übernommen werden