Aller au contenu


Photo
- - - - -

Projet de robot topographique

localisation Mapping Cartographie Topographie

80 réponses à ce sujet

#21 hmnrobots

hmnrobots

    Membre passionné

  • Membres
  • PipPipPip
  • 316 messages
  • Gender:Male
  • Location:Périphérie Nantes

Posté 16 novembre 2012 - 05:57

Merci pour tes réponses pertinentes.
Effectivement c'est une solution plus chère et cela sort de mon budget.

Concernant ton projet. Embarquer le soft rtk n'était pas spécialement un pb a condition d'embarquer un linux ? Ce n'était pas envisageable ?
++

oui pb sur un 16F737!
Faire simple, c'est déjà bien assez compliqué!
http://hmnrobots.blogspot.fr/

#22 machina78

machina78

    Membre

  • Membres
  • 38 messages

Posté 04 janvier 2013 - 06:41

Tout d'abord Meilleurs voeux a tous

Bien que discret je continue mon ptit bonhomme de chemin
j'ai enfin pris le temps de tester mes premiers achats (Arduino Mega + accéléromètre/magnétomètre Sparkfun LSM303DLH + un afficheur 2 lignes)

Après petite modif du programme donnée en exemple avec le LSM303DLH, j'arrive a obtenir une pente suivant deux axes (X pitch Y roll)

Prochain objectif obtenir une pente globale avec son orientation et envoyer le résultat sur l'afficheur.
D'ailleurs d'il y a des matheux sur le forum je ne serais pas contre une petite aide :tatice_03:/> après une première et succinte recherche je n'ai rien trouvé....mais je continue :bye:/>

#23 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 969 messages
  • Gender:Male
  • Location:Anglet

Posté 04 janvier 2013 - 07:13

