Перейти к содержанию
    

def_rain

Свой
  • Постов

    315
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные def_rain


  1. Здравствуйте, товарищи!

    Кто нибудь встречался с такой вещью:

    Есть переходные via которые подключаются к полигонам питания и земли через перемычки термобарьера.

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

    У меня же встречаются виа которые не отключают перемычки и они тянутся в виде дорог вслед за перемещением виа. Причем обычно перемычку нельзя выделить как дорогу, а в данном случае можно, и перемычки даже реагируют на options - stretch etch, slide etch (см. фото 1,2) и результат таких перемещений фото 3.

    Если удалить виа и поставить снова, проблема исчезает. Но я не могу понять на каком этапе это возникает, из-за чего? И как лечить? Не искать же все их и не править вручную.

     

    post-88520-1494940939_thumb.jpg

    post-88520-1494940943_thumb.jpg

    post-88520-1494940947_thumb.jpg

     

  2. Пришлите нам несколько STEP-моделей, несовместимых с OrCAD, мы отправим их в поддержку Cadence и создадим Case возможно, это поможет исправить ошибки.

     

    Вот степ модель которая у меня не прикрепляется к символу, однако в Setup - step package mapping все в порядке и она отображается. Но стоит только перейти в 3D режим и модельки нет.

    61665351_19_g6dn_1a.zip

  3. Здравствуйте.

    В проекте есть группа повторяющихся объектов с обвязкой. Делаю для них *.mdd файлик, чтобы повторить их трассировку через Place replicate.

    Получаю модуль см. Рис.1.

    Далее этот модуль ставлю в нужное место (Рис.2) и подсоединяю дороги модуля (полученные вместе с расположением компонентов из mdd) с дорогами на плате.

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

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

    На delete vertex не реагируют. Удаляются только вместе с дорогой.

    post-88520-1493974248_thumb.jpg

    post-88520-1493974254_thumb.jpg

    post-88520-1493974264_thumb.jpg

     

  4. Присоединяюсь. В Аллегро со Step моделями часто проблемы.

    Тоже скачиваю их с различных профильных сайтов. Очень часто бывает так, что при создании символа подключаешь степ модель Setup - step package mapping вроде бы все нормально, сохраняешь, а в итоге когда включаешь 3D_Viewer моделька на посадочном месте не отображается. Бывает даже что сгенерированные в Library Expert модельки не отображаются (допустим фирритовае, конденсаторные, резистивные сборки на 8 пинов). Приходится делать манипуляции:

    1. Чаще всего помогает пересохранить степ модель в СолидВоркс

    2. Танцы с бубном... допустим в 3D_Viewer моделька не отображается, хотя в step package mapping она установлена. Меняем модельку на другую, с которой заведомо все в порядке, сохраняем всё, а затем снова ставим нужную нам модельку с которой были проблемы и сохраняем. После этого она вероятно появится на посадочном месте в 3D_Viewer.

     

    Еще странный момент что в режиме просмотрщика 3D (Allegro 3D canvas) полигон place bound top почему то отключается и включается с помощью галочки напротив soldermask_top. Как так может быть?

  5. Это глобальный env, при переустановке cadence по новой писать?

     

    Нет. При переустановки он не затирается, т.к. находится в отдельной от самой программы папке, которая определяется в переменных средах. Но все равно лучше env файлик скопировать перед переустановкой, а потом в случае чего вставить/заменить его.

  6. post-20800-1492513340_thumb.png

     

    post-20800-1492513350_thumb.png

     

    Это CAPC2012x135.

    Placebound как раз определяет плотность, A,B или C.

     

    По вашей классификации:

    1 - это Package geometry -> Assembly_Top.

    2 - это Package geometry -> Place_Bound_Top.

    3 - это DFA bound.

     

    Да, прихожу к выводу что в основном так и делается как Вы пишете. В итоге просто накладывать DFA и Place Bound друг на друга один в один.

    Может быть и нет смысла выдумывать что то другое.

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

    Посмотрите на фото, таким образом компонент ни при каких условиях при монтаже не сможет быть напаян. Но Place Bound при этом там есть, и он имеет высоту равную высоте детали. Это съедает полезное пространство платы но высоте. В некоторых случаях это может оказаться недостатком данного метода.

     

    post-88520-1492518033_thumb.jpg

     

     

  7. Вот так я вижу символ максимально приближенный к IPC.

    DFA дает общий зазор для символа, который определяет плотность компоновки на плате корпусов. В данном случае класса компоновки nominal: для него Courtyard to Body excess и Courtyard to Pad excess = 0.2 мм.

    post-88520-1492511160_thumb.jpg

     

  8. Не путайте его с Package Geometry -> Assembly_Top, например. В этом слое обычно рисуется реальная физическая граница компонента.

     

    Да, с assembly все понятно.

     

    Package geometry -> Placebound top\bot всегда был и есть граница компонента, включая площадки и всё прочее. Это полигон, который на плоскости отвечает за ошибки пересечений, а в трехмерке определяет максимальный объем, занимаемый компонентом.

     

    Соглашусь что Place bound должен включать в себя площадки и габариты корпуса, т.е. при пересечении двух символов будет DRC.

    Но есть еще нюансы.

    Я приведу выдержку из IPC:

    post-88520-1492500108_thumb.png

    На схеме есть три полигона о которых мы говорим:

    1. Component/ Land Pattern (maximum boundary) - физические границы, включая площадки. В Allegro это Place bound top/bot, о котором мы говорили.

    2. Courtyard boundary - технологические границы. Определяют плотность компоновки деталей на плате, Существует три уровня плотности A, В, С. В Allegro я думаю для этого слоя можно использовать это DFA bound top/bot.

    3. Manufacture zone - Здесь точно не знаю зачем эта зона. Есть предположение что эта граница для расстановки при автоматическом монтаже, учитывает размеры манипулятора с присоской, который расставляет детали по плате и точность позиционирования.

     

    Давайте обсудим подробнее.

     

    Вот выдержка из книги "Mitzner_Kraig_Complete_pcb_design_using_orcad_capture_and_pcb_editor":

     

    "Notice that the PCB Editor place boundary outline does not include the excess space at the ends of the body or around the leads.

    For most of the PCB Editor footprints included with the software library, the courtyard excess is nonexistent."

    Переведём:

    "В PCB Editor-е граница полигона place boundary не включает избыточное пространство краёв корпуса или вокруг выводов. Для футпринтов превышение courtyard отсутствует."

     

    Что это значит...

    Полигон Place bound top/bot ограничивает деталь и площадки, т.е. физические границы один в один, без всяких отступов (см. на схеме полигон Component/Land Pattern (maximum boundary)).

    Но отсутствует courtyard, т.е. технологические зазоры по плотности компонентов. Имеется в виду зазор/отступ от габаритных размеров корпуса и контактных площадок (см. на схеме полигон courtyard excess). Этот отступ расчитывается по IPC, допустим: 0.1мм-уровеньА, 0.2мм-уровеньВ, 0.3мм-уровеньС (Least, most, nominal)

    Вот здесь я и задаю вопрос, каким полигоном обозначить этот courtyard?

    Больше всего подходит DFA bound top/bot.

     

    Но читаем дальше книгу Mitzner_Kraig-а:

    "Also in PCB Editor’s Constraint Manager, there is no package spacing constraint that you can set. The DRC looks for violations only where place outlines cross.

    So satisfying density level requirements requires that you either modify the footprint definitions or set the place grid conservatively and manually check each of the components individually using Tables 5-6 and 5-7 as guides."

    Переведём:

    В Constraint Manager отсутствует ограничение интервала между корпусами, которое вы можете установить. DRC ищет нарушения только там, где пересекаются контуры места (т.е. имеется в виду что DRC контролирует только пересечение Place bound top/bot).

    Другими словами, автор говорит что пересечения технологических грани Courtyard boundary в CM не контролируются.

    Но предлагает решение:

    "So satisfying density level requirements requires that you either modify the footprint definitions or set the place grid conservatively and manually check each of the components individually using Tables 5-6 and 5-7 as guides."

    Здесь смысл не совсем ясен и таблицы о которых речь не вносят ясность...

     

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

  9. Здравствуйте.

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

     

    Я вижу два способа как это организовать:

    1. Полигон Place bound top/bot

     

    Однако, Place bound top/bot отвечает за высоту и объемные, габаритные размеры детали, поэтому считаю делать этот полигон границей детали не логично, потому что граница компонента должна включать в себя как габаритные размеры детали, так и площадки. А площадки обычно (исключение BGA корпуса) выступают за габаритные размеры, допустим smd площадки длиннее/больше чем сам вывод компонента => в случае границы компонента по полигону Place bound получится что площадки не войдут в границу компонента (меня это не устраивает).

     

    2. Полигон DFA bound top/bot

     

    Использование этого полигона в качестве границы кажется более логичным. Даже название соответствует Design for assembly.

    В итоге имеем полигон DFA внутри которого пины и корпус детали имеющий свой Place bound по размерам механического чертежа.

    Далее настраивается DFA spreedsheet с расстояниями между полигонами DFA и получаем при расстановки контроль пересечения символов.

     

    Однако, здесь тоже есть нюанс. Т.к. DFA контролирует не конкретно пересечение этих полигонов, а расстояние их сближения указанного в DFA spreedsheet.

    К сожалению это мня тоже не устраивает т.к. нужно именно пересечение...

     

    Скажите как Вы решаете вопрос пересечения символов?

  10. Здравствуйте, господа!

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

    При создании символов компонентов я добавляю этот полигон таким образом, чтобы он отступал от от габаритных размеров корпуса и металлизации пинов на 0.2мм(см.фото, полигон белого цвета - DFA bound top). Делаю это для учета погрешности расстановшика при монтаже. Т.о. этот слой для меня является границей символов при компоновке платы (в плоскости платы контролирую пересечения dfa, в объеме place bound).

     

    Далее в DFA Spreadsheet задаю отступы по сторонам компонентов, допустим 0.1мм.

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

     

    И кажется что вроде бы все логично. НО, если эти два полигона DFA продолжать сближать до тех пор пока они не пересекутся, то при этом ошибка DRC пропадает. Фактически получается что когда полигоны пересеклись они перестают видеть друг друга и наползание двух компонентов друг на друга не выдаст ошибки.

     

    В чем может быть причина? Или это действительно такая логика работы у DFA?

     

    На фото С2 и С11 пересеклись полигонами DFA - ошибки нет. С3 и С11 полигоны друг от друга на расстоянии меньшем, чем указано в ограничениях - справедливая ошибка.

    post-88520-1491076853_thumb.jpg

  11. Здравствуйте.

    Кто нибудь может подсказать что за в-во T_Temperature в OrCAD Capture (найти можно через фильтр св-в filter by:Allegro PCB Designer) ?

     

    В хэлпе про это св-во ничего нет, единственное что нашел это св-во J_TEMPERATURE:

     

    J_TEMPERATURE

    The J_TEMPERATURE property, attached to a reference designator (component), defines the junction temperature for the component in degrees centigrade.

     

    Хочу для своих УГО добавить отдельное св-во для рабочей температуры компонентов (которое уже присутствует в списке существующих стандартных св-в).

    Но подобии точности/допуска TOL.

     

    И помогите понять на каком нибудь примере, желательно, про св-во J_TEMPERATURE. В чем его суть и как работает.

    Спасибо.

     

  12. Отвечают они всегда, но исправления вносятся долго.

     

    Вы наверно в представительство в Москве (организация ОРКАДА) обращаетесь? Или напрямую в Cadence?

     

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

  13. Еще при выборе опции Export padstacks as a blocks все посадочные сбиваются в начало координат, думаю этого тоже не должно быть)

     

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

     

    PS

    Очень интересно что ответит служба поддержки. А Вы когда нибудь до этого обращались к ним? Они реально отвечают?

     

  14. Добрый день.

     

    Предлагаю вам сделать в посадочном месте два вида пинов.

    К примеру :

    1. 0.3x1.2 мм

    2. 1.2х0.3 мм

     

    Таким образом у вас будут только не повёрнутые КП на посадочном месте.

    Но их будет два вида. (что для вас неважно)

     

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

     

    Добрый день.

    Попробуйте обновиться до 14 хотфикса.

    Решил повторить вашу проблему, но не получилось, всё экспортируется нормально.

    Я убедился что площадки имеют один падстек.

    Вы можете выложить файл brd с вашим посадочным?

     

    Пробовал на двух компах:

    1ый Win10, SPB17.2 011 Hothix, BricsCad12,14

    2ой Win7, SPB17.2 014 Hothix, BricsCad12,14, AutoCAD12

    На обеих машинах ситуация одинаковая.

     

    Вот проект целиком + DXF с моей проблемой - развернутыми пинами на ETCH - TOP

     

    PS

    У меня в библиотеках еще прорисовываются физические размеры выводов компонентов на Package Geom - Assemb top, и получается что они совмещаются с пэдстэком пина. (Наглядно видно где вывод компонента физически находится на пине)

    Это я к тому чтобо у Вас могут возникнуть вопросы глядя на мои футпринты.

    test2.rar

  15. Вариант обхода:

    В настройках экспорта DXF OUT выставить DXF Format 14 и активировать export filled pads.

    Пины в DXF будут ориентированы так же как и в плате, но есть один минус. Т.к. filled pads заливает пины, то если вы делаете экспорт в монохроме, то нумерация пинов не будет видна (т.к. один цвет у пинов и текста).

     

    Вопрос по прежнему актуален. Должен быть более адекватный способ.

  16. Здравствуйте.

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

     

    Суть в следующем.

    Есть плата в SPB17.2 S011.

    Нужно вытащить в DXF:

    File-export-DXF...

    Создаю или изменяю Layer convertion file для определения классов и подклассов для экспорта.

     

    Однако пины всех компонентов в полученном DXF файле ориентированы только в одну сторону (горизонтально).

    Во время экспорта никаких ошибок и предупреждений не выдает, а в итоге DXF с явными ошибками.

    На фото1 видно что пины компонентов которые изначально в *.brd были ориентированы горизонтально, такими и остались, а те что ориентированы вертикально повернулись на 90 градусов(стали горизонтальными).

     

    post-88520-1489158252_thumb.jpg

     

    Единственное что помогает это воспользоваться в Allegro настройкой Export symbols as BLOCKs. Которая преобразует футпринт в Блок, но при этом, хоть пины и принимают верную ориентацию, все позиционные обозначения исчезают,заместо них остается атрибут "REF". Что для меня не приемлемо. Фото2

    post-88520-1489158155_thumb.jpg

  17. Добрый день.

    Решил сделать файлы env и prm, которые будут приводить интерфейс Allegro в приблизительное соответствие с интерфейсами P-CAD и Altium.

    Первый пост в этой теме может Вам помочь

    https://electronix.ru/forum/index.php?showt...ettings_Allegro

     

  18. Не забываем о tech-файлах, полный стэк + констрейны могут быть в нем.

     

    Эти файлы генерятся где то в Artwork? Просто не знаком с этим. Обычно в Резонит отдаем гербера, порядок слоев в их бланке указываем.

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

    Кстати, а импортируются ли параметры стэка из парам-файла? Если да, то об универсальности, по крайней мере в части числа слоев и стэка, можно забыть.

     

    Вы имеете в виду чередование проводник/диэлектрик в Cross-section ?

    Если Вы про это, то не экспортирует. Т.е. этот стэк, как я понимаю зашит в проект, а не экспортируется в param файл.

     

     

  20. А параметры-то вчитались или нет? Насколько помню не смотря на предупреждения они должны быть вчитаны насколько это возможно. Или нет?

     

    Да, несмотря на предупреждение все параметры импортируются без проблем.

    Просто предупреждение это не хорошо.

     

    PS

    Кстати, забыл сказать, начинает ругаться на <etchcount>(несовпадение кол-ва подклассов) когда при создании файла параметров (export-parameters) добавляешь Design settting

    post-88520-1487585679_thumb.jpg

     

    Но убирать эту галочку я не хочу.

  21. Здравствуйте, господа.

    Хочу довести до ума файл параметров проекта Allegro PCB Editor.

    Файл содержит параметры Design settings(сетки, кол-во слоев Cross section и разные настройки), Color Layer (настройки цветов классов и подклассов для идентичной визуализации всех проектов) и Texs size.

     

    Что имею на данный момент:

    Несколько файлов параметров (*.prm) которые применяю в зависимости от проекта. Один из них импортирую при создании футпринтов, остальные для проектов плат, причем во всех этих этих param файлах разница лишь в кол-ве слоев. В идеале было бы сделать один общий, но есть одно обстоятельство...

     

    Теперь объясню подробнее:

    Импортируя param файл в проект сверяется коль-во подклассов etch (кол-во слоев платы в Cross section) в этом проекте с количеством в param файле.

    Допустим, в param файле задан набор из четырех etch подклассов (top bot gnd pwr), однако если этот param файл импортировать в проект в котором два etch подклассов (top bot), то будет предупреждение (см.фото)

    post-88520-1487577942_thumb.jpg

     

    WARNING: The value of element <etchcount> is not equal to the number of

    user defined subclass under ETCH class.

     

    "Значение <etchcount> не совпадает с определенным пользователем кол-вом подклассов класса ETCH"

     

    <etchcount> определяется в самом param файле (*.prm) см. фото. В данном случае эта переменная равна 4 (top bot gnd pwr).

    post-88520-1487581505_thumb.jpg

     

    Может быть кто то знает как обойти этот момент?

    В случае успеха будет один param файл для всех проектов.

     

     

     

     

     

     

     

     

     

     

  22. Да, не пользуюсь. Пробовал LibExpert-a, но не прижился, по крайней мере пока.

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

    Кстати пересчитал только что - реально получилось 8 кликов на импорт файла параметров из библиотеки, ну и примерно 5-6 секунд чтобы их сделать.

     

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

  23. Никак не могу понять что и где Вы пытаетесь выиграть...

     

    ВЫИГРАТЬ это конечно громко сказано. Скорее как Вы и писали ранее всего лишь сэкономить три клика на импорт параметров.

     

    В основном это создание футпринтов.

    Я делаю с помощью LibExp, он генерит батник который запускает скрипты для создания футпринта.

    Однако, при открытии созданного таким автоматическим способом очередного *.dra параметры всегда будут по умолчанию (т.е. абсолютно рандомные текстовые блоки и наборы цветов, к которым я не имею ни какого отношения).

    Т.е. при создании каждого нового футпринта мне приходится вручную импортировать параметры.

     

    Скрипт о котором здесь речь, помогает тем, что сразуже после открытия dra все эти рандомные параметры заменяются на нужные мне автоматически в фоновом режиме.

     

    ps

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

×
×
  • Создать...