Nous sommes le Jeu 26 Avr 2018, 02:31


quels servomoteurs pour les pattes de petits robots

Endosquelette en titane ou plaque en epoxy, roue en plastique ou piston pneumatique... Comment faire fonctionner tout cela !
  • Auteur
  • Message
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

quels servomoteurs pour les pattes de petits robots

Message non luJeu 27 Fév 2014, 16:37

Bonjour à tous,


Suite à quelques tentatives de faire des petits robots à pattes, je me suis vite rendu compte que les servomoteurs necessaires doivent avoir une grande force, mais aussi une rapidité suffisante, et de plus , dans un volume réduit.
La raison du volume, est que dés lors que le volume est grand, on se retrouve vite avec des effets de bras de levier qui entrainent une perte très sensible du rapport "force disponible/taille du robot". ::(:
De plus, le design du robot en prend plein la poire, avec des servomoteurs trop volumineux... :cri:
Un autre point assez embarrassant, c'est que pour des robots de taille moyenne, genre 50cm/1m, on a besoin de servomoteur ayant un couple tel que c'est dangeureux pour les doigts si on ne fait pas attention! :red: genre un couple de 20daN.cm ou davantage.
Aussi, je regarde de temps à autre si on ne trouve pas des servos intéressants de petite taille, comme cela.
Malheureusement, les finances ne me permettent pas de faire suffisamment de tests actuellement.
Je pense que pour que le servo soit petit, rapide et coupleux, il lui faut une grande démultiplication.
Or la démultiplication entraine une difficulté, voire une impossibilité, de rendre réversible le mouvement: c'est à dire faire bouger le servomoteur à la main, en manipulant la patte du robot. La solution consisterait donc à rendre reversible un servomoteur qui a un fort couple, de maniere électronique, grace à un asservissement spécial qui gère la force de réaction sur l'axe de sortie du servo. (ce que font les servos dynamixel, je crois bien)
Pour la rapidité, et donc pour minimiser la démultiplication en minimisant par la même occasion l'effet anti-reversibilité, il serait intéressant de tester les servos à base de moteurs brushless qui seraient nettement plus rapides...
Et aussi , le truc important, c'est que la démultiplication en plastique (en nylon habituellement) ne tient pas la charge de reversibilité, de butée interne ou les chocs...selon toutes les directions, même axiale. Surtout à température, soit en été lors d'une expo par exemple, soit dû au fait que ça chauffe tres vite pendant l'utilisation! et oui... la résistance mécanique du plastique chute vite avec la temprature, même si le plastique tient, et sans parler du fait que le jeu entre les pièces change avec la température... la seule solution que je vois intelligente, est d'opter pour les servomoteurs qui ont une démultiplication réalisée avec des engrenages en métal.

Je n'ai pas encore fait du tout le tour de la question, mais pour l'heure, voici un petit compromis qui pourrait être intéressant à tester pour les robots de petite et moyenne taille :
il offrirait un couple de 8,6kg.cm en 7V4 pour seulement 23x26x12mm et 19,2g ! :shock: :shock:
mais , bien entendu pour 31 euros le servo...
MICRO SERVO NUMÉRIQUE CORELESS HV 8497 MG-D (8.6KG / 0.079S) (de la marque A2pro/Pro-tronik)
Image
il y a aussi des versions intermédaires pour 4,8daN.cm/17g/ 13 euros:
MICRO SERVO NUMÉRIQUE 7472 MG-D (4.8KG / 0.13S) (de la marque A2pro/Pro-tronik)
Image

-
phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Hors ligne
Avatar de l’utilisateur

leon

Roboticien confirmé

  • Messages: 634
  • Inscription: Dim 19 Juil 2009, 07:57

Re: quels servomoteurs pour les pattes de petits robots

Message non luVen 28 Fév 2014, 18:58

C'est un sujet que je vais devoir étudier également, si je me lance un jour dans la réalisation d'un bipède (pas gagné).
philopat a écrit:Or la démultiplication entraine une difficulté, voire une impossibilité, de rendre réversible le mouvement: c'est à dire faire bouger le servomoteur à la main, en manipulant la patte du robot. La solution consisterait donc à rendre reversible un servomoteur qui a un fort couple, de maniere électronique, grace à un asservissement spécial qui gère la force de réaction sur l'axe de sortie du servo. (ce que font les servos dynamixel, je crois bien)
Déjà, il n'est absolument pas obligatoire d'avoir des servos les plus réversibles possibles. Ca n'est indispensable que si tu veux mettre des algos nécessitant une bonne réversibilité : contrôle en force. Si tu ne contrôles tes servos qu'en position, alors ça n'est pas nécessaire.
Ensuite, les servos dynamixel sont de base assez réversibles, et la mesure d'effort (qui sert à simuler différents comportements) ne se fait qu'en mesurant le courant du moteur; donc cette mesure d'effort serait impossible (ou très fausse) avec une mécanique fortement irréversible (avec beaucoup de frottements).
Si tu veux de la "réversibilité artificielle", rappelle-toi l'expérience que Versat nous montrait ici:
vos-realisations/patopion-petite-base-bipede-humanoide-t1654-15.html#p13349

Pour la rapidité, et donc pour minimiser la démultiplication en minimisant par la même occasion l'effet anti-reversibilité, il serait intéressant de tester les servos à base de moteurs brushless qui seraient nettement plus rapides...
Je crois au contraire que les servos à base de moteur brushless sont plus démultipliés que les autres. En effet, des moteurs brushless sont capables de tourner plus vite, car ils ont moins de frottement interne (pas de balais). Du coup, pour le même volume, le même poids, et le même couple en sortie que des moteurs à charbon, les moteurs brushless peuvent tourner plus vite, et donc fournir une puissance (couple x vitesse) plus grande. Si on les faisait tourner à la même vitesse que des moteurs à charbon, voire moins vite comme tu le proposes (démul plus faible), on n’exploiterait pas l’avantage du brushless, donc ça n’aurait pas d’intérêt.

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/
Hors ligne
Avatar de l’utilisateur

Thot

Membre asso caliban

  • Messages: 1139
  • Inscription: Lun 23 Fév 2009, 23:53
  • Localisation: Toulouse con

Re: quels servomoteurs pour les pattes de petits robots

Message non luSam 1 Mar 2014, 15:25

Sujet intéressant.

J'ai aussi dû réfléchir à tout ça pour Alion, et voici où j'en suis.
Je suis un adepte des servo dynamixel (les AX-18). Ces servos ont une bonne réversibilté... éteints. Quand on les alimente, il y a un couple de résistance moteur qui s'ajoute. Donc si on veut un effet roue libre, il y a plusieurs solutions:
- tout d'abord augmenter les inerties avec un compromis pour avoir la masse la plus faible (d'où les ervos reliés par des barres en alu
- implémenter un asservissement par annulation de couple comme l'a montré Versat'
- diminuer le rapport de réduction.

Au passage, j'ajoute que la mesure de couple dans le moteur dynamixel est extrêmement bruitée. faire du contrôle de couple est donc impossible.

Cet effet roue libre est vraiment important je pense en bipédie robuste. Sinon, on se retrouve avec des structures rigides sans jeu, pour lesquelles il faut contrôler l'état en entier.

Je m'étais dit que l'étape d'après serait d'avoir une architecture de robot Poppy pour pouvoir avancer, mais le prix des servos de gamme supérieure est inabordable pour ma part.

C'est pourquoi, je réfléchis à une option pas encore explorée : diminuer le rapport de réduction... jusqu'à aller à 1:1. Cette solution semble être utilisée par le sheetah de l'EPFL et elle donne de super résultats (après c'est un moteur de ouf)

