Форум » Моделирование аналоговых устройств » Расчет гармоник и интермодуляционных искажений » Ответить

Расчет гармоник и интермодуляционных искажений

Aml: Достаточно типичная задача при анализе усилителей - расчет гармоник и интермодуляционных искажений. Начиная с 8-й версии в MicroCap существенно расширены возможности таких расчетов и деже выделен отдельный тип анализа - Distortion Расчет нелинейных искажений в режиме Distortion Начиная с 8-й вервии появился отдельный режим анализа - Distortion, который, собственно, и позволяет анализировать искажения. Пример использования этого режима - файл dist1.cir (из каталого DATA) Установки анализа Результаты моделирования Кратко про этот вид анализа: Анализ нелинейных искажений Запускается командой Analysis>Distortion или Alt+8. Анализ искажений (Distortion) представляет собой разновидность анализа переходных процессов. При этом виде анализа ко входам схемы подключается источник синусоидального напряжения (тока), а на выходе измеряются его искажения путем использования функций спектрального анализа, например IHD (Individual Harmonic Distortion). Когда сигнал идеальной синусоидальной формы прикладывается к входу линейной схемы, сигнал на выходе тоже будет представлять идеальную синусоиду с той же частотой. Спектральные составы сигналов на входе и на выходе в этом случае одинаковы, за исключением, возможно, значений амплитуд и фаз. Случай прохождения гармонического сигнала и сигнала сложной формы через линейную схему соответствует отсутствию нелинейных искажений. Если схема не является абсолютно линейной, на выходе появятся сигналы с частотами, кратными частоте входного синусоидального сигнала. В результате выходной сигнал обогатится высшими гармониками. Это и есть про-явление нелинейных искажений, вносимых схемой в передаваемый сигнал. Функция спектрального анализа IHD (Individual Harmonic Distortion) рассчитывает отношение в процентах амплитуды указанной высшей гармоники к амплитуде первой гармоники, т.е. определяет вклад каждой гармоники в общий коэффициент нелинейных искажений (коэффициент гармоник). Для проведения анализа искажений ко входу схемы обязательно должен быть подключен источник синусоидального сигнала (Sine Source или SPICE-источники): Voltage Source, Current Source). Все параметры источника входного сигнала устанавливать необязательно, поскольку амплитуда и частота выбираются в диалоговом окне Distortion Analysis Limits Задание параметров моделирования Distortion Analysis Limits Для демонстрации и объяснения установок данного вида анализа можно рассмотреть пример disr1.cir из каталога DATA. Диалоговое окно Distortion Analysis Limits имеет следующие поля для ввода исходных данных. Fundamental Frequency. Это частота гармонического сигнала, используемая при анализе искажений. По этому значению устанавливается частота входного синусоидального источника при выполнении анализа. Input Source Name: имя источника входного сигнала (в качестве которого может выступать независимый источник Pulse, Sine, или Voltage Source и Current Source синусоидальной формы). Его присутствие в схеме на входе схемы обязательно для данного вида анализа; Input Source Amplitude — диапазон или список значений амплитуд сиг-нала входного источника, при которых будет производиться анализ искажений. List. Список значений амплитуд, в котором перечисление ведется через запя-тую, например 100mv,10mv, 1mv. Linear. Задание линейного диапазона изменения амплитуды с определенным шагом End, Start, Step. Пример: 1.0, 0.5, 0.1. Log. Задание логарифмического диапазона изменения амплитуды с шагом: End, Start, Multiplier. Пример: 1.0, 0.01, 10 Как видно, для всех перечисленных способов ввода значений амплитуды, соблюдается общий формат задания варьирования параметров. Если необходимо в дополнение варьировать другой параметр, можно сделать соответствующие установки в диалоговом окне Stepping. Output expression: выходная функция, анализируемая на искажения. Обычно это простое выражение типа V(out). Однако в принципе оно может иметь любой вид. Так, например, можно анализировать на искажения активную мощность, выделяемую на нагрузке PD(RLOAD) и пр.; Temperature: Задает значения температуры, при которых производится анализ согласно принятому в программе формату варьирования параметров. Simulation Cycles — число периодов входного гармонического сигнала основной частоты, в течение которых выполняется расчет переходных процессов. Этого времени должно быть достаточно для выхода схемы на установившийся режим. Для большинства случаев достаточно 3–5 периодов сигнала основной гармоники. Следует отметить, что хотя расчет переходных процессов выполняется в течение заданного количества периодов гармонического воздействия, спектральный анализ производится для последнего периода сигнала. Например, если задана фундаментальная частота 10кГц и 5 периодов, MC8 выполнит моделирование переходных процессов до момента времени Tmax=5/F0=5/10K=5*100мкс=500мкс. Затем для проведения спек-трального анализа нелинейных искажений будет использован последний пе-риод симуляции, т.е. промежуток времени от конца 4-го периода 400мкс до конца 5-го периода 500мкс. Эта усеченная синусоида и будет выведена на соответствующем графике для выходного сигнала. Maximum Time Step: Максимальная величина шага по времени при рас-чете переходных процессов. Обычно устанавливается в пределах от .001 до .01 от полного времени анализа для достаточной точности расчета отклика на выходе. Ряд функций спектрального анализа для характеристики искажений огра-ничен 3-мя функциями, которые уже имеются в окне графиков: HARM(u) — расчет гармоник сигнала u; THD(S[,F]) — коэффициент нелинейных искажений спектра S, в процентах относительно уровня составляющей на частоте F; IHD(S[,F]) — коэффициент нелинейных искажений отдельных состав-ляющих спектра S, в процентах относительно уровня составляющей на частоте F. В рассмотренном примере на вход схемы подается синусоида частотой 10кГц и амплитудой 50мВ от источника V709, в качестве которого используется синусоидальный источник напряжения формата SPICE. Анализ произво-дится в течение 5 периодов (500мкс), выходное напряжение V(23) подверга-ется спектральному анализу на интервале от 400мкс до 500мкс. На график выводятся амплитуды гармоник выходного напряжения (функция HARM), коэффициент нелинейных искажений отдельных составляющих спектра (IHD), суммарный коэффициент гармоник (THD). Графики показывают, что основной вклад в нелинейные искажения вносят вторая (0,7%) и третья гармоники (1,75%). Полный коэффициент гармоник со-ставляет величину 1,85%. Особенности моделирования Искажения имеют сильную зависимость от начальных условий анализа. Данная зависимость особенно сильно проявляется при недостаточно большом количестве периодов основной частоты. Убедиться в этом можно, запустив анализ искажений при установленном и сброшенном флажке Operating Point. Для рассмотренного примера сильное расхождение результатов наблюдаются при числе периодов (Simulation Cycles) равном 3. Кроме того, искажения сильно зависят от уровня входного сигнала из-за нелинейности передаточных характеристик схем. Например, для усилителей класса А, при возрастании амплитуды входного сигнала, они увеличиваются. Для усилителей класса B при возрастании входного сигнала искажения сначала уменьшаются, затем увеличиваются.

Ответов - 57, стр: 1 2 3 All

Aml: Вычисление интермодуляционных искажений Существуют две методики определения интермодуляционных искажений - CCIF, а также ГОСТ 16122-88 и МЭК 268-5 Краткая информация о методиках здесь - http://microcap.ifolder.ru/4186586 В MicroCAP расчет интермодуляционных искажений производится при помощи функций Performence (как и все другие опосредованные расчеты, т.е. расчеты, которые обобщают и анализируют серию вычислений в заданном диапазоне изменений какого-либо параметра, такие как, к примеру, зависимость коэффициента пульсаций на выходе фильтра сетевого выпрямителя от емкости фильтра) Кроме того, при помощи этих функций можно построить зависимость нелинейных или интермодуляционных искажений при изменении какого-либо параметра схемы. Расчет по методике CCIF Если ОУ тестируется с использованием международного стандарта CCIF, то на его вход подаются две синусоиды с частотами вблизи верхней граничной частоты. В этом случае частоты членов 2-го и 3-го порядка имеют различное значение. Члены 2-го порядка обычно значительно отстоят по частоте от входных синусоид, тогда как частоты членов 3-го порядка обычно близки к входным частотам. Вследствие этого члены 2-го и 3-го порядка в спецификациях указываются отдельно. Наиболее важны члены третьего порядка. Например, члены второго порядка это (f1+f2) и (f1-f2), а члены третьего порядка - это (2f1+f2), (2f1-f2), (f1+2f2) и (f1-2f2). Наибольший вклад в IMD вносят как правило составляЮщие 3-го порядка (2f1-f2=8 kHz) и (2f2-f1=11 kHz). Схема моделирует стандартный усилитель. Она используется для демонстрации анализа интермодуляционных искажений по методике CCIF. Если не нужна зависимость IMD от амплитуды входного сигнала ASIN, можно выключить STEPPING. Расчет по методике ГОСТ 16122-88 Чтобы измерить коэффициент интермодуляционных искажений Ки, на вход усилителя подают сумму двух колебаний разной частоты и амплитуды. Из-за нелинейности амплитудной характеристики на выходе устройства, кроме гармоник каждого из этих сигналов, будут присутствовать комбинационные составляющие, которые, собственно, и определяют величину Ки. Чаще всего этот параметр измеряют по следующей методике: частоты испытательных сигналов выбирают равными 50 (f1) и 6000 Гц (f2), а отношение амплитуд 4:1. Из всех комбинационных составляющих (их частоты равны mf2±nf1, где m и n принимают значения, равные 1, 2, 3 и т. д.) для определения коэффициента Ки берут компонент разностной частоты первого порядка (f2-f1) и относят его амплитуду к амплитуде выходного напряжения частотой f1. Файлы для расчетов - http://microcap.ifolder.ru/4186927

qwer: Добрый день Aml! Очень интересно все о чем Вы пишите. По последней методике с частотами 50 (f1) и 6000 Гц (f2), и отношением амплитуд 4:1 есть несколько вопросов. 1. Тест получается более жестким при соотнешении амплитуд испытательн сигналов 1:1 и на мой взгляд более достоверным. 2. По методике, которой я пользуюсь, Ки равен отношению среднеквадратичной суммы амплитуд шести комбинационных составляющих (три вправо и три влево от 6кГц) к амплитуде сигнала 6 кГц. Как я понял в Вашем тесте рассматривается лишь одна комбинационная составляющая с частотой 5950 Гц. Вопрос. Каким образом отобразить Ки с учетом шести или более комбинационных составляющих графиком зависимости от параметров элементов УНЧ или др ? Благодарю за ответ. Сергей Рубальский

Aml: 1. Тест получается более жестким при соотношении амплитуд испытательных сигналов 1:1 и на мой взгляд более достоверным. Спорить с этим утверждением не берусь, поскольку (как я уже отмечал) не являюсь специалистом по звуковой схемотехнике. В приведенном примере реализована методика, которую удалось найти в Интернете. Собственно я и открыл эту тему, чтобы обсудить, какую методику целесообразно использовать. В ближайшее время опробую предложенный вами вариант и выложу результаты. Вопрос. Каким образом отобразить Ки с учетом шести или более комбинационных составляющих графиком зависимости от параметров элементов УНЧ или др ? Думаю, это вполне реально. Мгновенно, конечно, не отвечу, но считаю, что с помощью функций Performence такую зависимость получить можно. Вечером попытаюсь это сделать.

Aml: Как оказалось, учет шести и более комбинационных составляющих возможен, но есть определенные проблемы – Микрокап не может сохранить настолько длинное выражение для функции Performance. Однако в принципе выход из положения есть. Но его пусть лучше Marina прокомментирует – это изначально она реализации вычисления искажений делала.

Marina: Добрый день, qwer! Изменение соотношений амплитуд источников сигнала для измерений искажений никаких проблем не составляет. Они задаются двумя синусоидальными источниками на входе усилителя, поэтому достаточно изменить коэффициент, задающий соотношение этих амплитуд. У источников синусоидального сигнала амплитуда задана не непосредственно, а через переменную ASIN. Это сделано для того, чтобы ее можно было менять во время степинга. Усилитель в примере – честно говоря, первый попавшийся из библиотеки MicroCap, что, впрочем, не важно, поскольку рассматривается не усилитель, а способ вычисления интермодуляционных искажений. В примере рассчитывается зависимость интермодуляционных искажений от амплитуды входного сигнала. Точно также можно получить зависимость от любого другого параметра схемы (сопротивления нагрузки, тока покоя выходного каскада, бетта транзистора и т.п.). Для этого необходимо изменить параметры задания степинга (задать там изменение нужного параметра). Для каждого значения амплитуды входного сигнала (либо другого изменяемого степингом параметра) при помощи функций окна Performance вычисляется коэффициент интермодуляционных искажений. Если считать для шести комбинационных составляющих, то формула для Ки в % будет иметь следующий вид: Ки=sqrt(Y_Level(Harm(V(23)),1,1,5850)^2+Y_Level(Harm(V(23)),1,1,5900)^2+Y_Level(Harm(V(23)),1,1,5950)^2+Y_Level(Harm(V(23)),1,1,6050)^2+ Y_Level(Harm(V(23)),1,1,6100)^2+Y_Level(Harm(V(23)),1,1,6150)^2)/Y_Level(harm(V(23)),1,1,6k)*100 Полученные значения коэффициента на каждом шаге степинга постепенно составляют график зависимости от заданного степингом параметра (в примере – от амплитуды входного сигнала). Проблема приведенной выше формулы – она настолько длинная, что обрезается при сохранении файла схемы и при следующей загрузке функция не работает. Выхода из положения может быть два. Во-первых, можно упростить формулу, приняв, что гармоники справа от основной частоты равны по амплитуде соответствующим гармоникам слева. Думаю, это утверждение справедливо с достаточно высокой степенью точности. Поэтому можно использовать не корень квадратный из суммы квадратов шести гармоник, а корень квадратный из удвоенной суммы квадратов трех гармоник. Ки=sqrt(2*(Y_Level(HARM(v(23)),1,1,5850)^2+Y_Level(HARM(v(23)),1,1,5900)^2+Y_Level(HARM(v(23)),1,1,5950)^2))/Y_Level(HARM(v(23)),1,1,6000)*100 Этот способ реализован в файле _01 Во-вторых, формулу можно сохранить в текстовой области схемы и после загрузки файла копировать ее оттуда в строку формул окна Performance (файл _02) http://slil.ru/25141701 (для MC9)

qwer: Marina! Благодарю за исчерпывающий ответ. Прикрепленные файлы в МС8 работать отказываются. По аналогии попробовал на УНЧ в МС8 - все работает. Сумма среднеквадратичных значений комбинационных составляющих...квадратный корень из суммы квадратов...пытался применить функцию RMS. МС пишет, что данная функция доступна не для всех окон?? может запись получилась бы короче. Попробовал зависимости Ки от значений элементов схемы, токов смещения вых каскадов и др., результат получается быстро, просто, наглядно. Еще раз благодарю. Вам передышка на выходные нужна, или можно задавать следущие вопросы?

Aml: qwer, выходные - понятие очень относительное и практически неведомое Так что вопросы всегда задавать можно. В MC8 расчет по нескольким гармоникам не проходит, поэтому раньше и была использована только одна гармоника. А выложенные схемы - для MC9, там возможностей у функций Performance существенно больше. По поводу использования RSM Марина обещала попробовать.

qwer: Доброй субботы Aml ! ...В MC8 расчет по нескольким гармоникам не проходит... Я работаю в МС8.1.1.0. Картинки по рассчету КИ в МС8 прикрепляю. (А картинки не прикрепились, что делать, куда нажимать, где правила читать?) Пока разберусь с картинками вопрос. Как отобразить Кг (THD, IHD) в диапазоне частот, в диапазоне мощностей? Заранее благодарен. Прикрепляю картинки. http://ipicture.ru/uploads/071124/MWVpMIAWN2.JPG http://ipicture.ru/uploads/071124/A6x8GOFiJF.JPG

Aml: А картинки не прикрепились, что делать, куда нажимать, где правила читать? В верхней части панели ответа кнопка с изображением человечка (картинка с компьютера). По ней будет осуществлен переход на сервис размещения фоток. А потом оттуда надо будет скопировать ссылку на картинку в текст сообщения (автоматом не прикрепляется).

Aml: Как отобразить Кг в диапазоне частот, в диапазоне мощностей? В диапазоне мощностей, думаю, проблем быть не должно - нужно только степинг по мощности организовать - менять либо амплитуду входного сигнала, либо сопротивление нагрузки. А вот по поводу частоты - надо пробовать, с ходу не скажу что получится. На всякий случай выкладываю схемы моделирования IMD для МС8 (конвертировал из МС9). Но у меня они не работают. http://slil.ru/25143082

qwer: Aml пишет: В диапазоне мощностей, думаю, проблем быть не должно - нужно только степинг по мощности организовать - менять либо амплитуду входного сигнала, либо сопротивление нагрузки Для отображения Кг (THD, IHD) в диапазоне мощностей проблема все же возникает. Если посмотреть на график синус напряжения и график полученной мощности, то они отличаются по частоте в два раза (отрицательная полуволна синуса дает положительную полуволну мощности). Это и приводит к неопределенному результату при расчете в МС. Но это в случае Кг vs PD. Если рассматривать зависимости от Напряжений тогда все Ок, но график нужен Кг vs Рвых. Я пока не нашел удобного решения.

Aml: Благодарю, картинки прикрепились ссылками, а расположение картинок в ссобщениях без ссылок не возможно, или это ресурсоемко? qwer, хостинг форума - бесплатный. Соответственно, своего хранилища фоток форум не имеет. Так что фотов любом случае размещается ссылками на внешний ресурс. Но если эту ссылку заключить в теги [img]ссылка[/img], то картинка будет сразу отображаться в сообщениях. По поводу ресурсоемеости - если схемы и графики сохранять в формате gif или png (а не jpg), то они "весят" единицы килобайт, и их вполне можно использовать в качестве вставки в сообщение. В результате ваши картинки уменьшатся в объеме приблизительно в 10 раз.

qwer: Aml пишет: На всякий случай выкладываю схемы моделирования IMD для МС8 (конвертировал из МС9). Но у меня они не работают. В таком виде не заработает. sqrt(2*(Y_Level(IHD(HARM(v(23))),1,1,5850)^2+Y_Level(IHD(HARM(v(23))),1,1,5900)^2+Y_Level(IHD(HARM(v(23))),1,1,5950)^2)) Надо убрать уровни комбинационных составляющих в % (IHD убрать), в таком виде среднеквадаратичных значений не получить. Марина предложила рабочие формулы, но у меня есть небольшие расхождения с ней. Я комбинационные составляющие считал через RMS, затем брал отношение суммы RMS гармоник к уровню 6кГц. Корень квадратный из суммы квадратов от суммы RMS гармоник немного отличается. Почему?

Aml: В таком виде не заработает. Сорри, это я файлы при выкладывания перепутал. Там во вложении промежуточный экспериментальный файл. А тот, который вчера описан и выложен в формате для МС9 - здесь http://slil.ru/25143410 (в формате MC8). И он, действительно, работает (почему раньше не работал - не знаю) Корень квадратный из суммы квадратов от суммы RMS гармоник немного отличается. Почему? Марина как раз пришла к тому же результату и сейчас пытается разобраться (пока безуспешно)

Aml: По поводу RMS Если взять и вычислить корень квадратный из суммы квадратов от трех составляющих справа от 6 кГц, а замем слева - то полученные результаты совпадают с достаточно высокой точностью, а график Ки по "левым гармоникам" полностью совпадает с графиком Ки по "правым гармоникам". Если же взять RSM, то результаты расчета по левым и правым частям сильно отличаются, а графики зависимостей от параметров схемы принципиально различны по форме. Есть подозрение, что RSM считается по комплексным величинам, а не по амплитудам.

qwer: Aml пишет: RSM считается по комплексным величинам, а не по амплитудам Да, особенно когда с мощностями работаешь через RMS напряжения, чем дальше от синусоиды, тем дальше от адекватного результата. Формула Марины меня в целом устраивает, погрешность между результатами небольшая, благодарность ей с теплой улыбкой. В Радиохобби № 2,3 за 2006 год была напечатана моя стать по разработке УМЗЧ с помощью МС 7. Там я фрагментально, в том числе, представил измерение Ки двумя методами, и измерение Кн УМЗЧ. Отображение THD с помощью 3D Windows очень наглядно при оптимизации режимов работы элементов схемы. В МС8 при помощи функции IHD появилась возможность наблюдать распределение спектральных составляющих выходного напряжения, для оценки и настройки схем УМЗЧ это очень важно. В тоже время несколько обескураживает, что при мощном движке МС разработчик не дал потребителю в достатке готовых функциональных решений (типа Distortion Analysis Limits в МС8). Но и последняя возможность далека от совешенства. Повторюсь, не хватает функций измерения Ки, Кг в диапазоне частот, мощностей, свип CCIF и др. в обязательном порядке используемых при разработке и отладке УМЗЧ. Я надеюсь на Вашем форуме удастся решить часть проблем, и решения будут доступны для широкого круга пользователей (не только знающих азы высш математики ). Удачного развития Вашему форуму.

Marina: Кажется, разобралась, в чем дело. Правильно все-таки вычислять IMD с использованием корня квадратного из суммы квадратов учитываемых комбинационных составляющих спектра. Дело в том, что функция RMS(HARM(Vout)) работает как накопительная, т.е. она находит среднеквадратическое значение амплитуды гармоники, начиная от нулевой частоты и кончая текущей частотой, поэтому велик вклад в результирующее значение НЧ составляющих спектра выходного сигнала и на их фоне интересующие нас комбинационные составляющие в окрестности частоты 6000 вносят незначительный вклад. В результате мы видим зависимость, близкую к зависимости коэффициента гармоник (или нелинейных искажений).

Aml: Я надеюсь на Вашем форуме удастся решить часть проблем, и решения будут доступны для широкого круга пользователей Есть большие задумки по создании базы примеров типовых задач, возникающих при проектировании и анализе электронных схем, которая будет выложена на сайте, а возможно издано отдельной книгой. К сожалению, мы с Мариной не являемся специалистами по звуковой схемотехнике, поэтому некоторые моменты может и могли бы реализовать в MicroCap и пояснить, как это использовать, но далеко не всегда знаем, что не хватает радиолюбителям. Поэтому весьма приветствуется озвучивание проблем, требующих решения.

qwer: Marina пишет: Кажется, разобралась, в чем дело. Правильно все-таки вычислять IMD с использованием корня квадратного из суммы квадратов учитываемых комбинационных составляющих спектра Marina ! Благодарю Вас. Надеюсь постепенно придем к автоматизированным методам разработки и оценки электронных устройств. А то обидно как то - МС в одной руке а калькулятор в другой. Aml, постараюсь периодически озвучивать нерешенные проблемы.

Aml: Если рассматривать зависимости от Напряжений тогда все Ок, но график нужен Кг vs Рвых. Я пока не нашел удобного решения. Увы, я пока тоже. Откровенно говоря, это оказалось для меня неожиданностью. Я не обращал внимание, что графики функции Performance можно строить только от того параметра, который "шагается". И главная неприятность - нельзя организовать числовой вывод графика в файл (что логическому объяснению не поддается, очевидно просто недоработка, ведь все остальные типы графика в файл вывести можно). Если бы был числовой вывод, то можно было бы вывести в файл зависимость коэффициента гармоник от напряжения и мощности от напряжения. А потом построить в Микрокапе (или любой другой программе) график зависимости коэффициента гармоник от мощности, на основе имеющихся в файле пар данных. Но в реальности можно толко вывести значения гармоник и значения мощности при изменении напряжения. В принципе по этим данным табличным внешними программами (думаю, даже эксель подойдет) можно построить нужные зависимости (вычислить Кг и поставить в соответствие с P), но это далеко не то, что хотелось бы видеть. Может еще что и удастся придумать, но скорее всего, встроенных средств MicroCap не хватит. С зависимостью гармоник от частоты ситуация похожая. В принципе график коэффициента гармоник от частоты вывести можно, но результаты там и близко на правду не похожи - не согласуется "шагание" по частоте с вычислением THD. Судя по всему, несмотря на изменение частоты, THD считаются не относительно текущей частоты, а относительно начальной. В результате Кг составляет миллионы процентов. Получается, что функции Микрокапа иногда работают очень некорректно. Сегодня Марина полдня убила на то, чтобы понять, как вычисляется RMS от гармоник и так не работалась до конца. Очевидно только, что расчет идет совершенно неправильно. Похоже, что RMS некорректно работает с линейчатыми функциями. И фактически RMS вычисляется не как корень квадратный из суммы квадратов, а через интеграл в заданном диапазоне. И при интегрировании линейчатых функций вылезает какая-то "бяка".



полная версия страницы