Итак, теперь у нас есть схема. В двух последних статьях мы достаточно подробно рассмотрели и процесс ее создания, и положенные в основу работы со схемами принципы. Но для создания печатной платы нужно сделать еще несколько промежуточных шагов. И часть этих шагов делается в уже знакомом нам редакторе схем.
Не все из рассматриваемых сегодня шагов выполнять обязательно. Особенно, если речь идет о любителях. Но иметь представление о процессе в целом полезно.
- Проверка правил проектирования (ERC). В данном случае, речь идет о электрических правилах. Об этом немного говорилось в предыдущих статьях, но сегодня мы рассмотрим это более подробно. Любители часто пропускают этот шаг, что нельзя считать правильным.
- Дополнение схемы недостающей информацией. В большинстве случаев речь идет об уточнении "обобщенных компонентов". Например, в схеме использован компонент "конденсатор", но для него не определен конкретный вид корпуса.
- Подготовка документации. Это очень просто шаг. Речь идет о "причесывании" схемы и ее печати или выводе в виде графического файла. Часть этого шага мы ранее уже сделали. Для любителей все сведется, скорее всего, просто к распечатке схемы.
- Подготовка списка компонентов. С одной стороны, это может рассматриваться как часть предыдущего шага. Но список компонентов часто используется как основа для формирования заказа на закупку. И для расчета стоимости конечного изделия. То есть, это уже не техническая документация. Для любителей этот список тоже полезен, хоть часто и обходятся без него.
- Формирование списка цепей. Сегодня это делается в неявном виде, если разработка платы выполняется в KiCad. Но в старых версиях список цепей и формировался, и использовался, в явном виде. И сегодня сохраняется возможность сформировать список цепей в нескольких форматах для передачи схемы в другие системы.
Проверка правил проектирования (ERC)
Когда схема полностью нарисована и компоненты обозначены можно, и нужно, выполнить проверку правил проектирования. Почему это важно? Мы ведь так старательно и внимательно рисовали схему.
Если схема не самая простая и для установления связей между компонентами используются имена цепей или шины, вполне возможна ситуация, когда две разные цепи, случайно, получили одинаковые имена. В результате, это будут не разные цепи, а одна сеть. И может оказаться, что выясниться уже на этапе трассировки платы, когда большая часть платы уже разведена. И придется многое переделывать.
Могут остаться не подключенными и какие-либо выводы компонентов, которые обязательно должны быть подключены. Могут оказаться соединенными два выхода компонентов, которые соединять нельзя.
Проверка электрических правил (правил проектирования) не позволяет выявить абсолютно все ошибки. Но она позволяет выявить некоторые грубые ошибки. Конечно, если компоненты разработаны правильно, с указанием типов выводов. Если все выводы просто обозначены как "пассивный", никакая проверка не поможет. Просто нечего будет проверять.
В KiCad, как и во многих других EDA, проверка электрических правил основана на таблице допустимости соединений. В KiCad текущей версии (5.1.11) эта таблица выглядит так
Строки и столбцы таблицы соответствуют различным возможным типам выводов. Элементы на пересечении строк и столбцов соответствуют соединению типов выводов. Возможны три варианта:
- Соединение разрешено. Это отображается как квадратик зеленого цвета.
- Соединение может быть ошибочным. Это отображается как квадратик желтого цвета с буквой W. Такие соединения могут быть допустимыми, но это требует дополнительного внимания. При проверке такие соединения приводят к выдаче предупреждений.
- Соединение запрещено. Это отображается как квадратик красного цвета с буквой E. Такие соединения являются недопустимыми и могут появиться только как результат ошибки. Например, в предыдущей статье я говорил, что соединение двух выходов питания недопустимо. При проверке правил такие соединения приводят к выводу сообщений об ошибке.
Например, из этой таблицы видно, что к выводу типа "вход" могут подключаться выводы почти всех типов, за исключением "не соединено" (это ошибка) и "не определено" (это предупреждение).
Все элементы таблицы являются "кликабельными". То есть, пользователь имеет возможность переопределить "точку зрения" KiCad на соединение выводов различных типов.
Запуск проверки электрических правил осуществляется инструментом "Выполнить проверку электрических правил проектирования" на верхней панели инструментов. Это кнопка с пиктограммой божьей коровки. Вот пример окна проверки с сообщениями об ошибках
На схеме места с найденными ошибками, или с предупреждениями, помечаются специальными маркерами
Небольшие зеленые стрелки у выводов и являются маркерами ошибок. В данном случае, предупреждений. Крестики синего цвета помечают выводы, которые в явном виде оставлены не подключенными. Эта метка ставится разработчиком схемы вручную.
После исправления ошибок нужно выполнить проверку еще раз. Если все устраивает, а маркеры показывают на предупреждения, которые можно игнорировать, можно просто стереть маркеры (кнопкой "Удалить маркеры").
Дополнение схемы недостающей информацией. Или еще раз про компоненты
Мы уже рассматривали компоненты очень подробно, например, в статье
KiCad для начинающих. §3 Электронный компонент в KiCad "под микроскопом"
Поэтому вы должны помнить и об абстрактных (обобщенных) компонентах, и о конкретизированных компонентах, и о семействах компонентов. Но в реальной жизни даже конкретизированный компонент может быть не полностью определенным. Например, компонент может иметь несколько вариантов корпуса или посадочного места.
Различные варианты корпуса можно предусмотреть созданием семейства. Тем более, что тип корпуса часто входит в обозначение компонента. Но различные варианты посадочно места уже сложнее (хоть и возможно). Например, компонент в корпусе DIP12 имеет (в стандартных библиотеках) такие посадочные места:
- DIP-12_W7.62mm
- DIP-12_W7.62mm_SMDSocket_SmallPads
- DIP-12_W7.62mm_Socket_LongPads
- DIP-12_W7.62mm_LongPads
- DIP-12_W7.62mm_Socket
И это только для стандартного корпуса. Поэтому, как мы уже знаем, одно из посадочных мест выбирается в качестве стандартного (по умолчанию) и задается фильтр, или список, альтернативных посадочных мест. Поэтому после создания схемы может потребоваться уточнить тип посадочного места.
Некоторые компоненты просто могут иметь только абстрактный вид. Например, компонент "конденсатор неполярный". В такой случае умолчание для посадочного места может вообще отсутствовать.
Если в первом случае на печатную плату просто попадет не то посадочное место, которое нужно, то во втором случае мы получим сообщение об ошибке о не заданном и отсутствующем в библиотеке посадочном месте.
Задать или уточнить выбор посадочного места можно редактируя свойство компонента на схеме (не в библиотеке!). Как это делается мы уже знаем, поэтому я не буду снова рассказывать об этом.
Но есть и еще один способ, уже специально предназначенный для задания посадочных мест компонентов. Это инструмент "Назначить посад.места печатной платы компонентам схемы" и его можно найти на верхней панели инструментов справа от инструмента проверки правил.
Кстати, обратите внимание на порядок расположения этих инструментов. Он соответствует рекомендуемому порядку шагов (этапов) подготовки к созданию платы.
Инструмент "Назначить посад.места печатной платы компонентам схемы" выводит окно с полным списком компонентов и назначенных им посадочных мест. Кроме того, в нем же есть и список библиотек посадочных мест, и список мест в каждой библиотеке. Вот пример
Видно, что конденсаторам посадочные места не назначены. Если для компонента задан список места или фильтр, то для него будет выводиться не полный список, а уже отфильтрованный, что значительно облегчает задачу.
Этот инструмент полезен и в том случае, если вы редактируется свойства компонентов на схеме. Просто как элемент контроля, что ничего не пропустили.
Подготовка документации
Я не буду говорить о "наведении красоты", слишком это субъективное понятие. Схема должна быть читаемой, это самое главное. Все средства нам уже известны. Переместить всю схему в пределах листа можно выделением блока (включающего в себя всю схему) и его перемещением.
Но стоит немного сказать о различиях между печатью схемы и ее черчением. Это два разных инструмента, которые доступны в верхней панели инструментов.
Печать это преобразование схемы в растровый формат и вывод на принтер. Ключевым моментом здесь является растеризация. То есть, при выводе на печать схема неизбежно станет растровым рисунком. Разумеется, не схема в KiCad, а напечатанная. Если в системе есть драйвер принтера, который осуществляет "печать" в файл, то он все равно получит на входе растр.
Черчение схемы ориентированно на веторные устройства вывода. Например, графопостроители. Вывод обычно осуществляется не напрямую, а через файлы. Есть несколько форматов файлов, включая pdf. При черчении можно задавать и некоторые дополнительные параметры. По большей части это будет лишь тощина линии по умолчанию.
Для любительского применения большой разницы между печатью и черчением нет. Но векторный формат (например, SVG) поволяет впоследствии масштабировать схему без потери качества. А в растровом формате все упирается в размер пикселя файла (плотность пикселей при выводе).
Подготовка списка компонентов
Инструмент "Сформировать перечень элементов" запускается кнопкой на верхней панели инструментов. Он реализован в виде дополнений и использует для своей работы внешние программы. Например, xslt или python. Разумеется, они должны быть установлены.
Инструмент позволяет формировать не только списки компонентов, но мы не будем это рассматривать. Список может быть сформирован в различном виде
Нас интересуют дополнения начинающиеся с "bom" (Bill of material). В данном случае используется вариант bom_csv_grouped_by_value_with_fp. Краткое описания выбранного дополнения отображается в окне справа. В данном случае, будет сформирован файл CSV в котором компоненты будут отсортированы по обозначениям и сгруппированы по значениям и посадочным местам. Чуть ниже показана и команда, которая будет фактически выполнена.
Я сформировал список компонентов для нашей схемы мультивибратора. И получил вот такой файл csv
Или после загрузки в электронную таблицу и удаления строк описания файла
Лишние столбцы, конечно, можно удалить. И мы получим список компонентов с номиналами, корпусами, количеством, который можно использовать для подбора или заказа компонентов.
Попробуйте различные варианты форматов списка самостоятельно. Это позволит вам выбрать более всего подходящий именно для вас вариант.
Формирование списка цепей
Если вам просто нужно перейти к разработке печатной платы средствами KiCad (pcbnew), то достаточно нажать на верхней панели инструментов кнопку "Запустить pcbnew для разработки печатной платы". Список цепей можно будет просто, без явного формирования, из редактора печатных плат.
Если же вам для каких либо целей нужен выведенный в отдельный файл список цепей, или нужен иной формат списка, то можно воспользоваться инструментом "Сформировать список цепей" на верхней панели инструментов. Вариантов не так и много.
Заключение
Теперь мы готовы приступить к знакомству с редактором печатных плат. Именно с редактором, а не с правилами проектирования и трассировки плат. Точно так же, как при знакомстве с редактором схем не рассматривали вопросы схемотехники.