RFID čítačka 7941W umožňuje čítať identifikátory kariet a príveskov na frekvenciách 125 kHz a 13,56 MHz. V tomto návode si ju pripojíme k počítaču cez USB–UART prevodník a pomocou jednoduchého programu v Pythone načítame UID alebo ID priloženej karty. Nie je potrebné Arduino ani ďalší mikrokontrolér.
Ukážeme si zapojenie, nastavenie sériovej komunikácie, základné HEX príkazy a riešenie najčastejších problémov. Postup je určený pre modul 7941W V1.1; pri inej revízii najskôr overte označenie a protokol.
Obsah článku
Čo budeme potrebovať?
Na prvé spustenie si pripravte tieto komponenty:
- RFID čítačka 7941W (MOD672) – pred zapojením skontrolujte označenie na doske.
- USB–UART prevodník CP2102 s vyvedeným pinom 5 V; podľa vybraného variantu aj vhodný USB kábel.
- Štyri prepojovacie vodiče, napríklad Dupont kábliky 10 cm – vhodnú kombináciu konektorov zvoľte podľa vývodov modulov.
- RFID kartu alebo prívesok na 125 kHz alebo 13,56 MHz.
- Počítač s USB portom, Windows a nainštalovaným Pythonom.
Poznámka: Modul nie je zariadenie typu plug-and-play. Na jeho sprevádzkovanie je potrebné správne zapojenie, prípadne pripájkovanie vodičov alebo pinovej lišty, nastavenie sériovej komunikácie a spustenie testovacieho programu.
Akú RFID kartu alebo čip použiť?
Na prvý test odporúčame vyskúšať jednu kartu alebo kľúčenku z každej frekvencie. V ponuke Techfun nájdete tieto produkty:
| Frekvencia | Produkt z ponuky | Čo vybrať |
|---|---|---|
| 125 kHz | RFID karta | Karta 125 kHz – TK4100 |
| 125 kHz | RFID kľúčenka | Kľúčenka 125 kHz – EM4100 |
| 13,56 MHz | RFID karta | Karta 13,56 MHz |
| 13,56 MHz | RFID kľúčenka | Kľúčenka 13,56 MHz |
Pozor pri výbere: Na produktových stránkach kariet a kľúčeniek vyberte správnu frekvenčnú variantu. Pri 13,56 MHz nestačí samotná frekvencia – pre tento návod je najvhodnejšia karta typu MIFARE Classic 1K (S50). Presný čip pri jednotlivých variantoch si pred nákupom overte.
Dôležité: RFID čítačka 7941W nemá vlastné USB rozhranie. USB–UART prevodník sprostredkuje komunikáciu medzi počítačom a jej sériovými pinmi RX/TX.
Zapojenie RFID čítačky
Najskôr odpojte USB–UART prevodník od počítača. Potom prepojte vývody podľa ich označenia na doskách, nie podľa farieb vodičov.
| RFID 7941W | USB–UART prevodník | Funkcia |
|---|---|---|
| 5V | +5V | Napájanie čítačky |
| GND | GND | Spoločná zem |
| RX | TXD | Príkazy z počítača |
| TX | RXD | Odpovede do počítača |
| IO | Nezapája sa | Pri tomto návode sa nepoužíva |
Piny RX a TX sa zapájajú krížovo. Modul vyžaduje napájanie 5 V; úrovne dátových signálov však môžu byť odlišné. Pred pripojením overte kompatibilitu UART prevodníka a čítačky. Ak používate iný prevodník než CP2102, skontrolujte jeho dokumentáciu. Nedovoľte, aby sa odkryté kontakty dotýkali.
Po kontrole zapojenia pripojte prevodník do USB portu počítača.
Zistenie COM portu a príprava Pythonu
Vo Windows otvorte Správca zariadení → Porty (COM a LPT). Prevodník sa môže zobraziť napríklad ako Silicon Labs CP210x USB to UART Bridge (COM9). Číslo portu sa môže líšiť; zapamätajte si to svoje.
Ak ešte nemáte nainštalovaný Python, stiahnite ho z python.org. Potom otvorte PowerShell alebo Príkazový riadok a zadajte:
python -m pip install pyserial
Na komunikáciu s čítačkou použijeme nastavenie 115200 baud, 8N1 (8 dátových bitov, bez parity, 1 stop bit).
Prvé čítanie RFID karty – Python program
Vytvorte súbor s názvom rfid_7941w_zaciatocnik.py a vložte doň nasledujúci program. Na riadku PORT = „COM9“ nahraďte COM9 číslom portu vášho počítača.
Program opakovane posiela čítacie príkazy pre obe frekvencie a pri zistení karty zobrazí jej identifikátor v HEX formáte. Program na karty nič nezapisuje.
# RFID čítačka 7941W – jednoduchý príklad (iba čítanie)
# 1. pip install pyserial
# 2. Zmeň PORT na svoj COM port (napr. "COM3")
# 3. Spusti: python rfid_7941w_zaciatocnik.py
# Ukončenie programu: Ctrl+C
import time
import serial
PORT = "COM9"
PRIKAZY = {
"13,56 MHz": bytes.fromhex("AB BA 00 10 00 10"),
"125 kHz": bytes.fromhex("AB BA 00 15 00 15"),
}
def precitaj(ser, prikaz):
ser.reset_input_buffer()
ser.write(prikaz)
hlavicka = ser.read(5)
if len(hlavicka) < 5 or hlavicka[:2] != b"\xCD\xDC":
return None
zvysok = ser.read(hlavicka[4] + 1)
if len(zvysok) != hlavicka[4] + 1:
return None
kontrola = 0
for bajt in hlavicka[2:] + zvysok[:-1]:
kontrola ^= bajt
if kontrola != zvysok[-1] or hlavicka[3] != 0x81:
return None
return zvysok[:-1].hex(" ").upper()
with serial.Serial(PORT, 115200, timeout=0.5) as ser:
print("Prilož kartu k čítačke...")
posledne = None
while True:
for frekvencia, prikaz in PRIKAZY.items():
cislo = precitaj(ser, prikaz)
if cislo and cislo != posledne:
print(f"{frekvencia}: {cislo}")
if cislo:
posledne = cislo
break
else:
posledne = None
time.sleep(0.3)
Ako spustiť program
Súbor uložte, v termináli prejdite do priečinka, kde sa nachádza, a spustite:
python rfid_7941w_zaciatocnik.py
Ako overiť funkčnosť
Keď sa zobrazí výzva Prilož kartu k čítačke…, priložte kompatibilnú kartu priamo k anténe. Pri úspešnom načítaní sa zobrazí napríklad:
Prilož kartu k čítačke... 13,56 MHz: 12 34 56 78 125 kHz: 11 22 33 44 55
Hodnoty vo výpise sú iba ilustračné. Vaša karta bude mať vlastný identifikátor. Program ukončíte skratkou Ctrl + C.
Základné HEX príkazy
Čítačka neposiela ID automaticky po priložení karty. Najskôr musí dostať požiadavku na čítanie príslušnej frekvencie. Príkaz sa posiela ako skutočné bajty, nie ako textový reťazec.
| Funkcia | Príkaz (HEX) |
|---|---|
| Čítanie UID – 13,56 MHz | AB BA 00 10 00 10 |
| Čítanie ID – 125 kHz | AB BA 00 15 00 15 |
Požiadavka začína bajtmi AB BA, odpoveď začína CD DC. Stavový bajt 81 signalizuje úspech, 80 neúspešné čítanie (napríklad keď nie je karta v dosahu). Posledný bajt je kontrolný súčet XOR.
Príklad odpovede bez karty
TX: AB BA 00 10 00 10 RX: CD DC 00 80 00 80
Príklad úspešného načítania karty
TX: AB BA 00 10 00 10 RX: CD DC 00 81 04 00 8B 1B 56 43
V odpovedi znamená 81 úspešné čítanie, 04 štyri bajty dát a 00 8B 1B 56 predstavuje UID karty. Záverečné 43 je kontrolný súčet XOR.
Čo očakávať pri testovaní?
Pri testovaní modulu 7941W V1.1 sa karty MIFARE Classic (13,56 MHz) načítavali približne do 1 cm, zatiaľ čo čip EM4100 (125 kHz) približne do 4 cm.
Ide o orientačné výsledky, nie garantovaný maximálny dosah. Výsledok ovplyvňuje typ, veľkosť a poloha karty aj okolie antény.
Pri prvom skúšaní preto položte kartu čo najbližšie k čítačke a ostatné RFID karty alebo prívesky odložte bokom.
Najčastejšie problémy a ich riešenie
Ak čítačka nereaguje podľa očakávania, skontrolujte najskôr základné zapojenie a nastavenie komunikácie.
Problém: Počítač nevidí COM port
Skontrolujte USB pripojenie, ovládač CP2102 a to, či sa prevodník zobrazuje v Správcovi zariadení. V prípade potreby nainštalujte ovládač od výrobcu prevodníka.
Problém: Program hlási „Access is denied“
COM port môže byť otvorený v inom programe, napríklad v Arduino IDE alebo v sériovom monitore. Zatvorte ho a test spustite znova. Skontrolujte tiež, či ste vybrali správny COM port.
Problém: Program beží, ale kartu nenačíta
Overte napájanie 5 V, spoločnú zem GND, krížové zapojenie RX/TX, kompatibilitu karty a jej vzdialenosť od antény. Pri frekvencii 13,56 MHz skúste kartu položiť priamo na čítačku.
Problém: Čítačka nič neposiela sama
Ide o bežné správanie tohto modulu. Riadiace zariadenie musí odoslať príslušný čítací príkaz. Pri 13,56 MHz sa používa príkaz AB BA 00 10 00 10 a pri 125 kHz príkaz AB BA 00 15 00 15.
Problém: Číslo sa líši od čísla na prívesku
Číslo môže byť zobrazené v HEX, desiatkovej sústave alebo s odlišným poradím bajtov. Porovnajte formát identifikátora používaný vašou aplikáciou alebo prístupovým systémom.
Problém: Python hlási „No module named serial“
V používanom prostredí Pythonu chýba knižnica pyserial. Otvorte terminál a spustite príkaz python -m pip install pyserial. Následne program spustite znova.
Ak prvý test nefunguje, neodporúčame skúšať náhodné príkazy. Najskôr overte zapojenie, napájanie, správny COM port a nastavenie 115200 baud, 8N1.
Kam sa dá projekt posunúť ďalej?
Po úspešnom načítaní RFID karty môžete identifikátory spracovávať vo vlastnom programe. Čítačku možno využiť napríklad pri evidencii kariet, identifikácii tagov alebo na vývoj jednoduchého prototypu prístupového systému.
RFID modul 7941W si pomocou počítača a USB–UART prevodníka môžete vyskúšať bez ďalšieho mikrokontroléra. Keď zvládnete základné čítanie, môžete pokračovať s vlastnou aplikáciou alebo prepojením s vývojovou doskou.
Potrebný modul a príslušenstvo nájdete v našej ponuke:
- RFID čítačka 7941W (MOD672)
- USB–UART prevodník CP2102
- RFID karty – rôzne varianty
- RFID kľúčenky – rôzne varianty
- Prepojovacie Dupont kábliky
Techfun.sk – Váš nápad, náš hardvér.

