Table des matières

🧪 TP : Barrière de parking automatisée avec Arduino

🎯 Problématique

Comment concevoir une barrière de parking automatisée capable de :


🧩 Organisation du TP

Le TP est composé de 3 parties progressives :


🧰 Matériel


🔵 PARTIE A — Servomoteurs

🎯 Objectif

Découvrir le fonctionnement des servomoteurs et piloter une barrière.


A1 — Observation

❓ Questions

  1. Quelle est la différence entre :
    • un servo angulaire
    • un servo à rotation continue
  2. Quel type de servo est adapté à une barrière ? Pourquoi ?

A2 — Commande simple

🛠 Travail demandé

Programmer le servo pour :


A3 — Mouvement progressif

🛠 Travail demandé

Réaliser une ouverture progressive :

❓ Question

Pourquoi ce mouvement est-il plus réaliste ?


A4 — Commande par bouton

🛠 Travail demandé


🟢 PARTIE B — Affichage écran

🎯 Objectif

Afficher des informations à l’utilisateur.


B1 — Message simple

🛠 Travail demandé

Afficher :

Systeme pret

B2 — Interaction

🛠 Travail demandé

Afficher :


B3 — Messages système

🛠 Travail demandé

Afficher selon les cas :


🔴 PARTIE C — Système complet

🎯 Objectif

Créer une barrière automatisée complète.


C1 — Détection véhicule

🛠 Travail demandé

Utiliser le capteur ultrason :

❓ Question

Quel est le rôle du seuil ?


C2 — Code binaire pondéré

🎯 Principe

Bouton Poids
B3 8
B2 4
B1 2
B0 1

🛠 Travail demandé

Lire les boutons et calculer la valeur.


✏️ Exercices

  1. Quels boutons pour :
    • 6 = ?
    • 9 = ?
    • 13 = ?
  2. Si B2 et B1 sont appuyés → valeur = ?

C3 — Validation du code

🛠 Travail demandé


C4 — Ouverture barrière

🛠 Travail demandé

Créer la séquence :

  1. ouverture progressive
  2. attente
  3. fermeture progressive

🔄 Fonctionnement global

🧠 Algorithme

  1. Initialisation
  2. Barrière fermée
  3. Attente véhicule
  4. Détection
  5. Affichage “Bienvenue”
  6. Saisie du code
  7. Vérification
  8. Si OK → ouverture
  9. Sinon → refus
  10. Retour attente

🧱 Structuration du programme

🛠 Fonctions conseillées


✅ Critères de réussite


⭐ Pour aller plus loin


⚡ Extension — Programmation par interruptions

🎯 Objectif

Découvrir une autre manière de programmer :


🧠 Rappel

Jusqu’à présent, le programme fonctionne ainsi :

👉 On appelle cela du scrutation (polling)


⚠️ Limites du polling


💡 Principe des interruptions

Une interruption permet :

👉 Exemple :


🛠 Activité 1 — Bouton avec interruption

Objectif

Déclencher l’ouverture de la barrière sans scrutation

Travail demandé

Résultat attendu


🛠 Activité 2 — Variable de signal

Principe

⚠️ Dans une interruption, on évite les actions longues

👉 On utilise une variable “flag”

Travail demandé


🛠 Activité 3 — Capteur ultrason amélioré

Objectif

Réagir rapidement à l’arrivée d’un véhicule

Travail demandé


⚠️ Bonnes pratiques

Dans une fonction d’interruption :


🔬 Comparaison

Méthode Avantages Inconvénients
Polling simple lent, peu réactif
Interruption rapide, efficace plus complexe

🧠 Analyse

❓ Questions

  1. Quelle méthode est la plus réactive ?
  2. Pourquoi ne met-on pas tout le code dans l’interruption ?
  3. Quel est le rôle de la variable “flag” ?

⭐ Pour aller plus loin


🎯 Conclusion

Un système embarqué performant :

👉 C’est le principe des systèmes industriels modernes