Aller au contenu

GO Print

DIY Core XY et Cyclope


ArdToPix

Messages recommandés

Bonjour à vous,

Après la construction, utilisation, optimisation, modification, d'une imprimante de type Prusa I3 pendant 5 ans, l'envie et l’opportunité de construire une nouvelle imprimante c'est présenté.

Je post pour deux raisons, partager mon travail et discuter de l'optimisation d'une machine avec vous.
Merci par avance de l'intérêt porté pour ce projet.

Rapide tour du projet.

Format d'impression : 370 x 390 x 350 mm

-1- L'électronique

  •     Arduino Mega
  •     Ramps 1.4
  •     Driver DRV8825
  •     Alim 12v
  •     Fin de course  -XY- capteur optique IR -Z- mécanique et capteur inductif

-2- L'extrusion

  •     Buse E3D Cyclope (2 entrées, 1 sortie)
  •     2x Extrudeur Titan

-3- Le core XY

IMG_20191119_175500.jpg.ef170d9aa1dc9de9ec90332e3d7f4ed2.jpgIMG_20200131_173056.jpg.1300985b09d2f200ee93f046981a2c79.jpg

  •     Une seul couroie (3m) pour les deux mouvements
  •     Douille en IGUS RJUM
  •     Barre de guidage d16 mm
  •     Poulies montées sur roulement

-4- L'axe Z

IMG_20200306_171407.jpg.eeb23f617312791e408a0f89ac5fb240.jpg

  •     plateau en verre
  •     vis à billes d16 mm
  •     guidage à billes linéaire

-5- Les sofwares

  •     Mega : Marlin 2.0
  •     Pc : Repetier 2.1.6 - trancheur Cura

-6- Le châssis

IMG_20191204_120502.jpg.e3260d782ec99cd660111e4c1368f615.jpg

  •     Profilé en alu

   
La machine a imprimée ça première pièce il y a une semaine environ.

IMG_20200330_234108.jpg.6218a882c6141eed75943b17470046aa.jpg
Depuis, la phase de fiabilisation et d'optimisation a commencée.

Fini :
    Serrage de toutes les vis
    Mise en place du système de refroidissement des pièces

IMG_20200402_225439.jpg.41dfcc64829f0eba2a5b4564af05c5c6.jpg

En cours :
    Impression de pièces en couleurs
    Recherche des vitesses, accélération, jerk optimal
    
A venir :
    Remplacement des douilles IGUS par des douilles à billes.
    ...

IMG_20191219_170355.jpg

Modifié (le) par ArdToPix
Ajout de photos
  • J'aime 1
Lien vers le commentaire
Partager sur d’autres sites

Question, je tente d'imprimer une pièce en deux couleurs. 

Dans répétier, les deux fichier stl appartiennent au même groupe avec chaqu'un son extrudeur assigné.

Lors de l impression au premier changement de couleur, la tête vient faire la tour de purge, l axe z bouge un peu et l impression rate.

Gcode

Citation

G1 F1800 X161.354 Y201.235 E19.30241
G92 E0
G1 F2400 E-2.00000

T1

G0 F3600 X149.229 Y213.500
;TYPE:SUPPORT
G1 F2400 E0.00000
G1 F1800 X149.229 Y222.160 E0.43205

Retour console

Citation

22:34:26.813 : N75670 G1 F1800 X161.354 Y201.235 E19.30241*49
22:34:26.814 : N75671 G92 E0*69
22:34:26.985 : N75672 M117 FIN 8m 02s*96
22:34:26.985 : N75673 G1 F2400 E-2.00000*44
22:34:27.009 : N75674 T1*60
22:34:27.011 : N75675 G0 X149.229 Y213.5 F3600*77
22:34:27.182 : X:161.35 Y:201.24 Z:0.30 E:0.00 Count A:36681 B:-4383 Z:-2148
22:34:27.182 : N75676 G1 F2400 E0.00000*6
22:34:27.202 : N75677 G1 F1800 X149.229 Y222.160 E0.43205*9
22:34:28.591 : echo:Active Extruder: 1
22:34:28.599 : N75678 G1 X140.569 Y222.160 E0.86410*104

Pourquoi y a t-il une commande Z qui ne tien pas compte de la matrice créer par G29

