Подключаем электронику RAMPS 1.4 к 3D принтеру (на примере Mendel90)

Добавлено в закладки: 10

RepRap Arduino Mega Pololu Shield 1.4

Все провода желательно сразу подписывать.

RAMPS 1.4

RAMPS 1.4 это шилд (надстройка) для Arduino Mega 2560. Ардуина управляет всей работой 3D принтера.

Arduino MEGA 2560

Плата RAMPS 1.4 одевается поверх Arduino и все подключения, кроме USB, осуществляются через неё. Питание 12В на Arduino подаётся через RAMPS 1.4.

RAMPS 1.4

схема подключения
RAMPS 1.4

Axis

Питание RAMPS 1.4 получает от блока питания на 12В 30А. Для использования одной пары проводов от блока питания можно припаять перемычку на плюсы, минусы уже соединены.

RAMPS 1.4

Для надёжности питания я припаял провода, вместо использования винтового соединения в разъёмах, а разъёмы оставил под другие нужды..
(на этой фотографии тоже припаяна перемычка, но в другом месте)

IMG_5418

Обычно используют билинейные шаговые двигатели на 1,7А типоразмера Nema 17. Провода желательно свить в косички для защиты от наводок.

IMG_5868

Схема выводов. Пары легко прозвонить мультиметром (или батарейкой с лампочкой-светодиодом).

Я встречал два варианта маркировки “чёрный+зелёный – красный+синий” и “жёлтый+синий – зелёный+красный”.

Nema wire
Шаговый двигатель работает через драйвер. Ещё их называют StepStick. Для RAMPS 1.4 выпускают два вида драйверов A4988 и DVR8825. Они отличаются током, выдаваемым на шаговый двигатель и минимальным микрошагом. Обязательно использовать радиатор. Обдув желателен. А если стол запитан не через реле, то обдув обязателен.
Ток на драйвере подстраивается опытным путём, гоняя 3D принтер на высокой скорости по всем координатам. Оптимальным считается, когда шаговые двигатели уже не гудят и ещё не пропускают шаги.

A4988
Максимальный ток 2А
Минимальный микрошаг 1/16 шага
Ток регулируется подстроечным резистором. По часовой стрелке – повышение тока.

DSC_0129

Установка микрошага перемычками на RAMPS 1.4

Без имени 1 - OpenOffice Calc 2015-02-23 21.19.43

DVR8825
Максимальный ток 2,2А
Минимальный микрошаг 1/32 шага
Ток регулируется подстроечным резистором. По часовой стрелке – понижение тока.

DSC_0130

Установка микрошага перемычками на RAMPS 1.4

Без имени 1 - OpenOffice Calc 2015-02-23 21.12.55

Перемычки установки микрошага на RAMPS 1.4 находятся под драйверами шаговых двигателей. Обычно используются A4988 с микрошагом 1/16 – все перемычки установлены.

RAMPS 1.4

 

Правильная установка драйверов шаговых двигателей

RAMPS 1.4 A4988 DRV8825 TMC2100

Как настроить ток на драйверах шаговых двигателей? Читаем здесь.

 

Двигатели оси Z можно подключать:
  • параллельнокаждый штекер в своё гнездо. Это стандартное подключение к RAMPS 1.4. Могут быть проблемы с рассинхронизацией двигателей, если есть разница в сопротивлении обмоток двигателей.
  • последовательно по схеме, одним штекером. При последовательном включении проблем быть не должно.

zseries_rus

  • каждый на отдельный драйвер – второй подключается к незадействованному драйверу второго экструдера. Для этого нужно в прошивке Marlin раскомментировать строку во вкладке Configuration_adv.h

//#define Z_DUAL_STEPPER_DRIVERS

 

  • каждый на отдельный драйвер – переназначением пинов во вкладке pins_RAMPS_13.h. То есть пины драйвера оси Z дублируем в константы драйвера второго экструдера. Например:

?#define Z_STEP_PIN 46
#define Z_DIR_PIN 48
#define Z_ENABLE_PIN 62

#define E1_STEP_PIN 46
#define E1_DIR_PIN 48
#define E1_ENABLE_PIN 62

 

Концевые выключатели (концевики, endstop, limit switch).

