Настройка Marlin для системы смены инструмента

Я планирую построить машину CoreXY с системой смены инструмента. Я использую прошивку Marlin firmware и BigTreeTech SKR PRO в качестве платы контроллера. В Marlin есть 3 варианта систем смены инструмента:

  • Коммутационная головка инструмента
  • Магнитная коммутационная головка инструмента
  • Электромагнитная коммутационная головка инструмента

Я хочу использовать коммутационную инструментальную головку в своем проекте с использованием серводвигателя/шагового двигателя. Итак, у меня есть 2 вопроса:

  1. Должен ли я использовать сервопривод или шаговый двигатель? Какой из них поддерживает плата и прошивка?
  2. Где я должен подключить сервопривод/шаговый двигатель на SKR PRO и каким должно быть значение SWITCHING_TOOLHEAD_SERVO_NR?

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

Правка: После стольких исследований я, наконец, нашел способ сделать это. Во-первых, нам нужно настроить изменение положения инструмента x и y и угла поворота сервопривода в файле configuration.h и оставить SWITCHING_TOOLHEAD_SERVO_NR как есть. Кроме того, раскомментируйте #define NUM_SERVOS и установите его равным 2.Затем нам нужно открыть файл Marlin\src\pins\stm32f4\pins_BTT_SKR_PRO_common.h и в разделе Servos добавить следующую строку:

#define SERVO1_PIN                          PC9

В конце концов, подключите вывод сервосигнала к выводу PC9 на удлинителе 1, а вывод VCC и GND-к выводам рядом с выводом PC9, которые являются GND и 5V.

Примечание: Я не тестировал это, потому что у меня нет этой платы. Если этот способ не сработает, пожалуйста, сообщите мне об этом в комментариях.

, 👍2

Обсуждение

Насколько мне известно, один ШИМ-вывод открыт на расширительном порту 1, но, вспоминая мастерство Arduino, вы можете использовать любой цифровой или аналоговый вывод для сервопривода. Для степпера вам нужно больше контактов, чтобы контролировать движение, на скольких инструментах вы фокусируетесь? Для каждого инструмента требуется шаговый питатель... E3D использует дуэтные платы, у них есть много вариантов для дополнительных степперов (либо через платы расширения)., @0scar

@0scar SKR PRO имеет 3 выхода экструдера, и поскольку я использую 2 из них, 1 из них (e2) будет неиспользуемым. Кроме того, я предпочитаю использовать серводвигатель. Но я не знаю, как подключить его к плате и настроить для него marlin (pins.h,configuration.h, configuration_adv.h), @Mahan Lamee


1 ответ


2
  1. Используйте сервопривод. Таким образом, вы можете использовать цифровые контакты для управления им; или в вашем конкретном случае PWM_PC9
  2. Подключите его к порту расширения и настройте один из цифровых контактов в файле конфигурации marlin. Серво перейдет в минимальное положение, когда штифт опускается, и максимальное положение, когда штифт поднимается. Я так понимаю, вам не нужны никакие остановки между ними, так как вы делаете смену инструмента.

Если вы выясните, как изменить код для поддержки изменения инструмента, мне было бы интересно узнать это.


,

Спасибо за ваш ответ. Не могли бы вы, пожалуйста, сказать мне, что такое "SWITCHING_TOOLHEAD_SERVO_NR" и как я могу его использовать, если вы знаете?, @Mahan Lamee

PWM_PC9 (вывод 4 на расширении 1), по-видимому, является единственным шим-выводом, доступным для использования. Я считаю, что SERVR_NR-это индекс сервопривода для команды M280. Я недостаточно знаю об этой части марлина, чтобы быть полезным., @user77232

После стольких исследований, наконец, я нашел способ сделать это. Для первого вопроса Серво-лучший выбор., @Mahan Lamee

Во-первых, нам нужно настроить изменение положения инструмента x и y и угла поворота сервопривода в configuration.h файл и оставьте SWITCHING_TOOLHEAD_SERVO_NR как есть. Также раскомментируйте #define NUM_SERVOS и установите значение 2.Затем нам нужно открыть файл Marlin\src\pins\stm32f4\pins_BTT_SKR_PRO_common.h и в разделе Servos добавьте следующую строку: #define SERVO1_PIN PC9` В конце подключите вывод сервосигнала к выводу "PC9" на удлинителе 1, а вывод "VCC" и " GND "- к выводам рядом с выводом PC9, которые являются " GND " и "5 В"., @Mahan Lamee

Я не тестировал это, потому что у меня нет этой платы. Если этот способ не сработает, пожалуйста, скажите мне., @Mahan Lamee

@MahanLameie, у тебя нет платы SKR_PRO? Итак, ты хочешь, чтобы я посмотрел, работает ли это? Только то, что сервопривод будет вращаться, если прошивка будет изменена таким образом? Поскольку это становится чатом: https://chat.stackexchange.com/rooms/112575/marlin-servo-control, @user77232

Нет, я его еще не купил. Просто я хочу знать, смогу ли я это сделать, поэтому, когда я буду уверен, что мне следует это сделать, я куплю это. Это недешевая плата, поэтому покупать ее, не зная, работает она или нет, неверно., @Mahan Lamee

Кроме того, я сравниваю другие платы с этой, чтобы увидеть, какая из них лучше, но, поскольку все они похожи, для меня нет разницы, какую из них упомянуть, и поскольку SKR PRO является самой популярной, я упомянул об этом в своем вопросе. Я просто хочу знать инструкции, и когда я это узнал, я могу сделать это с любой платой. Единственное, что мне нужно сделать, это найти ШИМ-код в справочнике плат и настроить вывод в Marlin., @Mahan Lamee

Давайте продолжим в чате., @Mahan Lamee