Sensor + Controller: Gemischtes Doppel

Nutzung eines Hall-Sensors in Verbindung mit einem 8-bit-Controller

7. Februar 2011, 13:51 Uhr | Von Ralf Hickl
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 2

SENT-Protokoll für hochauflösende Sensoren

Bild 2. Darstellung eines SENT-Frames.
Bild 2. Darstellung eines SENT-Frames.

speziell für den Anschluss hochauflösender Sensoren an Steuergeräte im Kfz entwickelt. Das Verbindungskabel führt die Leiter für das Bezugspoten­tial, die Versorgungsspannung und das Mess-Signal.

Bei herkömmlichen seriellen Datenübertragungsverfahren sind die Daten codiert durch Low- oder High-Pegel an den Stellen im Signal-Frame, die einem bestimmten Bit mit einer bestimmten Wertigkeit im Datum zugeordnet werden können. Bei SENT hingegen handelt es sich um ein digitales Übertragungsverfahren, bei dem die Information in der zeitdiskreten Dauer zwischen negativen Flanken steckt. Außerdem werden die Daten nicht byte- sondern nibble-weise übertragen. Der Wert eines Nibbles (0 bis 15) entspricht, vereinfacht ausgedrückt, der Zeit zwischen zwei negativen Flanken im Signal-Frame abzüglich einer Konstanten.

Das SENT-Protokoll bietet zahlreiche Vorteile:

- Digitalisierung des Mess-Signals bereits im Sensor, dadurch geringere Störanfälligkeit der Übertragung.

- Möglichkeit zur einfachen galva­nischen Trennung des Sensors vom Steuergerät.

- CRC-Generierung im Sensor zur Verifikation der empfangenen Daten im Steuergerät.

- Hohe Datenrate: Längster Frame = 168 µs + 8 × 81 µs = 816 µs für 24 Nutz-Bits ergibt eine Nettodatenübertragungsrate von mindestens 29,4 kbits/s.

 

Zur Auswertung des Datenstroms ist es also nötig, jeweils die Zeiten zwischen den Flanken zu messen. Das ist eine typische Aufgabe, die mit der Capture-Funktion eines Timers erledigt wird.

Jeder Daten-Frame beginnt mit einem Sync-Intervall bekannter Dauer. Der Mikrocontroller misst diese 168 µs lange Periode und benutzt diese Referenz später bei der Auswertung der Zeiten jedes einzelnen Nibbles (Bild 2).

Die Zeiten zwischen zwei nega­tiven Flanken ergeben sich wie folgt: Falls nicht anders programmiert, gilt für den TLE4998S eine LSB-Zeit von 3 µs. Das Nibble-Intervall setzt sich damit zusammen aus 36 µs + (Wert des Nibbles × 3) µs. Der Wertebereich für die Zeiten zwischen zwei negativen Flanken für die Übertragung eines Nibbles reicht also von 36 µs bis 36 µs + (3 µs × 15) = 81 µs.

Nach einem Sync-Intervall folgen insgesamt acht Nibbles: ein Status-Nibble, sechs Daten-Nibbles und ein CRC-Nibble. Aus den sechs Daten-Nibbles setzen sich zwei 12 bit breite Datenwörter, DW1 und DW2, zusammen. Bei der Übertragung gilt „most significant Nibble first“. Aus den ersten vier Daten-Nibbles ergibt sich der gemessene Wert der magnetischen Feldstärke. In den zwei letzten Daten-Nibbles ist die Temperatur codiert.


  1. Nutzung eines Hall-Sensors in Verbindung mit einem 8-bit-Controller
  2. In-Circuit-Debugger mit USB-Schnittstelle
  3. SENT-Protokoll für hochauflösende Sensoren
  4. Auswahl eines Timers
  5. Abgleich der Takte und Ermittlung der Daten-Nibbles
  6. CRC, Datenübergabe und Frequenztoleranz

Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Rutronik Elektronische Bauelemente GmbH