Si on met les moteurs direct sur les articulations, on a une réversibilité de ouf, mais un couple moindre. Qu'est ce que cela implique sur le contrôle? la structure du robot? Ce qu'il y a de sûr, c'est que son prix est largement plus faible.
Ce qui embetant par contre c'est que quand on est habitué aux "LEGO" de dynamixel, ça demande de faire de la méca... :(
Projet Marionnettes électriques
"Il n'y a rien de plus étrange pour l'homme que son image." RUR - Karel Capek
Hors ligne
Avatar de l’utilisateur

leon

Roboticien confirmé

  • Messages: 634
  • Inscription: Dim 19 Juil 2009, 07:57

Re: quels servomoteurs pour les pattes de petits robots

Message non luSam 1 Mar 2014, 16:08

Salut Thot.
Thot a écrit:Cet effet roue libre est vraiment important je pense en bipédie robuste. Sinon, on se retrouve avec des structures rigides sans jeu, pour lesquelles il faut contrôler l'état en entier.

Qu'est-ce que tu veux dire par là? Est-ce que tu penses qu'on ne peut pas faire de bipédie avec un robot dont les articulations sont exclusivement contrôlées en position? C'est ce que j'imaginais faire dans mon étude actuelle sur la bipédie, donc j'aimerai comprendre ton point de vue! Ca m'évitera peut-être de me lancer sur une fausse piste.
Qu'est-ce que tu veux dire par "il faut contrôler l'état entier"?

Est-ce que tu as déjà réfléchi aux algos nécessaires pour contrôler un bipède "mou", contrôlé en effort-position?

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/
Hors ligne
Avatar de l’utilisateur

VersatileRobot

Membre asso caliban

  • Messages: 344
  • Inscription: Ven 29 Jan 2010, 22:28
  • Localisation: seine-maritime (76)

Re: quels servomoteurs pour les pattes de petits robots

Message non luDim 2 Mar 2014, 21:05

Thot a écrit:- implémenter un asservissement par annulation de couple comme l'a montré Versat'


Sujet en effet trés intéressant. Je ne saurais dire mieux au sujet des dynamixel n'en ayant pas encore utilisés, mais leurs spécifications ne collaient pas à mon sujet: cout; taille; masse; interface.
Pour ceux que ça intéresse voici mon schéma de câblage des capteurs d'effort:
QRious - load cells - versatilerobot .pdf
schéma pour arduino
(11.27 Kio) Téléchargé 162 fois

J'ai cherché un ampli OP adapaté mais à petit prix. Avec ce montage pas cher on peu interfacer deux cellules pour commander deux servos. Les cellules et composants peuvent se trouver sur GOTRONIC
Pour l'instant je n'ai pas fait plus faute de temps à y consacrer malheureusement. Ma Mini Maestro 12-Channel commandée sur France Robotique reste désespérément dans son emballage. :cri:
"Nous avons seulement un avenir et il sera fait de nos rêves, si nous avons le courage de bousculer les idées reçues." Saichiro Honda
http://versatilerobot.blog.free.fr/
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

Re: quels servomoteurs pour les pattes de petits robots

Message non luLun 3 Mar 2014, 23:02

bonjour à tous!

leon a écrit:Pour la rapidité, et donc pour minimiser la démultiplication en minimisant par la même occasion l'effet anti-reversibilité, il serait intéressant de tester les servos à base de moteurs brushless qui seraient nettement plus rapides...
Je crois au contraire que les servos à base de moteur brushless sont plus démultipliés que les autres. En effet, des moteurs brushless sont capables de tourner plus vite, car ils ont moins de frottement interne (pas de balais). Du coup, pour le même volume, le même poids, et le même couple en sortie que des moteurs à charbon, les moteurs brushless peuvent tourner plus vite, et donc fournir une puissance (couple x vitesse) plus grande. Si on les faisait tourner à la même vitesse que des moteurs à charbon, voire moins vite comme tu le proposes (démul plus faible), on n’exploiterait pas l’avantage du brushless, donc ça n’aurait pas d’intérêt.

Leon.
merci léon, pour la correction au sujet des brushless. tu as parfaitement raison. l'interet reside donc dans le fait que pour une meme vitesse de fonctionnement du servo, on devrait avoir des servo plus coupleux grace à une demultiplication plus grande. sinon on aurait tout simplement une vitesse plus grande , ce qui est aussi avantageux.

leon a écrit:Thot a écrit:
Cet effet roue libre est vraiment important je pense en bipédie robuste. Sinon, on se retrouve avec des structures rigides sans jeu, pour lesquelles il faut contrôler l'état en entier.

Qu'est-ce que tu veux dire par là? Est-ce que tu penses qu'on ne peut pas faire de bipédie avec un robot dont les articulations sont exclusivement contrôlées en position? C'est ce que j'imaginais faire dans mon étude actuelle sur la bipédie, donc j'aimerai comprendre ton point de vue! Ca m'évitera peut-être de me lancer sur une fausse piste.
Qu'est-ce que tu veux dire par "il faut contrôler l'état entier"?

Est-ce que tu as déjà réfléchi aux algos nécessaires pour contrôler un bipède "mou", contrôlé en effort-position?

