|
Расчет петлевого фильтра ФАПЧ |
|
|
|
Apr 20 2018, 18:00
|
Знающий
   
Группа: Участник
Сообщений: 998
Регистрация: 27-08-08
Пользователь №: 39 850

|
Погуглив данную тему ничего внятного по этому поводу не нашел кроме http://www.dsplib.ru/content/dpll/dpll.htmlРечь идет про расчет коэффициентов петлевого фильтра. В качестве петлевого фильтра часто применяется FIR, коэффициенты которого можно посчитать в Матлаб. Как можно соотнести расчет коэффициентов петлевого фильтра с расчетом собственно коэффициентов FIR в Матлаб? Для FIR Матлаб нужны всего несколько вполне определенных параметров, частота дискретизации, Fstop Fpass и пр., но никак не Кр Кi g1 и g2.
|
|
|
|
|
 |
Ответов
|
Apr 23 2018, 22:52
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(Acvarif @ Apr 21 2018, 07:50)  В чем отличие в петле КИХ от БИХ? Только эффективностью? Нет. Это структуры с несколько разными свойствами. И применимость их зависит от задачи, и ресурсов для её исполнения. Вкратце. Преимущества, для систем автоматического регулирования (в частности, ФАПЧ). КИХ - устойчивость, применимость в системах малой разрядности (вплоть до 8-битных, хоть это уже архаизм). Произвольность формы ИХ. Возможность минимизации длительности переходного процесса. Более высокая, чем у БИХ, устойчивость в петле ФАП. БИХ - возможность зануления матожиданий ошибок и их производных. Малый объём математических действий. Недостатки. КИХ - сравнительно длинный буфер памяти процесса, большой объём арифметических действий. Невозможность полной компенсации ошибок (фазы). БИХ- требуется высокая (на несколько порядков выше, чем у КИХ) точность вычислений. Бесконечное время переходного процесса. Ограниченные возможности для создания ИХ произвольной формы. Худшая, чем у КИХ, устойчивость в петле ФАП. Прежде, чем создавать систему ФАПЧ, следует задаться её параметрами. ---------------------------------------------------- Цитата(petrov @ Apr 21 2018, 12:44)  Потому что ФАПЧ это не просто какие-то КИХ и БИХ,.. Вот и я про то же. Посему, не следует с ходу отметать ту, или иную, её реализацию. Цитата(petrov @ Apr 21 2018, 12:44)  ...а вполне определённая штука с разработанной теорией, которая работает наилучшим образом,.. Дык, теория должна работать на результат, а не результат - на теорию.  А требования могут быть разными. Цитата(petrov @ Apr 21 2018, 12:44)  ...в которой важно именно количество интеграторов в петле, которая сама по себе фильтрует очень хорошо, характеристики которой в принципе практически невозможно улучшить никакими КИХ фильтрами. Простите, разве теория что-то говорит о необходимости интеграторов в петле? Мне казалось, что теория допускает как их присутствие, так и полное отсутствие. Цитата(petrov @ Apr 21 2018, 12:44)  ...Инженер может многого не знать, но должен интуитивно определять, что нужно взять и изучить, а не изобретать кривой убогий велосипед, который он делал. Ну, раз так, то без обид. Инженер должен чётко понимать задачу, и находить её решения, вместо того, чтоб тупо ездить на велосипеде, созданном ещё во времена ламповой техники. -------------------------------------- Цитата(Acvarif @ Apr 21 2018, 18:19)  Спасибо. Полезный документ. Стало совсем все плохо, поскольку я еще долго не смогу понять почему у меня ФАПЧ с петлевым КИХ таки работает. Интереснее будет вопрос: почему она не должна работать?  (Небольшой секрет: для петли АР больше подходят т.н. "минимально-фазовые" КИХ-фильтры, обладающие меньшей групповой задержкой, чем "симметричные". В Матлабе есть средства для их расчёта.) Цитата(Acvarif @ Apr 21 2018, 18:19)  Несущая 36 000 Гц. ФАПЧ устойчиво работает в полосе +- 60 Гц. Если больше все разваливается. Какую максимальную полосу захвата для этой несущей может обеспечить ФАПЧ сделанная по всем правилам? Что значит "разваливается"? Да, определитесь с понятиями "полоса захвата" и "полоса слежения". Это существенно разные вещи. И постарайтесь описать сигнал.
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Apr 24 2018, 10:34
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(Stanislav @ Apr 24 2018, 01:52)  Простите, разве теория что-то говорит о необходимости интеграторов в петле? Мне казалось, что теория допускает как их присутствие, так и полное отсутствие. Действительно казалось, не допускает. Цитата(Stanislav @ Apr 24 2018, 01:52)  вместо того, чтоб тупо ездить на велосипеде, созданном ещё во времена ламповой техники. Время не влияет, в том-то и беда, что даже тупо ездить ещё не научились.
|
|
|
|
|
Apr 24 2018, 18:59
|
ʕʘ̅͜ʘ̅ʔ
    
Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691

|
У фапч без интегрирующих звеньев в петлевом фильтре всегда будет остаточная ошибка. Это легко проверяется как теоретическими выкладками, так и моделированием. Если по каким-то причинам нужна петля с такими странными свойствами, то нет никакого смысла ставить КИХ в качестве ПФ. Достаточно уменьшить усиление в петле: просто умножать сигнал ошибки на коэффициент. КИХ в качестве ПФ будет дополнительно вносить задержку в цепь регулирования, тем самым уменьшать полосу петли, практически ничего не давая взамен.
Для расчета ПФ цифровой фапч порекомендую книгу:
Справочник. – М.И. Жодзишский, Р.Б. Мазепа, Е.П. Овсянников и др. / Под редакцией М.И. Жодзишского. – М.: Радио и связь, 1990. – 208 с. – ISBN 5-256-00671-1
Там довольно подробно рассказано, как рассчитывать, как проверять и какие характеристики снимать. Один раз потренируетесь, и больше вопросов возникать не будет.
Успехов.
UPD1: По ссылке в первом же посте все посчитанно и нарисовано. UPD2: "Реально работающие проекты на ПЛИС", как и другие реально работающие проекты с КИХ на месте ПФ без каких-либо характеристик - это кустарный уровень, конечно. UPD3: Thermit все здраво распедалил в своей расчетно-пояснительной записке.
|
|
|
|
|
Apr 24 2018, 21:20
|
Знающий
   
Группа: Участник
Сообщений: 781
Регистрация: 3-08-09
Пользователь №: 51 730

|
Цитата(Fat Robot @ Apr 24 2018, 21:59)  Для расчета ПФ цифровой фапч порекомендую книгу:
Справочник. – М.И. Жодзишский, Р.Б. Мазепа, Е.П. Овсянников и др. / Под редакцией М.И. Жодзишского. – М.: Радио и связь, 1990. – 208 с. – ISBN 5-256-00671-1 Не. Это одна из великого множества книг, от которых нужно держаться как можно дальше. Особенно неокрепшим инженерным умам. Плохая книшка. Фу.
|
|
|
|
|
Apr 25 2018, 18:37
|
Знающий
   
Группа: Участник
Сообщений: 998
Регистрация: 27-08-08
Пользователь №: 39 850

|
Цитата(thermit @ Apr 25 2018, 00:20)  Дык, теория должна работать на результат, а не результат - на теорию. Именно так. В свое время потоковый БПФ на ПЛИС делал быстрее чем ФАПЧ в Матлаб. А там тоже теория, комплексные числа... Запутанная эта теория так же как и сама петля. Конца края нет. Не дает покоя один момент. Как работает петля в случае фазоманипулированного сигнала, например BPSK? При смене фазы несущей частоты на входе фазового детектора будут два сигнала с расстройкой по фазе на 180 град +- собств. расстройка. Как при этом должна вести себя ФАПЧ? В примерах на симулинке наблюдал, что все работает, все регулируется. Цитата Регулировочную характеристику и расчет/моделирование эквивалентной полосы для вашей петли покажите, пожалуйста. Здесь очередная попытка в Матлаб коде для несущей 8 мГц. Хотя в конечном итоге нужно опуститься на 36 кГц CODE %% Модель цифровой ФАПЧ
% количество выборок на модель N= 300000; % Гц частота сигнала fref fref = 8e6; % Гц частота выборок fs= 96e6; % начальная ошибка NCO Гц fnco = fref+ferr ferr = -800; % натуральная частота Гц fn = 5000; % период выборки сек Ts = 1/fs; % индексы времени модели n= 0:N-1; % матрица времени модели мсек t= n*Ts*1000; % циклы начальной фазы опорного сигнала init_phase = 0.7; % циклы фазы опорного сигнала ref_phase = fref*n*Ts + init_phase; % циклы фазы опорн. сигн. по mod 1 ref_phase = mod(ref_phase,1); % коэффициент усиления NCO (по факту минимальный шаг соотв. разр. сетке) Knco= 1/4096; % коэфф. усил. фазового детектора 1/cycles KP = 2; % демпинг фактор zeta = 1.0; % круговая натуральная частота rad/s fn = ?n/(2?) wn = 2*pi*fn; % пропорциональный коэффициент петлевого фильтра KL= 2*zeta*wn*Ts/(KP*Knco); % интегральный коэффициент петлевого фильтра KI= wn^2*Ts^2/(KP*Knco); % распечатка fprintf('Пропорц. коэфф KL %d\n', KL); fprintf('Интегр. коэфф KI %d\n', KI);
% Расчет коэффициентов передаточной функции с замкнутого контура u / ref_phase % CL(z) = (b0 + b1z^-1)/(a2Z^-2 + a1z^-1 + 1) b0= KP*KL*Knco; b1= KP*Knco*(KI - KL); a1= KP*KL*Knco - 2; a2= 1 + KP*Knco*(KI - KL); % коэффициенты петлевого фильтра (numerator denominator) b= [b0 b1]; a= [1 a1 a2];
% начальная частота NCO Гц fnco = fref+ferr; % распечатка fprintf('начальная частота NCO Гц %d\n', fnco);
u(1) = 0; ur(1) = 0; int(1)= 0; % начальная фазовая ошибка phase_error(1) = -init_phase; % начальная значение на входе NCO vtune(1) = -init_phase*KL; % решение разностных уравнений for n= 2:N; % NCO x = fnco*Ts + u(n-1) + vtune(n-1)*Knco; % циклы NCO фазы u(n) = mod(x,1); % циклы NCO фазы по mod 1 s = sin(2*pi*u(n-1)); % NCO sin выход y(n)= round(2^15*s)/2^15; % квантованный выход синуса % фазовый детектор pe= ref_phase(n-1) - u(n-1); % ошибка фазы pe= 2*(mod(pe+1/2,1) - 1/2); % обертка, если пересечение фаз +/- 1/2 цикла phase_error(n) = pe; % Петлевой фильтр int(n) = KI*pe + int(n-1); % интегратор vtune(n) = int(n) + KL*pe; % выход петлевого фильтра xr = fref*Ts + ur(n-1); % циклы fref ur(n) = mod(xr,1); % циклы fref фазы по mod 1 sr = sin(2*pi*ur(n-1)); % sin выход fref yr(n)= round(2^15*sr)/2^15; % квантованный выход fref
end
%% Графика
% фазовая ошибка с фазового детектора figure plot(t,phase_error, 'b-', 'LineWidth', 2),grid axis([0 3 -1 1]) xlabel('t (ms)'),ylabel('phase_error'),title('фазовая ошибка с фаз. детектора')
% выход VCO figure plot(t,vtune, 'r-', 'LineWidth', 2),grid axis([0 3 -1 1]) xlabel('t (ms)'),ylabel('vtune'),title('выходной сигнал петлевого фильтра')
figure psd(y(11000:end),2^14,fs/1e6) axis([7.95 8.05 -80 40]),xlabel('MHz'),title('Спектр выхода NCO')
% % Частотная характеристика замкнутого контура % figure % u = 0:.1:.9; % f= 10* 10 .^u; % f = [f 10*f 100*f 1000*f]; % z = exp(j*2*pi*f/fs); % CL= (b0 + b1*z.^-1)./(1 + a1*z.^-1 + a2*z.^-2); % CL_dB= 20*log10(abs(CL)); % semilogx(f,CL_dB),grid % xlabel('Hz'),ylabel('CL(z) dB'),title('Частотная характеристика замкнутого контура')
% sin NCO и fref figure; plot(t, y, 'b-', 'LineWidth', 2); hold on; grid on; plot(t, yr, 'r-', 'LineWidth', 2); hold on hold off;
Сообщение отредактировал Acvarif - Apr 25 2018, 18:49
|
|
|
|
|
Apr 26 2018, 05:15
|
Знающий
   
Группа: Участник
Сообщений: 998
Регистрация: 27-08-08
Пользователь №: 39 850

|
Цитата(thermit @ Apr 26 2018, 06:33)  Фап обрабатывает не сигнал, а его фазу. В этой связи совершенно пофиг, какая там модуляция. Это понятно. Когда на входе ФАПЧ 2 противофазных сигнала, пусть одинаковой частоты, как он меряет фазовую расстройку? Я имел ввиду это https://electronix.ru/forum/index.php?showtopic=146727 с картинками Thus, the Costas-loop PLL filter tracks the error signal which is proportional to sin(2(φ-φ')).φ – phase offset introduced by the channelLet the voltage controlled oscillator (with phase offset φ') output be given by,По формулам ФАП вычисляет сигнал ошибки между φ-φ' Тогда действительно пофиг. Но как-то не получается представить что такое эти φ и φ'... При построении ФАПЧ в цифровом бинарном виде в качестве фазового детектора обычно используется элемент XOR (исключающее или) При BPSK модуляции получается такой вариант не будет работать. В чем в этом случае выход?
Сообщение отредактировал Acvarif - Apr 26 2018, 06:00
|
|
|
|
Сообщений в этой теме
Acvarif Расчет петлевого фильтра ФАПЧ Apr 20 2018, 18:00 petrov Цитата(Acvarif @ Apr 20 2018, 21:00) В ка... Apr 20 2018, 18:55 Acvarif Цитата(petrov @ Apr 20 2018, 21:55) Это н... Apr 20 2018, 20:00  petrov Цитата(Acvarif @ Apr 20 2018, 23:00) http... Apr 20 2018, 20:22 Stanislav Цитата(petrov @ Apr 20 2018, 21:55) Это н... Apr 21 2018, 02:02  Acvarif Цитата(Stanislav @ Apr 21 2018, 05:02) По... Apr 21 2018, 04:50 petrov Потому что ФАПЧ это не просто какие-то КИХ и БИХ, ... Apr 21 2018, 09:44 thermit Тема периодически всплывает. Apr 21 2018, 14:27 Acvarif Цитата(thermit @ Apr 21 2018, 17:27) Тема... Apr 21 2018, 15:19  thermit Цитата(Acvarif @ Apr 21 2018, 18:19) Спас... Apr 21 2018, 16:56 blackfin Цитата(thermit @ Apr 21 2018, 17:27) Тема... Apr 24 2018, 19:35    Tpeck Цитата(thermit @ Apr 25 2018, 00:20) Не. ... Jun 16 2018, 08:27  Stanislav Цитата(petrov @ Apr 24 2018, 13:34) Дейст... Apr 24 2018, 22:38   quato_a Цитата(Stanislav @ Apr 25 2018, 01:38) А ... Apr 25 2018, 06:58    blackfin Цитата(quato_a @ Apr 25 2018, 09:58) Прив... Apr 25 2018, 07:03    Stanislav Цитата(quato_a @ Apr 25 2018, 09:58) Прив... Apr 27 2018, 19:27     quato_a Цитата(Stanislav @ Apr 27 2018, 22:27) Ес... Apr 28 2018, 06:45      Acvarif Странно, почему в сети столько примеров ФАПЧ с FIR... Apr 28 2018, 08:32       thermit Цитата(Acvarif @ Apr 28 2018, 11:32) А во... Apr 28 2018, 09:32        Acvarif Цитата(thermit @ Apr 28 2018, 12:32) Прек... Apr 28 2018, 10:10         thermit Цитата(Acvarif @ Apr 28 2018, 13:10) В ка... Apr 28 2018, 10:23      Stanislav Цитата(quato_a @ Apr 28 2018, 09:45) Если... May 7 2018, 22:33       petrov Цитата(Stanislav @ May 8 2018, 01:33) Вы ... May 8 2018, 11:48        Stanislav Цитата(petrov @ May 8 2018, 14:48) Этот р... May 14 2018, 00:36         petrov Цитата(Stanislav @ May 14 2018, 03:36) - ... May 14 2018, 11:22          Acvarif Цитата(petrov @ May 14 2018, 14:22) Напри... May 14 2018, 13:07           petrov Цитата(Acvarif @ May 14 2018, 16:07) Разв... May 14 2018, 13:32            Acvarif Цитата(petrov @ May 14 2018, 16:32) В ого... May 14 2018, 16:22           quato_a Цитата(Acvarif @ May 14 2018, 16:07) Я не... May 15 2018, 05:49          Stanislav Цитата(petrov @ May 14 2018, 14:22) А гов... May 30 2018, 00:23           petrov Цитата(Stanislav @ May 30 2018, 03:23) ..... May 30 2018, 11:07            Stanislav Цитата(petrov @ May 30 2018, 14:07) Вы пр... Jun 11 2018, 22:57             petrov Цитата(Stanislav @ Jun 12 2018, 01:57) ..... Jun 12 2018, 09:23              Stanislav Цитата(petrov @ Jun 12 2018, 12:23) В наш... Jun 14 2018, 21:42               petrov Цитата(Stanislav @ Jun 15 2018, 00:42) ..... Jun 15 2018, 09:51                _Anatoliy Цитата(petrov @ Jun 15 2018, 12:51)
Алек... Jun 16 2018, 12:57               тау Цитата(Stanislav @ Jun 15 2018, 01:42)
... Jun 15 2018, 20:48             Grizzzly Цитата(Stanislav @ Jun 12 2018, 01:57) Ге... Jun 12 2018, 16:43           thermit Цитата(Stanislav @ May 30 2018, 03:23) ..... May 30 2018, 11:25       quato_a Цитата(Stanislav @ May 8 2018, 01:33) Цит... May 9 2018, 16:50        Acvarif Поскольку не являюсь спецом в теории сигналов то н... May 11 2018, 07:45         petrov Цитата(Acvarif @ May 11 2018, 10:45) Как ... May 11 2018, 07:56          Acvarif Цитата(petrov @ May 11 2018, 10:56) У вас... May 14 2018, 08:11           PavPro Цитата(Acvarif @ May 14 2018, 11:11) Посм... May 14 2018, 17:27            Acvarif Цитата(PavPro @ May 14 2018, 20:27) Таких... May 15 2018, 07:31             quato_a Цитата(Acvarif @ May 15 2018, 10:31) Спас... May 15 2018, 08:16              Acvarif Цитата(quato_a @ May 15 2018, 11:16) RF A... May 15 2018, 09:54               quato_a Цитата(Acvarif @ May 15 2018, 12:54) Спас... May 15 2018, 10:15   petrov Цитата(Stanislav @ Apr 25 2018, 01:38) То... Apr 25 2018, 08:23    _Anatoliy Цитата(petrov @ Apr 25 2018, 11:23) Сущес... Apr 25 2018, 08:39     petrov Цитата(_Anatoliy @ Apr 25 2018, 11:39) Ко... Apr 25 2018, 09:02      _Anatoliy Цитата(petrov @ Apr 25 2018, 12:02) Ну и ... Apr 25 2018, 09:52       petrov Цитата(_Anatoliy @ Apr 25 2018, 12:52) А ... Apr 25 2018, 10:26    Stanislav Цитата(petrov @ Apr 25 2018, 11:23) Если ... Apr 27 2018, 21:14     petrov Цитата(Stanislav @ Apr 28 2018, 00:14) ФА... Apr 28 2018, 08:54      Stanislav Цитата(petrov @ Apr 28 2018, 11:54) Все л... May 8 2018, 00:14       thermit Цитата(Stanislav @ May 8 2018, 03:14) Ска... May 8 2018, 13:02   Fat Robot Регулировочную характеристику и расчет/моделирован... Apr 25 2018, 10:25 thermit Станислав, есть встречное предложение:
как апологе... Apr 27 2018, 21:27 Stanislav Цитата(thermit @ Apr 28 2018, 00:27) Стан... Apr 27 2018, 22:48  thermit Цитата(Stanislav @ Apr 28 2018, 01:48) Ус... Apr 28 2018, 05:33   Stanislav Цитата(thermit @ Apr 28 2018, 08:33) Нет ... Apr 29 2018, 00:43    thermit Цитата(Stanislav @ Apr 29 2018, 03:43) Ка... Apr 29 2018, 04:11 petrov Acvarif
НаУчитесь вопросы формулировать, вникать ... May 14 2018, 19:56
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|