Aller au contenu


Photo
- - - - -

Projet "SAMU" : un Robot Trieur roulant grâce à deux moteurs avec odometre et reducteur integres


138 réponses à ce sujet

#41 Jbot

Jbot

    Membre chevronné

  • Membres
  • PipPipPipPip
  • 801 messages
  • Gender:Male
  • Location:Paris

Posté 07 août 2011 - 08:28

Quand il parle de recalage, il parle peut etre du meme genre de recalage qui se fait à la coupe de robotique, c'est a dire, ton robot va se coller à un mur de temps en temps et dit "la je suis a angle 0" (par exemple) et hop il recale ton angle.
Bon aprés il ne parle peut etre pas de ça du tout :D

Sinon pour ton idée de mettre 1 encodeur au milieu, je trouve ca presque totalement inutile. En effet, ce qui fait dériver le plus ton X et ton Y sur un robot, ce n'est pas la distance mais bien l'angle, donc ton encodeur tout seul va te donner une meilleur précision en distance, mais ce n'est pas ce qui pose le plus probleme.

Donc pour améliorer l'angle, c'est
soit 2 encodeur externe,
soit tu maitrise parfaitement l'accélération de ton robot et tu ne le fait pas aller trop vite, et tu t'arrange pour qu'il ne rencontre jamais aucun objet,
soit carement une centrale inertielle complete, qui devrait mieux se comporter qu'une simple boussole en interieur (je ne suis pas sur je n'ai jamais testé, pure supposition)


Malédiction du Créatif :
Plus vous avez d’idées et moins vous arrivez à les structurer.


#42 Astondb8

Astondb8

    Pilier du forum

  • Membres
  • PipPipPipPipPip
  • 1 111 messages
  • Gender:Male
  • Location:Paris

Posté 07 août 2011 - 09:33

Merci Jo

Centrale inertielle
= gyro 3 axes
+ Accelero 3 axes,
+ bousole 3 axes
(soit 9 axes au total ?

 


#43 Black Templar

Black Templar

    Membre

  • Membres
  • PipPipPipPipPip
  • 1 430 messages
  • Gender:Male
  • Location:Lille

Posté 07 août 2011 - 09:56

Merci Jo

Centrale inertielle
= gyro 3 axes
+ Accelero 3 axes,
+ bousole 3 axes
(soit 9 axes au total ?


Oui, c'est ça. Néanmoins, si tu cherches à déterminer simplement l'orientation, tu n'as pas besoin d'une centrale inertielle complète. Un gyroscope selon Z, deux accéléromètres selon X et Y et un magnétomètre selon Z devrait suffire dans ton cas puisque l'on considère que le robot sera toujours sur le sol qui est relativement horizontal.

Ensuite, si tu adopte cette méthode, tu as un gros travail de fusion de donnée à faire...

Les deux roues codeuses restant la méthode la plus facile, de loin.

++
Black Templar

Mon site internet : http://ferdinandpiette.com/


#44 Astondb8

Astondb8

    Pilier du forum

  • Membres
  • PipPipPipPipPip
  • 1 111 messages
  • Gender:Male
  • Location:Paris

Posté 07 août 2011 - 12:14

Merci Black Templar.

Nous sommes bien daccord que sur les 9 axes gérés par une station complete, seuls 6 me serviront. Il y a peux de chance pour qu'il vole et prefererais éviter qu'il chute ;)

Toutefois, soit il exuste d'un coté des gyros 2 axe avec des acceleros 2 axes etc, soit il existe des stations 9 axes completes.

Je supose qu'il est tout à fait possible sur une station 9 axes, de ne pas tenir compte des 3 axes Z dans les calculs.

Sinon, je me doute bien qur ce n'est pas simple à programmet et de croiser l'ensemble des donnees obtenues par ce genre de joujou.

J'ai vu sur un biuquin (Arduino Cookibook) Comment programmer un gyro, idem piur les acceleros. Je suppose que le fait que tout soit reuni en une seule carte ne simplifie pas la programmation. Mais il est vrzir que l'interpretation et le traitement de l'ensemble de ces données ne dout pas être simple.
Je vais faire une recherche et voir ce que je trouve. Mais pour le moment, la question ne ce pose pas dirrectement, car j'ai deja un Gyro et un accelero. Je ne vais pas acheter une carte tout en un et si je tente tout de meme cette manipe, je vais en premier lieu utiliser les capteurs deja en ma possession. Les frais supplementaires inutiles risquent de finir par me mettre dans le rouge.
Car mon prochzin achat vat être un petit analyseur ligique USB. Cet outil le permettra de mieux comprendre les datas qui transitent sur les liaisons serie, I2C etc… et meme si le modele convoité ne coute pas tres cher par rapport aux modeles sue nous avons dans nos labos de France TV, 60€ reste une belle somme.

Dinon, et pour en finir avec ca, oui, tu as rzisin, deux codeurs bien montés et bien programmés, restent la solution la plus fiable et la plus precise. Mais je suis tétu… ;)

Cdlt
Yves

 


#45 Black Templar

Black Templar

    Membre

  • Membres
  • PipPipPipPipPip
  • 1 430 messages
  • Gender:Male
  • Location:Lille

Posté 07 août 2011 - 12:23

Toutefois, soit il exuste d'un coté des gyros 2 axe avec des acceleros 2 axes etc, soit il existe des stations 9 axes completes.

Je supose qu'il est tout à fait possible sur une station 9 axes, de ne pas tenir compte des 3 axes Z dans les calculs.

[...]

Je suppose que le fait que tout soit reuni en une seule carte ne simplifie pas la programmation.


Tout à fait, tu peux utiliser seulement 6 des 9 axes d'une centrale inertielle sans problème. Et puis ce n'est pas plus complique de faire fonctionner un gyro qu'une centrale inertielle 9 axes ! (pour récupérer les données)
Par exemple ici : http://www.sparkfun.com/products/10724 Tout est géré en I2C. Pour récupéré les infos, il suffit de faire une requête à l'adresse du périphérique voulu :)

Dinon, et pour en finir avec ca, oui, tu as rzisin, deux codeurs bien montés et bien programmés, restent la solution la plus fiable et la plus precise. Mais je suis tétu… ;)


:lol:

Mon site internet : http://ferdinandpiette.com/


#46 Astondb8

Astondb8

    Pilier du forum

  • Membres
  • PipPipPipPipPip
  • 1 111 messages
  • Gender:Male
  • Location:Paris

Posté 07 août 2011 - 06:38

Oui je sui êtu … ;)

PS:
Quand je parle de codeurs bien montés, je te rassure, aucune connotation sexuelle ;)

 


#47 Astondb8

Astondb8

    Pilier du forum

  • Membres
  • PipPipPipPipPip
  • 1 111 messages
  • Gender:Male
  • Location:Paris

Posté 22 août 2011 - 11:44

Bonjour

Je viens aujourd'hui pour vous poser une question.

Savez-vous comment tester de façon simple mes cartes contrôleur de mes moteurs ?

En effet, il semblerait que les changements de régime incessants provoqués par les capteurs ont eu raison de ces éléments couteux.

Diagnostique
La tension en sortie de mon pin PWM de l'Ardino est bonne
Les moteurs alimentés séparément avec une alimentation de labo tournent normalement.
Le code fonctionnait avant cet incident
Dans un 1er temps, le moteur de gauche à cesser de tourner
Puis deux ou trois tests plus tard, ce fut le tour du moteur de droite.

Il doit être possible de tester ces contrôleurs simplement en appliquant une tension aux bornes d'alimentation, mais j'ai besoin d'un signal PWM pour les piloter.

Merci pour vos réponses.

Cdlt
Yves

 


#48 arobose

arobose

    Membre

  • Membres
  • 62 messages
  • Gender:Male
  • Location:Meyreuil-France

Posté 22 août 2011 - 12:34

Hello Yves,

