Aller au contenu

Denis MUSET DEPERO

Membres
  • Compteur de contenus

    24
  • Inscrit(e) le

  • Dernière visite

Tout ce qui a été posté par Denis MUSET DEPERO

  1. Bonjour, J'ai aussi une imprimante dont je ne peux pas changer le firmware et qui n'a pas de fonction PAUSE insérable dans le gcode : Quand je veux mettre une pause, j'insère des commandes M300 qui font du bruit. Ça me fait une sorte de musique qui dure environ 30 secondes. J'abaisse la température pendant la pause (en restant dans la plage de fusion du PLA), ce qui me donne quelques secondes de répit le temps de remonter en température. C'est mieux que la pause silencieuse de type G24. Ça ressemble à ça : M300 S1567 P240 M300 S1567 P180 M300 S987 P120 M300 S987 P120 M300 S2093 P180 M300 S2349 P1440 M300 S1567 P240 M300 S1567 P180 M300 S987 P120 M300 S987 P120 M300 S2093 P180 M300 S2349 P960 M300 S1567 P240 M300 S1567 P180 M300 S987 P120 M300 S987 P120 J'ai modifié le fichier "PauseAtHeight.py" : # Wait till the user continues printing # prepend_gcode += self.putValue(M = 0) + " ; Do the actual pause\n" # Cette ligne est remplacée par la séquence suivante # @(#) Debut de pause prepend_gcode += self.putValue(M=300, S = 1567, P = 240) + "\n" prepend_gcode += self.putValue(M=300, S = 1567, P = 180) + "\n" prepend_gcode += self.putValue(M=300, S = 987, P = 120) + "\n" prepend_gcode += self.putValue(M=300, S = 987, P = 120) + "\n" prepend_gcode += self.putValue(M=300, S = 2093, P = 180) + "\n" prepend_gcode += self.putValue(M=300, S = 2349, P = 1440) + "\n" prepend_gcode += self.putValue(M=300, S = 1567, P = 240) + "\n" prepend_gcode += self.putValue(M=300, S = 1567, P = 180) + "\n" prepend_gcode += self.putValue(M=300, S = 987, P = 120) + "\n" prepend_gcode += self.putValue(M=300, S = 987, P = 120) + "\n" prepend_gcode += self.putValue(M=300, S = 2093, P = 180) + "\n" prepend_gcode += self.putValue(M=300, S = 2349, P = 960) + "\n" prepend_gcode += self.putValue(M=300, S = 1567, P = 240) + "\n" prepend_gcode += self.putValue(M=300, S = 1567, P = 180) + "\n" prepend_gcode += self.putValue(M=300, S = 987, P = 120) + "\n" prepend_gcode += self.putValue(M=300, S = 987, P = 120) + "\n" J'ai 14 fois plus de lignes que l'extrait ci-dessus.
  2. Bonjour, petite info sur celles et ceux qui utilises "Pause At Height" et autres extensions post-traitement sur Cura 4.6.1 : Dans le gcode généré par la nouvelle version de Cura, la commande de changement de Z n''est plus située dans la section correspondant à la couche concernée mais à la fin de la section précédente. Avant on avait ça : ;LAYER:3 ;MESH:Trotteuse v3.stl G0 X104.6 Y66.539 Z0.9 ;TYPE:WALL-OUTER G1 F1800 X103.529 Y66.272 E115.05766 Maintenant ça ressemble à ça : MESH:NONMESH G0 F600 X87.405 Y84.577 Z1.2 G0 F6000 X85.594 Y101.819 ;TIME_ELAPSED:2197.928355 ;LAYER:5 M204 S1800 M205 X8 Y8 ;TYPE:WALL-INNER ;MESH:Coeur BZH a garan 4.stl G1 F3600 X85.58 Y101.949 E1815.6317 Dans un cas le G0 Z suit le ;LAYER: dans l'autre, il le précède. Du coup le calcul de l'emplacement est erroné, la pause intervient une couche trop tôt.
  3. Bonjour, pourquoi faire simple quand on peut faire compliqué. Pour ne plus avoir de problème avec la broche qui tombe, j'ai refait un support qui intègre un servomoteur. Dans Slic3r, j'ajoute les instructions pour que la broche soit bloquée au moment de démarrer l'impression, et j'ai ajouté une ligne dans Marlin pour libérer la broche quand on veut la faire sortir. Démonstration en images qui bougent. V_20180711_194955_vHDR_Auto.mp4
  4. Si le BLtouch clignote, c'est qu'il est en erreur. Pour le piloter, il faut utiliser les commandes : M280 P0 S10 pour faire descendre la broche M280 P0 S90 pour faire monter la broche M280 P0 S120 pour lancer la procédure d'auto-test (il monte et il descend) M280 P0 S160 pour arrêter l'alarme. Tant que l'auto-test ne fonctionne pas, inutile d'aller plus loin, tu risques de casser ta buse sur ton plateau. S'il ne décolle pas du mode erreur, il faut régler le BLtouch avec une clé Allen. C'est relativement empirique. Vidéo utile (même si tu n'as pas encore eu ce problème, ça viendra) :
  5. Sur github, la dernière version est la 1.1.8 du 25 décembre 2017. C'est celle que j'utilise. J'ai le paramètre #define MOTHERBOARD BOARD_GT2560_REV_A_PLUS qui correspond mieux à ta carte. J'ai trouvé aussi que la doc n'était pas à la hauteur (euphémisme).
  6. Bonjour P0pR0ck5 Quel version de firmware as-tu ? Quels sont les changements réalisés dans le firmware pour prendre en compte le BLtouch ? Quelle est la valeur de MOTHERBOARD dans configuration.h ? Cordialement.
  7. Bonjour hibou39, je ne comprends pas bien où est ton problème. Si le "palpeur fait son cycle," il te manque quoi ? Cordialement.
  8. Bonjour, le Z-offset dépend de la hauteur à laquelle se déclenche le palpeur. Et dépend donc du réglage de la petite vis. Donc, il faut recommencer le réglage de l'offset si on change de BLTouch ou si on modifie son réglage.
  9. Bonjour, j'apporte une petite nuance sur l’intérêt de faire le Bed Leveling avec uniquement 3 points ou davantage. Il y a plusieurs facteurs qui peuvent entrainer une différence de distance entre la buse et le plateau : L'horizontalité du plateau La planéité du plateau La rectitude de l'axe des X Si on ne prend en compte que les 2 premiers facteurs, un test à 3 points est suffisant. Dans la pratique (cas d'une cartésienne avec déplacement du plateau en Y et déplacement de la tête sur l'axe des X) on constate que la tête d'extrusion est légèrement plus basse au milieu du plateau (l'axe des X est à sa flèche maximum) que sur les bords. C'est variable en fonction de la rigidité de cet axe. Si c'est un profilé alu, il y aura peu de flèche (non mesurable). Si c'est une barre de 6mm de diamètre pour une largeur de 500mm de plateau, ce n'est plus négligeable du tout. Dans ce cas, il faut 6 points de test, 3 colonnes réparties sur X et 2 lignes réparties sur Y. Pour vérifier la flèche, imprimer un rectangle qui fait toute la largeur du X, quelques millimètres en Y et 2 ou 3 couches d'épaisseur. J'espère avoir été clair.
  10. Bonjour, Z_CLEARANCE_DEPLOY_PROBE permet de dire de combien de millimètres il faut relever l'extrudeur avant de déployer le palpeur. Si on est trop bas, la broche touchera le plateau directement. Z_CLEARANCE_BETWEEN_PROBES permet de dire de combien de millimètres il faut relever l'extrudeur avant de se déplacer vers le point de test suivant. S'il faut passer par dessus les pinces qui tiennent la plaque de verre, il faut augmenter ce paramètre. Si le palpeur se met en alarme, c'est plutôt un problème de réglage de la petite vis ou de faible magnétisation de la broche. Enlève la vis, sort la broche par le dessus et frotte sa partie aimantée sur un aimant puissant. Remet la broche et la vis et règle la vis pour que l'auto-test ne passe jamais en erreur.
  11. Bonjour, je pense qu'il y a une petite confusion. Les instructions suivantes servent pour le décalage horizontal entre l'extrudeur et le palpeur : 686 #define X_PROBE_OFFSET_FROM_EXTRUDER 3 //10 // X offset: -left +right [of the nozzle] 687 #define Y_PROBE_OFFSET_FROM_EXTRUDER -45 //10 // Y offset: -front +behind [the nozzle] Ce n'est pas là qu'on définit le décalage vertical. Ensuite, on applique la procédure de hidius pour régler ce décalage vertical. Si le problème vient du palpeur qui n'est pas au-dessus du plateau, ça se règle dans le fichier de configuration. Et s'il n'y avait pas de confusion et que c'était clair pour tout le monde, je viens juste d'enfoncer une porte ouverte ...
  12. Bonjour, pour prendre en compte le 3D Touch, il y a quelques modifications à apporter au fichier de configuration. Voici des extraits de mon fichier de configuration. Les numéros de ligne correspondent à la version 1.1.8 de Marlin. Il faut d'abord que l'engin soit reconnu. On active la ligne définissant BLTOUCH. Personnellement j'ai allongé le délai permettant d'attendre la fin du mouvement de la broche avant de continuer. 637 /** 638 * The BLTouch probe uses a Hall effect sensor and emulates a servo. 639 */ 640 #define BLTOUCH 641 #if ENABLED(BLTOUCH) 642 #define BLTOUCH_DELAY 750 // 375 // (ms) Enable and increase if needed 643 #endif Ensuite (et c'est peut-être de là que vient ton problème), il faut déclarer le décalage entre ton extruder et ton BLTouch. Si tu laisse ces valeurs à zéro, il placera l'extrudeur à l'endroit où il faut mesurer le Z et ton 3DTouch sera ailleurs. 667 /** 668 * Z Probe to nozzle (X,Y) offset, relative to (0, 0). 669 * X and Y offsets must be integers. 670 * 671 * In the following example the X and Y offsets are both positive: 672 * #define X_PROBE_OFFSET_FROM_EXTRUDER 10 673 * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 674 * 675 * +-- BACK ---+ 676 * | | 677 * L | (+) P | R <-- probe (20,20) 678 * E | | I 679 * F | (-) N (+) | G <-- nozzle (10,10) 680 * T | | H 681 * | (-) | T 682 * | | 683 * O-- FRONT --+ 684 * (0,0) 685 */ 686 #define X_PROBE_OFFSET_FROM_EXTRUDER 3 //10 // X offset: -left +right [of the nozzle] 687 #define Y_PROBE_OFFSET_FROM_EXTRUDER -45 //10 // Y offset: -front +behind [the nozzle] 688 #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] Optionnellement tu peux demander à doubler chaque mesure : 702 #define MULTIPLE_PROBING 2 Il est intéressant, en phase de test de pouvoir mesurer la fiabilité des mesures du palpeur. En utilisant la commande M48, on peut lui demander de faire 10 mesures de suite et d'afficher la moyenne et l'écart type : 725 // Enable the M48 repeatability test to test probe accuracy 726 #define Z_MIN_PROBE_REPEATABILITY_TEST Il faut choisir une méthode de nivellement du lit (Bed leveling). Personnellement, j'utilise une plaque de verre de 4mm et j'estime que mon plateau est parfaitement plan. Du coup il suffit de 3 points de mesure : 872 #define AUTO_BED_LEVELING_3POINT 873 //#define AUTO_BED_LEVELING_LINEAR 874 //#define AUTO_BED_LEVELING_BILINEAR 875 //#define AUTO_BED_LEVELING_UBL 876 //#define MESH_BED_LEVELING Quelle que soit la méthode, il faut la paramétrer. Pour les 3 points, il faut leurs coordonnées : 946 #elif ENABLED(AUTO_BED_LEVELING_3POINT) 947 948 // 3 arbitrary points to probe. 949 // A simple cross-product is used to estimate the plane of the bed. 950 #define ABL_PROBE_PT_1_X 192 //15 951 #define ABL_PROBE_PT_1_Y 8 //180 952 #define ABL_PROBE_PT_2_X 8 //15 953 #define ABL_PROBE_PT_2_Y 8 //20 954 #define ABL_PROBE_PT_3_X 100 //170 955 #define ABL_PROBE_PT_3_Y 146 //20 Bien évidemment, les nombres dans mon fichier de configuration correspondent à mon imprimante (Geeetech Prusa I3 X). A adapter, bien sûr.
  13. Bonjour, mes problèmes sur le 3DTouch sont résolus. Il n'y a pas de bug dans Marlin et tous mes problèmes étaient matériels. A noter : si la broche du 3DTouch a tendance à sortir pendant l'impression, il faut démonter cette broche et la ré-aimanter. J'ai testé la version 1.1.8 et la méthode de Bed Leveling à 3 points et ça fonctionne.
  14. Bonjour, Il y a 2 connecteurs qui partent de la carte et qui vont vers le lecteur SD et vers l'afficheur LCD. Les connecteurs sont identiques et il n'y a pas de détrompeur. Alors question toute bête : as-tu bien connecté la bonne nappe sur le bon plot ? Tu ne donnes aucune information sur l'écran. Ni sur la partie du fichier de configuration que tu as modifiée pour le faire fonctionner. Par exemple, j'utilise un écran LCD 20x4 et j'ai : #define ULTRA_LCD // Character based //#define DOGLCD // Full graphics display Le titre du sujet prête à confusion. Ce n'est pas un problème de 3D-Touch sur GT2560 Rev A+ mais d'écran LCD sur GT2560 Rev A+.
  15. Fausse piste. Ça a fonctionné une fois. Mais la broche continue de refuser de sortir pour G29 alors qu'elle sort pour G28.
  16. Bonjour, suite du retour sur le 3DTouch. Après quelques heures de débogage j'ai identifié un bug dans Marlin 1.1.7. Dans le traitement de la commande G29, il manque l'instruction endstops.enable (true) ; qui permet le fonctionnement du 3DTouch. A ajouter a priori dans setup_for_endstop_or_probe_move (). Je continue mes analyses pour vérifier qu'il n'y a rien d'autre qui cloche.
  17. Bonjour, en fait, dans le fichier Conditionals_LCD.h qui est inclus après le Configuration.h, on trouve les lignes : #ifndef BLTOUCH_DELAY #define BLTOUCH_DELAY 375 #endif Donc on ne décommente la ligne que si on modifie la valeur.
  18. Bonjour, voici un retour sur l'utilisation du 3DTouch. L'imprimante est une Geetech i3 X dotée d'une carte GT2560 A+. Cette carte possède une connectique en plus pour le 3DTouch ce qui ne nécessite plus de souder une broche. On utilise alors la pin 11 (au lieu de la 32 destinée au Z_MAX). Il y avait d'ailleurs un bug dans le fichier pins_GT2560_REV_A_PLUS qui a été corrigé dans la Marlin 1.1.8. Il y a 2 fonctions intéressantes : la détermination du Z_MIN et le BED_LEVELING. Le Z_MIN est beaucoup plus précis avec le BL_TOUCH qu'avec un simple interrupteur et ça marche plutôt bien. Mais : j'ai eu quelques problèmes avec la broche qui se relâche en cours d'impression et qui force sur l'objet en cours d'impression et le décolle. Ça vient peut-être d'un faux contact : j'ai démonté mes rallonges de fils (le 3DTouch n'est pas livré avec des fils très longs), fait quelques soudures, scotché les connecteurs. Pour le moment le problème n'est pas réapparu. Et surtout : quand je lance l'autoleveling (commande G29 à lancer juste après une commande G28), la broche ne descend pas, l'extrudeur touche le plateau avant la broche et ... arrêt d'urgence. Comment fonctionne l'engin : il comporte 5 fils. 3 sont utilisés pour envoyer des commandes et 2 sont utilisés pour récupérer son état. Les commandes sont celles d'un servomoteur : un angle de 10° est la commande déploiement, 90° de repli, 120 ° de lancement de l'auto-test et 160° le reset de l'alarme. L'état passe à 1 si la broche déployée vient de rencontrer un obstacle. Il n'y a pas moyen de savoir si la broche est déployée ou repliée. On ne peut donc pas ajouter un test après la commande de déploiement pour vérifier qu'elle a bien été prise en compte. J'ai testé Marlin 1.1.16 et Marlin 1.1.17. Je m'attaque bientôt à la 1.1.18.
  19. Oui, à part le Configuration.h, bien sûr. J'ai du aussi bidouiller le language_fr pour enlever les accents : ils ne passent pas sur mon afficheur.
  20. Désolé, je viens seulement de prendre connaissance de la demande. Marlin 1.1.6 est sur Github. Je joins le fichier corrigé. pins_GT2560_REV_A_PLUS.h
  21. Bonjour, J'ai acheté la Geeetech Prusa I3 X équipée de la GT2560 Rev A+. Geeetec m'a offert le 3DTouch et je l'ai installée dessus. J'ai un peu tâtonné (euphémisme). Je n'ai pas compilé le firmware fourni parce qu'il fallait utiliser une version ancienne de l'IDE Arduino. J'ai gardé ma version récente de l'IDE et j'ai chargé Marlin 1.1.6. Dans les exemples fournis avec, il y a le "Configuration.h" pour "I3_Pro_X-GT2560" qui contient "#define MOTHERBOARD BOARD_ULTIMAKER". Or dans "boards.h" on trouve "#define BOARD_GT2560_REV_A_PLUS 75 // Geeetech GT2560 Rev. A+ (with auto level probe)". J'ai donc changé le "Configuration.h" pour y mettre "#define MOTHERBOARD BOARD_GT2560_REV_A_PLUS". Si on veut utiliser un 3DTouch, le problème, c'est qu'il y a une erreur dans "pins_GT2560_REV_A_PLUS.h". Il faut supprimer (ou commenter) les lignes 33 et 34. Si on utilise un 3DTouch/BLTouch, il faut définir SERVO0_PIN à 11. Mais pas à 32 qui correspond au ZMAX, soit à la soudure qu'on devait réaliser sur la GT2560 Rev A précédente. Pour résumer : la Geetech GT2560 Rev A+ est reconnue par Marlin 1.1.6 et la dernière version de l'IDE Arduino.
×
×
  • Créer...