TAKARDUN BAYANI

Jagorar Haɗa RFID Reader

Cikakken takardun bayanai da ke rufe saitin sadarwar serial, daidaita antena, ayyukan ƙirƙirar alamar (EPC Gen2 / ISO 18000-6C), da sarrafa wuta. Ya haɗa da misalai don amfani da antena da yawa da kuma skan na inventory da sauri.

Saitin Sadarwar Serial

Masu karanta RFID na Nextwaves NRN protocol suna sadarwa ta tashar serial (RS-232 ko USB-zuwa-Serial). Dole ne a saita sigogin haɗin daidai don tabbatar da isar da bayanai mai ɗorewa.

Baud Rate

115200

Data Bits

8

Stop Bits

1

Parity

None

Don haɗin WebSerial API ta hanyar burauza, yi amfani da Nextwaves Reader Connect a app.nextwaves.com/reader. Manhajar tana gano tashoshin COM ta atomatik kuma tana saita sigogin haɗin.

TypeScript — WebSerial Connection
// Request serial port access
const port = await navigator.serial.requestPort();
await port.open({
  baudRate: 115200,
  dataBits: 8,
  stopBits: 1,
  parity: "none",
  flowControl: "none",
  bufferSize: 4096,
});

// Get reader/writer streams
const reader = port.readable.getReader();
const writer = port.writable.getWriter();
Python — PySerial Connection
import serial

port = serial.Serial(
    port="/dev/ttyUSB0",      # Linux/macOS
    # port="COM3",            # Windows
    baudrate=115200,
    bytesize=serial.EIGHTBITS,
    stopbits=serial.STOPBITS_ONE,
    parity=serial.PARITY_NONE,
    timeout=2.0,
)

# Flush buffers before communication
port.reset_input_buffer()
port.reset_output_buffer()

Tsarin Frame na Nextwaves NRN Protocol

Kowane umarnin NRN protocol an ƙunsar da shi a cikin frame na binary wanda ya ƙunshi: Header (0x5A), PCW (Protocol Control Word), Category, MID (Message ID), Length, Data payload, da CRC16-CCITT checksum.

FilinGirmaBayanin
Header1 byteKullum 0x5A. alamar farawar frame
PCW2 bytesAlamomin Protocol (sigar, adireshi)
Category1 byteRukunin umarni (0x00=System, 0x01=Device, 0x02=RFID)
MID1 byteID saƙo a cikin rukunin
Length2 bytesTsawon payload a cikin byte (big-endian)
DataN bytesPayload na umarni
CRC162 bytesCRC16-CCITT checksum na bytes bayan header

Misalan Umarnin

QUERY_INFO — Query reader serial number & firmware
TX → 5A 00 01 01 00 00 00 DC E5
       ┌──┐ ┌────┐ ┌──┐ ┌──┐ ┌────┐ ┌────┐
       │5A│ │0001│ │01│ │00│ │0000│ │DCE5│
       └──┘ └────┘ └──┘ └──┘ └────┘ └────┘
       HDR   PCW   CAT  MID  LEN    CRC16
READ_EPC_TAG — Start continuous EPC tag inventory
TX → 5A 00 01 02 10 00 00 04 5A
       HDR  PCW   CAT MID LEN   CRC16
       
Response notifications (PID 0x1231) contain:
  • Antenna ID (1 byte)
  • RSSI value (1 byte, raw ADC 0-255)
  • EPC data (12+ bytes)
  • Frequency channel index (1 byte)
STOP_INVENTORY — Stop running inventory scan
TX → 5A 00 01 02 FF 00 00 88 5A
       HDR  PCW   CAT MID LEN   CRC16

Jagorar Umarnin Maɓalli

UmurniLambaBayanin
QUERY_INFO0x0100Nemi lambar serial na mai karanta da sigar firmware
QUERY_RFID_ABILITY0x1000Nemi ƙwarewar RFID (iyakar ƙarfin, yawan antena)
READ_EPC_TAG0x0210Fara inventory na alamun EPC a ci gaba
WRITE_EPC_TAG0x0211Rubuta bayanai zuwa bankin EPC na alama
STOP_INVENTORY0x02FFTsayar da inventory na alama da ke gudana
CONFIGURE_READER_POWER0x0201Saita ƙarfin watsawa (0-33 dBm per antena)
CONFIGURE_ANTENNA_ENABLE0x0203Kunna/ kashe tashoshin antena (bitmask)
SET_WORKING_FREQUENCY0x0205Saita takamaiman mitar aiki
SET_FILTER_SETTINGS0x0209Saita tace maimaita alama (na lokaci)
BUZZER_SWITCH0x011EKula da Yanayin Buzzer

