Modélisation du robot Azimut-3

Slides:



Advertisements
Présentations similaires
La Méthode de Simplexe Standardisation
Advertisements

Résistance des Matériaux
Equations différentielles
III. Fonctions numériques et modélisation (intégration,équations différentielles,…) II. Nombres entiers, rationnels, réels et complexes ; suites de réels.
3. Analyse et estimation du mouvement dans la vidéo
Intégrales 1 - Intégrale simple 2 - Deux directions de généralisation
Cinématique dans l'espace-temps d'un observateur
Master IXXI, cours interdisciplinaire de systèmes dynamiques Emmanuel Risler, INSA de Lyon 1 - Equations différentielles sur la droite.
Sytèmes dynamiques – modélisation Emmanuel Risler 2008 – 2009 INSA de Lyon - GEN.
Equations différentielles ordinaires
2. Repérage et coordonnées
Physique mécanique (NYA)
Géométrie vectorielle
4.5 Les référentiels inertiels et non inertiels
Chapitre 2: Les régularités et les relations
Résolution des Équations Différentielles
Chute verticale avec frottement
Points essentiels Position et vitesse angulaire;
Lignes trigonométriques.
Systèmes Différentiels
Chapitre 3: Caractérisation des systèmes
Planification de trajectoires
Planification de trajectoires par échantillonnage
Signifie accélération constante
Modèle mathématique d’un vélo
OBJETS ÉLÉMENTAIRES DANS L’ESPACE À TROIS DIMENSIONS
Révision Grandeurs physiques, unités et notations
PIF-6003 Sujets spéciaux en informatique I
Points essentiels Cinématique; Position; Déplacement; Vitesse moyenne;
Les fentes multiples Méthode semi graphique d’addition d’ondes. La méthode trigonométrique n’est pas commode dans le cas de 3 sources ou plus, ou si les.
4.4 Le mouvement circulaire uniforme
4.3 Le mouvement d’un projectile
EXERCICE II : Le rugby, sport de contact et d’Évitement (8 points)
Analyse des systèmes linéaires types
Système de coordonnées
5. Les mouvements usuels - Mouvement rectiligne
Électricité et magnétisme (203-NYB) Chapitre 2: Le champ électrique
CINEMATIQUE Étude du mouvement (position) d’un corps
Modélisation géométrique de base
Physique mécanique (NYA)
Présentation de la méthode des Eléments Finis
Physique 3 Vibrations linéaires et ondes mécaniques
Physique 3 Vibrations et ondes mécaniques
Le mouvement en deux dimensions
Physique 3 Vibrations linéaires et ondes mécaniques
Forces centrales et mouvement des planètes:
ASI 3 Méthodes numériques pour l’ingénieur
Programmation créative – Les vecteurs
La vitesse.
Conception d’un asservissement
CHAPITRE III Calcul vectoriel
Deuxième séance de regroupement PHR004
Approximation d’un contrôle optimal par un circuit électronique
2.C : détermination de la vitesse de sortie du vérin
FONCTION DERIVEE.
Application des Lois de Newton aux mouvements
Commande optimale linéaire quadratique de Lunar Lander
Éléments cinétiques des système matériels
Résolution des équations différentielles
Stage de maîtrise Planification de mouvements sans collision pour des robots non-holonomes Élodie-Jane Sims. LAAS-CNRS, Toulouse J’ai fait mon stage à.
GRAPHISME PAR ORDINATEUR
Programmation créative – Les vecteurs
Géométrie et communication graphique
Pierre Joli Cours de Mathématique Pierre Joli
Pierre Joli Cours de Mathématique Pierre Joli
Couche limite atmosphérique Micrométéorologie. Équations de Reynolds 7 équations et 16 inconnues...
LA CINEMATIQUE La cinématique est l’étude du mouvement
Suivi de waypoints par un robot buggy autonome Fabrice LE BARS.
Simulation de robots en MATLAB Fabrice LE BARS. Simulation de robots en MATLAB 01/06/  Modélisation de systèmes avec des équations d'état Le fonctionnement.
Transcription de la présentation:

Modélisation du robot Azimut-3 IFT593 – Intelligent Design Daniel Castonguay Simon Chamberland

Projet conjoint IFT702 Implémenter et comparer différentes méthodes d’échantillonnage

Plan Problématique Apport de l’équipe Problèmes rencontrés Démonstration Conclusion Questions

Plan Problématique Apport de l’équipe Problèmes rencontrés Démonstration Conclusion Questions

Problématique Azimut-3 Laboratoire Laborius (faculté de Génie) Modélisation du robot Contraintes différentielles Planification de trajectoires dans un environnement statique

Problématique Modélisation du robot 4 roues enlignées selon un CIR (centre instantané de rotation) CIR exprimé en coordonnées polaires, distance r et angle θ

Problématique Modélisation du robot Un CIR « à l’infini » : mouvement en ligne droite Discontinuité dans le déplacement du CIR Car l’amplitude des roues est bornée But: minimiser le nombre de changements de zones

Problématique Planification de trajectoires Présentement, aucun planificateur de trajectoires La faculté de génie fait donc appel à la faculté des sciences!

Plan Problématique Apport de l’équipe Problèmes rencontrés Démonstration Conclusion Questions

