Files
OptoTest/PCB/Scripts/RivetViaConverter

Rivet Via Converter для Altium Designer

Скрипт анализирует все отверстия активного PcbDoc и преобразует в размеры имеющихся заклёпок как сквозные Via, так и все сверлёные Pad. Обрабатываются свободные объекты на плате и примитивы внутри футпринтов:

Исходный Hole Size Новый Hole Size Диаметр меди Диаметр зоны изоляции
<= 0,3 мм 0,9 мм 1,7 мм 2,2 мм
<= 1,1 мм 1,3 мм 2,1 мм 2,7 мм
> 1,1 мм 2,0 мм 2,8 мм 3,7 мм

Дополнительный запас к внешнему диаметру не добавляется. Глухие и скрытые Via не изменяются. Также игнорируются неплакированные Pad и отверстия, у которых внешний размер площадки равен диаметру отверстия, то есть отсутствует медное кольцо. SMD Pad с нулевым размером отверстия не изменяются. Диаметр меди всегда равен Hole Size + 0,8 мм. У сверлёных Pad задаются одинаковые X/Y-размеры меди на Top, Mid и Bottom, но исходная форма площадки сохраняется. Готовые размеры распознаются отдельно, поэтому скрипт можно запускать повторно без дальнейшего увеличения.

Скрипт проверяет активное общее правило Clearance со Scope All / All. Для каждой группы отдельное правило создаётся или обновляется только тогда, когда общий clearance меньше требуемого зазора от края меди. Если общий clearance уже достаточен, правило группы не создаётся, а ранее созданное скриптом правило удаляется.

Возможные отдельные правила:

  • RIVET_03_RoutingIsolation — зазор от края меди 0,25 мм;
  • RIVET_11_RoutingIsolation — зазор от края меди 0,30 мм;
  • RIVET_GT11_RoutingIsolation — зазор от края меди 0,45 мм.

Область действия первой стороны каждого правила автоматически выбирает Via и plated Pad с соответствующей парой Hole Size/диаметр. Вторая сторона выбирает только дорожки, дуги трассировки, медные Fill/Region и Polygon. Поэтому другие Pad и Via могут располагаться ближе и продолжают использовать обычное правило clearance платы, например 0,5 мм.

Например, при общем clearance 0,5 мм он уже превышает все три требуемых значения (0,25 / 0,30 / 0,45 мм), поэтому ни одно дополнительное правило не понадобится.

Запуск

  1. Откройте RivetViaConverter.PrjScr в Altium Designer.
  2. Откройте и сделайте активным нужный PcbDoc.
  3. Выберите File -> Run Script.
  4. Для проверки без изменений запустите AnalyzeVias — несмотря на историческое имя процедуры, она проверяет и Via, и сверлёные Pad.
  5. Для преобразования и синхронизации правил запустите ConvertViasToRivets — она изменяет оба типа объектов.
  6. Проверьте показанную сводку и нажмите OK.

Все изменения формируются как одна операция Undo. Скрипт не сохраняет файл автоматически.

После преобразования

Запустите DRC: увеличенные площадки могут нарушить Clearance или выйти слишком близко к контуру платы. Также проверьте настройки Solder Mask Expansion: медь вокруг заклёпки должна быть открыта с обеих сторон платы. Сам скрипт настройки паяльной маски и правила PCB не меняет.