KREMEN Реклама
KREMEN Реклама

Парковка по оси Z

hcdkutber
Идет загрузка
Загрузка
13.02.2021
1843
20
Вопросы и ответы

Всем, привет!

Плата skr 1.4 turbo. Драйверы TMC 2208 v3. Прошивка Marlin.

На оси Z четыре двигателя, и четыре концевика. При парковке на ось Х и У все хорошо - проблем нет. При парковке на на ось Z ФДМ зависает сразу после выполнения парковки (каждый двигатель касается 2 раза своего концевика и ФДМ виснет). После перезагрузки и запроса m119 показывает что все концевики triggered, до парковки open.

Есть гипотезы?

// Концевики минимум работают на XYZ, концевики максимум работают на двигатели Z2,Z3,Z4. Внизу есть опции мультиконцевика.

#define USE_XMIN_PLUG

#define USE_YMIN_PLUG

#define USE_ZMIN_PLUG

#define USE_XMAX_PLUG

#define USE_YMAX_PLUG

#define USE_ZMAX_PLUG

// Концевики механические. На M119 откликаются, ФДМ при этом не виснет.

#define X_MIN_ENDSTOP_INVERTING true 

#define Y_MIN_ENDSTOP_INVERTING true 

#define Z_MIN_ENDSTOP_INVERTING true 

#define X_MAX_ENDSTOP_INVERTING true 

#define Y_MAX_ENDSTOP_INVERTING true 

#define Z_MAX_ENDSTOP_INVERTING true 

#define Z_MIN_PROBE_ENDSTOP_INVERTING true

// Прошивка формировалась с нуля калибровку осей пока не делал. Значения поставил примерно.

#define DEFAULT_AXIS_STEPS_PER_UNIT   { 100, 100, 1000, 80 }

#define DEFAULT_MAX_FEEDRATE          { 100, 100, 5, 25 }

#define DEFAULT_MAX_ACCELERATION      { 200, 200, 200, 10000 }

define DEFAULT_ACCELERATION          200

#define DEFAULT_RETRACT_ACCELERATION  10000

#define DEFAULT_TRAVEL_ACCELERATION   200

// Для удобства настройки инвертировал все оси. Должна быть инвертирована только ось Z

#define INVERT_X_DIR true

#define INVERT_Y_DIR true

#define INVERT_Z_DIR true

// Оси двигаются в нужном направлении.

#define X_HOME_DIR -1

#define Y_HOME_DIR -1

#define Z_HOME_DIR -1 

// Значения Z стоят приблизительно

#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 500

// 4 двигателя на оси Z

#define NUM_Z_STEPPER_DRIVERS 4

// включен мультиконцевик

#if NUM_Z_STEPPER_DRIVERS > 1

  #define Z_MULTI_ENDSTOPS

  #if ENABLED(Z_MULTI_ENDSTOPS)

    #define Z2_USE_ENDSTOP          _XMAX_

    #define Z2_ENDSTOP_ADJUSTMENT   0

    #if NUM_Z_STEPPER_DRIVERS >= 3

      #define Z3_USE_ENDSTOP        _YMAX_

      #define Z3_ENDSTOP_ADJUSTMENT 0

    #endif

    #if NUM_Z_STEPPER_DRIVERS >= 4

      #define Z4_USE_ENDSTOP        _ZMAX_

      #define Z4_ENDSTOP_ADJUSTMENT 0

    #endif

  #endif

#endif

// Распиновку показывать смысла нет — все концевики определяются и там все верно.

Ответы на вопросы
Lider 3D Реклама
Lider 3D Реклама