Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Скрипт для обозначения микросхем по ГОСТ
Форум разработчиков электроники ELECTRONIX.ru > Печатные платы (PCB) > Разрабатываем ПП в САПР - PCB development > Altium Designer, DXP, Protel
Gennaj
В продолжение темы про нумерацию многоэлементных компонентов по ГОСТ (т.е. типа D1.1, D1.2 и т.д.).
Вот, тут на досуге написал скриптик, который сперва запускает процесс Annotate (если не нужно - давите Close и переходите ко второй части скрипта), а затем - производит поиск по всем страницам схем в проекте, если находит элемент из нескольких частей, то скрывает его Designator, создает пользовательское поле Pos_GOST, делает его видимым, записывает в него информацию о позиционном обозначении (по ГОСТ) и помещает на то место, где до этого был десигнатор.
После работы скрипта доступно UNDO (правда, я с этим намучался очень долго - отказывалось работать, пока не перезагрузил машину).
Жду отзывов smile.gif

P.S. Скрипту все равно, как названы такие многоэлементные компоненты. То есть работать должно и с транзисторами, и с релюшками и с чем угодно.

P.P.S. Разработано под Альтиум 6.7. Под более ранними версиями может не работать.
Gennaj
Молчание...
Два варианта: или никому не интересно, или не все знают, как правильно запустить скрипт из принципиальной схемы.
Подсказываю: надо создать кнопку на панели редактора схем. Например, такую, как приложена к этому посту smile.gif
Связать ее со скриптом, а затем просто нажать на нее, находясь в принципиальной схеме : smile3046.gif
Владимир
Цитата(Gennaj @ Nov 14 2007, 17:05) *
Молчание...
Два варианта: или никому не интересно, или не все знают, как правильно запустить скрипт из принципиальной схемы.
Подсказываю: надо создать кнопку на панели редактора схем. Например, такую, как приложена к этому посту smile.gif
Связать ее со скриптом, а затем просто нажать на нее, находясь в принципиальной схеме : smile3046.gif

Цитата
Два варианта: или никому не интересно, или не все знают, как правильно запустить скрипт из принципиальной схемы.

Варианта два, но не такие, и оба спроаведливы
1. интересно. wink.gif
2. Не нужно wacko.gif
Shtirlich
работает однако! спасибо. а можно для начинающих общение с альтиумом расписать процедуру забивания кнопочек. нашел только команду ран скрипт.
Gennaj
Цитата(Shtirlich @ Nov 15 2007, 00:42) *
работает однако! спасибо. а можно для начинающих общение с альтиумом расписать процедуру забивания кнопочек. нашел только команду ран скрипт.

Запросто smile.gif
1. Открыть скрипт-проект (файл с расширением .PrjScr).
2. Открыть какую-нибудь принципиальную схему. Это нужно из-за того, что вид панелей инструмента зависит от того, что именно Вы делаете. Поскольку нам необходима кнопка именно в редакторе принципиальных схем, значит надо открыть схему.
3. На пустом месте панели инструментов нажимаете правую клавишу мышки и выбираете пункт Customize. Откроется окно Customizing SCH Editor.
4. В этом окне, на закладке Commands, в списке слева выбираете пункт [Scripts]. Когда Вы выберете этот пункт, в окне справа у Вас появится структура скрипта, открытого в данный момент. Самым нижним будет строчка с названием процедуры, которую необходимо выполнить. В нашем случае там будет строчка с зеленым значком "Annotate_GOST".
5. Удерживая левуюкнопку мыши, перетаскиваете эту строчку в нужное место панели инструментов. как только Вы дотащите кнопку до нужного места и отпустите мышку, откроется окно "Edit Command".
6. В строке "Caption" вводите (по-русски!) подсказку, которая будет появляться при подводе мышки к кнопке ("Перенумерация по ГОСТ").
7. В строке "Bitmap File" указываете путь к файлу с изображением кнопки (можете взять из моего предыдущего поста).
8. Жмете Ok, затем Close.
Кнопка создана! smile.gif
После этого скрипт-проект можно уже закрыть, он все равно будет вызываться из того места, где он был в момент настройки кнопки.




