• Изследване на OLG (Open Loop Gain) с помощта на симулатор LTSpice

    Background
    При проектирането на усилвателни устройства, използващи обща отрицателна обратна връзка (ОООВ), от особена важност е изследването на стабилността на системата. Това се налага поради факта, че при увеличаване на честотата, фазовото закъснение на изходния сигнал също се увеличава, и при определена честота общото закъснение (на основната схема плюс веригата за ОООВ) става равно на 360 градуса, т.е. отрицателната ОВ става положителна. Това създава условия за възникване на осцилации, ако не са спазени някои изисквания. Изследването дали проектираната схема отговаря на тези изисквания става с помощта на измерването на амплитудо-честотната характеристика (АЧХ) при отворен контур на ОООВ (на английски Open Loop Gain - OLG).

    Малко теория
    От теорията на автоматичното регулиране (без да навлизам в подробности) се знае, че условието, при което система с ОООВ е стабилна, е за честотата, при която усилването на схемата с отворен контур става равно на единица (unity gain) или 0 dB, дефазирането на изходния сигнал да е по-малко от 180 градуса. Освен това, за честотата, при която дефазирането става равно на 180 градуса, коефициентът на усилване трябва да е по-малък от единица. Тези две изисквания дават т.нар. запас по фаза (phase margin) и запас по усилване (gain margin).
    Естествено, тези неща не могат да се видят при изследване на АЧХ със затворен контур на ОООВ, поради факта, че обратната връзка е "смачкала" усилването до зададените при проектирането нива. В този случай за стабилността на схемата може да се правят някакви предположения по дефазирането на изходния сигнал при достигане на единичното усилване (много неточно) и/или при наличие на сравнително големи отскоци на АЧХ за честотата, при която започва завала на усилването. По-нататък ще се опитам да илюстрирам нагледно нещо такова, доколкото мога да "скова" някоя подходяща симулация.

    Практика
    В реални условия изследването на OLG е доста трудно, т.к. ОООВ почти винаги служи и за поддържане на постояннотоковите режими и простото и отваряне (даже и да не се самовъзбуди схемата) може да доведе до "залепване" на изхода към една от захранващите шини. Ако в този момент схемата е и под товар... не ми се мисли. Освен това, реалното разкъсване на веригата за ОООВ в много случаи води до разлика в малосигналните импеданси в двата края на разкъсаната верига, което ще доведе до неточни резултати от изследването.
    В книгата си Боб Кордел е предложил начин за измерване на OLG в реални условия чрез използване на DC-серво за поддържане на постояннотоковия режим на схемата. Доколкото, обаче, сервото оказва своето влияние (особено при ниски честоти, където всъщност е най-голямото усилване), резултатите може да се разминават донякъде с реалността.

    Симулиране
    Поради тези причини, особено при наличието на изобилие от софтуерни пакети за симулиране на електронни схеми, е удачно предварителното изследване на OLG, респективно стабилността на схемата, за да е по-безпроблемен етапът на оживяването.
    Естествено, за успешното симулиране е необходим работещ симулатор и достатъчно надеждни модели на използваните в схемата елементи. За това как трябва да се вземат под внимание еветуалните неточности на използваните модели и/или други отклонения от реалните параметри на схемата - по-нататък.
    Всички примери, дадени тук, се базират на безплатния симулатор LTSpice, вероятно ще могат да се повторят и в други пакети за симулация, но доколкото не съм запознат с тях, не мога да дам 100% гаранция.
    В основата си методите за изследване на OLG се базират на разкъсване на ОООВ от изхода на схемата, в същото време поддържайки по някакъв начин постояннотоковия режим и подаване (инжектиране) на тестови сигнали непосредствено след разкъсването по посока изход-вход, т.е. на входа на веригата за ОООВ.



    Тук ще бъдат разгледани А) метод с използване на индуктивност за разкъсване на ОООВ и Б) метод със сонда на Тиан (Tian's probe).
    За онагледяване на методите ще се използва една и съща примерна схема, за да могат да се сравняват получените резултати. Поради тази причина в схемата фигурират елементите, използвани и при двата метода, но ще се използват единият или другият набор, в зависимост от избрания метод.
    Трябва да се отбележи, че и двата метода, които ще бъдат описани, са валидни само при схеми с един затворен контур на ОООВ. Ако схемата е с повече от един такъв, съветите са да се намери точка от схемата, в която поставянето на сондата ще "разкъса" и двата контура, но това не е толкова лесно да се направи на практика.
    Поради тази причина, сервото, което се използва в схемата, в този случай е деактивирано, тъй като това, всъщност, е още един затворен контур и интеграторът (каквото всъщност представлява DC-сервото) оказва влияние при ниски честоти и отворена верига на ОООВ.



    Метод с използване на индуктивност за разкъсване на ОООВ по променлив ток.
    Използвал съм примерната постановка, дадена в книгата на Боб Кордел. Индуктивността с много голяма стойност (999H) се включва непосредствено в изхода на схемата, като към другият и край са свързани товарът и входа на веригата за ОООВ. В тази точка (през разделителен кондензатор с много голяма стойност - 999F, за да не се нарушава постояннотоковият режим на схемата), се инжектира и тестовият сигнал. В случая изходният сигнал ще бъде в противофаза, което трябва да се отчете при интерпретиране на получените резултати. Входът на схемата трябва да бъде даден накъсо през източник на напрежение или директно с мост.



    Симулирането тук е стандартно (AC Analysis), като единственото нещо, което е по-различно е, че източникът на напрежение се подава не на входа на схемата, а в точката на разкъсване на ОООВ. Графиката на OLG е дадена на фигурата.



    На така получената графика са отбелязани 2 точки. Първата е при честотата (в случая 3.55 MHz), в която усилването на схемата става равно на единица (в случая 2.3 mdB). Фазата на изходния сигнал е -280.697 градуса. Ако извадим фазата на сигнала в тази точка от 360 (да не се забравя, че в случая схемата е инвертираща), получаваме ~ 79.3 градуса, т.е. на схемата не и достигат 79 градуса, за да се превърне ООВ в положителна. Това е т.нар. "запас по фаза" (phase margin) на схемата. В източниците, които съм разглеждал, като общо правило се счита, че за да е устойчива схемата, трябва запасът по фаза да е по-голям от 60 градуса. В случая това условие е изпълнено.
    Втората точка от графиката е при честотата (124.96 MHz), за която фазата на изходния сигнал става равна на -360 градуса (при инвертираща схема). Коефициентът на усилване на схемата в тази точка е -20.77 dB. Тази стойност е т.нар. "запас по усилване" (gain margin) на схемата. Не съм открил в литературата някакво правило какъв трябва да е запасът по усилване, но според мен трябва да се стремим той да се доближава до коефициентът на усилване на схемата със затворен контур на ОООВ (мое мнение - не ангажирам никого да го спазва).

    Метод със сонда на Тиан
    През 2001 г. Michael Tian и негови колеги от Cadence Design Systems публикуват статията "Striving for Small-Signal Stability" (http://www.kenkundert.com/docs/cd2001-01.pdf), в която се описва този метод за изследване на OLG.
    Методът доразвива идеите, публикувани в ранните разработки на Prof. R. David Middlebrook (“Measurement of loop gain in feedback systems”, 1975 г.), като избягва неговите несъвършенства.
    За правилното използване на този метод в LTSpice трябва да бъдат изпълнени няколко стъпки:
    - изтеглете zip-архивът http://tech.groups.yahoo.com/group/L...Gain_Probe.zip (намира се към края на страницата);
    - разархивирайте го и копирайте файлът loop_probe.asy в c:/Program Files/LTC/LTspiceIV/lib/sym (предполага се, че LTSpice е инсталиран в c:/Program Files/LTC/LTspiceIV/). Файлът loop_probe.asc може да бъде копиран в същата директория или там, където съхранявате файловете със симулациите си;
    - стартирайте LTSpice и отидете в Control Panel-a (Simulate->ControlPanel), както е показано на фигурата



    - в разделът "Save Defaults" активирайте "Save Device Currents", "Save Subcircuit Node Voltages", "Save Subcircuit Device Currents", както е показано на фигурата



    - отворете в LTSpice схемата, която ще се изследва, и заредете loop_probe.asy (F2->loop_probe.asy)



    - поставете сондата между изхода на схемата и веригата за ОООВ. Ориентацията трябва да бъде: входът на сондата към изхода на схемата, изходът на сондата - към началото на веригата за ОООВ;
    - кликането с десен бутон върху правоъгълника на сондата ще отвори следния прозорец



    Обърнете внимание на втория ред - той може да бъде празен, ако сондата е използвана за първи път. В такъв случай там трабва да бъде поставен пълният път до мястото, където се намира loop_probe.asc.
    - маркирайте чекбокс-овете и попълнете полетата Instance name -> Xlp; PARAMS -> lpvar=lp, както е показано на фигурата



    - добавете следните SPICE директиви:
    .param lp=0
    .step param lp list 1 -1

    както е показано на фигурата



    - копирайте формулата на Tian за изчисляване на OLG (има я във файла LoopGain_Probe.asc от архива) и я поставете като коментар към схемата - това е удачно, т.к. при тя ще трябва при изчертаване на графиката на OLG.
    - т.к. при изчисляването на OLG чрез сондата се инжектират напрежения и токове при първия и втория пас, е необходимо всички други AC източници да бъдат деактивирани (това основно е източникът на напрежение във входа на схемата, който нормално се ползва за имитиране на входен сигнал). Това може да бъде направено, като стойността на AC Amplitude в секцията Small Signal Analysis (AC) се установи в нула, но по-удобният начин е като за стойност на AC Amplitude се постави {ampl-lp*lp} (amp е параметър, който трябва предварително да се дефинира с друга директива и стойността му да бъде 1).



    По този начин по време на първия и втория пас, стойността на AC Amplitude ще бъде равна на 0 (първи пас: lp=1 => AC Amplitude=1-(1*1)=0; втори пас: lp=-1 => AC Amplitude=1-(-1)*(-1)=0). При деактивиране на сондата (слагане на коментар пред директивата .step param lp list 1 -1 или промяната и от директива в SPICE text)



    параметърът lp се установява в 0 с директивата .param lp=0 и стойността на AC Amplitude се установява в 1 (или каквато е стойността на параметъра ampl).

    Схемата в този случай добива вида, даден на фигурата



    - след завършване на симулацията, кликнете с десен бутон в прозореца за резултатите от симулацията (или клавишна комбинация Ctrl+A) и изберете "Add Trace"



    - поставете формулата на Tian за изчисляване на OLG в полето



    и като резултат графиката на АЧХ с отворен контур на ОООВ ще бъде изчертана.



    Сравнявайки графиките, получени при използването на двата метода, може да се направят следните наблюдения:
    - и при двата метода максималното усилване е около 63 dB
    - доминантният полюс е на честота около 2 kHz;
    - при методът с бобината има нула на честота около 15 kHz, а при методът със сонда на Tian - на честота около 20 kHz;
    - при методът с бобината вторият полюс е на честота около 20 MHz, докато при методът със сондата на Tian вторият полюс е на 15 MHz;
    - единичното усилване на схемата е при честота 3.55 MHz (метод с бобината) срещу 3.46 MHz (метод със сондата на Tian);
    - запасът по фаза е 79.3 градуса (метод с бобината) срещу 78.78 градуса (метод със сондата на Tian);
    - изоставането по фаза на 180 градуса е при честота 124.96 MHz (метод с бобината) срещу 123.5 MHz (метод със сондата на Tian);
    - запасът по усилване е 20.77 dB(метод с бобината) срещу 24.38 dB (метод със сондата на Tian);

    От това сравнение може да се заключи, че и двата метода дават сходен резултат за запаса по фаза (79.3 градуса и 78.78 градуса съответно), докато методът със сондата на Tian дава по-оптимистичен резултат за запаса по усилване (24.38 dB срещу 20.77 dB). Разликите се проявяват при доста високи честоти и вероятно са продиктувани от факта, че методът със сонда на Tian отчита и т.нар. "reverse loop transmission", т.е. факта, че през веригата за ОООВ протича сигнал не само в обратно направление, а и в право (проявява се основно при много високи честоти). И в двата случая, обаче, запасите по фаза и усилване са достатъчно големи и схемата има всички изгледи да се държи стабилно.

    Защо е необходимо да се поддържат големи запаси по фаза и усилване?
    В симулаторите не се отчита (или поне не е много интуитивно) влиянието на голям брой странични фактори, напр. паразитни капацитети и индуктивности от кабели, печатна платка и т.н., измененията на параметрите на елементите вследствие изменение на температурните им режими и т.н. Всички тези фактори внасят допълнителна нестабилност в схемата и ако тя е "на ръба", могат да се получат неприятни (и непредвидими) последици.

    Какво друго може да ни разкрият методите за изследване на OLG?
    Да разгледаме OLG графиката на друга схема:



    Въпреки че според резултатите схемата би трябвало да работи стабилно, за разлика от графиките на предната схема, където усилването намалява монотонно, тук се наблюдава скок на усилването при високи честоти и при честота 116 MHz фазата на сигнала става -540 градуса, т.е. сигналът на изхода на веригата за ОООВ е във фаза с входния. Въпреки, че усилването е -25 dB, схемата има склонност да се самовъзбужда, което при дадени обстоятелства може да се прояви.
    И още един пример:



    На фигурата е даден усилвател, който има нестандартно свързване на резистора R16 във веригата за честотна компенсация C1, C2 - вместо към маса - към изхода на усилвателя. Това е типичен случай на схема с повече от един контур на ОООВ. Въпросът, който възниква, е: "къде да се разкъса веригата и да се постави сондата на Tian" - преди или след резистора?
    На следващите две фигури са дадени графиките на OLG за двата случая.






    Видно е, че те коренно се различават, а отговорът е, че нито един от вариантите не е верен. В момента в diyaudio.com върви дискусия, посветена на този проблем и според един от участниците в нея, подходящата точка за поставяне на сондата е в базовата верига на транзистора Q4. Дори и в този случай, графиката за OLG не е много реалистична (поне за мен), така че ще чакаме нови резултати .

    Заключение
    Като заключение трябва да се отбележи, че никой симулатор не може да замени реалния експеримент поради редица фактори - несъвършенство на използваните модели, невъзможност за пълно описание на всички съпътстващи фактори, влияещи на работата на една схема и т.н. Въпреки всичко, когато се използва грамотно, той е незаменим помощник, пести време, в много случаи може да предотврати нежелани фойерверки и дава ако не количествена, то поне качествена оценка за потенциала на дадена схема.
    This article was originally published in forum thread: Изследване на OLG (Open Loop Gain) с помощта на симулатор LTSpice started by madrigal View original post
  • Нови мнения във форума

    BoardMan

    нахално за винила

    Замислена е... лежи и си мисли: нещо не ми излизат РИАА корекциите, натоварването... нещо антискейтинга не е наред

    BoardMan днес, 04:47 Покажи последното мнение
    употребител

    нахално за винила

    И да приемем, че максимума който е постигнат, е 21 бита защо да се ограничаваме до 16?

    употребител днес, 02:21 Покажи последното мнение
    emosms

    външно захранване на usb дак

    Засега да отлежава идеята.

    По принцип, възможно ли е да се реализира следното

    emosms днес, 01:47 Покажи последното мнение
    emosms

    6 канала TDA7293

    Брума Не се появява изведнъж. Чрез промяна на опроводяването го разкарах от намалено

    emosms днес, 01:25 Покажи последното мнение
    emosms

    6 канала TDA7293

    Брума Не се появява изведнъж. Чрез промяна на опроводяването го разкарах от намалено

    emosms днес, 01:13 Покажи последното мнение