Краткое руководство для освоения основных принципов успешной разработки печатных плат электронных устройств в системе автоматизированного проектирования KiCad

Авторские права © 2010-2018 на данный документ принадлежит его разработчикам (соавторам), перечисленным ниже. Документ можно распространять и/или изменять в соответствии с правилами лицензии GNU General Public License (http://www.gnu.org/licenses/gpl.html), версии 3 или более поздней, или лицензии типа Creative Commons Attribution License (http://creativecommons.org/licenses/by/3.0/), версии 3.0 или более поздней.

Все торговые знаки этого руководства принадлежат его владельцам.

Соавторы

David Jahshan, Phil Hutchinson, Fabrizio Tappero, Christina Jarron, Melroy van den Berg.

Перевод

Викулов Ю.Н. <[email protected]> - русская версия (с использованием пошагового руководства по kicad © 2010)
Барановский Константин <[email protected]>, 2016-2019

Обратная связь

Оставить свои комментарии или замечания можно на следующих ресурсах:

Дата публикации

16 мая 2015 года

Введение в KiCad

KiCad – это кроссплатформенный комплекс программ с открытым исходным кодом, предназначенный для разработки электрических принципиальных схем и автоматизированной разводки печатных плат. Именем (логотипом) KiCad обозначается мощный пакет следующих самостоятельных программных инструментов:

Название программы Описание Типы файлов

KiCad

Менеджер проектов

*.pro

Eeschema

Редактор электрических схем (и компонентов)

*.sch, *.lib, *.net

Pcbnew

Редактор топологии (проводящего рисунка) печатных плат

*.kicad_pcb

GerbView

Обозреватель файлов формата Gerber

Все основные форматы Gerber

Bitmap2Component

Программа создания компонентов или посадочных мест из растрового образа

*.lib, *.kicad_mod, *.kicad_wks

PCB Calculator

Расчёт параметров компонентов, ширины дорожек, зазоров между дорожками, номиналов элементов по цветовому коду и прочего…

Нет

Pl Editor

Редактор оформления листа (создание и редактирование рамок)

*.kicad_wks

Указанный список типов файлов не полон, он отображает только часть из поддерживаемых в KiCad, необходимых для лучшего понимания того, какие файлы используются каждой программой из пакета KiCad.

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

KiCad не накладывает ограничений на размер платы, с его помощью можно разрабатывать платы, содержащие до 32 медных слоёв (слоёв металлизации), до 14 технических слоёв и до 4 вспомогательных слоёв. В сквозном цикле проектирования KiCad позволяет создать все файлы, необходимые для производства печатных плат: Gerber-файлы для фотоплоттеров, файлы для сверления отверстий в платах, установки на них компонентов и другие.

Будучи ПО с открытым исходным кодом (лицензируемый GPL), KiCad представляет собой идеальный инструмент для проектов, ориентированных на разработку электронных устройств с открытой документацией.

Домашняя страница KiCad в Интернете:

Загрузка и установка KiCad

KiCad работает на Linux, Apple macOS и Windows. Последнюю версию KiCad можно загрузить по адресу:

Стабильные выпуски KiCad создаются периодически в соответствии с Политикой выпуска стабильных версий KiCad. Новые возможности постоянно добавляются в рабочую ветку. Если хотите воспользоваться этими возможностями и помочь в тестировании, скачайте пакет последнего ночного выпуска для своей платформы. В ночных выпусках могут появляться ошибки, которые, например, формируют плохие Gerber-файлы и т.п., но цель команды разработчиков KiCad сохранить рабочую ветку пригодной для использования, насколько это возможно при разработке новых функций.

GNU/Linux

Стабильные выпуски KiCad можно найти в пакетных менеджерах большинства дистрибутивов под именами kicad и kicad-doc. Если дистрибутив не предоставляет последнюю стабильную версию программы, следуйте инструкциям для сборки нестабильной версии, чтобы аналогично собрать и установить последнюю стабильную версию.

В Ubuntu самый простой путь для установки нестабильного выпуска – использовать PPA и Aptitude. Наберите следующее в своём Терминале:

sudo add-apt-repository ppa:js-reynaud/ppa-kicad
sudo aptitude update && sudo aptitude safe-upgrade
sudo aptitude install kicad kicad-doc-en

В Debian, простейший путь установить более новую версию (backports build) KiCad, следующий:

# Установить Debian Backports
echo -e "
# stretch-backports
deb http://ftp.us.debian.org/debian/ stretch-backports main contrib non-free
deb-src http://ftp.us.debian.org/debian/ stretch-backports main contrib non-free
" | sudo tee -a /etc/apt/sources.list > /dev/null

# Выполнить обновление и установить KiCad
sudo apt-get update
sudo apt-get install -t stretch-backports kicad

В Fedora самый простой путь для установки нестабильного выпуска – использовать copr. Для установки KiCad с помощью copr наберите в нём:

sudo dnf copr enable @kicad/kicad
sudo dnf install kicad

Также, можно загрузить и установить уже собранную версию, либо непосредственно загрузить исходный код, скомпилировать и установить KiCad.

Apple macOS

Stable builds of KiCad for macOS can be found at: https://downloads.kicad.org/kicad/macos/explore/stable

Unstable nightly development builds can be found at: https://downloads.kicad.org/kicad/macos/explore/nightlies

Windows

Stable builds of KiCad for Windows can be found at: https://downloads.kicad.org/kicad/windows/explore/stable

For Windows you can find nightly development builds at: https://downloads.kicad.org/kicad/windows/explore/nightlies

Поддержка

Если имеются идеи, замечания, вопросы или просто нужна помощь:

Маршрут проектирования в KiCad

Несмотря на сходство с другими программными средствами для изготовления печатных плат, KiCad характеризуется своеобразным маршрутом проектирования, в котором компоненты схемы и посадочные места являются, фактически, двумя независимыми объектами. Только после создания схемы, посадочные места назначаются компонентам.

Обзор

Маршрут проектирования в KiCad состоит из двух основных задач: создание электрической схемы и размещение элементов на плате. Для этого необходимы библиотеки компонентов и посадочных мест. KiCad имеет много библиотек обоих типов и инструменты для их создания.

На рисунке изображена блок-схема, отображающая маршрут проектирования в KiCad. Здесь отражено, какие шаги необходимо предпринять и в каком порядке. Где возможно, добавлены иконки инструментов для большей наглядности.

Маршрут проектирования в KiCad

Дополнительную информацию о создании компонентов схемы можно найти в разделе Создание компонентов схемы в KiCad этого документа. Созданию посадочных мест посвящён раздел Создание посадочных мест этого документа.

Quicklib — это приложение, позволяющее быстро создавать компоненты библиотеки KiCad. Более подробная информация о quicklib доступна в разделе Создание компонентов схемы с помощью quicklib этого документа.

Прямая и обратная аннотация

После того, как электрическая схема полностью начерчена, следующий шаг — перенос её на печатную плату. Часто, после создания платы, возникает необходимость в добавлении компонентов схемы или цепей, их перемещении или ещё чего-нибудь. Это можно произвести двумя путями: при помощи прямой или обратной аннотации.

Прямая аннотация – это процесс передачи изменений из электрической схемы в соответствующую разведённую печатную плату. Это очень важное свойство, так как не хотелось бы переделывать трассировку целой платы заново каждый раз, когда изменяется схема. Прямая аннотация обсуждается в разделе Прямая аннотация.

Обратная аннотация – это процесс передачи изменений разведённой печатной платы обратно в соответствующую ей схему. Две основные причины использования обратной аннотации — это замена частей компонента и выводов. В таких случаях, части или выводы, выполняющие одну и ту же функцию, можно поменять местами в процессе трассировки печатной платы. Как только эти изменения сделаны, можно передать их обратно в схему.

Управление KiCad

Управление с клавиатуры

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

Сочетания клавиш

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

Сочетания клавиш отображаются справа на всех элементах меню:

Сочетания клавиш

Горячие клавиши

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

Чтобы просмотреть горячие клавиши, назначенные каждому из инструментов KiCad, перейдите в меню Справка → Список текущих клавиш…​ или нажмите сочетание клавиш Ctrl+F1:

Горячие клавиши

Можно изменить любую горячую клавишу, пройдя в меню: Настройки → Настройки горячих клавиш.

Далее в документе, горячие клавиши будут указываться в квадратных скобках, например так [a]. Если увидите [a], значит нужно нажать клавишу "а" на клавиатуре.

Пример

Рассмотрим простой пример добавления проводника в схеме.

Для использования сочетания клавиш, нажмите "Shift + W", вызывая таким образом команду "Разместить проводник" (обратите внимание, форма курсора изменится). Далее, нажмите левую кнопку для расположения начальной точки и начала черчения проводника.

Используя горячие клавиши, достаточно нажать [w] и черчение проводника начнётся сразу же, начиная с текущей позиции курсора.

Создание электрических схем

В этом разделе описан процесс создания электрической схемы с помощью KiCad.

Использование Eeschema

  1. В ОС Windows запустите kicad.exe. В Linux введите kicad в Терминале. Откроется главное окно менеджера проектов KiCad. Отсюда имеется доступ к восьми автономным программным инструментам: Eeschema, Schematic Library Editor, Pcbnew, PCB Footprint Editor, GerbView, Bitmap2Component, PCB Calculator и Pl Editor. Чтобы понять когда и каким инструментом нужно воспользоваться, обратитесь к маршруту проектирования KiCad.

    Главное окно KiCad
  2. Создайте новый проект: ФайлНовыйПроект. Укажите имя для файла проекта 'tutorial1'. К имени файла проекта будет автоматически добавлено расширение '.pro'. Внешний вид диалогового окна зависит от используемой операционной системы, но в нём должен присутствовать параметр для создания нового каталога. Этот параметр должен быть отмечен, кроме случаев, когда отдельный каталог проекта уже создан. Все файлы проекта будут храниться в данном каталоге.

  3. Давайте начнём с создания электрической схемы. Запустите редактор схем Eeschema, Eeschema. Это первая кнопка слева.

  4. Нажмите кнопку 'Настройки страницы' Sheet settings icon на верхней панели инструментов. Установите подходящий 'Размер' страницы ('А4','8.5x11' и т.п.) и введите 'Урок 1' в поле 'Наименование'. Здесь, при необходимости, можно ввести много разной информации. Нажмите 'OK'. Введённые данные будут внесены в основную надпись схемы внизу справа. Используйте колесо прокрутки мыши для её увеличения. Сохраните весь проект схемы: ФайлСохранить.

  5. Теперь добавим первый компонент. Нажмите кнопку 'Разместить компонент' Add component Icon на правой панели инструментов. Выполнение этой же функции достигается нажатием клавиши быстрого набора команд [a] 'Разместить компонент'.

  6. Нажмите левой кнопкой мыши в середине листа схемы. Появится окно Выбора компонента. Сейчас нужно разместить резистор. В поле Фильтр введите 'R' для поиска Resistor. Можно заметить, что над компонентом 'Resistor' указан заголовок 'Device'. Этот заголовок 'Device' — название библиотеки, в которой расположен данный компонент; также в ней содержится множество других полезных компонентов.

    Выбор компонента
  7. Дважды щёлкните левой кнопкой мыши на компоненте. Закроется окно 'Выбора компонента'. Расположите компонент на листе схемы, нажав левую кнопку мыши в нужном месте.

  8. Нажмите на кнопку лупы с плюсом, чтобы увеличить компонент. Также, для увеличения или уменьшения можно использовать колесо мыши. Нажатием и удержанием колеса мыши (средняя кнопка) выполняется горизонтальное и вертикальное панорамирование.

  9. Расположите указатель мыши над компонентом 'R' и нажмите клавишу [r]. Компонент должен повернуться. Заметьте, не нужно нажимать кнопки мыши на компоненте, чтобы повернуть его.

    Если под курсором окажется несколько компонентов, будет показано контекстное меню.'Уточнение выбора' — часто встречаемое меню в KiCad, которое позволяет обрабатывать компоненты расположенные друг над другом. В данном случае, укажите KiCad, что нужно выбрать 'Компонент R…​'.
  10. Нажмите правой кнопкой мыши в центр компонента и выберите СвойстваПравить значение…​. Этого же результата можно достигнуть, расположив указатель мыши над компонентом и нажав клавишу [v]. К тому же, клавиша [e] предоставит более полное окно редактирования. Обратите внимание, в контекстном меню, показанном ниже, также отображаются доступные сочетания клавиш для каждого действия.

    Меню редактирования компонента
  11. В появившемся окне 'Значение поля' замените текущее значение 'R' на '1 k'. Нажмите 'OK'.

    Не изменяйте поле 'Обозначение' ('R?'), это будет сделано позже автоматически. Теперь, под резистором будет отображено значение '1 k'.
    Номинал резистора
  12. Для добавления другого резистора просто щёлкните левой кнопкой мыши в то место, где его нужно расположить. Снова появится окно 'Выбора компонента'.

  13. Выбранный ранее резистор теперь отображается в списке истории как 'R'. Нажмите 'OK' и разместите компонент.

    История компонентов
  14. Если допустили ошибку и хотите удалить компонент, нажмите правой кнопкой мыши на компоненте и выберите 'Удалить'. Это действие удалит компонент из схемы. Также, можно поместить указатель мыши над компонентом и нажать клавишу [Delete].

  15. Также можно создать копию компонента, имеющегося на листе схемы, расположив над ним указатель мыши и нажав клавишу [c]. Чтобы расположить новый скопированный компонент, нажмите левой кнопкой мыши в нужном месте.

  16. Нажмите правой кнопкой мыши на втором резисторе. Выберите 'Перетащить'. Перетащите компонент и нажатием левой кнопки мыши расположите его. Того же результата можно достигнуть, расположив указатель мыши над компонентом и нажав клавишу [g]. Чтобы повернуть компонент, используйте клавишу [r]. Клавиши [x] и [y] зеркально отражают компонент.

    Правая кнопка мышиПереместить (равносильно нажатию клавиши [m]) также является приемлемым вариантом для перемещения чего-либо, но его лучше применять только на обозначениях компонентов и компонентах, которые ещё не соединены. Далее будет показано, почему это важно.
  17. Отредактируйте второй резистор, поместив над ним указатель мыши и нажав клавишу [v]. Поменяйте 'R' на '100'. Можно отменить результат этого редактирования, нажав комбинацию клавиш [ctrl+z].

  18. Измените размер сетки. Можно заметить, что на листе схемы все компоненты привязаны к сетке с крупным шагом. Размер сетки можно легко изменить через Правая кнопка мышиСетка. В общем случае, для листа схемы рекомендуется использовать шаг сетки 50.0 mils.

  19. Далее нам потребуется компонент из библиотеки, которая может отсутствовать в проектах по умолчанию. Выберите пункт меню НастройкиМенеджер библиотек компонентов…​. В диалоговом окне менеджера библиотек расположены две таблицы на вкладках: Глобальные библиотеки и Библиотеки проекта. Каждая таблица отвечает за отдельный файл sym-lib-table. Чтобы библиотека компонентов (файл *.lib) стала доступной, её необходимо добавить в одну из таблиц. Если файл библиотеки имеется на диске, но ещё не подключён к проекту, его можно добавить в любой из файлов sym-lib-table. Ради примера, далее будет показан процесс добавления библиотеки, которая уже имеется в таблице.

  20. Перейдите к таблице проекта. Нажмите кнопку просмотра каталогов под таблицей.Теперь нужно найти место установки стандартных библиотек KiCad на компьютере. Ищите папку 'library' содержащую сотни файлов .dcm и .lib. Попробуйте поискать в C:\Program Files (x86)\KiCad\share\ (Windows) и /usr/share/kicad/library/ (Linux). Когда найдёте эту папку, выберите и добавьте библиотеку 'MCU_Microchip_PIC12.lib', а затем закройте диалоговое окно.Будет показано предупреждение о том, что библиотека с таким именем уже присутствует в библиотеке, всё равно добавьте. Она добавиться в конец списка. Щёлкните по уникальному имени и измените его на 'microchip_pic12mcu'. Закройте окно менеджера библиотек с помощью кнопки ОК.

  21. Повторите шаги добавления компонента, выбрав на этот раз библиотеку 'microchip_pic12mcu' вместо библиотеки 'Device'. Выберите из неё компонент 'PIC12C508A-I/SN' вместо компонента 'R'.

  22. Расположите указатель мыши над компонентом микроконтроллера. Проследите как повторные нажатия [x] и [y] отражают компонент. Оставьте компонент отражённым по оси Y так, чтобы выводы G0 и G1 указывали вправо.

  23. Повторите шаги добавления компонента, выбрав на этот раз из библиотеки 'Device' компонент 'LED'.

  24. Расположите все компоненты на листе схемы так, как показано на рисунке ниже.

    gsik_tutorial1_010_png
  25. Сейчас нужно создать компонент схемы 'MYCONN3' для трёх-контактного соединителя. Можете перейти к разделу под названием Создание компонентов схемы в KiCad, чтобы узнать, как создать этот компонент с нуля и затем вернутся обратно для дальнейшей работы с платой.

  26. Теперь можете разместить только что созданный компонент. Нажмите клавишу [a] и выберите компонент 'MYCONN3' из библиотеки 'myLib'.

  27. Компонент появится с 'Обозначением' — 'J?' и с полем 'Значение' — 'MYCONN3'. Если хотите изменить его местоположение, нажмите правой кнопкой мыши на 'J?' и выберите 'Переместить поле' (равносильно выбору клавиши [m]). Возможно до этого действия будет полезным увеличить масштаб. Переместите 'J?' под компонент, как показано на рисунке ниже. Обозначение компонента можно перемещать столько раз, сколько нужно.

    gsik_myconn3_s_png
  28. Пришло время разместить символы питания и земли. Нажмите на кнопку 'Разместить порт питания' add_power_png в правой панели инструментов. Или можно просто нажать клавишу [p]. В окне выбора компонента прокрутите список вниз и выберите 'VCC' из библиотеки 'power'. Нажмите 'OK'.

  29. Нажмите левую кнопку мыши над выводом резистора номиналом '1 k', чтобы расположить элемент 'VCC'. Нажмите левой кнопкой мыши на участок над выводом 'VDD' микроконтроллера. В разделе 'Список истории' из окна 'Выбора компонента' выберите 'VCC' и расположите его за выводом 'VDD'. Повторите процесс добавления снова и разместите элемент 'VCC' над выводом 'VCC' компонента 'MYCONN3'. Если потребуется, можете переместить поле обозначения или значения.

  30. Повторите последовательность добавления символов питания, но теперь выберите элемент 'GND'. Разместите 'GND' под выводом 'GND' компонента 'MYCONN3'. Разместите другой символ 'GND' слева от вывода 'VSS' микроконтроллера. Схема должна выглядеть теперь как на рисунке ниже.

    gsik_tutorial1_020_png
  31. Далее соедините все компоненты проводниками. Нажмите кнопку 'Разместить проводник' Place wire на правой панели инструментов.

    Будьте внимательны, не нажмите кнопку 'Разместить шину', которая расположена точно под этой кнопкой, но имеет немного другую форму и синий цвет. В разделе Шинные соединения в KiCad будет рассказано как использовать инструмент 'Шина'.
  32. Нажмите левой кнопкой мыши на маленький кружок в конце вывода 7 микроконтроллера и затем на маленький кружок на выводе 1 элемента 'LED'. Левый щелчок мыши при черчении проводника создаст точку изгиба. Во время соединения выводов можно изменять масштаб.

    Если нужно переставить соединённые компоненты, важно использовать не клавишу [m] ('Переместить'), а клавишу [g] ('Перетащить'). Использование перетаскивания сохранит проводные связи. Просмотрите шаг 24, если забыли, как передвинуть компонент.
    gsik_tutorial1_030_png
  33. Повторите этот приём и соедините проводниками все остальные компоненты так, как показано на рисунке ниже. Двойным щелчком мыши можно завершить проводник в любом месте. Когда прокладка проводников осуществляется к символам 'VCC' и 'GND', проводник должен подключаться к нижней части значка 'VCC' и к середине верхней части значка 'GND'. Посмотрите на рисунок ниже.

    gsik_tutorial1_040_png
  34. Теперь рассмотрим альтернативный путь создания соединений используя метки. Выберите инструмент маркировки цепи, нажав кнопку 'Разместить имя цепи (локальная метка)' add_line_label_png на правой панели инструментов. Или используйте клавишу [l].

  35. Нажмите левой кнопкой мыши в середину проводника, соединённого с шестым выводом микроконтроллера. Назовите эту метку 'INPUT'. Метка остаётся отдельным компонентом, который можно, к примеру, переместить, повернуть или удалить. Чтобы цепь обрела название метки, опорная точка (в виде небольшого прямоугольника) должна быть размещена непосредственно на проводе, либо на выводе.

  36. Повторите эту процедуру и разместите другую метку на линии справа от резистора номиналом 100 Ом. Она будет также называться 'INPUT'. Две метки, имеющие одно и то же имя, создают связь (не прорисованную) между шестым выводом PIC и резистором 100 Ом. Этот способ удобен для соединения проводов в сложных устройствах, где рисование линий может в итоге привести к ошибкам в схеме. Чтобы разместить метку, необязательно нужен провод, можно просто присоединить метку к контакту.

  37. Меткой можно также просто подписать провод для информативных целей. Разместите метку над седьмым выводом PIC-а. Введите имя 'uCtoLED'. Назовите провод между резистором и 'LED' — 'LEDtoR'. Назовите провод между 'MYCONN3' и резистором — 'INPUTtoR'.

  38. Нельзя использовать метками на проводах заземления и питания, поскольку они по-умолчанию помечены в соответствии с выводами этих элементов.

  39. На рисунке ниже показано, как должен выглядеть конечный результат.

    gsik_tutorial1_050_png
  40. Давайте теперь разберёмся с не присоединёнными проводами. Любой контакт или провод, который ни с чем не соединён, станет причиной предупреждения, будучи проверен KiCad-ом. Чтобы избежать этих предупреждений, нужно проинформировать программу, что провода не присоединены намеренно, либо вручную отметить каждый не присоединённый провод или контакт как не подключённый.

  41. Нажмите кнопку 'Разместить флаг 'не соединено' noconn_png на правой панели инструментов. Нажмите левой кнопкой мыши на выводах 2, 3, 4 и 5. На них появится 'Х'-образный символ, означающий, что к ним намеренно не подключены проводники.

    gsik_tutorial1_060_png
  42. Некоторые компоненты имеют невидимые выводы питания. Чтобы сделать их видимыми нажмите на кнопку 'Показать скрытые выводы' hidden_pin_png на левой панели инструментов. Скрытые выводы питания автоматически соединяются с цепями, которые имеют такие же названия, например, 'VCC' и 'GND'. В общем случае, нужно стараться не выявлять скрытых выводов питания.

  43. Теперь необходимо добавить символы 'Power Flag', которые укажут KiCad’у, что питание подаётся от них. Нажмите клавишу [p] и отыщите 'PWR_FLAG' в библиотеке 'power'. Разместите два таких символа. Подсоедините их к выводу 'GND' и к 'VCC', как показано на рисунке ниже.

    gsik_tutorial1_070_png
    Это позволит избежать типичного предупреждения при проверке схемы: Вывод соединён с другим выводом, но не управляется ни одним из них.
  44. Иногда полезно кое-где вставить комментарии. Добавить их на схему можно, используя кнопку 'Разместить текст' text_png на правой панели инструментов.

  45. Теперь всем компонентам нужно присвоить уникальные обозначения. Фактически, большинство компонентов всё ещё названы 'R?' или 'J?'. Назначить обозначения можно автоматически нажав на кнопку 'Обозначить схему' annotate_png на верхней панели инструментов.

  46. В окне 'Обозначить схему' выберите 'По всей схеме' и нажмите кнопку 'Обозначить компоненты'. Нажмите кнопку 'Закрыть'. Обратите внимание как все знаки '?' заменились позиционными номерами. Каждое обозначение теперь уникально. В данном примере они поименованы R1, R2, U1, D1 и J1.

  47. Теперь можно проверить схему на наличие ошибок. Нажмите кнопку 'Выполнить проверку электрических правил проектирования' erc_png. Затем нажмите на кнопку 'Выполнить'. Будет сформирован отчёт, содержащий информацию о найденных ошибках и предупреждениях, таких как не соединённые провода и т.п. Должно быть 0 ошибок и 0 предупреждений. В случае наличия ошибок или предупреждений в месте их возникновения, появится маленькая зелёная стрелка. Поставьте галочку в окошке 'Создать файл ERC отчёта' и нажмите кнопку 'Выполнить' ещё раз, чтобы получить больше информации об ошибках.

    При возникновении предупреждения о том, что "Текстовый редактор не найден", попробуйте установить путь c:\windows\notepad.exe (Windows) или /usr/bin/gedit (Linux) в настройка KiCad.
  48. На этом работа со схемой закончена. Сейчас можно создать 'Netlist' — файл списка цепей схемы, в котором ещё нужно будет присвоить посадочные места для всех компонентов. Нажмите кнопку 'Сформировать список цепей' netlist_png на верхней панели инструментов. Нажмите на кнопку 'Сформировать' и оставьте имя файла по умолчанию.

    Создание списка цепей было необходимым в прошлых версиях KiCad. В последних версиях предыдущий шаг можно пропустить, а вместо него выполнить ИнструментыОбновить печатную плату. Но в таком случае нужно сначала назначить посадочные места для компонентов.
  49. После создания файла списка цепей, нажмите кнопку 'Запустить CvPcb' cvpcb_png на верхней панели инструментов.

    Существует множество разных способов назначить посадочное место компоненту.

    • Правая кнопка мыши → СвойстваПравить посад.место Двойной щелчок по компоненту или правая кнопка мыши → СвойстваПравить свойства → Посад.место

    • ИнструментыРедактировать поля компонентов Установите опцию Показать изображение посад.места в диалоге выбора компонента в параметрах Eeschema и назначайте посадочные места при выборе нового компонента для добавления в схему

  50. CvPcb позволяет связать все компоненты схемы с посадочными местами из библиотеки KiCad. Средняя область окна содержит компоненты из схемы. В ней выделите 'D1'. В области справа представлены все доступные посадочные места (если нет, то в левой колонке найдите пункт LEDs и щёлкните на нём), прокрутите вниз к 'LED_THT:LED-D5.0mm' и дважды щёлкните мышкой на нём.

  51. Возможно, в области справа отобразится только выбранная подгруппа доступных посадочных мест. Так происходит из-за того, что KiCad пытается предложить подмножество подходящих посадочных мест. Нажатием на кнопку module_pin_filtered_list_png и module_library_list_png можно включать или отключать соответствующие фильтры.

  52. Для 'U1' выберите посадочное место 'Package_DIP:DIP-8_W7.62mm'. Для 'J1' — 'Connectors:Banana_Jack_3Pin'. Для 'R1' и 'R2' — 'Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_Vertical'.

  53. Если хотите узнать, как выглядит выбранное посадочное место, можно нажать кнопку 'Просмотр выбранного посадочного места' show_footprint_png для предварительного просмотра текущего посадочного места.

  54. Всё готово. Теперь можно сохранить схему через меню ФайлСохранить схему или с помощью кнопки 'Применить, сохранить схему и продолжить'.

  55. Можно закрыть Cvpcb и вернуться назад в редактор схем Eeschema. Если изменения не были сохранены в Cvpcb, это можно сделать сейчас через меню ФайлСохранить. Снова создайте файл списка цепей. Теперь файл списка цепей обновлён с учётом всех посадочных мест. Заметьте, если не нашлось нужное посадочное место для какого-то компонента, то его придётся создать самостоятельно. О том как это сделать, будет рассказано в одном из следующих разделов данного руководства.

    Теперь каждому компоненту назначено своё посадочное место. Вместо создания списка цепей и следующих двух шагов, можно выполнить ИнструментыОбновить печатную плату. В последнем случае, Pcbnew откроется с диалогом Обновить плату со схемы. Нажмите кнопку Обновить плату. Далее можете следовать инструкциям из раздела о Pcbnew этого руководства.
  56. Перейдите в менеджер проектов KiCad. Здесь можно видеть файл списка цепей среди файлов проекта.

  57. Файл списка цепей описывает компоненты и соответствующие им контактные соединения. Это, на самом деле, текстовый файл, который можно легко просмотреть, отредактировать или обработать.

    Файлы библиотек (*.lib) тоже являются текстовыми, и их также легко редактировать и обрабатывать.
  58. Чтобы создать список материалов (перечень элементов схемы, BOM), пройдите в редактор схем Eeschema и нажмите кнопку 'Сформировать перечень элементов и материалов' bom_png на верхней панели инструментов. В начале, в диалоговом окне нет активных плагинов. Для добавления первого нажмите кнопку Добавить плагин. Выберите *.xsl файл, который хотели бы использовать. В данном случае нужно выбрать bom2csv.xsl.

    Linux:

    Если xsltproc отсутствует, его можно загрузить и установи с помощью:

    sudo apt-get install xsltproc

    в ОС Debian или производной от неё, как, например, Ubuntu, или

    sudo yum install xsltproc

    в ОС, производной от RedHat. Если используется операционная система, отличная от этих двух, воспользуйтесь встроенным пакетным менеджером для установки пакета xsltproc.

    xsl-файлы хранятся в: /usr/lib/kicad/plugins/.

    Apple OS X

    Если xsltproc отсутствует, его можно легко установить, используя Apple Xcode из сайта Apple или загрузить и установить его с помощью:

    brew install libxslt

    xsl-файлы хранятся в: /Library/Application Support/kicad/plugins/.

    Windows:

    xsltproc.exe и подключаемые xsl-файлы устанавливаются в <каталок установки KiCad>\bin и <каталог установки KiCad>\bin\scripting\plugins, соответственно.

    На всех операционных системах:

    Можно получить последнюю версию bom2csv.xsl из:

    KiCad автоматически составит команду, например:
    xsltproc -o "%O" "/home/<user>/kicad/eeschema/plugins/bom2csv.xsl" "%I"
    Возможно понадобится добавить расширения файла, для этого измените командную строку как указано:
    xsltproc -o "%O.csv" "/home/<user>/kicad/eeschema/plugins/bom2csv.xsl" "%I"

    Для получения более детальной информации нажмите кнопку 'Справка'.

  59. Теперь нажмите кнопку 'Сформировать'. Файл (с названием как у данного проекта) будет расположен в папке проекта. Откройте .csv файл с помощью LibreOffice Calc или с помощью Exel. Появится окно с параметрами импорта данных, нажмите 'OK'.

Теперь всё готово, чтобы перейти к разделу трассировки печатных плат, который представлен в следующей части. Однако перед этим давайте быстро рассмотрим, как соединять выводы компонентов, используя шину.

Шинные соединения в KiCad

Иногда возникает необходимость в соединении нескольких последовательных выводов компонента А с некоторыми другими последовательными выводами компонента В. В этом случае доступны два варианта: уже рассмотренный метод использования меток или метод шинных соединений. Давайте рассмотрим теперь второй.

  1. Представьте, что есть три 4-контактных разъёма, которые нужно соединить вместе контакт к контакту. Примените способ, использующий метки (нажмите клавишу [l]), чтобы присвоить метку 4-му выводу разъёма CONN_1. Обозначьте эту метку 'а1'. Теперь нажмите клавишу [Insert], чтобы повторить предыдущее действие по отношению к следующему выводу (PIN 3). Заметьте, метка автоматически изменилась на 'а2'.

  2. Нажмите клавишу [Insert] ещё два раза. Нажатие клавиши [Insert] аналогично операции 'Повторить последнее действие' и это очень полезная команда, которая может значительно облегчить работу.

  3. Повторите то же самое действие (присвоение метки) для разъёмов CONN_2 и CONN_3. Далее, при разработке печатной платы, было бы видно, что три разъёма соединены друг с другом. На рисунке 2 показан результат проделанной работы. Чтобы придать схеме более эстетичный вид, можно выполнить следующее: с помощью инструментов 'Разместить ввод проводника в шину' Разместить ввод проводника в шину и 'Разместить ввод шины в шину' Разместить ввод шины в шину дополнить схему как показано на рисунке 3. Однако, учтите, это будет неэффективно для печатной платы.

  4. Нужно отметить, что короткий провод, соединённый с выводами (рисунок 2), совершенно не обязателен. Фактически, метки можно было нанести прямо на выводы.

  5. Давайте продвинемся ещё на один шаг вперёд и предположим, что имеется четвёртый разъем CONN_4, маркировка выводов которого почему-то немного отличается (b1, b2, b3, b4). Сейчас нужно соединить шину а с шиной b контакт к контакту и сделать это без использования маркировки выводов (которая также возможна), а используя маркировку шины – каждой шине по метке.

  6. Подключите и промаркируйте CONN_4, используя метод нанесения меток, описанный выше. Обозначьте выводы b1, b2, b3 и b4. Подключите выводы, используя инструменты 'Разместить ввод проводника в шину' add_line2bus_png и 'Разместить шину' add_bus_png (см. рисунок 4).

  7. Поместите метку (клавиша [l]) на шину разъема CONN_4 и назовите её 'b[1..4]'.

  8. Поместите метку (клавиша [l]) на предыдущую шину a и назовите её 'a[1..4]'.

  9. Теперь можно соединить шину a[1..4] с шиной b[1..4], используя инструмент 'Разместить шину' add_bus_png.

  10. При соединении двух шин вместе, вывод a1 будет автоматически соединён с выводом b1, a2 будет соединён с b2 и т. д. Рисунок 4 показывает, как должен выглядеть конечный результат.

    Операция 'Повторить последнее действие', вызванная нажатием клавиши [Insert], может быть весьма успешно применима при периодически повторяющихся действиях. Например, короткие провода, соединённые со всеми выводами на рисунке 2, 3 и 4, могут быть размещены с использованием этой операции.
  11. Операция 'Повторить последнее действие', вызванная нажатием клавиши [Insert], может также часто применяться при множестве последовательных вызовов инструмента 'Разместить ввод проводника в шину' add_line2bus_png.

    gsik_bus_connection_png

Проектирование печатной платы

Пришло время воспользоваться файлом списка цепей для того, чтобы выполнить трассировку печатной платы. Это делается при помощи инструмента Pcbnew.

Если была использована команда Обновить печатную плату в Eeschema, нет необходимости создавать список цепей и выполнять пятый шаг. Сейчас можно расположить посадочные места на плате, как указано в шагах 6 и 7, а далее, настроить параметры листа и правила проектирования, выполнив шаги 2…​4.

Использование Pcbnew

  1. В менеджере проектов KiCad нажмите кнопку 'Редактировать печатную плату' pcbnew_png (Редактор печатных плат). Также, можно воспользоваться аналогичной кнопкой панели инструментов Eeschema. Откроется окно Pcbnew. Если появится сообщение об ошибке, в котором говорится, что *.kicad_pcb-файл ещё не существует – просто нажмите 'Да'.

  2. Начнём с ввода некоторой информации о схеме. Нажмите кнопку 'Настройки страницы' sheetset_png на верхней панели инструментов. Установите подходящий 'Размер' страницы ('А4', '8.5x11' и т.п.) и введите в поле 'Наименование' – 'Tutorial 1'.

  3. Хорошая мысль – начать с установки размера зазора и минимальной ширины дорожки (проводника), задав тем самым требования своего производителя печатных плат. В общем случае, достаточно установить зазор '0.25' и ширину дорожки '0.25'. Выберите пункт меню УстановкиПравила проектирования. Перейдите на вкладку 'Редактор классов цепей'. Измените значение в поле 'Зазор' вверху окна на '0.25' и значение в поле 'Ширина дорожки' на '0.25' как показано на рисунке ниже. Размеры здесь указаны в миллиметрах.

    Диалоговое окно настройки правил проектирования
  4. Перейдите на вкладку 'Общие правила проектирования' и установите 'Минимальную ширину дорожки' '0.25'. Нажмите кнопку 'ОК', чтобы применить внесенные изменения и закрыть окно 'Правка правил проектирования'.

  5. Теперь можно импортировать файл списка цепей, если он уже создан. Нажмите кнопку 'Считать список цепей' netlist_png на верхней панели инструментов. Если с помощью Eeschema уже был создан файл списка цепей 'tutorial1.net', то он будет указан в поле 'Файл списка цепей'. Нажмите кнопку 'Прочитать текущий список цепей'. Затем нажмите кнопку 'Закрыть'.

  6. Все компоненты отобразятся на экране. Они выделены и следуют за курсором мыши.

  7. Переместите компоненты в центр печатной платы. Если потребуется, можно увеличить или уменьшить масштаб прямо в процессе перемещения. Щёлкните левой кнопкой мыши для завершения.

  8. Все компоненты связаны между собой тонкими линиями, называемыми не присоединёнными связями (ratsnest). Убедитесь, что кнопка 'Показать/Скрыть все связи' general_ratsnest_png нажата. Таким образом можно увидеть линии, связывающие все компоненты.

  9. Каждый компонент можно передвигать, расположив над ним курсор и нажав клавишу [m]. Нажмите левой кнопкой мыши там, где бы хотели его разместить. Также, можно выделить компонент, щёлкнув левой кнопкой мыши и перетащить его. Передвиньте все компоненты так, чтобы минимизировать число пересечений соединений.

    gsik_tutorial1_080_png
  10. Заметьте, что один контакт 100-омного резистора соединён с шестым выводом компонента PIC. Это результат использования метода маркировки, применённого при соединении контактов. Метки часто предпочтительнее реальных проводников, потому что они делают схему более аккуратной.

  11. Теперь построим контур печатной платы. Выберите 'Контур платы' ('Edge.Cuts') из выпадающего меню в верхней панели инструментов. Нажмите кнопку 'Добавить графические линии или полигоны' add_dashed_line_png на правой панели инструментов. Проведите линию по контуру платы, нажимая левой кнопкой мыши в каждом углу и не забудьте оставить небольшой зазор между зелёным контуром и контуром печатной платы.

    Выбор слоя Edge.Cuts
  12. Далее подключим все провода, кроме заземления. На нижнем медном слое платы (называемом B.Cu) создадим 'земляную' зону и таким образом соединим все заземляющие проводники в один.

  13. Сейчас необходимо выбрать слой, на каком будем работать. Выберите 'F.Cu (PgUp)' из выпадающего меню в верхней панели инструментов. Это верхний слой меди.

    Выбор верхнего слоя меди
  14. Если решили, к примеру, сделать 4-слойную печатную плату, выберите УстановкиНастройка слоёв и измените 'Медные слои' на 4. В таблице 'Слои' можно переименовать их и решить, для чего они будут использоваться. Обратите внимание, настройки очень удобно задавать с помощью меню 'Группировка слоёв'.

  15. Нажмите кнопку 'Трассировать дорожки' add_tracks_png на правой панели инструментов. Нажмите левой кнопкой мыши на вывод 1 от 'J1' и проведите дорожку к контактной площадке 'R1'. Завершите дорожку двойным щелчком мыши. Ширина этой дорожки по-умолчанию будет 0.25 мм. Изменить эту ширину можно с помощью выпадающего меню в верхней панели инструментов. Обратите внимание, что по-умолчанию доступно только одно значение для ширины дорожки.

    pcbnew_select_track_width_png
  16. Если понадобится больше значений для ширины дрожек, пройдите УстановкиПравила проектированияОбщие правила проектирования и в правом нижнем углу этого окна добавьте любое другое нужное значение ширины. После этого станет возможным изменять значение ширины дорожек из выпадающего меню во время разводки платы.

    custom_tracks_width_png
  17. Можно пойти другим путём и добавить 'Класс цепи', в котором задать ряд опций. Пройдите УстановкиПравила проектированияКлассы цепей и добавьте новый класс с названием 'power'. Измените ширину дорожки с 8 mil (отображается как 0.0080) на 24 (отображается как 0.0240). Далее добавьте все, кроме 'GND' в класс 'power' (выберите 'По-умолчанию' слева и 'power' справа и воспользуйтесь стрелками).

  18. Чтобы изменить размер сетки, выполните Правая кнопка мышиСетка. Можно выбрать подходящий размер сетки как до, так и после размещения компонентов и соединения их дорожками.

  19. Повторите этот процесс до тех пор, пока все проводники не будут разведены, за исключением третьего вывода 'J1'. Плата должна принять вид как на рисунке ниже.

    gsik_tutorial1_090_png
  20. Давайте теперь проведём дорожку с обратной стороны печатной платы. Выберите 'B.Cu' из выпадающего меню в верхней панели инструментов. Нажмите кнопку 'Трассировать дорожки' add_tracks_png. Нарисуйте дорожку от контакта 3 компонента J1 к контакту 8 компонента U1. На самом деле, в нашем случае не обязательно это делать для земляной цепи (GND). Обратите внимание, как изменился цвет дорожки.

  21. Изменение слоя при переходе от вывода А к выводу В. В процессе проведения дорожки, можно сменить слой меди, размещая переходное отверстие. Во время проведения дорожки по верхнему слою меди нажмите правую кнопку мыши и выберите 'Разместить переходное отверстие' или просто нажмите клавишу [v]. Это позволит перейти на нижний слой и закончить дорожку.

    place_a_via_png
  22. Если понадобится просмотреть определённую цепь, нажмите кнопку 'Подсветка цепи' net_highlight_png на правой панели инструментов. Нажмите левой кнопкой мыши на вывод 3 компонента 'J1'. Сама дорожка и все соединённые с ней контактные площадки подсветятся.

  23. Теперь соединим земляной слой со всеми выводами GND. Нажмите кнопку 'Добавить зоны' в правой панели инструментов. Нужно начертить полигон по контуру платы, поэтому нажмите левой кнопкой мыши там, где нужно разместить один из углов. В появившемся диалоге установите 'Соединение конт. пл.' в 'Терморазгрузка' и 'Наклон контура' в 'Любой' и нажмите ОК.

  24. Создайте полигон по контуру платы, нажимая левую кнопку мыши в каждом углу для поворота. Двойным щелчком мыши закончите прямоугольник. Нажмите правую кнопку мыши внутри только что созданной зоны. Выберите команду 'Зоны' → 'Залить всё'. Плата будет заполнена внутри зелёным цветом и приобретёт вид примерно как на рисунке:

    gsik_tutorial1_100_png
  25. Запустите проверку правил проектирования, нажав кнопку 'Выполнить проверку правил проектирования' drc_png на верхней панели инструментов. Нажмите 'Старт DRC'. Ошибок не должно быть. Нажмите на 'Список не подсоединённыx'. Не подсоединённых дорожек не должно быть. Нажмите 'ОК', чтобы закрыть диалог 'Контроля DRC'.

  26. Сохраните файл печатной платы, выбрав ФайлСохранить. Для просмотра платы в 3D-виде нажмите Просмотр3D вид.

    pcbnew_3d_viewer_png
  27. Перетаскивая мышь по кругу с нажатой левой кнопкой, можно поворачивать печатную плату.

  28. Проектирование платы закончено. Теперь нужно создать все необходимые Gerber-файлы для последующей отправки производителю.

Создание Gerber-файлов

Завершив разработку печатной платы, можно создать Gerber-файлы для каждого слоя и отправить их на предпочтительный завод по производству печатных плат для её изготовления.

  1. Из менеджера проектов KiCad откройте редактор печатных плат Pcbnew.

  2. Нажмите в меню ФайлЧертить. Выберите 'Gerber', как формат черчения и укажите папку, в которую нужно поместить все Gerber-файлы. Завершите операцию нажатием кнопки 'Чертить'.

  3. Для создания файла сверловки, в Pcbnew снова выберите пункт меню ФайлЧертить. Значения по-умолчанию нам подходят.

  4. Ниже указаны слои, которые нужно выбрать для создания обычной двухслойной платы:

Слой Название слоя в KiCad Расширение Gerber-файла Расширение Gerber-файла с включённой опцией "Использовать Protel расширения файлов"

Нижний слой меди

B.Cu

.GBR

.GBL

Верхний слой меди

F.Cu

.GBR

.GTL

Верхний слой маски шёлкографии

F.SilkS

.GBR

.GTO

Нижний слой маски припоя

B.Mask

.GBR

.GBS

Верхний слой маски припоя

F.Mask

.GBR

.GTS

Слой контура печатной платы

Edge.Cuts

.GBR

.GM1

Использование GerbView

  1. Для просмотра созданных Gerber-файлов перейдите в менеджер проектов KiCad и нажмите кнопку 'GerbView'. В выпадающем меню на верхней панели инструментов или в менеджере слоёв выберите 'Слой графики 1'. Теперь нажмите в меню ФайлОткрыть файл(ы) Gerber или просто нажмите кнопку gerber_file_png. Выберите все созданные ранее Gerber-файлы за один раз. Обратите внимание на то, как все слои расположились друг над другом.

  2. Файлы сверловки открываются с помощью команды ФайлОткрыть файл(ы) сверловки Exellon.

  3. Используя менеджер слоёв или меню справа можно выбрать какие слои нужно показывать, а какие нет. Внимательно просмотрите каждый слой перед отправкой его производителю.

  4. Управление отображением выполняется подобно Pcbnew. Щелчок правой кнопки мыши на рабочей области и в подменю 'Сетка' можно выбрать другой шаг сетки.

Автоматическая трассировка с помощью свободного трассировщика FreeRouter

Трассировка платы вручную – это быстро и увлекательно, однако для плат с большим числом компонентов может возникнуть желание воспользоваться автотрассировщиком. Запомните, сначала нужно развести наиболее ответственные трассы вручную, а затем вызывать автотрассировщик, чтобы доделать остальные фрагменты. В его задачу входит прокладка только не разведённых трасс. В данном случае будет использован сетевой автотрассировщик FreeRouter.

FreeRouter – это java-приложение с открытыми исходными кодами. На данный момент, FreeRouting доступен в виде более-менее похожих копий, которые можно найти в интернете по запросу "freerouting". Можно найти как исходные коды, так и предварительно собранные java-пакеты.
  1. Из Pcbnew выберите ФайлЭкспортSpecctra DSN и сохраните файл куда-нибудь. Запустите FreeRoute и нажмите на кнопку 'Open Your Own Design', выберите созданный dsn-файл и загрузите его.

  2. FreeRouter имеет несколько функций для ручной и автоматической трассировки, которых у KiCad пока нет. FreeRouter работает в два основных этапа – вначале трассировка платы и затем её оптимизация. Полная оптимизация занимает много времени, однако её в любой момент можно остановить.

  3. Вы можете начать автоматическую трассировку, нажав кнопку 'Autorouter' на верхней панели инструментов. В строке статуса отображается информация о ходе выполнения процесса трассировки. Если число проходов 'Pass' получается больше 30, то, вероятнее всего, этот трассировщик не сможет ее обработать. Сильнее разнесите компоненты или лучше их разместите и попытайтесь снова. Цель разнесения и размещения корпусов компонентов в том, чтобы уменьшить число пересечений линий соединений.

  4. Остановить автоматическую трассировку можно нажатием левой кнопкой мыши, автоматически начнется процесс оптимизации. Ещё один левый щелчок остановит процесс оптимизации. Это требуется только в том случае, если действительно нужно остановиться, но, все же, лучше дождаться завершения работы FreeRouter’а.

  5. Нажмите в меню FileExport Specctra Session File и сохраните сессию разводки платы с расширением .ses. В общем случае, нет необходимости сохранять файл правил FreeRouter.

  6. Вернитесь в редактор Pcbnew. Теперь можно импортировать только что разведённую плату, выбрав ФайлИмпортСеанс Specctra и указав созданный .ses файл.

Если какая-нибудь разведённая трасса не понравится, её можно удалить, используя клавишу [Delete], и перетрассировать заново используя инструмент трассировки 'Трассировать дорожки' Add Track icon из правой панели инструментов.

Прямая аннотация в KiCad

Теперь, когда имеется готовая схема, всем элементам назначены посадочные места, разведена печатная плата и созданы все необходимые Gerber-файлы, можно все это отправлять производителю печатных плат и спроектированное устройство станет реальным.

Часто в пройденном нами, довольно таки прямолинейном, пути разработки нужно вернуться и этот путь становится не таким уж и прямым. Например, может потребоваться изменить/дополнить уже сделанную плату, описанным здесь образом, а именно, переместить компоненты, заменить их другими, поменять посадочные места или ещё что-нибудь. Из-за этих изменений не хотелось бы заново разводить всю печатную плату. Поэтому, изменения нужно вносить следующим образом:

  1. Давайте предположим, что нужно заменить, скажем, разъем CON1 на CON2.

  2. В нашем случае уже имеется завершённая схема и полностью разведённая печатная плата.

  3. Из KiCad запустите Eeschema, выполните нужные изменения, удалив CON1 и добавив CON2. Сохраните проект своей схемы с помощью кнопки Save icon и нажмите кнопку 'Сформировать список цепей' netlist_png на верхней панели инструментов.

  4. Нажмите кнопку 'Сформировать', затем на кнопку 'Сохранить'. Файл списка цепей сохранится с именем по-умолчанию, придётся перезаписать уже существующий.

  5. Теперь определим посадочное место для компонента CON2. Нажмите кнопку 'Запустить CvPcb' cvpcb на верхней панели инструментов. Выберите нужное посадочное место для нового компонента CON2. Остальные компоненты пусть остаются с ранее назначенными посадочными местами. Закройте CvPcb.

  6. Вернитесь в редактор схем и сохраните проект с помощью меню 'Файл' → 'Сохранить проект схемы'. Можете закрыть редактор схем.

  7. В менеджере проектов KiCad нажмите кнопку 'Pcbnew'. Откроется окно 'Pcbnew'.

  8. Старая, уже разведённая, плата должна открыться автоматически. Давайте загрузим новый файл списка цепей. Нажмите кнопку 'Считать список цепей' netlist_png на верхней панели инструментов.

  9. Нажмите кнопку 'Обзор' и выберите файл списка цепей с помощью диалога выбора файлов, затем нажмите кнопку 'Прочитать текущий список цепей'.

  10. На данном этапе должно быть видно плату с предварительно разведёнными компонентами. В верхнем левом углу должны появиться все новые компоненты, в нашем случае это CON2. Выберите его мышью и переместите на центр платы.

  11. Установите CON2 в нужное место и подведите к нему дорожки. Когда завершите, сохраните плату и создайте все необходимые Gerber-файлы, как это было сделано ранее.

Процесс описанный здесь может легко повторяться сколько угодно раз. Помимо метода 'Прямой аннотации', описанного выше, есть другой – известный как метод 'Обратной аннотации'. Этот метод позволяет выполнять изменения на уже разведённой печатной плате в Pcbnew и, затем, обновлять файлы схемы и списка цепей. Но 'Обратная аннотация' не очень полезна, поэтому здесь не описана.

Создание компонентов схемы в KiCad

Иногда случается, что нужного компонента схемы нет в библиотеках KiCad. Это совершенно нормально и не является поводом для беспокойства. В этом разделе будет рассмотрено, как можно быстро создать компонент схемы, используя KiCad. Однако помните, что всегда можно поискать компоненты KiCad в интернете.

Компонент в KiCad — это текстовый фрагмент, который начинается с 'DEF' и заканчивается на 'ENDDEF'. Один или несколько компонентов обычно расположены в файле библиотеки с расширением .lib. Если нужно добавить компоненты в файл библиотеки, то можно обойтись командами 'Копировать' и 'Вставить'.

Использование Редактора библиотек схемы

  1. Для создания новых компонентов можно использовать Редактор библиотек схемы (часть Eeschema). Сначала, в папке уже имеющегося проекта 'tutorial1' создайте папку 'library'. Когда будет создан новый компонент, в неё поместится новый файл библиотеки myLib.lib, .

  2. Теперь можно приступить к созданию нового компонента. Из KiCad запустите Eeschema, нажмите кнопку 'Редактор библиотек схемы' libedit_png и затем нажмите 'Создать новый компонент' new_component_png. Появится окно 'Свойства компонента'. Назовите новый компонент (Имя компонента) 'MYCONN3', 'Обозначение по умолчанию' – 'J', 'Количество элементов в корпусе' – '1'. Нажмите ОК. Если появится предупреждение, нажмите ОК. На этом этапе компонент представлен только своей меткой. Дальше добавим несколько выводов. Нажмите кнопку 'Добавить вывод компонента' pin_png на правой панели инструментов. Разместите вывод нажатием левой кнопки мыши в центре листа схемы, но ниже метки 'MYCONN3'.

  3. В появившемся окне 'Свойства контактов' задайте 'Имя вывода' в 'VCC', 'Номер вывода' — '1' и 'Электрический тип' — 'Вход питания'. Затем нажмите 'ОК'.

    Свойства вывода
  4. Расположите вывод в том месте, где бы хотели его разместить, скажем, правее и ниже метки.

  5. Повторите шаги размещения выводов. На этот раз 'Имя вывода' будет 'INPUT', 'Номер вывода' – '2', 'Электрический тип' – 'Пассивный'.

  6. Повторите шаги размещения выводов. На этот раз 'Имя вывода' будет 'GND', 'Номер вывода' – '3', 'Электрический тип' – 'Пассивный'. Расположите контакты один над другим. Метка с именем компонента 'MYCONN3' должна быть в центре страницы (там, где пересекаются синие линии).

  7. Далее нарисуйте контур компонента. Нажмите кнопку 'Добавить прямоугольник' add_rectangle_png. Нужно нарисовать прямоугольник сразу за контактами как показано на рисунке ниже. Чтобы сделать это, щёлкните левой кнопкой мыши там, где должен быть расположен левый верхний угол прямоугольника. Нажмите снова, чтобы расположить правый нижний угол прямоугольника в нужном месте.

    gsik_myconn3_l_png
  8. Если потребуется закрасить прямоугольник, например, желтым цветом, нужно выбрать его и изменить свойства (клавиша [e]), а именно, установить Стиль заливки в 'Заливка фона'. Затем в Eeschema открыть НастройкиПараметры редактора схемЦвета и для 'Заливки фона' установить значение 'Yellow 4'.

  9. Сохраните компонент в библиотеке myLib.lib. Для этого нажмите 'Сохранить текущий компонент в новой библиотеке' new_library_png, пройдите в папку tutoril1/library/ и сохраните новый файл библиотеки с именем myLib.lib.

  10. Пройдите в НастройкиБиблиотеки компонентов и добавьте tutorial1/library/ в 'Пользовательские пути поиска' и myLib.lib в 'Файлы библиотеки компонентов'.

  11. Нажмите кнопку 'Выбор рабочей библиотеки' library_png. В окне 'Выбрать библиотеку' выберите myLib, нажмите ОК. Обратите внимание, что в названии окна отобразилась текущая используемая библиотека - myLib.

  12. Нажмите кнопку 'Обновить текущий компонент в текущей библиотеке' save_part_in_mem_png в верхней панели инструментов. Сохраните все изменения, нажав 'Сохранить текущую библиотеку на диск' save_library_png в верхней панели инструментов. Нажмите 'Да' в появившемся предупреждающем сообщении. Новый компонент готов и доступен в библиотеке, название которой отображается в заголовке окна.

  13. Теперь можете закрыть окно 'Редактора библиотеки компонентов'. Вернитесь в окно 'Редактора схемы'. Новый компонент теперь доступен в библиотеке myLib.

  14. Можно создавать сколько угодно файлов библиотек file.lib и добавлять их в проект для дальнейшего использования. В Eeschema выберите НастройкиБиблиотеки компонентов и добавьте путь к новому файлу библиотеки в 'Пользовательские пути поиска' и сам файл в 'Файлы библиотеки компонентов'.

Экспорт, импорт и изменение компонентов схемы

Вместо создания компонента схемы с нуля иногда легче взять уже готовый и изменить его. В этом разделе показано как импортировать компонент из стандартной библиотеки KiCad 'device' в другую библиотеку myOwnLib.lib и затем изменять его.

  1. Запустите Eeschema из KiCad, нажмите кнопку 'Редактор библиотек' libedit_png, затем кнопку 'Выбор рабочей библиотеки' library_png и выберите библиотеку 'device'. Нажмите кнопку 'Загрузить компонент для редактирования из текущей библиотеки' import_cmp_from_lib_png и импортируйте компонент 'RELAY_2RT'.

  2. Нажмите кнопку 'Экспорт компонента' export_png, пройдите в каталог library/ и сохраните новый файл библиотеки под именем myOwnLib.lib.

  3. Чтобы новый компонент и вся библиотека myOwnLib.lib стали доступными, их нужно добавить в проект. В Eeschema выберите НастройкиБиблиотеки компонентов и добавьте library/ в 'Пользовательские пути поиска' и myOwnLib.lib в 'Файлы библиотеки компонентов'.

  4. Нажмите кнопку 'Выбор рабочей библиотеки' library_png. В окне 'Выбор библиотеки' выберите myOwnLib и нажмите ОК. Обратите внимание, в заголовке окна отобразилась текущая используемая библиотека, теперь это – myOwnLib.

  5. Нажмите кнопку 'Загрузить компонент для редактирования из текущей библиотеки' import_cmp_from_lib_png и импортируйте 'RELAY_2RT'

  6. Теперь можете изменить компонент так, как угодно. Поместите курсор над меткой 'RELAY_2RT', нажмите клавишу [e] и переименуйте её в 'MY_RELAY_2RT'.

  7. Нажмите кнопку 'Обновить текущий компонент в текущей библиотеке' save_part_in_mem_png в верхней панели инструментов. Сохраните все изменения, нажав 'Сохранить текущую библиотеку на диск' save_library_png на верхней панели инструментов.

Создание компонентов схемы с помощью quicklib

В этом разделе представлен альтернативный путь создания компонента схемы 'MYCONN3' (смотрите MYCONN3 выше), используя инструмент quicklib из Интернета.

  1. Откройте веб-страницу quicklib, пройдя по ссылке: http://kicad.rohrbacher.net/quicklib.php

  2. Заполните страницу следующей информацией: Component name: MYCONN3; Reference Prefix: J; Pin Layout Style: SIL; Pin Count, N: 3.

  3. Нажмите кнопку 'Assign Pins' (Назначение выводов). Заполните страницу следующей информацией: Pin 1: VCC; Pin 2: input; Pin 3: GND. Type : Passive – для всех трёх выводов.

  4. Нажмите кнопку 'Preview it' (Предварительный просмотр), и, если всё в порядке, нажмите 'Build Library Component' (Создать компонент библиотеки). Загрузите его и переименуйте tutorial1/library/myQuickLib.lib. Готово!

  5. Просмотрите его, используя KiCad. Из менеджера проектов KiCad запустите Eeschema, нажмите кнопку 'Редактор библиотек' libedit_png, затем кнопку 'Импорт компонента' import_png, пройдите в tutorial1/library/ и выберите myQuickLib.lib.

    gsik_myconn3_quicklib_png
  6. Чтобы новый компонент и вся библиотека myQuickLib.lib стали доступными, их нужно добавить в проект KiCad. В Eeschema выберите НастройкиБиблиотеки компонентов и добавьте путь к библиотеке в 'Пользовательские пути поиска' и сам файл в 'Файлы библиотеки компонентов'.

Как уже можно было догадаться, этот метод может быть особенно эффективен при создании компонентов с большим числом выводов.

Создание компонентов схемы с большим числом выводов

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

  1. Предположим, необходимо создать компонент схемы для устройства с 50 выводами. Обычно такие устройства разбивают на части с меньшим числом выводов, например, на две с 25 контактами в каждом. Такое представление компонента позволяет упростить соединение выводов.

  2. Наилучшим способом создания такого компонента будет использование quicklib, чтобы сделать два отдельных компонента с 25 выводами в каждом, пронумеровать эти выводы, используя скрипт на Python и в конце объединить их, используя копирование и вставку, в один простой компонент, начинающийся на DEF и заканчивающийся на ENDDEF.

  3. Ниже приведён простой пример скрипта на Python, который можно использовать для изменения нумерации контактов во всех строках из файла in.txt и сохранить результат в файл out.txt: X PIN1 1 -750 600 300 R 50 50 1 1 I в X PIN26 26 -750 600 300 R 50 50 1 1 I.

Простой скрипт
#!/usr/bin/env python
''' simple script to manipulate KiCad component pins numbering'''
import sys, re
try:
    fin=open(sys.argv[1],'r')
    fout=open(sys.argv[2],'w')
except:
    print "oh, wrong use of this app, try:", sys.argv[0], "in.txt out.txt"
    sys.exit()
for ln in fin.readlines():
    obj=re.search("(X PIN)(\d*)(\s)(\d*)(\s.*)",ln)
if obj:
    num = int(obj.group(2))+25
    ln=obj.group(1) + str(num) + obj.group(3) + str(num) + obj.group(5) +'\n'
    fout.write(ln)
fin.close(); fout.close()
#
# for more info about regular expression syntax and KiCad component generation:
# http://gskinner.com/RegExr/
# http://kicad.rohrbacher.net/quicklib.php
  1. Перед соединением двух компонентов в один, необходимо с помощью 'Редактора библиотек' из Eeschema переместить первый компонент так, чтобы он не пересекался со вторым. Ниже показан итоговый файл библиотеки и его представление в Eeschema.

Содержимое файла *.lib
EESchema-LIBRARY Version 2.3
#encoding utf-8
# COMP
DEF COMP U 0 40 Y Y 1 F N
F0 "U" -1800 -100 50 H V C CNN
F1 "COMP" -1800 100 50 H V C CNN
DRAW
S -2250 -800 -1350 800 0 0 0 N
S -450 -800 450 800 0 0 0 N
X PIN1 1 -2550 600 300 R 50 50 1 1 I

...

X PIN49 49 750 -500 300 L 50 50 1 1 I
ENDDRAW
ENDDEF
#End Library
gsik_high_number_pins_png
  1. Скрипт на Python, представленный здесь, является очень мощным инструментом для управлениями номерами контактов и метками контактов. Отметим, однако, что вся эта мощь доступна благодаря использованию регулярных выражений, информацию о которых можно найти на ресурсе http://gskinner.com/RegExr/.

Создание посадочных мест компонентов

В отличие от других систем автоматизированного проектирования (EDA, САПР), которые используют один тип библиотеки, KiCad содержит раздельно компоненты схемы и варианты посадочных мест. Файлы KiCad с расширением .lib содержат компоненты схемы, а файлы с расширением .kicad_mod содержат посадочные места. С помощью CvPcb компонентам схемы выбираются посадочные места.

Так же как файлы .lib, .kicad_mod файлы являются текстовыми и могут содержать одну или несколько частей.

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

Использование Редактора посадочных мест

  1. Из менеджера проектов KiCad запустите Pcbnew. Нажмите кнопку 'Открыть редактор посадочных мест' edit_module_png на верхней панели инструментов. Откроется 'Редактор посадочных мест'.

  2. Новое посадочное место 'MYCONN3' будет хранится в новой библиотеке посадочных мест 'myfootprint'. Создайте новую папку myfootprint.pretty в папке проекта tutorial1/. Выберите в меню НастройкиМенеджер библиотек посадочных мест и нажмите кнопку 'Добавить библиотеку'. В таблице введите "myfootprint" в столбце 'Уникальное имя', введите "${KIPRJMOD}/myfootprint.pretty" в столбец 'Путь библиотеки' и введите "KiCad" в столбец 'Тип плагина'. Нажмите OK, чтобы закрыть окно 'Таблицы библиотек печатной платы'. Нажмите кнопку 'Выбрать активную библиотеку' open_library_png на верхней панели инструментов. Выберите библиотеку 'myfootprint'.

  3. Нажмите кнопку 'Новое посадочное место' new_footprint_png на верхней панели инструментов. Наберите 'MYCONN3' в качестве имени. В центре экрана появится метка 'MYCONN3'. Под этой меткой можно увидеть метку 'REF**'. Нажмите правой кнопкой мыши на 'MYCONN3' и установите её над 'REF**'. Нажмите правой кнопкой мыши на 'REF**', выберите 'Правка текста' и переименуйте его в 'SMD'. Установите значение 'Показать' в положение 'Невидимый'.

  4. Выберите 'Добавить контактную площадку' pad_png на правой панели инструментов. Нажмите левой кнопкой мыши в рабочей области чертежа, чтобы разместить контактную площадку. Правой кнопкой мыши нажмите на новую контактную площадку и выберите 'Редактировать контактную площадку'. Или просто воспользуйтесь клавишей [е].

    Свойства вывода
  5. Установите 'Номер контактной площадки' – '1', 'Форма контактной площадки' – 'Прямоугольник', 'Тип контактной площадки' – 'SMD' (планарная), 'Размер' контактной площадки 'X' – '0.4', 'Y' – '0.8'. Нажмите ОК. Снова нажмите кнопку 'Добавить контактную площадку' и добавьте ещё две контактные площадки.

  6. Если потребуется изменить размер сетки, выполните: Правая кнопка мышиВыбор сетки. Выбор подходящей сетки нужно произвести до установки компонентов.

  7. Передвиньте метки 'MYCONN3' и 'SMD' так, как показано на рисунке выше.

  8. В процессе размещения контактных площадок часто возникает необходимость в использовании относительных расстояний. Поместите курсор туда, где хотели бы разместить центр относительной системы координат (0,0) и нажмите 'Пробел'. Перемещая курсор, можно наблюдать значение относительных координат положения курсора внизу страницы. Нажмите 'Пробел' ещё раз, чтобы установить новое начало координат.

  9. Теперь нужно добавить контур посадочного места. Нажмите кнопку 'Добавить графические линии или полигоны' add_polygon_png на правой панели инструментов. Проведите контур разъёма вокруг контактных площадок.

  10. Нажмите кнопку 'Сохранить посадочное место в активной библиотеке' save_library_png на верхней панели инструментов, используя имя по-умолчанию 'MYCONN3'.

Примечание о переносимости файлов проектов 'KiCad'

Какие файлы нужно отправить другому пользователю, чтобы он смог полностью загрузить и использовать проект KiCad?

Если проект распределён между несколькими разработчиками, важно отправлять вместе: файл схемы .sch, файл печатной платы .kicad_pcb, файл проекта .pro, файл списка цепей (netlist) .net и оба файла библиотек .lib и .kicad_mod. Только так пользователи смогут совершенно свободно модифицировать схему и плату.

Со схемами KiCad пользователю необходимы файлы библиотек .lib, содержащие компоненты схемы. Эти файлы должны быть указаны в настройках Eeschema. Иначе дело состоит с платами (.kicad_pcb-файлы), посадочные места могут содержаться внутри .kicad_pcb-файла. Достаточно отправить кому-либо .kicad_pcb-файл и ничего больше, и, тем не менее, будет возможно посмотреть и отредактировать плату. Однако, если потребуется загрузить компоненты из списка цепей, библиотеки посадочных мест (.kicad_mod-файлы) должны иметься в наличии и указаны в настройках Pcbnew, так же, как для схем. К тому же, необходимо указать файлы посадочных мест .kicad_mod в настройках Pcbnew надлежащим образом, чтобы потом они были доступны в CvPcb.

Если кто-то предоставит .kicad_pcb-файл с посадочными местами, которые могут понадобится в другой плате, можно открыть Редактор посадочных мест, загрузить посадочное место из текущей платы и сохранить или экспортировать его в другую библиотеку посадочных мест. Также можно экспортировать все посадочные места из .kicad_pcb-файла за один раз следующим образом: PcbnewФайлАрхивировать посадочные места, при этом будет создан новый файл .kicad_mod со всеми посадочными местами из платы.

Подчёркиваем, для изготовления печатной платы достаточно иметь только файл платы .kicad_pcb. Однако, если требуется предоставить другим пользователям возможность полностью использовать и изменять схему, её компоненты и печатную плату, рекомендуется отправлять архив со следующими папками и файлами проекта:

tutorial1/
|-- tutorial1.pro
|-- tutorial1.sch
|-- tutorial1.kicad_pcb
|-- tutorial1.net
|-- library/
|   |-- myLib.lib
|   |-- myOwnLib.lib
|   \-- myQuickLib.lib
|
|-- myfootprint.pretty/
|   \-- MYCONN3.kicad_mod
|
\-- gerber/
    |-- ...
    \-- ...

Ещё о документации KiCad

В данном документе приведено экспресс-руководство по применению большинства программных инструментов KiCad. Для более подробных инструкций воспользуйтесь файлами помощи, которые доступны в каждой программе KiCad. Выберите в меню СправкаРуководство …​.

KiCad предоставляется с достаточно хорошим набором переведённых руководств для всех четырёх программ.

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

Вместе с другими руководствами, KiCad распространяется вместе с данным учебником, которые переведены на другие языки. Все возможные версии этого документа свободно распространяются и загружаются со всеми последними версиями KiCad. Это руководство, как и другие документы справки, должны соответствовать установленной версии KiCad и используемой платформе.

К примеру, на Linux эти файлы обычно располагаются в следующих директориях (в зависимости от используемого дистрибутива):

/usr/share/doc/kicad/help/ru/
/usr/local/share/doc/kicad/help/ru

На Windows они в:

<installation directory>/share/doc/kicad/help/ru

На OS X:

/Library/Application Support/kicad/help/ru

Документация KiCad в Интернете

Последнюю версию документации KiCad на разных языках можно найти по адресу http://docs.kicad.org