Шаговые двигатели из принтера. Как запустить шаговый двигатель без электроники. Подключение шагового двигателя

Для того чтобы сделать станок ЧПУ из принтера своими руками понадобятся следующие подручные материалы:

  • запчасти от нескольких принтеров (в частности привода и шпильки);
  • привод от винчестера;
  • несколько листов ДСП или фанеры, мебельные направляющие;
  • контроллер и драйвер;
  • крепежные материалы.

1. Основа представляет собой ящик из ДСП. Можно взять готовый или изготовить самостоятельно. Сразу учитываем, что внутренняя емкость ящика должна вмещать всю электронную начинку, поэтому высота борта рассчитывается от высоты платы с деталями, крепления и запаса до поверхности стола. Сборка основания и рамы из ДСП осуществляется посредством саморезов. При этом все детали должны быть ровными и закрепятся под прямым углом.

2. На крышку основы необходимо закрепить оси станка. Всего их три – x y z. Сначала крепим ось y. Для изготовления направляющей используется мебельный полоз на шариковых подшипниках.

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

В качестве ходового винта применяется шток от принтера. В данном случае для горизонтальных осей х y изготовлены винты диаметром 8мм с резьбой. Для вертикальной оси z применялся винт с резьбой диаметром 6мм. В качестве шагового двигателя используются приводы от старых принтеров. По одному приводу на каждую ось.

3. К плоскости шпилька крепиться посредством металлического уголка.

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

4. Электронный блок состоит из контроллера и драйвера. Контроллер выполнен на советских микросхемах К155ТМ7, для данного случая использовалось три штуки.

От каждой микросхемы провода идут к драйверу каждого из трех двигателей. Драйвер выполнен на транзисторе. В раскачке используется КТ 315, транзисторы КТ 814, КТ 815. От этих транзисторов электрический сигнал поступает на обмотку электрического привода.

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

Видео: простой ЧПУ-станок своими руками для начинающих.

Электронная начинка

Тут варианта два:

  1. Вы вооружаетесь паяльником, флюсом, припоем, лупой, и разбираетесь в микросхемах из принтера. Найдите управляющие платы принтера 12F675 и LВ1745. Работайте с ними, создав плату управления чпу. Прикрепить их нужно будет сзади чпу станка, под блоком питания (его тоже берем от многострадального принтера).
  2. Используйте заводской контроллер чпу станка. Навскидку – пятиосевой чпу контроллер. Самодельная электроника – чудно, однако китайцы сильно демпингуют с ценами. Так что легким кликом мышки заказываем чпу у них, ибо в России такой девайс чпу не купишь. Чпу контроллер 5 Axis СNC Breakout Board дает возможность подключения 3-х входов концевых двигателей, кнопочку отключения, автоматизированное управление дремелем и целых 5 драйверов под управление шаговым двигателем самодельного станка.

Питается этот чпу от USB-шнура. В самодельном варианте чпу запитывать плату управления на основе микросхем принтера нужно от блока питания станка чпу.

Шаговый двигатель для самодельного станка с чпу придется выбирать мощностью до 35 вольт. При других мощностях контроллер чпу рискует перегореть.

Блок питания снимите с принтера. Соедините проводкой блок питания, тумблер включения и выключения, контроллер чпу и дремель.

К плате управления станком подведите провод от лэптопа/ПК. Иначе, как вы будете загружать в станок задания. Кстати, о заданиях: качайте программу Math3 для рисования эскизов. Для непрофессионалов промышленного дизайна сойдет CorelDraw.

Резать самодельным станком чпу можно фанеру (до 15 мм), текстолит до 3 мм, пластик, дерево. Изделия получатся не более 30-32 см в длину.

Любая разработка начинается с выбора компонентов. При разработке ЧПУ станка очень важно правильно подобрать шаговые двигателя . Если у вас есть деньги на покупку новых двигателей, в таком случае нужно определить рабочее напряжения и мощность двигателя. Я купил себе для второго ЧПУ станка шаговые двигателя вот такие: Nema17 1.7 А .

