Навигация сайта

Поиск по сайту

Вход

Качественные платы недорого можно заказать в Китае, перейдите по ссылке чтобы получить скидку на 5$ https://www.pcbway.ru/setinvite.aspx?inviteid=257410  

Подготовить заказ на плату можно в программе Sprint Layout. Нарисованную плату экспортируем в Gerber, и экспортируем отверстия, все запаковываем архиватором и отправляем. Заказ 10 плат 100х100 мм получается бесплатным, платим 8$ за пересылку и 1$ PAYPAL, получается по 60 руб. за плату неплохо не правда ли? Лишние платы можно подарить , продать! Сайт на русском все ясно и понятно! Не удержался заказал себе платы захотелось по паять на хорошей плате.

                                       3D принтер это очень просто.

    На просторах Интернета набрел на самодельный 3D принтер Delta Rostock, его работа меня просто заворожила! Стал знакомиться с самоделками, их настройкой и пришел к выводу что собрать его не так уж и сложно! Можно было заказать полный комплект для сборки принтера в Китае, но мне пенсионеру накладно, да и хотелось самому что то создать.

     Решил сделать из алюминиевых профилей каркас, ходовые каретки, крепления цилиндрических направляющих, платформу, экструдер. Электронику, линейные подшипники, шаровые шарниры, ремни, шестерни, подшипники, комплектацию для хотенда  заказал в Китае. Направляющие Д=8мм купил в России.

В общем много чего нужно, но охота пуще неволи.

В итоге вот что получилось:

 

  Верхнее и нижнее основание выполнено из алюминиевого профиля 50 мм (была использована старая гардина). Для жесткости верхнее и нижнее основания связаны алюминиевыми швеллерами 40 мм, в которых проложены ремни, провода, установлены концевые выключатели, закрыты швеллеры полосой из алюминия, не понравились мне открытые ремни как в оригинальной Дельте. Крепление направляющих сделаны из квадратной алюминиевой трубы 20х20 мм в которой пропилен паз под направляющие что позволяет легко их выровнять, чтобы каретка свободно перемещалась. Пары цилиндрических направляющих устанавливаются строго вертикально и между ними должно быть строго 120 гр. От точности изготовления зависит качество печатаемых деталей. Размеры можно брать произвольные все зависит от имеющихся направляющих и других комплектующих, и желаемого Вами размера печатаемых изделий. При настройке принтера Ваши размеры прописываются  в прошивке. Рассчитать и промоделировать свой принтер можно в Deltabot calculator: http://www.thinkyhead.com/_delta/ .

Крепление направляющих:

 

 

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

Ходовые каретки:

 

 

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

         Натяжитель и концевой выключатель:

         

       Платформа с хотендом:

 

Подача нити:

     Собрана также из подручных материалов, шестерни от видеомагнитофона, алюминиевые уголки, швеллера, ось 5 мм на подшипниках 625, на оси закреплена шестерня зкструдера, прижимной подшипник 623. Пластик по трубке PTFE с диаметрами, наружный, внутренний 4х2 мм подается в Hotend.

Комплектующие.

Электроника:

Arduino Mega2560 R3, Ramps1.4, A4988 (4 шт.), Smart LCD.

 

                   Двигатели 4 шт.                                                                                 Концевые выключатели 3 шт.

                                

                     Нагревательный стол

 

Блок питания применен от компьютера на 400 вт.

Схема 3Д принтера

    Так как транзистор на Ramps1.4 для подключения горячего стола сильно греется, применил схему управления чтобы его разгрузить, применение реле как рекомендуют на форуме мне не понравилось. На плате разместил также разъемы для подключения блока питания, и вентиляторов.

        Hotend в сборе

 

                                                            детали hotenda заказывал отдельно

     Радиатор был от электроники какой то нарезал в нем резьбу и накрутил на термобарьер смазав предварительно термопастой Deep Cool Z3 (рабочая температура до 300 гр.). 

   Механика  

   Для механической части необходимы линейные направляющие Д=8 мм длиной в зависимости от высоты вашего принтера 6шт, линейные подшипники LM8UU 8 мм 6 шт, шарниры 12 шт, подшипники для натяжителей ремня 608ZZ, шкивы G2 20 зубов, ремни G2 шириной 6 мм, длина в зависимости от высоты принтера, алюминиевые профили, ну конечно болты, гайки и шпильки Д=6 мм.

  

 


 

 Программное обеспечение, настройка.

     Прошивку принтера – Марлин  качаем отсюда https://github.com/RichCattell/Marlin