Apport de l’équipe Utilisation de la librairie OOPSMP Auteur Erion Plaku, http://www.kavrakilab.org/OOPSMP/index.html Implémentation facile de nouveaux composants (espaces d’état, planificateurs…) Spécialisation des classes pour Azimut

Apport de l’équipe Représentation du robot Divers paramètres Largeur / longueur Rayon des roues Amplitude des roues Distance des roues par rapport au robot Vitesse maximale de rotation des roues

Apport de l’équipe Représentation du robot Hypothèses Pas de collision entre les roues peu importe leur dimension et leur position Accélération infinie (changements instantanés de vitesse) Orientation du robot est superflue On suppose la présence de senseurs à 360°

Apport de l’équipe Première version La position des roues n’est pas prise en compte CIR est exprimé en (x,y) є [-1, 1]² Plutôt qu’en coordonnées polaires CIR est donc délimité par un carré plutôt qu’un cercle

Apport de l’équipe Première version Environnement continu Espace d’états, composé d’une infinité d’états x x = {x, y, θ} Position et orientation du robot Vecteur de contrôle u = {s, CIR} appliqué pour un certain Δt Vitesse et centre de rotation du déplacement x1 = {6, 6, 163°} u = {5, CIR} x0 = {10, 2, 90°}

Apport de l’équipe Première version Question de la semaine: Étant donné un état initial x0 et un vecteur de contrôle u, comment calculer le nouvel état x au temps t ? u = {2.5, CIR} x1 = ? x0 = {10, 2, 90°}

Apport de l’équipe Première version Dérivées des variables selon le temps x'(t) = -s * sin(λ) y'(t) = s * cos(λ) θ'(t) = s/r où λ = quelque chose de compliqué (arctan(-CIRy/-CIRx) + θ + t * s/r)

Apport de l’équipe Première version Intégration symbolique des équations: x(t) = a + r * cos(λ) y(t) = b + r * sin(λ) θ(t) = θ0 + s*t / r où a et b sont les coordonnées de projection du CIR dans le plan Nous pouvons maintenant calculer le nouvel état x en fonction du temps!

Apport de l’équipe Première version

Apport de l’équipe Deuxième version La position des roues est prise en compte Les roues doivent être alignées par rapport au CIR voulu

Apport de l’équipe Deuxième version Possibilité de repositionner les roues en mouvement Baptisés « chemins avec déviation »

Apport de l’équipe Deuxième version Espace d’états, composé d’une infinité d’états x x = {x, y, θ, φ1 , φ2 , φ3 , φ4} Position, orientation du robot et orientation des roues Vecteur de contrôle u = {s, CIR, sCIR} appliqué pour un certain Δt Vitesse, centre de rotation et vitesse de changement du centre de rotation

Apport de l’équipe Deuxième version u = {s, CIR, sCIR} sCIR représente la vitesse de déplacement du CIR, qu’on suppose constante Et donc aussi le changement d’orientation des roues! Comment déterminer le changement d’orientation des roues pour passer d’un CIR initial à un CIR final? (Comment déterminer sCIR)

Apport de l’équipe Deuxième version Comment déterminer le changement d’orientation des roues? Vitesse de rotation des roues est bornée: sφmax Déterminer le point où une des roues tourne le plus rapidement Notre solution n’est pas présentée ici Assigner à la roue en question la vitesse de rotation maximale sφmax pour ce point Déterminer sCIR le déplacement du CIR à partir de l’équation trouvée

Apport de l’équipe Deuxième version Nous avons donc des déplacements où les roues tournent lorsque le robot est en mouvement!

Apport de l’équipe Deuxième version Même question que tout à l’heure: Étant donné un état initial x0 et un vecteur de contrôle u, comment calculer le nouvel état x au temps t ? u = {2.5, CIR, sCIR} x1 = ? x0 = {10, 2, 90°, 0°, 0°, 0°, 0°}

Apport de l’équipe Deuxième version Dérivées des variables selon le temps Le CIR bouge de façon linéaire x'(0) = -s * sin(λ) y'(0) = s * cos(λ) θ'(0) = s/r φi'(0) dépend de SCIR où λ = arctan(-CIRy/-CIRx) + θ + t * s/r

Apport de l’équipe Deuxième version Nous n’avons pas réussi à intégrer ces équations symboliquement Est-ce possible? Nous ne pouvons donc pas calculer le nouvel état x de façon exacte Il faut utiliser des méthodes numériques d’intégration Approximer la fonction selon n dérivées en un point

Apport de l’équipe Utilisation des chemins avec déviation

Apport de l’équipe Utilisation des chemins avec déviation Reste à faire…

Plan Problématique Apport de l’équipe Problèmes rencontrés Démonstration Conclusion Questions

Problèmes rencontrés Complexité mathématique Algorithmes souvent non déterministes Difficulté à reproduire les bogues Approximation des valeurs réelles en C++ Trouver le CIR à partir de la position des roues… Système d’équations linéaires arctan(1.0000000001) retourne indéfini…

Plan Problématique Apport de l’équipe Problèmes rencontrés Démonstration Conclusion Questions

Plan Problématique Apport de l’équipe Problèmes rencontrés Démonstration Conclusion Questions

Conclusion Projet aux vastes ramifications Résultats satisfaisants Intelligence artificielle Algèbre linéaire Statistiques Résultats satisfaisants Compte tenu du temps nécessaire d’apprentissage

Conclusion Améliorations possibles Modéliser l’accélération Smoothing avec déviation

Questions?