Как сделать гербер файл

Обновлено: 06.07.2024

В качестве примера возьмем мою первую ПП, вот такую:

Для получения Gerber-файлов необходимо выполнить некоторую, для кого-то уже известную, последовательность действий. Выбираем File -> Fabrication Outputs -> Gerber Files, в открывшемся окне устанавливаем требуемые параметры, проходясь по всем вкладкам. Стоит напомнить, что указанные в самом начале единицы измерения «Units» и «точность формата» выходных файлов «Format» необходимо выставлять точно такие же в дальнейшем, по мере требования. На кладке «Layers» отмечаем слои «Top Layer, Bottom Layer, Top Solder, Bottom Solder» и слой, на котором определена граница ПП. У меня для этого задействовано два слоя «Outline» и «Cutting». Слой «Cutting» используется для грубой механической обрезки, а слой «Outline» для точного подгона размеров и форм. При этом зеркальное отражения для нижних сигнального «Bottom Layer» и защитной маски «Bottom Solder» не отмечаем. После нажатия на ОК попадаем во встроенный в Altium Designer CAM-редактор. Здесь для удобства я переименовываю полученные слои. ВАЖНО! При переименовании не забывайте добавлять расширения в именах слоев!
Теперь необходимо получить файл сверловки. Выполняем Files -> Fabrication Outputs -> NC Drill Files. Отмечаем нужные параметры, не забывая про соответствие значений для «Units» и «Format». Экспортируем в нужный формат, выбрав File -> Export -> Save Drill. Здесь также выставляем правильные значения для «Units». Задаем имя и сохраняем. Временный CAM-документ со сверловкой можно закрывать без сохранения. Переходим в главный CAM-документ с основными слоями и импортируем файл сверловки, выполнив File -> Import -> Drill. В итоге получается вот так:


Следующим этапом будет получение «составных» (Composite Layers) слоев, а также негативных «фотошаблонов» (Films). Для получения «составных» слоев выполняем Edit -> Composite Layers -> Build composite. В открывшемся окне задаем имя для нового слоя и добавляем верхний сигнальный слой «Top Layer». Здесь я добавляю еще один слой, определяющий границу для грубой мех. обрезки ПП – «Cutting». Для этих слоев поляризация «Polarity» устанавливается как «Dark». Не забываем добавить слой сверловки и установить поляризацию как «Clear».

В результате получается новый слой:

Тоже самое проделываем и для нижнего слоя «Bottom Layer».

Результат:


Теперь создаем составные слои для защитных паяльных масок. В этом случае используется только сам защитный слой и слой, определяющий точный контур ПП – слой «Outline». Слой сверловки не нужен. В результате получается еще два составных слоя:



Настало время создать негативные «фотошаблоны». Для этого в окне САМ-редактора отмечаем только один составной слой, для начала верхний. Выполняем Tools -> Film Wizard и в появившемся окне устанавливаем размер фотошаблона. Значения выбирается немного большим размера ПП – устанавливаются строго целые числа в дюймах. В полях «Array Numder» устанавливаем значения «1». По нажатию кнопки «Neg./Mirror. » в первой вкладке «Negative Layers» отмечаем только тот слой, с которым работаем на данный момент. Во второй вкладке ничего не трогаем. Нажимаем ОК, отказываемся от предложения удалить «старые» объекты и получаем результат:


Тоже самое проделываем для нижнего слоя, за исключение того, что теперь в "Film Wizard'е" по нажатию кнопки «Neg./Mirror. » и во второй вкладке «Mirror Layers» отмечаем слой, с которым работаем на данный момент. Получаем зеркальный вариант:

Для слоев защитных паяльных масок нет необходимости делать негативные «фотошаблоны» с помощью «Film Wizard'a». Хотя с его помощью можно отзеркалить паяльную маску для нижнего слоя. В таком случае действия аналогичные как для сигнального нижнего слоя, за исключением того, что только во второй вкладке «Mirror Layers» отмечаем нужный слой. Результат зеркального преобразования:



На этом этапе можно экспортировать Gerber-файлы для дальнейших манипуляций с ними. Выполняем «File -> Export -> Gerber», ВАЖНО!, ставим галочку на «Separate Composite layers to individual Files», выбираем выходной формат RS-274-X, жмем ОК и в появившемся окне выбираем нужные слои для экспорта (негативные фотошаблоны для сигнальных, паяльную маску верхнего и отзеркаленную паяльную маску нижнего):

