【技术实现步骤摘要】
基于循环队列的卫星程控指令维护方法
本专利技术涉及一种卫星程控指令维护方法,特别是涉及一种基于循环队列的卫星程控指令维护方法。
技术介绍
人造卫星在太空中需要按照预定计划执行特定的任务,比如在星箭分离之后执行太阳帆板展开、对日定向等一系列动作,或者当卫星经过地面接收站时提前开启测控应答机、数传终端机等单机进行星地通信。这些任务通常对动作的执行时间、执行顺序要求高,必须通过星载软件自主完成。星载软件一般通过判定时间、地理位置或者遥测状态等满足相应条件时,发送程控指令给单机,或者电源、姿控以及加热器等相关卫星部件,控制整星工作状态来完成给定任务。随着卫星应用的日益复杂,程控任务的规模也越来越庞大。另一方面,程控指令对执行时间、执行顺序要求高,指令的错乱、丢失或者执行时间超出预期范围都可能会导致任务的失败,因此迫切需要一种可靠的程控指令维护方法,确保所有指令都能按照预定的时间范围、顺序准确发送。从程序设计的角度看,可采用FIFO(FirstInFirstOut)队列、链表或者数组等数据结构来对程控指令进行维护,但是这些数据结构存在如下问题:一、安全性问题,动态开辟内存空 ...
【技术保护点】
一种基于循环队列的卫星程控指令维护方法,其特征在于,其包括下列步骤:步骤一,星载软件通过基于时间排序的循环队列来存储和维护程控指令;步骤二,各程控任务产生的指令按照发送通道的类别及执行时间顺序插入到相应指令队列中等待执行;步骤三,星载软件周期性地查询队列;步骤四,星载软件在指令满足发送条件时完成指令的发送,或者在指令并发量未超过额定阈值时对指令作延迟处理,确保所有指令在合理时间范围内按照其所在指令序列中的顺序完成发送。
【技术特征摘要】
1.一种基于循环队列的卫星程控指令维护方法,其特征在于,其包括下列步骤:步骤一,星载软件通过基于时间排序的循环队列来存储和维护程控指令;步骤二,各程控任务产生的指令按照发送通道的类别及执行时间顺序插入到相应指令队列中等待执行;步骤三,星载软件周期性地查询队列;步骤四,星载软件在指令满足发送条件时完成指令的发送,或者在指令并发量未超过额定阈值时对指令作延迟处理,确保所有指令在合理时间范围内按照其所在指令序列中的顺序完成发送。2.如权利要求1所述的基于循环队列的卫星程控指令维护方法,其特征在于,所述指令队列针对各指令发送通道分别建立的程控指令缓存队列,采用静态内存空间分配,并且队列中指令是基于指令的时间码进行排序。3.如权利要求2所述的基于循环队列的卫星程控指令维护方法,其特征在于,所述指令队列通过队头指针和队尾指针来对队列元素进行插入、查询、获取操作,并在逻辑上首尾相连,循环利用队列空间。4.如权利要求2所述的基于循环队列的卫星程控指令维护方法,其特征在于,所述指令发送通道为程控指令路由到指令接收方的物理传输通道。5.如权利要求4所述的基于循环队列的卫星程控指令维护方法,其特征在于,所述程控任务为执行不同程控作业的功能模块或者函数,程控任务产生不同的程控指令序列,并且程控任务因紧急程度不同而具有不同的优先级,通过对优先级的设置,使得任何周期内指令并发量不大于阈值N。6.如权利要求5所述的基于循环队列的卫星程控指令维护方法,其特征在于,所述程控指令序列为具有先后执行关系的一系列程控指令,同一序列中指令间的时间间隔不小于P*T(P>=1),其中P为所属程控任务的优先级,T为指令的发送/检查周期。7.如权利要求5所述的基于循环队列的卫星程控指令维护方法,其特征在于,所述程控指令包括时间码、目的地址和指令码内容,其中时间码为指令的执行时间...
【专利技术属性】
技术研发人员:郭艳丽,吴侃侃,李美光,田华,
申请(专利权)人:上海卫星工程研究所,
类型:发明
国别省市:上海,31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。