Также нужна среда разработки ардуино для заливки прошивки в принтер -качаем  под нужную ОС http://www.arduino.cc/en/main/software
Программа управления самим принтером - я использую Repetier_Host качаем с их сайта Repetier.com

Устанавливаем ПО.

    В папке  marlin прошивки берём в папке example_configurations/delta файлы Configuration.h и Configuration_adv для Дельты и копируем в папку marlin с заменой.

В папке ArduinoAddons лежат библиотеки Ардуино при необходимости скопировать их в среду Ардуино в папку с библиотеками.

  Запускаем среду Ардуино открываем Marlin.ino и переходим на закладку Configuration.h здесь нужно указать свои размеры и параметры принтера.

 настройки выделенные красным нужно откорректировать на свои:
// This determines the communication speed of the printer
#define BAUDRATE 250000
//#define BAUDRATE 115200

изменяет скорость общения - принтер-компьютер. По умолчанию - 250000, если на 250000 возникают ошибки - можно попробовать скорость общения снизить.)

 

 #define MOTHERBOARD 33

(устанавливает тип используемого контроллера,  смотрим описания типов плат)

//============================== Delta Settings ============================= 

// Enable DELTA kinematics 

#define DELTA 

(задает что кинематика  дельтабота. )

#define DELTA_SEGMENTS_PER_SECOND 200

#define DEFAULT_DELTA_DIAGONAL_ROD 201 // mm  (длина диагоналей) 

#define DELTA_SMOOTH_ROD_OFFSET 153 // mm ( от центральной точки до середины направляющих) 

#define DELTA_EFFECTOR_OFFSET 31 // mm 

 (расстояние от центра эффектора до шарнирных соединений к котором крепятся диагонали)

#define DELTA_CARRIAGE_OFFSET 22 // mm  от центра направляющих до шарниров на каретках 

//=============================Thermal Settings  ============================

#define TEMP_SENSOR_0 1

#define TEMP_SENSOR_1 1

#define TEMP_SENSOR_2 0

#define TEMP_SENSOR_BED 1

Для термистора (1 is 100k thermistor - best choice for EPCOS) 

//=============================Mechanical Settings===========================  