Если у вас нет достаточно денег или вы просто пробуете свои силы в данной сфере. То вы скорее всего будите использовать двигателя из принтеров . Это самый недорогой вариант. Но тут Вы столкнетесь с рядом проблем. У двигателя может быть 4, 5, 6, 8 - проводов для подключения. Как их подключить к драйверам L298n и .

Давайте разберемся по порядку. Какие шаговые двигателя бывают. Если вы видите четное количество выводов это биполярный шаговый двигатель . Расположение обмотки для данного двигателя вот такое.

Если у двигателя 5 выводов, это униполярный шаговый двигатель . Вот так выгладит его схема.

Наши драйвера рассчитаны на двигателя с 4 выводами . Как быть? Как их подключить?

Биполярные ШД с 6-ю выводами подключаются к драйверу двумя способами:

В данном случае ШД имеет момент в 1.4 раза больше. Момент более стабилен на низких частотах.

При таком типе подключения нужно уменьшить ток, подаваемый на обмотки двигателя в √2 раз. Например, если номинальный рабочий ток двигателя составляет 2 А, то при последовательном включении обмоток требуемый ток - 1.4 А, то есть в 1.4 раза меньше.

Это можно легко понять из следующих рассуждений.

Номинальный рабочий ток, указанный в каталоге, рассчитан на сопротивление одной обмотки (R - именно оно приведено в каталоге). При последовательном включении обмоток сопротивление объединенной обмотки возрастает в два раза (2R).

Потребляемая мощность ШД - I*2 * R

При последовательном включении обмоток потребляемая мощность становится Iпосл.*2 * 2 * R

Потребляемая мощность не зависит от типа подключения, поэтому I*2 * R = Iпосл.*2 * 2* R, откуда

Iпосл.= I/ √2, т.е.

Iпосл.= 0.707 *I.

Так как крутящий момент двигателя прямо пропорционален величине магнитного поля, создаваемого обмотками статора, то он возрастает с увеличением числа витков обмотки и убывает с уменьшением ток, пропускаемого через обмотки. Но так как ток уменьшился в √2 раз, а число витков обмотки увеличилось в 2 раза, то крутящий момент возрастет в √2 раз.

Tпосл. = 1.4 * T.

Во втором случае момент более стабилен на высоких частотах. Параметры ШД при таком подключении соответствуют заявленным в datasheet, (момент, ток), момент более стабилен на высоких частотах .

Униполярный шаговый двигатель можно переделать.

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

В итоге у нас получается биполярный двигатель с 4 выводами.

Шаговые двигателя с 8-ю выводами можно подключить тремя способами.

Подключение А - шаговик работает с характеристиками, заявленными в описании (момент, ток), момент более стабилен на высоких частотах.

Подключение B – момент 1.4 раза, момент более стабилен на низких частотах (относительно А).

Подключение C – момент 1.96 раза, момент более стабилен на высоких частотах (относительно А).

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

Не знаю на сколько данная таблица верная но у меня все сходиться и работает как надо.

Двигателя я выбираю чтобы рабочее напряжение было меньше или равно напряжению источника питания. Для двигателей рассчитанных на меньшее напряжения необходимо настроить ток ниже.

Настраивать будем в следующей статье. Не пропустите !

Подписывайтесь на мой канал на Youtube и вступайте в группы в

Данная статья родилась в помыслах изготовить себе трёх-координатный микростанок с ЧПУ для выполнения некоторых минимальных задач по сверлению, фрезерованию и вырезке печатных плат.
В течение некоторого времени мне очень часто на запчасти отдают старые матричные и струйные принтеры по причинам того, что хозяева решили купить себе новый и более совершенный принтер или МФУ, ибо старенький свой принтер уже морально устарел или его ремонт будет стоить соизмеримо с приобретением нового принтера, а старый попросту выкинули.
После разборки и выброса ненужных пластмассовых деталей и внутренней механики, я себе оставлял только печатные платы, шаговые двигатели с пасиками и стальные направляющие, по которым когда-то бегала печатающая головка. Давным-давно я посматривал в них на интересную микросхему, которая питает тамошние шаговые двигатели.
Просто запросив в поиске даташит на данную микросхему, я увидел в ней не просто драйвер с четырьмя парами ключей, а полноценный микрошаговый ШИМ контроллер.

