RFID-ის დაკავშირება Arduino-სთან RC522 და RDM3600 გამოყენებით. RFID საკეტის დამზადება Arduino Rfid რელეს გამოყენებით

10.09.2021

RFID ტეგები ჩვენი ცხოვრების განუყოფელ ნაწილად იქცა, თანამედროვე ავტომატიზაციის სისტემები და ჭკვიანი მოწყობილობები მათ გარეშე წარმოუდგენელია. Arduino გვაძლევს გამოყენების შესანიშნავ შესაძლებლობებს თანამედროვე ტექნოლოგიებისაწყის პროექტებშიც კი. ამ სტატიაში ჩვენ გეტყვით რა არის RFID, განვიხილავთ სტანდარტებს, ბარათების ტიპებს და ვისწავლით თუ როგორ დააკავშიროთ პოპულარული RFID წამკითხველები RC522 და RDM3600 Arduino-სთან.

RFID (რადიო სიხშირის იდენტიფიკაცია) არის რადიოსიგნალების გამოყენებით მონაცემთა გადაცემის, ჩაწერისა და შენახვის საშუალება. თითოეული RFID სისტემა მოიცავს მკითხველს/მკითხველს და RFID ტეგს, რომელიც ინახავს მონაცემებს. ტეგები შედგება ორი ნაწილისგან - ინტეგრირებული წრე და ანტენა. ინტეგრირებული წრე საშუალებას გაძლევთ შეინახოთ და დაამუშავოთ მონაცემები, ანტენა საშუალებას გაძლევთ მიიღოთ და გადაიტანოთ ინფორმაცია.

ყველა RFID სისტემა შეიძლება დაიყოს დიაპაზონის მიხედვით:

  • ახლო იდენტიფიკაცია - მანძილი არაუმეტეს 20 სმ;
  • საშუალო იდენტიფიკაცია – მანძილი 20 სმ-დან 5 მ-მდე;
  • შორ მანძილზე იდენტიფიკაცია – მაქსიმუმ 300 მ.

სიხშირის თვალსაზრისით, ჩვენ შეგვიძლია განვასხვავოთ:

  • სისტემები, რომლებიც მუშაობენ დაბალი სიხშირის დიაპაზონში (125 kHz, 134 kHz);
  • მუშაობს შუა სიხშირის დიაპაზონში (13.56 MHz);
  • მუშაობს მაღალი სიხშირის დიაპაზონში (800 MHz – 2.4 GHz).

ყველაზე პოპულარული დიაპაზონი არის საშუალო სიხშირე - ის ფართოდ გამოიყენება სატრანსპორტო აპლიკაციებში და სხვა პროექტებში, სადაც საჭიროა ბარათის გადაწერა. ძირითადი სტანდარტებია ISO 14443, ISO 15693 და EPC. სმარტ ბარათები იწარმოება ISO 14443 სტანდარტის საფუძველზე. ISO 15693 გამოიყენება ეტიკეტის გადაწერისთვის. EPC არის შტრიხკოდების ანალოგი; მას აქვს უფრო მარტივი და გასაგები სტრუქტურა.

HF band ახლახან დაიწყო გამოყენება, ძირითადად გამოიყენება საწყობის აპლიკაციებისთვის. ამ დიაპაზონისთვის გამოიყენება ISO 18000 და EPC სტანდარტები. ISO 18000 სტანდარტები იზიდავს ყველაზე დიდ ინტერესს და გამოიყენება გაფართოებული დიაპაზონის ტეგების აპლიკაციებში. ISO 18000-ისთვის ასევე არსებობს რამდენიმე სტანდარტი, რომლებიც განსხვავდება სიხშირით:

  • ISO 18000-1 (იმ პარამეტრების იდენტიფიკაცია, რომლებიც საჭიროებენ სტანდარტიზებას);
  • ISO 18000-2 (პარამეტრებისთვის 135 kHz-ზე ნაკლები არაკონტაქტური საკომუნიკაციო ინტერფეისით);
  • ISO 18000-3 (უკონტაქტო ინტერფეისისთვის 13,56 MHz);
  • ISO 18000-4 (2,45 გჰც სიხშირეზე);
  • ISO 18000-6 (860-930 MHz სიხშირისთვის);
  • ISO 18000-7 (433 MHz-სთვის).

