Как стать автором
Обновить

Полезные фишки при работе с Allegro PCB Editor

Время на прочтение8 мин
Количество просмотров7.5K

Долго работая в какой-то программе для проектирования электроники, каждый пользователь вырабатывает свой собственный маршрут или, другими словами, порядок действий при трассировке печатных плат. Что называется, «каждый любит наступать на собственные грабли». Иногда то, как пользователь выполняет те или иные действия, не является оптимальным решением проблемы. Ниже приведены небольшие заметки, призванные упростить работу пользователя с редактором печатных плат Cadence Allegro PCB Designer, или с ее упрощенной версией OrCAD PCB Designer.

Для реализации некоторых описываемых ниже функций необходимо будет настраивать так называемые горячие клавиши. Их определение надо записать в файл env, чтобы они стали доступны при каждом запуске редактора. Однако каждую горячую клавишу можно сначала попробовать “на лету”, просто введя соответствующую команду в командной строке, которая расположена в нижней части экрана пользователя. Обратите внимание на то, что двойные кавычки в командах, указанных ниже, должны быть «обычными» двойными кавычками из кода ASCII-7 (символ, который возникает при нажатии Shift-2).

Пример ввода команды в командной строке редактора ПП Allegro PCB Editor
Пример ввода команды в командной строке редактора ПП Allegro PCB Editor

1. Центрирование экрана на месте, где в данный момент находится курсор мышки

Для того, чтобы данная функция стала доступной, необходимо ввести следующую команду:

funckey z  "zoom center; pick -cursor"

В результате будет назначена горячая клавиша z, и после каждого нажатия z программа будет перемещать центр экрана в ту точку, где находился курсор мышки.

2.  Фиксация трассировки по нажатию кнопки на клавиатуре

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

funckey x "pick_to_grid -cursor"

После ввода данной команды линия будет фиксироваться при нажатии на “x”.

3. Запрещение трассировки “пустого места”

Время от времени при начале трассировки пользователь ошибочно кликает не на площадках, полигонах, отверстиях, а на пустом месте. После чего начинается трассировка, которая не нужна. Чтобы этого избежать, необходимо зайти в Setup->User Preferences и в появившемся окне установить флажок на следующем параметре: acon_disable_nullnet_route.

После этого вы больше не сможете “трассировать воздух”.

Кстати, в окне User Preferences можно легко искать нужные параметры просто по их имени, так, как это показано на рисунке. А при наведении курсором мыши на конкретный параметр можно прочитать описание того, как именно он действует и за что отвечает.

Как быстро найти нужный параметр и посмотреть его описание (Summary description)
Как быстро найти нужный параметр и посмотреть его описание (Summary description)

4. Быстрая смена ширины линии по нажатию кнопки на клавиатуре

Очень часто при трассировке линий необходимо “на лету” изменять их ширину. Это можно сделать во вкладке Options, однако там надо совершить несколько действий, что не всегда удобно. Можно настроить изменение ширины линии на какую-нибудь кнопку на клавиатуре. Достаточно ввести в командной строке: funckey 6 form mini acon_line_width 0.6

В результате при трассировке при нажатии на клавишу “6” ширина линии будет меняться на 0.6мм. Число 0.6 пишется в тех единицах, на которые настроен проект пользователя.

5.  Отмена заливки полигонов при изменении констант в Constraint Manager

Когда пользователь работает с константами проекта и изменяет что-то в настройках и правилах, затрагивающее полигоны, то все существующие в проекте полигоны переходят в состояние Out of Date, то есть начинают изображаться полностью залитыми, и их нужно обновлять, чтобы они стали подчиняться новым правилам DRC. Если пользователь не хочет обновлять полигоны сразу, то можно переводить их в незаполненное состояние, при котором отображаются только границы полигонов. Для этого необходимо установить галочку на следующем параметре:

No_shape_fill_dyn_ood

Установка флажка на нужный параметр – не заливать полигоны
Установка флажка на нужный параметр – не заливать полигоны
В результате все полигоны станут не залитыми после изменения констант
В результате все полигоны станут не залитыми после изменения констант
Вид полигонов после перезаливки. Это можно сделать в любой момент работы над проектом
Вид полигонов после перезаливки. Это можно сделать в любой момент работы над проектом

6. Скрытие резиновых связей при трассировке линии

В обычном режиме резиновые связи (rats-nest) загромождают окно при трассировке цепей. Достаточно установить всего один флажок в опциях трассировки, Auto-blank other rats, и ненужные резиновые связи будут гаситься автоматически – см. рис.

Поле трассировки загромождено не нужными сейчас резиновыми связями
Поле трассировки загромождено не нужными сейчас резиновыми связями
Достаточно установить всего один флажок, и ненужные резиновые связи будут гаситься автоматически
Достаточно установить всего один флажок, и ненужные резиновые связи будут гаситься автоматически

7. Слайдирование линий без активации команды Slide

Чтобы так делать, необходимо находиться в режиме Etch Edit. Перейдя в этот режим, просто наведите курсор мышки на необходимый отрезок линии, нажмите левую клавишу и тащите. Произойдет выполнение команды Slide.

Данные настройки находятся в нижней-правой части экрана
Данные настройки находятся в нижней-правой части экрана

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

funckey a "settoggle CMD 'generaledit' 'placementedit' 'etchedit';$CMD"

По нажатию клавиши «a» вы последовательно будете переключать три режима, циклически.

8. Z-copy - очень полезная команда

При помощи команды Z-copy (копирование полигонов сложной формы с расширением или сжатием размера) можно создавать различные зоны запрета или зоны трассировки, которые повторяют ваш сложный контур печатной платы.

Для этого необходимо активировать команду Edit->Z-Copy. Затем просто кликнуть мышкой на нужном контуре, чтобы получить его новую копию, уменьшенную или увеличенную на введенное во вкладке Options число.

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

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

9. Скрытие пользовательских настроек цвета объектов в проекте

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

Для этого необходимо поставить соответствующую галочку. См. рисунок ниже.

Как скрыть пользовательскую раскраску цепей
Как скрыть пользовательскую раскраску цепей

10.  Показ свойств, назначенных компонентам, в окне редактирования трассировки

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

Настройка свойств, которые будут видны на указанном подклассе
Настройка свойств, которые будут видны на указанном подклассе
Результат добавления свойства компонентов Value на класс Manufacturing подкласс Pen3
Результат добавления свойства компонентов Value на класс Manufacturing подкласс Pen3

11.  Управление поведением DFA отметок при перемещении компонентов

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

Возникновение маркера DFA при перемещении компонента
Возникновение маркера DFA при перемещении компонента

Данные маркеры «пружинят», не дают какое-то время сблизить компоненты ближе заданной в таблице DFA дистанции, и тем самым нарушить константы проекта. Однако, если пытаться продолжать сдвигать компоненты, то сближение все-таки произойдет. Параметр, управляющий временем, в течении которого компоненты будут сопротивляться сближению, называется: dfa_pause_level. Установите его в значение 0 в Setup->User Prefences для сближения компонентов без задержки.

12.  Поиск полигонов, которые остаются неотрисованными по каким-либо причинам

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

Можно воспользоваться отчетом Tools->Quick Reports->Shape Dynamic Status. Однако в этом отчете пользователь получит только координаты незаполненного полигона, но будет не в состоянии увидеть его на экране. Чтобы увидеть границы незаполненных полигонов на экране, необходимо установить в диалоге Color флажок Bound, который показан на рис. ниже.

Включение видимости границы полигонов
Включение видимости границы полигонов

13.  Обтекание цепей земли одноименными полигонами

Если пользователю необходимо соединить два вывода земли проводником и не допустить включения этого проводника в одноименный полигон, то это можно сделать, добавив объекту проводника Cline дополнительное свойство: Void_Same_Net. Необходимо установить его в положение TRUE, и после этого полигон одноименной цепи будет обтекать данную линию.

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

Добавление свойства проводящему отрезку линии
Добавление свойства проводящему отрезку линии

14.  Добавление переходного отверстия при трассировке по нажатию на “пробел”

Достаточно ввести следующую команду: funckey " " "pop bbdrill -cursor"

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

15.  Если при перемещении компонента с большим количеством выводов система долго “думает” – как ускорить работу компьютера?

Скорее всего в проекте резиновым цепям RatsNets назначено свойство MIN_TREE. Необходимо назначить этим цепям свойство Ratsnest_Schedule = POWER_AND_GROUND.