--
en fait je ne vois pas tres bien comment tu penses pouvoir controler un bipède en marche dynamique avec une structure rigide... parce que en dynamique contrairement à une suite ou à un déroulement de positions statiques, on se retrouve inévitablement avec des positions aléatoires au niveau d'une certaine précision. c'est à dire que l'angme entre le pied et le sol ne sera jamais maitrisable avec une structure rigide (selon moi...). surtout si on tient compte du fait que tu vas te retrouver avec des retours de chocs dans les membres. Donc, tu vas être amené à mettre du mou, comme pour les suspensions d'une voiture presque... apres , tu peux vouloir controler ce mou... :D je te laisse ce labeur!...
je trouve que le servo qui s'adapte à la position du membre n'est pas si mal! ;) c'est à dire que l'asservissement en position n'est pas suffisamment optimal et laisse donc le servo en defaut: il tente d'atteindre la position souhaitée, sans y parvenir, mais il s'adapte à la situation , en consommant de l'energie (entre la positon souhaitée demandé par la commande et la position adaptée par la mécanique et la souplesse du moteur , c'est à dire de la reversibilité).

concernant les principes de controle actifs de la réversibilité, je ne pense pas qu'on puisse atteindre facilement un effet suffisant pour assurer une bonne adaptation aux chocs (qui à mon avis demande beaucoup, mais alors beaucoup, de réactivité) :8):

@thot:
concernant les servos dynamixel AX18, comme Versat', je trouve qu'ils sont bien gros, lourds et chers, même si ils offrent du controle intéressant, ils pénalisent pas mal le robot. surtout de maniere économique ! :D

sinon , vous en pensez quoi des petits servos pro tronik que je vous ai présenté?
on trouve beaucoup de marques différentes avec ce genre de design de servo d'ailleurs. à mon avis il s'agit d'un fabricant unique quelque part en asie.


-
phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Hors ligne
Avatar de l’utilisateur

leon

Roboticien confirmé

  • Messages: 634
  • Inscription: Dim 19 Juil 2009, 07:57

Re: quels servomoteurs pour les pattes de petits robots

Message non luMar 4 Mar 2014, 21:14

Salut Philopat,
philopat a écrit:en fait je ne vois pas tres bien comment tu penses pouvoir controler un bipède en marche dynamique avec une structure rigide... parce que en dynamique contrairement à une suite ou à un déroulement de positions statiques, on se retrouve inévitablement avec des positions aléatoires au niveau d'une certaine précision. c'est à dire que l'angme entre le pied et le sol ne sera jamais maitrisable avec une structure rigide (selon moi...). surtout si on tient compte du fait que tu vas te retrouver avec des retours de chocs dans les membres.

Oui, de mon côté, j’imagine que c’est possible de faire de la marche dynamique avec une structure rigide, mais je me trompe peut-être.

Pour faire ça, il faut à mon avis :
* avoir de bonnes « chaussures » qui accrochent bien et qui amortissent convenablement les chocs, et absorbent les petites imprécisions de positionnement du pied (surtout en orientation tangage).
* Une connaissance parfaite, à chaque instant, de l’inclinaison du torse du robot (avec un gyro et/ou accéléro)
* savoir parfaitement à quel instant le pied touche le sol. Je pensais initialement que c’était possible avec juste un gyro, mais il faudrait sans doute des capteurs pour détecter si le pied est posé ou non.
* Un asservissement temps réel et très réactif, qui mette à jour 50 ou 100 fois par secondes les consignes de tous les servos. Donc ça n'est pas une succession de positions statiques, mais un asservissement en continu de la position 3D de chaque pied. Comme un robot industriel ou comme SCRIBOTqui suivent des trajectoire précise. Ca, c'est bon, je maitrise.

Voilà, c’est dans cet état d’esprit que j’essaye de travailler sur mon projet. C’est complexe, très complexe. J’avoue avoir beaucoup de mal à progresser, et j’ai vraiment l’impression d’atteindre les limites de mes capacités intellectuelles...
Si cela est insuffisant car trop rigide, on pourrait rajouter un petit amortisseur au niveau de la cheville, mais c’est tout. Pour moi, tout le reste doit être rigide, le plus rigide possible.

Après, si je réfléchis à ce genre de solution avec structure rigides, c’est que je vois à peu près comment le faire, avec une méthode « classique » : asservissement de position, cinématique inverse, etc… C’est un peu normal, vu que c’est ce que j’ai appris à faire en cours il y a ~15 ans.

Je n’ai absolument aucune idée des algorithmes qu’il faudrait utiliser pour asservir un bipède « mou » (avec articulations possédant des ressorts). Si ça se trouve, c’est plus simple ! Est-ce que l’un de vous s’est renseigné ou a des idées là-dessus ? Thot, Fabien ou quelqu'un d'autre?

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/
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

Re: quels servomoteurs pour les pattes de petits robots

Message non luSam 8 Mar 2014, 18:14

salut leon!

quelque soit la façon dont tu vas t'y prendre, en tout cas, je suis et resterais interessé par ton travail! ;)
leon a écrit:* Un asservissement temps réel et très réactif, qui mette à jour 50 ou 100 fois par secondes les consignes de tous les servos. Donc ça n'est pas une succession de positions statiques, mais un asservissement en continu de la position 3D de chaque pied. Comme un robot industriel ou comme SCRIBOTqui suivent des trajectoire précise. Ca, c'est bon, je maitrise.

et b'en justement, 50 ou 100 fois par seconde, correspond bien à 50 ou 100 configurations de de positions moteurs par seconde ;) que tu recalcules ou pas...
et si tu recalcules, le temps du calcul donne une position par rapport à une situation passée et non présente!
ce que j'ai vu de môn coté, c'est que les retours de chocs dûs aux contacts au sol (meme avec elasticité, etc...) entrainent des oscillations du centre de gravité et de la position des membres , de manière quasi aléatoire.
maitriser cela, c'est .... pfiouuuuu! quel travail!... bon courage! :lol:
-
sinon, l'autre probleme d'avoir des servo non reversibles, c'est que ça complique enormément la mise au point du robot...
il faudrait avoir un dispositif pour regler la position de chaque servo, sans les debrancher? avant de les monter, et apres pour ajuster...
c'est vraiment simple de positionner à la main les membres, pourquoi s'en priverait on si on peut faire? :mrgreen:
-
un autre point qui pourrait t'interresser, et que tu as déjà dû constater avec ton bras mécanique, c'est qu' il y a énormément de petits défauts mécaniques qui s'ajoutent les uns aux autres, à la fabrication, au montage, et sous charge (flexions). tels que pour décrypter ensuite la trigonométrie du résultat de manière suffisamment précise, il faudrait un dispositif de mesure automatique, au démarrage peut-être... un genre d' auto-calibrage, analysant les mouvements et les positions. :ygeek:

-
phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Hors ligne
Avatar de l’utilisateur

leon

Roboticien confirmé

  • Messages: 634
  • Inscription: Dim 19 Juil 2009, 07:57

Re: quels servomoteurs pour les pattes de petits robots

Message non luSam 8 Mar 2014, 18:48

Salut Phil,
philopat a écrit:et b'en justement, 50 ou 100 fois par seconde, correspond bien à 50 ou 100 configurations de de positions moteurs par seconde ;) que tu recalcules ou pas...
et si tu recalcules, le temps du calcul donne une position par rapport à une situation passée et non présente!
2 choses par rapport à ça:
1) 50 ou 100 fois par secondes, ça ne laisse que 10 ou 20ms entre 2 positions. C'est très peu! Ca donne des mouvements fluides et précis. Regarde le robot scribe pour t'en convaincre : j'utilise la même méthode. C'est comme ça que fonctionnent aussi les robots industriels.
2) Dans un asservissement bien fait, il est tout à fait possible d'anticiper les choses. Anticiper l'attitude qu'il faudra avoir dans 10 ou 20ms. Comment? Et bien tu connais la position et la vitesse du robot, son inertie, et tu sais en plus quel effort est en train d'appliquer la jambe sur le sol. Donc tu peux "estimer" l'état du robot à l'instant T+1, et en déduire quelle commande appliquer aux servos. Avec des filtres de khalman ou autres stratégies prédictives, ça se fait, mais ça peut être complexe. Mais ça n'est pas forcément indispensable, si la récurrence de l'asservissement est suffisamment rapide.

ce que j'ai vu de môn coté, c'est que les retours de chocs dûs aux contacts au sol (meme avec elasticité, etc...) entrainent des oscillations du centre de gravité et de la position des membres , de manière quasi aléatoire.
OK pour les oscillations du centre de gravité. Mais pour la position des membres, si les servos sont suffisamment bien dimensionnés, ça devrait être très limité. Est-ce que c'est bien de ça dont tu parles : flexibilité des servos?

philopat a écrit:sinon, l'autre probleme d'avoir des servo non reversibles, c'est que ça complique enormément la mise au point du robot...
il faudrait avoir un dispositif pour regler la position de chaque servo, sans les debrancher? avant de les monter, et apres pour ajuster...
c'est vraiment simple de positionner à la main les membres, pourquoi s'en priverait on si on peut faire? :mrgreen:
Attention : il n'y a pas de frontière bien définie entre "irréversible" et "réversible" pour un servo. C'est juste que ton servo a plus ou moins de frottement, c'est tout. Il existe des servos un peu plus "réversibles" que les autres. Et pour l'instant, je n'ai vu aucun servo qui était si irréversible qu'il en était impossible à manoeuvrer à la main courant coupé, surtout avec le bras de levier d'une jambe. Donc pour moi, ça n'est pas un problème d'avoir des servos qui ont beaucoup de frottement.

un autre point qui pourrait t'interresser, et que tu as déjà dû constater avec ton bras mécanique, c'est qu' il y a énormément de petits défauts mécaniques qui s'ajoutent les uns aux autres, à la fabrication, au montage, et sous charge (flexions).
Sur le robot scribe, je n'ai aucun phénomène de défaut mécanique, d'alignement, de jeu ou de flexibilité qui soit significatif. Le bras du scribe génère peu d'effort, il ne fait que écrire, donc c'est une situation avantageuse. Je suis d'accord avec toi, ça risque d'être plus complexe avec un bipède, vu la force qu'il y aura dans les jambes.

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/
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

Re: quels servomoteurs pour les pattes de petits robots

Message non luJeu 13 Mar 2014, 19:51

hi man!

