
Test du gros servo ASME MXA - 260kg.cm - 0.12s/60° - 3600°
#21
Posté 20 avril 2017 - 01:04
Ce matin, j'ai fait du ménage sur mon établi et rangé les Lego qui trainaient.
J'ai ressorti mon alimention de laboratoire, 15V max seulement, dommage !
Le fer à souder, j'ai fait 2 cables.
Le contrôleur universel, pour vérifier l'ampérage.
Bon l'oscillo... pour la frime peut-être, mais pas vraiment nécessaire.
J'ai l'impression de revenir 30 ans en arrière. Rien de brancher l'alim, et de vérifier sa tension, j'ai l'adrénaline qui est montée...
Bref, ça m'a pris la matinée.
Bon, maintenant, je vais retourner à ma peinture...
Ma chaine YouTube : https://www.youtube..../oracid1/videos
#22
Posté 20 avril 2017 - 01:30
Tu veux un code d'exemple dédié à ton application ou tu vas te débrouiller pour chercher un peu sans problème ?
Si mon commentaire vous a plus laissez nous un avis !
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!
#23
Posté 20 avril 2017 - 06:11
Je vais essayer et si je bloque, j'appellerai au secours ...Tu veux un code d'exemple dédié à ton application ou tu vas te débrouiller pour chercher un peu sans problème ?
Ma chaine YouTube : https://www.youtube..../oracid1/videos
#24
Posté 21 avril 2017 - 07:11

J'ai été au plus simple en utilisant la méthode avec le potentiomètre (100k) avec les instructions données dans la fiche de vente et en regardant la vidéo.
Du coup, nul besoin d'envoyer une trame servo avec l'Arduino. En envoyant une tension de 0 à 5V à l'entrée potentiomètre avec la fonction analogWrite() , mais je ne vois pas d'exemple dans le starter kit, ça devrait fonctionner
Enfin, j'espère...
Ma chaine YouTube : https://www.youtube..../oracid1/videos
#26
Posté 21 avril 2017 - 07:29
Elle apparaît peut-être dans "mes médias" ?
Merci.
Ma chaine YouTube : https://www.youtube..../oracid1/videos
#27
Posté 21 avril 2017 - 10:11
Et bien, non !
La fonction analogWrite() ne donne pas une valeur de 0V à 5V, mais un rapport cyclique de 0 à 255 sur les E/S numériques.
Il doit bien y avoir une fonction qui donne une valeur de 0V à 5V sur les sorties analogiques !?
Flutes ! Les ports analogiques ne sont qu'en entrée, pas en sortie.
Bon, et bien, mon idée n'est pas bonne ! Dommage, c'était tellement simple !
Ma chaine YouTube : https://www.youtube..../oracid1/videos
#29
Posté 21 avril 2017 - 12:30
#32
Posté 21 avril 2017 - 02:49
Mais bon, je pense que je vais déjà utiliser la bibliothèque servo.h et me faire les dents avec ça.
Ma chaine YouTube : https://www.youtube..../oracid1/videos
#33
Posté 22 avril 2017 - 07:18
Aujourd'hui, j'ai réussi à faire fonctionner le servo ASME-MXA avec ma carte Arduino Uno. C'est un grand moment pour moi.
J'ai utilisé simplement le code du Projet05 du Starter Kit. Le brochage de l'ASME-MXA n'est pas tout à fait identique au servo du test, mais rien de bien méchant, le +5V et le signal sont inversés.
Un grand avantage, c'est qu'il n'y a pas besoin de prévoir une alimentation pour l'Arduino Uno, car l'ASME-MXA l'alimente au travers de la connexion servo.
Pour la suite, je révise à la baisse mes prétentions du premier test.
En effet, pour commencer, je vais faire un métronome comme ceux que l'on utilise en musique.
Le bras fera environ 30cm, et le potentiomètre fera varier la vitesse en modifiant le paramètre de la fonction delay(). Mais peut-être y a t-il un autre moyen ?
Ma chaine YouTube : https://www.youtube..../oracid1/videos
#34
Posté 22 avril 2017 - 01:14
je ne me suis jamais demandé comment, mais je crois que le gars a mis le code dans la description
#36
Posté 22 avril 2017 - 03:29
Le code de la vidéo est intéressant, il n'utilise pas la bibliothèque servo.h et il utilise effectivement la fonction millis().
Je vais essayé de voir ça de plus près.
Sinon, j'ai fait un premier jet de code et ça réagit plutôt pas mal.
Je vais le peaufiner et je vous montrerai.
Ma chaine YouTube : https://www.youtube..../oracid1/videos
#37
Posté 23 avril 2017 - 07:07
C'est un peu basique, mais ça fonctionne très bien.
Je fais une vidéo dès que j'ai un peu de temps.
/* Ce programme met en oeuvre un servo à la manière d'un métronome. * Après avoir appuyé sur le bouton, le servo fait des mouvements alternés d'environ 60°. * La vitesse est réglée par le potentiomètre. */ #include <Servo.h> // include librairie servo Servo myServo; // créer une instance servo int const switchPin = 2; // sortie 2, bouton poussoir int switchVal = 0; // initialisation du bouton poussoir int const ledPin = 13; // sortie 13, led rouge int const potPin = A0; // entrée A0 potentiomètre int potVal; // valeur du potentiomètre int speed; // vitesse du battement du bras du servo void setup() { Serial.begin(9600); // ouverture du moniteur série myServo.attach(9); // affecte la sortie 9 au servo pinMode(switchPin, INPUT); // affecte entrée 2 interrupteur pinMode(ledPin, OUTPUT); // affecte sortie 13 led rouge myServo.write(0); // initialise la position du servo à 0° while((switchVal = digitalRead(switchPin)) == LOW ); //attendre l'appui du bouton poussoir digitalWrite(ledPin, HIGH); //allumer la led rouge, début du test } void loop() { potVal = analogRead(potPin); // lire la valeur du potentiomètre // Serial.print("potVal: "); Serial.println(potVal); // log valeur du potentiomètre speed = map(potVal, 0, 1023, 100, 1000); // affecte la vitesse par map valeur du potentiomètre de 1/10.s à 1s // Serial.print("speed : "); Serial.println(speed); // log vitesse myServo.write(60); // positionne le servo à 60° delay(speed); myServo.write(0); // positionne le servo à 0° delay(speed); }
- Mike118 aime ceci
Ma chaine YouTube : https://www.youtube..../oracid1/videos
#40
Posté 23 avril 2017 - 01:12
Si, si ! C'est bien mon premier programme Arduino !Mouaiiiiss je suis d'accord avec Path, tu es sur que c'est la première fois que tu code en arduino toi ?
Là, je n'ai pas programmé la vitesse de la course du servo, mais j'y pense très fort...Héhé bon c'est pas ton premier programme
ça se voit.
Pour la vitesse de la course du servo, le programme proposé sous la video de yougo fait le job. Il y a eu un concours sur le forum donc c'était le sujet. Impossible de remettre la main dessus.
Dans mon test la commande va au maximum de la vitesse à chaque fois, mais à chaque qu'il change de sens je mets un delay(), et déjà c'est un bon test, quand vous verrez ma vidéo, vous pourrez voir le problème que cela génère.
En fait commander la vitesse du servo va dans le sens de la diminution de sa vitesse, de la maitrise de la vitesse, mais bien entendu, on ne peut pas l'augmenter.
Ma chaine YouTube : https://www.youtube..../oracid1/videos
Répondre à ce sujet

1 utilisateur(s) li(sen)t ce sujet
0 members, 1 guests, 0 anonymous users