Le Projet "Mobile"

Comment savoir où se trouve le mobile ?



  1. Présentation du problème

    Le mobile se déplace dans un carré de côté C. Pour repérer la position du mobile, deux balises sont disposées en O1 et O2. Le problème est de trouver les coordonnées x et y du robot, connaissant les angles.


  2. Résolution mathématique du problème

    Les balises mesurent les angles a et b qui sont comptés positifs dans le sens trigonométrique. Lorsqu'une balise vise la diagonale, l'angle vaut zéro.



    La résolution va se faire en deux temps :
    Tout d'abord on va calculer les coordonnées du point M dans le repère (O1,X',Y'), ceci afin de ne pas avoir d'angle qui pourrait approcher les 90° ce qui poserait des problèmes au niveau du calcul des tangentes. Dans ce repère, les angles a et b varient de -45° à +45°.
    Ensuite, on va effectuer un changement de repère pour trouver les coordonnées du point M dans le repère (O1,X,Y).

    Soit D la diagonale du carré : D = C . Ö2
    On a tout d'abord les relations suivantes, en utilisant les triangles (01 M' M) et (O2 M' M).
    tg(a) = y' / x'
    tg(b) = y' / (D - x')
    C'est un système de deux équations à deux inconnues x' et y' que l'on peut résoudre par subtitution :
    x' . tg(a) = (D - x') . tg(b)
    x' . ( tg(a) + tg(b) ) = D . tg(b)

    d'où x' = D . tg(b) / ( tg(a) + tg(b) )
    On en déduit la valeur de y' en reprenant la première équation du système :

    y' = x' . ( tg(a) = D . tg(a) . tg(b) / ( tg(a) + tg(b) )
    Finalement, on a :
       x' = D . tg(b) / ( tg(a) + tg(b) )  
       y' = D . tg(a) . tg(b) / ( tg(a) + tg(b) )  

    Il reste maintenant à faire le changement de coordonnées :
    Plaçons nous dans le cas général où l'on souhaite passer du repère (O1,X',Y') au repère (O1,X,Y), en premant en compte l'angle q entre les deux repères. Les coordonnées du point M sont connues dans le repère (O1,X',Y') et on cherche à les déterminer dans le repère (O1,X,Y). Utilisons les vecteurs directeurs unitaires i, i', j, j' des axes X, X', Y et Y' :


    Les vecteurs i' et j' peuvent être définis en fonction de i et j :
    i' = cosq . i + sinq . j
    j' = -sinq . i + cosq . j
    Le point M peut être défini de la manière suivante :
    OM = x'.i' + y'.j'
    En remplaçant i' et j' par leur expression en fonction de i et j, on obtient :
    OM = x'.(cosq . i + sinq . j) + y'.(-sinq . i + cosq . j)
    OM = (x'.cosq - y'.sinq) . i + (x'.sinq + y'.cosq) . j
    D'où finalement :
       x = x' . cosq - y' . sinq   
       y = x' . sinq + y' . cosq   

    Dans notre cas, q = 45°


  3. Simulation avec un tableur




    On se rend compte que la position des balises n'est pas correcte car elle ne permet pas de déterminer la position du mobile lorsqu'il se trouve sur la diagonale 01 O2 !!!