| Composants | Description | Quantité |
| Microcontrôleur utilisé pour lire les capteurs, traiter les données RFID et contrôler la servo-porte. | 1 | |
Lecteur RFID |
Lit les cartes RFID et envoie leur identifiant unique à l’Arduino. Utilisé comme scanner de carte de paiement numérique. | 1 |
| Étiquettes/cartes RFID | Stocké avec les valeurs d’équilibre. Utilisé pour simuler les cartes de paiement des véhicules. | 3 |
| Modules de capteurs infrarouges | Détecte la présence du véhicule à l’entrée et à la sortie du péage. | 2 |
| Servomoteur | Agit comme un portail automatique qui s’ouvre et se ferme. | 1 |
| LED rouge | Indique un accès refusé ou un portail fermé. | 1 |
| LED verte | Indique le succès du paiement ou la porte ouverte | 1 |
| Fils de liaison | Utilisé pour les connexions de circuits. |
– |
| Planche à pain | Pour connecter des composants sans soudure. | 1 |
| Alimentation 5 V/alimentation USB | Alimente l’Arduino et les composants connectés. | 1 |
1. Le véhicule arrive – Le premier capteur infrarouge détecte le véhicule qui approche.
2. Balayage RFID – Le conducteur tape la carte RFID et l’Arduino lit son identifiant.
3. Vérification de la carte et du solde – Le système vérifie la carte et vérifie si le solde est suffisant.
4. Décision de paiement
- Si le solde est suffisant → le péage est déduit.
- Sinon → l’accès est refusé.
5. La porte s’ouvre – Pour un paiement réussi, le servo ouvre le portail et la LED verte s’allume.
6. Laissez-passer pour véhicules – Le deuxième capteur IR détecte le départ du véhicule.
7. La porte se ferme – Une fois que le véhicule a quitté la sortie, le portail se ferme et les LED se réinitialisent.
8. Système prêt- Le système attend le prochain véhicule.

