9 August 2012

Allegro Cadence 16.5

Website developmentCAD/CAM
image

Чтобы разрабатывать электронику нужно как минимум знания схемотехники, знания современной электронной базы компонентов, умение работать в одной из программ САПР и разводить платы в соответствии с требованиями ЭМС. И если вы ещё не определились с какой из САПР вы в основном будете работать, то эта статья для вас.

В настоящее время существует три профессиональные среды САПР для электроники это: Altium Designer, Allegro Cadence и Mentor Graphics PADS. Всякие полупрофессиональные типа Proteus, Eagle и тд, даже не стоит рассматривать, так как они на уровне радиолюбительства и сколько-нибудь сложных вещей делать не позволяют. Есть ещё разные архаичные, специализированные, типа Microwave, Uniboard и прочие, но их тоже рассматривать не стоит из-за их низкой популярности и как следствие отсутствия поддержки.

В данной статье я хочу дать обзор и немного рассказать о том, как работать в Allegro Cadence, поскольку сам пользуюсь данной средой по таким вот причинам:
  • Во-первых, возможности Cadence весьма впечатляющи. Перечислять всё займёт только отдельную статью, но кое о чём я расскажу ниже.
  • Во-вторых, Cadence очень не требователен к системе, будет нормально работать даже на очень слабых компах вроде 1ГГц, 512 ОЗУ. Если у вас компьютер не 2 ядра, то собственно у вас и другого выбора кроме Cadence нету, т.к. при разработке часто, а то и всегда, приходится одновременно держать открытыми сразу несколько программных пакетов, в моём случае SolidWorks и Cadence, если бы я запустил, например, Altium мой компьютер просто бы дымком изошёл.
  • В-третьих, тут нет таких глуков как в Altium (на счёт Pads не знаю). В Cadence конечно есть некоторые неудобные вещи, надо сказать тут у них своя оболочка, полностью построенная на скриптах и управляемая из командной строки, многим это может показаться неудобно, но тут нет таких критических ошибок, как например бывают в Altium при конвертации файлов в гербер и вообще довольно стабильная среда в этом отношении.

Итак, что же из себя представляет Allegro Cadence? Это пакет программ и утилит, которые хорошо связанны друг с другом. Каждая программа отвечает за свою область и запускается отдельно. Их там довольно много и на рассказ о любой из них, нужна отдельная статья, поэтому я перечислю и кратко расскажу лишь о тех, которые нужны обычному электронщику, чтобы просто знать с чем ему начать работать.

Design Entry CIS
Эта программа для проектирования принципиальной схемы, её симуляции, рисования схем итд. Т.е. здесь вы создаёте или вставляете компоненты, привязываете к ним footprint, указываете правила, которые будут проверятся в конце, чтобы исключить ошибки, румы и тд. Вообще, в Design Entry CIS может быть весь ваш проект, включая и документацию, но для начала это всё излишняя информация, поэтому расскажу кратко что и как делать.

File->New->Project
Всё создали. Заходите на страницу принципиальной схемы PAGE1 и нажимаете Place Part, далее Add Library и выбираете необходимые библиотеки. Можно создавать свои библиотеки компонентов и даже нужно, и добавлять в проект их нужно также.
Рисунок
image

Ок, добавим библиотеку дискретных элементов Discrete и MicroController. Допустим хотим сделать схему содержащую пару резисторов, конденсаторов и микроконтроллер STM32. Для этого выбирает библиотеку Discrete и ищем выше в Part List «CAP POL» и «RESISTOR», т.е. полярный конденсатор и резистор. Вставляем их на схему и далее ищем микроконтроллеры STM32 в библиотеке MicroController. Но вот незадача, их там нет. Что будем делать? Создавать корпус с нуля?

Нет, есть вариант проще, кликаем правой кнопкой на пустом месте схемы и выбираем в меню Place Database Part и в открывшейся вкладке щёлкаем на Internet Component Assistant
Рисунок
image