Quelqu'un a t'il déjà rencontré ce problème, o une piste ?

Modifié (le) par ArdToPix
précision de la question
Lien vers le commentaire
Partager sur d’autres sites

J'ai continué les testes.

Test 1

fichier 3d : 2 carrés superposés groupés avec chaqu'un son extrudeur d'asigné

retour console :

Citation

23:05:50.142 : N5220 G0 X195.165 Y193.952 Z3.1 F3600*34
23:05:50.330 : Impression couche layer 15 sur 30
23:05:50.330 : N5221 G1 F3180 X194.216 Y194.499 E374.40040*59
23:05:50.498 : N5222 G1 X193.214 Y194.932 E374.43671*90
...
23:06:24.783 : N5468 G1 F2400 X174.827 Y193.777 E417.49337*54
23:06:24.784 : N5469 G92 E0*121
23:06:24.784 : N5470 G1 F2400 E-2.00000*26
23:06:24.806 : N5471 T1*12
23:06:24.972 : N5472 G0 X175.362 Y189.896 Z3.3 F3600*40
23:06:24.972 : N5473 G1 F2400 E0.00000*54
23:06:25.135 : X:174.83 Y:193.78 Z:3.10 E:0.00 Count A:37513 B:-1557 Z:4424
23:06:25.156 : Impression couche layer 16 sur 30
23:06:25.157 : N5474 G1 F3180 X173.094 Y185.424 E0.16677*59
23:06:27.245 : echo:Active Extruder: 1
23:06:27.245 : N5475 G1 X176.646 Y181.885 E0.33354*90

Au changement d'extrudeur, la tête s'enfonce dans la pièce, carnage!!

 

Test2

fichier 3d : un cylindre de diam. 30mm et d'épaisseur 0.6mm

Le changement d'extrudeur est rajouter à la main dans le Gcode au début de la 3e couche

retour console :

Citation

23:31:02.048 : N837 G1 F1920 X179.216 Y181.973 E158.98968*7
23:31:02.048 : N838 G0 X178.076 Y182.548 F3600*69
23:31:02.429 : N839 G1 F1920 X172.522 Y188.101 E159.25089*7
23:31:02.429 : N840 G0 X173.56 Y186.498 F3600*123
23:31:02.772 : N841 G1 F1920 X176.527 Y183.530 E159.39048*4
23:31:02.775 : N842 T1*53
23:31:02.777 : N843 M106 S127*108
23:31:02.797 : N844 G0 X176.355 Y183.484 Z0.7 F3600*17
23:31:02.960 : Impression couche layer 3 sur 3
23:31:02.960 : N845 G1 F2460 X177.586 Y182.656 E159.43982*0
23:31:05.513 : echo:Active Extruder: 1
23:31:05.517 : N846 G1 X178.897 Y181.958 E159.48922*100
23:31:05.518 : N847 G1 X180.272 Y181.398 E159.53860*104
23:31:05.521 : N848 G1 X181.691 Y180.986 E159.58774*106

Idem le mouvement de z est faussé. la tête s'enfonce dans la partie déjà imprimé.

Lien vers le commentaire
Partager sur d’autres sites

Bonjour Tircown,

M503 était desactivée.

Voici ce que j'obtiens :

Citation

