[Problème] Position d'une voiture dans un repère après une rotation

Discussion générale entre passionnés et amateurs de mathématiques sur des sujets mathématiques variés
Hyzau
Messages: 4
Enregistré le: 07 Juin 2013, 22:29

[Problème] Position d'une voiture dans un repère après une rotation

par Hyzau » 07 Juin 2013, 22:51

Bonjour,

Je suis sur un petit projet de robotique, et j'ai un problème mathématique que j'ai du mal à résoudre =).

Voilà l'histoire, je prévois de faire un petit projet de voiture programmé. Cependant pour fonctionné correctement mon programme a besoin de connaitre la position dans l'espace de la voiture. Ceci étant un prototype je ne m'occupe pas de l'élévation, mon espace est donc constitué uniquement d'un plan.

Soit O le centre de la voiture. Soit A la roue avant gauche, B la roue avant droite, C la roue arrière gauche et D la roue arrière droite. Soit M1 le milieu entre A et B et M2 le mileu de C et D.

Maintenant, mon plan est un plan orthonormé, et O, le centre de la voiture et placé aux coordonnées (0, 0) de mon plan. A est aux coordonées (X = -1, Y = 1), B (1, 1), C(-1, -1) et D(1, 1) (ma voiture est un super carré ;D, c'est juste pour simplifié dans un premier temps les calcul)

Je sais que, si je fais avancé ma voiture à une vitesse défini V = 1 pendant un laps de temps T = 1, ma voiture va avancé d'une unité de mesure dans mon plan. Pour etre plus clair, si ma voiture est aligné sur l'axe des Y et avance à une Vitesse V= 1 pendant un temps T=1, son centre O va etre déplacé de aux coordonnées Y=1, X=0. La voiture à avancé tout droit.

Jusque la ca peut encore allé, maintenant, il faut prendre en considération que les roues motrices sont les roues arriere, et que seul les roues avant peuvent tourner.

Je tourne les roues avant de 45° (la rotation est effectué à l'arret), puis j'avance à une vitesse V = 1 pendant un temps T= 1. Quels sont les nouvelles coordonnée du centre O de la voiture?

Et oui, je sais pas pourquoi, sa m'a l'air plustot simple, mais je n'arrive pas vraiment a trouvé de formule pour résoudre le problème. Je sais que la voiture doit tourné autour d'un cercle mais je ne sais pas comment trouvé le centre de celui ci. J'ai bien une idée sur la question mais comme je n'en suis pas certain, je préfère demandé de l'aide :).

Merci encore à tout ceux qui prendront le temps d'y réfléchir ^^.



XENSECP
Habitué(e)
Messages: 6387
Enregistré le: 27 Fév 2008, 20:13

par XENSECP » 07 Juin 2013, 23:50

Si la rotation se fait à l'arrêt j'imagine que tu t'attends d'avancer de façon rectiligne par la suite avec un angle. Donc 45° ça te fait bouger de en hauteur et en largeur :)

Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 13:39

par Dlzlogic » 08 Juin 2013, 13:02

Bonjour,
Je suppose que les roues arrière ont un différentiel.
Je pense que chacune des roues avant suit la tangente à l'arc de cercle qu'elle parcourt.
Je pense qu'il en est de même pour les roues arrière.
Donc, il faut chercher le centre de cercle, seul point fixe dans l'opération.
A mon avis, il est aligné avec l'axe des roues arrière, et appartient à l'axe de chacune des roues avant. C'est là que ça se complique : ces trois droites ne se coupent pas en un seul point [HS] c'est là que certains matheux vous répondront : donc la voiture ne peut pas tourner [/HS].
Si j'avais à résoudre ce problème, j'essayerai avec une voiture modèle réduit. J'ai un magnifique tracteur (qui m'a été offert par un membre de ce forum), en face de moi. Une grande feuille de papier, on marque soigneusement la position de départ, et et on le fait rouler tout doucement en notant bien les positions successives,