Наиболее часто используются оптические и механические концевые выключатели. Оптические из-за своей природы могут быть ненадёжны, поэтому их не рассматриваю. Узнать состояние концевиков можно командой M119. Обычно ставят 3 концевика в положении HOME и софтовое ограничение в прошивке. Остальные концевики рассчитаны на сбой, но шаговики слабые и повреждений не наносят, просто пропускают шаги при достижении препятствия. А по оси Z у Mendel90 должны гайки выкручиваться из кареток при давлении хотэнда на стол.

endstopmicro
End_stops

RAMPS_endstops_1

IMG_5364

Правильное подключение механических концевых выключателей в положении MAX. У оптических концевых выключателей используется дополнительно плюсовой контакт.

IMG_5253

Подключение термисторов.

Термистор можно проверить мультиметром как резистор. Подсоединил к мультиметру – 87 кОм. Зажал пальцами – сопротивление стало падать, оно вообще не стоит на месте.
Также существуют термопары, но их редко подключают к RAMPS 1.4, так как нужна плата-адаптер. При подключении термопары важно соблюдать полярность.

Термистор стола и термистор горячего конца (хотэнда).

IMG_5442

Подключение нагреваемого стола через реле.

Температура столика зависит от тока подаваемого на него. Сила тока зависит от сопротивления столика, сечения проводов до столика и мощности блока питания. А также от качества теплоизоляции внутренней полости столика.
Реле ставится для разгрузки стокового силового транзистора и снижения нагрева платы электроники, в общем для надёжности. Или для разделения на два блока питания, электроники плюс хотэнд и отдельно для нагрева столика (можно повысить напряжение и ускорить нагрев).
Я имел дело с четырьмя столиками. При блоке питания 360 ватт они разогревались до 113-120 градусов, а скорость зависела от толщины проводов и теплоизоляции поверх столика на время разогрева.

 

DSC_0133_D8

Автомобильное реле

IMG_6148

Твердотельное реле

IMG_5680

 

Для тех, кто дружит с паяльником:

Можно заменить стоковый транзистор на более подходящий. Главная цель уменьшить нагрев транзистора и избавиться от реле. При выборе транзистора главное это напряжение полного открытия (лучше всего с логическим уровнем до 5 вольт), макс ток и напряжение и самое главное внутреннее сопротивление на открытом транзисторе (RDSon, чем меньше, тем лучше). Обычно ставят P55NF06L (P55NF06) (RDSon 0.018 Ом). Проверенные транзисторы (вообще не греются), на которые можно заменить стоковый:

  • IRL1404ZPBF (IRL1404) RDSon 0.0031 Ом – проверил Avton (инициатор замены транзистора)
  • STP200NF04L RDSon 0.0035 Ом – поверил wolfs_SG
  • IRLB3034PbF – проверил sashokc (есть жалобы, может сильно нагреваться!)

Сам транзистор находится за контактными клеммами D8. Если сильно хочется, можно заменить транзистор хотэнда, но это совсем не обязательно. После замены нужно перекалибровать PID.

 

Подключение нагрева хотэнда.

DSC_0133_D10

Подключение вентилятора обдува детали.

DSC_0133_D9

Подключение вентилятора охлаждения хотэнда, освещения и других потребителей напряжения 12 вольт.
Подключаем в разъём питания RAMPS.

DSC_0133_pwr

Подключение LCD панели управления (экранчика).

На задней стороне мы видим два гнезда для подключения шлейфов, слот SD карты и регулятор яркости.
LCD_1

Подключение к RAMPS 1.4 происходит через переходник. Гнёзда так-же подписаны EXP1 и EXP2 для правильного подключения.

Переходник уже подключается к RAMPS 1.4

При правильном подключении и настройки экран будет работать даже при питании RAMPS только от USB кабеля.

35

Метки: ,    2015-10-22      Раздел: Настройка, Электроника  
Автор: Просмотров: 92 259   46 комментариев



