Роберт Хайнеманн - Визуальное моделирование электронных схем в PSPICE
Рис. 9.32. Схема активного полосового фильтра с двумя операционными усилителями uA741
Шаг 19 Создайте на экране PROBE диаграмму частотной характеристики, изображенную на рис. 9.33, с помощью обычного анализа AC Sweep.
Рис. 9.33. Частотная характеристика активного полосового фильтра
Эта частотная характеристика имеет такие крутые фронты, что знаток наверняка задастся вопросом, сохранит ли эта схема свои качества даже при небольших разбросах параметров компонентов.
Шаг 20 Задайте всем резисторам 1% допуска. Для этого действуйте следующим образом:
1. Маркируйте все резисторы, поочередно щелкая по ним и удерживая при этом клавишу Shift.
2. Выберите в меню Edit опцию Attributes….
3. В окне, которое затем откроется (рис. 9.34), вы должны подтвердить свое намерение одновременно изменить атрибуты всех маркированных компонентов (глобально).
Рис. 9.34. Окно, где следует подтвердить намерение глобально редактировать атрибуты
4. Откроется окно Global Edit Attributes (рис. 9.35).
Рис. 9.35. Окно Global Edit Attributes для одновременного редактирования нескольких атрибутов
5. Какие атрибуты являются общими для маркированных компонентов (ведь это непременное условие для того, чтобы вы смогли изменить их все вместе), вы узнаете, щелкнув по кнопке Browse… и открыв окно Select Attribute (рис 9.36).
Рис. 9.36. Окно Select Attribute с указанием доступных для одновременного изменения атрибутов
6. Отметьте строку TOLERANCE= (Допуск) и подтвердите свой выбор щелчком по кнопке OK. После этого вновь откроется окно Global Edit Attributes.
7. Введите в поле Value требуемое значение допуска, в данном случае 1% (рис. 9.37), и подтвердите ввод, щелкнув по кнопке OK. Теперь на чертеже появился индикатор только что установленного вами допуска.
Рис. 9.37. Окно Global Edit Attributes с установленными для всех резисторов допусками в размере 1%
Шаг 21 Аналогичным образом задайте для всех конденсаторов допуск 2%.
Шаг 22 Откройте окно Analysis Setup, установите флажок рядом с кнопкой Monte Carlo/Worst Case… (Анализ Монте-Карло/Наихудшего случая) и щелкните по ней. Откроется окно Monte Carlo or Worst Case с установками для проведения анализа Монте-Карло (рис. 9.38).
Рис. 9.38. Окно Monte Carlo or Worst Case
Шаг 23 Проведите в этом окне предварительную установку, как показано на рис. 9.38. В ходе моделирования будет проведено десять прогонов анализа Монте-Карло (опция МС Run) на основе анализа AC Sweep (опция Analysis Туре). Все настройки в разделе Function оставьте без изменения. Они имеют значение только для выходного файла и в данный момент не представляют для вас интереса. В поле Output Var вы должны ввести, какую величину следует понимать как выход. Это также нужно только для выходного файла, тем не менее, если в поле не будет указано никакого значения, PSPICE откажется проводить анализ Монте-Карло. Выберите в списке MC Options (Опции анализа Монте-Карло) опцию All, чтобы вам были предоставлены данные всех десяти прогонов как в PROBE, так и в выходном файле.
По окончании предварительной установки убедитесь, что все сделано так, как нужно, и подтвердите выполненные настройки щелчком по кнопке OK. Проверьте еще раз, активизированы ли в окне Analysis Setup режимы анализов АС Sweep и Монте-Карло, и затем запустите процесс моделирования.
После того как PSPICE завершит вычисления, откроется окно Available Sections, в котором можно выбирать для отображения на экране PROBE результаты интересующих вас прогонов анализа Монте-Карло. В данном случае вам требуются все имеющиеся данные, поэтому просто щелкните по кнопке OK.
Шаг 24 А теперь выведите на экран диаграмму частотной характеристики выходного напряжения полосового фильтра для всех десяти прогонов анализа Монте-Карло (рис. 9.39).
Рис. 9.39. Поведение схемы BP_AKT.sch в ходе анализа Монте-Карло
Результат не то чтобы грандиозный, но, кажется, фильтр все же рабочий. Конечно, 1% и 2% очень низкие для допусков значения, и дальнейшее уменьшение возможно, только если точно подгонять резисторы и «вручную» выбирать конденсаторы.
Наряду с анализом Монте-Карло в программе PROBE можно выполнить стохастический эквивалент анализа производительности: на экране будет показано статистическое распределение величин, которые извлекаются из каждого отдельного прогона анализа Монте-Карло с помощью целевых функций. В качестве примера изобразим в виде гистограммы статистическое распределение ширины полосы на уровне 3-dB десяти полученных выше кривых.
Шаг 25 Чтобы создать гистограмму статистического распределения ширин полос частот на уровне 3-dB, действуйте следующим образом:
1. Удалите с экрана PROBE все диаграммы.
2. Активизируйте опцию Performance Analysis, щелкнув на панели инструментов PROBE по кнопке .
3. Откройте окно Add Traces, отправьте в строку Trace Expression функцию Bandwith(1, db_level) и в скобках введите Bandwith (V(R7:1.3). Щелкните по кнопке OK, и на вашем экране будет создана гистограмма, структура которой аналогична изображенной на рис. 9.40 (с вашими статистическими данными диаграмма будет выглядеть иначе).
Рис. 9.40. Гистограмма статистического распределения полос частот на уровне 3-dB
Разумеется, нельзя ожидать подробной статистики после всего десяти прогонов анализа Монте-Карло, однако вам не возбраняется увеличить их количество до 399, чтобы создать более совершенную гистограмму. Чем больше прогонов вы потребуете сделать в ходе анализа Монте-Карло, тем тоньше будут столбцы и тем больше их будет отображено. Число столбцов вы можете установить, выбрав в меню PROBE Options строку Number of Histogram Divisions (Количество столбцов гистограммы).
Теперь вкратце рассмотрим опции окна Monte Carlo or Worst Case (см. рис. 9.38), которыми вы еще не пользовались:
• YMAX — определяет максимальную разницу между «номинальным прогоном» и отдельными прогонами (MC Runs). Результаты можно получить только в выходном файле;
• MAX — определяет максимальное значение (относительный максимум) отдельных прогонов MC Runs, а также отклонение отдельных максимальных значений от максимального значения «номинального прогона». Результаты можно получить только в выходном файле;
• MIN — функция, аналогичная опции MIN. Результаты можно получить только в выходном файле;
• RISE — определяет первое превышение границы (при нарастании фронта), заданной в поле ввода Rise/Fall (Нарастание/Спад). Результаты можно получить только в выходном файле;
• FALL — действует аналогично RISE, но только при спаде фронта. Результаты можно получить только в выходном файле;
• LIST — записывает параметры всех прогонов MC Runs в выходной файл;
• SEED — стартовая позиция (начальное число) генератора случайных чисел. 1≤SEED≤32767. Если вы ничего не вводите в поле SEED (Начальное число), то по умолчанию устанавливается начальное число 1753. Одинаковые значения в этом поле при одинаковых анализах всегда дают одинаковые «случайные» числа. Поэтому, если вы хотите использовать новый набор значений параметров, предварительно измените значение в поле SEED;
• ALL — выявляет все данные;
• FIRST — предоставляет только результаты первых прогонов MC Runs и ровно стольких, сколько вы запросили в поле Value;
• EVERY — предоставляет результаты каждого N-прогона MC Run. При этом N соответствует значению, которое вы ввели в поле Value;
• RUN — предоставляет результаты только указанных в поле Value прогонов анализа Монте-Карло;
• RANGE: (Lo/Hi) — диапазон изменяемой переменной, внутри которого следует осуществлять поиск YMAX, MAX и MIN.
Напоследок приведем небольшой пример того, как можно изменять параметры компонентов, если они не доступны через меню атрибутов (как было показано выше на примере резисторов и конденсаторов).
Исследуем схему с общим эмиттером, изображенную на рис. 9.10, для того случая, когда усиление тока транзистора рассеивается на ±50%.
Сначала надо маркировать транзистор (чтобы он окрасился в красный цвет), затем открыть меню Edit и выбрать в нем строку Model…. Откроется окно Edit Model, где нужно щелкнуть по кнопке Edit Instance Model (Text)… (Редактировать модель образца…). Откроется редактор моделей с параметрами транзистора. Рядом с усилением тока Bf следует в качестве дополнения ввести допуск Dev=50% (рис. 9.41). Программа PSPICE автоматически присваивает этой модели новое имя (BC548B-X). Созданная модель действительна только в данной схеме (то есть локально). Она сохраняется в той же директории, что и чертеж и под тем же именем, но с расширением файла .lib. Новую модель можно присвоить и другим транзисторам той же схемы. Для этого нужно маркировать изменяемый компонент, затем открыть окно Edit Model и щелкнуть в нем по кнопке Change Model Reference… (Изменить ориентировочное название модели…). В открывшемся окне вы можете ввести новое имя модели. Такой способ позволяет, например, присвоить модель BC548B-X транзистору BC548B.