This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

  • 1 voto(s) - 2 Media
  • 1
  • 2
  • 3
  • 4
  • 5
CONSULTA problemas con AUTOLEVELING
#1
Triste 
Hola a todos, a ver si alguien me puede ayudar.

tenía mi maquina funcionando con la versión 1.8 de marlin, vi que había salido la versión 1.9, tenía cosas interesantes, y me decidí a cambiar.

me va todo bien, pero me falla el AUTOLEVELING, y llevo varios días peleándome con la maquina, y no me salgo, he tratado de volver a la versión anterior (configurando de nuevo marlin), y el error me persiste.

el error que me dá es: "proving failed".

he cambiado el sensor por otro, y he cambiado la electrónica, y el error me persiste, y me tiene bloqueado.

alguien me podría hechar una mano, y si es posible decirme de donde viene el erro?.

las instrucciones que he activado en configuration.h son las siguientes:

#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN

#define FIX_MOUNTED_PROBE 

#define X_PROBE_OFFSET_FROM_EXTRUDER -28  //  X offset: -left  +right  [of the nozzle
#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
#define Z_PROBE_OFFSET_FROM_EXTRUDER 0.5   // Z offset: -below +above  [the nozzle]

#define MULTIPLE_PROBING 2

#define X_BED_SIZE 270 
#define Y_BED_SIZE 240
#define Z_MAX_POS 170 

#define AUTO_BED_LEVELING_BILINEAR

#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - MIN_PROBE_EDGE - 30) 
 
Esto es lo que he definido en marlin, que viendo videos y documentación, es lo que ya tenía anteriormente marcado


Muchas Gracias.
  Responder
#2
Has cambiado todo y el error persiste...complicado el tema xD pero se intentará.

Probing failed puede tener muchos motivos. Tendrás que investigar más que hace la máquina y cuando salta el error exactamente para saber qué está fallando. Entiendo que el home te lo hace bien? Falla al mandarle el g29? En medio de la prueba?

Por la config que has puesto, entiendo que tienes conectado un sensor fijo en Zmin. Manda M119 con el sensor levantado y comprueba que este opened, y baja a distancia de detección y comprueba que esté triggered. Así compruebas si la máquina se está enterando del cambio de estado del sensor.
  Responder
#3
hola maker
#define Z_PROBE_OFFSET_FROM_EXTRUDER 0.5 // Z offset: -below +above [the nozzle]
es posible que esta linea no admita decimales? lo digo por la separacion de altura del sensor en 0.5

aprobechando que el tema esta abierto , yo tambien estoy teniendo problemas con el autolevel.
resulta que cuando inicio la impresion :

este es el gcode de inicio en repetir que tengo
; Default start code
G28 ; Home extruder
G29
G1 Z15 F{Z_TRAVEL_SPEED}
M107 ; Turn off fan
G90 ; Absolute positioning
M82 ; Extruder in absolute mode
{IF_BED}M190 S{BED}
; Activate all used extruder
{IF_EXT0}M104 T0 S{TEMP0}
G92 E0 ; Reset extruder position
; Wait for all used extruders to reach temperature
{IF_EXT0}M109 T0 S{TEMP0}

me hace un home , despues el autonivelado,todo bien , pero cuando a calentado he inicia la impresion la punta del nozzle me unde el cristal.

os pongo como tengo el marlin 1.1.9 :



//===========================================================================
//============================= Z Probe Options =============================
//===========================================================================
// @section probes

//
// See http://marlinfw.org/docs/configuration/probes.html
//

/**
 * Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
 *
 * Enable this option for a probe connected to the Z Min endstop pin.
 */
#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN

/**
 * Z_MIN_PROBE_ENDSTOP
 *
 * Enable this option for a probe connected to any pin except Z-Min.
 * (By default Marlin assumes the Z-Max endstop pin.)
 * To use a custom Z Probe pin, set Z_MIN_PROBE_PIN below.
 *
 *  - The simplest option is to use a free endstop connector.
 *  - Use 5V for powered (usually inductive) sensors.
 *
 *  - RAMPS 1.3/1.4 boards may use the 5V, GND, and Aux4->D32 pin:
 *    - For simple switches connect...
 *      - normally-closed switches to GND and D32.
 *      - normally-open switches to 5V and D32.
 *
 * WARNING: Setting the wrong pin may have unexpected and potentially
 * disastrous consequences. Use with caution and do your homework.
 *
 */
//#define Z_MIN_PROBE_ENDSTOP

/**
 * Probe Type
 *
 * Allen Key Probes, Servo Probes, Z-Sled Probes, FIX_MOUNTED_PROBE, etc.
 * Activate one of these to use Auto Bed Leveling below.
 */