Saitin Antena

Masu karanta RFID suna goyan bayan har zuwa tashoshin antena 32. Kowane tashar ana kunna ko kashe ta hanyar bitmask na byte 4. Antenuna suna da lamba daga 1 zuwa 32, inda kowanne bit yake da alaka da tashar.

Bitmask na Antena

Kunna Antennas 1-4

0x0F, 0x00, 0x00, 0x00

Binary: 00001111 → Ports 1,2,3,4 ON

Kunna Antennas 1 & 3 Kawai

0x05, 0x00, 0x00, 0x00

Binary: 00000101 → Ports 1,3 ON

CONFIGURE_ANTENNA_ENABLE — Enable ports 1-4
TX → 5A 00 01 02 03 00 04 0F 00 00 00 E1 EF
                              ┌───────────┐
       Payload:               │0F 00 00 00│ ← bitmask
                              └───────────┘
       Bit 0 = ANT1, Bit 1 = ANT2, Bit 2 = ANT3, Bit 3 = ANT4
       0x0F = 0b00001111 → all 4 ports enabled

Kaddamar da Antenna da yawa

Lokacin sanya antenna da yawa, yi la'akari da polarisation (layi vs zagaye), tazara tsakanin antenna, da yankunan rufin da suka yi overlapp. Na'urar karatu tana duba a jere ta antenna da aka kunna, kuma kowanne rahoton tag yana ƙunshe da ID na antenna don tantance matsayi.

Kofofin Dock

2-4 antennas a kowace portal, circular polarization, 30 dBm power

Banda Mai ɗauka

1-2 antennas a kowace tashar, linear polarization, 20-25 dBm

Rijiyar Siyarwa

Antena na kusa da filin, ƙaramin wuta 15-20 dBm, mai yawan yawa

Lambar Tag (EPC Gen2 / ISO 18000-6C)

UHF RFID na bin ma'aunin EPC Gen2 (ISO 18000-6C). Kowanne tag yana da bankunan ƙwaƙwalwa 4: Reserved (kalmar sirri), EPC (mai gano bit 96+), TID (ID ɗin chip da ba za a iya canzawa ba), da User (bayanan al'ada).

Tsarin Ƙwaƙwalwar Tag

BankiIDGirman Al'adaAmfani
Reserved0064 bitsKalmar sirri ta kashe (32b) + Kalmar sirri ta shiga (32b)
EPC0196-128 bitsSGTIN-96, SSCC-96, ko ƙirƙirar alama na al'ada
TID1096+ bitsID mai ƙera chip (karanta kawai, na musamman)
User110-512 bitsBayanan da aka keɓance ga aikace-aikace (dogara da chip)

Misalin Fassarawa na SGTIN-96

SGTIN-96 shine mafi yawan ƙirƙira don kayayyakin retail da sarkar samarwa. Canza EPC hex mai haruffa 24 zuwa GTIN-14, lambar serial, da GS1 Digital Link.

SGTIN-96 Decode — Example
EPC Hex: 3034257BF7194E4000001A85

Decoded:
  Header:         0x30 (SGTIN-96)
  Filter:         1 (Point-of-Sale)
  Partition:      5
  Company Prefix: 0614141
  Item Reference: 812345
  Serial:         6789
  GTIN-14:        80614141123458
  Digital Link:   https://id.gs1.org/01/80614141123458/21/6789
WRITE_EPC_TAG — Write EPC data to tag
// NRN protocol WRITE_EPC_TAG command
TX → 5A 00 01 02 11 00 0C [EPC_DATA_12_BYTES] [CRC16]

// The reader will:
// 1. Select the tag in its field
// 2. Write the provided EPC data to Bank 01
// 3. Return success/failure notification

// Access password required if tag is locked:
TX → 5A 00 01 02 11 00 10 [ACCESS_PWD_4B] [EPC_DATA_12B] [CRC16]

