Aller au contenu

Filament ABS

Paléo-impression3D :)


Messages recommandés

Bonjour à tous,

-d9Jt81P3kWbI5NZGf5JdTFA3WoTcG8EWu6eFERSXUkrilpWuPvZU9AVxIrNBFzrm8E_PgzwVSuvwzIzKGGSQhzdqxH5SSB2MC7qXUf1em1f5H8kVhCTYFJQrS2h71SbRphLGq26g-HOUuQqrJvWU0fIGu_iULQg0BlhcN3R0bRc40I7g2MK2nNdeMJbsjoRyuWiv5Rmx-sA_nBaqvRq2s-qW9KDvb5JWbLD3yK5Io_TNCKqrAOUEtTEdHCiPSCUuHV5Y8TN1aus7yHnk9gxWZnZWs6Jeynt2dEznAlwf91TsBaOZEIif73RGPuStaU_qaaThzhBJeW6iacuzl_DwGPf-G76dGC9ZZKweTHRmO-UgfOLiCdDpXOELKGd1JzWZgbeB59tEOQefr9xRClujWMajfQBJcUzegFsQQExmeHw2NR5urtWFujz2BRlBLjY0u8CnYhw_427tAItdtOCgcYsj6itgqf33MKBxir0YC2BWe5vDEu8BKz92HB13n-7StCRltlSe3qfJvYfsGdEMOkvzZaX-STvNccOW0iOAOofbjfeq8YNNiCfiaTpJXCGf2R-CHChC5fIy2dRa7aeqCV1EnfjYiF2tRtA0fPC1vkhR2aXrnO3P9dz7_KpB26Itt4kgQl4WXecEnJh9ZI4enhPms999HwQm8-jlSsY3oFiUmkqS87C7bpbPoF_MA=w402-h714-no?authuser=0

Un ami prof de techno m'a demandé si il était possible de ressusciter une Freescuplt double tête achetée chez Pearl aux alentours de l'an de grâce 2014.

Je m'attendais au début principalement à un soucis de réglage et de paramétrage de trancheur. Grosse erreur de ma part.

C'est un clone/rebrand de Malyan M180 Dual Head qui est un clone chinois de Replicator R1D.

