Работа с классами на схеме и PCB

Краткий обзор

В этой статье объясняется, как работают классы в Altium Designer, для чего они используются и где их можно задавать: на схеме, на печатной плате и в Constraint Manager. Вы узнаете, чем автоматически создаваемые классы отличаются от пользовательских, как создавать классы компонентов и цепей с помощью параметров схемы и как классы передаются при синхронизации проекта. Также рассматривается роль настроек проекта, таких как параметры генерации классов (Class Generation) и сравнения (Comparator). Это поможет вам понять, как определения классов переносятся на печатную плату, и эффективнее работать с группами цепей и компонентов. Читайте дальше, чтобы узнать, как использовать классы в процессе проектирования.

- Узнайте, какие типы классов поддерживаются, где можно задавать каждый из них и чем автоматические классы отличаются от пользовательских.
- Посмотрите, как создавать классы компонентов и цепей на основе схемы с помощью параметров, директив Parameter Set и Blanket.
- Разберитесь, как Constraint Manager и настройки синхронизации проекта влияют на то, какие классы создаются и переносятся на печатную плату.
Узнайте больше с ИИ:

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

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

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

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

Подход к определению ограничений проекта — Constraint Manager или Design Rules — выбирается при создании проекта. Использование Constraint Manager задается в диалоговом окне Create Project. Подробнее см. в разделе Определение требований к проекту с помощью Constraint Manager. При необходимости также можно импортировать настройки из параметров схемы в Constraint Manager.

Поддерживаемые классы и места их определения

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

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

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

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

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

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

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

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

Восемь компонентов охвачены директивой Blanket, к которой подключена директива набора параметров с добавленным параметром Component Class Name.

 

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

Чтобы добавить цепь (или цепи в шине либо сигнальном жгуте) в класс цепей печатной платы с помощью параметров, подключите параметр к этой цепи, шине или жгуту. Для подключения параметров разместите директиву Набор параметров так, чтобы ее конец касался цепи, шины или жгута, а затем добавьте в эту директиву параметр Net Class Name.

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

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

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

 

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

Вы также можете добавить несколько цепей в класс цепей печатной платы, разместив директиву Blanket, охватывающую все эти цепи. Директива Blanket позволяет применять директиву ко всем цепям в охваченной области: либо определяемым идентификатором цепи, например меткой цепи или портом питания внутри этой области, либо имеющим хотя бы одну конечную вершину внутри Blanket.

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

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

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

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

С помощью Constraint Manager Object Class Explorer можно просматривать и редактировать все классы проекта. Все классы, определенные в Constraint Manager, передаются на печатную плату при синхронизации проекта независимо от настройки параметров на вкладке 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 — формируются на основе структуры проекта и могут включать шины/сигнальные жгуты (классы цепей), содержимое листов (классы компонентов) и структуру проекта (структурные классы). Эти классы создаются при переносе проекта со схемы на печатную плату и доступны независимо от выбранного подхода к управлению ограничениями проектирования (Constraint Manager или Design Rules). Они недоступны в редакторе схем на этапе разработки схемы — например, при просмотре на панели Navigator.

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

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

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

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

  • Автоматические классы 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 (), а классы проекта — в Object Class Explorer редактора PCB (). Этот подход используется по умолчанию в новом проекте.

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

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

Обозреватель классов объектов PCB

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

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

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

Обозреватель классов объектов редактора PCB (Design » Classes) предоставляет доступ ко всем типам классов, поддерживаемым в редакторе PCB.

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

 

Editing a Class Directly

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

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

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

Чтобы выделить объекты с учётом логических соединений на схеме (цепей, соединённых метками цепей, портами и т. п.), удерживайте Alt при щелчке по цепи в редакторе схем. При этом вся цепь, шина или жгут будут выделены на каждом листе проекта, а масштаб будет изменён так, чтобы показать выбранные объекты цепи. Визуальное отображение результатов на целевых листах определяется опциями Cross Select Mode и Highlight Methods на странице «Система — Навигация» диалогового окна Preferences ().

Включите режим перекрёстного выделения для перехода между редакторами.

Работа с классами в редакторе PCB

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

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

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

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

 

 

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

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

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

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

В редакторе PCB можно создать класс из текущего набора выделенных объектов: цепей, компонентов или полигонов.

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

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

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

 
Net class

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

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

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

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

Выполните команду 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.

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

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

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

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

Концепция структурных классов

Структурный класс — это особый тип класса, элементами которого могут быть классы любого типа, включая классы цепей, компонентов, слоев, контактных площадок, соединений From-To, дифференциальных пар, каналов проекта, полигонов, а также другие структурные классы. Благодаря автоматическому созданию структурного класса для каждого листа схемы проекта, содержащего компоненты и/или цепи, при переносе проекта на печатную плату структура проекта точно воспроизводится на стороне PCB.

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

Структурные классы отражают иерархию проекта, сформированную листами схемы. Состав классов компонентов и цепей в каждом структурном классе зависит от параметров, заданных при создании классов компонентов и цепей на основе исходных листов схемы.

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

Автоматическое создание структурных классов

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

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

  • Каждому автоматически созданному структурному классу присваивается имя на основе обозначения символа листа, представляющего соответствующий подчиненный лист. Исключение составляет лист верхнего уровня: для него имя структурного класса формируется из имени файла листа.

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

Создание структурных классов вручную

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

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

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

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

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

  • Все Classes, входящие в состав выбранного структурного класса.

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

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

Режим Structure Classes

Structure Classes region

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

Classes region В средней области панели перечислены все классы, входящие в состав структурных классов, выбранных в области выше. Одинарный щелчок изменяет масштаб и фильтрует отображение, а двойной щелчок позволяет отредактировать входящий в состав класс.
Class Members

В нижней области панели перечислены все объекты, входящие в состав классов, выбранных в области выше. Одинарный щелчок приближает выбранный объект, а двойной щелчок позволяет отредактировать его свойства.

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

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

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

InStructureClass — проверяет, входит ли класс объектов в указанный структурный класс.

Пример правила зазора между объектами, входящими в состав разных структурных классов.
Пример правила зазора между объектами, входящими в состав разных структурных классов.

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

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

 

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

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

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

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

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

Contents