Mise à part la partie gestion de tes codeurs, la carte contrôleur moteur n'est qu'une interface de puissance. C'est un pont en H qui ne sert qu'à booster le signal qu'il reçoit en entrée. Donc en sortie tu retrouves le PWM que tu as lui a fourni en entrée avec ton Arduino. Tu dois donc pouvoir le tester de la même manière que tu as testé tes sorties d'Arduino.

Mais, en toute honnêteté, vu ta description, je pense que tes ponts en H sont morts. C'est assez fréquent lors qu'ils sont sous dimensionnés. Les moteurs peuvent demander des pics de courant assez fort comparé à son besoin normal.

Peux-tu me donner la réference de ta carte contrôleur ainsi que tes moteurs ?

Bon courage.

Frank - Arobose-



#49 Luj

Luj

    Habitué

  • Membres
  • PipPip
  • 295 messages
  • Gender:Not Telling

Posté 22 août 2011 - 12:36

Est-ce qu'une tension positive ne suffirait pas ?
Pour ma part je génère à la main une alternance allumé/éteint avec un câble branché sur l'alimentation logique.


Quelle est la fréquence de ton PWM ? Tu n'as rien changé à ton code entre les différents tests, celui qui marchait et celui qui ne marche plus ?

++
Julien.

#50 Astondb8

Astondb8

    Pilier du forum

  • Membres
  • PipPipPipPipPip
  • 1 111 messages
  • Gender:Male
  • Location:Paris

Posté 22 août 2011 - 01:05

Bonjour Julien

Mon code ne fonctionnait pas très bien et j’étais justement en train de l’améliorer.
Mais il marchait. (Ce qui ne fonctionnait pas très bien concernait des problèmes de sens de rotation, ou de régimes moteur en fonction des données issues de capteurs)
En gros, il me restait à améliorer les distances ou les moteurs ralentiraient ou tourneraient à l'approche d'un obstacle.

(Je peux bien sûr communiquer le code si besoin)

Pour la fréquence, je dois la tester aussi, mais cet incident est arrivé très Trad hier et mon ocillo n'est plus très jeune et nécessite aussi une bonne revision.
Mais j'ai un gene BF qui pourrait me générer un signal PWM. Ou au pir, monter rapidement un oscillateur à base d'un 555.

Tu dis pouvoir le faire a la main ?
Remarque oui, si j'envoie un 5v a la place du PWM, cela représenterait un régime à 100% donc déjà une bonne indication.

Je vais tenter ça, mais je préférerais isoler les moteurs et les contrôleurs du reste de mon montage.

Une alimentation de labo sur 5v pour le PWM et une autre sortie sur 6v pour les cartes et les moteurs.

Avant que je ne fasse tout cramer peux-tu me dire si la théorie est la bonne (juste avant de passer à la pratique)

Merci de ton aide.

Pour Franck,
J'ai malheureusement la même analyse que toi...
Les moteurs
http://www.lextronic.fr/P18776-moteur-reducteur-avec-encodeur.html
les contrôleurs
http://www.lextronic.fr/P5451-module-de-commande-pour-moteur-cc.html
Donc un contrôleur par moteur.

Cdlt
Yves

 


#51 Luj

Luj

    Habitué

  • Membres
  • PipPip
  • 295 messages
  • Gender:Not Telling

Posté 22 août 2011 - 01:26

Je doute que les drivers soient cramés. Ces moteurs consomment beaucoup moins que ce que le contrôleur accepte. En plus ils sont vendus ensemble.
Il s'agit soit d'une fausse manip' avec le code, soit d'un câble coupé.

Débranche les moteurs, assure-toi qu'ils fonctionnent;
Débranche les drivers de la partie logique, débranche l'alimentation. Connecte les moteurs et teste les continuités (circuit éteint, toujours).

Utilise des fils de connexion souple pour connecter chacune des entrées logiques à la masse ou à la tension nominale.
Rebranche l'alimentation des moteurs : fais des tests en simulant le PWM à la main (connecte / déconnecte plusieurs fois).

a+
Julien.

#52 Astondb8

Astondb8

    Pilier du forum

  • Membres
  • PipPipPipPipPip
  • 1 111 messages
  • Gender:Male
  • Location:Paris