leon a écrit:1) 50 ou 100 fois par secondes,...
...
...si la récurrence de l'asservissement est suffisamment rapide.

voici ma derniere étude qui est en relation avec ce point ;) :
en ce moment je travaille sur le developpement et la mise au point des actions moteurs de mon petit bipède.
je n'ai que des petits servos qu'on appelle micro servos (9g)
il s'agit de 2 modeles: futaba s3107 et TowerPro SG90.
grâce à la carte de controle spécifique PWM, adafruit 16pwm PCA9685, j'explore la fréquence de mise à jour des servos et les limites de fonctionnement des servos en rapport avec le signal pwm.
j'ai voulu gerer l'impulsion du signal pwm en microsecondes. pour ce faire, vu que la carte delivre un signal dont l'impulsion peut varier de 0 à la totalité de la periode, pour 4096 pas, (c'est super pratique) il suffisait donc d'avoir une periode de 4096 microsecondes, soit une fréquence de 244Hz pour 1 microseconde par pas...
malheureusement, les servos en question n'aiment vraiment pas cette fréquence. tres certainement à cause du peu de temps de répit entre 2 impulsions.. ::(: j'ai donc dû baissé à 122 Hz , et là c'était beaucoup mieux, mais bizarrement , pour certaines valeurs de largeur d'impulsions (meme au centre à 1500 microsecondes), les servos se mettaient en osccillation/vibration..de manière un peu aléatoire. Ce problème a cessé totalement dés que j'ai baissé la fréquence à 61Hz...
==> conclusion , certains servos prévus pour le domaine de la RC, utilisent certainement une techinque d'interpretation du signal PWM directement en relation avec la frequence de 50 Hz moyenne qui est la norme du domaine RC (RC = radio commande). c'est à dire que espérer exploiter un rafraichissement de 100 Hz me parait vain si on ne fait pas le choix du servo en conséquence...
et donc voilà... encore un parametre pour bien choisir son servo! la fréquence de rafraichissement .
d'autre part, j'ai malonctreusement constaté grâce à ces experiences, que les servos exploitent de manière différente le signal. certains ne tournent que sur une plage de 90 degrés pour une impulsion de 1,5ms +/- 0,5...
et donc pour ceux-ci, pour atteindre une plage de 180 degres, il faut exploiter un signal avec une impulsion de 1,5ms +/-1ms !! chose qui devient dangeureuse pour le servo quand on s'approche des limites de fonctionnement mécanique et de l'asservissement (potentimetre)... ça casse ou ça grille.
un autre point est que pour les petits servos, visiblement, le potentiometre integré, ne permet pas un positionnement précis de manière répétable. je n'ai pas encore fait de campagne de tests assez pro pour bien montrer le truc, mais c'est un problème quand on veut actionner un membre de robot directement sur la rotation de l'axe moteur du servo: le manque de précision du servo entraine un grand défaut de position de l'extrémité du membre... donc pour anticiper le mouvement du robot il faudra bien choisir les servos et les accouplements mécaniques en conséquence... ;)

leon a écrit:OK pour les oscillations du centre de gravité. Mais pour la position des membres, si les servos sont suffisamment bien dimensionnés, ça devrait être très limité. Est-ce que c'est bien de ça dont tu parles : flexibilité des servos?

En fait, lors de retour de choc, parfois si le servo est mal dimensionné (mauvais choix), le servo bouge (couple de reaction > au couple de charge maxi) le temps que l'effet du choc se dissipe. c'est dans ce cas une flexibilité magnétique...mais la plupart du temps, ce que je vois, c'est simplement la flexibilité de l'ensemble (servo+ fixations+structure du membre) associé à son moment d'inertie...

leon a écrit:Attention : il n'y a pas de frontière bien définie entre "irréversible" et "réversible" pour un servo. C'est juste que ton servo a plus ou moins de frottement, c'est tout. Il existe des servos un peu plus "réversibles" que les autres. Et pour l'instant, je n'ai vu aucun servo qui était si irréversible qu'il en était impossible à manoeuvrer à la main courant coupé, surtout avec le bras de levier d'une jambe. Donc pour moi, ça n'est pas un problème d'avoir des servos qui ont beaucoup de frottement.

par exemple pour les futaba s3107, il en en a 1 sur 4 qui casse quand tu veux le deplacer à la main , à vide, sans meme l'avoir branché! c'est une question de qualité (engrenages en plastique mal dimensionnés) :grrr:
je pense que si la demul est vraiment tres importante, la deformation du corps du servo pendant une tentative d'action de reversibilité peut entrainer des dommages mécaniques internes. (ovalisation des logements de roulements, deformation des axes, etc...) . déjà, afin de minimiser ce genre de problème, il vaut mieux choisir les servos à corps métallique. :col:
toujours se rappeler que à température le plastique flue sous la charge... (soit quand ça chauffe, soit en été, etc..)
à mon avis quand la température monte, les axes se déchaussent un peu et prennent du jeu si il y a un peu trop d'effort dessus...
-
:geek:
-
phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Hors ligne
Avatar de l’utilisateur

leon

Roboticien confirmé

  • Messages: 634
  • Inscription: Dim 19 Juil 2009, 07:57

Re: quels servomoteurs pour les pattes de petits robots

Message non luVen 14 Mar 2014, 10:14

Salut Phil.
De mon côté, il est évidemment hors de question que j'utilise des servos "bas de gamme" à pignons plastiques et à électronique analogique. Il existe des tonnes de servos différents.

Les servos numériques modernes sont plus rapides et acceptent un signal à plus de 50Hz. L'asservissement interne des servos analogique tourne à 50Hz, mais c'est beaucoup plus élevé pour des servos numériques, ce qui fait qu'ils oscillent beaucoup moins!
Nous n'inventons rien avec nos bidouilles robotique. Toutes les bidouilles sur les servos analogiques et numériques sont très bien documentées sur le web. Ce que tu as constaté avec des servos analogique ne s'applique pas aux servos numériques. Et puis rien n'empêche de transformer tes servos analogiques en servos numériques avec une platine genre "open servo". C'est sans doute ce que je ferais si je me lance un jour dans une réalisation concrète de bipède. Mais sur un micro servo, c'est plus complexe, et ce genre d'électronique doit être mis hors du servo. Il existe des micros servos numériques, mais c'est plus cher.

Après, les micro-servos que tu utilises ne sont clairement pas conçus pour fournir de la puissance et de la précision. Tu es sur qu'on peut faire marcher un petit bipède avec des servos de seulement 1.5kg.cm ? Tu as fait un calcul théorique du couple nécessaire pour par exemple tenir ton robot en statique accroupi sur 1 jambe, genou plié à 90°? Ca donne un bon ordre de grandeur! Pour un robot de 500g et de 6cm de longueur de fémur (je ne pense pas être loin des caractéristiques de ton robot), il faut un couple au niveau des servos des hanches et des genoux valant :
0.5kg x 6cm / racine(2) = 2.1kg.cm

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/
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

Re: quels servomoteurs pour les pattes de petits robots

Message non luSam 15 Mar 2014, 17:55

salut Léon!

pour répondre à ton interrogation au sujet de mes choix, c'est fort simple...
Malgré finances, j'ai préféré commencer à explorer la contruction de robots à pattes avec les servos que j'avais en stock à des fins génértalistes. Pour tout dire, ça me démangeais depuis longtemps! :lol:
Aujourd'hui je trouve que ce n'est pas dutout un mauvais choix , même si en calculant comme tu le fais on en voit vite les limites d'usage. ça permet tout de même d'évaluer l'architecture globale d'un robot et certains principes mécaniques sans se ruiner. Ajourdhui, la raison même de ce thème, est que je suis en train d'évaluer les servos nécessaires pour remplacer les premiers utilisés.
=>C'est pourquoi je vous montrais mon choix idéal non encore testé:
Je suis tellement ébahi par la description des performances de ce servo à 31 euros que je doute de leurs réalités! :shock:
MICRO SERVO NUMÉRIQUE CORELESS HV 8497 MG-D (8.6KG / 0.079S)
Image

-
phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Hors ligne
Avatar de l’utilisateur

Esprit

Membre asso caliban

  • Messages: 1641
  • Inscription: Jeu 11 Fév 2010, 11:14
  • Localisation: Ottignies

Re: quels servomoteurs pour les pattes de petits robots

Message non luVen 18 Avr 2014, 18:03

philopat a écrit:il y a aussi des versions intermédaires pour 4,8daN.cm/17g/ 13 euros:
MICRO SERVO NUMÉRIQUE 7472 MG-D (4.8KG / 0.13S) (de la marque A2pro/Pro-tronik)
Image


Nous avons commandé ce servomoteur pour notre robot. J'ai reçu le moteur assez rapidement (une petite semaine). Dans une boite bien protégée. On pourra faire un petit retour sur la marchandise. ::-D:
Simon, membre fondateur de l'Association Caliban Belgique,
.·° Mon blog : Le Chipoteur de Brols .·°·. L' Association Caliban Belgique °·.
"L'impossible, nous ne l'atteignons pas, mais il nous sert de lanterne." (René Char)
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

Re: quels servomoteurs pour les pattes de petits robots

Message non luSam 19 Avr 2014, 13:55

salut Esprit !

Esprit a écrit:J'ai reçu le moteur assez rapidement (une petite semaine)