Микроконтроллер Atmega32, Кварц 16МГц, PORTB весь на выход, PC0 и PC1 на вход с подтяжкой к шине питания, настраиваем таймер на обработку прерывания каждые 10 микросекунд.

Сначала объявим переменные

Unsigned int timerCNC=0; // Счетчик-Таймер ожидания готовности к смене шага unsigned long int CNC1required=25000; // Начальное требуемое значение шага char flagCNC1; // Флаг разрешения обработки шага #define CNC1steps 32 // Количество шагов для 1/32 шага в обоих полюсах двух фаз unsigned long int CNC1point=25000; // Начальная/текущая точка положения шага unsigned char CNC1counter=0; // Счетчик смещения. В дальнейшем приведем к значению маски в 32 варианта смещения unsigned long EncState; // Состояние энкодера. unsigned char step = // Массив значений для шагания { 0b01110000, //0 0b01110010, //1 0b00110100, //2 0b01010110, //3 0b00011000, //4 0b01101010, //5 0b00101100, //6 0b01001110, //7 0b00001110, //8 0b11001110, //9 0b10101100, //10 0b11101010, //11 0b10011000, //12 0b11010110, //13 0b10110100, //14 0b11110010, //15 0b11110000, //16 0b11110011, //17 0b10110101, //18 0b11010111, //19 0b10011001, //20 0b11101011, //21 0b10101101, //22 0b11001111, //23 0b00001111, //24 0b01001111, //25 0b00101101, //26 0b01101011, //27 0b00011001, //28 0b01010111, //29 0b00110101, //30 0b01110011};//31

Функция опроса энкодера