/**
 * The "Manual Probe" provides a means to do "Auto" Bed Leveling without a probe.
 * Use G29 repeatedly, adjusting the Z height at each point with movement commands
 * or (with LCD_BED_LEVELING) the LCD controller.
 */
//#define PROBE_MANUALLY
//#define MANUAL_PROBE_START_Z 0.2

/**
 * A Fix-Mounted Probe either doesn't deploy or needs manual deployment.
 *   (e.g., an inductive probe or a nozzle-based probe-switch.)
 */
#define FIX_MOUNTED_PROBE

/**
 * Z Servo Probe, such as an endstop switch on a rotating arm.
 */
//#define Z_PROBE_SERVO_NR 0   // Defaults to SERVO 0 connector.
//#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles

/**
 * The BLTouch probe uses a Hall effect sensor and emulates a servo.
 */
//#define BLTOUCH
#if ENABLED(BLTOUCH)
  //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
#endif

/**
 * Enable one or more of the following if probing seems unreliable.
 * Heaters and/or fans can be disabled during probing to minimize electrical
 * noise. A delay can also be added to allow noise and vibration to settle.
 * These options are most useful for the BLTouch probe, but may also improve
 * readings with inductive probes and piezo sensors.
 */
//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
#if ENABLED(PROBING_HEATERS_OFF)
  //#define WAIT_FOR_BED_HEATER     // Wait for bed to heat back up between probes (to improve accuracy)
#endif
//#define PROBING_FANS_OFF          // Turn fans off when probing
//#define DELAY_BEFORE_PROBING 200  // (ms) To prevent vibrations from triggering piezo sensors

// A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
//#define SOLENOID_PROBE

// A sled-mounted probe like those designed by Charles Bell.
//#define Z_PROBE_SLED
//#define SLED_DOCKING_OFFSET 5  // The extra distance the X axis must travel to pickup the sled. 0 should be fine but you can push it further if you'd like.

//
// For Z_PROBE_ALLEN_KEY see the Delta example configurations.
//

/**
 *   Z Probe to nozzle (X,Y) offset, relative to (0, 0).
 *   X and Y offsets must be integers.
 *
 *   In the following example the X and Y offsets are both positive:
 *   #define X_PROBE_OFFSET_FROM_EXTRUDER 10
 *   #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
 *
 *      +-- BACK ---+
 *      |           |
 *    L |    (+) P  | R <-- probe (20,20)
 *    E |           | I
 *    F | (-) N (+) | G <-- nozzle (10,10)
 *    T |           | H
 *      |    (-)    | T
 *      |           |
 *      O-- FRONT --+
 *    (0,0)
 */
#define X_PROBE_OFFSET_FROM_EXTRUDER 32  // X offset: -left  +right  [of the nozzle]
#define Y_PROBE_OFFSET_FROM_EXTRUDER 45  // Y offset: -front +behind [the nozzle]
#define Z_PROBE_OFFSET_FROM_EXTRUDER -5   // Z offset: -below +above  [the nozzle]

// Certain types of probes need to stay away from edges
#define MIN_PROBE_EDGE 10

// X and Y axis travel speed (mm/m) between probes
#define XY_PROBE_SPEED 8000

// Feedrate (mm/m) for the first approach when double-probing (MULTIPLE_PROBING == 2)
#define Z_PROBE_SPEED_FAST HOMING_FEEDRATE_Z

// Feedrate (mm/m) for the "accurate" probe of each point
#define Z_PROBE_SPEED_SLOW (Z_PROBE_SPEED_FAST / 2)

// The number of probes to perform at each point.
//   Set to 2 for a fast/slow probe, using the second probe result.
//   Set to 3 or more for slow probes, averaging the results.
//#define MULTIPLE_PROBING 2

/**
 * Z probes require clearance when deploying, stowing, and moving between
 * probe points to avoid hitting the bed and other hardware.
 * Servo-mounted probes require extra space for the arm to rotate.
 * Inductive probes need space to keep from triggering early.
 *
 * Use these settings to specify the distance (mm) to raise the probe (or
 * lower the bed). The values set here apply over and above any (negative)
 * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
 * Only integer values >= 1 are valid here.
 *
 * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
 *     But: `M851 Z+1` with a CLEARANCE of 2  =>  2mm from bed to nozzle.
 */
#define Z_CLEARANCE_DEPLOY_PROBE   5 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
#define Z_CLEARANCE_MULTI_PROBE    5 // Z Clearance between multiple probes
#define Z_AFTER_PROBING            10// Z position after probing is done

#define Z_PROBE_LOW_POINT          -2 // Farthest distance below the trigger-point to go before stopping

// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20
#define Z_PROBE_OFFSET_RANGE_MAX 20

