Линеаризуйте электронную схему

Этот пример показывает, как линеаризовать модель нелинейной схемы биполярного транзистора и создать Диаграмму Боде для анализа частотного диапазона маленького сигнала.

В зависимости от программного обеспечения вы имеете в наличии, используете соответствующие разделы этого примера, чтобы исследовать различную линеаризацию и аналитические методы.

Исследуйте модель

Чтобы открыть Нелинейную модель Биполярного транзистора в качестве примера, введите ssc_bipolar_nonlinear в Командном окне MATLAB®.

Модель представляет усилитель звука одно транзистора. Транзистор является биполярным элементом NPN, и как таковой имеет нелинейный набор характеристик текущего напряжения. Поэтому полное поведение усилителя зависит от рабочей точки транзистора. Сам транзистор представлен, и эквивалентная схема Эберс-Молл реализовала использование подсистемы маскированной. Схема имеет синусоидальный входной тестовый сигнал с амплитудой 10 мВ и частотой 1 кГц. Осциллограф Напряжения Загрузки отображает получившееся выходное напряжение коллектора после того, как DC будет отфильтрован выходным развязывающим конденсатором.

R1 и R2 устанавливают номинальную рабочую точку, и маленькое усиление сигнала приблизительно установлено отношением R3/R4. Развязывающие конденсаторы C1 и C2 имеют емкость 1uF, чтобы представить незначительный импеданс на уровне 1 кГц.

Модель сконфигурирована для линеаризации. Можно быстро сгенерировать и просмотреть частотную характеристику маленькую сигнала путем нажатия на гиперссылку Linearize circuit в образцовой аннотации. Чтобы просмотреть скрипт MATLAB, который генерирует частотную характеристику, кликните по следующей гиперссылке в той аннотации, see code. Эта документация обеспечивает справочную информацию и альтернативные способы линеаризации на основе программного обеспечения, которое вы имеете.

В целом, чтобы получить нетривиальную линеаризовавшую модель ввода - вывода и сгенерировать частотную характеристику, необходимо задать вводы и выводы образцового уровня. Модель Nonlinear Bipolar Transistor удовлетворяет это требование двумя способами, в зависимости от того, как вы линеаризуете:

  • Simulink® требует верхней части - или порты ввода и вывода образцового уровня для линеаризации с linmod. Модель Nonlinear Bipolar Transistor имеет такие порты, отметил u и y.

  • Программное обеспечение Simulink Control Design™ требует, чтобы вы задали сигнальные линии ввода и вывода с точками линеаризации. Заданные строки должны быть строками Сигнала Simulink, не строками физического соединения Simscape™. Модели Nonlinear Bipolar Transistor задали такие точки линеаризации. Для получения дополнительной информации об использовании программного обеспечения Simulink Control Design для обрезки и линеаризации, см. документацию для того продукта.

Откройте Блок Configuration Решателя и смотрите, что флажок Start simulation from steady state устанавливается. Затем откройте осциллограф Напряжения Загрузки и запустите симуляцию, чтобы видеть поведение принципиальной схемы. Транзисторные напряжения начальной буквы емкости перехода собираются быть сопоставимыми с условиями смещения, заданными резисторами. Вывод является устойчивой синусоидой с нулевым средним значением, его амплитуда, усиленная схемой смещения и транзистором.

Чтобы видеть, что схема ослабляется от неустойчивого начального состояния в Блоке Configuration Решателя, снимают флажок Start simulation from steady state и нажимают OK. С открытым осциллографом Напряжения Загрузки моделируйте снова. В этом случае выходное напряжение запускается в нуле, потому что транзисторные емкости перехода запускаются с нулевого заряда.

Можно получить более всестороннее понимание поведения схемы и как оно приближается к устойчивому состоянию долговременной переходной симуляцией. Увеличьте время симуляции до 1 с и повторно выполните симуляцию. Схема начинает со своего начального неустойчивого состояния и транзисторных подходов напряжения коллектора и в конечном счете приспосабливается к устойчивому синусоидальному колебанию.

Откройте Блок Configuration Решателя, установите флажок Start simulation from steady state (как это было, когда вы сначала открыли модель), и нажмите OK. Возвратите время симуляции к.01 с и повторно выполните симуляцию.

Линеаризуйте с установившимся решателем и функцией linmod

В этом примере, вас:

  1. Используйте Simscape установившийся решатель, чтобы найти рабочую точку

  2. Линеаризуйте модель с помощью функции linmod Simulink

  3. Сгенерируйте Диаграмму Боде с помощью серии команд MATLAB

Откройте Блок Configuration Решателя и убедитесь, что флажок Start simulation from steady state устанавливается. Когда вы моделируете модель с Simscape, установившийся решатель включил, схема инициализируется в состоянии, заданном транзисторными резисторами смещения. Это установившееся решение является рабочей точкой, подходящей для линеаризации.

Примечание

Также убедитесь, что флажок Use local solver снимается. Линеаризация модели с локальным включенным решателем не поддержана.

Чтобы линеаризовать модель, введите следующее в Окне Команды MATLAB:

[a,b,c,d]=linmod('ssc_bipolar_nonlinear');

Можно альтернативно вызвать функцию linmod с одним выходным аргументом, в этом случае она генерирует структуру с состояниями, входными параметрами, и выходными параметрами, а также моделью линейного независимого от времени (LTI).

Вектор состояния модели Nonlinear Bipolar Transistor содержит 17 компонентов. Полная модель имеет вход того и один вывод. Таким образом модель в пространстве состояний LTI, выведенная от линеаризации, имеет следующие матричные размеры:

  • a 17 17

  • b 17 1

  • c 1 17

  • d 1 на 1

Чтобы сгенерировать Диаграмму Боде, введите следующее в Окне Команды MATLAB:

npts = 100; f = logspace(-2,10,npts); G = zeros(1,npts);
for i=1:npts                                                       
    G(i) = c*(2*pi*1i*f(i)*eye(size(a))-a)^-1*b +d;                
end
subplot(211), semilogx(f,20*log10(abs(G)))                         
grid                                                               
ylabel('Magnitude (dB)')                                           
subplot(212), semilogx(f,180/pi*unwrap(angle(G)))                  
ylabel('Phase (degrees)')                                          
xlabel('Frequency (Hz)')                                           
grid  

Линеаризуйте с программным обеспечением Simulink Control Design

Примечание

Чтобы работать через этот раздел, у вас должна быть лицензия Simulink Control Design.

Программное обеспечение Simulink Control Design имеет инструменты, которые помогают вам найти рабочие точки, и возвращает объект модели в пространстве состояний, который задает имена состояния. Это - рекомендуемый способ линеаризовать модели Simscape.

  1. В верхней панели меню модели Nonlinear Bipolar Transistor выберите Analysis> Control Design> Linear Analysis .

  2. В Линейной Аналитической Панели инструментов нажмите кнопку графика Bode.

Для получения дополнительной информации об использовании программного обеспечения Simulink Control Design для обрезки и линеаризации, см. документацию Simulink Control Design.

Используйте программное обеспечение Control System Toolbox для, предвещают анализ

Примечание

Чтобы работать через этот раздел, у вас должна быть лицензия Control System Toolbox™.

Можно использовать встроенную поддержку анализа и графического вывода программного обеспечения Control System Toolbox анализировать и сравнить Диаграммы Боде различных устойчивых состояний.

Во-первых, используйте функцию linmod Simulink, чтобы получить модель линейного независимого от времени (LTI).

[a,b,c,d]=linmod('ssc_bipolar_nonlinear');

Не все состояния модели LTI, выведенной в этом примере, независимы. Подтвердите это путем вычисления детерминанта матрицы a, det(a). Детерминант исчезает, который подразумевает одно или несколько нулевых собственных значений. Чтобы анализировать модель LTI, уменьшайте матрицы LTI до минимальной реализации. Получите минимальную реализацию с помощью функции minreal.

[a0,b0,c0,d0] = minreal(a,b,c,d);

13 states removed.

Извлечение минимальной реализации устраняет 13 зависимых состояний из модели LTI, покидая четыре независимых государства. Анализируйте характеристики управления уменьшаемого a0, b0, c0, модели d0 LTI с помощью Диаграммы Боде.

bode(a0,b0,c0,d0) % Creates first Bode plot

Схема с R1, измененным от 47 до 15 кОм, имеет различное устойчивое состояние и ответ. Дважды кликните блок R1, измените значение Resistance на 15 кОм и нажмите OK. Откройте осциллограф Напряжения Загрузки и моделируйте модель. Напряжение коллектора теперь больше не усиливается относительно источника переменного тока на 10 мВ, но ослабляется.

Произведите модель LTI во втором устойчивом состоянии, уменьшайте его до минимальной реализации и наложите вторую Диаграмму Боде на первой.

[a_R1,b_R1,c_R1,d_R1]=linmod('ssc_bipolar_nonlinear');
[a0_R1,b0_R1,c0_R1,d0_R1] = minreal(a_R1,b_R1,c_R1,d_R1); % 13 states removed.
hold on % Keeps first Bode plot open
bode(a0_R1,b0_R1,c0_R1,d0_R1) % Superposes second Bode plot on first

Для получения дополнительной информации об использовании программного обеспечения Control System Toolbox для Предвещайте анализ, см. документацию Control System Toolbox.

Связанные примеры

Больше о

Для просмотра документации необходимо авторизоваться на сайте