RFID-ის უპირატესობები

  • არ არის საჭირო მხედველობის ხაზი;
  • თითქმის 100% სიგნალის იდენტიფიკაცია;
  • აგრესიულ გარემოში გამოყენების შესაძლებლობა;
  • ხანგრძლივი მომსახურების ვადა;
  • RFID ტეგი ძნელია გაყალბება;
  • დიდი რაოდენობით ინფორმაციის შენახვისა და გადაცემის შესაძლებლობა.

RFID იდენტიფიკაციის გამოყენების სფეროები

RFID ტექნოლოგია ხშირად გამოიყენება საცალო ვაჭრობაში, ბიბლიოთეკებსა და არქივებში, ლოჯისტიკაში, წვდომის კონტროლისა და მართვის სისტემებში (ACS), ადამიანების ინიციალიზაციაში და პროდუქტის ავთენტიფიკაციაში.

პერსონალის იდენტიფიკაციისთვის, ყველაზე პოპულარული ფორმატებია პლასტიკური უკონტაქტო ბარათები და უკონტაქტო გასაღებები. მათი დახმარებით თქვენ შეგიძლიათ დაარეგისტრიროთ ტერიტორიაზე ობიექტების შესვლა/გასვლა მისასვლელი პუნქტებით - ჭიშკარი, საგუშაგოები. წვდომის კონტროლის სისტემის მთავარი ამოცანაა დაშვების კონტროლი - მაგალითად, შეზღუდოს წვდომა ნებისმიერ ტერიტორიაზე, იდენტიფიცირება იმ პირთათვის, ვისაც შეუძლია შევიდეს ტერიტორიაზე. ასევე შეიძლება გადაწყდეს დამატებითი ამოცანები - პერსონალის სამუშაო საათების მონიტორინგი, ვიზიტორთა მონაცემთა ბაზის შენარჩუნება, უსაფრთხოების სისტემებთან მუშაობა და ხელფასების გაანგარიშება.

RFID გასაღებები ასევე გამოიყენება შესასვლელი ინტერკომისთვის. კარების გასახსნელად ყველაზე ხშირად გამოიყენება Proximity გასაღებები, ანუ მოკლე დიაპაზონის გასაღებები, რომლებიც მუშაობენ 10-15 სმ მანძილზე, ასევე იყოფა რამდენიმე ფორმატად - დღეს ყველაზე პოპულარულია EM-Marin, HID უკონტაქტო გასაღებები და MIFARE, რომლებიც მოიცავს უკონტაქტო გასაღებების სმარტ ბარათებს.

Arduino მოდულების მოკლე აღწერა

Arduino RFID მოდული RC522

RFID მოდული RC522 დაფუძნებულია MFRC522 წრეზე, რომელიც უზრუნველყოფს უკაბელო კომუნიკაციას 13,56 MHz სიხშირით. თქვენ შეგიძლიათ დააკავშიროთ მიკროსქემის გამოყენებით SPI ინტერფეისი, I2c და UART. NFC Reader ISO 14443 პროტოკოლის სტანდარტი.

RFID მოდულის RC522 ტექნიკური მახასიათებლები:

  • მიწოდების ძაბვა 3.3 ვ;
  • მაქსიმალური დენის მოხმარება 30 mA;
  • სიხშირის დიაპაზონი 13,55-13,57 MHz;
  • კითხვის მანძილი 25 მმ-მდე;
  • სამუშაო ტემპერატურა -20C-დან 80C-მდე.

მოდულის პინოტი ნაჩვენებია ფიგურაში. SDA პინი (SS, CS, NSS) პასუხისმგებელია slave მოწყობილობის არჩევაზე. SCK გამომავალი არის SPI საათის სიგნალი. MOSI - პასუხისმგებელია მონაცემთა გადაცემაზე master-დან slave-ზე, MISO - slave-დან master-ზე. IRQ - ასრულებს შეფერხებას. RST - ასრულებს შეფერხებას.

