Мазмұны:

Arduino RFID құлпы оқулығы: 6 қадам (суреттермен)
Arduino RFID құлпы оқулығы: 6 қадам (суреттермен)

Бейне: Arduino RFID құлпы оқулығы: 6 қадам (суреттермен)

Бейне: Arduino RFID құлпы оқулығы: 6 қадам (суреттермен)
Бейне: Электронный замок с RFID на Arduino 2024, Қараша
Anonim
Image
Image
Arduino RFID құлыптау оқулығы
Arduino RFID құлыптау оқулығы
Arduino RFID құлыптау оқулығы
Arduino RFID құлыптау оқулығы

Құрметті достар, тағы бір нұсқаулыққа қош келдіңіздер. Бұл Educ8s.tv сайтынан Ник және бүгін біз қарапайым құлыптау жүйесін құру үшін осы RFID оқу құралын Arduino көмегімен қалай қолдануды үйренеміз.

Біз Arduino көмегімен RFID тегтерін бірінші рет қолданамыз. Мен оқырманға жақын орналастыратын әрбір RFID тегінің бірегей идентификаторын (UID) оқитын және оны OLED дисплейінде көрсететін қарапайым жоба жасадым. Егер тегтің UID -і Arduino жадында сақталатын алдын ала анықталған мәнге тең болса, онда дисплейде біз «Құлыпталмаған» хабарын көреміз. Егер картаның бірегей идентификаторы алдын ала анықталған мәнге тең болмаса, құлпын ашу хабары пайда болмайды. Керемет емес пе?

Көп нәрсе бар, сондықтан бастайық!

1 -қадам: барлық бөлшектерді алыңыз

Барлық бөлшектерді алыңыз
Барлық бөлшектерді алыңыз

Бұл жобаны құру үшін қажет бөліктер:

  • Arduino Uno ▶
  • RFID оқу құралы ▶
  • OLED дисплейі ▶
  • Кішкене нан тақтасы ▶
  • Кейбір сымдар ▶

Қосымша бөлшектер:

Powerbank ▶

Жобаның жалпы құны шамамен 15 долларды құрайды.

2 -қадам: RC522 RFID оқу құралы

RC522 RFID оқу құралы
RC522 RFID оқу құралы
RC522 RFID оқу құралы
RC522 RFID оқу құралы
RC522 RFID оқу құралы
RC522 RFID оқу құралы
RC522 RFID оқу құралы
RC522 RFID оқу құралы

Әр RFID тегінің ішінде шағын чип бар. Егер мен осы RFID картасының астына фонарь қойсам, онда сіз шағын чипті және оны қоршап тұрған катушканы көре аласыз. Бұл чипте қуат алу үшін батарея жоқ. Ол осы үлкен катушканы сымсыз қолдана отырып, оқырманнан, құрылғыдан алады. Оқырман RFID картасын 20 мм дейінгі қашықтықтан оқи алады!

Дәл осындай чип RFID белгілерінің кілттерінде де бар.

Әрбір RFID тегінде оны анықтайтын бірегей нөмір бар. Бұл OLED дисплейінде көрсетілетін UID. Бұл UID -тен басқа, әрбір тег деректерді сақтай алады. Карталардың бұл түрінде біз 1K деректерді сақтай аламыз! Әсерлі емес пе? Біз бұл функцияны бүгін қолданбаймыз, бірақ болашақта нұсқаулықта қолданамыз. Бүгінде бізді тек UID арқылы белгілі бір картаны анықтау қызықтырады. RFID оқу құралы мен осы екі RFID картасының бағасы шамамен 4 долларды құрайды.

3 -қадам: OLED дисплейі

Image
Image
Барлық бөліктерді қосыңыз
Барлық бөліктерді қосыңыз

Бұл Arduino -мен қолдануға болатын өте жақсы дисплей. Бұл OLED дисплейі, бұл оның қуатты аз тұтынатынын білдіреді. Бұл дисплейдің энергия шығыны шамамен 10-20 мА құрайды және бұл қанша пиксельдің жанғанына байланысты.

Дисплейдің ажыратымдылығы 128 × 64 пиксель және өлшемі кішкентай. Дисплейдің екі нұсқасы бар. Олардың бірі монохромды, ал екіншісі мен қолданатын сияқты сары және көк екі түсті көрсете алады. Экранның жоғарғы бөлігінде тек сары, төменгі бөлігінде тек көк түс болуы мүмкін.

Бұл OLED дисплейі өте жарқын және кітапхананың үлкен қолдауына ие. Adafruit бұл дисплей үшін өте жақсы кітапхана жасады. Сонымен қатар, дисплейде I2C интерфейсі қолданылады, сондықтан Arduino -мен байланыс өте оңай. Сізге тек Vcc пен GND қоспағанда екі сымды қосу қажет. Егер сіз Arduino -да жаңадан болсаңыз және сіздің жобаңызда пайдалану үшін арзан және қарапайым дисплей қажет болса, дисплейден бастаңыз. Бұл Arduino жобасына дисплей қосудың ең оңай жолы. Мен осы нұсқаулыққа тіркеген осы дисплейді пайдалану туралы егжей -тегжейлі оқулықты дайындадым.

4 -қадам: барлық бөлшектерді қосыңыз

Барлық бөліктерді қосыңыз
Барлық бөліктерді қосыңыз
Барлық бөліктерді қосыңыз
Барлық бөліктерді қосыңыз
Барлық бөліктерді қосыңыз
Барлық бөліктерді қосыңыз

Arduino Uno тақтасымен байланыс өте қарапайым. Алдымен оқырман мен дисплейдің күшін қосайық.

