Orientation Matrix

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Orientation Matrix

825 次查看
diegofalk
Contributor I

Hello,

 

I'mworking on a global positioning system using sensor fusion library on a FRDM-K64F integrated with a GNSS system.

Right now, I'm trying to obtain the board's orientation/attitude on the ECEF frame in XYZ coordinates to initialize the system.
Fusion library provides a matrix called thisSV_9DOF_GBY_KALMAN.fRPl. Apparently this is the rotation/conversion matrix from body frame to NED frame. After getting that matrix, I perform another conversion from NED frame to ECEF frame based on a known ECEF position.

Unfortunately, I'm not getting good results. This orientation is not aligned with the GNSS trajectory.

Is this a valid way to do it? Is there a better way?

Is the thisSV_9DOF_GBY_KALMAN.fRPl matrix what I think it is?

 

Thanks,

Diego

标签 (1)
0 项奖励
回复
2 回复数

595 次查看
michaelestanley
NXP Employee
NXP Employee

Diego,

fRPl IS the rotation matrix linking the global frame to the body frame.  Which global frame depends on your settings in build.h. You say you are doing an additional rotation based on "a known ECEF position".  Do you mean "the current ECEF position".  Based on the figure at ECEF - Wikipedia, the free encyclopedia , I think the proper rotation will be a function of where you are on the globe.

I've not done a GNSS integration, so I don't have a lot of insight to offer.

Regards,

Mike

595 次查看
diegofalk
Contributor I

Michael,
Thanks for the advise.
I've checked the settings in build.h and the selected frame es NED. That means that fRPl is the rotation matrix linking the NED frame to the body frame. When I perform the conversion to Euler angles they seem to be OK.
Apparently my problem is the rotation linking the ECEF frame to the NED frame. I do this rotation based on the current ECEF position as you said.
I'll let you know if I found something else.

Thanks
Diego
 

0 项奖励
回复