RDM6300 არის უკონტაქტო წამკითხველი, რომელიც გამოიყენება RFID გასაღების ნომრის დისტანციურად წასაკითხად და UART-ის მეშვეობით ნომრის გადასაცემად მიკროკონტროლერზე, რომელიც აკონტროლებს წვდომის სისტემებში ჩაკეტვას. მოწყობილობას აქვს რამდენიმე უპირატესობა - დაბალი ფასი და ინსტალაციის სიმარტივე. ყველაზე ხშირად გამოიყენება წვდომის კონტროლის სისტემებში სახლებისთვის, ავტოფარეხებისთვის, ოფისებისთვის, ბინების და სხვა შენობებისთვის ელექტრომექანიკური საკეტით. მკითხველი გამოიყენება EM4100/TK4100 ბარათების წასაკითხად. RDM6300 შეიძლება დამონტაჟდეს კედელზე ან კარადაში. Arduino ჩვეულებრივ გამოიყენება როგორც მიკროკონტროლერი.

RDM6300 სპეციფიკაციები:

  • მაქსიმალური დენის მოხმარება 50 mA;
  • მიწოდების ძაბვა 5 ვ;
  • ოპერაციული სიხშირე 125 kHz;
  • სამუშაო ტემპერატურა -10C-დან 70C-მდე.

პინოტი ნაჩვენებია ფიგურაში.

TX პინი პასუხისმგებელია მონაცემთა გადაცემაზე, RX - მიღებაზე. გამომავალი 3 არ გამოიყენება.

P2-სთვის ANT1 და ANT2 გამომავალი გამოიყენება ანტენის დასაკავშირებლად.

RC522-ის დაკავშირება Arduino-სთან

დასაკავშირებლად დაგჭირდებათ Arduino დაფა, RC522 მკითხველი, კომპიუტერი, სადენები და უკაბელო RFID ტეგი.

RC522 მოდული უკავშირდება Arduino-ს შემდეგი სქემის მიხედვით:

მიწოდების ძაბვა უზრუნველყოფილია 2,5-დან 3,3 ვ-მდე. RST გამომავალი დაკავშირებულია D9 პინთან Arduino-ზე, SDA - D10-მდე, MOSI - D11, MISO - D12, SCK - D13. ამ შემთხვევაში განვიხილეთ არდუინოს დაფებინანო v3 და არდუინო უნო. როდესაც ყველაფერი დაკავშირებულია, RC522-ის LED შუქი აინთება.

კავშირი Arduino-სთან:

ჯერ უნდა დააინსტალიროთ RFID ბიბლიოთეკა MFRC522-ისთვის.

RC522 RFID მოდულის კონტაქტები უნდა იყოს დაკავშირებული Arduino-სთან. კავშირისთვის მოსახერხებელია მამრობითი-ქალი მავთულის გამოყენება.


RFID მოდულის RC522 კონტაქტების აღწერა:

  • VCC - სიმძლავრე. მოითხოვს 3.3V;
  • RST - გადატვირთვა. ხაზის გადატვირთვა. არავითარ შემთხვევაში არ დაუკავშიროთ RESET პინს CraftDuino-ზე! ეს პინი აკავშირებს ციფრულ პორტს PWM-ით;
  • GND - გრუნტი. დედამიწა
  • MISO - Master Input Slave Output - მონაცემები slave-დან master-მდე, SPI;
  • MOSI - Master Output Slave Input - მონაცემები master-დან slave-მდე, SPI;
  • SCK - სერიული საათი - საათის სიგნალი, SPI;
  • NSS - Slave Select - slave selection, SPI;
  • IRQ - შეწყვეტის ხაზი;
MFRC522 არდუინო უნო არდუინო მეგა Arduino Nano v3 არდუინო ლეონარდო/მიკრო Arduino Pro Micro
RST 9 5 D9 RESET/ICSP-5 RST
SDA(SS) 10 53 D10 10 10
MOSI 11 (ICSP-4) 51 D11 ICSP-4 16
MISO 12 (ICSP-1) 50 D12 ICSP-1 14
SCK 13 (ICSP-3) 52 D13 ICSP-3 15
3.3 ვ 3.3 ვ 3.3 ვ სტაბილიზატორი 3.3 ვ სტაბილიზატორი 3.3 ვ სტაბილიზატორი 3.3 ვ
GND GND GND GND GND GND

RFID-RC522 მოდულს მოყვება ორი ტეგი, ერთი პლასტიკური ბარათის სახით, მეორე კი საკვანძო ბლოკის სახით. საჭიროების შემთხვევაში, მათი შეძენა შესაძლებელია ცალკე.

