Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Для разведенной схемы поменял у элементов библиотеки
Форум разработчиков электроники ELECTRONIX.ru > Печатные платы (PCB) > Разрабатываем ПП в САПР - PCB development > Altium Designer, DXP, Protel
bsp
Вот есть разведенная плата. В проекте была собственная библиотека со всеми элементами. Теперь в схеме для элементов указываю общие библиотеки для всех проектов. Библиотеки прописаны. Пытаюсь перенести все изменения на PCB ( Compile PCB project -> Update PCB document ). А футпринты не меняются, продолжают ссылатся на старую библиотеку. А старая библиотека удалена из проекта, файлы удалены, диск компьютера проверен на ее полное отсутствие. Альтиум в ходе обновления сообщает, что производит обновление из старой библиотеки ( которой физически нет ?! ). Вот кто-бы подсказал, куда тут думать.
Rodavion
Цитата(bsp @ Oct 10 2014, 15:15) *
Вот есть разведенная плата. В проекте была собственная библиотека со всеми элементами. Теперь в схеме для элементов указываю общие библиотеки для всех проектов. Библиотеки прописаны. Пытаюсь перенести все изменения на PCB ( Compile PCB project -> Update PCB document ). А футпринты не меняются, продолжают ссылатся на старую библиотеку. А старая библиотека удалена из проекта, файлы удалены, диск компьютера проверен на ее полное отсутствие. Альтиум в ходе обновления сообщает, что производит обновление из старой библиотеки ( которой физически нет ?! ). Вот кто-бы подсказал, куда тут думать.

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

Владимир
Через footprintManager установите флаг поиска all
Будет искать во всех доступных
VladislavS
Похожая проблема. Есть разведённая плата. Схемы и библиотек нет. Делаю Design/Make PCB Library и получаю .PcbLib. Как теперь всем компонентам на плате прописать Library на вновьсозданную? По одному получается, а всем разом?
shb
Цитата(VladislavS @ Oct 16 2014, 14:56) *
Похожая проблема. Есть разведённая плата. Схемы и библиотек нет. Делаю Design/Make PCB Library и получаю .PcbLib. Как теперь всем компонентам на плате прописать Library на вновьсозданную? По одному получается, а всем разом?
Все разом в твоем случае никак. У тебя неполноценный проект, нет библиотеки SCH, а именно в ней хранится инфа из какой PCBLIB брать футпринт.
И компоненты на плате у тебя как бы не компоненты а футпринты. Поэтому в свойстве такого компонента в строке Library можешь писать любую туфту хоть на русском.
Да это и не к чему.
VladislavS
Цитата(shb @ Oct 17 2014, 13:32) *
Да это и не к чему.

Не скажи. Если руками указать каждому элементу, что он из вновьсгенерированной библиотеки, то устанавливается связь и можно редактировать библиотеку и пользоваться Update from PCB Libraries.

А вот группой так не получается сделать.

Нашёл такой вариант. Редактирую футпринт в библиотеке и переименовываю его. На плате выбираю все элементы по старому имени и задаю им новое имя. Происходит обновление из библиотеки, но связь с библиотекой не устанавливается.

Не понятно, почему по одному можно связь с библиотекой установить, а группой через инспектор или лист нет.
Murzik_6011
Цитата(VladislavS @ Oct 17 2014, 16:46) *
Не понятно, почему по одному можно связь с библиотекой установить, а группой через инспектор или лист нет.

Может дело в том, что не там меняете?
Когда то давно проделывал такой фокус и получал те же грабли. Причина - невнимательность. Менял через инспектор. Так вот, там было два подобных "параметра". С второго раза угадал. Если не изменяет память менял "Current Footprint".
VladislavS
Цитата(Murzik_6011 @ Oct 17 2014, 20:25) *
Может дело в том, что не там меняете?


Дело в том, что механизма групповой замены этого параметра в редакторе PCB нет.

Для себя проблему решил так, может кому пригодится.
Код
Procedure SetPcbLib;
Var
   Board : IPCB_Board;
   Component : IPCB_Component;
   Iterator : IPCB_BoardIterator;
Begin
   Board := PCBServer.GetCurrentPCBBoard;
   If Board = Nil Then Exit;

   Iterator := Board.BoardIterator_Create;
   Iterator.AddFilter_ObjectSet(MkSet(eComponentObject));
   Iterator.AddFilter_LayerSet(AllLayers);
   Iterator.AddFilter_Method(eProcessAll);

   Component := Iterator.FirstPCBObject;
   While (Component <> Nil) Do
   Begin
     Component.SetState_SourceFootprintLibrary('RF(MotherBoard).PcbLib');
     Component := Iterator.NextPCBObject;
   End;

   Board.BoardIterator_Destroy(Iterator);

   ShowMessage('Ok!');
End;
shb
Цитата(VladislavS @ Oct 19 2014, 10:09) *
Дело в том, что механизма групповой замены этого параметра в редакторе PCB нет.
Еще раз повторяю - Это и не к чему. Update from PCB Libraries работает и так с пустой или с любой инфой в свойстве компонента в строке Library.
Заполнение этой строки названием библиотеки не дает никакой связи. Update происходит из библиотеки в составе проекта.
Обновление возможно как из самой библиотеки, так и из ПСБ. Это относится к случаю, если у вас в проекте нет схемы.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.