Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Библиотеки
Форум разработчиков электроники ELECTRONIX.ru > Печатные платы (PCB) > Разрабатываем ПП в САПР - PCB development > Cadence
KAlexn
Обратил внимание, что в библиотеках идущих в комплекте с программой везде используют нулевые линии для прорисовки шелкографии, Assembly_Top и др. слои.
В этом есть глубокий смысл? Потом же придется всю плату перелопачивать?
Карлсон
В каком смысле перелопачивать?
После завершения трассировки показываете только слой, где надо поменять толщину, выбираете в Find только линии, выделяете их и меняете толщину на желаемую. Разом на всём слое. Или вообще на всей плате.
krux
Они какбы намекают вам на то, что этими библиотеками пользуются только в целях обучения.
А для производства вам придется делать свои.
alexa1973
При производстве гербер файлов можно указать ширину для "нулей"
KAlexn
Цитата(krux @ Oct 28 2015, 10:42) *
А для производства вам придется делать свои.

Да я всегда свои библиотеки делаю, еще со старого пикада который 4.5
стараюсь придерживаться своего стандарта, типа шелкография ширина линий 0.15 мм высота букв 1 мм и тд
Я думаю библиотеки сразу создавать правильные, чтоб потом не иметь проблем.
KAlexn
Цитата(KAlexn @ Oct 28 2015, 11:44) *
Да я всегда свои библиотеки делаю,

Только вот никак не разберусь как их правильно организовать.
Раньше у меня были отдельные папки с диодами, с резисторами и т. д.
А сейчас пока все в куче.
Например конденсатор С и к нему ищешь свой футприн, а их минимум с десяток.
Или футпринт 0805, а это и конденсатор и резистор и дроссель и даже светодиод.
А есть еще пины, которых просто невероятное количество.
Поделитесь опытом.
Uree
Уже несколько раз писал, но сейчас не помню в каком именно топикеsm.gif У нас сделано так:
Allegro_Lib - корень библиотеки, тут лежат футпринты всех М/С(BGA/SOIC/QFN/QFP и т.п.)
Allegro_Lib/Connectors - понятно, коннекторы
Allegro_Lib/Discrete - мелочевка типа резисторы/кондеры/диоды/транзисторы - все, что имеет 2-3 пина, исключение резисторные матрицы
Allegro_Lib/Misc - все, что не попало в остальные разделы - мех. футпринты, кварцы/осцилляторы, нестандартные модули, рэперные точки, крепежные отверстия, реле/кнопки и т.д.
Allegro_Lib/Padstack - все падстэки используемые в либах, без разделения на типы/формы
Allegro_Lib/Shape - шейпы для нестандартных падстэков

Можно делить еще более мелко, но установить где граница трудно, а поиск потом будет затруднен. А такого разделения оказалось достаточно.
KAlexn
Я тут еще начинающий, но у меня появилась такая идея организации библиотек
Создаешь компонент и к нему сразу футпринт и пишешь например С_0603 сразу с прикрепленным футпринтом, далее С_0805 и тд. Также резисторы R_0603 с уже созданным футпринтом. Разделяешь по папкам только компоненты, а футпринты все в куче. Т.е. папка конденсаторов, папка резисторов, папка микросхем.
Рисуешь схему с уже подключенными футпринтами к компонентам, а не судорожно расставляешь их в конце.
как то так.
KAlexn
И еще вопросик: нарисовал тут основную рамку для схем, но ошибся и нарисовал как компонент, как бы ее теперь перевести в
Title Block. Перерисовывать ну очень долго. А скопировать у меня не получилось.
qhr
Цитата(Uree @ Oct 29 2015, 12:57) *
Уже несколько раз писал, но сейчас не помню в каком именно топикеsm.gif У нас сделано так:


Могли бы пояснить, а для чего вообще делить папку с посадочными местами на подкатегории?
Если Вы имеете готовый компонент, с подключенным посадочным местом, возможно, альтернативным - Вам скорее всего и не понадобится обращаться в папку с посадками. Разве что для того чтобы исправить ошибку, если такова была допущена.
У нас делится на две папки: в одной находятся все *.dra и сопусттвующие файлы, в другой - пады.

Цитата(KAlexn @ Nov 2 2015, 11:26) *
И еще вопросик: нарисовал тут основную рамку для схем, но ошибся и нарисовал как компонент, как бы ее теперь перевести в
Title Block. Перерисовывать ну очень долго. А скопировать у меня не получилось.


Графику скопировать можно.
Скопировать, скорее всего, не получилось по причине того, что Вы выделяли весь титульник (с видимыми свойствами, служебными полями и т.п.). Попробуйте через Ctrl выбрать все графические компоненты (скорее всего это будут только линии). При этом постарайтесь не захватить видимые свойства и контур компонента (штрихованный прямоугольник). К сожалению, если Вы добавляли свойства, то их перенести не удастся...
Простой текст спокойно копируется.
Uree
Можно и в одной папке хранить. Пока корпусов не много. А когда их становится много, то поиск чего-то становится мягко говоря затруднительным... Так хоть понятно в котором из каталогов начинать искать, - уже легче.
qhr
Цитата(Uree @ Dec 3 2015, 01:35) *
Можно и в одной папке хранить. Пока корпусов не много. А когда их становится много, то поиск чего-то становится мягко говоря затруднительным... Так хоть понятно в котором из каталогов начинать искать, - уже легче.


Так в том-то и вопрос, зачем искать, если все посадки уже прописаны в БД в таблице компонента?
Хотя это уже дело вкуса.

На текущий момент в БД около 1000 компонентов, посадок, конечно, меньше, т.к. у производитель одинаковую посадку может использовать для разных компонентов - вроде бы не было проблем с поиском. Хотя соглашусь, что 1тыс. - не показатель. Еще слишком мало компонентов.
Uree
БД не при чем. Искать приходится когда нужно создать что-то новое на основе старого, что-то подредактировать и т.п. Ясное дело, что при переходе схема-плата абсолютно без разницы что и где лежит, лишь бы пути к нему были прописаны.
qhr
Цитата(Uree @ Dec 3 2015, 18:05) *
БД не при чем. Искать приходится когда нужно создать что-то новое на основе старого, что-то подредактировать и т.п. Ясное дело, что при переходе схема-плата абсолютно без разницы что и где лежит, лишь бы пути к нему были прописаны.


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

Наверное, мы отошли немного от темы ветки.
Uree
Ну почему отошли? Это же о библиотеках топик, где о них еще поговорить, как не в нем?sm.gif
Имхо странный подход, сортировать футпринты(где Вы взяли это "посадки"?) по производителям. Скорее даже неправильный. Корпуса от производителя не зависят, практически никогда, за исключением чего-нибудь ну очень специфического. Пассив, практически весь, имеет стандартные корпуса, кроме разве что мощных дросселей, выводных резисторов и подобного, да и то, между разными производителями встречаются очень похожие корпуса. Полупроводники так же - SOT, SOD, DxPAK-и ... - кого из производителей ни возьми корпуса будут те же. Микросхемы тем более, все давно придумано и редко кто изобретает велосипеды. Поэтому как можно делить корпуса по производителям - простите, не могу понять.
А если посмотреть в IPC-7351 то окажется, что и названия корпусам/футпринтам в библиотеках предлагается давать исходя из типа, размеров и подобного, но никак не от производителя плясать.
Особняком стоят разъемы, но и там через функцию и парт-намбер можно футпринты именовать. И тоже случаются аналоги.
В общем ваш подход к библиотекам мне(и думаю не только) видится ошибочным.
qhr
Цитата(Uree @ Dec 3 2015, 23:40) *
Ну почему отошли? Это же о библиотеках топик, где о них еще поговорить, как не в нем?sm.gif
Имхо странный подход, сортировать футпринты(где Вы взяли это "посадки"?) по производителям. Скорее даже неправильный. Корпуса от производителя не зависят, практически никогда, за исключением чего-нибудь ну очень специфического. Пассив, практически весь, имеет стандартные корпуса, кроме разве что мощных дросселей, выводных резисторов и подобного, да и то, между разными производителями встречаются очень похожие корпуса. Полупроводники так же - SOT, SOD, DxPAK-и ... - кого из производителей ни возьми корпуса будут те же. Микросхемы тем более, все давно придумано и редко кто изобретает велосипеды. Поэтому как можно делить корпуса по производителям - простите, не могу понять.
А если посмотреть в IPC-7351 то окажется, что и названия корпусам/футпринтам в библиотеках предлагается давать исходя из типа, размеров и подобного, но никак не от производителя плясать.
Особняком стоят разъемы, но и там через функцию и парт-намбер можно футпринты именовать. И тоже случаются аналоги.
В общем ваш подход к библиотекам мне(и думаю не только) видится ошибочным.


Посадки-посадочное место для компонента. Машинально.
Боюсь, что у нас возникло недопонимание. В общей папке посадочные места имеют наименование согласно стандарту IPC. Например, SOT95P280X145-5L30N. Да, исключением являются разъемы.
Вот по поводу того, что корпуса от производителя не зависят - с Вами совершенно не согласен. Да, они могут быть схожими по параметрам, аналогами, но с таким же успехом они могут и отличаться, а в некоторых случаях и полностью не совпадать по параметрам (при этом, конечно, имея принадлежность к одному типу корпусов, шагу, кол-ву выводов). Надежнее сделать под каждого производителя свой qfn (с наименованием согласно стандарту), чем гадать потом "А точно ли этот qfn64 подходит к выбранному компоненту или нет?". Аесли все-таки отличаются... требуется вводить какое-то различие, например qfn64-1 (упростил, для примера). Не проще изначально создавать посадочное место в соответствии с документацией производителя и рекомендуемым футпринтом?
Вы же сами утверждаете, что пассив "практически" весь имеет стандартные корпуса, но не весь таки? Каким образом Вы будете делить эти выделяющиеся посадки?
Пассив часто встречается разный по высоте. Взять тот же тантал от Kemet. В казалось бы стандартном корпусе 7343 встречается около 5 различных колебаний по высоте.
С разъемами какие аналоги? Вспоминается недавний опыт с казалось бы стандартным разъемом COM-порта. Вроде бы есть множество аналогов, но встречается и множество абсолютно отличающихся по посадке. Вплоть до различного расстояния между выводами. Или под аналогами Вы имели ввиду какие-нибудь штыревые разъемы? Но и тут есть свои особенности. Ведь толщина выводов может отличаться, у одного производителя они квадратные, у другого круглые, меняется диаметр отвестия. Можно, конечно, сделать универсальное место... Но, как мне кажется, это не корректно.

Почему же странный подход? Исходя из того, что каждый производитель имеет уникальное посадочное место (находящееся в общей категории), в дальнейшем проще добавлять компоненты имеющие такой же код от производителя. Например, один раз я создал посадочное место от TI DRC (S-PVSON-N10), оно проверено, однозначно подходит ко всем компонентам TI, у которых такое же посадочное место. В дальнейшем, если попадается компонент в таком же корпусе, с такой же маркировкой в документации, то мне не приходится дотошно перепроверять футпринт. Я уверен, что оно подойдет, что оно проверено, раньше компоненты уже устанавливались, слой пасты корректно создан, слой маски аналогично, припой не затекает под корпус закорачивая выводы с термопадом. А используя универсальное место для всех корпусов требуется выполнять доскональную проверку каждый раз. И есть шанс пропустить ошибку.
Uree
Цитата(qhr @ Dec 3 2015, 22:54) *
...А если все-таки отличаются... требуется вводить какое-то различие, например qfn64-1...


А не надо ничего упрощать, если название футпринта будет нести в себе главную информацию о его размерах. Длина-ширина, питч, кол-во пинов, высота, размеры термал-пада - что еще может быть нужно для описания любых корпусов для микросхем? Если у одних корпус с прямыми углами, а у других со скошенными... то мне это зачем? Что изменится в продукции от таких подробностей? Примерно ничего.
С высотой кстати примерно та же байка - да, при одних и тех же размерах 2D проекции высота различается. Вот только в 95% случаев эта информация в проекте не важнА. Да, согласно тому же IPC посадочное место тоже должно отличаться, вот только на такие копейки, что нет смысла их учитывать.
Разъемы тоже удобней делить по функции, а потом по производителю и его парт-намберу. Упомянутые D-SUBы, USB, SATA, HDMI, ETHERNET, RF-разъемы всех мастей присутствуют у кучи производителей либо идентичными, либо с небольшими вариациями. И вместо того чтобы рисовать каждый раз как в первый раз, проще/быстрее взять подобное и сравнивая-проверяя "допилить" до нужного состояния.

Я не говорю, что так как Вы описали нельзя, но медленнее точно. Хотя если стоит задача занять кого-то работой...sm.gif

Цитата
...один раз я создал посадочное место от TI DRC (S-PVSON-N10), оно проверено, однозначно подходит ко всем компонентам TI...


Вот об этом и речь - Вы создали "посадочное место от TI", только и исключительно, а можно создать "son_50p_30x30_10_tp16x24" и употреблять его для всего, что имеет такой же корпус. Правда именно такой корпус кажется только TI и использует, так что не особо удачный пример, а вот всякие SOIC/TSSOP/QFN разных производителей не отличить, а если есть отличия, то в названии они тоже отразятся, так что использовать неподходящий корпус можно, но примерно так же, как неправильно его изначально создать.
qhr
Цитата(Uree @ Dec 4 2015, 01:13) *
Длина-ширина, питч, кол-во пинов, высота, размеры термал-пада - что еще может быть нужно для описания любых корпусов для микросхем?

Ну таким образом Вы все равно создаете уникальные посадки, да возможно упрощая незначительные отличия, но создается база с 10ком тех же qfn-ов с немного отличающимися корпусами. И все же их требуется перепроверять при следующем использовании. И снова. А потом еще раз. Конечно, можно не учитывать нюансов, но таким образом увеличивается шанс ошибки. Или же, повторюсь, создать единожды с наименованием QFN50P450X350X100-25_21T215X315N и пометкой где-нибудь в БД TI RGY (R-PVQFN-N20) и в следующий раз уже не нужно ничего перепроверять.

Цитата(Uree @ Dec 4 2015, 01:13) *
Если у одних корпус с прямыми углами, а у других со скошенными... то мне это зачем? Что изменится в продукции от таких подробностей? Примерно ничего.

Так форма корпуса и не учитывается в наименовании посадочного... Хоть он там пирамидой выстроится, если он снизу будет BGA, им он и останется, а в наименовании посадочного это никак не отразится. Разве что в высоте.

Цитата(Uree @ Dec 4 2015, 01:13) *
С высотой кстати примерно та же байка - да, при одних и тех же размерах 2D проекции высота различается. Вот только в 95% случаев эта информация в проекте не важнА.

Ну конечно, в 2D проекции это никак не проявляется sm.gif Но если предположить, что на компонент устанавливается радиатор, а радиатор еще крепится не на термоклей, а на дополнительные крепежные элементы, то требуется учитывать высоту компонентов. И вот как раз в таких моментах может пригодится высота. Или Вы считаете, что компонентам не нужно охлаждение? wink.gif

Цитата(Uree @ Dec 4 2015, 01:13) *
Вот только в 95% случаев эта информация в проекте не важнА. Да, согласно тому же IPC посадочное место тоже должно отличаться, вот только на такие копейки, что нет смысла их учитывать.

Вот тут не поспоришь. Встречается и такое. С другой стороны не знаю даже, что быстрее создать новый компонент или же перепроверить старый? ) Хотя могу сказать с уверенностью, что почти одинаковое время займет и тот и другой процесс. Вернувшись к предыдущему - можно создать посадочное место 100% подходящее к этому компоненту.

Цитата(Uree @ Dec 4 2015, 01:13) *
Разъемы тоже удобней делить по функции, а потом по производителю и его парт-намберу. Упомянутые D-SUBы, USB, SATA, HDMI, ETHERNET, RF-разъемы всех мастей присутствуют у кучи производителей либо идентичными, либо с небольшими вариациями. И вместо того чтобы рисовать каждый раз как в первый раз, проще/быстрее взять подобное и сравнивая-проверяя "допилить" до нужного состояния.

Таким образом у Вас в разных папках появится множество подпапок молексов, fci, TE и тому подобных. Не вносит ли это некий хаос? Все равно Выбор компонента осуществляется не по посадочному месту, а по базе данных. А в ней уже может быть какая угодно сортировка. Следуя дальше, почему же делать Molex и размещать его в разных папках? Почему бы не сделать одну папку?
На счет создания новых посадочных мест, ведь не много времени займет импорт dxf-чертежа и расстановка пинов? )

Цитата(Uree @ Dec 4 2015, 01:13) *
Вот об этом и речь - Вы создали "посадочное место от TI", только и исключительно, а можно создать "son_50p_30x30_10_tp16x24" и употреблять его для всего, что имеет такой же корпус. Правда именно такой корпус кажется только TI и использует, так что не особо удачный пример, а вот всякие SOIC/TSSOP/QFN разных производителей не отличить, а если есть отличия, то в названии они тоже отразятся, так что использовать неподходящий корпус можно, но примерно так же, как неправильно его изначально создать.

Так об этом никто и не спорит sm.gif
Если посадочное место идентичное, что бывало не один раз, то зачем делать еще одно? )
Но я все же сделаю копию этого посадочного места и расположу его в папках разных производителей с разным кодом. В общей папке к которой обращается БД - лежит одно посадочное, а в моей папке, в которой отсортированы по производителям - лежит несколько одинаковых, ну и пусть. Это скажется только на занимаемом месте на моем жестком. Но зато я буду уверен, что этот qfp подходит для контроллера STM, так как я взял его их папки с этим производителем, куда он попал после проверки.
И опять же у нас недопонимание. "Посадочное место от TI" имеет наименование не RGY (R-PVQFN-N20), а QFN50P450X350X100-25_21T215X315N. Что вполне соответствует стандарту. Если оно где-то повторится - последовательность действий выше уже описал.
Uree
Цитата(qhr @ Dec 3 2015, 23:40) *
Таким образом у Вас в разных папках появится множество подпапок молексов, fci, TE и тому подобных. Не вносит ли это некий хаос?


Не вносит. Потому как не вижу смысла создавать лишние сущности, типа папок по производителям. Это имеет смысл только для разъемов, но уж с ними можно и без этого обойтись.

Насчет высоты не перегибайте - описанные Вами случаи охлаждения относятся как раз к тем 5%, которые не вошли в остальные 95%. И уже если у меня реально стоит радиатор на CPU/FPGA то я проверю и его размеры, и высоту чипа, на котором он стоит и высоту танталов, которые стоят у него по периметру. И проверю по даташитам в процессе проектирования этого места, не полагаясь на то, что даже сам когда-то создал эти футпринты и тогда они были правильными. Производители всегда оставляют за собой право что-то изменять, посему полагаться на три года назад созданный правильный футпринт может дорого обойтись.

Кстати, в части "QFN50P450X350X100-25" мне вроде бы все понятно, а что описано в "_21T215X315N"?
qhr
Цитата(Uree @ Dec 4 2015, 02:57) *
Насчет высоты не перегибайте - описанные Вами случаи охлаждения относятся как раз к тем 5%, которые не вошли в остальные 95%.

Не соглашусь. От случая к случаю. В данном вопросе не существенно.

Цитата(Uree @ Dec 4 2015, 02:57) *
Производители всегда оставляют за собой право что-то изменять, посему полагаться на три года назад созданный правильный футпринт может дорого обойтись.

Смысл в Ваших словах есть.

Цитата(Uree @ Dec 4 2015, 02:57) *
Кстати, в части "QFN50P450X350X100-25" мне вроде бы все понятно, а что описано в "_21T215X315N"?

Кол-во выводов, размер термопада, размер посадочного места (M N L). Если не ошибаюсь, в соответствии с IPC-7351.
Uree
Ммм... если "_21T215X315N" кол-во выводов, то что обозначает "QFN50P450X350X100-25" в этой части названия?
qhr
Цитата(Uree @ Dec 4 2015, 11:44) *
Ммм... если "_21T215X315N" кол-во выводов, то что обозначает "QFN50P450X350X100-25" в этой части названия?

Общее возможное кол-во выводов в корпусе. Следующее значение - реальное кол-во.
Посадочное для данного компонента делается по матрице 25выводного, далее 4ре вывода удаляются.
Magnet
В продолжение темы,
есть такая утилита OrCAD Capture Footprint Viewer, сразу при наведении курсора на компонент, отображает его футрпринт. Для активизации необходимо прописать обращение и параметры. В сети есть ролик, если найду выставлю. Но это визуализация посадочных мест, а вот по процедуре описания под нетлист футпринтов практически готовых встроенных макросов и плагов нет.
Magnet
Очень ценный систематизированный материал в виде описаний футпринтов, к сожалению на 2008 г.
Мне это очень помогает при работе с локальной библиотекой.
http://www.luciani.org/geda/pcb/pcb-footprint-list.html

В продолжение темы,
есть такая утилита OrCAD Capture Footprint Viewer, сразу при наведении курсора на компонент, отображает его футрпринт. Для активизации необходимо прописать обращение и параметры. В сети есть ролик, если найду выставлю. Но это визуализация посадочных мест, а вот по процедуре автоматического добавления в свойства УГО к сожалению отсутствует.

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.