Ramp 1 4 lcd
RAMPS — RepRap Arduino Mega Pololu Shield.
RAMPS 1.4 это шилд для Arduino MEGA 2560. Одевается поверх Arduino MEGA 2560 и все подключения, кроме USB, осуществляются через неё. Питание 12В на Arduino MEGA 2560 подаётся через RAMPS 1.4.
Типовая схема подключения.
Можно подключать два блока питания:
11А — на стол,
5А — на всё остальное Плюсы, через предохранители идут на клеммы вентилятора (D9 5A), нагревателя хотэнда (D10 5A) и стола (D8 11A). Управление осуществляется через минус (GND).
Чтобы подключить один БП, нужно соединить плюсы. Минусы уже общие.
Питание Arduino MEGA 2560 идёт от RAMPS. Чтобы Arduino MEGA 2560 питать от своего источника, нужно выпаять на RAMPS диод D1, который находится под драйверами шаговых двигателей X и Y, по середине.
На плату могут быть установлены драйверы шаговых двигателей типа A4988 с минимальным микрошагом 1/16 или Drv8825 с минимальным микрошагом 1/32
Прежде чем установить драйвера шд, необходимо выставить микрошаг драйвера, установив необходимуюкомбинацию джамперов, на разъеме, который находится под соответвующем драйвером.
Если используется драйвер A4988, то расположение перемычки будет таким:
Если используется драйвер Drv8825, то расположение перемычки будет таким:
На плате ramps предусмотрено шесть разъемов для подключения концевых выключателей, их порядок следующий: X min, X max, Y min, Y max, Z min, Z max. Подключать концевики нужно соблюдая полярность. Если смотреть на разъемы концевиков со стороны разъемов питания RAMPS, то порядок пинов будет следующий: Signal, GND, +5 В.
Подключение термисторов RAMPS поддерживает три датчика температуры, разъемы для них подписаны — T0, T1, T2. В T0 подключают термистор хотэнда, а в T1 термистор нагревательного стола. Полярность у термисторов отсутствует. T2 служит для термистора второго хотэнда.
Подключение нагревательного стола и нагрева хотэнда
Разъемы для подключения нагревательных элементов обозначены D8, D9, D10. В D8 подключают нагревательный стол, а в D10 подключается нагрев хотэнда. В D9 подключают вентилятор для программной регулировки обдува печатающихся деталей, либо нагрев второго хотэнда (в зависимости от того, что указать в прошивке).
Подключение LCD дисплея
На плате Ramps есть специальный разъем для подключения дисплея, поэтому подключить любой LCD дисплей не составит труда.
Источник
Шилд RAMPS 1.4 подключение к Arduino Mega
Шилд RAMPS 1.4 подключение к Arduino Mega.
Рассмотрим подключение платы Shield-RAMPS-1.4 на примере 3D принтера Mendel90.
RAMPS 1.4 это шилд (надстройка) для Arduino Mega 2560. Ардуино преобразует G-коды в сигналы и управляет 3D принтером посредством силовой части — RAMPS 1.4.
Плата RAMPS 1.4 одевается поверх Arduino и все подключения, кроме USB, осуществляются через неё. Питание 12В на Arduino подаётся через RAMPS 1.4.
Двухэкструдерная схема подключения
Схема подключения с одним экструдером
Обычно используют билинейные (четыре провода) шаговые двигатели на 1,7 А типоразмера Nema 17. Провода желательно свить в косички для защиты от наводок.
Шаговые двигатели для оси Z можно подключать двумя способами:
- Первый способ.
Параллельное подключение пары шаговых двигателей на одну ось Z — это когда штекер каждого шагового двигателя подключается к своему индивидуальному разъему на плате RAMPS 1.4.
Такой способ подключения шаговых двигателей для оси Z является стандартным подключением к плате RAMPS 1.4.
Следует заметить, что при параллельном (стандартном) подключении могут возникать проблемы с рассинхронизацией шаговых двигателей, если будет иметь место разница в сопротивлении обмоток у подключаемой пары шаговых двигателей. - Второй способ.
Второй способ это подключить шаговые двигатели последовательно одним штекером по схеме показанной ниже.
При таком последовательном подключении двух шаговых двигателей по оси Z проблем с рассогласованием пары движков уже не будет наблюдаться.
Питание на RAMPS 1.4 подаётся от блока питания 12В 30А.
Подключение концевых выключателей
На плате ramps предусмотрено шесть разъемов для подключения концевых выключателей, их порядок следующий: X min, X max, Y min, Y max, Z min, Z max. Подключать концевики нужно соблюдая полярность. Если смотреть на разъемы концевиков со стороны разъемов питания RAMPS, то порядок пинов будет следующий: Signal, GND, +5 В.
Подключение термисторов RAMPS поддерживает три датчика температуры, разъемы для них подписаны — T0, T1, T2. В T0 подключают термистор хотэнда, а в T1 термистор нагревательного стола. Полярность у термисторов отсутствует. T2 служит для термистора второго хотэнда.
На плату могут быть установлены драйверы шаговых двигателей типа A4988 с минимальным микрошагом 1/16 или Drv8825 с минимальным микрошагом 1/32
Прежде чем установить драйвера, необходимо выставить микрошаг драйвера, установив необходимую комбинацию джамперов, на разъеме, который находится под соответствующем драйвером.
Если используется драйвер A4988, то расположение перемычки будет таким:
Если используется драйвер Drv8825, то расположение перемычки будет таким:
Подключение нагревательного стола и нагрева хотэнда
Разъемы для подключения нагревательных элементов обозначены D8, D9, D10. В D8 подключают нагревательный стол, а в D10 подключается нагрев хотэнда. В D9 подключают вентилятор для программной регулировки обдува печатающихся деталей, либо нагрев второго хотэнда (в зависимости от того, что указать в прошивке).
Подключение LCD дисплея
На плате Ramps есть специальный разъем для подключения дисплея, поэтому подключить любой LCD дисплей не составит труда.
Шилд Shield-RAMPS-1.4 — одна из самых распространённых плат для сборки 3D принтеров.
Эта «материнская» плата позволит Вам без проблем коммутировать все комплектующие воедино.
Источник
МКС MINI12864LCD и RAMPS1.4
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых постах.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Понравился мне этот экранчик. Плюс SD карта вставляется вертикально, а не сбоку.
Для подключения к RAMPS 1.4 нужна еще такая штука (Ramps1.4 adapter Pinboard panel connector module,card extender for LCD2004 LCD12864 controller display):
У меня не оказалось — пришлось делать так.
Сначала полдня позванивал и рисовал. Лучше все таки купить готовую.
Если переходник есть, то первым делом надо развернуть разьемы на 180 градусов. Зачем то так вот китайцы распаяли.
Может так понятней будет как разьем подключить (я по питанию определил):
Теперь займемся прошивой.
Нам нужена Arduino IDE. Я установил версию 1.8.2
И прошивка Marlin. Я скчал Marlin 1.1.0-RC8 — 6 Dec 2016
Источник
RAMPS 1.4.4
Release status: Prototype
Contents
Summary
The RAMPS 1.4.4 shield is a RAMPS-1.4-pin-compatible shield that can be used with:
- 8-bit or 32-bit controllers
- a single 12V or 24V power supply.
- TMC2130 drivers via SPI bus jumper selection.
- On-board 3V -> 5V buffer chip, for a higher Gate voltage control of all mosfets
- Two additional Fan mosfets. For a total of 3 PWM controlled Fans. With 3x 2.54mm jumper pins for Fan connections (max 1A per fan)
- Power selection for Fans:
- Fan0: power from 24V or 12V rails
- Fan1+2: power as Fan0, or from on-board optional 5V DC-DC switch mode power supply module
- SMD mosfets. (datasheet numbers: 1.65 milli Ohm for Heated Bed, 3.3 milli Ohm for Hot-end) Max 1A for Fans.
- ‘on-board’ 24V-to-12V DC-DC switch mode module
- A 4-pin 7.62 mm (20A) Screw Terminal Power Connector, for Power Supply and Heat Bed connections
- A «blue» 5.08 (13A) Screw Terminal Connector for Heat-Bed connection
- Jumper selection of 12V (or 8.5V) -> Vin on the Arduino. No soldering of D1 needed.
Further additions are:
- 24V protection on Thermistor inputs
- 100nF capacitors on end-stop pins.
- 12V protection on end-stops
- A high voltage (12V) Z-probe port. Connected to either Z-Min (default) or Z-Max end-stop pins
- Hardware SPI port (at center of board) for use with the Arduino DUE controller
- Includes all RAMPS familiar Aux ports — like: Aux-1, Aux-2, Aux-3 (with extensions), Aux-4, Servo, PS-on, I2C, 6x End-stops, 3x Thermistors
- Jumper connection access to 5V, 8.5V, 12V, 24V rails. In addition to the usual +Voltage (Vcc pins) on the Aux ports.
And some extra options:
- Easy use with a 5V PT100 sense amplifier — even on 3V controllers
- An on-board Resistor option. For experimenting with Thermistor self heating issues
- Lower voltage to Vin (to help prevent overheating of the Arduino Mega 5V volt regulator)
- either via on-board diodes (lower the Vin Volt by about 1V per diode), or
- via an on-board DC-DC 8.5V module
- Optional on-board 24LS256 EEPROM. For use with controllers that have no built-in EEPROM.
Источник
Настраиваем прошивку Marlin для Arduino + RAMPS 1.4
Так получилось что некоторое время назад я стал владельцем китайского клона Prusa i3 под гордым китайским названием Hesine M505. Это чудо китайской мысли конечно было далеко от совершенства, но с задачей печатать все подряд справлялось вполне успешно. Однако, чем дальше в лес — тем толще партизаны. И забравшись в лес подальше возжелал я печатать детали с использованием растворимых поддержек, да и двумя цветами печатать тоже было бы неплохо.
К сожалению, у родной для принтера платы Melzi V2 был фатальный недостаток — на ней отсутсвовал порт для подключения второго экструдера. Изучение матчасти показало, что можно взять еще одну такую же плату и воткнуть ее в режиме слейва. Однако ценник на это удовольствие получался высоковатым. И, что самое неприятно, при таком апгрейде терялась возможность подключения экрана и кнопок управления. Т.е. печатать можно будет только с компьютера, а это не самая лучшая идея по многим причинам.
Так я пришел к решению полностью заменить мозги принтера. Выбор был сделан в пользу нестареющей класски Arduino Mega 2560 + RAMPS 1.4 + A4988. Быстро сказка сказывается, да долго посылочка едет. Получив посылку с мозгами, моторами и прочим полезным в хозяйстве инвентарем я обнаружил что забыл заказать шестерню податчика экструдера. Благо на тот момент она уже ехала ко мне с али, где я заказал ее просто так, от жадности.
В общем, пока необходимые запчасти едут, можно подключить и отстроить новые мозги в конфигурации с одним экструдером, а потом просто переконфигурировать прошивку когда будет собрано все железо.
Ставить мы будем классику жанра — Marlin. Клонируем репозиторий в любое удобное место отсюда https://github.com/MarlinFirmware/Marlin. Скачиваем Arduino IDE.
В Arduino IDE открываем прошивку. Выбираем нашу плату Arduino Mega 2560 и процессор AtMega 2560.
Дальше нас интересует вкладка с файлом Configuration.h, теперь мы будем его безудержно править.
Выбираем нашу плату: RAMPS 1.4 с одним хотэндом
В файле boards.h приведен полный список поддерживаемых плат и их вариаций. Нас пока интересует только RAMPS 1.4 с одним экструдером.
Выставляем кол-во температурных сенсоров. Сенсоров должно быть по числу экструдеров. В нашем случае 1. Убеждаемся что напротив первого сенсора в списке стоит 1.
Выставляем максимальную температуру хотэнда и стола.
У меня стоят термопредохранители на 252 градуса, так что максимальная температура хота должна быть ниже температуры срабатывания предохранителя. Если собираетесь печатать чем-то вроде поликарбоната — то температуру надо поднять. Со столом таже история, единственное что даже печать нейлоном не требует очень больших температур стола, 130 градусов должно хватить всем.
В Hesine M505 стоят нормально замкнутые концевики, а в прошивка по умолчанию рассчитывает на нормально разомкнутые. Включаем инвертирование концевиков:
Проверяем направление вращения моторов. Тут история примерно таже что и с концевиками, т.к. прошивка изначально рассчитана на Ultimaker.
И для экструдера повторяем операцию.
Выставляем размеры рабочей зоны
Для начала можно выставить заводомо большие чем рабочая зона габариты. Потом все откалибруется по месту. По умолчанию в прошивке стоят значени 200х200х200, тогда как у Hesine M505 рабочее поле по всем направлениям больше чем эти цифры. И прошивка просто не даст двигаться за их пределы.
Устанавливаем координаты начала стола. Это нужно чтобы ноль стола в слайсере совпадал с нулем в координатах принтера. Иначе модель может вылезать за пределы зоны печати.
Выставляем шаги для моторов.
Параметры тут следующие: мотор_Х, мотор_Y, мотор_Z, мотор_экструдера
Для рассчета шагов по X и Y используем следующую формулу:
Где 200 — это число шагов двигателя на 360 градусов. Типичная цифра для моторов с шагом 1.8 градуса. 16 в числителе — кол-во микрошагов на шаг. 16 в знаменателе — кол-во зубов на шпуле. 2 — стандартный шаг для ремня GT2
В Hesine M505 штатно используется трапециидальный винт с шагом резьбы 2мм. Соответственно мы белим число шагов на полный оборот на кол-во миллиметров которые будут пройдены за оборот и получаем число шагов на миллиметр.
Подачу экструдера пока посчитаем и выставим предварительно. Потом ее все равно придется подгонять. Шестерня экструдера штатно имеет диаметр около 10мм. Получаем длинну окружности на один оборот: 3.14*10=31.4 мм на оборот.
Делим число шагов на длинну окружности и получаем число шагов на миллиметр.
округляем до 102.
Заливаем все это дело в Arduino.
После того как все залилось и все железо подключено запускаем Pronterface и начинаем калибровку.
- Двигаем моторы и проверяем что они крутятся в нужную сторону. Если это не так — меняем параметр INVERT_*_DIR на противоположное значение.
- Проверяем состояние концевиков. По команде M119 будет показано состояние концевиков. Если концевик нажат — напротив него должно быть написано TRIGGERED. Напротив ненажатого — open. Если это не так — меняем настройку *MINENDSTOP_INVERTING.
- Даем команду G28. Все оси должны приехать в свое минимальное положение. Дальше через Pronterface двигаем все оси в их безопасное максимальное положение и даем комаду M114. Она покажет текущее положение по осям. Вносим эти данные в настройку *MAXPOS.
- Опять говорим G28. Передвигаем экструдер в нулевую координату стола по X-Y. Смотрим что показывает M114 и эти цифры переносим в MANUAL_*HOMEPOS с обратным знаком. Т.е. если M114 говорит что координата по Х сейчас 30 — то в настройку пишем -30. Это значит что после ухода в HOME экструдер отъедет от него на 30мм и будет считать это положение нолем.
- откручиваем сопло или трубку боудена у экструдера. На прутке отмечаем расстояние, например 10 см, и прогоняем эту же длинну из Pronterface. После этого смотрим сколько в реальности прошло прутка и корректируем кол-во шагов для экструдера чтобы он прогонял четко нужное кол-во пластика. Важно понимать что на горячую с установленным соплом эта цифра все равно будет отличаться от установленного. Если вы всегда печатаете соплом одного диаметра — можно повторить эту операцию с соплом и полученные данные внести в прошивку. Я использую несколько сопел, так что объем пластика корректирую через настройку потока в слайсере.
После того как все это сделано — печатаем тестовую модель. Я использую пустой куб 20х20х20 мм. После того как он отпечатан — проверяем что размеры сторон у нас точно соответсвуют тому что должно быть. Если это не так по отдельным измерениям — корректируем кол-во шагов для нужной оси.
На этом основные настройки закончены. Дальше можно тюнить приведенные выше параметры для более качественной печати.
Источник