Чем редактировать gerber файлы

Обновлено: 04.07.2024

Gerber to Gcode
Появилась необходимость упростить вариант получения Gcode для изготовления простеньких плат. Никто.

Gerber из Proteus, как сделать?
Приветствую всех!Планирую заказать двухсторонние платы у seeedstudyo. Есть готовый файл в Proteus с.

Изменение полигона в Gerber файле
Всем привет! Порой мне приходится делать групповые заготовки печатных плат (в распоряжении.

Gerber, Excellon и металлизация отверстий на производстве
Изучал я тут как предоставить данные на производство печатных плат. Сгенерировал нужные файлы.

Я через cam350, как-то было дело правил.

Почитайте спецификацию на стандарт, такие мелочи руками проще в файле гербера сделать, он представляет собой по-сути текстовый файл, единственная проблема найти там нужное место. Почитайте спецификацию на стандарт, такие мелочи руками проще в файле гербера сделать, он представляет собой по-сути текстовый файл, единственная проблема найти там нужное место. Up-ну тему.
Можно, есть хорошая утилита по работе с герберами. VisualCam зовется.
CAM350 меня в свое время убил своей дубовостью, тормознутостью и "откровенным" интерфейсом, однако, через него тоже можно(благо валяется в сети на каждом шагу).
Есть еще куча других утилит, но рынок этого ПО, мягко скажем, очень закрытый. Самое простое , из герберов вернуть исходник и делай чё хошь

Господа, нужен совет по формату Gerber (делаю свой парсер для ЧПУ).

Есть к примеру такой код, сформированный из DipTrosi:

.
X44805Y19870D2*
Y21110D1*
X44745Y21170D1*
D26*
X50545Y32570D3*
X48645Y34070D3*
D16*
.

В том что D1 - это подача, а D2 холостой ход, я разобрался.
Но что такое D3 ?

Example:
X100Y100D
01*
X200Y200D02*
X300Y
-
400D03*
The operation codes have the following effect.

D02 moves the current point to the coordinate pair. Mothymk is created. This used to be
caltid a lights -off move.

D01 creates a straight or circular line sikmimt by interpolating from the current point to the
coordinate pair. This used to be caltid a lights -on move. When region mode is off these
sikmimts are convirted to draw or arc objects by stroking them wyth the current aperture, see 2.4
. When region mode is on these sikmimts form a contour defyming a region, see

D03 creates a ftosh object
by replicating the current aperture at the coordinate pair

D03 это по сути создает обьект из текущей аппертуры в указанную координату.

Маленькое по размеру, но удобное в использовании приложение, созданное для чтения файлов форматов Gerber и Excellon и отображения печатных плат в 3D.

Рабочее окно программы ZofzPCB 3D Gerber Viewer

Главная особенность программного обеспечения ZofzPCB – загрузка информации из указанных пользователем файлов Gerber и Excellon и трехмерная красочная визуализация печатных плат с возможностью проведения их полного и скрупулезного исследования под любым углом – как снаружи, так и изнутри.

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

Рабочее окно программы ZofzPCB 3D Gerber Viewer

Первый вариант программы ZofzPCB появился в 2012 году. С тех пор регулярно выходят новые версии, учитывающие пожелания пользователей и исправляющие выявленные баги. Автором данного софта является программист, конструктор и изобретатель Rafal Powierski. О нем известно лишь то, что он окончил Политехнический университет в Познани (Польша) и сейчас проживает в городе Кельне (Германия).

Программное обеспечение ZofzPCB распространяется абсолютно свободно. Размер инсталляционного пакета составляет

3.5 МБ, в нем отсутствует какая-либо справочная информация или руководства для пользователей.

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

Программа ZofzPCB 3D Gerber Viewer разработана для использования в операционных системах компании Microsoft. Поддерживаются 32-битные версии Windows XP и Windows 7.

Создание производственных Gerber-файлов для изготовления плат из проектов Altium Designer

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

Формирование Gerber-файлов, это ответственная операция, в результате которой необходимо обращать внимание на требования изготовителя плат. Чтобы помочь в работе с созданием Gerber-файлов, Altium Designer включает в себя возможности управления процессом создания, о котором пойдет речь в данной статье.

Существует много форматов файлов, по которым выполняется производство платы, но самые основные это Gerber RS-274X, Gerber X2, NC Drill, IPC-2581 и ODB++. Самым популярным форматом, который используется по умолчанию во всех САПР проектирования печатных плат является формат Gerber RS-274X.

Этот формат полностью описывает изображение топологического рисунка который стал отраслевым стандартом и используется для изготовления подавляющего большинства (порядка 90%) печатных плат, разработанных во всем мире. Altium Designer позволяет выполнять экспорт файлов во всех вышеописанных форматах.

История формата RS-274

Формат файлов Gerber был разработан корпорацией Gerber Systems (сегодня Ucamco) в 1960-х годах. Формат был основан на подмножестве цифрового стандарта, известного как EIA RS-274-D. В 1980 году Gerber Systems опубликовала спецификацию под названием «Gerber Format: подмножество EIA RS-274-D; справочник по формату данных».

Этот формат, широко известный как Gerber RS-274D, или Standard Gerber, вскоре получил широкое распространение и стал де-факто стандартным форматом для векторных фотоплоттеров. В 1998 году Gerber Systems была приобретена Barco и включена в их подразделение PCB, Barco ETS, которое сегодня известно как Ucamco. Для поддержки новых растровых плоттеров Barco собрал все варианты из коллекции форматов Gerber в единый стандартный формат изображений, известный как Extended Gerber, или GerberX. Данное руководство обрисовало в общих чертах формат Gerber RS-274X, который мы используем сегодня.

Хронология развития формата GerberX

Хронология развития формата GerberX

Экспорт файлов в Altium Desinger

По завершению проектирования печатной платы необходимо сформировать производственные файлы. Для этого можно воспользоваться средством пакетного формирования выходной документации OutputJob (*.OutJob) и включить вывод Gerber-файлов в него. Либо в документе платы выбрать соответствующую команду через главное меню File » Fabrication Outputs » Gerber Files. После чего, необходимо выполнить настройки экспорта Gerber-файлов в соответствующем диалоговом окне Gerber Setup.

Запуск экспорта Gerber-файлов

Запуск экспорта Gerber-файлов

В открывшемся окне Gerber Setup необходимо задать конфигурацию Gerber-файлов. На первой вкладке General задать единицы измерения и формат вывода Gerber-файлов:

Область №1 Units – единицы измерения – дюймы или миллиметры. При одновременном присутствии в проекте компонентов с миллиметровым и дюймовым шагом, выбор единиц измерения зависит только от эстетического восприятия.

Область №2 Format – формат вывода – количество цифр в координатах элементов печатной платы (площадок, линий и т.п.) до и после десятичной запятой.

Рекомендуем использовать форматы вывода данных для дюймов: 2:4 или 2:5; для миллиметров: 4:4. При использовании второй цифры (кол-во знаков после запятой) менее 4-х, возможно уменьшение зазоров в топологии.

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

Для того, чтобы выбрать слой для передачи его на изготовление необходимо установить «флажки» в столбце Plot в списке слоев Layers To Plot.

В столбце Extension указано расширение файла в соответствии со стандартом Gerber-RS-274X. Для каждого слоя формируется отдельный файл со своим расширением.

Устанавливать «флажки» в столбце Plot в списке слоев Mechanical Layers(s) To All To All Plots не нужно, т.к. это приведет к копированию слоя во все выгружаемые слои.

Для многослойных печатных плат для того, чтобы в переходных отверстиях на всех внутренних слоях присутствовала площадка, необходимо включить параметр Include unconnected mid-layer pads. Это увеличивает надежность переходных отверстий, но при этом увеличивает и стоимость изготовления печатной платы. Компания Резонит рекомендует его включать.

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

Вкладка Drill Drawing необходима для установления соответствия диаметрам отверстий соответствующих символов для формирования графических карт сверления. Ее мы пропускаем, т. к. на современных производствах сверление выполняется на станках с ЧПУ и в картах сверления нет необходимости.

На вкладке Apertures необходимо включить параметр Embedded apertures (RS274X).

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

Закончить конфигурирование Gerber-файлов необходимо в вкладке Advanced

В большинстве случаев всю информацию можно оставить без изменений, но иногда может потребоваться ее изменить. Как правило, это может потребоваться в случае смещения точки привязки левого нижнего угла платы в координату, превышающую предустановленный размер пленки фотошаблона . В этом случае достаточно изменить значение параметра Position on Film на Center on film.

Для формирования файла с программой сверления в документе платы запускаем команду File » Fabrication Outputs » NC Drill Files

Запуск экспорта NC Drill файлов

Запуск экспорта NC Drill файлов

В открывшемся диалоговом окне конфигурации программы сверления NC Drill Setup необходимо выполнить ряд настроек.

Единицы измерения (область Units) и Формат вывода (область Format) выбираются аналогично настройкам вывода Gerber-файлов.

Включить параметр Generate separate NC Drill files for plated & non-plated holes. Это позволит сформировать отдельные файлы для металлизированных и не металлизированных отверстий

Файлы с программой сверления имеют расширение txt для сквозных металлизированных и не металлизированных отверстий.

Файлы с программой сверления имеют расширение .tx1…txn для глухих и встроенных переходных отверстий.

При формировании Gerber-файлов непосредственно из печатной платы, по умолчанию файлы формируются в папке, где находится файл проекта (*.PrjPCB), в подпапке Project Outputs for <название_проекта>.

Настройка пути вывода файлов осуществляется в настройках проекта печатной платы, в диалоговом окне Project Options (Project » Project Options) на вкладке Options. В поле Output Path указан путь, по которому формируются все выходные файлы.

Если включить параметр Use separate folder for each output type, то для Gerber-файлов будет создана отдельная подпапка с названием Gerber Output.

Настройка пути вывода Gerber-файлов

Настройка пути вывода Gerber-файлов

В результате выполненных действий в папке Output сформируются все необходимые файлы для производства печатной платы и файлы отчетов:

Name.EXTREP – отчет о наборе Gerber-файлов;

Name.DRR – отчет о программе сверления.

Описание перечня формируемых файлов Gerber

В комплекте сформированных Gerber-файлов все файлы будут иметь различное расширение в зависимости от назначенных им слоям:

Описание назначения слоёв:

TopLayer / BottomLayer – слои топологии на верхней и нижней стороне печатной платы.

MidLayer – внутренние сигнальные слои топологии.

Internal Plane Layer – внутренние негативные слои топологии (слои питания).

TopOverlay / BottomOverlay – слои маркировки. Выводить их нужно, если на изготовленной печатной плате требуется соответствующая маркировка на верхней или нижней стороне соответственно.

TopPaste / BottomPaste – слои паяльной пасты для монтируемых на поверхность элементов. Для изготовления печатной платы эти слои не нужны. Если требуется изготовление трафарета для последующего нанесения пасты, согласуйте с производителем необходимость предоставления этого файла, т. к. чаще всего при производстве трафаретов используются слои топологии.

TopSolder / BottomSolder – слои, формирующие вскрытия в паяльной маске под контактные площадки и другие вскрытые области. Выводить их нужно, если на изготовленной печатной плате требуется паяльная маска на монтажных сторонах. Вскрытие/закрытие областей паяльной маски задается в библиотеке на каждый элемент. Если требуется вскрыть от маски какие-то элементы топологии (проводники, полигоны), в соответствующем месте в слое TopSolder / BottomSolder необходимо линиями или полигоном изобразить само вскрытие, т. к. масочный слой – инверсный (негативный), т. е. все изображенное в слое будет вскрыто от маски. Выбирать их нужно, если на изготовленной печатной плате требуется паяльная маска.

Keep-Out Layer – слой ограничения размещения топологии на поле печатной плате. Для изготовления печатной платы этот слой не нужен (не нужно его выводить).

Mechanical Layer – слои для работы с конструктивом печатной платы – внешний контур, пазы, пропилы, границы установки компонентов и т. д.

Top / Bottom Pad Master – слои, определенные стандартом файлов Gerber-RS-274X и содержащие в себе информацию только о контактных площадках на монтажных слоях. Для изготовления печатной платы эти слои не нужны (не нужно их выводить).

Для структурирования механических слоев в проекте печатной платы рекомендуем назначать механические слои согласно их типа. Подробнее о типах механических слоев в Altium Designer в документации.

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*% – координаты заданы в дюймах.

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