// Enable the M48 repeatability test to test probe accuracy
//#define Z_MIN_PROBE_REPEATABILITY_TEST

// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
// :{ 0:'Low', 1:'High' }
#define X_ENABLE_ON 0
#define Y_ENABLE_ON 0
#define Z_ENABLE_ON 0
#define E_ENABLE_ON 0 // For all extruders

// Disables axis stepper immediately when it's not being used.
// WARNING: When motors turn off there is a chance of losing position accuracy!
#define DISABLE_X false
#define DISABLE_Y false
#define DISABLE_Z false
// Warn on display about possibly reduced accuracy
//#define DISABLE_REDUCED_ACCURACY_WARNING

// @section extruder

#define DISABLE_E false // For all extruders
#define DISABLE_INACTIVE_EXTRUDER true // Keep only the active extruder enabled.

// @section machine

// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
#define INVERT_X_DIR false
#define INVERT_Y_DIR false
#define INVERT_Z_DIR false

// @section extruder

// For direct drive extruder v9 set to true, for geared extruder set to false.
#define INVERT_E0_DIR true
#define INVERT_E1_DIR false
#define INVERT_E2_DIR false
#define INVERT_E3_DIR false
#define INVERT_E4_DIR false

// @section homing

//#define NO_MOTION_BEFORE_HOMING  // Inhibit movement until all axes have been homed

//#define UNKNOWN_Z_NO_RAISE // Don't raise Z (lower the bed) if Z is "unknown." For beds that fall when Z is powered off.

//#define Z_HOMING_HEIGHT 4  // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
                             // Be sure you have this distance over your Z_MAX_POS in case.

// Direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1

// @section machine

// The size of the print bed
#define X_BED_SIZE 230
#define Y_BED_SIZE 240

// Travel limits (mm) after homing, corresponding to endstop positions.
#define X_MIN_POS 0
#define Y_MIN_POS 0
#define Z_MIN_POS 0
#define X_MAX_POS X_BED_SIZE
#define Y_MAX_POS Y_BED_SIZE
#define Z_MAX_POS 240

/**
 * Software Endstops
 *
 * - Prevent moves outside the set machine bounds.
 * - Individual axes can be disabled, if desired.
 * - X and Y only apply to Cartesian robots.
 * - Use 'M211' to set software endstops on/off or report current state
 */

// Min software endstops constrain movement within minimum coordinate bounds
#define MIN_SOFTWARE_ENDSTOPS
#if ENABLED(MIN_SOFTWARE_ENDSTOPS)
  #define MIN_SOFTWARE_ENDSTOP_X
  #define MIN_SOFTWARE_ENDSTOP_Y
  #define MIN_SOFTWARE_ENDSTOP_Z
#endif

// Max software endstops constrain movement within maximum coordinate bounds
#define MAX_SOFTWARE_ENDSTOPS
#if ENABLED(MAX_SOFTWARE_ENDSTOPS)
  #define MAX_SOFTWARE_ENDSTOP_X
  #define MAX_SOFTWARE_ENDSTOP_Y
  #define MAX_SOFTWARE_ENDSTOP_Z
#endif

#if ENABLED(MIN_SOFTWARE_ENDSTOPS) || ENABLED(MAX_SOFTWARE_ENDSTOPS)
  //#define SOFT_ENDSTOPS_MENU_ITEM  // Enable/Disable software endstops from the LCD
#endif

/**
 * Filament Runout Sensors
 * Mechanical or opto endstops are used to check for the presence of filament.
 *
 * RAMPS-based boards use SERVO3_PIN for the first runout sensor.
 * For other boards you may need to define FIL_RUNOUT_PIN, FIL_RUNOUT2_PIN, etc.
 * By default the firmware assumes HIGH=FILAMENT PRESENT.
 */
//#define FILAMENT_RUNOUT_SENSOR
#if ENABLED(FILAMENT_RUNOUT_SENSOR)
  #define NUM_RUNOUT_SENSORS   1     // Number of sensors, up to one per extruder. Define a FIL_RUNOUT#_PIN for each.
  #define FIL_RUNOUT_INVERTING false // set to true to invert the logic of the sensor.
  #define FIL_RUNOUT_PULLUP          // Use internal pullup for filament runout pins.
  #define FILAMENT_RUNOUT_SCRIPT "M600"
#endif

si podeis echarme un cable ,os lo agradeceria , ya que estoy apunto de tirar la impresora por la ventana.
  Responder
#4
Hola, el problema de @pepeibero es distinto al de @domingo .
Aquel se debe a un mal funcionamiento del sensor. Ese mensaje de error solo se da cuando en la operación de lectura del sensor el firmware detecta un mal funcionamiento.
Puede deberse a una configuración incorrecta o a un problema en el sensor propiamente dicho.
La información sobre la configuración está incompleta (hay otros parámetros aparte de los indicados), por lo que no se puede llegar a una conclusión.
El segundo caso, es un problema claro de configuración del Z Offset. Lo que hay que hacer para solucionarlo, es comprobar y configurar el valor correcto que se necesita.
Puede hacerse mediante el menú de la pantalla o enviando comandos gcode a la impresora con una aplicación apropiada (Pronterface, por ejemplo).
El proceso, en la forma más simplificada, sería (indico el comando entre paréntesis):
Poner a 0 el Z Offset (M851 Z0).
Realizar un home a todos los ejes (G28). Si la boquilla no queda en el centro de la cama al hacer home, conviene llevarla a ese lugar, dado que es donde suelen colocarse las piezas impresas.
Mover el eje Z para ajustar la distancia boquilla/cama al espesor de la hoja de papel de 80 gr/m². Para poder hacer este paso, hay que tener deshabilitada la limitación de movimientos negativos en el eje Z.
Configurar el nuevo valor para el Z Offset (M851 Z-xx). El valor a configurar (-xx), es el que indica la pantalla para el eje Z en ese momento (y sí, admite decimales).
Guardar la configuración en la EEPROM (M500), para que se conserve al reiniciar la impresora.
No es obligatorio configurar el Z Offset en el firmware, donde se puede dejar a 0 (#define Z_PROBE_OFFSET_FROM_EXTRUDER 0).
Sólo hay que recordar que si se hace así, hay que volver a configurarlo si se restaura la memoria (factory reset, M502).
  Responder
#5
muchas gracias compañero , en cuanto tenga un ratin me lio a ver si lo soluciono ,gracias
  Responder
#6
pepeibero si lo que usas para medir es un sensor el valor de z offset nunca puede ser positivo puesto que el sensor siempre tiene que estar por encima del nozzle prueba a ver si poniendo un valor negativo se te soluciona.

y domingo tu tienes bien el valor el negativo pero si te hunde la cama es que no esta bien configurado el z offset, le tienes puesto -5 mm esto quiere decir que el sensor esta 5 mm por encima de la punta del nozzle. cuando haga homing en z el valor donde detecte va a ser el 0 y cuando vaya a imprimir va a bajar 5mm desde donde detecto el sensor. te tocara ajustar el valor correcto como te indico simemart.
  Responder
#7
Hola, un par de apuntes a lo que indica @Triangulo en su respuesta.
El primero sobre algo que es una confusión bastante habitual, seguramente debido a que en los ejes X e Y sí es así: el Z Offset no es la distancia a la que se encuentra colocado el sensor de la boquilla, sino la que hay entre la boquilla y el punto 0 que queramos tenga el eje Z en el momento de la detección del sensor.
Un sensor puede estar situado, por ejemplo, 3 mm por encima de la boquilla y su distancia de detección ser 5 mm, lo que da como resultado que la boquilla quede a 2 mm de la superficie de impresión cuando se produce su activación.
En este caso y si se utiliza el criterio de la hoja de papel de 80 gr/m² (0,1 mm de espesor), el Z Offset que habrá que configurar será -1.9 y no -3 (siempre que el sensor detecte la superficie de impresión, cosa que no siempre es así).
Precisamente por esto se realiza la calibración que indico en mi respuesta anterior. Sería difícil conseguir la misma precisión mediante medida.
El segundo, respecto al problema que tiene @pepeibero y que no puede ser debido al valor del Z Offset que utiliza.
Efectivamente, este siempre debe ser negativo para un sensor, pero si se pone positivo, no generará ningún error. Simplemente nos quedará demasiado alto el 0 del eje Z, nada más.
Esto es debido a la forma en que estas máquinas fijan el punto 0 de los ejes: el firmware detecta el punto donde se activan los finales de carrera (interruptores o sensores), toma ese punto como valor 0 y fija la posición actual de los ejes restando los offsets que estén configurados.
Es decir, el cabezal de impresión siempre se para en el mismo punto (mientras no se cambien de posición los finales de carrera), pero el valor que fija el firmware para dicha posición en cada eje, depende del offset que se configure, por lo que es algo que decidimos nosotros.
  Responder


Posibles temas similares…
Tema Autor Respuestas Vistas Último mensaje
  CONSULTA Otra Vez AutoLeveling que nunca pude hacer funcionar hanif 6 2,246 23-03-2019, 12:29 AM
Último mensaje: hanif
  Problema Autoleveling Sensor Inductivo efvn 0 1,739 09-01-2017, 09:13 PM
Último mensaje: efvn