Welcome! Log In Create A New Profile

Advanced

servo moteur saute en permanence

Posted by infobarquee 
servo moteur saute en permanence
March 20, 2016 04:04AM
bonjour,
j'ai installé il y a un moment l'autolevel via un servomoteur sur ma prusa i3 faite maison.
tout fonctionnait impec jusqu'au moment où le servo a cramé. surement qu'il aime pas la température du bed au bout d'un moment.
donc je le change, nickel tout fonctionne et rebelotte.

je change à nouveau le servo et là, chose étrange, il n'arrête pas de sauter, perdre ses petits et ne répond plus.
vérification des connexions, tout est bon, papier alu autour de lui pour la chaleur, séparation de tous les fils pour éviter les interférences, ca repart.

je lance un G28 et pif le chien, paf le chat, il se met a danser un zouk endiablé sous exta et plus aucun mouvement aux commandes M401-402, ni lorsque je coupe l'alim et la remet.

j'avoue ne plus trop comprendre le soucis.
servo SG90
teste de l'alim ok, j'ai bien du 5v pour le servo

avez vous une piste, car je sèche.
merci d'avance
Re: servo moteur saute en permanence
March 25, 2016 04:26AM
Pour le servomoteur qui a parkingson. (J'ai eu le même problème que j'ai résolu.)

Dans marlin puis dans configuration.h à ligne : (vers 351)

#define PROBE_SERVO_DEACTIVATION_DELAY 10000

Remplace par #define PROBE_SERVO_DEACTIVATION_DELAY 1500

Cela permet de couper le servomoteur après 1,5 secondes.

Bon print à toi :-)
Re: servo moteur saute en permanence
April 01, 2016 06:36AM
déjà essayé cette technique.
et là, le servo ne répond pas du tout.

cablage refait ce matin, changement du servo par un neuf et pareil, en plus il chauffe.
il doit y avoir un parasite quelque part sur la ramps je pense qui provoque parkinson.

je vais la changer pour voir avec la mega par la même occase.
Re: servo moteur saute en permanence
April 05, 2016 08:33AM
Ce problème est connu sous Marlin. Il n'y a pas que chez toi.
La trame envoyée au servo est instable et bouge de quelques millisecondes autour de la valeur.
Un condo n'y change rien, le servo travaille en permanence. Si tu n'as pas le souci avec certains servos, c'est que ceux-ci sont imprécis et ne réagissent pas à cette variation mais ces mouvements erratiques lui sont bien transmit.

1) Soit tu actives la désactivation automatique là où c'est prévu mais tu n'es pas le seul pour qui ça ne fonctionne pas.
2) Soit tu modifies en profondeur le code de Marlin à la section Servo pour faire une désactivation comme proposé ci-dessus, le résultat exactement ce que tu recherches mais il y'a bcp plus de boulot, c'est la même solution qu'au point N°4 mais plus élégante.
3) Si ta carte le permet, tu peux aussi repiquer sur une pin que tu pourra activer ou désactiver via un GCode pour l'alimentation du Servo, ainsi, tu envoies un ordre qui coupe son alim.
4) Soit tu fais ce que j'ai fini par faire : Intercaler un autre Arduino (Ou autre chose à base de µC) en y ajoutant une fonction de "dead-band" : Une bête routine qui dit "si signal bouge de moins de 5 unités, ne fais rien".

J'ai fini par opter pour cette 4eme solution pour obtenir exactement ce que je souhaitais sans plus aucun ordre envoyé au Servo une fois qu'il a terminé ce qu'il devait faire.
Sur la vidéo ici : [www.youtube.com] avec le bras de levier du collecteur poubelle, je te laisse imaginer l'ampleur du mouvement avant la mise en place de l'astuce.


Printer: Acrylic Prusa I3 / Marlin 1.1.0RC6 / E3Dv6 (0.4)
Materials: PLA, Nylon, PET
------
My useful utility to finely tune steps in Marlin:


Sorry, only registered users may post in this forum.

Click here to login