Niconson
Сложная деталь (иерархический символ)
Схематор & Платформ - редактор электронных схем и печатных плат, совместимый с OpenScad (программой твердотельного 3д моделирования).

В СхемАтор1.4 вы можете создать комплексную деталь, внутри которой может быть часть схемы, состоящая из простых деталей. В этом случае основная схема будет содержать УГО комплексной детали (прямоугольник с пинами) в любом количестве, а настоящая схема этого УГО будет располагаться на другой странице. Этот инженерный подход удобен при создании многоканальных схем, содержащих идентичные блоки. Роль канала как раз будет выполнять сложная деталь. Схема, находящаяся внутри сложной детали, должна быть нарисована на отдельной странице, поэтому весь проект содержащий хотя бы одну сложную деталь будет занимать как минимум две страницы в схематоре.

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

Внутренняя схема комплексной детали должна быть размещена на странице после основной схемы а не до неё!

То есть, например, на стр.1 будет основная схема, а на стр.2 будет принципиальная схема иерархического символа, но наоборот не допускается. Выберите меню “Вид >> Добавить новую страницу” и введите имя второй страницы. Перейдите на эту страницу, и нарисуйте прямоугольник размером примерно 60 х 90мм, как показано на рисунке ниже.

Отмасштабируйте размер полилинии, для этого выделите рамкой весь контур полилинии и нажмите кнопку F8 - Менять масштаб. После этого крутите колесом мыши пока размер полилинии не станет подходящим и затем кликните левой кнопкой чтобы завершить операцию масштабирования. Вы также можете изменить размер объекта другим способом - через верхнее меню Инструменты >> Масштабировать.


Теперь нам нужно обозначить пины сложной детали:


  1. анод светодиода,
  2. эмиттер транзистора,
  3. базу транзистора,
  4. и точку соединения конденсатора и резистора.

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

Выделите линию пина и вызовите окно атрибутов, нажав F1. Напротив Имени пина введите 1, и нажмите OK. Затем выделите рамкой мыши все объекты (прямоугольник + пин) и снова вызовите окно атрибутов, чтобы ввести имя сложной детали в строку RefDes. Введите например “Part” (или “Channel”), любое имя, без номера. Нажмите ОК. У нас получилась деталь, состоящая из контурной полилинии и пина “1”. Выделите первый пин и дублируйте его трижды (с помощью сочетания CTRL+C, CTRL+V), чтобы, расположив пины как показано на рисунке, завершить оболочку комплексной детали.

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

Мы завершили рисование сложной детали. Таким образом, текущая страница содержит только схему этой детали и больше ничего. Теперь вернемся на первую страницу нашего проекта, чтобы создать УГО комплексной детали и основную схему мультивибратора.


Переключить страницу вы можете, нажав соответствующую цифру на клавиатуре: нажмите “1”, чтобы выбрать первую страницу.


Удалите все детали, кроме PAD1, PAD2 и меток цепей +EP и GND если использовали их ранее. Рядом нарисуйте простой прямоугольник, это и будет у нас контурная полилиния УГО первой комплексной детали. Затем выделите сторону этой полилинии и нажмите клавишу F1, чтобы вызвать окно атрибутов. В диалоговом окне атрибутов нажмите кнопку ADD. В поле описания программа автоматически вставит шаблон команды, указывающий что данная полилиния является контурной полилинией УГО комплексной детали. Но программа вставит просто шаблон с текстом хх, и его нужно заменить на актуальный. Посмотрите скриншот ниже.

Здесь мы корректируем всего 3 параметра - suffix, link, и page_number

  • Суффикс (suffix) - это не числовой символ, который будет добавлен к позиционному обозначению каждой детали (внутри иерархического символа), для того чтобы задать ей уникальное имя, иначе бы при многократном копировании иерархического символа произошло бы дублирование позиционных обозначений в общей схеме. Этот суффикс будет добавлен при генерации списка соединений (нетлиста), но в самой схеме он не отображается на деталях.
  • Ссылка (link) - это имя детали контурной линии иерархического символа, который у нас размещён на второй странице.
  • Номер страницы (page_number) - номер страницы, где размещён иерархического символ

Если вы кликните сейчас по этой контурной полилинии, то программа выдаст предупреждение с текстом: “Комплексная деталь не содержит пинов”, поэтому следующим шагом необходимо добавить к этому УГО комплексной детали четыре пина, соответствующие тем именам пинов которые мы задали у детали “Part” (на второй странице). Нарисуйте полилинию, состоящую из одного сегмента, как для обыкновенного пина любой детали. Выделите сторону и нажмите клавишу F1, чтобы вызвать окно атрибутов полилинии. В диалоговом окне атрибутов нажмите кнопку ADD (Комплексный пин). В появившемся шаблоне скорректируйте только имя пина - напишите 1, затем нажмите Готово. Остальные поля схематор скорректирует сам исходя из параметров контурной линии.

Если всё сделали правильно, то появится текст “1” рядом с полилинией. Сразу же переместите его наверх, нажав F4(Двигать группу). Проверьте не выдаст ли программа какое-либо предупреждение при выделении УГО комплексной детали. Для этого кликните по контурной полилинии УГО. При этом должны стать выделенными оба объекта: и полилиния контура и пин. Выделив пин, дублируйте его с помощью комбо CTRL+C, CTRL+V. Программа войдет в режим перетаскивания скопированного пина. В этом режиме нажмите F3, чтобы повернуть пин на 90 градусов.


Выделите снова полилинию пина и в диалоговом окне атрибутов измените имя пина с “1” на “2” как показано на скриншоте

Таким же образом создайте еще два пина с именами 3 и 4 для комплексной детали. В итоге у нас получится УГО комплексной детали.


Кликните по контурной полилинии УГО. При этом должны стать выделенными все 5 объектов: полилиния контура и 4 пина. Программа не должна выдавать какое-либо предупреждение при выделении УГО комплексной детали. Теперь нам нужно создать копию такого же УГО, расположив его справа, и сделать ей зеркальное отображение. Выделите целиком УГО комплексной детали, кликнув мышью по контурной линии, затем дублируйте ее, нажав CTRL+C и CTRL+V. Сделайте зеркальное отражение выделенной группы с помощью функциональной кнопки F3.

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

Важный момент - чтобы не появлялись лишние узлы и DRC не ругался на бесхозный слой полилинии контура сложной детали, перенесите эту линию на фронтальный (или любой другой) слой. Для этого нужно временно запретить выделение сложных деталей с помощью маски выбора слева, и затем, выделив сегмент линии, зайти в свойства через кнопку F7 - опции линий, где можно задать слой. Посмотрите скриншот ниже.