Лирическое отступление
История создания пакета Altium Designer – Системы сквозного автоматизированного проектирования электронных устройств (РЭС) на базе печатных плат и программируемых логических интегральных схем (ПЛИС).
Австралийская фирма Protel International в 1998 году разрабатывала систему проектирования аналого-цифровых и цифровых устройств Protel, которая по возможностям была сопоставима с известными в те годы ACCEL EDA и OrCad. В Protel 98 была предпринята первая попытка создания общей оболочки в которой схемотехники и конструктора печатных плат могли решать весь спектр стоящих перед ними задач.
В конце 1999 года Protel International выпустила новую версию своей программы для Windows NT/95/98 под названием Protel 99 SE, которая объединила множество новых функций и возможностей. Уже тогда программу Protel отличал проектный подход к ведению разработок, т. е. все документы для проектирования устройства хранились в едином файле базы данных. Однако, отсутствие возможности импорта баз данных схем и печатных плат из популярных САПР (типа Р-CAD) ограничивали возможность применения Protel.
В августе 2002 года компания Protel выпустила в свет пакет Protel DXP, преставляющий собой продолжение собственной оригинальной линии продуктов Protel. Этот пакет обеспечивал скозной цикл проектирования смешанных аналого-цифровых печатных плат с использованием программируемой логики фирм Xilinx и Altera. Главным новшеством Protel DXP должен был стать топологический автотрассировщик Situs, призванный реализовывать новый подход в автоматической разводке плат.
На фоне полной мобилизации усилий на разработку пакета Protel DXP компания Altium проложала развивать свой второй пакет проектирования печатных плат P-CAD (ранее называвшийся ACCEL EDA).
Во многом эволюционная версия Protel вышла в 2004 году, именно с нее началось бурное развитие программы среди российских разработчиков. Появился современный Window-подобный интерфейс.
В начале 2006 года австралийская компания Altium Limited выпустила новую версию комплексного пакета проектирования электронных устройств Altium Designer 6.0. В данном продукте работа над проектами печатных плат ведется в интеграции с программированием цифровых устройств на уровне ПЛИС в единой управляющей оболочке Design Explorer. По сути в этом пакете были объединены ранее существовавшие по отдельности пакеты Protel и Nexar. В новой версии была реализована поддержка интерфейса с библиотекой OrCad Capture CIS.
Летом 2008 года австралийская компания Altium заявила о прекращении развития программы P-CAD. В качестве замены разработчики предлагают использовать программу этой же фирмы Altium Designer, которая уже приобрела известность среди разработчиков всего мира, как сквозная система проектирования электроники.
В то же время была выпущена новая версия программы Altium Designer Summer 08. Большинство изменений коснулись удобства работы с проектами. Улучшена система работы по сети с помощью Version Control System, а также отлажена система комплексного выпуска документации. Основные изменения коснулись редактора печатных плат.
Затем в конце 2008 года была выпущена версия Altium Designer Winter 09, в который программисты упростили программный код, что способствовало улучшению на этапе разработки платы скоростных и производительных характеристик. Была усовершенствована интерактивная трассировка.
В начале 2011 года была выпущена новая версия Altium Designer 10, которая на настоящей момент является текущей. О возможностях новой версии программы можно более подробно почитать здесь:
Проект печатной платы на примере ИК подсветки для видеокамеры
Начальной точкой каждого конструктивного решения в Altium Designer является проект. Проект представляет собой набор документов, чьи данные предназначены для разработки одного самостоятельного изделия. Комплект документов, которые создают проект, формируется совместно с файлом проекта. Файл проекта содержит все установки, включая связи с каждым документом проекта и все проектно-зависимые опции. Каждый документ проекта записывается как отдельный файл, который связан с проектом через относительные ссылки к файлам на одном и том же логическом устройстве или абсолютные ссылки на файлы на разных логических устройствах. Altium Designer поддерживает различные типы проектов. Для создания печатной платы служит проект – PCB Project (набор документов, предназначенных для изготовления печатной платы). Электронная схема вводится в редакторе схем и создается из библиотечных символов, которые размещаются на листе и соединяются проводниками. Проект передается в редактор плат, где каждый компонент представляется как посадочное место, и проводники на схеме преобразуются в соединительные линии от вывода к выводу. Определяется окончательный вид платы совместно с физическими слоями. Описываются правила проектирования для изготовления фотошаблона. Компоненты размещаются в пределах контура платы и соединяются линиями связей, которые затем заменяются трассами. Когда проект закончен, генерируются выходные файлы в стандартных форматах, которые можно использовать для изготовления платы.
Итак, на первом этапе проектирования необходимо создать файл проекта печатной платы.
Для этого надо выполнить следующие действия:
1. В меню File (Файл) выберите New>> Project >> PCB Project (Новый>> Проект>> Проект печатной платы). Если панель не отображается, нажмите кнопку System (Система) в правом нижнем углу основного окна и выберите Files (Файлы).
2. Открывается панель Projects (Проекты), на которой отображается новый файл проекта PCB_Project1.PrjPCB (без добавленных документов).
2. Сохраните новую схему (с расширением .SchDoc), выбрав из меню File>> Save As (Файл>> Cохранить как). Перейдите в папку на жестком диске, в которой хотите сохранить схему, в поле File Name (Имя файла) введите имя IR_Led и нажмите кнопку Save (Сохранить).
3. После добавления принципиальной схемы файл проекта изменился. Сохраните его, щелкнув правой кнопкой мыши на файле проекта на панели Projects (Проекты) и выбрав Save Project (Сохранить проект).
Теперь в рабочем поле листа принципиальной схемы необходимо собрать схему ИК подсветки для видеокамеры. В качестве аналоговой подсветки достаточно широко используется схема, показанная на рисунке 3. Работа схемы заключается в следующем, на 2 и 3 входы операционного усилителя LM393 подается напряжение с резистивных делителей R1-R2-R3 и R4-R5-R6. Сопротивления резисторов подобраны так, что в светлое время суток напряжение с делителя, где содержится фоторезистор R4, равно напряжению на втором делителе. При этом на выходе суммирующего операционного усилителя напряжение равно нулю, транзистор Q1 закрыт, и соответственно, светодиоды не горят. В темное время суток на входах 2 и 3 напряжения не равны, на выходе операционного усилителя при этом величина напряжения достаточная для открывания транзистора, и светодиоды горят.
На рисунке изображен скриншот листа принципиальной схемы в Altium Designer. Чтобы собрать такую схему, необходимо в рабочее поле добавить нужные элементы: резисторы, диоды, светодиоды, транзисторы и операционный усилитель.
Для разработки схемы используется панель Libraries, посредством которой выполняется работа с библиотеками. Запуск этой панели производится через меню вызова панелей System>> Libraries. В запущенном виде панель Libraries показана на рисунке 4.
Перед началом работы необходимо подключить библиотеки, в которых содержатся нужные нам элементы. Чтобы сделать это нажмите кнопку Libraries на одноименной панели, после чего на экране появится окно, показанное на рисунке 5.
В данном окне имеются 3 вкладки: Project – библиотеки проекта, Installed – установленные библиотеки, Search Part – путь для поиска по библиотекам. При установке пакета Altium Designer интегрированные библиотеки, в которых содержатся нужные нам элементы, устанавливаются автоматически. Их осталось только подгрузить в файл проекта, нажав на кнопку Install в окне Available Libraries (показанном на рисунке выше, где уже добавленные требуемые библиотеки). Теперь осталось разместить нужные элементы на схеме.
В Altium Designer инструменты, относящиеся к схемной части программы, сгруппированы в панель Wiring, показанную на рисунке 6.
Рисунок 8
Рисунок 9
В этом окне необходимо задать единицы измерения – миллиметры в группе Scale. Остальные настройки менять не обязательно, но можно задать расположение начала координат вставляемого рисунка в группе Locate AutoCAD и выбрать слои для импорта. Для контура платы обычно используется слой Mechanical 1. После установки всех опций нажимаем OK, и в рабочей области редактора появится импортированный контур. Теперь программе надо указать, что этот контур является границами платы. Для этого следует выделить весь импортированный контур и выполнить следующую последовательность команд Desing >> Board Shape >> Define from Selected Object, после чего область внутри контура становится черной, а снаружи серой, что свидетельствует о корректном создании платы.
Управление порядком расположения слоев
После создания контура платы перейдем ко второму шагу разработки конструктивных параметров платы, на котором определяется порядок расположения слоев. Как известно, при разработке платы работа ведется с несколькими слоями, так топология проводников разрабатывается на одних слоях, пасты и маски наносятся в других. В Altium Designer также, как и в P-CAD, все слои объединяются в группы. Просмотр всех существующих слоев проекта и управление их отображением выполняется в окне View Configuration, которое вызывается командой Design >> Board Layer&Colors или нажатием кнопки L. Если эта клавиша нажата во время работы в двумерном режиме (переключение между двумерным и трехмерным режимами осуществляется нажатием клавиш "2" и "3"), то окно на экране будет выглядеть так, как показано на рисунке 12.
Здесь в правой части показаны группа слоев редактора:
1) Signal Layers (Сигнальные слои) – предназначены для создания топологии проводящего рисунка;
2) Internal Layers (Экранные слои) – предназначены для расположения внутренних полигонов земли и питания;
3) Mechanical Layers (Графические слои) – используются для вспомогательной графической информации, например, контур платы и т. д.;
4) Mask Layers – слои паяльной пасты и защитной маски;
5) Other Layers – дополнительные слои, к которым относятся зоны запрета и слои, отображающие отверстия в плате;
6) Silkscreen Layers – слои шелкографии, в которых располагается информация для маркировки на плате;
7) System Layers (Системные слои) – точнее системные цвета, к которым относятся цвет фона, сетки, соединения и др.
В данном окне нельзя добавлять и удалять слои, здесь можно только управлять их видимостью. Добавление новых слоев и управление их положением в стеке печатной платы производится в окне, которое вызывается командой Design >> Layer Stack Manager (рисунок 13).
В данном окне показана структура печатной платы, на которой видно расположение сигнальных и внутренних экранных слоев. В правой части окна имеется набор кнопок для управления порядком расположения слоев. Кнопки Add Layer и Add Plane добавляют сигнальные и экранные слои соответственно. В Altium Designer можно добавить до 32 сигнальных и 16 экранных слоев. В нашем случае плата ИК подсветки двусторонняя, поэтому в настройках окна Layer Stack Manager не нужно что-то менять. Закройте окно, нажав на кнопку ОK.
Заключительным этапом разработки конструктивных параметров платы является создание крепежных отвестий и запретных зон для металлизации. В нашем случае крепежные отвестия были заранее учтены при рисовании контура платы в механической САПР. Но поскольку в центре платы имеется вырез, то необходимо непосредственно перед трассировкой внутреннюю область платы обозначить как зону запрета для металлизации. Делается это с помощью следующей последовательности команд Place >> Keepout >> Solid Region. Затем выделяем внутреннюю область и двойным щелчком левой кнопки мыши выбираем в качестве слоя для выделенной области Keep-Out Layer. В итоге плата будет выглядить, как показано на рисунке 14.
Вначале командой Validate проверяется возможность внесения изменений, где главное проблемой может быть отсутствие посадочного места того или иного компонента (Ошибка "Footprint Not Found"). При фиксации ошибок в столбце Status окна Egineering Change Order, следует нажать кнопку Close и выполнить отладку программы. После того, как команда Validate подтверждает возможность внесения всех изменений, выполняется команда Execute, результатом которых будет загрузка всех данных из схемы в плату. При последующих изменениях на схеме необходимо будет постоянно вносить изменения в плату командой Design >> Update PCB.
Выбор посадочного места для определенного компонента осуществляется следующим образом. Дважды щелкните левой кнопкой мыши по нужному компоненту – откроется окно Properties for Schematic component in Sheet. В разделе Models нажмите кнопку Add… (рисунок 16).
Откроется окно Add New Model, в котором заведомо будет выбрано FootPrint (Посадочное место). Нажмите кнопку OK. Затем откроется еще одно окно PCB Model, в нем можно выбрать нужное посадочное место, нажав на кнопку Browse (рисунок 17).
В нашем случае необходимо выбрать посадочные места для резисторов, транзисторов и микросхемы. Выбираем их из следующих библиотек:
1) Для резисторов R1-R3, R5-R14, R16 библиотека Panasonic Resistor.IntLib, посадочное место 3-0603;
2) Для резисторов R15, R17-R19 (ограничивающих ток в плечах светодиодов) библиотека Panasonic Resistor.IntLib, посадочное место 8-1206;
3) Для транзисторов Q1-Q3 библиотека Zetex Discrete MOSFET.IntLib, посадочное место SOT23;
4) Для операционного усилителя библиотека TI Operational Amplifier.IntLib (Texas Instruments), посадочное место D008_L;
5) Для диода D1 библиотека Philips Discrete Diode – Switching.IntLib, посадочное место SOD80C;
6) Для светодиодов D2-D21 и фоторезистора R4 среди библиотек, устанавливаемых с Altium Designer, нет подходящего посадочного места, его можно нарисовать вручную, путем изменения уже существующего места.
Создание нового посадочного места компонента
Наиболее просто нарисовать посадочное место не с нуля, а изменив уже существующее. Так, для светодиодов и фоторезистора, можно изменить посадочное место резистора RD 3.2×1.7 из библиотеки Panasonic Resistior.IntLib. Для этого сначала для всех светодиодов укажите соответствующие посадочные места в радакторе схем. Сохраните изменения. Теперь передайте схему в редактор печатных плат, описанными выше действиями. Окно редактора печатных плат будет выглядеть, как показано на рисунке 18.
Теперь необходимо заменить посадочные места для светодиодов и фоторезистора R4. Для этого, находясь в редакторе печатных плат, выполните команду Design >> Make PCB Library, будет сформирована схемная библиотека посадочных мест PCB1.PcbLib, сохраните ее. Выполните команду PCB >> PCB Library в правом нижнем углу экрана. В панели PCB Library выберите корпус RD3.2×1.7, измените его в соответствии с рисунком 19. Для этого сначала необходимо установить метрическую систему измерения. Щелкните правой кнопкой мыши на свободном участке, в открывшемся списке выберите вкладку Library Options и в окне Board Options в разделе Unit установите значение Metriс. Закройте окно, нажав кнопку OK. Теперь надо установить контакты в требуемом расстоянии друг от друга. Для светодиодов диаметром 5 мм расстояние между контактами равно 2.5 мм. Чтобы удобнее было перемещать компоненты, меняйте величину шага сетки, нажатием клавиши G.
Расположение компонентов на плате и трассировка
Поскольку плата двусторонняя, то необходимо правильно разместить на ней элементы. Светодиоды и фоторезистор оставляем на слое Top Layer, а остальные элементы помещаем на противоположную сторону платы – Bottom Layer (двойной щелчок левой кнопкой мыши на элементе, в открывшемся окне во вкладке Component Properties выбираем Bottom Layer). Расположите светодиоды и фоторезитор покругу, а остальные элементы на противоположном слое произвольным образом, но как можно с меньшими пересечениями (примерно так, как показано на рисунке 21).
Не забудьте добавить контактные отверстия для установки разъема питания, командой Place >> Pad (одному из них в разделе Net вкладки Properties окна, вызываемого двойным щелчком левой кнопки мыши по компоненту, присвойте цепь GND, а другому POWER).
Перед трассировкой следует установить правила проектирования. А именно указать толщину дорожек, правила трассировки, минимальное допустимое расстояние между проводниками и элементами, диаметр переходных отверстий и т. п. Для этого щелкните правой кнопкой мыши на пустом месте окна редактора печатных плат и выберете вкладку Design >> Rules, откроется окно PCB Rules and Constraints Editor. Слева выберете раздел Routing >> Routing Via Style >> RoutingVias и укажите внутренний диаметр переходных отверстий 0,2 мм, а внешний – 0,5 мм. Остальные правила можно не менять в нашем случае. Закройте окно, нажав на кнопку OK.
Теперь остался заключительный этап. Выполните автотрассировку платы командой Auto Route >> All. В итоге получилась печатная плата ИК подсветки для видеокамеры (рисунок 22).
Создание проекта
Создаем проект в формате PrjPCB
В файле проекта не хватает двух файлов – «New->Shematic» и «PCB». Добавляем их
Теперь нужно скачать готовый шаблон листа А4 – все должно быть по госту.
Кликаем дважды за пределами листа, заходим в своства документа. Во вкладке «Units» нужно сменить систему на метрическу. На этой же вкладке ищем «Change System Font» и выбираем любой шрифт, соответствующий ГОСТ (нужно скачать отдельно).
Также, на этой вкладке в спике Templates выбираем наш шаблон.
Создаем библиотеку деталей – «File->New->Library->Component Library».
Создаем группу, галочки на PCBLIB и SCHLIB оставляем. Дальше «File->New->Library->Shematic Library и PCB Library». На вкладке проекта, внизу есть углубление в меню библиотек (SCH Library и PCB Library). В итоге, компилируем библиотеку деталей.
Теперь добавляем созданную библиотеку
Приступаем к созданию собственно схемы.
Внимательно следим за входами и выходами. Программа не допускает неподсоединенных входов. Для увеличения масштаба зажимаем ALT и кликаем мышью.
По окончания процесса создания схемы копилируем ее – «Project->Compile Document ». Полученные ошибки исправляем.
На скриншоте выше пример ошибок – два компонента с одинаковым названием. Заходим в «Tools->Annotate Schematics», жмем «Reset all» (нумерация исчезнет), «Accept Changes->Execute Changes», и «Update Changes List» и еще раз «Accept Changes (Create ECO)».
Переходим к настройке нарисованной схемы. Открываем файл PCB, «Design->Import Changes from..», смотрим список компонентов, «Execute Changes». Детали расположились справа от платы. Располагаем детали на плате.
Для переноса детали на другую сторону, ЛКМ + нажать «L». Component Properties->Layer-> Выберем слой
Выбираем толщину стеклотекстолита – «Design->Layer Stack Manager… Core». По умолчанию единицы измерения Inc, можно изменить на mm.
Пришло время очертить контур платы – переходим на слой Mechnical 1, Place->Line. Очерчиваем контур платы, выбираем только что начерченные линии (Shift+ЛК), и «Design->Board Shape->Define from selected object». Плата обрежется по выделенной области.
На скриншоте ниже пример ошибки – компонент подсвечем зеленым, значит имеем конфликт. Высота выше установленной. Исправляем, — «Desing->Rules..», «Maximum»
Делаем заливку полигоном «Place->Poligon Pour». Выбераем тип заполнения, настраиваем термобарьер. Необходимо указать слой, на котором будет находится полигон и связь, к которой он будет принадлежать. В результате должен получится контур полигона.
Если неразведенных связей не осталось, то нужно запустить проверку на ошибки – «Tools->Design Rule Check..» откроется окно по настройке отчета, и выбора проверок. После нажатия «Ok» сформируется список ошибок и предупреждений в окне «Messages».
И последнее, что нужно сделать, – экспорт GERBER файлов
В результате получаем печатную плату в 3D.
Если понадобится документация к плате, то можно сформировать PDF-файл со схемами. Добавляем проект – «Output Job File», «File->New->Output Job File». Здесь в «Documentation Output» добавим схему, вид платы в 3D с двух сторон, и плату с разными слоями. Можно добавить список компонентов в «Report Output» и NetList в «Netlist Output».
Добавляем объемный вид платы. На скриншоте, участок без фольги просвечивается. Чтобы так не получилось — нужно нажать «Take Current View..» или можно выбрать из активного вида — «Custom».
Теперь добавляем список компонентов в «Bill of Materials». Выберем, что будем выводить, нажав на круглом Check Box-е. В самом PDF-документе та же последовательность – нажимаем «Chanque», затем «Generate Content». Получаем PDF-документ.
Продолжаются уроки по Altium Designer 10. В прошлой статье мы создали новый проект и добавили в него пустые файлы принципиальной электрической схемы и печатной платы. И вот настало время добавить в них что-нибудь полезное! Давайте по традиции помигаем диодиком 😉 Для этого мы создадим схему, состоящую из источника питания, резистора, ну и, конечно же, светодиода, а затем займемся проектированием печатной платы.
Итак, как в прошлой статье, создаем новый проект. Теперь добавим к нему файл схемы и печатной платы. Для этого жмем правой кнопкой на название проекта и в появившемся меню выбираем сначала Add new to project -> Schematic, а затем Add new to project -> PCB. В окне Project в левой части рабочего пространства к нашему проекту прицепились два файла. Открываем файл схемы, сейчас мы будем добавлять туда элементы. И начнем мы, пожалуй, с резистора. В верхнем меню заходим в Place и выбираем Part. Через этот пункт меню мы будем добавлять на схему новые элементы. Все очень просто и логично. Появляется окно добавления компонента, жмем там на Choose и оказываемся прямо перед длинным перечнем доступных элементов. Выбираем там какой-нибудь из резисторов:
Компонент выбран, теперь можем поместить его в любое место схемы, Собственно, так и делаем. Аналогично добавляем в схему светодиод, найти его в библиотеке не составит трудностей. Последний штрих – добавим питание и землю – их находим на панели инструментов:
Ну что, все элементы готовы, осталось соединить и получим такую вот схемку:
Вот и все, схема готова! Еще хочу отметить как вообще работать с принципиальной схемой:
- В отличие от большинства программ при прокрутке колесика мыши не происходит уменьшения/увеличения масштаба. Для масштабирования здесь надо зажать третью кнопку и только потом двигать мышью.
- А чтобы перемещаться в пределах документа надо зажать правую кнопку мыши.
Такие вот законы Altium’а.
Немножко изменим схему – давайте вместо абстрактной земли и питания поставим конкретный разъем, ну, например, вот такой:
Схема теперь примет следующий вид:
По поводу схемы, пожалуй, все. А нет, не все) Altium не просто позволяет нарисовать схему, он же может ее и проверить. Для этого ее нужно откомпилировать, как бы непривычно это не звучало относительно принципиальной электрической схемы. Ну вот, смотрите, пример. Берем нашу схему, выделяем и копируем куда-нибудь рядом. Получается вот что:
А теперь в окне проектов, жмем правой кнопкой на названии нашего файла схемы и выбираем первый пункт – Compile document…. И вот, что получаем:
Altium выдает сообщения о том, что у нас компоненты повторяют друг друга (оно и понятно, мы же их тупо скопировали 😉 ). Вот так вот выглядит механизм компиляции в Altium Designer 10. Конечно, мы пока многие подробности опускаем, ведь мы сейчас просто знакомимся с программой. Разумеется, можно рисовать принципиальные схемы любой сложности, резистором и диодом тут дело, конечно же, не ограничивается. А если нужного вам элемента нету в списке, то необходимо скачать дополнительную библиотеку, либо создать элемент вручную. Но об этом мы поговорим в следующий раз . А сейчас давайте займемся проектированием печатной платы для нашего примера.
Итак, у нас есть схема и пустая печатная плата. В первую очередь надо, чтобы элементы со схемы перекочевали на плату. Ищем сверху пункт меню Design и выбираем там Update PCB document… В появившемся окне нужно жать на Validate Changes и затем на Execute Changes. Если все правильно, то увидим набор зеленых галочек:
Открываем файл печатной платы и сразу же видим изменения:
Снизу появилась красная область с нашими элементами, перенесем ее в центр рабочего пространства и увеличим:
Ну все, осталось только соединить элементы. Что и с чем соединять понятно – все площадки, которые нужно соединить дорожками, соединены тонкими линиями. Проводим дорожки и получаем:
Получили мы нашу плату, все соединено правильно, все довольны. Конечно же, мы использовали лишь малую часть возможностей Altium’а, но нашей целью ведь было всего лишь познакомиться с программой в целом, с интерфейсом. Так что считаем, цель достигнута. Да и, по большому счету, для разведения небольших платок, в принципе, ничего особенного то и не понадобится – рисуем схему – переносим элементы на плату и соединяем их дорожками, вот и все. Если возникли какие-либо вопросы, пишите, будем разбираться вместе!