Répondre à la discussion
Affichage des résultats 1 à 28 sur 28

Formaliser un probleme en equation ?



  1. #1
    invite92962118

    Cool Formaliser un probleme en equation ?


    ------

    Bonjour a toutes et a tous,

    Je suis etudiant en robotique et j'ai un petit probleme avec une notion de physique (trajectoire pour etre plus exact).

    Description du probleme :
    J'ai un robot equipé de capteur laser (scrutateur laser).
    Le laser me renvoie pour chaque angle (tous les 1°) la distance de l'objet detecté (jusqu'a 80m). La mesure se fait toutes les secondes.

    Je dois deduire de ces informations la trajectoire que je vais prendre (droite ou gauche). Mais je dois en plus quantifier le poids de l'obstacle selon une priorité (plus il est proche plus je dois l'eviter fortement mais en tenant compte des autres obstacles ...)

    Les données que je connais sont celles-ci :
    Ma position actuelle : X_act, Y_act, A_act (Angle actuel)
    Ma position de destination : X_dest, Y_dest, A_dest

    On peut determiner la position de l'obstacle avec la trigonometrie et les données renvoyer par le capteur laser.

    Ma question : (j'y reflechis depuis pret d'un mois et je ne trouve pas grand chose).
    Comment mettre en equation le systeme de calcul de la trajectoire.
    Soumettez moi vos idées, meme partielles.
    Merci pour vos reponses

    -----

  2. Publicité
  3. #2
    hterrolle

    Re : Formaliser un probleme en equation ?

    Salut,

    J'ai tenté la même experience mais sans capteur laser (d'ailleur si tu sais ou je peux m'en procurer un se sera avec grand plaisir).

    Pour ma part je pense que le meilleur moyen est d'utiliser ton laser comme un radar. C'est a dire recuperer les distance de chaque objet en fonction de l'angle de detection. ensuite de modeliser cela sur un outil 3D (c'est ce que j'ai fait). Si les objet son statique c'est assez simple. Ume fois que tes objet son crée dans ton environement 3D tu peux facilement calculer ton deplacement en fonction de la direction est de la vitesse de ton robot. Dans ton programme 3D tu peux utiliser les fonctions de collision ( Java3D) est donc modifier ta direction de ton robot en fonction des informations de ton programme 3D.

    Par étape :

    1) tu recupere les infos laser.
    2) tu transmet ses informations au programme 3D de ton ordinateur
    3) Si les fonctions de collision de ton programme son activer tu transmet au robot les changement de direction qu'il doit effectué. Ce sera la partie la plus difficille. car tout depends du but que le robor doit atteindre.

    PS: pour le laser cela fait plus d'un ans que j'en cherche un. Ce serait vraiment sympa de me dire ou je pourait me procurer se genre d'outils

  4. #3
    invite92962118

    Re : Formaliser un probleme en equation ?

    Pour le capteur laser j'utilise un Sick LMS200 (ça coute 5000€) c'est mon entreprise qui l'a acheté ... on fonctionne avec un automate ... j'ai regardé les moin cher et c'est hors de prix pour ce que c'est je trouve, mais comme Sick est quasiment le seul a faire ça il peuvent faire monter les prix :'(

    Alors le probleme avec ta solution c'est dans le cas ou je ne peux pas communiquer avec un ordinateur ...
    J'aimerais que l'intelligence soit integrer au robot et pas externe, j'aimerais que la prise de decision lui soit interne.
    En fait pour rejoindre le point final il suffit juste d'avoir un algo qui calcul sa position et qui determine l'angle que doit prendre le robot pour rejoindre le point final.
    Mais dans mon cas je dois en plus eviter les obstacles qui se presenterais devant moi, je dois donc rajouter un bout d'equation a mon algo et c'est cette equation que je ne trouve pas.
    En fait c'est le principe d'attraction / repulsion, je suis attiré par le point a atteindre et repoussé par l'obstacle mais comment mettre ça en equation ?

    En tout cas merci de m'avoir repondu, je continu mes recherche de mon coté mais si quelqu'un trouve une solution, je le remercie de l'indiquer ici
    Faisons un geste contre le réchauffement de la planète, ouvrons nos frigos ^^

  5. #4
    invite92962118

    Re : Formaliser un probleme en equation ?

    je cherche toujours une equation mais je n'y arrive vraiment pas, personne n'a d'idées ? meme pas une petite ?
    S'il vous plait, c'est important
    Faisons un geste contre le réchauffement de la planète, ouvrons nos frigos ^^

  6. A voir en vidéo sur Futura
  7. #5
    robert et ses amis

    Re : Formaliser un probleme en equation ?

    Citation Envoyé par crossrobotik
    Ma question : (j'y reflechis depuis pret d'un mois et je ne trouve pas grand chose).
    Comment mettre en equation le systeme de calcul de la trajectoire.
    Soumettez moi vos idées, meme partielles.
    Merci pour vos reponses
    salut,

    je n'ai pas bien compris ta question. est-ce que tu cherches une équation de trajectoire, c'est à dire savoir où tu arrives sachant d'où tu parts et quelle action (motorisation) tu appliques? ou bien le problème inverse, c'est à dire savoir quelles actions appliquer pour arriver à un endroit donné? ou bien encore est-ce un problème de décision, c'est à dire choisir où aller sur la base d'un ensemble d'informations?

    je pense que se positionner dans un de ces champs (ou un autre bien sûr) permettrait à tout le monde de mieux te répondre.

  8. #6
    invite92962118

    Re : Formaliser un probleme en equation ?

    Oui tu as entierement raison, je n'ai pas assez decris mon probleme ...
    Je cherche les actions a appliquer pour arriver a un endroit donné et de choisir la meilleure route a suivre sur la base d'un ensemble d'information.
    Donc en connaissant mon point de depart et mon point d'arrivée, je voudrais parcourir mon environnement pour atteindre ma destination en evitant les obstacles que je detecterais au fur et a mesure de mon deplacement.

    Est ce un peu plus clair ?

    J'ai peut etre trouvé une piste qui utilise une autre forme de geometrie : les vecteurs.
    Je m'explique :
    - Je connais la position de ma cible, donc je peux definir un vecteur qui me conduit directement a cette cible, notons le V1.
    - En faisant une scrutation, j'ai une vue d'un obstacle avec un angle et une distance, donc je peux définir un vecteur pour cet obstacle, notons le V2.
    - En ajoutant ces 2 vecteurs j'obtiens un vecteur qui me donne la route a suivre !
    - Maintenant il faut gerer la priorité des vecteurs, pour les obstacles très proches je dois definir un vecteur de repulsion V2 très fort pour eviter mon obstacles et un vecteur très faibles pour les obstacles plus eloignés.
    - Enfin la norme de mon vecteur me donne la vitesse à laquelle je dois allé pour atteindre mon but (je vais donc ralentir a l'approche d'un obstacle ou de ma cible comme cela je serais très precis)

    Qu'en pense tu ?
    Faisons un geste contre le réchauffement de la planète, ouvrons nos frigos ^^

  9. Publicité
  10. #7
    Sergiocp

    Re : Formaliser un probleme en equation ?

    Bonjour,

    Petite question, a quoi ressemble ton robot? Je m'explique est-ce que c'est une sorte de "voiture teleguidee", un objet massif independant se deplacant sans aide exterieure, ou est-ce un bras articule qui a une base fixe et qui se deploie vers la destination voulue (comme dans les chaines de montages de voiture par exemple)? Ou un tout autre mecanisme?

    Je pose la question parce que la notion de robot est assez vague, et englobe en realite un nombre enorme de possibilites (et puis le cas du bras articule, je l'ai deja fait pendant mes etudes, sous matlab, et un bon millier de lignes de codes ...).

  11. #8
    robert et ses amis

    Re : Formaliser un probleme en equation ?

    Citation Envoyé par crossrobotik
    Je cherche les actions a appliquer pour arriver a un endroit donné et de choisir la meilleure route a suivre sur la base d'un ensemble d'information.
    Donc en connaissant mon point de depart et mon point d'arrivée, je voudrais parcourir mon environnement pour atteindre ma destination en evitant les obstacles que je detecterais au fur et a mesure de mon deplacement.
    déjà, je préviens tout de suite que les robots c'est pas ma spécialité, j'ai "joué" une fois avec un bras articulé lors d'un TP il y a quelques années et c'est tout.

    si je comprends bien, tu as une destination finale et des obstacles. ton robot se repère dans un espace "absolu" et il détecte les obstacles depuis là où il se trouve (donc progressivement je dirais). corrige moi si je me trompe.

    une stratégie qui me semble assez élémentaire est d'avancer "pas à pas" : on se fixe une destination auxiliaire accessible en ligne droite et on recommence jusqu'à ce que la destination finale soit accessible directement.
    dans cette optique, le problème se scinde en deux. d'une part déterminer à chaque fois la destination auxiliaire ; d'autre part déplacer le robot en ligne droite d'un jusqu'à un point donné.

    je souligne que plusieurs stratégies sont évidemment envisageable et qu'on peut dans un premier temps leur donner 2 "notes" : la rapidité et la complexité. à toi de voir quelles sont tes exigences.

    J'ai peut etre trouvé une piste [...]
    Qu'en pense tu ?
    j'ai pas très bien compris, donc j'ai pas d'idée dessus.

    enfin, la question de Sergiocp est tout à fait pertinente, en attente de la réponse donc.

  12. #9
    invite92962118

    Re : Formaliser un probleme en equation ?

    oui effectivement c'est une question très pertinente !!

    Le robot est un véhicule autoguidé a 3 roues, 2 roues folles a la moitier de la longueur du robot et une roue motrice et directrice a l'arriere du robot.

    Au niveau du repère c'est un repère 2D (longueur et largeur)

    Il detecte effectivement les obstacles progressivement.

    Au niveau de de la "strategie" ce n'est pas très important du moment que je suis sur a 100% qu'il arrive au bon endroit et avec l'angle que je lui ai donné.

    Mon systeme de vecteur me permet de faire un peu tout ce que je veux (un peu comme les forces en physique, gravité, frottement ...)

    Le fait de lui donné une destination auxilaire me gene, je prefererais qu'il aille directement vers la destination.

    Une vue de dessus de mon robot :
    Faisons un geste contre le réchauffement de la planète, ouvrons nos frigos ^^

  13. #10
    hterrolle

    Re : Formaliser un probleme en equation ?

    Salut,

    j'ai retrouvé un ptit bouquin dans ma bibliothque (Des moutons et des Robots). Il y a quelque info sur le deplacement des robots.

    Dans ton cas, c'est a dire sans avoir le possibilite de communiquer avec un ordinateur externe ni de modeliser ton environement en espace 3D.

    Je pense que ton idée de vecteur reste la meilleur solution. Considéront que tu connais la position de ton objectif par rapport a ton point de depart et que ton laser pointe sur cette direction.

    Tu va donc cherche a te deplacer vers se point en ligne droite ( le plus rapidement ). Si ti detecte un objet sur ton parcour. Tu vas devoir changer de direction afin de l'eviter. Dans se cas si ton laser reste toujours pionter sur la position a atteindre. Ton changement de direction va implique une rotation de X degrée de ton robot tandis que ton laser doit rester pointe sur la cible.

    A partir de se momment tu sera lorsqu'il n'y aura plus de cible devant toi. Tu pourra donc reprendre ton chemin en ligne droite vers ta cible. Il te suffirra juste de calculer ton angle de deviation en fonction de la deviation de l'angle de rotation du laser.

    Cela va te donner un nouveau vecteur entre ton robot et la cible. Tu recommence donc avec le même algo de depart et un vecteur different. Il faut juste pensé a bien réinitialiser tes positions et remettre ton laser dans la direction du nouveau vecteur.

    Il te faut aussi pensé a la disance de detection des obstacle. Sinon tu risque de tourner en rond si les objet sont placé en spirale avec des rayons decroissant autour de la cible.

    Sa fait cher 5000 euro pour s'amuser. Mais si ta boite
    cherche des informaticiens pour un projet robot. Ca m'interrese.

  14. #11
    invite92962118

    Re : Formaliser un probleme en equation ?

    je crois que tu n'as bien compris le capteur laser ... ce n'est pas un telemetre laser (comme l'IR) mais un scrutateur laser a 180°.
    Mon capteur scanne son environnement sur 180°. Pour chaque angle de 1° (1, 2, 3, 4, ..., 179, 180) il renvoi la valeur de l'angle et la distance qu'il a mesuré.
    J'ai donc un demi cartographie de mon environnement a chaque instant.
    Sinon tu as bien compris ce que j'avais dit sur les vecteurs, c'est exactement ça .

    Il n'y a plus qu'a trouver les equations !
    Faisons un geste contre le réchauffement de la planète, ouvrons nos frigos ^^

  15. #12
    robert et ses amis

    Re : Formaliser un probleme en equation ?

    euh moi j'ai pas compris l'histoire des vecteurs, à moins que ça recoupe mon histoire de points auxiliaires....

  16. Publicité
  17. #13
    invite92962118

    Re : Formaliser un probleme en equation ?

    En gros c'est comme en physique avec les forces (gravité, frottement, ...)
    Imagine que mon robot fonctionne comme le courant d'une riviere, un rocher au milieu de l'eau represente l'obstacle, le courant fait le tour du rocher (ce que je veux faire) et la destination est un peu comme un tourbillon qui attire mon courant ...

    Le systeme des vecteurs represente la direction de mon courant.
    Son isole le courant et qu'on fait l'inventaire des forces qui lui sont appliqué on trouve que le rocher exerce une force sur le courant qui le devit sur un coté !

    Tu comprend mieu ? on reproduit ce systeme avec des vecteur pour remplacer les forces ...
    Faisons un geste contre le réchauffement de la planète, ouvrons nos frigos ^^

  18. #14
    robert et ses amis

    Re : Formaliser un probleme en equation ?

    ok, et de ton côté, il n'y a pas de problème pour actionner le robot de sorte à ce qu'il suive ce "modèle" ?

    si il n'y pas de problème de ce genre, l'idée m'a l'air plutôt bonne.
    d'ailleurs, si tu vois la différence, est-ce qu'il faut assimiler ton champ de vecteur (puisque c'est de ça qu'il s'agit) plutôt à des forces où bien à un flot?

    pour le cas du flot, on peut alors "facilement" simuler la trajectoire du robot, mettons avec matlab.

  19. #15
    hterrolle

    Re : Formaliser un probleme en equation ?

    c'est un eux plus clair avec le dessin et la caractéristique du laser.

    Donc si j'ai bien compris; ton laser est fixe et scanne droit devant lui sur une plage de 180°.

    est ce que tu as un moyen d'avoir la position de ton point d'arrivé ?

  20. #16
    invite92962118

    Re : Formaliser un probleme en equation ?

    actionner le robot n'est pas un probleme, il faut juste que je lui envoie les bons parametres (la direction et la vitesse)
    Pour la vitesse c'est fait ça marche très bien mais pour la direction c'est les equations que je cherche !!
    En gros c'est la partie intelligence qui me manque là, mon robot avance recule tourne mais ne reflechis pas ou il va ...

    je ne vois pas bien la nuance entre flot et force ?
    En tout cas on peut très bien simuler le deplacement du robot sous Scilab (Matlab mais en gratuit et open source)
    Faisons un geste contre le réchauffement de la planète, ouvrons nos frigos ^^

  21. #17
    robert et ses amis

    Re : Formaliser un probleme en equation ?

    en pratique, je pense qu'il faudra effectuer des "réglages" sur la forme des différents champ considérés : quelque chose à longue porté pour l'objectif, et un truc qui agit de manière plus locale pour les obstacles (du genre 1/xn)

  22. #18
    robert et ses amis

    Re : Formaliser un probleme en equation ?

    Citation Envoyé par crossrobotik
    En gros c'est la partie intelligence qui me manque là, mon robot avance recule tourne mais ne reflechis pas ou il va ...
    autrement dit, comment traduire le "vecteur" dont tu parles en commande vitesse/direction?

    et bien si ton vecteur correspond à ce que j'appelle un flot, alors le vecteur est directement la donnée du couple vitesse/direction.

  23. Publicité
  24. #19
    hterrolle

    Re : Formaliser un probleme en equation ?

    je ne comprends pas pourquoi tu parle d'equation alors que c'est un algorythme qu'il te faut.

  25. #20
    robert et ses amis

    Re : Formaliser un probleme en equation ?

    Citation Envoyé par hterrolle
    je ne comprends pas pourquoi tu parle d'equation alors que c'est un algorythme qu'il te faut.
    je ne veux pas parler à la place de crossrobotik, mais il souhaite décider du comportement local de son robot de manière algébrique et non logique. en clair, écrire une formule qui donne à partir des observations du robot le comportement qu'il doit adopter.
    cette équation n'a rien d'absolue, c'est simplement un modèle de comportement.

  26. #21
    invite92962118

    Re : Formaliser un probleme en equation ?

    oui robert a bien compris ce que je voulais dire.
    C'est bien un modele de comportement que je cherche (d'ou l'equation)
    En incorporant mon modele je peux controler mon robot alors qu'avec un algorythme je suis obligé de tout reprendre ou presque ...

    C'est plus pour une simulation que pour une demonstration ...

    C'est bien la traduction de mon modele en equation qui pose probleme ... je suis dessus en ce moment meme et je butte sur des trucx vraiment idiots je suis sur :'(
    Faisons un geste contre le réchauffement de la planète, ouvrons nos frigos ^^

  27. #22
    robert et ses amis

    Re : Formaliser un probleme en equation ?

    bon alors si on part sur cette idée de vecteur, on distingue d'une part l'objectif, d'autre part les obstacles. j'entends par obstacle un point identifier par le laser, de sorte qu'un gros objet sera détecté plusieurs fois et produira autant d'obstacles "ponctuels". l'objectif étant lui aussi ponctuel.

    pour les deux (obstacle et objectif), le plus simple me semble être que le vecteur associé soit radial c'est à dire porté par l'axe robot-point. reste donc la mesure du vecteur.

    pour les points obstacles, la contribution est bien sûr dans le sens point->robot, et je la verrais bien avec une forme du genre (L/d)n, où d est la distance robot-point, L une distance caractéristique (de l'ordre de la distance minimum àlaquelle le robot peut s'approcher d'un obstacle), et n un coefficient positif (plus il est grand et moins on ressent l'obstacle tant qu'on est à une distance raisonnable).

    pour le point objectif, la contribution est dans le sens robot->point. là, on peut par contre imaginer quelque chose de constant partout sauf près de l'objectif où ça s'annule (pour une arrivée en douceur). par exemple si d>Lo, ça vaut K, si d<Lo, ça vaut K*d/Lo.

    avec ça, je pense qu'on peut calculer en chaque instant ton vecteur.

    le seul soucis que je vois, c'est si le vecteur s'annule alors qu'on est pas arrivé à destination. mais là, la parade dépend surtout du type d'environnement dans lequel tu envisages de faire évoluer ton robot.

  28. #23
    hterrolle

    Re : Formaliser un probleme en equation ?

    pour tourner a droite ou a gauche tu peux determiner cela en fonction des info en provenance du laser.

    si ton objet est detecter entre 0° et 90° tu va a droite si il est detecter entre 91° et 180° tu va a gauche.

    exemple : tu as detecter un obstacle de (30° a 95° donc a gauche) donc ton robot va droite.c'est a dire que ta prochaine information provenant du laser va te donne une detection entre (20° et 85°). Tu tourne encore a droite et tes nouvelle information seront (10° et 65°)

    si tu prend une distance de detetion assez grand entre l'obstacle et le robot tu va pouvoir deja salomer entre tes obstacles.

    pour la masse de l'obstcle cela va être un peux plus difficile étant donne qaue ton laser et fixe. D'ailleur se qui te complique la vie c'est d'avoir un laser fixe. Si te peux l'installer en position rotative autour d'un axe a 360°. Se serait beaucoup plus simple par la suite.

  29. #24
    robert et ses amis

    Re : Formaliser un probleme en equation ?

    Citation Envoyé par hterrolle
    si ton objet est detecter entre 0° et 90° tu va a droite si il est detecter entre 91° et 180° tu va a gauche.
    et si il y a un objet de chaque côté?
    et n'est-il pas intéressant de pouvoir longer un objet même si il est détecté?
    et comment prendre en compte la destination qu'il faut atteindre?

    je pense que l'idée des vecteurs de crossrobotik permet d'englober toute une pallette de réactions (qui plus est graduelles et non sur un mode "tout ou rien") dans une seule équation.

    D'ailleur se qui te complique la vie c'est d'avoir un laser fixe.
    pour le laser, qu'importe comment cela fonctionne, dis toi qu'il offre un champs de vision à 180° à tout instant. je ne vois donc pas où est la complication.

  30. Publicité
  31. #25
    invite92962118

    Re : Formaliser un probleme en equation ?

    malheureusement je ne peux pas changer le capteur laser.
    Merci beaucoup robert pour tes formules, ça m'aide bien ^^
    L'environnement dans lequel va evoluer le robot sera un environnement dégagé entre un entrepot et quai de chargement. c'est relativement dégagé comme espace.

    Si le vecteur s'annule c'est qu'il y a un probleme je pense. Pour la detection de la masse des obstacles il prendront effectivement plusieurs faisceau, il faut que je quantifie ses obstacles pour ne pas qu'il puissent me gener.

    Sinon pour la detection sur le coté, je pense que je vais mettre des zones de surveillances, a quoi ça me sert de detecter un obstacle sur le coté de mon robot vu que j'avance en ligne droite a quelque chose pret.

    Bon je continue sur cette solution qui me semble plutot bonne.
    Si vous avez d'autres idées ou formules ne vous gener pas, poster ça pourrait me servir ^^.

    Je suis assez ouvert a d'autres solutions s'il en existe.
    Faisons un geste contre le réchauffement de la planète, ouvrons nos frigos ^^

  32. #26
    robert et ses amis

    Re : Formaliser un probleme en equation ?

    pour l'histoire du vecteur nul, avec le modèle que je te propose, c'est assez facile à envisager:
    imagine un unique obstacle entre le robot et l'objectif et qui soit placé perpendiculairement à l'axe robot-objectif, il y a deux contributions au vecteur qui sont de même direction et de sens opposées, on va s'approcher de l'obstacle, de plus en plus lentement, jusqu'à l'arrêt (tu me diras, c'est toujours mieux que le choc...)

    une autre situation génante serait celle d'une espèce de "cuvette".

    pour le premier cas, on peut imaginer introduire une sorte de petite dérive qui éviterait l'arrêt définitf.

    pour le second, qui n'est qu'une exagération du premier en fait, je ne vois pas vraiment d'issue simple.

  33. #27
    hterrolle

    Re : Formaliser un probleme en equation ?

    pour longer l'obstacle on considere que 0° donne la distance minimale entre la robot et l'obstacle de gauche et 180° la distance entre le robot et l'obstacle de droite.

    Si tu as deux obstacle de chaque cote. ont peux assez facilement calculer si l'espace entre les deux est sufisant pour passer.

    il faut aussi penser a ce que le root soit dans une bonne position a l'arrivé.

  34. #28
    invite92962118

    Re : Formaliser un probleme en equation ?

    je vois que vous pensez a tous ^^
    Bon alors j'adopte la methode de la derive au cas ou un obstacle serait pile a 0°. je choisirais de partir sur la droite dans ce cas.

    Dans le cas de la cuvette je ne peux pas le gerer donc si ça arrive je ferais klaxonner mon robot. ^^

    Voila ça commence a prendre forme ! c'est bien merci !!
    Faisons un geste contre le réchauffement de la planète, ouvrons nos frigos ^^

Discussions similaires

  1. Probleme d equation
    Par lumi dans le forum Mathématiques du collège et du lycée
    Réponses: 12
    Dernier message: 27/05/2006, 20h57
  2. probleme equation
    Par juju40k dans le forum Mathématiques du supérieur
    Réponses: 10
    Dernier message: 08/10/2005, 17h33
  3. Problème (Mise en équation)
    Par juline dans le forum Mathématiques du supérieur
    Réponses: 4
    Dernier message: 12/04/2005, 21h29
  4. problème équation diff
    Par os2 dans le forum Mathématiques du supérieur
    Réponses: 8
    Dernier message: 12/04/2005, 06h04
  5. Problème, équation différentielle
    Par Bleyblue dans le forum Mathématiques du supérieur
    Réponses: 5
    Dernier message: 08/02/2005, 10h00