|
Копирование разводки, Ячейки с идентичной разводкой... |
|
|
3 страниц
1 2 3 >
|
 |
Ответов
(1 - 33)
|
Jun 5 2007, 11:07
|
Местный
  
Группа: Свой
Сообщений: 328
Регистрация: 15-08-06
Из: Севастополь
Пользователь №: 19 562

|
Цитата(Владимир @ Jun 5 2007, 13:36)  Выделяешь разводку копируешь с точкой привизки и все. Имена цепей разводки сами изменятся как нужно . Не забыть и VIA при копировании отметить Чуть по-подробнее, пожалуйста. А именно: "Если элементы уже раставлены" - это про элементы первой ("образцовой ячейки") ? Или про элементы других ячеек, которые я еще только собираюсь разводить? Ведь если просто скопировать разводку, все цепи станут "NoNet"?
|
|
|
|
|
Jun 5 2007, 11:21
|

Гуру
     
Группа: Модераторы
Сообщений: 11 653
Регистрация: 25-03-05
Из: Минск
Пользователь №: 3 671

|
Цитата(Gennaj @ Jun 5 2007, 14:07)  Выделяешь разводку копируешь с точкой привизки и все. Имена цепей разводки сами изменятся как нужно . Не забыть и VIA при копировании отметить
Чуть по-подробнее, пожалуйста. А именно: "Если элементы уже раставлены" - это про элементы первой ("образцовой ячейки") ? Или про элементы других ячеек, которые я еще только собираюсь разводить? Ведь если просто скопировать разводку, все цепи станут "NoNet"? Сначала. Если уВас блоки полностью одинакова сточки зрения PCB н разные с сточки зрения номиналов то это оформляется по другому и делается через Paste Format Так как у вас они "почти" одинаковы, то уж раставлть элементы нужно самому. Причем одиноково для всех бдлоков 2Потом разводите общую часть у одного из блоков 3. выделяете дорожки и Via одинаковой частьи, делаете Copy с точкой привязки на на характерном Pad одного из элементов3. потом вставляете скопированное на другой блок с точкой привязки на соответствующем Pad/ 4/ Если компоненты действительно были расставлены как и в первом блоке, все уже готово.
|
|
|
|
|
Jun 5 2007, 14:19
|
Местный
  
Группа: Свой
Сообщений: 328
Регистрация: 15-08-06
Из: Севастополь
Пользователь №: 19 562

|
Изучил. Попробовал. В принципе, работает. К сожалению, вариант, описанный в статье нам не подходит, так как у нас компоненты имеют большое количество присоединенных полей свойств (для резистора, например: BCPId, Rem, Manufacturer, ManufacturerPartNumber, Value, Power/Voltage, Tolerance, Корпус) и передавать каждое из этих свойств с помощью параметров иерархического блока очень проблематично... Более-менее приемлем вариант с блокировкой компонентов исходного размещения, размещения поверх них других компонентов, относ их в сторону и копирование дорожек с переходными отверстиями, но это тоже не идеал, так как хотелось бы именно автоматической расстановки компонентов, а не только копирования дорожек... Я попробовал сгенерировать румы со схемы без иерархии, присвоив элементам групп некие классы. При этом на печатной плате тоже получается набор ячеек, но Альтиум теряет взаимосвязь между идентичными элементами разных румов (то есть отказывается автоматически размещать компоненты, так как не знает, что резистор R1 из ROOM1 соответствует резистору R19 из ROOM2). Соответственно, созрел вопрос: можно ли каким-то способом прописать такое соответствие идентичных элементов разных групп? То есть, каким-то образом указать Альтиуму, что размещать транзистор VT25 следует так же, как и транзистор VT15 и т.д?
|
|
|
|
|
Jun 5 2007, 15:48
|

Гуру
     
Группа: Модераторы
Сообщений: 11 653
Регистрация: 25-03-05
Из: Минск
Пользователь №: 3 671

