Самодельный фрезерный станок для печатных плат

Блог о электронике

▌Станок
Для гравировки платы нужен фрезерный станок ЧПУ. Кудаж без него. У меня тут какой то китаец без роду и племени. С рабочим столом 200 на 200мм и 12мм валами.

Стоит на нем такой же безродный коллекторный шпиндель на 350Вт, дающий около 15000 оборотов. Довольно мало, надо сказать. Хорошо бы от 30 000, а лучше 50-100 тысяч.

Управляется все простейшей платкой опторазвязок на LPT порт.

Через MACH3, на который натянут скринсет от Михаила Юрова. Нагугливается на каждом углу.

Без него интерфейс MACH3 ничего кроме рвотных позывов не вызывает обычно. Вырвиглазная дичь. Особенно с непривычки.

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


Основной инструмент который нам нужен — это гравировальный штихель. Вот такая вот коническая фреза. Чем острей тем лучше. Ходовые размеры острия в 0.1мм (если хотите забацать что то уровня LQFP и с дорогами в 0.3мм) и 0.2мм для более крупных корпусов вроде SOIC и широких, под 0.5мм, дорожек. Также не помешат такого же плана фреза, но с режущей кромкой 1 или даже 1.5мм — пригодится если придется не просто гравировать изоляцию контуров, а нужно будет сносить целые полигоны.


Также нужны будут сверла. У меня три размера используется. 0.4..0.6мм для переходных отверстий. 0.8…1мм для обычных TH компонентов и 3мм для крепежных отверстий под всякие потенциометры, энкодеры, крепежные отверстия в плату и так далее. Чтобы было удобней, я держу инструмент сразу в цанге-гайке. Так как правило не всегда удается подобрать все под одну цангу. А достать цангу из гайки, особенно если это цанга маленького размера, бывает сложно. Поэтому проще иметь штук пять гаек и цанг под все случаи жизни. И держать их такими вот наборами.


Для обрезки платы используется фреза «кукуруза» диаметром 2…3мм, лучше 2. Не так много опилок и нагрузка на станок меньше.

Плата просто приклеивается к жертвенному столу скотчем. Кстати, стол можно сфрезеровать под ноль, тогда все огрехи геометрии станка по крайней мере будут повторять форму подложки, что позволит повысить точность. Но я этого делать не стал, хотя у меня расхождение между углами составляет около миллиметра. Просто к гладкой ламинированной МДФ панели лучше клеится текстолит и при удалении скотч отрывается сразу полностью, не размазываясь по волокнистой структуре МДФ. Разница как… отрывать скотч от лакированного стола или от картонной коробки. Коробка срывается с мясом. Тут так же почти. Потому не фрезерую.

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

Вообще в Mach3 есть свой визард для этой цели. Искать в меню Wizard-Pick Wizard…-Digitize Wizard, откроется вот такая хреновина:

Где можно указать размер общупываемой поверхности (Width и Height of area), безопасную высоту перемещения щупа (Z travel), глубину до которой щуп будет искать поверхность (Z Axis Probe Depth). Stepover это шаг по осям, а FeedRate скорость с которой щуп пойдет до поверхности. Чем быстрей тем быстрей сканирование, но по инерции он может попасть чуть глубже чем надо. Поэтому тут надо ловить баланс. Потом жмете Create and Load Gcode и у вас в мач сразу же будет загружен готовый код сканирования. Я не пользуюсь этим визардом потому, что он не очень удобный. Куда проще сгенерировать код в той же проге которая будет править код плана резки. Это G-code Ripper.

Брать его с официального сайта Не забыв передать привет мудилам из Роскомнадзора, которые его заблокировали как экстремистский. Так что применяйте прокси-плагины (Opera Turbo вполне подойдет или FriGate плагин для Chrome, только там надо будет вручную вписать адрес этого сайта).

Итак, запускаете G-code Ripper. Эта штука, как и flatcam тоже написана на питоне и тоже имеет консольный интерфейс (впрочем я в нем пока сам не разбирался, а так, думаю, можно вписать ее в наш злой батник). А пока же втыкайте в его GUI.

И что же мы видим:

Вот такое главное окно программы. Нам надо выбрать в левом нижнем углу Auto Probе и через меню File загрузить гкод нашей гравировки. Сначала давайте сторону которую будем резать.

