Working with Classes on a Schematic & PCB

Класс — это именованная группа объектов. Помимо того, что классы помогают проектировщику выбирать интересующие объекты при просмотре проекта, их также можно использовать для применения требований к проектированию ко всем объектам в этой группе, то есть в классе.

Классы могут генерироваться на основе структурных аспектов проекта, например: цепи или компоненты на одном листе, либо цепи в одной шине. К таким структурным, автоматически создаваемым программой классам относятся: Component, Net, Design Channel и Structure.

Также можно создавать пользовательские классы: либо через Constraint Manager, если вам так удобнее задавать требования к проектированию, либо с помощью параметров схемы и классов PCB, если вы предпочитаете подход на основе правил проектирования.

Классы — отличный способ управлять логическими группами компонентов и цепей; здесь требования к трассировке применяются к классу LEDS в Constraint Manager.
Классы — отличный способ управлять логическими группами компонентов и цепей; здесь требования к трассировке применяются к классу LEDS в Constraint Manager.

Подход, используемый для задания проектных ограничений — либо Constraint Manager, либо Design Rules, — выбирается при первом создании проекта. Опция использования Constraint Manager задается в диалоговом окне Create Project. Подробнее см. Defining Design Requirements Using the Constraint Manager. При необходимости также можно import settings from schematic parameters into the Constraint Manager.

Поддерживаемые классы и где они задаются

Поддержка определения классов изначально была введена в редакторе PCB через Object Class Explorer. После этого добавили поддержку определения наиболее часто используемых классов в редакторе схем — то есть компонентов и цепей. Компоненты можно добавлять в класс, добавив к компоненту параметр ClassName, а цепи — присоединив директиву набора параметров, содержащую параметр Net Class Name. Эти определения классов обнаруживаются и переносятся в PCB при синхронизации проекта.

Появление Constraint Manager обеспечило более простой и структурированный подход к заданию требований, таких как классы, наряду с другими физическими и электрическими требованиями проекта. Ограничения — это настройки уровня проекта; их можно редактировать в любое время как из редактора схем, так и из редактора PCB, но синхронизировать всё равно нужно через систему ECO.

Если одновременно присутствуют и параметрические определения классов цепей, и классы цепей в Constraint Manager, то параметрические определения не применяются. Таблица в сворачиваемом разделе ниже содержит сведения обо всех поддерживаемых типах классов и о том, где их можно задавать.

Определение классов с помощью параметров схемы

Вы можете создавать пользовательские классы компонентов и классы цепей, добавляя или присоединяя параметр к соответствующему компоненту или цепи. Затем будут созданы классы компонентов и цепей PCB, если включены соответствующие флажки User-Defined Classes на вкладке Class Generation диалогового окна Options for Project. Подробнее см. configuring these options.

Пользовательский класс компонентов

Чтобы добавить компоненты в класс компонентов, добавьте к компоненту параметр, у которого строка параметра Name установлена в ClassName, а строка параметра Value — в имя классаi. Параметр нужно добавить к каждому компоненту, который вы хотите включить в класс. Это можно сделать одним действием редактирования: сначала выделите все компоненты, затем добавьте параметр на панели Properties. Либо, если компоненты расположены рядом, можно использовать директиву Blanket с присоединённой директивой Parameter Set.

Выбрано восемь компонентов, и параметр ClassName добавлен ко всем из них с помощью панели Properties.

Эти восемь компонентов покрыты директивой Blanket, и к ней присоединена директива Parameter Set, в которую добавлен параметр Component Class Name.

 

Пользовательский класс цепей

Чтобы параметрически добавить цепь (или цепи в шине либо сигнальном жгуте) в класс цепей PCB, нужно присоединить параметр к этой цепи/шине/жгуту. Параметры к цепи можно присоединять, разместив директиву Parameter Set так, чтобы её конец касался цепи/шины/жгута, а затем добавив в эту директиву параметр Net Class Name.

