Перейти к основному содержанию

Примечания по подключению CAN-прошивки

Описание подключения

Выполните следующие три шага по порядку:

Шаг 1: Настройка DIP-переключателей

  1. Сначала обесточьте: отключите все источники питания.
  2. Найдите DIP-переключатели: переверните плату инструмента. Найдите группу DIP-переключателей на обратной стороне.
  3. Переключите в нужное положение: для использования режима CAN необходимо перевести все переключатели в положение, как показано на примере ниже.
    Loading...

Важное примечание: после изменения положения DIP-переключателей необходимо заново прошить соответствующую прошивку (в данном руководстве используется прошивка CAN).

Шаг 2: Подключение линий

  1. Оставайтесь обесточенным: не подавайте питание во время всего процесса подключения.
  2. Подготовьте кабель: используйте четырехжильный кабель XT30(2+2)-F. Определение цветов:
    • Красный (VCC): подключите к плюсу источника питания 12В-24В
    • Черный (GND): подключите к минусу источника питания
    • Желтый (CAN-H): подключите к H расширенного CAN-порта
    • Белый/Зеленый (CAN-L): подключите к L расширенного CAN-порта
  3. Подключите устройства:
    • Вставьте разъем XT30(2+2)-F кабеля в плату инструмента.
    • Подключите клеммы кабеля к модулю UTOC или к главной плате, на которую уже прошита прошивка "USB-мост CAN".
    • Наконец, подключите модуль UTOC или главную плату к вашему верхнему компьютеру (например, FLY Pi или Raspberry Pi) через USB-кабель.

Шаг 3: Настройка и проверка оконечных резисторов

Для обеспечения стабильности сигнала необходимо правильно подключить оконечные резисторы. Настройте их в соответствии с таблицей ниже и измерьте в обесточенном состоянии:

УстройствоИнструкция по эксплуатации
Плата инструментаНайдите и установите перемычку с маркировкой 120Ω.
Главная платаЕсли подключаетесь к главной плате, также установите ее перемычку 120Ω.
Модуль UTOCИмеет встроенный резистор*.

Как проверить:

  1. Обесточьте устройство полностью.
  2. С помощью мультиметра измерьте сопротивление между CAN-H и CAN-L на CAN-порте платы инструмента.
  3. Интерпретация результата:
    • Около 60 Ом: нормально, оба оконечных резистора подключены правильно.
    • Около 140 Ом: возможно, CAN-H и CAN-L перепутаны.
    • Около 120 Ом: не установлен резистор 120 Ом или обрыв линии.
    • Около 40 Ом: возможно, присутствует лишний резистор. Проверьте промежуточные узлы.

Краткое резюме: сначала обесточьте. Переключите DIP-переключатели. Правильно подсоедините провода. Затем установите перемычки 120 Ом на обоих концах. В конце измерьте сопротивление – должно быть около 60 Ом.

Контрольный список:

  • Все операции выполнялись при обесточенном устройстве
  • Все DIP-переключатели переведены вниз (режим CAN)
  • Перемычка 120 Ом на плате инструмента установлена
  • Перемычка 120 Ом на главной плате (если применимо) установлена
  • Кабель CAN-данных надежно закреплен
  • Измеренное значение сопротивления около 60 Ом

Настройка и устранение неисправностей CAN-сети

Шаг 1: Проверка распознавания CAN-устройства верхним компьютером

  1. Войдите в верхний компьютер. Введите команду:
lsusb
  1. Проанализируйте результат:
  • Видите 1d50:606f → Устройство успешно распознано
  • Сообщение об ошибке команда ls не найдена → Выполните: sudo apt-get install usbutils
  • Нет никакой реакции → Возможно, проблема с системой, рекомендуется переустановить систему
  • Несколько записей 1d50:606f → Рекомендуется оставить только одно устройство (например, при использовании UTOC отключите другие устройства с прошивкой USB-мост CAN)

⚠️ Важно: Только при наличии 1d50:606f можно продолжать поиск CAN ID

Шаг 2: Настройка CAN-сети

Выбор метода настройки в зависимости от типа системы:

Если уже настроено или используется система FlyOS-FAST, этот шаг не требуется!

Метод настройки для обычной Linux системы

Установка скорости 1M (рекомендуется):

sudo /bin/sh -c "cat > /etc/network/interfaces.d/can0" << EOF
allow-hotplug can0
iface can0 can static
bitrate 1000000
up ifconfig \$IFACE txqueuelen 1024
pre-up ip link set can0 type can bitrate 1000000
pre-up ip link set can0 txqueuelen 1024
EOF

Установка скорости 500K:

sudo /bin/sh -c "cat > /etc/network/interfaces.d/can0" << EOF
allow-hotplug can0
iface can0 can static
bitrate 500000
up ifconfig \$IFACE txqueuelen 1024
pre-up ip link set can0 type can bitrate 500000
pre-up ip link set can0 txqueuelen 1024
EOF

Примечание: Для системы FAST выполнять эту операцию не требуется!

  1. Перезагрузите систему для применения изменений:
sudo reboot

Шаг 3: Поиск CAN ID

Проверка состояния CAN:

ip -details link show can0
  • Обведенные на рисунке места показывают скорость и буфер CAN верхнего компьютера
  • Верхнее значение 1024 – текущий буфер CAN0
  • Нижнее значение 1000000 – текущая скорость CAN0
Loading...

Поиск устройства:

~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0

В норме должно отобразиться: Found canbus_uuid=xxxx...

Решение распространенных ошибок

Сообщение об ошибкеПричинаМетод решения
OSError: [Errno 19] No such deviceCAN-устройство не найдено1. Проверьте USB-подключение
2. Убедитесь в правильности прошивки
3. Выполните lsusb для проверки
can.CanError: Failed to transmit: [Errno 100] Network is downCAN-сеть не настроена1. Выполните шаги настройки выше
2. Перезагрузите систему
can.CanError: Failed to transmit: [Errno 105] No buffer space availableНедостаточно буфера1. Убедитесь, что буфер CAN равен 1024
2. Перезагрузите систему

Шаги проверки, если CAN ID не найден

Шаг 1: Базовая проверка

  • При выполнении lsusb видно 1d50:606f
  • CAN-устройство и плата инструмента включены
  • Кабель данных надежно закреплен

Шаг 2: Проверка конфигурации

  • CAN-сеть настроена правильно
  • Скорость CAN верхнего компьютера совпадает со скоростью прошивки платы инструмента (по умолчанию 1M)
  • Система перезагружена

Шаг 3: Проверка аппаратной части

  • На обоих концах CAN-шины установлены оконечные резисторы 120 Ом
  • В обесточенном состоянии измеренное сопротивление между CAN-H и CAN-L ≈ 60 Ом
  • Проверьте линии на отсутствие обрывов
  • CAN-H и CAN-L не перепутаны

Шаг 4: Обработка особых ситуаций

  • Если ID занят Klipper:

    1. Закомментируйте соответствующую конфигурацию в Klipper
    2. Полностью обесточьте на 1 минуту
    3. Снова подайте питание и выполните поиск
  • Значения измерений оконечных резисторов:

    • ≈60 Ом: норма
    • ≈120 Ом: резистор только на одном конце
    • ≈40 Ом: резисторы на трех концах
    • ≈140 Ом: возможно, провода перепутаны

Быстрый порядок устранения неисправностей

  1. Сначала проверьте устройство: lsusb → есть 1d50:606f?
  2. Затем проверьте конфигурацию: ip -details link show can0 → скорость правильная?
  3. В конце проверьте аппаратную часть: измерьте сопротивление в обесточенном состоянии → около 60 Ом?

Если после всех проверок проблема не решена: попробуйте заменить кабель данных или устройство. Или обратитесь в техническую поддержку.

Шаги обновления прошивки платы инструмента

Шаг 1: Подготовка

  1. Скомпилируйте новый файл прошивки в соответствии с инструкцией
  2. Остановите службу Klipper:
sudo systemctl stop klipper

Шаг 2: Получение ID платы инструмента

Найдите CAN UUID соответствующей платы инструмента в конфигурационном файле Klipper (например: 241696050c56)

Шаг 3: Выполнение обновления прошивки

Используйте следующую команду для прошивки (замените 241696050c56 на ваш фактический CAN UUID):

python3 ~/klipper/lib/canboot/flash_can.py -u 241696050c56

Шаг 4: Проверка результата

  • Видите сообщение CAN Flash Success → Прошивка успешно записана
  • Видите другие сообщения об ошибках → Ошибка прошивки. Проверьте UUID и подключение

Примечание: После -u обязательно должен быть пробел. Затем следует CAN UUID вашей платы инструмента.

Loading...

Шаг 5: Запуск службы

sudo systemctl start klipper

Обновление завершено!

Loading...