13:13:24.691 : N19 M503*29
13:13:24.694 : echo:  G21    ; Units in mm (mm)
13:13:24.698 : echo:; Filament settings: Disabled
13:13:24.698 : echo:  M200 D1.75
13:13:24.698 : echo:  M200 T1 D1.75
13:13:24.698 : echo:  M200 D0
13:13:24.698 : echo:; Steps per unit:
13:13:24.702 : echo: M92 X100.00 Y100.00 Z2560.00 E801.00
13:13:24.702 : echo:; Maximum feedrates (units/s):
13:13:24.706 : echo:  M203 X300.00 Y300.00 Z100.00 E25.00
13:13:24.706 : echo:; Maximum Acceleration (units/s2):
13:13:24.710 : echo:  M201 X3000.00 Y3000.00 Z1000.00 E10000.00
13:13:24.714 : echo:; Acceleration (units/s2): P<print_accel> R<retract_accel> T<travel_accel>
13:13:24.715 : echo:  M204 P3000.00 R3000.00 T3000.00
13:13:24.718 : echo:; Advanced: B<min_segment_time_us> S<min_feedrate> T<min_travel_feedrate> X<max_x_jerk> Y<max_y_jerk> Z<max_z_jerk> E<max_e_jerk>
13:13:24.723 : echo:  M205 B20000.00 S0.00 T0.00 X10.00 Y10.00 Z0.40 E2.00
13:13:24.723 : echo:; Home offset:
13:13:24.727 : echo:  M206 X0.00 Y0.00 Z0.00
13:13:24.727 : echo:; Auto Bed Leveling:
13:13:24.727 : echo:  M420 S1 Z0.00
13:13:24.727 : echo:  G29 W I0 J0 Z-1.49141
13:13:24.731 : echo:  G29 W I1 J0 Z-1.26172
13:13:24.731 : echo:  G29 W I0 J1 Z-1.60703
13:13:24.731 : echo:  G29 W I1 J1 Z-1.25938
13:13:24.735 : echo:; PID settings:
13:13:24.735 : echo:  M301 P22.20 I1.08 D114.00
13:13:24.735 : echo:; Z-Probe Offset (mm):
13:13:24.735 : echo:  M851 X35.00 Y10.00 Z-0.50
13:13:24.739 : echo:; Tool-changing:
13:13:24.739 : echo: Z2.00

 

Modifié (le) par ArdToPix
Lien vers le commentaire
Partager sur d’autres sites

Dernière ligne: il y a un offset Z de 2mm entre les têtes. Tu as du activer SWITCHING_NOZZLE au lieu de SWITCHING_EXTRUDER.

Tu peux déjà voir si ça corrige le problème en faisant les deux commandes suivante.

M218 T0 X0 Y0 Z0 
M218 T1 X0 Y0 Z0

Si c'est bon je te conseille de corriger dans la configuration du firmware.

Modifié (le) par Tircown
Lien vers le commentaire
Partager sur d’autres sites

Merci beaucoup Tircown, cela me donne des pistes.

La commande M218 n'est pas activé.

Dans marlin, fichier configuration.h, je n'ai aucune de ces deux options d'activées mais SINGLENOZZLE

Citation
// @section extruder
 
// This defines the number of extruders
// :[1, 2, 3, 4, 5, 6, 7, 8]
#define EXTRUDERS 2
 
// Generally expected filament diameter (1.75, 2.85, 3.0, ...). Used for Volumetric, Filament Width Sensor, etc.
#define DEFAULT_NOMINAL_FILAMENT_DIA 1.75
 
// For Cyclops or any "multi-extruder" that shares a single nozzle.
#define SINGLENOZZLE
 
/**
* Průša MK2 Single Nozzle Multi-Material Multiplexer, and variants.
*
* This device allows one stepper driver on a control board to drive
* two to eight stepper motors, one at a time, in a manner suitable
* for extruders.
*
* This option only allows the multiplexer to switch on tool-change.
* Additional options to configure custom E moves are pending.
*/
//#define MK2_MULTIPLEXER
#if ENABLED(MK2_MULTIPLEXER)
// Override the default DIO selector pins here, if needed.
// Some pins files may provide defaults for these pins.
//#define E_MUX0_PIN 40 // Always Required
//#define E_MUX1_PIN 42 // Needed for 3 to 8 inputs
//#define E_MUX2_PIN 44 // Needed for 5 to 8 inputs
#endif
 
/**
* Prusa Multi-Material Unit v2
*
* Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
* Requires EXTRUDERS = 5
*
* For additional configuration see Configuration_adv.h
*/
//#define PRUSA_MMU2
 
// A dual extruder that uses a single stepper motor
//#define SWITCHING_EXTRUDER
#if ENABLED(SWITCHING_EXTRUDER)
#define SWITCHING_EXTRUDER_SERVO_NR 0
#define SWITCHING_EXTRUDER_SERVO_ANGLES { 0, 90 } // Angles for E0, E1[, E2, E3]
#if EXTRUDERS > 3
#define SWITCHING_EXTRUDER_E23_SERVO_NR 1
#endif
#endif
 