Tableaux complets de connexion des broches pour système de péage automatique
| Épingles RFID | Broches Arduino |
| SDA | 10 |
| SCK | 13 |
| MOSI | 11 |
| MISO | 12 |
| GND | GND |
| TVD | 9 |
| 3,3 V | 3,3 V |
Pour plus d’informations, vous pouvez vous référer au didacticiel Arduino RFID : Guide complet du RC522 avec code et projet, qui fournit des schémas de câblage clairs et un exemple de code pour les débutants. Les indicateurs LED fournissent un retour visuel clair dans le système de péage automatisé, aidant ainsi les utilisateurs à comprendre l’état du système en un coup d’œil.
Câblage des indicateurs LED
| LED | Broches Arduino |
| LED rouge | 6 |
| LED verte | 7 |
| Les deux LED GND | GND |
|
Capteurs IR |
Broches Arduino |
| Entrée IR OUT | 6 |
| Quitter IR OUT | 7 |
| VCC | 5V |
| GND | GND |
| SERVOmoteur | Broches Arduino |
|
Signal |
5 |
| VCC | 5V |
| GND | GND |
Un guide utile pour les débutants est le didacticiel Comment contrôler un servomoteur à l’aide d’Arduino, qui fournit des instructions étape par étape.
#include
#include
#include
#define SS_PIN 10
#define RST_PIN 9
#define IR_ENTRY 2
#define IR_EXIT 3
#define LED_RED 6
#define LED_GREEN 7
#define SERVO_PIN 5
Servo gateServo;
MFRC522 rfid(SS_PIN, RST_PIN);
const int GATE_OPEN = 90;
const int GATE_CLOSED = 0;
byte Tag1[4] = {...};
byte Tag2[4] = {...};
byte Tag3[4] = {...};
int balance1 = 500;
int balance2 = 300;
int balance3 = 0;
int tollAmount = 20;
Dans cette partie, les objets pour le module RFID et le servomoteur sont créés. Les identifiants des étiquettes RFID sont stockés dans des tableaux, avec les soldes de leur portefeuille. Les positions des portes et le montant du péage sont également définis dans cet ensemble de codes. Ces valeurs seront disponibles tout au long du programme et pourront être utilisées à plusieurs reprises au cours du programme.
4. Fonction de configuration – Initialisation du système
void setup() {
Serial.begin(9600);
SPI.begin();
rfid.PCD_Init();
pinMode(IR_ENTRY, INPUT);
pinMode(IR_EXIT, INPUT);
pinMode(LED_RED, OUTPUT);
pinMode(LED_GREEN, OUTPUT);
gateServo.attach(SERVO_PIN);
gateServo.write(GATE_CLOSED);
}
void loop() {
digitalWrite(LED_RED, HIGH);
digitalWrite(LED_GREEN, LOW);
gateServo.write(GATE_CLOSED);
if (digitalRead(IR_ENTRY)) {
Serial.println("\nCar at entry. Waiting for RFID...\n");
while (digitalRead(IR_ENTRY) == HIGH) {
if (!rfid.PICC_IsNewCardPresent() || !rfid.PICC_ReadCardSerial()) {
delay(100);
continue;
}
Serial.print("RFID Tag Detected: ");
printUID(rfid.uid.uidByte);
Serial.println();
bool is1 = uidEquals(rfid.uid.uidByte, Tag1);
bool is2 = uidEquals(rfid.uid.uidByte, Tag2);
bool is3 = uidEquals(rfid.uid.uidByte, Tag3);
if (is1) {
processCard(balance1, 1);
} else if (is2) {
processCard(balance2, 2);
} else if (is3) {
processCard(balance3, 3);
} else {
Serial.println("Unknown Card -- Access Denied");
denyAccess();
}
waitForCardRemoval();
rfid.PICC_HaltA();
rfid.PCD_StopCrypto1();
delay(200);
}
}
}
Sortie du moniteur série – Test du système de péage automatique
Le moniteur série fournit des commentaires en temps réel pour le débogage et la surveillance du projet de système de péage automatique. Ces journaux permettent de vérifier que le système fonctionne correctement et facilitent le débogage pendant le développement.
Vous trouverez ci-dessous un exemple de format de sortie série :



La première sortie montre le flux complet d’une entrée réussie d’un véhicule. Lorsque le capteur infrarouge détecte une voiture, le système scanne l’étiquette RFID et vérifie la carte comme autorisée. Après avoir confirmé le solde et déduit le montant du péage, l’Arduino ouvre le portail asservi, laissant passer le véhicule puis ferme le portail. Enfin, le système se réinitialise et attend le prochain véhicule.