Avatar de l’utilisateur
leon1789
Membre Transcendant
Messages: 5475
Enregistré le: 27 Nov 2007, 16:25

par leon1789 » 08 Juin 2013, 14:09

Dlzlogic a écrit:C'est là que ça se complique : ces trois droites ne se coupent pas en un seul point [HS] c'est là que certains matheux vous répondront : donc la voiture ne peut pas tourner [/HS].

Tu parles de quels matheux ? Aie le courage d'aller au fond de ta diffamation...

Contrairement à ce que dit Dlzlogic, normalement (*) les trois droites se coupent bien en un seul point (sinon, gare à l'usure rapide des pneus !) : c'est le centre instantané de rotation. Pour un dessin explicatif, voir par exemple la seconde page de http://www.iutalencon.unicaen.fr/enseignants/sfournier/Intranet/M%C3%A9ca%20LP/fichiers%20Pdf%20M%C3%A9ca/corrections%20exercices%20cin%C3%A9-dyn%202009-2010.pdf
ou http://sciences.gloubik.info/spip.php?article828 Le centre de rotation est le point O.


(*) Effectivement, les roues directrices ne sont pas tournées de la même manière : chacun possédant une voiture peut faire le test à l'arrêt en tournant le volant à fond dans un sens.

Hyzau
Messages: 4
Enregistré le: 07 Juin 2013, 22:29

par Hyzau » 08 Juin 2013, 18:08

Merci pour vos réponse :)

La réponse de XENSECP est vrai dans le cas ou la totalité de la voiture est tourné a 45° et avance, mais (et désolé si je me suis mal exprimé) seul les roues avant sont tourné. Les points ABCD restent à leur position initial lors de la rotation.

Pour ce qui est du centre de rotation instantané, c'est exactement ce que je cherchais.
Si je comprend bien, je suis dans un triangle rectangle.
Soit le point C' le centre du cercle (le CIR, mais C' est plus court), on sait que C, D (les roues arrières) sont aligné avec C'.
On sait que A et C sont aligné et que [AC] mesure 2 (d'après les coordonnéeq des points) mais aussi que l'angle DCA mesure 90°.

Maintenant, sur le pdf de leon1789, ils disent :

Le CIR du mvt du véhicule/sol est à l’intersection des perpendiculaires aux vitesses V Mi(véhicule/sol)


Après quelque recherche sur le CIR je suis tombé la dessus. Si vous regardé le grand 5, il apparait clairement que la vitesse au niveau de la roue avant est supérieur à celle des roues arriere.

D'après ce que je comprend (corrigé moi si j'ai faut), puisque
Le CIR se situe sur une droite passant par le point d'application des vecteurs vitesse et perpendiculaire à ces derniers

alors, nous pouvons déduire que que CAC' mesure 45°. Ensuite, puisque nous somme dans un triangle rectangle:

cos (CAC') = CA/AC'
cos(45) = 2/AC'
AC' * cos(45) = 2
AC' = 2/cos(45)
AC' = 3.81 (arrondis)

Et donc maintenant, que nous avons la taille de l'hypothénuse, nous pouvons calculé [CC']
sin(45) = CC'/3.8
CC' = 3.81*sin(45)
CC' = 3.24

Les coordonnées de C étant X:-1 et Y:-1, les coordonnées de C' sont donc X: 2.24, Y:-1 puisque C et C' sont aligné.

Ok, j'espère que je n'ai pas fait d'erreur jusque la.

Maintenant, je revenons à cette histoire de vitesse, je connais la vitesse de la voiture en ligne droite (disont 1cm/s). Si j'ai bien tout compris, la voiture à avancé de 1cm sur le cercle de centre C'. On cherche donc a calculé de combien elle c'est déplacé sur les X et combien sur les Y.

Et d'après Thalès, on peut déduire que 3.24/3.81 = Dy/1
Donc Dy = 0.85 et logiquement Dx = (distance totale parcourue) - (distance sur les Y) = 1 - 0.85 = 0.15.