Yi amfani da kayan aikin EPC Encoder na yanar gizo a /tools/tds-rfid-converter don encode da decode SGTIN-96, SSCC-96, GRAI-96 kai tsaye a burauzarka.

Sarrafa Wuta

Karfin watsar da Reader na iya daidaitawa daga 0 zuwa 33 dBm a kowane tashar antena. Karfi mafi girma yana ƙara nisan karantawa amma kuma yana ƙara tsangwama da amfani da wuta.

CONFIGURE_READER_POWER — Set 30 dBm on all 4 ports
TX → 5A 00 01 02 01 00 04 1E 1E 1E 1E 67 FE
                              ┌───────────┐
       Payload:               │1E 1E 1E 1E│
                              └───────────┘
       0x1E = 30 decimal = 30 dBm per port
       
Power guidelines:
  • 33 dBm — Maximum range (~10m), dock doors
  • 30 dBm — Standard range (~6-8m), general use
  • 25 dBm — Medium range (~3-5m), conveyor belts
  • 20 dBm — Short range (~1-2m), point-of-sale
  • 15 dBm — Near-field (~0.5m), shelf readers

Sa ido kan RSSI

Kimomin RSSI (Alamar Ƙarfi na Sigina da Aka Karɓa) daga alamar ana bayar da su a matsayin ƙwayoyin ADC na asali (0-255). Yi amfani da tsarin canji don samun ƙimar dBm daidai.

Lissafin Canji

dBm = -100 + round((raw × 70) / 255)

Raw 128

-65 dBm

Mai Kyau

Raw 180

-51 dBm

Mai ƙarfi

Raw 220

-40 dBm

Mafi Kyau

Binciken Inventory Mai Sauri

Don yin duba inventory da sauri, saita frekwensin aiki, tace tag masu maimaitawa, da yanayin duba ci gaba. Na'urorin karatu suna tallafawa har zuwa 700 tag/s daƙiƙa tare da saitin da ya dace.

Saitin Matsa

UHF RFID yana aiki a cikin band na 920-925 MHz (Kudu maso gabashin Asiya), tare da tazara tsakanin tashoshi na 0.5 MHz. Tashoshi an lissafa su daga 0 (920 MHz) zuwa 10 (925 MHz).

SET_WORKING_FREQUENCY — 6 channels (920-925 MHz)
TX → 5A 00 01 02 05 00 06 00 02 04 06 08 0A C4 1B

Channel mapping (formula: 920.0 + index × 0.5 MHz):
  Ch 0  → 920.0 MHz
  Ch 2  → 921.0 MHz
  Ch 4  → 922.0 MHz
  Ch 6  → 923.0 MHz
  Ch 8  → 924.0 MHz
  Ch 10 → 925.0 MHz

Mafi Kyawun Tsarin Skanin

1

Saita tashoshin antena da matakan wuta

2

Saita mitoci masu aiki (FHSS don yanayin cunkoso)

3

Saita matattarar maimaitawa (500ms-3000ms dangane da yanayin amfani)

4

Aika READ_EPC_TAG don fara inventari na ci gaba

5

Aiwatar da sanarwar tag (PID 0x1231) yayin da suka iso

6

Aika STOP_INVENTORY idan an gama

Complete inventory flow — TypeScript
// 1. Enable antennas 1-4
await sendFrame("CONFIGURE_ANTENNA_ENABLE", [0x0F, 0x00, 0x00, 0x00]);

// 2. Set power to 30 dBm on all ports
await sendFrame("CONFIGURE_READER_POWER", [0x1E, 0x1E, 0x1E, 0x1E]);

// 3. Set working frequencies
await sendFrame("SET_WORKING_FREQUENCY", [0, 2, 4, 6, 8, 10]);

// 4. Set duplicate filter to 1000ms  
await sendFrame("SET_FILTER_SETTINGS", [0x03, 0xE8]);

// 5. Start inventory
await sendFrame("READ_EPC_TAG");

// 6. Process tags...
reader.on("tag", (tag) => {
  const rssiDbm = -100 + Math.round((tag.rssi * 70) / 255);
  console.log(`EPC: ${tag.epc}, Ant: ${tag.antenna}, RSSI: ${rssiDbm} dBm`);
});

// 7. Stop when done
await sendFrame("STOP_INVENTORY");