R4 1 4100k
R5 1 6 1k
R6 7 0 750
С1 230.01UF
C2460.01UF
Q1 245КТ312А
Q2637KT312A
VP 1 О DC 10V
.LIB QRUS.LIB
PROBE
.END
В результате расчета в выходном файле с расширением *.OUT создается таблица узловых потенциалов
V(1)=10,0000 В,
V(2)=6,3538 В,
V(3)=3,4889 В,
V(4)=3,4889 В,
V(5)=2,7835 В,
V(6)=6,3538 В,
V(7)=2,7835 В.
Если после расчета режима по постоянному току непосредственно перейти к расчету переходных процессов, то мультивибратор, находящийся в одном из состояний равновесия, не возбудится. Предложим два способа возбуждения математической модели мультивибратора.
1. Перед началом переходного процесса с помощью директивы .IC задаются начальные значения узловых потенциалов и (или) с помощью параметра IС=... задаются начальные значения напряжений на конденсаторах, отличные от значений в состоянии равновесия.
.IC V(3)=3.46v
и указать директиву расчета переходных процессов .IRAN 100us 1.2ms
Заметим, что если с помощью директивы .IC и параметров IC в описаниях конденсаторов и индуктивностей полностью описан режим схемы по постоянному току, то перед расчетом переходного процесса этот режим рассчитывать не нужно — этот расчет отменяется с помощью параметра SKIPBP в директиве .TRAN:
TRAN 100us 1.2ms SKIPBP
Кроме того, для получения текущей информации о поведении мультивибратора полезно указать директиву
.WATCH TRAN V(2) V(3) V(6)
Если автоколебания не возникли, то все узловые потенциалы будут сохранять постоянное значение, что будет видно на экране программы PSpice и позволит прервать моделирование.
2. Имитируется включение напряжения питания, задавая источник напряжения в виде импульсной функции с линейным передним фронтом и длительностью, равной конечному времени анализа (тогда ее можно явно не указывать)
VP 1 0 PULSE (Ov, 10v, 50us)
Кроме того, для обеспечения самовозбуждения мультивибратора необходимо нарушить симметрию схемы, изменив, например, одно из сопротивлений на 1 %:
R1 1 21.01k
Спектральный анализ проводится по директиве
.FOUR <частота первой гармоники f1> [количество гармоник] + <выходная переменная>*
Спектральный анализ производится с помощью быстрого преобразования Фурье (БПФ) после завершения расчета переходного процесса (в задании на моделирование должна иметься и директива .TRAN). Имена переменных, спектр которых должен быть рассчитан, указываются в списке <выходная переменная>. В директиве .FOUR задается частота первой гармоники f 1 и количество гармоник. Максимальное количество гармоник п = 100. По умолчанию рассчитываются первые 9 гармоник. В программе рассчитываются амплитуды постоянной составляющей А 0 и остальных п гармоник А 1 , A 2 „ ..., A п . Спектральному анализу подвергается участок реализации переходного процесса длительностью Т = 1/f 1 в конце интервала анализа (чтобы завершились переходные процессы). Результаты спектрального анализа выводятся в выходной файл *.OUT в виде таблиц без указания директив .PRINT, .PLOT или .PROBE (в программе Probe они недоступны). Кроме того, рассчитывается коэффициент нелинейных искажений (в процентах) по формуле
Для повышения точности расчета спектров рекомендуется с помощью параметра < максимальный шаг> задать максимальное значение шага интегрирования, равное требуемой величине шага дискретизации по времени.
Приведем пример:
.FOUR 10KHZ 15 V(5) V(6,7) I(VSENS3)
Спецификация выходных переменных составляется по тем же правилам, что в директивах .PRINT или .PLOT. Заметим, что спектральный анализ производится также при обработке данных в графическом постпроцессоре Probe (см. разд. 5.1). Различие состоит в том, что при этом спектральному анализу подвергается целиком весь график, изображенный на экране дисплея, или его часть, размер которой указывается пользователем. При расчете спектров сигналов максимальное количество отсчетов равно 8192 = 2 13 .
При работе с управляющей оболочкой PSpice Schematics определение параметров расчета переходных процессов задается в диалоговом окн, открывающемся после нажатия на кнопку Transient в меню выбора директив моделирования.
В разделе Transient Analysis необходимо задать по крайней мере два параметра:
Остальные параметры No-Print Delay (начальный момент вывода данных) и Step Ceiling (максимальный шаг) являются необязательными.
На панели Detailed Bias Pt. отмечается необходимость вывода полной информации о режиме по постоянному току, на панели Skip initial transient solution — отмена расчета режима по постоянному току перед моделированием переходных процессов.
Спектральный анализ выполняется выбором панели Enable Fourier.
Замечание.
Спектральный анализ, основанный на дискретном преобразовании Фурье результатов численного интегрирования дифференциальных уравнений, обладает невысокой точностью. Поэтому область применения PSpice — анализ спектров сигналов при большом уровне нелинейных искажений. Большей точностью обладают программы, использующие метод гармонического баланса, такие как Microwave Office фирмы Applied Wave Research.
14. Задание начальных условий. Начальные значения узловых потенциалов по постоянному току задаются по директиве
.IC V(<HOMep узла>[,<номер узла>}) = Оначение ЭДС>*
Приведем пример
.IC V(5)=1.24V(IN)=0
К'указанным узлам подключаются источники постоянного напряжения с внутренним сопротивлением 0,0002 Ом, и рассчитывается режим по постоянному току. После завершения расчета эти источники отключаются — так задаются начальные значения узловых потенциалов перед расчетом переходных процессов.
Если в задании имеются и директива .NODESET, и директива .IC, то первая не будет выполняться при расчете режима по постоянному току перед началом анализа переходных процессов.
Задание начального приближения узловых потенциалов по постоянному току производится по директиве
.NODESET <V(<узел>[,<узел>])=<значение ЭДС>>*
Приведем пример
.NODESET V(9)=5.6 V(8,2)=4.95
Эта директива назначает начальное значение указанных потенциалов на нулевой итерации при расчете режима по постоянному току как в режиме DC, так и при расчете переходных процессов (в режиме DC Sweep она выполняется только на первом шаге варьирования источников напряжения). Если заданные значения узловых потенциалов близки к точному решению, то процесс итерационного расчета режима по постоянному току завершается за меньшее количество итераций. Эта директива полезна при расчете очень больших схем по частям и расчете схем с несколькими устойчивыми состояниями.
15. Управление выдачей результатов. Результаты расчетов в виде таблиц выводятся в выходной файл с расширением *.OUT по директиве
.PRINT[/DGTLCHG] [DC] [IRAN] [AC] [NOISE] <выходная переменная>*
В одной директиве .PRINT можно выбрать только один вид анализа и привести список не более восьми выходных переменных. Одновременно в задании на моделирование можно поместить несколько таких директив. В таблицах каждая колонка соответствует одной переменной. В первой колонке помещается независимая переменная: постоянное напряжение (режим DC), время (режим TRAN) или частота (режим АС). Количество значащих цифр данных и максимальное количество строк в таблице определяются опциями NUMDGT и LIMPTS директивы .OPTIONS. Формат выходных переменных описан ниже. Приведем примеры:
PRINT DC V(3) V(2,3) I(VIN)
PRINT AC VM(2) VP(2) VDB(5) IR(6)
PRINT TRAN V(1) V(R1) V([RESET])
В последнем примере нецифровое имя узла RESET, начинающееся с буквы, заключено в квадратные скобки, чтобы отличить его от имени компонента.
Логические состояния цифровых компонентов выводятся на внешние устройства после окончания моделирования обычным образом. В общем случае спецификация <выходная переменная> цифровых узлов имеет вид:
D(<имя узла>)
Однако при наличии параметра /DGTLCHG префикс D можно опустить. Поэтому следующие две директивы вывода на печать логических состояний цифровых узлов SET и Q1 эквивалентны
PRINT IRAN D(SET) D(Q1)
PRINT/DGTLCHG IRAN SET Q1
Различие этих директив заключается в том, что по директиве .PRINT на печать выводятся состояния как цифровых, так и аналоговых узлов, а по директиве .PRINT/DGTLCHG — только цифровых.
Результаты в виде графиков выводятся в выходной файл по директиве
.PLOT [DC] [AC] [NOISE] [TRAN] <выходная переменная>* + [(<нижняя граница>,<верхняя граница>)]*
Смысл параметров такой же, что и в директиве .PRINT. Графики выводятся с помощью буквенно-цифровых символов независимо от типа печатающего устройства, в частности, на АЦПУ старых ЭВМ, для которых была создана программа SPICE. Однако директивой .PLOT пользоваться на современных ПК не имеет смысла. На одном графике помещается до восьми кривых, причем количество директив .PLOT в одном задании не ограничено. Диапазон по оси X указан в директиве, устанавливающей вид анализа, а диапазон по оси Y определяется с помощью параметров <нижняя граница>, <верхняя граница> или автоматически. Приведем примеры:
PLOT DC V(3) V(2,3) V(R1) I(VIN)
PLOT AC VM(2) VP(2) VM(3,4) VG(5)
PLOT NOISE INOISE ONOISE .
PLOT TRAN V(3) V(2,3) (0,5V) ID(M2) (-50mA, 50mA)
Графический постпроцессор Probe подключается директивой .PROBE[/CSDF] [<выходная переменная>*]
Если список выходных переменных не указан, то в файл результатов с расширением имени .DAT заносятся потенциалы всех узлов цепи и токи всех компонентов, разрешенных для помещения в список выходных переменных (см. ниже). Обратим внимание на то, что при этом файл результатов может иметь огромные размеры и не поместиться в ОЗУ. Указание конкретного списка выходных переменных, передаваемых в программу Probe через файл с расширением .DAT, сокращает размер этого файла. Приведем примеры:
PROBE
.PROBE V(3) V(2,3) VM(2) VP(2)
Обратим внимание, что в файл данных *.DAT всегда помещаются уровни внутреннего шума INOISE, ONOISE и данные о кривых гистерезиса магнитных сердечников В(Н), поэтому при наличии списка выходных переменных их в него включать не надо.
По директиве .PROBE/CSDF создается файл результатов в текстовом виде с расширением имени *.ТХТ, который можно использовать для обмена данными с
ЭВМ других типов и для сопряжения с программами дополнительной обработки результатов.
Если в управляющей оболочке PSpice Schematics в меню Analysis>Probe Setup активизирована опция Automatically Run Probe After Simulation, то результаты расчетов автоматически передаются в программу Probe после завершения работы PSpice. При выборе опции Monitor Waveforms вывод графиков на экран программы Probe начинается одновременно с началом моделирования
Запись в файл результатов моделирования цифровых устройств производится по директиве
.VECTOR <количество узлов> <номер узла>*
+ [POS=< позиция столбца в таблице>
+ [FILЕ=<1шя файла>] [RADIX=" Binary" | "Hex" | "Octal"
бита>}] [SIGNАМЕS=<шиена сигналов>]
В файл заносятся значения моментов времени и логические уровни сигналов в перечисленных узлах. Формат файла такой же, какой применяется при создании файла цифрового генератора FSTIM. Приведем примеры:
.VECTOR 1 CLOCK SIGNAMES=SYSCLK
.VECTOR 4 DAT A3 DATA2 DATA1 DAT А0
.VECTOR 1 ADDR3 POS=2 RADIX=H BIT=4
.VECTOR 1 ADDR2 POS=2 RADIX=H BIT=3
.VECTOR 1 ADDR1 POS=2 RADIX=H BIT=2
.VECTOR 1 ADDRO POS=2 RADIX=H BIT=1
По умолчанию создается файл, имеющий имя текущей схемы с расширением *.VEC.
Выдача текущих результатов анализа производится по директиве
.WATCH [DC] [AC] [TRAM] [<выходная переменная> + [<нижний предел>,<верхний предел>] ]*
В процессе работы программы PSpice в нижней части экрана в текстовой форме выводятся значения до 3-х выходных переменных типа V или I (арифметические выражения недопустимы). Каждая переменная может иметь свои пределы. Если ее текущее значение выходит за эти пределы — раздается звуковой сигнал, после чего пользователь может прекратить расчеты или не обращать на это внимание. В последнем случае программа больше не будет проверять нахождение переменных в указанных пределах. Для каждого вида анализа DC, AC, TRAN записывается отдельная директива .WATCH. При этом недоступен вывод группового времени запаздывания (в режиме АС) и состояний цифровых узлов.
Длина строки выходного файла устанавливается директивой
.WIDTH OUT = <значение>
Параметр <значение> устанавливает количество колонок в выходном файле: 80 (по умолчанию) или 132.
Выходные переменные. Опишем, как составляются имена выходных переменных, используемых в директивах .PRINT, .PLOT и .PROBE. В разных видах анализа имена несколько различаются.
1. Режимы DC и TRAN. При расчете режима по постоянному току и переходных процессов используются выходные переменные, приведенные в табл. 4.9.