Le seul format X3G reconnu par les firmwares makerbot (en tout cas de l'époque) a pas mal compliqué la chose.

Le X3G est un quasi équivalent du gcode mais:

- c'est binaire

- les commandes ne sont pas des demandes de déplacement en mm mais les commandes de demande de nombre de step selon l'axe.

Makerbot le justifie par les performances mais le manque de communauté et de compatibilité en font en fait un sacré handicap.

J'ai galéré qq jours mais j'ai enfin trouvé des réglages qui fonctionnent avec un Cura récent (4.6.1).

C'est certes une vénérable arrière grand-mère mais la rigidité de son chassis est exemplaire et n'ayant jamais pu jouer jusqu'à maintenant avec de la double extrusion, je la trouve finalement plutôt cool.

J'ai trouvé pas mal d'à peu près niveau doc sur le net et merci les constructeurs pour l'abandon du support.

Il ya un plugin pour Cura X3GWriter qui transforme le gcode en X3G, mais quand la machine n'est pas reconnue, le plugin génère à la volée un fichier de configuration avec des valeurs choisies au pif.

La reprise en main de la machine s'est donc faite via les étapes suivantes:

Les caratéristiques de la bête:

(merci le firmware pourri de freesculpt, même après avoir fait un home, impossible de faire afficher au LCD la position courante -_- )

La carte serait une megatronics mais je n'ai rien trouvé sur l'écran (si ce n'est que marlin2 connait un écran MALYAN_LCD (qui lui est tactile).

La vis du Z me fait pas mal envie avec son pitch de fou:

4FF6F9TE_FKS6VDQ5SSR2a9f3vw8SLbN7sMExWDGhamQ1O6rqCo3z_iew8mHohLQCE5HoqqR-zShDNUfo9iWdkLGudQllodOzaE_drLqNNG5Hs_mwjqiBGP7X24XCUyjNCLJyPEcwO_mrwKxzMDvz62nHZIfERx25JlkwxhCkp7yUboPD0LEVGBw-21N0aoWrDWN0UZFksXbVFGe3r3nr0KlpwjUVTFRgy5PK7sBZXFiJfpffN2mZRRnY2xbnYlx_8i_NFTlXopTR0sa8GdNONfwR4e4dTk2ksdAWFyKuAHTENhYmEI8Wu26L5dfuM0-6mrx_3G5uVS5tSgltsyT74QSHYI7A6JSn4tgKj7Hp0WX2rPHiiPxmmYqTsvqw7d10Guj8GJYqMRGKXdXLCvtOQhEk6ydTF7HEX6L3fqOx-89T3a4kmxtAycvFQ_C5c0ydIs5J2XxNUX2wUwHM2jP7PTPHkMtWMR7H2rpGL1zt6rVZZTpVTPFKiz7I4GhELwwOdbQzdnoXA3sS5M7va5Ar66XEPOVAOc8A_1C_nreZKmhUYWqVdOQIXYJCWWryFi4NeXoPJmcAXg9v3Q-ec3tpIi-m3v5u9HBgG6GI5H-GmCVAS7VjVS1Ym6ME8YtcuaDoBnFk5z-NZiqqNnOhoBnoZvJaZRyAf99_-uSXCm-5lL1oitzbJEE0GMdghFPBw=w1270-h714-no?authuser=0

La géométrie X:230mm, Y:145mm et Z:160mm.

Les nozzles ont des diamètres différents: 0.35 pour le 1er et 0.40 pour le 2eme, plateau en verre qui adhere bien (le firmware contient un print de test qui monte le plateau à 80, j'ai pris cette valeur comme référence pour mes premières couches.

 => Les endstops sont des Max pour les X et Y et le Min pour le Z

- calibration de la double tête: 

  => j'ai mesuré un espace de 34mm entre les nozzles

Comme déjà indiqué, le X3G envoie des valeurs en steps par axe pour les déplacements, voici les caractéristiques de la machine:

X: 92.5 steps/mm - Y: 92.5 steps/mm, Z: 1600steps/mm et pour les extrudeurs 100steps/mm chacun

 

Déclaration de la machine dans Cura:

image.png.7068fa8c48a7ab8ade4459a4987556ae.png

(Impossible de changer les X/YMin/Max)

Voici le GCode de démarrage (une fois les extrudeurs et plateau chauds):

; -- start of START GCODE –
M73 P0 (enable build progress)
G90 (set positioning to absolute)
(**** begin homing ****)
G162 X Y F2000 (home XY axes maximum)
G92 X230 Y145 (definit la position actuelle comme X230Y145)
G161 Z F900 (home Z axis minimum)
G92 Z0 (definit la position actuelle comme Z0)
G1 Z5 (descend de 5mm)
G161 Z F300 (home Z axis minimum)
(**** end homing ****)
G1 X0 Y0 Z10 F1000 (déplacement à X0Y0Z10 )
G130 X0 Y0 A0 B0 (reset des valeurs VRef des moteurs)
G130 X127 Y127 A127 B127 (Set Stepper motor Vref to defaults)
; -- end of START GCODE –

(La documentation trouvée sur le net indique le chargement des offsets de la config par défaut:

;M132 X Y Z A B (Recall stored home offsets for XYZAB axis)

==> Ca fout le bordel (les impressions démarrent quasi au XYMax), je l'ai supprimé.

La logique de makerbot est d'extraire la conf de la machine, ouais, ok, mais alors inscrire des offsets cryptiques inaccessibles, c'est  vraiment une idée à la con)

 

Et le GCode de fin d'impression:

; -- start of END GCODE –
G90 (absolute positionning)
G162 X Y F2000 (home XY axes maximum)
G92 Z0 (define current Z to 0)
G1 Z10 F900 (descend de 10mm)
M18 (disable steppers)
M109 S0 T0 
M104 S0 T0
M73 P100 (end  build progress)
; -- end of END GCODE –

La configuration de l'extrudeur 1:

image.png.ac95e5f7f6a4ca7215978447f299c607.png

L'extrudeur 2:

image.png.196532c68a97430d6f7f5ea77487168b.png

Vous noterez que l'offset entre les nozzles est le double de celui mesuré. Je ne l'explique pas, mais ça marche ainsi. J'aurais bien voulu une théorie.

La conversion de GCode vers X3G:

Cura dispose du plugin X3GWriter (à installer via l marketplace) qui lui-même appelle le binaire gpx (https://github.com/markwal/GPX)

J'ai modifié le script python X3GWriter.py (installé dans ~/.local/share/cura/4.6/plugins/X3GWriter/X3GWriter/ (je n'ai pas le chemin pour les windowsiens, désolé) pour qu'au lieu de générer une conf temporaire en cas de non reconnaissance de la machine, il appelle un fichier de configuration modifiable par l'utilisateur:

Remplacer la ligne (attention le python est strict sur les indentations, un bloc conditionnel doit avoir les mêmes caractères d'indentation pour chaque ligne : ici 4 espaces par indentation)

"                command = self.gpx_command(machine, temp_cfg_name, temp_gcode.name, temp_x3g.name)"

par les deux lignes suivantes (attention au sens du / sous windows contrairement à ce dont vous avez l'habitude):

"                default_gpx_config = 'D:/Chemin/Vers/Configuration.ini'"

"                command = self.gpx_command(machine, default_gpx_config, temp_gcode.name, temp_x3g.name)"

Le fichier de configuration pour la machine (le contenu du fichier ini dont vous devez indiquer le chemin dans le script python):

; http://github.com/makerbot/ReplicatorG/tree/master/machines
;************ MACHINE ************
[machine]
; specifies the nominal filament diameter (either 1.75 or 3.0)
nominal_filament_diameter=1.75
; spesifies the number of extruders on this machine
extruder_count=2
; sets the timeout for homing in seconds
timeout=20
;************ X AXIS ************
[x]
; sets the maximum feedrate for this axis in mm/minute
max_feedrate=4800
; sets the home feedrate for this axis in mm/minute
home_feedrate=500
; sets the number of steps per mm of movement for this axis
steps_per_mm=92.5
; sets the homing direction for this axis
endstop=0

;************ Y AXIS ************
[y]
; sets the maximum feedrate for this axis in mm/minute
max_feedrate=4800
; sets the home feedrate for this axis in mm/minute
home_feedrate=500
; sets the number of steps per mm of movement for this axis
steps_per_mm=92.5
; sets the homing direction for this axis
endstop=0

;************ Z AXIS ************
[z]
; sets the maximum feedrate for this axis in mm/minute
; 5mm/s
max_feedrate=300
; sets the home feedrate for this axis in mm/minute
home_feedrate=300
; sets the number of steps per mm of movement for this axis
steps_per_mm=1600
; sets the homing direction for this axis
endstop=1

;************ RIGHT EXTUDER (A AXIS) ************

[a]
; sets the maximum feedrate for this axis in mm/minute
max_feedrate=1600
; sets the number of steps per mm of extrusion
; Steps/mm is calculated by dividing the 'drive gear steps per revolution' 
; (in this case, equal to motor_steps) by the 'drive gear circumference'
; (drive gear diameter = 10.14) So we get: 1600/(PI * 0.14) = 50.235....
steps_per_mm=100
; sets the number of steps per revolution
motor_steps=1600
; signals if this tool has a heated build platform
has_heated_build_platform=1

;************ LEFT EXTUDER (B AXIS) ************
[b]
; sets the maximum feedrate for this axis in mm/minute
max_feedrate=1600
; sets the number of steps per mm of extrusion
steps_per_mm=100
; sets the number of steps per revolution
motor_steps=1600
; signals if this tool has a heated build platform
has_heated_build_platform=1

 

Vous pourrez ensuite effectuer le tranchage puis l'enregistrer au format x3g (dispo dans les formats de la boite de dialogue)

Le fichier cura.log indique comment s'est déroulé la conversion et vous verrez que tout n'est pas géré notament les commandes de gestion de l'accélération (oh si peu!!!)

Je suis encore en train de creuser ce point mais maintenant elle imprime (je ne vous montre pas de benchy, c'est vraiment pas encore au point niveau températures et refroidissement mais ceci qui a son charme:

image.png.2a7ada0dfacd248abd45853de3058852.png

Sur ce print, l'offset des nozzles n'a pas encore été corrigé et la pièce est justement en train d'être extrudée)

Je reposterai quelques infos d'ici qu'elle retourne en salle de classe émerveiller quelques élèves.

Si parmi les lecteurs de ce forum, certains ont abandonné cette bête, voici peut-être par ce post un moyen de la faire revenir à la vie.

(après j'avoue, arracher l'électronique et la remplacer par du matos moderne, c'est plutôt une bonne idée)

 

@+

Modifié (le) par ka3ros
légères corrections
  • J'aime 2
Lien à poster
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez poster un message et vous inscrire plus tard. Si vous avez déjà un compte, connectez-vous afin de poster avec.

Invité
Répondre à ce sujet…

×   Vous avez copié du contenu avec formatage.   Supprimer le formatage

  Only 75 emoji are allowed.

×   Votre lien a été automatiquement intégré.   Afficher en tant que lien à la place

×   Le contenu sauvegardé a été restauré.   Effacer l'éditeur

×   You cannot paste images directly. Upload or insert images from URL.

  • Sur cette page :   0 membre est en ligne

    Aucun utilisateur enregistré regarde cette page.

  • YouTube / Les Imprimantes 3D .fr

×
×
  • Créer...