Mündəricat:

RFID-RC522 Modulunu Arduino ilə necə istifadə etmək olar: 5 addım
RFID-RC522 Modulunu Arduino ilə necə istifadə etmək olar: 5 addım

Video: RFID-RC522 Modulunu Arduino ilə necə istifadə etmək olar: 5 addım

Video: RFID-RC522 Modulunu Arduino ilə necə istifadə etmək olar: 5 addım
Video: Arduino proqramlaşdırmanızı təkmilləşdirin! #2 Arduino Sensor məlumatlarının yumşaldılması 2024, Noyabr
Anonim
RFID-RC522 Modulunu Arduino ilə necə istifadə etmək olar
RFID-RC522 Modulunu Arduino ilə necə istifadə etmək olar

Bu Təlimat kitabında, etiketləri və çipləri ilə birlikdə RFID modulunun əsas iş prinsipi haqqında bir məlumat verəcəyəm. RGB LED ilə bu RFID modulunu istifadə edərək hazırladığım bir layihənin qısa bir nümunəsini də verəcəyəm. Təlimatlarımla hər zaman olduğu kimi, ilk bir neçə addımda qısa bir baxış verəcəyəm və maraqlananlar üçün son addımda hərtərəfli, ətraflı bir izahat buraxacağam.

Təchizat:

RC522 RFID Modulu + identifikasiya etiketi və kartı-https://www.amazon.com/SunFounder-Mifare-Reader-Ar…

RGB LED + üç 220 ohm rezistor

Addım 1: Avadanlıq Bağlantıları

Avadanlıq Əlaqələri
Avadanlıq Əlaqələri

Bu layihədə Arduino Mega-dan istifadə etdim, amma istədiyiniz hər hansı bir mikro nəzarətçidən istifadə edə bilərsiniz, çünki bu, nisbətən az mənbəli bir layihədir, fərqli olan tək şey SCK, SDA, MOSI, MISO və Hər lövhədə fərqli olduqları üçün RST. Mega istifadə etmirsinizsə, qısa müddətdə istifadə edəcəyimiz bu skriptin yuxarı hissəsinə baxın:

RFID:

SDA (ağ) - 53

SCK (narıncı) - 52

MOSI (sarı) - 51

MISO (yaşıl) - 50

RST (mavi) - 5

3.3v - 3.3v

GND - GND

(Qeyd: Oxucu ciddi şəkildə 3.3V tələb etsə də, pinlər 5V dözümlüdür, bu modulu Arduinos və digər 5V DIO mikrokontrolörləri ilə birlikdə istifadə etməyimizə imkan verir)

RGB LED:

Qırmızı Katod (bənövşəyi) - 8

GND - GND

Yaşıl Katod (yaşıl) - 9

Mavi Katod (mavi) - 10

Addım 2: Proqram təminatı

Proqram təminatı
Proqram təminatı

İndi proqrama keçək.

Birincisi, RFID məlumatlarını əldə etmək, yazmaq və emal etmək üçün MFRC522 kitabxanasını quraşdırmalıyıq. Github linki: https://github.com/miguelbalboa/rfid, ancaq Arduino IDE və ya PlatformIO -da kitabxana meneceri vasitəsi ilə də quraşdıra bilərsiniz. RFID məlumatları ilə məşğul olmaq və onları emal etmək üçün öz xüsusi proqramımızı yaratmadan əvvəl əvvəlcə kartımız və etiketimiz üçün faktiki UID əldə etməliyik. Bunun üçün bu eskizi yükləməliyik:

(Arduino IDE: nümunələr> MFRC522> DumpInfo)

(PlatformIO: PIO Home> kitabxanalar> quraşdırılmış> MFRC522> nümunələr> DumpInfo)

Bu eskizin etdiyi şey, onaltılı formada UID də daxil olmaqla bir kartdakı bütün məlumatları çıxarmaqdır. Məsələn, kartımın UID -si 0x72 0x7D 0xF5 0x1D -dir (şəkilə bax). Çap edilmiş məlumat quruluşunun qalan hissəsi, oxuya biləcəyimiz və ya yaza biləcəyimiz kartdakı məlumatlardır. Son hissədə daha dərindən gedəcəyəm.

Addım 3: Proqram təminatı (2)

Proqram təminatı (2)
Proqram təminatı (2)

Təlimatlarımda olduğu kimi, proqramın hər bir hissəsini skriptin qalan hissəsindəki funksiyası ilə əlaqədar izah etmək üçün xətti şərhlərdə izah edəcəyəm, amma mahiyyətcə etdiyi şey kartın kim olduğunu müəyyən etməkdir. oxuyur və ya girişi verir və ya rədd edir. Doğru kart iki dəfə skan edildikdə gizli bir mesaj da ortaya çıxar.

github.com/belsh/RFID_MEGA/blob/master/mfr….

Addım 4: RFID; İzah etdi

RFID; İzah etdi
RFID; İzah etdi

Oxucuda bir Radio Frequency modulu və bir elektromaqnit sahəsi yaradan bir anten var. Digər tərəfdən, kartda məlumatları saxlaya bilən və bir çox bloklarından birinə yazaraq dəyişdirməyimizə imkan verən bir çip var və bunu RFID -in məlumat quruluşuna düşdüyündə növbəti hissədə daha ətraflı izah edəcəyəm.

RFID ünsiyyətinin iş prinsipi olduqca sadədir. Oxuyucunun antenası (bizim vəziyyətimizdə, RC522 üzərindəki anten, üzdəki gömülü lövhəyə bənzər bir quruluşdur) radio dalğaları göndərir, bu da öz növbəsində karta/etiketə (yaxınlıqda) bir bobini enerjiləşdirir. çevrilmiş elektrik, kart içərisində olan məlumatları daha çox radio dalğası şəklində geri göndərmək üçün transponder (radio tezlik siqnallarını qəbul edən və yayan cihaz) tərəfindən istifadə ediləcək. Bu arxa səpələnmə kimi tanınır. Növbəti hissədə oxuya biləcəyimiz və ya yaza biləcəyimiz məlumatları saxlamaq üçün kart/etiketin istifadə etdiyi xüsusi məlumat quruluşunu müzakirə edəcəyəm.

Addım 5: RFID; Açıqlandı (2)

RFID; Açıqlandı (2)
RFID; Açıqlandı (2)

Daha əvvəl yüklənmiş skriptimizin çıxışının yuxarı hissəsinə baxsanız, kartın növünün PICC 1 KB olduğunu, yəni 1 KB yaddaşa sahib olduğunu görəcəksiniz. Bu yaddaş, hər biri 16 bayt məlumat (16 x 4 x 16 = 1024 = 1 KB) olan 4 blok daşıyan 16 sektordan ibarət bir məlumat quruluşuna ayrılmışdır. Hər bir sektordakı son blok (AKA Sektor Qoşqu), sektorun qalan hissəsinə oxumaq / yazmaq icazəsi vermək üçün ayrılacaq, yəni məlumatların saxlanması və oxunması baxımından işləyəcəyimiz ilk 3 bloka sahibik.

(Qeyd: 0 sektorunun ilk bloku İstehsalçı Bloku kimi tanınır və istehsalçı məlumatları kimi həyati məlumatları ehtiva edir; bu blokun dəyişdirilməsi kartınızı tamamilə kilidləyə bilər, buna görə məlumat yazmağa çalışarkən diqqətli olun)

Xoşbəxtlik.

Tövsiyə: