Aller au contenu


Photo

Servomoteur PUISSANT pour robot bipède


  • Veuillez vous connecter pour répondre
109 réponses à ce sujet

#61 Oliver17

Oliver17

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 2 758 messages
  • Gender:Male
  • Interests:Glenn

Posté 03 avril 2017 - 07:41

J'étais déjà tombé dessus sur alie il y a longtemps, mais je ne pensé pas qu'ils seraient si utiles ^^


signature_01.png -->

 

Mon Tipeee
 


#62 pgo

pgo

    Nouveau membre

  • Membres
  • 37 messages

Posté 04 avril 2017 - 10:43

M'ont l'air carrément géniaux ces moteurs !

 

Alors [newbie mode ON], la question est : comment les piloter avec un arduino ? Sur les vidéos il y a du potard, de la télécommande, mais avec un arduino quel est le principe ?



#63 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 7 030 messages
  • Gender:Male

Posté 04 avril 2017 - 01:14

M'ont l'air carrément géniaux ces moteurs !
Alors [newbie mode ON], la question est : comment les piloter avec un arduino ? Sur les vidéos il y a du potard, de la télécommande, mais avec un arduino quel est le principe ?

Si avec un testeur de servo on peut actionner ce servo, alors je dirais comme n'importe quel servo.
Mais j'aimerais bien avoir l'avis des personnes compétentes sur le sujet.
Voici une vidéo avec un testeur de servo :



#64 yougo

yougo

    Membre occasionnel

  • Membres
  • Pip
  • 235 messages

Posté 04 avril 2017 - 03:12

Salut , alors les servos fonctionnent avec un protocole PPM ,

 

Si tu as déjà utiliser l'arduino , tu vas dire "wtf c'est pwm normalement pas ppm "  en fait c'est juste un autre protocole a peine différent 

 

mais d’après les forums que j'ai visiter il n'y a pas grandes difficultés pour utiliser ton arduino pour faire du PPM    :ignat_02:


Venez check le Twitter : 

 

https://twitter.com/Projet_WALK_E

 


#65 pgo

pgo

    Nouveau membre

  • Membres
  • 37 messages

Posté 06 avril 2017 - 11:16

Ouf, ça rassure ;-)



#66 Computer Mail

Computer Mail

    Nouveau membre

  • Membres
  • 45 messages

Posté 10 avril 2017 - 01:58

Je vois que ça parle de ce moteur https://fr.aliexpres...2325553738.html, quelqu'un l'a acheté ?



#67 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 7 030 messages
  • Gender:Male

Posté 10 avril 2017 - 04:21

Non, ce n'est pas exactement le même produit.
On parlait de ce servo là : https://fr.aliexpres...0615.0.0.1x4S8S

Il semblerait que les produits soient équivalents pour le couple, 260kg.cm, et la rapidité 0.12 s/60°, mais le ASME-MXA fait 3600° (10 tours) alors que le tient ne fait que 300°, ce qui est déjà très bien.
L 'avantage du tien, c'est qu'il est moins cher, 63€ contre 100€, mais est-ce un produit comparable, à voir.
De toute façon, c'est trop tard, c'est commandé.

#68 Computer Mail

Computer Mail

    Nouveau membre

  • Membres
  • 45 messages

Posté 10 avril 2017 - 06:02

J'attends ton avis alors.



#69 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 7 030 messages
  • Gender:Male

Posté 10 avril 2017 - 06:19

Je vais essayé de faire quelques tests . Mes compétences sont assez limités, ce sera donc pour moi une manière d'apprentissage tout en essayant d'évaluer le produit. Reste à déterminer les tests, je suis ouvert à toute proposition, à ma portée.
Mais malheureusement, n'ayant pas les 2 servos, je ne pourrai pas les comparer.

#70 yougo

yougo

    Membre occasionnel

  • Membres
  • Pip
  • 235 messages

Posté 10 avril 2017 - 08:03

Tu as déjà reçu ???

 

tu as quel matos  ? 

 

 

alors en gros tout le monde ici est habitué au PWM qui est classiquement un envoi d'impulsions binaires (soit 0V soit 5V pour arduino ).

 

Ce qui va faire varier la position du servo grâce à ces impulsions binaires c'est le temps durant lequel l'impulsion sera  à 5V

 