Получили наш план резки и белые крестики поверх. Крестики это точки ощупывания. Обратите внимание на расположение осей координат, туда вы должны будете потом пригнать щуп. А пока займемся пересчетом и вводом параметров программы:

Probe Offset — это смещение щупа относительно инструмента. У меня щупом является сам инструмент, поэтому тут нули. Probe Z Safe — безопасная высота сканирования. Зависит от кривизны вашей системы. У меня разброс под миллиметр и потому я поставил 2. А вообще при ровном столе достаточно и 0.8 мм. Чем ниже тем быстрей сканирование. Опускаться то меньше! Probe Depth — предельная глубина на которую пойдет щуп. У меня 0, т.к. в данном случае начало координат стоит в самом низком углу моего стола. А вообще можно и в минус немного загнать, скажем на -0.5. Хуже не будет. Probe Feed — скорость опускания. Меньше — точнее, но дольше скан и шуму больше. У меня 100мм/мин. Х/У Points это сколько точек по вертикали и горизонтали снять. Вон те самые белые крестики. Габариты платы он сам выберет. Pre и Post коды я оставляю пустыми, т.к. никаких дополнительных кодов перед и после программы мне не надо. А вот счастливые обладатели ченейджера могут, например, автоматом специальный щупательный инструмент вытащить, а потом убрать обратно. Controller у меня MACH3 и, собственно, все.

Жмем Save G-code File Probe Only, получаем файл с гкодом, шлем его в станок и идем щупать плату.

Читайте также:  Сравнение метрической и дюймовой резьбы

Как же станок будет сканировать поверхность? Для этого у станка есть щуп. Когда щупа касается масса, то станок это чувствует. За массу у меня принят шпиндель. Вот та пластиковая приблуда, что окружает его крыльчатку это держатель щетки. Которая сделана из старой фрезы и втыкается в центр вала, на подпружиненном крепеже. Почему я просто не подал массу на корпус шпинделя? А потому, что через его подшипники довольно хреновый контакт. Он может пропадать в зависимости от угла поворота. А так он прям по валу дойдет до цанги, а внутри цанги еще маленькая пружинка подведет контакт прямо к инструменту. А сам щуп представляет собой пластину известной толщины (где то 0.5мм) на проводке. Если мне надо выставить инструмент точно на 0 я кладу в нужное место пластину, прижимаю ее пальцем к поверхности и даю команду на поиск нуля. Станок тычется в пластину инструментом, потом учитывает толщину и осознает текущую высоту кончика инструмента. Подняв при этом инструмент на 2.5мм.

В случае же с текстолитом мне нужно просто положить контакт щупа на медь, закрепить изолентой, чтобы не убежал и сделать поиск поверхности. Координата, конечно, выставится не верно. Т.к. в этом случае нет толщины самого щупа. Но это не важно. Главное теперь можно вручную, вводя команду G1 Z-2 (почему -2? А потому, что по моему скрипту после нахождения у меня инструмент подпрыгнет на 2.5мм, а 0.5 толщина пластины щупа, т.е. фактически его координата станет 2мм), опустить инструмент почти до уровня текстолита. Почему почти? А для больше точности не помешает поймать самый нежный контакт, а автопоиск довольно груб, т.к. у станка есть некоторая инерция и он немного промахивается. А вот если завести инструмент почти на ноль, а потом вручную, командами G1 Z## сдвигая на сотку-другую вверх или вниз добиться того, что кнопка индикатора начнет мерцать (а она у меня меняет цвет когда происходит касание щупа) от малейшей вибрации в помещении. Скажем когда кто-то мимо прошелся. Да, само собой при этом мы выставляем координаты Х и У в будущий ноль координат исходя из нашей платы. Не путать с нулем станка (машинные координаты).

Дальше, когда ноль найден, то надо обнулить координаты по XYZ и запустить программу сканирования, указать в какой файл записать данные и получить текстовый файл примерно вот такого вида:

0.00000,0.00000,0.00500
7.05500,0.00000,0.03000
14.11500,0.00000,0.03000
21.17000,0.00000,0.06500
28.22500,0.00000,0.07000
35.28500,0.00000,0.11500
42.34000,0.00000,0.12000
49.39500,0.00000,0.16000
56.45500,0.00000,0.14000
63.51000,0.00000,0.14000
0.00000,8.65500,0.00000
7.05500,8.65500,0.00000

Тут все и так ясно — это просто координаты по осям где инструмент коснулся поверхности. Что нам, собственно, и нужно.