Эту директиву Parameter Set можно копировать и вставлять в разные места на схеме, чтобы добавить несколько отдельных цепей в один и тот же класс цепей PCB. В качестве альтернативы можно использовать директиву Blanket.

На отдельных цепях размещены семь директив Parameter Set, и параметр Net Class Name добавлен ко всем из них с помощью панели Properties.

Все цепи питания покрыты директивой Blanket, и к ней присоединена директива Parameter Set, в которую добавлен параметр Net Class Name.

 

Использование Blanket для применения директивы к нескольким цепям

Вы также можете добавить несколько цепей в класс цепей PCB, разместив директиву Blanket, которая накрывает все эти цепи. Назначение Blanket — позволить применить директиву ко всем цепям под «покрывалом» (либо определяемым по идентификатору цепи, например Net Label или Power Port, находящимся под Blanket, либо цепи, у которой хотя бы одна конечная вершина находится внутри Blanket).

Вместо того чтобы размещать директиву Parameter Set так, чтобы она касалась проводника, разместите её так, чтобы она касалась края Blanket, как показано на изображении ниже. Обратите внимание: имя класса цепей PCB задаётся значением Parameter внутри объекта Parameter Set, а не отображаемым именем объекта Parameter Set. В примере ниже Parameter Set также используется для задания правила проектирования ширины трассировки.

Использование директивы Blanket для объединения всех цепей под ней в класс цепей PCB с именем Power. Обратите внимание: имя директивы Parameter Set не используется для именования класса — это только визуальная подсказка.
Использование директивы Blanket для объединения всех цепей под ней в класс цепей PCB с именем Power. Обратите внимание: имя директивы Parameter Set не используется для именования класса — это только визуальная подсказка.

Определение классов в Project Constraint Manager

Классы — ключевая возможность при работе с Constraint Manager, позволяющая легко применять и настраивать проектные ограничения сразу для множества цепей. В Constraint Manager классы добавляются, редактируются и удаляются командами контекстного меню (по правому клику), как показано в видео ниже. Цепи можно добавлять по одной или выделять несколько стандартными приёмами Windows, а затем добавлять их в класс.

Constraint Manager Object Class Explorer можно использовать для просмотра и редактирования всех классов в рамках проекта. Все классы, определённые в Constraint Manager, переносятся в PCB при синхронизации проекта независимо от настроек опций на вкладке Class Generation диалогового окна Options for Project.

Простая демонстрация создания класса цепей в Constraint Manager.

Подробнее см. Constraint Manager.

  • Обратите внимание: классы компонентов нельзя определить в Constraint Manager; необходимо использовать параметрический подход

  • См. этот раздел, чтобы узнать больше о Constraint Manager Object Class Explorer.

Классы, генерируемые при переносе проекта

Создание автоматически генерируемых классов, а также классов, получаемых из параметров схемы, настраивается на вкладке Class Generation диалогового окна Options for Project.

  1. Automatically generated classes - получаемые из структуры проекта; могут включать шины/жгуты (классы цепей), содержимое листа (классы компонентов) и структуру проекта (классы структуры). Эти классы генерируются при переносе проекта со схемы в PCB и доступны независимо от выбранного подхода управления проектными ограничениями (Constraint Manager или Design Rules). Они недоступны в редакторе схем во время ввода схемы — например, при просмотре на панели Navigator.

  2. User-defined classes - получаемые из параметров проекта, добавленных к компоненту или цепи. Обратите внимание: классы, определённые в Constraint Manager, не управляются этими опциями.

Генерация этих классов настраивается на вкладке Class Generation tab диалогового окна Options for Project. Обратите внимание: какие классы в итоге синхронизируются с PCB, определяется опциями на вкладке Comparator; убедитесь, что они настроены должным образом.

