10.01.2011

Как заЛУТить из Eagle?

Публикуемые мной под лицензией CC-SA схемы и рисунки печатных плат обязательно содержит внутри файлы с расширениями .sch и .brd - результат работы CAD-системы Eagle. Пользующаяся большой популярностью за рубежом, эта система почти не прижилась в России - у нас предпочитают KiCAD, Sprint Layout или P-CAD. Не вдаваясь в религиозные споры о преимуществах того или иного пакета, хочу дать внятное практическое руководство, как использовать Eagle для ЛУТ.

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

Получение и установка Eagle

Не надо искать никаких краков и серийников - есть совершенно бесплатная версия Eagle, имеющая небольшие ограничения. Весь фокус в том, что для наших целей они  несущественны, но, на всякий случай: размер платы, которую можно редактировать бесплатной версией не должен превышать 100 х 80 мм, иметь более двух слоев и более одного листа со схемой. При этом открывать и просматривать можно хоть шестислойные платы со схемами на десятке листов. Поддерживаются Windows, Linuх и Mac OS.

Установка довольно примитивна, если не собираетесь рисовать схемы и разводить платы - вдаваться в нее на данном этапе нет смысла.

Выбор слоев

Откройте .brd-файл командой File | Open | Board из основного окна:



Обычно, схема и разводка должны быть синхронизированы, поэтому может открыться и окно со схемой (если вы позаботились положить в тот же каталог файл .sch). Нас изначально будет волновать лишь окно с разводкой - то, у которого заголовок начинается с Board. Распахните окно пошире, чтобы внимательно изучить то, что нам досталось от заботливого разработчика Open Hardware. 



Разводка платы состоит из набора слоев. Стандартных слоев довольно много, вдобавок можно создавать свои собственные. Отображать их на экране одновременно не всегда удобно, но для первого знакомства с чужой разработкой следует сначала увидеть всю картину целиком. Включите все слои: File | View | Display/hide layers (в окне кнопка All или Ctrl-A).

Чего только не рисуют на этих слоях! Тут тебе и документация, и копирайты авторов, и диаметры отверстий... Важно отсечь ненужное (с) Микеланджело. 

А что, собственно, нужно? Для ЛУТ нам потребуются следующие слои:
  • Bottom (16) - именно на нем (по умолчанию синим цветом) рисуют дорожки для односторонних плат;
  • Pads (17) - посадочные площадки для выводных элементов;
  • Vias (18) - переходные отверстия между слоями (для однослойных плат - место пайки перемычек);
  • Dimension (20) - контур платы.
(все слои пронумерованы - для стандартных  можно смело пользоваться вместо названий номерами)

В большинстве случаев, этого набора достаточно. 

Перед отключением лишнего, советую присмотреться повнимательней - возможно, на плату нанесен какой-нибудь дополнительный текст, который должен быть вытравлен на медном слое. Это может быть дополнительный пользовательский слой, с номером от 100 и выше. Например, на плате Arduino Severino заботливый Эдилсон Акаши нанес номера пинов Arduino и поместил их в слой "CopperText". Если сомневаетесь, попробуйте включать и выключать разные слои и посмотреть на результат. Имейте ввиду, что рисунки слоев не должны пересекаться, иначе получите вместо правильного рисунка печатных проводников один сплошной брак. Поэтому, в случае любых сомнений - вращайте колесико мыши для увеличения масштаба или нажимайте F3/F4 (через меню - View | Zoom in и View | Zoom Out).

Замечание по поводу визуализации: когда вы рассматриваете плату в окне Board Editor, вы смотрите на нее так, как смотрели бы на настоящую плату, если бы текстолит был прозрачный. Поэтому, слой Top вы видите в точности так же, как и в реальной жизни, а вот Bottom - в зеркальном отображении. 

CAM-процессор 

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

Выполните команду File | CAM Processor, появится его окно:


Сперва надо выбрать целевой формат. Я предпочитаю eps (enhanced post script) - векторный формат, известный практически всем графическим редакторам. К тому же, в нем содержится информация о размере изображения, что крайне важно: если в итоге масштаб отпечатка не будет 1:1, это тоже будет практически верный брак. 

Обязательно выберите имя файла, в поле Scale должна быть единица.

Отключите все слои, затем включите Bottom, Pads, Vias, Dimension и дополнительные (если вы их все-таки обнаружили на предыдущем шаге). 

В группе Style проверьте, что:
  • очищен флажок Mirror
  • очищен флажок Fill pads
Теперь отважно жмите кнопку "Process Job". Eagle может выругаться и на то, что некоторых слоев "не положено, а они положены" (с) анек; что он, бедный, потратит много времени на такую-то фигуру, и т.п. Игнорируйте это нытье - нам же ЛУТить надо, а он про это даже не догадывается.

Отпечаток

Для подготовки отпечатка потребуется любой графический редактор - одинаково хорошо подойдут и PhotoShop, и GIMP. Откройте полученный на предыдущих шагах файл, предварительно пояснив редактору, что:

  • требуется черно-белая палитра цветов;
  • разрешение - 600 dpi
Этим вы сэкономите энное количество памяти своего компьютера и драматически ускорите обработку. Хотя, если ваш принтер способен на большее, чем 600 dpi - можете установить и больше, но смысл это делать имеет только при наличии SSOP и TQFP корпусов в схеме - т.е. таких, где ножки тоненькие и расстояние между ними - крошечное. Для старого доброго PDIP это будет излишеством.

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

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

Кстати, проверить, что все получилось в нужном масштабе - несложно. Для этого надо вернуться в Eagle и сделать следующее:
  1. Переключиться с вражеских дюймов и милов в нашенские сантиметры и миллиметры. В командной строке наберите: "GRID mm 0.01";
  2. Для простоты, отключить все слои, кроме Dimension;
  3. Перейти в режим получения информации (Show object properties);
  4. Открывать свойства интересующих линий границы и сравнивать с тем, что говорит линейка, приложенная к отпечатку. 

Все хорошо? Тогда заряжайте глянцевую плотную фотобумагу и печатайте - только не забудьте установить тип бумаги "Card Stock" или что-то в этом духе, ибо бумага будет - толстая. 

Маркировка

Хорошо, если плата небольшая или вы уже выстрадали каждый миллиметр при разводке. Но в суровой реальности подсказки в виде маркировки противоположной стороны помогут избежать глупых ошибок при установке элементов. К сожалению, редко кто применяет самодельную маску - поэтому поясняющие надписи наносят только на противоположный (неомедненный) слой при помощи того же ЛУТ - только не травят ;)

Для создания "лицевой" стороны односторонней печатной платы, надо выполнить предыдущие шаги, но с другим набором слоев. Нам потребуются:

  • Dimension - чтобы не промахнуться, орудуя ножницами;
  • Holes - монтажные отверстия (не путать с отверстиями для выводов элементов);
  • tPlace - контурный слой элементов с лицевой (Top) стороны;
  • tNames - слой названий элементов (типа R1, C10 и т.п.);
  • tValues - слой со значениями номиналов (10К, 100 нФ и т.п.);
  • tDocu - слой документирования (функциональный смысл джамперов, названия сигналов - обычно на плате не печатается, но может пригодиться); 
  • Top - верхний слой, для односторонней платы полезен, если есть перемычки.
Быть может, какие-то из надписей вас вообще не устроят - тогда не обойтись без редактирования. Например, сначала можно включить слой tPlace и отделить Name и Value от элемента командой Smash (нажимайте на крестики-центры элементов, в замен образуются еще два - для имени и номинала). Далее, ненужное можно убрать командой Delete или передвинуть командой Move. Добавляют текст командой Text, после чего при помощи Properties надо заменить шрифт на "Vector" нужного размера (Size) и толщины (Ratio).