46 комментариев на «Подключаем электронику RAMPS 1.4 к 3D принтеру (на примере Mendel90)»

  1. Написал вначале на http://akdzg.livejournal.com/5501.html?view=37245#t37245 ,а потом увидел что сюда писать :)
    Привет помоги пожалуйста!
    Активно занялся сборкой 3D принтера из старых струйных принтеров )
    У меня есть Arduino Mega и китайская RAMPS 1.4, драйверы DRV8825 (фиолетовый, помощней которые), прошивка Marlin
    В тестовом режиме уже всё покрутил (ШД), работает
    Но главная проблема в следующем -> у меня на оси z два ШД c шестернями разного количества шагов и ремни с разным шагом, те физически не получится подключить два этих ШД на один драйвер оси Z. У меня на оси Z два ШД, но у них разные шестерни и шаг ремня.

    В этом режиме #define Z_DUAL_STEPPER_DRIVERS получается просто дублируются сигналы с оси Z1 на ШД E1?

    а как сделать чтобы этот ШД Е1 брал настройку из (в твоем посте http://akdzg.livejournal.com/4486.html) #define DEFAULT_AXIS_STEPS_PER_UNIT {(200*16)/(2.0*20),(200*16)/(2.0*20),200*16/1.25,(3200 * 39.0)/(11.0 * 6.75 * 3.45)} или самописной такой строчки?
    Какие нужно правки сделать в коде?

    Рою в сторону INVERT_Z_DIR

    0
    1. Привет! Не думаю, что можно отыскать знатоков в этом вопросе, ведь обычно Z на винтах работает. Скорее всего сигналы просто дублируются (это нужно поискать). Можно попробовать вот по такой схеме откалибровать
      #define DEFAULT_AXIS_STEPS_PER_UNIT {X,Y,Z,E0,E1}, где E1 – второй двигатель оси Z.
      Если передаточное число отличается в два раза можно откоректировать настройкой перемычек микрошагов.

      0
      1. а какая разница винты не винты? там настройка чтоль в другом месте?
        так вот я и не уверен что в случае для 2х ШД на ось используется этот параметр #define DEFAULT_AXIS_STEPS_PER_UNIT {X,Y,Z,E0,E1}, *SCRATCH*
        и кстати там где то в настройках прописано число осей 4 а это уже 5-ая и в возможно в коде она не участвует как 5 параметр
        “Если передаточное число отличается в два раза можно откоректировать настройкой перемычек микрошагов. ” – это совсем не вариант
        в этой прошивке такой код запутанный можно мозг сломать ))

        0
      2. 481->485 !!ИЩЕМ axis_steps_per_unit
        void Config_ResetDefault() {
        float tmp1[] = DEFAULT_AXIS_STEPS_PER_UNIT;
        float tmp2[] = DEFAULT_MAX_FEEDRATE;
        long tmp3[] = DEFAULT_MAX_ACCELERATION;
        for (uint8_t i = 0; i < NUM_AXIS; i++) {
        axis_steps_per_unit[i] = tmp1[i];
        При этом в коде задан Marlin.h 189
        #define NUM_AXIS 4

        0
  2. это совсем не вариант
    в этой прошивке такой код запутанный можно мозг сломать ))

    Перемычки не в прошивке, а на РАМПСе.

    0
    1. я понял, я про точто там не кратный коэффициент получается

      0
      1. Значит нужно подогнать синхронизацию, напечатав спец шестерню.

        0
        1. вот был бы у меня сейчас 3Dпринтер….
          ааа его то я и пытаюсь сделатьь!!!!!!!!! ))))))))))

          0
          1. Зайти на Avito.ru и посмотреть ближайших печатников. Главное правильно шестерню рассчитать.
            http://www.thingiverse.com/thing:16627

            0
        2. а может есть к4акая то попроще прошивка? которую совсем можно всяко разно настраивать?
          Можно былоб и самому чегонибудь написать но хрен его знает как там контроллер с программами управления общается

          0
          1. а может есть к4акая то попроще прошивка? которую совсем можно всяко разно настраивать?

            Все какие встречал написаны на C++. Marlin самая развитая.

            0
  3. этож хорошо что на C++, не на ассемблере же )) но их видимо под Ramps надо адаптировать?

    0
    1. Для меня они едины. На Ассемблере я программировал, а С++ лучше читается *SCRATCH*
      Вот прошивки на выбор http://reprap.org/wiki/List_of_Firmware Все должны на RAMPS 1.4 работать. Но шестерню проще заказать.

      0
      1. а что заначит если объявление функции есть, вызывается повсюду а определения в коде нет?
        подключаемый файл с этой функцией в прект Arfuino IDE не добавлен?

        0
        1. Ошибка при компиляции? В Марлине?

          0
          1. да нет нашел функцию у которой аргументы – перемещения дельта по осям для каждого шага, но не знаю что она делает, тк тела у нее нет )) за куча определений разных
            void plan_buffer_line(const float& x, const float& y, const float& z, const float& e, float feed_rate, const uint8_t extruder);
            void plan_buffer_line(float x, float y, float z, const float& e, float feed_rate, const uint8_t extruder);
            void plan_buffer_line(float x, float y, float z, const float& e, float feed_rate, const uint8_t extruder)
            #else
            void plan_buffer_line(const float& x, const float& y, const float& z, const float& e, float feed_rate, const uint8_t extruder)
            я чтото даже сообразить не могу где её тело потерялось )) я проверил все инклуды есть в проекте в дефайнах тожее её не видел, через поиск ищу

            0
          2. в смысле вообще нет тела через поиск по всем вкладкам все проверил и не раз, куча прототипов, куча вызовов а определения нет нигде
            может быть что этой функции совсем нет? и как узнать?

            0
  4. может быть что этой функции совсем нет? и как узнать?

    У разработчиков спросить? https://github.com/MarlinFirmware/Marlin/commits/RC

    0
  5. Здравствуйте!
    Установил драйвера А4988. Вот пытаюсь установить радиатор, но заметно, что радиатор находит на смд-компоненты на плате драйвера, вроде как без зазора, смотрел в лупу, может преувеличиваю. Как у вас, подпиливаете радиаторы или у меня такие радиаторы?

    0
    1. По виду плотно, да. Но проблем пока не было.

      0
      1. Может лучше отпилить или не хватит площади для нормального остывания?

        0
        1. Если есть обдув, то площади должно хватить.

          0
  6. Здравствуйте!
    !!! :) может здесь подскажете, а то с прошивок злой :) дядька выгнал, сказал тему создавай какую-то с фотками, а что там на Рамсе смотреть-то :D !!!

    Первый раз запустил принтер – Ура!
    Но… выгорел сразу силовой транс на нагреве стола на Рамсе. Расколился до красна как утюг!
    Проверил стол – 1.7 Ома на концах проводов. Короткого при шевелении нет.
    Выпаял такой же транс от доп. вентилятора, на проводах подпаял на место нагрева стола, транс “приклеил” на радиатор.
    Установил 60 гр. Стол нагрелся и температура поддерживалась автоматом, радиатор с нормальной-терпимой температурой.
    Тут же дал команду до 100 гр. — аж провода с ножек от транса отпаялись. Радиатор как утюг.
    Может я многого хочу!
    А как у других экспериментаторов. Или это нормально для рамса на нагреве стола палить транс?

    Всех с Наступающим !!! :D

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

    0
  8. Здравствуйте!
    Подскажите пожалуйста где на ramps преобразователь напряжения 5в?
    Мы подключаем 12в на ramps, а ардуино нужно 5в и 3.3в. У меня сгорел (не сразу:) ch340 на ардуине. Почему?

    0
  9. Здравствуйте!
    Хочу обратится к Вам за помощью. В настоящее время собираю свой первый принтер. что-то похожее на ваш, представленный здесь. И при его настройке у меня возникли проблемы. Я пробовал разные прошивки Marlin, проверял коммутацию и надежность соединений, настраивал ток двигателей в разных режимах (сейчас установил 0,6В измеряя на переменном резисторе драйвера, но ….
    Сейчас у мня установлена прошивка Marlin Kimbra (http://marlinkimbra.it) К слову у них очень удачный, на мой взгляд онлайн конфигуратор! После установки данной прошивки я было дело возрадовался, все заработало как положено, и оси двигались и экструдер работал без пропусков. Но совместная работа оси Z и экструдера дала сбой. А именно, во время подъема оси Z я нажал экструзию, экструзия запустилась, пластик полился тонким свисающим волоском, а вот ось Z задребезжала, затряслась, появились многочисленные пропуски движков. После отработки экструзии нажал на движение вверх ось Z но опять услышал дребезжание, пропуски шагов и что характерно попытки оси опустится вниз, а не вверх как я дал команду. Убрать ошибку удалось сбросом по питанию всего принтера. Но после ситуация изменилась, оси двигаются, а экструзия сбоит и пропуски шагов.
    Вот я никак не могу понять (и информации нигде найти не могу) какое влияние могут оказывать друг на друга двигатели оси Z и двигатель экструдера? Ведь оси X и Y никак ни на что не влияют! Заранее благодарен за Вашу помощь!!!?

    0
  10. Не знаю, что там проверил sashokc, но у меня IRLB3034PbF греется до 100 градусов со столом 200х300 на 14В.

    Еще обнаружил интересный момент – D1(возле F1) в этой Рампсине не работает как диод, я его выпаял, и ничего не изменилось. Что это как??

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

    0
  11. Поступило еще одно подтверждение, что IRLB3034PbF греется еще сильнее чем родной. Так что sashokc был не прав.
    Уберите данный транзистор из списка.

    0
    1. Этот транзистор не с потолка взят, а из списка компонентов для RAMPS 1.4 на http://reprap.org/wiki/RAMPS_1.4#Bill_of_Materials, значит у кого-то он работает нормально, а греющиеся – это кривые китайские клоны *PARDON* Так что пускай запись останется с пометкой-предупреждением.

      0
  12. Еще поправка – в моем предыдущем посте с фото, диоды Д1 и Д2 я перепутал местами.
    Возле Ф1 стоит Д2 и он работает на замыкание при переполюсовке.

    0
  13. Приветствую Вас гуру 3д инженеринга )
    Короче полный п… Ардуина 340, Рампа1.4, драва 8825
    Пришла мне ардуина, я радостно прибежал домой, поставил в неё рампу, в рампу воткнул 4 драйвера, подключил 1 мотор.
    подключил всё это дело по ЮСБ, залил прошивку ну всё вроде как пишут. Зашёл в репитэр, настроил принтер, подключился а он ругается типа нет термистора. Отключился, подключил термистор, оупэн ЮСБ и увидел температуру, попытался подвигать свой двигатель, не двигается ).
    Взял блок питания 12В 15А(вот тут начинается самое интересное), включил по юсб сэндвич, подвёл питание к рампе и тут я вспомнил, нужно же драйвера подстроить… чекнул тэстером 1.26А на каждом, выкрутил в 0 все, лампочка на ардуине погасла…. (я обос…ся) вкрутил обратно 1 резизстор до 0,55А пошёл к следующему … в компе появилась надпись неопознаное юсб устройство… прикасаюсь к ардуине, а она как комфорка… всё выключил, теперь ардуина горит, но определяться не хочет, подключаю на сэндвич питание так чип на ардуине греется дико. Скажите пожалуйста, что я сделал не так, что произошло ?
    :-[

    0
  14. А можно уточнение… что за ардуина такая… ???… Как Вы пишите “Ардуина 340”

    0
  15. Микроконтроллера CH340, Atmega 2560 (CH340)

    0
  16. Так кто греется? Сам контролер мега 2560 или м/с ttl-usb ch340???

    0
  17. Греется 2560, вообще вопрос можно при подключенном ЮСБ и 12В на рампу крутить резисторы на дравах ?
    почему спрашиваю, потому что по видео видно, что всё у всех запитано (чаще всего) и ЮСБ и 12в
    производитель рампы 1.4 пишет маленьким шрифтом не производить подстройку драйверов при подключенном питании… но как это сделать если нужно видеть вольтаж бред какой-то грешу на брак в рампе… как проверить? может есть какие-то стандартные чеки для рампы на коротыша или ещё что… запутался уже.. походу ардуину спалил… волтаж от юсб на пинах ардуины показывает правильный вольтаж..

    0
  18. Вот сама рампа и подтёки на ней, не обратил внимание перед подключением, при рассмотрении ужас какой..

    0
    1. Эти подтёки не короткое замыкание. Можно попробовать отмыть спиртом.
      Возможно где-то непропай и из-за этого проблемы. Ардуинку нужно иметь запасную, ведь всякое бывает ;)

      0
      1. Решил вопрос ребром, отправил обратно в китай

        0
  19. Ещё раз, здравствуйте !
    прозвонил ноги 5-6 сигнальные от мамы ЮСБ-Б, контакта нет(они должны прозваниваться?), есть идеи ? Куда смотреть ? Что делать? *HELP*

    0
  20. Там R1&R2 резисторы, всё нормально, до них и после них всё звонится *WALL*

    0
  21. Хочу попробовать IRFS7437PbF, платку внешнюю заказать по принципу половинки Cheap3D MOSFET Switch Board…

    0
  22. подскажите в программе Grbl kontroller подключаю ардуино мега 2560+RAMС 1,4
    указываю порт нажимаю OPEN появляется надпись
    no data from com port after connect expecting grbl version string
    что я не так делаю

    0
    1. Проверьте чтобы скорость Serial порта совпадала в прошивке и в программе для передачи кодов.

      0
  23. Здравствуйте, у меня MEGA + RAMPS (без экрана) и вот в чем вопрос, могу ли я запитать RAMPS от 12В и в то же время подключить MEGA через USB к компу, что бы управлять двигателями через Grbl Controller?

    0

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




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