Преобразования Gerber-файлов в векторный формат


Для этого используется бесплатная утилита Gerbv (gEDA's Gerber Viewer). Выполняем File -> Open layer(s) и выбираем созданный выше набор Gerber-файлов. В окне списка слоев можно наблюдать следующее:



Здесь нам необходимо расположить слои в определенном порядке, наложив их друг на друга, иначе при преобразовании в векторный формат один слой окажется под другим и не будет виден. Начнем с негативного фотошаблона верхнего слоя. Для этого снимем галочки со всех остальных и расположим нужные слои в правильной последовательности. Последовательность идет сверху-вниз: слой сверловки, сигнальный слой, граница ПП и подложка «фотопленки». Тоже самое применимо и для нижнего сигнального слоя. Слои с защитной паяльной маской можно не перемещать. В тоже время изменим цвета слоев на черно-белые. Для удобства можно изменить и фон в главном окне программы (на белый). Ниже приведен пример правильного расположения слоев и их цветов:


Теперь, последовательно отмечая только группу слоев, формирующую необходимый «фотошаблон», можно экспортировать Gerber-файлы в векторный формат. Выполним File -> Export -> SVG, зададим имя и обязательно расширение *.svg, сохраним.
После чего в Inkscape можно создавать новый файл формата А4, импортировать в документ полученные *.svg файлы и подготавливить их к печати (трансформировать, продублировать, подкорректировать, разместить на листе и т.п.). на виртуальном PDF-принтере.
Пример для оценки разрешения получившихся PDF-ок:


PS: просьба не обращать внимание на мелкие пропуски, недочеты в ПП и т.п.


Поступила заявка на статью, в которой будет рассказано как оформить плату под производство. Тема в интернете немного описана, но всегда чего-то не хватает. По этому я расскажу о своем опыте, отработанном на десятке заказов. Сразу хочу сказать, что с первого раза экспортировать правильно может не получиться, но здесь нет ничего страшного. На определенном шаге вы это увидите и сможете повторить все заново. Лично у меня уходит попыток 5, что бы добиться нужного результата :)

Итак, приступим
1. У нас есть платка, нарисованная на слое М2. Самое главное на этом шаге, что бы все контактные площадки были сделаны с помощью элемента "SMD-контакт". Это позволит правильно сделать паяльную маску.


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


3. На слое Ф рисуем фрезеровку, в моем случае это просто прямоугольник, охватывающий всю плату. Если нужны платы сложной формы — то рисуем их контур в этом слое.


4. Основная часть уже готова, переходим непосредственно к экспорту. Для этого заходим Файл-Экспорт-Формат Gerber…


5. Экспортируем медь. Выбираем слой М2, снимаем галочку "передать зеркально", нажимаем кнопку "Создать файл". Файл сохраняем в какую-нибудь папку с названием "Top copper"


В каждом следующем шаге я пропускаю окно сохранения!


6. Экспортируем паяльную маску. Выбираем "М2 — по олову", снимаем галочку "передать зеркально", выставляем зазоры. Мне нравятся зазоры 0.05 — 0.1 мм, по умолчания стоит 0.3. Создаем файл, называем его "Top solder mask".


7. Экспортируем текст. Выбираем слой М1, снимаем галочку "передать зеркально", нажимаем кнопку "Создать файл". Файл сохраняем с названием "Top silk screen".


8. Экспортируем фрезеровку. Выбираем слой Ф, снимаем галочку "передать зеркально", нажимаем кнопку "Создать файл". Файл сохраняем с названием "Outline".


9. В итоге видим в папке вот такой список файлов. Файл GERBER.TMP создается автоматически



11. Далее необходимо назначить какой файл за какой слой отвечает. Если вы называли файлы как советовал я, то этот шаг будет сделан автоматически. Кроме слоя "Top solder mask":)


12. Нажимаем "Done" и практически сразу получаем нашу плату в виде 3D. Ее можно крутить, рассматривать со всех сторон, очень удобно. Ставим галочку "Show outline", что бы плата приняла правильные размеры.
Самое главное на этом шаге внимательно просмотреть не отзеркалился ли какой-то слой случайно. И все ли контактные площадки не залиты паяльной маской, это заметно по цвету. Если что-то не так, меняем файл в спринте и экспортируем по новой соответственный слой.