Наконец, дело сделано - сохраняйте файлы (обязательное условие запуска CAM-процессора), можно под другим именем, чтобы не "портить" оригинал. В окне CAM-процессора включите только те слои, которые будете печатать (см. выше), а в Style - обязательно нужен Mirroring. Перед распечатыванием не забудьте снова убедиться, что надписи зеркальные!

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

Сверловка

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

В состав Eagle входит много замечательных скриптов (ULP - User Language Programs), которые могут помочь в разнообразных вопросах. Среди них - скрипт drill-aid.ulp. Для его активизации перейдите в главное окно программы, раскройте пункт "User Language Programs", найдите его и по правой кнопке запустите на плате - "Run in Board" (не забудьте сохранить CAD-файлы под другим именем перед этой операцией, если хотите иметь возможность возврата к предыдущему состоянию).


Все кружочки заданного вами диаметра будут нарисованы на слое 116 - лишние можно удалить.



Также рекомендую посмотреть на скрипты drill-legend.ulp и drillegend.ulp - они создают специальный слой, отмечающий диаметры отверстий, включая легенду. Так, по крайней мере, сразу можно понять сколько и каких сверл потребуется ;)

В целом же, Eagle - далеко не самая худшая система, позволяющая рисовать электрическую схему и производить ручную / автоматическую разводку платы с последующим экспортом в Gerber274x, так что с ее помощью плату можно подготовить и для реального производства.

Кстати, меня поразило руководство пользователя - как человек, близкий к программным разработкам, я с завистью читал этот мануал и поражался - как же им удалось написать такую великолепную документацию, отвечающую не на банальные вопросы "для чего нужен пункт File|Open", а предоставляющее поэтапно усложненное описание процесса решения задач. Поэтому, если соберетесь изучить Eagle - читайте именно его, не пожалеете ;) 

9 комментариев:

  1. Как-то слишком сложно.
    Я в eagle просто отключал ненужные слои и сразу отправлял дорожки на печать. Под dip получается отлично.

    ОтветитьУдалить
  2. Совсем недавно начал разбираться с Eagle и столкнулся как раз с этим вопросом -- ну нарисовал, ну развёл, а для ЛУТа что дальше делать...

    Возможно, не до конца понимаю смысл CAM-процессинга, но спрошу: чем плохо выбрать нужные слои и сразу распечатать с помощью File -> Print. Там есть опции "Black", "Solid" (для максимального заполнения) и "Mirror", чтобы отразить? Результат будет отличаться?

    ОтветитьУдалить
  3. Да, я полностью согласен - печатать прямо из Eagle проще. Не подумал, каюсь ;)

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

    Например, если надо развести мелкие платки наподобие USB-TTL, и надо сделать несколько штук, то я компоную их на лист именно в графическом редакторе. Сам Eagle так, к сожалению, не умеет.

    ОтветитьУдалить
  4. Спасибо за ответ, теперь понятно когда это может быть нужно...

    ОтветитьУдалить
  5. Да, кстати, у меня почему-то на стороне с надписями (для односторонней платы -- та, которая без фольги), постоянно прилипает глянец с фотобумаги Lomond (пользуюсь методом имени DI HALT'a), а на готовой плате USB-TTL буковки чёрные и красивые, без всяких белёсых разводов. Как достигается? :)

    ОтветитьУдалить
  6. Artem Volk, +1

    Тоже интересует как делают платы с надписями.

    ОтветитьУдалить
  7. Сразу видно, не изучили километровую простыню комментов DI HALT-а :)

    Обработайте средством для чистки ванн, позабористее...

    ОтветитьУдалить
  8. Нашел в комментариях тут:
    http://mk90.blogspot.com/2009/10/blog-post.html

    "Если печатать на фотобумаге с глянцевым покрытием, единственная проблема - это слой глянца. Удаляется средством LUXON "чистая ванна" (идея не моя ;) и щеточкой."

    Единственный вопрос какое средство для ванны использовать -- они бывают либо с хлором либо с кислотой. У меня есть оба, сейчас пойду пробовать :)

    ОтветитьУдалить