tu as quoi comme donnée pour la pente ? Une hauteur en un point dont les coordonnées sont données en 2D ? Si oui pour avoir la pente localisée selon une droite il te suffit de prendre deux mesures de hauteur entre deux point consécutif ( dont tu connais l'écartement) de la droite dont tu veux la pente... Sinon si tu veux directement l'orientation de la surface ( et plus d'une droite ) il te faut alors d'avantage de points... répartis sur la surface : Au moins 3.
à partir de là tu peux obtenir une équation du plan passant par ces 3 points.
Si tu prends plus de point il faut alors trouver le plant minimisant les écarts entre tous les points... Et le résultat sera plus fidèle à la réalité.

Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#24 machina78

machina78

    Membre

  • Membres
  • 38 messages

Posté 04 janvier 2013 - 08:45

j'ai juste deux angles : le roll (suivant axe X) et le pitch (axe Y) et ce que je souhaite c'est connaitre l'orientation de ce plan et son inclinaison.
documentation lsm303dlh page 20/34

Pour préciser un peu ma recherche : ce que je cherche a calculer est la valeur 5.5° sur l'image ainsi que son orientation, sachant que je sais obtenir les 2 autres valeur avec l'accéléromètre...
Image IPB

#25 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 969 messages
  • Gender:Male
  • Location:Anglet

Posté 05 janvier 2013 - 03:40

Donc si j'ai bien compris tu as deux angles selon deux axe en un point.
à partir de là tu peux obtenir l'équation de deux droites qui se coupent en ce point dans ta base de départ.
Une fois que tu as l'équation de ces deux droites , elles forment un système d'équation qui caractérisent ton plan ( tu es assuré que c'est bien un plan et pas l'ensemble vide car les deux droites se coupent en un point )
tu dois ensuite trouver le repère dans lequel l'équation se simplifie afin de retrouver une équation de droite sans pente et une équation de droite avec la pente que tu recherches.

J'espère que ça t'aura aidé ...

Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#26 hmnrobots

hmnrobots

    Membre passionné

  • Membres
  • PipPipPip
  • 316 messages
  • Gender:Male
  • Location:Périphérie Nantes

Posté 05 janvier 2013 - 01:15

Donc si j'ai bien compris tu as deux angles selon deux axe en un point.
à partir de là tu peux obtenir l'équation de deux droites qui se coupent en ce point dans ta base de départ.
Une fois que tu as l'équation de ces deux droites , elles forment un système d'équation qui caractérisent ton plan ( tu es assuré que c'est bien un plan et pas l'ensemble vide car les deux droites se coupent en un point )
tu dois ensuite trouver le repère dans lequel l'équation se simplifie afin de retrouver une équation de droite sans pente et une équation de droite avec la pente que tu recherches.

J'espère que ça t'aura aidé ...

du coup à tout point correspondra un plan, c 'est quoi le but?
Faire simple, c'est déjà bien assez compliqué!
http://hmnrobots.blogspot.fr/

#27 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 969 messages
  • Gender:Male
  • Location:Anglet

Posté 05 janvier 2013 - 02:51

du coup à tout point correspondra un plan, c 'est quoi le but?


Si j'ai bien compris son but :
Il a sont robot au point O dans le repère de base ( O, x, y )
Il a un plan incliné selon un axe (O,x2) d'un angle tétax2.
Il cherche à déterminer cet angle et cet axe.
Ses donnés sont uniquement les deux angles des pentes des droites appartenant au plan suivant les axes x et y ...
En reprenant son schémas, si l'axe x avait été orienté différament il aurait pu directement lire les valeur suivantes : 5,5° et 0° dans ce cas là : Bingo il aurait directement trouvé l'axe et la valeur de la pente...
Connaitre l'équation du plan permet de retrouver cet angle. La réduction de la forme quadratique de l'équation par changement de repère permet de trouver l'axe x2.

Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#28 hmnrobots

hmnrobots

    Membre passionné

  • Membres
  • PipPipPip
  • 316 messages
  • Gender:Male
  • Location:Périphérie Nantes

Posté 05 janvier 2013 - 05:19

Si j'ai bien compris son but :
Il a sont robot au point O dans le repère de base ( O, x, y )
Il a un plan incliné selon un axe (O,x2) d'un angle tétax2.
Il cherche à déterminer cet angle et cet axe.
Ses donnés sont uniquement les deux angles des pentes des droites appartenant au plan suivant les axes x et y ...
Si j'amais en reprenant son schémas, si l'axe x avait été orienté différament il aurait pu directement lire les valeur suivantes : 5,5° et 0° dans ce cas là : Bingo il aurait directement trouvé l'axe et la valeur de la pente...
Connaitre l'équation du plant permet de retrouver cet angle. La réduction de la forme quadratique de l'équation par changement de repère permet de trouver l'axe x2.

Bon j'essaie de suivre juste pour faire chauffer un peu mes neurones; donc effectivement pour reprendre l'objet du robot :

Le but du robot serait de réaliser un maillage de la surface afin d’indiquer la pente en une multitude de point (voire l’altimétrie si possible). La taille de la maille serait de 1m.

ce calcul permet donc de calculer le plan passant(la je suis : 1 point 2 vecteurs ) par ce point origine et ne peut servir au positionnement :ce pourquoi je cherchais le lien. ne reste plus que l'altitude et le positionnement pour aboutir à une modélisation 3D du terrain.Je suis impatient de voir la suite.
Faire simple, c'est déjà bien assez compliqué!
http://hmnrobots.blogspot.fr/

#29 machina78

machina78

    Membre

  • Membres
  • 38 messages

Posté 05 janvier 2013 - 05:30

Tu as parfaitement bien résumé Mike
Seul la dernière phrase est abstraite pour moi, il faudrait que je me replonge la dedans.
Je pensais facilement trouver l'équation "adéquat" sur la toile (mes recherches doivent être mal définie...)
Bref je me garde ce sujet en fil rouge.

il faut que j'avance un peu :

- Toujours concernant mon accéléromètre/magnétomètre il faut que je filtre les données.

- Autre sujet la communication avec le PC (pour rappel le PC doit servir a récupérer les données, à faire les calculs rtk puis a envoyer au robot les ordres de déplacement).

J'avais envisagé le Wifi mais en fin de compte mon besoin est uniquement de communiquer avec un PC n'y aurait il pas d'autre solution moins onéreuse et plus facile a mettre en oeuvre ? (j'ai souvent lu module xbee....) je vais creuser un peu ce sujet.

++

#30 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 969 messages
  • Gender:Male
  • Location:Anglet

Posté 05 janvier 2013 - 05:50

Tu as parfaitement bien résumé Mike
Seul la dernière phrase est abstraite pour moi, il faudrait que je me replonge la dedans.


Hum essaye déjà d'obtenir la formule générale des deux équations de droites appartenant à ton plan. Si tu veux on va le faire ensemble ;) et je ne vais te donne des indications qu'étapes par étapes. Ainsi elles seront plus claire ! du moins je l'espère !

Par contre si tu n'as pas vu la réduction de forme quadratique, pas de soucis il y a au moins une autre méthode, il suffit de jouer avec les deux équations pour supprimer une dépendance selon Z et ainsi obtenir l'équation de la droite de pente nulle appartenant au plant et passant par O ( On trouve donc ainsi l'axe suivant lequel le plan est orienté ;) ). De là on retrouve assez facilement la droite perpendiculaire à cette dernière et donc de même la pente que tu cherches.

Mais on reverra ça ensemble plus en détails si tu veux ;)

Par contre quelle méthode est la plus pratique à mettre dans un programme ... on pourra voir ça plus tard ^^ Il doit y avoir encore d'autre méthodes possible ;) mais là tout de suite je ne les voit pas. Je me repencherais sur le problème pour voir si j'en trouve d'autre et plus aisément implémentable dans un programme ;)

Par contre il va être très délicat ( voir impossible mais ça c'est encore à voir) d'éviter les fonctions trigonométrique qui ne sont pas très appréciées par nos petits amis les micro-contrôleurs les moins puissant...


à bientôt !

Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#31 machina78

machina78

    Membre

  • Membres
  • 38 messages

Posté 05 janvier 2013 - 06:19

la droite que l'on recherche serait défini par les équations suivantes ?
Image IPB

Chacune des équations peut etre définie par les angles obtenus par l'accéléromètre ?

:kez_11:/>

#32 hmnrobots

hmnrobots

    Membre passionné

  • Membres
  • PipPipPip
  • 316 messages
  • Gender:Male
  • Location:Périphérie Nantes

Posté 05 janvier 2013 - 06:42

Allez je prends au jeu pour essayer de me rappeler de vieilles choses : les 2 pentes sont à 90° et nous donnent un repere de centre O (le robot)
Par rapport à un repere horizontal de même centre O, on a donc 2 axes incclinés selon un angle x1 par rapport à l'axe des x et y1 par rapport à l'axe des y. Un vecteur unitaire X1 sur la pente x1 a pour composantes cos(x1) sur l'axe des x et sin(x1) sur l'axe des z; de même un vecteur unitaire Y1 sur la pente y1 a pour composantes cos(y1) sur l'axe des y et sin(y1) sur l'axe des z. Tout point du plan M est combinaison linéaire de X1 et Y1 :
OM = a X1 + b Y1

Verdict ? me trompe je ?
Faire simple, c'est déjà bien assez compliqué!
http://hmnrobots.blogspot.fr/

#33 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 969 messages
  • Gender:Male
  • Location:Anglet

Posté 06 janvier 2013 - 04:10

la droite que l'on recherche serait défini par les équations suivantes ?
Image IPB

Chacune des équations peut etre définie par les angles obtenus par l'accéléromètre ?

:kez_11:/>/>


Oui ça peut se faire comme ça mais donner une équation paramétré des droites se fait plus facilement =) en plus ça donne directement l'équation du plan cherché en paramétré


Allez je prends au jeu pour essayer de me rappeler de vieilles choses : les 2 pentes sont à 90° et nous donnent un repere de centre O (le robot)
Par rapport à un repere horizontal de même centre O, on a donc 2 axes incclinés selon un angle x1 par rapport à l'axe des x et y1 par rapport à l'axe des y. Un vecteur unitaire X1 sur la pente x1 a pour composantes cos(x1) sur l'axe des x et sin(x1) sur l'axe des z; de même un vecteur unitaire Y1 sur la pente y1 a pour composantes cos(y1) sur l'axe des y et sin(y1) sur l'axe des z. Tout point du plan M est combinaison linéaire de X1 et Y1 :
OM = a X1 + b Y1

Verdict ? me trompe je ?


Non tu ne te trompes pas =) c'est exactement ça =)

