Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
1
Initiation à la robotique Mini-projet
ISN Informatique et Sciences du Numérique Formation des enseignants Initiation à la robotique Mini-projet Marc Silanus – Génie Electronique – Lycée A. Benoit – Cours Victor Hugo – L’ISLE SUR LA SORGUE
2
Informatique et Sciences du Numérique
ISN Informatique et Sciences du Numérique Initiation à la robotique Le programme élève Savoirs Capacités Observations Découverte d’un système robotique et de sa programmation Identifier les différents composants d’un minirobot et comprendre leurs rôles respectifs. Décrire un système à événements simple à l’aide d’une machine à états finis. Programmer (dans un langage de haut niveau) un mini robot pour lui faire exécuter une tâche complexe. On propose des activités adaptées aux équipements et logiciels disponibles dans l’établissement.
3
Informatique et Sciences du Numérique
ISN Informatique et Sciences du Numérique Initiation à la robotique Planning Qu’est-ce qu’un robot ? A quoi servent les robots ? Les kits robotiques Les simulateurs Application didactique Définition de la problématique Définition des limites du prototype Recherche de solutions Apport de connaissances élémentaires Concevoir un prototype pour répondre à la problématique
4
1- Qu’est-ce qu’un robot?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot?
5
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? « Robota » signifie « Travail » en Tchèque. Introduit en 1921 par l'écrivain tchèque Karel Čapek (Tschapek) dans une pièce de théâtre. Désigne des êtres anthropomorphes qui réponde parfaitement aux ordres de leur maitre
6
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Définition : Machine pouvant manipuler des objets et réalisant des actions conformément à un programme préétablie et modifiable. Conséquence : Programmer un robot consiste à lui spécifier la séquence d’action qu’il doit réaliser Remarques : Les robots sont souvent dotés de « sens » (divers capteurs) leur permettant de décider de l’action la mieux adaptées à la situation ou à l’environnement. Les robots peuvent acquérir une certaine « expérience » au cours de leur fonctionnement : Dispositif d’Intelligence Artificielle (IA)
7
Interface de communication
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Liaison filaire Sans fil Clavier Ecran tactile … Schéma bloc Transmission numérique ou analogique Grandeur électrique (tension, courant, fréquence, …) Transmission numérique ou analogique Energie Secteur, Batteries, panneaux solaires, … Interface de communication Envoyer et/ou recevoir des informations Grandeurs physiques Capteurs acquisition des grandeurs physiques Carte mère Système de traitement de l’information Actionneurs Réalisation des actions programmés Position Vitesse Accélération Température Humidité …. Transmission numérique ou analogique Déplacement Préhension Son Lumière Mesures …
8
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) La base mobile Les capteurs
9
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) La base mobile Holonomie : le nombre de degrés de libertés contrôlables est égal au nombre total de degrés de liberté. A partir d’une position donnée, une plateforme holonome devra donc pouvoir se déplacer : en avant, sur le coté et tourner sur elle-même, le tout simultanément
10
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) La base mobile Les plates-formes différentielles :
11
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) La base mobile Les plates-formes omnidirectionnelles :
12
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) La base mobile Les plates-formes omnidirectionnelles :
13
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) La base mobile Les plates-formes non holonomes :
14
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) La base mobile Les plates-formes à pattes :
15
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) Les capteurs Les capteurs tactiles : Choc, préhension, …
16
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) Les capteurs Les odomètres : Vitesse, trajectoire
17
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) Les capteurs Les télémètres à ultrason : distance aux éléments de l’environnement
18
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) Les capteurs Les télémètres à infrarouge : distance aux éléments de l’environnement
19
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) Les capteurs Les télémètres laser : distance aux éléments de l’environnement, cartographie
20
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) Les capteurs Les caméras : Perception de l’environnement Détection d’amers pour le positionnement Détection de guides de navigation (routes, couloirs, rails, …) Traitement d’image : Indexation (recherche automatique dans une BD) Recherche des contours Colorimétrie Profondeur (déplacement apparent des objets) …
21
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) Les capteurs Les centrales inertielles : Accéléromètre : accélération en translation Gyromètre : accélération de rotation Gyroscope : position angulaire par rapport à un axe de référence Magnétomètre ou boussole électronique
22
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) Les capteurs Les balises : Repères de navigation ou de positionnement Actives ou passives
23
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) Les capteurs Le GPS : Positionnement
24
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile)
25
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) Les systèmes de traitement de l’information Le microcontrôleur : circuit intégré qui rassemble les éléments essentiels d'une carte mère : processeur, mémoires (RAM et ROM), interfaces d'entrées-sorties (Numériques, et Analogiques), Convertisseurs Analogique / Numérique, Timers, PWM, …
26
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) Les systèmes de traitement de l’information L’automate programmable industriel : dispositif électronique programmable destiné à la commande de processus industriels par un traitement séquentiel.: processeur, mémoires (RAM et ROM), Cartes d'entrées-sorties (Numériques, et Analogiques), Modules de communication (RS232, RS485, Modbus, Ethernet, …) Modules Motion …
27
1- Qu’est-ce qu’un robot ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 1- Qu’est-ce qu’un robot ? Principaux constituants d’un robot (mobile) Les systèmes de traitement de l’information L’ordinateur embarqué : utilisent généralement des microprocesseurs à basse consommation d'énergie ou des microcontrôleurs. Disposent d’un système d’exploitation qui facilite la gestion des tâches à effectuer. Plusieurs programmes peuvent être exécuter simultanément.
28
2- A quoi servent les robots ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 2- A quoi servent les robots ?
29
2- A quoi servent les robots ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 2- A quoi servent les robots ? Industrie : Effectuer des tâches répétitives lorsque les processus de fabrication sont fréquemment soumis à des modifications. Régularité dans l’exécution des tâches Pas de phénomène de lassitude ou de fatigue Résistance aux environnement dangereux (gaz nocifs, températures extrêmes, radiations, …)
30
Transport de linge – hôpital d’Arras.
ISN Informatique et Sciences du Numérique Initiation à la robotique 2- A quoi servent les robots ? AV-T3 transporteur cargo autonome Fuji Heavy Industries (Subaru) Automated Guided Vehicules (Laser) Futuroscope Transport : Transporter de biens ou des personnes sur des trajets prédéfinis ou programmés. Flexibilité d’exploitation (24h/24, 7j/7, gestion optimisée de flotte) Réduction des coûts d’exploitation (pas de chauffeur, moins d’erreurs humaines) Investissements limités (Véhicules plus simples, Infrastructure légère) Pas de pollution atmosphérique Pas de bruit Simserhof (parcours 800m – 10h/jour) Automated Guided Vehicules (Laser, Wifi) Transport de linge – hôpital d’Arras.
31
2- A quoi servent les robots ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 2- A quoi servent les robots ? Médical : Reproduire les mouvements du chirurgien en temps réel avec une grande précision. Opération à distance Vision en 3D en HD : Finesse et précision de la zone d’intervention Transmission mécanisée des gestes en supprimant les tremblements
32
2- A quoi servent les robots ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 2- A quoi servent les robots ? Domestique : Ces robots peuvent faire de multiples tâches ou simplement nous divertir. Aspirateur, tondeuse à gazon, nettoyage de piscine, … Assistance à la personne
33
2- A quoi servent les robots ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 2- A quoi servent les robots ? Militaire : Autonomes ou commandés à distance, conçues pour des opération de reconnaissance, d’attaque ou de déminage. Pas de problème moral en cas de capture ou destruction Mise en réserve en tant de paix Pas de formation longue et couteuse (mise à jour) Réduction des couts de fabrication de l’armement.
34
2- A quoi servent les robots ?
ISN Informatique et Sciences du Numérique Curiosity a touché le sol martien le lundi 6 août 2012 Initiation à la robotique 2- A quoi servent les robots ? Explorateur : Exploration d’environnements difficiles pour l’homme. Exploration spatiale Sites contaminés (Tchernobyl, Fukyshima) Décombres suite à un séisme, une explosion, ... Nomad Exploration Moraine de l’Eléphant l’Antarctique Janvier 2000, recherche et identification de météorites
35
2- A quoi servent les robots ?
ISN Informatique et Sciences du Numérique Initiation à la robotique 2- A quoi servent les robots ? Humanoïde : Ressemblent à l’être humain, principale motivation des roboticiens. Assistance à la personne, travail collaboratif avec les humains Capable de marcher, monter/descendre les escaliers Reconnaitre les visages, parler, comprendre la parole, … Simdroïd (robot patient dentaire) Ucroa : Robot model CB2 Geminoïde Projet « M » Exploration Lunaire
36
3- Les kits robotiques http://www.generationrobots.com ISN
Informatique et Sciences du Numérique Initiation à la robotique 3- Les kits robotiques
37
3- Les kits robotiques ISN Informatique et Sciences du Numérique
Initiation à la robotique 3- Les kits robotiques Thymio II ( ) € - Programmation Aseba (environnement open source)
38
3- Les kits robotiques ISN Informatique et Sciences du Numérique
Initiation à la robotique 3- Les kits robotiques mOway ( 299 € (generationrobots.com) – programmation en C
39
3- Les kits robotiques ISN Informatique et Sciences du Numérique
Initiation à la robotique 3- Les kits robotiques K-Junior ( À partir de 685 € (generationrobots.com) – programmation en C
40
3- Les kits robotiques ISN Informatique et Sciences du Numérique
Initiation à la robotique 3- Les kits robotiques Lego Mindstorms NXT ( ) Kit programmation en C (RobotC) : 349 € Kit Education : 330 € - Programmation Lego Mindstorm (LabView)
41
3- Les kits robotiques ISN Informatique et Sciences du Numérique
Initiation à la robotique 3- Les kits robotiques Fishertechnik ( Environ 450 € (technologie services) – Programmation : Logiciel Robo Pro Fischertechnik
42
3- Les kits robotiques ISN Informatique et Sciences du Numérique
Initiation à la robotique 3- Les kits robotiques Vex Robotics ( A partir de 600 € – Programmation en C (Robot C)
43
3- Les kits robotiques ISN Informatique et Sciences du Numérique
Initiation à la robotique 3- Les kits robotiques Bioloid ( - 349 $ à 1200 $ (roboshop) – programmation Robot Plus (basé sur le C) € - Programmation Aseba (environnement open source)
44
3- Les kits robotiques ISN Informatique et Sciences du Numérique
Initiation à la robotique 3- Les kits robotiques NAO ( )
45
3- Les kits robotiques ISN Informatique et Sciences du Numérique
Initiation à la robotique 3- Les kits robotiques NAO ( )
46
3- Les kits robotiques ISN Informatique et Sciences du Numérique
Initiation à la robotique 3- Les kits robotiques Erma Board ( 349 $ à 1200 $ (roboshop) – programmation Prix non communiqué – programmation en C (arduino) – Multi-langage (Fox)
47
4- Les simulateurs ISN Informatique et Sciences du Numérique
Initiation à la robotique 4- Les simulateurs
48
4- Les simulateurs ISN Informatique et Sciences du Numérique
Initiation à la robotique 4- Les simulateurs Guido van Robot ( ) Initiation à la programmation Linux, Windows, Mac Syntaxe basée sur Python 18 leçons disponibles Gratuit Démo
49
3- Les simulateurs ISN Informatique et Sciences du Numérique
Initiation à la robotique 3- Les simulateurs Rossum's Playhouse (RP1) ( ) Simulateur 2 dimensions Contrôle logique de navigation Linux, Windows, Mac Langage Java – C/C++ The Rossum Project : The Trinity College Fire-Fighting Home Robot Contest. Gratuit Démo
50
4- Les simulateurs ISN Informatique et Sciences du Numérique
Initiation à la robotique 4- Les simulateurs Azolla ( Simulator ) Simulateur 2 dimensions Contrôle logique de navigation Validation d’algorithmes Windows Sources : Visual Studio C++ Programmation : Lua Gratuit Démo
51
4- Les simulateurs ISN Informatique et Sciences du Numérique
Initiation à la robotique 4- Les simulateurs Microsoft Robotics Developer Studio ( ) Kit de développement Simulateur 3 dimensions Programmation du robot Windows (nécessite VS Express) VPL, VB.NET, C#, C++, Python Gratuit Plateformes : Lego NXT, Parallax BOE-BOT, IRobot Roomba, …
52
4- Les simulateurs ISN Informatique et Sciences du Numérique
Initiation à la robotique 4- Les simulateurs Webot ( ) Simulateur 3 dimensions Contrôle logique de navigation Validation d’algorithmes Validation solutions matérielles Linux, Windows, Mac C/C++, java, Python, Matlab Payant (env 2000€/poste)
53
4- Les simulateurs ISN Informatique et Sciences du Numérique
Initiation à la robotique 4- Les simulateurs Marilou ( ) Simulateur 3 dimensions Contrôle logique de navigation Validation d’algorithmes Validation solutions matérielles Linux, Windows, Mac C/C++, java, Python, Matlab Payant (env 2000€/poste)
54
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique
55
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Définition de la problématique Un hôpital souhaite s’équipé d’un dispositif de transport automatique pour : les plateaux repas, le linge de lit, les traitements médicamenteux, ….
56
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Définition des limites du prototype Aucune modification des locaux ne peut être envisagée. Pas d’émission d’ondes radio Déplacement dans les couloirs uniquement
57
Traitement de l’information
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Recherche de solutions Langage Châssis Capteurs Traitement de l’information Comportement
58
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 1 : Avancer Tâche 2 : Tourner autours d’un point Tâche 3 : Avancer-reculer entre deux obstacles Tâche 4 : Avancer jusqu’à un obstacle, faire un demi-tour et repartir en marche avant Tâche 5 : Suivre un mur (le mur de droite par exemple)
59
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Concevoir un prototype pour répondre à la problématique A partir des bases robotiques : Lego Mindstorm Kjunior Simulation avec Azolla
60
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 1 : Avancer function azolla.main(azolla) while true do front = azolla:readsensor(0) if(front<10) then azolla:setspeed(0,0) else azolla:setspeed(20,20) end azolla:stepforward()
61
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 2 : Tourner autours d’un point Tourner sur lui-même. Centre de rotation au centre de l’axe des roues : Vitesse de même valeur mais de sens opposé à chaque roue. Rayon de braquage égal à la distance entre les roues. Le centre de rotation se situe sur la roue qui sert de pivot : Vitesse nulle à cette roue. Rayon de braquage égal à 2x la distance entre les roues : Le centre de rotation se situe à r=b. Vitesse roue 1 : Vitesse roue 2 :
62
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 2 : Tourner autours d’un point function azolla.main(azolla) while true do azolla:setspeed(-10,10) //Tourner sur lui-même end End azolla:setspeed(0,10) //rayon braquage = distance entre roues azolla:setspeed(5,10) //rayon braquage = 2x distance entre roues
63
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 3 : Avancer-reculer entre deux obstacles function azolla.main(azolla) while true do front = azolla:readsensor(0) back = azolla:readsensor(3) if(front<12) then sens= Définir le sens end if(back<12) then sens=1 -- Vitesse constante if(front>20 and back>20) then vitesse=20; -- Accéléré ou ralentir if(front<20) then vitesse=2*front-20; if(back<20) then vitesse=2*back-20; azolla:setspeed(sens*vitesse+1,sens*vitesse+1) azolla:stepforward() End
64
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 4 : Avancer jusqu’à un obstacle, faire un demi-tour et repartir en marche avant function azolla.main(azolla) azolla:setspeed(10,10) while true do front = azolla:readsensor(0) back = azolla:readsensor(3) if(front<2) then azolla:setspeed(0,-9) end if(back<3) then azolla:stepforward()
65
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 5 : Suivre un mur (le mur de droite par exemple) function azolla.main(azolla) while true do front = azolla:readsensor(0) right = azolla:readsensor(1) if(front<10) then azolla:setspeed(-10,10) else if(right>5.25) then azolla:setspeed(4,5) Correction else if(right<4.75) then azolla:setspeed(5,4) --Correction else azolla:setspeed(5,5) end azolla:stepforward()
66
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 5 : Amélioration – Correction proportionnelle Moteur droit : Vmoy + Vc Moteur gauche : Vmoy – Vc
67
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 5 : Amélioration – Correction proportionnelle function azolla.main(azolla) while true do front = azolla:readsensor(0) back = azolla:readsensor(3) right = azolla:readsensor(1) moyenne = 5 Kp=4 delta = right - moyenne Vmoy=10 Vc=Kp*delta if(front<moyenne) then azolla:setspeed(-5,5) else azolla:setspeed(Vc+Vmoy,Vmoy-Vc) end azolla:stepforward()
68
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 5 : Amélioration – Correction proportionnelle intégrale Si l’erreur persiste, il faut longtemps au correcteur proportionnel pour agir. Si on augmente la valeur de Kp : le robot se met à osciller. On calcule le cumul des erreurs pendant un certain temps et on le multiplie par un coefficient pour ajuster la correction de vitesse :
69
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 5 : Amélioration – Correction proportionnelle intégrale function azolla.main(azolla) Vmoy=10 moyenne = 5 somme=0 Kp=4 Ki=0.01 while true do front = azolla:readsensor(0) back = azolla:readsensor(3) right = azolla:readsensor(1) delta = right - moyenne somme=somme+delta Vc=Kp*delta+Ki*somme if(front<moyenne) then azolla:setspeed(-5,5) else azolla:setspeed(Vmoy+Vc,Vmoy-Vc) end azolla:stepforward()
70
ErreurFuture = ErreurActuelle + derive.t
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 5 : Amélioration – Correction proportionnelle intégrale dérivé Prévoir les erreurs pour essayer de les corriger avant qu’elles se soient produites : On suppose que la prochaine variation de l'erreur est identique à sa dernière variation : ErreurFuture = ErreurActuelle + derive.t Soit : derive = (ErreurActuelle – ErreurPrécédente)/t
71
ErreurFuture = ErreurActuelle + derive.t
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 5 : Amélioration – Correction proportionnelle intégrale dérivé Prévoir les erreurs pour essayer de les corriger avant qu’elles se soient produites : On suppose que la prochaine variation de l'erreur est identique à sa dernière variation : ErreurFuture = ErreurActuelle + derive.t Soit : derive = (ErreurActuelle – ErreurPrécédente)/t
72
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique function azolla.main(azolla) Vmoy=10 moyenne = 5 somme=0 derive=0 ErreurPrecedente=0 Kp=9 Ki=0.01 Kd=20 while true do front = azolla:readsensor(0) right = azolla:readsensor(1) delta = right - moyenne somme=somme+delta derive=delta-ErreurPrecedente Vc=Kp*delta+Ki*somme+Kd*derive if(front<moyenne) then azolla:setspeed(-5,5) else azolla:setspeed(Vmoy+Vc,Vmoy-Vc) end ErreurPrecedente=delta azolla:stepforward() Apport de connaissances élémentaires Tâche 5 : Amélioration – Correction proportionnelle intégrale dérivé
73
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 5 : Amélioration – Logique floue
74
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 5 : Amélioration – Logique floue
75
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 5 : Amélioration – Logique floue
76
5- Application didactique
ISN Informatique et Sciences du Numérique Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 5 : Amélioration – Logique floue Application de la règle n°1 Fonctions d’appartenance en entrée de la variable linguistique « position du robot » Fonctions d’appartenance en sortie Variable linguistique « Puissance du MD » 1 1 Trop loin 0,8 Correct Application de la règle n°2 0,2 400 430 1 2 3 4 5 6 7 8 9 MD = 0x0,8 + 9x0,2 = 1,8
77
5- Application didactique
ISN Informatique et Sciences du Numérique IR=KJunior_get_proximity(RIGHT); if(KJunior_get_proximity(FRONT) > 400) KJunior_set_speed(0,0); else if(IR<401) { MD=0; MG=9; } else if(IR>400 && IR<431) MD=(int)(0.3*IR-120); else if(IR>430 && IR<471) MD=9; else if(IR>470 && IR<501) MG=(int)(-0.3*IR+150); else if(IR>500) MG=0; KJunior_set_speed(MG,MD); Initiation à la robotique 5- Application didactique Apport de connaissances élémentaires Tâche 5 : Amélioration – Logique floue
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.