Назначение свойства Ratsnest_Schedule цепям земли и питания для того, чтобы компоненты с большим количеством пинов передвигались по плате быстрее
Назначение свойства Ratsnest_Schedule цепям земли и питания для того, чтобы компоненты с большим количеством пинов передвигались по плате быстрее

16.  Если при трассировке время отклика системы слишком велико – как ускорить работу системы?

Возможно, ваш проект неправильно настроен. Настроить проект для комфортной работы поможет инструмент Performance Advisor. Он запускается по команде Tools->Database Check->Performance Advisor и выдает рекомендации: как настроить проект пользователя для получения максимальной производительности системы. Попробуйте исправить найденные им проблемные места.

Отчет инструмента Performance Advisor
Отчет инструмента Performance Advisor

17.  Динамическое отображение длины проведенной трассировки

Если пользователю необходимо видеть, какой длины линию он уже страссировал, то можно включить параметр allegro_etch_length в настройках User Preferences.

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

Динамическое отображение длинны проведенного участка
Динамическое отображение длинны проведенного участка

Положением окна динамической обратной связи можно управлять, если отключить следующую опцию: allegro_dynam_timing_fixedpos

Положение окна обратной связи динамически изменяется – параметр allegro_dynam_timing_fixedpos
Положение окна обратной связи динамически изменяется – параметр allegro_dynam_timing_fixedpos

18.  Деление объектов по типам в Constraint Manager

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

Перечисление всех объектов в проекте по порядку без возможности скрывать определенный тип объектов
Перечисление всех объектов в проекте по порядку без возможности скрывать определенный тип объектов

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

Включение возможности разделять объекты по типам
Включение возможности разделять объекты по типам

После этого вид Constraint Manager изменится: появятся подразделы, содержащие в себе объекты определенного типа.

Все объекты одного типа теперь сгруппированы в подразделы
Все объекты одного типа теперь сгруппированы в подразделы

19.  Информация о константах, принадлежащих объекту

Для того, чтобы увидеть информацию обо всех константах, принадлежащих тому или иному объекту, необходимо активировать команду Display->Constraint. Далее настроить команду на нужный объект во вкладке Find. Последнее действие – необходимо выбрать нужный объект, кликнув на него левой клавишей мышки (см. рис).

Свойства, принадлежащие цепи в проекте
Свойства, принадлежащие цепи в проекте

20.  Что такое «пустая» цепь - DUMMY NET

В проекте печатной платы OrCAD или Allegro нет выводов, которые не подключены ни к какой цепи.

Не подключенные на схеме пины на самом деле подключаются к цепи DUMMY. И этим можно пользоваться, раскрашивая все пины без подключения в определенный цвет. Достаточно при раскрашивании цепи ввести в поле имени цепи слово DUMMY, как показано на рис.

Раскрашивание не подключенных пинов в определенный цвет
Раскрашивание не подключенных пинов в определенный цвет

21.  Запуск Allegro в базовом режиме

Когда пользователь столкнулся с необъяснимым поведением программы, либо проект платы не хочет открываться, программа спонтанно закрывается или появились какие то другие необъяснимые трудности с использованием редактора печатных плат, то можно попробовать временно решить их, запустив Allegro PCB Editor (и не только его, но и большинство программ Cadence) в базовой «безопасной» конфигурации.

Достаточно набрать в командной строке при запуске программы ключ “-safe”.

Пример: C:\Cadence\SPB_17.4\tools\bin\allegro.exe -safe

При запуске с таким параметром отключаются следующие функции:

Локальный env файл настроек (<HOME>/pcbenv/env)

  • Конфигурация cds_site

  • Любые Skill коды пользователей.

  • Пользовательские скрипты.

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

  • Информация о недавно открытых файлах.

  • Запомненные позиции Windows (.geo файлы)

Заключение

Надеюсь, что-то из перечисленного пригодится в вашей работе и позволит работать эффективнее.

Возможно, у вас тоже накопились интересные «фирменные» решения, позволяющие сэкономить время разработчика. Предлагайте свои “фишки”. ?

Теги:
Хабы:
Всего голосов 8: ↑8 и ↓0+8
Комментарии2

Публикации