rtklib之URA

衛星位置精度

rtklib的定位中用於計算僞距的權值時,要用到用戶測距精度 vare

/* pseudorange residuals -----------------------------------------------------*/
static int rescode(int iter, const obsd_t *obs, int n, const double *rs,
                   const double *dts, const double *vare, ...)
{
...     
        /* error variance */
        var[nv++]=varerr(opt,azel[1+i*2],sys)+vare[i]+vmeas+vion+vtrp;
 ...
    return nv;
}

用戶測距精度在計算衛星位置時通過函數var_uraeph計算,

extern void eph2pos(gtime_t time, const eph_t *eph, double *rs, double *dts, double *var)
{
    ...   
    /* position and clock error variance */
    *var=var_uraeph(eph->sva);
}

函數var_uraeph計算用戶測距精度僅僅需要一個參數ura,這個參數來自星曆文件。

static double var_uraeph(int ura)
{
    const double ura_value[]={   
        2.4,3.4,4.85,6.85,9.65,13.65,24.0,48.0,96.0,192.0,384.0,768.0,1536.0,
        3072.0,6144.0
    };
    return ura<0||15<ura?SQR(6144.0):SQR(ura_value[ura]);
}

URA

GPS/BDS URA

URA(User Range Accuracy)用戶距離精度,單位是米,URA與精度的關係如下表(來自北斗ICD,GPS ICD中的內容與北斗ICD一致),

編碼 URAI 值 URA 範圍(m,1σ)
0000 0 0.00 < URA ≤ 2.40
0001 1 2.40 < URA ≤ 3.40
0010 2 3.40 < URA ≤ 4.85
0011 3 4.85 < URA ≤ 6.85
0100 4 6.85 < URA ≤ 9.65
0101 5 9.65 < URA ≤ 13.65
0110 6 13.65 < URA ≤ 24.00
0111 7 24.00 < URA ≤ 48.00
1000 8 48.00 < URA ≤ 96.00
1001 9 96.00 < URA ≤ 192.00
1010 10 192.00 < URA ≤ 384.00
1011 11 384.00 < URA ≤ 768.00
1100 12 768.00 < URA ≤ 1536.00
1101 13 1536.00 < URA ≤ 3072.00
1110 14 3072.00 < URA ≤ 6144.00
1111 15 URA > 6144.00

GLONASS URA

GLONASS URA設置爲常數5m,

extern void geph2pos(gtime_t time, const geph_t *geph, double *rs, double *dts,
                     double *var)
{
...    
    *var=SQR(ERREPH_GLO);
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章