В окне встроенного браузера кликаем на Active Parts со значком операционника. Далее в открывшимся окне видим кучу настроек, но ничего не трогаем, а вбиваем в строку Part Number: «STM32».
Рисунок
image

Далее выбираем нужный нам контроллер или близкий к нему (чтобы можно было доделать немного), указываем в какую библиотеку вставлять, указываем если есть footprint и т.д. Если не знаете, что указывать то кликайте на Place Part постоянно.

Чтобы привязать к компоненту footprint, нужно зайти в его свойства, кликнув два раза на компоненте и найти соответствующую графу. Название футпринта это название его файла, а сами футпринты лежат в директории ..\Cadence\SPB_16.5\share\pcb\pcb_lib\symbols изменить это нельзя, а если найдёте где, то лучше не стоит, Cadence очень не любит когда ему что-то указывают не так. С другой стороны если ему что-то не нравится, он вам точно скажет.

Сразу хочу рассказать про файлы которые лежат в папке ..\symbols.
*.dra — файлы наших компонентов, другими словами наши footprint
*.bsm — механические отверстия
*.pad — файлы падов
*.psm — файлы padstack, в общем должны быть там же где *.dra

Для того, чтобы сделать плату нужно знать ещё одну вещь, это то как делать netlist, чтобы можно было разводить плату. Для этого вам нужно перейти на страницу проекта, выбрать его и нажать на Create netlist, там 1500 настроек, но я верю что вы разберётесь. И не волнуйтесь, если Cadence чем-то недоволен, то он не позволит вам испортить схему и пошлёт вам ошибку, а он это делает часто. Будьте уверены вы ещё его полюбите, даже если сначала возненавидите. C'est la vie.

Package Designer
Если у вас при создании netlist Cadence выдал ошибку, то скорее всего у вас где-то отсутствует footprint. Исправить это можно двумя способами, первое это исключить компонент из физической модели, а второе добавить, а если нет, то создать компоненту footprint. Для этого нам понадобится программа Package Designer. Здесь та же среда что и в программе проектирования платы PCB Editor, поэтому практически всё тут тоже самое, и управление, и многие функции.

Открывает она файлы типа *.dra, поэтому чтобы особо не мучится зайдите в директорию символов в папке ..\pcb_lib\symbols и откройте какой-нибудь файл с расширением *.dra. Перед вами появится компонент состоящий их кучи слоёв. Теперь немного о том, как вообще жить в этом пространстве, т.к. если вы попытаетесь покликать и сделать что-то вменяемое, то будете удивлены как тут всё неудобно, но это на первый взгляд… в общем и на второй и на третий тоже, как я уже сказал Cadence вы ещё возненавидите, но это ничего потом вы смеритесь и даже полюбите его причём так что уже не распрощаетесь, это навсегда. Серьёзно.
Рисунок

Итак, управление тут немного непривычное. Зажав среднюю кнопку мышки вы можете перемещать окно, для зума нужно крутить колёсико мышки. Всё тут делается примерно так: щелчок на объекте->правая кнопка мышки->команда->выполнение. Нужно потренироваться, не сразу всё понятно как и зачем, поймёте потом. Многое делается из командной строки, об этом отдельный разговор.

Справа мы видим управляющую панель, которая состоит из трёх вкладок: Options, Visiability, Find
Рисунок

Options — там перечислены классы слоёв с которыми мы будем работать, знать обязательно только некоторые.
Find — тут мы отмечаем с какими конкретно элементами мы будем работать, а если проще какие будем выбирать. Допустим если я хочу выбирать только пины, и не трогать шайпы, то надо отметить галочкой Pins.
Visiability — тут мы отмечаем какие элементы будут видимы нам, а какие спрятаны, чтобы не мешать. Там не все слои, а только основные.

Всё что на панели вы сможете освоить сами, расскажу лишь основные тут вещи.

