CALVET Tom DA COSTA Jaym CROSETTI Nicolas GOOSSENS Meryem Projet Pluridisciplinaire Encadré Thème choisi : Thème n°6 Support : Robot Hexapode Lycée Colbert 2010-2011
Problématique : Comment commander le déplacement du robot hexapode afin qu’il suive le déplacement d’un point lumineux au sol?
Expression du besoin Localisation Choisie Utilisateur Robot Hexapode Commander le déplacement du robot en indiquant à l’aide d’un point lumineux l’endroit où il doit se rendre.
Diagramme des interactions Localisation choisie Utilisateur FC4 FP1 Robot Hexapode Energie FC3 FC1 FC2 Source lumineuse Programmation FP1 : Permettre à un utilisateur de déplacer le robot vers une localisation choisie FC1 : S’adapter à la source lumineuse choisie FC2 : Utiliser les outils de programmation adaptés FC3 : S’adapter à une source d’énergie FC4 : Atteindre la localisation choisie
Analyse fonctionnelle du système technique Permettre à un utilisateur de déplacer le robot vers une localisation choisie Déterminer la destination Récupérer les informations sur l'environnement ? Déterminer l'endroit le plus éclairé Permettre le déplacement Déterminer les actions à effectuer pour chaque patte Commander le déplacement des pattes Solutions Techniques
Sommaire Présentation 1. Comment récupérer les informations sur l’environnement ? 1.1. Les différentes possibilités 1.2. Choix retenu 2. Comment déterminer l’endroit le plus éclairé ? 2.1. Disposition des capteurs et principe de fonctionnement 2.2. Programme 3. Décomposer le mouvement en actions simples 3.1. Séquence de mouvement 3.2. Simulation 4. Comment commander le déplacement des pattes ? 4.1. Servomoteurs 4.2. Programme Conclusion
Chaîne d’information et d’énergie Robot en position initiale Acquérir Traiter Communiquer Carte électronique Photodiode PIC18F452 Diriger le robot vers une source lumineuse Distribuer Alimenter Convertir Transmettre Batterie 11.1 V PIC18F452 Servomoteurs Servomoteurs Chaîne d’énergie Robot en position finale
1. Comment récupérer les informations de l’environnement ? FC1: S’adapter à la source lumineuse choisie Permettre à un utilisateur de déplacer le robot vers une localisation choisie Déterminer la destination Récupérer les informations sur l'environnement ? Déterminer l'endroit le plus éclairé Permettre le déplacement Déterminer les actions à effectuer pour chaque patte Commander le déplacement des pattes Solutions Techniques
1.1. Les différentes possibilités. 1ère solution envisagée: La caméra Avantages : - permet de balayer une grande zone - permet de situer le point Problèmes rencontrés: - Nécessite une connexion au réseau ou à un ordinateur. - Le traitement était impossible avec Flowcode. Environ 12 cm
2nde solution envisagée: Les photodiodes Avantages : - Envoie un signal analogique, facilement récupérable et plus simple à traiter. - Moins encombrant et 30x moins cher. Inconvénient: - Détermination de la destination moins précise. Environ 15 mm
1.2. Choix retenu Capteur : SHARP BS520E0F • Sensibilité spectrale similaire à l’œil humain. • Spectre de détection : 350→700 nm 13 mm Ultraviolets Infrarouges 300 400 500 600 700 800 Spectre de détection
Comment les photodiodes fonctionnent elles? •Elles ont un fonctionnement similaire à celui des diodes. •Au plus elles reçoivent de lumière, au plus elles laissent passer le courant.
2. Comment déterminer l’endroit le plus éclairé ? FC1: S’adapter à la source lumineuse choisie Permettre à un utilisateur de déplacer le robot vers une localisation choisie Déterminer la destination Récupérer les informations sur l'environnement Photodiodes Déterminer l'endroit le plus éclairé ? Permettre le déplacement Déterminer les actions à effectuer pour chaque patte Commander le déplacement des pattes Solutions Techniques
2.1. Disposition des capteurs et principe de fonctionnement. Photodiodes 1 mètre maximum
Principe: Point Lumineux
2.2. Programme. Afin de déplacer le robot dans la bonne direction, on effectue différentes actions : - Calculer les couples capteurs - Déterminer la direction - Avancer dans la direction déterminée
Calcul des couples capteurs Programme de base Calcul des couples capteurs D5 D0 C0 C5 C1 D4 D1 C2 C4 C3 D3 D2 Vue de dessus
Déterminer la direction Programme de base C0 C1 C2 C3 C4 C5 D I3 I0 I1 I2 I2 Algorithme
3. Décomposer le mouvement en actions simples Permettre à un utilisateur de déplacer le robot vers une localisation choisie Déterminer la destination Récupérer les informations sur l'environnement Photodiodes Déterminer l'endroit le plus éclairé Programme Permettre le déplacement Déterminer les actions à effectuer pour chaque patte ? Commander le déplacement des pattes Solution Technique
3.1. Séquence de mouvement Action Patte 1 - M B 2 A R 3 4 5 6 M : Monte A : Avance B : Baisse R : Recule - : Attente Temps 3 2 4 1 Direction 5 6
3.2. Simulation
4. Comment commander le déplacement des pattes ? Permettre à un utilisateur de déplacer le robot vers une localisation choisie Déterminer la destination Récupérer les informations sur l'environnement Photodiodes Déterminer l'endroit le plus éclairé Programme Permettre le déplacement Déterminer les actions à effectuer pour chaque patte Commander le déplacement des pattes ? Solutions Techniques
4.1. Les servomoteurs Pour commander un servomoteur, il faut le mettre au niveau logique haut pendant une certaine durée selon le sens de rotation que l’on désire. t (ms) t (ms) 20
4.2. Programme Macro de déplacement Programme de base
… Affectation des rôles avant = direction arriere = direction + 3 + 6 ( arriere < 0 ) - 6 ( arriere > 6 ) ant_gauche = direction + 1 + 6 ( ant_gauche < 0 ) - 6 ( ant_gauche > 6 ) ant_droite = direction - 1 + 6 ( ant_droite < 0 ) - 6 ( ant_droite > 6 ) post_gauche = direction + 2 + 6 ( post_gauche < 0 ) - 6 ( post_gauche > 6 ) post_droite = direction - 2 + 6 ( post_gauche < 0 ) - 6 ( post_droite > 6 ) …
Conclusion Récupérer les informations sur l'environnement Photodiodes Solutions Techniques Permettre à un utilisateur de déplacer le robot vers une localisation choisie Déterminer la destination Récupérer les informations sur l'environnement Photodiodes Déterminer l'endroit le plus éclairé Programme Permettre le déplacement Déterminer les actions à effectuer pour chaque patte Commander le déplacement des pattes Servomoteurs