Система сквозного проектирования Altium Designer. Создание библиотек компонентов
- На чём будем тренироваться?
- Создаем проект
- Создаем схемотехническую библиотеку (УГО)
- Рисуем УГО транзистора
- Создаем библиотеку посадочных мест
- Создаем посадочное место КТ-315
- Связываем УГО транзистора с посадочным местом КТ-315
- Создаем УГО резистора
- Создаем посадочное место Р1-12
- Копирование УГО из библиотеки в другую библиотеку
- Копирование посадочного места из библиотеки в другую библиотеку
- Назначение нескольких посадочных мест одному УГО
- Многоячеечные (многовентильные) компоненты
- Скрытие неиспользуемых выводов
- Разная конфигурация металлизации контактов по слоям
- Использование помощника создания компонентов
- Помощник создания символов УГО
На чём будем тренироваться
Дабы не изучать вопрос абстрактно, зададимся целью нарисовать и подготовить печатную плату в соответствии с данной простенькой схемой мультивибратора на двух транзисторах КТ-315.
Сразу скажу: описывать стараюсь очень подробно, так как сам очень не люблю, когда читаешь инструкцию и вдруг видишь "ну как это сделать, и так понятно". А может мне не понятно? И еще: не судите строго, что я делаю много ненужных действий (как Вы поймете впоследствии). Я это делаю специально, чтоб максимально ознакомить с возможностями системы. Дальше каждый сам для себя решит, что делать стоит, а что - нет, и как ему делать удобнее.
Создаем проект
Итак, считаем, что мы начинаем с нуля, поэтому создаем проект. Сделать это можно в меню "File/New/Project".
Altium Designer просит нас выбрать тип проекта. Мы собираемся изготовить печатную плату, поэтому выбираем тип "PCB Project". При этом нужно указать его имя и местоположение.
Если мы посмотрим в проводнике (или любом файловом менеджере), то увидим, что в указанном местоположении на диске появился файл проекта.
Для начала нам необходимо подготовить библиотеки схемных элементов (УГО) и посадочных мест. В Altium Designer они хранятся в разных файлах.
Создаем схемотехническую библиотеку (УГО)
Начнем с библитеки схемных элементов. С помощью меню "File/New/Library/Schematic Library" создадим сам файл библиотеки.
В дереве проекта появилась схемная библиотека. Если открыть ее двойным нажатием левой кнопки мыши, мы увидим пустую библиотеку. Нажатием на кнопку "Добавить" (повторю, у меня частично руссифицированная версия, и это был не мой каприз) создаем новый компонент.
Стоит сохранить библиотеку. Это позволит нам задать ей имя, да и просто не потерять результаты работы.
Указываем для нее имя.
Видим, что на диске появился файл библиотеки схемных обозначений.
Оговорюсь сразу, что в реальной жизни не нужно под каждый проект создавать библиотеку, а если библиотека у нас уже есть, ее нужно подключить к проекту, чтобы можно было ее использовать.
Вернемся к нашей новосозданной библиотеке. Как Вы помните, мы успели создать элемент-пустышку.
Теперь пришло время сделать из него что-то стоящее. Нам нужен транзистор КТ-315. С него и начнем. Нажимаем кнопку "Правка".
Рисуем УГО транзистора
Открывается окно свойств компонента. Как мы видим, компонент действительно является пустышкой, этакой заготовкой.
Задаем компоненту имя и шаблон позиционного обозначения (VT для транзистора). Знак вопроса в шаблоне указывает на то, что в этом месте будет располагаться порядковый номер элемента с таким шаблоном.
Мы живем в России, поэтому рисовать позиционное обозначение будем в соответствии с ЕСКД (ГОСТ 2.730-73)
Нам неоходимо задать шаг сетки, так как привязка графики происходит по узла сетки. При этом нужно учесть, что выбирая шаг сетки с редакторе элементов мы должны попасть в ту сетку, которую потом планируем использовать в редакторе схем.
Выставляем шаг полмиллиметра.
Начинаем рисовать элемент. Для этого воспользуемся инструментом "Линия".
Однако, когда мы начинаем проводить линию, мы видим, что она совершенно не такая, как нам нужно. Линия строится из отрезков под 90 градусов.
Для переключения режима используется нажатие на кнопку "Пробел" непосредственно в режиме проведения линии (не до выбора инструмента, а во время рисования).
Первым у нас появляется вариант линии под 45 градусов.
Затем снова под 45 градусов, но немного с другим расположением косой и прямой линий.
И, наконец, нам дают провести линию под свободным углом, что нам и требуется.
Мы проводим обе линии (эмиттера и коллектора транзистора). Если мы хотим более точно задать координаты концов отрезков, мы можем их напрямую отредактировать. Для этого выделяем нужный отрезок, и нажимаем правую кнопку мыши. В выпавшем меню выбираем пункт "Properties" (Свойства).
Появляется окно, позволяющее редактировать свойства отрезка.
На второй вкладке (Базовые точки) мы видим координаты всех сегментов. Выделив поле мышкой, мы можем ввести значение координаты непосредственно с клавиатуры.
Итак, перед нами почти готовое УГО транзистора. Не хватает только стрелочки эмиттера. В PCAD эту стрелочку рисовали вручную, графикой. В Altium Designer ситуация другая.
Выделяем нужный отрезок и снова выбираем пункт "Properties".
На первой вкладке (Графика) можно выбрать оформление концов отрезков, в том числе с помощью стрелки. Выбираем нужный нам вариант.
Всё, теперь наш транзистор готов.
Но есть одно "Но", про которое я говорил выше: нам нужно учесть, что контакты (мы их пока не ставили, об этом позже) желательно расположить так, чтобы они попадали в сетку схемного редактора. Я планирую использовать там шаг 5 мм, а если посмотреть рисунок чуть выше (где показаны координаты точек), то в эту сетку мы не попадаем.
Поэтому первое желание - подвинуть элемент так, чтобы он попал в сетку. Что мы и сделаем. Выделяем все отрезки...
... и выбираем инструмент "Переместить выбранные объекты".
После чего указываем левой кнопкой мыши начальную (базовую) точку, от которой мы будем проводить перемещение, а вторым нажатием указываем, куда эта точка должна переместиться (вместе с выделенными элементами графики).
Все точки у нас попали в сетку, кроме "хвостика" базы.
А его мы отредактируем вручную, как я говорил выше.
Теперь у нас всё лежит в сетке 5 мм. Позже Вы увидите, что на данном этапе заморачиваться на этом не было смысла.
На всякий случай сохраним библиотеку (сохраняется не элемент, а вся библиотека).
Но те, кто работал с другими САПР, спросят меня: графика - это замечательно, но для того, чтобы использовать компонент, нужны контакты (пины), разве нет? Спросят, и будут правы.
Расставим выводы на нужные места.
Размещаем вывод базы. Видим, что у нас появились какие-то непонятные цифры (в моём случае цифры 6).
Это имя контакта (откуда Альтиум их берёт по умолчанию - загадка). Нам нужно изменить имя, да и вообще показывать его смысла нет никакого. Выделяем вывод (не линию, а именно пин) и нажимаем правую кнопку мыши. В выпавшем меню выделяем "Properties".
Перед нами окно свойств вывода. Вводим ему имя (Б - база) и обозначение (по сути номер, оно потом будет использовано при связывании с посадочным местом).
Так как отображать имя и обозначение для транзистора нам нет никакого смысла, то снимаем галочки справа от полей ввода.
Так выглядит сейчас наш транзистор. На базе виден небольшой крестик. Это, собственно, и есть вывод.
Ставим выводы на коллектор и эмиттер.
Редактируем их свойства.
Выводы расположить под углом не получится, поэтому получился такой паучок (но всё в рамках ЕСКД).
Создаем библиотеку посадочных мест
Как я уже говорил, в Altium Designer библиотеки УГО и посадочных мест - это два разных файла. Поэтому прежде чем мы начнем рисовать посадочное место под КТ-315 нам необходимо этот файл библиотеки создать.
Создаем посадочное место КТ-315
В окне дерева проекта у нас появилась библиотека посадочных мест. Открыть ее можно, дважды кликнув по ней левой кнопкой мыши.
Для того, чтобы создать новое посадочное место, нужно нажать правую кнопку мыши в окне списка компонентов (на рисунке в левом верхнем углу) и выбрать "создать пустой компонент".
Сохраняем библиотеку, выбрав ей имя.
На диске появился отдельный файл этой библиотеки, который мы, при желании, можем даже скопировать и отнести на другой компьютер.
Следующее, что нам нужно сделать: задать свойства библиотеки, а конкретно единицы измерения. Для этого на поле графики компонента (в теории любого, свойства едины для всей библиотеки, но у нас он пока один) нажимаем правую кнопку мыши и выбираем пункт "Опции библиотеки".
В параметрах платы выставляем метрические единицы измерения.
Дважды кликнув по имени компонента мы откроем окно его свойств.
В этом окне можно задать имя компонента, высоту (по максимальной точке) и описание. Русские буквы работают без проблем. После ввода нажимаем кнопку "Ok".
Вводим нужные нам значения.
Рисовать КТ-315 будем на основе его описания. Оно есть только в таком виде.
Начнем с размещения контактов, контуры корпуса нарисуем позже.
Естественно (по-крайней мере для меня, что средний контакт элемента будет находиться в начале координат). Лично мне так удобнее, потому что проще вращать элемент на плате.
Используем инструмент "Разместить контактную площадку".
Нажатием левой кнопки мыши указываем, куда поставить площадку.
Все площадки по умолчанию имею номер и описание "0". При выделенной площадке нажимаем правую кнопку мыши и выбираем пункт "Свойства".
Открывается окно свойств со значениями по умолчанию.
Первым делом установим размеры и форму контактной площадки. Также установим значение "Обозначение". Это то самое поле, которое мы задавали и в описание контакта УГО и которое служит для дальнейшего связывания условного обозначения и посадочного места.
Теперь нам нужно расставить остальные контактные площадки. Обычно я копирую первую созданную (ведь я уже настроил ее форму и размеры), а далее вставляю ее по нужным координатам.
А чтобы проще было расставлять, я стараюсь делать шаг равным шагу контактов (либо кратным ему). Потом можно просто "шагать" стрелками на клавиатуре и вставлять, где нужно.
В данном случае шаг контактов равен 2,5 мм. Этот же шаг я устанавливаю для сетки. Можно поставить и 0,5 мм, но тогда будет нужно сделать пять "шагов".
Итак, я вставил все три контактные площадки и настроил им описания с учетом описаний в схемном обозначении.
Пришло время нарисовать контур корпуса. Тут каких-то четких рекомендаций и правил нет. Есть механические слои, которые каждый может использовать на своё усмотрение. А кто-то вообще ограничивается шелкографией.
Лично я использую для верхнего слоя контуров слой Mechanical 1. Это немаловажная оговорка, насчет верхнего слоя контуров. Я учился сам, на своих ошибках. И в самом первом проекте при попытке сгенерировать сборочный чертеж получил мешанину из элементов, чтоящих на обоих сторонах платы.
С тех пор я создаю пару слоёв Mechanical 1/Mechanical 2 (для верхнего и нижнего слоев соответственно). Как это сделать, мы узнаем позже.
А сейчас нам необходимо включить слой Mechanical 1 (если он не включен по умолчанию). Для этого идем в меню "Инструменты/Цвет слоёв".
В моем случае мы видим, что слой и так включён (чтобы понять это не нужно было заходить сюда, его видно в нижнем поле списка активных слоёв).
Если слой не включен, снимаем галочку "Показать только включенные", находим его и ставим галочку "Включён".
Находим слой в нижнем списке слоёв.
Выбираем слой как активный нажатием на него.
Выбираем инструмент рисования "Линия".
И отрисовываем контур. Рисуем как нам удобно и как нам хочется видеть элемент на сборочном чертеже. Как я говорил, каких-то правил нет.
Настало время нарисовать шелкографию. Для шелкографии в Altium Designer уже предопределён слой "Top Overlay" (для верхнего слоя).
Рисуем шелкографию. Помните, что на шелкографию растространяются требования производителя по минимальной толщине и отступу от металлизации.
Если нам нужно изменить толщину отрезка, то мы выделяем его и нажимаем правую кнопку мыши. В выпадающем меню выбираем пункт "Свойства".
И изменяем значение толщины линии на нужное нам.
Чтобы не редактировать все отрезки по отдельности, можно выделить их (левой кнопкой мыши с нажатым "шифтом")...
...либо выделяя в окне списка примитивов графики компонента.
После того, как мы выделили все нужные нам отрезки, мы нажимаем на клавиатуре кнопку F11 (групповое редактирование).
И изменяем нужный нам параметр.
На этом считаем, что посадочное место КТ-315 у нас готово, как привязать к нему STEP-модель для трехмерного моделирования узнаем в отдельной статье. Теперь нужно связать между собой условное обозначение и посадочное место.
Связываем УГО транзистора с посадочным местом КТ-315
Для того, чтобы связать условное позиционное обозначение и посадочное место, мы возвращаемся в редактор УГО.
Открываем нужный нам элемент. И под его графическим обозначением мы видим одно (сейчас оно пустое) с кнопкой "Add Footprint".
Теоретически мы может привязать к схемному обозначению много чего. Но сейчас мы именно делаем привязку к посадочному месту.
Поэтому жмём "Add Footprint".
Появляется окно выбора модели компонента на плате. Нажимаем кнопку "Обзор".
И видим список всех посадочных мест, которые есть в библиотеках, включенных в наш проект (переключать библиотеку нужно вручную в выпадающем списку в верхней части окна).
Выбираем нужный и нажимаем "Ok".
Видим, что теперь у нас отображается имя и даже отрисовка модели (в этом случае я уже прицепил STEP-модель, поэтому мы видим оранжевый прямоугольник).
Нажатием кнопки "Ok" закрываем окно и видим, что теперь у нас окно под схемным обозначение уже не пустое. Там указано посадочное место.
Если мы выделим компонент в окне списка компонентов библиотеки, то увидим связку контактов схемного элемента (левый столбец) и посадочного места (правый столбец). Настоятельно рекомендую проверить вручную, хотя на моей памяти Altium не ошибался.
Ну, с транзистором мы закончили, пришло время идти дальше. Я бы мог не показывать создание еще одного компонента (да и не создавать его, у меня и так в рабочих библиотеках всё есть), но решил показать немного другой случай с точки зрения посадочного места. Транзистор у нас имеет аксиальные выводы, а в качестве второго примера мы создадим посадочное место с планарными выводами. И это будет резистор Р1-12.
Начнем с создания нового схемного элемента. Нажимаем кнопку "Добавить"...
Создаем УГО резистора
Дальше всё идет так же, как было в случае с транзистором. Сильно останавливаться уже не буду. Задаем имя компонента.
Видим, что он появился в библиотеке.
Правим компонент.
Изменяем свойства по умолчанию...
...на нужные нам.
Снова руководствуемся ЕСКД для отрисовки УГО элемента.
Рисуем, создаем выводы, редактируем их свойства.
В данном случае я не захотел рисовать отдельные линии выводов и вообще сделал длину контактов нулевой. Никто нам этого не запрещает.
Получился такой вот резистор.
Создаем посадочное место Р1-12
Переходим в редактор посадочных мест. Создаем новое пустое посадочное место (цитировать кривую руссификацию даже не хочу).
В списке посадочных мест появился пустой компонент. Пока всё так же, как и с транзистором.
Дважды кликаем по нему левой кнопкой мыши, задаем имя, описание и высоту.
Вопрос: а откуда мы знаем высоту и габариты в целом? Вот, я нашел описание одного из производителей Р1-12, фирмы Эркон.
В данном случае я решил начать с рисования контура корпуса.
Теперь надо разместить контактную площадку. Опять все, как и раньше.
Разместили площадку. И вот тут начались нестыковки... Altium нам разместил площадку с отверстием!
Чтобы исправить ситуацию и сконфигурировать тип площадки, нажимаем правую кнопку мыши и выбираем пункт "Свойства".
Для того, чтобы площадка стала планарной, нам небходимо в пункте "Свойства/Слой" задать не MultiLayer, а Top Layer. Ну и задать размеры и форму.
Теперь наш резистор "одет" в планарную контактную площадку.
Копируем и задаем описание второму контакту.
Рисуем шелкографию. Тут уже снова дело вкуса. Многие делают разную шелкографию для резисторов и конденсаторов, чтобы монтажникам было проще работать. Я тоже так делаю. Но какую конкретно делать - каждый решает сам для себя.
Кстати, после подключения STEP-файла можно сразу посмотреть результат своей работы уже в трехмерном виде прямо в редакторе посадочных мест.
Связываем между собой условное обозначение и посадочное место. Снова ничего нового...
Копирование УГО из библиотеки в другую библиотеку
Често говоря, рисовать все с нуля уже немного лень (а у меня есть уже эти элементы), да и надо показать еще одну возможность. предположим, у Вас есть библиотеки, из которых Вы бы хотели скопировать уже готовые схемные обозначения и посадочные места.
Для схемной библиотеки и библиотеки посадочных мест алгоритмы такого копирования существенно отличаются.
Начнем со схемной библиотеки. В данном случае всё вообще очень просто.
Открываем библиотеку, откуда мы будем копировать схемный элемент.
Находим и выделяем элемент для копирования.
Выбираем меню "Инструменты/Копировать компонент".
Выбираем библиотеку, куда необходимо скопировать данный элемент.
И наслаждаемся результатом. У нас даже посадочное место связано и отображается.
И снова "есть одно но". Входим в "связку" с посадочным местом и видим, что ссылка на посадочное место вовсе не на нашу библиотеку, а на ту, откуда мы копировали элемент. Возможно, это было бы и нестрашно, но если мы захотим отнести эти библиотеки на другой компьютер, то мы просто потеряем посадочное место.
Конечно, если у нас будет готовая плата, то посадочные места не исчезнут, более того, можно из платы "выковорять" все эти посадочные в новую библиотеку. Но зачем?
Поэтому надо скопировать и посадочное место.
Копирование посадочного места из библиотеки в другую библиотеку
Для проверки себя открываем библиотеку посадочных мест и видим, что, действительно, такого посадочного места там нет.
Поэтому открываем библиотеку, откуда нам нужно его скопировать.
Находим нужное посадочное место, нажимаем правую кнопку мыши и выбираем пункт "Копировать".
Возвращаемся в нашу библиотеку, жмем в списке компонентов правую кнопку и говорим "Paste 1 Component".
Видим, что в нашей библиотеке появилось новое посадочное место. Настраивать уже ничего не нужно, все настройки скопировались.
Просто и банально как Копировать/Вставить в Ворде.
Более того, если мы вернемся в редактор УГО и снова зайдем в "связку", то увидим, что Altium сам изменил ссылку с исходной библиотеки на нашу.
Назначение нескольких посадочных мест одному УГО
Тот факт, что одно посадочное место может использоваться для разных УГО, никого не удивляет. Удивляло бы, если бы было по-другому.
Но можно и к одному УГО привязать несколько посадочных мест (бывают же элементы в разных корпусах).
Просто нажмите "Add Footprint" еще раз и добавьте другое посадочное место.
В дальнейшем в свойствах элемента на схеме Вы сможете выбрать, какое именно посадочное использовать. Либо даже создавать исполнения с разними посадочными.
Многоячеечные (многовентильные) компоненты
Естественно, никто не заставляет Вас рисовать огромный элемент для стоногой микросхемы. Разделите их на вентили (по банкам, или по другому принципу).
Скрытие неиспользуемых выводов
У многих микросхем есть ножки, которые помечены как "Не подключать". Можно их просто не рисовать в схемном элементе, но если опасаетесь, можно нарисовать и скрыть с глаз долой. Они будут, они будт связаны с ногами в посадочном месте, но... их не будет.
Вот тут я "накидал" такие ножки под обозначением.
Потом разместил их в неиспользуемых местах (внутри элемента и вне сетки).
Выделил один. И сказал, что его нужно скрыть.
И он исчез.
В списке контактов он есть, но он серый.
Чтобы не делать это с каждым контактом, я выделил их все (левая кнопка мыши с шифтом), и нажал F11.
В окне группового редактирования я поставил галочку Hide. Обратите внимание, если мы редактируем по одиночке, галочку надо снять, а если групповым образом - поставить.
Всё, теперь эти контакты не мозолят нам глаза, но они есть.
Разная конфигурация металлизации контактов по слоям
Иногда необходимо сделать разные конфигурации металлизированного ободка в разных слоях. И такая возможность в Altium Designer тоже есть.
Входим в свойства контакта.
Сейчас на картинке выбран вариант, когда для верхнего, нижнего и внутренних слоёв можно задать независимые конфигурации.
Но можно пойти дальше: задать конфигурацию по стеку слоев. То есть для каждого слоя независимо, даже для внутренних.
Если мы нажмём кнопку "Редактировать стек", то увидим такую вот картинку. В этом окне можно редактировать параметры для каждого из слоёв.
А если снять галочку "Только используемые слои", то сможем задать конфигурацию "про запас".
Использование помощника создания компонентов
Рисовать какой-нибудь корпус с очень большим числом ног - перспектива безрадостная. Конечно, можно нарисовать одну ножку, а остальные раскопировать с помощью создания массива, но это не исключает необходимости потом давать описание к каждой из них.
Поэтому хочется иметь в лице Altium Designer помощника, который создаст нам посадочное место в соответствии с указанными параметрами. И такой помощник в Altium Designer есть. Запустить его можно нажав правую кнопку мыши в поле списка посадочным мест библиотеки и выбрав пункт "Помощник создания компонентов".
Появится приветственное окно, в котором нужно нажать кнопку "Далее". Ну, либо "Отмена", если Вы передумали.
Altium Designer умеет создавать посадочные места многих типов. Для демонстрации я создам BGA-корпус. Не забываем в этом окне выставить нужные единицы измерения.
Вводим диаметр контактной площадки.
Для этого просто выделяем поле, где написано значение по умолчанию (в моем случае 1,2 мм) и записываем новое значение.
Далее нужно ввести растояние между контактами.
...толщину шелкографии (да, это шелкография, корпус нам нужно будет нарисовать самим, если захотим).
Выбираем стиль нумерации контактов. Кто работал с BGA, знают, что есть два стиля - сквозная нумерация и буквенно-цифровая.
Выбираем формат заполнения контактами поля под корпусом. Опять таки, весьма гибкая вещь.
Мне нужен корпус, где полное заполнение.
Даем имя посадочному месту.
И помощник с нами прощается еще одним окном.
Вот, что у нас получилось в результате его работы. Единственный недостаток - в нулевой координате расположен не центр микросхемы (как лично я люблю), а первый контакт.
Но это я могу поправить и вручную.
Всё, осталось только нарисовать контур в слое Mechanical 1. Всё, вместе с созданием скринов экрана, заняло порядка 5-7 минут.
Помощник создания символов УГО
Такой помощник в Альтиум тоже есть, но, если честно, он мне показался весьма бесполезным. Но на вкус и цвет товарищей нет.
Найти его можно в меню "Иструменты/Symbol Wizard" (при этом нужно находиться в редакторе УГО, как, думаю, Вы догадались).
Ну и вот нечто подобное нам может предложить данный помощник. Ничего более подробно про него рассказать и не могу.
Оставьте свой комментарий
Войдите, чтобы оставлять комментарии
Оставить комментарий как гость