реклама на сайте
подробности

 
 
> Расчет петлевого фильтра ФАПЧ
Acvarif
сообщение Apr 20 2018, 18:00
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 998
Регистрация: 27-08-08
Пользователь №: 39 850



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

Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Stanislav
сообщение Apr 23 2018, 22:52
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 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) *
...а вполне определённая штука с разработанной теорией, которая работает наилучшим образом,..
Дык, теория должна работать на результат, а не результат - на теорию. wink.gif
А требования могут быть разными.

Цитата(petrov @ Apr 21 2018, 12:44) *
...в которой важно именно количество интеграторов в петле, которая сама по себе фильтрует очень хорошо, характеристики которой в принципе практически невозможно улучшить никакими КИХ фильтрами.
Простите, разве теория что-то говорит о необходимости интеграторов в петле?
Мне казалось, что теория допускает как их присутствие, так и полное отсутствие.

Цитата(petrov @ Apr 21 2018, 12:44) *
...Инженер может многого не знать, но должен интуитивно определять, что нужно взять и изучить, а не изобретать кривой убогий велосипед, который он делал.
Ну, раз так, то без обид.
Инженер должен чётко понимать задачу, и находить её решения, вместо того, чтоб тупо ездить на велосипеде, созданном ещё во времена ламповой техники.


--------------------------------------

Цитата(Acvarif @ Apr 21 2018, 18:19) *
Спасибо. Полезный документ.
Стало совсем все плохо, поскольку я еще долго не смогу понять почему у меня ФАПЧ с петлевым КИХ таки работает.
Интереснее будет вопрос: почему она не должна работать? sm.gif
(Небольшой секрет: для петли АР больше подходят т.н. "минимально-фазовые" КИХ-фильтры, обладающие меньшей групповой задержкой, чем "симметричные". В Матлабе есть средства для их расчёта.)

Цитата(Acvarif @ Apr 21 2018, 18:19) *
Несущая 36 000 Гц. ФАПЧ устойчиво работает в полосе +- 60 Гц. Если больше все разваливается.
Какую максимальную полосу захвата для этой несущей может обеспечить ФАПЧ сделанная по всем правилам?
Что значит "разваливается"?

Да, определитесь с понятиями "полоса захвата" и "полоса слежения". Это существенно разные вещи.
И постарайтесь описать сигнал.


--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
Go to the top of the page
 
+Quote Post
petrov
сообщение Apr 24 2018, 10:34
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(Stanislav @ Apr 24 2018, 01:52) *
Простите, разве теория что-то говорит о необходимости интеграторов в петле?
Мне казалось, что теория допускает как их присутствие, так и полное отсутствие.


Действительно казалось, не допускает.


Цитата(Stanislav @ Apr 24 2018, 01:52) *
вместо того, чтоб тупо ездить на велосипеде, созданном ещё во времена ламповой техники.


Время не влияет, в том-то и беда, что даже тупо ездить ещё не научились.
Go to the top of the page
 
+Quote Post
Fat Robot
сообщение Apr 24 2018, 18:59
Сообщение #4


ʕʘ̅͜ʘ̅ʔ
*****

Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691



У фапч без интегрирующих звеньев в петлевом фильтре всегда будет остаточная ошибка. Это легко проверяется как теоретическими выкладками, так и моделированием. Если по каким-то причинам нужна петля с такими странными свойствами, то нет никакого смысла ставить КИХ в качестве ПФ. Достаточно уменьшить усиление в петле: просто умножать сигнал ошибки на коэффициент. КИХ в качестве ПФ будет дополнительно вносить задержку в цепь регулирования, тем самым уменьшать полосу петли, практически ничего не давая взамен.

Для расчета ПФ цифровой фапч порекомендую книгу:

Справочник. – М.И. Жодзишский, Р.Б. Мазепа, Е.П. Овсянников и др. / Под редакцией М.И. Жодзишского. – М.: Радио и связь, 1990. – 208 с. – ISBN 5-256-00671-1

Там довольно подробно рассказано, как рассчитывать, как проверять и какие характеристики снимать. Один раз потренируетесь, и больше вопросов возникать не будет.

Успехов.

UPD1: По ссылке в первом же посте все посчитанно и нарисовано.
UPD2: "Реально работающие проекты на ПЛИС", как и другие реально работающие проекты с КИХ на месте ПФ без каких-либо характеристик - это кустарный уровень, конечно.
UPD3: Thermit все здраво распедалил в своей расчетно-пояснительной записке.
Go to the top of the page
 
+Quote Post
thermit
сообщение Apr 24 2018, 21:20
Сообщение #5


Знающий
****

Группа: Участник
Сообщений: 781
Регистрация: 3-08-09
Пользователь №: 51 730



Цитата(Fat Robot @ Apr 24 2018, 21:59) *
Для расчета ПФ цифровой фапч порекомендую книгу:

Справочник. – М.И. Жодзишский, Р.Б. Мазепа, Е.П. Овсянников и др. / Под редакцией М.И. Жодзишского. – М.: Радио и связь, 1990. – 208 с. – ISBN 5-256-00671-1


Не. Это одна из великого множества книг, от которых нужно держаться как можно дальше. Особенно неокрепшим инженерным умам.
Плохая книшка. Фу.
Go to the top of the page
 
+Quote Post
Acvarif
сообщение Apr 25 2018, 18:37
Сообщение #6


Знающий
****

Группа: Участник
Сообщений: 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
Go to the top of the page
 
+Quote Post
thermit
сообщение Apr 26 2018, 03:33
Сообщение #7


Знающий
****

Группа: Участник
Сообщений: 781
Регистрация: 3-08-09
Пользователь №: 51 730



Цитата(Acvarif @ Apr 25 2018, 21:37) *
Не дает покоя один момент.
Как работает петля в случае фазоманипулированного сигнала, например BPSK?
При смене фазы несущей частоты на входе фазового детектора будут два сигнала с расстройкой по фазе на 180 град +- собств. расстройка.
Как при этом должна вести себя ФАПЧ?


Фап обрабатывает не сигнал, а его фазу. В этой связи совершенно пофиг, какая там модуляция.
Go to the top of the page
 
+Quote Post
Acvarif
сообщение Apr 26 2018, 05:15
Сообщение #8


Знающий
****

Группа: Участник
Сообщений: 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 channel
Let the voltage controlled oscillator (with phase offset φ') output
be given by,

По формулам ФАП вычисляет сигнал ошибки между φ-φ'
Тогда действительно пофиг.
Но как-то не получается представить что такое эти φ и φ'...
При построении ФАПЧ в цифровом бинарном виде в качестве фазового детектора обычно используется элемент XOR (исключающее или)
При BPSK модуляции получается такой вариант не будет работать. В чем в этом случае выход?

Сообщение отредактировал Acvarif - Apr 26 2018, 06:00
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- 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


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st June 2025 - 05:13
Рейтинг@Mail.ru


Страница сгенерированна за 0.01581 секунд с 7
ELECTRONIX ©2004-2016