Smoothie firmware для Archie

Kovalev_Aleksey
Сообщения: 6
Зарегистрирован: 29 янв 2020, 08:13

Re: Smoothie firmware для Archie

Сообщение Kovalev_Aleksey » 29 янв 2020, 08:29

Alex Korvin писал(а):
14 май 2019, 20:46
Здесь обсуждаем прошивку Smoothie для робота Archie. Конфиг файл прикручен к сообщению. Описание там на английском, чуть позже добавлю версию на русском. Пробуйте, ковыряйте, если что - задавайте вопросы. Так же стоит сказать, что конфиг настроен для платы MKS Sbase. При использовании платы SKR или других - проверяйте номера пинов.
Доброго здравия!!! Вот и я собрал Archie MK3 v3.3.
Плата управления Mekerbase MKS SGen V1.0 ( https://aliexpress.ru/item/32964503976. ... 33ed07j4jY).
Драйвер шагового двигателя LV8729 ( https://aliexpress.ru/item/32851163537. ... 33edGtY2bo).
Дисплей с WIFI модулем MKS TFT35 V1.0 (https://aliexpress.ru/item/32871861659. ... 33edcltBS5).
Файл конфигурации взял Ваш ( (config for MKS Sbase V1.3 EN.txt) пины на платах идентичны) изменил _dir_pin установил инверсию (!) на всех четырёх портах, теперь вращение правильное. С дисплея управление корректно движение по осям,возврат домой, нагрев стола и хотенда все выполняется.
При отправке файла на печать с SD карты выполняется команда домой после её выполнения сопло медленно (очень мееедленно) отпускается в низ до стола, нагрев стола и экструдера не происходит, при этом на дисплее отображается 25/65 и 25/190. Если отключить питание и потом включить нажать команду продолжить, то выполняется команда домой ничего не нагревая начинает "печатать " при этом на дисплее отображается комнатная температура стол 25/0 экструдер 25/0. и если при печати из меню настроек поднять температуру происходит нагрев до указанной температуры.
В чём может быть причина такого поведения???

tordex
Сообщения: 20
Зарегистрирован: 26 окт 2019, 00:34

Re: Smoothie firmware для Archie

Сообщение tordex » 29 янв 2020, 13:05

Kovalev_Aleksey писал(а):
29 янв 2020, 08:29
В чём может быть причина такого поведения???
А в файле gcode, который печатаешь, команды правильные? А то если слайсеру не тот тип прошивки указать он может и скорости не в тех единицах поставить (медленное движение) и нагрев не включить. Правильные G-коды тут: http://smoothieware.org/supported-g-codes

Kovalev_Aleksey
Сообщения: 6
Зарегистрирован: 29 янв 2020, 08:13

Re: Smoothie firmware для Archie

Сообщение Kovalev_Aleksey » 29 янв 2020, 17:43

tordex писал(а):
29 янв 2020, 13:05
Kovalev_Aleksey писал(а):
29 янв 2020, 08:29
В чём может быть причина такого поведения???
А в файле gcode, который печатаешь, команды правильные? А то если слайсеру не тот тип прошивки указать он может и скорости не в тех единицах поставить (медленное движение) и нагрев не включить. Правильные G-коды тут: http://smoothieware.org/supported-g-codes
Так дело в том что на другом принтере печатает , (ramps 1.4) с этими настройками )дрыгостол:-)

tordex
Сообщения: 20
Зарегистрирован: 26 окт 2019, 00:34

Re: Smoothie firmware для Archie

Сообщение tordex » 29 янв 2020, 17:53

Ключевая фраза "на другом принтере" наверное. Сюда же можно приложить gcode файл?

Оно же тупая железка. Ей какую команду скажешь, то оно и выполнит. Экран тоже управляет принтером через G-коды. Если нагрев и движение через экран работает, а при печати нет, то это значит только то, что экран шлет правильные G-коды, а в файле прописаны неверные G-коды.
В общем нужно смотреть файл, что в нем не так.

Kovalev_Aleksey
Сообщения: 6
Зарегистрирован: 29 янв 2020, 08:13

Re: Smoothie firmware для Archie

Сообщение Kovalev_Aleksey » 30 янв 2020, 03:41

tordex писал(а):
29 янв 2020, 17:53
Ключевая фраза "на другом принтере" наверное. Сюда же можно приложить gcode файл?

Оно же тупая железка. Ей какую команду скажешь, то оно и выполнит. Экран тоже управляет принтером через G-коды. Если нагрев и движение через экран работает, а при печати нет, то это значит только то, что экран шлет правильные G-коды, а в файле прописаны неверные G-коды.
В общем нужно смотреть файл, что в нем не так.
Доброго времени!!!
Извините за мою глупость про другую Железяку
Вчера вечером с помощью автора Alex Korvin настроили слайсер и все заработало!
А вот pid температуры настроить не получилось программа теряет связь с принтером (менял провод и usb порты результаты не дало, после в плату вставил Micro SD card и вроде как пошла автокалибровка, но было уже поздно сегодня вечером родолжу.
Спасибо Вам за внимание и помощь!

Kovalev_Aleksey
Сообщения: 6
Зарегистрирован: 29 янв 2020, 08:13

Re: Smoothie firmware для Archie

Сообщение Kovalev_Aleksey » 31 янв 2020, 18:26

tordex писал(а):
13 янв 2020, 22:41
Поправил код. Коммит тут: https://github.com/tordex/Smoothieware/ ... 086d15ab88
Бинарник firmware: https://github.com/tordex/Smoothieware/ ... _delta.bin

У себя я тестил. Делал с помощью G31 grid, после чего сопло четко ходит на одном расстоянии от стола. Ну и печатает четко. Команда G30 Z... тоже работает как надо.
Фотографии z-пробы прилагаю. Брал на али. Прекрасно встала на 2-ю версию эффектора, даже не перепечатывал, просто просверлил пару отверстий.

Пул реквест не прошел. Но я узнал, что во-первых проба для дельта-робота возвращает градусы, во вторых есть параметр rdelta_homing и rotary_delta_calibration. Только вот если все это использовать то нужно придумать что-то другое для автоуровня. В общем нужно еще думать как удовлетворить автора смузи :?
такой вопрос прошил Вашей прошивкой, Выполнил команду G31 все прошло
Connecting...
Printer is now online.
>>> G31
SENDING:G31
Delta Grid Probe...
Probe start ht is 25.228210 mm, probe radius is 70.000000 mm, grid size is 3x3
probe at 0,0 is -1.261230 mm
DEBUG: X0.0000, Y-70.0000, Z2.3506
DEBUG: X-70.0000, Y0.0000, Z0.2341
DEBUG: X0.0000, Y0.0000, Z-0.0176
DEBUG: X70.0000, Y0.0000, Z-0.8645
DEBUG: X0.0000, Y70.0000, Z-1.4364
nan 2.3506 nan
0.2341 -0.0176 -0.8645
nan -1.4364 nan
Probe completed - Enter M374 to save this grid

после ввода команды М374 выдает ошибку

>>> M374
SENDING:M374
error:No grid to save


как с этим бороться???

tordex
Сообщения: 20
Зарегистрирован: 26 окт 2019, 00:34

Re: Smoothie firmware для Archie

Сообщение tordex » 31 янв 2020, 19:48

Поставьте параметр leveling-strategy.delta-grid.size во что-то побольше чем 3 (нужно нечетное число). Я пробовал 5, 7, 9. На 3-х его, похоже, плющит т.к. в конечной таблице есть значения nan. В общем-то чем больше точек, тем точней будет. Вариант с тремя точками подойдет только если вы на 100% уверены в точности ваших деталей ;)

PS. Судя по всему стол у Вас завален конкретно. почти 4 мм разницы.

Kovalev_Aleksey
Сообщения: 6
Зарегистрирован: 29 янв 2020, 08:13

Re: Smoothie firmware для Archie

Сообщение Kovalev_Aleksey » 31 янв 2020, 20:18

Изображение
tordex писал(а):
31 янв 2020, 19:48
Поставьте параметр leveling-strategy.delta-grid.size во что-то побольше чем 3 (нужно нечетное число). Я пробовал 5, 7, 9. На 3-х его, похоже, плющит т.к. в конечной таблице есть значения nan. В общем-то чем больше точек, тем точней будет. Вариант с тремя точками подойдет только если вы на 100% уверены в точности ваших деталей ;)