Posté 22 août 2011 - 01:34

OK

Je fais ces manipes et te tiens au courant.

Merci de ton aide.

Cdlt
Yves

 


#53 Astondb8

Astondb8

    Pilier du forum

  • Membres
  • PipPipPipPipPip
  • 1 111 messages
  • Gender:Male
  • Location:Paris

Posté 22 août 2011 - 02:05

Bon les résultats ne sont pas terribles

En fait, les résultats de ce test ne donnent,t rien.

Image IPB

Image IPB

Bien sûr, j'ai fait comme tu as dit (cela ne ce vois pas sur ces images,) j'ai appliqué une tension de façon intermittente sur la borne EN de 5v.

Rien a faire, les moteurs restent désespérément immobile.

Les 6v sont appliqués a la carte et au moteurs

Une autre idée ?

Cdlt
ves

 


#54 Astondb8

Astondb8

    Pilier du forum

  • Membres
  • PipPipPipPipPip
  • 1 111 messages
  • Gender:Male
  • Location:Paris

Posté 22 août 2011 - 10:36

Bon, voila le résultat de courses...

Les cartes sont bien cramées. En fait, suite a une confusion de description sur le site Lextronic, j'ai alimenté mes contrôleurs en 6v alors qu'ils n'acceptaient que des tensions comprises entre 3.3 et 5v. (Assez logique quand on y pense puisque cette tension sert justement à alimenter de la logique...)

