Дискриминатор частоты с временным сдвигом квадратурных компонент — различия между версиями

Материал из SRNS
Перейти к: навигация, поиск
(Сравнение с другими ЧД)
 
(не показаны 43 промежуточные версии 2 участников)
Строка 1: Строка 1:
=Описание дискриминатора=
+
{{TOCright}}
Дискриминатор использует отсчеты коррелятора с текущего и предыдущего такта работы. <br />
+
  
<math>u_{d \omega } = I_k(\widetilde{\tau}_k,\widetilde{\omega}_{d\,k})Q_{k-1}(\widetilde{\tau}_{k-1},\widetilde{\omega}_{d\,k-1}) - Q_k(\widetilde{\tau}_k,\widetilde{\omega}_{d\,k})I_{k-1}(\widetilde{\tau}_{k-1},\widetilde{\omega}_{d\,k-1})</math>,
+
Дискриминатор частоты '''с временным сдвигом квадратурных компонент''' известен в англоязычной литературе как cross-product дискриминатор<ref name="NavipediaFLL">http://www.navipedia.net/index.php/Frequency_Lock_Loop_(FLL)</ref>.
 +
 
 +
Дискриминатор использует отсчеты коррелятора с текущего и предыдущего такта работы: <br />
 +
 
 +
:<math>u_{D \omega, k} = I_k(\widetilde{\tau}_k,\widetilde{\omega}_{d\,k})Q_{k-1}(\widetilde{\tau}_{k-1},\widetilde{\omega}_{d\,k-1}) - Q_k(\widetilde{\tau}_k,\widetilde{\omega}_{d\,k})I_{k-1}(\widetilde{\tau}_{k-1},\widetilde{\omega}_{d\,k-1})</math>,
  
 
где <br />
 
где <br />
<math>I_k(\widetilde{\tau}_k,\widetilde{\omega}_{d\,k}) = \sum_{l=1}^{L}y(t_{k,l})h_{c}(t_{k,l}-\widetilde{\tau}_k)\mbox{cos}(\omega_0t_{k,l}+\widetilde{\omega}_{d\,k}(l-1)T_d))</math>,<br />
+
:<math>I_k(\widetilde{\tau}_k,\widetilde{\omega}_{d\,k}) = \sum_{l=1}^{L}y(t_{k,l})h_{c}(t_{k,l}-\widetilde{\tau}_k)\mbox{cos}(\omega_0t_{k,l}+\widetilde{\omega}_{d\,k}(l-1)T_d))</math>,<br />
<math>Q_k(\widetilde{\tau}_k,\widetilde{\omega}_{d\,k}) = \sum_{l=1}^{L}y(t_{k,l})h_{c}(t_{k,l}-\widetilde{\tau}_k)\mbox{sin}(\omega_0t_{k,l}+\widetilde{\omega}_{d\,k}(l-1)T_d))</math>.<br />
+
:<math>Q_k(\widetilde{\tau}_k,\widetilde{\omega}_{d\,k}) = \sum_{l=1}^{L}y(t_{k,l})h_{c}(t_{k,l}-\widetilde{\tau}_k)\mbox{sin}(\omega_0t_{k,l}+\widetilde{\omega}_{d\,k}(l-1)T_d))</math>,<br />
 +
 
 +
:<math>I_{k-1}(\widetilde{\tau}_{k-1},\widetilde{\omega}_{d\,{k-1}}) = \sum_{l=1}^{L}y(t_{k-1,l})h_{c}(t_{k-1,l}-\widetilde{\tau}_{k-1})\mbox{cos}(\omega_0t_{k-1,l}+\widetilde{\omega}_{d\,k-1}(l-1)T_d))</math>,<br />
 +
:<math>Q_{k-1}(\widetilde{\tau}_{k-1},\widetilde{\omega}_{d\,k-1}) = \sum_{l=1}^{L}y(t_{k-1,l})h_{c}(t_{k-1,l}-\widetilde{\tau}_{k-1})\mbox{sin}(\omega_0t_{k-1,l}+\widetilde{\omega}_{d\,k-1}(l-1)T_d))</math>.<br />
 +
 
 +
== Особенности работы ==
 +
[[Файл:20151028_Про перекрытие.png|мини|справа|600пкс|Варианты работы дискриминатора]]
 +
 
 +
Возможны различные реализация дискриминатора. На рисунке представлено два варианта, условно названных "Перекрытие" и "Перекрытие отсутствует". Поясним рисунок.
 +
 
 +
Пусть в некоторый момент времени <math>t_{k}</math> доступны отсчеты с выхода коррелятора <math>I_k, Q_k</math> и отсчеты из предыдущей эпохи <math>I_{k-1}, Q_{k-1}</math>. На их основе можно сформировать отсчет дискриминатора <math>u_{D\omega,k}</math>. Далее возможны варианты.
 +
 
 +
В случае, если работа идет с "перекрытием", следующий отсчет дискриминатора <math>u_{D\omega,k+1}</math> будет сформирован из новых отсчетов коррелятора <math>I_{k+1}, Q_{k+1}</math> и уже использованных в предыдущем шаге <math>I_k, Q_k</math>. Таким образом, каждое вычисление отсчета дискриминатора использует отсчеты коррелятора, уже использованные в расчете предыдущего значения дискриминатора. Поэтому шум выхода дискриминатора в данном случае оказывается коррелированным, а его СПМ отличается от СПМ белого шума.
 +
 
 +
Если дискриминатор работает без "перекрытия", для расчета соседних значений выхода дискриминатора каждый раз используются разные корреляционные суммы. В этом случае, шум дискриминатора будет некорреллированным с равномерной СПМ. Однако, темп работы такого дискриминатора ниже в 2 раза: ему нужно "дождаться" следующей пары отсчетов.
 +
 
 +
Для дискриминатора "с перекрытием" использование статистического эквивалента вида
 +
 
 +
:<math>u_{D\omega,k} = S_{D}(\omega_k - \widetilde{\omega_k}) + n_{D,k}</math>, где <math>n_{D,k} \sim N(0, D_\eta)</math>
 +
 
 +
при моделировании следящих систем недопустимо, т.к. он не отражает корреляционных свойств. Следует воспользоваться статистическими эквивалентами коррелятора.
 +
 
 +
<br clear="all" />
  
<math>I_{k-1}(\widetilde{\tau}_{k-1},\widetilde{\omega}_{d\,{k-1}}) = \sum_{l=1}^{L}y(t_{k-1,l})h_{c}(t_{k-1,l}-\widetilde{\tau}_{k-1})\mbox{cos}(\omega_0t_{k-1,l}+\widetilde{\omega}_{d\,k-1}(l-1)T_d))</math>,<br />
 
<math>Q_{k-1}(\widetilde{\tau}_{k-1},\widetilde{\omega}_{d\,k-1}) = \sum_{l=1}^{L}y(t_{k-1,l})h_{c}(t_{k-1,l}-\widetilde{\tau}_{k-1})\mbox{sin}(\omega_0t_{k-1,l}+\widetilde{\omega}_{d\,k-1}(l-1)T_d))</math>.<br />
 
 
== Дискриминационная характеристика ==
 
== Дискриминационная характеристика ==
  
 
Сделано допущение, что <math>\varepsilon_{\omega,k-1} = \varepsilon_{\omega,k}</math>.
 
Сделано допущение, что <math>\varepsilon_{\omega,k-1} = \varepsilon_{\omega,k}</math>.
  
<math>U(\varepsilon_\omega) = A_{IQ}^2\rho(\varepsilon_{\tau,k})\rho(\varepsilon_{\tau,k-1})\mbox{sinc}^2(\varepsilon_{\omega,k-1}T/2)\mbox{sin}(\varepsilon_{\omega,k-1}T),</math>
+
:<math>U(\varepsilon_\omega) = A_{IQ}^2\rho(\varepsilon_{\tau,k})\rho(\varepsilon_{\tau,k-1})\mbox{sinc}^2(\varepsilon_{\omega,k-1}T/2)\mbox{sin}(\varepsilon_{\omega,k-1}T),</math>
  
 
где <math>A_{IQ} = \frac{AL}{2}</math>, <math>A</math> - амплитуда сигнала <math>y(t_{k,l})</math>, <math>L</math> - количество отчетов, накапливаемых в корреляторе, <math>\varepsilon</math> - разность истинного и опорного параметров.  
 
где <math>A_{IQ} = \frac{AL}{2}</math>, <math>A</math> - амплитуда сигнала <math>y(t_{k,l})</math>, <math>L</math> - количество отчетов, накапливаемых в корреляторе, <math>\varepsilon</math> - разность истинного и опорного параметров.  
  
Крутизна дискриминационной характеристики <math>S_d = A_{IQ}^2T</math>.
+
Крутизна дискриминационной характеристики при нулевой расстройке по частоте: <math>S_D = A_{IQ}^2T</math>.
  
 
В модели задержка сигнала полагалась известной: <math>\rho(\varepsilon_{\tau,k}), \rho(\varepsilon_{\tau,k-1}) = 1</math>.
 
В модели задержка сигнала полагалась известной: <math>\rho(\varepsilon_{\tau,k}), \rho(\varepsilon_{\tau,k-1}) = 1</math>.
  
<center><gallery widths="300px" heights="300px">
+
Дискриминационная характеристика при различных временах накопления:
Файл:20132504_DhChd.png|Дискриминационная характеристика
+
<center><gallery mode="packed" widths="400px" heights="400px">
Файл:20132504_KrutiznaChd.png|Крутизна дискриминационной характеристики
+
Файл:20151028_DhChd_new.png|Дискриминационная характеристика при T=1 мс
 +
Файл:20151028_DhChd_newT5ms.png|Дискриминационная характеристика при T=5 мс
 
</gallery></center>
 
</gallery></center>
  
Строка 31: Строка 55:
 
Получены зависимости СКО шума на выходе дискриминатора от <math>q_{c/n_0}</math> для различных времен накопления. Теоретические кривые пунктирной линией.
 
Получены зависимости СКО шума на выходе дискриминатора от <math>q_{c/n_0}</math> для различных времен накопления. Теоретические кривые пунктирной линией.
  
[[File:20132504 CKO(q,T) ChD.png|300x300px|frame|center|Дискриминационная характеристика]] <br />
+
[[File:20132504 CKO(q,T) ChD.png|300x300px|frame|center|]] <br />
 +
 
 +
Дисперсия шума эквивалентного наблюдения частоты, т.е. шума с выхода дискриминатора, пересчитанного '''к его входу''' при нулевой расстройке по частоте: <br />
 +
 
 +
:<math>D_{\widetilde{\eta}_\omega} = \frac{1}{q_{c/n_0}T^3}(1+\frac{1}{2q_{c/n_0}T}).</math>
 +
 
 +
=== Сравнение с другими ЧД ===
 +
 
 +
Интересно сравнить дисперсию шумов по входу для различных дискриминаторов:
 +
 
 +
* Собственно дисперсия шума на входе рассматриваемого в этой статье cross дискриминатора. Обозначим ее как <math>D_1</math>:
 +
 
 +
:<math> D_1 = D_{\widetilde{\eta}_\omega} = \frac{1}{q_{c/n_0}T_1^3}(1+\frac{1}{2q_{c/n_0}T_1}).</math>
 +
 
 +
* Дисперсия шума на входе оптимального при низком отношении сигнал/шум частотного дискриминатора (тот, который <math>I_kI'_k+Q_kQ'_k</math>) <ref name="OptimalFLL">[[Публикация:Корогодин 2013 Потенциальные характеристики оценивания частоты в некогерентном приемнике]]</ref>, <ref name="KorPhD">[[Публикация:Корогодин 2013 Разработка алгоритмов обработки сигналов СНС в аппаратуре определения угловой ориентации объектов]]</ref>. Обозначим ее как <math>D_2</math>:
 +
 
 +
:<math> D_2 = D_{\widetilde{\eta}_\omega} = \frac{6}{q_{c/n_0}T_2^3}(1+\frac{1}{q_{c/n_0}T_2}).</math>
 +
 
 +
Пусть cross дискриминатор реализован по схеме без перекрытия, тогда <math>T_2 = 2T_1</math> и
 +
 
 +
:<math>\frac{D_2}{D_1} = \frac{6}{8}</math>,
 +
 
 +
или для СКО:
 +
 
 +
:<math>\sigma_2 = 0.866*\sigma_1</math>.
 +
 
 +
Дискриминатор cross проигрывает <math>I_kI'_k+Q_kQ'_k</math> около 15% по СКО во всем диапазоне с/ш. На рисунке ниже приведен график зависимости СКО эквивалентных шумов представленных ЧД от отношения сигнал/шум <math>q_{c/n0}</math>.
 +
 
 +
[[File:20151029_Сравнение СКО.png|центр|500px]]
 +
 
 +
 
 +
Далее построены нормированные на крутизну дискриминационные характеристики сравниваемых дискриминаторов. Как и при сравнении дисперсий шума, полагаем <math>T_2 = 2T_1</math>.
 +
 
 +
[[File:20151103_FreqDiskrCompare.png|центр|500px]]
 +
 
 +
 
 +
Из приведенного рисунка следует вывод, что апертура обоих частотных дискриминаторов равна <br />
 +
<math>A_\omega=\frac{2}{T_u}</math>.<br />
 +
<math>T_u</math> - темп работы дискриминатора. Ранее дискриминаторы сравнивались при условии <math>T_u = T_2 = 2T_1</math>, т.е. при одинаковом темпе работы. При анализе "cross" дискриминатора нужно помнить, что <math>T_1</math> в формулах его характеристик - это время когерентного накопления в корреляторе, а темп работы самого дискриминатора по схеме без перекрытия <math>T_u = 2T_1</math>.
 +
 
 +
== Листинг модели ==
 +
Ниже представлен листинг модели, с которой сняты картинки.
 +
{{Hider
 +
|title = Листинг модели
 +
|content = <source lang = matlab>
 +
clear all
 +
clc
 +
close all
 +
 
 +
plotDX = 1; %считаем ДХ
 +
plotFX = 0; %считаем дисперсию шумов
 +
 
 +
if plotDX
 +
    N = 3000;
 +
    stdn_IQ = 8;
 +
    Tc = 0.005;
 +
    qcno_dB = 45;
 +
    qcno = 10^(qcno_dB/10);
 +
   
 +
    wdop_real = 2*pi*100;
 +
    wdop_oporn = [wdop_real-2*pi*(1/Tc):2*pi*(2/Tc)/500:wdop_real + 2*pi*(1/Tc)];
 +
   
 +
    UdFLL = zeros(1, length(wdop_oporn));
 +
   
 +
    A_IQ = stdn_IQ * sqrt(2 * qcno * Tc);
 +
    Sd = A_IQ^2*Tc;
 +
   
 +
    for k = 1:N
 +
        for j = 1:length(wdop_oporn)
 +
            n_I_old = 1*stdn_IQ * randn(1,1);
 +
            n_I = 1*stdn_IQ * randn(1,1);
 +
            n_Q_old = 1*stdn_IQ * randn(1,1);
 +
            n_Q = 1*stdn_IQ * randn(1,1);
 +
           
 +
            phi_real = [pi/3 pi/3 + Tc*wdop_real(1)];
 +
            phi_oporn =[pi/4 pi/4 + Tc*wdop_oporn(j)];
 +
           
 +
            m_I_old =  A_IQ * sinc((wdop_real(1)-wdop_oporn(j))*Tc/2 /pi)*cos(phi_real(1) - phi_oporn(1) + (wdop_real(1)-wdop_oporn(j))*Tc/2);
 +
           
 +
            m_I = A_IQ * sinc((wdop_real(1)-wdop_oporn(j))*Tc/2 /pi)*cos(phi_real(2) - phi_oporn(2) + (wdop_real(1)-wdop_oporn(j))*Tc/2);
 +
           
 +
            m_Q_old = - A_IQ * sinc((wdop_real(1)-wdop_oporn(j))*Tc/2 /pi)*sin(phi_real(1) - phi_oporn(1) + (wdop_real(1)-wdop_oporn(j))*Tc/2);
 +
           
 +
            m_Q = - A_IQ * sinc((wdop_real(1)-wdop_oporn(j))*Tc/2 /pi)*sin(phi_real(2) - phi_oporn(2) + (wdop_real(1)-wdop_oporn(j))*Tc/2);
 +
           
 +
            I_old = m_I_old + n_I_old;
 +
            I = m_I + n_I;
 +
            Q_old = m_Q_old + n_Q_old;
 +
            Q = m_Q + n_Q;
 +
           
 +
            UdFLL(1, j) = UdFLL(1,j) + I*Q_old - Q*I_old;
 +
        end
 +
        if ~mod(k, N/10)
 +
            fprintf('Progress %d%%\n', k*100/N)
 +
        end
 +
    end
 +
   
 +
    UdFLL_mean = A_IQ^2*(sinc((wdop_real(1)-wdop_oporn)*Tc/2 /pi)).^2.*sin((wdop_real(1)-wdop_oporn)*Tc);
 +
   
 +
    UdFLL = UdFLL/N;
 +
   
 +
    figure
 +
    plot((wdop_real-wdop_oporn)/2/pi,[UdFLL; UdFLL_mean; Sd*(wdop_real-wdop_oporn)]);
 +
    ylim([1.1*min(UdFLL_mean) 1.1*max(UdFLL_mean)])
 +
    grid on;
 +
    xlabel('\Delta f, Гц')
 +
    ylabel('M[u_{Д}]')
 +
    title(['q = ' num2str(qcno_dB) ' дБГц, T = ' num2str(Tc) ' c'])
 +
end
 +
 
 +
if plotFX
 +
    N = 5000;
 +
    stdn_IQ = 8;
 +
    Tc = 0.02;
 +
    qcno_dB = [10:1:50];
 +
    wdop_real = [2*pi*100];
 +
    wdop_oporn = [2*pi*100];
 +
   
 +
    D_etta_FLL = zeros(1,length(qcno_dB));
 +
    CKO_etta_FLL_teor = nan(1,length(qcno_dB));
 +
   
 +
    for i = 1:length(qcno_dB)
 +
        fprintf('qcno_dB = %.0f\n', qcno_dB(i));
 +
        qcno = 10^(qcno_dB(i)/10);
 +
        A_IQ = stdn_IQ * sqrt(2 * qcno * Tc);
 +
       
 +
        UdFLL = nan(1, N);
 +
       
 +
        for k = 1:N
 +
           
 +
            for j = 1:length(wdop_oporn)
 +
                n_I_old = 1*stdn_IQ * randn(1,1);
 +
                n_I = 1*stdn_IQ * randn(1,1);
 +
                n_Q_old = 1*stdn_IQ * randn(1,1);
 +
                n_Q = 1*stdn_IQ * randn(1,1);
 +
               
 +
                phi_real = [pi/3 pi/3 + Tc*wdop_real(1)];
 +
                phi_oporn =[pi/4 pi/4 + Tc*wdop_oporn(j)];
 +
                m_I_old =  A_IQ * sinc((wdop_real(1)-wdop_oporn(j))*Tc/2 /pi)*cos(phi_real(1) - phi_oporn(1) + (wdop_real(1)-wdop_oporn(j))*Tc/2);
 +
               
 +
                m_I = A_IQ * sinc((wdop_real(1)-wdop_oporn(j))*Tc/2 /pi)*cos(phi_real(2) - phi_oporn(2) + (wdop_real(1)-wdop_oporn(j))*Tc/2);
 +
               
 +
                m_Q_old = - A_IQ * sinc((wdop_real(1)-wdop_oporn(j))*Tc/2 /pi)*sin(phi_real(1) - phi_oporn(1) + (wdop_real(1)-wdop_oporn(j))*Tc/2);
 +
               
 +
                m_Q = - A_IQ * sinc((wdop_real(1)-wdop_oporn(j))*Tc/2 /pi)*sin(phi_real(2) - phi_oporn(2) + (wdop_real(1)-wdop_oporn(j))*Tc/2);
 +
               
 +
                I_old = m_I_old + n_I_old;
 +
                I = m_I + n_I;
 +
                Q_old = m_Q_old + n_Q_old;
 +
                Q = m_Q + n_Q;
 +
               
 +
                UdFLL(1, k) = I*Q_old - Q*I_old;
 +
            end
 +
        end
 +
        D_etta_FLL(1,i) = mean((UdFLL - mean(UdFLL)).^2);
 +
       
 +
        CKO_etta_FLL(1,i) = sqrt(D_etta_FLL(1,i));
 +
        CKO_etta_FLL_teor(1,i) = sqrt((A_IQ^2*Tc)^2*(1/(qcno*Tc^3))*(1 + 1/(2*qcno*Tc)));
 +
    end
 +
    figure
 +
    plot(qcno_dB, CKO_etta_FLL, 'r*', qcno_dB, CKO_etta_FLL_teor, 'g')
 +
    xlabel('q_c/n0, дБГц')
 +
    ylabel('\sigma_{вых} ЧД')
 +
    grid on
 +
end
 +
</source>
 +
|frame-style = border:1px solid Plum
 +
|title-style = color:black;background-color:lavender;font-weight:bold;text-align:left
 +
|content-style = color:black;background-color:ghostwhite;text-align:center
 +
|hidden = yes
 +
}}
  
Дисперсия эквивалентных шумов на входе дискриминатора <br />
 
  
<math>D_{\widetilde{\eta}_\omega} = \frac{1}{q_{c/n_0}T^3}(1+\frac{1}{2q_{c/n_0}T}).</math>
+
== Ссылки ==
 +
<references/>
  
 
[[Категория:Дискриминаторы]]
 
[[Категория:Дискриминаторы]]
 
[[Категория:Оценивание частоты]]
 
[[Категория:Оценивание частоты]]

Текущая версия на 15:22, 3 ноября 2015

Содержание

Дискриминатор частоты с временным сдвигом квадратурных компонент известен в англоязычной литературе как cross-product дискриминатор[1].

Дискриминатор использует отсчеты коррелятора с текущего и предыдущего такта работы:

u_{D \omega, k} = I_k(\widetilde{\tau}_k,\widetilde{\omega}_{d\,k})Q_{k-1}(\widetilde{\tau}_{k-1},\widetilde{\omega}_{d\,k-1}) - Q_k(\widetilde{\tau}_k,\widetilde{\omega}_{d\,k})I_{k-1}(\widetilde{\tau}_{k-1},\widetilde{\omega}_{d\,k-1}),

где

I_k(\widetilde{\tau}_k,\widetilde{\omega}_{d\,k}) = \sum_{l=1}^{L}y(t_{k,l})h_{c}(t_{k,l}-\widetilde{\tau}_k)\mbox{cos}(\omega_0t_{k,l}+\widetilde{\omega}_{d\,k}(l-1)T_d)),
Q_k(\widetilde{\tau}_k,\widetilde{\omega}_{d\,k}) = \sum_{l=1}^{L}y(t_{k,l})h_{c}(t_{k,l}-\widetilde{\tau}_k)\mbox{sin}(\omega_0t_{k,l}+\widetilde{\omega}_{d\,k}(l-1)T_d)),
I_{k-1}(\widetilde{\tau}_{k-1},\widetilde{\omega}_{d\,{k-1}}) = \sum_{l=1}^{L}y(t_{k-1,l})h_{c}(t_{k-1,l}-\widetilde{\tau}_{k-1})\mbox{cos}(\omega_0t_{k-1,l}+\widetilde{\omega}_{d\,k-1}(l-1)T_d)),
Q_{k-1}(\widetilde{\tau}_{k-1},\widetilde{\omega}_{d\,k-1}) = \sum_{l=1}^{L}y(t_{k-1,l})h_{c}(t_{k-1,l}-\widetilde{\tau}_{k-1})\mbox{sin}(\omega_0t_{k-1,l}+\widetilde{\omega}_{d\,k-1}(l-1)T_d)).

[править] Особенности работы

Варианты работы дискриминатора

Возможны различные реализация дискриминатора. На рисунке представлено два варианта, условно названных "Перекрытие" и "Перекрытие отсутствует". Поясним рисунок.

Пусть в некоторый момент времени t_{k} доступны отсчеты с выхода коррелятора I_k, Q_k и отсчеты из предыдущей эпохи I_{k-1}, Q_{k-1}. На их основе можно сформировать отсчет дискриминатора u_{D\omega,k}. Далее возможны варианты.

В случае, если работа идет с "перекрытием", следующий отсчет дискриминатора u_{D\omega,k+1} будет сформирован из новых отсчетов коррелятора I_{k+1}, Q_{k+1} и уже использованных в предыдущем шаге I_k, Q_k. Таким образом, каждое вычисление отсчета дискриминатора использует отсчеты коррелятора, уже использованные в расчете предыдущего значения дискриминатора. Поэтому шум выхода дискриминатора в данном случае оказывается коррелированным, а его СПМ отличается от СПМ белого шума.

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

Для дискриминатора "с перекрытием" использование статистического эквивалента вида

u_{D\omega,k} = S_{D}(\omega_k - \widetilde{\omega_k}) + n_{D,k}, где n_{D,k} \sim N(0, D_\eta)

при моделировании следящих систем недопустимо, т.к. он не отражает корреляционных свойств. Следует воспользоваться статистическими эквивалентами коррелятора.


[править] Дискриминационная характеристика

Сделано допущение, что \varepsilon_{\omega,k-1} = \varepsilon_{\omega,k}.

U(\varepsilon_\omega) = A_{IQ}^2\rho(\varepsilon_{\tau,k})\rho(\varepsilon_{\tau,k-1})\mbox{sinc}^2(\varepsilon_{\omega,k-1}T/2)\mbox{sin}(\varepsilon_{\omega,k-1}T),

где A_{IQ} = \frac{AL}{2}, A - амплитуда сигнала y(t_{k,l}), L - количество отчетов, накапливаемых в корреляторе, \varepsilon - разность истинного и опорного параметров.

Крутизна дискриминационной характеристики при нулевой расстройке по частоте: S_D = A_{IQ}^2T.

В модели задержка сигнала полагалась известной: \rho(\varepsilon_{\tau,k}), \rho(\varepsilon_{\tau,k-1}) = 1.

Дискриминационная характеристика при различных временах накопления:

[править] Флуктуационная характеристика

Получены зависимости СКО шума на выходе дискриминатора от q_{c/n_0} для различных времен накопления. Теоретические кривые пунктирной линией.

20132504 CKO(q,T) ChD.png

Дисперсия шума эквивалентного наблюдения частоты, т.е. шума с выхода дискриминатора, пересчитанного к его входу при нулевой расстройке по частоте:

D_{\widetilde{\eta}_\omega} = \frac{1}{q_{c/n_0}T^3}(1+\frac{1}{2q_{c/n_0}T}).

[править] Сравнение с другими ЧД

Интересно сравнить дисперсию шумов по входу для различных дискриминаторов:

  • Собственно дисперсия шума на входе рассматриваемого в этой статье cross дискриминатора. Обозначим ее как D_1:
 D_1 = D_{\widetilde{\eta}_\omega} = \frac{1}{q_{c/n_0}T_1^3}(1+\frac{1}{2q_{c/n_0}T_1}).
  • Дисперсия шума на входе оптимального при низком отношении сигнал/шум частотного дискриминатора (тот, который I_kI'_k+Q_kQ'_k) [2], [3]. Обозначим ее как D_2:
 D_2 = D_{\widetilde{\eta}_\omega} = \frac{6}{q_{c/n_0}T_2^3}(1+\frac{1}{q_{c/n_0}T_2}).

Пусть cross дискриминатор реализован по схеме без перекрытия, тогда T_2 = 2T_1 и

\frac{D_2}{D_1} = \frac{6}{8},

или для СКО:

\sigma_2 = 0.866*\sigma_1.

Дискриминатор cross проигрывает I_kI'_k+Q_kQ'_k около 15% по СКО во всем диапазоне с/ш. На рисунке ниже приведен график зависимости СКО эквивалентных шумов представленных ЧД от отношения сигнал/шум q_{c/n0}.

Ошибка создания миниатюры: convert: unable to open image `/app/images/0/07/20151029__.png': No such file or directory @ error/blob.c/OpenBlob/2641.
convert: no images defined `/tmp/transform_41d73e8e5021-1.png' @ error/convert.c/ConvertImageCommand/3044.


Далее построены нормированные на крутизну дискриминационные характеристики сравниваемых дискриминаторов. Как и при сравнении дисперсий шума, полагаем T_2 = 2T_1.

20151103 FreqDiskrCompare.png


Из приведенного рисунка следует вывод, что апертура обоих частотных дискриминаторов равна
A_\omega=\frac{2}{T_u}.
T_u - темп работы дискриминатора. Ранее дискриминаторы сравнивались при условии T_u = T_2 = 2T_1, т.е. при одинаковом темпе работы. При анализе "cross" дискриминатора нужно помнить, что T_1 в формулах его характеристик - это время когерентного накопления в корреляторе, а темп работы самого дискриминатора по схеме без перекрытия T_u = 2T_1.

[править] Листинг модели

Ниже представлен листинг модели, с которой сняты картинки.


[править] Ссылки

  1. http://www.navipedia.net/index.php/Frequency_Lock_Loop_(FLL)
  2. Публикация:Корогодин 2013 Потенциальные характеристики оценивания частоты в некогерентном приемнике
  3. Публикация:Корогодин 2013 Разработка алгоритмов обработки сигналов СНС в аппаратуре определения угловой ориентации объектов
Персональные инструменты
Пространства имён

Варианты
Действия
SRNS Wiki
Рабочие журналы
Приватный файлсервер
QNAP Сервер
Инструменты