2 Entwurf der Software für das Funktionsmodul des Überwachungssystems
2. 1 Entwurf des Anti-Interferenz- und Anti-Kollisions-Moduls
Bei der Datenerfassung und -übertragung gibt es zwei Hauptprobleme mit der Datenintegrität: Signalstörungen und Signalkonflikte. Das System entwickelt ein Anti-Interferenz-Modul, das auf der Methode der zyklischen Redundanzprüfung (CRC) basiert, und verwendet einen Antikollisionsalgorithmus zur Lösung des Signalkonfliktproblems [8].
2. 1. 1 Entwurf des Anti-Interferenz-Moduls Der CRC-Prüfcode verwendet die lineare Codierungstheorie [9-12]. Auf der Sendeseite wird entsprechend den k Bits des zu sendenden Informationsfeldes ein Verifizierungsfeld (d. h. CRC-Code) mit r Bits nach den vereinbarten Regeln erzeugt und an das Informationsfeld angehängt, um eine neue binäre Codefolgezahl (kr) Bits zu bilden. Das neue (kr)-Bit wird gesendet; auf der Empfängerseite wird es nach den vereinbarten Regeln geprüft, um festzustellen, ob ein Fehler in der Übertragung vorliegt.
Im Schnittstellenkommunikationsprotokoll, das bei der Datenerfassung und -übertragung verwendet wird (siehe Tabelle 1), wird SN (packet auto-increment) verwendet, um doppelte oder verlorene Datenpakete während der CRC-Prüfung herauszufiltern; Head (data packet header) hat den festen Inhalt 0x02030405 und wird verwendet, um die Rechtmäßigkeit der Tag-Identität zu identifizieren; Length ist die Länge des Datenpakets; DeviceID ist die ID des Lese-/Schreibgeräts, das das Datenpaket hochlädt; CMD ist der Befehlscode, der Bereich ist 0x000xff; data[ ] ist das Parameterfeld; CheckSum ist das CheckSum-Byte Die kumulative Summe aller vorherigen Bytes modulo 256 wird zusammen mit Length verwendet, um die Integrität der Daten zu überprüfen.

2. 1. 2 Design des Antikollisionsmoduls Im Bereich des Lese-/Schreibgeräts befinden sich mehrere Datenträger. Wenn sie gleichzeitig kommunizieren, belegen sie den Kanal zur gleichen Zeit, was zu Konflikten zwischen den gesendeten Daten und damit zu Datenkollisionen zwischen den elektronischen Etiketten führt. Das System verwendet einen binären Baumsuchalgorithmus, um das Tag-Konfliktproblem zu lösen [13-15]. Jedes Etikett hat eine eindeutige Seriennummer (UDI). Die Lösung für das Tag-Konfliktproblem basiert auf der UDI.
Das Modell des binären Baumsuchalgorithmus ist in Abbildung 3 dargestellt. Zunächst wird die Konfliktposition erfasst, und das Label an dieser Position wird in zwei Teilmengen unterteilt: 0 und 1; anschließend wird die Teilmenge 0 abgefragt. Liegt kein Konflikt vor, wird das Etikett korrekt identifiziert. Besteht weiterhin ein Konflikt, wird das Etikett erneut identifiziert. Teilen Sie die Teilmenge 0 in zwei Teilmengen auf: 00 und 01, und so weiter, bis alle Etiketten in der Teilmenge 0 identifiziert sind, und fragen Sie dann die Teilmenge 1 ab.
The binary tree search algorithm uses Manchester encoding. Taking tag 1——11000001, tag 2——11101011, and tag 3——11001001 as an example, the binary tree search algorithm process is as follows. 1) The reader will send the 11111111 command to the tag to request a response. After encoding, the decoding result of the reader is 11X0X0X1, and the D1, D3, and D5 bits collide. 2) Set the highest collision bit D5 to 0, the bits higher than D5 remain unchanged, and the bits lower than D5 are set to 1. 3) The reader sends 11011111 to the tag command again, and the decoding result of the reader after encoding is 1100X0X1. 4 ) Set the highest collision bit D3 to 0, the bit higher than D3 remains unchanged, and the bit lower than D3 is 0. 5) The reader sends the 11000111 command to the tag again. At this time, tag 2 does not collide with other tags and responds to the reader. The reader performs read and write operations on tag 2. 6) Repeat the above process until all tags respond to the reader. During the above process, there will be situations where the tag that has completed the response will respond again. The system sets the judgment mechanism to prohibit the tag from responding repeatedly. The programming is:


