Кремень КД Реклама
Кремень КМ Реклама

Прошиваем Marlin v1.1.6 в Anet A8 (A6)

AndyBig
Идет загрузка
Загрузка
11.11.2017
59306
174
Техничка

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

31
Статья относится к принтерам:
Anet A8
Прошиваем Marlin v1.1.6 в Anet A8 (A6)
Некоторое время назад мне захотелось добавить на принтер автовыравнивание стола перед печатью, но родная прошивка Анетов этого не позволяет, а ковыряться с портированием Мерлина мне было ну очень лень. И тогда в сети была найдена уже портированная версия мерлина - SkyNet3D. Я ее скачал, прошил, изменил какие-то параметры под себя и долгое время пользовался ею, все было вполне удобно. Правда, автовыравниванием я быстро перестал пользоваться :)

Но Мерлин развивается, а Скайнет прекратил свое существование. По прекрасной причине - теперь Мерлин сам поддерживает Анеты, вобрав в себя результаты работы автора Скайнета :)

Итак, установка Мерлина на Анет А8. На А6 тоже ставится, только некоторые значения в конфиге, возможно, придется изменить под свои требования. А можно ничего не менять, оставить по умолчанию.

Что для этого нужно:

1. Среда Arduino с настройками для платы Anet. Я не силен в ардуинах и их настройках, просто у меня осталась эта среда от Скайнета со всеми нужными настройками. Выкладываю - https://drive.google.com/open?id=1uE3Nb6RBP6NJoI5q0udWFwj4l65OoAKy (установка не требуется, просто распаковать).

2. Драйвер для платы Anet. Я его положил в папку drivers ардуины, это исполняемый файл CH341SER.EXE. На Windows 7 x32/x64 он точно работает, на десятке - не знаю, не проверял. Если что - просто ищите драйвер для USB-чипа CH340.

3. Сам Мерлин. Качается с официального сайта - http://marlinfw.org/meta/download/ . Или можете скачать мой вариант со всеми внесенными изменениями - https://drive.google.com/open?id=1AHrjKjkdDCrw0e_sYMsCcGfAPaskJPkT.

Итак, распаковали в отдельные папки Ардуину и Мерлина, что дальше?

Устанавливаем драйвер для платы Anet - запускаем файл CH341SER.EXE из папки drivers ардуины и соглашаемся со всеми предупреждениями об установке драйвера.

Если Вы скачали Мерлина с официального сайта, то необходимо сделать это: заходим в папку Мерлина и копируем файлы Configuration.h и Configuration_adv.h из папки Marlinexample_configurationsAnetA8 (или A6 если у Вас этот принтер) в папку Marlin. Соглашаемся с заменой файлов при запросе.

Если Мерлин скачан в моем варианте, то копировать конфиги не нужно.

1. Подключаем принтер к компьютеру (питание на принтер должно быть подано), убеждаемся, что он нормально виден в системе (в диспетчере устройств в разделе 'Порты (COM и LPT)' должен появиться пункт 'USB-SERIAL CH430 (COMxx)', где xx - это присвоенный ему номер порта).

2. Запускаем Ардуину файлом arduino.exe и в ней открываем файл Marlin.ino из папки Marlin. У Вас откроется скетч прошивки. Заходим в меню Инструменты->Плата и выбираем тем плату Anet V1.0 если она не выбрана. Потом меню Инструменты->Порт и выбираем тот COM-порт, который присвоен принтеру (см. п. 1).

Все, теперь прошивку можно скомпилировать (меню Скетч->Проверить/Компилировать или Control+R) и залить в принтер (меню Скетч->Загрузка или Control+U). В процессе компиляции и загрузки внизу будет отображаться ход процесса. После загрузки принтер автоматически перезагрузится и будет готов к работе.

При желании Вы можете изменить различные параметры прошивки и заново скомпилировать и загрузить ее, но в оригинальном Мерлине с конфигами для Анетов по умолчанию все настроено в рабочем варианте, можно загружать и пользоваться как есть.

Опишу какие параметры были изменены мной и которые, возможно, захотите изменить Вы сами под свои нужды.

В файле Configuration.h:

- раскомментировал CUSTOM_MACHINE_NAME и внес в него название принтера Anet A8. Это просто отображение названия при включении принтера.

- изменил значение HEATER_0_MAXTEMP на 300 - максимальная температура сопла.

- изменил значение BED_MAXTEMP на 150 - максимальная температура стола.

- закомментировал родные значения PID для экструдера:

#define DEFAULT_Kp 21.0

#define DEFAULT_Ki 1.25

#define DEFAULT_Kd 86.0

и вставил свои, полученные от калибровки:

// ANET A8 Standard Extruder at 220 Degree Celsius and 100% Fan