Используйте опции на вкладке Class Generation, чтобы настроить генерацию производных классов и пользовательских классов при синхронизации проекта.
Используйте опции на вкладке Class Generation, чтобы настроить генерацию производных классов и пользовательских классов при синхронизации проекта.

Когда ограничения проекта определены в Constraint Manager:

  • Automatic classes are всё равно генерируются.

  • Пользовательские классы компонентов на основе параметра ClassName are всё равно генерируются.

  • Пользовательские классы цепей, создаваемые добавлением параметра Net Class Name are not, генерируются. Для проектов, использующих Constraint Manager, при переносе проекта вы получите предупреждение о наличии неимпортированных директив в диалоге Engineering Change Order (). Чтобы устранить это, классы цепей, определенные в этих директивах набора параметров, можно преобразовать в классы Constraint Manager, нажав кнопку  в Constraint Manager (). Появится диалог Refresh Constraint Manager, где можно просмотреть детали изменений перед их применением. После преобразования директив их внешний вид на листе изменится, показывая, что теперь это классы Constraint Manager и они больше не редактируются как директивы (). Изменения этих классов теперь выполняются через Constraint Manager.

Создание классов в PCB-редакторе

PCB-редактор Altium Designer изначально создавался как редактор, ориентированный на правила проектирования: требования к плате задавались в диалоге PCB Rules and Constraint Editor (), а классы проекта определялись в PCB-редакторе Object Class Explorer (). Это подход по умолчанию для нового проекта.

Если при создании проекта включена опция Constraint Management, то требования настраиваются в Constraint Manager () вместо диалога PCB Rules and Constraint Editor. В этой ситуации полный набор классов по-прежнему можно определять и редактировать в PCB-редакторе Object Class Explorer, а подмножество типов классов, которые можно синхронизировать между схемой и PCB, также редактируется в Object Class Explorer () Constraint Manager.

Изменения, сделанные в одном редакторе классов, становятся доступными в другом редакторе после сохранения.

PCB Object Class Explorer

Классы можно добавлять, редактировать и удалять в Object Class Explorer.

  1. Чтобы получить доступ и редактировать полный набор классов, доступных в PCB-редакторе, выберите Design » Classes в меню PCB-редактора, чтобы открыть Object Class Explorer

  2. Constraint Manager Object Class Explorer также можно использовать для редактирования классов, которые синхронизируются между схемой и PCB. Чтобы открыть его, щелкните правой кнопкой мыши в Constraint Manager и выберите Classes » Class Explorer в контекстном меню.

Object Class Explorer PCB-редактора (Design » Classes) предоставляет доступ ко всем типам классов, поддерживаемым в PCB-редакторе.

Object Class Explorer Constraint Manager (меню по правому клику) предоставляет доступ ко всем типам классов, которые можно синхронизировать обратно в проект схемы.

 

Editing a Class Directly

Существует несколько способов редактировать класс напрямую, не обращаясь к нему через Object Class Explorer — они рассматриваются в разделе «Работа с классами» ниже. Во всех случаях используется диалог Edit <ObjectType> Class, который по сути является «облегчённой» версией Object Class Explorer. Различные диалоги Edit <ObjectType> Class бывают двух типов: один включает две кнопки Add/Remove Currently Selected in the Design Space () и появляется при вызове диалога из пространства проектирования; другой — без этих кнопок (), когда диалог вызывается из Constraint Manager. Описание элементов управления этого диалога см. в разделе Object Class Explorer.

Выбор между редакторами

Ключевая возможность для работы между различными редакторами — это Cross Select Mode: каждый компонент или цепь (net), выбранные в одном редакторе, также выбираются и в других редакторах. Cross Select Mode включается через меню Tools в любом редакторе, который это поддерживает (или нажатием сочетания клавиш Shift+Ctrl+X). Когда вы щёлкаете по компоненту или объекту цепи в одном редакторе, этот объект автоматически выбирается в других открытых редакторах.

Чтобы работать с логическими соединениями на схеме (цепи, соединённые метками цепей, портами и т. п.), удерживайте Alt и щёлкайте для выбора по цепи в редакторе схем. Это выберет всю цепь/шину/жгут на каждом листе проекта, выполняя масштабирование так, чтобы показать выбранные объекты цепи. То, как результаты визуально отображаются на целевых страницах, определяется параметрами Cross Select Mode и Highlight Methods на странице System – Navigation page диалога Preferences dialog ().

Включите режим Cross Select, чтобы перемещаться между редакторами.

Работа с классами в PCB Editor

Классы — это логические группы, определяемые разработчиком, и поэтому они являются отличным инструментом, помогающим структурировать, анализировать и проверять проект.

Просмотр классов

Панель PCB поддерживает просмотр PCB в самых разных режимах, например по цепям (Nets) или компонентам (Components), а для тех режимов, где это поддерживается, также можно просматривать по классам этих объектов. Режимы, поддерживающие просмотр по классам, включают: компоненты, цепи, дифференциальные пары, xSignals, полигоны, а также структурные классы. 

После выбора режима просмотра в верхней части панели, в верхнем разделе панели будет показан список всех доступных классов, как в примерах ниже. Если включён режим cross-select, то соответствующие объекты (где применимо) будут также выбраны и на листах схем.

 

 

Используйте панель PCB для просмотра классов объектов на плате. Когда включён режим cross-select, объекты также будут выбираться на листах схем.

  • Параметры в верхней части панели PCB определяют, как будет реагировать отображение при щелчке по объектуi. Поведение листов схем при перекрёстном выборе настраивается в диалоге Preferences, как описано в предыдущем разделе.

  • Нажмите F1, когда курсор находится в области панели, чтобы получить подробную информацию об этой области.

Создание класса из выбранных объектов

Вы можете создать класс из набора объектов, выбранных в данный момент в PCB editor, включая: цепи (nets), компоненты и полигоны.

Используйте панель PCB для просмотра классов объектов на плате. Текущие выбранные цепи можно добавить в новый класс — щёлкните правой кнопкой в области Classes панели.

Выберите компоненты в панели или на плате, затем щёлкните правой кнопкой в области Classes панели, чтобы добавить выбранные компоненты в новый класс. 

Создайте класс полигонов в Polygon Pour Manager.

 
Net class

Выберите как минимум один объект в каждой цепи в пространстве проектирования или выберите цепи в панели PCB. Затем выполните команду Create NetClass from Selected Nets из подменю Design » Netlist главного меню () или из подменю Net Actions контекстного меню по правому щелчку (). Либо, если цепи были выбраны в режиме Nets панели PCB, щёлкните правой кнопкой в области Classes панели, чтобы получить доступ к команде Add Class, как показано на слайдах выше. Подробнее см. Net Classes.

Component class Выберите компоненты в пространстве проектирования или на панели PCB. Затем щёлкните правой кнопкой в области Classes панели, чтобы получить доступ к команде Add Class, как показано на слайдах выше. Либо выберите команду Design » Classes, чтобы открыть Object Class Explorer, где можно создать новый класс и добавить в него выбранные компоненты.
Polygon class Выберите нужные записи полигонов в диалоге Polygon Manager dialog, затем нажмите кнопку New Polygon Class . Задайте имя нового класса полигонов в диалоге Object Class Name dialog.

Генератор классов компонентов

Ещё один способ создать класс компонентов — использовать Component Class Generator. Кнопка запуска генератора доступна в PCB Object Class Explorer и в диалоге Edit Component Class dialog.

Выполните команду Design » Classes, чтобы открыть PCB Object Class Explorer , щёлкните правой кнопкой по списку Component Classes слева и выберите команду New Class. Выберите новый класс в списке, затем нажмите кнопку Component Class Generator, чтобы открыть Component Class Generator. Либо щёлкните правой кнопкой в области Classes панели PCB (режим Components) и выберите Add Class. Задайте имя нового класса в диалоге Edit Component Class, затем нажмите кнопку Class Generator, чтобы открыть Component Class Generator.

Используйте Component Class Generator, чтобы быстро сформировать список компонентов для включения в класс. Используйте Component Class Generator, чтобы быстро сформировать список компонентов для включения в класс.

Работа со структурными классами

Altium Designer поддерживает автоматическое создание классов цепей и компонентов при переносе проекта из Schematic в PCB. Помимо этого, он также позволяет определять иерархическую структуру классов. По сути, это даёт возможность группировать на уровне листа классы компонентов и/или цепей в родительский класс, сформированный на основе этого листа. Этот класс может быть дочерним по отношению к родительскому классу уровнем выше — и так вплоть до верхнего листа в вашем проекте.

Каждый из таких сгенерированных родительских классов называется Structure Class. Структурные классы воспроизводят структуру документов схемы в домене PCB, что идеально подходит для расширенной навигации. Их также можно использовать в логических запросах, например при задании области действия правил проектирования или при фильтрации объектов в пространстве проектирования PCB.

Концепция структурного класса

Структурный класс — это особый тип класса, который может содержать в качестве своих членов любой тип классов, включая: классы цепей, классы компонентов, классы слоёв, классы площадок, классы from-to, классы дифференциальных пар, классы design channel, классы полигонов и другие структурные классы. Автоматически создавая структурный класс для каждого листа схемы в проекте — содержащего компоненты и/или цепи — при переносе проекта в PCB, можно достоверно представить структуру проекта на стороне PCB.

Иерархию проекта можно представить с помощью структурных классов: каждый класс соответствует одному листу схемы, с автоматически созданными подклассами, содержащими компоненты и/или цепи. Иерархию проекта можно представить с помощью структурных классов: каждый класс соответствует одному листу схемы, с автоматически созданными подклассами, содержащими компоненты и/или цепи.

Структурные классы отражают иерархический проект, созданный листами схем. Что касается классов компонентов и цепей внутри каждого структурного класса, состав членов зависит от options specified при генерации Component и Net Classes из исходных листов схем.

В PCB editor любой существующий класс можно добавить в структурный класс.

Автоматическая генерация структурных классов

Автоматическая генерация структурных классов из листов схем проекта настраивается на вкладке Class Generation диалога Options for Project dialog (Project » Project Options). Чтобы сгенерировать структурный класс из исходного листа схемы в проекте, включите соответствующий флажок Generate в столбце Structure Classes. Если для этого листа схемы также включены флажок Component Class и параметры Net Class Scope, они станут членами этого структурного класса.

Укажите, для каких листов схем нужно генерировать структурный класс, и должны ли включаться компоненты и цепи этого листа.
Укажите, для каких листов схем нужно генерировать структурный класс, и должны ли включаться компоненты и цепи этого листа.

  • Каждый автоматически сгенерированный класс структуры именуется с использованием обозначения (designator) символа листа (Sheet Symbol), который представляет соответствующий подлист. Исключение — верхний лист (top-sheet), где класс структуры именуется по имени файла листа.

  • Убедитесь, что включены соответствующие параметры Comparator () и ECO Generation ().

Ручное определение классов структуры

Как и другие типы классов в документе PCB, вы можете создавать и управлять классами структуры вручную в редакторе PCB. Это можно сделать на панели PCB, просматривая иерархию структуры классов, либо в диалоге Object Class Explorer (Design » Classes). В этом диалоге классы структуры определяются в папке Structure Classes, а в контекстном меню (по правому щелчку) доступны привычные команды для добавления, переименования или удаления классов по мере необходимости. Классы структуры могут включать любые типы классов, поддерживаемые для использования в PCB-проекте.

Создавайте и управляйте своими классами структуры так же, как и любыми другими типами классов в редакторе PCB, в диалоге Object Class Explorer.
Создавайте и управляйте своими классами структуры так же, как и любыми другими типами классов в редакторе PCB, в диалоге Object Class Explorer.

