:: RepRap Prusa i3 bed auto-level ::
Firmware Marlin
Téléchargement dernière version
$ git clone https://github.com/MarlinFirmware/Marlin.git
Configuration du firmware
Fichier Configuration.h
Inversion du signal de fin de course pour l'axe Z
const bool Z_MIN_ENDSTOP_INVERTING = true;
Activation de l'option AUTO_BED_LEVELING
#define ENABLE_AUTO_BED_LEVELING #define LEFT_PROBE_BED_POSITION 0 #define RIGHT_PROBE_BED_POSITION 120 #define BACK_PROBE_BED_POSITION 150 #define FRONT_PROBE_BED_POSITION 50 #define AUTO_BED_LEVELING_GRID_POINTS 3
La tête de l'extrudeur étant directement utilisée pour sonder le niveau du lit, la compensation pour les axes X et Y est nulle. La compensation pour l'axe Z sera mesurée directement, on la définit à 0 dans un premier temps.
#define X_PROBE_OFFSET_FROM_EXTRUDER 0 #define Y_PROBE_OFFSET_FROM_EXTRUDER 0 #define Z_PROBE_OFFSET_FROM_EXTRUDER 0
Compiler et téléverser le nouveau firmware sur le RAMPS
Exécuter le code ci-dessous pour préparer la mesure de la compensation de l'axe Z :
G28 X ; home X G28 Y ; home Y G28 Z ; home Z G1 Z10 ; fix Z to avoid glass-break G29 ; auto bed level G1 Z10 ; fix Z to avoid glass-break G1 X100 Y150 ; position extruder in center of the bed (300x200)
Mesurer la compensation pour l'axe Z
Placer une feuille de papier sur le lit et descendre l'extrudeur petit à petit jusqu'à ce que le papier soit pincé entre l'extrudeur et le lit, le papier doit encore pouvoir bouger tout en étant légèrement "accroché". A ce moment, lire la mesure Z sur l'écran LCD, la valeur lue correspond à la compensation pour l'axe Z.
Mettre à jour la variable Z_PROBE_OFFSET_FROM_EXTRUDER avec la valeur trouvée et compiler/téléverser de nouveau le firmware sur le RAMPS.Custom G-code (slic3r)
G28 X ; home all axes G28 Y G28 Z G29 ; z-probe G1 Z3 G1 X0 Y0 F3000 ; fix feedrate for next moves G1 Z0
Example "Ptr G-code -> Prefix" in KISSlicer
M104 S<TEMP> G28 X G28 Y G28 Z G29; Detailed Z-Probe G1 Z3 G1 X100 Y200 F3000 G1 Z0 M109 S<TEMP>