
V3DP
Membres-
Compteur de contenus
405 -
Inscrit(e) le
-
Dernière visite
À propos de V3DP
- Date de naissance 05/01/1968
Information
-
Genre
Masculin
-
Lieu
Conflans Sainte Honorine
-
Intérêts
Services Impression 3D
-
Imprimantes
Mankati Fullscale XT
Palette 3 Pro
Ultimaker 3 Extended
Ultimaker S5
BCN3D Epsilon W50
Qidi Tech X Max 3
Elegoo Saturn 3 Ultra
Visiteurs récents du profil
530 visualisations du profil
Récompenses de V3DP
-
J'ai refait l'input shaper avec l'autre machine à l'arrêt. Pas de changements notables. J'ai regardé le jeu dans la tête d'impression. Pas de rotation suivant l'axe X ou Y, mais une légère rotation suivant l'axe Z. Je pense à un problème de jeu axial entre les douilles frittées et les deux plaques qui constituent la tête d'impression et supportent la carte, le moteur, l'extrudeur et la hotend. Ca m'ennuie d'ouvrir car les cannons de vissage sont assez fragiles. Comme la qualité est plutôt bonne après les derniers réglages, je vais laisser pour l'instant. Merci pour l'aide
-
@Savate Merci pour le retour. Au tensiomètre de courroie, j'avais exactement les mêmes valeurs sur les 2 courroies et ce sur plusieurs brins différents. Voici les graphiques en question. A nouveau les mesures ont été faites alors que l'autre machine tournait
-
@fran6p Merci pour ton retour. J'avais vu dans la doc le graphe en question, mais pas creusé plus car besoin de la machine pour une production. Pour ce qui est du sweeping, il est maintenant par défaut dans la fonction, mais je n'ai pas trouvé dans la doc comment le désactiver pour vérifier si le problème est lié à une résonance ou a un souci dans le cheminement des courroies. Je pense que le souci pourrait venir du fait que sur la même table j'ai la deuxième X Max 3 qui était en train de tourner et donc induire des vibrations. Mais c'est peut être aussi un problème de jeu entre les douilles en bronze et les deux plaques en plastique de la tête. Ca m'ennuie de démonter la tête car les plaques sont pas prévues pour être démontées remontées trop souvent et le plastique se fend un peu trop facilement. Je referai des mesures avec seulement cette machine qui tourne demain entre deux jobs. Pour l'instant la qualité est revenue à un bon niveau, c'est ce qui compte.
-
Quelques nouvelles de ce problème, qui semble maintenant résolu. J'ai donc vérifié les tensions de courroie au tensiomètre, nettoyé et regraissé tous les axes (X, Y et Z), vérifié qu'il n'y avait pas de point dur dans les mouvements X et Y. Pas de soucis. Par contre j'ai repéré une accumulation de débris sur les galets des courroies. Donc nettoyés non sans mal au coton tige + IPA. Il s'agit certainement de poussières d'usure des courroies coté lisse. La machine est certainement à plus de 2000 heures d'impression, mais comme je l'ai libérée j'ai perdu les compteurs. Ensuite j'ai fait marcher Klippain Shake 'n Tune. Un léger ajustement de l'input shaper sur l'axe X et l'axe Y, mais assez faible. Est-ce que c'est l'input shaping qui a réglé le problème ? Le nettoyage des galets ? Le graissage (même si je n'y crois pas trop car je suis soigneux là dessus). Par contre j'ai, d'après Shake Tune, potentiellement un souci si on en croit le résultat de la comparaison des courroies. Est-ce que quelqu'un pourrait m'expliquer le fait d'avoir plusieurs pics et surtout le graphique de droite ? Est-ce que quelqu'un pourrait me donner les paramètres de la macro en question pour ne pas avoir le sweeping ?
-
Commandé les Sunon 20 * 20 * 8 chez TME avant hier, reçus hier après midi. Je ne connaissais pas ce fournisseurs, mais rapide, bons prix pour cette référence et communication efficace.
-
Après plusieurs heures d'impression en ASA, le problème est toujours présent, moins important mais présent. Pas de photos car projet confidentiel. Je vais revérifier tous les guidages, les tensions de courroie, graissage (même si fait très très récemment) et refaire l'input shaping. Tout le système d'extrusion était neuf ou complètement propre (pyrolyse + Ultrasons dans l'acétone + brossettes pour aller dans les coins...) et n'a fait que 15 heures avec le PLA avant de passer en ASA après un cold pull au nylon. Si après les réglages de la mécanique il y a toujours un soucis, je changerais la buse, le heatbreak et d'adaptateur triangle lab pour des tous propres; Toujours preneur de pistes de résolution.
-
Bon après 15h d'impression, résultat des courses bof. Plus de blocage de tête. La qualité d'impression s'est un peu améliorée, mais le défaut est toujours présent. J'avais imprimé cette même pièce en Mars, sans ce souci de "banding". Mais avec une matière légèrement différente : ePLA de chez FormFutura au lieu d'un recyclé interne. Donc le souci serait sur la matière et / ou les réglages pour cette bobine. J'ai changé de production sur cette imprimante, et elle tourne sans soucis avec de l'ASA. Si quelqu'un a une idée pour ce problème de "banding" je suis preneur.
-
Je viens de rechercher pour remplacer les petits ventilateurs de la tête d'impression qui refroidissent l'extrudeur. Ce que j'ai trouvé de plus approchant, dans les fabricants reconnus, c'est le Sunon suivant, déjà utilisé en remplacement de celui qui refroidit le RP2040 sur mes 2 X Max 3 depuis de nombreux mois. A l'époque acheté chez Rs Components, mais meilleur prix chez TME ce jour https://www.tme.eu/fr/details/mf20080v1-a99-a/ventilateurs-dc-5v/sunon/mf20080v1-1000u-a99/ Plus performant pour la même puissance absorbée, mais 1,5 mm plus épais. A priori ça devrait passer tout juste avec l'extrudeur. Pour le RP2040, j'ai fait un post complet sur le remplacement de l'origine avec ce ventilateur. J'ai regardé pour le blower de 120 mm. J'avais pris ce modèle là en 24V 2 fils. J'ai un ventilateur d'origine qui couine un peu... https://fr.aliexpress.com/item/33021068426.html?spm=a2g0o.cart.0.0.202b378dh3xM9T&mp=1&pdp_npi=5%40dis!EUR!EUR 15.99!EUR 15.99!!EUR 15.99!!!%402140f54217477470625961261e83d1!12000036055964022!ct!FR!4826755631!!2!0&gatewayAdapt=glo2fra J'ai trouvé (plus cher) celui ci sur un site allemand https://www.evg.de/en/12032ga-24m-aa-00-nmb_24v_dc-blower_120x120x32_48_mh Pas sur que la différence de prix vaille le coup par rapport à Ali.
-
J'ai progressé ce matin sur le problème, reste à voir si c'est bien ça qui générait le souci de qualité de la surface. Voici le coupable pour les problèmes de heatcreep et le blocage de la tête. C'est le ventilateur qui refroidit l'extrudeur Il donnait l'impression de tourner, mais ne soufflait pas d'air. Il devait osciller .... Remplacé par un de ceux récupéré en changeant celui refroidissement le RP2040 à l'arrière de la tête d'impression. Ca fait deux heures que ça tourne sans problèmes de blocage de l'extrusion. Pour ce qui est de la qualité, on verra demain matin quand la pièce sera imprimée car plus au bureau. A la caméra ça a l'air mieux.
-
Bonjour à tous. Je sèche un peu sur un problème de qualité d'impression sur une de mes X Max 3. Il y a comme un banding, mais incliné, touchant plusieurs couches. La déformation est nettement perceptilble et pour la mise en peinture ça va être coton. C'est une impression en PLA (r PLA de FormFutura) en 100 microns. J'utilise ce matériau depuis de nombreuses années et c'est la première fois que j'ai ce phénomène. La machine a été tunée (tension des courroies, input shaping, shake n' tune) et a produit des pièces de haute qualité à 60 microns avec le matériau de fin Avril au 10 mai. Mécaniquement la machine a l'air en bon état et a produit des pièces pour ce modèle sans défauts, mais avec une autre bobine du même filament. C'est peut être un souci lié à la bobine en question avec en plus des difficultés d'extrusion (heatcreep et blocage de la tête au final). J'ai changé la hotend complète et refait le PID, vérifié les refroidissements .... Température plateau 60°C, hotend à 235°C pour une MVS de plus de 20 mm3/s, machine ouverte devant et au dessus. Je pense à de la vibration, vu que la piste température d'extrusion est surtout avec un banding bien horizontal. Merci pour vos conseils. J'oubliais, les vitesses sont toutes en dehors de la plage critique entre 70 et 110 m/min et les périmètres ne sont pas ralentis sur les overhangs. Slicing avec Orca 2.3
-
@pommeverte @fran6p Merci pour votre aide et les pistes. J'ai trouvé le problème.... donc on peut faire propre en utilisant les méthodes fournies par Klipper. En fait la valeur renvoyée par printer['output_pin partfan'].value est un décimal entre 0 et 1. Et la commande M106 attend une valeur entre 0 et 255, qui peut être décimale également. Donc en faisant une petite multiplication ça fonctionne. Voici les deux macros fonctionnelles [gcode_macro PAUSE] description: Pause the actual running print rename_existing: PAUSE_BASE gcode: ##### get user parameters or use default ##### {% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %} {% set idle_timeout = client.idle_timeout|default(0) %} {% set temp = printer[printer.toolhead.extruder].target if printer.toolhead.extruder != '' else 0 %} {% set restore = False if printer.toolhead.extruder == '' else True if params.RESTORE|default(1)|int == 1 else False %} {% set partfan_speed = printer["output_pin partfan"].value %} {% set filterfan_speed = printer["output_pin filterfan"].value %} {% set sidefan_speed = printer["output_pin sidefan"].value %} ##### end of definitions ##### SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=last_extruder_temp VALUE={temp} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=last_extruder_restore VALUE={restore} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=last_partfan_speed VALUE={partfan_speed} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=last_filterfan_speed VALUE={filterfan_speed} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=last_sidefan_speed VALUE={sidefan_speed} # set a new idle_timeout value {% if idle_timeout > 0 %} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=restore_idle_timeout VALUE={printer.configfile.settings.idle_timeout.timeout} SET_IDLE_TIMEOUT TIMEOUT={idle_timeout} {% endif %} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=idle_state VALUE=True M104 S0 M106 S0 M106 P2 S0 M106 P3 S0 SFS_DISABLE PAUSE_BASE {client.user_pause_macro|default("")} _TOOLHEAD_PARK_PAUSE_CANCEL {rawparams} [gcode_macro RESUME] description: Resume the actual running print rename_existing: RESUME_BASE variable_last_extruder_temp: 0 variable_last_extruder_restore: False variable_last_partfan_speed: 0 variable_last_filterfan_speed: 0 variable_last_sidefan_speed: 0 variable_restore_idle_timeout: 0 variable_idle_state: False gcode: ##### get user parameters or use default ##### {% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %} {% set velocity = printer.configfile.settings.pause_resume.recover_velocity %} {% set sp_move = client.speed_move|default(velocity) %} {% set runout_resume = True if client.runout_sensor|default("") == "" # no runout else True if not printer[client.runout_sensor].enabled # sensor is disabled else printer[client.runout_sensor].filament_detected %} # sensor status {% set can_extrude = True if printer.toolhead.extruder == '' # no extruder defined in config else printer[printer.toolhead.extruder].can_extrude %} # status of active extruder {% set do_resume = False %} {% set prompt_txt = [] %} ##### end of definitions ##### #### Printer comming from timeout idle state #### {% if printer.idle_timeout.state|upper == "IDLE" or idle_state %} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=idle_state VALUE=False {% if last_extruder_restore %} # we need to use the unicode (\u00B0) for the ° as py2 env's would throw an error otherwise RESPOND TYPE=echo MSG='{"Restoring \"%s\" temperature to %3.1f\u00B0C, this may take some time" % (printer.toolhead.extruder, last_extruder_temp) }' M109 S{last_extruder_temp} M106 S{last_partfan_speed * 255} M106 P2 S{last_sidefan_speed * 255} M106 P3 S{last_filterfan_speed * 255} {% set do_resume = True %} {% elif can_extrude %} {% set do_resume = True %} {% else %} RESPOND TYPE=error MSG='{"Resume aborted !!! \"%s\" not hot enough, please heat up again and press RESUME" % printer.toolhead.extruder}' {% set _d = prompt_txt.append("\"%s\" not hot enough, please heat up again and press RESUME" % printer.toolhead.extruder) %} {% endif %} #### Printer comming out of regular PAUSE state #### {% elif can_extrude %} {% set do_resume = True %} {% else %} RESPOND TYPE=error MSG='{"Resume aborted !!! \"%s\" not hot enough, please heat up again and press RESUME" % printer.toolhead.extruder}' {% set _d = prompt_txt.append("\"%s\" not hot enough, please heat up again and press RESUME" % printer.toolhead.extruder) %} {% endif %} {% if runout_resume %} {% if do_resume %} {% if restore_idle_timeout > 0 %} SET_IDLE_TIMEOUT TIMEOUT={restore_idle_timeout} {% endif %} # restore idle_timeout time {client.user_resume_macro|default("")} _CLIENT_EXTRUDE SFS_ENABLE RESUME_BASE VELOCITY={params.VELOCITY|default(sp_move)} {% endif %} {% else %} RESPOND TYPE=error MSG='{"Resume aborted !!! \"%s\" detects no filament, please load filament and press RESUME" % (client.runout_sensor.split(" "))[1]}' {% set _d = prompt_txt.append("\"%s\" detects no filament, please load filament and press RESUME" % (client.runout_sensor.split(" "))[1]) %} {% endif %} ##### Generate User Information box in case of abort ##### {% if not (runout_resume and do_resume) %} RESPOND TYPE=command MSG="action:prompt_begin RESUME aborted !!!" {% for element in prompt_txt %} RESPOND TYPE=command MSG='{"action:prompt_text %s" % element}' {% endfor %} RESPOND TYPE=command MSG="action:prompt_footer_button Ok|RESPOND TYPE=command MSG=action:prompt_end|info" RESPOND TYPE=command MSG="action:prompt_show" {% endif %} Merci encore pour l'aide
-
Merci. J'ai trouvé aussi ça pendant qu'on échangeait. Je n'ai plus de message d'erreur sur mes macros. Pour autant ça ne fonctionne pas lors du RESUME. Je pense à un problème de format de la valeur obtenue. Pas sur .... le sujet avance proprement pour l'instant, mais il reste ce dernier point à traiter
-
Ben non, car c'est la macro qui fonctionne pour FreeDi, donc avec des sections output_pin et non pas fan_generic...
-
Test fait, si on définit le ventilateur auxiliaire en fan_generic, cela ne fonctionne plus avec l'écran flashé FreeDi La macro M106 a bien été redéfinie pour gérer la notion d'outil (Px) pour fonctionner avec FreeDi (c'est bien décrit dans son GitHub) @pommeverte Merci pour l'idée. A défaut d'être élégante, j'ai peur que ça ne marche pas si simplement que ça : si on passe une variable (3 en fait) pour définir le dernier état des ventilateurs au niveau de la macro M106, comme la macro PAUSE va appeler la macro M106 pour arrêter les ventilos, les variables vont être remises à 0. Une idée serait de sauvegarder ces valeurs dans une nouvelle variable juste avant le changement d'état des ventilateurs par la macro PAUSE et passer ces variables à la macro RESUME. En fait ca reviendrait à faire ce que Klipper fait théoriquement nativement, sauf que la propriété native .value pour l'objet output_pin ne renvoie pas l'attendu. Si je ne trouve pas comment fonctionner avec la mécanique native de Klipper c'est ce que je ferais.