|
Цитата(Gennaj @ Jun 5 2007, 17:19)  Изучил. Попробовал. В принципе, работает. К сожалению, вариант, описанный в статье нам не подходит, так как у нас компоненты имеют большое количество присоединенных полей свойств (для резистора, например: BCPId, Rem, Manufacturer, ManufacturerPartNumber, Value, Power/Voltage, Tolerance, Корпус) и передавать каждое из этих свойств с помощью параметров иерархического блока очень проблематично... Более-менее приемлем вариант с блокировкой компонентов исходного размещения, размещения поверх них других компонентов, относ их в сторону и копирование дорожек с переходными отверстиями, но это тоже не идеал, так как хотелось бы именно автоматической расстановки компонентов, а не только копирования дорожек... Я попробовал сгенерировать румы со схемы без иерархии, присвоив элементам групп некие классы. При этом на печатной плате тоже получается набор ячеек, но Альтиум теряет взаимосвязь между идентичными элементами разных румов (то есть отказывается автоматически размещать компоненты, так как не знает, что резистор R1 из ROOM1 соответствует резистору R19 из ROOM2). Соответственно, созрел вопрос: можно ли каким-то способом прописать такое соответствие идентичных элементов разных групп? То есть, каким-то образом указать Альтиуму, что размещать транзистор VT25 следует так же, как и транзистор VT15 и т.д? Это тоже просто. Передается только один Link А далее вес берется из базы данных. В последнем номере кратко об этом сказано. Может рожу и напишу подробней. Вообше нет необходимости хранить это множество параметров, все равно в PCB они не передаются. Достаточно толко те, что отображаются на самой схеме + LINK Остальное напиримеер в обыкновенном EXELL файле. Кстати править, вносить изменение и все прочее значительно проще удобней оперативней и тюпю
|
|
|
|
|
Jun 6 2007, 11:01
|
Местный
  
Группа: Свой
Сообщений: 328
Регистрация: 15-08-06
Из: Севастополь
Пользователь №: 19 562

|
В явном виде я там этого не нашел, но кое-что все-таки получилось Рассказываю по-порядку (может, еще кому-нибудь пригодится): 1. На принципиальной схеме всем компонентам одной ячейки присваиваем одно и то же имя класса (например, "Ячейка1", "Ячейка2" и т.д.). 2. В "Project Options" на закладке "Class Generation" снимаем галку там, где указана генерация рума с листа схемы, и ставим галочки в "генерировать классы компонентов" и "генерировать румы для классов компонентов". 3. Обновляем печатную плату, при этом каждая ячейка оказывается в своем руме. 4. На печатной плате выделяем эквивалентные по размещению элементы в разных румах и присваиваем каждой такой группе эквивалентных элементов один и тот же параметр Channel Offset. Это (в смысле, выделение эквивалентных элементов) можно сделать и путем выделения элементов на принципиальной схеме с последующим выделением этих элементов на ПП (правый щелчок-Part Action-Select PCB Component). 5. Разводим первую ячейку. 6. Копируем формат румов командой Design-Rooms-Copy Room Formats. Все  Важное замечание: идентификация эквивалентных элементов происходит ТОЛЬКО по параметру Channel Offset. Поэтому, никто не запрещает, при необходимости, например, вместо резистора в одном из румов установить индуктивность или емкость  У нас потребовалось чередовать пару емкость-индуктивность  Даже корпуса могут быть разными! Правда, в этом случае, какая-нибудь из дорожек можт не попасть на соответствующий вывод
|
|
|
|
|
Jun 6 2007, 11:46
|

Гуру
     
Группа: Модераторы
Сообщений: 11 653
Регистрация: 25-03-05
Из: Минск
Пользователь №: 3 671

|
Цитата Не понял, что именно можно еще (кроме десигнатора и коммента) сдвинуть в корпусе или надписи у одного из них. По-подробнее, плиз 1 Подпись контакта на шелкографии 2 один из PAD 3 Контур компонета 4 ...
|
|
|
|
|
Jun 6 2007, 12:12
|

Гуру
     
Группа: Модераторы
Сообщений: 11 653
Регистрация: 25-03-05
Из: Минск
Пользователь №: 3 671

|
Цитата(Gennaj @ Jun 6 2007, 14:53)  Ясно. То есть речь о внесении "местных" изменений в библиотечный компонент. Мне кажется, что при таких изменениях достаточно сложно программно предусмотреть все возможные виражи полета мыслей разработчика ПП. Тем более, что копирование формата, вроде как, предусматривалось для идентичных по разводке ячеек  Да не все так просто. первый контакт надо обозначать на шелкогравии. А место обозначение может попаст на Pad чужого элемента Теже трасформаторы со свобобнами выводами обмоток,или динамики, у которых есть свобода установки и перемешения pAD Для подпайки- имх и маркировать нужно все и двигаь тоже можно и нужно. Да и сами элементы разные могут быть. так что даже при ограниченном полете фантазии вариантов- до безобразия много
|
|
|
|
|
May 19 2009, 05:17
|
Местный
  
Группа: Свой
Сообщений: 213
Регистрация: 6-12-04
Из: г. Таганрог
Пользователь №: 1 346