(et la tout de suite on voit que c'est très ingénieux car en fait ça permet , avec une commande "binaire" de transmettre des valeurs analogiques [qui sont les durées durant lesquelles le signal est haut (5V) bref j’espère que je suis pas le seul a y voir du génie dans cette méthode ahah ] 

 

Avant de continuer les explications on doit savoir que le PWM se fait aux alentours de 500 hz ce qui veut dire qu'entre deux impulsions il y a 2 millisecondes 

à la fréquence que tu veux 

 

 

Dans le cas ou la fréquence est de 500 Hz si le "temps" durant laquelle l'impulsion envoyée est haute (5V) est égal à - 2ms : le servo se met à 100% de ça capacité de rotation  

                                                                                                                      - 1ms : le servo se met à 50% de sa capacité 

                                                                                                                       -0ms : le servo se met à 0% de sa capacité ect ect ect..... (proportionnel)

 

------------------------------

 

Mais alors le PPM ? 

 

Ben c'est pareil ! enfin , nan , disons que le principe est pareil ...

Le truc qui change c'est les 500 hz la fréquence qui deviennent du 50Hz

 

vous direz que ça change pas grand chose du coup , et bien si en fait ca veut dire que ce signal PWM spécial est très ...lent ! 

en effet 20ms pour une période ! (ça varie je crois de 10 a 20 , à vérifier ) 

 

​MAIS , c'est ce qui est drôle avec le PPM c'est que on pourrait s'attendre donc à  : -20ms : le servo se met à 100% de ça capacité de rotation  

                                                                                                                                 - 10ms : le servo se met à 50% de sa capacité 

                                                                                                                                 - 0ms : le servo se met à 0% de sa capacité ect ect ect.....

Ben non ...

 

c'est toujours  -2ms : le servo se met à 100% de ça capacité de rotation  

                       -1ms : le servo se met à 50% de sa capacité 

                       -0.7ms : le servo se met à 0% de sa capacité

 

ce qui veut dire que si je veux mettre mon servo a 100% de ça capacité et bien je vais devoir faire 2ms de signal "haut" puis 18ms de signal "bas" en attendant que le cycle se répète ! (comment ça c'est pas drôle ?!) 

 

 

Voila voila c'est ce que je sais du truc , ptet qu'il y a des erreurs , je m'en excuse d'avance mais c'est de la vulgarisation , donc normal que je doive simplifier  :whistle2:  

 

 

 

donc si tu es sous arduino :

Servo nom_de_ton_servo;

int angle = 0; //ici on met l'angle voulu

int angle_max = 180;
 //l'angle max que le servo peut atteindre

int frequence = 50; 
// en Hz on peut set la fréquence ici

int periode = 1/frequence ;
 // on a donc une période en secondes 


int impulsion; 

impulsion = ((angle/angle_max)*(periode));

//on a donc angle/angle_max qui donne un pourcentage 
//ce pourcentage on le multiplie par la période , on a donc la durée que doit prendre l’impulsion pour faire l'angle (en secondes)

nom_de_ton_servo.attach(/*X*/); 


nom_de_ton_servo.writeMicroseconds(impulsion*1000000);
// on fait * 1000000 car c'est en Microsecondes 

je me suis servi de ça : (que j'ai modifier) 

 

https://openclassroo...ontroler-un-esc


Venez check le Twitter : 

 

https://twitter.com/Projet_WALK_E

 


#71 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 7 030 messages
  • Gender:Male

Posté 11 avril 2017 - 06:20

Tu as déjà reçu ???
tu as quel matos  ? 

Et bien comme je l'ai indiqué ici, ce sera le ASME-MXA, c'est commandé, http://www.robot-maker.com/forum/topic/11297-robot-bipede-3d-crowdfunding/?p=81679

Mais j'attends le facteur.

Pour la commande du servo en PWM ou PPM, Mike a fait un tuto qu'il n'a pas encore présenté, mais cela ne saurait tardé.
Mais ce que tu dis a l'air très intéressant.

#72 yougo

yougo

    Membre occasionnel

  • Membres
  • Pip
  • 235 messages

Posté 11 avril 2017 - 07:07

Ahhhhh okok Mike désolé , pour le matos je parlais du contrôleur, mais garde le bout de code que j'ai fait il peut être vraiment pas mal si tu es sur arduino je pense car il est facilement adaptable, il sufit de changer les paramètres et tout se fait seul   :beach:

 

 

Ps ton lien mène vers une extrudeuse d’imprimante 3D  :P


Venez check le Twitter : 

 

https://twitter.com/Projet_WALK_E

 


#73 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 7 030 messages
  • Gender:Male

Posté 11 avril 2017 - 11:29

Ps ton lien mène vers une extrudeuse d’imprimante 3D  :P

Corrigé.

#74 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 10 164 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 11 avril 2017 - 10:20

Ahhhhh okok Mike désolé , pour le matos je parlais du contrôleur, mais garde le bout de code que j'ai fait il peut être vraiment pas mal si tu es sur arduino je pense car il est facilement adaptable, il sufit de changer les paramètres et tout se fait seul   :beach:

 

 

Ps ton lien mène vers une extrudeuse d’imprimante 3D  :P

 

Pas besoin d'être désolé ! 

Voici le lien vers le tuto sur PWM et PPM   en question  =)
N'hésitez pas à faire des remarques dessus et à dire si vous trouvez ça claire ou pas ;)


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  

 

 

 


#75 yougo

yougo

    Membre occasionnel

  • Membres
  • Pip
  • 235 messages

Posté 11 avril 2017 - 10:49

Du coup mon code marche mike ??


Venez check le Twitter : 

 

https://twitter.com/Projet_WALK_E

 


#76 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 10 164 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 12 avril 2017 - 12:38

Je ne l'ai pas essayé, 

Quelque remarque comme ça :

il manque l'include de la librairie servo, 
Et j'ai pas l'habitude de spécifier la fréquence quand j'utilise cet lib ... 
J'ai pas l'habitude d'utiliser la methode writeMicroseconds 

( voir l'exemple le plus simple déjà fournis avec l'IDE arduino comme indiqué dans le tuto sur PPM et PWM  ) 

 

Neanmoins je suppose que ça doit fonctionner. Par contre point important la période minimale de l'impulsion n'est pas de 0 microsconde elle est à environ 0.7 ou 0.9 ms  donc il faut revoir le mappage manuel que tu as fait en le mettant de la forme 

a x + b   a et b étant deux constantes telle que  pour x = 0    

a x + b = période minimale en microseconde
et pour x = 100  a x + b = période maximale. 

 

Tu trouves les périodes min et max pour ton servo en testant manuellement ( min environ 0.7 ms,  Max environ 2.3 ms ) 

et je te laisse résoudre pour trouver les valeurs de a et b dans ton cas ;)
 

Bon sinon il y a aussi la fonction map avec la librairie arduino qui est déjà faite et qui existe et qui fait tout le travail pour toi pour faire un mappage entre deux valeurs si besoin ;) 

 

