Изменение базовых настроек 3D принтера без перезаливки прошивки

Добавлено в закладки: 6

Современные популярные прошивки для 3D принтеров на микроконтроллерах ATmega для хранения некоторых параметров (переменных) используют энергонезависимую память EEPROM (Electrically Erasable Programmable Read-Only Memory — электрически стираемое перепрограммируемое ПЗУ). Нам EEPROM интересен тем, что мы можем менять в нём параметры с помощью G-код команд, не перезаливая прошивку каждый раз (только если включена возможность записи в EEPROM).

В прошивке Marlin за включение записи в EEPROM отвечает строка “#define EEPROM_SETTINGS

Синтаксис:

КОМАНДА(G-код) Двигатель(ось) переменная

Переменные движков можно вводить как для всех движков сразу, так и для конкретного двигателя. Например:

M201 X1000 Y1000 Z1000 E1000 или M201 X1000 – для двигателя оси X это будет равноценно, где М201 команда, X1000 – переменная для двигателя оси Х, Y1000 – переменная для двигателя оси Y и т.д.

Изначально нужно раскомментировать строку “#define EEPROM_SETTINGS” в прошивке и залить прошивку. Далее запустить Pronterface и подключиться к принтеру. Мы получим картинку (рис.1), где поле параметров (рис.2) отображает текущие параметры EEPROM принтера.

Pronterface

2

Можно в режиме On-Line настраивать ускорение и максимальную скорость движков, подавая команды М201 и М203 с параметрами движков:

  • команда М201 отвечает за ускорение в мм/с?,
  • команда М203 отвечает за максимально возможную скорость двигателя в мм/с.

Подробнее по настройке скорости / ускорения можно посмотреть на видео http://www.youtube.com/watch?v=aqLtkAzktRc

Кроме этого можно подавать другие команды для настройки. Например:

  • команда M92 устанавливает количество шагов для двигателя (я рассчитывал это так… изначально был параметр в прошивке задан например X… в пронтерфейсе я дал команду для перемещения двигателя на расстояние 100 мм. – двигатель переместился на расстояние 78,7 мм. – далее расчет… X относится к 78,7, как Y к 100… где Y = X*100/78.7… соответственно получившийся результат для оси заносим в прошивку и проверяем еще раз)
  • Так же есть другие команды: М204, M205, M206 и т.д. Мне (пока) не все команды потребовались, но например командой М200 я воспользовался, не зная зачем она нужна, но логично по дефолту стоит параметр 3,0 мм., а т.к. у меня сопло 1,75, то это параметр я изменил на 1,75
  • М206 отвечает за позицию “ДОМ“, т.е. если концевик стоит в одном месте, а позиция “ДОМ” дальше за ним, то тут требуется корректировка (я так понял, может быть ошибаюсь. Этот параметр у меня не используется).
  • M301 команда для изменения калибровки PID стола и хотенда. Пример: M301 H1 P1 I2 D3 (Более подробно по этой команде смотрите заметку с именем Пропорционально-интегрально-дифференцирующий (ПИД) регулятор и выравнивания графика температуры)
  • М500 команда для сохранения всех сделанных настроек в EEPROM.

 

При нажатии на кнопку сброса на RAMPS 1.4 (не сохранив изменения) все сделанные настройки скидываются на последние сохраненные.

 

Все G-коды смотрите в нашей wiki

Делитесь своими знаниями по правке EEPROM в комментариях.

25

Метки:    2016-02-17      Раздел: Настройка, Прошивка  
Автор: Просмотров: 38 791   6 комментариев



6 комментариев на «Изменение базовых настроек 3D принтера без перезаливки прошивки»

  1. Интересная тема *THUMBS UP* Давайте дожимайте её.

    0
  2. Все делал как в ролике, но скорости перемещения не менялись ни в какую

    0
  3. Проверьте в прошивке включение параметра EEprom… и для того, чтоб убедится – попробуйте просто не реально запредельные скорости и ускорения…
    Так же следует обратить внимание… есть ли ошибка при подаче команды М500 после изменения параметров
    Это проверено не только мной!

    0
  4. Вопрос – если команда имеет аргументы по всем осям – допускается ли подавать только один параметр Z или E к примеру? Остальные в таком случае не поменяются?

    0
    1. ДА – допускается
      НЕТ – остальные параметры меняться не должны

      0
      1. Бикзуррахмат! В смысле грандмерси! *HI*

        0

Добавить комментарий




     
Авторизация
*
*
Генерация пароля
Яндекс.Метрика