Dans ce projet de système de présence basé sur la RFID, nous vous expliquerons comment compter automatiquement la présence à l'aide de cartes RFID. La technologie RFID (identification et détection par radiofréquence) est couramment utilisée dans les écoles, les collèges, les bureaux et les stations à diverses fins pour garder automatiquement une trace des personnes. Ici, nous compterons la présence d'une personne autorisée en utilisant la RFID.
Nous pouvons diviser le système de présence complet en différentes sections: section lecteur, section contrôle, section conducteur et section affichage. Le rôle de chaque section est indiqué dans le diagramme ci-dessous:
Section lecteur
Cette section contient un RFID, qui est un appareil électronique qui comporte deux parties - l'une est un lecteur RFID et l'autre est une étiquette ou une carte RFID. Lorsque nous plaçons l'étiquette RFID à proximité du lecteur RFID, il lit les données de l'étiquette en série. L'étiquette RFID a un code de caractère à 12 chiffres dans une bobine. Cette RFID fonctionne à une vitesse de transmission de 9600 bps. La RFID utilise un électroaimant pour transférer des données d'un lecteur à une étiquette ou une étiquette à un lecteur.
Section de contrôle:
Le microcontrôleur 8051 est utilisé pour contrôler le processus complet de ce projet. Ici, en utilisant 8051, nous recevons des données RFID et envoyons des états ou des messages à l'écran LCD.
Section d'affichage:
Un écran LCD 16x2 est utilisé dans ce projet pour afficher les messages dessus.
Section pilote:
Cette section a un pilote de moteur L293D pour l'ouverture de la porte et un buzzer avec un transistor BC547 NPN pour les indications.
Travail
Lorsqu'une personne met son étiquette RFID sur un lecteur RFID, la RFID lit les données de l'étiquette et l'envoie au microcontrôleur 8051, puis le microcontrôleur compare ces données avec des données ou informations définies. Si les données correspondent aux données définies, le microcontrôleur incrémente la présence de l'une des personnes de la balise et si la correspondance ne se produit pas, le microcontrôleur affiche une carte invalide sur l'écran LCD et le buzzer émet un bip continu pendant un certain temps.
Le schéma de circuit pour le projet de système de présence à basse RFID est illustré ci-dessus. Dans le circuit, l'écran LCD est connecté en mode quatre bits avec le microcontrôleur 8051. Les broches RS, RW et EN de l'écran LCD sont directement connectées aux broches du PORT 1 numéro P1.0, P1.1 et P1.2. Les broches D4, D5, D6 et D7 de l'écran LCD sont directement connectées aux broches P1.4, P1.5, P1.6 et P1.7 du port 1. Le pilote du moteur est connecté aux broches du PORT numéro P2.4 et P2.5. et le buzzer est connecté en P2.6 au PORT2.
Explication du programme
Pour programmer un système d'attédance basé sur RFID, nous devons d'abord inclure des fichiers d'en-tête et définir les broches et les variables d'entrée et de sortie.
#comprendre
Après cela, nous devons créer une fonction pour le retard.
délai vide (int itime) {int i, j; pour (i = 0; i
Ensuite, nous créons une fonction pour l'écran LCD et initialisons la fonction LCD,
void lcd_init (void) {lcdcmd (0x02); lcdcmd (0x28); lcdcmd (0x0e); lcdcmd (0x01); }
Ici, nous avons une fonction que nous avons utilisée dans notre programme. En cela, nous avons configuré un débit en bauds de 9600 bps à une fréquence de cristal de 11,0592 MHz. Nous surveillons le registre SBUF pour recevoir des données.
void uart_init () {TMOD = 0x20; SCON = 0x50; TH1 = 0xfd; TR1 = 1; } char rxdata () {while (! RI); ch = SBUF; RI = 0; return ch; }
Après cela dans le programme principal, nous avons initialisé lcd et UART, puis nous lisons la sortie de la RFID lorsqu'une étiquette quelconque dessus. Nous stockons cette chaîne dans un tableau, puis nous la mettons en correspondance avec des données de tableau prédéfinies.
lcdcmd (1); lcdstring ("Placez votre carte:"); lcdcmd (0xc0); i = 0; pour (i = 0; i <12; i ++) rfid = rxdata (); rfid = '\ 0'; lcdcmd (1);
Si un match se produit, le contrôleur augmente la participation de un. Sinon, le bip sonore fonctionne en continu et l'écran LCD affiche une carte invalide.
if (strncmp (rfid, "160066A5EC39", 12) == 0) {count1 ++; lcdcmd (1); lcdstring ("Présence"); lcdcmd (0xc0); lcdstring ("Enregistré"); retard (200); lcdcmd (1); lcdstring ("Student1"); lcdcmd (0xc0); lcdstring ("Attnd. No.:"); sprintf (résultat, "% d", nombre1); lcdstring (résultat);
Disposition PCB
Voici la disposition du circuit imprimé pour le système de présence basé sur RFID: