При запуске печати команда "Температура стола" переходит на 0 °C без явной причины

Конфигурация

  • Printrun/Pronterface
  • Slic3r 1.3.0
  • Windows 10
  • Arduino Mega + RAMPS 1.4
  • Марлин 1.1.9
  • Prusa i3 -- Hephestos BQ со следующими модификациями:
    • Блок питания 450 Вт (от 230 В до 12 В)
    • тепловой стол
    • 3D touch
    • светодиодная полоса
    • ps_on с реле на блоке питания

Условия выпуска

Я печатал нормально, пока что-то не случилось, не знаю что. Что я могу сказать, так это то, что я могу достичь любой температуры стола с Pronterface и в течение любого времени. (мой маленький блок питания мощностью 450 Вт обеспечивает достаточную мощность для моих нужд, например 60, 70 или 80 °C, хотя и немного трудно для 85 °C)

Но как только начинается печать (когда температура уже готова экструдера и стола-а я так всегда делал), двигатели перемещают экструдер в центр стола, и тогда я получаю следующую ошибку :

Error:Heating failed, system stopped! Heater_ID: 0
[ERROR] Error:Heating failed, system stopped! Heater_ID: 0

Error:Printer halted. kill() called!
[ERROR] Error:Printer halted. kill() called!

Если я проверяю температуру с помощью отчета M105 ; temp, принтер выдает мне:

  • прежде чем я нажму кнопку "начать печать" > > > > > T:245/245 , B:80/80
  • после того, как я нажму кнопку "начать печать" > > > > > T:245/245, B:80/0

так что команда desk temp в порядке ... пока я не начну печатать

Команда Temp установлена в 0

Причиной остановки принтера является огромная разница во времени между командой и датчиком. В предоставленном G-кодетемпература стола была снижена до 30 °C, что помогает :

  • запуск теста быстрее
  • это показывает, что проблема все еще продолжается (команда desk temp до 0 °C).
  • Я могу "печатать" (перемещать сопло без ошибок, но PETG не прилипает к столу), и я не получаю временной ошибки.

Полный журнал смотрите здесь.

Итак, что же приводит к тому, что команда desk temp получает значение 0?

Не из G-КОДА

Я проверил G-код, и до конца G-кода нет ни M140 *0, ни M190 *0, и я уверен, что проблема не исходит из slice/G-кода, потому что я запустил некоторые ранее успешно запущенные G-код/config, и они не работают одинаково.

Не связано с COM

Я запустил тот же gcode на SD-карте (чтобы посмотреть, был ли задействован USB), но поведение осталось прежним: как только настольная температура достигнута и началась печать, команда desk temp установлена на 0 (я вижу команду на жидкокристаллическом экране).

Аппаратное обеспечение связано?

Я не менял прошивку, и печать шла нормально, прежде чем принтер делал это, так что я думаю, что основная причина-аппаратное обеспечение.

Задействованная прошивка

Из-за "команды 0 °C" прошивка на что-то реагирует, но я не мог понять, что здесь происходит.

при проверке кода прошивки единственными причинами, по которым desk temp устанавливается на 0, когда печать выполняется без запроса, являются

  • gcode_M140()/gcode_M190(): это может быть плохая интерпретация команды ascii.
  • _lcd_preheat() ?
  • PID_autotune() : Ошибка PID algo?
  • ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED : возможно, но это также поставит команду extruder temp в 0

ничего, что могло бы объяснить это...

Какие-нибудь намеки?

, 👍2


1 ответ


Лучший ответ:

1

Я попытался, инструментируя код, узнать, где/когда изменяется временный стол.

Я обнаружил, что он вызывается в gcode M81 при запуске печати.

Подождите M81? разве это не M80, чтобы включить блок питания?

То, что я сделал на самом деле, было как проводкой этой стороны вверх вниз, так и смешиванием M80 с M81.

Но я не знал, что M80 и M81 не являются строго противоположными функциями.

Действительно, M81 помещает сигнал PS_ON в PS_ASLEEP != PS_AWAKE, но также отключает все нагреватели. Я не мог видеть его без последовательного следа, потому что температура экструдера устанавливается после M81, но не температура стола.

Проблема решена.

Надеюсь, это поможет людям в будущем тратить меньше времени, чем я, на эту простую ошибку.

Примечание: Что остается загадкой, хотя, является: почему он работал раньше на предыдущих отпечатках, а затем, внезапно, сломался?!!


,