Donc les nouvelles coordonnées du point O centre de la voiture serait X:0.15 et Y:0.85.

Est ce que ma démarche est juste ? J'avoue ne pas etre sur de moi...

Benjamin
Membre Complexe
Messages: 2337
Enregistré le: 14 Avr 2008, 11:00

par Benjamin » 09 Juin 2013, 11:09

Bonjour,

Je tiens à préciser une chose, il ne faudra pas perdre de vue l'application finale de ton calcul et la précision demandée. En effet, les choses réelles ne sont pas aussi simple que le pdf de Léon (et c'est normal, il faut commencer facile d'un point de vue pédagogique). Malheureusement, ça peut se compliquer très très vite et c'est là que les mesures empiriques comme le propose Dlzlogic peuvent être très intéressantes.

Pourquoi c'est compliquer ? Car les comportements des pneumatiques sont très très difficiles à modéliser. Remplace tes roues arrières par des pneu super glissant, et tu verras que tu ne tournes pas de la même façon ;) De même, selon les caractéristiques de ton pneu, ta vitesse etc... il y a un angle non nul entre la vecteur vitesse et la direction de la roue (chercher "slip angle" an anglais pour plus de détails)

Encore autre chose, le fait que tu aies un propulsion et non une traction va faire que tu vas sur-virer (c'est la raison pour laquelle les tractions avant ont une bien meilleure tenue de route), car l'effort est transmis par le châssis de la voiture jusqu'au pneu avant, qui sera fortement mis en contraire sur la route dans l'axe du véhicule. Le pneu va donc avoir tendance à "bloquer" l'avancer de la voiture dans ton axe longitudinal, alors que tu continues de pousser à l'arrière : bloc avec ta main l'avant droit de ta voiture et pousse la voiture par derrière, et tu verras que ta voiture fait un beau tete à queue. A l'inverse, les tractions vont un peu sous-virer, car l'inertie de la voiture fait qu'elle veut continuer tout droit.

Dans des conditions très classique et normal d'utilisation, ces phénomènes sont assez marginales et on peut modéliser simplement ce qu'il se passe, mais selon l'application finale, ça peut être insuffisant et des mesures avec un prototype seront le plus rapide et le plus efficace selon moi.

Sylviel
Modérateur
Messages: 6466
Enregistré le: 20 Jan 2010, 13:00

par Sylviel » 09 Juin 2013, 11:33

C'est là que ça se complique : ces trois droites ne se coupent pas en un seul point [HS] c'est là que certains matheux vous répondront : donc la voiture ne peut pas tourner [/HS].


Une petite explication de ce qu'est un modèle mathématique semble intéressante sur ce point.

Lorsque l'on veut décrire un phénomène réel on commence par l'observer, puis proposer un modèle mathématique dans lequel on fera des prévisions qui seront confrontées à l'expérience pour déterminer leur domaine de validité (vitesse, masse, distance, précision...).

Dans l'exemple présenté ici le modèle peut être dans un premier temps : le centre de rotation se trouve sur les 3 droites en question. Alors deux choix :
- soit on fixe certains paramètres (ceux que l'on mesure) et déterminent les autres à partir d'une équation forçant les trois droites à être concourrantes.
- soit on mesure indépendemment les droites et on conclus que la voiture modélisée ne peut tourner.

Dans le second cas (où on décide de tout mesurer) puisque la voiture réelle tourne on conclut que le modèle mathématique n'est pas valide. On peut alors supposer que les mesures ne sont pas exactes et on propose une approche pour prendre en compte cet état de fait. Cela conduira à un nouveau modèle mathématique (qui cherchera à minimiser le carré des erreurs par exemple) qui donneras de nouveaux résultats et nouvelles prédictions que l'on peut confronter à la réalité.

Bref je ne sais pas quel matheux peut dire "la voiture ne tourne pas" alors qu'il la voit tourner. La seule chose que l'on peut dire c'est, dans cette modélisation la voiture ne tourne pas, et en tirer la conclusion que la modélisation n'est pas adaptée à ce que l'on veut faire.
Merci de répondre aux questions posées, ce sont des indications pour vous aider à résoudre vos exercices.

Avatar de l’utilisateur
leon1789
Membre Transcendant
Messages: 5475
Enregistré le: 27 Nov 2007, 16:25

par leon1789 » 09 Juin 2013, 11:35

Benjamin a écrit:Malheureusement, ça peut se compliquer très très vite et c'est là que les mesures empiriques comme le propose Dlzlogic peuvent être très intéressantes. (...) ça peut être insuffisant et des mesures avec un prototype seront le plus rapide et le plus efficace selon moi.

Avec tous les phénomènes que tu as présentés (pneus, vitesse, propulsion, ...), quand tu parles de prototype pour simulation, tu penses à une voiture en modèle réduit sur un bout de papier comme le propose Dlzlogic ??

Benjamin
Membre Complexe
Messages: 2337
Enregistré le: 14 Avr 2008, 11:00

par Benjamin » 09 Juin 2013, 12:23

Vu la taille présentée du robot, ça peut être bien oui.
On peut aussi mettre une pointe électrique sous la voiture qui va "bruler" une feuille à intervalle de temps régulier pour suivre la trajectoire (comme en TP au lycée).

Mais je répète que ceci ne sera utile que si on est au limite d'utilisation de la simplification, ce qui n'est pas forcément automatique. On développe, et on vérifie par des tests. Si les commandes données au robot donne le bon résultat en mesure, pas la peine de chercher plus loin.

Hyzau
Messages: 4
Enregistré le: 07 Juin 2013, 22:29

par Hyzau » 09 Juin 2013, 16:11

C'est vrai que tout les points énoncé par Benjamin sont actuellement ignoré et que dans une situation réel il faudrait les prendrent en compte.
Maintenant mon pauvre petit robot ne dispose pas de l'équiment nécessaire pour évalué s'il roule sur une patinoire, du sable ou une route bétonné et pourtant il doit estimer sa position ...
Mon objectif premier est surtout de ne pas rentré dans un mur lors d'une rotation de la voiture (en partant du principe que j'ai la position des différents obstacles présent sur la "carte" mais c'est un autre problème).
C'est dans ce contexte que j'aurai aimé avoir une formule pour estimer ma trajectoire de rotation et j'espère que le CIR sera suffisant.
Plus j'y pense plus je me dis que je vais devoir (en effet) faire des mesures car je ne peux juste pas ignoré les frottements...

Mais sinon, est ce que les calculs que j'ai posté plus haut sont juste ? Ou est ce que j'ai fais une erreur en lisant/appliquant les formules des pdfs ?
Et, si autant de paramètre sont ignoré, finalement est ce que l'utilisation du CIR est utile ou est ce que je dois utilisé une autre méthode ?

Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 13:39

par Dlzlogic » 09 Juin 2013, 20:27

Bonsoir,
Si j'ai bien compris, vous comptez estimer la position du véhicule exclusivement à partir de données suivantes :
- position de départ
- direction de départ
- calcul cumulé avec comme paramètre, le temps, l'angle de rotation des roues avant, vitesse de propulsion.
Si c'est ça, j'ai vraiment l'impression que vous allez certainement "rentrer dans un mur".

Avatar de l’utilisateur
leon1789
Membre Transcendant
Messages: 5475
Enregistré le: 27 Nov 2007, 16:25

par leon1789 » 09 Juin 2013, 21:29

Je ne sais pas si le CIR fait rentrer certainement dans le mur, mais visiblement, certains constructeurs de robots utilisent ce modèle mathématique (sous condition qu'il n'ait pas de glissement en particulier)
http://eavr.u-strasbg.fr/~bernard/education/ensps_3a/poly_3a.pdf
Donc on peut se dire que cette première approche (qui demande une bonne dose de calculs) vaut peut-être le coup d'être étudiée.

S'il y a des glissements, alors là, effectivement, difficile de dire où la glissade s'arrête. C'est dommage que tout le monde n'ait pas un petit tracteur qui permet de trouver miraculeusement des formules mathématiques quand on le fait rouler sur du papier. Personnellement, je ne crois pas aux miracles.

Avatar de l’utilisateur
leon1789
Membre Transcendant
Messages: 5475
Enregistré le: 27 Nov 2007, 16:25

par leon1789 » 09 Juin 2013, 21:35

Je ne sais pas si le CIR fait rentrer certainement dans le mur, mais visiblement, certains constructeurs de robots utilisent ce modèle mathématique (sous condition qu'il n'ait pas de glissement en particulier)
http://eavr.u-strasbg.fr/~bernard/education/ensps_3a/poly_3a.pdf
Donc on peut se dire que cette première approche (qui demande une bonne dose de calculs) vaut peut-être le coup d'être étudiée.... pour être améliorer par la suite, si nécessaire.

S'il y a des forts glissements, alors là, effectivement, difficile de dire où la glissade s'arrête. C'est dommage que tout le monde n'ait pas un petit tracteur qui permet de trouver miraculeusement des formules mathématiques quand on le fait rouler sur du papier. Personnellement, je ne crois pas aux miracles.

Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 13:39

par Dlzlogic » 09 Juin 2013, 23:03

Je voulais seulement mettre en garde notre ami contre l'effet cumulatif des erreurs accidentelles. Nous savons très bien qu'elle se combinent quadratiquement, mais étant donné le fonctionnement qu'on appelle "en antenne" ce serait plutôt en l'occurrence un impact proportionnel.
Pour s'en convaincre, il suffit de faire un petit dessin avec une erreur angulaire au début du trajet, elle se répercute proportionnellement à la longueur du dit trajet.
Pour mémoire, dans ce type de calcul, une orientation du type magnétique, bien que moins précise, donne de meilleurs résultats.
Je doute fort que les constructeurs de robots se passent de gyroscope ou d'autre système donnant un résultat comparable.

Avatar de l’utilisateur
leon1789
Membre Transcendant
Messages: 5475
Enregistré le: 27 Nov 2007, 16:25

par leon1789 » 10 Juin 2013, 00:39

Oui, il y a peu de chance que le mobile puisse se déplacer correctement à l'aveugle.

Avatar de l’utilisateur
leon1789
Membre Transcendant
Messages: 5475
Enregistré le: 27 Nov 2007, 16:25

par leon1789 » 10 Juin 2013, 00:45

Oui, il serait étonnant que le mobile se déplace longtemps avec précision en étant totalement aveugle (i.e. sans capteur ou autre système).

Hyzau
Messages: 4
Enregistré le: 07 Juin 2013, 22:29

par Hyzau » 11 Juin 2013, 21:47

Bonjour,

Désolé pour cette réponse un peu tardive j'ai été un peu occupé dernierement.
Le robot dispose de capteur, mais leur imprécision est plutot handicapante et je m'en sert surtout pour cartographié l'environnement.
Les capteurs peuvent detecté un obstacle dans un cone de 55° sur 2m. Le problème de ces capteurs est qu'il ne me fournisse comme seul information que la distance de l'obstacle le plus proche.
J'obtiens donc un arc de cercle ou il est possible que l'obstacle se trouve.
J'essayais justement de pallier mathématiquement (en essayant de toujours connaitre au mieu ma position dans l'espace) aux imprécisions de mes capteurs. Je suis en train d'essayer de "bidouiller" quelque chose mais il est vrai que plus le robot avancera, plus l'erreur de positionnement sera grande.
C'est un problème assez complexe et je suis malheuresement assez limité en matériel >< de plus, mes faibles connaissance en electronique n'arrange rien.
Il n'empeche qu'il est toujours marrant de transformé une voiture télécommandé en robot (surtout quand il bouge pour la premiere fois !) =).

 

Retourner vers ⚜ Salon Mathématique

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 11 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite