Reprap 3d printer: Marlin Development の設定(Auto bed leveling)
Reprap MendelをAuto bed leveling仕様にしたので、Marlinの設定をまとめです。
気前よく、プログラムを公開している、The current Marlin dev team consists of:Erik van der Zalm (@ErikZalm), @daid にとても感謝。
環境
- 3dプリンター:RepRap Mendel
- プリンターのマザーボード:Arduino Mega 2560 + RAMPS 1.4
- Extruder:MK7,0.4MMのコピー
- パソコン:Windows 7,
- ファームウェアー:Marlin.
- Auto bed leveling:マイクロスイッチ+モーター方式
はじまり
Marlinをダウンロードしたら、Configuration.hを開いて,以下の箇所を自分のプリンターに合う数値などに設定し、Arduino Megaに書き込む.以下は一例です。
54行目(大体の目安です)
// This determines the communication speed of the printer #define BAUDRATE 115200 //<---
61行目
#ifndef MOTHERBOARD #define MOTHERBOARD BOARD_RAMPS_13_EFB //<--- // RAMPS 1.3 / 1.4 (Power outputs: Extruder, Fan, Bed) #endif
123行目
#define TEMP_SENSOR_0 1 //<--- #define TEMP_SENSOR_1 0 //<--- #define TEMP_SENSOR_2 0 //<--- #define TEMP_SENSOR_BED 1 //<---
148行目
#define HEATER_0_MAXTEMP 260 //<--- #define HEATER_1_MAXTEMP 260 //<--- #define HEATER_2_MAXTEMP 260 //<--- #define BED_MAXTEMP 140 //<---
324行目
#define DISABLE_MAX_ENDSTOPS //<---コメントを外す。 //#define DISABLE_MIN_ENDSTOPS
345行目
#define INVERT_X_DIR true //<--- // for Mendel set to false, for Orca set to true #define INVERT_Y_DIR true //<--- // for Mendel set to true, for Orca set to false #define INVERT_Z_DIR true //<--- // for Mendel set to false, for Orca set to true #define INVERT_E0_DIR true //<--- // for direct drive extruder v9 set to true, for geared extruder set to false #define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false #define INVERT_E2_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false
358行目
#define min_software_endstops false //<--- // If true, axis won't move to coordinates less than HOME_POS. #define max_software_endstops true // If true, axis won't move to coordinates greater than the defined lengths below.
361行目
// Travel limits after homing (units are in mm) #define X_MAX_POS 190 //<--- #define X_MIN_POS 0 #define Y_MAX_POS 190 //<--- #define Y_MIN_POS 0 #define Z_MAX_POS 190 //<--- #define Z_MIN_POS 0
378行目
#define ENABLE_AUTO_BED_LEVELING //<--- // Delete the comment to enable (remove // at the start of the line) //#define Z_PROBE_REPEATABILITY_TEST //<---コメントへ。 // If not commented out, Z-Probe Repeatability test will be included if Auto Bed Leveling is Enabled.
402行目
// set the rectangle in which to probe #define LEFT_PROBE_BED_POSITION 0 //<--- #define RIGHT_PROBE_BED_POSITION 170 //<--- #define BACK_PROBE_BED_POSITION 150 //<---y back? #define FRONT_PROBE_BED_POSITION 25 //<--- y front?
427行目
// these are the offsets to the probe relative to the extruder tip (Hotend - Probe) // X and Y offsets must be integers #define X_PROBE_OFFSET_FROM_EXTRUDER 15 //<--- #define Y_PROBE_OFFSET_FROM_EXTRUDER 55 //<--- #define Z_PROBE_OFFSET_FROM_EXTRUDER -17.8 //<--- adjust after several print #define Z_RAISE_BEFORE_HOMING 30 //<--- // (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 20*60 //<--- // X and Y axis travel speed between probes, in mm/min #define Z_RAISE_BEFORE_PROBING 25 //<--- //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
454行目
// #define Z_SAFE_HOMING //<---コメントへ // This feature is meant to avoid Z homing with probe outside the bed area.
505行目
//// MOVEMENT SETTINGS #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E #define HOMING_FEEDRATE {50/2*60, 50/2*60, 4*60, 0} //<--- // set the homing speeds (mm/min) // default settings #define DEFAULT_AXIS_STEPS_PER_UNIT {57.142, 57.142, 3200/1.25, 100.15} // default steps per unit for Ultimaker #define DEFAULT_MAX_FEEDRATE {500/2, 500/2, 5/2, 25} // (mm/sec) #define DEFAULT_MAX_ACCELERATION {9000/3,9000/3,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for Skeinforge 40+, for older versions raise them a lot. #define DEFAULT_ACCELERATION 3000/3 // X, Y, Z and E max acceleration in mm/s^2 for printing moves #define DEFAULT_RETRACT_ACCELERATION 3000/3 // X, Y, Z and E max acceleration in mm/s^2 for retracts // Offset of the extruders (uncomment if using more than one and relying on firmware to position when changing). // The offset has to be X=0, Y=0 for the extruder 0 hotend (default extruder). // For the other hotends it is their distance from the extruder 0 hotend. // #define EXTRUDER_OFFSET_X {0.0, 20.00} // (in mm) for each extruder, offset of the hotend on the X axis // #define EXTRUDER_OFFSET_Y {0.0, 5.00} // (in mm) for each extruder, offset of the hotend on the Y axis // The speed change that does not require acceleration (i.e. the software might assume it can be done instantaneously) #define DEFAULT_XYJERK 15.0 //<---もう少し小さくするかも。 // (mm/sec) #define DEFAULT_ZJERK 0.4 // (mm/sec) #define DEFAULT_EJERK 5.0 // (mm/sec)
788行目
#define NUM_SERVOS 3 //<--- // Servo index starts with 0 for M280 command // Servo Endstops // // This allows for servo actuated endstops, primary usage is for the Z Axis to eliminate calibration or bed height changes. // Use M206 command to correct for switch height offset to actual nozzle height. Store that setting with M500. // #define SERVO_ENDSTOPS {-1, -1, 0} //<--- // Servo index for X, Y, Z. Disable with -1 #define SERVO_ENDSTOP_ANGLES {0,0, 0,0, 30,110} //<--- // X,Y,Z Axis Extend and Retract angles
以上、誤字脱字の心配をよそに、