STK地心惯性系(ICRF)与卫星上传感器体坐标系转换

        读懂本文需要了解的坐标转换基础思想是,分别旋转三个坐标轴来变成新的坐标系,即原始坐标系下的坐标乘上旋转矩阵得到新的坐标,若读者并不了解可以查询相关的知识,本文不再赘述,接下来进入正文。

转换流程(需要借助一些中间坐标系进行转换):

        地心惯性系(Earth ICRF)-卫星轨道坐标系(VVLH)-(卫星本体坐标系)(Satellite Body)-传感器体坐标系(Sensor Body)

1、地惯到轨道的变换,需要用到轨道六根数,如下图所示,为了不混淆字母含义,解释内容如下:公式为VVLH = Loo1*LZ (u)*LX (i)*LZ (R)*ICRF, 其中Loo1 = [0,1,0;0,0,-1;-1,0,0],u为维度幅角(近地点幅角+真近点角),i为轨道倾角,R为升交点赤经,LZ表示绕z轴旋转,LX表示绕x轴旋转。

绕x,y,z轴旋转的变换矩阵如下所示,附带简单的matlab代码

%MATLAB代码,输入为纬度幅角u(°),轨道倾角i(°),升交点赤经R(°),地心惯性系下坐标ICRF
function VVLH = ICRF2VVLH(u, i, R, ICRF)
L1 = [0,1,0;0,0,-1;-1,0,0];
LZ_u = [cos(u*pi/180),sin(u*pi/180),0;-sin(u*pi/180),cos(u*pi/180),0;0,0,1];
LX_i = [1,0,0;0,cos(i*pi/180),sin(i*pi/180);0,-sin(i*pi/180),cos(i*pi/180)];
LZ_R = [cos(R*pi/180),sin(R*pi/180),0;-sin(R*pi/180),cos(R*pi/180),0;0,0,1];
VVLH = L1*LZ_u*LX_i*LZ_R*ICRF;
end

2、轨道坐标系和卫星本体坐标系一般相同

3、卫星体坐标系到传感器体坐标系,利用传感器姿态角,读取STK中传感器的报表“Body Axes Orientation:YPR 321-Parent Body Axes”中的Yaw(偏航角/绕z轴转)、Pitch(俯仰角/绕y轴转)、Roll(翻滚角/绕x轴转)三个数据,传感器指向设定为Fixed时,其体坐标系与卫星体坐标系相同,读取的数据为传感器目前对应的体坐标系相对于Fixed对应坐标系的三个轴的旋转角度,利用1中的旋转矩阵进行坐标转换,matlab代码如下

%输入数据为y(Yaw),p(Pitch),r(Roll),卫星体坐标系坐标SatBody,前三项单位为度
function SenBody = SatBody2SenBody(y, p, r, SatBody)
Ly = [cos(y*pi/180),sin(y*pi/180),0;-sin(y*pi/180),cos(y*pi/180),0;0,0,1];
Lp = [cos(p*pi/180),0,-sin(p*pi/180);0,1,0;sin(p*pi/180),0,cos(p*pi/180)];
Lr = [1,0,0;0,cos(r*pi/180),sin(r*pi/180);0,-sin(r*pi/180),cos(r*pi/180)];
SenBody = Ly*Lp*Lr*SatBody;
end

 本文中的代码经验证没有问题,读者可根据本文内容在STK中读数据进行验证

  • 4
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值