#define DEFAULT_Kp 20.40

#define DEFAULT_Ki 1.62

#define DEFAULT_Kd 64.35

- раскомментировал PIDTEMPBED и закомментировал BED_LIMIT_SWITCHING , однако это можно делать только если нагрев стола подключен не через реле. В оригинальной конструкции принтера - можно :)

- закомментировал родные значения PID для стола:

#define DEFAULT_bedKp 10.00

#define DEFAULT_bedKi .023

#define DEFAULT_bedKd 305.4

и вставил свои, полученные от калибровки:

//12V 120W aluminium + 12V 200W silicone with tempered glass Anycubic Ultrabase

//from autocalibrate at 120 degree

#define DEFAULT_bedKp 158.57

#define DEFAULT_bedKi 12.92

#define DEFAULT_bedKd 486.48

ВНИМАНИЕ: на оригинальном столе лучше оставить родные значения. У меня в дополнение к родному столу наклеена еще 300-ваттная силиконовая грелка, поэтому значения PID потребовали изменений.

- изменил значение Z_MIN_ENDSTOP_INVERTING на false, но у меня родной концевик заменен на оптический, в оригинальном принтере это делать не нужно.

- заменил значение DEFAULT_TRAVEL_ACCELERATION на 400

- раскомментировал PROBE_MANUALLY

- закомментировал MIN_SOFTWARE_ENDSTOPS

- раскомментировал MESH_BED_LEVELING - эта опция и PROBE_MANUALLY нужны для возможности время от времени выставить автовыравнивание в полуавтоматическом режиме, когда принтер двигает сопло к очередной из 9 точек, а пользователь кнопками 'вверх' и 'вниз' подгоняет сопло к столу. Затем результаты выравнивания можно сохранить в EPROM.

- изменил значение MESH_INSET на 20 - это отступ от краев стола для крайних точек авто выравнивания

- раскомментировал LCD_BED_LEVELING - для тех же целей, что и предыдущий пункт.

- изменил значение HOMING_FEEDRATE_XY на (30*60) , а то уж больно резво он мчится к концевикам по X и Y :)

- заменил блок

#define PREHEAT_1_TEMP_HOTEND 190

#define PREHEAT_1_TEMP_BED 60

#define PREHEAT_1_FAN_SPEED 0 // ANET A6 Default is 255

#define PREHEAT_2_TEMP_HOTEND 240

#define PREHEAT_2_TEMP_BED 90

#define PREHEAT_2_FAN_SPEED 0 // ANET A6 Default is 255

на

#define PREHEAT_1_TEMP_HOTEND 180

#define PREHEAT_1_TEMP_BED 60

#define PREHEAT_1_FAN_SPEED 0 // ANET A6 Default is 255

#define PREHEAT_2_TEMP_HOTEND 220

#define PREHEAT_2_TEMP_BED 105

#define PREHEAT_2_FAN_SPEED 0 // ANET A6 Default is 255

просто мне так удобнее. Первая группа - это установки преднагрева (включаемого через меню принтера) для PLA, вторая - для ABS.

- раскомментировал INDIVIDUAL_AXIS_HOMING_MENU - это позволяет из меню хомить оси по отдельности, а не только все скопом, иногда бывает удобно.

Все, сохраняем изменения, компилируем и загружаем в принтер, все работает, радуемся :)

Что заметил из плюсов по сравнению со Скайнетом 2.3.2:

- гораздо быстрее стал реагировать на нажатие кнопок, уже почти нормальная реакция, а не как было - жать надо было вдумчиво, не торопясь :)

- ось Z теперь можно двигать через меню не только по 0.1 и 1 мм, но и по 10. В Скайнете я для этого специально ковырялся в исходниках, делал эту возможность.

- при длительном удержании кнопки на изменение какого-то значения (температуры, координаты, скорости вентилятора и т.п.) после 10 изменений обычным шагом начинаются изменение с шагом х10, после 10 этих - с шагом по х100. Например, нужно увеличить скорость вентилятора через меню - захожу в соответствующий пункт и нажимаю кнопку 'вверх', значение вентилятора начинает расти с шагом 1, но после 10 таких шагов оно начинает увеличиваться уже с шагом 10, а после 10 этих больших шагов начинает расти с шагом 100. Очень стало удобно, потому что раньше был только минимальный шаг со скорость его изменения 2 шага в секунду.

- в меню преднагрева теперь можно выбрать три варианта - нагрев сопла, нагрев стола и нагрев их обоих. Раньше отдельно нагрева сопла не было. Тоже добавляет удобства.

Больше явных плюсов/минусов не заметил, но сам только сегодня прошился, еще не успел повозиться плотно :)

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

31
Комментарии к статье