ყველაფრის დაკავშირების შემდეგ, მოდულის ინდიკატორი ანათებს, ეს მიუთითებს იმაზე, რომ ენერგია მიეწოდება RFID-ს . დადგა დრო გაუშვით ტესტის ესკიზი, რომელიც მდებარეობს ბიბლიოთეკაში, რომელიც ჩვენ დავაინსტალირეთ.



აუცილებელია შეამოწმოთ მითითებული მუდმივების სისწორე:

#define SS_PIN 10 #define RST_PIN 9 // ეს მუდმივები შეესაბამება

ახლა ატვირთეთ ესკიზი Arduino-ზე და ჩართეთ იგი სერიული პორტის მონიტორინგი.

ჩვენ მივაქვთ ტეგი მკითხველთან და მოდული კითხულობს ამ ტეგის ყველა მონაცემს, მაგალითად, ტეგის UID-ის უნიკალურ იდენტიფიკატორს.

RFID-RC522 ოპერაციის ვიდეო:

1 მკითხველის აღწერა RFID RC522

RFID-RC522 მოდული დაფუძნებულია NXP-ის MFRC522 ჩიპზე. ეს ჩიპი უზრუნველყოფს ორმხრივ უკაბელო (6 სმ-მდე) კომუნიკაციას 13,56 MHz სიხშირით.

MFRC522 ჩიპი მხარს უჭერს შემდეგი კავშირის ვარიანტებს:

ამ მოდულის გამოყენებით შეგიძლიათ ჩაწეროთ და წაიკითხოთ მონაცემები სხვადასხვა RFID ტეგებიდან: გასაღებები ინტერკომისთვის, პლასტიკური საშვის ბარათები და ბილეთები მეტრო და სახმელეთო ტრანსპორტისთვის, ასევე სულ უფრო პოპულარული NFC ტეგები.

RFID არის აბრევიატურა "რადიო სიხშირის იდენტიფიკაცია" და ითარგმნება როგორც "რადიო სიხშირის იდენტიფიკაცია".
NFC ნიშნავს "ახლო საველე კომუნიკაცია", "ახლო საველე კომუნიკაცია" ან "ახლო საველე კომუნიკაცია".

2 კავშირის დიაგრამა RFID-RC522 Arduino-ზე

მოდით დავუკავშიროთ RFID-RC522 მოდული Arduino-ს SPI ინტერფეისის მეშვეობით ქვემოთ მოცემული დიაგრამის მიხედვით.


მოდული იკვებება ძაბვით 2,5-დან 3,3 ვ-მდე. დარჩენილ ქინძისთავებს Arduino-ს ასე ვუკავშირებთ:

პინი RC522არდუინოს პინი
RSTD9
SDA (SS)D10
MOSID11
MISOD12
SCKD13

არ დაგავიწყდეთ ისიც, რომ Arduino-ს აქვს განსაკუთრებული ICSP კონექტორი SPI ინტერფეისით მუშაობისთვის. მისი პინოტი ასევე ნაჩვენებია ილუსტრაციაში. შეგიძლიათ დააკავშიროთ RC522 მოდულის RST, SCK, MISO, MOSI და GND პინები Arduino-ზე ICSP კონექტორთან.

3 ბიბლიოთეკა სამუშაოდ Arduino RFID-ით

MFRC522 ჩიპს აქვს საკმაოდ ფართო ფუნქციონირება. თქვენ შეგიძლიათ გაეცნოთ ყველა შესაძლებლობას მისი პასპორტის (მონაცემთა ცხრილის) შესწავლით. ჩვენ აქ ვართ, რათა გავეცნოთ შესაძლებლობებს ამ მოწყობილობისგამოვიყენოთ ერთ-ერთი მზა ბიბლიოთეკა დაწერილი Arduino მუშაობს RC522-ით. ჩამოტვირთეთ და გახსენით იგი დირექტორიაში Arduino IDE\ბიბლიოთეკები\


"rfid-master" ბიბლიოთეკის ინსტალაცია Arduino-სთან RFID ტეგებით მუშაობისთვის

ამის შემდეგ გაუშვით Arduino IDE.

4 ესკიზი ინფორმაციის წასაკითხად,ჩაწერილია RFID ტეგზე

ახლა გავხსნათ ესკიზის მაგალითი: ფაილის ნიმუშები MFRC522 DumpInfoდა ჩატვირთეთ იგი Arduino მეხსიერებაში.