// A dual-nozzle that uses a servomotor to raise/lower one (or both) of the nozzles
//#define SWITCHING_NOZZLE
#if ENABLED(SWITCHING_NOZZLE)
#define SWITCHING_NOZZLE_SERVO_NR 0
//#define SWITCHING_NOZZLE_E1_SERVO_NR 1 // If two servos are used, the index of the second
#define SWITCHING_NOZZLE_SERVO_ANGLES { 0, 90 } // Angles for E0, E1 (single servo) or lowered/raised (dual servo)
#endif
 
/**
* Two separate X-carriages with extruders that connect to a moving part
* via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN.
*/
//#define PARKING_EXTRUDER
 
/**
* Two separate X-carriages with extruders that connect to a moving part
* via a magnetic docking mechanism using movements and no solenoid
*
*/
//#define MAGNETIC_PARKING_EXTRUDER
 
#if EITHER(PARKING_EXTRUDER, MAGNETIC_PARKING_EXTRUDER)
 
#define PARKING_EXTRUDER_PARKING_X { -78, 184 } // X positions for parking the extruders
#define PARKING_EXTRUDER_GRAB_DISTANCE 1 // (mm) Distance to move beyond the parking point to grab the extruder
//#define MANUAL_SOLENOID_CONTROL // Manual control of docking solenoids with M380 S / M381
 
#if ENABLED(PARKING_EXTRUDER)
 
#define PARKING_EXTRUDER_SOLENOIDS_INVERT // If enabled, the solenoid is NOT magnetized with applied voltage
#define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW // LOW or HIGH pin signal energizes the coil
#define PARKING_EXTRUDER_SOLENOIDS_DELAY 250 // (ms) Delay for magnetic field. No delay if 0 or not defined.
//#define MANUAL_SOLENOID_CONTROL // Manual control of docking solenoids with M380 S / M381
 
#elif ENABLED(MAGNETIC_PARKING_EXTRUDER)
 
#define MPE_FAST_SPEED 9000 // (mm/m) Speed for travel before last distance point
#define MPE_SLOW_SPEED 4500 // (mm/m) Speed for last distance travel to park and couple
#define MPE_TRAVEL_DISTANCE 10 // (mm) Last distance point
#define MPE_COMPENSATION 0 // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling
 
#endif
 
#endif
 
/**
* Switching Toolhead
*
* Support for swappable and dockable toolheads, such as
* the E3D Tool Changer. Toolheads are locked with a servo.
*/
//#define SWITCHING_TOOLHEAD
 
/**
* Magnetic Switching Toolhead
*
* Support swappable and dockable toolheads with a magnetic
* docking mechanism using movement and no servo.
*/
//#define MAGNETIC_SWITCHING_TOOLHEAD
 
/**
* Electromagnetic Switching Toolhead
*
* Parking for CoreXY / HBot kinematics.
* Toolheads are parked at one edge and held with an electromagnet.
* Supports more than 2 Toolheads. See https://youtu.be/JolbsAKTKf4
*/
//#define ELECTROMAGNETIC_SWITCHING_TOOLHEAD
 
#if ANY(SWITCHING_TOOLHEAD, MAGNETIC_SWITCHING_TOOLHEAD, ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
#define SWITCHING_TOOLHEAD_Y_POS 235 // (mm) Y position of the toolhead dock
#define SWITCHING_TOOLHEAD_Y_SECURITY 10 // (mm) Security distance Y axis
#define SWITCHING_TOOLHEAD_Y_CLEAR 60 // (mm) Minimum distance from dock for unobstructed X axis
#define SWITCHING_TOOLHEAD_X_POS { 215, 0 } // (mm) X positions for parking the extruders
#if ENABLED(SWITCHING_TOOLHEAD)
#define SWITCHING_TOOLHEAD_SERVO_NR 2 // Index of the servo connector
#define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 } // (degrees) Angles for Lock, Unlock
#elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
#define SWITCHING_TOOLHEAD_Y_RELEASE 5 // (mm) Security distance Y axis
#define SWITCHING_TOOLHEAD_X_SECURITY { 90, 150 } // (mm) Security distance X axis (T0,T1)
//#define PRIME_BEFORE_REMOVE // Prime the nozzle before release from the dock
#if ENABLED(PRIME_BEFORE_REMOVE)
#define SWITCHING_TOOLHEAD_PRIME_MM 20 // (mm) Extruder prime length
#define SWITCHING_TOOLHEAD_RETRACT_MM 10 // (mm) Retract after priming length
#define SWITCHING_TOOLHEAD_PRIME_FEEDRATE 300 // (mm/m) Extruder prime feedrate
#define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400 // (mm/m) Extruder retract feedrate
#endif
#elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
#define SWITCHING_TOOLHEAD_Z_HOP 2 // (mm) Z raise for switching
#endif
#endif
 
