Innholdsfortegnelse:

Arduino RFID Lock -opplæring: 6 trinn (med bilder)
Arduino RFID Lock -opplæring: 6 trinn (med bilder)

Video: Arduino RFID Lock -opplæring: 6 trinn (med bilder)

Video: Arduino RFID Lock -opplæring: 6 trinn (med bilder)
Video: Lesson 01 Arduino Boards | Robojax Arduino Step By Step Course 2024, November
Anonim
Image
Image
Arduino RFID -låsopplæring
Arduino RFID -låsopplæring
Arduino RFID -låsopplæring
Arduino RFID -låsopplæring

Kjære venner velkommen til en annen Instructable. Dette er Nick fra educ8s.tv, og i dag skal vi lære å bruke denne RFID -leseren med Arduino for å bygge et enkelt låsesystem.

For første gang skal vi bruke RFID -tagger med Arduino. Jeg har bygget et enkelt prosjekt som leser den unike ID (UID) for hver RFID -tag vi plasserer nær leseren og viser den på denne OLED -skjermen. Hvis UID for taggen er lik en forhåndsdefinert verdi som er lagret i Arduinos minne, vil vi i displayet se "Unlocked" -meldingen. Hvis den unike ID -en til kortet ikke er lik den forhåndsdefinerte verdien, vises ikke Lås opp -meldingen. Kult er det ikke?

Det er mye å dekke, så la oss komme i gang!

Trinn 1: Få alle delene

Få alle delene
Få alle delene

Delene som trengs for å bygge dette prosjektet er disse:

  • En Arduino Uno ▶
  • En RFID -leser ▶
  • OLED -skjerm ▶
  • Et lite brødbrett ▶
  • Noen ledninger ▶

Valgfrie deler:

Powerbank ▶

Den totale kostnaden for prosjektet er rundt $ 15.

Trinn 2: RC522 RFID -leseren

RC522 RFID -leser
RC522 RFID -leser
RC522 RFID -leser
RC522 RFID -leser
RC522 RFID -leser
RC522 RFID -leser
RC522 RFID -leser
RC522 RFID -leser

Hver RFID -tag har en liten brikke inni. Hvis jeg plasserer en lommelykt under dette RFID -kortet, kan du se den lille brikken og spolen som omgir den. Denne brikken har ikke et batteri for å få strøm. Den mottar strøm fra leseren, denne enheten, trådløst med denne store spolen. Leseren kan lese et RFID -kort som dette fra en avstand på opptil 20 mm!

Den samme brikken finnes også i RFID -koder for nøkkelringer.

Hver RFID -tag har et unikt nummer som identifiserer den. Det er UID som vi viser på OLED -skjermen. Bortsett fra denne UID, kan hver tag lagre data. I denne typen kort kan vi lagre opptil 1K data! Imponerende er det ikke? Vi vil ikke bruke denne funksjonaliteten i dag, men vil gjøre det i en fremtidig instruks. I dag er alt vi er interessert i å identifisere et bestemt kort ved hjelp av UID. Kostnaden for RFID -leseren og disse to RFID -kortene er rundt $ 4.

Trinn 3: OLED -skjerm

Image
Image
Koble til alle delene
Koble til alle delene

Dette er en veldig fin skjerm å bruke med Arduino. Det er en OLED -skjerm, og det betyr at den har et lavt strømforbruk. Strømforbruket til denne skjermen er rundt 10-20 mA, og det avhenger av hvor mange piksler som lyser.

Skjermen har en oppløsning på 128 × 64 piksler, og den er liten i størrelse. Det er to varianter av skjermen. En av dem er monokrom, og den andre som den jeg bruker kan vise to farger, gul og blå. Den øvre delen av skjermen kan bare vise gul, den nedre delen bare blå.

Denne OLED -skjermen er veldig lys, og den har god biblioteksstøtte. Adafruit har utviklet et veldig fint bibliotek for denne visningen. I tillegg til det bruker skjermen I2C -grensesnittet, så tilkoblingen til Arduino er utrolig enkel. Du trenger bare å koble til to ledninger bortsett fra Vcc og GND. Hvis du er ny på Arduino, og du vil ha en rimelig og brukervennlig skjerm som skal brukes med prosjektet ditt, kan du starte med skjerm. Det er den enkleste måten å legge til en skjerm i Arduino -prosjektet. Jeg har utarbeidet en detaljert opplæring om hvordan du bruker denne skjermen som jeg har vedlagt denne instruksjonsboken.

Trinn 4: Koble til alle delene

Koble til alle delene
Koble til alle delene
Koble til alle delene
Koble til alle delene
Koble til alle delene
Koble til alle delene

Tilkoblingen til Arduino Uno -kortet er veldig enkel. La oss først koble kraften til både leseren og skjermen.

