Altium Designer — Настраиваем правила разводки для отдельных компонентов

У начинающих разработчиков, работающих в САПР Altium Designer, может возникнуть ситуация, когда для конкретных компонентов необходимо применить какое-либо правило к разводке, к примеру, отличающееся подключение к полигону или увеличенные зазоры. Первое, что приходит в голову — это использовать порядковый номер компонента (Designator), вручную занеся его в правило печатной платы, вот только при любом изменении схемы правило придется обновлять — это непорядок! Хотя давно, честно говоря, я сам так делал, потом запарился и задумался, что я делаю не так…

B71-0

Под катом же покажу, как сделать более правильно и просто на примере Altium Designer 18.

Настройки проекта

Перво-наперво необходимо проверить параметры проекта и убедиться, что стоит галка создания классов компонентов (Generate Component Classes).

Находится она вот тут:

B71-1

Параметры компонентов на схеме

Для примера возьмем простейшую схему, пусть это будет 3 фильтрующих конденсатора на 2-х шинах питания:

B71-2

Опять же, для примера, возьмем и внесём изменения в параметры только в два из трёх конденсаторов. Выделяем их с шифтом:

B71-3

И переходим в параметры, здесь отображаются только совпадающие по имени параметры. Нажимаем кнопку добавления нового (Add внизу):

B71-4

И прописываем новый параметр со специальным именем ClassName:

B71-5

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

Правила в печатной плате

Итак, после внесения изменений в схему импортируем изменения на плату, здесь должна появится теперь графа о добавлении нового класса компонентов:

B71-6

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

Далее открываем правила платы. В качестве примера рассмотрим правила подключения полигонов к падам. Вот простой вариант набора правил:

B71-7

Да, кстати, стоит обращать внимание на приоритеты правил (колонка, выделенная красным на верхнем скриншоте)! Для их настройки выделяем корневой элемент Polygon Connect Style (или любой другой), в котором содержатся правила, и нажимаем кнопку Properties… внизу, откроется окно настройки приоритетов для правил этого типа правил:

B71-8

Покажу по порядку, что содержится в правилах, и поясню, почему они так расположены и как влияют их настройки на подключение полигона. Начинаем с низшего по приоритету правила — PolygonConnect_Via:

B71-9

Здесь никаких условий нет, и правило будет выполняться только в том случае, если в вышестоящих по приоритету правилам условия не подошли. Названо *_Via оно условно, но благодаря следующему по приоритету правилу оно всегда чётко работает исключительно на подключение полигона к переходным отверстиям.

Следующее правило — PolygonConnect_Connectors :

B71-10
Код условия выполнения:

(InPadClass('All Pads'))

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

2-е по приоритету правило —  PolygonConnect_Components :

B71-11

Код условия выполнения:

InComponent('C*') OR InComponent('R*') OR InComponent('NR*') OR InComponent('DA*') OR InComponent('DD*') OR InComponent('HL*')

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

И, наконец, последнее правило, но первое по приоритету — PolygonConnect_PolyDirectConnect :

B71-12

Код условия выполнения:

InComponentClass('PolyDirectConnect')

Ради чего собственно и вся эта заметка. Это правило проверяет на условие вхождения компонента в конкретный класс компонентов (тут-то и важно произвольное имя, вносимое в параметры компонента на схеме) и выполняет подключение полигона. Здесь же можно добавить, к примеру, проверку на соответствие конкретной линии (Net) и еще более тонко выбирать тип подключения полигона к падам.

Итог

Ну и, собственно, что получается при расположении компонентов в 3-х полигонах:

B71-13

Можно видеть, что C1, C3 подключены напрямую в соответствии с правилом PolygonConnect_PolyDirectConnect, а C2 подключен с термобарьером в соответствии с правилом PolygonConnect_Components.

На этом всё, надеюсь, эта небольшая заметка будет полезна новичкам в Альтиуме!

Удачного проектирования. ;)

Реклама

Добавить комментарий

Please log in using one of these methods to post your comment:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s