Короче, все файлы, которые получили при экспорте запихиваем в один архив с названием "Gerber.zip". Далее на сайте во вкладке Price calculator выставляем необходимые нам параметры. Для простеньких плат вполне подходит стандартная расстановка галочек. Необходимо ввести лишь размеры, количество слоев и плат(первые три поля).


14. Нажимаем кнопку Calculate


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


16. Последний шаг. Нажимаем кнопку "Upload", выбираем наш архивчик. И вводим свои данные для отправки. Опять нажимаем на оранжевую кнопку.



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

G1I0

Несмотря на многообразие оборудования для производства печатных плат, его производители как-то умудряются найти общий язык между собой, с производителями печатных плат и конструкторами. В результате, в отличие от программ для трассировки печатных плат, каждая из которых использует свой собственный формат данных, количество форматов для управления таким оборудованием, то есть технологических форматов, описывающих топологию печатных плат, можно буквально «по пальцам пересчитать». Наибольшее распространение получил формат под названием Gerber. Его ещё иногда называют «хребтом электронной промышленности». К сожалению, русскоязычной информации на эту тему не так уж и много. А она необходима. Больше всего она необходима технологам, занимающимся подготовкой печатных плат к производству. Но и конструкторам она тоже частенько нужна. Например, для того, что бы правильно сформировать gerber-файлы перед отправкой на производство. Попробуем слегка приоткрыть завесу сей «стра-а-ашной тайны».

Немного истории

Формат Gerber взял своё имя от несуществующей ныне компании Gerber Systems Corporation, бывшей в своё время ведущим производителем фотоплоттеров. Этот формат был задействован в далёком 1980-м году, и его первоначальная итерация представляла собой, так называемый, Standart RS-274-D. Так же, он стал известен под названием Standart Gerber – стандартный Gerber.

С течением времени аппаратура для производства плат развивалась, а платы становились всё сложнее и сложнее. Соответственно этому, развивался и Gerber. В результате он превратился в целое семейство форматов. В целях стандартизации в 1997-м году всё это семейство было сведено в один формат, и, таким образом, появился так называемый расширенный Gerber (Extended Gerber), или RS-274X. Фактически, новый формат стал стандартом для данных, описывающих топологию печатных плат. С 1997 года было произведено несколько изменений данного формата с целью его адаптации к развивающимся технологиям.

Ну, а компания Gerber Systems Corporation в 1998 году прекратила своё независимое существования. Она вошла в состав группы компании Barco в качестве подразделения Barco ETS, занимающегося вопросами технологии производства печатных плат. В настоящее время она носит название Ucamco.

Ещё немного истории, но уже другой…

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

Принцип действия фотоплоттеров

Рис.1 Принцип действия фотоплоттеров

Апертура – отверстие определённой формы. Луч света, проходя через апертуру на апертурном колесе, затвор и систему оптики, попадает на расположенный на координатном столе фотошаблон и оставляет на нём пятно. Это пятно по форме повторяет форму апертуры. Если при этом координатный стол двигается относительно осей X и Y, то на фотошаблоне «вычерчивается» линия, толщина и форма концов которой зависят от выбранной апертуры. Нужная апертура выбирается поворотом апертурного колеса таким образом, что бы она оказалась ровно напротив источника света. Открываясь или закрываясь, затвор «включает» или «выключает» «вычерчивание».

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

Фотоплоттер

И последний «исторический факт», на который стоит обратить внимание. Первые фотоплоттеры управлялись при помощи программ, записанных на перфоленты или магнитные ленты. Как следствие – данные устройства были чувствительны к объёму программ, что наложило свои особенности на задание координат. Вместо запятой, отделяющей дробную часть числа, используются такие параметры, как «количество цифр перед запятой» (Digits Integer) и «количество цифр после запятой» (Digits Decimal). Каждый из них представляет собой по две цифры. Суть в следующем: запятая – определённый символ, занимающий определённое место в памяти. Количество запятых равняется сумме количества координат по оси X и количества координат по оси Y. Соответственно, в программе убираются все запятые, а вместо них один раз используется запись о положении запятой, что значительно сокращает размер программы.

Магнитная лента

Рис.3 Магнитная лента

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

Перфолента

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

Gerber с точки зрения файловой системы

Модель печатной платы в формате Gerber представляет собой набор файлов. Каждый файл описывает только один слой платы, независимо от его назначения. То есть, и для каждого слоя металлизации, и для каждого слоя шелкографии, и так далее, формируется отдельный gerber-файл. Иными словами, будут одновременно верны оба определения: «для описания одного слоя печатной платы нужен один gerber-файл» и «один gerber-файл описывает один слой печатной платы».

Стоит обратить внимание на то, что gerber-файлы используются не только для вычерчивания топологии слоёв, но и для обработки контуров плат, и для создания трафаретов для паяльной пасты. Более того, формат файлов сверления является прямым наследником Gerber.

С точки зрения расширенного Gerber, каждый gerber-файл – законченная программа, не требующая дополнительных файлов или иных внешних параметров. В то же время при применении gerber-файлов старого образца – RS-274-D – требуется дополнительный файл апертур, поскольку сами gerber-файлы в данном случае не содержат данных об апертурах.

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

Gerber-формат является векторным форматом, то есть по его данным формируется изображение, не зависящее от разрешения.

Каждый gerber-файл является текстовым файлом. При этом расширение *.txt используется крайне редко. Как правило, расширение gerber-файла соответствует типу его слоя. Каждый разработчик программного обеспечения, оперирующего gerber-данными, закладывает свои правила определения расширений. В таблице 1 приведены наиболее распространённые расширения.

Таблица 1. Наиболее распространённые расширения gerber-файлов

Пример реального набора gerber-файлов, сформированных средствами Altium Designer

Рис.5 Пример реального набора gerber-файлов, сформированных средствами Altium Designer

Немного подробнее про апертуры

Апертура – основной инструмент формирования топологического рисунка, она представляет собой «пятно» определённой формы. С её помощью фотоплоттер прорисовывает все элементы топологии за исключением полигонов (а в случае формата RS-274-D – и полигоны тоже). Можно сказать, что это аналог карандашей, но с той разницей, что апертуры отличаются друг от друга не цветом, а формой. Апертуры делятся на два типа – стандартные и макроапертуры.

Стандартные апертуры

Рис.6 Стандартные апертуры

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

Пример макроапертур

Рис.7 Пример макроапертур

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

Синтаксис

Допустимым набором символов в gerber-файлах являются символы с 32 по 126 7-битной ASCII-таблицы, а так же символы под номерами 10 (LF, Line Feed) и 13 (CR, Carriage Return). Все остальные символы являются недопустимыми. LF и CR могут использоваться как разделители строк. Разделители строк могут использоваться только между блоками данных и в составе макроапертур. Символы «*» и «%» зарезервированы. Первый может быть использован только в качестве символа конца блока данных, второй – только как ограничитель параметров. Символ пробела может быть использован лишь в комментариях. Разработчики формата gerber настоятельно рекомендуют каждый новый блок данных начинать с новой строки, что улучшает «читабельность» программы, никак не влияя при этом на построение изображений.

В составе программ допускается применять имена для идентификации макросов, изображений и уровней. В именах можно использовать все допустимые символы, за исключением пробела, CR, LF, «%» и «*». Длина имён не должна превышать 255 символов. Имена не могут начинаться с цифр и символов «+» и «-».

Описание платы в формате Gerber состоит из блоков данных и объявлений. Блоки данных – это низшие синтаксические элементы, из которых строится программа. Каждый блок данных должен заканчивать символом конца блока данных, как правило – «*». Каждый блок данных может содержать один или несколько параметров, кодов или координат. Примеры блоков данных:

Несколько блоков данных могут объединяться в высшие синтаксические элементы – объявления. По сути, gerber-программа представляет собой последовательность объявлений. Объявления могут содержать как один блок данных, так и группу. Если в объявлении присутствуют параметры, то оно представляет собой «объявление параметров» и заключается между символами «%». Примеры объявлений:

Gerber оперирует тремя типами данных:

  1. параметры
  2. функциональные коды;
  3. координаты.

Параметры определяют характеристики gerber-файлов. Параметры, определяющие характеристики всего gerber-файла, должны располагаться в его начале, остальные – в соответствующем месте. Блоки данных, содержащие параметры, являются «объявлениями параметров», заключаются между символами «%», и их длина не может быть более 4096 символов. Объявления параметров состоят из двух-символьного параметрического кода, определяющего назначение параметра, и следующих за ним параметрических данных. В большинстве случаев параметры состоят из одного блока данных. При этом символ конца блока данных должен располагаться непосредственно перед символом «%». Параметры макроапертур могут состоять из нескольких блоков данных. Для хорошей читаемости, разработчики gerber рекомендуют каждый блок данных начинать с новой строки. Примеры объявлений параметров:

Функциональные коды определяют действия, необходимые для прорисовки топологии слоя. Они состоят из буквенного символа D, G или M и двух цифр. Например, D01 или M02.

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

Как определить систему измерений и способ задания координат

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

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

FS – начало строки объявления параметров.

L/T/D подавление нулей:

  • L – ведущих,
  • T – конечных,
  • D– нули не подавляются.

А/I – режим координат:

Xa, Yb – количество знаков целой и дробной частей (подставляется вместо a, b).

Пример подобной строки:

В данном примере объявляется следующее: FS – начало строки объявления параметров, D – нули не подавляются, A – абсолютный режим координат, X56Y56 – 5 цифр целой части и 6 – дробной, * – конец строки объявления параметров.

Строка объявления системы измерений бывает двух видов: %MOMM*% – координаты заданы в миллиметрах, %MOIN*% – координаты заданы в дюймах.

[Экспорт данных графики PCB в формат Gerber]

1. File -> Export -> Gerber. откроется окошко File Gerber Out.

PCAD-gerbers-11.PNG

2. Жмем кнопку Setup Output Files. появится соответствующее окно.

PCAD-gerbers-12.PNG

Теперь нужно пройтись по слоям Top Silk, Top Mask, Top, Bottom, Bot Mask, Bot Silk, Board (выбираются в списке Layers:) и назначить для каждого файла слоя File Extension, Output Path и расставить соответствующие галочки. В таблице перечислены значения опций, которые нужно установить (не упомянутые в таблице опции не устанавливаются). Внимание: галочку Mirror (зеркалирование) для нижних слоев (Bottom, Bot Mask, Bot Silk) ставить не надо. Галочки Pads (контактные площадки) и Vias (переходные отверстия) ставят только слоев Top Mask, Top, Bottom, Bot Mask. Галочку RefDes (позиционные обозначения элементов схемы) ставят только для слоев Top Silk, Bot Silk.

Генерируемые файлы для каждого слоя добавляются в список кнопкой Add. Если нужно, чтобы переходные отверстия были закрыты маской, то в слоях Top Mask и Bot Mask нужно снять галочку Vias. Целесообразно также поставить галочку "View log file upon completion", чтобы можно было увидеть ошибки, которые произошли при экспорте. В нашем примере путь для генерируемых файлов (Output Path) установлен в c:\temp, Вы можете указать любой удобный путь по своему усмотрению.

После завершения добавления файлов нажимают кнопку Close.

PCAD-gerbers-13.PNG

3. Жмем кнопку Apertures. -> Auto -> Close.

PCAD-gerbers-14.PNG

4. Жмем кнопку Drill Symbols. -> Automatic Assign -> Close.

PCAD-gerbers-15.PNG

5. Жмем кнопку Gerber Format. ставим все опции как на рисунке, жмем Close.

PCAD-gerbers-16.PNG

6. Жмем кнопку Generate Output Files, после чего в папке c:\temp появятся 7 файлов:

*.TOP Gerber RS-274X Style, дорожки верхней стороны (TOP)
*.BOT Gerber RS-274X Style, дорожки нижней стороны (BOTTOM)
*.TMS Gerber RS-274X Style, маска верхней стороны (TOP MASK)
*.BMS Gerber RS-274X Style, маска нижней стороны (BOTTOM MASK)
*.TSL Gerber RS-274X Style, шелкография верхней стороны (TOP SILK)
*.BSL Gerber RS-274X Style, шелкография нижней стороны (BOTTOM SILK)
*.BRD Gerber RS-274X Style, контур платы (BOARD)

[Экспорт данных сверловки]

1. File -> Export -> N/C Drill. откроется окошко File N/C Drill.

PCAD-gerbers-17.PNG

2. Жмем кнопку Setup Output Files. появится соответствующее окно.

PCAD-gerbers-18.PNG

В списке Layers: выбираем сразу два слоя Top и Bottom, в поле File extension: вводим DRL, выбираем All Holes, выбираем Apply Layer Set -> All Layers, Output path -> C:\temp, ставим галку View log file upon completion, жмем кнопку Add и Close.

3. Жмем кнопку Tools. ставим галку Clear current tools, жмем кнопку Auto и Close.

PCAD-gerbers-19.PNG

4. Жмем кнопку N/C Drill Format. ставим все опции как на рисунке, жмем Close.

5. Жмем кнопку Generate Output Files, после чего в папке c:\temp появятся еще 1 файл *.DRL (сверловка N/C Drill).

Читайте также: