ENDSTOP. Конец, остановись!

Есть куча статей про то, как надо подключать концевики (endstop). И с картинками, и без. Но, к сожалению, во всей этой куче присутствует только практическая часть и нет ни слова о теории. А отсутствие теоретических знаний ломает умы начинающих принтеростроителей, заставляя их проводить над прошивкой и электроникой длинные и бессонные ночи))

В этой статье я расскажу, как ПРАВИЛЬНО подключить и настроить эндстопы (концевики) с первого раза. А так же расскажу, что будет, если при подключении будет допущена ошибка.

Все параметры конфигурации прошивки относятся к Marlin 1.1.0-RC7 (иногда их переименовывают от версии к версии, но смысл остается)

Статья написана в формате изложения, а не пошаговой инструкции и я крайне рекомендую ознакомиться с ней полностью, прежде чем ковыряться в кишочках подопытного девайса.

механический endstop, концекик, оконечник, концевой выключатель

 

Часть первая. Начнем с самих концевиков

 

При постройке принтера используются концевики двух типов

  1. нормально замкнутый – замкнут, когда на него не воздействуют внешние факторы.
  2. нормально разомкнутый – разомкнут, когда на него не воздействуют внешние факторы.

 

Кроме того, концевики различаются по конструкции на оптические и на механические. Механические – это банальная кнопка. Оптические – это фотодатчик. Как правило, но не всегда! Механические концевини нормально разомкнутые, а оптические нормально замкнутые. Проверить можно мультиметром в режиме прозвонки. В общем то, я навряд ли открыл кому-то глаза на мир концевиков этим мини вступлением, но без него статья была бы не полной.

 

Параметры, отвечающие за тип концевика, называются:

#define X_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.

#define Y_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.

#define Z_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.

#define X_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.

#define Y_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.

#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.

 

Часть вторая. Настало время  теории

 

Как всем известно, принтер работает в декартовой системе координат. Мы ее прекрасно знаем еще со школьной скамьи, две пересекающиеся под прямым углом оси Х и У. Точка пересечения этих осей – начало координат. Справа от начала координат, по оси Х – положительные значения, слева – отрицательные. Сверху от начала координат, по оси Y – положительные значения, снизу – отрицательные.  Объема в 3д печати добавляет ось Z, стремящаяся в сторону наблюдателя от плоскости ХУ.  Координатные оси

Почему было так важно вспомнить школьный курс математики? Потому, что все наши принтеры при построении модели отталкиваются от начала координат (точка с координатами X0,Y0,Z0) и далее только в плюс! И в итоге, у нас остается следующая картина

Координатные оси

Так мы привыкли смотреть на координатные оси при изучении математики, но в принтере мы их видим под другим гулом. Таким:

Оси 3D принтера

Именно поэтому левый, нижний, ближний к пользователю угол является стандартом де-факто у производителей принтеров для координат X0,Y0,Z0. Мы же всегда смотрим на принтер спереди!))

 

Что такое MIN_ENDSTOP и MAX_ENDSTOP?

MIN_ENDSTOP – концевик, находящийся ближе к началу координат или совпадающий с точкой 0

MAX_ENDSTOP – концевик, находящийся ближе к максимально возможной координате по оси или совпадающий с ней.

За редким исключением, концевик MIN всегда равен нулю, а концевик MAX всегда равен максимально возможной координате. Когда концевик срабатывает, он останавливает движение по этой оси.

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

 

Часть третья. Логика работы принтера

 

Тут работает всего три правила:

  1. Принтер не поведет головку в сторону сработавшего концевика
  2. Принтер не поведет головку в координату меньше “0” (нуля) (если установлен только MAX_ENDSTOP или принтер только включился и еще не парковался)
  3. Принтер не поведет головку дальше максимальной координаты (если установлен только MIN_ENDSTOP)

 

ВАЖНО! ОТКЛЮЧИТЕ В ПРОШИВКЕ НЕИСПОЛЬЗУЕМЫЕ ГНЕЗДА КОНЦЕВИКОВ!!! ЭТО МОЖЕТ ПРИВЕСТИ К НЕПРАВИЛЬНОЙ РАБОТЕ ПРИНТЕРА!!!

Параметры отвечающие за включение/выключение гнезда концевика:

#define USE_XMIN_PLUG

//#define USE_YMIN_PLUG

#define USE_ZMIN_PLUG

//#define USE_XMAX_PLUG

#define USE_YMAX_PLUG

//#define USE_ZMAX_PLUG

Данный алярм связан с тем, что несуществующий в реальности концевик может вызвать ложное срабатывание. Например,

В прошивке указано #define USE_ZMAX_PLUG – т.е. включен MAX_ENDSTOP по оси Z.

При этом параметр #define Z_MAX_ENDSTOP_INVERTING равен false – это значит, что установлен нормально замкнутый концевик.

Т.к. фактически в разъеме ZMAX_PLUG пусто, то цепь получится разомкнутой, что и приведет к ложному срабатыванию.

 

Часть четвертая. Первые шевеления

 

Эта часть продублирует кучу материала вываливающего из гугла по запросу «настройка 3д принтера», поэтому я кратко пробегусь по пунктам не вдаваясь в детали.

Воображаемым подопытным другом будет Prusa i3. Концевики  XY расставлены в точках MIN_ENDSTOP, а Z в точке MAX_ENDSTOP. Размер печатной области X150,Y150,Z200.

  1. Питание принтера ОТКЛЮЧЕНО
  2. Руками выкатываем все оси +/- на середину. Т.е. каретку Х ставим посередине ширины. Стол аналогично, но по глубине. Вращая винты оси Z, поднимаем всю ось Х на середину высоты.
  3. Перепроверяем прошивку.
  4. Убеждаемся, что направления парковки заданы верно. В данном случае:

 

#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR 1

  1. Заливаем прошивку
  2. Включаем принтер. На экране принтера или в пронтерфейсе/репитере появятся координаты X=0,Y=0,Z=200. Это правильно, т.к. принтер при включении не знает в каком положении находятся его оси и тупо вбивает парковочные значения, а концевик по Z установлен в максимально возможной координате.
  3. Через пронтерфейс/репитер/экран принтера задаем движение по оси Х в плюс на 5-10 мм, каретка сместилась вправо? Да – все ок. Нет – меняем направление вращения мотора через прошивку или перевернув разъем мотора на 180гр. Перепроверяем
  4. Через пронтерфейс/репитер/экран принтера отдаем команду запарковать ось Х. Запарковалась? Да – все ок. Нет – меняем знак у параметра #define X_HOME_DIR
  5. Через пронтерфейс/репитер/экран принтера задаем движение по оси Y в плюс на 5-10 мм, стол поехал на нас (от заднего края принтера к переднему)? Да – все ок. Нет – меняем направление вращения мотора через прошивку или перевернув разъем мотора на 180гр. Перепроверяем
  6. Через пронтерфейс/репитер/экран принтера отдаем команду запарковать ось Y. Запарковалась? Да – все ок. Нет – меняем знак у параметра #define Y_HOME_DIR
  7. Через пронтерфейс/репитер/экран принтера задаем движение по оси Z в плюс на 5-10 мм, ось X поднялась? Да – все ок. Нет – меняем направление вращения мотора через прошивку или перевернув разъем мотора на 180гр. Перепроверяем
  8. Через пронтерфейс/репитер/экран принтера отдаем команду запарковать ось Z. Запарковалась? Да – все ок. Нет – меняем знак у параметра #define Z_HOME_DIR

 

Примечания редактора:

  1. Лучше ориентироваться на перемещение сопла относительно стола, так как оно наш рабочий инструмент.
  2. пронтерфейс – Pronterface.
  3. репитер – Repetier-Host.

 

 

Часть пятая, заключительная. What the hell is going on.

 

Если после прочтения данного материала просветление так и не наступило, принтер продолжает двигать осями не в ту сторону, а заглавие данной части полностью отражает действительность, то Вы, батенька, знатный рукожоп))) Или просто устали… Поспите/прогуляйтесь/выпейте чаю.

Стоит еще раз проверить правильность подключения концевиков.

В пачках однотипных параметров настройки концевиков можно легко ошибиться, особенно если делаешь это в первый раз. Для удобства, в отдельном текстовом файле, можно сгруппировать блоки настроек по осям, а потом перенести значения в прошивку.

 

Спасибо за внимание!

Рейтинг: 15

   2016-12-24      Раздел: Настройка, Новичку, Прошивка, Электроника  
Автор: Просмотров: 1 731   8 комментариев



8 комментариев на «ENDSTOP. Конец, остановись!»

  1. Концевые выключатели /конечники / EndStop’ы

    И так давно уже назревало и тут в кассу вышла статья про конечники, и так по порядку
    Балет марлизонский акт первый, концевики бывают следующих разновидностей:
    1. Механический, так или иначе представляет из себя два контакта которые замыкаются или размыкаются механическим действием
    a. Даже самый хороший и дорогой механический конечник шумит (создает помехи при замыкании иразмыкании)
    b. Даже лучшие имеюют не стабильность хода, так далее сработку всегда в разном месте а не всегда в одной опзиции, лучшие дорогие имеют параметр разброса около 0.3 мм но если у него есть плече там как бог пошлет
    c. С увеличением использованного ресурса стареют, так далее характеристики падают
    d. Имеет ограничение по скорости срабатывания и частоты (нас мало волнует)
    2. Индуктивный/ёмкостной, имеют множество исполнений и вариантов, от варианта с датчиком холла до обратной индукции (излучает магнитное поле, потом измеряет отдачу)
    a. Основной недостаток это цена прямо пропорциональна точности, зазор реакции у лучших около 0.2
    b. Основной плюс в том что нет механических, трущихся и соприкасающихся частей
    c. Может работать в агрессивных водных и прочих сферах включая сжиженный газ
    d. Может работать на почтительных дистанциях до сантиметров
    e. Высокая скорость срабатывания и отсутствие шумов
    3. Оптический, скажем так это просто сказка ибо :
    a. Ограничение по расстоянию сработки бесконечны, лазерные варианты свободно могут работать на сотни километров
    b. Супер точность, зазор сработки у самого хреного китайского будет меньше 0.1мм
    c. Износ близок к вечности
    d. Может работать в любой среде , и так или иначе при любых темепратурах
    e. Отсутствие шума и понятия скорости срабатывания вообще …

    Рейтинг: 2
  2. Есть один момент. Пыль сядет на оптический концевик и он не будет работать должным образом. Протирайте пыль господа.

    Рейтинг: -1
    1. Давайте так , во первых оптоконцевики работают (даже самые хреновые) в инфракрасном диапазоне. а это значит что пыль тут не канает вообще, я вам больше скажу концевики что использую я даже не реагируют на тонкую бумагу для заметок, не каждый А4 вызывает сработку. прозрачный АБС и ПЛА так же просвечивает (1мм) так что я уж не знаю что там за пыль должна быть…
      По затупе делал датчики из прозрачного АБС пришлось красить на 4 слоя темным красным лаком , чтобы добиться сработки четкой …

      Я имею CNC станок на котором режу платы и мелкие алюминиевые детали. иногда хрень всякую из дерева, за 4 года эксплуатации, не разу не имел проблемы с конечниками, а уж поверьте пыли до потолка особенно когда твердые сорта дерева режешь типа ясеня.

      Даже датчик (оптический) который меряет обороты шпинделя, методом отражения и тот сбои не давал… чаще приходится смазывать ШВП которое клинит от древесной пыли которая на масло садится как на клей…

      Так что ваше заявление не обоснованно…

      А еще хорошие конечники для грязных сред делаютмя из UV диодов, и даже лазерных диодов все зависит от задачи …

      Рейтинг: 1
  3. Ваши утверждения:
    »
    Принтер не поведет головку в сторону сработавшего концевика
    Принтер не поведет головку в координату меньше «0» (нуля) (если установлен только MAX_ENDSTOP или принтер только включился и еще не парковался)
    Принтер не поведет головку дальше максимальной координаты (если установлен только MIN_ENDSTOP)
    »
    Не согласен не с одним из них т.к. все это настраивается в прошивке и коль затронут вопрос концевиков, то я за доработку материала… давайте полностью «раскурим» эту тему

    Рейтинг: 1
  4. А почему по Z ставится на МАХ ?

    Рейтинг: 0
    1. Чтоб башку не оторвал . на MIN обычно проба цепляется а DELTA с этим ваще труба нет у нас на икс не игрик :)

      Рейтинг: 0
    2. Можно ставить куда удобнее. На MIN тоже ставят.

      Рейтинг: 0
      1. Я согласен что можно куда угодно, но как правило делают только ХОУМ позицию и все … хотя лично я если бы неимел дельту поставил бы везде, даже при цене оптокоцевиков они не так дорого стоят чтобы на них экономить

        Рейтинг: 0

Добавить комментарий




     
Авторизация
*
*
Генерация пароля
Яндекс.Метрика