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

Авторские права на данный документ © 2010-2015 принадлежат его разработчикам (соавторам), перечисленным ниже. Вы можете распространять и/или изменять его в соответствии с условиями лицензии 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 - адаптация к новому формату документации, обновление, дополнение перевода.

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

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

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

16 мая 2015 года

Введение в KiCad

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

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

KiCad

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

*.pro

Eeschema

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

*.sch, *.lib, *.net

CvPcb

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

*.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 OS X и Windows. Последнюю версию KiCad можно загрузить по адресу:

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

В GNU/Linux

Стабильные выпуски

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

Нестабильные (ночные) выпуски

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

В 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

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

sudo dnf copr enable mangelajo/kicad

sudo dnf install kicad

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

В Apple OS X

Стабильные выпуски

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

Нестабильные (ночные) выпуски

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

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

Нестабильные (ночные) выпуски

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

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

Поддержка

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

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

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

Обзор маршрута проектирования в KiCad

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

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

KiCad Flowchart

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

Сайт:

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

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

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

Обратная аннотация – это процесс передачи изменений разведённой печатной платы обратно в соответствующую ей схему. Некоторые считают эту функцию не совсем удобной.

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

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

В этом разделе описан процесс создания электрической схемы с помощью 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 Main Window
  2. Создайте новый проект: ФайлНовый проектНовый проект. Укажите имя для файла проекта «tutorial1». К имени файла проекта будет автоматически добавлено расширение «.pro». KiCad предложит создать отдельный каталог для проекта, нажмите «Да» для подтверждения. Все файлы нового проекта будут сохраняться здесь.

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

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

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

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

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

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

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

    Также, если указатель мыши расположен над Обозначением («R?») или над Значением («R»), то отобразится контекстное меню. Это «Уточнение выбора» — часто встречаемое меню в KiCad, которое позволяет обрабатывать компоненты расположенные друг над другом. В данном случае, укажите KiCad, что нужно выбрать «Компонент …R…».
  10. Нажмите правой кнопкой мыши в центр компонента и выберите Правка компонентаЗначение. Этого же результата можно достигнуть, расположив указатель мыши над компонентом и нажав клавишу «v». К тому же, клавиша «e» предоставит более полное окно редактирования. Обратите внимание, в контекстном меню, показанном ниже, также отображаются доступные сочетания клавиш для каждого действия.

    Edit component menu
  11. В появившемся окне «Значение компонента» замените текущее значение «R» на «1k». Нажмите «OK».

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

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

    Component history
  14. Если допустили ошибку и хотите удалить компонент, нажмите правой кнопкой мыши на компоненте и выберите «Удалить компонент». Это действие удалит компонент из схемы. Также, можно поместить указатель мыши над компонентом и нажать клавишу «Delete».

    Можно изменить любую клавишу быстрого набора команд, пройдя в: НастройкиГорячие клавишиРедактор горячих клавиш. Любые изменения будут сохранены немедленно.
  15. Также можно создать копию компонента, имеющегося на листе схемы, расположив над ним указатель мыши и нажав клавишу «c». Чтобы расположить новый скопированный компонент, нажмите левой кнопкой мыши в нужном месте.

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

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

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

  19. Далее нужно добавить компонент из библиотеки, которая отсутствует в созданном ранее проекте по умолчанию. В меню выберите НастройкиБиблиотеки компонентов и нажмите кнопку Добавить в области Файлы библиотеки компонентов.

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

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

  22. Расположите указатель мыши над компонентом микроконтроллера. Нажмите на клавиатуре клавишу «x» или клавишу «y». Обратите внимание, как компонент зеркально отражается относительно своей оси 'x' или относительно своей оси 'y'. Нажмите клавиши ещё раз, чтобы вернутся к исходной ориентации.

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

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

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

    Будьте внимательны, не нажмите кнопку 'Разместить шину', которая расположена точно под этой кнопкой, но имеет немного другую форму и синий цвет. В разделе Шинные соединения в KiCad будет рассказано как использовать инструмент 'Шина'.
  32. Нажмите левой кнопкой мыши на маленький кружок в конце вывода 7 микроконтроллера и затем на маленький кружок на выводе 2 элемента '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'. Разместите два из них. Подсоедините их к выводу 'GND' и к 'VCC', как показано на рисунке ниже.

    gsik_tutorial1_070_png
    Это позволит избежать типичного предупреждения при проверке схемы: Warning Pin power_in not driven (Net xx) (Вывод питания не активен (Цепь ХХ))
  44. Иногда полезно кое-где вставить комментарии. Добавить их на схему можно, используя кнопку 'Разместить граф. текст (комментарий)' add_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 на верхней панели инструментов. Нажмите на кнопку «Сформировать» и оставьте имя файла по умолчанию.

  49. После создания файла списка цепей, нажмите кнопку «Запустить CvPcb» cvpcb_png на верхней панели инструментов.

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

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

  52. Для «IC1» выберите посадочное место «Housings_DIP:DIP-8_W7.62mm». Для «J1» — «Connect:Banana_Jack_3Pin». Для «R1» и «R2» — «Discret:R1».

  53. Если хотите узнать, как выглядит выбранное посадочное место, то доступно два варианта. Можно нажать кнопку «Просмотр выбранного посадочного места» show_footprint_png для предварительного просмотра текущего посадочного места. Или нажать кнопку «Отобразить документацию посадочного места» datasheet_png и просмотреть многостраничный документ в PDF-формате со всеми возможными посадочными местами. Его можно распечатать и проверить компоненты, чтобы удостовериться в соответствии всех размеров.

  54. Готово. Теперь можно обновить файл списка цепей с учётом всех, связанных с ним посадочных мест. Выберите ФайлСохранить как. Имя по-умолчанию «tutorial1.net» — это то, что надо, нажмите «Сохранить». Или можете использовать кнопку Save icon. Теперь файл списка цепей обновлён с учётом всех посадочных мест. Заметьте, если не нашлось нужное посадочное место для какого-то компонента, то его нужно создать самостоятельно. Как это сделать, будет рассмотрено в последующем разделе данного документа.

  55. Теперь можно закрыть CvPcb и вернуться назад в редактор схем Eeschema. Сохраните проект, выбрав ФайлСохранить проект схемы. Закройте редактор схем.

  56. Перейдите в менеджер проектов KiCad.

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

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

    Файлы «*.xsl» расположены в каталоге plugins внутри каталога, в который установлен KiCad. Обычно он располагается здесь: /usr/lib/kicad/plugins/.

    Или можете получить его с помощью команды:

    wget https://raw.githubusercontent.com/KiCad/kicad-source-mirror/master/eeschema/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.

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

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

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

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

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

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

  6. Все компоненты отобразятся в верхнем левом углу, сразу над страницей. Если их не видно, прокрутите страницу вверх.

  7. Выберите все компоненты мышью и переместите их в середину. При необходимости, можно изменять масштаб страницы во время перемещения.

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

    Всплывающая контекстная подсказка имеет противоположный смысл, будучи нажатой, эта кнопка, как ни странно, отображает все связи.
  9. Каждый компонент можно передвигать, расположив над ним курсор и нажав клавишу 'g'. Нажмите левой кнопкой мыши там, где бы хотели его разместить. Передвиньте все компоненты так, чтобы минимизировать число пересечений соединений.

    Если вместо перетаскивания компонентов (клавиша 'g') использовать перемещение (клавиша 'm'), будут утрачены проводные соединения (то же самое происходит в редакторе схем). Подчёркиваем, старайтесь всегда использовать опцию перетаскивания (клавиша 'g').
    gsik_tutorial1_080_png
  10. Если связи исчезли или изображение на экране получилось запутанным, нажмите правую кнопку мыши и выберите 'Перерисовать'. Заметьте, что один контакт 100-омного резистора соединён с шестым выводом компонента PIC. Это результат использования метода маркировки, применённого при соединении контактов. Метки часто предпочтительнее реальных проводников, потому что они делают схему более аккуратной.

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

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

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

    Select the Front top copper layer
  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 и загрузите свою плату, нажав на кнопку open_document_png.

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

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

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

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

B.Cu

Copper

.GBR

.GBL

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

F.Cu

Component

.GBR

.GTL

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

F.SilkS

SilkS_Cmp

.GBR

.GTO

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

B.Mask

Mask_Cop

.GBR

.GBS

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

F.Mask

Mask_Cmp

.GBR

.GTS

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

Edge.Cuts

Edges_Pcb

.GBR

.GM1

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

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

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

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

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

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

FreeRouter – это java-приложение с открытыми исходными кодами. Его нужно собрать самостоятельно для использования в KiCad. Исходные коды FreeRouter’а можно найти на этом сайте: https://github.com/nikropht/FreeRouting
  1. Из Pcbnew выберите ФайлЭкспортSpecctra DSN или нажмите ИнструментыFreeRouteЭкспорт в файл Specctra Design (*.dsn) и сохраните файл куда-нибудь. Запустите FreeRoute и нажмите на кнопку 'Open Your Own Design', выберите созданный dsn-файл и загрузите его.

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

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

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

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

  6. Вернитесь в редактор Pcbnew. Теперь можно импортировать только что разведённую плату, выбрав ИнструментыFreeRoute, затем нажав кнопку 'Обратный импорт файла Specctra Session' и выбрав созданный .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» и «Электрический тип» — «Пассивный». Затем нажмите «ОК».

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

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

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

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

    gsik_myconn3_l_png
  8. Если нужно заполнить прямоугольник жёлтым, установите цвет заливки фона в 'Жёлтый 4' с помощью меню НастройкиУстановки цветовой схемы, затем, выделите прямоугольник в окне редактора и измените его свойства (E), выбрав 'Заливка фона'.

  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, чтобы закрыть окно 'Таблицы библиотек печатной платы'. Нажмите кнопку 'Выбрать активную библиотеку' library_png на верхней панели инструментов. Выберите библиотеку 'myfootprint'.

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

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

    Pad Properties
  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 доступны для разных языков в Интернете.

Table of Contents