Ensuite si tu veux l'angle d'inclinaison z1 du plan tu peux par exemple déterminer Z1 = X1^Y1 et tu as z.Z1 = cos z1 ...

Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#34 hmnrobots

hmnrobots

    Membre passionné

  • Membres
  • PipPipPip
  • 316 messages
  • Gender:Male
  • Location:Périphérie Nantes

Posté 06 janvier 2013 - 07:26

Oui ça peut se faire comme ça mais donner une équation paramétré des droites se fait plus facilement =) en plus ça donne directement l'équation du plan cherché en paramétré




Non tu ne te trompes pas =) c'est exactement ça =)

Ensuite si tu veux l'angle d'inclinaison z1 du plan tu peux par exemple déterminer Z1 = X1^Y1 et tu as z.Z1 = cos z1 ...

super une bonne note, je vais le dire à ma fille! le produit vectoriel, la règle des 3 doigts... nostalgie quand tu nous tiens
Faire simple, c'est déjà bien assez compliqué!
http://hmnrobots.blogspot.fr/

#35 machina78

machina78

    Membre

  • Membres
  • 38 messages

Posté 06 janvier 2013 - 11:31

merci
j'ai donc l'inclinaison du plan (Z1 = X1^Y1)
Par contre j'ai pas l'oriention de cette inclinaison ?
Ca je devrais réussir...quoi que lol

tan orientation = cos x1/cos y1 ??

#36 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 969 messages
  • Gender:Male
  • Location:Anglet

Posté 06 janvier 2013 - 04:23

merci
j'ai donc l'inclinaison du plan (Z1 = X1^Y1)
Par contre j'ai pas l'oriention de cette inclinaison ?
Ca je devrais réussir...quoi que lol

tan orientation = cos x1/cos y1 ??