ეს ჩანახატი ამოიცნობს მკითხველზე მიმაგრებული მოწყობილობის ტიპს და კითხულობს RFID ტეგზე ან ბარათზე დაწერილ მონაცემებს და შემდეგ გამოსცემს მას სერიულ პორტში.

#შეიცავს #შეიცავს const int RST_PIN = 9; // pin RST const int SS_PIN = 10; // SDA პინი (SS) MFRC522 mfrc522 (SS_PIN, RST_PIN); // MFRC522 ობიექტის შექმნა void setup() ( Serial.begin(9600); // მიმდევრობის ინიციალიზაცია პორტი SPI.begin(); // SPI ავტობუსის ინიციალიზაცია mfrc522.PCD_Init(); // RC522 წამკითხველის ინიციალიზაცია ) void loop() (// ელოდება ახალი RFID ტეგის გამოყენებას: if (! mfrc522.PICC_IsNewCardPresent()) ( დაბრუნება; // გადით, თუ არ არის გამოყენებული ახალი რუკა) // წაიკითხეთ სერიული ნომერი: if (! mfrc522.PICC_ReadCardSerial()) ( დაბრუნება; // გასვლა, თუ შეუძლებელია სერიული ნომრის წაკითხვა ) // ნაგავსაყრელის გამოტანა ბოლოზე. პორტი: mfrc522.PICC_DumpToSerial(&(mfrc522.uid)); }

ესკიზის ტექსტი საკმაოდ კარგად არის კომენტირებული.

ბიბლიოთეკის უფრო სრულყოფილი გაცნობისთვის, შეისწავლეთ ფაილები MFRC522.hდა MFRC522.cppდირექტორიადან rfid-ოსტატი.

5 მონაცემთა ნაგავსაყრელი RFID ტეგიდან

მოდით გავუშვათ სერიული პორტის მონიტორი კლავიშთა კომბინაციით Ctrl+Shift+M მენიუს მეშვეობით ხელსაწყოებიან ღილაკი გამადიდებელი შუშით. ახლა მკითხველს მივამაგროთ მეტროს ბილეთი ან ნებისმიერი სხვა RFID ტეგი. სერიული პორტის მონიტორი აჩვენებს RFID ტეგზე ან ბილეთზე დაფიქსირებულ მონაცემებს.


მაგალითად, ჩემს შემთხვევაში ისინი აქ დაშიფრულია უნიკალური ნომერიბილეთი, შეძენის თარიღი, მოქმედების ვადა, დარჩენილი მოგზაურობების რაოდენობა და საკუთრების ინფორმაცია. ერთ-ერთ მომავალ სტატიაში გადავხედავთ რა წერია მეტროსა და სახმელეთო ტრანსპორტის რუკებზე.

შენიშვნა

დიახ, RFID-RC522 მოდულის გამოყენებით შეგიძლიათ ჩაწეროთ მონაცემები მეტროს ბილეთზე. ოღონდ არ შეცდეთ, თითოეულ ბარათს აქვს ჩაწერის ციკლის მრიცხველი, რომლის გადაწერა არ შეიძლება, ასე რომ თქვენ ვერ შეძლებთ საკუთარ თავს მეტროს მოგზაურობის „დამატებას“ - ეს დაუყოვნებლივ გამოვლინდება და ბარათს უარყოფს ტურნიკეტი :) მაგრამ გამოიყენეთ შესაძლებელია მეტროს ბილეთები მათზე მცირე რაოდენობის მონაცემების ჩასაწერად - 1-დან 4 კბ-მდე. და ამის გამოყენების გზები შემოიფარგლება მხოლოდ თქვენი ფანტაზიით.

ამჟამად, რადიოსიხშირული იდენტიფიკაციის (RFID) ტექნოლოგიის გამოყენება ძალიან პოპულარული ხდება. მრავალი აპლიკაცია დანერგილია ჩვენი ცხოვრების სხვადასხვა სფეროში და გამოიყენება სხვადასხვა მიზნებისთვის. RFID საშუალებას აძლევს მონაცემთა უსადენო შეგროვებას ელექტრონული ტეგების წამკითხველების გამოყენებით, რომლებიც მიმაგრებულია ან ჩაშენებულია ობიექტებში იდენტიფიკაციისა და სხვა მიზნებისათვის. ეს სტატია განიხილავს, თუ როგორ უნდა შექმნათ მარტივი, DIY RFID წვდომის კონტროლის მოწყობილობა Arduino UNO-ს და RFID წამკითხველის (EM-18) გამოყენებით LED-ისა და რელეს სამართავად. ელექტრული დიაგრამადა არდუინოს ესკიზი ( წყარო კოდი) წარმოდგენილია ქვემოთ.

ჩართვისას მკითხველი გადასცემს რადიოსიხშირის სიგნალს. როდესაც RFID ტეგი მოთავსებულია მკითხველთან ახლოს, ის იღებს რადიოსიხშირულ სიგნალს ტეგის შიგნით არსებული ანტენის მეშვეობით. მიღებული RF სიგნალი გარდაიქმნება ელექტრო ენერგიად, რაც საკმარისია ტეგიდან მონაცემების გადასაცემად RFID მკითხველზე. გარდა ამისა, მკითხველი გადასცემს ტეგის იდენტიფიკატორს გარე მოწყობილობამიერ სერიული პორტიმონაცემთა გადაცემა. ამჟამად ხელმისაწვდომია მკითხველის მოდელების ფართო სპექტრი. ყველაზე გავრცელებული და მოსახერხებელი გამოსაყენებელია EM-18 მოდული. ეს მოდული კითხულობს RFID პასიურ ტეგებს და აგზავნის ტეგის ID-ს Arduino მიკროკონტროლერს.

კითხვაRFID იდენტიფიკატორის ტეგები

დასაწყებად, ჩამოტვირთეთ მარტივი კოდი rfid1.ino Arduino Uno-ში IDE-ის გამოყენებით.

ახლა შეკრიბეთ წრე, როგორც ნაჩვენებია ქვემოთ.

გახსენით სერიული მონიტორი Arduino IDE-ში, დაიჭირეთ RFID ტეგი ძალიან ახლოს RFID წამკითხველის ცენტრთან და ჩანიშნეთ ნაჩვენები ტეგის ID. ეს უნიკალური იდენტიფიკატორი დაგჭირდებათ შემდეგ ჩანახატში! (ჩვენს ტეგს აქვს ID 51005F46642C)

წვდომის კონტროლი

ჩართულია ამ ეტაპზესისტემა კონფიგურირებულია იმისათვის, რომ შეადაროს უნიკალური იდენტიფიკატორი (გამოყენებული ტეგი) ნებისმიერი წასაკითხი ტეგის იდენტიფიკატორთან.

დაშალეთ არსებული კავშირი და ატვირთეთ ახალი ესკიზი rfid2.ino Arduino მიკროკონტროლერამდე

გადააერთეთ აპარატურის კომპონენტები (გარკვეული ცვლილებებით), როგორც ნაჩვენებია ზემოთ სურათზე. აქ Arduino მიკროკონტროლერის პინი D12 გამოიყენება სტანდარტული 5 მმ LED-ის დასაყენებლად. პინი D13 გამოიყენება ელექტრომაგნიტური რელეს გასაკონტროლებლად საკონტროლო ტრანზისტორის მეშვეობით. ყოველ ჯერზე, როდესაც ნიშანი ემთხვევა, მაღალი კონტროლის სიგნალი გამოჩნდება პინ D13-ზე 5 წამის განმავლობაში. რელე შეიძლება გამოყენებულ იქნას გარე დატვირთვის გასაკონტროლებლად, როგორიცაა კარის გაჩერება. თუ ეტიკეტის მნიშვნელობები არ ემთხვევა, მაშინ პინი D13 რჩება დაბალი დონესიგნალი, მაგრამ ამავე დროს მაღალი დონე ჩნდება პინ D12-ზე განგაშის LED-ის გასააქტიურებლად.

ამ გაკვეთილზე ჩვენ ვისწავლით როგორ გავაკეთოთ მარტივი სისტემა, რომელიც განბლოკავს საკეტს ელექტრონული გასაღები(მარკი).

მომავალში, თქვენ შეგიძლიათ დახვეწოთ და გააფართოვოთ ფუნქციონირება. მაგალითად, დაამატეთ ფუნქცია „ახალი კლავიშების დამატება და მეხსიერებიდან მათი ამოღება“. საბაზისო შემთხვევაში, მოდით განვიხილოთ მარტივი მაგალითი, სადაც უნიკალური გასაღების იდენტიფიკატორი წინასწარ არის დაყენებული პროგრამის კოდში.

