Методы тестирования оборудования
В данном документе собраны минимальные методы тестирования распространенных аппаратных модулей, используемые для изоляции отдельных компонентов при диагностике неисправностей и определения источника проблемы: конфигурация, жгут проводов, сам модуль или порт материнской платы.
Идеи тестирования основаны на конфигурациях тестирования материнской платы и инструментальной платы: для привода используется manual_stepper DriveN, для проверки низковольтных выходов — output_pin, для измерения температуры/АЦП — temperature_sensor, для проверки входных сигналов — gcode_button, для проверки акселерометра — adxl345 / lis2dw.
Все следующие шаги, связанные с подключением, отключением, прокладкой жгутов, перестановкой перемычек или переключателей DIP, должны выполняться только при полном отключении принтера от сети питания. Запрещается выполнять «горячее» подключение или отключение драйверов, проводов шаговых двигателей, CAN-линий, проводов зондов, вентиляторов или модулей акселерометра.
Данный документ не требует от клиента пайки, разборки блока питания, изменения подключения к сети 220В, измерения открытых высоковольтных/сильноточных клемм или использования профессиональных приборов, таких как осциллографы. Для электрической проверки нагревателей, столов, твердотельных реле, MOSFET-транзисторов и входных клемм питания обращайтесь в службу поддержки или к специалистам.
Подготовка к использованию
Резервное копирование исходной конфигурации
- Сделайте резервную копию текущего файла
printer.cfgи связанных файловinclude. - Создайте новый временный
printer.cfg, сначала запишите в него минимальную базовую конфигурацию ниже. - Затем, в зависимости от текущего тестируемого компонента, добавьте соответствующий фрагмент тестовой конфигурации после минимальной базовой.
- За один раз тестируйте только один тип оборудования, чтобы избежать влияния нескольких модулей на результат.
- После успешного прохождения тестовой конфигурации восстановите исходную конфигурацию для продолжения диагностики всего устройства.
Минимальная базовая конфигурация
Все тесты начинаются с этой базовой конфигурации. serial необходимо заменить на фактический идентификатор последовательного порта текущей материнской платы. Фрагменты тестовых конфигураций из последующих разделов добавляются непосредственно после этой конфигурации. Не добавляйте второй раздел [printer] или [mcu].
[printer]
kinematics: none
max_velocity: 200.00
max_accel: 40000.00
[mcu]
serial: /dev/serial/by-id/usb-Klipper_xxxxxxxxxxx
Используемые в тестовой конфигурации выводы должны строго соответствовать технической документации материнской платы, инструментальной платы или шаблону производителя. Не копируйте примеры выводов на материнские платы других моделей.
Рекомендуемый порядок тестирования
- Подключение MCU и температура материнской платы.
- Датчик температуры или вход АЦП.
- Низковольтные выходы, например, вентиляторы, RGB, зуммер.
- Входы, например, концевые выключатели, зонды, датчики окончания филамента.
- Акселерометр.
- Шаговый драйвер и двигатель.
- Связь с CAN-инструментальной платой.
Тестирование MCU и датчика температуры
Цель теста
Убедиться, что MCU может быть подключен к Klipper, и проверить, отображаются ли температура материнской платы, термистор или вход АЦП.
Фрагмент тестовой конфигурации
Добавьте следующий фрагмент после минимальной базовой конфигурации:
[temperature_sensor MCU_TEMP]
sensor_type: temperature_mcu
[temperature_sensor ADC1]
sensor_type: Generic 3950
sensor_pin: PF4
Шаги теста
- Замените
serialв базовой конфигурации иsensor_pinв тестовом фрагменте на фактические значения для вашей материнской платы. - При отключенном питании убедитесь, что разъем термистора надежно закреплен, а провода не повреждены.
- Включите питание и перезапустите Klipper.
- На панели температуры Mainsail / Fluidd проверьте, отображают ли
MCU_TEMPиADC1разумную температуру.
Интерпретация результатов
| Проверяемый пункт | Нормальный результат | Аномальное проявление | Рекомендации по устранению |
|---|---|---|---|
| Температура MCU | Отображается температура, близкая к комнатной или немного выше | Невозможно подключиться к MCU | Проверьте serial, прошивку и соединение USB/CAN |
| Термистор | Отображается температура, близкая к комнатной | ADC out of range (АЦП вне диапазона), чрезвычайно высокая или низкая | При отключенном питании проверьте разъем, распиновку проводов и модель датчика |
Только наблюдайте за показаниями температуры. Не нагревайте сопло или стол для тестирования температуры. Если вы подозреваете неисправность цепи нагрева, твердотельного реле, MOSFET-транзистора или выхода стола, используйте метод замены готовым модулем или обратитесь в службу поддержки.
Тестирование низковольтных выходов
Цель теста
Убедиться, что низковольтные выходы, такие как вентиляторы, RGB, зуммер, могут управляться Klipper.
Перед подключением или заменой низковольтных нагрузок, таких как вентиляторы, RGB, зуммеры, полностью выключите принтер и отключите его от сети питания. Не подключайте и не отключайте жгуты проводов и не прикасайтесь к открытым клеммам при включенном питании.
Фрагмент конфигурации для выхода вентилятора
Добавьте следующий фрагмент после минимальной базовой конфигурации:
[output_pin FAN0]
pin: PA0
pwm: True
cycle_time: 0.010
value: 0
shutdown_value: 0
Команды теста
SET_PIN PIN=FAN0 VALUE=0.3
SET_PIN PIN=FAN0 VALUE=1
SET_PIN PIN=FAN0 VALUE=0
Интерпретация результатов
| Проверяемый пункт | Нормальный результат | Аномальное проявление | Рекомендации по устранению |
|---|---|---|---|
VALUE=0.3 | Вентилятор вращается на низкой скорости | Не вращается или дергается | Проверьте спецификации вентилятора, питание интерфейса и совместимость с ШИМ |
VALUE=1 | Вентилятор вращается на полной скорости | Аномальная скорость или посторонний шум | Замените вентилятор или проведите перекрестное тестирование порта |
VALUE=0 | Вентилятор останавливается | Невозможно выключить | Проверьте, правильно ли указан вывод в конфигурации |
Диагностика рисков, связанных с аномальными вентиляторами
Из-за особенностей внутреннего драйвера некоторых вентиляторов, обратного напряжения или нестандартной распиновки проводов, это может привести к повреждению MOSFET-транзистора вентилятора на материнской плате, разъема вентилятора или связанных цепей основного контроллера. При обнаружении аномального вентилятора немедленно прекратите его использование и не подключайте его повторно к разъему вентилятора на материнской плате.
- При отключенном питании убедитесь, что номинальное напряжение вентилятора соответствует напряжению на разъеме вентилятора.
- При отключенном питании проверьте положительный и отрицательный полюса вентилятора, ориентацию разъема и внешний вид жгута проводов. При обнаружении повреждений изоляции, защемлений, следов подгорания, запаха гари или ослабления разъема не используйте вентилятор.
- Предпочтительно использовать заведомо исправные вентиляторы и готовые жгуты проводов для перекрестного тестирования.
- Во время теста под напряжением регулируйте скорость только с помощью
SET_PINили веб-интерфейса. Наблюдайте, нормально ли вентилятор запускается и останавливается, нет ли постороннего шума, аномального нагрева или запаха. - Если на низкой скорости наблюдаются аномальные рывки или остановка, на высокой скорости явно слышен посторонний шум, или материнская плата/разъем аномально нагреваются после подключения этого вентилятора, немедленно отключите питание и прекратите использование вентилятора.
- Не используйте мультиметр для измерения выходного сигнала, прикасаясь к открытым клеммам разъема вентилятора; при необходимости электрической диагностики обратитесь в службу поддержки или к специалистам.
Фрагмент конфигурации для выхода RGB / LED
Добавьте следующий фрагмент после минимальной базовой конфигурации:
[output_pin RGB]
pin: PA8
value: 0
shutdown_value: 0
SET_PIN PIN=RGB VALUE=1
SET_PIN PIN=RGB VALUE=0
Не рекомендуется клиентам напрямую управлять выходами нагрева, такими как HEAT0, HEAT1, BED_OUT, с помощью SET_PIN. Не включайте выход нагревателя или стола без настройки термисторной защиты. Соответствующая диагностика должна проводиться с использованием полной конфигурации нагревателя, анализа температурных кривых, замены готовых модулей или через службу поддержки.
Тестирование входов
Цель теста
Убедиться, что входы, такие как концевые выключатели, зонды, датчики окончания филамента, HV-IN инструментальной платы, распознаются Klipper.
Перед проверкой распиновки проводов концевых выключателей, зондов, датчиков окончания филамента или входных кнопок полностью выключите принтер и отключите его от сети питания. Во время запроса состояния под напряжением воздействуйте только на механическую часть переключателя, не прикасайтесь к разъемам, клеммам или оголенным проводам.
Тестирование входа с помощью gcode_button
Подходит для тестирования HV-IN, датчиков двери, датчиков окончания филамента или обычных входных контактов на инструментальной плате.
Добавьте следующий фрагмент после минимальной базовой конфигурации:
[gcode_button IO0]
pin: ^PA1
press_gcode:
# Оставьте пустым, только для запроса состояния входа
QUERY_BUTTON BUTTON=IO0
- Выполните
QUERY_BUTTON BUTTON=IO0при нетронутом переключателе. Должно вернутьсяIO0: RELEASED. - Вручную активируйте механическую часть переключателя и снова выполните команду. Должно вернуться
IO0: PRESSED. - Если состояние не меняется, проверьте при отключенном питании распиновку проводов, разъем, наличие символа
^(подтяжка) и конфигурациюpin.
Обычное тестирование концевого выключателя обычно включает параметры всей системы, такие как оси движения, шаговые двигатели, направление движения и диапазон перемещения. Для минимального аппаратного тестирования предпочтительнее использовать gcode_button, который проверяет только состояние входного вывода.
Тестирование акселерометра
Цель теста
Убедиться, что акселерометр ADXL345 / LIS2DW на инструментальной плате или внешнем модуле может нормально обмениваться данными.
Перед проверкой, переподключением или заменой жгута проводов акселерометра полностью выключите принтер и отключите его от сети питания. Не подключайте и не отключайте сенсорный модуль и не прикасайтесь к открытым контактам при включенном питании.
Добавьте следующий фрагмент после минимальной базовой конфигурации:
- ADXL345
- LIS2DW
[adxl345]
cs_pin: gpio13
spi_bus: spi1
axes_map: x,y,z
[lis2dw]
cs_pin: gpio12
spi_bus: spi0_gpio4_gpio3_gpio2
axes_map: x,y,z
Команды теста
ACCELEROMETER_QUERY
Интерпретация результатов
| Проверяемый пункт | Нормальный результат | Аномальное проявление | Рекомендации по устранению |
|---|---|---|---|
ACCELEROMETER_QUERY | Возвращает данные x/y/z | Invalid adxl345 id (неверный идентификатор adxl345) или отсутствие данных | При отключенном питании проверьте жгут проводов, сверьте cs_pin и spi_bus |
Тестирование периферии и приводов: Тестирование драйверов, тестирование CAN-инструментальной платы и таблица распространенных аномалий приведены в разделе Тестирование периферии и приводов.