/**
* "Mixing Extruder"
* - Adds G-codes M163 and M164 to set and "commit" the current mix factors.
* - Extends the stepping routines to move multiple steppers in proportion to the mix.
* - Optional support for Repetier Firmware's 'M164 S<index>' supporting virtual tools.
* - This implementation supports up to two mixing extruders.
* - Enable DIRECT_MIXING_IN_G1 for M165 and mixing in G1 (from Pia Taubert's reference implementation).
*/
//#define MIXING_EXTRUDER
#if ENABLED(MIXING_EXTRUDER)
#define MIXING_STEPPERS 2 // Number of steppers in your mixing extruder
#define MIXING_VIRTUAL_TOOLS 16 // Use the Virtual Tool method with M163 and M164
//#define DIRECT_MIXING_IN_G1 // Allow ABCDHI mix factors in G1 movement commands
//#define GRADIENT_MIX // Support for gradient mixing with M166 and LCD
#if ENABLED(GRADIENT_MIX)
//#define GRADIENT_VTOOL // Add M166 T to use a V-tool index as a Gradient alias
#endif
#endif
 
// Offset of the extruders (uncomment if using more than one and relying on firmware to position when changing).
// The offset has to be X=0, Y=0 for the extruder 0 hotend (default extruder).
// For the other hotends it is their distance from the extruder 0 hotend.
//#define HOTEND_OFFSET_X { 0.0, 20.00 } // (mm) relative X-offset for each nozzle
//#define HOTEND_OFFSET_Y { 0.0, 5.00 } // (mm) relative Y-offset for each nozzle
//#define HOTEND_OFFSET_Z { 0.0, 0.00 } // (mm) relative Z-offset for each nozzle
Lien vers le commentaire
Partager sur d’autres sites

Alors là malheureusement je n'ai plus d'idées. Tout semble ok dans la config.

De combien ta buse descend pour "graver" la pièce précédente?

Est ce que ça reste plus bas ou elle remonte quelques seconde après? (teste une impression à vide, sans filament)

Lien vers le commentaire
Partager sur d’autres sites

Lors du changement d extrudeur, la tête descend de de quelques dixièmes de millimètres en impression 😨 et au prochaine changement de couche elle monte de 0,2, ce qui est logique.

C est comme s il y avait un reset de la position du z au changement d extrudeur.

J ai farfouillé dans marlin/Gcode/.../t.h, mais je sèche.

Si je tape T0 ou T1 dans la console, pas de mouvement et l extrudeur change bien .

Piste:

Tenter d activer l offset-hotend sur Z pour le forcé à 0mm.

Modifier mon test 2 et effectuer le changement de extrudeur après le départ de la dernière couche. Mais ça ne résoudra pas le problème.

Lien vers le commentaire
Partager sur d’autres sites

Le bug décrit dans le lien a été corrigé depuis. Ceci dit ce qui ce passe chez toi n'est pas normal, peut-être un autre bug.

Ça vient peut être du Probe offset (Z-0.5). Pour tester peux-tu le passer à 0 et mettre en start gcode juste après G28/G29?

G91
G1 Z-0.5
G90
G92 Z0

Ça aura pour effet de décaler tout le Z du GCODE et de pouvoir se passer ainsi de Probe Offset Z.

Lien vers le commentaire
Partager sur d’autres sites

Quelques essaies plus tard..

- activer l offset-hotend sur Z | Negatif

- Modification du G-code de démarrage comme suggéré par Tircow | aucun changement le Z bouge au changement d'extrudeur.

Bonjour cmatec, je viens de vérifier, la case est bien coché. Merci de ta participation.

Lien vers le commentaire
Partager sur d’autres sites

