In deze tutorial ontwerpen we een systeem om de RFID-kaarten te lezen met MSP430 en RFID Reader. RFID staat voor Radio Frequency Identification. Elke kaart heeft een unieke ID en dit maakt het een perfecte keuze voor veel authenticatietoepassingen, zoals in kantoren, winkelcentra en op veel andere plaatsen waar alleen de persoon met autorisatiekaart naar binnen mag. RFID wordt in winkelcentra gebruikt om diefstal te voorkomen, waar het product wordt getagd met RFID-chip en als iemand het 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.
Vereiste materialen
1. MSP430 Launchpad
2. EM-18 (RFID-leesmodule)
3. 16 * 2 LCD-scherm
4. Potentiometer
5. Breadboard
6. Overbruggingskabels
Software: Energia IDE
EM-18 RFID-lezer
Elke RFID-kaart heeft een unieke ID ingebed en een RFID-lezer wordt gebruikt om RFID-kaart nr. EM-18 RFID-lezer werkt op 125 KHz en wordt geleverd met een chip-antenne en kan worden gevoed met 5V-voeding. Het biedt seriële output samen met een weigand output. Het bereik is ongeveer 8-12 cm. seriële communicatieparameters zijn 9600bps, 8 databits, 1 stopbit. Deze draadloze RF-identificatie wordt in veel systemen gebruikt, zoals
Op RFID gebaseerd aanwezigheidssysteem,
Beveiligingssystemen,
Stemmachines, E-tolheffing op rekening
Bekijk hier alle RFID-projecten.
De output van de EM-18 RFID-lezer is in 12-cijferig ASCII-formaat. Van de 12 cijfers zijn de eerste 10 cijfers het kaartnummer en de laatste twee cijfers het XOR-resultaat van het kaartnummer. De laatste twee cijfers worden gebruikt voor foutcontrole.
Het kaartnummer is bijvoorbeeld 0200107D0D62 gelezen van de lezer en het kaartnummer op de kaart zal er als volgt uitzien.
02 - preambule
00107D0D = 1080589 in decimaal.
62 is de XOR-waarde voor (02 XOR 00 XOR 10 XOR 7D XOR 0D).
Vandaar het nummer op de kaart is 0001080589.
MSP430 RFID-lezer schakelschema en werking
We zullen Hardware UART van MSP430 gebruiken, dus zorg ervoor dat de RXD- en TXD-jumpers op het bord in de HW UART-modus staan. Dan sluit Tx van EM-18 naar RXD (P1.1) van MSP430.
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 MSP430.
De gegevens die door de RFID-module worden verzonden, zijn:
Om nu een verbinding tussen RFID-lezer en MSP430 tot stand te brengen, moeten we de seriële communicatie in MSP430 inschakelen. Het inschakelen van seriële communicatie in MSP430 kan worden gedaan met behulp van een enkele opdracht.
Serial.begin (9600); data = Serial.read ();
Zoals te zien is in de bovenstaande afbeelding, gebeurt de communicatie van RFID met een BAUD-snelheid van 9600 bits per seconde. Dus voor MSP430 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 baudrate is ingesteld, is MSP klaar om de seriële gegevens te ontvangen. Deze gegevens worden opgehaald met het commando "data = Serial.read ();". Door dit commando worden seriële data genomen in ' data ' genaamd integer.
Zodra een kaart in de buurt van de lezer is gebracht, leest de lezer de seriële gegevens en stuurt deze naar MSP, de MSP wordt geprogrammeerd om die waarde op het LCD-scherm weer te geven, dus we hebben de ID van de kaart op het LCD-scherm.
Code en uitleg
We schrijven onze code in Energia IDE. Het is hetzelfde als Arduino IDE en gemakkelijk te gebruiken. De volledige code wordt aan het einde van dit project gegeven, hier leggen we enkele delen ervan uit.
Voeg eerst een bibliotheek toe voor het LCD-scherm en verklaar de char- array om het RFID-nummer op te slaan.
# omvatten
Schakel in de instelfunctie LCD en seriële communicatie in door een baudrate van 9600 te definiëren.
leegte setup () { lcd.begin (16, 2); Serial.begin (9600); ... ..
In de loop- functie zullen we controleren of seriële gegevens beschikbaar zijn of niet. Indien beschikbaar, slaan de gegevens invoer array Serial.read () en de weergave op de LCD een voor een gebruik tijdens lus.
while (Serial.available () && count <12) // Lees 12 tekens en sla ze op in de invoerarray { input = Serial.read (); // 12 tekens één voor één opslaan Serial.print (invoer); lcd.print (invoer); vertraging (300); tel ++; if (count == 12) { lcd .print (""); count = 0; // zodra 12 tekens zijn gelezen, begint u te starten en wacht u op de tweede ID ... ...
Dit is hoe we het RFID-nummer op het LCD-scherm kunnen lezen en weergeven met behulp van MSP430 Launchpad. Nu kunt u dit project verder uitbreiden en een aanwezigheidssysteem, stemsysteem, beveiligingssysteem etc. bouwen.