Je ne vois pas comment tu obtiens cette équation ... en tout si tu veux savoir l'orientation de l'inclinaison il faut aussi définir le nouveau repère et donc connaitre les axes composé de X1 et Y1 qui permette de simplifier les équation. Pour cela tu peux par exemple projeter le vecteur Z1 sur le plan (O x y) tu obtiendras donc ainsi le vecteur orthogonal à l'axe d'inclinaison de ton plan. ce projeté est en fait : sin z1 X2 tel que Z1 = cos(z1)*z + sin(z1)*X2 avec X2 appartenant à Vect ( x , y ) ...

Ainsi tu as Y2 = z^X2 avec (O, Y2) qui est alors l'axe de rotation de ton plan par rapport au plan ( O, x, y )... et l'inclinaison z1 est donné en connaissant cos z1 et le signe de sin z1 par exemple =)

Ton plan sera alors dirigé par Y2 et X3= Y2^Z1

Ceci est donc une troisième méthode pour parvenir à résoudre le problème.

Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#37 machina78

machina78

    Membre

  • Membres
  • 38 messages

Posté 07 janvier 2013 - 01:18

Il va falloir que je decrypte tout cela, je vais surement en avoir besoin plus tard également.
En tout cas merci a vous deux !

#38 hmnrobots

hmnrobots

    Membre passionné

  • Membres
  • PipPipPip
  • 316 messages
  • Gender:Male
  • Location:Périphérie Nantes

Posté 07 janvier 2013 - 08:57

il me semble que le changement de repère n'est pas nécessaire car s'agissant d'un relevé topo, est ce que cela ne revient pas à déterminer le vecteur Z en tout point de la maille de coordonnées x,y,z le tout dans un seul et même repère.
Par contre, les calculs précédents supposent que le robot est bien axé au cap selon l'axe disons x, les calculs sont à refaire en tenant compte du cap suivi
Faire simple, c'est déjà bien assez compliqué!
http://hmnrobots.blogspot.fr/

#39 machina78

machina78

    Membre

  • Membres
  • 38 messages

Posté 11 janvier 2013 - 12:03

Je commence a réflechir à la structure du(des) programmes

Fonctionalités à développer :
* Gestion déplacement (Arduino+carte moteur)
* Acquisition information pente, orientation (Arduino + accélérometre)
* Télécommande du robot (PC, Wifi)
* Gestion de la position (Wifi, arduino, PC, GPS)

Description du process de fonctionnement
Initialisation du robot
- initialisation de l'inclinomètre,
- Connexion Wifi,
- ...

Mode "acquisition de la périphérie de la surface" (faire parcourir le contour de la surface au robot en mode télécomandé)
- pilotage du robot : (acquisition de la position / base (RTK))

Récupération et traitement des données (post traitement rtk ?)

Afficher les infos sur le PC

Calculer les coordonnées du maillage (PC)

Démmarer le mode "acquisition automatique des pentes" (parcours automatique du robot suivant le maillage défini)
- envoi des coordonnées du maillage
- gestion de la position du robot (RTK)
- acquisition pente et azimuth et transfert vers le PC

afficher/imprimer les données


Architecture pour GPSRTK

Image IPB

une inconnue de taille (parmis tant d'autre) : la récupération des données du GPS usb via l'arduino est elle possible ??
>UBLOX LEA-6T GPS receiver module with Precision Timing
Highlights:

1 or 2 timepulse outputs (up to 10 MHz)
Output timepulse with at least one satellite in view
Stationary mode for GPS timing operation
Time mark of external event inputs
Raw data
UART, USB and DDC (I2C compliant) interfaces
Onboard RTC Crystal for faster warm and hot starts


En cours
Je viens de recevoir le shield Wifi. Je vais commencer par les exemples du site arduino.
Dans le même temps vais tenter de me mettre a Qt pour faire l'interface PC et afficher les premières infos.

#40 hmnrobots

hmnrobots

    Membre passionné

  • Membres
  • PipPipPip
  • 316 messages
  • Gender:Male
  • Location:Périphérie Nantes

Posté 11 janvier 2013 - 02:52

UART, USB and DDC (I2C compliant) interfaces

A priori il dispose d'une liaison série et I2C qui sera donc compatible avec l'arduino.Il doit y avoir un connecteur pour l'alimenter en 5v. Mais est ce que le NEO 6P ne serait pas plus adapté :provides extremely high levels of position accuracy in static and slow moving applications, and makes the NEO-6P an ideal solution for a variety of high precision applications such as mapping, marine or agriculture. ?
NEO 6P chez CSG SHOP
Une présentation intéressante de test outdoor avec NEO6

Modifié par hmnrobots, 11 janvier 2013 - 03:26 .

Faire simple, c'est déjà bien assez compliqué!
http://hmnrobots.blogspot.fr/



Répondre à ce sujet



  



0 utilisateur(s) li(sen)t ce sujet

0 members, 0 guests, 0 anonymous users