In deze tutorial gaan we een systeem ontwerpen om de ID van RFID-kaarten te lezen. RFID staat voor Radio Frequency Identification. Elke kaart heeft een unieke ID ingebed. Deze systemen kennen vele toepassingen, zoals in kantoren, winkelcentra en op veel andere plaatsen waar alleen de persoon met autorisatiekaart de ruimte binnen mag. RFID wordt in winkelcentra gebruikt om diefstal te voorkomen, hier wordt het product getagd met RFID-chip en wanneer een persoon een gebouw verlaat met de RFID-chip gaat er automatisch alarm en wordt de diefstal gestopt. De RFID-tag is zo klein als een zandkorrel ontworpen. De RFID-authenticatiesystemen zijn eenvoudig te ontwerpen en goedkoop in prijs. Sommige scholen en hogescholen gebruiken tegenwoordig RFID als presentielijst.
Componenten vereist
Hardware: ARDUINO UNO, voeding (5v), 100uF condensator, knoppen (twee stuks), 1KΩ weerstand (twee stuks), EM-18 (RFID-leesmodule), LED, JHD_162ALCD (16 * 2LCD).
Software: arduino IDE (Arduino nightly).
Schakelschema en uitleg
In 16x2 LCD zijn er in totaal 16 pinnen als er een achtergrondverlichting is, als er geen achtergrondverlichting is, zijn er 14 pinnen. Men kan de achterlichtpinnen van stroom voorzien of laten. Nu zijn er in de 14 pinnen 8 datapinnen (7-14 of D0-D7), 2 voedingspinnen (1 & 2 of VSS & VDD of GND & + 5v), 3 e pin voor contrastregeling (VEE-regelt hoe dik de tekens moeten zijn afgebeeld) en 3 controlepennen (RS & RW & E).
In het circuit kun je zien dat ik maar twee controlepennen heb genomen omdat hij de flexibiliteit van een beter begrip geeft. Het contrastbit en READ / WRITE worden niet vaak gebruikt, zodat ze kunnen worden kortgesloten naar aarde. Dit plaatst LCD in het hoogste contrast en leesmodus. We hoeven alleen de ENABLE- en RS-pinnen te bedienen om tekens en gegevens dienovereenkomstig te verzenden.
De aansluitingen die zijn gemaakt voor LCD worden hieronder gegeven:
PIN1 of VSS naar aarde
PIN2 of VDD of VCC tot + 5v vermogen
PIN3 of VEE naar aarde (geeft maximaal contrast het beste voor een beginner)
PIN4 of RS (registerselectie) naar PIN8 van ARDUINO UNO
PIN5 of RW (lezen / schrijven) naar aarde (zet LCD in leesmodus vereenvoudigt de communicatie voor de gebruiker)
PIN6 of E (inschakelen) naar PIN9 van ARDUINO UNO
PIN11 of D4 naar PIN10 van ARDUINO UNO
PIN12 of D5 naar PIN11 van ARDUINO UNO
PIN13 of D6 naar PIN12 van ARDUINO UNO
PIN14 of D7 naar PIN13 van ARDUINO UNO
Voordat we verder gaan, moeten we de seriële communicatie begrijpen. De RFID-module stuurt hier gegevens in serie naar de controller. Het heeft een andere communicatiemodus, maar voor gemakkelijke communicatie kiezen we RS232. De RS232-pin van de module is verbonden met de RXD-pin van UNO.
De gegevens die door de RFID-module worden verzonden, zijn:
Om nu een verbinding tussen RFID-lezer en Arduino Uno tot stand te brengen, moeten we de seriële communicatie in UNO inschakelen. Het inschakelen van seriële communicatie in UNO kan worden gedaan met behulp van een enkele opdracht.
|
Zoals te zien is in de bovenstaande afbeelding, gebeurt de communicatie van RFID met een BAUD-snelheid van 9600 bits per seconde. Dus voor UNO om een dergelijke baudrate vast te stellen en om seriële communicatie te starten, gebruiken we het commando "Serial.begin (9600);". Hier is 9600 de baudrate en kan deze worden gewijzigd.
Zodra de gegevens door de UNO zijn ontvangen, zijn deze beschikbaar voor opname. Deze gegevens worden opgehaald met het commando "data = Serial.read ();". Door dit commando worden seriële data naar 'data' met de naam integer gebracht.
Zodra een kaart in de buurt van de lezer is gebracht, leest de lezer de seriële gegevens en stuurt deze naar UNO, de UNO wordt geprogrammeerd om die waarde op het LCD-scherm weer te geven, dus we hebben een ID van de kaart op het LCD-scherm.
U kunt meer over RFID begrijpen in deze tutorial: op RFID gebaseerde stemmachine, op RFID gebaseerd tolplaza-systeem.