Antikollision und Mehrfachzugriff

Antikollision und Mehrfachzugriff

Kollisionserkennung beim Funk

Auf einer Leitung wird eine Kollision von einem Sender also dadurch erkannt, das es nicht gelingt, sein Signal durchzubringen, weil ein anderer Teilnehmer den Pegel verändert. Beim Funk ist die Logik etwas anders:

Stellt ein Teilnehmer fest, dass ein aktiver Sendepegel vorhanden ist, obwohl er selbst gar nicht sendet, könnte er eine Kollision erkennen. "Könnte", denn dazu müsste er gleichzeitig empfangen. Auf einer Leitung kein Problem, bei einem so einfachen System wie einem RFID-Tag aber nicht möglich. Wir haben im Tutorial Grundlagen der RFID-HF-Technik schon gesehen, dass ein RFID-Transponder nicht aktiv sendet, sondern durch Lastmodulation lediglich das magnetische Feld des Senders beeinflusst.

Das einzige System, das den Empfang kontrolliert ist der Reader. Wir brauchen also eine Antikollisionserkennung, die vom Reader ausgeht. Das klappt mit unserer bisherigen Herangehensweise aber nicht, denn dem Reader fehlt wiederum die Information des Senders.

Hier brauchen wir einen ganz anderen Trick. Eine Möglichkeit liegt in der Verwendung einer speziellen Codierung, die sich Manchester-Code nennt. Die Codierung, die wir bislang verwendet haben, bezeichnen wir als Non-Return-to-Zero (NRZ). Der Name kommt daher, weil der High-Pegel so lange er anliegt statisch z. B. 5 V beträgt und nicht auf 0 zurückkehrt. Beim Manchester-Code ist das anders. Hier wird der Zustand nicht durch den Pegel, sondern durch einen Pegelwechsel bestimmt. Oben im Bild sehen Sie den NRZ-Code und darunter das Pendant als Manchester-Variante:



Eine fallende Flanke repräsentiert eine "1", die "0" wird durch eine steigende Flanke dargestellt. Doch wo ist der Vorteil?"

Schauen wir uns dazu die Situation an, wenn zwei Sender gleichzeitig auf das Medium zugreifen:



Die ersten drei Bit werden fehlerfrei erkannt, weil beide Sender gleiche Daten senden. Im 4 Bit sendet der rote Teilnehmer eine 1, der blaue eine 0, dadurch liegt sowohl in der ersten Hälfte des Bits wie auch in der 2. Hälfte ein Sendesignal an. Das Lesegerät weiß aber, dass jeweils in der Mitte der einzelnen Zeitschlitze ein Pegelwechsel erfolgen muss. Ist das nicht der Fall, bleibt also der Pegel für die gesamte Dauer bestehen, erkennt der Reader eine Kollision. Der Reader erkennt sogar an welcher Stelle die Fehler auftreten und um wie viele Fehler es sich handelt.

Neben dem Manchester-Code gibt es noch zahlreiche unterschiedliche Verfahren, die alle für den jeweiligen Einsatzfall optimiert sind. Beim RFID kommt neben dem Manchester-Code häufig noch der modifzierte Miller-Code zum Einsatz. Deshalb möchte ich auch ihn kurz vorstellen:



Dieser Code ist etwas komplizierter aufgebaut:

Doch warum ein solch seltsamer Code? Der modifizierte Miller-Code ist darauf ausgelegt, möglicht viel und kontinuierlich Energie zu übermitteln. Wenn Sie sich die Impulsflächen anschauen, so könnte bei einem konventionellen NRZ-Code die Energie längere Zeit 0 werden, wenn nämlich mehrere Nullen hintereinander übertragen werden. Beim Manchester-Code wären es unabhängig vom Code immer 50 %. Beim modifizierten Miller-Code hingegen kommt es nur zu recht kurzen Nullphasen.

Der modifizierte Miller-Code ist auch in der Lage, Fehler sowohl bei der Überlagerung als auch bei der Subtraktion der Signalpegel zu erkennen, allerdings erkennt er nicht alle Fehler:



Die grauen Bereiche sind erkannte Fehler, rosa sind die nicht erkannten.