2022-10-07 23:49:43 +08:00
|
|
|
|
/******************** (C) COPYRIGHT 2020 Geek************************************
|
|
|
|
|
* File Name : pdr_kalman.h
|
|
|
|
|
* Department : Sensor Algorithm Team
|
|
|
|
|
* Current Version : V2.0(compare QCOM SAP 5.0)
|
|
|
|
|
* Author : logzhan
|
|
|
|
|
* Date of Issued : 2020.7.3
|
|
|
|
|
* Comments : PDR <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؽṹ<EFBFBD>嶨<EFBFBD><EFBFBD>
|
|
|
|
|
********************************************************************************/
|
|
|
|
|
#ifndef _PDR_KALMAN_H_
|
|
|
|
|
#define _PDR_KALMAN_H_
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
|
extern "C" {
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
/**----------------------------------------------------------------------
|
|
|
|
|
* Function : EKF_Init
|
|
|
|
|
* Description : <EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* Date : 2022/09/19
|
|
|
|
|
*---------------------------------------------------------------------**/
|
|
|
|
|
void EKF_Init(void);
|
|
|
|
|
|
|
|
|
|
/**----------------------------------------------------------------------
|
|
|
|
|
* Function : EKFStatePredict
|
|
|
|
|
* Description : pdr<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬Ԥ<EFBFBD>ⷽ<EFBFBD><EFBFBD>
|
|
|
|
|
* Date : 2022/09/19 logzhan
|
|
|
|
|
*---------------------------------------------------------------------**/
|
|
|
|
|
void EKFStatePredict(EKFPara_t* kf, double step_length, PDR_t* g_pdr, int step);
|
|
|
|
|
|
|
|
|
|
/**----------------------------------------------------------------------
|
|
|
|
|
* Function : EKFCalQRMatrix
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>㿨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* scane_type, <EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷǿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* nmea_data<EFBFBD><EFBFBD>NMEA<EFBFBD><EFBFBD><EFBFBD>ݽṹ<EFBFBD><EFBFBD>
|
|
|
|
|
* g_pdr<EFBFBD><EFBFBD>PDR<EFBFBD>ṹ<EFBFBD><EFBFBD>
|
|
|
|
|
* sys<EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽṹ<EFBFBD><EFBFBD>
|
|
|
|
|
* kf<EFBFBD><EFBFBD>EKF<EFBFBD><EFBFBD><EFBFBD>ݽṹ<EFBFBD><EFBFBD>
|
|
|
|
|
* Date : 2022/09/19 logzhan
|
|
|
|
|
*---------------------------------------------------------------------**/
|
2022-10-15 16:07:19 +08:00
|
|
|
|
void EKFCalQRMatrix(Nmea_t* nmea_data, PDR_t* g_pdr, Classifer_t* sys, EKFPara_t* kf);
|
2022-10-07 23:49:43 +08:00
|
|
|
|
|
|
|
|
|
/**----------------------------------------------------------------------
|
|
|
|
|
* Function : pdr_ekfStateUpdate
|
|
|
|
|
* Description : pdr<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* Date : 2020/7/22 logzhan
|
|
|
|
|
*---------------------------------------------------------------------**/
|
2022-10-15 16:07:19 +08:00
|
|
|
|
void EKFStateUpdate(EKFPara_t* kf, GNSS_t* pgnss, Classifer_t* sys, PDR_t* g_pdr,
|
2022-10-07 23:49:43 +08:00
|
|
|
|
int scene_type);
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#endif
|