Le site Lextronic parlais de tensions comprises entre 6 et 12v. Mais ils parlaient de la tension puissance des moteurs et pas de la tension de logique. Comme aucune autre information ne précisait la tension à appliquer à ce connecteur (seules infos, Vcc, GND j'ai supposé que j'avais besoin de 6v (tension des moteurs. Je m'en serait rendu compte immédiatement si je leur avais appliqué 12v ;) Mais bon, vola 40€ partie en fumée....
Je vais tout de même essayer d'envoyer un mail à Lextronic, mais sans conviction qu'ils acceptent de prendre cette erreur à leur compte.
J’appréciais pourtant qu'ils acceptent d'en prendre au moins la moitiés, mais bon ne rêvons pas...

Décidément, que de manque d'information au sujet de cet ensemble qui comme ils le disent est fait pour travailler de paire.
Donc une seule chose à apprendre de cette erreur, ne pas faire confiance aux infos commerciales et chercher quelle que soit le temps que cela prenne des infos techniques.

Cdlt
Yves

 


#55 Leon

Leon

    Membre passionné

  • Membres
  • PipPipPipPipPip
  • 1 289 messages
  • Gender:Male

Posté 23 août 2011 - 11:01

Pourtant, la description technique est plutôt bien faite sur le site du constructeur. C'est simple et complet:
http://www.digilentinc.com/Data/Products/PMOD-HB5/PmodHB5_RevD_rm.pdf

Après, ce genre d'expérience malheureuse sert de leçon. C'est vite arrivé de cramer quelque chose par excès de précipitation. Tout le monde l'a fait, et ça fait (malheureusement) partie du jeu. C'est même la justification du nom de la marque "sparkfun". Il faut savoir rebondir, et se servir de ce genre d'expérience pour ne pas recommencer les mêmes erreurs. Donc ici: ne pas se contenter d'hypothèses, mais toujours confirmer par de la doc technique. Donc même en faisant des erreurs, on apprend!

Leon.

BOB4, mon drone hélicoptère autonome d'intérieur http://heli.bot.free.fr/
BOB3, mon robot autonome d'intérieur avec WiFi + Foxboard Linux http://ze.bot.free.fr/
BOB5, robot bipède simulé, puis tentative de réalisation (fail)


#56 Astondb8

Astondb8

    Pilier du forum

  • Membres
  • PipPipPipPipPip
  • 1 111 messages
  • Gender:Male
  • Location:Paris

Posté 23 août 2011 - 12:27

Et oui Leon, tu as raison. Je n'ai téléchargé ce PDF que hier en cherchant la cause. Bien trop tard je l'avoue.

Toutefois, habituellement Lextronic donne les infos nécessaires. Et si ils ne les ont pas renvoi vers les sites constructeurs.
Je me suis effectivement précipité. Mais comme tout marchait bien (et pas mal de temps en plus) je ne suis pas allé plus loing. Les evenements me prouvent que j'avais tord. Et 40€ est le prix de cette leçon.

Etre fautif ne m'empêche pas de penser qu'un revendeur comme Lextronic devrait pour ce produit etre plus fiable sur les infos qu'ils donnent. Un lien c'est ce PDF aurait été simple et sans confusion possible.
Cela pourrait vouloir dire qu'ils vendent e quet c'est a d'autres d'informer. Je leur ai deja acheté pas mal d'éléments, mais pour ce produit ce n'est décidément pas tres serieux. Et donc, meme si je suis fautif, cela ne empêchez pas de leur fait un mail de réclamation. Au moins pour leur demander de mieux documenter ce produit.

Toutefois, ils restent me semble t'il un bon fournisseur. Un peux cher certes mais ils ont un assez beau catalogue d'éléments robotique.

Cdlt
Yves

 


#57 Astondb8

Astondb8

    Pilier du forum

  • Membres
  • PipPipPipPipPip
  • 1 111 messages
  • Gender:Male
  • Location:Paris

Posté 23 août 2011 - 03:30

Bon, dans la vie il fait vite réagir.

J'ai donc trouvé un contrôleur d'occasion, mais (ou plutôt bonne idée) il est en I2C
Il s'agit du MD23 - Dual 12Volt 3Amp H Bridge Motor Drive

Je dois donc adapter mon câblage

Les bornes I2C sur la Mega sont :
SDA (data) 20
SLC (Clock) 21

Bien jusqu'ici ça va.

Mon contrôleur une entrée 12v (oui oui 12v j'ai vérifié)

Mon contrôleur a aussi un bus I2C (4 bordiers de 4 broches)
5v out
Data
Clock
GND

Bien... Mais non, pas si bien que ça. C'est un +5v OUT. Mais c'est 5v, je les envoie où ?
5v In j'aurais compris, mais OUT.

Datasheet du contrôleur MD 23
http://www.robot-electronics.co.uk/htm/md23tech.htm

Il est évident que fort de ma mauvaise expérience passée (eh oui, c'est déjà du passé) je ne prendrais aucun risque avec celui-ci.

Merci de vos réponses
Cdlt
Yves

 


#58 arobasseb

arobasseb

    Membre chevronné

  • Administrateur
  • PipPipPipPip
  • 737 messages
  • Gender:Male
  • Location:BORDEAUX (33)

Posté 23 août 2011 - 03:48

comme indiqué dans le lien "Onboard 5v regulator can supply up to 1A peak, 300mA continuously to external circuitry" donc je pense que ça peut permettre d'alimenter par exemple un capteur qui fonctionnerai aussi en I2C, je viens de me commander une carte IOIO et dessus il y a le même genre de chose.

#59 Luj

Luj

    Habitué

  • Membres
  • PipPip
  • 295 messages
  • Gender:Not Telling

Posté 23 août 2011 - 03:57

Exact.

#60 Astondb8

Astondb8

    Pilier du forum

  • Membres
  • PipPipPipPipPip
  • 1 111 messages
  • Gender:Male
  • Location:Paris

Posté 23 août 2011 - 04:13

Merci à vous deux...

Désolé, mais effectivement deux avis valent mieux qu'un (surtout le mien quand il crame les contrôleurs...)

Donc sans autre élément en I2C cette pine ne sert à rien. Mais par contre, elle est bien pratique pour alimenter mon sonar US URM37 si je voulais le connecter en I2C...

Parfait est bien pratique.
Vous répondez trop vite les gas même pour moi ;) j'ai du mal à suivre...:)

Non je plaisante, ne changez rien vous êtes parfait ;)

Cdlt
Yves

 




Répondre à ce sujet



  


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

0 members, 0 guests, 0 anonymous users