Возвращаемся в наш Gcode-Ripper и делаем там Read Probe Data File и наши крестики становятся черными:

Готово. Осталось теперь нажать для верности кнопочку Recalculate и сохранить скорректированный файл. Save G-code File Adjusted. Если теперь их сравнить в каком-нибудь NC-Corrector’e то на виде сбоку будет видно, что у нового файла появился рельеф дна 🙂

старый:

новый:

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


Ободрали изоляцию. Получилось хреново, потому что фреза 0.2 да еще и тупая. А тут бы 0.1 и поострей. Лохмы образуются потому, что контур надо бы обходить в двух направлениях, т.к. фреза когда идет по фольге с одной стороны пропила режет чисто, с другой махратит. И надо обратный проход сделать, снять заусенки. А флаткам не делает его или я не научился еще. Поэтому я их обычно сношу мелкой шкурочкой в пару движений. Еще можно снизить подачу реза, будет намного чище. Или, если шпиндель позволяет, обороты повысить. Вон LPKF Protomat жарит на 100 000 оборотах и там гладенько все.


А это вот уже практически готовая плата. Четыре огромные дырки на месте кнопки это я хорошо факапнулся на эпизоде смены инструмента при сверлении. Когда выложу видео там увидите сами. Надо было поставить после 0.8мм сверла 1мм сверло (или просто нажать «далее», чтобы тем же 0.8мм просверлить), а я не прочитал что мне предложил поставить станок, забыл, что там еще миллиметровые отверстия есть и воткнул сразу 3мм и он мне их весело засверлил 🙂 ЧПУ не прощает ошибок.

Вот как то так. Да, на двусторонке, после переворота текстолита, надо еще раз его простучать щупом.

Кроме обещанной видяшки которую я хз еще когда смонтирую (ненавижу это дело) будет еще одна две статейки по флаткаму и мне тут товарищ набросил альтернативный метод. Я его сверстаю и скоро выложу. На этом тему наверное закрою. Т.к. ну чего там еще рассусоливать то? 😉

51 thoughts on “Гравировка печатных плат на ЧПУ фрезерном станке. Часть вторая. Коррекция кривизны текстолита”

За упор на консоль FlatCAM отдельная благодарность, штука действительно мощная, нужно будет поковырять. На данный момент кругло-непрямоугольные платы режу таким методом https://bitbucket.org/jpcgt/flatcam/wiki/Cutting_the_edges_of_rectangular,_polygonal_or_round_shaped_boards.

Было бы здорово, если бы было уделено время вырезам в плате, что-то с наскока не вышло. И еще один непонятный момент, почему-то из DipTrace сверловка в метрической системе неадекватно в FlatCAM выгоняется, хотя в настройках мм, и в сверловке — METRIC,0000.00. Или это та же история как в Eagle… Но если в DipTrace выбрать в сверловке систему измерения — дюймы, то все на своих местах. При этом во FlatCAM — мм, и все герберы тоже в мм.

У меня, кстати, такая же проблема с DipTrace. При экспорте сверления приходится ставить дюймы, чтоб во FlatCAM отверстия встали на свои места. Не удобно, но я уже свыкся.
Вот мне интересно, Вы не в курсе как можно сделать длинные отверстия-прорези (на плате в статье есть место для крепления разъема питания). Я не могу разобраться что и как экспортировать из DipTrace, чтоб потом во FlatCAM можно было сделать гравировку этих пазов

Читайте также:  Партнер 350 бензопила фото

Чтобы пазы гравирнуть надо их нарисовать на каком-либо отдельном слое который можно в гербер выгрузить. Да хоть на втором слое меди. Флаткаму то пофиг же.

блин, все гениальное — просто!))
я уже несколько вечеров бился над этим, и никак не мог победить!
Спасибо!)

Ага, если выбрать дюймы, то он пишет «Converting units to MM.» и все хорошо. Тоже смирился с этим, в остальном-то все отлично. Прорези тоже не выходят. Стоит галка «фрезеровка (овальные отверстия)» а во FlatCAM они попадают как обычные отверстия. Если первое это мелочи, то второе огорчает конечно. Нужно разбираться.

>>Про сам станок, его конструкцию, настройку и работу если кому то будет интересно я расскажу в другой раз.
Конечно интересно! Я ожидал, что инструментальная часть как раз об этом и будет, а тут опять в основном про софт.

Кстати, я наткнулся на программку Autoleveller, которая делает корректировку плоскости вообще в один клик. всего лишь вгоняешь готовый Г-код в нее, запускаешь получившийся код в мач3. А дальше она сканирует и сразу же режет.

Эта тоже так умеет. Там можно сразу скан+рез файл делать. Но как то жутко оно выглядит, надо попробовать.

Здорово. В выходные попробую описанным методом. Пользовался только корректировкой » на лету». Качественно, но на простых платах задалбывает ждать. Собиралсы уже сам писать корректор, но «… всё написано до нас» :). Спасибо.

Не пойму, при начале сканирования mach3 как положено спрашивает о сохранении в текстовый файл, даю имя стартую, сканирование проходит как положено! открываю текстовый файл, он пуст! никто не в курсе в чем загвоздка?
Пробовал и Digitize Wizard в mach3, и g-code_ripper-013 по любому текстовик пуст!

Может ему каких то прав не хватает, чтобы файл записать?

Да уже и под администратором все запускал, эффект тот же, файл создается но по окончанию сканирования он пуст!

А вообще мач может создавать файлы? Там если поковыряться, то вроде можно править гкод и тут же его сохранять. Что то было такое. Режим обучения тоже был, в оригинальном интерфейсе, когда вводишь вручную код, а потом сохраняешь. Попробуй им создать файл, любой гкод и сохранить. Может у тебя сам мач кривой и у него не работает запись в файл.

А еще может у тебя криво работает сам дигитайзер. Ловля нуля работает нормально?

Посмотрел видео, делал один в один, но координат в текстовом файле нема! подозреваю что косячит mach3.
G коды он открывает, правит и сохраняет нормально. Ноль ловится нормально и сканирование проходит как на видео.
Какая у вас система на компе установлена?

Кривой (по понятным причинам) MACH3 — та еще забава. У меня на одной из версий рандомно опускалась фреза, и все это весело шагало домой, перерезая всю заготовку. 🙂

ХП про. Серевиспак вроде бы 2.

Лиценз в принципе абсолютно ничем не отличается, только тем что фигурируют ваши инициалы!
Я на али покупал плату с USB интерфейсом, и продавец вместе с драйверами любезно записал mach3 с файлом лицензии. Думаю глюки больше вылазят от конфигурации железа компа.

Ну вот у меня от продавца станка так и вел себя софт. Мог отшагать всю программу как положено, а мог запороть все в один жест. При этом операционка (XP) специально выделена под станок, все рекомендации и оптимизации выполнены, никто не мешает… Только сменив софт решил проблему, в остальном все осталось как прежде. Что сие было — неведомо.

Запросто могло решится возможной заменой проца, допустим AMD на INTEL, или еще каких железок!

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

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

Путь к файлу же тоже меняли? Я особо не припомню, но может у него как у FlatCAM непереваримость кириллицы, длинных путей и проч…

Кириллицу в путях и именах не использую, а сохранять пытался в разных местах и С:Mach3GCode и в корень ничего не помогло.

Попробовал на другом компе другой релиз mach3, та же картина текстовик с координатами пуст!
DI HALT а можно глянуть G код который сканирует координаты, может проблема в нем. Голова уже дымится не знаю в какую сторону копать! 🙁

Печатная плата дома, или как изготовить печатную плату дома с использованием станка ЧПУ.

Автор: Sailanser
Опубликовано 30.01.2014.
Создано при помощи КотоРед.

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

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

  • Рисование принципиальной схемы и трассировка будущей печатной платы.
  • Подготовка необходимых файлов для ее дальнейшего изготовления.
  • Изготовление непосредственно печатной платы.

Вот придерживаясь этих пунктов и расскажу как изготовить печатную плату имея в своем арсенале станок с ЧПУ.

Часть первая: Рисование принципиальной схемы и трассировка будущей платы.

Для рисования будущей печатной платы существует множество программ это и всеми любимая Sprint Layout и PCad и OrCad и Altium Designer и Proteus и Eagle и DipTrace и т.д. Объединяет их всех одно, все они предназначены для рисования, трассировки и последующего изготовления печатной платы.

Читайте также:  Электроинструмент по дереву для домашней мастерской

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

В программе Eagle создал схему. Схема а потом и плата для примера изготовления очень простая, это просто блок кнопок для передней панели, 4-е кнопки и разъем для подключения. По схеме сделал трассировку платы, поставил кнопки, крепежные отверстия для крепления платы к передней панели и несколько отверстий последующего позиционирования. Что за позиционирование? А вот о нем будет несколько позже. Хоть плата и простая но на ней присутствуют разнотипные отверстия, это отверстия разъема, отверстия выводов кнопок, отверстия мелких направляющих кнопок, отверстия крепежа и отверстия последующего позиционирования. Для них сделал диаметры 1.0, 1.2, 1.8, 3.1 и 3.2. Если отталкиваться от программы Eagle то в ней все рисуется на определенном слое, верхние дорожки на слое Top нижние разумеется на слое Bottom. Контур будущей платы рисуется на слое Dimension и слой где будут проходить всякие фрезерные работы называется Milling. Вот согласно этим правилам и нарисована будущая печатная плата. Толщину контуров на слоях сделал равными 0 мм.

Рисунок на слое Milling отодвинут от слоя платы Dimension на расстояние в 0,75 мм. Это сделано для того что по этому слою плата в дальнейшем будет вырезаться фрезой с диаметром 1,5 мм. И если в такой программе как ArtCam можно задать прохождение фрезы и слева от линии и справа от линии и по самой линии, то в программах разработки печатных плат фреза идет строго по центру линии. Если же планируется делать платы на заводе то на слое Milling рисовать контур обрезки не нужно, достаточно только на слое Dimension обозначить контур платы. остальное на заводе сделают сами. Так же на слое Milling контур сделан не цельным а с перемычками, которые будут удерживать будущую печатную плату и не дадут ей вылететь при последующей обрезке. Еще на слое Milling присутствует второй контур с небольшими перемычками он нужен для того что бы заготовку будущей печатной платы вырезать из цельного куска фольгированного стеклотекстолита.

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

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

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

Гравировка печатных плат в подробностях

Гравировка печатных плат в подробностях

AndyBig » 19 дек 2015, 00:28

Думал, думал — в каком форуме разместить. Так и не придумал Создам тут — вроде как достаточно специфичная обработка фольгированного текстолита получается
Опишу как я делаю печатные платы на станке. Способов, конечно, много, хотя в целом процесс одинаков, но есть некоторые нюансы, которые я и постараюсь осветить тут.
Используемые мною программы: P-CAD 2006, Coppercam, pcbzcorrect и Mach 3.
Итак, есть проект печатной платы в какой-то программе и нужно получить ее в «натуре»

1. Подготовка
Лично я пользуюсь P-CAD 2006, поэтому на ее примере и буду показывать. Но то же самое можно сделать почти в любой другой программе для разработки и подготовки к производству печатных плат. Подготовка сводится к трем процедурам:
А) проверка зазоров и толщин всех линий
Б) упрощение некоторых площадок для падов (pads)
В) создание двух «прицельных» отверстий в углах платы сверху или снизу
Первая процедура понятна – зазоры и толщины должны соответствовать возможностям станка. Чем он жестче и точнее, тем тоньше линии и зазоры можно получить при большей скорости обработки. В среднем, 0.25/0.25 мм доступны почти любому более-менее нормальному станку при небольшой скорости обработки (я получаю это на китайском фрезере 6040). На хорошем станке можно получить и 0.15/0.15 мм, но станок должен быть действительно жестким. Шпиндель должен обеспечивать достаточно высокую скорость вращения для работы мелкими граверами, это тоже само собой
Вторая процедура вызвана особенностями используемой мною программы подготовки G-кода – Coppercam. По каким-то причинам эта программа плохо воспринимает сложные пады. К примеру, пад с площадкой в виде скругленного прямоугольника со сдвинутым относительно центра отверстием:

Здесь предлагается указать массив плат – сколько по горизонтали и сколько по вертикали, а так же расстояние между платами. Точнее, расстояние не между платами, а между левыми краями заготовок. По умолчанию там стоят размеры текущей заготовки, в этом случае заготовки будут расположены вплотную друг к другу. Например, моя плата имеет размер 26.5х46 мм, при уменьшении размеров заготовки я указал, что вокруг платы должно остаться по 2.5мм, соответственно итоговая размер заготовки получился 31.5х51 мм (что и показано в диалоге) и при таком расстоянии между левыми краями заготовок расстояние между контурами плат в массиве получается по 5 мм. После обрезки плат 2 мм фрезой между платами останутся мостики по 1 мм.
Объяснил запутанно, но надеюсь, что поняли

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

Отправить ответ

  Подписаться  
Уведомление о
Adblock
detector