[ 论文复现 ] 基于迭代学习观测器的卫星姿态滑模容错控制

关键词:卫星姿态; 航天器姿态;执行机构故障; 迭代学习观测器; 滑模控制; 容错控制

一、代码及文献获取

1.代码链接:【国防科大学报】基于迭代学习的卫星姿态滑模容错控制 simulink_哔哩哔哩_bilibili

2.视频链接:哔哩哔哩工房 (bilibili.com)

包含:航天器姿态动力学模型(姿态运动学与动力学方程、飞轮安装偏差模型、飞轮故障模型),迭代学习观测器,滑模容错控制器设计,全文复现。

二、主要内容

为解决卫星上反作用飞轮存在安装偏差、故障及外部干扰情况下的姿态控制问题,提出了一种 基于迭代学习观测器的姿态容错控制方法。该方法通过设计迭代学习观测器,以较小的计算量实现对执行 机构发生的故障以及安装偏差进行精确的估计。并利用观测器的观测结果设计滑模控制器,使处于外部干 扰条件下的卫星系统在执行机构发生故障的情况下可以快速稳定地完成姿态机动任务。进一步基于 Lyapunov 稳定性定理证明了迭代学习观测器及控制器的全局渐近稳定性。针对反作用飞轮存在不确定性及 故障的情况下进行仿真,仿真结果表明,与同类容错控制方法相比,所提方法可以更加快速精确地对故障进 行估计并完成姿态控制。

三:主要代码

function [tauc,s,dotbeta] = fcn(v,w,Q,D0,beta)
q = Q(2:4); q0 = Q(1);
tauc = zeros(4,1);
k1 = 5.6; k2 = 1/k1; mu =5;
s = w + beta^2*q;
dotbeta = -(beta*q'*s-k1*beta*w'*q)/(mu+4-4*q0);
tau = -k1*pinv(D0'*D0)*D0'*(s+k2*v);tau_max=0.1;
for i = 1:4
    if abs(tau(i)) > tau_max
        tauc(i) = tau_max*sign(tau(i));
    else
        tauc(i) = tau(i);
    end
end
end
function v= fcn(t,hat_w,T_hat_w,T_w,w)
K1 = diag([0.15 0.15 0.15]);K2 = diag([98 98 98]); K3 = diag([21 21 21]);
persistent T_v
if isempty(T_v)
    T_v = zeros(3,1);
end

v = K1*T_v+K2*(w-hat_w)+K3*(T_w-T_hat_w);

if t>0 &&  mod(t*1000,10)==0
    T_v = v;
end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值