Void EncoderScan (void){ unsigned char New; New = PINC & 0x03; // Берем текущее значение // И сравниваем со старым switch(EncState) { case 2: { if(New == 3){ CNC1required++; }; if(New == 0){ CNC1required--; }; break; } case 0: { if(New == 2){ CNC1required++; }; if(New == 1){ CNC1required--; }; break; } case 1: { if(New == 0){ CNC1required++; }; if(New == 3){ CNC1required--; }; break; } case 3: { if(New == 1){ CNC1required++; }; if(New == 2){ CNC1required--; }; break; } } EncState = New; // Записываем новое значение предыдущего состояния }

Функция опроса энкодера не имеет никаких особенностей, банально читает значения с выводов и по их изменению добавляет или отнимает значение счетчика, тем самым диктуя главной программе направление на вращения. Единственное что опрос у меня сейчас проходит на частоте 100кГц, и мне было лень добавлять отдельный счетчик (три строчки программы), чтобы отсчитывать только полные щелчки оборота энкодера, да это и совсем не нужно на данной стадии тестовых испытаний.

Обработчик прерывания таймера

Interrupt void timer0_ovf_isr(void) { // Reinitialize Timer 0 value TCNT0=0xEC; // Place your code here EncoderScan(); // Производим опрос энкодера //Счетчик временной задержки между шагами //Чтоб не пропустить шаг на высокой скорости timerCNC++; if(timerCNC == 100) { //Если значение достигло flagCNC1=1; //разрешаем шагнуть timerCNC=0; //перезапускаем счетчик }

Обработчики шагов

// Обработчик прибавления шагов // задается значение S на количество шагов перемещения вверх void STEP_UP (unsigned char s) { if (flagCNC1){ //Проверяем флаг разрешения смещения unsigned char q; CNC1counter +=s; //Записываем новое значение смещения q = CNC1counter & 0b00011111; //Получаем номер значения из CNC1steps по маске PORTB = step[q]; //Производим запись в порт нужный байт шага CNC1point+=s; //Добавляем новое значения текущего положения двигателя flagCNC1=0; //Очищаем флаг, смещение завершено, шаг выполнен. } }

Аналогичная функция на обработку обратного счета для движения оси шагового двигателя в обратную сторону.

// Обработчик вычитания шагов // задается значение S на количество шагов перемещения вниз void STEP_DOWN (unsigned char s) { if (flagCNC1){ unsigned char q; CNC1counter -=s; q = CNC1counter & 0b00011111; PORTB = step[q]; CNC1point-=s; flagCNC1 = 0; }

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

Например: для холостого перемещения на пару тысяч шагов можно составить простой алгоритм, который может п лавно н ачать с одного микрошага за такт разрешения таймера, и каж дые 10 тактов поднимать на единицу пока не достигнет "8", так будет программно реализован четверть шаг (счетчик тоже будет добавлять или отнимать по 8 шагов), а далее за 100 шагов до окончания пути начать уменьшать значение перешагивания каждые 10 тактов и двигатель плавно остановится на нужном ему значении. Такая реализация программно обеспечит высокую скорость перемещения при максимальной точности перемещения вала двигателя даже под нагрузкой (старт-разгон-работа-торможение-остановка). Можно, конечно, поднять значение и до 16, в таком случае двигатель выйдет на режим полушага.

Главный цикл программы

Void main(void) { // // Код инициализации микроконтроллера // PORTB = step; // После включения записываем в порт нулевое значение шага while (1) { // Обработка циклического перемещения пока CNC1required не станет равным CNC1point while (CNC1required>CNC1point) { STEP_UP(1); } while (CNC1required < CNC1point) { STEP_DOWN(1); } } }

Для проверок использовался один из биполярных шаговых двигателей с тех самых разобранных принтеров.

Он имеет шаг 7,5 градусов, что соответствует 48 шагам на полный оборот, при 32 микрошагах это выходит точность 1536 микрошагов на полный оборот вала двигателя. Если бы нам не было жалко использовать еще 2 вывода микроконтроллера, то легко можно получить 1/64 шага. А присмотревшись в конструктив этой микросхемы, думаю несложно и поболее 128 шагов сделать, только придется много расчетов произвести на усредненные значения, правда будет серьёзная нелинейность вращения, но и то что мы получили вполне достаточно, незачем нам вращение менее 0,1 градуса.

Энкодер, что я нашел у себя, имеет 24 щелчка на полный оборот, в каждом щелчке 4 импульса изменения состояния, то есть 96 импульсов на полный оборот.

Без использования энкодера программно запускал его на довольно быстрое вращение и действительно чувствовалась сила на валу при том, что я его питаю 12V вместо 24V родного питания принтера.

Вот посмотрите что из этого вышло.

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

Данная статья была предварительным тестом работы микросхемы LB1847, все собрано практически на коленке, только для уточнения всех нюансов её работы. Далее планируется использовать более продвинутый микроконтроллер (скорее всего STM32) и организация одновременного управления тремя (и более) двигателями.

При необходимости можно еще дополнительно вывести на МК выводы DECAY, MD и программно управлять режимом спада тока при различных условиях.

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
Cхема №1
Микросхема LB1847 1 В блокнот
SBDx4 Диод 4 В блокнот
Конденсатор 470 пФ 2 В блокнот
Конденсатор 10 мкФ 1 В блокнот
Конденсатор 47 мкФ 1 В блокнот
Резистор

0.51 Ом

2 В блокнот
Резистор

15 кОм

2 В блокнот
Lx2 Катушка индуктивности 2 Обмотки шагового двигателя В блокнот
Батарея питания 1.5 В 1


При конструировании очередного станка с ЧПУ, а попросту 3-х осевого фрезерного-сверлильного станочка для печатных плат и мелких фрезерных работ, у меня появилось неугомонное желание разложить всё «по полочкам».
Многие скажут, что тема не нова, существует множество проектов, множество технических и программных решений. Но, плавая в этом море информации, я постарался убрать всю «воду» и получить «сухой остаток».
Вот что из этого получилось…

Задача построения станка обычно сводится к трем подзадачам - механика, электроника, программное обеспечение. Видимо и статьи придется писать тоже три.
Поскольку у нас журнал всё-таки практической электроники, начну с электроники и чуть-чуть с механики!

Привод

Нужно двигать собственно фрезер в 3-х направлениях - XYZ, значит нужно 3 привода - 3 мотора с передачей вращения вала двигателя в линейное перемещение.
О передаче…
Для фрезерного станка, где есть боковые усилия резания материала, желательно не применять ременные передачи, очень популярные в 3D принтерах. Буду применять передачу «винт-гайка». Самая бюджетная передача - обычный стальной винт и безлюфтовая, желательно бронзовая, гайка. Более правильная - винт с трапециевидной резьбой и гайка из капролона. Самая хорошая (и, увы, самая дорогая) шарико-винтовая пара, или ШВП. Об этом подробнее я еще расскажу далее…
У каждой передачи есть свой коэффициент, свой шаг - то есть насколько линейно по оси переместится фрезер за один оборот двигателя, например, на 4 мм.

Двигатель (мотор)

В качестве двигателя для привода определил шаговый двигатель (ШД)
Почему шаговый? Что это вообще такое?
Двигатели есть переменного и постоянного тока, коллекторные и бесколлекторные, и так называемые «шаговые». В любом случае нам надо обеспечить какую-то точность позиционирования, например 0,01 мм. Как это сделать? Если двигатель имеет прямой привод - вал двигателя соединяют напрямую с винтом, то для обеспечения такой точности нужно повернуть его на некоторый угол. В данном случае, при шаге передачи 4 мм и желаемой точности перемещения 0,01 мм это… всего 1/400 оборота, или 360/400=0,9 градуса! Ерунда, возьмем обычный моторчик…

С «обычным» моторчиком без обратной связи никак не получится. Не вдаваясь в подробности, схема управления двигателем должна «знать», на какой угол повернулась ось. Можно конечно поставить редуктор - потеряем в скорости, и все равно без гарантии, без обратной связи вообще никак! На ось ставится датчик угла поворота. Такое решение надежное, но дорогое.

Альтернатива - шаговый двигатель (как он работает, почитайте сами). Можно считать, что за одну «команду» он повернет свою ось на определенный градус, обычно это 1,8 или 0,9 градуса (точность обычно не хуже 5%) - как раз то, что нужно. Недостаток такого решения - при большой нагрузке двигатель будет пропускать команды - «шаги» и может вообще остановиться. Вопрос решается установкой заведомо мощного двигателя. На шаговых двигателях и делается большинство любительских станочков.

Выбираем шаговый двигатель

2 обмотки, с минимальным током, минимальной индуктивностью и максимальным моментом - то есть максимально мощный и экономичный двигатель.

Противоречивые требования. Малый ток - значит большое сопротивление, значит много витков провода обмотки двигателя, значит большая индуктивность. А большой момент - это большой ток и много витков. Выбираем в пользу большего тока и меньшей индуктивности. А момент надо выбирать исходя из нагрузки, но об этом потом.

Характеристики некоторых двигателей приведены в таблице:


Для небольшого станка с рабочим пространством размером 300×300х100 мм и легким фрезером вполне сгодятся двигатели с крутящим моментом 0,3Нм и выше. Оптимальным является ток от 1,5 до 2,5 Ампер, вполне подойдет FL42STH38-1684

Драйвер шагового двигателя

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

Самое простое решение - источник заданного тока и две пары транзисторных ключей на каждую обмотку. И четыре защитных диода. И логическая схема чтобы менять направление. И… Такое решение обычно делают на микросхеме ULN2003A для двигателей с малым током, имеет много недостатков, не буду на них останавливаться.

Альтернатива - специализированные микросхемы «всё в одном» - с логикой, транзисторами и диодами защиты внутри (или снаружи). А еще такие микросхемы контролируют ток обмоток и регулируют его с помощью ШИМ-а, а так же могут реализовывать режим «полушаг», а некоторые режимы 1/4 шага, и 1/8 шага и т. д. Эти режимы позволяют повысить точность позиционирования, повысить плавность движения и снизить резонанс. Обычно достаточно режима «полушаг», что позволит повысить теоретическую точность линейного позиционирования (в моем примере до 0,005 мм).

Что внутри микросхемы драйвера шагового двигателя? Блок логики и управления, источники питания, ШИМ со схемами формирования момента и времени коммутации обмоток, выходные ключи на полевых транзисторах, компараторы обратной связи - ток контролируется по падению напряжения на резисторах (Rs) в цепи питания обмоток. Ток двигателя задается опорным напряжением.

Для реализации этих функций существуют и другие схемные решения, например, с использованием микроконтроллеров PIC или ATMEGA (опять же с внешними транзисторами и защитными диодами). На мой взгляд, они не обладают значительным преимуществом перед «готовыми» микросхемами и я их в данном проекте использовать не буду.

Богатство выбора

На сегодняшний день есть достаточно много различных микросхем и достаточно много уже готовых плат и модулей драйверов ШД. Можно купить готовый, а можно «изобретать велосипед», тут каждый решает по-своему.

Из готовых - наиболее распространённые и недорогие драйверы на микросхемах Allegro A4988 (до 2А), Texas Instruments DRV8825 (до 2,5А).
Поскольку модули изначально разрабатывались для использования в 3D принтерах типа Rep-rap проекта Arduino, они не являются законченными модулями (например, им нужно еще питание логики (+5V), которое подается с так называемой рампы (Ramp).

Еще есть решения на DRV8811 (до 1,9 А), A3982 (до 2 А), A3977 (до 2,5 А), DRV8818 (до 2,5 А) DRV8825 (до 2,5 А), Toshiba TB6560 (до 3 А) и другие.

Поскольку мне интересно что-то сделать самому, плюс появилась возможность «попробовать на вкус» микросхемы Allegro A3982 и A3977, решил сделать пару драйверов самостоятельно.

Готовые решения на A4988 не понравились, прежде всего, из-за миниатюризации размеров печатной платы в ущерб хорошему охлаждению. Типовое сопротивление открытых транзисторов у A4388 при токе 1,5А 0,32+0,43 Ом, плюс 0,1-0,22 Ома «измерительный» резистор - получается около 0,85 Ом. А таких каналов два, и хотя и работают они импульсно, но 2-3 Ватта тепла надо рассеивать. Ну не верю я в многослойную плату и малюсенький радиатор охлаждения - в даташите нарисована плата гораздо больших размеров.

Провода мотора нужно сделать короткими, драйвер устанавливать рядом с двигателем. Существует 2 технических решения в звукотехнике: длинный сигнальный кабель к усилителю + короткие провода к акустической системе, или короткий сигнальный кабель к усилителю + длинные провода, а акустической системе. Оба решения имеют свои плюсы и минусы. С моторами - так же. Я выбрал длинные провода управления и короткие провода к мотору.

Управляющие сигналы - «шаг» (step), «направление» (dir), «включение» (enable), индикация состояния сигналов управления. Некоторые схемы не используют сигнал «Enable», но это приводит в режиме простоя к ненужному нагреву и микросхемы и двигателя.

Одно питание 12-24 вольта, источник питания логики (+5B) - на плате. Размеры платы - достаточные для хорошего охлаждения, двухсторонняя печать с большой областью «меди», возможность приклеить на микросхему радиатор (применяемой для охлаждения памяти видеокарт).

Драйвер ШД на микросхеме Allegro A3982



Напряжение питание силовое: 8…35 В Напряжение питание логики: 3,3…5 В Выходной ток (максимальный, зависит от режима и охлаждения): ±2 А Типовое сопротивление открытых транзисторов (при токе 1,5А): 0,33+0,37 Ом

Драйвер ШД на микросхеме Allegro A3977

Основные характеристики и блок-схема:


Напряжение питание силовое: 8…35 В Напряжение питание логики: 3,3…5 В Выходной ток (максимальный, зависит от режима и охлаждения): ±2,5 А Типовое сопротивление открытых транзисторов (при токе 2,5А): 0,33+0,45 Ом

Схема и прототип



Проектировал в среде DipTrace. Драйвер A3982 включен по схеме из документации производителя. Включен режим «полушаг». Дополнительно для надежной работы сигналов управления и индикации применил микросхему логики 74НС14 (с триггерами Шмитта). Можно было сделать гальвано-развязку на оптронах, но для маленького станка я решил ее не делать. Схема на A3977 отличается только дополнительными джамперами режима шага и более мощным разъемом питания, пока в «железе» не реализована.

Печатная плата

Процесс изготовления - ЛУТ, двухсторонняя. Габариты 37×37 мм, крепеж - как у двигателей, 31×31 мм.


Для сравнения - слева мое творчество, справа драйвер на A4988.

Здравствуйте, дорогие друзья! Сегодня мы расскажем Вам про то, как создать ЧПУ из принтера. Основной причиной того, что сейчас так часто в интернете предлагают переделать из принтера или сканеров самодельные устройства, является то, что многие современные периферийные устройства для ПК настолько сложны с функциональной точки зрения, что в переделанном виде позволяют создавать станки, способные выполнять удивительные задачи.

Приступаем к изготовлению

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

  • Приводы, шпильки, направляющие от принтера (желательно использовать несколько старых принтеров; принтеры необязательно должны печатать);
  • Привод от дисковода.
  • Материал для создания корпуса – фанера, ДСП и т.п.
  • Драйверы и контроллеры;
  • Материалы для крепежей.

Полученные станки с числовым программным управлением смогут выполнять различные функции. Всё, в конечном итоге, зависит от устройства, которое будет располагаться на выходе станке. Чаще всего из струйных принтеров делают , выжигатель (при помощи установки выжигателя на выходе устройства) и сверлильные машины для создания печатных плат.

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

Создание самодельного станка

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

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

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

Для вертикальной оси, в самодельном ЧПУ нам пригодятся детали из дисковода (направляющая по которой перемещался лазер).

В принтерах есть так называемые штоки, именно они играют роль ходовых винтов.

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

Электронные компоненты будущих станков

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

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

Самодельная машина может функционировать на отечественных К155ТМ7, их нам понадобиться 3 штуки.

К каждому драйверу идут проводки от своей микросхемы (контроллеры независимы).

Шаговые двигатели в самодельном аппарате должны быть рассчитаны на напряжение, не превышающее 30-35 В. Часто случалось так, что при повышенной мощности, советские микросхемы-контроллеры перегорали.

Блок питания идеально подходит от сканера. Его нужно подсоединить к блоку к кнопке включения, контроллером и сами устройством (фрезер, дрель, выжигатель и так далее).

Главная плата управления (материнская плата для станка ЧПУ своими руками) должна быть подключена к персональному компьютеру или ноутбуку. Именно при помощи компьютера станок сможет получать четкие задания и превращать их в трехосевые движения, создавая конечные продукты. Идеальным будет программа Math3, которая позволяет создавать эскизы. Также отлично подойдут профессиональные программы для векторной графики.

Конечно, все зависит от вашей фантазии и прочности (грузоподъемности) корпуса и рамы. Однако, чаще всего ваш аппарат сможет разрезать фанеру толщиной менее 1,5 см, трехмиллиметровый текстолит или пластик.