MarlinFirmware / Marlin

Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.
https://marlinfw.org
GNU General Public License v3.0
16.14k stars 19.2k forks source link

La auto nivelación no funciona!!! #900

Closed pipobarroso closed 10 years ago

pipobarroso commented 10 years ago

He activado la auto nivelación siguiendo las instrucciones y la altura del hotend me salía -8.4.

define X_PROBE_OFFSET_FROM_EXTRUDER -22

define Y_PROBE_OFFSET_FROM_EXTRUDER -26.7

define Z_PROBE_OFFSET_FROM_EXTRUDER -8.4

El problema es que cada vez que hago un homing me dice siempre que la altura es 3.20. He probado aumentando el 8.4, y no cambia nada.

La cama me la nivela bien pero siempre se queda el hotend muy separado de la cama.

Esta es mi configuración

define ENABLE_AUTO_BED_LEVELING // Delete the comment to enable (remove // at the start of the line)

ifdef ENABLE_AUTO_BED_LEVELING

// There are 2 different ways to pick the X and Y locations to probe:

// - "grid" mode // Probe every point in a rectangular grid // You must specify the rectangle, and the density of sample points // This mode is preferred because there are more measurements. // It used to be called ACCURATE_BED_LEVELING but "grid" is more descriptive

// - "3-point" mode // Probe 3 arbitrary points on the bed (that aren't colinear) // You must specify the X & Y coordinates of all 3 points

define AUTO_BED_LEVELING_GRID

// with AUTO_BED_LEVELING_GRID, the bed is sampled in a // AUTO_BED_LEVELING_GRID_POINTSxAUTO_BED_LEVELING_GRID_POINTS grid // and least squares solution is calculated // Note: this feature occupies 10'206 byte

ifdef AUTO_BED_LEVELING_GRID

// set the rectangle in which to probe
#define LEFT_PROBE_BED_POSITION 35
#define RIGHT_PROBE_BED_POSITION 180
#define BACK_PROBE_BED_POSITION 180
#define FRONT_PROBE_BED_POSITION 10

 // set the number of grid points per dimension
 // I wouldn't see a reason to go above 3 (=9 probing points on the bed)
#define AUTO_BED_LEVELING_GRID_POINTS 2

else // not AUTO_BED_LEVELING_GRID

// with no grid, just probe 3 arbitrary points.  A simple cross-product
// is used to esimate the plane of the print bed
  #define ABL_PROBE_PT_1_X 15
  #define ABL_PROBE_PT_1_Y 180
  #define ABL_PROBE_PT_2_X 15
  #define ABL_PROBE_PT_2_Y 20
  #define ABL_PROBE_PT_3_X 170
  #define ABL_PROBE_PT_3_Y 20

endif // AUTO_BED_LEVELING_GRID

// these are the offsets to the probe relative to the extruder tip (Hotend - Probe)

define X_PROBE_OFFSET_FROM_EXTRUDER -22

define Y_PROBE_OFFSET_FROM_EXTRUDER -26.7

define Z_PROBE_OFFSET_FROM_EXTRUDER -8.4

define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z before homing (G28) for Probe Clearance.

                                    // Be sure you have this distance over your Z_MAX_POS in case

define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min

define Z_RAISE_BEFORE_PROBING 15 //How much the extruder will be raised before traveling to the first probing point.

define Z_RAISE_BETWEEN_PROBINGS 5 //How much the extruder will be raised when traveling from between next probing points

//If defined, the Probe servo will be turned on only during movement and then turned off to avoid jerk //The value is the delay to turn the servo off after powered on - depends on the servo speed; 300ms is good value, but you can try lower it. // You MUST HAVE the SERVO_ENDSTOPS defined to use here a value higher than zero otherwise your code will not compile.

define PROBE_SERVO_DEACTIVATION_DELAY 300

//If you have enabled the Bed Auto Leveling and are using the same Z Probe for Z Homing, //it is highly recommended you let this Z_SAFE_HOMING enabled!!!

define Z_SAFE_HOMING // This feature is meant to avoid Z homing with probe outside the bed area.

                      // When defined, it will:
                      // - Allow Z homing only after X and Y homing AND stepper drivers still enabled
                      // - If stepper drivers timeout, it will need X and Y homing again before Z homing
                      // - Position the probe in a defined XY point before Z Homing when homing all axis (G28)
                      // - Block Z homing only when the probe is outside bed area.

ifdef Z_SAFE_HOMING

#define Z_SAFE_HOMING_X_POINT (X_MAX_LENGTH/2)    // X point for Z homing when homing all axis (G28)
#define Z_SAFE_HOMING_Y_POINT (Y_MAX_LENGTH/2)    // Y point for Z homing when homing all axis (G28)

endif

endif // ENABLE_AUTO_BED_LEVELING

nothinman commented 10 years ago

@pipobarroso en Ingles, por favor. esto no es "foro" espanol.

marcossfernandez commented 10 years ago

I'm get the same behavior on bed leveling G28 and G29. Both Gcode execute as expected but the point of the hot end its over the bed about 5.1mm in my case, and report as Z=0 when M114 is sent. I tried to modify the z offset to less but the gap always is the probe when deployed. Resuming: After the bed leveling process didn't get down the hotend point to print position, It remain on the level after probe retracts. My config is prusa i3 with sg90 servo, sanguinololu 1.3a and panelolu2.

Sorry for my english

marcossfernandez commented 10 years ago

After a few tryouts I have been able to print something with autolevel routine.

I went to get a old version of marlin (two monts ago or so) and modify to bed level, and it works after all. With the latest ErikZalm Marlin from Github I can't get to work. Also its a bug compile as downloaded... check this out.

github-actions[bot] commented 2 years ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.