Цитата(Владимир @ Nov 14 2007, 21:14) *
Варианта два, но не такие, и оба спроаведливы
1. интересно. wink.gif
2. Не нужно wacko.gif


smile.gif
Нам пока это тоже не требовалось. Решил, во-первых, отвлечься от основной работы, а, во-вторых, подготовится к возможному "закручиванию гаек" на предмет соответствия ГОСТам. Так что теперь, если вдруг проверяющим это взбредет в голову - сделаем на счет "раз" biggrin.gif
Visuvius
Цитата(Gennaj @ Nov 15 2007, 10:53) *
Запросто smile.gif
[SKIP]


Вот спасибо большое. Теперь по образу и подобию попробую начать писать собственные скрипты.
Не думал, что это так просто.

На счёт скрипта - скрипт очень и очень хороший. Мне пригодится на 100%
uriy
Уважаемый Gennaj не могли бы вы модифицировать скрипт так, чтобы параметр Pos_GOST получил такой же стиль шрифта что и находящийся до этого там Designator. Я пытаюсь одним махом заменить шрифт через Find Similar objects, они все выделяются но почему-то шрифт меняется только у одного элемента.
Gennaj
Цитата(uriy @ Jun 2 2008, 19:50) *
Уважаемый Gennaj не могли бы вы модифицировать скрипт так, чтобы параметр Pos_GOST получил такой же стиль шрифта что и находящийся до этого там Designator. Я пытаюсь одним махом заменить шрифт через Find Similar objects, они все выделяются но почему-то шрифт меняется только у одного элемента.

Пока что я занят, но, как мне кажется, Find Similar должен работать нормально. Опишите, пожалуйста, последовательность Ваших действий подробнее, попробуем найти ошибку. Лучше с картинками.
uriy
Исходные данные: AD summer08 (в предыдущей версии было точно так же).
DXP -> Preferences... -> Schematic -> Default Primitives -> вкладка MMs -> Designator ставлю нужный мне шрифт (в данном случае Gost type B 12) на листе тоже выбрана миллиметровая система координат. Ставлю элементы как на рисунке, затем запускаю скрипт. На переключателях шрифт поменялся на Times new roman. Делаю Find similar objects ставлю Font same. Вылазит SCH Inspector и как надо выделются оба Designator от переключателей. В SCH Inspector меняю FontID на то что мне нужно. Но шрифт меняется только у одного переключателя. Мда порядок какой-то неудачный получился. Надеюсь разберетесь.
Gennaj
Цитата(uriy @ Jun 11 2008, 16:27) *
Делаю Find similar objects ставлю Font same. Вылазит SCH Inspector и как надо выделются оба Designator от переключателей. В SCH Inspector меняю FontID на то что мне нужно. Но шрифт меняется только у одного переключателя.

Ясно. Попробуйте другой порядок действий:
1. Правой клавишей на переключателе, содержащем Pos_GOST - Find Similar Objects.
2. В таблице, кроме Parts - Same, находите строчку с параметром POS_GOST, заменяете ее содержимое на "*" и ставите там Same.
3. В результате у Вас выделятся все компоненты, содержащие параметр Pos_GOST.
4. В открывшемся Sch_Inspectore щелкаете на параметре Pos_GOST, откроется таблица свойств этого параметра. При этом у Вас на схеме окажуться выделенными все надписи Pos_Gost.
5. Меняете там свойство Font на требуемое и все получается, как необходимо smile.gif

Аналогичный порядок действий при смене способа отображения любых других параметров объектов.

P.S. Кстати, только сейчас заметил. У Вас в таблице Find Similar не стоит галочка Select Matching, то есть вы не выделяете найденные Вами объекты, следовательно, Вы не сможете работать с ними со всеми сразу. Когда объект выделен, вокруг него появляются зеленые маркеры.
Да и в SCH Inspectore внизу строчка, которая говорит, что у Вас на схеме выделен ОДИН объект в одном документе. Вот он только с ним и работает smile.gif
uriy
Спасибо. Со всем разобрался мне казалось что раз на этих надписях есть фокус то они уже выделены. Поставил галочку Select Matching и все стало как я хотел.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.