#define DEFAULT_AXIS_STEPS_PER_UNIT   {80, 80, 80, 390}  (для двигателя 1,8 гр., драйвер микрошаг 1/16, и шестерня 20 зубов)
Здесь задается количество шагов на мм. перемещения по осям первые три значения - XYZ, четвертое - экструдер. Значение зависят от значения микрошага для двигателя  и количестве зубов на шкиву. При других значениях рассчитывается в калькуляторе в Repetier-Host. Предварительное количество шагов для экструдера определяем так: (микрошаг двигателя (360/1,8 гр.=200) умножить на микрошаг драйвера (16) делим на длину окружность шестерни экструдера, получим кол. шагов на 1 мм протянутого пластика. Если у Вас шестеренчатая передача то умножаем еще на коэф. передачи (например большая 40 зубов и малая 10 получаем 4). После запуска принтера калибруете это значение, из Repetier-Host отправляете нажимаете протянуть 100 мм измеряете сколько реально протянул и деля на эту величину получаем коэф. на который умножаем предварительное значение( в моем случае 390).
 

// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.

const bool X_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.

const bool Y_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.

const bool Z_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.

const bool X_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.

const bool Y_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.

const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop. ( Я применил механические с нормально разомкнутыми контактами.) 

//#define DISABLE_MAX_ENDSTOPS

// Deltas never have min endstops

#define DISABLE_MIN_ENDSTOPS

#define MANUAL_Z_HOME_POS 178 // For delta: Distance between nozzle and print surface after homing.

  (Расстояние от стола до кончика сопла когда все каретки приехали на home. Его лучше задать на пару мм меньше измеренного, чтобы не заехать в стол, а потом подкорректировать по необходимости )

//=============================Additional Features===========================

 

#define EEPROM_SETTINGS

#define EEPROM_CHITCHAT

 

#define SDSUPPORT // Enable SD Card Support in Hardware Console

 

#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER (Если у Вас графический дисплей 12864)

 

      Компилируем и заливаем прошивку. 

     Запускаем Repetier-Host  и выполняем настройки принтера по аналогии с моими Конфигурация -настройки принтера

 

 

Точка начала координат должна переместиться в центр стола.

 

 

 Подключаем принтер.
В закладке ручного управления можно  подвигать платформу по осям. Командой G1 X0 Y0 Z10 отправляем платформу к центру и далее шагами 1 мм и 0,1 мм приближаем к столу и уточняем MANUAL_Z_HOME_POS 178 ( прошивку можно не корректировать, а отправить команду M666 Z(новое значение). Принтер и стол выставляем по уровню, Перемещаем платформу с помощью стрелок ручного управления по углам стола регулировкой винтов концевиков добиваемся одинакового расстояния от сопла до стола. Постепенно регулируя каждую башню получает одинаковые расстояния.

     На листе бумаги размечаем сетку по X и Y через 50 мм. Опускаем сопло к листу и стрелками из программы двигаем платформу, смотрим соответствуют размеры перемещения  или нет. Если нет вычисляем коэф. несоответствия и умножаем на Delta diagonal rod раннее зашитое в прошивке (это ничего что он будет отличаться от измеренного). Изменить это значение можно командой M666 D(новое значение) не заменяя прошивку. Снова проверяем размеры. Выполняем калибровку стола, при максимально опущенном сопле в любой точке стола должен быть зазор в толщину  листа писчей бумаги. Если в центре получается вогнутость или выпуклость необходимо откорректировать Delta radius,   уменьшить если ниже чем края и увеличить если выше. Изменить это значение можно командой M666 R(значение)

    В Repetier-Host файл-загрузить открываем модель в формате stl. В закладке слайсер получаем G код. Нажимаем Пуск, после достижения заданных температур начнется печать. Как настроить слайсер почитайте в интернете, например здесь: http://www.lugrap.com/2013/09/rus-manual-slic3r.html#more

Я пользуюсь Slic3r, у меня вот такие настройки:

 Основное что нужно указать это диаметр сопла и пластика, температуру пластика и заполнение модели (Infill), остальное по мере освоения печати.

Некоторые ссылки:

http://roboforum.ru/forum107/

 http://infinum3d.blogspot.ru

http://eca3d.blogspot.ru

http://reprap.org/wiki/Rostock_Mini_Pro

http://diylife.ru/category/diy/3d-printery

http://www.thingiverse.com/search?q=3D+printer+Rostock&sa=

 


 

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

 

Ну вот можно печатать следующий 3Д принтер!

Принтер в работе:

https://youtu.be/3RIY7qQ7zt4

Решил залить прошивку Repetier, ее можно создать на сайте http://www.repetier.com/firmware/v092/ под свой принтер. Нарезку выполнил слайсером Kissicer и качество печати значительно улучшилось. Печатаю ABS стол покрываю пивом, грею до 120 гр. Стол нагревается до 120 гр. за 12 минут. Чтобы быстро грелся стол нужно снизу теплоизолировать и иметь хороший БП чтобы напряжение было не меньше 12в под нагрузкой.

 


    Понравился 3Д принтер с кинематикой H-Bot. Разработал и напечатал для него детали. С Китайскими линейными подшипниками и фторопластовыми втулками не получилось ничего хорошего. Разработал каретки на подшипниках качения 623. Электронику использовал такую же как на Delta. Прошивку залил Repetier. Каркас выполнен из алюминиевого профиля 20х20, стол 20х10 мм. Сначала каркас был собран на напечатанных деталях, а потом усилен угольниками из алюминия. В направляющих роликах ремня применены подшипники 625. Стол снизу утеплен пробкой толщиной 2 мм обклеенной фольгой, зазор между пробкой и нагревательным столом 2 мм. С панели управления можно включить, регулировать обороты куллеров, включить  освещение. Были проблемы с БП поэтому решил поставить вольтметр, для контроля напряжения.

 

 

 

 Принтер в работе:

 https://youtu.be/jQFdguE94N4


    Переделал свой H-Bot на рельсы 12 мм, поставил вместо шпильки 6 мм винт 8 мм. В результате получил меньшие габариты, более простую конструкцию, более высокое качество печати. Когда начинаешь свой первый 3Д принтер стараешься чтобы с минимальными затратами, это наверно по тому что не уверен что получится или нет. А потом началось-все хочется улучшить и затраты растут, растут. Гонясь за дешевизной создаем себе кучу ненужной работы из за сложности конструкций из подручных материалов.

 

 

 Принтер в работе:

 https://youtu.be/V5eOtMyqQfA


                                                              3D printer SCARA

     Понравилась конструкция 3D принтера SCARA: http://www.thingiverse.com/thing:1241491/#comments , решил ее повторить. Детали разработал сам, как мне проще печатать детали и настраивать. Прошивка Марлин с файлом конфигурации для SCARA. Электроника та же что и в предыдущих принтерах. Для осей Х и У применены DRV8825.

 


Находим в Марлине строки и корректируем.

Configuration.h

//========================= SCARA Settings ==================================

#define Linkage_1 130 //mm      Preprocessor cannot handle decimal point...

// Length of outer support arm     Measure arm lengths precisely and enter

#define Linkage_2 130 //mm

(длины секций рук, при искажении масштаба по Х и У , можно изменить длину рук +- 5мм от измеренного размера рук.))

// SCARA tower offset (position of Tower relative to bed zero position)

// This needs to be reasonably accurate as it defines the printbed position in the SCARA space.

#define SCARA_offset_x 120 //mm

#define SCARA_offset_y -54 //mm

(указываем расстояние от оси вращения первой секции  руки (или оси башни) до 0,0 стола.)

#ifndef MOTHERBOARD

  #define MOTHERBOARD BOARD_RAMPS_13_EFB

//============================= Thermal Settings ============================

(указываем тип термистора экструдера и стола)

У меня // 1 is 100k thermistor - best choice for EPCOS 100k

#define TEMP_SENSOR_0 1

#define TEMP_SENSOR_1 0

#define TEMP_SENSOR_2 0

#define TEMP_SENSOR_3 0

#define TEMP_SENSOR_BED 1

 

//============================== Endstop Settings ===========================

// @section homing

// Specify here all the endstop connectors that are connected to any endstop or probe.

// Almost all printers will be using one per axis. Probes will use one or more of the

// extra connectors. Leave undefined any used for non-endstop and non-probe purposes.

//#define USE_XMIN_PLUG

//#define USE_YMIN_PLUG

#define USE_ZMIN_PLUG

#define USE_XMAX_PLUG

#define USE_YMAX_PLUG

#define USE_ZMAX_PLUG

 

// coarse Endstop Settings

//#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors

#if DISABLED(ENDSTOPPULLUPS)

  // fine endstop settings: Individual pullups. will be ignored if ENDSTOPPULLUPS is defined

  //#define ENDSTOPPULLUP_XMAX

  //#define ENDSTOPPULLUP_YMAX

  #define ENDSTOPPULLUP_ZMAX  // open pin, inverted

  #define ENDSTOPPULLUP_XMIN  // open pin, inverted

  #define ENDSTOPPULLUP_YMIN  // open pin, inverted

  //#define ENDSTOPPULLUP_ZMIN

  //#define ENDSTOPPULLUP_ZMIN_PROBE

#endif

// Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).

const bool X_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.

const bool Y_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.

const bool Z_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.

const bool X_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.

const bool Y_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.

const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.

const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.

 

// Manual homing switch locations:

// For deltabots this means top and center of the Cartesian print volume.

#if ENABLED(MANUAL_HOME_POSITIONS)

  // For SCARA: Offset between HomingPosition and Bed X=0 / Y=0

  #define MANUAL_X_HOME_POS 0.

  #define MANUAL_Y_HOME_POS 0.

  #define MANUAL_Z_HOME_POS 0.1  // Distance between nozzle and print surface after homing.

Указываем расстояние от парковки экструдера до 0,0 стола.

#endif

 

// @section machine

 

// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
#define INVERT_X_DIR true
#define INVERT_Y_DIR false
#define INVERT_Z_DIR true

 

// @section extruder

 

// For direct drive extruder v9 set to true, for geared extruder set to false.
#define INVERT_E0_DIR false
#define INVERT_E1_DIR false
#define INVERT_E2_DIR false
#define INVERT_E3_DIR false

 

// @section homing

 

// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
#define X_HOME_DIR 1
#define Y_HOME_DIR 1
#define Z_HOME_DIR -1

 

 

* MOVEMENT SETTINGS

#define HOMING_FEEDRATE {30*60, 30*60, 3*60, 0}  // set the homing speeds (mm/min)

// default settings

#define DEFAULT_AXIS_STEPS_PER_UNIT   {68.6,68.6,400,354}  // default steps per unit for SCARA

// formula: ((steps per rev * stepping mode of motor)/360) * Gear Ratio  (кол. шагов на градус для Х и У, у меня получилось большое отклонение от расчетного- подбирал.

(Рассчитываем и указываем своё кол. шагов на градус для Х и У, и на мм для Z и  экструдера)

#define DEFAULT_MAX_FEEDRATE          {120, 120, 30, 25}    // (mm/sec)

#define DEFAULT_MAX_ACCELERATION      {2000,2000,10,1000}    // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for Skeinforge 40+, for older versions raise them a lot.

 

#define DEFAULT_ACCELERATION          400    // X, Y, Z and E acceleration in mm/s^2 for printing moves

#define DEFAULT_RETRACT_ACCELERATION  2000   // E acceleration in mm/s^2 for retracts

#define DEFAULT_TRAVEL_ACCELERATION   400    // X, Y, Z acceleration in mm/s^2 for travel (non printing) moves

 

* Marlin_main.cpp       (тоже нужно откорректировать)

#if (Linkage_1 == Linkage_2)

      SCARA_C2 = ((sq(SCARA_pos[X_AXIS]) + sq(SCARA_pos[Y_AXIS])) / (2 * (float)L1_2)) - 1;

    #else

      SCARA_C2 = (sq(SCARA_pos[X_AXIS]) + sq(SCARA_pos[Y_AXIS]) - (float)L1_2 - (float)L2_2) / 33800;

(33800 – заменяем на свое удвоенное произведение длин рук (130*130*2)

Мои настройки:

 

Настройка SCARA выполняется по аналогии с MORGAN

Еще одна табличка: (только опечатка в командах, должно быть сверху вниз М360, М361, М364)

Принтер в работе: https://www.youtube.com/watch?v=QEI8J-BrP04

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

 

 


                                                                      3D принтер SCARA 2

      Решил сделать ещё один принтер SCARA с двумя руками, Morgan не понравился т.к. у него две оси, немного его модернизировал исключил оси. Электроника, прошивка и настройка аналогична SCARA 1.

 

 Видео работы: https://www.youtube.com/watch?v=V-ltmE66adw

Вложения:
ФайлОписаниеРазмер файлам
Скачать этот файл (H-Bot stl.zip)H-Bot stl.zip 304 kB

Ссылки

РЛ-Каталог - электроника, компьютеры, бытовая техника...     

КРС    

Сейчас на сайте

Сейчас 13 гостей и ни одного зарегистрированного пользователя на сайте