PS. Судя по всему стол у Вас завален конкретно. почти 4 мм разницы.
да все вроде получилось с 7 точками

выдал такое сообщение
>>> M374
SENDING:M374
grid saved to /sd/delta.grid



появился еще вопрос как и что делать с полученным файлом???
Вложения
20200131_232241.jpg
20200131_232241.jpg (4.73 МБ) 1048 просмотров
20200131_232254.jpg
Пока как-то так
20200131_232254.jpg (4.45 МБ) 1048 просмотров

tordex
Сообщения: 20
Зарегистрирован: 26 окт 2019, 00:34

Re: Smoothie firmware для Archie

Сообщение tordex » 02 фев 2020, 20:42

Представляю на суд общественности вторую версию модифицированной прошивки Smoothieware для дельта робота:
https://github.com/tordex/Smoothieware/ ... rdelta.bin

На этот раз изменений больше и необходимо внести некоторые изменения в config.txt
Во-первых нужно поставить параметр rdelta_homing:

Код: Выделить всё

rdelta_homing  true
Соответственно delta_homing убрать. Это важно т.к. теперь все изменения в модулях zprobe и endstop завязаны на rdelta_homing.
Так же delta-calibration нужно заменить на rdelta-calibration:

Код: Выделить всё

# Example for the rotary delta calibration strategy
leveling-strategy.rdelta-calibration.enable         true	# Enable basic rdelta calibration
leveling-strategy.rdelta-calibration.radius         80		# the probe radius
leveling-strategy.rdelta-calibration.initial_height 20
Для G31 теперь можно поставить параметр is_square в true чтобы заполнить квадратную сетку:

Код: Выделить всё

leveling-strategy.delta-grid.is_square	true	# square grid
Без этого параметра алгоритм пробует по кругу, а остальные точки добивает апроксимацией. Но у нас же дельта-робот с квадратным столом ;)

Есть еще один параметр, который я думаю будет полезен: mm_per_line_segment. В "дефолтном" конфиге стоит delta_segments_per_second. Они в общем делают одно и тоже. Разбивают траекторию движения на сегменты. Но, как выяснилось, планировщик Smoothieware имеет одну особенность: для дельт, реальная траектория из одной точки в другую совсем не прямая, а что-то типа дуги. А для дельта-роботов наверно все еще хуже. Поэтому делать стабильную разбивку линии на сегменты, вне зависимости от скорости, критически важно. Впрочем данный вопрос дискуссионный.

И так. Что нового в прошивке:
  • команда M306 Z0 должна корректно выставлять home_offset исходя из текущей позиции. Параметр Z должен быть в миллиметрах.
  • Сделал калибровку через G32. Пока калибруются endstop-ы и параметр delta_z_offset
Калибровка endstop-ов (G32 E)
Калибровка endstop-ов производится путем пробы 3-х точек и выставления trim-ов (M666) для того, чтобы все точки были на одной высоте.
Команда G32 E выполняет только калибровку endstop-ов. При этом старые значения trim-ов сбрасываются в 0. Чтобы выполнить использовать предыдущие значения trim-ов нужно дать команду G32 EK. Это удобно использовать если предыдущая итерация закончилась неудачно.
Алгоритм делает 10 попыток довести разницу высоты точек до нужной точности. Точность по умолчанию 0.03. Точность можно выставить свою: G32 E I0.05

Калибровка delta_z_offset (G32 Z)
Сразу оговорюсь. Это спорный тип калибровки. На своем принтере я обнаружил, что delta_z_offset сильно влияет на линзу и им можно практически полностью эту линзу выправить. Алгоритм калибровки такой: пробуем три точки и центр и по дельте расстояний меняем delta_z_offset. Всего делается 10 итераций. Если в течении этих итераций мы не достигли требуемой точности (по умолчанию 0.03) то выдается ошибка. Точность можно задать через букву J (G32 Z J0.05)

Важно: Т.к. во время калибровки меняются параметры, влияющие на высоту, то можно получить "удар в стол" при некоторых условиях. Чтобы сократить вероятность данного события параметр leveling-strategy.rdelta-calibration.initial_height нужно выставить с хорошим запасом. Именно с этой высоты начинаются пробы.

Пользуйтесь всем этим на свой страх и риск. Я, конечно, опробовал все, что сделал на своем принтере, но случаи могут быть разные.
Коментарии, предложения и критика приветствуются.

Svarog
Сообщения: 54
Зарегистрирован: 15 май 2019, 22:01

Re: Smoothie firmware для Archie

Сообщение Svarog » 04 фев 2020, 11:47

То есть я так понял G32 начал работать, строит треугольник потом приходит к среднему арифметическому и ставит по нем Z0? Или каждая точка этого треугольника как отдельный Z0 по своему ХY?
И по калибровке endstop не дошло. Доберусь до принтера попробую)
Поиск чего то не работает по форуму, обсуждали уже аналоги linear advance? Знаю есть в kisslicer программный аналог, но он меня бесит просто, после cura сарай какой то.

Ответить