Un système de contrôle d'accès est un dispositif qui permet de gérer et sécuriser l'accès à un lieu, une ressource ou un service en autorisant ou refusant l'entrée aux utilisateurs en fonction de leur identité. Ces systèmes sont utilisés dans divers domaines, notamment dans les bâtiments sécurisés, les entreprises, les hôpitaux, les écoles et les systèmes informatiques.
1. Types de Contrôle d’Accès
a) Contrôle d’Accès Physique
Il concerne la gestion des entrées et sorties dans un bâtiment ou une zone sécurisée.
Badges RFID/NFC : Cartes ou badges avec une puce qui communiquent avec un lecteur RFID.
Claviers à code PIN : L'utilisateur entre un code secret pour déverrouiller une porte.
Biométrie : Empreinte digitale, reconnaissance faciale, reconnaissance rétinienne.
Systèmes à QR Code ou Barcode : Utilisés pour les tickets d’entrée ou les laissez-passer numériques.
b) Contrôle d’Accès Logique
Utilisé pour protéger les données et systèmes informatiques.
Mots de passe et authentification par code.
Cartes à puce et jetons de sécurité (ex: carte bancaire, clé USB sécurisée).
Authentification à deux facteurs (2FA).
Contrôle basé sur les rôles (RBAC) : Accès donné en fonction du rôle dans une entreprise.
2. Fonctionnement d’un Système de Contrôle d’Accès RFID
a) L’utilisateur approche sa carte RFID du lecteur.
b) Le lecteur scanne l’UID de la carte et l’envoie au contrôleur.
c) Le contrôleur vérifie dans la base de données si l’UID est autorisé.
d) Si l’UID est valide, la porte s’ouvre et un signal sonore/visuel indique l’accès.
e) Si l’UID est invalide, un message "Accès refusé" est affiché et une alarme peut être déclenchée.
Ce système utilise une carte ESP32 pour gérer un accès sécurisé à l'aide d'un module RFID-RC522, d'un buzzer, d'un écran LCD I2C et d'un module LED RGB.
Étape 1 : Démarrage
Le système affiche "Scanner votre carte" sur l’écran LCD.
La LED RGB s’allume en bleu (attente d’une carte RFID).
Étape 2 : Lecture de la carte RFID
L'utilisateur approche sa carte RFID du lecteur.
Le module RFID lit l’UID et l’envoie à l’ESP32.
Étape 3 : Vérification de l’UID
L’ESP32 compare l’UID lu avec la liste des UID autorisés.
Deux cas possibles :
a) Accès Autorisé
L’UID est dans la base de données.
LED RGB = Vert.
L’écran affiche “Accès Autorisé”.
b) Accès Refusé
L’UID n’est pas reconnu.
LED RGB = Rouge.
Buzzer émet un son d’alerte (bip long).
L’écran affiche “Accès Refusé”.
Étape 4 : Retour à l'état initial
Après 5 secondes, la LED s'éteint et l’écran revient à "Scanner votre carte".
Carte ESP32
La carte ESP32 est un microcontrôleur qui lit les cartes RFID, affiche les messages sur l’écran LCD, active le buzzer et change la couleur de la LED RGB selon l’état du contrôle d’accès.
Module RFID-RC522
Le module RFID-RC522 détecte et lit l'UID des cartes RFID et transmet l’UID au ESP32 via SPI.
Carte ou badge RFID
C'est un identifiant unique (UID) sous forme de carte ou de badge. Lorsqu'il est présenté devant le lecteur RFID, l’UID est lu et comparé à une liste d’UID enregistrés.
Afficheur LCD I2C
L'écran LCD I2C affiche des messages comme “Accès Autorisé” ou “Accès Refusé”.
Buzzer
Le Buzzer Émet un son si l'accès est refusé.
Module LED RGB
Le module LED RGB Indique l’état du système avec des couleurs :
Connexion du module RFID-RC522 à la carte ESP32
RFID-RC522 Pin | ESP32 Pi |
VCC | 3V3 |
RST | GPIO 2 |
GND | GND |
MISO | GPIO 19 |
MOSI | GPIO 23 |
SCK | GPIO 18 |
SDA (SS) | GPIO 5 |
Connexion de l'afficheur I2C LCD à la carte ESP32
LCD I2C Pin | ESP32 pin |
VCC | 5 volt |
GND | GND |
SDA | GPIO 21 |
SCL | GPIO 22 |
Connexion du Buzzer à la carte ESP32
Buzzer pin | ESP32 pin |
(+) pin | GPIO 17 |
(-) pin | GND |
Connexion du LED RGB à la carte ESP32
LED RGB pin | ESP32 pin |
Red pin | GPIO 16 |
Green pin | GPIO 4 |
GND pin | GND pin |
Voici le code en Micropython qui implémente le fonctionnement du système :
Bibliothèques requises
MFRC522 → pour gérer le module RFID-RC522
i2c_lcd et lcd_api → pour afficher les informations sur l’écran LCD I2C
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
from time import sleep_ms from machine import Pin, SPI, SoftI2C,ADC from mfrc522 import MFRC522 from lcd_api import LcdApi from i2c_lcd import I2cLcd sck = Pin(18, Pin.OUT) mosi = Pin(23, Pin.OUT) miso = Pin(19, Pin.OUT) sda = Pin(5, Pin.OUT) I2C_ADDR = 0x27 totalRows = 4 totalColumns = 20 spi = SPI(baudrate=100000, polarity=0, phase=0, sck=sck, mosi=mosi, miso=miso) i2c = SoftI2C(scl=Pin(22), sda=Pin(21), freq=10000) #initializing the I2C method for ESP32 lcd = I2cLcd(i2c, I2C_ADDR, totalRows, totalColumns) buzzer=Pin (17,Pin.OUT) red_pin=Pin (16,Pin.OUT) green_pin=Pin (4,Pin.OUT) def do_read(): while True: rdr = MFRC522(spi, sda) uid = "" (stat, tag_type) = rdr.request(rdr.REQIDL) # lire l'UID de la carte RFID si elle est présente if stat == rdr.OK: (stat, raw_uid) = rdr.anticoll() if stat == rdr.OK: uid = ("0x%02x%02x%02x%02x" % (raw_uid[0], raw_uid[1], raw_uid[2], raw_uid[3])) print(uid) lcd.clear() lcd.move_to(1,1) # si l'identificateur de la carte correspond à celui enregistré dans la carte ESP32 if uid=="0xdb1bb201" : lcd.putstr("Authorized access") green_pin.value(1) # Allumer le LED en vert # si l'identificateur de la carte ne correspond pas à celui enregistré dans la carte ESP32 else: lcd.putstr("Access denied") buzzer.value(1) # Faire sonner le buzzer red_pin.value(1) # Allumer la LED en rouge sleep_ms(5000) # Après 5 secondes, la LED s'eteint et l’écran revient à "Scanner votre carte". red_pin.value(0) green_pin.value(0) buzzer.value(0) lcd.clear() lcd.move_to(1,1) lcd.putstr('Scan your card') else: dui="" lcd.clear() lcd.move_to(1,1) lcd.putstr('Scan your card') do_read() |
La robotique éducative joue un rôle important dans l'éducation des enfants et des jeunes en les aidant à acquérir des compétences en science et technologie.
Dans ce cadre notre site web représente une excellente ressource pour les parents, les enseignants et les enfants qui souhaitent découvrir la robotique.
Zaouiet Kontech-Jemmel-Monastir-Tunisie
+216 92 886 231
medaliprof@gmail.com
Site robotique réalisé par Mohamed Ali-Prof Info