Hall-Sensor: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
 
(163 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Bild:Sharp GP2D120.jpg|mini|Ansicht des Sharp GP2D120]]
{|align="right"
|[[Bild:Hall LRP Vector X12 StockSpec Motor seite.jpg|mini|250px|Abbildung 1: Ansicht des Motors LRP Vector X12 StockSpec 17.5T, in dem die Hall-Sensorik integriert ist.]]
|[[Bild:Hall LRP Vector X12 StockSpec Motor hinten.jpg|mini|250px|Abbildung 2: Anschlüsse des Motors, über den unteren Steckkontakt wird die Hall-Sensorik ausgewertet.]]
|}
 
'''Autoren:''' [[Benutzer:Julin-Frederik Horstkoetter| Julin Horstkötter]], [[Benutzer:Levin Baumeister|Levin Baumeister]]
'''Autoren:''' [[Benutzer:Julin-Frederik Horstkoetter| Julin Horstkötter]], [[Benutzer:Levin Baumeister|Levin Baumeister]]


Der Hall-Sensor des Autonomen Fahrzeugs stellt einen entscheidenden Teil der gesamten Sensorik dar, denn dieser dient der Ermittlung der Fahrzeuggeschwindigkeit und somit auch der zurückgelegten Strecke. Der Hall-Sensor befindet sich am Antriebsmotor, es sollen zusätzlich zu der aktuellen Geschwindigkeit, die Fahrtrichtung bestimmt werden. Diese zu erfassenden sind wesentliche Bestandteile des Regelkreises der Bahnplanung und Spurführung. Die Messung der zurückgelegten Strecke wird für die Bestimmung der Parklückengröße benötigt und somit im [[AEP_-_Einparkalgorithmus|Einparkalgorithmus]].
Der Hall-Sensor des Autonomen Fahrzeugs stellt einen entscheidenden Teil der gesamten Sensorik dar, denn dieser dient der Ermittlung der Fahrzeuggeschwindigkeit und somit auch der zurückgelegten Strecke. Der Hall-Sensor befindet sich am Antriebsmotor (siehe Abb. 1+2), es sollen zusätzlich zu der aktuellen Geschwindigkeit, die Fahrtrichtung bestimmt werden. Diese zu erfassenden sind wesentliche Bestandteile des Regelkreises der Bahnplanung und Spurführung. Die Messung der zurückgelegten Strecke wird für die Bestimmung der Parklückengröße benötigt und somit im [[AEP_-_Einparkalgorithmus|Einparkalgorithmus]].
 
