Технический форум по робототехнике.
webkoder » 21 июл 2014, 12:37
Очень круто!
Только хотелось бы автоматизировать процесс т.е. зписать заранее в g-код на определенный слой команды:
1. Парковка для перезарядки
2. Ретракт
3. Ожидание нажатия кнопки
4. Прогон нового пластика и чистка конца.
Вот меня больше всего интересует пункт 3. Как его реализовать средствами Marlin-а? Какой у нас код паузы с ожиданием кнопки и на какой пин повесить кнопку?
Nophead использует похожую технику для замуровывания гаек в пластик
http://hydraraptor.blogspot.ru/2014/03/ ... holes.htmlНо у него пример для OctoPrint.
Добавлено спустя 1 час 18 минут 37 секунд:В доке Marlin-a написано:
M0 - Unconditional stop - Wait for user to press a button on the LCD (Only if ULTRA_LCD is enabled)
M1 - Same as M0
M0 - Безусловная остановка - Подождать, пока пользователь нажмет кнопку на ЖК-дисплее (только если ULTRA_LCD)
M1 - Тоже самое что M0
А у меня сейчас LCD от RepRapDiscount и на нем есть только кнопка "stop" это она?
MAD_Deimon » 21 июл 2014, 12:55
webkoder писал(а):А у меня сейчас LCD от RepRapDiscount и на нем есть только кнопка "stop" это она?
По умолчанию в Марлине эта кнопка "аварийная остановка", при нажатии вгоняет прошивку в бесконечный цикл (мгновенно вешает принтер без возможности продолжить).
webkoder » 21 июл 2014, 14:14
MAD_Deimon писал(а):webkoder писал(а):А у меня сейчас LCD от RepRapDiscount и на нем есть только кнопка "stop" это она?
По умолчанию в Марлине эта кнопка "аварийная остановка", при нажатии вгоняет прошивку в бесконечный цикл (мгновенно вешает принтер без возможности продолжить).
Это я знаю (define KILL_PIN 41 в pins.h). Но для этой цели у меня рубильник на 220 стоит =)
Хочу повесить на эту кнопку сигнал, который прошивка ждет после команды M0
Вот не знаю как =(
karabas2011 » 22 июл 2014, 13:09
webkoder писал(а):Очень круто!
Только хотелось бы автоматизировать процесс т.е. зписать заранее в g-код на определенный слой команды:
1. Парковка для перезарядки
2. Ретракт
3. Ожидание нажатия кнопки
4. Прогон нового пластика и чистка конца.
Вот меня больше всего интересует пункт 3. Как его реализовать средствами Marlin-а? Какой у нас код паузы с ожиданием кнопки и на какой пин повесить кнопку?
Nophead использует похожую технику для замуровывания гаек в пластик
http://hydraraptor.blogspot.ru/2014/03/ ... holes.htmlНо у него пример для OctoPrint.
Добавлено спустя 1 час 18 минут 37 секунд:В доке Marlin-a написано:
M0 - Unconditional stop - Wait for user to press a button on the LCD (Only if ULTRA_LCD is enabled)
M1 - Same as M0
M0 - Безусловная остановка - Подождать, пока пользователь нажмет кнопку на ЖК-дисплее (только если ULTRA_LCD)
M1 - Тоже самое что M0
А у меня сейчас LCD от RepRapDiscount и на нем есть только кнопка "stop" это она?
1 Давишь паузу и хоум XY
2 делаешь чего надо ( возможно надо нажать motors off)
3 если башку/кровать смещал значит ещё раз хоум XY
4 жмёшь продолжить
всё. Я так пластик меняю. Если у вас по продолжению получается ступенька - ставьте нормальные концевики.
Всё это не относится к принтерам, где при выключении моторов кровать сама едет по Z. Например Дельта или Принтбокс3д
Radus » 23 июл 2014, 13:17
webkoder писал(а):Очень круто!
Только хотелось бы автоматизировать процесс т.е. зписать заранее в g-код на определенный слой команды:
1. Парковка для перезарядки
2. Ретракт
3. Ожидание нажатия кнопки
4. Прогон нового пластика и чистка конца.
Вот меня больше всего интересует пункт 3. Как его реализовать средствами Marlin-а? Какой у нас код паузы с ожиданием кнопки и на какой пин повесить кнопку?
Nophead использует похожую технику для замуровывания гаек в пластик
http://hydraraptor.blogspot.ru/2014/03/ ... holes.htmlНо у него пример для OctoPrint.
Добавлено спустя 1 час 18 минут 37 секунд:В доке Marlin-a написано:
M0 - Unconditional stop - Wait for user to press a button on the LCD (Only if ULTRA_LCD is enabled)
M1 - Same as M0
M0 - Безусловная остановка - Подождать, пока пользователь нажмет кнопку на ЖК-дисплее (только если ULTRA_LCD)
M1 - Тоже самое что M0
А у меня сейчас LCD от RepRapDiscount и на нем есть только кнопка "stop" это она?
Для этого в марлине есть команда M600
Она делает паузу, отводит в сторону голову отключает экструдер.
Пищит спикером, выводит надписи на экран и ждет нажатия кнопки на дисплее.
Мне такой вариант не подошел потому что у меня нет клавиатуры и нет дисплея.
Поэтому я использую только управление с компа.
karabas2011 » 24 июл 2014, 17:22
у меня тоже - пронтерфейсом пользуюсь
zeroz » 08 авг 2014, 11:02
Друзья, пытался просто сменить филамент, вытащил пруток, вставляю - вся трубка ПТФЕ забилась. Разбор показал что забилась намертво, никакие зубочистки не помогали, даже пробовал шестигранником проталкивать - толку ноль.
Непойму, что я сделал не так? вытаскивал быстро, вставлял обратно, буквально, через пару секунд.
icehardy » 09 авг 2014, 20:54
наверняка перегрев в зоне ПТФЕ
не должен расплав по нему подниматься
webkoder » 11 авг 2014, 17:43
Ну да, похоже на классическую пробку из-за перегрева термобарьера - пластик начал размягчаться в верхней части экструдера. Снять нагреватель с термобарьера и выдавить пробку вверх.
Revenger » 07 янв 2015, 23:22
Ребята, а можно как-то вычислить эту команду паузы в прошивке и как-то использовать на компьютере?
Например в прошивке моего принтера (репетиерхост, пруса 3), при печати с СД и нажатии на паузу, голова уезжает в сторону, что очень удобно, а вот если печать из репетиерхоста, то пауза останавливает прямо на детали, и проплавляет уже напечатанное. Хотелось бы как-то это "облагородить", чтобу и из проги голова уезжала.
Vovich70 » 08 янв 2015, 01:11
Обычно голова уезжает при команде смены филамента,а при паузе просто остается на месте.
У меня с СД однозначно на месте по паузе остается.
Revenger » 08 янв 2015, 03:41
Ну не знаю как обычно, но у меня именно так (голова едет в дальний угол стола) если паузу выбрать на дисплее принтера.
raven82 » 29 янв 2015, 05:11
научились менять филамент.
прошивка марлин
добавили в код:
g1 f50000 - ретракт
g1 z50 - поднять голову
m0 - пауза
аппарат останавливается в нужном месте, делает ретракт, поднимает голову.
с лсд панели выгоняем пластик вверх, загоняем новый, прогоняем маленько на подставленный листок бумаги.
при этом голову никуда не двигаем.
в меня жмем resume print.
голова возвращается на необходимую позицию и печать продолжается.
пс. м0 - пауза при печати с карты памяти
использовано для печати 3д визиток
Revenger » 29 янв 2015, 16:06
Вот спасибо. Еще бы научиться вписать в старт-код, чтобы если из программы печатаешь, то голова уезжала в сторону так же, как она уезжает при нажатии на "пауза" на панели принтера при печати с СД.
MonZon » 31 мар 2015, 10:56
Всем привет!
Забил себе 2 макроса для смены филамента (Спасибо Radus за видео):
Сменить филамент
- Код: Выделить всё • Развернуть
M25 ; Pause
G91 ; relative positioning
G92 E0 ; reset extruder
G1 E-4 ; retract extruder a bit
G1 Z20 ; lift 1 cm
G1 E-70 F1800 ; retract old filament
M84 E ; turn extruder off
Продолжить печать
- Код: Выделить всё • Развернуть
G1 E70 F1800 ; feed the filament and purge old color
G92 E0 ; reset extruder
G1 Z-20 ; move Z back
G90 ; absolute positioning
M24 ; Resume printing
При запуске первого макроса происходит следующее - печать останавливается, ретрактит немного чтобы избежать соплей, поднимает голову, ретрактит весь пруток. А затем самое неожиданное - голова и стол уползают (и хорошо если в сторону с концевиками, бывало и в противоположную - самоубийством принтер занимается
![Mad :x](http://roboforum.ru/images/smilies/aggressive.gif)
), но всегда в разные стороны и с разными скоростями - пробовал на разных моделях.
В чем может быть дело?
UPD: Дело может быть в том, что S3D продолжает и дальше посылать команды принтеру, после выполнения моего макроса. Как это победить - вот вопрос.