Печать

Программы (Автор: dez)

Как и многие другие электронщики в последнее время, для своих железоразработческих нужд я использую KiCad (на данный момент - 5.1.10). В зависимости от ситуации, платы мне приходится и дома травить, и на производстве заказывать. Понятное дело, что фабричные платы лучше и точнее - двухслойку с тонкими дорожками я на коленке делать не возьмусь. Однако, возможности производств тоже не безграничны, и у каждого завода есть определенные требования к заказу.

Поэтому в любом случае первое, что делается перед началом разводки - настройка правил. Ширина дорожек, зазоры, диаметры отверстий - наиболее важные вещи. Пропустишь их - и появится риск разводить все заново. Есть и менее важные настройки, которые легко забыть, так как они не влияют на проводящий рисунок. Например толщина линий шелкографии. Но у заводов и к этому параметру есть требования - обычно нижняя граница находится около 0.15 мм, а в библиотеках KiCad толщина шелкографии 0.12 мм - можно нарваться на цену с повышающим коэффициентом или другие приключения, тут как повезет. И так мы подходим к вопросу дня: как в KiCad глобально поменять толщину текста и линий шелкографии на уже готовой плате?

 

Способ 1 - хакерский

Когда я озадачился этим вопросом и начал искать решение, первый найденый в поисковике совет отправил меня ковырять файл платы в блокноте. Файлы схемы и платы в KiCad имеют понятный текстовый (human-readable) формат, так что все сводится к простому "найти и заменить".

Конечно, нельзя просто заменить все "0.12" на "0.15", потому что так можно задеть что-то лишнее, например повредить координаты компонентов. Поэтому делаем бэкап файла платы, затем ищем строки вида:

(fp_line (start 2.5 2.7) (end -2.5 2.7) (layer F.SilkS) (width 0.12))

В принципе, расшифровка тут не требуется. Не забываем обращать внимание на слой (F.Silk - верхняя шелкография). В моем случае замена по всему файлу выглядела так:

(layer F.SilkS) (width 0.12) -> (layer F.SilkS) (width 0.15)

В каких-то случаях может понадобиться несколько проходов, но, как видите, идея в целом несложная и сделать все это можно быстро.

Толщина текста описывается немного по-другому. Для позиционного обозначения в слое шелкографии сверху платы это выглядит примерно так (см. параметр thickness):

(fp_text reference D1 (at 0 -3.5 180) (layer F.SilkS)
  (effects (font (size 1 1) (thickness 0.15)))
)

 

Способ 2 - официальный

Вскоре после этих экспериментов выяснилось, что в pcbnew уже есть функция для таких случаев. Лежала она в меню "Правка" и называлась достаточно логично: "Править свойства текста и графики..." Вот так и живем, что тут еще скажешь.

Прежде чем пользоваться этой функцией, есть смысл настроить правила, в нашем случае - толщину линий шелкографии. Делается это в меню "Параметры платы" (или "Файл - Настроить плату...") в разделе "Текст и графика". Это необязательный шаг, но именно по причине ненастроенных правил нам и приходиться всем этим заниматься. Если этого не сделать, то в будущем при изменениях в плате (новые посадочные места и т.д.) нам опять придется отлавливать линии не той толщины.

KiCad Параметры платы

Затем можно переходить к главному. Открываем "Правка - Править свойства текста и графики..." Появившееся диалоговое окно поделено на 3 блока - область, фильтры и действие. Если нужно поменять только толщину линий на шелкографии посадочных мест, то:

  • В блоке "Область" выбираем "Графические элементы посад.места"
  • В блоке "Фильтры" выбираем элементы из слоя F.Silk (или B.Silk, по ситуации)
  • В блоке "Действие" жмем радиокнопку "Установить значения по умолчанию для слоя", если нужные настройки уже прописаны в параметрах платы. Если нет или нужна другая толщина, то "Установить указанные значения" и прописываем толщину линии в соответствующее поле ввода.

KiCad Править свойства текста и графики

Обратите внимание, что выбор слоя в блоке "Действие" несет другую функцию, отличную от фильтра. Если в этом примере в "Действие" поставить слой F.Silk, то все графические элементы (линии, дуги) футпринта перенесутся в слой F.Silk из других слоев, таких как F.CrtYd к примеру. Что в большинстве случаев нам НЕ нужно :)

Для надписей с позиционными обозначениями все примерно так же, только выбираем область "Обозначение посад.места". Имейте в виду, что параметр "Толщина линий" не влияет на надписи. Толщина текста задается в отдельном поле.

Статья опубликована 2021-09-26 18:42:58, её прочитали 2034 раз(а).