Абай болыңыз, RFID оқу құралы Arduino Uno 3.3В шығысына қосылуы керек, әйтпесе ол жойылады. Дисплей 3.3 В -да жұмыс істей алатындықтан, біз VC -ті екі модульден де оң жақ тақтаға қосамыз. Бұл рельс Arduino Uno 3.3 В шығысына қосылады. Содан кейін біз GND -дің екеуін де GND рельсіне қосамыз. Содан кейін біз нан тақтасының GND релесін Arduino GND -ге қосамыз.

OLED дисплейі - Arduino

Vcc ▶ 3.3V

GND ▶ GND

SCL ▶ Аналогтық түйреуіш 5

SDA ▶ Аналогтық түйреуіш 4

RFID оқу құралы - Arduino

RST ▶ Сандық түйреуіш 9

IRQ ▶ Қосылмаған

MISO ▶ Сандық түйреуіш 12

MOSI ▶ Сандық түйреуіш 11

SCK ▶ Сандық түйреуіш 13

SDA ▶ Сандық түйреуіш 10

RFID оқу модулі Arduino -мен байланысу үшін SPI интерфейсін қолданады. Сонымен, біз Arduino UNO аппараттық SPI түйреуіштерін қолданамыз. RST түйрегіші цифрлық түйреуіш 9 -ға өтеді. IRQ түйрегіші қосылмай қалады. MISO түйрегіші цифрлық түйреуішке 12. MOSI түйрегіші цифрлық түйреуішке 11 ауысады. SCK түйрегіші цифрлық түйреуішке 13 өтеді, ақырында, SDA түйрегіші цифрлық пинге 10 өтеді. RFID оқу құралы қосылған. Енді біз OLED дисплейін Arduino -мен I2C интерфейсін қолданып қосуымыз керек. Сонымен, дисплейдің SCL түйрегіші Analog Pin 5 пен SDA түйрегіші Analog Pin 4 -ке ауысады. Егер қазір біз жобаны қуаттандырып, RFID картасын оқырманға жақын орналастырсақ, онда жобаның жақсы жұмыс істеп жатқанын көреміз! Енді жобаның кодын қарастыратын кез келді.

5 -қадам: Жобаның коды

Жобаның кодексі
Жобаның кодексі

Жоба кодын құрастыру үшін бізге кейбір кітапханаларды қосу қажет. Ең алдымен, бізге MFRC522 Rfid кітапханасы қажет. Оны орнату үшін Sketch -> Кітапханаларды қосу -> Кітапханаларды басқару бөліміне өтіңіз. MFRC522 іздеңіз және оны орнатыңыз. Дисплей үшін бізге Adafruit SSD1306 кітапханасы мен Adafruit GFX кітапханасы қажет. Бірдей процедурамен екі кітапхананы да орнатыңыз. Adafruit SSD1306 кітапханасына кішкене модификация қажет. Arduino -> Libraries қалтасына өтіп, Adafruit SSD1306 қалтасын ашып, Adafruit_SSD1306.h кітапханасын өңдеңіз. Түсініктеме жолы 70 және түсініктеме сызығы 69. Біздің дисплейде 128x64 рұқсаты бар, біз дәл осында анықтаймыз. Енді біз кодты жылдам қарауға дайынбыз.

Алдымен біз Arduino танитын RFID тегінің мәнін жариялаймыз. Бұл бүтін сандардың жиыны.

int коды = {69, 141, 8, 136}; // Бұл сақталған UID

Содан кейін біз RFID оқу құралы мен дисплейді инициализациялаймыз.

rfid. PCD_Init (); display.begin (SSD1306_SWITCHCAPVCC, 0x3C);

Осыдан кейін цикл функциясында біз әрбір 100 мс сайын оқырманға тегті тексереміз.

Егер оқырманда тег болса, біз оның UID -ін оқимыз және оны дисплейде басып шығарамыз. Содан кейін біз жаңа оқылған тегтің UID кодының айнымалы мәнінде сақталатын мәнмен салыстырамыз. Егер мәндер бірдей болса, біз UNLOCK хабарын көрсетеміз, әйтпесе бұл хабарламаны көрсетпейміз.

if (match) {Serial.println («\ nМен бұл картаны білемін!»); printUnlockMessage (); } else {Serial.println («\ nБелгісіз карта»); }

Әрине, сіз бұл кодты UID мәндерін 1 -ден көп сақтау үшін өзгерте аласыз, сондықтан жоба RFID тегтерін көбірек тани алады.

Бұл жай ғана мысал. Әдеттегідей сіз осы нұсқаулыққа қоса берілген жобаның кодын таба аласыз.

6 -қадам: Қорытынды ойлар мен жақсартулар

Қорытынды ойлар мен жақсартулар
Қорытынды ойлар мен жақсартулар

Көріп отырғаныңыздай, өте төмен шығынмен біз өз жобаларымызға RFID оқу құралын қоса аламыз. Біз осындай оқырманмен қауіпсіздік жүйесін оңай құра аламыз немесе одан да қызықты жобалар жасай аламыз.

Менің басты мақсатым - осы RFID оқу құралы мен көптеген RFID тегтері бар балаларға арналған интерактивті ойындар құру. Болашақ бейнеде біз RFID тегінен деректерді жазуға және оқуға тырысамыз. Осы сәтте осы RFID карта оқу құрылғысы туралы сіздің пікіріңізді білгім келеді. Сіз оны кез келген жобаңызда қолдануды жоспарлап отырсыз ба? Төмендегі пікірлер бөлімінде кез -келген түсініктемелерді немесе идеяларды жіберіңіз, рахмет!

Ұсынылған: