[OpenSource_GPS] 回复: opensource_gps Digest, Vol 41, Issue 5
yang yang
myrgb2006 at yahoo.com.cn
Sun Apr 8 07:55:33 PDT 2007
I want to know the meaning ,too.
opensource_gps-request at lists.psas.pdx.edu 写道: Send opensource_gps mailing list submissions to
opensource_gps at lists.psas.pdx.edu
To subscribe or unsubscribe via the World Wide Web, visit
http://lists.psas.pdx.edu/cgi-bin/mailman/listinfo/opensource_gps
or, via email, send a message with subject or body 'help' to
opensource_gps-request at lists.psas.pdx.edu
You can reach the person managing the list at
opensource_gps-owner at lists.psas.pdx.edu
When replying, please edit your Subject line so it is more specific
than "Re: Contents of opensource_gps digest..."
Today's Topics:
1. How to calculate the CN0 (Dongsheng Song)
----------------------------------------------------------------------
Message: 1
Date: Fri, 9 Mar 2007 16:34:09 +0800
From: "Dongsheng Song"
Subject: [OpenSource_GPS] How to calculate the CN0
To: opensource_gps at lists.psas.pdx.edu
Message-ID:
Content-Type: text/plain; charset="iso-8859-1"
Hello everyone,
I looked into the opensourcegps program, and found the formula
calculating CN0 is Chan[ch].CN0 = 10.0 * log10( Chan[ch].avg_20ms /
1395.0*Chan[ch].avg_20ms /
1395.0 * 25.0 * 1.7777 + 1.0) . I know the CN0(db) = 10 * log10(C/N),but i
can't understand that form with so many constants. Who can help me to
explain the meaning of Chan[ch].avg_20ms and the derivation of the
constants. I am also confused with the program below. What is the mean of
the pull_code_k,the pull_code_d and the carrier form.
pull_code_k = 50, pull_code_d = 7,
pull_carr_k = -12, pull_carr_d = 28,
phase_test = 500, rms = 312;
// GP2021 has two tracking arms only: prompt & dither
i_sum = Chan[ch].i_prompt + Chan[ch].i_dith;
q_sum = Chan[ch].q_prompt + Chan[ch].q_dith;
// i_sum = Chan[ch].i_prompt;
// q_sum = Chan[ch].q_prompt;
prompt_mag = rss( Chan[ch].i_prompt, Chan[ch].q_prompt);
dith_mag = rss( Chan[ch].i_dith, Chan[ch].q_dith);
Sum[ch] += prompt_mag + dith_mag;
// code tracking loop
if ( prompt_mag != 0 || dith_mag != 0)
{
Cod_Phs[ch] = RT_Ctrl->earlylate * pull_code_k *
((prompt_mag - 2 * dith_mag) << 14) /
(prompt_mag + 2 * dith_mag);
dcod_phs = pull_code_d *
(Cod_Phs[ch] - Cod_Phs_Prv[ch]);
// don't close the loop for 2 ms to avoid transients
if ( Pull_In_Count[ch] > 2 )
{
Chan[ch].cod_frq += (Cod_Phs[ch] + dcod_phs) >> 14;
// Chan[ch].cod_frq += ((pul_cod_c1 + pul_cod_c2) * Cod_Phs[ch] +
// - pul_cod_c1 * Cod_Phs_Prv[ch]) >> 14;
// rt_printk("ch_pull_in(): ch_code -> Chan[%d].cod_frq\n", ch,
Chan[ch].cod_frq);
ch_code( ch, Chan[ch].cod_frq);
}
}
Cod_Phs_Prv[ch] = Cod_Phs[ch];
Best Regards
Dongsheng Song
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.psas.pdx.edu/pipermail/opensource_gps/attachments/20070309/d7dd521b/attachment-0001.htm
------------------------------
_______________________________________________
opensource_gps mailing list
opensource_gps at lists.psas.pdx.edu
http://lists.psas.pdx.edu/cgi-bin/mailman/listinfo/opensource_gps
End of opensource_gps Digest, Vol 41, Issue 5
*********************************************
---------------------------------
抢注雅虎免费邮箱-3.5G容量,20M附件!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.psas.pdx.edu/pipermail/opensource_gps/attachments/20070408/bbf590a3/attachment.htm
More information about the opensource_gps
mailing list