Просмотр иерархии структуры классов

В режиме панели PCB Structure Classes три основные области включают:

  • Список всех Structure Classes, определённых в данный момент для документа PCB; как автоматически сгенерированных из листов схемы, так и определённых в самом PCB.

  • Все Classes, которые являются определёнными членами выбранного класса структуры.

  • Отдельные Class Members внутри выбранного класса (компоненты, цепи и т. п.).

Установите режим панели PCB в Structure Classes, чтобы просматривать общую иерархию классов для документа PCB. 
Установите режим панели PCB в Structure Classes, чтобы просматривать общую иерархию классов для документа PCB. 

Режим Structure Classes

Structure Classes region

Верхняя область панели перечисляет все классы структуры, определённые в данный момент для документа PCB. Сюда входят классы, автоматически сгенерированные из исходных документов схемы проекта PCB (обозначаются значком ), а также классы, определённые вручную в самом документе PCB (обозначаются значком ). Щелчок по значку стрелки рядом с классом структуры раскрывает иерархию классов, являющуюся потомком этого класса. Развернув класс структуры верхнего уровня, можно увидеть всю иерархию. Одинарный щелчок — для масштабирования и фильтрации отображения (в соответствии с параметрами в верхней части панели). Двойной щелчок по классу — для его редактирования, правый щелчок — чтобы Add или Delete класс.

Classes region Средняя область панели перечисляет всех членов классов для класса(ов) структуры, выбранного(ых) в области выше. Одинарный щелчок — для масштабирования и фильтрации отображения, двойной щелчок — для редактирования класса-участника.
Class Members

Нижняя область панели перечисляет всех членов класса(ов), выбранного(ых) в области выше. Одинарный щелчок — чтобы приблизить к элементу, двойной щелчок — чтобы редактировать свойства этого элемента.

Щёлкните правой кнопкой мыши в любой области панели, чтобы открыть меню команд.

Использование классов структуры в логических запросах

Логические запросы — базовый подход, применяемый для нацеливания объектов в PCB-проекте. Их можно использовать при задании области действия правил проектирования, чтобы ограничить проект определённым образом, или при фильтрации объектов в рабочем пространстве. Язык запросов поддерживает использование Structure Class при построении логических выражений запроса. Следующее ключевое слово доступно в разделе PCB Functions – Membership Checks:

InStructureClass – проверяет, находится ли класс объекта в указанном Structure Class.

Пример правила зазора (clearance) между объектами-участниками, содержащимися в разных Structure Classes.
Пример правила зазора (clearance) между объектами-участниками, содержащимися в разных Structure Classes.

Это ключевое слово также можно использовать при создании логического запроса для выражения фильтра — чтобы быстро отфильтровать все низкоуровневые объекты-участники, являющиеся потомками указанного Structure Class.

Быстрая фильтрация всех объектов, принадлежащих определённому Structure Class, в рабочем пространстве проекта.
Быстрая фильтрация всех объектов, принадлежащих определённому Structure Class, в рабочем пространстве проекта.

 

AI-LocalizedЛокализовано с помощью ИИ
Если вы обнаружили проблему, выделите текст/изображение и нажмитеCtrl + Enter, чтобы отправить нам свой отзыв.
Доступность функциональных возможностей

Набор доступных функциональных возможностей зависит от вашего решения Altium – Altium Develop, редакция Altium Agile (Agile Teams или Agile Enterprise) или Altium Designer (на активной подписке).

Если вы не видите в своем ПО функцию, описанную здесь, свяжитесь с отделом продаж Altium, чтобы узнать больше.

Устаревшая документация

Документация Altium Designer больше не разделена по версиям ПО. Если вам необходим доступ к документации по старым версиям Altium Designer, посетите раздел Устаревшая документация на странице Прочие установщики.

Content