Электроника:Справочные материалы/Использование программы SPICE для моделирования электрических схем/Компоненты электрических схем: различия между версиями
Valemak (обсуждение | вклад) (Новая страница: «{{Панель управления/Электроника}} {{Перевод от valemak}} {{Myagkij-редактор}} =Компоненты электрических схем<ref>[https://www.allaboutcircuits.com/textbook/reference/chpt-7/circuit-components/ www.allaboutcircuits.com - Circuit Components]</ref>= Всегда держите в уме, что данное руководство никоим образом не претендует на...») |
Нет описания правки |
||
(не показано 19 промежуточных версий 2 участников) | |||
Строка 5: | Строка 5: | ||
=Компоненты электрических схем<ref>[https://www.allaboutcircuits.com/textbook/reference/chpt-7/circuit-components/ www.allaboutcircuits.com - Circuit Components]</ref>= | =Компоненты электрических схем<ref>[https://www.allaboutcircuits.com/textbook/reference/chpt-7/circuit-components/ www.allaboutcircuits.com - Circuit Components]</ref>= | ||
Всегда держите в уме, что данное руководство никоим образом не претендует на всеобъемлемость, и что все описания элементов на языке SPICE приведены здесь в сжатой форме. SPICE – весьма мощная программа с множеством настроек, и я задокументировал лишь некоторую часть. Все компоненты в исходном файле SPICE в первую очередь идентифицируются по первой букве в каждой соответствующей строке. Символы, следующие за идентификационной буквой, используются для того, чтобы отличить один компонент определённого типа от другого | Всегда держите в уме, что данное руководство никоим образом не претендует на всеобъемлемость, и что все описания элементов на языке [[SPICE]] приведены здесь в сжатой форме. [[SPICE]] – весьма мощная программа с множеством настроек, и я задокументировал лишь некоторую часть. Все компоненты в исходном файле [[SPICE]] в первую очередь идентифицируются по первой букве в каждой соответствующей строке. Символы, следующие за идентификационной буквой, используются для того, чтобы отличить один [[компонент]] определённого типа от другого [[компонент]]а того же типа (например, '''r1''', '''r2''', '''r3''', '''rload''', '''rpullup''', при этом с учётом как букв, идентифицирующих [[компонент]], так и остальной части отличительного имени – всего используется до восьми символов). Предположим, что вы моделируете цифровую схему с «повышающими» и «понижающими» резисторами. Имя '''rpullup''' допустимо, поскольку состоит из семи символов. Однако имя '''rpulldown''' состоит из девяти символов. Это может вызвать проблемы, когда [[SPICE]] интерпретирует список связей. На самом деле, можно использовать имена [[компонент]]ов, содержащих более восьми символов, если в исходном файле нет других [[компонент]]ов с похожими именами. [[SPICE]] обращает внимание только на первые восемь символов первого поля в каждой строке, поэтому «'''rpulldown'''» фактически интерпретируется как «'''rpulldow'''», а «'''n'''» в конце игнорируется. А значит, любой другой [[резистор]], имеющий такие же первые восемь символов в имени, будет восприниматься [[SPICE]] как тот же [[резистор]], определённый дважды, что вызовет ошибку (т.е. «'''rpulldown1'''» и «'''rpulldown2'''» будут интерпретироваться как одно и то же имя, «'''rpulldow'''»). Следует также отметить, что [[SPICE]] игнорирует [[регистр]] символов, поэтому '''r1''' и '''R1''' интерпретируются одинаково. [[SPICE]] позволяет использовать префиксы метрик при указании значений [[компонент]]ов, что является очень удобной функцией. Однако соглашение о префиксах, используемое [[SPICE]], несколько отличается от стандартных метрических символов, в первую очередь из-за того, что списки связей ограничены стандартными символами [[ASCII]] (отпадают [[греческие буквы]], такие как '''µ''', для префикса «микро») и что [[SPICE]] нечувствителен к регистру. Поэтому буквы «'''м'''» (стандартный символ для «милли-») и «'''М'''» (стандартный символ для «мега-») интерпретируются одинаково. Вот несколько примеров префиксов, используемых в списках связей [[SPICE]]: | ||
{| class="wikitable" | {| class="wikitable" style="margin:0 auto" | ||
|+ Метрические приставки в SPICE | |+ Метрические приставки в SPICE | ||
|- | |- | ||
Строка 31: | Строка 31: | ||
|} | |} | ||
Экспоненциальное обозначение также допускается при указании значений | Экспоненциальное обозначение также допускается при указании значений [[компонент]]ов. Например: | ||
{| class="wikitable" | |||
{| class="wikitable" style="margin:0 auto" | |||
|+ Экспоненциальная запись чисел в SPICE | |+ Экспоненциальная запись чисел в SPICE | ||
|- | |- | ||
! SPICE !! Расшифровка | ! SPICE !! Расшифровка | ||
|- | |- | ||
| r10 1 0 4.7e3 || Резистор R<sub>10</sub>, 4.7e3 = 4,7 × | | r10 1 0 4.7e3 || Резистор R<sub>10</sub>, 4.7e3 = 4,7 × 10<sup>3</sup> ом = 4,7 килоом = 4,7 кОм | ||
|- | |- | ||
| r11 1 0 1e-12 || Резистор R<sub>11</sub>, 1e-12 = 1 × 10-12 ом = 1 пикоом = 1 пОм | | r11 1 0 1e-12 || Резистор R<sub>11</sub>, 1e-12 = 1 × 10<sup>-12</sup> ом = 1 пикоом = 1 пОм | ||
|} | |} | ||
Единица измерения (омы, вольты, фарады, генри и т. д.) автоматически определяется типом указанного | Единица измерения (омы, вольты, фарады, генри и т. д.) автоматически определяется типом указанного [[компонент]]а. [[SPICE]] «знает», что все приведённые выше примеры являются «омами», потому что все они являются резисторами ('''r1''', '''r2''', '''r3''', …). Если бы это были [[конденсатор]]ы, значения интерпретировались бы как «[[фарад]]ы», если [[катушки индуктивности]], то «генри» и т.д. | ||
== Пассивные компоненты == | == Пассивные компоненты == | ||
Строка 48: | Строка 49: | ||
=== Конденсаторы === | === Конденсаторы === | ||
{| | {{Блок/Инфо1|Общая форма|<nowiki>c[name] [node1] [node2] [value] ic=[initial voltage]</nowiki>}} | ||
| c[name] [node1] [node2] [value] ic=[initial voltage] | |||
{| | {{Блок/Инфо2|Пример 1|c1 12 33 10u}} | ||
| c1 12 33 10u | |||
{{Блок/Инфо2|Пример 2|<nowiki>c1 12 33 10u ic=3.5</nowiki>}} | |||
Переменная «начальное состояние» ('''ic=''') представляет собой напряжение | {{Блок/Инфо3|Комментарий|Переменная «начальное состояние» ('''<nowiki>ic=</nowiki>''') представляет собой [[напряжение]] [[конденсатор]]а в единицах вольт в начале анализа постоянного тока. Это необязательное значение, при этом начальное [[напряжение]] считается равным нулю, если не указано иное. Значения пускового тока для [[конденсатор]]ов интерпретируются [[SPICE]] только в том случае, если вызывается опция анализа '''.tran''' (с опцией «'''uic'''»).}} | ||
=== Катушки индуктивности === | === Катушки индуктивности === | ||
{| | {{Блок/Инфо1|Общая форма|<nowiki>l[name] [node1] [node2] [value] ic=[initial current]</nowiki>}} | ||
| l[name] [node1] [node2] [value] ic=[initial current] | |||
{| | {{Блок/Инфо2|Пример 1|l1 12 33 133m}} | ||
| l1 12 33 133m | |||
{| | {{Блок/Инфо2|Пример 2|<nowiki>l1 12 33 133m ic=12.7m</nowiki>}} | ||
| l1 12 33 133m ic=12.7m | |||
{{Блок/Инфо3|Комментарий|Переменная «начальное состояние» ('''<nowiki>ic=</nowiki>''') представляет собой ток катушки индуктивности в амперах в начале анализа постоянного тока. Это необязательное значение, при этом пусковой ток считается равным нулю, если он не указан. Значения начального тока для [[катушек индуктивности]] интерпретируются [[SPICE]] только в том случае, если активирована опция анализа '''.tran'''.}} | |||
Переменная «начальное состояние» ('''ic=''') представляет собой ток катушки индуктивности в амперах в начале анализа постоянного тока. Это необязательное значение, при этом пусковой ток считается равным нулю, если он не указан. Значения начального тока для катушек индуктивности интерпретируются SPICE только в том случае, если активирована опция анализа '''.tran'''. | |||
=== Индукторные муфты (трансформаторы) === | === Индукторные муфты (трансформаторы) === | ||
{| | {{Блок/Инфо1|Общая форма|k[name] l[name] l[name] [coupling factor]}} | ||
| k[name] l[name] l[name] [coupling factor] | |||
{| | {{Блок/Инфо2|Пример|k1 l1 l2 0.999}} | ||
| k1 l1 l2 0.999 | |||
{{Блок/Инфо3|Комментарий|[[SPICE]] допускает значения коэффициента связи только между 0 и 1 (не включая), где 0 означает отсутствие связи, а 1 — идеальную связь. Порядок указания связанных [[катушек индуктивности]] ('''l1''', '''l2''' или '''l2''', '''l1''') не имеет значения.}} | |||
SPICE допускает значения коэффициента связи только между 0 и 1 (не включая), где 0 означает отсутствие связи, а 1 — идеальную связь. Порядок указания связанных катушек индуктивности ('''l1''', '''l2''' или '''l2''', '''l1''') не имеет значения. | |||
=== Резисторы === | === Резисторы === | ||
{| | {{Блок/Инфо1|Общая форма|r[name] [node1] [node2] [value]}} | ||
| r[name] [node1] [node2] [value] | |||
{| | {{Блок/Инфо2|Пример|rload 23 15 3.3k}} | ||
| rload 23 15 3.3k | |||
{{Блок/Инфо3|Комментарий|Если вам интересно, в [[SPICE]] нет объявления номинальной рассеиваемой мощности [[резистор]]а. Все компоненты считаются неразрушаемыми. Если бы только реальность была такой же снисходительной!}} | |||
Если вам интересно, в SPICE нет объявления номинальной рассеиваемой мощности | |||
== Активные компоненты == | == Активные компоненты == | ||
Все полупроводниковые компоненты должны иметь свои электрические характеристики, описанные в строке, начинающейся со слова «'''.model'''», которая сообщает SPICE, как именно будет вести себя устройство. Любые параметры, не определённые явно в '''.model''', по умолчанию будут иметь значения, предварительно запрограммированные в SPICE. Однако '''.model''' должна быть включена и по крайней мере указывать название модели и тип устройства ('''d''', '''npn''', '''pnp''', '''njf''', '''pjf''', '''nmos''' или '''pmos'''). | Все [[полупроводниковые компоненты]] должны иметь свои электрические характеристики, описанные в строке, начинающейся со слова «'''.model'''», которая сообщает [[SPICE]], как именно будет вести себя устройство. Любые параметры, не определённые явно в '''.model''', по умолчанию будут иметь значения, предварительно запрограммированные в [[SPICE]]. Однако '''.model''' должна быть включена и по крайней мере указывать название модели и тип устройства ('''d''', '''npn''', '''pnp''', '''njf''', '''pjf''', '''nmos''' или '''pmos'''). | ||
=== Диоды === | === Диоды === | ||
{| | {{Блок/Инфо1|Общая форма|d[name] [anode] [cathode] [model]}} | ||
| d[name] [anode] [cathode] [model] | |||
{| | {{Блок/Инфо2|Пример|d1 1 2 mod1}} | ||
| d1 1 2 mod1 | |||
==== Модели диодов ==== | ==== Модели диодов ==== | ||
{| | {{Блок/Инфо1|Общая форма|<nowiki>.model [modelname] d [parmtr1=x] [parmtr2=x] …</nowiki>}} | ||
| .model [modelname] d [parmtr1=x] [parmtr2=x] … | |||
{| | {{Блок/Инфо2|Пример 1|.model mod1 d}} | ||
| .model mod1 d | |||
{| | {{Блок/Инфо2|Пример 2|<nowiki>.model mod2 d vj=0.65 rs=1.3</nowiki>}} | ||
| .model mod2 d vj=0.65 rs=1.3 | |||
==== Параметры для диодов ==== | ==== Параметры для диодов ==== | ||
{| class="wikitable" | {| class="wikitable" style="margin:0 auto" | ||
|+ Определения параметров | |+ Определения параметров | ||
|- | |- | ||
Строка 202: | Строка 135: | ||
|- | |- | ||
| ibv || Ток при напряжении пробоя || Ампер | | ibv || Ток при напряжении пробоя || Ампер | ||
|} | |} | ||
{{Блок/Инфо3|Комментарий|Название модели должно начинаться с буквы, а не с цифры. Например, если вы планируете указать модель [[выпрямительного диода]] '''[[1N4003]]''', вы не можете использовать «'''[[1n4003]]'''» в качестве имени модели. Альтернативой может быть «'''[[m1n4003]]'''».}} | |||
=== Транзисторы с биполярным переходом (ТБП) === | === Транзисторы с биполярным переходом (ТБП) === | ||
{| | {{Блок/Инфо1|Общая форма|q[name] [collector] [base] [emitter] [model]}} | ||
| q[name] [collector] [base] [emitter] [model] | |||
{| | {{Блок/Инфо2|Пример|q1 2 3 0 mod1}} | ||
| q1 2 3 0 mod1 | |||
==== Модели транзисторов с биполярным переходом ==== | ==== Модели транзисторов с биполярным переходом ==== | ||
{| | {{Блок/Инфо1|Общая форма|<nowiki>.model [modelname] [npn or pnp] [parmtr1=x] …</nowiki>}} | ||
| .model [modelname] [npn or pnp] [parmtr1=x] … | |||
{| | {{Блок/Инфо2|Пример 1|.model mod1 pnp}} | ||
| .model mod1 pnp | |||
{| | {{Блок/Инфо2|Пример 2|<nowiki>.model mod2 npn bf=75 is=1e-14</nowiki>}} | ||
| .model mod2 npn bf=75 is=1e-14 | |||
Примеры моделей, показанные выше, очень неспецифичны. Для точного моделирования реальных | Примеры моделей, показанные выше, очень неспецифичны. Для точного моделирования реальных [[транзистор]]ов необходимо больше параметров. Возьмём эти два примера, для популярных [[транзистор]]ов '''[[2N2222]]''' и '''[[2N2907]]'''. Символы «'''+'''» представляют собой метки продолжения строки в [[SPICE]], когда вы хотите разбить одну строку на две или более отдельных строк в [[текстовом редакторе]]: | ||
{| | {{Блок/Инфо2|Пример 1|<nowiki>.model m2n2222 npn is=19f bf=150 vaf=100 ikf=.18<br />+ ise=50p ne=2.5 br=7.5 var=6.4 ikr=12m<br />+ isc=8.7p nc=1.2 rb=50 re=0.4 rc=0.4 cje=26p<br />+ tf=0.5n cjc=11p tr=7n xtb=1.5 kf=0.032f af=1</nowiki>}} | ||
| .model m2n2222 npn is=19f bf=150 vaf=100 ikf=.18<br />+ ise=50p ne=2.5 br=7.5 var=6.4 ikr=12m<br />+ isc=8.7p nc=1.2 rb=50 re=0.4 rc=0.4 cje=26p<br />+ tf=0.5n cjc=11p tr=7n xtb=1.5 kf=0.032f af=1 | |||
{| | {{Блок/Инфо2|Пример 2|<nowiki>.model m2n2907 pnp is=1.1p bf=200 nf=1.2 vaf=50<br />+ ikf=0.1 ise=13p ne=1.9 br=6 rc=0.6 cje=23p<br />+ vje=0.85 mje=1.25 tf=0.5n cjc=19p vjc=0.5<br />+ mjc=0.2 tr=34n xtb=1.5</nowiki>}} | ||
| .model m2n2907 pnp is=1.1p bf=200 nf=1.2 vaf=50<br />+ ikf=0.1 ise=13p ne=1.9 br=6 rc=0.6 cje=23p<br />+ vje=0.85 mje=1.25 tf=0.5n cjc=19p vjc=0.5<br />+ mjc=0.2 tr=34n xtb=1.5 | |||
{| class="wikitable" | {| class="wikitable" style="margin:0 auto" | ||
|+ Определения параметров | |+ Определения параметров | ||
|- | |- | ||
Строка 346: | Строка 249: | ||
|} | |} | ||
''' | {{Блок/Инфо3|Комментарий|Как и в случае с [[диод]]ами, название модели, данное для конкретного типа [[транзистор]]а, должно начинаться с буквы, а не с цифры. Вот почему приведённые выше примеры для типов ТБП '''[[2N2222]]''' и '''[[2N2907]]''' названы «'''[[m2n2222]]'''» и «'''[[q2n2907]]'''» соответственно. Как видите, [[SPICE]] позволяет очень подробно указывать свойства [[транзистор]]а. Многие из перечисленных выше свойств выходят далеко за рамки возможностей и интересов начинающего студента-электронщика и даже бесполезны, если не считать знание уравнений, которые [[SPICE]] использует для моделирования [[биполярных транзисторов]]. Для тех, кто хочет узнать больше о моделировании [[транзистор]]ов в [[SPICE]], обратитесь к другим книгам, таким как «[[Книга по Spice]]» [[Андрея Владимиреску]] ([[ISBN 0-471-60926-9]]).}} | ||
=== JFET, переходной полевой транзистор === | |||
{{Блок/Инфо1|Общая форма|j[name] [drain] [gate] [source] [model]}} | |||
{| | |||
| j[name] [drain] [gate] [source] [model] | |||
{| | {{Блок/Инфо2|Пример|j1 2 3 0 mod1}} | ||
| j1 2 3 0 mod1 | |||
==== Модели JFET-транзисторов ==== | ==== Модели JFET-транзисторов ==== | ||
{| | {{Блок/Инфо1|Общая форма|<nowiki>.model [modelname] [njf or pjf] [parmtr1=x] …</nowiki>}} | ||
| .model [modelname] [njf or pjf] [parmtr1=x] … | |||
{| | {{Блок/Инфо2|Пример 1|.model mod1 pjf}} | ||
| .model mod1 pjf | |||
{| | {{Блок/Инфо2|Пример 2|<nowiki>.model mod2 njf lambda=1e-5 pb=0.75</nowiki>}} | ||
| .model mod2 njf lambda=1e-5 pb=0.75 | |||
{| class="wikitable" | {| class="wikitable" style="margin:0 auto" | ||
|+ Определения параметров | |+ Определения параметров | ||
|- | |- | ||
Строка 409: | Строка 291: | ||
|- | |- | ||
| af || Показатель степени «мерцающего» шума || (безразмерн.) | | af || Показатель степени «мерцающего» шума || (безразмерн.) | ||
|} | |} | ||
=== МОП-транзисторы === | === МОП-транзисторы === | ||
{| | {{Блок/Инфо1|Общая форма|m[name] [drain] [gate] [source] [substrate] [model]}} | ||
| m[name] [drain] [gate] [source] [substrate] [model] | |||
{| | {{Блок/Инфо2|Пример|m1 2 3 0 0 mod1}} | ||
| m1 2 3 0 0 mod1 | |||
==== Модели МОП-транзисторов ==== | ==== Модели МОП-транзисторов ==== | ||
{| | {{Блок/Инфо1|Общая форма|<nowiki>.model [modelname] [nmos or pmos] [parmtr1=x] …</nowiki>}} | ||
| .model [modelname] [nmos or pmos] [parmtr1=x] … | |||
{| | {{Блок/Инфо2|Пример 1|.model mod1 pmos}} | ||
| .model | |||
{| | {{Блок/Инфо2|Пример 2|<nowiki>.model mod2 nmos level=2 phi=0.65 rd=1.5</nowiki>}} | ||
| .model | |||
{| | {{Блок/Инфо2|Пример 3|<nowiki>.model mod3 nmos vto=-1 (depletion)</nowiki>}} | ||
| .model | |||
{| | {{Блок/Инфо2|Пример 4|<nowiki>.model mod4 nmos vto=1 (enhancement)</nowiki>}} | ||
| .model | |||
{| | {{Блок/Инфо2|Пример 5|<nowiki>.model mod5 pmos vto=1 (depletion)</nowiki>}} | ||
| .model | |||
{{Блок/Инфо2|Пример 6|<nowiki>.model mod6 pmos vto=-1 (enhancement)</nowiki>}} | |||
Чтобы различать | {{Блок/Инфо3|Комментарий|Чтобы различать [[транзистор]]ы в режиме насыщения и в режиме обеднения, необходимо указать параметр модели «vto» (пороговое напряжение нулевого смещения). Его значение по умолчанию равно нулю, но положительное значение (например, +1 вольт) на [[транзистор]]е с каналом P или отрицательное значение (-1 вольт) на [[транзистор]]е с каналом N указывает, что [[транзистор]] является обеднённым. И наоборот, отрицательное значение для [[P-канального транзистора]] или положительное значение для [[N-канального транзистора]] будет указывать, что этот [[транзистор]] находится в режиме насыщения. Помните, что [[транзистор]]ы в режиме насыщения являются нормально разомкнутыми устройствами и должны включаться приложением напряжения [[затвор]]а. [[Транзистор]]ы в режиме обеднения обычно «замкнуты», но могут быть переведены в режим «отсечки», а также увеличены до более высоких уровней тока стока за счёт приложенного напряжения на [[затвор]]е. Параметр «vto» определяет пороговое напряжение затвора для проводимости [[полевого МОП-транзистора]].}} | ||
== Источники напряжения == | == Источники напряжения и тока == | ||
=== Источники синусоидального напряжения переменного тока (используется .ac для указания частоты) === | === Источники синусоидального напряжения переменного тока (используется .ac для указания частоты) === | ||
{| | {{Блок/Инфо1|Общая форма|v[name] [+node] [-node] ac [voltage] [phase] sin}} | ||
| v[name] [+node] [-node] ac [voltage] [phase] sin | |||
{| | {{Блок/Инфо2|Пример 1|v1 1 0 ac 12 sin}} | ||
| v1 1 0 ac 12 sin | |||
{| | {{Блок/Инфо2|Пример 2|v1 1 0 ac 12 240 sin (12 V ∠ 240o)}} | ||
| v1 1 0 ac 12 240 sin (12 V ∠ 240o) | |||
{{Блок/Инфо3|Комментарий|Этот метод определения источников переменного напряжения хорошо работает, если вы используете несколько источников с фазовыми углами, различающимися друг от друга, но все источники при этом имеют одинаковую частоту. Если вам нужно указать источники на разных частотах в одной цепи, нужно использовать следующий метод!}} | |||
Этот метод определения источников переменного напряжения хорошо работает, если вы используете несколько источников с фазовыми углами, различающимися друг от друга, но все источники при этом имеют одинаковую частоту. Если вам нужно указать источники на разных частотах в одной цепи, нужно использовать следующий метод! | |||
=== Источники синусоидального напряжения переменного тока (НЕ используется .ac для указания частоты) === | === Источники синусоидального напряжения переменного тока (НЕ используется .ac для указания частоты) === | ||
{| | {{Блок/Инфо1|Общая форма|v[name] [+node] [-node] sin([offset] [voltage] + [freq] [delay] [damping factor])}} | ||
| v[name] [+node] [-node] sin([offset] [voltage] + [freq] [delay] [damping factor]) | |||
{| | {{Блок/Инфо2|Пример|v1 1 0 sin(0 12 60 0 0)}} | ||
| v1 1 0 sin(0 12 60 0 0) | |||
{| class="wikitable" | {| class="wikitable" style="margin:0 auto" | ||
|+ Определения параметров | |+ Определения параметров | ||
|- | |- | ||
Строка 529: | Строка 351: | ||
|} | |} | ||
{{Блок/Инфо3|Комментарий|Этот метод определения источников переменного напряжения хорошо работает, если вы используете несколько источников на разных частотах. Однако представление фазового сдвига сложно, поскольку необходимо использовать коэффициент задержки.}} | |||
Этот метод определения источников переменного напряжения хорошо работает, если вы используете несколько источников на разных частотах. Однако представление фазового сдвига сложно, поскольку необходимо использовать коэффициент задержки. | |||
=== Источники напряжения постоянного тока (используется .dc для указания напряжения) === | === Источники напряжения постоянного тока (используется .dc для указания напряжения) === | ||
{| | {{Блок/Инфо1|Общая форма|v[name] [+node] [-node] dc}} | ||
| v[name] [+node] [-node] dc | |||
{{Блок/Инфо2|Пример|v1 1 0 dc}} | |||
Если вы хотите, чтобы выходные напряжения SPICE не относились к узлу 0, вы должны использовать опцию анализа .dc , а для использования этой опции вы должны таким образом указать хотя бы один из ваших источников постоянного тока. | {{Блок/Инфо3|Комментарий|Если вы хотите, чтобы выходные напряжения SPICE не относились к узлу 0, вы должны использовать опцию анализа .dc , а для использования этой опции вы должны таким образом указать хотя бы один из ваших источников постоянного тока.}} | ||
=== Источники напряжения постоянного тока (НЕ используется .dc для указания напряжения) === | === Источники напряжения постоянного тока (НЕ используется .dc для указания напряжения) === | ||
{| | {{Блок/Инфо1|Общая форма|v[name] [+node] [-node] dc [voltage]}} | ||
| v[name] [+node] [-node] dc [voltage] | |||
{| | {{Блок/Инфо2|Пример|v1 1 0 dc 12}} | ||
| v1 1 0 dc 12 | |||
{{Блок/Инфо3|Комментарий|Ничего примечательного!}} | |||
=== Источники импульсного напряжения === | === Источники импульсного напряжения === | ||
{| | {{Блок/Инфо1|Общая форма|v[name] [+node] [-node] pulse ([ i ] [p] [td] [tr] + [tf] [pw] [pd])}} | ||
| v[name] [+node] [-node] pulse ([ i ] [p] [td] [tr] + [tf] [pw] [pd]) | |||
{| class="wikitable" | {| class="wikitable" style="margin:0 auto" | ||
|+ Определения параметров | |+ Определения параметров | ||
|- | |- | ||
Строка 597: | Строка 395: | ||
Все временны́е параметры указаны в секундах. | Все временны́е параметры указаны в секундах. | ||
{| | {{Блок/Инфо2|Пример|v1 1 0 pulse (-3 3 0 0 0 10m 20m)}} | ||
| v1 1 0 pulse (-3 3 0 0 0 10m 20m) | |||
{{Блок/Инфо3|Комментарий|Данный пример представляет собой идеальную прямоугольную волну, колеблющуюся в диапазоне от -3 до +3 вольт, с нулевым временем нарастания и спада, периодом 20 миллисекунд и 50%-м рабочим циклом (+3 вольта в течение 10 мс, затем -3 вольта в течение 10 мс).}} | |||
Данный пример представляет собой идеальную прямоугольную волну, колеблющуюся в диапазоне от -3 до +3 вольт, с нулевым временем нарастания и спада, периодом 20 миллисекунд и 50%-м рабочим циклом (+3 вольта в течение 10 мс, затем -3 вольта в течение 10 мс). | |||
=== Источники синусоидального переменного тока (используется .ac для указания частоты) === | === Источники синусоидального переменного тока (используется .ac для указания частоты) === | ||
{| | {{Блок/Инфо1|Общая форма|i[name] [+node] [-node] ac [current] [phase] sin}} | ||
| i[name] [+node] [-node] ac [current] [phase] sin | |||
{| | {{Блок/Инфо2|Пример 1|i1 1 0 ac 3 sin (3 amps)}} | ||
| i1 1 0 ac 3 sin (3 amps) | |||
{{Блок/Инфо2|Пример 2|i1 1 0 ac 1m 240 sin (1 mA ∠ 240o)}} | |||
Здесь (и в следующем примере) справедливы те же комментарии, что и для источников переменного напряжения. | {{Блок/Инфо3|Комментарий|Здесь (и в следующем примере) справедливы те же комментарии, что и для источников переменного напряжения.}} | ||
=== Источники синусоидального переменного тока (НЕ используется .ac для указания частоты) === | === Источники синусоидального переменного тока (НЕ используется .ac для указания частоты) === | ||
{| | {{Блок/Инфо1|Общая форма|i[name] [+node] [-node] sin([offset] + [current] [freq] 0 0)}} | ||
|+ | |||
| | {{Блок/Инфо2|Пример|i1 1 0 sin(0 1.5 60 0 0)}} | ||
| i1 1 0 sin(0 1.5 60 0 0) | |||
=== Источники постоянного тока (используется .dc для указания силы тока) === | === Источники постоянного тока (используется .dc для указания силы тока) === | ||
{| | {{Блок/Инфо1|Общая форма|i[name] [+node] [-node] dc}} | ||
| i[name] [+node] [-node] dc | |||
{| | {{Блок/Инфо2|Пример|i1 1 0 dc}} | ||
| i1 1 0 dc | |||
=== Источники постоянного тока (НЕ используется .dc для указания силы тока) === | === Источники постоянного тока (НЕ используется .dc для указания силы тока) === | ||
{| | {{Блок/Инфо1|Общая форма|i[name] [+node] [-node] dc [current]}} | ||
| i[name] [+node] [-node] dc [current] | |||
{| | {{Блок/Инфо2|Пример|i1 1 0 dc 12}} | ||
| i1 1 0 dc 12 | |||
{{Блок/Инфо3|Комментарий|Несмотря на то, что во всех книгах говорится, что первый узел, указанный для источника постоянного тока, является положительным узлом, методом проб и ошибок я обнаружил, что это не так. На самом деле источник постоянного тока в [[SPICE]] задаёт ток в том же направлении, что и источник напряжения (батарея) с его отрицательным зарядом – узлом, указанным самым первым. }} | |||
Несмотря на то, что во всех книгах говорится, что первый узел, указанный для источника постоянного тока, является положительным узлом, методом проб и ошибок я обнаружил, что это не так. На самом деле источник постоянного тока в SPICE задаёт ток в том же направлении, что и источник напряжения (батарея) с его отрицательным зарядом – узлом, указанным самым первым. | |||
=== Источники импульсного тока === | === Источники импульсного тока === | ||
{| | {{Блок/Инфо1|Общая форма|i[name] [+node] [-node] pulse ([i] [p] [td] [tr] + [tf] [pw] [pd])}} | ||
| i[name] [+node] [-node] pulse ([i] [p] [td] [tr] + [tf] [pw] [pd]) | |||
{| class="wikitable" | {| class="wikitable" style="margin:0 auto" | ||
|+ Определения параметров | |+ Определения параметров | ||
|- | |- | ||
Строка 706: | Строка 455: | ||
Все временны́е параметры указаны в секундах. | Все временны́е параметры указаны в секундах. | ||
{| | {{Блок/Инфо2|Пример|i1 1 0 pulse (-3m 3m 0 0 0 17m 34m)}} | ||
| i1 1 0 pulse (-3m 3m 0 0 0 17m 34m) | |||
Данный пример представляет собой идеальную прямоугольную волну, колеблющуюся в диапазоне от -3 мА до +3 мА, с нулевым временем нарастания и спада, периодом 34 миллисекунды и 50%-м рабочим циклом (+3 мА в течение 17 мс, затем -3 мА в течение 17 мс). | {{Блок/Инфо3|Комментарий|Данный пример представляет собой идеальную прямоугольную волну, колеблющуюся в диапазоне от -3 мА до +3 мА, с нулевым временем нарастания и спада, периодом 34 миллисекунды и 50%-м рабочим циклом (+3 мА в течение 17 мс, затем -3 мА в течение 17 мс).}} | ||
=== Зависимые источники напряжения === | === Зависимые источники напряжения === | ||
{| | {{Блок/Инфо1|Общая форма|e[name] [out+node] [out-node] [in+node] [in-node] + [gain]}} | ||
| e[name] [out+node] [out-node] [in+node] [in-node] + [gain] | |||
{| | {{Блок/Инфо2|Пример|e1 2 0 1 2 999k}} | ||
| e1 2 0 1 2 999k | |||
{{Блок/Инфо3|Комментарий|Зависимые источники напряжения отлично подходят для имитации [[операционных усилителей]]. В приведённом примере показано, как такой источник может быть сконфигурирован для использования в качестве повторителя напряжения, инвертирующий вход соединён с выходом (узел 2) для отрицательной обратной связи, а неинвертирующий вход поступает на узел 1. Коэффициент усиления установлен на произвольно высокое значение (999 тысяч). Одно предостережение: [[SPICE]] не распознаёт вход зависимого источника как нагрузку, поэтому [[источник напряжения]], подключённый только к входу независимого источника напряжения, будет интерпретироваться как «разомкнутый». Подробнее об этом см. в примерах схем [[операционных усилителей]].}} | |||
=См.также= | |||
=Внешние ссылки= | =Внешние ссылки= | ||
Строка 742: | Строка 475: | ||
<references /> | <references /> | ||
{{Навигационная таблица/Электроника}} | {{Навигационная таблица/Портал/Электроника}} | ||
[[Категория:SPICE]] | [[Категория:SPICE]] |
Текущая версия от 21:49, 22 мая 2023
Компоненты электрических схем[1]
Всегда держите в уме, что данное руководство никоим образом не претендует на всеобъемлемость, и что все описания элементов на языке SPICE приведены здесь в сжатой форме. SPICE – весьма мощная программа с множеством настроек, и я задокументировал лишь некоторую часть. Все компоненты в исходном файле SPICE в первую очередь идентифицируются по первой букве в каждой соответствующей строке. Символы, следующие за идентификационной буквой, используются для того, чтобы отличить один компонент определённого типа от другого компонента того же типа (например, r1, r2, r3, rload, rpullup, при этом с учётом как букв, идентифицирующих компонент, так и остальной части отличительного имени – всего используется до восьми символов). Предположим, что вы моделируете цифровую схему с «повышающими» и «понижающими» резисторами. Имя rpullup допустимо, поскольку состоит из семи символов. Однако имя rpulldown состоит из девяти символов. Это может вызвать проблемы, когда SPICE интерпретирует список связей. На самом деле, можно использовать имена компонентов, содержащих более восьми символов, если в исходном файле нет других компонентов с похожими именами. SPICE обращает внимание только на первые восемь символов первого поля в каждой строке, поэтому «rpulldown» фактически интерпретируется как «rpulldow», а «n» в конце игнорируется. А значит, любой другой резистор, имеющий такие же первые восемь символов в имени, будет восприниматься SPICE как тот же резистор, определённый дважды, что вызовет ошибку (т.е. «rpulldown1» и «rpulldown2» будут интерпретироваться как одно и то же имя, «rpulldow»). Следует также отметить, что SPICE игнорирует регистр символов, поэтому r1 и R1 интерпретируются одинаково. SPICE позволяет использовать префиксы метрик при указании значений компонентов, что является очень удобной функцией. Однако соглашение о префиксах, используемое SPICE, несколько отличается от стандартных метрических символов, в первую очередь из-за того, что списки связей ограничены стандартными символами ASCII (отпадают греческие буквы, такие как µ, для префикса «микро») и что SPICE нечувствителен к регистру. Поэтому буквы «м» (стандартный символ для «милли-») и «М» (стандартный символ для «мега-») интерпретируются одинаково. Вот несколько примеров префиксов, используемых в списках связей SPICE:
SPICE | Расшифровка |
---|---|
r1 1 0 2t | Резистор R1, 2t = 2 тера-ом = 2 ТОм |
r2 1 0 4g | Резистор R2, 4g = 4 гигаом = 4 ГОм |
r3 1 0 47meg | Резистор R3, 47meg = 47 мегаом = 47 МОм |
r4 1 0 3.3k | Резистор R4, 3,3k = 3,3 килом = 3,3 кОм |
r5 1 0 55m | Резистор R5, 55m = 55 миллиом = 55 мОм |
r6 1 0 10u | Резистор R6, 10u = 10 микроом = 10 мкОм |
r7 1 0 30n | Резистор R7, 30n = 30 наноом = 30 нОм |
r8 1 0 5p | Резистор R8, 5p = 5 пикоом = 5 пОм |
r9 1 0 250f | Резистор R9, 250f = 250 фемтоом = 250 фОм |
Экспоненциальное обозначение также допускается при указании значений компонентов. Например:
SPICE | Расшифровка |
---|---|
r10 1 0 4.7e3 | Резистор R10, 4.7e3 = 4,7 × 103 ом = 4,7 килоом = 4,7 кОм |
r11 1 0 1e-12 | Резистор R11, 1e-12 = 1 × 10-12 ом = 1 пикоом = 1 пОм |
Единица измерения (омы, вольты, фарады, генри и т. д.) автоматически определяется типом указанного компонента. SPICE «знает», что все приведённые выше примеры являются «омами», потому что все они являются резисторами (r1, r2, r3, …). Если бы это были конденсаторы, значения интерпретировались бы как «фарады», если катушки индуктивности, то «генри» и т.д.
Пассивные компоненты
Конденсаторы
Катушки индуктивности
Индукторные муфты (трансформаторы)
Резисторы
Активные компоненты
Все полупроводниковые компоненты должны иметь свои электрические характеристики, описанные в строке, начинающейся со слова «.model», которая сообщает SPICE, как именно будет вести себя устройство. Любые параметры, не определённые явно в .model, по умолчанию будут иметь значения, предварительно запрограммированные в SPICE. Однако .model должна быть включена и по крайней мере указывать название модели и тип устройства (d, npn, pnp, njf, pjf, nmos или pmos).
Диоды
Модели диодов
Параметры для диодов
Параметр | Значение | Единица измерения |
---|---|---|
is | Ток насыщения | Ампер |
rs | Сопротивление перехода | Ом |
n | Коэффициент излучения | (безразмерн.) |
tt | Время прохождения | секунда |
cjo | Ёмкость перехода при нулевом смещении | Фарад |
vj | Потенциал перехода | Вольт |
m | Коэффициент градации | (безразмерн.) |
eg | Энергия активации | электрон-вольт |
xti | Температурный показатель тока насыщения | (безразмерн.) |
kf | Коэффициент фликер-шума | (безразмерн.) |
af | Показатель фликер-шума | (безразмерн.) |
fc | Коэффициент ёмкости истощения при прямом смещении | (безразмерн.) |
bv | Обратное напряжение пробоя | Вольт |
ibv | Ток при напряжении пробоя | Ампер |
Транзисторы с биполярным переходом (ТБП)
Модели транзисторов с биполярным переходом
Примеры моделей, показанные выше, очень неспецифичны. Для точного моделирования реальных транзисторов необходимо больше параметров. Возьмём эти два примера, для популярных транзисторов 2N2222 и 2N2907. Символы «+» представляют собой метки продолжения строки в SPICE, когда вы хотите разбить одну строку на две или более отдельных строк в текстовом редакторе:
Параметр | Значение | Единица измерения |
---|---|---|
is | Транспортный ток насыщения | Ампер |
bf | Идеальный максимум прямой бета | (безразмерн.) |
rs | Сопротивление перехода | Ом |
nf | Коэффициент эмиссии прямого тока | (безразмерн.) |
n | Коэффициент излучения | (безразмерн.) |
vaf | Прямое раннее напряжение | Вольт |
tt | Время прохождения | секунда |
isc | Ток насыщения утечки «база/коллектор» | Ампер |
nc | Коэффициент эмиссии утечки «база/коллектор» | (безразмерн.) |
rb | Сопротивление базы при нулевом смещении | Ом |
irb | Ток для среднего значения сопротивления базы | Ампер |
rbm | Минимальное сопротивление базы при больших токах | Ом |
vtf | Зависимость напряжения «база/коллектор» от времени прохождения | Вольт |
itf | Сильноточный параметр, влияющий на время прохождения | Ампер |
ikf | Угол для прямого сильноточного спада бета-бета | Ампер |
ise | «База/эмиттер» ток насыщения утечки | Ампер |
ne | Коэффициент эмиссии утечки «база/эмиттер» | (безразмерн.) |
br | Идеальный максимум обратный бета | (безразмерн.) |
nr | Коэффициент эмиссии обратного тока | (безразмерн.) |
bar | Обратное раннее напряжение | Вольт |
ikr | Угол для обратного бета сильноточного спада | Ампер |
rc | Сопротивление коллектора | Ом |
cje | Ёмкость обеднения «база/эмиттер» при нулевом смещении | Фарад |
vje | Встроенный потенциал «база/эмиттер» | Вольт |
mje | Экспоненциальный коэффициент перехода «база/эмиттер» | (безразмерн.) |
tf | Идеальное время прямого прохождения | секунда |
xtf | Коэффициент зависимости смещения транзитного времени | (безразмерн.) |
ptf | Избыточная фаза при f = 1/(время прохождения)(2)(pi) | Герц * градус |
cjc | «База/коллектор» ёмкость истощения при нулевом смещении | Фарад |
vjc | Встроенный потенциал «база/коллектор» | Вольт |
mjc | Экспоненциальный коэффициент перехода «база/коллектор» | (безразмерн.) |
xjcj | Доля ёмкости обеднённой ёмкости «база/коллектор», подключённой к базовому узлу |
(безразмерн.) |
tr | Идеальное время обратного прохождения | секунда |
cjs | Ноль-ёмкость «коллектор/подложка» смещения | Фарад |
vjs | Встроенный потенциал перехода подложки | Вольт |
mjs | Экспоненциальный коэффициент перехода подложки | (безразмерн.) |
xtb | Экспонента температуры прямого/обратного бета-излучения | |
eg | Энергетическая щель для влияния температуры на транспортный ток насыщения |
электрон-вольт |
xti | Температурный показатель для влияния на транспортный ток насыщения | (безразмерн.) |
kf | Коэффициент шума мерцания | (безразмерн.) |
af | Экспонента мерцающего шума | (безразмерн.) |
fc | Коэффициент формулы обеднённой ёмкости при прямом смещении |
(безразмерн.) |
JFET, переходной полевой транзистор
Модели JFET-транзисторов
Параметр | Значение | Единица измерения |
---|---|---|
vto | Пороговое напряжение | Вольт |
beta | Параметр крутизны | Ампер/Вольт2 |
lambda | Параметр модуляции длины канала | 1/Вольт |
rd | Сопротивление стока | Ом |
rs | Сопротивление истока | Ом |
cgs | Ёмкость перехода «затвор/исток» при нулевом смещении | Фарад |
cgd | Ёмкость перехода «затвор/сток» при нулевом смещении | Фарад |
pb | Потенциал затворного перехода | Вольт |
is | Ток насыщения затворного перехода | Ампер |
kf | Коэффициент «мерцающего» шума | (безразмерн.) |
af | Показатель степени «мерцающего» шума | (безразмерн.) |
МОП-транзисторы
Модели МОП-транзисторов
Источники напряжения и тока
Источники синусоидального напряжения переменного тока (используется .ac для указания частоты)
Источники синусоидального напряжения переменного тока (НЕ используется .ac для указания частоты)
Параметр | Значение | Единица измерения |
---|---|---|
offset | Напряжение постоянного тока, смещающее сигнал переменного тока на указанное напряжение | Вольт |
voltage | Пиковое напряжение сигнала переменного тока | Вольт |
freq | Частота | Герц |
delay | Временна́я задержка или сдвиг фазы сигнала | секунда |
Dumping factor |
Коэффициент затухания – число, используемое для создания сигналов с затухающей амплитудой |
(безразмерн.) |
Источники напряжения постоянного тока (используется .dc для указания напряжения)
Источники напряжения постоянного тока (НЕ используется .dc для указания напряжения)
Источники импульсного напряжения
Параметр | Значение |
---|---|
i | Начальное значение |
p | Значение импульса |
td | Время задержки |
tr | Время нарастания |
tf | Время спада |
pw | Ширина импульса |
pd | Период |
Все временны́е параметры указаны в секундах.
Источники синусоидального переменного тока (используется .ac для указания частоты)
Источники синусоидального переменного тока (НЕ используется .ac для указания частоты)
Источники постоянного тока (используется .dc для указания силы тока)
Источники постоянного тока (НЕ используется .dc для указания силы тока)
Источники импульсного тока
Параметр | Значение |
---|---|
i | Начальное значение |
p | Значение импульса |
td | Время задержки |
tr | Время нарастания |
tf | Время спада |
pw | Ширина импульса |
pd | Период |
Все временны́е параметры указаны в секундах.
Зависимые источники напряжения
См.также
Внешние ссылки