Marlin/ru
English • العربية • български • català • čeština • Deutsch • Ελληνικά • español • فارسی • français • hrvatski • magyar • italiano • română • 日本語 • 한국어 • lietuvių • Nederlands • norsk • polski • português • русский • Türkçe • українська • 中文(中国大陆) • 中文(台灣) • עברית • azərbaycanca • |
Release status: рабочее
Description | Прошивка для плат Ардуино и их аналогов
|
License | GNU GPL v3
|
Author | |
Contributors | |
Based-on | |
Categories | Прошивки
|
CAD Models | |
External Link |
Ведущие разработчики Марлин в настоящее время EvdZ и bkubicek, многие другие вносят свой вклад в виде патчей. Это прошивка для однопроцессорных плат типа Ардуино. Марлин также работает на платах Ultimaker. Поддерживает печать с карты памяти SD, в том числе и с вложенных папок, имеет упреждающее планирование траекторий. Эта прошивка распространяется по лицензии GNU GPL v3 или (по желанию пользователя) любой более поздней версии. Она основана на прошивке Sprinter , которая была лицензирована под GPL v2.
Текущая версия: 1.0.2:
Работает на RAMPS 1.4, Ultimaker и Sanguinololu. Возможно работает на Generation_6_Electronics, и других аналогичных платах.
Contents
Общая информация
Эта прошивка гибрид от Sprinter и grbl со множеством оригинальных деталей и дополнений.
Основа прошивки - Sprinter и Grbl. Спринтер разработали Климент и caru. Ведущим разработчиком Grbls является Симен Svale Skogsrud. Sonney Чон (Chamnit) улучшил некоторых части grbl для Ultimaker , и дальнейшее развитие опиралось на него. Некоторые функции были добавлены: Lampmaker, Брэдли Фельдман и другими ...
Особенности:
- Ступенчатое движение на основе реальных ускорений
- Высокая частота шага
- Анализ следующих шагов (Позволяет поддерживать высокую скорость, когда это возможно.)
- Прерывание движение, основанное на реальных линейного ускоренияч
- Защита по температуре
- Поддержка алгоритма Мэттью Робертс Подробнее см. : http://reprap.org/pipermail/reprap-dev/2011-May/003323.html
- Полная поддержка концевиков
- Поддержка SD карт
- Поддержка папок SD Card
- Поддержка автоматического запуска SD Card
- поддержка ЖК (максимум 20x4 )
- Система ЖК меню для автономной печати с SD карты , управляется клик- кодера .
- EEPROM память для хранения макс - скорость , максимального ускорения, и подобных переменных.
- Температура передискретизация
- Динамический Температура setpointing ака " AutoTemp "
- Поддержка QTMarlin , очень бета GUI для ПИД -тюнинга и тестирования скорость ускорения . https://github.com/bkubicek/QTMarlin
- Фиксатор триггер отчетности в программном обеспечении .
- Обновлено sdcardlib
- Нагреватель отчетности питания . Полезно для ПИД мониторинга .
- ПИД тюнинг
- CoreXY кинематика ( www.corexy.com / theory.html )
- кинематика Delta
- Поддержка двух X- каретка для нескольких систем экструдера
- Настраиваемые последовательный порт для поддержки подключения беспроводных адаптеров .
- Автоматический режим работы вентиляторов экструдер / холодной конец охлаждения на основе температуры сопла
RC серво Поддержка , угол или длительность непрерывных сервоприводов вращения указать .
- Постельное Авто Выравнивание .
The default baudrate is 250000. This baudrate has less jitter and hence errors than the usual 115200 baud, but is less supported by drivers and host-environments.
Отличия и дополнения от Спринтер
Упреждение:
Marlin обеспечивает упреждающий просчет рывков. Без этого происходила бы полная остановка с последующим ускорение в каждом углу. Lookahead will only decelerate and accelerate to a velocity, so that the change in vectorial velocity magnitude is less than the xy_jerk_velocity. This is only possible, if some future moves are already processed, hence the name. It leads to less over-deposition at corners, especially at flat angles.
Поддержка дуги:
Slic3r может найти кривые, которые, хотя и были разбиты на сегменты, изначально были предназначены, чтобы описать дугу . Marlin Марлин способен печатать эти кривые. Преимущество в том, что прошивка сама может выбрать разрешение, и может печатать дугу с почти постоянной скоростью, что обеспечит хороший результат. Также в таком случае требуется меньшая пропускная способность последовательного интерфейса.
Устранения шума дискретизации:
Для устранения шума дискретизации, чтобы сделать PID точнее, 16 АЦП измерений температуры усредняются.
AutoTemp:
Если ваш Gcode содержит широкий диапазон скоростей экструдера, или вы хотите в реальном времени изменять скорость печати, нужно менять температуру соответствующим образом. Обычно, более высокая скорость требует более высокой температуры. Теперь это можно сделать при помощи функций AutoTemp . Вы можете включить режим AutoTemp путем указания M109 без указания значения F. Когда режим активирован максимальная скорость шагов экструдера высчитываться, и называется "maxerate" шаг/сек. Требуемая температура затем будет рассчитана как Т = tempmin+factor*maxerate, и ограниченна между tempmin и tempmax. Если температура устанавливается вручную или с помощью GCode в значение менее tempmin, она будет сохраняться без изменений. В идеале, ваш Gcode может быть полностью свободным от указания температуры , кроме M109 S T F в начале, и M109 S0 в конце gcode.
EEPROM:
Позволяет хранить данные о скорости, ускорениях, значениях PID в EEPROM. Откуда они будут прочитаны после загрузки, независимо от того, что сказано у вас Configuration.h (позволяют менять и сохранять значения без компиляции прошивки).
LCD Меню:
Если ваше оборудование позволяет, вы можете использовать LCD + CardReader+ Энкодер. Это позволит менять в реальном времени температуру, ускорения, скорости перемещения, печатать с SD карты без помощи компьютера, и.т.д. Пример рабочего железа можно посмотреть например тут: http://www.thingiverse.com/thing:12663.
Поддержка папок на SD карте:
Если у вас есть кардридер, вы можете использовать папки. Листинг файлов в pronterface покажет "/путь/подпуть/file.g" . Вы можете поместить файл в папку. (Скрываются резервные копии различных операционных систем, а также файлы которые не заканчиваются на ".g" ).
Уведомление срабатывания концевика:
Если концевик сработал двигаясь к концевику, место, в котором прошивка считает концевик был инициализирован выводится в последовательный порт. Это полезно, потому что пользователь получает предупреждающее сообщение. Инструменты, такие как QTMarlin можно использовать, чтобы найти приемлемые комбинации скорости + ускорения.
Парадигма программирования:
Не важно для пользователя, но Марлин был разделен на тематические куски, и попытался по возможности применяются локальные переменные. Это сделано для того, чтобы сделать код более понятным, что с чем взаимодействует, это приводит к более высокому уровню модульности. Мы считаем, что это является предварительным шагом для портирования этой прошивки на платформу ARM в будущем. Много оперативной памяти (с поддержкой LCD ~ 2200 байт ) было сохранено путем хранения строк сообщений в памяти программы. В последовательном соединение, #define-based уровень абстракции был осуществлен, таким образом, ясно что, некоторая передача информации (обычно начинающийся с "echo:"), ошибка "error:", или как нормальный протокол, необходимый для обратной совместимости.
Измерение температуры основанное на прерываниях:
Для АЦП измерений используются прерывания. Это позволяет сократить блокировку в процедуре управления нагревателем.
Не стандартные M-Коды, Не совпадающие со старой версией Спринтера:
Movement:
- G2 - CW ARC
- G3 - CCW ARC
General:
- M17 - Включить питание на всех шаговых двигателях. Введена для совместимости с ReplicatorG.
- M18 - Отключить все шаговые двигатели; то же что M84.Введена для совместимости с ReplicatorG.
- M30 - Print time since last M109 or SD card start to serial
- M42 - Изменить состояние пина через gcode
- M80 - Включить электропитание
- M81 - Выключить электропитание
- M114 - Показать текущую позицию
- M119 - Показать состояние концевых выключателей
Movement variables:
- M202 - Установить максимальное ускорение в единицы/с^2 для перемещений. (M202 X1000 Y1000) Не используется в Marlin!!
- M203 - Установить максимальные скорости перемещения (M203 X200 Y200 Z300 E10000) в мм/с
- M204 - Установить ускорения по умолчанию: S нормальные движения T filament only moves (M204 S3000 T7000) в мм/сек^2 также устанавливает минимальное время сегмента в мс (B20000) для предотвращения опустошения буфера и минимальный подачи M20
- M220 - set build speed mulitplying S:factor in percent ; aka "realtime tuneing in the gcode". So you can slow down if you have islands in one height-range, and speed up otherwise.
- M301 - Установить параметры PID, P I и D
- M303 - Автонастройка PID, S = необходимая температура.
- M400 - Завершить все буферизованные движения.
Advance:
- M200 - Задать диаметр нити
- M205 - дополнительные настройки: минимальная скорость S = во время печати Т = во время перемещения, B = минимальный временной сегмент X = максимальная ху рывок, Z = максимальная Z рывок
EEPROM:
- M500 - Сохранить параметры в EEPROM
- M501 - Считать параметры из EEPROM (если вам необходимо восстановить параметры после того как вы их вручную изменили).
- M502 - Вернуть настройки к "заводским" (прописанным в прошивке).
- M503 - Отобразить текущие настройки (из памяти, не из eeprom)
Настройка и компиляция:
Скачать и установить программу Arduino IDE v0.22 http://www.arduino.cc/en/Main/Software (последняя доступная версия 1.6.5)
Для плат Gen6 и Sanguinololu папку Sanguino в папке Marlin нужно скопировать в Arduino environment. Копировать Marlin\sanguino \hardware\Sanguino
Установить Ultimaker's RepG 25 build http://software.ultimaker.com для поддержки SD и как лучшая замена (apart from stl manipulation) download the very nice Kliment's printrun/pronterface https://github.com/kliment/Printrun
Скопировать Ultimaker Marlin firmware https://github.com/ErikZalm/Marlin/tree/Marlin_v1 (Use the download button)
Запустить Arduino IDE. Выберите меню "Tools -> Board -> Arduino Mega 2560" или ваш микроконтроллер. Выберите правильный серийный порт в меню "Tools ->Serial Port". Откройте Marlin.pde (для Arduino IDE версии выше 1.0 файл Marlin.ino)
Кликнуть на кнопку Verify/Compile
Кликнуть на кнопку Upload. Если все будет хорошо то прошивка загрузиться.
Start Ultimaker's Custom RepG 25. Убедитесь что Show Experimental Profiles включен в "Preferences -> Select Sprinter as the Driver"
Нажмите кнопку Connect.
Отчеты об ошибках
ИЗВЕСТНЫЕ ПРОБЛЕМЫ: RepG пишет на экране: Unknown: marlin x.y.z
Для сообщения о новых ошибках используйте Issue tracker on github
Документация
Документация доступна по адресу http://www.marlinfirmware.org