Je détail pas de soucis. Mais il me semble avoir bien compris la démarche que tu me proposes (Merci beaucoup).

Fichier 3d : 2 petits parallélogrammes posés cote à cote, groupée avec 1 extrudeur assigné à chaqu'un.

Mode : essaie à vide

Console : M851 Z0, M500

G-code de démarrage

G28
G29
G91
G1 Z-0.5 F500
G90
G92 Z0
G1 X100 Y100 F4500
G1 Z15 F500
M107
M82
M104 T0 S200
...

A la fin de G29, la tête remonte de 5mm. Du coup l'impression commence à environ 5mm du plateau. Ce qui n'est pas plus mal.

Retour console (j'ai commenté et supprimé les lignes inutiles mais ça pique toujours un peu les yeux)

Citation

00:18:38.402 : N15 G28*39
00:18:38.402 : N16 G29*37
00:18:38.402 : N17 G91*39
00:18:38.405 : N18 G1 Z-0.5 F500*62
00:18:38.405 : N19 G90*40
00:18:38.405 : N20 G92 Z0*106
00:18:38.405 : N21 G1 X100 F4500*53
00:18:38.405 : N22 G1 Y100*80
00:19:22.676 : X:0.00 Y:0.00 Z:340.00 E:0.00 Count A:0 B:0 Z:870400
00:20:14.749 : Bilinear Leveling Grid:
00:20:14.749 : 0      1
00:20:14.749 : 0 -0.984 -0.785
00:20:14.749 : 1 -1.080 -0.768
00:20:14.753 : X:325.00 Y:320.00 Z:5.03 E:0.00 Count A:64500 B:500 Z:10834 <---------position réel par rapport au plateau avec la correction de palpage
00:20:14.753 : N23 M117 FIN 26m 33s*110
00:20:14.757 : N24 G1 Z15 F500*51
00:20:14.757 : N25 M107*18
00:20:14.757 : N26 M82*45

00:20:14.760 : X:325.00 Y:320.00 Z:0.00 E:0.00 Count A:64500 B:500 Z:10834 <--------- nouveau origine de Z
00:20:18.996 : N27 M117 FIN 26m 29s*97
00:20:24.996 : N28 M117 FIN 26m 29s*110
00:20:25.137 : N30 M117 FIN 26m 29s*103
00:20:25.139 : N31 M104 T0 S200*17
00:20:25.140 : N32 G92 E0*118
00:20:25.140 : N33 M109 T0 S200*30
00:20:25.140 : N34 M107*18

00:20:25.141 : N35 G0 X168.9 Y191.9 Z0.3 F3600*44      <---------Z se positionne. OK
00:20:25.144 : Impression couche layer 1 sur 100

00:20:25.145 : N36 G1 F1800 X196.100 Y191.900 E1.35701*54
00:20:25.149 : X:100.00 Y:100.00 Z:15.00 E:0.00 Count A:26942 B:-6942 Z:9095  <------ (je ne comprends pas pourquoi le retour console est si tard mais bon pas d'influence)
00:20:25.153 : N37 G1 X196.100 Y219.100 E2.71403*81
00:20:32.120 : N38 M117 FIN 26m 21s*103
....
00:21:23.156 : N165 G1 F1800 X183.933 Y214.763 E36.06126*63
00:21:23.180 : N166 G0 X183.367 Y214.763 F3600*71
00:21:23.709 : N167 G1 F1800 X183.236 Y214.631 E36.07053*55
00:21:23.709 : N168 G92 E0*72
00:21:23.710 : N169 G1 F2400 E-2.00000*34


00:21:24.159 : N170 T1*61
00:21:24.180 : N171 G0 X181.9 Y204.9 F3600*66
00:21:24.181 : N172 G1 F2400 E0.00000*7
00:21:24.577 : X:183.24 Y:214.63 Z:0.30 E:0.00 Count A:40208 B:-2744 Z:10024     <---- Z bouge pas 😃 ou du moins pas de manière perceptible
00:21:24.598 : N173 G1 F1800 X173.100 Y204.900 E0.43903*14
00:21:25.974 : echo:Active Extruder: 1
00:21:25.978 : N174 M117 FIN 25m 28s*84
00:21:25.978 : N175 G1 X173.100 Y196.100 E0.87807*106
00:21:25.982 : N176 G1 X181.900 Y196.100 E1.31710*105
....
00:21:43.342 : N244 G0 X181.244 Y196.235 F3600*73
00:21:43.651 : N245 G1 F1800 X181.763 Y196.754 E12.74175*63
00:21:43.652 : N246 M106 S63*82
 
00:21:43.678 : N247 G0 X181.9 Y196.1 Z0.5 F3600*21             <------ Z monte bien de 0.2mm
00:21:43.907 : Impression couche layer 2 sur 100
 
00:21:43.908 : N248 G1 F2100 X181.900 Y204.900 E13.03443*53
00:21:43.908 : N249 G1 X173.100 Y204.900 E13.32712*81
....
00:22:00.948 : N317 M117 FIN 24m 50s*93
00:22:00.948 : N318 G1 F1920 X180.751 Y204.763 E21.21524*57
00:22:00.973 : N319 G0 X181.317 Y204.763 F3600*73
00:22:01.247 : N320 G1 F1920 X181.763 Y204.316 E21.23624*53
00:22:01.247 : N321 G92 E0*71
00:22:01.247 : N322 G1 F2400 E-2.00000*47
 
00:22:01.284 : N323 T0*56
00:22:01.493 : N324 G0 X183 Y204.316 F3600*88
00:22:01.493 : N325 G0 X183.1 Y196.1*40
00:22:01.517 : X:181.76 Y:204.32 Z:0.50 E:0.00 Count A:37138 B:-2488 Z:10512 <-----Z descend de 2MM
00:22:01.517 : N326 G1 F2400 E0.00000*4
00:22:03.205 : echo:Active Extruder: 0
00:22:03.206 : N327 G1 F2100 X191.900 Y196.100 E0.29269*8
00:22:03.209 : N328 G1 X191.900 Y214.900 E0.91798*107
00:22:03.213 : N329 G1 X183.100 Y214.900 E1.21067*108
....
00:22:34.443 : N435 G1 F1920 X191.763 Y214.115 E16.91215*60
00:22:34.443 : N436 G0 X191.763 Y214.681 F3600*73
00:22:34.910 : N437 G1 F1920 X191.681 Y214.763 E16.91600*52
00:22:34.935 : N438 M106 S127*108

00:22:35.353 : N439 G0 X191.9 Y214.9 Z0.7 F3600*24             <------ Z monte bien de 0.2mm
00:22:35.377 : Impression couche layer 3 sur 100
 
00:22:35.377 : N440 G1 F2460 X183.100 Y214.900 E17.20869*50
00:22:35.377 : N441 G1 X183.100 Y196.100 E17.83398*88
....
00:23:04.710 : N547 G0 X191.763 Y197.137 F3600*76
00:23:05.231 : N548 G1 F2100 X190.861 Y196.235 E33.81622*60
00:23:05.231 : N549 G0 X191.427 Y196.235 F3600*65
00:23:05.706 : N550 G1 F2100 X191.763 Y196.572 E33.83205*62
00:23:05.706 : N551 G92 E0*70
00:23:05.706 : N552 G1 F2400 E-2.00000*46
00:23:06.107 : N553 M117 FIN 23m 41s*92
 
00:23:06.110 : N554 T1*63
00:23:06.135 : N555 G0 X181.9 Y196.1 F3600*64
00:23:06.488 : X:191.76 Y:196.57 Z:0.70 E:0.00 Count A:38372 B:-876 Z:11054    <-----idem Z descend de 2MM
00:23:06.488 : N556 G1 F2400 E0.00000*5
00:23:06.509 : N557 G1 F2460 X181.900 Y204.900 E0.29269*11
00:23:08.368 : echo:Active Extruder: 1
00:23:08.372 : N558 G1 X173.100 Y204.900 E0.58538*98
00:23:08.372 : N559 G1 X173.100 Y196.100 E0.87807*96
....
00:23:08.737 : N574 G0 X181.763 Y199.017 F3600*64
00:23:09.175 : N575 G1 F2100 X178.982 Y196.235 E2.83605*13
00:23:10.560 : Printer reset detected - initializing

 

C'est vraiment étrange, au reset la tête est plus basse qu'au départ d'impression. Au prochaine changement d'extrudeur, la tête s'écraserait dans le plateau. (j'ai filmé la séquence)

Remarque :

Dans le G-code, au départ de l'impression, on ne précise jamais que l'on travail avec T0.

Un autre test effectué :

un cube uniquement avec l'extrudeur 2 d'assigné avant le tranchage. L'imprimante utilise l'extrudeur 1 pour réaliser la pièce. Je n'ai pas encore testé en forçant T1 dans le G-code mais j'imagine déjà la conséquence.

Lien vers le commentaire
Partager sur d’autres sites

J'ai joué au petit poucet dans le code de Marlin: dans configuration_adv.h, ligne 1835 de la version actuelle: essaye de mettre 0 à la place de 2. Juste au dessus vérifie que //#define TOOLCHANGE_NO_RETURN est commenté. Pour tester sans flasher, M217 Z0 puis M500, doit être équivalent.

Un fois fait il faut que M503 renvoi la section Tool-changing avec Z=0 ou ait disparu.

Je pense que c'est un bug: de ce que j'ai compris du code, la tête est censée se lever de 2mm, changer d'extrudeur puis redescendre de 2mm par défaut. J'ai l'impression que la première phase n'est tout simplement pas faite.

  • Merci ! 1
Lien vers le commentaire
Partager sur d’autres sites

Bon j'avance petit à petit.

J'ai trouvé ça : https://github.com/MarlinFirmware/Marlin/issues/7469

J'ai testé le code suivant :

Citation
  1. Set the offset of the 2nd hot-end to (0, 0). This means that the two hot-ends 'coincide' and that T0 or T1 commands do NOT result in a movement in the XY plane.

  2. Invalidate the UBL grid and fill the grid homogeneously with 0.1. Activate UBL


G29 I 999
G29 P3 C0.1 R999
G29 A
  1. Position the head at Z=3.0

G28
G1 Z3.0 F300.0
  1. Execute a number of toolchanges :

T0
T1
T0
T1
T0
T1
T0
T1
T0
T1
T0
T1

Expected behaviour : no movement whatsoever.

Observed behaviour : nozzle moves up in Z (but no change in M114 reported z position).

Note:

  • When changing the grid fill value to -0.1 : nozzle moves down in Z (but no change in M114 z position).
  • Steps fade when approaching Z=10 (as reported by M114).


...

TEST :

G29 I 999
G29 P3 C0.1 R999
G29 A
G28
G1 Z100.0 F500.0

TO 				<-------- pas de mvt de Z => M114 Z:100
T1				<-------- Z diminue de 2mm Oo => M114 Z:100
T0				<-------- Z diminue de 2mm Oo => M114 Z:100

Et ainsi de suite

 

Au moins, on s'approche de la source du problème. Restons positif durant cette période étrange.

IMG_20200408_142841.jpg.a5d70edf4ffd34cfe914209101cb4e73.jpgIMG_20200408_143314.jpg.4296b80b913e8a3ba0bcf77e20a9e6a9.jpg

 

Une petit précision sur la config des end-stop. Le homing (g28) se fait en Xmin, Ymin et Zmax. C'est G29 qui sonde le Zmin. Mais je ne pense pas que cela vienne de là.

Lien vers le commentaire
Partager sur d’autres sites

il y a 16 minutes, Tircown a dit :

J'ai joué au petit poucet dans le code de Marlin: dans configuration_adv.h, ligne 1835 de la version actuelle: essaye de mettre 0 à la place de 2. Juste au dessus vérifie que //#define TOOLCHANGE_NO_RETURN est commenté. Pour tester sans flasher, M217 Z0 puis M500, doit être équivalent.

Un fois fait il faut que M503 renvoi la section Tool-changing avec Z=0 ou ait disparu.

Je pense que c'est un bug: de ce que j'ai compris du code, la tête est censée se lever de 2mm, changer d'extrudeur puis redescendre de 2mm par défaut. J'ai l'impression que la première phase n'est tout simplement pas faite.

Je m'en vais regarder cela. En espérant retrouver les petits cailloux blanc que tu m'as laissé !

Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
  • Sur cette page :   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
  • YouTube / Les Imprimantes 3D .fr

×
×
  • Créer...