Jump to content

    

S17

Участник
  • Content Count

    126
  • Joined

  • Last visited

Community Reputation

0 Обычный

About S17

  • Rank
    Частый гость

Контакты

  • ICQ
    Array

Recent Profile Visitors

1787 profile views
  1. Благодарю! Но в моём конкретном скрипте лучше подходит именно копирование исходного файла без учёта изменений: порой ручками тоже приходится что-то удалять/корректировать для ГОСТовской распечатки, но не для сохранения!, и бывает, что это происходит до работы этого скрипта - поэтому в этом скрипте для меня лучше сохраниться на уровне исходного файла. Да и кнопки в Альтиуме сохранения файла и "File/Run Script.." находятся очень близко - один раз я промахнулся... и сохранил ГОСТовскую макулатуру... Как оказалось, сохранить схему (или другой объект) с изменениями - это не особо очевидная операция в Альтиуме... Спасибо за предложенный способ! ХитрО :) Хотел для версии 21.5 Альтиума пометить файл, изменённый скриптом, как изменённый (т.к. версия 21.5 не замечает эти изменения) - использовал "SchDocument.DocumentModifiedChanged()", но схемный файл почему-то "не покраснел" (ни при true, ни при false)... Я подумал, что если "насильно" пометить файл изменённым, то исходный тогда будет браться Альтиумом не из кэша, а уже из файла..
  2. "CopyFile" - спасибо, работает! Как всё просто! :) Но тут надо учесть, что сделанные и несохранённые изменения в схеме не попадут в эту копию. Но мне этот метод годится. В Client есть Open, а вот что-то напоминающее Save там не нашёл... Раньше тоже не заботился о сохранении - 18-ая версия сигнализировала о них: файл был "красным" и его можно было закрыть без сохранения и открыть в исходном состоянии. Данный скрипт скрывает на схеме все параметры, кроме Comment, и удаляет механические компоненты - для распечатки по ГОСТ и эти изменения сохранять не нужно, а вот исходную непотраханную схему на всякий случай сохранить надо бы... В версии 21.5 есть какая-то засада: изменённый скриптом файл схемы не подсвечивается красным и если его закрыть и открыть заново, то он представляется в изменённом состоянии - как будто эти изменения были сохранены! Но на самом деле это не так - сам файл пребывает в исходном состоянии и если закрыть и открыть уже проект, то схема будет представлена в первозданном виде! Т.е. при открытом проекте схема открывается как бы не из файла, а из кэша... Тут результирующий скрипт - Удаляет механические компоненты с дезигнатором "E?" и скрывает все параметры, кроме Comment, остальных компонентов.:
  3. Вот (я подозреваю, что основа Вам знакома :) ) Строчки с попыткой сохранить копию - закомментированы: не работают, т.к. нет такого метода "SaveToFile" у них, а подобного я не нашёл...
  4. Коллеги Как внутри скрипта сохранить копию схемы?
  5. Таскать каждый дезигнатор с зажатым Ctrl - это работает. Я хочу в таблице Componets для всех сразу поставить Manual - это даёт возможность выставить нужный шрифт и размер и после этого поставить дезигнаторы на свои места. В 18-ом - это работает, в 21-ом - это пропало и приходится делать двойную работу: сначала приблизительно растащить все дезигнаторы с тем шрифтом и размером какой есть, потом выставить нужный шрифт и размер и ещё раз двигать все дезигнаторы.
  6. В драфтсмане от AD21.5.1 - пропал тип Manual для размещения дезигнаторов (в AD18 - это было). Нужно ручками подвигать дезигнатор - тогда он станет Manual и тогда можно будет менять его шрифт. Но сделать тип размещения Manual через окно Components невозможно - тип Manual в списке выбора отсутствует. Это Баг или я Manual для дезигнаторов не там ищу?
  7. Arlleex Должен тащить в экспорт по указанной "видимости", а на самом деле - тащит всё. AD18 - так и делает, а AD21.5.1 - нет.
  8. AD21.5.1. При экспорте BOM, в таблицу переносятся все колонки, которые заказаны в шаблоне *.xls, а не только те, которые заданы в конфигурации экспорта. Т.е., AD21 не обращает внимание на выбранные в настройках колонки для экспорта и экспортирует всё. AD18 экспортирует только те колонки, которые заданы в конфигурации экспорта. Как в AD21 ограничить экспорт колонками, заданными в конфигурации экспорта (как в AD18)?
  9. Коллеги Пара вопросов по Драфтсману: 1. В Bottom Assembly View в AD21 позиционные обозначения (рефдезы) показываются зеркально - как это исправить (показать нормально)? В AD18 на том же самом файле рефдезы рисуются нормально. 2. Как на Bottom Assembly View показать видимые Top-компоненты? В Bottom Assembly View компоненты с Top-стороны, которые видны и с обратной стороны, - какие-то показывает, какие-то нет... Принцип, по которому драфтсман показывает или не показывает эти компоненты - не уловил... Эта фигня работает одинаково в AD18 и 21.
  10. ХитрО, но работает! Спасибо! Может со временем и в PCB-редакторе что-нибудь появится - чтоб без таких вот "хитростей" :)
  11. Как на PCB можно именно выделить (Select) компоненты, устанавливаемые в конкретном варианте сборки - т.е. "Fitted"?
  12. Мне по душе пришёлся макрос "CopyCompPlacement" от уважаемого peshkoff - ссылку на эту тему он выше привёл.
  13. Да, вроде как, ActiveBOM хорошо справляется с расстановкой Позиций при наличии вариантов. Осталось научиться правильно сортировать - лучше, м.б. макросом в Альтиуме, и научить макрос xls (по формированию ПЭ3, СП, ВП) работать с уже готовыми Позициями и, соответственно, готовой сортировкой… В ходе изучения процесса расстановка Позиций с вариантами, родилась напоминалка: Line Number Column - Позиции Перенумеровывать и корректировать - в Базовом виде. Задать критерии объединения в «тип элемента» (PartNumber, например). При наличии вариантов необходимо оставить показ неустанавливаемых компонентов, иначе можно получить одинаковую Позицию для разных типов. Добавить, если нужно, свои колонки — например Division (для задания раздела в спецификации: 3.Сборочные единицы, 4.Детали, ... 6.Прочие изделия…), и заполнить их значения, пройдясь по всем интересующим вариантам. Добавить новые строки и элементы, если нужно. Нужно учесть, что эти «свои» строки и элементы свойствами вариантности не обладают — т.е., попадают во все варианты. Добавленные ручками элементы и строки в ActiveBOM считаются разными, даже если задать им все одинаковые параметры — эти элементы, как и строки, в один объединяться уже не будут (в «плоском» виде Элементы разворачиваются по одному). Поставить нужный порядок сортировки (+Shift – для последующих колонок досортировки). Вот тут по-хорошему, видимо, потребуется макрос (алгоритм д.б. тем же, как и в макросе автоматического формирования спецификации). Есть особенность (или ошибка Альтиум-18) — добавленные «свои» колонки не запоминаются в цепочке сортировки (в BomSet и при переключении в Плоский вид) и нужно за этим следить… Ещё одна особенность - «Clear sorting» меняет расположение строк, а не оставляет их положение «как есть сейчас»… Удалить старую нумеровку во всех вариантах (выделить ячейки Позиций и нажать Del) – если хотим начать с «чистого листа». Вроде-бы и “Renumber all” с этим тоже справляется. Задать параметры нумерования — стартовый номер и инкремент. Пронумеровать самый «насыщенный» вариант, а остальные донумеровать (в автомате, выбрав «Continue Numbering» - вроде, нормально работает, и/или ручками). Перенумеровать позиции можно в выделенном куске. Можно донумеровать. После этого отсортировать по Позициям и выключить показ неустанавливаемых компонентов. Проверить отсутствие двойных Позиций — система за этим следит, но и самим не стоит лениться. Переключиться в Консолидированный вид: проверить и осмыслить — что получилось, о замеченных ошибках куда-нибудь написать (хотя бы сюда)…
  14. Я такую механику (опорные точки, земляные дырки для зацепок осциллографа...) обрамляю в "Blanket" и перед распечаткой для ГОСТа их удаляю без последующего сохранения схемы (в добавок к другим подготовительным "хитростям"). Соответственно, эта механика не попадёт в обычный BOM (но ей и не надо) и на сборке находится "тихонько" без обозначений или вообще не показывается (для ГОСТа). Но есть механика (сама PCB, как сборочная единица, этикетка ...), которую нужно разместить в спецификации и обозначить номером позиции на сборке. Чтоб попасть в BOM (а от туда уже в спецификацию), получить там номер позиции и этим номером обозначиться на сборке, механика должна оставаться на схеме. То, что на схеме эта механика получает рефдезы (типа "E*?") и ими обозначается на сборке - не прокатило: потребовали номера позиций, хотя против самой механики на схеме не протестовали. Проблема началась, когда на одной плате собиралась пара вариантов и этикетка в спецификации разных вариантов получала разную позицию - подсмотреть этот номер и нарисовать в Драфтсмане одно число не получилось: эти числа были разными (ПЭ3, СП, ВП формируются автоматически)... И начался процесс освоения ActiveBOM.
  15. Немного не понял... Добавленные ручками на PCB компоненты не попадают в AcniveBOM... или это только у меня? Фишка ActiveBOM, как я вижу, это управление номерами позиций (Line#), которые видит Драфтсман (с работой с поставщиками, заменами ещё не разбирался...). Номер позиции может просто идентифицировать группу одинаковых компонентов - сотню..другую кондёров по 0.1мкФ: пакетик с их лентой, записи в таблице с координатами расположения их на плате, их строчку в БОМе, их положение на сборке. Грех - не пользоваться. Сборщикам, пока не накосячили, я полагаю, более интересен этот номер, чем где среди этой сотни-другой находится конкретный C123, к примеру. Да и нормоконтроль будет требовать обозначать на сборке этими номерами позиций "самоделки" всякие (детали, сборочные единицы), в том числе и саму PCB, на которой всё собирается, и этикетки... Этикетки - самоклейки. Наклеить м.б. лучше ещё на голую плату до установки компонентов - чтоб история её сборки не потерялась, если что... Но тогда нужны специальные наклейки-этикетки... Присматриваем и расчищаем место на плате, выбираем подходящий размер для этикетки из кучи стандартных, пытаемся разместить там умные символы и штрихкод и так, чтоб сканер его распознал... Создаём проект в программе формирования этикеток или заказываем на стороне. По совокупности для этикетки это тянет на "самоделку-деталь", что карается обозначением её на сборке "номером позиции" из спецификации (ГОСТ 2.413-72, п.2.19). На плату может напаиваться ещё какой-нибудь "самодельный" модуль (печатный узел) - это уже 100% сборочная единица, которая должна обозначаться на сборке и рефдезом (ГОСТ 2.413-72, п.2.4) и номером позиции (ГОСТ 2.413-72, п.2.19). При наличии соседей по разделу "Сборочные единицы" в спецификации, печатная плата после алфавитной сортировки может и не получить "привычную" 1-ую позицию... А на сборке позицию печатной платы просят указать. Чтобы элементу получить этот номер позиции, он должен попасть в AcniveBOM - колонка "Line#". В Драфтсмане (но, похоже, не в PCB!) этот номер можно показать через Callout. Теперь о том - как в ActiveBOM может попасть эта этикетка, напаиваемый модуль и прочая механика, чтобы получить позицию. 1. Из схемы - на мой взгляд это самый правильный способ (и, в итоге, м.б. самый простой)... Но может оказаться, что не на взгляд нормоконтроля: ему может не понравится наличие "механики" на схеме и прийдётся тогда доказывать - что это "монтажные" элементы. Но у меня прокатило, дальше дело упёрлось в номера позиций (с которыми сейчас и разбираюсь). Создаём символ+футпринт, где в параметрах всё записано: партнамбер ленты или листа чистых этикеток или дец-номер (если через нормоконтроль не прокатит), развёрнутое описание, веб-ссылки, название проекта её формирования... (это для своего рабочего БОМа). Все перекрёстные ссылки работают (Sch-PCB-BOM) - быстро можно найти что-где находится. 2. Ручками вписываем этикетку в ActiveBOM, получаем для неё "номер позиции", но воспользоваться этим номером (из ActiveBOM) на сборке не можем - на PCB нет соответствующего элемента, который бы вытянул этот номер из ActiveBOM... Т.е., это вариант, например, для ЗИП (джамперов в пакетик насыпать, клей не забыть...). Но из библиотеки (тот же джампер) в ActiveBOM элемент у меня добавить не получилось - только ручками вписать, заполнив востребованные параметры (которые могли бы из библиотеки перейти...). 3. Можем прямо на PCB положить элемент из PcbLib и, даже, SchLib, но такие элементы (даже при типе Standart) в ActiveBOM у меня не попадают и, соответственно, "номера позиции" не получают... Да и с параметрами тут будет очень скудно - только описание и как-то партномер можно постараться прикрутить... Т.е. это для элементов, которые в рабочей КД желательно показать, но для нормоконтроля лучше не афишировать - опорные точки, к примеру... Хотя опорные точки, м.б. желательно показать в таблице координат вместе со всеми компонентами, но тогда они должны попасть в ActivBOM, т.е. со схемы... а это опять война с нормоконтролем... Можно, конечно, эту таблицу сформировать "по-старинке" прямо из PCB, но тогда в ней не будет номеров позиций... Пока разбирался с этими "номерами позиций" - вот такой опус получился... По опыту с Альтиум 18.1.3.