Dans le scénario de solde insuffisant, le système lit la carte RFID, mais après avoir vérifié le solde stocké, il constate que le montant n’est pas suffisant pour payer le péage. L’Arduino refuse alors l’accès et affiche un message d’avertissement sur le moniteur série.
Applications concrètes des systèmes de péage automatique
La technologie des systèmes de péage automatisés a de nombreuses applications pratiques au-delà de la perception de base du péage :
» Postes de péage autoroutier : La perception automatisée des péages réduit les embouteillages et élimine la manipulation manuelle des espèces, améliorant ainsi le débit sur les routes très fréquentées.
» Parkings : Les centres commerciaux, les aéroports et les complexes de bureaux utilisent des systèmes d’entrée/sortie automatisés basés sur la RFID pour une gestion efficace du stationnement.
» Complexes résidentiels : Les communautés fermées mettent en œuvre un contrôle d’accès RFID pour l’identification des véhicules des résidents et la gestion de la sécurité.
» Installations industrielles : Les entrepôts et les usines de fabrication utilisent des portails automatisés pour le suivi des véhicules et l’autorisation d’accès.
» Établissements d’enseignement : Les écoles et les universités déploient des systèmes RFID pour l’accès aux véhicules sur le campus et la gestion du stationnement.
» Lieux de l’événement : Les stades et les salles de concert utilisent des portes automatisées pour une validation rapide et sans contact des billets et une gestion des entrées.
Dépannage des problèmes courants dans le système de péage automatique
| Problème | Causes possibles | Solutions |
|---|---|---|
| Le lecteur RFID ne détecte pas les cartes | • Mauvaise tension (en utilisant 5 V au lieu de 3,3 V) • Connexions SPI lâches • Version de bibliothèque incorrecte |
• Vérifiez la connexion d’alimentation 3,3 V. • Vérifiez tous les fils SPI (MOSI, MISO, SCK, SS) • Mettre à jour la bibliothèque MFRC522 vers la dernière version. • Plage de détection de la carte de test (max 5 cm) |
| Le servomoteur ne bouge pas | • Alimentation électrique insuffisante • Mauvaise connexion des broches • Bibliothèque Servo.h non incluse |
• Utilisez une alimentation externe de 5 V pour le servo (min 500 mA). • Vérifiez la broche de signal connectée à la broche numérique 5. • Inclure Servo.h au début du code • Testez le servo indépendamment avec le code de balayage |
| Les capteurs IR se déclenchent toujours | • Réglage incorrect de la sensibilité • Interférence de la lumière ambiante • Capteur positionné trop près |
• Ajustez le potentiomètre sur le module IR. • Protéger les capteurs de la lumière directe du soleil • Positionner les capteurs à 10-15 cm du point de détection • Ajouter un délai dans le code pour anti-rebond des signaux |
| Le portail se ferme avant le passage du véhicule | • Le capteur IR de sortie ne fonctionne pas • Retard insuffisant dans le code • Mauvais positionnement du capteur |
• Testez le capteur de sortie indépendamment • Augmenter le délai après l’ouverture du portail (2-3 secondes) • Positionner le capteur de sortie au-delà de la barrière du portail • Ajouter une boucle while pour attendre le passage du véhicule |
| Le solde ne se met pas à jour correctement | • Variable non transmise par référence • Erreur de logique de code • Réinitialisation de la balance lors du cycle d’alimentation |
• Utilisation et opérateur dans les paramètres de fonction • Vérifier la logique de déduction dans processCard() • Stocker les soldes dans l’EEPROM pour la persistance • Ajoutez des impressions de débogage en série pour suivre les modifications. |
| Plusieurs cartes avec le même UID | • Utilisation de l’UID par défaut à partir d’exemples • Cartes mal initialisées • Cloner des cartes du même lot |
• Lire l’UID réel à l’aide du code de vidage RFID • Utilisez des cartes uniques pour les tests • Mettre à jour les tableaux de balises avec de vrais UID • Pensez à utiliser les blocs mémoire de la carte |
Fonctionnalités avancées pour votre projet de système de péage automatique
Améliorez votre projet de système de péage automatique à l’aide d’Arduino avec ces modifications avancées :
1. Intégration IoT et connectivité cloud
2. Améliorations du système de paiement
3. Intégration avancée des capteurs
4. Améliorations de l’interface utilisateur
5. Fonctionnalités de sécurité et de sûreté
Projets de référence
Référentiel GitHub et fichiers sources
Accédez au code source complet, aux schémas de circuit et à la documentation de ce projet de système de péage automatique à l’aide d’Arduino.
Projets basés sur la RFID utilisant le lecteur RFID EM18


Système de gestion d’événements basé sur l’IoT utilisant RFID et ThingSpeak
Créez un système de gestion d’événements IoT basé sur RFID qui non seulement surveille le journal d’entrée mais, avec l’aide de la technologie IoT, mais peut également envoyer les données de journal et d’entrée directement à un serveur dédié capable de gérer toute l’authentification, l’autorisation et la gestion, rendant l’ensemble du processus transparent.

Comment connecter la RFID au microcontrôleur STM32
Créez un système de gestion d’événements IoT basé sur RFID qui surveille non seulement le journal des entrées, mais avec l’aide de la technologie IoT, mais peut également envoyer les données de journal et d’entrée directement à un serveur dédié capable de gérer toute l’authentification, l’autorisation et la gestion, rendant l’ensemble du processus transparent.
Retrouvez l’histoire de Raspberry Pi dans cette vidéo :

