Სარჩევი:

Arduino RFID Lock Tutorial: 6 ნაბიჯი (სურათებით)
Arduino RFID Lock Tutorial: 6 ნაბიჯი (სურათებით)

ვიდეო: Arduino RFID Lock Tutorial: 6 ნაბიჯი (სურათებით)

ვიდეო: Arduino RFID Lock Tutorial: 6 ნაბიჯი (სურათებით)
ვიდეო: Web Programming - Computer Science for Business Leaders 2016 2024, ნოემბერი
Anonim
Image
Image
Arduino RFID ჩაკეტვის გაკვეთილი
Arduino RFID ჩაკეტვის გაკვეთილი
Arduino RFID ჩაკეტვის გაკვეთილი
Arduino RFID ჩაკეტვის გაკვეთილი

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

პირველად, ჩვენ ვაპირებთ გამოვიყენოთ RFID ტეგები Arduino– სთან ერთად. მე შევქმენი მარტივი პროექტი, რომელიც კითხულობს თითოეული RFID ტეგის უნიკალურ ID- ს (UID), რომელსაც ჩვენ ვდებთ მკითხველთან ახლოს და აჩვენებს მას ამ OLED ეკრანზე. თუ ტეგის UID უდრის წინასწარ განსაზღვრულ მნიშვნელობას, რომელიც ინახება არდუინოს მეხსიერებაში, მაშინ ეკრანზე ჩვენ ვნახავთ შეტყობინებას "განბლოკილი". თუ ბარათის უნიკალური ID არ არის წინასწარ განსაზღვრული მნიშვნელობის ტოლი, განბლოკვის შეტყობინება არ გამოჩნდება. მაგარია არა?

დასაფარავი ბევრია, ასე რომ დავიწყოთ!

ნაბიჯი 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 მმ მანძილიდან!

იგივე ჩიპი არსებობს keychain RFID ტეგებშიც.

თითოეულ RFID ტეგს აქვს უნიკალური ნომერი, რომელიც განსაზღვრავს მას. ეს არის UID, რომელსაც ჩვენ ვაჩვენებთ OLED ეკრანზე. ამ UID– ის გარდა, თითოეულ ტეგს შეუძლია მონაცემების შენახვა. ამ ტიპის ბარათებში ჩვენ შეგვიძლია შევინახოთ 1 კ -მდე მონაცემები! შთამბეჭდავია არა? ჩვენ არ გამოვიყენებთ ამ ფუნქციურობას დღეს, მაგრამ ამას მომავალში გამოვიყენებთ. დღეს ჩვენ მხოლოდ ის გვაინტერესებს, რომ გამოვყოთ კონკრეტული ბარათი მისი UID– ით. RFID მკითხველის და ამ ორი RFID ბარათის ღირებულება დაახლოებით 4 დოლარია.

ნაბიჯი 3: OLED ჩვენება

Image
Image
შეაერთეთ ყველა ნაწილი
შეაერთეთ ყველა ნაწილი

ეს არის ძალიან ლამაზი ჩვენება Arduino– სთან გამოსაყენებლად. ეს არის OLED დისპლეი და ეს ნიშნავს, რომ მას აქვს დაბალი ენერგიის მოხმარება. ამ ეკრანის ენერგიის მოხმარება არის დაახლოებით 10-20 mA და ეს დამოკიდებულია იმაზე, თუ რამდენ პიქსელს ანათებს.

ეკრანს აქვს გარჩევადობა 128 × 64 პიქსელი და ის მცირე ზომისაა. ჩვენების ორი ვარიაცია არსებობს. ერთი მათგანი მონოქრომულია, ხოლო მეორეს, როგორც მე ვიყენებ, შეუძლია აჩვენოს ორი ფერი, ყვითელი და ლურჯი. ეკრანის ზედა ნაწილს შეუძლია აჩვენოს მხოლოდ ყვითელი, ქვედა ნაწილი მხოლოდ ლურჯი.

ეს OLED დისპლეი არის ძალიან ნათელი და მას აქვს ბიბლიოთეკის შესანიშნავი მხარდაჭერა. ადაფრუტმა შეიმუშავა ძალიან ლამაზი ბიბლიოთეკა ამ ჩვენებისათვის. გარდა ამისა, ეკრანი იყენებს I2C ინტერფეისს, ამიტომ Arduino– სთან დაკავშირება წარმოუდგენლად ადვილია. თქვენ მხოლოდ ორი მავთულის დაკავშირება გჭირდებათ გარდა Vcc და GND. თუ თქვენ ახალი ხართ Arduino– ში და გსურთ იაფი და ადვილად გამოსაყენებელი ჩვენება გამოიყენოთ თქვენს პროექტში, დაიწყეთ ჩვენებით. ეს არის უმარტივესი გზა დაამატოთ ჩვენება თქვენს Arduino პროექტს. მე მოვამზადე დეტალური გაკვეთილი, თუ როგორ გამოვიყენო ეს დისპლეი, რომელიც მე დავამატე ამ ინსტრუქციას.

ნაბიჯი 4: დააკავშირეთ ყველა ნაწილი

შეაერთეთ ყველა ნაწილი
შეაერთეთ ყველა ნაწილი
შეაერთეთ ყველა ნაწილი
შეაერთეთ ყველა ნაწილი
შეაერთეთ ყველა ნაწილი
შეაერთეთ ყველა ნაწილი

Arduino Uno დაფასთან კავშირი ძალიან მარტივია. თავდაპირველად, მოდით დავუკავშიროთ როგორც მკითხველის, ასევე ეკრანის ძალა.

ფრთხილად იყავით, RFID მკითხველი უნდა იყოს დაკავშირებული Arduino Uno- ს 3.3V გამომავალთან, წინააღმდეგ შემთხვევაში ის განადგურდება. ვინაიდან ეკრანს ასევე შეუძლია იმუშაოს 3.3V– ზე, ჩვენ ვუკავშირდებით Vcc ორივე მოდულიდან breadboard– ის პოზიციურ სარკინიგზო ხაზს. ეს რკინიგზა შემდეგ უკავშირდება Arduino Uno– ს 3.3 ვ გამომავალს. შემდეგი, ჩვენ ორივე GND- ს ვუკავშირდებით breadboard GND სარკინიგზო ხაზს. შემდეგ ჩვენ ვაკავშირებთ პურის დაფის GND რკინიგზას Arduino GND- თან.

OLED ეკრანი - Arduino

Vcc ▶ 3.3V

GND ▶ GND

SCL ▶ ანალოგური პინი 5

SDA alog ანალოგური პინი 4

RFID მკითხველი - არდუინო

RST ▶ ციფრული პინი 9

IRQ con დაუკავშირებელი

MISO ▶ ციფრული პინი 12

MOSI ▶ ციფრული პინი 11

SCK ▶ ციფრული პინი 13

SDA ▶ ციფრული პინი 10

RFID მკითხველის მოდული იყენებს SPI ინტერფეისს Arduino– სთან კომუნიკაციის მიზნით. ჩვენ ვაპირებთ გამოვიყენოთ Arduino UNO– ს ტექნიკური SPI ქინძისთავები. RST pin მიდის ციფრულ პინზე 9. IRQ pin რჩება დაუკავშირებელი. MISO pin მიდის ციფრულ პინზე 12. MOSI pin მიდის ციფრულ პინზე 11. SCK pin მიდის ციფრულ პინზე 13 და ბოლოს, SDA pin მიდის ციფრულ პინზე 10. ეს არის ის. RFID მკითხველი დაკავშირებულია. ჩვენ ახლა უნდა დავუკავშიროთ OLED ეკრანი Arduino– სთან I2C ინტერფეისის გამოყენებით. ამრიგად, ეკრანის SCL პინი გადადის ანალოგურ პინზე 5 და ეკრანის SDA პინზე ანალოგურ პინზე 4. თუ ჩვენ ახლა გავააქტიურებთ პროექტს და მოვათავსებთ RFID ბარათს მკითხველთან ახლოს, ჩვენ ვხედავთ, რომ პროექტი კარგად მუშაობს! ახლა დროა შევხედოთ პროექტის კოდს.

ნაბიჯი 5: პროექტის კოდი

პროექტის კოდექსი
პროექტის კოდექსი

პროექტის კოდის შესადგენად, ჩვენ უნდა შევიტანოთ რამდენიმე ბიბლიოთეკა. უპირველეს ყოვლისა, ჩვენ გვჭირდება MFRC522 Rfid ბიბლიოთეკა. მისი ინსტალაციისთვის გადადით ჩანახატზე -> ბიბლიოთეკების ჩართვა -> ბიბლიოთეკების მართვა. მოძებნეთ MFRC522 და დააინსტალირეთ. ჩვენ ასევე გვჭირდება Adafruit SSD1306 ბიბლიოთეკა და Adafruit GFX ბიბლიოთეკა ჩვენებისათვის. დააინსტალირეთ ორივე ბიბლიოთეკა ერთი და იგივე პროცედურით. Adafruit SSD1306 ბიბლიოთეკას სჭირდება მცირე მოდიფიკაცია. გადადით Arduino -> ბიბლიოთეკების საქაღალდეში, გახსენით Adafruit SSD1306 საქაღალდე და შეცვალეთ Adafruit_SSD1306.h ბიბლიოთეკა. კომენტარის ხაზი 70 და კომენტარის ხაზი 69. ჩვენს ეკრანს აქვს გარჩევადობა 128x64, ეს არის ის, რასაც ჩვენ აქ განვსაზღვრავთ. ახლა ჩვენ მზად ვართ სწრაფად შევხედოთ კოდს.

თავდაპირველად, ჩვენ ვაცხადებთ RFID ტეგის მნიშვნელობას, რომელიც ჩვენ გვსურს, რომ არდუინომ აღიაროს. ეს არის მთელი რიცხვების მასივი.

int კოდი = {69, 141, 8, 136}; // ეს არის შენახული UID

შემდეგი, ჩვენ ვაყენებთ RFID მკითხველს და ჩვენებას.

rfid. PCD_Init (); ჩვენება. დაწყება (SSD1306_SWITCHCAPVCC, 0x3C);

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

თუ მკითხველზე არის წარწერა, ჩვენ ვკითხულობთ მის UID– ს და ვბეჭდავთ ეკრანზე. შემდეგი, ჩვენ შევადარებთ ჩვენ მიერ წაკითხული ტეგის UID ღირებულებას, რომელიც ინახება კოდის ცვლადში. თუ მნიშვნელობები ერთნაირია, ჩვენ ვაჩვენებთ UNLOCK შეტყობინებას, სხვაგვარად ჩვენ არ ვაჩვენებთ ამ შეტყობინებას.

if (დამთხვევა) {Serial.println ("\ n მე ვიცი ეს ბარათი!"); printUnlockMessage (); } else {Serial.println ("\ n უცნობი ბარათი"); }

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

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

ნაბიჯი 6: საბოლოო აზრები და გაუმჯობესებები

საბოლოო აზრები და გაუმჯობესებები
საბოლოო აზრები და გაუმჯობესებები

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

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

გირჩევთ: