Подключение сенсора осуществляется с помощью гибкого шлейфа, в каком направлении подключать шлейф видно на фото
Поддержка EDDY добавлена в последние версии klipper, поэтому необходимо обновиться.
Для этого подключаемся к принтеру по SSH и вводим команды:
cd klipper
git pull
Теперь вам нужно заново собрать прошивку для вашей CAN платы и залить её через Katapult. Мы подробно описали процесс сборки прошивки и прошивки CAN платы Fly SB-2040V3 в нашей статье.
Вам необходимо внести изменения в ваш файл printer.cfg
Удалить строчку:
[include ./klicky/klicky-probe.cfg] # Настройка Klicky
Данную секцию нужно полностью удалить, вместо неё добавляем две новые секции:
[probe_eddy_current mellow_eddy]
sensor_type: ldc1612
z_offset: 2.945
i2c_address: 43
i2c_mcu: sb2040
i2c_bus: i2c1b
x_offset: 0
y_offset: 18
speed:40
lift_speed: 5
[temperature_probe mellow_eddy]
sensor_type: Generic 3950
sensor_pin: sb2040:gpio28
horizontal_move_z: 2
В платах версии Pro, которые идут с Eddy сенсорами, используется драйвер TMC 2240, вместо стандартных TMC 2209. Поэтому нам нужно удалить секцию [tmc2209 extruder]
и вместо неё добавить секцию [tmc2240 extruder]
:
[tmc2240 extruder]
uart_pin: sb2040:gpio15
interpolate: True
run_current: 0.55
rref: 12300
stealthchop_threshold: 0
driver_TBL: 2
driver_HSTRT: 5
driver_TOFF: 2
driver_HEND: 3
driver_IHOLDDELAY: 6
Изменяем значение в параметре horizontal_move_z: 29
на horizontal_move_z: 2
В данной секции вам необходимо удалить вызовы макросов взятия и установки датчика Klicky:
В результате раздел gcode в секции должен приобрести следующий вид:
gcode:
G90
G0 Z15 F600
G28 X Y
G0 X175 Y175 F6600
G28 Z
G0 Z20 F1800
Добавляем секцию:
[force_move]
enable_force_move: true
В нижней части секции добавляем следующий код:
[gcode_macro QUAD_GANTRY_LEVEL]
rename_existing: _QUAD_GANTRY_LEVEL
gcode:
SAVE_GCODE_STATE NAME=STATE_QGL
BED_MESH_CLEAR
{% if not printer.quad_gantry_level.applied %}
_QUAD_GANTRY_LEVEL horizontal_move_z=10 retry_tolerance=1
{% endif %}
_QUAD_GANTRY_LEVEL horizontal_move_z=2 METHOD=scan
# G28 Z
RESTORE_GCODE_STATE NAME=STATE_QGL
В результате секция должна выглядеть вот так:
После добавления данных в файл printer.cfg принтер должен ожить и можно переходить к калибровкам.
Для этого руками передвиньте голову в центр стола и разместите её примерно на высоте 20 мм от стола. Большая точность тут не нужна. Просто отмерьте линейкой 20 мм и этого будет достаточно.
Выполните команду в консоли принтера:
LDC_CALIBRATE_DRIVE_CURRENT CHIP=mellow_eddy
Система откалибрует ток, выдаст информацию о полученном значении и предложит сохранить конфигурацию. Нажимаем сохранить, принтер перезагрузить прошивку.
Обратите внимание на значение тока, которое измерил датчик. Оно должно быть около 16. Если значения 0 или 30, проверяйте проводку!
Теперь необходимо откалибровать смещение датчика тока относительно сопла.
Нагрейте сопло до 255 градусов. Все последующие действия необходимо делать с нагретым соплом.
Для этого в начале введите команду:
SET_KINEMATIC_POSITION z=40
Таким образом, мы принудительно уверим принтер, что он сейчас находится на высоте 40 мм по Z.
Далее выполняем команду поиска нулевых значений по X и Y (поиск дома):
G28 X Y
Принтер найдёт нули и вы сможете переместить голову в центр стола через вэб интерфейс или с сенсорного экрана.
Когда голова будет стоять в центре стола, выполните команду:
PROBE_EDDY_CURRENT_CALIBRATE CHIP=mellow_eddy
Откроется стандартный интерфейс калибровки высоты сопла:
С помощью обычного бумажного метода (подложив листок бумаги формата A4) откалибруйте высоту сопла.
По окончании нажмите примерить, система начнёт калибровку и по окончании предложит сохранить конфурацию. Соглашайтесь, принтер перезагрузит прошивку.
Мы рекомендуем провести ещё один тест перед запуском выравнивания стола.
Поднимите портал руками на высоту порядка 100 мм.
Приготовьте что то металлическое (например стальную линейку)
Введите команду G28
. Принтер пойдёт в дом по X и Y, потом приедет в центр стола и начнёт опускаться вниз. Не дожидаясь, когда принтер опуститься до стола, подставьте линейку под сенсор. По идее голова должна среагировать, остановиться и снова начать опускаться с меньшей скоростью.
Снова подставьте линейку. Голова должна остановиться.
Если всё произошло как описанно выше - поздравляю, сенсор работает. Если голова не остановилась и не среагировала - делайте аварийную остановку и проверяйте проводку, после чего заново пройдите процедуру калибровки.
Поздравляю! Калибровка завершена!
Для построения карты стола производитель реккомендует использовать следующую команду:
BED_MESH_CALIBRATE METHOD=scan SCAN_MODE=rapid
Переходим в printer.cfg и находим секцию [stepper_z]
.
1. В параметре endstop_pin
вместо probe:z_virtual_endstop
указываем PIN, на который вы подключили концевой выключатель.
2. Добавляем параметр position_endstop
: со значением 1.
Нажимаем сохранить и перезагрузить.
Делаем команду:
G28 X Y
С помощью кнопок управления подводим голову так, что бы она распологалась точно над концевым выключателем.
Записываем значения X и Y и указываем их в printer.cfg в секции [homing_override] в строчку gcode:
Проверяем работоспособность концевого выключателя, для этого переходим в раздел Система:
Пока концевой выключатель не нажат, мы видим зелёную надпись “Не сработал”. Когда концвой выключатель нажат, мы должны увидеть красную надпись “Сработал”.
Теперь можно выполнить команду
G28
При её вызове голова должна найди дом по X, Y, а далее перемеситься над концевым выключателем по Z и там начать опускаться на него до срабатывания.
При первом запуске наблюдайте за процессом и будьте готовы нажать кнопку аварийного отключения в случае, если что то пойдёт не по плану :)
Нагрейте стол до рабочей температуры.
Нагрейте сопло до рабочей температуры.
Выполните команду G32
.
Переместите голову в центр стола с помощью кнопок перемещения.
Выполните команду:
Z_ENDSTOP_CALIBRATE
Откалибруйте высоту смещение с помощью стандартного бумажного теста.
Нажмите сохранить и перезагрузить.