Добавление MCU инструментальной платы и межплатная конфигурация
Эта страница предназначена для добавления инструментальной платы, проверки состояния нескольких MCU и настройки межплатных выводов после успешного подключения главного MCU. Если вы еще не завершили проверку подключения главного MCU, сначала завершите Руководство по подключению MCU.
Шаг 1: Подготовка и подключение инструментальной платы
Перед началом добавления инструментальной платы убедитесь, что:
- Главный MCU прошел проверку подключения в соответствии с Руководством по подключению MCU.
- На инструментальную плату прошита прошивка.
- Подтвержден способ связи инструментальной платы: CAN, USB или RS232.
Перед началом полностью выключите принтер и отключите источник питания. Не подключайте и не отключайте жгуты проводов, не раскладывайте порядок проводов интерфейса и не прикасайтесь к клеммам при включенном питании.
После полного отключения питания подключите кабель данных инструментальной платы к соответствующему интерфейсу хост-компьютера или материнской платы. Не разбирайте блок питания, не изменяйте подключение к сети и не прикасайтесь к оголенным клеммам. После подтверждения надежности подключения снова включите питание.
При одновременном подключении нескольких однотипных инструментальных плат их ID сложно различить. Рекомендуется подключать и записывать только одну инструментальную плату за раз; перед каждым добавлением или удалением инструментальной платы необходимо полностью отключать питание.
Шаг 2: Запрос и запись ID инструментальной платы
Инструментальная плата и материнская плата используют одинаковые правила заполнения MCU ID:
Пояснение по настройке ID MCU
ID MCU в Klipper относится к идентификационной информации, используемой для подключения платы управления в секциях конфигурации [mcu] или [mcu xxx]. В зависимости от способа связи запись различается:
| Способ подключения | Элемент конфигурации | Пример |
|---|---|---|
| USB прошивка | serial: | serial: /dev/serial/by-id/usb-Klipper_xxxxxxxxxxxx |
| CAN прошивка | canbus_uuid: | canbus_uuid: xxxxxxxxxxxx |
| Устройство RS232 | serial: | serial: /dev/serial/by-path/xxxxxxxxxxxx |
| MCU хост-компьютера | serial: | serial: /tmp/klipper_host_mcu |
Правила заполнения:
- Основная плата по умолчанию использует
[mcu], а инструментальная или расширительная плата использует пользовательские имена, такие как[mcu tool],[mcu toolboard]. - Для USB прошивки заполняется только
serial:, для CAN прошивки — толькоcanbus_uuid:, не оставляйте оба элемента одновременно в одном[mcu]. - В машинах с несколькими MCU каждый
[mcu xxx]должен использовать свой реальный идентификатор, не копируйте один и тот же USB ID или CAN UUID. - Имя
[mcu xxx]влияет на префикс выводов, например, для[mcu tool]вывод должен быть записан какtool:gpio13; регистр имени должен быть согласован. xxxxxxxxв примерах документации нельзя использовать напрямую, его необходимо заменить на фактический найденный идентификатор.- Для устройств RS232, помимо
serial:, обычно также необходимо указатьbaud: 250000иrestart_method: command; следуйте документации соответствующего продукта.
Частые ошибки:
- Использование ID режима прошивки (например, ID, содержащий
katapult,canboot) в качестве ID прошивки Klipper. - В USB прошивке указан
canbus_uuid:, или в CAN прошивке остался старыйserial:. - Устройство RS232 заполнено только путём, при этом пропущены необходимые
baud:илиrestart_method:. - Инструментальная плата настроена как
[mcu], что перекрывает конфигурацию MCU основной платы. - Префикс вывода не соответствует имени MCU, например, конфигурация
[mcu toolboard], а вывод записан какtool:gpio13.
Запрос USB ID: Для USB прошивки выполните
ls /dev/serial/by-id/*для получения идентификатора.
Запрос CAN ID: Поиск сети CAN и идентификатора
Запрос пути RS232: Выполните
ls -l /dev/serial/by-path/для получения стабильного пути к устройству.
Конфигурация инструментальной платы: Добавление MCU инструментальной платы и кросс-платная конфигурация
Команды запроса и описание результатов для USB, CAN, RS232: Конфигурация MCU ID
При записи ID также определите уникальное и короткое имя MCU, например toolboard, toolboard1 или toolboard2, и убедитесь, что:
- USB ID содержит
usb-Klipper_..., а не ID режима прошивки Katapult/Bootloader. - Результат запроса CAN показывает
Application: Klipper. - RS232 использует стабильный путь в
/dev/serial/by-path/, и в соответствии с требованиями продукта заполняются скорость передачи и метод перезапуска. - ID инструментальной платы не совпадает с ID материнской платы и других инструментальных плат.
Шаг 3: Добавление MCU инструментальной платы
После получения ID инструментальной платы сначала создайте резервную копию текущего полного printer.cfg, затем добавьте в него соответствующий раздел конфигурации MCU:
- USB инструментальная плата
- CAN инструментальная плата
- RS232 инструментальная плата
[mcu toolboard]
serial: /dev/serial/by-id/usb-Klipper_stm32f446xx_54321-if00
[mcu toolboard]
canbus_uuid: 688e89f0e402
[mcu toolboard]
serial: /dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0
baud: 250000
restart_method: command
- Имя MCU может быть полностью настраиваемым, например
toolboard,tool,extruder_mcuи т.д., главное, чтобы оно оставалось уникальным в конфигурации. - Имя MCU будет использоваться как префикс для межплатных выводов, например, при ссылке на
[mcu toolboard]пишетсяtoolboard:PA0. Регистр имени должен быть согласован. - Имя и ID каждого MCU должны быть уникальными и не должны повторяться с главным MCU или другими инструментальными платами.
- При настройке нескольких инструментальных плат задайте каждому устройству разные имена для различия.
После завершения конфигурации нажмите SAVE & RESTART для сохранения и перезапуска Klipper.
Шаг 4: Проверка подключения всех MCU
После добавления инструментальной платы и перезапуска Klipper необходимо убедиться, что все MCU находятся в сети:
- Откройте интерфейс Fluidd и нажмите
Systemв левом меню. - В разделе
Mcu Informationубедитесь, что главный MCU и все инструментальные платы правильно распознаны и отображаются как подключенные.
Проверка версии прошивки
После завершения подключения всех MCU необходимо проверить совместимость версий прошивки:
- Откройте интерфейс Fluidd и нажмите
Systemв левом меню. - В разделе
Mcu Informationнайдите полеVersion. - Убедитесь, что версии прошивки всех MCU совпадают с версией Klipper на хост-компьютере.
- За исключением предварительно настроенных специализированных устройств, все самостоятельно скомпилированные прошивки должны соответствовать версии Klipper на хост-компьютере.
- Версия прошивки системы FAST соответствует версии системы, скомпилированная прошивка Klipper соответствует версии системы.
- Разные версии прошивки могут привести к аномалиям функций, сбоям связи или нестабильности системы.
Шаг 5: Настройка межплатных выводов
При использовании нескольких инструментальных плат может возникнуть потребность в распределении выводов между платами. Например: функция нагрева использует разъем нагрева первой инструментальной платы, но датчик температуры подключен к материнской плате или второй инструментальной плате.
В много-MCU конфигурации Klipper выводы в любом разделе конфигурации могут напрямую ссылаться на выводы любого определенного MCU с помощью формата <имя_MCU>:<номер_вывода>, без дополнительной настройки. Klipper автоматически отправляет команды на соответствующий MCU через шину связи (CAN/USB/串口).
Типичный сценарий: нагрев на инструментальной плате, датчик температуры на материнской плате
Предположим, конфигурация системы следующая:
- MCU материнской платы: материнская плата подключена через USB, датчик температуры подключен к материнской плате.
- toolboard1: инструментальная плата, нагревательный стержень и шаговый двигатель экструдера подключены к инструментальной плате.
Содержимое <step_pin>, <heater_pin>, <sensor_pin> и т.д. ниже является заполнителем позиции. Его необходимо заменить на реальные выводы в соответствии с документацией соответствующей платы FLY материнской платы или инструментальной платы, а также убедиться, применима ли логика инверсии ! к реальному оборудованию.
Шаг 1: Определение всех MCU
[mcu]
serial: /dev/serial/by-id/usb-Klipper_stm32h723xx_12345-if00
[mcu toolboard1]
canbus_uuid: e51d5c71a901
Шаг 2: Прямая межплатная ссылка на выводы в конфигурации
[extruder]
# Шаговый двигатель и нагрев используют выводы инструментальной платы
step_pin: toolboard1:<step_pin>
dir_pin: toolboard1:<dir_pin>
enable_pin: !toolboard1:<enable_pin>
heater_pin: toolboard1:<heater_pin>
# Датчик температуры использует вывод материнской платы
sensor_type: <sensor_type>
sensor_pin: <sensor_pin>
# Остальные параметры, такие как rotation_distance, диапазон температур и т.д., настраиваются в соответствии с реальным оборудованием
- Формат вывода инструментальной платы:
<имя_MCU>:<номер_вывода>, напримерtoolboard1:<heater_pin>. - Выводы главного MCU можно записывать напрямую фактическим именем вывода, без префикса.
- Выводы в одном разделе конфигурации могут принадлежать разным MCU, Klipper автоматически обработает межплатную связь.
Дополнительные примеры межплатной конфигурации
- Датчик температуры на второй инструментальной плате
- Несколько экструдеров на разных инструментальных платах
- Межплатное управление вентилятором
Нагревательный стержень на первой инструментальной плате, датчик температуры на второй инструментальной плате:
[extruder]
step_pin: toolboard1:<step_pin>
heater_pin: toolboard1:<heater_pin>
sensor_type: <sensor_type>
sensor_pin: toolboard2:<sensor_pin>
Два экструдера подключены к разным инструментальным платам:
[extruder]
step_pin: toolboard1:<step_pin>
heater_pin: toolboard1:<heater_pin>
sensor_pin: toolboard1:<sensor_pin>
[extruder1]
step_pin: toolboard2:<step_pin>
heater_pin: toolboard2:<heater_pin>
sensor_pin: toolboard2:<sensor_pin>
Экструдер на инструментальной плате, вентилятор модели подключен к материнской плате:
[fan]
pin: <fan_pin>
[heater_fan throat_fan]
pin: toolboard1:<fan_pin>
heater: extruder
heater_temp: 50
fan_speed: 1.0
- При перекрестном обращении к выводам на разных платах убедитесь, что соответствующий MCU корректно определен в конфигурационном файле через
[mcu <имя>]. - Имя MCU должно совпадать по регистру:
[mcu ToolBoard]и обращениеtoolboard:PA0приведут к ошибке. - Рекомендуется подключать тесно связанные по функциям устройства (например, нагреватель и термодатчик) к одной и той же плате инструмента для достижения наилучшей скорости отклика и надежности.
Часто задаваемые вопросы
| Признак проблемы | Направление диагностики |
|---|---|
| Плата инструмента не в сети | После отключения питания проверьте соединение кабеля данных, убедитесь в правильности ID, различайте ID прошивки Klipper и ID режима прошивки |
| Конфликт имен/ID нескольких плат инструмента | Имя и ID каждого [mcu] должны быть уникальными, см. Конфигурация ID MCU |
| Несоответствие префикса вывода | Префикс вывода для [mcu toolboard] должен быть toolboard:, имя должно совпадать по регистру |
| Несовместимость версии прошивки | Перекомпилируйте прошивку для соответствия версии Klipper на хосте |
| CAN UUID не найден | См. Сеть CAN и поиск ID |
| Сбой связи RS232 | Проверьте, настроены ли baud: 250000 и restart_method: command |