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.

  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
(duda y problema) tmc 2209 uart y sensor autolevel fallo nivelacion
#21
La regulacion del osfett ya la e consegido poner ok, pero el tema de los margenes es lo que no se como seguir.
  Responder
#22
El parámetro PROBING_MARGIN lo que hace es fijar un margen en la cama para evitar que el sensor se acerque a los bordes menos de ese valor, lo que en la práctica impide que se salga de ella.
Configurarlo a 75 mm no tiene sentido, pues estás perdiendo para las mediciones del autolevel 150 mm del tamaño de la cama, lo que me hace pensar que tienes mal configurados los valores del parámetro NOZZLE_TO_PROBE_OFFSET.
Según tienes la configuración, el sensor se encuentra respecto a la boquilla, 69 mm hacia el lado negativo del eje X y 30 mm hacia el lado negativo del eje Y, ¿es correcto eso?
  Responder
#23
Segun tengo el hotend de frente queda a la izquierda 30mm y para ir al hotend seria hacia delante 69mm

ponga los valores que ponga, siempre se va hacia el lado izquierdo a hacer la 1 medicion que es donde el sensor se sale fuera

/ For Z_PROBE_ALLEN_KEY see the Delta example configurations.
//

/**
 * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
 *
 * In the following example the X and Y offsets are both positive:
 *
 *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
 *
 *     +-- BACK ---+
 *     |           |
 *   L |    (+) P  | R <-- probe (20,20)
 *   E |           | I
 *   F | (-) N (+) | G <-- nozzle (10,10)
 *   T |           | H
 *     |    (-)    | T
 *     |           |
 *     O-- FRONT --+
 *   (0,0)
 *
 * Specify a Probe position as { X, Y, Z }
 */
#define NOZZLE_TO_PROBE_OFFSET { -30-690 }

// Most probes should stay away from the edges of the bed, but
// with NOZZLE_AS_PROBE this can be negative for a wider probing area.
#define PROBING_MARGIN 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)

/**
 * Multiple Probing
 *
 * You may get improved results by probing 2 or more times.
 * With EXTRA_PROBING the more atypical reading(s) will be disregarded.
 *
 * A total of 2 does fast/slow probes with a weighted average.
 * A total of 3 or more adds more slow probes, taking the average.
 */
//#define MULTIPLE_PROBING 2
//#define EXTRA_PROBING    1

