чем открыть kicad pcb
Трассировка печатной платы в KiCAD
Введение
Рассмотрим этот инструмент подробнее применительно к уже решенной мною задаче — трассировке печатной платы для преобразователя уровней на базе MAX232.
1. Установка KiCAD и библиотек
Дистрибутив программы и инструкции по установке имеются на её официальном сайте. Так как я предпочитаю использовать Linux, а конкретно Arch Linux, то установка сводится к заклинанию для пакетного менеджера
Первый пакет — сама программа, второй — библиотеке компонентов, третий — 3D-модели компонентов. Собственно и всё. Аналогичный набор пакетов имеется для всех популярных дистрибутивов Linux. Для Windows качаем бинарный инсталлятор здесь. Для macOS все аналогично. В общем, установка элементарна и затруднений не вызывает.
2. Чертим принципиальную схему
Запустив KiCAD мы увидим главное окно программы. Оно содержит дерево проекта и кнопки вызова программных компонент, предназначенных для различных этапов проектирования устройства.
/work/kicad/rs232, и проект назову rs232.
После создания проекта в дереве образуются два файла: rs232.pro — файл проекта; rs232.sch — файл принципиальной схемы. Дважды кликаем по файлу схемы и переходим Eeschema — программу для рисования схем
Формат основной надписи чертежа, естественно буржуазный. Но нас пока не интересует следование ГОСТ и ЕСКД. Нам надо оценить возможности пакета для решения конкретной практической задачи, путь даже такой простой. Поэтому приступим к рисованию схемы.
С правой стороны окна расположена панель инструментов. На ней имеется кнопка с изображением операционного усилителя — жмем на неё и переходим в режим размещения компонентов. Кликая мышью в поле схемы мы инициируем появление диалога
В строке фильтра начинаем набирать «max232». система производит поиск по библиотеке и предлагает нам интересующую нас микросхему. Выбираем её, жмем ОК и курсором мыши помещаем компонент в нужное место схемы. Аналогичным образом кладем на схему электролитический конденсатор, который отзывается в KiCAD по имени CP
Наводим курсор на конденсатор, жмем «V» и в появившемся окне задаем его номинал
Если навести курсор на любой элемент, в частности только что добавленный конденсатор, то нажатием соответствующих клавиш можно выполнять следующие действия
M — переместить компонент (начать перемещение)
C — создать копию компонента
R — повернуть компонент по часовой стрелке
X — отразить компонент относительно горизонтальной оси
Y — отразить компонент относительно вертикальной оси
Действуя описанным образом, размещаем все остальные компоненты схемы. Нам понадобятся следующие элементы
Имя компоненты в библиотеке | Тип компонента | Количество |
---|---|---|
CP | Электролитический конденсатор | 4 |
D | Диод | 1 |
DB9 | Коннектор типа DB-9 | 1 |
CONN_01x05 | Однорядный штыревой коннектор (5-pin) | 1 |
Кроме того, нам понадобится земля и питание +5 В. Эти элементы добавляются в режиме размещения портов питания, который включается на правой панели кнопкой с символом «земли». Нам понадобятся следующие порты: GND — собственно «земля»; +5V — без комментариев.
В конечном итоге на поле схемы у нас получится что-то вроде этого
Теперь, нажатием кнопки с изображением зеленой линии переходим в режим «Разместить проводник» и соединяем выводы всех элементов согласно принципиальной схеме устройства. Если нам нужна дополнительная «земля», наводим курсор на ближайшую «землю», жмем «C» и клонируем её, без отрыва от процесса соединения элементов. В конечном итоге у нас получится следующая схема
Задаем интересующие нас настройки и жмем «Обозначить компоненты». Теперь другое дело
Полагая, что мы закончили схему, проверяем правильность её построения с точки зрения правил KiCAD. Для этого жмем на верхней панели кнопку с изображением божьей коровки с зеленой галочкой. В предложенном нам окне жмем кнопку «Выполнить» и получаем результат
Ошибок нет, но зато есть 13 предупреждений. Эти предупреждения принципиальны — они указывают на то, что некоторые выводы элементов у нас никуда не подсоединены, а также на то, что мы не подали питание на схему.
Неиспользуемых выводов у нас много. Чтобы система не ругалась на нас по их поводу, отметим эти выводы ка неиспользуемые. Для этого выберем режим указания неиспользуемых пинов нажатием кнопки с косым крестом «X» на правой панели, так называемый флаг «Не подключено». Помечаем этим флагом все незадействованные пины
Входы второго канала MAX232 (ножки 8 и 10) подтягиваем к «земле», с тем чтобы гарантировать нулевое напряжение на них при работе устройства.
После этого проверяем схему ещё раз
Отлично, всего два предупреждения о не подключенном питании. Питание в нашем случае подается с другого устройства через штыревую колодку P1, поэтому системе следует указать не это, используя виртуальный порт питания PWR_FLAG. Устанавливаем этот порт питания на схему и подсоединяем его к порту питания +5V, к «земле» и проводу идущему от разъема P1 к диоду, как показано на рисунке
Таким образом мы указываем системе по каким линиям в схему подается питание и следующая проверка проходит уже без ошибок и предупреждений. Сохраняем готовую схему.
выбираем родной для KiCad формат списка цепей, задаем имя файла списка rs232.net и жмем кнопку «Сформировать».
Схема готова и можно приступать к следующему этапу
2. Связывание компонентов и их посадочных мест
В первой колонке расположен список доступных библиотек. Во второй колонке — список компонентов, представленных в нашей схеме. В третьей — список доступных посадочных мест. Скажем нам нужна определится с форм-фактором конденсатора C1. У нас имеются в наличии конденсаторы Ether для монтажа в отверстия с диаметров 5 мм, высотой 11 мм и с расстоянием между выводами 2 мм. Хорошо, выбираем библиотеку Capacitor_ThroughHole (конденсаторы для монтажа в отверстия) в первой колонке, конденсатор C1 во второй колонке и посадочное место C_Radial_D5_L11_P2 в третьей колонке. Двойным щелчком по выбранному посадочному месту связываем его с компонентом. Справа от конденсатора C1 появится выбранное посадочное место, как показано на рисунке выше.
Для проверки посмотрим на чертеж посадочного места, нажав кнопку с изображением микросхемы под лупой на верхней панели
Нажав в окне просмотрщика кнопку с изображением микросхемы, мы увидим 3D-модель компонента
Убеждаемся, что выбранное посадочное место соответствует фактической детали, имеющейся у нас. Таким же образом связываем и остальные компоненты. У меня вышел вот такой список
Надо сказать найти нужное посадочное место с непривычки довольно трудно. Но мне удалось обойтись стандартными библиотеками. В любом случае, проблема отсутствия нужной детали решается путем гугления или самостоятельного изготовления (но это выходит за рамки статьи).
Сохраняем полученный список, закрываем CvPcb и заново генерируем список цепей. Теперь всё готово чтобы приступить к непосредственной разводке платы.
3. Разводка печатной платы
Для настройки правил трассировки идем в меню «Правила проектирования» и в окне
задаем ширину дорожек, зазор между ними, диаметр отверстий, диаметр сверла в соответствии с имеющимися у Вас техническими возможностями. Мои настройки представлены на скриншоте.
Если мы не ошибались на предшествующих этапах, процесс пройдет без ошибок. Закрываем окно и видим, что компоненты разместились в окне чертежа платы
Разумеется они все слиплись в кучу. И их придется растащить на предназначенные для них места. Перемещение компонентов происходит теми же командами что и в редакторе схем — наводим курсор на элемент и жмем «M». Если мы хотим переместить компонент на другую сторону платы, то в режиме перемещения нажимаем клавишу «F». Так следует поступить с микросхемой U1, ибо она располагается со стороны дорожек, ввиду SMD-исполнения корпуса.
Попыхтев немного получаем что-то подобное
Стараемся размести компоненты так, чтобы получалось как можно меньше пересекающихся связей. Теперь можно приступать к трассировка. Автоматическая трассировка у меня не вышла, возможно я не до конца разобрался с её настройками. Для ручной трассировки перейдем в режим трассировки нажав на верхней панели кнопку «Режим дорожек: автотрассировка».
Правой кнопкой мыши щелкаем по пустому пространству рабочего окна и в выпавшем меню выбираем «Выбор рабочего слоя». В появившемся окне выбираем слой B.Cu (медь с обратной стороны платы)
Наводим курсор на какой-либо пин и жмем «X». Появится дорожка, идущая от выбранного пина до текущего положения курсора. Тянем эту дорожку, фиксируя её промежуточные точки однократными щелчками мыши. По завершении, на последнем пине делаем двойной щелчок. Если нам не нравится результат, жмем Esc отменяя проведенную дорожку. Другие полезные команды и их горячие клавиши доступны в контекстном меню, вызываемом правой кнопкой в момент трассировки.
Надо сказать что процесс трассировки интуитивно понятен и довольно скоро мы получаем результат
Желтой линией на скрине показан контур платы. Чтобы нарисовать его переходим в слой Edge.Cuts (список слоев расположен в окне программы справа) и инструментом «Линия или полигон» (кнопка с изображением пунктирной линии на правой панели инструментов) рисуем контур платы.
Результат выглядит довольно симпатично, правда монтаж можно сделать и поплотней.
Задаем печатаемый слой (B.Cu — медь с задней стороны платы), обязательно выставляем галочку «Зеркально», проверяем что выставлен масштаб 1:1 и убираем галку «Печать рамки листа». Жмем печать. Если у нас нет принтера, то печатаем в PDF
Получая на выходе искомый шаблон
Заключение
Надо сказать, что я довольно бегло пробежался по возможностям KiCAD, обращая внимание лишь на ключевые моменты его использования. Эта статья некоторый вводный мануал, обобщающий весьма разрозненную информацию, имеющуюся в сети. Тем не менее он может служить хорошим стартом.
Можно сделать вывод, что программа вполне пригодна для проектирования печатных плат, учитывая что описание всех её возможностей выкатится не в один десяток подобных статей. Её несомненным преимуществом является бесплатность и открытый формат всех конфигурационных файлов и библиотек, дающих бескрайний простор для расширения компонентной базы.
Надеюсь было интересно. Спасибо за внимание!
Kicad
Система автоматизированного сквозного проектирования, позволяющая создавать профессиональные электрические схемы, разрабатывать для них печатные платы и подготавливать выходные данные для производства.
Программа KiCad написана на языке С++. В ее состав входят следующие:
1. основные приложения:
• менеджер проектов kicad, позволяющий создавать и настраивать параметры новых работ;
• редактор электрических схем eeschema для рисования и компонирования схем, включающий редактор символов;
• редактор печатных плат pcbnew, формирующий схему электрических цепей и включающий в себя редактор посадочных мест,
2. дополнительные утилиты:
• просмотрщик файлов формата Gerber – gerbview;
• программа для определения посадочных мест в соответствии с компонентами на схеме – cvpcb;
• редактор просмотра отчётов wyoeditor.
Кроме того KiCad включает в себя множество библиотек электронных компонентов для которых есть выполненные в программе Wings3D трехмерные модели.
Редактор eeschema позволяет создавать многолистовые иерархические схемы и проводить их проверку на соответствие электрическим правилам. В нем же создаются перечни элементов в виде таблицы и netlist-список для моделирования схемы в редакторе печатных плат. Дополнительная опция позволяет сохранить netlist в популярном формате Spice и провести симуляцию схемы в стороннем приложении.
Pcbnew работает с платами, содержащими 16 медных и 12 технических слоев, внутренние слои металлизации, термальные контактные площадки, слепые, сквозные и внутренние переходные и микро-переходные отверстия, СВЧ-структуру. Существует возможность использовать внешние трассировщики, например FreeRouter и TopoR, присутствует калькулятор печатных плат и опция автоматического и ручного размещения компонентов. В конце работы генерируются технологические файлы на изготовление (для фотоплоттеров и сверлильных станков), а также предлагается послойная распечатка в форматах HPGL, PostScript, DXF, PDF и SVG с рамкой формата или без нее. KiCAD создает списки компонентов для заказа, а также логотип разработчика на плате, может экспортировать чертежи в форматах DXF и PDF.
Размер схемы или платы в KiCad не ограничен, на любом этапе работы можно вернуться назад, внести изменения, а потом легко перенести их дальше. Опция 3D Viewer позволяет на базе OpenGL построить объемное изображение печатной платы. Качество рендеринга, конечно же, ниже, чем у платных аналогов, но вполне достаточно для визуальной оценки. К сожалению, основные форматы трехмерных моделей компонентов, представляемые производителями, *.iges и *.step – программа не поддерживает.
К недостаткам системы проектирования стоит отнести неудобный и не интуитивный интерфейс. Программу сложно освоить без чтения соответствующей документации.
Автором данного софта является француз Жан-Пьер Шарра, разработавший его в 1992 году. Жан-Пьер работает исследователем в лаборатории изображений и сигналов, а также преподает электронику и обработку изображений в технологическом институте в городе Сен-Мартен-д\’Эр (Гренобль, Франция).
Основное достоинство среды KiCad, помимо полнофункциональности – это свободная лицензия и открытые для изменений коды, форматы данных, библиотек, схем, проектов печатных плат.
К программе регулярно выходят обновления. Для системы Windows предлагается сборка в виде установочного EXE-файла или в виде ZIP-архива. Для инсталляции программы необходимо запустить EXE-файл или разархивировать архив в папку C:\\Program Files\KiCad.
Данная система проектирования поддерживает английский, португальский, испанский, чешский, польский, французский, немецкий, русский и многие другие языки. Стараниями многих добровольцев в настоящее время приложение полностью адаптировано к ГОСТ.
KiCad является кросс-платформенным программным средством и работает на операционных системах FreeBSD, Linux, MS Windows, Apple Mac OS X и Solaris.
Распространение программы: бесплатная, открытый исходный код
Kicad в вопросах и ответах
С января этого года я пользуюсь Kicad, перешел на который с Altium, которым пользовался около 4х лет и у меня уже скопилось некоторое количество лайфхаков, связанных с работой в новой для меня системе проектирования. Чтобы их как-то систематизировать и не забывать, я сделал данную статью в формате «вопрос-ответ», с разбивкой по категориям.
Важно: версия Kicad, рассматриваемая в данной статье, 5.1
Для информации: на англоязычном форуме Kicad есть секция FAQ, где можно найти гораздо больше информации, отвечающей на аналогичные вопросы.
Редактор схем
Q: Какие основные операции можно производить с графическим обозначением компонента с помощью быстрых клавиш?
A:
A — добавить компонент на схему
M — переместить компонент (начать перемещение)
G — перетащить компонент с сохранением связей
C — создать копию компонента
R — повернуть компонент по часовой стрелке
X — отразить компонент относительно горизонтальной оси
Y — отразить компонент относительно вертикальной оси
Insert — добавить последний выбранный компонент
Q: Как скопировать часть схемы из одного проекта в другой?
A: Скопировать лист со схемой из старого проекта в директорию нового проекта, далее в новом проекте создать новый иерархический лист и в имени файла указать имя файла листа «старого» проекта. Программа выдаст подтверждение о том, что файл уже существует и попросит привязать его к новому листу, соглашаемся. А далее можно редактировать этот лист, либо скопировать блок в другой лист схемы.
Q: Как быстро копировать блоки схемы?
A: Делается это довольно просто, при нажатой клавише Shift надо выделить блок схемы, который должен быть скопирован.
Q: Как изменить шрифт в редакторе схем?
A: Ответ — никак. На данный момент (версия 5.1.4) все шрифты в программе захардкожены и не могут быть изменены, вот и живите теперь с этим 🙂
Q: Как быстро переключать размеры сетки в редакторе схем и компонентов?
A: Никак, видимо эту фичу пока что не завезли.
Редактор библиотек компонентов
Q: Где брать библиотеки компонентов?
A: Kicad уже поставляется с довольно большой библиотекой готовых компонентов. Можно пользоваться ими, но лично я, для своих нужд, создал отдельный репозиторий компонентов, где отрисовываю по стандарту ЕСКД необходимые мне компоненты. Пользуйтесь! Также никто не запрещает создавать свои библиотеки компонентов, тем более, что процесс этот достаточно простой.
Q: Есть ли какой-то автоматизированный генератор компонентов для библиотек?
A: Да, есть и его можно использовать онлайн вот отсюда.
Q: Как быть, если у компонента больше количество выводов и его УГО получается слишком монструозным?
A: Создавать компонент из нескольких частей, для этого в настройках необходимо указать количество частей и то, что они не взаимозаменяемы:
После чего можно будет переключаться между частями компонентов из редактора:
Q: Как компоненту назначить посадочное место?
A: Сделать это можно из окна свойств компонента в редакторе библиотек компонентов:
Редактор печатных плат
Q: Как перетащить сегмент проводника с сохранением угла наклона?
A: Делается это быстрой клавишей D на сегменте как показано здесь:
Q: Как в Kicad подсвечивать пины как в Altium?
A: Такой функционал имеется и работает он точно также, зажимаем Ctrl и кликаем на контактной площадке, чтобы выделить все остальные, с которыми она соединена электрически. Чтобы убрать выделение, точно также кликаем на пустой области экрана.
Q: Как добавить логотип на печатную плату?
A: В главном окне программы жмем кнопку В появившемся окне выбираем нужное нам изображение:
Выбираем формат Pcbnew, чтобы произвести экспорт в формат посадочного места. Для этого я специально завел папку Logo.pretty, куда сохраняю логотипы в формате .kicad_mod. После просто добавляю логотип как посадочное место на плату и получаю вот такую картинку:
Если же необходимо добавить логотип или картинку на слой меди или любой другой слой, то открываем .kicad_mod файл созданного логотипа и меняем где встречается F.Silk на F.Cu, например.
Q: Как создать Castellated Holes на печатной плате?
A: По этой теме я написал отдельную заметку, чтобы не увеличивать сильно объем данной статьи.
Q: Где можно более подробно почитать по проектированию печатной платы?
A: Конечно же на странице официальной документации, которая доступна на русском языке, между прочим, или можете прочитать мою статью и следить за всеми публикациями по теме.
Редактор библиотек посадочных мест
Q: Как добавить в посадочное место контактную площадку сложной формы?
A: В 5й версии добавили возможность создавать контактные площадки любой формы. Для этого переключаемся на любой слой, кроме меди, например F.Silk, рисуем графическими примитивами нашу площадку, добавляем на созданный рисунок небольшого размера контактную площадку для привязки. После чего, выделяем все и жмем правой кнопкой мыши, в контекстном меню выбираем «Создать конт. пл. из выбранных форм». Как это делать более подробно и с картинками можно посмотреть здесь.
Q: Как добавить зону запрета трассировки в посадочном месте компонента?
A: Сделать это так, как это делается в том же Altium нет возможности, но можно сделать подобную зону графическими примитивами в одном из технических слоев, я для этого использую слой Dwgs.User. Кстати, в 6й версии обещают добавить данный функционал.
Прочее
Q: Где брать расширения для Kicad?
A: По ссылке можно найти список с описанием.
Q: Как экспортировать 3d модель печатной платы для интеграции с корпусом?
A: Для этого есть специальная утилита StepUp Tool, которая позволяет выгрузить 3d модель платы во FreeCAD.
Q: Как импортировать Altium проект в Kicad?
A: Можно воспользоваться конвертером altium2kicad, который также существует в виде онлайн сервиса.
Q: Есть ли памятка по процессу создания проекта в Kicad?
A: Такая памятка существует и я ее нашел по следующей ссылке.
На этом все, если у вас есть какие-то нерешенные вопросы касательно работы в Kicad или вы знаете крутой лайфхак, пишите в комментариях или в наш чат и пользуйтесь Kicad 😉