[[https://wiki.hshl.de/wiki/index.php/Signalverarbeitung Signalverarbeitung der HAll-Sensoren alter Artikel ]]
 
[[https://wiki.hshl.de/wiki/index.php/Fahrzeugsoftware Parameter für die Umwandlung und Auswerttung der HAll-Sensoren param_SEN_online.m]]


== Kurzinformation ==
== Kurzinformation ==
[[Bild:IR_Kennlinie.PNG|mini|Kennlinie des Infrarotsensors]]
[[Bild:Hall-Signal-Pegel.JPG|mini|650px|Abbildung 3: Hall-Signal-Pegel des eingesetzten Motors LRP Vector X12 StockSpec 17.5T]]
 
'''Autoren:''' [[Benutzer:Martin Theine|Martin Theine]] und [[Benutzer:Patrick Schumann|Patrick Schumann]]
Wie bereits erläutert ist der Hall-Sensor ein Bestandteil des Antriebsmotors des Fahrzeugs. Der eingesetzte Motor LRP Vector X12 StockSpec 17.5T besitzt insgesamt drei Hall-Sensoren, die in einer Kombination verschaltet sind. Die Hallsensorik des Motors besteht aus drei um jeweils 120° (2/3 π) phasenverschobene Hallsensoren, die Rechtecksignale erzeugen, die jeweils für eine halbe Motorumdrehung anliegen. Pro Motorumdrehung gibt es also insgesamt sechs Flankenwechsel und anhand der Zustandsänderung ist die Drehrichtung bestimmbar. Zwischen zwei Flankenwechsel dreht sich der Motor um den Winkel λ = 60° = 1/3 π. In Abbildung 1 wird dieser Zusammenhang visualisiert. Dabei wird deutlich, dass es insgesamt sechs gültige Signal–Pegel–Kombinationen, also sechs Zustände gibt.
<br />
'''Stand:''' 12.02.2021
<br />
<br />
Wie bereits erläutert ist der Hall-Sensor ein Bestandteil des Antriebsmotors des Fahrzeugs. Der eingesetzte Motor LRP Vector X12 StockSpec 17.5T besitzt insgesamt drei Hall-Sensoren, die in einer Kombination verschaltet sind. Die Hallsensorik des Motors besteht aus drei um jeweils 120° (2/3 π) phasenverschobene Hallsensoren, die Rechtecksignale erzeugen, die jeweils für eine halbe Motorumdrehung anliegen.
Pro Motorumdrehung gibt es also insgesamt sechs Flankenwechsel und anhand der Zustandsänderung ist die Drehrichtung bestimmbar. Zwischen zwei Flankenwechsel dreht sich der Motor um den Winkel λ = 60° = 1/3 π. In der Abbildung rechts (siehe Abb. 3) wird dieser Zusammenhang visualisiert. Dabei wird deutlich, dass es insgesamt sechs gültige Signal–Pegel–Kombinationen, also sechs Zustände gibt. Bevor die spezifische Sensorik im Detail erläutert wird, erfolgt die Beschreibung des Sensorprinzips.


== Funktionsweise ==
== Funktionsweise ==
Der verwendete Infrarotsensor besteht im Generellen aus zwei Dioden. Separiert wird zwischen einer Leuchtdioden (LED) und einer Fotodiode (PSD). Außerdem ist eine integrierte Schaltung (IC = integrated circuit) in den Sensor eingegliedert, die die Auswertung der Distanzmessung übernimmt.


Sobald die LED über eine Treiberschaltung versogt wird, sendet diese Photonen im IR-Bereich aus. In der Regel wird bei IR-Sensoren ein Wellenlängenbereich von 880 oder 950 nm verwendet. Der Sharp GP2D120 nutzt eine Wellenlänge von ca. 850 nm.
Der Hall-Sensor gehört zu den magnetostatischen Sensoren und basiert auf einem [https://de.wikipedia.org/wiki/Galvanomagnetische_Effekte Galvanomagnetischen Effekt]. Diese Gruppe von Sensoren messen ein magnetisches Gleichfeld innerhalb eines stromdurchflossenden Halbleiterplättchens. Das Feld der magnetischen Induktion <math>B</math> des Magneten durchsetzt das Plättchen senkrecht, sodass die Ladungsträger durch die Lorenzkraft senkrecht zum Feld und zum Strom <math>I</math>  um den Winkel <math>\varphi</math> aus ihrer sonst geraden Bahn abgelenkt werden (siehe Abb. 4). Die Messgröße entwickelt sich schließlich, wenn quer zur Stromrichtung, zwischen zwei sich gegenüber liegenden Randpunkten des Plättchens, eine zum Feld <math>B</math> und Strom <math>I</math> proportionale Hall-Spannung <math>U_H</math> abgegriffen wird: [[Bild:Hall-Sensor Galvanomagnetische Effekte.PNG|mini|Abbildung 4: Veranschaulichung des galvanomagnetischen Effektes.]]


Das Messkonzept des Sensors basiert auf einer Laufzeitmessung und Triangulation. Trifft das beschriebene Licht auf ein Objekt, wird es auf die Photodiode reflektiert. Die Zeit vom Aussenden des Lichtimpulses bis zum eintreffen an der Photodiode wird bestimmt.
<math>U_H=R_H\cdot I \cdot  \frac{B}{d} </math>.


<math>R_H</math> beschreibt die Materialkonstante, den sogenannten Hallkoeffizient, <math>d</math> stellt wiederum die Dicke des Plättchens dar. In der Abbildung rechts ist das grundsätzliche Sensorprinzip nochmals gezeigt.  Im Folgenden wird die Beschriftung erklärt:


=== Interner Aufbau ===
'''a''': Schaltung, '''b''': Verlauf der Hallspannung <math>U_H</math>, '''c''': Zunahme des Plättchenwiderstands <math>R</math>, <math>B</math>: magnetische Induktion, <math>I</math>: Plättchenstrom, <math>I_H</math>: Hallstrom, <math>I_V</math>: Versorgungsstrom, <math>U_R</math>: Längsspannung, <math>\alpha</math>: Ablenkung der Elektronen durch Magnetfeld. <ref>vgl. die Informationen zu Hall-Sensor mit: Reif, Konrad: Sensoren im Kraftfahrzeug. Wiesbaden: Springer Vieweg, 2016. ISBN: 9783658112110. S. 34f.</ref>
[[Bild:IR schematic Sharp GP2D120.PNG|500px|mini|Blockschaltbild des Infrarotsensors]]
Der interne Aufbau ist Abbildung „Blockschaltbild des Infrarotsensors“ zu entnehmen. Es handelt sich um einen IC (Integrated Circuit), der eine LED (lichtemittierende Diode) und eine PSD (positionsempfindliche Fotodiode) ansteuert. Der Aufbau des ICs untergliedert sich wiederum in
=== Signalverarbeitung ===
* eine Signalverarbeitende Einheit,
In diesem Abschnitt werden die Besonderheiten des eingesetzten Motors detaillierter beschrieben. Die Getriebeübersetzung sorgt dafür, dass sich der Elektromotor viermal drehen muss um eine vollständige Radumdrehung zu erzeugen  (Ü=0.25). Die möglichen Signal–Kombinationen der Hall–Sensorik sind in der Abbildung [[:Bild:Hall-Signal-Pegel.JPG|Hall-Signal-Pegel]] dargestellt. Dabei ist T<sub>F-F</sub> die vergangene Zeit zwischen zwei Flankenwechsel, in der sich der Motor um den Winkel λ dreht. In der aktuellen Implementierung werden ADC–Eingänge der dSPACE–Karte verwendet um die Zustände zu erkennen. Dabei ist es bei digitalen Signalen (die Hall–Sensorik gibt wie aus der Abbildung [[:Bild:Hall-Signal-Pegel.JPG|Hall-Signal-Pegel]] ersichtlich V<sub>CC</sub>–kompatible Pegel aus: Physisch 5 V entspricht einer logischen eins, 0 V einer logischen Null) eigentlich sehr unüblich und in der Regel unpraktisch ADCs zu verwenden. Nicht nur weil es dann nötig ist, via Software die Pegelzustände zu erkennen. Dies wird aktuell mit Relational Operators mit einem derzeit eher kritischen Schwellwert von 5 V durchgeführt. Typische Grenzen für solche Pegel sind ≥ 0, 7 V<sub>CC</sub> für logisch eins und ≤ 0, 2 V<sub>CC</sub> für logisch null, damit mögliche Spannungsoffsets nicht zu einer Fehl–Erkennung führen können. Würden hier GPIOs als digitale Eingänge genutzt, lässt sich die Software seitige Erkennung sparen. Mithilfe der Combinatorial Logic werden die Zustände der drei Hall–Signale in Dezimalzahlen umgewandelt. Die insgesamt sechs möglichen Zustände sind in Abbildung [[:Bild:Hall-Signal-Pegel.JPG|Hall-Signal-Pegel]] ebenfalls dargestellt. Daraus ergeben sich in einer uint8 Darstellung die Dezimalzahlen eins bis fünf. <ref>vgl. Anleitung und Dokumentation. Carolo-Cup. https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Dokumentation/Dokumentaton_LaTeX/</ref>
* eine Schaltung zur Steuerung der LED,
* eine Spannungsregelung,
* eine Oszillatorschaltung,
* eine Schaltung zur Nachverarbeitung des Ausgangssignals.


=== Laufzeitmessung ===
== Hardwareanbindung ==
Mithilfe der Laufzeitmessung einer physikalischen Welle ergibt sich die Distanz&nbsp;d aus:
[[Bild:Hall-Sensor Motor-Anschluss.PNG|450px|mini|Abbildung 5: Anschluss des Motors an den Motortreiber, mit dem Anschluss der Hall-Sensorik.]]
 
Wie bereits erläutert ist die Hall-Sensorik im Antriebsmotor integriert. Der Anschluss an den Motor lässt sich in der Abbildung rechts (siehe Abb. 5) erkennen, die Pinbelegung des gesamten Motors in der folgenden Tabelle (siehe Tabelle 1). Ebenfalls ist dort die Farbe der Anschlusskabel hinterlegt.
<math>d=\frac{v_w \cdot \Delta t}{2 \cdot n}</math>
[[Bild:IR_Timing_Chart.PNG|650px|mini|Zeitdiagramm des Infrarotsensors]]
Dabei entspricht vw der Ausbreitungsgeschwindigkeit der Welle. Bei Verwendung des Mediums Luft, wie dies hier der Fall ist, entspricht die Lichtgeschwindigkeit der Ausbreitungsgeschwindigkeit, also:
 
<math>v_w = c \approx 2,99\cdot10^8\,m/s</math>.
 
<math>\Delta\,t</math> beschreibt die gemessene Laufzeit der Photonen. <math>n</math> beschreibt die Brechzahl des Mediums. Da die Formel nicht nur bei der Verwendung in Licht gilt, ist der Brechungsindex n ebenfalls mit angegeben. Für das Übertragungsmedium Luft liegt dieser Wert bei 1.
 
Der zeitliche Ablauf der Auswertung während des Betriebs ist in der Abbildung „Zeitdiagramm des Infrarotsensors“ dargestellt. Der Sensor wird eingeschaltet, indem die Versorgungsspannung <math>V_{CC}</math> angelegt wird. Eine Messung benötigt 38.3 ms ± 9.6 ms. Während der ersten Messung wird am Ausgang <math>V_0</math> ein unsicheres, bzw. ungültiges Ergebnis ausgegeben. Nach der ersten Messung wird der analoge Ausgabewert mit einer maximalen Verzögerung von 5 ms an den Ausgang übergeben. Darauffolgend sind kontinuierlich gültige Messwerte am Ausgang vorhanden.
 
Tiefergehende Informationen zu der verwendeten Sensortechnik sind in der Literatur „Sensoren für die Prozess- und Fabrikautomation“ (siehe Literatur) und im Datenblatt zu finden.
 
=== Triangulation ===
 
Das PSD-Element (PSD = position sensitive device) des Sensors ermittelt anhand positionsempfindlicher Fotodioden die Position des Lichtflecks. Dabei fällt ein Lichtpunkt auf die Oberfläche einer ansonsten hochohmigen p-Schicht. Die dabei entstehenden Ströme sind umgekehrt proportional zur Entfernung des zugehörigen Lichtpunktes. Für eine eindimensionale Lateraleffekt-Fotodiode ergibt sich dazu folgender Zusammenhang zwischen dem zu detektierenden Abstand und dem daraus resultierenden Ausgangsstrom:
 
<math>I_1=\frac{a_2}{R} \cdot I</math>  und  <math>I_2=\frac{a_1}{R} \cdot I</math>  oder  <math>\frac{I_1}{I_2} = \frac{a_2}{a_1}</math>
 
Dabei ist:
 
Gesamtstrom <math>\,d</math>
 
Gesamtwiderstand der Elektrode <math>\,R</math>
 
Abstand <math>\,a_i</math>
 
Der Gesamtwiderstand ist als linear anzunehmen. Für ein tiefergehendes Verständnis wird auf die angegebene Literatur verwiesen.
 
== Einbauposition und Hardwareanbindung ==
Wie bereits erläutert sind an dem autonomen Fahrzeug vier Infrarotsensoren verbaut, zwei auf der rechten Seite des Fahrzeugs und zwei am Heck. Eine qualitative Position lässt sich der nebenstehenden Abbildung „Skizze der Sensorpositionen der Infrarotsensoren“ entnehmen.
[[Bild:SkizzeFahrzeugInfrarot.JPG|300px|mini|Skizze der Sensorpositionen der Infrarotsensoren]]
 
Die genaue Position der Sensoren im Fahrzeugkoordinatensystem lässt sich aus folgender Tabelle entnehmen, es ist jedoch zu beachten, dass die Werte nicht verifiziert sind, da im SS2020 nicht auf das Fahrzeug zurückgegriffen werden kann.
Die Position der einzelnen Sensoren im Fahrzeugkoordinatensystem (K):
{| class="wikitable"
! style="font-weight: bold;" | IR_Sensor
! style="font-weight: bold;" | x-Position
! style="font-weight: bold;" | y-Position
|-
| rechts vorne
| -7 cm
| -12 cm
|-
| rechts hinten
| -36 cm
| -12 cm
|-
| hinten links
| -42 cm
| 10 cm
|-
| hinten rechts
| -42 cm
| -10 cm
|}
 
Der Anschluss der Sensoren an die [[Automatisierungssystem_dSpace_DS1104_R&D_Controller_Board|dSPACE DS1104]] erfolgt über die analogen Eingänge und ist der folgenden Tabellen zu entnehmen. Zu beachten ist, dass diese Werte nicht verifiziert werden können, da im Sommersemester 2020 ein physischer Zugriff auf das Fahrzeug aufgrund von COVID-19 nicht möglich ist. Diese Tabelle repräsentiert die Anschlüsse an den einzelnen Sensoren:


{|class="wikitable"
{|class="wikitable"
  ! style="font-weight: bold;"|PIN
|+ style = "text-align: left"|Tabelle 1: Hardwareanbindung
  ! style="font-weight: bold;"|Farbe des Kabels
  ! style="font-weight: bold;"|Pin
  ! style="font-weight: bold;"|Pin am Sensor
  ! style="font-weight: bold;"|Farbe
  ! style="font-weight: bold;"|DS1104-Pin
  ! style="font-weight: bold;"|Signalname
! style="font-weight: bold;"|Bedeutung
! style="font-weight: bold;"|DS1104 Anschluss
! style="font-weight: bold;"|Stiftleisten Anschluss A und B, DS1104 Board Anschluss Pin
  ! style="font-weight: bold;"|DS1104 Simulink Anschluss
! style="font-weight: bold;"|HallSensor Anschluss an der Adapter Platine
  |-
  |-
  |1
  |1
  |Gelb
  |Schwarz
  |Sensor_IR_V0
  |GND
  |ADCH5…8
  |Ground
|
|GND
|
|gelb Pin1 '''Achtung hier ist noch ein Fehler drin. Ground Anschluss des Hallsensors geht auf +5V der Adapterpaltine '''
  |-
  |-
  |2
  |2
  |Orange
  |Orange
  |Sensor_IR_GND
  |Phase C
  |GND
  |Motorphase C
|IO5 und ADCH4
|P1B44, 63 und P1B33, 95
|DS1104BIT_IN_C4
|orange Hall_C Pin2
  |-
  |-
  |3
  |3
  |Rot
  |Weiß
  |Sensor_IR_VCC
  |Phase B
  |(-0,3) ..+7 V
|Motorphase B
|IO2 und ADCH1
|P1A28, 66 und P1A50, 100
|DS1104BIT_IN_C3
|rot Hall_B Pin3
  |-
|4
|Grün
|Phase A
|Motorphase A
|IO3
|P1B28, 65
|DS1104BIT_IN_C2
|braun Hall_A Pin4
|-
|5
|NC
|Temp
|temp control, 10k Thermistor referenced to ground potential
|
|NC
|
|
|-
|6
|
|Vcc
|5.0 volts +/- 10%
|
|5V
|
|Schwarz Pin5
  |}
  |}


Die weitere folgende Tabelle enthält die Zuordnung der einzelnen Sensoren zu den analogen Eingängen der dSPACE DS1104 und den in dem Matlab/Simulink-Projekt enthaltenen jeweiligen Variablen, auch hier können die Werte nicht verifiziert werden:
Zusätzlich befinden sich an den DS1104 Anschlüssen IO17 und IO19 nach Kombi-Logikeingänge der Hallsensoren. Der Pinbelegungsplan der DS1104 befindet sich im [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Dokumentation/Systemarchitektur/DS1104-Adapterkabel–Pinbelegungsplan.xlsx SVN].
 
{| class="wikitable"
! style="font-weight: bold;" | IR-Sensor
! style="font-weight: bold;" | DS1104-Eingang
! style="font-weight: bold;" | Simulink-Signalname
|-
| rechts vorne
| ADC Channel 5
| SenAbs_xVR_K_f64
|-
| rechts hinten
| ADC Channel 6
| SenAbs_xHR_K_f64
|-
| hinten links
| ADC Channel 7
| SenAbs_yHR_K_f64
|-
| hinten rechts
| ADC Channel 8
| SenAbs_yHL_K_f64
|}


== Modi für Simulation und Fahrzeug ==
== Modi für Simulation und Fahrzeug ==
Zeile 138: Zeile 112:


=== Offline-Modell ===
=== Offline-Modell ===
Die Infrarotsensoren gehören zu der Gruppe der Sensoren, für die eine Simulation erfolgt. Die Beschreibung dieser Simulation ist im Artikel [[Simulation_der_IR-Einparksensorik|Simulation der Einparksensorik]]. In diesem Artikel wird die Ermittlung der virtuellen Messwerte der vier Sensoren beschrieben, dies erfolgt in Abhängigkeit der in der Simulation vorhandenen Parameter.  
Die Hall-Sensorik gehört zu der Gruppe der Sensoren, für die keine Simulation erfolgt. Es wird direkt auf die gewünschten Daten in der Simulation zugegriffen, es ist somit mit einer vergleichsweise starken Abweichung des Offline-Modells von der Realität zu rechnen. Die in der Simulation vorhandene Geschwindigkeit entstammt der Bahnplanung und Spurführung und dem Block Sensoren - offline (siehe Abb. 6+7).
 
 
<gallery widths=800px heights=200px>
  FILE:CCF offline BSF Geschwindigkeit.PNG|Abbildung 6: Ausschnitt aus dem Offline-Simulink-Modell, BSF - Bahnplanung und Spurführung
  FILE:CCF offline SenVx Laengsgeschwindigkeit.PNG|Abbildung 7: Ausschnitt aus dem Offline-Simulink-Modell, Sensoren Offline, SenVx Laengsgeschwindigkeit
</gallery>
 
 


Zusätzlich ist eine eigene [[Special:PermanentLink/51164#Test_der_Abstandssensorik|GUI]] vorhanden, die die Implementierung der Simulation auf ihre Funktion überprüft, deren Funktion und Umfang bis jetzt noch nicht validiert ist. Bei einer ersten Sichtprüfung zeigt sich allerdings, dass sich die Form der Fahrzeuge willkürlich ändert. Die
Die Implementierung steht im gesamten [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Software/CaroloCupFahrzeug/Simulink/CCF_offline.mdl Simulink-Modell] zur Verfügung.
[https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Software/Demos/Test_der_Abstandssensorik/Testumgebung_Sensoren_Offline/IR_Sensorik/ GUI] befindet sich im SVN.


=== Online-Modell ===
=== Online-Modell ===
Die Software in der Online-Umgebung des Matlab/Simulink Projekts kann im Sommersemester 2020 nur augenscheinlich, ohne eine Prüfung der Lauffähigkeit, erfolgen. Im Generellen sind wie im Offline-Modell ebenfalls die vier Sensoren eingebunden, die hier als Signal der DS1104 auftreten. Die Übersichtlichkeit ist verbesserungsfähig, ebenfalls sollten die enthaltenden lookup tabels mit den Sensorkennlienen überprüft werden.  
Hier wird die Hallsensorauswertung aus dem online Simulink-Modell gezeigt (siehe Abb. 8). Außerdem wird der Ist-Zustand (siehe Abb. 9) mit dem Soll-Zustand (siehe Abb. 10) des XOR-Gaters verglichen. In Abbildung 11 werden die Daten der Testmessung von den Hall-Sensoren gezeigt.
Die Details der Implementierung sind in der [[Softwarearchitektur_des_Fahrzeugs#Übersicht_der_Online-_und_Offline_Modus|Softwarearchitektur]] beschrieben.
<gallery widths=400px heights=300px>
FILE:Hallsensor_auswertung.PNG|600px|thumb|left|Abbildung 8: Hallsensorauswertung Simulink Online Modell  
FILE:Xor_gater2021.PNG|600px|thumb|left|Abbildung 9: XOR-Gater aufbau Zustand SS2021
FILE:Xor_gater2021_verbessert.PNG|600px|thumb|left|Abbildung 10: XOR-Gater zu realisierende verbesserung
</gallery>
 
Die Details der Implementierung sind in der [[Softwarearchitektur_des_Fahrzeugs#Übersicht_der_Online-_und_Offline_Modus|Softwarearchitektur]] beschrieben und in [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Software/CaroloCupFahrzeug/Simulink/CCF_online.mdl SVN] ebenfalls erkennbar.
 
 
<br>[[Datei:test Hall mes.jpg|1200px|thumb|none|Abbildung 11: Test der Messung vom Hall-Sensor]].


== Datenblätter ==
== Datenblätter ==
Der Hersteller Sharp stellt Datenblätter zu dem Sensor bereit. Diese sind sowohl in SVN<ref>Datenblatt Sharp GD2D120:[https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Literatur/Datenbl%c3%a4tter/Infrarotsensoren/Sharp-GP2D120.pdf SVN]</ref> als auch im Web<ref>Datenblatt Sharp GD2D120:[https://www.pololu.com/file/0J157/GP2D120-DATA-SHEET.pdf Web]</ref> abrufbar.
Der Hersteller des Motors stellt ein Datenblatt zur Verfügung, in dem ebenfalls die Hall-Sensorik beschrieben ist. Dieses ist sowohl in SVN<ref>Datenblatt LRP Vector X12 StockSpec:[https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Literatur/Datenbl%c3%a4tter/Hall-Sensor_des_Brushless_Motors/239105-an-01-de-VECTOR_X12_BRUSHLESS_STOCKSPEC_17_5T.pdf SVN]</ref> als auch im Web<ref>Datenblatt LRP Vector X12 StockSpec:[https://www.lrp.cc/de/produkt/vector-x12-brushless-stockspec-175t/ Web]</ref> abrufbar.


== Literatur ==
== Literatur ==
* Stefan Hesse, Gerhard Schnell: ''Sensoren für die Prozess- und Fabrikautomation.'' Wiesbaden 2018, ISBN 978-3-658-21173-8, S. 78–80, 371f.
* Stefan Hesse, Gerhard Schnell: ''Sensoren für die Prozess- und Fabrikautomation.'' Wiesbaden 2018, ISBN 978-3-658-21173-8


== Einzelnachweis ==
== Einzelnachweis ==
Zeile 157: Zeile 147:
----
----
→ zurück zum Hauptartikel: [[Praktikum_SDE|Praktikum SDE]]
→ zurück zum Hauptartikel: [[Praktikum_SDE|Praktikum SDE]]
<br />→ zurück zum übergeordneten Artikel: [[Fahrzeughardware#Hall-Sensor|Fahrzeughardware]]
<br />→ zurück zum zusatz Artikel: [[Signalverarbeitung|Signalverarbeitung]]

Aktuelle Version vom 4. Mai 2023, 09:39 Uhr

Abbildung 1: Ansicht des Motors LRP Vector X12 StockSpec 17.5T, in dem die Hall-Sensorik integriert ist.
Abbildung 2: Anschlüsse des Motors, über den unteren Steckkontakt wird die Hall-Sensorik ausgewertet.

Autoren: Julin Horstkötter, Levin Baumeister

Der Hall-Sensor des Autonomen Fahrzeugs stellt einen entscheidenden Teil der gesamten Sensorik dar, denn dieser dient der Ermittlung der Fahrzeuggeschwindigkeit und somit auch der zurückgelegten Strecke. Der Hall-Sensor befindet sich am Antriebsmotor (siehe Abb. 1+2), es sollen zusätzlich zu der aktuellen Geschwindigkeit, die Fahrtrichtung bestimmt werden. Diese zu erfassenden sind wesentliche Bestandteile des Regelkreises der Bahnplanung und Spurführung. Die Messung der zurückgelegten Strecke wird für die Bestimmung der Parklückengröße benötigt und somit im Einparkalgorithmus.

[Signalverarbeitung der HAll-Sensoren alter Artikel ]

[Parameter für die Umwandlung und Auswerttung der HAll-Sensoren param_SEN_online.m]

Kurzinformation

Abbildung 3: Hall-Signal-Pegel des eingesetzten Motors LRP Vector X12 StockSpec 17.5T

Autoren: Martin Theine und Patrick Schumann
Stand: 12.02.2021

Wie bereits erläutert ist der Hall-Sensor ein Bestandteil des Antriebsmotors des Fahrzeugs. Der eingesetzte Motor LRP Vector X12 StockSpec 17.5T besitzt insgesamt drei Hall-Sensoren, die in einer Kombination verschaltet sind. Die Hallsensorik des Motors besteht aus drei um jeweils 120° (2/3 π) phasenverschobene Hallsensoren, die Rechtecksignale erzeugen, die jeweils für eine halbe Motorumdrehung anliegen. Pro Motorumdrehung gibt es also insgesamt sechs Flankenwechsel und anhand der Zustandsänderung ist die Drehrichtung bestimmbar. Zwischen zwei Flankenwechsel dreht sich der Motor um den Winkel λ = 60° = 1/3 π. In der Abbildung rechts (siehe Abb. 3) wird dieser Zusammenhang visualisiert. Dabei wird deutlich, dass es insgesamt sechs gültige Signal–Pegel–Kombinationen, also sechs Zustände gibt. Bevor die spezifische Sensorik im Detail erläutert wird, erfolgt die Beschreibung des Sensorprinzips.

Funktionsweise

Der Hall-Sensor gehört zu den magnetostatischen Sensoren und basiert auf einem Galvanomagnetischen Effekt. Diese Gruppe von Sensoren messen ein magnetisches Gleichfeld innerhalb eines stromdurchflossenden Halbleiterplättchens. Das Feld der magnetischen Induktion des Magneten durchsetzt das Plättchen senkrecht, sodass die Ladungsträger durch die Lorenzkraft senkrecht zum Feld und zum Strom um den Winkel aus ihrer sonst geraden Bahn abgelenkt werden (siehe Abb. 4). Die Messgröße entwickelt sich schließlich, wenn quer zur Stromrichtung, zwischen zwei sich gegenüber liegenden Randpunkten des Plättchens, eine zum Feld und Strom proportionale Hall-Spannung abgegriffen wird:

Abbildung 4: Veranschaulichung des galvanomagnetischen Effektes.

.

beschreibt die Materialkonstante, den sogenannten Hallkoeffizient, stellt wiederum die Dicke des Plättchens dar. In der Abbildung rechts ist das grundsätzliche Sensorprinzip nochmals gezeigt. Im Folgenden wird die Beschriftung erklärt:

a: Schaltung, b: Verlauf der Hallspannung , c: Zunahme des Plättchenwiderstands , : magnetische Induktion, : Plättchenstrom, : Hallstrom, : Versorgungsstrom, : Längsspannung, : Ablenkung der Elektronen durch Magnetfeld. [1]

Signalverarbeitung

In diesem Abschnitt werden die Besonderheiten des eingesetzten Motors detaillierter beschrieben. Die Getriebeübersetzung sorgt dafür, dass sich der Elektromotor viermal drehen muss um eine vollständige Radumdrehung zu erzeugen (Ü=0.25). Die möglichen Signal–Kombinationen der Hall–Sensorik sind in der Abbildung Hall-Signal-Pegel dargestellt. Dabei ist TF-F die vergangene Zeit zwischen zwei Flankenwechsel, in der sich der Motor um den Winkel λ dreht. In der aktuellen Implementierung werden ADC–Eingänge der dSPACE–Karte verwendet um die Zustände zu erkennen. Dabei ist es bei digitalen Signalen (die Hall–Sensorik gibt wie aus der Abbildung Hall-Signal-Pegel ersichtlich VCC–kompatible Pegel aus: Physisch 5 V entspricht einer logischen eins, 0 V einer logischen Null) eigentlich sehr unüblich und in der Regel unpraktisch ADCs zu verwenden. Nicht nur weil es dann nötig ist, via Software die Pegelzustände zu erkennen. Dies wird aktuell mit Relational Operators mit einem derzeit eher kritischen Schwellwert von 5 V durchgeführt. Typische Grenzen für solche Pegel sind ≥ 0, 7 VCC für logisch eins und ≤ 0, 2 VCC für logisch null, damit mögliche Spannungsoffsets nicht zu einer Fehl–Erkennung führen können. Würden hier GPIOs als digitale Eingänge genutzt, lässt sich die Software seitige Erkennung sparen. Mithilfe der Combinatorial Logic werden die Zustände der drei Hall–Signale in Dezimalzahlen umgewandelt. Die insgesamt sechs möglichen Zustände sind in Abbildung Hall-Signal-Pegel ebenfalls dargestellt. Daraus ergeben sich in einer uint8 Darstellung die Dezimalzahlen eins bis fünf. [2]

Hardwareanbindung

Abbildung 5: Anschluss des Motors an den Motortreiber, mit dem Anschluss der Hall-Sensorik.

Wie bereits erläutert ist die Hall-Sensorik im Antriebsmotor integriert. Der Anschluss an den Motor lässt sich in der Abbildung rechts (siehe Abb. 5) erkennen, die Pinbelegung des gesamten Motors in der folgenden Tabelle (siehe Tabelle 1). Ebenfalls ist dort die Farbe der Anschlusskabel hinterlegt.

Tabelle 1: Hardwareanbindung
Pin Farbe Signalname Bedeutung DS1104 Anschluss Stiftleisten Anschluss A und B, DS1104 Board Anschluss Pin DS1104 Simulink Anschluss HallSensor Anschluss an der Adapter Platine
1 Schwarz GND Ground GND gelb Pin1 Achtung hier ist noch ein Fehler drin. Ground Anschluss des Hallsensors geht auf +5V der Adapterpaltine
2 Orange Phase C Motorphase C IO5 und ADCH4 P1B44, 63 und P1B33, 95 DS1104BIT_IN_C4 orange Hall_C Pin2
3 Weiß Phase B Motorphase B IO2 und ADCH1 P1A28, 66 und P1A50, 100 DS1104BIT_IN_C3 rot Hall_B Pin3
4 Grün Phase A Motorphase A IO3 P1B28, 65 DS1104BIT_IN_C2 braun Hall_A Pin4
5 NC Temp temp control, 10k Thermistor referenced to ground potential NC
6 Vcc 5.0 volts +/- 10% 5V Schwarz Pin5

Zusätzlich befinden sich an den DS1104 Anschlüssen IO17 und IO19 nach Kombi-Logikeingänge der Hallsensoren. Der Pinbelegungsplan der DS1104 befindet sich im SVN.

Modi für Simulation und Fahrzeug

Die Programmierung des Fahrzeugs erfolgt über die Software MATLAB/Simulink. Zur einfacheren Handhabung existieren in der Software zwei Modi, die sowohl das Online- wie auch das Offline-Modell bedienen, dieses Vorgehen entspricht dem Rapid Control Prototyping. Im Online Modus greift die Software auf die verbundenen Sensoren und Aktoren direkt über die dSPACE DS1104 zu, das Fahrzeug bewegt sich schließlich in der realen Teststrecke. In der Offline Situation werden ein Großteil der Sensoren und Aktoren simuliert, so bewegt sich das Fahrzeug auf einer virtuellen Teststrecke, die der in der Realität nachempfunden ist. Ein Ziel ist Schnittstellen so zu entwickeln, dass einzelne Programmteile sowohl online als auch offline verwendet werden. So kann zunächst die Software in der Offline-Umgebung getestet und schließlich Online eingesetzt werden.

Offline-Modell

Die Hall-Sensorik gehört zu der Gruppe der Sensoren, für die keine Simulation erfolgt. Es wird direkt auf die gewünschten Daten in der Simulation zugegriffen, es ist somit mit einer vergleichsweise starken Abweichung des Offline-Modells von der Realität zu rechnen. Die in der Simulation vorhandene Geschwindigkeit entstammt der Bahnplanung und Spurführung und dem Block Sensoren - offline (siehe Abb. 6+7).



Die Implementierung steht im gesamten Simulink-Modell zur Verfügung.

Online-Modell

Hier wird die Hallsensorauswertung aus dem online Simulink-Modell gezeigt (siehe Abb. 8). Außerdem wird der Ist-Zustand (siehe Abb. 9) mit dem Soll-Zustand (siehe Abb. 10) des XOR-Gaters verglichen. In Abbildung 11 werden die Daten der Testmessung von den Hall-Sensoren gezeigt.

Die Details der Implementierung sind in der Softwarearchitektur beschrieben und in SVN ebenfalls erkennbar.



Abbildung 11: Test der Messung vom Hall-Sensor

.

Datenblätter

Der Hersteller des Motors stellt ein Datenblatt zur Verfügung, in dem ebenfalls die Hall-Sensorik beschrieben ist. Dieses ist sowohl in SVN[3] als auch im Web[4] abrufbar.

Literatur

  • Stefan Hesse, Gerhard Schnell: Sensoren für die Prozess- und Fabrikautomation. Wiesbaden 2018, ISBN 978-3-658-21173-8

Einzelnachweis

  1. vgl. die Informationen zu Hall-Sensor mit: Reif, Konrad: Sensoren im Kraftfahrzeug. Wiesbaden: Springer Vieweg, 2016. ISBN: 9783658112110. S. 34f.
  2. vgl. Anleitung und Dokumentation. Carolo-Cup. https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Dokumentation/Dokumentaton_LaTeX/
  3. Datenblatt LRP Vector X12 StockSpec:SVN
  4. Datenblatt LRP Vector X12 StockSpec:Web

→ zurück zum Hauptartikel: Praktikum SDE
→ zurück zum übergeordneten Artikel: Fahrzeughardware
→ zurück zum zusatz Artikel: Signalverarbeitung