Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Параметризация
Форум разработчиков электроники ELECTRONIX.ru > Печатные платы (PCB) > Разрабатываем ПП в САПР - PCB development
vitan
Все нормальные конструктора-механики используют ее по полной программе, а у нас же есть трудности. Почему-то не могу найти ни одного САПР с нормальной поддержкой сабжа. Плохо искал? Кому-нибудь еще это интересно?

Вкратце суть. Если конструктору нужны болты, то он не рисует каждый раз новый болт, а рисует заготовку, в которой параметрически (т.е. не статически) указывает размеры. При вставлении болта в проект в параметры подставляются нужные значения и получается болт нужных размеров.
Вот то же самое хотелось бы иметь и в ECAD. Причем, чем шире, тем лучше.

Единственное, что за долгое время попадалось на глаза - это некий генератор посадочных мест и 3D-моделей на основе параметрических заготовок. Но это только в части ПЦБ, а вот со схематикой вообще глухо.

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

Что скажете?
yes
Цитата(vitan @ Jun 7 2013, 14:54) *
Что скажете?


Учиться программировать нужно.

у КАДов обычно всяческих OLE и т.п. интерфейсов есть. например в ПАДСе можно практически что угодно делать с дизайном, хоть на бейсике, хоть на питоне

а готовых "заготовок" для параметризации не будет, я думаю, слишком кудрявые болты рисовать приходится - трудно сделать шаблон, который был бы востребован. и универсален
EvilWrecker
Ваш вопрос относится к конкретному сапру или же речь идет о самостоятельном продукте?

Цитата
Учиться программировать нужно.


Один из лучших вариантов

vitan
Цитата(yes @ Jun 7 2013, 15:26) *
Учиться программировать нужно.

у КАДов обычно всяческих OLE и т.п. интерфейсов есть. например в ПАДСе можно практически что угодно делать с дизайном, хоть на бейсике, хоть на питоне

Это, конечно, да. Но хочется начать с готового, если есть.

Цитата(yes @ Jun 7 2013, 15:26) *
а готовых "заготовок" для параметризации не будет, я думаю, слишком кудрявые болты рисовать приходится - трудно сделать шаблон, который был бы востребован. и универсален

Но я не прошу мне в состав САПРа включать шаблоны. Я готов сам рисовать шаблоны. Но я хочу, чтобы этому была поддержка.
Вот, взять, например, языки описания аппаратуры (HDL). Там многое из этого уже есть. Есть модули и параметры, передающиеся модулям. Но вот незадача: языки эти фактически не используются при разработке плат. Т,е. мало кто из САПР ПП это поддерживает. Но, если и поддерживает, то параметры - уже нет.

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

Интересно все-таки, почему это не развито так же, как в MCAD? Вроде, все предпосылки есть... Или я чего-то не знаю?
yes
я мало рисую схемы в CAD-ах, больше пишу на HDL (для ПЛИС-ов и ASIC-ов)

там есть проблема с визуализацией - то есть читаемая человеком картинка (так называемое netlist view) может быть, по моему, только интерактивной, то есть можно посмотреть какую-то цепь или какой-то фрагмент. схема, даже небольшая, которую человек может нарисовать достаточно внятной, в автоматическом исполнении будет нечитаемой.
это наблюдается в тулзах каденса/синопсиса/ментора и т.д. - то есть хорошего решения я не видел

в схемотехнике описывается структурная схема - то есть нетлист, использовать для этого HDL вряд ли целесообразно, с теми же ПЛИС и АЗИКами было практически также, пока не появился поведенческий синтез - то есть человек описывает _поведение_ узла на HDL, а структурную схему генерит синтезатор по этому описанию.
в проектировании PCB вряд ли появятся такие инструменты. то есть я сомневаюсь в переходе на HDL в разработках плат

а по поводу программирования в кадовских скриптах - это про всяческие тулзы для исправления/добавления функций в интерфейс.
для того же ПАДСа я ввожу элемент в экселевскую табличку, а скрипт из этой таблички генерит символ (этот скрипт я скачал давно у финов и дистриб потерял, а сейчас они сделали его платным, если у кого-то есть старая версия, прошу поделится - http://www.designsystems.fi/Products/PADSUtilities/pa_e.html )

также у нас была проблема с обновлением компонентов в схеме в соответствии с закупленными - писал на питоне скрипт для вытягивания ВОМа в эксель и заливки исправленного ВОМа в схему, но не прижилось - сейчас даже исходников не нашел

а вообще примеров скриптов для ПАДСа полно

-------------

еще один механизм - это ECO файлы, то есть коррекции к схеме/pcb - то есть если тул умеет такие файлы брать, то и поддержки скриптов не нужно - я опять же сталкивался с этим в ПАДСе - там они достаточно хитро ЕСО шные исправления в схему вносят, используют метки, но все-равно приятная глазу картинка портится

-------------

чтобы закончить мысль - скрипты для работы с CAD-ами имеет смысл применять для каких-то ограниченных действий - генерация символов/футпринтов (обычно есть в дистрибах), генерация отчетов (половина примеров об этом), DRC (вторая половина), какие-то улучшатели - ренумерация, замена элементов, замена аттрибутов и т.п.
vitan
Цитата(yes @ Jun 7 2013, 17:03) *
там есть проблема с визуализацией - то есть читаемая человеком картинка (так называемое netlist view) может быть, по моему, только интерактивной, то есть можно посмотреть какую-то цепь или какой-то фрагмент. схема, даже небольшая, которую человек может нарисовать достаточно внятной, в автоматическом исполнении будет нечитаемой.
это наблюдается в тулзах каденса/синопсиса/ментора и т.д. - то есть хорошего решения я не видел

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

Цитата(yes @ Jun 7 2013, 17:03) *
в схемотехнике описывается структурная схема - то есть нетлист, использовать для этого HDL вряд ли целесообразно, с теми же ПЛИС и АЗИКами было практически также, пока не появился поведенческий синтез - то есть человек описывает _поведение_ узла на HDL, а структурную схему генерит синтезатор по этому описанию.
в проектировании PCB вряд ли появятся такие инструменты. то есть я сомневаюсь в переходе на HDL в разработках плат

Ну это все дело вкуса, если писать в стиле rtl, то все будет ок. Но опять же, речь даже не об этом, а почему ни один пцб-шный схематик с поддержкой иерархии не поддерживает параметризацию? Придется, видимо, писать нетлисты в плисовом сапре, а потом импортировать в пцб, благо аллерго, в котором я работаю, это позволяет... Вот только это процесс однонаправленный и никакого беканнотейта не предвидится. В общем, печалька...
PCBtech
Цитата(vitan @ Jun 7 2013, 14:54) *
Все нормальные конструктора-механики используют ее по полной программе, а у нас же есть трудности. Почему-то не могу найти ни одного САПР с нормальной поддержкой сабжа. Плохо искал? Кому-нибудь еще это интересно?

Вкратце суть. Если конструктору нужны болты, то он не рисует каждый раз новый болт, а рисует заготовку, в которой параметрически (т.е. не статически) указывает размеры. При вставлении болта в проект в параметры подставляются нужные значения и получается болт нужных размеров.
Вот то же самое хотелось бы иметь и в ECAD. Причем, чем шире, тем лучше.

Единственное, что за долгое время попадалось на глаза - это некий генератор посадочных мест и 3D-моделей на основе параметрических заготовок. Но это только в части ПЦБ, а вот со схематикой вообще глухо.

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

Что скажете?


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

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

Вот что я встречал в САПР ПП с точки зрения параметризации - это опция RF-проектирования в Cadence Allegro. Там есть библиотека топологических СВЧ-элементов (микрополосковые линии, фильтры, антенны, катушки, и т.д.), и для них можно он-лайн задавать или менять параметры (ширину микрополосков, размеры элементов, угол раскрыва, количество элементов фильтра, и т.д.).

vitan
Цитата(PCBtech @ Jun 17 2013, 14:20) *
Мне кажется, вы слишком много понятий пытаетесь объединить.
У болта все-таки очень четкая и заранее определенная функциональность. То, что вы можете задать как параметр - это в основном размеры, параметры резьбы и материал, ну и, возможно, вид шляпки - на выбор из заранее разработанных.

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

Не знаю, не вижу ничего такого особо разнородного. Точнее, даже если и есть разнородность, ну и что? Трудно реализовать? Не верю. В языках программирования и в HDL с этим все в порядке, и при этом уровень абстракции куда выше. Просто, это никому не надо, очевидно. Средств, поддерживающих это нормально, нету. Возможно, и не будет, что прискорбно. Видимо, большинству проще скопипастить 20 квадратиков и к ним потом еще столько же раз уникальные адреса подрисовать. crying.gif

Цитата(PCBtech @ Jun 17 2013, 14:20) *
Вот что я встречал в САПР ПП с точки зрения параметризации - это опция RF-проектирования в Cadence Allegro. Там есть библиотека топологических СВЧ-элементов (микрополосковые линии, фильтры, антенны, катушки, и т.д.), и для них можно он-лайн задавать или менять параметры (ширину микрополосков, размеры элементов, угол раскрыва, количество элементов фильтра, и т.д.).

Ну да, в писибишной части с этим получше, хотя тоже, конечно, не ахти...
EvilWrecker
Слабо представляю как описывать неэлектричские(размеры,материал, название модели и пр)явления HDL языками - Вы я вно мешаете все в одну кучу. Если такое и делать то явно с помощью скриптов и визарда + БД и прикручивать интерфейс к тому или иному сапру. Вряд ли кто то станет заморачиваться ад созданием "универсального" файла/расширения/шаблона и пр для всего и сразу- реально осуществимый и технологичный путь уже как говорили лежит через программирование, причем сугубо прикладное и крайне вероятно- выходящее за возможности скриптовых движков представленных в сапрах для пп
vitan
Цитата(EvilWrecker @ Jun 17 2013, 16:31) *
Слабо представляю как описывать неэлектричские(размеры,материал, название модели и пр)явления HDL языками

Ну я же не утверждаю, что это необходимо делать именно в HDL. Я просто привел HDL в качестве примера решения подобной задачи (по параметризации). И опять же, я не говорю, что шаблон должен быть один и мегауниверсальный.
Мне интересно услышать, может быть подобное уже кто-то воплотил у себя, или знает, где это есть в готовом виде. Причем, больше всего интересует именно логическая часть (фронтенд) для PCB.
Кто-нибудь писал какие-нибудь скрипты, например?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.