|
Цитата(Gennaj @ Jun 6 2007, 15:01)  1. На принципиальной схеме всем компонентам одной ячейки присваиваем одно и то же имя класса (например, "Ячейка1", "Ячейка2" и т.д.). Вот все понятно, окромя этого места. Так и не нашел на принципиальной схеме ничего связанного с классами... Может сначала нужно где-нибудь галочку поставить?Галку ставить не надо - надо для соответствующих компонентов создать параметр ClassName (без пробела!) и классы сгенерятся. Удобно делать это с помощью Parameter Manager'a в меню Tools. Теперь, переходя к п. 4. Цитата(Gennaj @ Jun 6 2007, 15:01)  4. На печатной плате выделяем эквивалентные по размещению элементы в разных румах и присваиваем каждой такой группе эквивалентных элементов один и тот же параметр Channel Offset. Это (в смысле, выделение эквивалентных элементов) можно сделать и путем выделения элементов на принципиальной схеме с последующим выделением этих элементов на ПП (правый щелчок-Part Action-Select PCB Component). понимаем, что ручками тырцать в PCB на каждый компонент с попыткой поправить этот Channel Offset при большом количестве элементов в канале - эанятие не для слабонервных. За сим вопрос - нельзя ли этот процесс хоть как-то ускорить - например редактировать этот список Channel Offset'ов в табличке...
Сообщение отредактировал Гяук - May 19 2009, 05:56
|
|
|
|
|
Jun 10 2009, 19:26
|
Местный
  
Группа: Свой
Сообщений: 213
Регистрация: 6-12-04
Из: г. Таганрог
Пользователь №: 1 346

|
Цитата(Владимир @ May 20 2009, 21:43)  1. Ох сгенерятся. Однако гибкости при создании правил и классов в PCBDOC значительно больше Владимир, не держите это в себе - в чем гибкость?  Хотя-бы ткните носом где глянуть. Цитата(Владимир @ May 20 2009, 21:43)  2. Зачем ускорять. При правильной организации схемы они автоматически генерятся Под эвфемизмом "правильная организация схемы", я так понимаю кроется предложение использовать Multi-Sheet and Multi-Channel Design?  Что-то мне подсказывает, что приведенный выше рисунок далек от требований ЕСКД. Кроме того не всегда имеет смысл влазить в дебри multichannel... Самый простецкий пример. Есть на плате два преобразователя напряжения - DC-DC c adjustable выходом. Один на 1,8В, другой на 3,3. Отличаются парой резисторов, смещающих sence-вход... С одной стороны - обвязки с десяток элементов, с другой стороны для каждого "канала" расставлять элементы ручками лень. За сим было бы здорово увидеть трансляцию параметра ChannelOffset из SchDoc в PcbDoc... Цитата(Владимир) Сделано для использования ранее сделанный и опробованных блокой для встраивания в новый схемы Есть у меня стандартная заморочка - расстановка конденсаторов под ПЛИС, да желательно так чтобы побольше IO можно было использовать, т.е. чтобы кондесаторы не мешались. Нашел одно хорошее решение. Оно мне понравилось. Задумал его "засниппить". Вставляю в новый проект и... Designator'ы каждому конденсатору выставляю руками?  Извиняюсь, если вопрос глупый, но методом НТ до "автоматического подхватывания" десигнаторов из текущего проекта дойти так и не смог, а в документации про сниппеты так куцо написано...
|
|
|
|
|
Jun 10 2009, 19:57
|

Гуру
     
Группа: Модераторы
Сообщений: 11 653
Регистрация: 25-03-05
Из: Минск
Пользователь №: 3 671

|
Цитата(Гяук @ Jun 10 2009, 22:26)  Владимир, не держите это в себе - в чем гибкость?  Хотя-бы ткните носом где глянуть. Под эвфемизмом "правильная организация схемы", я так понимаю кроется предложение использовать Multi-Sheet and Multi-Channel Design?  Что-то мне подсказывает, что приведенный выше рисунок далек от требований ЕСКД. Кроме того не всегда имеет смысл влазить в дебри multichannel... Самый простецкий пример. Есть на плате два преобразователя напряжения - DC-DC c adjustable выходом. Один на 1,8В, другой на 3,3. Отличаются парой резисторов, смещающих sence-вход... С одной стороны - обвязки с десяток элементов, с другой стороны для каждого "канала" расставлять элементы ручками лень. За сим было бы здорово увидеть трансляцию параметра ChannelOffset из SchDoc в PcbDoc... Есть у меня стандартная заморочка - расстановка конденсаторов под ПЛИС, да желательно так чтобы побольше IO можно было использовать, т.е. чтобы кондесаторы не мешались. Нашел одно хорошее решение. Оно мне понравилось. Задумал его "засниппить". Вставляю в новый проект и... Designator'ы каждому конденсатору выставляю руками?  Извиняюсь, если вопрос глупый, но методом НТ до "автоматического подхватывания" десигнаторов из текущего проекта дойти так и не смог, а в документации про сниппеты так куцо написано... 1/ а построение правил с длинными формулами, а дать человеческие описания правилам, а учет слоев и прочей Ух семь поов сойдет. а все в схеме не опишете 2 в частности Цвет тоже далек от ескд ну 2 DC/DC проще так, чем в дебрях мультиканалов  Сниппеты старье. Давно не пользуюсь
|
|
|
|
|
Jun 18 2009, 17:36
|
Группа: Участник
Сообщений: 14
Регистрация: 16-12-08
Пользователь №: 42 536

|
Цитата(Владимир @ Jun 11 2009, 00:57)  Сниппеты старье. Давно не пользуюсь Допустм имеем набор парных Snippet-ов (Схема=разводка), отображающих некоторые частоиспользуемые узлы Начинаем лепить необходимую схему: (по началу схема пустая) 1) Бросаем Snippet1_SCH в схему, Snippet1_PCB в плату. 2) Поскольку они идентичны, то сразу идем в ComponentLinks и загоняем всех вправо по refdes 3) Проводим апдэйт платы со схемы - все ОК, иначе и быть не может. На этом этапе трудностей не должно быть. Те изначально не связанные Snippet-ы сперва определили кто из ху, а потом поимели информация о цепях. Дальше веселее 4) Добавляем второй Snippet, причем тот же, в схему (ну надо мне так было) 5) Теперь Snippet_PCB в плату лепить не стоит. Надо скопировать первый Snippet1_PCB (Ctrl_C). При его вставке все его элементы получат к каждому рефдесу суффикс _1, _2, _3 итд при каждом копировании. Уточняю - речь о PCB. 6) На схеме выделяем второй Snippet1_SCH, идем в ренамбер и говорим что дело хотим иметь только с выделенными компонентами этой схемы, да добави каждому суффикс _1 (итд толко поочереди). Подтверждаем. 7) Теперь на плате включаем ComponentLinks, сдуваем все справа на лево, а затем все обратно - только по рефдесу. 8) Апдейт со схемы и все сошлось. Теперь вставляем другой пара снипетов 9) поводу схемы повторяем частичный ренамбер (только новый Snippet7_SCH) 10) С платой же все тоже самое, только вновь вставленный сниппет надо скопировать, вставить один или более раз, и обязатально удалить первый его вариант. Далее то же самое имеем в плате и в схеме набор компонентов с суффиксами _1 , что позволяет в автомате переназначить им ссылки. Не забываем производить общий ренамбер перед каждым новым сниппетом. 11) В итоге имеем разведенную схему в компилированном проекте и полную возможность коррекции итд, про ГОСТы вопрос я думаю отпадает.
|
|
|
|
|
Jun 21 2009, 11:36
|
Группа: Участник
Сообщений: 14
Регистрация: 16-12-08
Пользователь №: 42 536

|
Цитата(Владимир @ Jun 18 2009, 22:51)  1. делайте иерархический проект 2 Даете в нем 8 кратную ссылку на ваш сниппет 3 Берете или копируете сниппет в PСB и относите его к Первой ROOM 4/ переносите из схемы в Pcb 5 делаете операцию Paste формат ко всем Room и расставляете ваши сниппеты как вам нравится
Вроде короче и быстрее. когда знаешь как.
Но вообще камней подводных и там там хватает А как при этом схема выглядит. Мож сниппеты дешевле, чем нормоконтроль бодать. А по поводу паст и копи - опять же рыть, искать надо, вырывать, синхронизировать. А сниппеты попарно хранишь, да с подписями всякими, выражениями, на мысль наводящими.
|
|
|
|
|
Jun 21 2009, 14:43
|

Гуру
     
Группа: Модераторы
Сообщений: 11 653
Регистрация: 25-03-05
Из: Минск
Пользователь №: 3 671

|
Цитата(mkshome @ Jun 21 2009, 14:36)  А как при этом схема выглядит. Мож сниппеты дешевле, чем нормоконтроль бодать.
А по поводу паст и копи - опять же рыть, искать надо, вырывать, синхронизировать. А сниппеты попарно хранишь, да с подписями всякими, выражениями, на мысль наводящими. А схема и так не по всем буквам госта выглядит кстати Гост не запрещает рисовать схему одного блока, о остальные либо квадратами либо... Вообще Гост весьма гибкая вещь, и то что якобы не соответствует госту, у другого "забоданного" нормоконтролера соответствует. Выражения и подписи тож люблю. Ни кто их не мешает копировать, и подправлять свете "нового мышления". Вот черт. Не нашел как ударение ставить
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|