Два предыдущих урока были целиком посвящены разработке принципиальной схемы транзисторного мультивибратора. В конечном итоге мы получили полностью верифицированную и скомпилированную принципиальную схему, готовую к проектированию печатной платы.
Создание заготовки чертежа печатной платы
Прежде чем передавать информацию из редактора схем в редактор печатных плат, необходимо создать заготовку печатной платы, имеющую как минимум одну внешнюю границу. Самым простым способом создания новой печатной платы в системе Protel DXP является использование специального мастера PCB Wizard, который позволяет пользователю выбрать заготовленный заранее стандартный шаблон или создать собственный шаблон с оригинальными настройками.
Итак, приступим:
1. Создадим новый документ, который будет содержать чертеж печатной платы. Для этого щелкнем левой кнопкой мыши по опции PCB Board Wizard, расположенной в секции New from Template в самом низу панели Files.
2. Откроется самое первое диалоговое окно с приглашением. Для продолжения нажмем кнопку Next.
3. В следующем окне нам будет предложено выбрать систему единиц измерения, в нашем случае это метрическая система мер. Нажмем кнопку Next.
Отметим, что редактор печатных плат системы Protel DXP одинаково хорошо работает как с метрической, так и с дюймовой системой мер. Переключение системы единиц может быть выполнено в любой момент работы над проектом с помощью горячей клавиши Q. Более того, Protel DXP имеет ряд специальных функций, упрощающих работу с компонентами, имеющими разный шаг между выводами, в том числе и в разных системах единиц. Позже мы рассмотрим этот вопрос подробнее.
4. Далее нам будет предложен список существующих шаблонов стандартных промышленных печатных плат, но так как мы собираемся создавать нестандартную платы, выберем Custom - самую первую строку в этом списке, и нажмем кнопку Next.
5. Появится окно, в котором требуется задать форму и размеры будущей платы (рис. 1). В левой части окна в списке Outline Shape выберем опцию Rectangular (прямоугольная), а в текстовые поля Width (ширина) и Height (высота) введем 50 mm.
Обратите внимание, что при переходе из одного поля в другое происходит автоматический пересчет заданных в миллиметрах размеров в милы (тысячные доли дюйма), несмотря на то, что вначале мы выбрали метрическую систему мер. Не следует, этого пугаться, так как это говорит только о том, что внутренняя система единиц мастера PCB Wizard дюймовая.
6. В правой части зададим толщину линий прорисовки границы платы (Boundary Track Width) и размеров (Dimension Line Width) равную 0.1 mm, и отступ от края платы (Keepout Distance From Board Edge) равный 2 mm. Выключим опции Title Block & Scale, Legend String и Dimension Lines, после чего нажмем кнопку Next.
7. Следующее окно предложит выбрать число сигнальных слоев, а также внутренних слоев питания и заземления. Наша плата будет иметь только два сигнальных слоя, поэтому в поле Signal Layers следует ввести число 2, а в поле Power Planes - число 0. Для продолжения нажмем кнопку Next.
8. Далее следует определить тип переходных отверстий. Так как мы проектируем простую двухстороннюю плату, то выберем тип Thru-hole Vias (сквозные переходные отверстия). Заметим, что система Protel DXP позволяет использовать на многослойных платах слепые и глухие переходные отверстия, в том числе и по технологии Microvia. Нажмем кнопку Next.
9. В следующем окне необходимо выбрать преобладающую технологию монтажа компонентов (поверхностный или монтаж в отверстия) и стиль трассировки. Выберем опцию Thru-hole components (монтаж в отверстия) и допустимое число проводников между смежными контактными площадками. Нажмем кнопку Next.
10. На следующем шаге от нас требуется задать минимально допустимые размеры объектов на печатной плате, которые будут преобразованы мастером в правила проектирования (рис. 2). Здесь задаются минимально допустимые: ширина проводника (Track Size), диаметр площадки переходного отверстия (Via Width), диаметр переходного отверстия (Via Hole Size) и зазор между проводниками (Clearance). Для простоты, оставим эти значения заданными по умолчанию. Нажмем кнопку Next.
11. Последнее диалоговое окно сообщает нам, что создание заготовки платы завершено. Если необходимо внести какие-либо коррективы в заданные значения, то с помощью кнопки Back можно вернуться в нужное окно. В противном случае нажмем кнопку Finish.
12. Мастер PCB Wizard передаст все сделанные установки в редактор печатных плат, в котором откроется новый документ с именем PCB1.PcbDoc. Этот документ содержит белый лист чертежа платы и заготовку платы - черный прямоугольник с сеткой (рис. 3). Чтобы скрыть белый лист и оставить в окне редактора только плату необходимо выключить опцию Design Sheet в диалоговом окне Board Options, вызываемом командой меню Design | Options.
13. Измените масштаб чертежа с помощью команды View | Fit Board (горячие клавиши V, F).
14. Новый документ будет автоматически добавлен в проект и появится на вкладке Projects в категории PCBs (печатные платы). Переименуем его, для чего выполним команду меню File | Save As. Укажем место на диске, где будет храниться файл и присвоим ему имя Multivibrator.PcbDoc.
Добавление существующего чертежа платы в проект
Если вы хотите добавить в проект чертеж схемы, который ранее был открыт на панели Projects как свободный (Free Document), необходимо выполнить на нем щелчок правой кнопкой мыши появившемся меню выбрать команду Add to Project. Чертеж окажется в категории PCBs указанного проекта.
Передача информации о проекте в редактор печатных плат
Прежде чем выполнить эту операцию рекомендуется проверить наличие всех необходимых библиотек, как символов, так и топологических посадочных мест. Так как для прорисовки схемы мы использовали элементы из стандартных интегрированных библиотек, то никаких проблем быть не должно. Напомним, что на предыдущем занятии мы полностью скомпилировали и отладили наш проект, поэтому можем смело загружать его в редактор печатных плат. В системе Protel DXP эта операция выполняется непосредственно из редактора схем с помощью команды Update PCB. В отличие от системы P-CAD 2001 никакого файла списка соединений при этом не создается - система оперирует отчетом о внесенных изменениях (ECO), генерируемым компаратором проекта.
Итак, для передачи проектной информации из редактора схем в редактор печатных плат:
1. Выполним команду меню Design | Update PCB, после чего откроется диалоговое окно Engineering Change Order.
2. Нажмем кнопку Validate Changes (принять изменения). В левой части Check столбца Status напротив каждой записи появится зеленый значок с "галочкой".
Если система обнаружит ошибки, например, в библиотеке будет отсутствовать нужное топологическое посадочное место, то напротив соответствующей записи появится значок ошибки. В этом случае следует закрыть окно Engineering Change Order и проверить наличие сообщений об ошибках на панели Messages и устранить их.
3. Нажмем кнопку Execute Changes, после чего начнется операция передачи информации. По мере ее выполнения напротив каждой записи в правой части Done столбца Status будет появляться зеленый значок с "галочкой".
4. После завершения этой операции можно сформировать отчет о внесенных изменениях в удобном для печати виде, для чего следует нажать кнопку Report Changes, но в общем случае в этом нет необходимости, так как данный отчет нигде в проекте больше применяться не будет.
5. Нажмем кнопу Close. Система переключится в редактор печатных плат, в котором на пустой чертеж будут добавлены все элементы мультивибратора (рис. 4).
Можно приступать к размещению компонентов и трассировке платы.
Настройка проекта печатной платы
Прежде чем приступить к разводке платы необходимо выполнить ряд установок: настроить сетки, определить стек слоев и задать правила проектирования.
Сетки
Начнем с установки сеток. Все объекты на чертеже печатной платы прорисовываются в узлы сетки Snap Grid. Обычно эта сетка выбирается кратной минимальному расстоянию между соседними выводами компонента, чтобы все они попадали в узлы сетки, а между ними модно было проложить заданное количество проводников.
В других системах проектирования, как правило, проблемы начинаются, если на одной плате используются топологические посадочные места с метрическим и дюймовым шагом выводов. Редактор печатных плат системы Protel DXP полностью лишен этого недостатка, так как имеет так называемую электрическую сетку Electrical Grid, задающую некоторую окрестность вокруг электрического объекта (конца проводника, контактной площадки, переходного отверстия), попадая в которую указатель мыши притягивается точно к его центру независимо от установок сетки Snap Grid.
Для удобства размещения компонентов существует еще одна сетка Component Grid, а сетки Visible Grid облегчают ориентацию по чертежу.
1. Выполним команду меню Design | Options (горячие клавиши D, O), после чего откроется диалоговое окно Board Options.
2. Установим значения шага сеток Snap X, Snap Y, Component X и Component Y равные, например, 1 mm. Впоследствии мы всегда сможем изменить это значение.
3. Установим значение электрической сетки Electrical Grid немного меньшим, чем шаг сетки Snap Grid, например, 0.8 mm.
4. Для двух видимых сеток Visible Grid установим значения 1 mm и 10 mm, что позволит нм работать в редакторе схем, как на обычной миллиметровой бумаге.
5. Сохраним сделанные изменения, нажав кнопку OK.
6. Чтобы видимая сетка была привязана к границам платы, расположим точку начала координат в левому нижнему углу платы, для чего выполним команду меню Edit | Origin | Set (горячие клавиши E, O, S).
7. Указатель мыши примет вид крестика, который необходимо нацелить в левый нижний угол платы.
8. Приблизим изображение нескольким последовательными нажатиями клавиши PageUp, чтобы можно было попасть точно в гол платы.
9. Щелкнем левой кнопкой мыши и вернем изначальный масштаб нажатием горячих клавиш V, D.
Далее настроим редактор печатных плат:
1. Выполним команду меню Tools | Preferences (горячие клавиши T,P), после чего откроется диалоговое окно System Preferences.
2. На вкладке Options в разделе опций редактирования (Editing Option) включим опцию Snap to Center. В этом случае при перемещении компонента указатель мыши будет притягиваться к опорной его точке.
3. Перейдем на вкладку Display и в разделе Show (отображать) выключим опции Show Pad Nets, Show Pan Numbers и Via Nets. В разделе Draft Thresholds (порог отображения) в поле String зададим значение 4 пикселя, что позволит упростить прорисовку текстовых надписей при изменении масштаба просмотра.
Определение стека слоев
В нижней части окна редактора печатных плат можно наблюдать несколько вкладок, соответствующих определенным в проекте слоям. Настройка слоев производится в диалоговом окне Board Layers (рис. 5), вызываемом командой меню Design | Board Layers (горячая клавиша L). Здесь задаются: имена слоев, цвет расположенных на них объектов и режим отображения. Выключим все неиспользуемые слои нажатием кнопки Used On. В нашем проекте останутся включенными только три слоя: Keep-Out (контур платы), Top Overlay (контуры компонентов) и Multi-Layer (контактные площадки).
Всего в редакторе печатных плат системы Protel DXP предусмотрено три типа слоев: электрические, механические и специальные. Всего на плате может быть до 32 сигнальных слоев и до 16 внутренних слоев питания и заземления. Их настройка осуществляется в диалоговом окне Layer Stack Manager. Для размещения различной вспомогательной информации (размеры, таблицы, служебные метки и надписи) используются механические слои, которых может быть не более 16. Содержимое механических слоев этих слоев может быть выведено в Gerber файлы наряду с информацией из электрических слоев. Специальные слои используются для размещения служебной информации, например, надписей шелкографией, различных масок, границ областей трассировки и т.д.
Наш относительно простой проект может быть реализован на обычной одно- или двухсторонней плате. В случае необходимости изменения конфигурации электрических слоев командой меню Design | Layer Stack Manager вызывается окно Layer Stack Manager (рис. 6).
Настройка правил проектирования
Процесс работы в редакторе печатных плат системы Protel DXP регламентируется набором правил проектирования, четко оговаривающих все аспекты размещения проводников и компонентов. Все автоматические операции (авторазмещение, автотрассировка) производятся в строгом соответствии с этими правилами. Выполняемые вручную операции (например, интерактивная трассировка или перемещение проводников) контролируются постоянно, поэтому любое неправильное действие мгновенно отображается как нарушение. Такой подход дает возможность разработчику максимально сконцентрироваться на проекте и не отвлекаться на мелочи.
Все правила проектирования, учитываемые в редакторе печатных плат, сгруппированы в 10 категорий. Представленные в одной категории правила отличаются по типу, причем нет никаких ограничений на использование файлов одного типа. В этом случае приоритет правил определяется областью действия, причем на случай перекрытия областей действия разных правил одного типа, существуют четкие указания по разрешению подобных конфликтов.
Такая система кажется излишне запутанной, но она задает четкие логические критерии управления полуавтоматического или полуавтоматического проектирования плат. Очень важно научиться правильно задавать наборы правил проектирования, так как этот процесс составляет примерно половину объема работы над проектом.
Наш пример относительно прост, но и в нем уже присутствует некоторый, создаваемый по умолчанию набор правил проектирования, который мы в качестве упражнения дополним правилом, оговаривающим специфическую ширину проводников цепей питания.
1. В редакторе плат выполним команду меню Design | Rules (горячие клавиши D, R).
2. Откроется диалоговое окно PCB Rules and Constraints Editor. Все десять категорий правил проектирования отражаются в списке слева в виде древовидной иерархической структуры.
3. Щелкнем левой кнопкой мыши на самой верхней строчке в этом списке (Design Rules). В списке справа будут перечислены абсолютно все заданные в проекте правила (рис. 7).
4. Выполним двойной щелчок левой кнопкой мыши на категории Routing (правила, учитываемые при трассировке), чтобы раскрыть список имеющихся здесь типов.
5. Выполним двойной щелчок левой кнопкой мыши на типе правил Width (ширины проводников), чтобы показать все заданные по умолчанию правила. Сейчас здесь имеется только одно правило Width.
6. Щелкнем на нем один раз левой кнопкой мыши. В правой части окна появится наглядное описание данного правила (рис. 8), созданного мастером PCB Wizard.
7. Переименуем это правило, для чего в поле Name справа введем новое имя "Все проводники". О том, что данное правило относится ко всем проводникам, сигнализирует включенная в поле Where the First object matches опция All. В поле справа Full Query отображается описание этой области действия правила в виде запроса.
8. Выполним щелчок правой кнопкой мыши на дереве правил слева и в появившемся всплывающем меню выберем команду New Rule, после чего в списке появится новое правило Width.
9. Щелкнем левой кнопкой мыши на этом правиле, чтобы войти в режим его редактирования.
10. В поле Name введем новое имя "Цепи питания".
11. В поле задания области действия правила выберем опцию Net, а в выпадающем списке напротив ее выберем цепь 12V. В поле Full Query появится описание запроса InNet('12V').
12. Для добавления к этой области действия еще одной цепи будем использовать редактор запросов, для чего выберем опцию Advanced (Query) и нажмем ставшую активной кнопку Query Builder. Появится диалоговое окно Query Helper.
13. Щелкнем указателем мыши справа от текста InNet('12V') и нажмем кнопку Or (Или).
14. В списке слева внизу щелкнем на категории действий Membership Check (проверка принадлежности). В поле справа откроется список доступных функций проверки принадлежности.
15. Дважды щелкнем левой кнопкой мыши на операторе InNet. В поле конструктора запросов после оператора Or появится функция InNet с выпадающим списком, предлагающим выбрать нужную цепь.
16. Выберем цепь GND. Запрос примет вид InNet('12V') Or InNet(GND).
17. Нажмем кнопку Check Syntax, чтобы проверить правильность составления запроса. Наш запрос очень простой, но в общем случае запросы могут иметь достаточно сложную структуру, поэтому такая проверка может оказаться очень полезной (рис. 9).
18. Закроем конструктор запросов нажатием кнопки OK. В окне описания правила проектирования в поле Full Query появится только что созданный запрос.
19. Нам осталось только задать суть правила - численное значение ширины проводника. Эти установки выполняются в текстовых полях на рисунке в нижней части окна. Устанавливаемое рекомендуемое (Preferred) значение ширины используется при интерактивной или автоматической трассировке, а минимальное и максимальное - для контроля ошибок DRC (Design Rules Checkng). Введем во все поля значения 2mm.
20. Закроем диалоговое окно PCB Rules and Constraints Editor.
Теперь при автоматический или ручной трассировке ширины проводников цепей питания будут всегда равны 2 мм, в то время, как все остальные проводники будут более тонкими.
Итак, мы полностью завершили все подготовительные операции, предшествующие разводке печатной платы. Мы научились создавать заготовки печатных плат, передавать информацию со схемы на плату, управлять слоями и задавать правила проектирования. Полный список доступных в системе Protel DXP правил проектирования приведен в таблице 1. На следующем занятии мы приступим к изучению основных приемов размещения компонентов и трассировке проводников на печатной плате.