/**
 * 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 NOZZLE_TO_PROBE_OFFSET, 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   10 // 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           5 // 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

// Before deploy/stow pause for user confirmation
//#define PAUSE_BEFORE_DEPLOY_STOW
#if ENABLED(PAUSE_BEFORE_DEPLOY_STOW)
  //#define PAUSE_PROBE_DEPLOY_WHEN_TRIGGERED // For Manual Deploy Allenkey Probe
#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 PROBING_STEPPERS_OFF      // Turn steppers off (unless needed to hold position) when probing
//#define DELAY_BEFORE_PROBING 200  // (ms) To prevent vibrations from triggering piezo sensors

// 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   // 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 true
#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 false
#define INVERT_E1_DIR false
#define INVERT_E2_DIR false
#define INVERT_E3_DIR false
#define INVERT_E4_DIR false
#define INVERT_E5_DIR false
#define INVERT_E6_DIR false
#define INVERT_E7_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      // (mm) Minimal Z height before homing (G28) for Z clearance above the bed, clamps, ...
                                  // Be sure to have this much clearance over your Z_MAX_POS to prevent grinding.

//#define Z_AFTER_HOMING  10      // (mm) Height to move to after homing Z

// 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 310
#define Y_BED_SIZE 210

// 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 200






/ The center of the bed is at (X=0, Y=0)
#define BED_CENTER_AT_155_105

// Manually set the home position. Leave these undefined for automatic settings.
// For DELTA this is the top-center of the Cartesian print volume.
//#define MANUAL_X_HOME_POS 0
//#define MANUAL_Y_HOME_POS 0
//#define MANUAL_Z_HOME_POS 0

// Use "Z Safe Homing" to avoid homing with a Z probe outside the bed area.
//
// With this feature enabled:
//
// - Allow Z homing only after X and Y homing AND stepper drivers still enabled.
// - If stepper drivers time out, it will need X and Y homing again before Z homing.
// - Move the Z probe (or nozzle) to a defined XY point before Z Homing.
// - Prevent Z homing when the Z probe is outside bed area.
//
#define Z_SAFE_HOMING

#if ENABLED(Z_SAFE_HOMING)
  #define Z_SAFE_HOMING_X_POINT  X_CENTER // X point for Z homing
  #define Z_SAFE_HOMING_Y_POINT  Y_CENTER // Y point for Z homing
#endif

// Homing speeds (mm/m)
#define HOMING_FEEDRATE_XY (50*60)
#define HOMING_FEEDRATE_Z  (4*60)

// Validate that endstops are triggered on homing moves
#define VALIDATE_HOMING_ENDSTOPS




y luego en advance e visto este punto pero no se si me servira para lo que necesito

 Probing Margins
 *
 * Override PROBING_MARGIN for each side of the build plate
 * Useful to get probe points to exact positions on targets or
 * to allow leveling to avoid plate clamps on only specific
 * sides of the bed. With NOZZLE_AS_PROBE negative values are
 * allowed, to permit probing outside the bed.
 *
 * If you are replacing the prior *_PROBE_BED_POSITION options,
 * LEFT and FRONT values in most cases will map directly over
 * RIGHT and REAR would be the inverse such as
 * (X/Y_BED_SIZE - RIGHT/BACK_PROBE_BED_POSITION)
 *
 * This will allow all positions to match at compilation, however
 * should the probe position be modified with M851XY then the
 * probe points will follow. This prevents any change from causing
 * the probe to be unable to reach any points.
 */
#if PROBE_SELECTED && !IS_KINEMATIC
  //#define PROBING_MARGIN_LEFT PROBING_MARGIN
  //#define PROBING_MARGIN_RIGHT PROBING_MARGIN
  //#define PROBING_MARGIN_FRONT PROBING_MARGIN
  //#define PROBING_MARGIN_BACK PROBING_MARGIN
#endif

#if EITHER(MESH_BED_LEVELING, AUTO_BED_LEVELING_UBL)
  // Override the mesh area if the automatic (max) area is too large
  //#define MESH_MIN_X MESH_INSET
  //#define MESH_MIN_Y MESH_INSET
  //#define MESH_MAX_X X_BED_SIZE - (MESH_INSET)
  //#define MESH_MAX_Y Y_BED_SIZE - (MESH_INSET)
#endif
  Responder
#24
Lo siento pero no me hago una ideal clara de como está colocado el sensor respecto a la boquilla y si la dirección del eje X es realmente en la que la cama mide 310 mm.
Si haces un esquema que incluya la posición del sensor y la dirección de los ejes, quizá quede más claro y pueda decirte si la configuración que tienes está bien o no.
  Responder
#25
Ola buenas te mando una imagen de mi impresora, segun la miras de frente el eje x se mueve hacia la derecha y hacia atras, hacia el husillo con el rodamiento el eje Y, el sensor queda abla izquierda y hacia adelante.

En la imagen que me mando lo dibujado es el trozo que el sensor no llegs a leer y hay espacio todavía, fa igual el valor que ponga no llega hay.

Muchas graciasb


[Imagen: mde.jpg]
  Responder
#26
Hola, según esa foto si el eje X va de izquierda a derecha, tal como tienes posicionado el interruptor de final de carrera y la configuración en el firmware, el sensor se encuentra hacia el sentido negativo del eje y el offset del sensor en X es -30.
El eje Y irá entonces de delante a atrás, pero me parece apreciar en la foto que su interruptor de final de carrera se encuentra al fondo. Si es así, dada la configuración que tienes en el firmware, el sensor está hacia el sentido positivo del eje respecto a la boquilla y el offset a configurar sería 69.
Además, con esa configuración vas a tener inversión en espejo en el eje X y para corregirla vas a tener que cambiar, junto al sentido del movimiento del eje, o bien la posición del interruptor o bien el tipo de final de carrera. Por cierto que, cambiar el sentido de un eje en una CoreXY, no es tan sencillo como invertir la lógica del eje en el firmware: hay que jugar con la asignación de los motores también.
Cuando se utiliza un sensor para realizar las mediciones, siempre hay una zona a la que no se puede llegar con él, debido a que la boquilla nunca puede sobrepasar los limites de la zona de impresión configurada. El tamaño de esa zona depende de la distancia a la que se encuentra el sensor de la boquilla y de los márgenes que se hayan definido para el sensor.
Por lo tanto, siempre quedarán unas bandas en todos los lados de la cama: en los opuestos a donde se encuentre el sensor respecto de la boquilla, tendrán una anchura igual a la suma de la distancia del sensor a la boquilla más el valor que indiquemos en el parámetro PROBING_MARGIN. Por el lado en que se encuentra el sensor, tendrán una anchura igual a dicho parámetro.
Así es como fija por defecto el firmware el tamaño y posición de la rejilla de medición del autolevel, siendo este el tamaño máximo que puede tener, pero podemos cambiarla como queramos (por ejemplo, para centrarla en la cama).
En Marlin 2 podemos indicar los márgenes de forma individual para cada lado de la cama, modificando apropiadamente las siguientes líneas del archivo Configuration_adv.h:

//#define PROBING_MARGIN_LEFT  PROBING_MARGIN
//#define PROBING_MARGIN_RIGHT  PROBING_MARGIN
//#define PROBING_MARGIN_FRONT  PROBING_MARGIN
//#define PROBING_MARGIN_BACK  PROBING_MARGIN


Solo tendremos que descomentar la línea correspondiente al borde de la cama que queramos cambiar y sustituir el valor PROBING_MARGIN por el margen que queramos tener en dicho borde.
Por ejemplo, en el eje X tu rejilla de medición va de X=10 a X=310-30-10=270. Es decir, tiene 260 mm de ancho y es la máxima anchura que puede tener.
Si se quiere centrar en la cama, habría que aumentar el margen izquierdo en 30 mm, por ejemplo así:

#define PROBING_MARGIN_LEFT  PROBING_MARGIN+30
  Responder
#27
Muchas gracias por la respuesta, aunque en la foto veas en endstop del carro x hay justo se mueve a la inversa ya que el endstop debe estar hacia el otro lado, el movimiento del eje x se mueve segun esta en la foto su punto 0 es la derecha y su final la izquierda, esta posicionado hay por que esta probando cuando te ia el efecto espejo, por si algo de lo. Que me as dicho influye, esta noche voy a probar con lo que me as dicho.

El punto 0 del y es el motor y de hacia adelante donde e pintado los margenes.

Muchas gracias
  Responder
#28
Te subo una copia para que veas como esta ahora misma esta, e cambiado valores y cuando ponga el mas en cualquier comando de los que me as dicho
recorta la cama en vez de alargarmela, e quitado margenes y e quitado la colocacion de sensor y no se por que ahora esta casi a ras, te estoy subiendo un video para 
que lo veas por que seguro que e tocado algo y no lo consigo ver, solo tengo definido en medio de la cama

https://youtu.be/IYNLfv0IxT8
  Responder
#29
Hola ya hacia tiempo que no veia una sparckube, pero si he visto bien el video el final de carrera del x esta en lado contrario(por lo menos con la mia) y como te dice Simemart , te puedes volver loco para combinar luego el sentido de los motores, si quieres probar con el final del x cambiado, en mi config que puse esta, ya los he conservado para otras impresoras
saludos
  Responder
#30
Hola, entiendo entonces que el origen de la máquina se encuentra en la esquina trasera derecha de la cama, mirando la impresora como en la foto.
En ese caso, los offsets del sensor respecto a ambos ejes son positivos: X=30 e Y=69.
Como indiqué anteriormente, tal y como tienes los finales de carrera, según la norma el frente de la impresora está en la parte de átras, según se ve en la foto y aunque no tendrás inversión, las piezas te saldrán orientadas al contrario que en el programa de corte.
  Responder
#31
Buenas siento la tardanza en contestar, tengo el hotend atascado ya e pedido a campy repuestos, cuando llege te cuento como a ido alfinal, pero parece que esta todo ok

Muchas gracias
  Responder
#32
buenas de nuevo

despues de volver de vacas y limpiar el atasco me e puesto a imprimir y todo ok, hasta que e puesto a imprimir una calibracion de lineas de 250mm

el lado izquierdo esta la linea bien pegada, pero segun va avanzando a derecha el nozzle sube, en vez de bajar para corregir la deviacion, la verdad esque no se por donde empezar a tocar,
por que el sensor me le los 16 punto bien y el lado izquierdo lo hace bien el problema que cuando llega al lado derecho sube,
e intentado nivelar la cama para corregir el fallo, pero no lo dectecta, me hace lo mismo llegado al lado derecho sube en vez de bajar para corregir, por donde puedo tirar
para corregir este fallo?

e estado pensado y mirado el z para ver si estaba mal pero lo tengo alineado, ya que antes tenia backlash, pero alinie los dos husillos y desparecio.

muchas gracias.

pd. activando los parametros que me diste los 2209 perfecto y los configuro como me dijiste, mucho mas comodo.
  Responder
#33
Hola, que el autolevel deje de aplicar la compensación, cuando se acerca a los límites del área de impresión, puede ser debido a que dichas zonas se encuentran fuera de la rejilla de mediciones.
En tu caso, al tener el sensor respecto a la boquilla hacia el lado negativo de los ejes XY, esto sucederá cuando se dirige hacia la parte positiva de ellos. En tu caso, tendrás unas franjas fuera de la rejilla de 69 mm en el eje X y de 30 mm en el eje Y, en el lado contrario a donde se encuentra el origen de los ejes.
Si el tipo de autolevel es LINEAR, cuando se imprime fuera de la rejilla de mediciones el resultado, que yo sepa, es impredecible.
Cuando es BILINEAR, este tiene dos comportamientos: por defecto, se mantiene la altura del punto más cercano del borde de la rejilla, pero si se habilita el parámetro #define EXTRAPOLATE_BEYOND_GRID, se hará una extrapolación para el valor de la altura en la posición actual, en función de como sea la tendencia (inclinación) en la zona más cercana de la rejilla.
Si estás utilizando el tipo LINEAR, te recomiendo que configures el BILINEAR y que actives el parámetro anterior: quizá sea ese el problema que estás teniendo y puede que se solucione así.
  Responder
#34
gracias por la rapida respuesta, voy a probar esta noche haber que tal una cosa, los valores de 69 y 30 eran antes que se imprimio la pieza con efecto espejo e solventado ese problema
y ahora al imprimir la pieza esta a la inversa, simplente si antes era negativo ahora positivo verdad. te paso una foto para que veas como esta hora

Te adjunto foto
[Imagen: IMG-20200811-174941.jpg]
  Responder
#35
Hola, creo que tienes un poco liado el tema de como van los ejes en tu impresora, debido a que consideras su parte frontal la posición en la que has sacado esa foto, pero realmente esa es la parte de atrás, como puede apreciarse en el rótulo que tienes impreso en la cama.
Como indiqué en otra respuesta, la norma es que visto desde el frente de la máquina, el eje X vaya en sentido creciente de izquierda a derecha, el Y de delante a atrás y el Z de abajo a arriba: en tu impresora eso se cumple si consideras el frente la parte del fondo en esa fotografía, por eso las piezas te salen al revés a como las ves en el programa de corte desde el punto de vista de esa foto.
Por lo tanto y vista la impresora según esa foto, el origen se encuentra en la esquina trasera derecha y el sensor está respecto a la boquilla, hacia el sentido negativo en el eje X (offset negativo) y hacia el sentido positivo en el eje Y (offset positivo), por lo que la configuración correcta es X=-69 e Y=30.
  Responder
#36
Buenas tardes

Graciass por la aclaracion, lo primero esto de los sensores es un royo, la regulacion manual con llave allen de toda la vida mas efectiva a mi gusto.

Sigo teniendo el problema de que nivela bien enmedio de la cama pero su parte frontal se levanta en vez de bajar para corregir, y en su parte trasero lo mismo perp al reves se pega demasido y empieza a obstruir la impresion, de la parte delantera a la trasera hay 1mm de diferencia, aapago la impresora regulo los husillo y pongo los al ras los dos, vuelvo a mandar la impresion despues de hacet un g29 y nada el mismo fallo,

De desnivela cerca de 1mm es como si tubiera guardado esa posicion,.

E probado en LINEAR, BILINEAR Y con MESH,

esta ultima regulo los punto manualmente, lanzo la impresion añadiendo el m420 S1. Para que lea el mapa, pero lo mismo desnivelado segun empiza a imprimir.

El mallado en todos el sensor esta dentro de la cama, y la impresion esta dentro del rango de deteccion del sensor, ayrr estube desde las 11:00 y pare a las 5:00 de la mañana ya fustrado despues de tanto probar, e alineado el x e y dos veces pero, estan bien, manualmente muevoel carro y esta perfecto sobre la cama, mando u. G29 antes de empezar y hay una desnivelacion apx de 0.15mm en las mediciones, pero una vez que lanzo la impresion, es como si borrara todo y desnivela la cama, la verdad esque, nunca me habia pasado algo asi,

Muchas gracias, si alguien le a ocurrido algo parecido y lo a solucionado, me gustaria saber cual fue su motivo.

Gracias
  Responder
#37
Hola, por lo que indicas sobre los sensores, creo que estás encarando el autolevel de forma incorrecta: es un sistema indicado cuando tenemos una cama no plana (alabeada o con pequeños altos y bajos), pero si no es así no tiene sentido utilizarlo.
Por lo que indicas, me parece entenderte que haces el G29 antes de lanzar la impresión: si es así, ¿qué tienes puesto después del G28 en el script de incio del programa de corte?
Porque si no tienes nada, este desactiva el autolevel.
O bien pones después del G28 un G29, para que haga en ese momento las mediciones, o bien las haces antes y las grabas en la memoria EEPROM (si quieres que se conserven entre reinicios), poniendo en el script después del G28 un M420 S1.
También tendrás que plantearte que quizá el problema no esté solo en el software, sino también en la parte mecánica de la impresora.
  Responder
#38
ola buenas si el g29 lo lanzo siempre despues del g28, e tenido alguna mejora despues de unos ajustes, mañana voy a desmontar todos los ejes engrasar,alinear y ajustar lo maximo posible
tambien creo que el acoplador, esta un poco doblado, mañana voya revisar pieza a pieza y te comento si hay mejoria.

muchisimas gracias por tu ayuda.
  Responder


Posibles temas similares…
Tema Autor Respuestas Vistas Último mensaje
  Impresora se detiene por fallo en la temperatura arielicho 1 35 11-04-2021, 10:56 PM
Último mensaje: Simemart
  placa mks gen v1.4 modo uart josesete 4 160 21-03-2021, 10:28 PM
Último mensaje: josesete
  Sensor capacitivo en SKR pro v1.2 roa122 2 180 21-02-2021, 01:01 AM
Último mensaje: roa122
  ramps 16 con tmc 2208 uart roa122 1 318 24-10-2020, 01:08 PM
Último mensaje: Simemart
  Error sensor inductivo F.B.G. 11 603 22-10-2020, 01:05 PM
Último mensaje: Simemart