Меню Display->Color/Visiability — здесь вы настраиваете цвета элементов и их видимость на схеме.
Меню Setup->Design Parameters — важное меню, которое настраивает проект. Grids — сетка, с каким шагом вы будете перемещать элементы. Text — настройка текста по умолчанию.
Меню Setup->Areas->Part Height — очень важная опция, если вы хотите переносить плату в 3D модель, она задаёт высоту компонента, привязкой к слою Place_Bound_Top / Bottom.
Меню Shape — здесь управление формами. Формы это всё что угодно, от полигона, до корпуса компонента.
Меню Layout->Pins — вставка пинов.

В общем для этой программы это всё, повторяю, что здесь тоже самое что и в PCB Editor, многие опции даже те же самые. Но его рассмотрим позже, т.к. для создания компонента, нужно уметь создавать свои пады, а для этого нам нужна следующая утилита.

Pad Designer
Как вы уже догадались эта утилита создаёт пады, которые вам нужны для того, чтобы назначить их компонентам в Package Designer. Настроек тут много и сложно найти чего тут нет, начиная от произвольной формы пада до сверления отверстий с помощью плазмы или лазера, в общем всё это важно для производства. Для начала откройте какой-нибудь *.pad в папке ..\symbols, так вы можете посмотреть как и что вводить.

PCB Editor
И наконец перешли к самой важной программе. Она позволяет вам расставить ваши компоненты и произвести их разводку в соответствии с электрической схемой. Тут тоже самое что и в Package Designer, только всего ещё больше. Подробно об этой проге нет смысла говорить, т.к. только о ней можно с десяток статей написать, тут очень много хитростей, тонкостей, подводных камней и тд. Перечислю только важные менюшки, чтобы при освоении не искать.

Меню Manufacture — здесь всё что касается подготовки к производству платы. Перевод в гербер, легенда дриллов, схема слоёв и прочее.
Cross section (Xsection) — там назначаются физические слои. Их число, толщина, материал, порядок. Это можно взять у производителя плат.
Constraint Manager — это целая подпрограмма, она задаёт правила разводки и клеарансы, можно например сделать чтобы в rats не показывался один из net-ов.

В общем с остальным более менее можно разобраться путём проб и ошибок. Просто для наглядности и как пример покажу кусок разведённой платы:



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

И ещё три момента. При разводке платы, когда вы работаете с полигонами нужно ввести вот эту команду set etchedit_ignore_dynamic_shapes иначе нереально будет что-либо развести, полигоны будут мешать дорожкам и вы помрёте их перетаскивать. Вас это удивляет, что без одной команды, которая нигде не прописана нереально развести нормальную плату? Ну тут всё так, это Cadence вы будете сначала презирать тех садистов которые его сделали, но потом всё изменится и кроме Cadence -a другая САПР вам будет уже не нужна.

Второй момент вот какой. Не обязательно создавать в ручную footprint -ы, т.к. есть много программ которые генерируют их за вас. Самые известные это LP_Wizard и PCB Library Editor, они платные. Но есть ещё одна, и по моему очень неплохая и вроде бесплатная Footprint maker, скачать её можно здесь.

Третий момент это необходимость использовать командную строку. Обойтись без этого практически нельзя, но в принципе одной пары команд хватит для начала, о первой я сказал выше, а вторая команда введения координат. Например вам надо нарисовать полигон 10х10, каждый раз переключать сетку нереально, а иногда это и не поможет, поэтому сделайте так, выберите рисование полигона в шейпах и введите в строке: «x 0 y 0», указатель переместится на начало координат и введите ещё раз: «x 10 y 10» и вы получите квадрат 10 на 10. Также можно использовать команды move, delete и др. Например «move x 120 y 100» перемещает объект в указанную точку. Очень удобно использовать инструмент Show Element, он вам выдаст всю инфу об объекте и вы сможете с помощью командной строки легко передвинуть объект допустим на 1 мм вправо, просто сложив координаты и вбив в строку.



Обновление 19.08.12
Я тут узнал, что есть толковые уроки по созданию футпринтов, они правда на английском, но это ничего, в принципе всё и так более менее понятно.
Урок по созданию футпринта вручную
Tags:сапрcadallegrocadenceorcadэлектроника
Hubs: Website development CAD/CAM
+10
58.9k 64
Comments 36