Vær forsiktig, RFID -leseren må være koblet til 3.3V -utgangen på Arduino Uno, ellers ødelegges den. Siden displayet også kan fungere på 3.3V, kobler vi Vcc fra begge modulene til brødbrettets positive skinne. Denne skinnen er deretter koblet til 3,3V utgang fra Arduino Uno. Deretter kobler vi begge GND -ene til brødbrettets GND -skinne. Deretter kobler vi GND -skinnen på brødbrettet til Arduino GND.

OLED -skjerm - Arduino

Vcc ▶ 3.3V

GND ▶ GND

SCL ▶ Analog pin 5

SDA ▶ Analog pinne 4

RFID -leser - Arduino

RST ▶ Digital pin 9

IRQ ▶ Ikke tilkoblet

MISO ▶ Digital pin 12

MOSI ▶ Digital pin 11

SCK ▶ Digital pin 13

SDA ▶ Digital pin 10

RFID -lesermodulen bruker SPI -grensesnittet for å kommunisere med Arduino. Så vi skal bruke hardware SPI -pinnene til Arduino UNO. RST -pinnen går til den digitale pinnen 9. IRQ -pinnen forblir uten tilkobling. MISO pin går til digital pin 12. MOSI pin går til digital pin 11. SCK pin går til digital pin 13 og til slutt går SDA pin til digital pin 10. Det er det. RFID -leseren er tilkoblet. Vi må nå koble OLED -skjermen til Arduino ved hjelp av I2C -grensesnittet. Så, SCL -pinnen på displayet går til Analog Pin 5 og SDA -pin på displayet til Analog Pin 4. Hvis vi nå starter prosjektet og plasserer et RFID -kort nær leseren, kan vi se at prosjektet fungerer fint! Nå er det på tide å se på koden til prosjektet.

Trinn 5: Koden til prosjektet

Koden for prosjektet
Koden for prosjektet

For at prosjektkoden skal kunne kompileres, må vi inkludere noen biblioteker. Først og fremst trenger vi MFRC522 Rfid -biblioteket. For å installere det, gå til Sketch -> Inkludere biblioteker -> Administrer biblioteker. Søk etter MFRC522 og installer den. Vi trenger også Adafruit SSD1306 -biblioteket og Adafruit GFX -biblioteket for visningen. Installer begge bibliotekene med samme prosedyre. Adafruit SSD1306 -biblioteket trenger en liten modifikasjon. Gå til mappen Arduino -> Libraries, åpne Adafruit SSD1306 -mappen og rediger Adafruit_SSD1306.h -biblioteket. Kommentarlinje 70 og kommentarlinje 69. Skjermen vår har en oppløsning på 128x64, det er det vi definerer her. Nå er vi klare til å ta en rask titt på koden.

Først erklærer vi verdien av RFID -taggen som vi vil at Arduino skal gjenkjenne. Det er en rekke heltall.

int -kode = {69, 141, 8, 136}; // Dette er den lagrede UID

Deretter initialiserer vi RFID -leseren og skjermen.

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

Etter dette, i loop -funksjonen, ser vi etter en tag på leseren hver 100 ms.

Hvis det er en etikett på leseren, leser vi dens UID, og vi skriver den ut på displayet. Deretter sammenligner vi UID for taggen vi nettopp har lest, med verdien som er lagret i kodevariabelen. Hvis verdiene er de samme, viser vi UNLOCK -meldingen, ellers viser vi ikke denne meldingen.

if (match) {Serial.println ("\ nJeg kjenner dette kortet!"); printUnlockMessage (); } annet {Serial.println ("\ nUkjent kort"); }

Selvfølgelig kan du endre denne koden for å lagre mer enn 1 UID -verdier for at prosjektet skal gjenkjenne flere RFID -koder.

Dette er bare et eksempel. Som alltid kan du finne koden til prosjektet vedlagt denne instruksjonsboken.

Trinn 6: Endelige tanker og forbedringer

Endelige tanker og forbedringer
Endelige tanker og forbedringer

Som du kan se med en veldig lav kostnad, kan vi legge til en RFID -leser i prosjektene våre. Vi kan enkelt bygge et sikkerhetssystem med en leser som denne eller bygge flere morsomme prosjekter.

Min viktigste intensjon er å bygge noen interaktive spill for barn som bruker denne RFID -leseren og mange RFID -koder. I en fremtidig video vil vi også prøve å skrive og lese data fra en RFID -tag. På dette tidspunktet vil jeg gjerne høre din mening om denne RFID -kortleseren. Har du tenkt å bruke den i noen av prosjektene dine? Vennligst legg ut kommentarer eller ideer i kommentarfeltet nedenfor, takk!

Anbefalt: