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

 
 
 
Reply to this topicStart new topic
> Модель ФАПЧ matlab
go2winner
сообщение Jul 28 2016, 12:13
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 78
Регистрация: 19-10-15
Пользователь №: 88 917



Доброго времени суток.
На основе литературы я составил для начало простую модель ФАПЧ на нулевой частоте, зависающую только от расстройки ( разности частот генераторов )

Написал простую модель на matlab для закрепления теории и дальнейшего усложнения (см. приложение). Коротко о модели: модель построена на нулевой частоте и зависит только от разности частот и полосы удержания (входные параметры). При исследовании полос удержания и захвата появляется ошибка следующего вида.
Исследую полосу удержания. Начальные условия - частоты генераторов равны (ГУН и эталонного т.е. расстройка по частоте 0 ). Меняю расстройку от малых значений до больших , пока система не выйдет из синхронизма. На графике 1 проиллюстрированы мгновенные значения частоты. Видно, что есть ошибка. Система вошла в синхроннизм, но графики частот не совпадают. и отличаются на некий коэффициент (наклон прямой на 2 ).

Аналогичная картина, при исследовании полосы захвата. Меняя расстройку от больших к малым значениям , ищу точку входа системы в синхронизм. По графикам (см. прил. 2) частоты опять различны...и снова та же ошибка..если построить кривую с другим наклоном, то все хорошо . Откуда берется эта другая кривая....в идеале , как я думаю, около отсчета 8*10^4 частоты станут равными (синий график и красный) и после переходного процесса система в этой точке должна войти в синхронизм, а она входит в непонятной мне точке и выходит , хотя я моделирую до расстройки 0 , т.е. еще в полосе удержания.


Мне не понятно, где я так косячу...может кто-то заметит ошибку?

код .....Комменты есть...
Код
%>   @brief     ФАПЧ с передаточной характеристикой фильтра равной 1
%>   @param     [in] - inputArray, разность частот в герцах, вектор
%>   @param     [in] - pass      , полоса удержания системы ФАПЧ в герцах
%>   @details   тестовая программная модель исследования ФАПЧ первого
%>              порядка. Допущены следующие упрощения. Коэффициент передачи
%>              фильтра равен 1, ФД реализован без перемножения
%>   @return    frq -   частота круговая в радианах
%>   @return    nco -   фаза ГУН
%>   @return    control - выход с управляющего элемента
%>   @return    filter - вместо фильтра усилитель компенсирующий 1/2 ФД
%>   @note      Пример вызова
%>              [frq,nco, control, filter, match] = test_frst (ones( 1 , 80000) * 502, 7);


function  [frq,control, filter, match] = test_frst_p ( inputArray, pass)

Fs  = 1E4;          % частота дискретизации
Ts  = 1/Fs;         % период дискретизации
Fnco= 0;            % Частота Генератора

% коэффициенты
Kf = 2;                   % Коэффициент передачи ФД
Scu = ( pass )*2*pi   % Коэфициент передачи управляющего элемента
F = Ts/2;              % Коэфф.интегратора

% Начальные условия
phaseDetector(1) = 0;
filter(1) = 0;
control(1) = 0;
match(1) = 0;
%

for n = 2 : length( inputArray )
   phaseDetector(n) = Kf* 1/2 * cos ( 2*pi*inputArray(n)*(n)*Ts - control( n -1 ) ); %фазовый детектор
   filter(n)       = phaseDetector(n);                           %фильтр
   control(n)      = F*Scu*2*( filter(n)  )+control(n-1);  % интегратор (управляющий элемент)
   %------------ для графиков переменные
   match(n)        = 2*pi*inputArray(n)*(n)*Ts - control(n -1); % разность частот
   %эталонного и частоты генератора + управляющего расстройка
   frq(n) =  Fnco*2*pi + Scu*filter (n);   %частота ГУН
end


вызов функции в командной строке:
Код
[frq, control, filter, match] = test_frst_p ( -10:0.0001:0, 2 );
% -10:0.0001:0 - вектор частот в герцах
%2 полоса в герцах



т.е. ошибка такая. Система входит синхронизм не в тех точках и так же выходит .....
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
petrov
сообщение Jul 28 2016, 13:38
Сообщение #2


Гуру
******

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



Цитата(go2winner @ Jul 28 2016, 15:13) *
Видно, что есть ошибка. Система вошла в синхроннизм, но графики частот не совпадают. и отличаются на некий коэффициент (наклон прямой на 2 ).


Не очень наглядно, в матлаб получше инструменты есть. Если ФАПЧ 1-го порядка с одним интегратором, то она без ошибки может отслеживать лишь ступенчатое воздействие, т. е. скачёк фазы, скачёк частоты - линейное воздействие будет с константной ошибкой, изменение частоты - квадратичное воздействие будет отслеживаться c линейной ошибкой.
Go to the top of the page
 
+Quote Post
jorikdima
сообщение Jul 28 2016, 17:24
Сообщение #3


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Цитата(go2winner @ Jul 28 2016, 05:13) *
Написал простую модель на matlab для закрепления теории и дальнейшего усложнения (см. приложение). Коротко о модели: модель построена на нулевой частоте и зависит только от разности частот и полосы удержания (входные параметры). При исследовании полос удержания и захвата появляется ошибка следующего вида.
Исследую полосу удержания. Начальные условия - частоты генераторов равны (ГУН и эталонного т.е. расстройка по частоте 0 ). Меняю расстройку от малых значений до больших , пока система не выйдет из синхронизма. На графике 1 проиллюстрированы мгновенные значения частоты. Видно, что есть ошибка. Система вошла в синхроннизм, но графики частот не совпадают. и отличаются на некий коэффициент (наклон прямой на 2 ).

лень код смотреть.
Порядок петли какой?
Разберитесь сначала почему есть ошибка при наличии синхронизации. Уберите движение частоты, пусть будет статический режим, но введите начальную ошибку (по фазе только, если ФАПЧ 1 го порядка, по частоте, если 2го). Через время, определяемой полосой должен настать синхронизм. Оценка частоты в петле совпадает с той частотой что в сигнале? Если нет - проблема. Что при этом в дискриминаторе? Должен быть 0.

Апдейт.
Судя по комментариям ФАПЧ первого порядка. Она следит за частотой с постоянной ошибкой. Она не отслеживает частоту, она отслеживает фазу.
Go to the top of the page
 
+Quote Post

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

 


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


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