ამ გაკვეთილზე დაგვჭირდება:

პროექტის განსახორციელებლად ჩვენ უნდა დავაყენოთ ბიბლიოთეკები:

2) ახლა თქვენ უნდა დააკავშიროთ Buzzer, რომელიც გაისმის კლავიშის გაშვებისას და საკეტის გახსნისას, და მეორე სიგნალი საკეტის დახურვისას.

ჩვენ ვაკავშირებთ ზუმერს შემდეგი თანმიმდევრობით:

არდუინო ზუმერი
5 ვ VCC
GND GND
პინი 5 IO

3) განბლოკვის მექანიზმად გამოყენებული იქნება სერვო დისკი. ნებისმიერი სერვო დისკის არჩევა შესაძლებელია, რაც დამოკიდებულია თქვენთვის საჭირო ზომაზე და ძალაზე, რომელსაც ქმნის სერვო დისკი. სერვოს აქვს 3 კონტაქტი:

თქვენ უფრო ნათლად ხედავთ, თუ როგორ დავაკავშირეთ ყველა მოდული ქვემოთ მოცემულ სურათზე:

ახლა, თუ ყველაფერი დაკავშირებულია, შეგიძლიათ გააგრძელოთ პროგრამირება.

ესკიზი:

#შეიცავს #შეიცავს #შეიცავს // "RFID" ბიბლიოთეკა. #define SS_PIN 10 #define RST_PIN 9 MFRC522 mfrc522(SS_PIN, RST_PIN); ხელმოუწერელი გრძელი uidDec, uidDecTemp; // ტეგის ნომრის ათობითი ფორმატში Servo servo შესანახად; void setup() ( Serial.begin(9600); Serial.println("ბარათის მოლოდინში..."); SPI.begin(); // SPI ინიციალიზაცია / Init SPI ავტობუსი. mfrc522.PCD_Init(); // ინიციალიზაცია MFRC522 / Init MFRC522 servo.attach(6) servo.write(0) დაყენება void loop() ( return; ) // აირჩიეთ ლეიბლი, თუ (! mfrc522.PICC_ReadCardSerial()) ( return; ) uidDec = 0; სერიული ნომერიტეგები.< mfrc522.uid.size; i++) { uidDecTemp = mfrc522.uid.uidByte[i]; uidDec = uidDec * 256 + uidDecTemp; } Serial.println("Card UID: "); Serial.println(uidDec); // Выводим UID метки в консоль. if (uidDec == 3763966293) // Сравниваем Uid метки, если он равен заданому то серва открывает. { tone(5, 200, 500); // Делаем for (ბაიტი i = 0; i, გახსენით servo.write(90); // სერვოს როტაცია 90 გრადუსიანი კუთხით (გახსენით რაიმე მექანიზმი: სარქველი, ჩართოთ გასაღები და ა.შ.) delay(3000); // პაუზა 3 წამი და მექანიზმი იკეტება.

ტონი (5, 500, 500); // ხმის სიგნალის გაკეთება, დახურვა ) servo.write(0); // დააყენეთ სერვო დახურულ მდგომარეობაში)

მოდით შევხედოთ ესკიზს უფრო დეტალურად:

ბარათის UID-ის (Tag) გასარკვევად, თქვენ უნდა ჩაწეროთ ეს ჩანახატი arduino-ში, ააწყოთ ზემოთ მოყვანილი წრე და გახსნათ კონსოლი (სერიული პორტის მონიტორინგი). როდესაც თქვენ შეეხებით RFID ტეგს, კონსოლში გამოჩნდება ნომერი

მიღებული UID უნდა შეიყვანოთ შემდეგ სტრიქონში:

თუ (uidDec == 3763966293) // შეადარეთ ტეგის Uid, თუ იგი მოცემულის ტოლია, მაშინ სერვო დრაივერი ხსნის სარქველს.

თითოეულ ბარათს აქვს უნიკალური იდენტიფიკატორი და არ მეორდება. ამრიგად, როდესაც წარადგენთ ბარათს, რომლის იდენტიფიკატორიც დააყენეთ პროგრამაში, სისტემა გახსნის წვდომას სერვო დისკის გამოყენებით.