143 подписчика

Автоматическая трассировка в KiCad: берем в руки TopoR

3,1K прочитали

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.

KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств. Бесплатный продукт с открытым исходным кодом, по функционалу находящийся вполне на уровне тяжеловесных коммерческих продуктов, такими как Altium Designer или Eagle.

Единственное, что не в лучшую сторону отличает KiCad от своих коммерческих собратьев - это отсутствие встроенной функции автоматической трассировки. Конечно, 90 из 100 разработчиков электроники в этом месте наверняка скажут: "автотрассировка - это для слабаков". Да, действительно, тщательно разведенная вручную плата всегда превзойдет по качеству результат работы даже самого продвинутого автоматического трассировщика. Однако время, затрачиваемое на кропотливое протягивание дорожек вручную, в условиях острого цейтнота иногда вынуждает прибегнуть к функции автотрассировки.

Правда, до недавнего времени KiCad дружил "из коробки" со свободно распространяемым автотрассировщиком FreeROUTE. Не самый интеллектуальный и быстрый автотрассировщик в мире, конечно... Но ведь дареному коню, как известно, в зубы не смотрят. Пользовались люди и не безуспешно. Однако в 2014 году произошло крайне печальное для всех лентяев, не желающих разводить свои платы вручную, событие: Alfons Wirtz, создатель FreeROUTE, внезапно прекратил работу над своим детищем, решив посвятить остаток жизни садоводству и медитативным практикам (шучу, на самом деле я понятия не имею, что побудило Альфонса забросить свой проект и чем он занимается сейчас). Так или иначе, FreeROUTE остался в истории в виде заброшенного проекта на гитхабе и не очень удачной попытки его возрождения группой энтузиастов.

Признаться, я сам люблю разводить свои шедевры вручную, поэтому не очень-то убивался по случаю безвременной кончины FreeROUTE. Однако всегда хочется иметь в запасе инструмент, позволяющий при необходимости сделать проект в предельно сжатые сроки. Все варианты с "пролеченными" версиями коммерческих продуктов я с негодованием отметаю, ибо свято чту уголовный кодекс.

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-2

И вот я недавно я открыл для себя замечательную разработку отечественных разработчиков из Сколково - трассировщик TopoR. Собственно, слышал я про него давно, но пощупать вживую как-то все руки не доходили. А тут как раз потребовалось шустро, буквально за пару часов, разработать небольшую платку в KiCad. Ну и решил облегчить себе жизнь, а заодно и рассмотреть вблизи этот самый знаменитый "русский топор". Бесплатная версия Lite позволяет разводить до 125 цепей, а мне больше как раз и не надо было.

Вот моя плата в кикадовском Pcbnew, еще не разведенная, но с более-менее адекватно расставленными элементами:

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-3

Разводить будем в 2 слоя, ширина дорожки 1 мм, зазор 0.3 мм. Правила, как положено, прописываем в Design Rules.

Далее экспортируем плату в формат Specctra DSN для последующей передачи в TopoR:

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-4

Рекомендую все "топорные" файлы хранить в отдельной папочке внутри папки основного кикадовского проекта.

Запускаем TopoR и импортируем только что сохраненный файл:

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-5

Далее выбираем формат Specctra и указываем путь к файлу с расширением .dsn:

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-6

Последовательно жмем Import, Finish и Create.

Вуаля! Наша неразведенная плата снова перед нами:

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-7

В простейшем случае сразу переходим к автоматической разводке:

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-8

В появившемся окошке нажимаем Start и в реальном времени любуемся напряженной работой искусственного интеллекта:

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-9

Вскоре программа выдаст вам рекомендацию остановить процесс, поскольку существенных улучшений уже достигнутого результата по ее мнению добиться уже не удастся. Согласимся и выберем понравившийся вариант. Я выбрал тот, что с чуть большей общей длиной дорожек, но зато без переходных отверстий:

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-10

Возвращаемся в редактор и видим результат разводки:

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-11

Да-да, я знаю что вы сейчас скажете... С эстетической точки зрения "топорная" разводка выглядит просто ужасно. Я так рисовал платы при помощи цапон-лака и маминого рейсфедера в 8 классе. Кстати, кто помнит что такое рейсфедер? Чур не гуглить!

Но, несмотря на кошмарно кривые дорожки, электрические параметры разведенных топором плат ох как хороши! Минимальная длина проводников, избегание параллельных линий - все это очень круто с точки зрения помехозащищенности. В этом и состоит ноу-хау разработчиков этого замечательного продукта. Так что, ну ее, эту эстетику. Главное, чтобы получившийся девайс работал потом как надо.

Осталось вернуть разведенную плату обратно в кикадовский проект:

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-12

Далее выбираем тот же формат Specctra и, провалившись в Settings, задаем целевой системой KiCad:

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-13

Нажимаем последовательно Export, Finish и возвращаемся в KiCad Pcbnew. Здесь совершаем обратную процедуру:

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-14

Указываем только что созданный файл с расширением .ses

Иногда в этом месте программа ругается на русские буквы в разделе session (это первая строчка файла .ses). При необходимости откорректируйте: оставьте, например, только имя файла, без пути. Это ровным счетом ни на что не влияет.

И вот наша разведенная плата уже в KiCad:

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-15

Осталось облагородить, добавить надписи в слоях Silk, заливку зон GND и т. п.

И вот что в итоге получилось:

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-16
 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-17

С учетом всех экспортно-импортных манипуляций TopoR справился минут за 7. Вручную на разводку я потратил бы не меньше часа.

Да, кстати, для интересующихся, что же такое я разводил. Это был стабилизатор анодного напряжения для лампового усилителя. Сам тоже такой теплый, ламповый, бескомпромиссный...

Результатом доволен, рекомендую!

 KiCad EDA - одна из самых популярных в мире платформ разработки печатных плат для электронных устройств.-18