23-05-2022, 07:13 PM
(Última modificación: 23-05-2022, 07:15 PM por 21Curiosos.)
Empezadas las pruebas dinamicas de la impresora me encuentro un problema a la hora de ejecutar el codigo G34, y realmente no se si es un problema mecanico o de configuracion, no se.
Drivers TMC2209 , sensorless en X e Y regulados a 100,y Z funciona con tres motores
#define Z_STEPPER_ALIGN_STEPPER_XY { { 35, 15 }, { 310, 15 }, { 160, 310 } }
#define Z_STEPPERS_ORIENTATION 0
Pues bien hago un home G28 y todo perfecto, pero cuando hago un G34 el primer y segundo punto lo hace perfecto, pero cuando se dirige al tercero avanza unos diez milimetros hacia Y310 se para en seco, el sensorless de "Y" actua de nuevo y lo que en teoria es la posicion 25 de y se convierte en el maximo de nuevo y en el segundo intento al intentar acercarse a la posicion {35,15} choca con la perfileria de la maquina.
He intentado subir la sensibilidad de "Y" hasta 200 con el mismo resultado. A pesar de la parada en seco el carro X mantiene el paralelismo no es que se tuerza
Si yo muevo los ejes a traves de comandos de la pantalla no me hace ningun extraño
No se si me he explicado bien, pero en caso afirmativo , ¿alguna sugerencia?
Inserto tambien el codigo correspondiente a G34
Saludos
Drivers TMC2209 , sensorless en X e Y regulados a 100,y Z funciona con tres motores
#define Z_STEPPER_ALIGN_STEPPER_XY { { 35, 15 }, { 310, 15 }, { 160, 310 } }
#define Z_STEPPERS_ORIENTATION 0
Pues bien hago un home G28 y todo perfecto, pero cuando hago un G34 el primer y segundo punto lo hace perfecto, pero cuando se dirige al tercero avanza unos diez milimetros hacia Y310 se para en seco, el sensorless de "Y" actua de nuevo y lo que en teoria es la posicion 25 de y se convierte en el maximo de nuevo y en el segundo intento al intentar acercarse a la posicion {35,15} choca con la perfileria de la maquina.
He intentado subir la sensibilidad de "Y" hasta 200 con el mismo resultado. A pesar de la parada en seco el carro X mantiene el paralelismo no es que se tuerza
Si yo muevo los ejes a traves de comandos de la pantalla no me hace ningun extraño
No se si me he explicado bien, pero en caso afirmativo , ¿alguna sugerencia?
Inserto tambien el codigo correspondiente a G34
Código:
**
* Z Steppers Auto-Alignment
* Add the G34 command to align multiple Z steppers using a bed probe.
*/
#define Z_STEPPER_AUTO_ALIGN
#if ENABLED(Z_STEPPER_AUTO_ALIGN)
// Define probe X and Y positions for Z1, Z2 [, Z3 [, Z4]]
// If not defined, probe limits will be used.
// Override with 'M422 S<index> X<pos> Y<pos>'
//#define Z_STEPPER_ALIGN_XY { { 10, 190 }, { 100, 10 }, { 190, 190 } }
/**
* Orientation for the automatically-calculated probe positions.
* Override Z stepper align points with 'M422 S<index> X<pos> Y<pos>'
*
* 2 Steppers: (0) (1)
* | | 2 |
* | 1 2 | |
* | | 1 |
*
* 3 Steppers: (0) (1) (2) (3)
* | 3 | 1 | 2 1 | 2 |
* | | 3 | | 3 |
* | 1 2 | 2 | 3 | 1 |
*
* 4 Steppers: (0) (1) (2) (3)
* | 4 3 | 1 4 | 2 1 | 3 2 |
* | | | | |
* | 1 2 | 2 3 | 3 4 | 4 1 |
*/
#ifndef Z_STEPPER_ALIGN_XY
#define Z_STEPPERS_ORIENTATION 0
#endif
// Provide Z stepper positions for more rapid convergence in bed alignment.
// Requires triple stepper drivers (i.e., set NUM_Z_STEPPER_DRIVERS to 3)
#define Z_STEPPER_ALIGN_KNOWN_STEPPER_POSITIONS
#if ENABLED(Z_STEPPER_ALIGN_KNOWN_STEPPER_POSITIONS)
// Define Stepper XY positions for Z1, Z2, Z3 corresponding to
// the Z screw positions in the bed carriage.
// Define one position per Z stepper in stepper driver order.
#define Z_STEPPER_ALIGN_STEPPER_XY { { 35, 15 }, { 310, 15 }, { 160, 310 } }
#else
// Amplification factor. Used to scale the correction step up or down in case
// the stepper (spindle) position is farther out than the test point.
#define Z_STEPPER_ALIGN_AMP 1.0 // Use a value > 1.0 NOTE: This may cause instability!
#endif
// On a 300mm bed a 5% grade would give a misalignment of ~1.5cm
#define G34_MAX_GRADE 5 // (%) Maximum incline that G34 will handle
#define Z_STEPPER_ALIGN_ITERATIONS 5 // Number of iterations to apply during alignment
#define Z_STEPPER_ALIGN_ACC 0.02 // Stop iterating early if the accuracy is better than this
#define RESTORE_LEVELING_AFTER_G34 // Restore leveling after G34 is done?
// After G34, re-home Z (G28 Z) or just calculate it from the last probe heights?
// Re-homing might be more precise in reproducing the actual 'G28 Z' homing height, especially on an uneven bed.
#define HOME_AFTER_G34
#endif
Saludos