Oui , j'ai trouvé aussi qu' ils ont été vraiment réactifs! c'est très appréciable. ::): que quelques jours (moins d'une semaine pour moi)

Au sujet des moteurs, moi en fait, je n'ai pas pris ceux-là , les 7472 MG, mais
ceux-ci: MICRO SERVO NUMÉRIQUE 8472 MG-D HV (6.3KG / 0.12S) (à 13,85 euros)
(Je ne les avais pas remarqués, au moment de mes précédents posts...)
Ils ont en théorie un couple de 6,3 kg.cm , mais en vérité ce n'est pas vraiment le cas!
Le truc à savoir , c'est que visiblement, il y a 2 couples moteurs à distinguer! :8):
Un couple résistant, et un couple d'action moteur, c'est à dire de mise en mouvement. Le couple résistant correspond au couple nécessaire pour faire bouger le servo qui est sous tension, en manipulant le moteur à la main:
Pour celui-ci, visiblement ce que j'ai constaté, c'est que le servo Pro-tronik 8472-MG necessite bien un couple supérieur à 6,3kg pour le faire reculer! donc c'est intéressant car ça permet de conserver le robot debout pour ce genre de couple, sans qu'il ne tombe lamentablement sous l'effet de la surcharge.
En revanche, le couple d'action, de mise en mouvement , ne dépasse guere les 4kg.cm sur le modèle en question.
J'ai plutôt relevé un couple de l'ordre de 3,5kg.cm, toutefois mes mesures sont très rapides, faites à main levée, sur le genou quoi! avec une balance éléctronique de cuisine.. :heu: ce n'est pas digne d'un laboratoire d'essais!.. ;)
Peut-être que ces performance peuvent être améliorées en graissant la mécanique avec une graisse suffisamment fluide... :roll:

Et puis la souplesse du servo sous tension, dans le sens de rotation, est trop importante pour avoir une bonne maitrise du mouvement. ça reste quand même un bon choix de servo pour commencer à faire des choses correctes. ça n'a aucune commune mesure avec les TowerPro SG90 et Futaba s3107 vraiment trop faiblards (coeff 3 ou 4)
Pour la maitrise du mouvement, je pense que la version en alu devrait être plus raide. Je pense que le défaut de raideur vient principalement du fait que les petits axes des engrenages sont placés dans du plastique. A moins que leur petite dimension en diametre intervienne aussi en flexion.
l'ordre de grandeur, c'est un débattement élastique de 1cm au bout d'une patte de 20cm rattachée en rotation à l'axe moteur, pour une faible charge je trouve. je n'ai pas encore fait de mesure fiable à ce sujet... m'ai c'est du genre 100/150 gr .Le débattement du manque de raideur est associé à un petit jeu aussi (10/15% du débattement)

Le dernier point, c'est que les servo en question n'ont pas de butée angulaire mécanique! en revanche, ils ont bien une plage de fonctionnement de 180 degrés à peu près. il se positionne automatiquement dans la plage de fonctionnement dés la mise sous tension! il faudra faire tres attention à ce point lors de la conception d'un robot avec ce genre de moteur: Prévoir une butée angulaire pour ne pas casser les pattes ou autre dés que l'alimentation est coupée, et, pendant le montage, prévoir un moyen de contrôler électroniquement le moteur pour le pré-positionner à la bonne position angulaire.
Encore une fois, je propose d'exploiter la performance de la carte Adafruit 16PWM ou une équivalente, qui permet de gérer l'impulsion sur une plage qui dépasse celle des servos, pour bien utiliser/parametrer la plage d'exploitation du servo... (en faisant très attention à ne pas faire de bêtise: partir du zero theorique à 1500 microsecondes de largeur d'impulsion ) :col:

Enfin voilà pour les premiers retours d'info

-
phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Hors ligne
Avatar de l’utilisateur

mike118

Bricoleur confirmé

  • Messages: 34
  • Inscription: Dim 6 Avr 2014, 07:25

Re: quels servomoteurs pour les pattes de petits robots

Message non luDim 20 Avr 2014, 00:40

Juste pour parler moteur, dans le même genre que les AX 18 de dynamixel il y a les AX 12 : moins cher et certes moins performant mais tout aussi tentant : pour 35 euros ... On se rapproche du prix des premiers servo moteurs cité avec un couple et une plage angulaire de position plus importante! Par contre oui ils sont plus volumineux ... Cependant ils ont le contre axe d'intégré ! ce que n'ont pas les servo-moteur de modélisme standard... Bref je disais ça juste comme ça en passant histoire d'apporter un peu d'eau au moulin avec un coup de projecteur sur d'autre produits possible =).
à bientôt !
Suivante

Retourner vers Mécanique

Qui est en ligne

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

cron