Pour le reste je te laisse essayer toi même ton code yougo ;)  ou sinon Oracid le fera ! :P 


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  

 

 

 


#77 yougo

yougo

    Membre occasionnel

  • Membres
  • Pip
  • 235 messages

Posté 12 avril 2017 - 07:08

Ahah ok merci beaucoup Mike


Venez check le Twitter : 

 

https://twitter.com/Projet_WALK_E

 


#78 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 7 030 messages
  • Gender:Male

Posté 12 avril 2017 - 08:30

Yougo, pourrais-tu jeter un coup d'œil au tuto de Mike, ici, http://www.robot-maker.com/shop/blog/35_PPM-PWM-et-autres-signaux-de-commande.html

#79 yougo

yougo

    Membre occasionnel

  • Membres
  • Pip
  • 235 messages

Posté 12 avril 2017 - 10:04

C'est déjà fait pourquoi ?


Venez check le Twitter : 

 

https://twitter.com/Projet_WALK_E

 


#80 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 7 030 messages
  • Gender:Male

Posté 13 avril 2017 - 07:11

C'est déjà fait pourquoi ?

Pour que l'on soit tous bien en phase sur le sujet.

Pour le code, celui du livre du Starter Kit que l'on peut trouver ici, https://github.com/a...odIndicator.ino, me parait très bien.

Seul différence, comme il s'agit d'un servo 10 tours avec 3000°, il faudra modifier la ligne 42, angle = map(potVal, 0, 1023, 0, 179); par angle = map(potVal, 0, 1023, 0, 2999); ​ et bien entendu utiliser un potentiomètre 10 tours. Le problème, c'est que l'on va perdre en précision, puisque que l'on dépasse 1024.






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

0 members, 1 guests, 0 anonymous users