Вопрос состоит в том, как при работе с библиотекой символов транзисторов для gschem и библиотекой элементов транзисторов для pcb ухитриться сделать так, чтобы мы могли быть уверены в правильности соответствия друг другу номеров выводов в этих библиотеках. Нам нужно условиться, как обращаться с различными перестановками выводов эмиттера, базы и коллектора (e,b,c) и разными вариантами количества и нумерации выводов корпусов. В настоящем документе представлен подход, используемый мной для моих собственных символов gschem и элементов pcb.
Есть пара достойных внимания решений:
npn.sym
, pnp.sym
, fet.sym
и т. д., имеющих фиксированные и назначенные произвольно номера выводов для эмиттера, базы и коллектора. Для получения различных вариантов соответствия (e,b,c) номерам выводов для разных корпусов транзисторов, нужно бы иметь набор pcb-элементов для каждого из корпусов, например, TO-92-123
, TO-92-132
, TO-92-213
, TO-92-231
, TO-92-312
, TO-92-321
, и таким же образом для TO-220
, TO-5
и других. Проблема здесь в том, что номера выводов определяются производителями и нам пришлось бы сделать множество элементов с такой нумерацией, которая на самом деле ни для каких приборов не используется. Помните, что pcb-элементы на топологической схеме в pcb должны соответствовать физическим электронным компонентам.npn-ebc.sym
, npn-ecb.sym
, npn-bec.sym
, npn-bce.sym
, npn-ceb.sym
и npn-cbe.sym
. Подобные наборы могли бы существовать и для pnp-транзисторов, и для полевых (fet-sdg.sym
, fet-sgd.sym
, …). В этом случае можно иметь pcb-элементы только для действительно существующих корпусов транзисторов.
Следует отметить, что второй подход очевидно лучше. Настройка символов gschem достаточно проста, надо просто создать шесть символов для каждого типа транзистора, в которых номера выводов эмиттера, базы и коллектора соответствуют их последовательности в названии символа. Например, для символа npn-ebc.sym
атрибут pinnumber
эмиттера имел бы значение 1, pinnumber
базы — 2, а pinnumber
коллектора — 3. Теперь нужно только создать для корпусов транзисторов pcb-элементы с правильно пронумерованными выводами, когда они вам понадобятся, и нужна методика именования этих элементов.
Что следует иметь в виду при рассмотрении номеров и конфигурации выводов корпуса транзистора, так это то, что обозначение TO (“Transistor Outline” — эскиз транзистора) — это на самом деле как раз и есть просто обозначение эскиза корпуса особой формы и размеров. Это отнюдь не спецификация выводов для этого корпуса. Производители могут специфицировать обозначения корпусов TO своими внутренними кодами “типоразмеров” или “номеров корпусов”. В таких спецификациях устанавливается определение количества выводов, их расположение и нумерация.
Тем не менее большая часть корпусов TO соответствует стандартному соглашению по нумерации выводов и имеет общепринятое количество и расположение выводов. Поэтому есть смысл иметь у себя pcb-элементы для конкретных названий TO, которые могут использоваться в большинстве случаев. А если вдруг встретится исключение из правила, то для такого случая можно сделать и новый pcb-элемент.
Здесь приводится описание тех конфигураций корпусов транзисторов, что представляются наиболее общими:
TO-126
, TO-220
, TO-264
и т. д. Для таких вариантов, как пятивыводной корпус TO-220
для LM383, можно сделать pcb-элемент, назвав его, например, TO-220-5
, или может быть TO-220-T05B
, если вам хочется назвать его в соответствии с принятым фирмой National Semiconductor обозначением корпуса T05B для их пятивыводных корпусов TO-220.TO-3
, а N-выводные корпуса с N > 2 можно называть TO-3-N
.TO-18-3
и TO-18-4
или использовать TO-18
и TO-18-4
, полагая, что трёхвыводные корпуса более широко распространены и потому должны обозначаться просто как TO-18
.TO-92
. В очень редких случаях выводы с прямолинейным расположением нумеруются слева направо в порядке (3,2,1). Для них можно сделать специальный pcb-элемент, но тогда нужно также принять решение игнорировать нумерацию выводов производителя и делать вид, что используется более общая конфигурация (1,2,3). Однако, если средний вывод для корпуса смещён относительно остальных, так что выводы расположены треугольником, выводы часто нумеруются в порядке (3,2,1) и для этого, возможно, потребуется нестандартный pcb-элемент. Но смотрите ниже мои комментарии насчёт элемента TO-92o.footprint
в схеме, так как номера выводов корпуса для эмиттера, базы и коллектора в этих версиях не соответствуют друг другу. Для них нужен отдельный символ gschem. Например, 2N3904.sym
для TO и MMBT3904.sym
для SOT.Первоначальный процесс подготовки транзистора для перехода от схемы в gschem к pcb включает следующие шаги (как пример используется 2N3904):
TO-92
с нумерацией выводов (1,2,3), так что я могу использовать его.npn-ebc.sym
в 2N3904.sym
.value
как значение задайте название транзистора, а атрибуту footprint
— подходящий pcb-элемент. Для нашего примера это могут быть 2N3904 и TO-92.TO-92o
, средний вывод которого смещён, так что выводы расположены треугольником. Выводы этого элемента располагаются в порядке (1,2,3) слева направо и его по соображениям трассировки можно использовать вместо TO-92
. Только при установке транзистора вам придётся чуть-чуть отогнуть его средний вывод.npn-cbe.sym
, но использовать для него pcb-элемент TO-92o
.BF240.sym
из npn-bec.sym
, так как вывод 1 pcb-элемента должен соответствовать выводу 1 символа gschem. Но проще было бы просто проигнорировать эту нестандартную нумерацию выводов и считать, что выводы транзистора на самом деле нумеруются стандартным образом слева направо в порядке (1,2,3). Тогда можно использовать существующий pcb-элемент TO-92
и создать символ gschem из npn-ceb.sym
. В некоторых спецификациях транзисторов задаётся порядок названий выводов, но не задаётся порядок их нумерации, и для них вам нужно просто принимать такое же допущение, что выводы слева направо нумеруются в порядке (1,2,3).TO-92o
, и игнорировать указанный в спецификации порядок выводов, как я предлагал в третьем случае. Но данная конфигурация намного более распространена, чем для примера с BF240, так что может быть лучше для таких транзисторов иметь специальный pcb-элемент, в котором выводы нумеруются в соответствии со спецификацией.Автор: Bill Wilson (bill–at–gkrellm.net)