đ€ Projet Robot Ăducatif - Vue dâEnsemble
đ€ Projet Robot Ăducatif - Vue dâEnsemble
đ Structure du Projet
windsurf-project-4/
â
âââ đ README.md # Documentation principale
âââ đ GUIDE_DEMARRAGE.md # Guide de dĂ©marrage rapide
âââ đ PROJET_COMPLET.md # Ce fichier
â
âââ đ§ requirements.txt # DĂ©pendances Python
âââ đ§ install.sh # Installation Linux/Mac
âââ đ§ install.bat # Installation Windows
â
âââ đ robot_smile.py # â PROGRAMME PRINCIPAL - Sourire Cozmo
âââ đ roboeyes_pygame.py # BibliothĂšque yeux pour Pygame
â
âââ đ examples/ # Exemples supplĂ©mentaires
â âââ emotions.py # DĂ©monstration des Ă©motions
â âââ interactive.py # ContrĂŽle interactif complet
â
âââ đ micropython/ # Version pour robot rĂ©el
âââ README.md # Guide matĂ©riel
âââ main.py # Programme principal MicroPython
âââ roboeyes.py # BibliothĂšque pour MicroPython
đŻ Objectif du Projet
Créer un robot éducatif avec des yeux expressifs (style Cozmo) pour apprendre :
- Programmation Python : Variables, fonctions, boucles, événements
- Graphiques : Dessiner et animer Ă lâĂ©cran
- Ălectronique : Connecter des composants (version matĂ©rielle)
- Logique : Résoudre des problÚmes et déboguer
đ DĂ©marrage Rapide (3 Ă©tapes)
1ïžâŁ Installation
# Linux/Mac
./install.sh
# Windows
install.bat
# Ou manuellement
pip install pygame numpy
2ïžâŁ Lancer le Programme Principal
python3 robot_smile.py
3ïžâŁ Interagir
- ESPACE : Faire sourire le robot đ
- O : Ouvrir les yeux đ
- C : Fermer les yeux đŽ
- B : Cligner đ
- ESC : Quitter
đ Programmes Disponibles
1. robot_smile.py (DĂ©butant) â
Le programme principal ! Un robot qui sourit comme Cozmo.
Fonctionnalités :
- Yeux animés avec clignement automatique
- Sourire activable avec la touche ESPACE
- ContrĂŽles simples au clavier
- Interface visuelle agrandie (512x256)
Parfait pour : PremiÚre découverte, démonstration
2. examples/emotions.py (Intermédiaire)
Démonstration automatique de toutes les émotions.
Ămotions disponibles :
- đ Normal (DEFAULT)
- đ Heureux (HAPPY)
- đŽ FatiguĂ© (TIRED)
- đ En colĂšre (ANGRY)
Parfait pour : Comprendre les différentes expressions
3. examples/interactive.py (Avancé)
ContrĂŽle complet du robot avec le clavier.
Commandes :
- 1-4 : Changer dâĂ©motion
- O/C : Ouvrir/Fermer les yeux
- B : Cligner
- A : Toggle clignement automatique
- +/- : Agrandir/réduire les yeux
Parfait pour : Expérimentation et personnalisation
4. micropython/main.py (Expert)
Version pour robot réel avec écran OLED.
Matériel requis :
- Raspberry Pi Pico ou ESP32
- Ăcran OLED I2C 128x64 (SSD1306)
- CĂąbles de connexion
Parfait pour : Créer un vrai robot physique
đ Parcours dâApprentissage
Niveau 1 : Découverte (1-2 heures)
- â Installer le projet
- â
Lancer
robot_smile.py - â Tester toutes les touches
- â
Lancer
examples/emotions.py - â Observer les diffĂ©rentes expressions
Niveau 2 : Exploration (2-4 heures)
- â
Lancer
examples/interactive.py - â Tester toutes les combinaisons
- â
Ouvrir
robot_smile.pydans un Ă©diteur - â Lire les commentaires dans le code
- â Identifier les diffĂ©rentes parties du programme
Niveau 3 : Modification (4-8 heures)
- â Changer la taille des yeux dans le code
- â Modifier la vitesse de clignement
- â Ajouter une nouvelle touche au clavier
- â CrĂ©er une nouvelle sĂ©quence dâĂ©motions
- â Personnaliser les couleurs (version Pygame)
Niveau 4 : Création (8+ heures)
- â CrĂ©er son propre programme
- â Ajouter de nouvelles fonctionnalitĂ©s
- â Assembler le matĂ©riel pour la version physique
- â Programmer le robot rĂ©el
- â Inventer de nouveaux comportements
đ§ Technologies UtilisĂ©es
Version Simulation (PC)
- Python 3.7+ : Langage de programmation
- Pygame : BibliothĂšque graphique
- NumPy : Calculs mathématiques
Version Matérielle (Robot)
- MicroPython : Python pour microcontrĂŽleurs
- SSD1306 : Driver pour écran OLED
- FrameBuffer : Gestion de lâaffichage
đ Code Source Original
Ce projet est basé sur :
- micropython-roboeyes par MCHobby
- GitHub : https://github.com/mchobby/micropython-roboeyes
- AdaptĂ© et simplifiĂ© pour lâapprentissage
đš Personnalisations Possibles
Facile
- â Changer la taille des yeux
- â Modifier la vitesse de clignement
- â Ajouter des touches au clavier
- â Changer les couleurs de fond
Moyen
- â CrĂ©er de nouvelles Ă©motions
- â Ajouter des sons
- â Faire suivre la souris
- â CrĂ©er des sĂ©quences dâanimation
Difficile
- â Ajouter des capteurs (distance, son)
- â Interface web de contrĂŽle
- â Reconnaissance vocale
- â Communication entre robots
đ RĂ©solution de ProblĂšmes
ProblĂšme : âModuleNotFoundError: No module named âpygameââ
Solution : Exécutez pip install pygame
ProblĂšme : âpython: command not foundâ
Solution : Utilisez python3 au lieu de python
ProblĂšme : LâĂ©cran reste noir
Solution : Appuyez sur âOâ pour ouvrir les yeux
ProblĂšme : Le robot ne cligne pas
Solution : Attendez quelques secondes ou appuyez sur âBâ
ProblĂšme : Erreur I2C (version MicroPython)
Solution : Vérifiez les connexions SDA/SCL
đĄ IdĂ©es de Projets AvancĂ©s
- Robot RĂ©veil : Affiche lâheure et se rĂ©veille progressivement
- Compagnon dâĂtude : Encourage pendant les devoirs
- DĂ©tecteur de PrĂ©sence : RĂ©agit quand quelquâun sâapproche
- Station Météo : Affiche la météo avec des expressions
- Jeu Interactif : Devine lâĂ©motion affichĂ©e
- Robot Messager : Affiche des notifications
- Tamagotchi Robotique : Animal virtuel Ă nourrir
- Indicateur de Concentration : Aide à rester concentré
đ€ Contribuer et Partager
Partagez vos créations !
- Prenez des photos/vidéos
- Documentez vos modifications
- Créez des tutoriels
- Aidez dâautres apprenants
Améliorations possibles
- Nouvelles émotions
- Meilleurs graphismes
- Plus dâanimations
- Support de nouveaux matériels
đ Support
Documentation
README.md: Vue dâensembleGUIDE_DEMARRAGE.md: Guide dĂ©taillĂ©micropython/README.md: Version matĂ©rielle- Commentaires dans le code
Ressources Externes
đ Conclusion
Ce projet est conçu pour ĂȘtre :
- â Ăducatif : Apprendre en sâamusant
- â Progressif : Du simple au complexe
- â Pratique : De la simulation au robot rĂ©el
- â CrĂ©atif : Infiniment personnalisable
Amusez-vous bien et bon apprentissage ! đđ€
Créé avec â€ïž pour apprendre la programmation et lâĂ©lectronique