星载实现(共9篇)
星载实现 篇1
1 星载SAR天线转动控制分析
天线是星载合成孔径雷达用来定向对地面目标照射和接收电磁波回波脉冲的设备。合成孔径雷达在发射时把能量集中辐射到需要照射的地物方向,并接收探测目标及周围地物的回波。卫星按固定轨道和设定的天线角度绕地球匀速运动,构成了特定的对地观测条带。当天线对地的角度改变时,地面条带的位置也随之改变,以便选择新的地物观测目标,于是地面通过星地和星上通信,控制并稳定雷达天线转动的方向,即能完成预期的对地面目标的成像观测任务。因此,用星上通信调度和监视天线转动控制单元的状态,对完成系统预定的任务是极为必要的。完成上述功能的设备是卫星监控单元,它接收地面指令,依据通信协议转换成对星上各设备(含天线转动控制单元)的通信调度命令,并监视各设备的运行状态(例如天线转动角位置、转速等)发回地面。用通信软件模拟卫星监控单元,实现对国际合作提供的天线转动控制单元的功能验收测试是一条简单易行、可靠灵活的技术途径。系统结构框图如图1 所示。
2 软件系统功能
软件模拟监控单元的主要实现以下功能:
(1) 向天线转动控制单元发送天线旋转角度指令。
(2) 实时显示从天线转动控制单元接受的原始数据。
(3) 以图形和LCD方式实时显示天线初始角度、当前角度以及发出的控制角度。
(4) 显示天线转动控制单元的准备状态和主备工作状态。
(5) 灵活设定发送指令的延迟时间,以及轮询周期。
(6) 保存接收到的天线状态数据。
(7) 显示发送控制角度的次数。
3 软件实现的关键问题研究[1,2,3]
3.1 约定通信协议
系统运行时需要上下位机通信。检测前应判断天线的主备工作状态、设定好发送指令的延迟时间、轮询周期等等,由串口告知天线转动控制单元这些命令。下位机通过串口向上位机传送天线旋转角度指令,上位机接到指令后,通过解译,执行一定的操作,并实时地返回天线的工作状态。为了按规定的格式从串口发送数据,也为了从接受到的数据中将有用的信息提取出来,需要编制通信协议。根据卫星星务与天线转动控制单元接口约定,下位机通过串口传送轮询指令和控制指令到上位机,上位机根据接收到指令做出不同的应答。当发送轮询指令时,上位机返回当前天线转动控制单元的主备工作状态,当发送转动控制指令时,上位机返回天线当前转动的角度信息。以发送协议为例,格式如图2。
3.2 多线程在串口通信中的访问控制
系统为了并行执行多任务而使用了多线程技术。线程共享进程的资源和地址空间,因此在对这些资源进行操作时,必须考虑到线程间资源的访问的惟一性问题。在本系统中对串口资源的访问和操作就必须考虑多个线程之间的同步,及进行串口通信处理的不同线程之间需要协调运行。如果一个线程必须等待另一个线程结束才能运行,则应该挂起该线程以减少对CPU 资源的占用,通过另一进程完成后发出的信号(线程间通信) 来激活。
3.2.1 串口通信对线程访问的要求
串口通信中,由于每个串口对象只有一个缓冲区,发送和接收都会使用,因此必须建立起线程同步机制,使得在同一时间只能进行读操作或写操作,否则通信就会出错。
MFC 支持七个多线程的同步类,它们可以分成两大类: 同步对象(Csyn2cObject、Csemaphore 、Cmutex、CcriticalSection 和Cevent )和同步访问对象(CmultiLock 和CsingleLock)。本系统中主要使用了事件对象(Cevent),用于串口监听线程与数据处理线程之间的同步,同时也用它来锁住对串口缓冲区的访问,直到线程释放缓冲区,使其成为有信号状态。
3. 2. 2 等待函数
Win32 API 提供了能使线程阻塞其自身执行的等待函数,等待其监视的对象产生一定的信号才停止阻塞,继续线程的执行。其意义是通过暂时挂起线程减少对CPU 资源的占用。在该系统中,串口通信只是其中事务处理的一部分,考虑到程序执行效率问题,当串口初始化完毕后,就使其处于等待通信事件的状态,减少消耗的CPU 时间,提高程序运行效率。常用的等待函数是WaitForSingleObject ( ) 和WaitForMultipleObjects ( ) ,前者可监测单个同步对象,后者可同时监测多个同步对象。在该系统的串口监听线程(WatchCommThread)中使用了dwEvent=Wait For MultipleObjects(2,//事件数量p Seria Com->m_hEventArr,//事件数组FALSE,//只有有一个信号函数返回INFINITE//等待时间);switch(dwEvent){case 0://kill thread……case 1://read event……}//end of switch
3.2.3 串口通信的重叠I/ O方式
MFC对串口的操作当作对文件的操作来处理。在该系统中,用CreateFile(chArrPort, GENERIC_READ | GENERIC_WRITE, 0,NULL,OPEN_EXISTING, FILE_FLAG_OVERLAPPED,NULL)打开串口,获得一个串口句柄m_hComm。打开后SetCommState (m_hComm, &m_dcb)进行端口配置,包括缓冲区设置,超时设置和数据格式等。成功后调用函数ReadFile (m_hComm, &chRxBuffer, 1, &BytesRead, &m_ovRead ) 和WriteFile (m_hComm,lpbuf,dwToWrite,&dwWritten,&m_ovWrite) 进行数据的读写,用WaitCommEvent (pSeriaCom->m_hComm,&dwEvent,&pSeriaCom->m_ovRead) 监听通信事件。CloseHandle (m_hComm) 用于关闭串口。
在读写串口时,没有采用同步执行方式,而是采用重叠I/ O 方式。同步执行时,函数直到执行完毕才返回,因而同步执行的其他线程会被阻塞,效率下降;而在重叠方式下,调用的读写函数会立即返回, I/ O 操作在后台进行,这样线程就可以处理其他事务。这样,线程可以在同一串口句柄上实现读写操作,实现″重叠″。使用重叠I/ O 方式时,线程要创建OVERLAPPED结构供读写函数使用。系统中通过GetOverlappedResult(m_hComm,&m_ovRead,// OVERLAPPED structure &BytesRead, TRUE)获得该结构m_ovRead; 该结构最重要的成员是hEvent事件句柄,它作为线程的同步对象使用。
3.3 软件实现
根据前文介绍软件系统要实现的功能,主要包括五个任务协调完成预定的工作。软件系统要创建五个线程: 用户界面线程、串口监听线程、接收数据线程、发送数据线程和数据处理线程。首先通过用户界面线程进行相关的设置,比如轮询间隔时间、发送指令延迟时间等等,然后通过串口发送轮询指令,查询天线转动控制单元的工作状态。如果转动控制单元返回的指令显示天线控制单元已经开机并准备就绪,则可以发送设定的转动角度指令。天线转动控制单元接到指令后启动天线转动,并按照设定的时间间隔返回已转动的角度,当天线转动到预设的角度后即停止,此次任务结束。给出系统发送角度控制指令的流程图如图3。
4 运行结果
该软件系统已经成功应用于国内某环境灾害监测卫星项目的天线转动控制的验收测试工作,运行结果表明可以实现所要求的功能,系统的实时性、控制精度都较高。系统运行主界面如图4。
5 结束语
星载SAR天线转动控制的软件模拟系统用Visual C++在Windows2000 Server环境下开发,利用了MFC的多线程技术和串口通信技术,成功实现了对天线转动控制单元的监视和控制,经真实项目现场测试,该软件系统能够稳定运行,串口能够正确接收和发送两端数据,天线转动控制精准。
摘要:利用串口通信技术,模拟了对星载合成孔径雷达(SAR)天线转动控制的监视与通信。本设计仅利用软件,通过笔记本计算机串口,模拟和替代星上通信上位机对RS485总线的调度功能。严格执行约定的通信协议,完成对星载SAR天线转动控制单元(下位机)的转动控制和实时监视。运行结果表明该软件显示灵活、直观,实时性好,稳定性高。软件大大简化了实验现场设备,顺利完成了国际合作研制设备的接口验收实验工作。
关键词:星载合成孔径雷达天线,总线通信协议,调度,监视
参考文献
[1]乌尼尔,董海军.Visual C++经典例程分析.北京:中国电力出版社,2000:124—147
[2](美)Roberts E S.C语言的科学和艺术.翁惠玉,张冬茉,杨鑫等译.北京:机械工业出版社,2005:180—199
[3]袁唯才,程向民,王辉,等.多线程技术及其在VC++串口通信程序中的应用.计算机与现代化,2003;(8):33—35
星载实现 篇2
目前闪存有多种技术架构,其中以NOR技术和NAND技术为主流技术?3?。NOR型闪存是随机存取的设备,适用于代码存储;NAND型闪存是线性存取的设备,适用于大容量数据存储?4?。NAND型闪存有一定的工业标准,具有一些统一的特点,现以三星公司的K9K1G08U0M型芯片为例进行介绍。该芯片容量为1Gbit,由8192个块组成,每块又由32个页组成,一页有(512+16)×8bit,该片的8位I/O总线是命令、地址、数据复用的。读写操作均以页为单位,擦除操作则以块为单位,写入每页的典型时间为200μs?4?,平均每写一个字节约需400ns,即约20Mb/s。这样的写入(编程)速度对于要求高速的应用场合来讲是难以满足的,因此必须采取一定的技术措施。
1.1.1并行总线技术
并行总线技术亦称宽带总线技术,即通过拓宽数据总线的带宽实现数据宏观上的并行操作。比如,由四片K9K1G08U0M型闪存芯片组成一个32位宽的闪存子模块,它们共用相同的控制信号,包括片选信号、读写信号、芯片内部地址等。子模块总是被看做一个整体而进行相同的操作,只是数据加载的时候是不同的数据。这样,数据量将是使用单独一块芯片时的4倍,所以理论上速度也将是非并行时的4倍。
1.1.2流水线技术
借鉴现今高性能计算机中的流水线操作原理,可在时间片上实现微观并行。针对闪存的写入速度慢的问题,可以对其进行流水处理。K9K1G08U0M型闪存的写入操作可分为三个步骤:(1)加载操作,即完成命令、地址和数据的载入工作;(2)自动编程操作,即由闪存芯片自动完成编程操作,将载入到页寄存器的数据写到内部存储单元的;(3)检测操作,即在自动编程结束后检测写入的数据是否正确。如果不正确,需要重新编程;如果正确,继续下一步的操作。写流水原理图如图1所示。由图1可以看到,流水线运行起来后,在任一时间片上总有若干小操作在同时进行,即在时间片上实现了复用,因此从整体上看速度将会提高。
1.2无效块的管理
星载实现 篇3
关键词:UART,三模冗余,FPGA
UART[1—3] (通用异步收发器) 广泛应用在星载仪器单机内部通信。串口通信以其硬件电路简单, 使用线路少, 通信协议简单, 成本低等特点, 适用于星载仪器电单机内部的远距离传输, 并且可以通过总线连接, 实现多对一、一对多的总线拓扑结构。
FPGA (field programmable gate array) 是现场可编程门阵列, 具有低成本、大规模、短周期、可预测延迟以及高度可编程接口等优点, 被广泛用于数据采集处理测试系统中。针对空间环境的特殊应用领域, 反熔丝FPGA以其可靠性被越来越多的航天项目所采用。采用反熔丝编程技术的FPGA, 内部使用反熔丝阵列开关结构, 由libero开发平台编程、综合、实现, 完成逻辑功能的数据文件输出, 并对反熔丝阵列进行烧录, 使得器件具有需要的逻辑功能。反熔丝FPGA具有抗辐照, 抗单粒子、功耗低、加载速度快等优点, 缺点是器件只能一次烧录, 烧录成本高。反熔丝FPGA具有掉电程序保留, 良好的电离总剂量 (TID) 容限和抗单粒子闭锁 (SEL) 的能力, 所以, 反熔丝FPGA被广泛用于可靠性要求高的空间环境[4]。
国内可以使用FPGA作为核心数字处理芯片, 处理星上数据。使用反熔丝型FPGA可以克服空间高能粒子的辐射干扰, 适应高温、低温交替多变的复杂空间环境。在使用FPGA设计UART电路时, 设计师往往依据民用器件的设计经验进行设计, 导致UART电路在空间环境中易受干扰, 无法可靠工作。本文主要针对FPGA空间应用中, UART通讯模块易受干扰的问题, 讨论了面向空间应用的UART通讯模块设计思路, 实现了一种基于反熔丝FPGA芯片, 结合三模冗余串行 (triple module redundancy, TMR) [5,6]技术、并行TMR技术和数字滤波技术, 面向空间环境应用的UART设计方法, 并通过实验验证了该方法的可行性和可靠性。
1 基本原理
1.1 UART原理
UART以其收发电路简单可靠, 被广泛用于星载仪器的通讯。串口接口规范和总线规范包括RS422、RS485、RS232, 它们的区别主要在于传输速率、电器特性等。在串口异步通信中, 发送端和接收端同时约定好一个特定的波特率, 数据的传输有一个起始位表示传输的开始, 停止位表示数据传输的结束, 中间数据位个数可以根据需要设定, 并可以根据需要设定校验位。UART数据字符格式如图1所示。每次传输前, 总线为高电平, 接收端清空缓存等待接收, 起始位的低电平来同步接收端, 数据接收完毕, 停止位高电平表示数据传送完毕。针对星上设备的应用, 本文采用的是RS422接口标准, 具有传输速率高, 传输距离长的特点, 还可以利用双端差分传输的优点, 提高传输过程的抗干扰能力。
1.2 三模冗余TMR原理
由于电子元器件所处的空间环境易受高能粒子和宇宙射线的影响, 单粒子翻转 (single-event upset, SEU) 的概率也很大, TMR技术是被广泛接受的提升FPGA电路可靠性的容错机制。TMR技术是通过三个相同的模块, 实现对数据的处理, 并进行“3取2”判决, 以此来决定数据的输出, 以增加结果的可靠性。TMR技术利用三组模块同时出错的概率比单一模块出错概率低的原理, 实现数据输出的有效判决, 提升抗空间辐射的可靠性。该技术被广泛应用于星载仪器设备上, 以提升FPGA抗单粒子翻转的可靠性。采用TMR技术后, 尽管FPGA需要增加三倍多的冗余面积, 硬件资源开销变大, 功耗开销变大。但是, 相比较系统的可靠性的提升, TMR技术是一种有效的容错手段。
TMR技术从实现上分为两种, 并行TMR和串行TMR。串行TMR技术体现的是时间上的冗余, 对于一个数据的处理过程, 在时间轴上分三次连续处理, 将三次处理的结果进行判决输出。该方法要求数据处理的主频至少是数据波特率的5倍以上, 适合于数据率不高的系统。串行TMR结构示意图如图2所示。
并行TMR技术是三个相同的模块, 并行处理数据, 三个模块同一时刻同步处理数据, 实现三次相同的运算, 并将结果输出提供给判决电路。该方法对数据的同步性要求比较高, 三个模块必须要求同时处理数据, 并同时将数据输出。串行TMR结构示意图如图3所示。
xyz是对一路数据的三次处理, 即串行TMR技术的三次处理, 处理结果是data数据, data1data2data3是并行TMR技术三次处理的输入, 最终通过串行TMR技术和并行TMR技术的综合使用使得数据的处理经过了9次, 大大的提高了系统的可靠性。
对于串行TMR和并行TMR技术, 均取采用的是“3取2”判决, 即三次数据中, 只要有两次数据一致, 就可以判定数据输出。对于一次采样来说, 当单粒子影响导致翻转, 产生数据失效的概率为r, 则不发生单粒子翻转引起的数据失效的概率为1-r。
对于采用串行TMR技术后的, 三次采样数据都失效的概率为r3, 三次采样中两次数据失效的概率为 (1-r) r2, 数据采样的可靠度为:
若同时综合使用并行TMR技术, 则数据采样的可靠度:
表1是数据失效的概率r分别取值0.1~0.4, 分别采用串行TMR技术和并行TMR技术后, 可靠度提升的情况。
从表1可以看出, 串行TMR结合并行TMR技术一起使用, 则可靠度有显著的提升。
2.3数字滤波原理
星载仪器设备间通讯时, 信号往往受到复杂的空间电磁环境干扰, 这些噪声和干扰会对系统数据接收产生误码。在预处理时, 传统的方法主要是增加滤波措施。由于软件实现数字滤波快速和灵活的特点, 采用数字滤波器, 对输入的数据线进行均值滤波, 以消除数据序列中的高频噪声, 对时间轴上的采样序列进行求和, 再做平均运算, 输出结果, 提高接收的可靠性和准确性。
由于输入信号相对于本地采样时钟而言, 属于随机慢变化信号, 使用一阶滞后滤波器会得到比较好的滤波效果。
式 (8) 中, a是平滑系数, 和时间常数、本地时钟频率有关, 取小于1的常数, 视具体情况而定。
这种通过综合使用滤波器的方法, 先通过均值滤波, 滤除明显的噪声, 再通过一阶滞后滤波[6]进一步剔除不明显的噪声, 达到减少噪声对数据结果的影响。
2 UART的设计与实现
2.1 硬件设计
针对卫星所处的空间环境, 硬件处理器采用大容量抗辐照反熔丝FPGA芯片RTAX2000S, 该芯片采用0.15μm CMOS的反熔丝处理技术, 具有优异的抗辐射性能, 总剂量 (TID) 达到300 krad, 单粒子翻转 (SEU) 达到37 Me V-cm2/mg, 系统运行频率可达350 MHz, 逻辑门200万, 最大可用I/O口624个, 可用SRAM 295K。接口标准采用422协议, 该协议具有传输距离长;波特率可调;传输速度快, 可达10 Mb/s;差分传输可以提高抗干扰能力。422处理芯片;选用AM26C31 (发送) , AM26C32 (接收) 该款芯片的军品级产品温度范围覆盖了-55~125℃, 适用于星上的温度环境。
当星载仪器的电单机比较多时, 可以采用多发一收, 和一发多收的总线拓扑结构。上图是两台单机的例子。FPGA作为主处理器, 将需要发送的有效数据进行组帧, 按特定的波特率将需要发送的数据通过FPGA管脚发送给26c31芯片, 26c31芯片将单端信号转换成符合422协议的差分信号进行输出, 输出的可以是给一个电单机, 也可以是给多个电单机。接收数据时, 26C32将收到的差分信号转化成单端信号, 发送给FPGA, FPGA内部的程序按照协议进行解码操作, 完成数据的接收和存储。当多台电单机通过总线连接时, 需要在时间上进行不同电单机间的隔离, 即同一时刻, 只能有一台电单机发送数据, 否则将会接收错误。硬件系统框图如图4所示。一发二收硬件图如图5所示, 一收二发硬件图如图6所示。
2.2 软件设计
UART电路系统工作主频采用40 MHz时钟, 数据波特率采用115 200 b/s, 编程语言采用VHDL, 在libero9.1环境下编译, 仿真工具使用modelsimactel6.6d。采用top-down的模块化设计方法, 分为两个模块, 发送模块和接收模块。
图7所示为UART电路的发送模块, 该发送模块的功能是将内部并行数据转换成串行数据, 并根据协议, 增加1 bit的起始位, 1 bit的奇校验位, 1 bit的停止位。在内部时钟的驱动下, 以波特率115 200b/s串行输出。
1) 待发送的数据以8路并行的方式, 在内部时钟的驱动下, 经过分支电路模块, 分成相同的三组数据, 每组8路, 分别输出到三条相同的后续处理电路。
2) 本地时钟主频40 M, 对8路数据进行同步锁存, 将数据和本地时钟进行同步处理。
3) 奇校验计算, 8路数据同时计算‘1’的个数, 偶数时校验位为1, 奇数时校验位为0。
4) 将8路数据和计算得出的校验位一起作为有效数据, 进行并串转换, 转换时间至少为12 bit的传输时间。
5) 数据进行缓存控制, 在发送数据起始触发信号的控制下, 数据通过输出控制器, 按照特定的时间间隔115 200 b/s发送数据, 发送数据器件, 屏蔽所有的数据输入。
6) 判决电路将三路输出的数据进行同时的判断, 3取2表决, 每个比特位串行的3取2表决, 作为UART最终的输出数据。
7) 输出数据完成以后, 触发自刷新电路, 完成对所有寄存器的刷新。
图8所示为UART电路的接收模块, 该接收模块的功能是将外部串行数据进行起始位的检测, 有效数据位的检测, 并提取有效数据, 进行缓存, 串并转换输出给内部其他程序。
1) 外部输入的异步串行信号经过分支电路, 分成相同的三路信号, 分别输出到三条相同的后续处理电路。
2) 异步串行信号首先经过本地40 M时钟的采样, 同步缓存, 并进过数字低通滤波, 完成信号的预处理。
3) 本地40 M的时钟进行信号的采样, 当电平由高变低时, 判别起始位, 通过对起始位的多次检测采样, 完成起始位的判别。
4) 对输入的有效数据位, 按照5倍的采样频率, 实现信号的3次采样, 并对信号进行3取2判决。
5) 对有效数据进行计算, 1的个数为偶数时, 校验位为1, 1的个数为奇数时, 校验位为0, 并和收到的校验位进行比对。
6) 开辟寄存器空间, 对收到的有效数据进行缓存, 判决电路对三个缓存器中的数据进行3取2判决。
7) 串并转换输出有效数据, 并同时启动自刷新电路, 完成对所有寄存器的刷新。
3 仿真验证
图9所示为串口发送模块的仿真时序, combinational cells用了21 504个中的177 (0.82%) , sequential cells使用了10 752中的78 (0.73%) , 合计32 256中的254 (0.79%) 。最高频率可以达到97.9MHz。
图10所示为串口接收模块的仿真时序, combinational cells用了21 504个中的462 (2.1%) , sequential cells使用了10 752中的158 (1.5%) , 合计32 256中的620 (1.9%) 。最高频率可以达到92MHz。在数据发送端, 加入了高频噪声干扰, 未发送数据时, 和数据传输中, 分别增加了高频噪声, 最终数据接收正确, 验证了程序在高频噪声干扰传输数据的时候, 仍然能够正确的接收到数据, 满足设计的可靠性要求。
4 结论
针对星载设备广泛使用的UART电路系统易受干扰的问题, 设计了一种高可靠性的UART电路实现方法, 并将该方法应用于航天型号任务的研制中。硬件系统采用抗辐照反熔丝器件, 双机冷备份的方式提高可靠性。软件系统采用滤波抗干扰, 定期自刷新机制, TMR技术, 多种手段综合使用, 提升UART电路系统的容错能力和可靠性。实验结果表明, 本方法具有较强的抗干扰能力, 适用于复杂的空间环境。
参考文献
[1] 赵延, 葛利嘉, 双涛.基于FPGA的UART设计实现及其验证方法.现代电子技术, 2008;31 (17) :162—164Zhao Yan, Ge Lijia, Shuang Tao.Design and realization of UART and its verification based on FPGA.Modern Electronic technique, 2008;31 (17) :162—164
[2] 杨夏, 王平, 张军.基于FPGA的简化UART电路设计.微计算机信息, 2008;24 (23) :226—227Yang Xia, Wang Ping, Zhang Jun.Design of a kind of Simplified UART circuit based on FPGA.Microcomputer Information, 2008;24 (23) :226—227
[3] 牛涛, 吴斌, 焦风川, 等.基于FPGA的UART电路的设计.电子测量技术, 2006;29 (3) :73—75Niu Tao, Wu Bin, Jiao Fengchuan, et al.Design of a kind of UART circuit based on FPGA.Electronic Measurement Technology, 2006;29 (3) :73—75
[4] 董建勋, 马游春, 李锦明.基于反熔丝FPGA的多路数据采集单元.仪表技术与传感器, 2011;3:49—57Dong Jianxun, Ma Youchun, Li Jinming.Design of multi-channel data acquisition cell based on anti-fuse FPGA.Instrument Technique and Sensor, 2011;3:49—57
[5] 杨菊瑾, 刘义凯.抗单粒子翻转的加固方法.微处理机, 2013; (5) :4—5Yang Jujin, Liu Yikai.Radiation hardened measurement of resistance to SEU, Microprocessor, 2013; (5) :4—5
星载合成孔径雷达海浪遥感测量 篇4
星载合成孔径雷达海浪遥感测量
与传统测站式海浪测量不同,具有高空间分辨率的合成孔径雷达能提供大面积海浪的二维波场特性,是遥感测量海浪场的.新手段,其使用的微波可穿透云层,因而测量不受恶劣天气的影响.在合成孔径雷达海浪成像机理的基础上建立了遥感测量二维海浪谱及相关海浪要素的模式和算法.从台湾东北部海域海浪的ERS-1 SAR图像中获得了二维海浪谱及海浪的波高、波长和波向等特征参数,与实测资料相比,其中波高和波向的误差分别为0.2 m和2.0°.
作 者:杨劲松 周长宝 黄韦艮 作者单位:国家海洋局海洋动力过程与卫星海洋学重点实验室,国家海洋局第二海洋研究所,杭州,310012刊 名:地球物理学报 ISTIC SCI PKU英文刊名:CHINESE JOURNAL OF GEOPHYSICS年,卷(期):44(z1)分类号:P714关键词:合成孔径雷达 二维海浪谱 波高 波长 波向
星载实现 篇5
1553B总线数据传输方式有两种:单消息模式和循环缓冲模式。单消息模式一次最多可以传输32个字(64字节),当传输数据大于32个字时采用循环缓冲模式[3]。一般情况下,利用FPGA控制实现1553B总线RT端单消息模式数据通信时,数据打包所需的缓存放在FPGA内部或外部RAM中,待数据打包完成后,再将整包数据写入1553B的子地址,同时置矢量字,等待BC端取走[4]。
GNOS掩星探测仪是一种通过测量GNSS信号受中性大气影响后产生的附加延迟量来反演大气折射率、温度、湿度、压力等大气物理参数剖面和电离层电子密度剖面、电子总含量(TEC)等信息的星载仪器,其遥测数据长度为32个字(64字节),通过1553B总线传输给卫星。作为1553B总线的远程终端(RT),GNOS掩星探测仪利用FPGA控制BU-65170实现1553B总线数据传输,采取单消息传输模式[5]。由于遥测数据的打包时间较长,需要4 s,而卫星平台的轮询周期为16s,如果GNOS掩星探测仪在遥测数据打包期间不置矢量字,则卫星平台轮询时不能取到数据的概率为25%,而如果在打包期间置矢量字,则取到的数据有可能不完整[6]。为此,研究一种利用BU-65170芯片内部RAM实现双缓冲的数据传输方案,以期实现GNOS掩星探测仪遥测数据的可靠传输,且避免使用外部RAM,简化系统硬件设计,提高系统的可靠性。
1 GNOS掩星探测仪工作原理
GNOS掩星探测仪由天线和主机两大部分组成。主机包含射频单元、基带处理单元、监控接口单元三个部分。GNOS掩星探测仪原理如图1所示。
天线信号进入GNOS掩星探测仪主机,主机主要实现射频信号下变频、基带信号处理、数据解算以及与卫星之间的数据交互等。与卫星平台的数据交互由监控接口单元实现。监控接口单元的功能采用FPGA及其外围电路完成。监控接口FPGA主要实现GNOS掩星探测仪基带处理单元的工作状态监测与控制、科学数据缓冲下传、辅助定位数据处理下传、遥测数据处理下传,广播数据及上注指令处理或转发等功能。科学数据下传至卫星平台采用RS-422总线,遥测数据与辅助定位数据下传、上注指令与广播数据的传输采用1553B总线。
2 硬件电路设计
GNOS掩星探测仪的遥测数据由两部分组成,一部分由基带处理单元产生,另一部分由监控接口FPGA自主采集生成。FPGA将这两部分遥测数据组合打包完成后通过1553B总线发送给卫星平台。遥测数据传输的硬件电路原理如图2所示。监控接口FPGA选用高可靠反熔丝FPGA实现,型号为A54SX72A,1553B总线RT端的接口控制芯片选用BU-65170,利用BU-65170内部RAM的两个地址空间段构成双缓冲,避免使用外部RAM,简化了系统硬件设计,提高了系统的可靠性。
BU-65170工作在RT模式、16位数据传输、非零等待、缓冲存储模式,其外围信号的配置如下[2]:
(1)TRANSPARENT/BUFFERED引脚接低电平,ZERO_WAIT引脚接高电平,使其工作在非零等待缓冲模式;
(2)16/8引脚接高电平,配置其数据总线有效宽度为16bits;
(3)POLARITY_SEL引脚接高电平,在16bits缓冲模式下,该引脚接高电平,则读操作时,RD/WR引脚高电平有效,写操作时RD/WR引脚低电平有效;
(4)FPGA不需要采取复用的地址/数据总线,因此ADDR_LAT引脚接高电平。
基带处理单元产生的遥测数据采用同步传输方式发送给监控接口FPGA,RFS为同步信号,RCK为时钟信号,RXD为数据信号。PPS为秒脉冲信号,作为基带处理单元发送遥测数据的触发信号。
基带处理单元通过同步传输方式发送遥测数据的传输时序如图3所示。RFS为单周期的高电平脉冲,与数据的最高位对齐。RXD数据以16位为单位进行传输,高位在前,低位在后,且在RCK时钟上升沿同步刷新。时钟信号RCK的频率为1MHz,由基带处理单元连续输出,监控接口FPGA作为接收端,在时钟信号RCK的下降沿锁存数据。
3 软件设计
3.1 基带处理单元与监控接口FPGA的遥测数据传输协议
GNOS掩星探测仪的遥测数据长度为64字节,其中基带处理单元产生的遥测数据为48字节,由三个子包组成,每个子包为16字节。基带处理单元的遥测数据每16 s发送一次,采取分时发送方式,每次发送一个子包,子包之间的传输间隔为2 s,三个子包的包标识分别为“0x EB90”、“0x09D7”、“0x7625”。发送子包时,先发送子包标识,再发送子包数据。传输协议如图4所示。
3.2 软件实现
3.2.1 基带处理单元遥测数据接收
监控接口FPGA检测到秒脉冲信号的上升沿后,进入遥测数据接收状态。接收到子包包头后,准备接收子包遥测数据。在下一个同步信号RFS到来后,在时钟RCK的下降沿锁存数据,将收到的数据暂存在寄存器中,收到16个字节数据后,即结束本次遥测数据接收,返回空闲状态。遥测数据接收状态转换如图5所示。
为了增强监控接口FPGA接收数据的可靠性,采取如下措施:
(1)如果在接收数据的过程中接收到新的秒脉冲信号,则重新开始接收遥测数据,之前接收的数据无效。
(2)以秒脉冲上升沿为计时起点,如果超过0.5 s还未完成16字节数据的接收,则认为本次接收的数据无效,返回空闲状态。
3.2.2 双缓冲数据传输
如果将64字节遥测数据都缓存在FPGA内部,由于A54SX72A的资源紧张,FPGA占用资源率超出了100%,无法正常运行。而如果将64字节遥测数据缓存在外部RAM,需要增加外部RAM器件和对RAM的读写访问控制逻辑,增加了系统设计的难度,同时带来系统功耗和面积的增加,降低了系统的可靠性。
因此,监控接口FPGA每接收到一个16字节子包,将其写入1553B接口芯片内部RAM的对应区域中。在1553B接口芯片BU-65170的内部RAM区开辟A、B两个缓冲区,A、B两个缓冲区中的数据交替更新。监控接口FPGA更新A缓冲区的遥测数据时,让卫星从B缓冲区获取遥测数据,反之亦然。
上电后,监控接口FPGA首先将BU-65170的内部RAM区的两个缓冲区都初始化为0,并将A缓冲区作为卫星平台取遥测数据的子地址,置矢量字,以便卫星平台第一次轮询时能取到遥测数据。
后续的工作流程如图6所示,可分为两种情况:
(1)以卫星平台取走遥测数据的时刻为计时起点,到第14 s时,如果基带处理单元的三个遥测数据子包都已接收完毕并写入1553B的A缓冲区中,则监控接口FPGA将自主采集产生的遥测数据也写入A缓冲区的相应地址中,并将A缓冲区作为卫星平台取遥测数据的子地址,反之亦然。然后置矢量字,确保卫星平台下次(16 s间隔时间到的时刻)能取到遥测数据。
(2)如果到第14 s时,基带处理单元的三个遥测数据子包正在更新A缓冲区,但尚未更新完毕,则监控接口FPGA将自主采集产生的遥测数据写入B缓冲区的相应地址中,并将B缓冲区作为卫星平台取遥测数据的子地址,反之亦然。然后置矢量字,确保卫星平台下次(16 s间隔时间到的时刻)能取到遥测数据。
如果基带处理单元由于故障未能发送遥测数据给监控接口FPGA,则参照上述第二种情况处理,这样监控接口FPGA自主采集生成的遥测数据下传不会因为基带处理单元故障而受影响。
4 试验验证
利用GNOS掩星探测仪的地检测试设备模拟卫星平台,接收GNOS掩星探测仪的科学数据,并发送给上位机,上位机软件对科学数据进行实时存储、处理和显示。地检测试设备还模拟卫星平台定时轮询1553B总线的RT终端,获取GNOS掩星探测仪的辅助定位数据、遥测数据。轮询遥测数据的周期与卫星平台一致,设为16 s。上位机接收遥测数据实时运行的显示界面如图7所示。
GNOS掩星探测仪的遥测数据包中有一个数据为TIC计数,占用4个字节,其含义为GNOS掩星探测仪上电加载程序后连续运行时间,单位为s。为了验证1553B总线数据传输是否稳定可靠,利用GNOS掩星探测仪老炼试验的一组数据来分析TIC计数,该组数据持续将近7天。图8为TIC计数的曲线,图9为TIC计数的前后两个相邻数据的差值曲线。
图8中曲线出现的拐点为GNOS掩星探测仪定时重加载的时刻,定时时间为24 h。即,每隔24 h,GNOS掩星探测仪重新加载程序开始运行,因此其TIC计数也相应从0开始累计。
从图9可以看出,除了重加载时刻之外,TIC计数的前后两个相邻数值的差都为16,与卫星轮询的周期一致。
上述试验可以证明,采取双缓冲传输设计后,GNOS掩星探测仪的1553B总线数据能实现可靠无误传输。
此外,GNOS掩星探测仪已经过高低温循环试验、热真空试验及整星电测、整星各项环模试验等考核,在所有这些试验考核过程中,1553B总线都实现了数据的稳定可靠传输。
5 结论
本文提出一种利用1553B总线接口芯片BU-65170内部RAM的两段地址空间作为GNOS掩星探测仪遥测数据双缓冲的方案。与传统方案相比,此方案避免了使用外部RAM,简化了系统硬件设计,提高了系统的可靠性。对双缓冲的遥测数据交替更新访问,经试验验证,结果表明该双缓冲传输方案能实现1553B总线数据地可靠无误传输。
参考文献
[1]杨伟为,杨萍.基于BU-64843的MIL-STD-1553B总线远程终端的设计.计算机测量与控制,2015;23(11):3837—3838Yang W W,Yang P.Design of MIL-STD-1553B bus remote terminal based on BU-64843.Computer Measurement&Control,2015;23(11):3837—3838
[2] 黄敬涛,李丙玉,王晓东,等.某型红外探测系统中1553B总线通信设计与实现.电子测量技术,2015;38(9):143—146Huang J T,Li B Y,Wang X D,et al.Design mad realization of1553B bus communication in an infrared detection system.Electronic Measurement Technology,2015;38(9):143—146
[3] 刘骐铭,冯旭哲.星载子网1553B总线数据传输与管理.宇航计测技术,2015;35(5):64—68Liu Q M,Feng X Z.A data transmission and management scheme of inter-Satellite network on 1553B bus.Journal of Astronautic Metrology and Measurement,2015;35(5):64—68
[4] 张惠宇宸,王晓曼,刘鹏,等.基于FPGA的1553B总线的接口设计.吉林大学学报(信息科学版),2015;33(2):125—131Zhang H Y C,Wang X M,Liu P,et al.Design of 1553B bus interface based on FPGA.Journal of JiL in University(Information Science Edition),2015;33(2):125—131
[5] 李海军,牟俊杰,孙海文.高速1553B总线控制器通信管理系统设计.现代电子技术,2014;37(17):16—18Li H J,Mu J J,Sun H W.Design of communication management system for high-speed 1553B bus controller.Modern Electronics Technique,2014;37(17):16—18
星载光电跟踪系统跟踪精度分析 篇6
关键词:星载平台,跟踪精度,跟踪误差,稳定跟踪
跟踪精度作为系统重要性能之一能够最直接地反映系统总体跟踪性能。影响星载光电跟踪系统跟踪精度的主要因素有卫星的振动、摄动及旋转、星载系统工作状态、机械结构及参照系误差、轨道预测误差和背景光噪声等。其中,参照系采取星载坐标系,其误差由实际工作情况决定。轨道预测误差由探测识别系统等星载前续系统给出的数据决定。背景光噪声影响主要来自太阳、悬浮粒子、尘埃及能对光产生反射和散射的星体等[1,2,3]。由于系统的工作状态及自身对跟踪精度都有影响,所以在工程应用中,需要根据实际情况分析影响跟踪精度的主要因素,并有针对性地提出提高系统跟踪精度的方法,满足系统指标的要求。
1 星载光电跟踪系统跟踪精度
1.1 星载光电跟踪系统跟踪误差的主要来源
对星载光电跟踪系统来说,从光电探测器开始敏感外界信号到伺服控制器收到脱靶量信息要有一定的延迟时间,其中包括探测器的积分延迟、信号处理延迟和通讯传输延迟等。在探测系统中,由于图像处理器与主控制器之间,主控制器与伺服控制系统之间均通过总线进行信息传输,这都增加了伺服控制器收到脱靶量的延迟时间。长延迟的存在对跟踪系统的带宽、跟踪精度等造成严重的影响。因此,分析跟踪误差的主要来源,建立星载光电跟踪系统的稳定跟踪技术对于提高系统的跟踪性能有着重要的意义。
图1为普通跟踪系统的主要跟踪误差源,总的跟踪误差包括静态偏置误差和动态随机误差[4]。
根据以上对跟踪误差主要误差源的分析,结合星载光电跟踪系统的组成和工作模式,列举星载光电跟踪系统的跟踪误差的主要来源:
(1)动态跟踪滞后误差;
(2)光电图像传感器误差;
(3)角度位置传感器光电码盘误差;
(4)图像定位算法误差;
(5)卫星平台振动误差;
(6)其他误差。
1.2 影响跟踪精度的因素分析
1.2.1 动态跟踪滞后误差
动态滞后是由于目标运动引起的一项误差,是控制器延时、D/A转换延时、执行机构响应速度等这些原因造成的。在跟瞄伺服系统达到稳定状态时,系统输入与对应的稳态输出之间的差便是动态跟踪滞后误差ε(t):
1.2.2 光电图像传感器误差
光电图像传感器误差是由光电探测器噪声引入误差、光电探测器不均匀性引入误差和空间量化误差所组成。
(1)光电探测器噪声误差是各项误差源中最主要的误差源,它的噪声包括信号和背景的散弹噪声、暗电流、读出噪声等。工程上对这些噪声的综合影响给出一个噪声等效角σNEA:
其中:S为信号,Δt为曝光时间,N为质心窗口半宽,Np为质心窗口像素目,Np=(2N+1)2,RF为单个像素lσ固定噪声,RT为单个像素上的背景信号(包括杂散光和暗电流),则光电探测器器件噪声功率谱密度为:
fs为光电探测器件采样频率,则由光电探测器件噪声引起的跟踪误差为:
(2)光电探测器不均匀性是单个像素的光电响应属性,这是由探测器制作过程中搀杂浓度的不均匀、淀积厚度的差异以及光刻误差等造成的。
(3)空间量化误差是由于有限的探测器像元尺寸造成的,它是光束形状、像元尺寸和光斑质心窗口尺寸的函数。间量化引入的误差通常变化比较慢,其大小由光斑的亚像素位置决定。通常,光斑质心窗口应当取大一些,以减小由于图像截断导致的空间量化误差,但质心窗口尺寸增大同样会接收更多的噪声,导致噪声等效角σNEA增大。因此,在两种误差控制上需要折衷。
1.2.3 角度位置传感器光电码盘误差
光电码盘是一种数字式角度传感器,它能将角位移量转换为与之对应的电脉冲输出,主要用于机械转角位置和旋转速度的检测与控制。影响光电码盘精度的主要因素有:码盘的刻划误差、主轴系的回转精度、码盘的安装偏心、狭缝的刻划误差和狭缝的装配误差。光电码盘角度编码器的量化误差对跟踪精度影响最大。
对于用光电码盘进行转角位置的检测,传统方法是检测码盘输出脉冲数来计算角位移。光电码盘系统总的误差可由下式合成:
其中:σ为光电码盘均方根精度,ε为光电码盘编码器精度,ξ为精密弹性联轴器传动精度,γ为编码器转换电路精度。
1.2.4 图像定位算法误差
图像定位算法一般采用质心定位、形心定位、峰值定位、边缘定位等常用算法。当目标的形状和预测精度一定时,对目标估计精度影响最大的因素就是目标窗口的中心位置。误差对窗口中心位置非常敏感,因为误差的均值直接正比于xt-xc,xt为目标的实际位置,xc为目标窗口的中心坐标。由图像定位算法引起的误差可以写为:
其中,k与背景和目标像素之比即目标误判概率有关。
1.2.5 卫星平台振动误差
卫星轨道产生的不均匀引力、太阳的辐射压力或空间站内部的一些操作都有可能引起卫星平台的振动。在星载光电跟踪系统中,平台的振动造成的角振幅干扰可能显著地影响系统的总跟瞄误差的值,因而需要采取抑制措施。目前的卫星平台一般采用振动隔离或者是设计具有优良扰动抑制能力精跟踪系统来抑制卫星振动,所以在经过抑制卫星振动后产生的卫星平台振动误差几乎可以忽略不计。
1.2.6 其他误差
其他误差如电源波动、温度变化引入的随机噪声,系统调试校准误差等。
由于星载系统自身特点,跟踪精度可以用视轴稳定误差来表示。再根据星载空间环境特殊性,量化的跟踪误差主要由光电传感器NEA、控制系统机械误差及动态滞后误差决定。总跟踪精度为:
其中:σ为总跟踪精度,σ1,σ2,…,σn为各因素引起的误差。
2 计算跟踪精度及提高跟踪精度的方法
实例:某星载光电跟踪系统,跟踪精度要求60″。根据实际情况,列出对本系统影响较大的跟踪误差:
系统采用的光电码盘的精度是16位20″,假设光电码是线性变化的,则运用光电码盘对探测器满程定标的误差大约是σ1=10″;
跟踪相机的帧频为60Hz,则一帧的时间是16 ms。系统伺服响应时间为10 ms,所以系统总响应时间为26 ms。目标的运动速度为1°/s,由于一帧的滞后引起的误差为σ2=26 ms×1°×3 600=93.6″;
由形心算法计算得到的误差为:;
跟踪相机探测器面阵大小为1 024×1 024,光敏元大小为12μm×12μm,所对应的视场大小为2°×2°,由它引起的误差最大为0.5个像元点,即误差为;
这样,跟踪精度为σ=σ12+σ22+σ32+σ42,计算得σ=94.2″。
为保证系统的可靠跟踪和精度测量,可采用以下技术途径来提高系统的跟踪精度:
2.1 改善伺服控制系统的性能
提高伺服响应速度,减小响应时间,提高跟踪系统的带宽,减小系统响应的动态误差。
2.2 提高探测帧频
本系统的相机采用了窗口读出模式,在目标位置初步判定后,可设置一个局部图像窗口,视频读出数据率不变,帧频可提高,脱靶量检测频率也同样可提高。这对伺服控制系统的响应性能有更高的要求。
2.3 采取稳定跟踪技术
星载光电跟踪系统依靠传感器提供运动目标信息,捕获并稳定跟踪目标。由于图像传感器系统在提取目标时需要一定的处理时间,控制系统得到的运动目标的信息都有一定的滞后,在跟踪快速运动目标时,该滞后量必然成为影响控制系统的稳定性和跟踪精度的主要因素。预测滤波算法就是根据在前面的目标信息以及目标信息的滞后量已知的情况下,预推出当前目标信息,克服目标信息的滞后量对控制系统的影响。
常用的数据滤波方法有有限记忆最小平方滤波、α-β-γ滤波、Kalman滤波和综合预测器,这些滤波方法有他们各自的优势和适用场合。
(1)有限记忆最小平方滤波是用靠近现在时刻的N个带有随机噪声的测量数据,估计现在时刻或预测未来时刻目标运动参数,并使估值或预测的均方误差最小。此方法虽然简单,但精度有限,记忆点数多,当目标机动性加强时,滤波器不能及时反应,致使系统误差加大。
(2)α-β-γ滤波即常增益最优递推滤波。滤波效果优于有限记忆滤波,并且不太复杂,但是精度有限,适用中等精度系统和计算速度有限时应用。
(3)Kalman滤波精度高,高精度跟踪采用的滤波算法主要以Kalman滤波器为主要技术。但是Kalman滤波计算量大,实时性差,而且容错能力不够好,对它的适用范围也有了一定的限制。
(4)综合预测器是在某一次预测算法所涉及的范围内,目标的运动可看作直线运动和曲线运动的某种组合,因此可以用多种预测结果的综合作为最终的预测值。
3 结语
根据以上实例可以看出,在星载光电跟踪系统中,对跟踪精度影响最大的是动态滞后误差和伺服系统的响应延时。在对系统的跟踪精度进行分析之后,采用了改善伺服控制系统的性能、提高探测帧频和启用综合滤波器等切合工程实际应用的方法来提高系统的跟踪精度。经过以上的改善,系统的跟踪精度达到了60″,满足了系统跟踪精度指标的要求。
本文在理论分析的基础上,对实际系统的跟踪精度做了定量分析。可以看出,确定并提高系统跟踪性能既要考虑实际系统的工作环境特殊性,又要考虑技术实现的可能性,合理的分析和设计对实现良好的光电跟踪设备总体性能是非常重要的。
参考文献
[1]Shinhak L.Pointing Accuracy Improvement Using Model-basedNoise Reduction Method[J].SPIE,2002,4635(5):65-71.
[2]马佳光.捕获跟踪与瞄准系统的基本技术问题[J].光学工程,1989(3):38-42.
[3]张秉华,张守辉.光电成像跟踪系统[M].成都:电子科技大学出版社,2002.
[4]张秉华,熊金涛,胡渝.光通信中光束瞄准的误差分析[J].电子科技大学学报,1998,27(5):478-481.
[5]Amon S,Kopeika N S.Possible Solutions to Mitigate Vibra-tion Effects in Laser Inter Satellite Links[J].SPEI,2002,4489(3):202-207.
[6]周晓东.预测滤波技术在电视跟踪系统中的应用研究[D].长春:中国科学院研究生院(长春光学精密机械与物理研究所),2007.
[7]姜复兴,陈希军,昊征能.提高图像跟踪精度的一种算法[J].应用激光,2001,21(6):392-395.
[8]高浩军,杜宇人.目标跟踪技术及应用前景[J].现代电子技术,2004,27(24):1-2.
星载继电器抗浪涌能力研究 篇7
继电器广泛应用于卫星各单机设备, 是供配电控制的主要实现手段。继电器能否安全、可靠地使用关系到整星供电安全。在继电器选型时, 设计师通常根据其负载稳态工作电流进行一级降额, 但大部分星载单机设备在供电端接入EMI滤波器、DC-DC变换器, 因此对于继电器来说负载均为容性负载, 在继电器接通瞬间会产生浪涌电流。
本文通过开展星载继电器抗浪涌能力试验研究, 为星载继电器选型以及使用提供参考。
2 浪涌电流产生原因分析
图1是一个典型的星载电源系统, 28V一次母线通过EMI滤波器后, 经DC-DC变换成星上设备需要的二次直流电压。S1实施供电回路的通断。由于EMI滤波器输入线路端包含了一些电容, DC-DC转换器在输入和输出端也含有电容, 负载端有可能含有其它的附加电容, 这些S1接通时, 电容须要电流对其充电直至稳态电压, 产生浪涌电流。浪涌电流的峰值可由dv方程式推导, 。电容C是一次电源输入端的等效总电容, 是电容充电电压波形的斜率。
3 星载继电器浪涌电流试验方案
试验选用国产2JB5-2型航天继电器, 为了研究在不同工作电压和不同浪涌电流下继电器触点损伤, 对该继电器在不同工作电压和不同浪涌电流下进行1000次的闭合、断开动作, 并对试验前后触点闭合状态下的接触电阻进行了测量、对比。
试验电路如图2所示。通过改变R参数的大小可以设定电路稳态工作电流I, 改变C参数可以改变继电器接通瞬间的浪涌电流。试验中用电流传感器测试继电器在触点接通瞬间电路中产生的浪涌电流。完成试验后, 将继电器进行解剖, 检查继电器触电状况。
4 试验结果
在不同负载电容下测得的继电器触点闭合时浪涌电流, 电容值增大时, 浪涌电流也随之增大, 最大达到8.7A, 是2JB5-2稳定工作电流的8.7倍。试验结束后, 对继电器进行了各项电性能参数测试, 测试结果见表1, 产品绝缘电阻与试验前相比没有明显变化, 各项指标均正常。
之后对2JB5-2进行解剖, 在体视显微镜下观察继电器内部情况, 四组簧片中有一组常开触点的静簧片上存在明显烧蚀, 其对应的动簧片触点部位烧蚀后形成较明显的凹坑, 凹坑形貌符合容性负载下浪涌电流的典型烧蚀形貌, 见图3。
5 结语
本次试验结果表明, 当继电器触点后端接有容性负载时, 在触点闭合供电接通时会产生较大的浪涌电流, 对继电器的触点会产生损伤。继电器的接触电阻虽然没有明显的变化, 但簧片触点被烧蚀, 长期使用会影响继电器寿命和可靠性。
摘要:空间飞行器继电器在使用实际过程中, 触点后端通常会接有滤波电容, 在触点闭合供电接通时, 会产生瞬态大电流超出继电器触点的额定带载能力, 对继电器的触点会产生损伤, 影响使用寿命。本文对继电器触点抗浪涌进行了验证试验, 对继电器触点在承载浪涌电流情况下的触点损伤情况进行分析, 以得出继电器触点的抗浪涌能力。
星载环境下可重构技术分析 篇8
当今星上载荷工作系统发展迅速,系统规模日趋庞大,用户数量日趋增多,从而导致星上处理能力种类增多、计算量增加和工作可靠性要求更高。然而星载环境下不仅存在着高温、低温、超重、失重和真空放电等严酷环境,而且存在着各种空间辐射,环境条件苛刻,要求星上处理芯片具有较高的抗辐射特性。而抗辐射类芯片的制造和生产工艺要求极高,关键芯片难以生产制造,成为制约卫星处理能力的瓶颈。
1 器件防护技术比较
卫星运行在宇宙空间中,空间环境中的各种高能粒子穿过卫星内部功能电子器件时会辐射影响半导体电路,单粒子效应(SEE)是指单个的高能质子或重离子导致的微电子器件状态的改变,从而使卫星发生异常或故障的事件,主要包括单粒子翻转(SEU)、单粒子闩锁(SEL) 、单粒子栅击穿(SEGR)、单粒子烧毁(SEB) 、单粒子功能中断(SEFI) 、单粒子瞬态脉冲(SET) 、单粒子多位错(SEMBE) 和单粒子导致暗电流(SEIDC)等。按器件损伤程度可分为永久性故障和暂态故障2类。为了克服和消除单粒子效应造成的后果,采用了多种方法来进行器件防护保护抗辐射,例如屏蔽技术、加固技术、ROM防护技术、EDCA技术和三模冗余技术等。
1.1 EDAC 技术
EDAC技术是防止单粒子翻转的有效技术。常用的方法有奇偶校验码(只能检测错误,不能校正错误)、海明码(可检测2位错误,并校正一位错误)和RS 码(能够检测和校正数据结构中的多位和连续错误)。为了避免处理器系统RAM资源受到单粒子翻转的影响,可以采用纠错编码或纠错电路的方法来消除单粒子翻转对系统的影响。虽然加了纠错码的RAM消耗了更多的资源,但是当有翻转错误发生时,纠错码可有效地将这些错误检出并纠正,从而保证了系统的可靠性,其代价是冗余硬件资源和处理延时。
1.2 三模冗余技术
将重要数据存放在存储器内3个不同的物理区域位置,应用时从3处取出,按照3取2比对/刷新原则处理,也可以削除SEU 造成的瞬时错误。三模冗余技术实际上是一种全集的纠错编解码技术,与三一大数判决有异曲同工之处。其基本思想是:输入数据同时送入3个实现相同的功能的模块,将各个模块输出的数据送到1个多数表决器,进行3选2多数有效选举的判定,从而可以保证输出数据的正确。
1.3 擦洗的方法
FPGA在单片机或者自身内部程序控制下,定期对FPGA的片内RAM进行擦洗和重写入,以保证SRAM中的数据是正确的,从而消除单粒子翻转现象对系统影响。优点是无需额外的硬件逻辑资源,实现简单。缺点是无法对擦洗数据进行校验,不能判断是否发生过单粒子事件,且只能恢复暂态故障,不能消除永久故障。可以被看作是一种最简单和初期的器件重构技术。
2 可重构技术
可重构技术是一种通过编程配置的方法来改变可编程芯片的结构从而实现不同功能的技术,广义的可重构还包括软件领域的模块可重构技术和方法,此处仅指针对FPGA/CPLD的可重构技术。本质是借助可重构硬件,改变芯片内部的资源使用情况,从而进行不同的逻辑计算运行,进而完成各种不同的功能。
2.1 静态重构和动态重构
静态重构又称编译时(Compile-Time)重构,特点是每个任务都需要一个涵盖整个器件的配置文件。在开始执行目标任务前,要将这个配置文件编程到可重构逻辑器件的逻辑资源上。一旦开始执行,在目标任务的整个执行生命周期内,可重构逻辑器件上的配置文件将保持静态而不发生任何改变。
动态重构又称运行时(Run-Time)重构,特点是能够在目标任务运行的同时对可重构逻辑器件上的逻辑资源进行重构,而且在每次重构时配置文件的大小都远小于静态重构的配置文件大小,因此能有效减少重构的时间开销。
2.2 全局重构和局部重构
从重构的范围来说,重构可以分为全局重构和局部重构,早期重构系统多是基于可编程器件整体全部重新加载完成整体重构,而随着重构技术的发展现在重构技术更着重于局部重构,仅仅对功能电路需要更新的模块部分进行重构和升级。
2.3 基于模块的重构技术
基于模块的动态重构是现今快速发展的一种基于模块化的设计方法,即将电路按照逻辑功能划分成若干个单独的模块,这些模块可分为固定模块和可重构模块,模块之间通过总线宏进行连接,在系统模块调度算法的控制下,对可重构模块进行重配置改变其逻辑功能或者恢复原配置以克服由于单粒子事件带来的暂态故障。例如在一个星上数据理系统中,当其中的滤波器模块由于受到单粒子效应而出现暂态故障,此时可以用基于模块的动态重构的方法重新配置滤波器模块,恢复系统的正常工作。基于差异的动态重构是基于比较的设计方法,即FPGA重构后的配置与FPGA当前的配置中有比较少的部分需要修改(比如修改一个LUT、BRAM或者I/O等)的时候,只需要比较待重构前后的电路逻辑功能的差别,产生一个只包含电路差别的比特流(Bit-Stream)配置文件,因其比完整的比特流(Bit-Stream)配置文件小很多,所以下载非常迅速,下载后即可实现基于差异的动态重配置。
3 星载可重构系统
传统的电路设计方法一旦电路结构固定,则电路功能固定不可变,如果电路出现故障或者需要升级改造,则需要重新设计电路或更换电路板等器材。在星载应用环境中,工程应用迫切需要当某部分电路出现故障时,能够在地面进行远程故障诊断和故障维修,使设备能够继续正常工作。
3.1 星载可重构系统
星载可重构系统主要由可编程逻辑单元、存储单元和控制单元共同组成,如图1所示。宇航级处理器/CPLD接受地面远程配置管理,通过控制单元对多片EPROM构成的存储单元进行调度,动态加载重构可编程器件,从而使得整个系统具有远程升级、故障可修复和抗间辐射能力。
3.2 星载可重构流程
星载动态重构方法的优点是可以在星上总控单元的控制下,实时地检测错误并自主地修复错误或者接收地面控制系统的重构指令进行动态重构并修复错误,星载可重构流程如图2所示。
3.3 星载可重构特点
3.3.1 抗单粒子效应等空间辐射
当FPGA中的某个CLB发生故障后,采用动态重构的方法进行在线纠正,恢复系统的正常工作。如果出现SEB永久性故障损伤,就通过比对的办法检测出永久故障点并进行标识或标记,在地面进行时序面积约束重新编译设计,综合布局布线工具就禁止使用该块已经损坏的区域,这样生成的FPGA工作电路版图就不再包含该处已经损坏的逻辑块。
如图3所示,经过星地链路上传加载和重新配置,载荷设备经能够恢复正常工作,从而达到远程故障修复的目的。
3.3.2 能够远程故障维修、硬件升级
当星载设备出现未预期故障后,可以采用地面远程配置,更改其工作模式,升级硬件电路程序。如果物理接口保持一致,那么通过加载不同的工作电路算法,还可以工作在不同的协议状态之下,这样星载设备具备很强的向上/向下兼容性。
3.3.3 减小设备体积重量和复杂度
采用可编程器件设计实现可重构系统,包括处理器在内的大部分逻辑电路都可以FPGA来设计实现,这样减少了芯片器件的类型和用量,降低了设备载荷的重量,减少了芯片间的互联复杂度,增大了处理能力,提高了可靠性。
3.3.4 缩短研发周期延长工作寿命
一般来讲卫星的生产量非常小,传统的基于ASIC设计制造的星载系统研发周期长成本高灵活性差,基本属于不可重复利用资源。而基于FPGA的可重构系统其生产费用相对于前者有了很大程度地减低,同时也很大程度地缩短了研发周期,可以通过动态改变其内部配置满足多项功能需要,具有远程修复能力,进而延长系统工作寿命。
4 结束语
星载可重构技术主要采用FPGA来设计完成,相比传统器件方法技术具有成本低投入少的特点,降低单次研制投产高昂的材料费用、试验费用和人力费用。这项技术在星上交换、星上IMS服务器部署、星上数字调制解调和星上信号控制处理等领域广泛应用,能够对航空航天载荷系统的研究工作起到促进和提升。
参考文献
[1]郭红霞,王伟,罗尹虹,等.新型微电子技术单粒子效应研究面临的挑战[J],2010,33(7):538-542.
[2]杜新军,周建华,胡剑平.在SRAM型FPGA中局部重构与配置刷新的兼容方案[J].2011,32(2):48-51.
[3]李志刚,潘长勇,杨知行.抗单粒子翻转的可重构卫星通信系统[J].宇航学报,2009,30(5):1 752-1 756.
[4]张晓奕.IMS网络与现网业务融合探讨[J].电信工程技术与标准化,2010(1):86-90.
[5]李鹏,兰巨龙,姜鲲鹏.FPGA动态局部重构技术研究进展[J].信息工程大学学报,2009,10(1):98-101.
星载实现 篇9
卫星的平台通信对时效性、可靠性的要求较高,一般采用实时性和冗余度较高、技术较成熟的1553B总线或CAN总线。任务系统的设备连接和数据传输则引入了新型高速空间总线Space Wire总线,以解决传统的点到点、串行连接方式兼容性不高、协议封闭、难以扩展等问题。
采用多总线的卫星通信网络,需要解决不同总线间的通信问题,本文针对基于Space Wire-1553B总线的星载通信网络设计了一种总线桥接器,实现了1553B总线和Space Wire总线间的数据交互。
1 基于双总线的星内通信网络
星内通信网络采用分层、多总线策略[2],针对不同数据类型的传输特点选用不同的总线,可以提高通信系统的性能和可靠性。
根据传输和处理特性,可将整星的数据分为平台数据和有效载荷数据。平台数据,如各系统的遥测遥控、姿态轨道控制、星地通信服务等信息,速率低、数据量小、交互频繁、实时性和可靠性要求高,采用1553B总线进行传输和交互。有效载荷数据,即任务探测器获得的业务数据,速率高、数据量大、传输和处理要求高,采用Space Wire总线实现设备互联和数据传输。
图1为基于1553B总线和Space Wire总线的卫星通信网络拓扑图。1553B总线连接卫星各子系统,中心管理计算机为BC,姿态轨道控制器、电源控制器、数据处理机等设备为RT。BC向各RT发送控制指令,各RT向BC返回运行状态,一些低速探测数据以RT到RT的方式传输至数据处理机,如此,实现了卫星运行状态、控制管理等各种平台数据的交互。
Space Wire总线连接各有效载荷设备和数据处理机,考虑到未来采用Space Wire总线作为卫星单一通信总线的趋势,本文设计实现了一种基于RMAP协议的集中式网络构架,拓扑结构如图2。网络控制器通过路由器与节点设备连接,利用RMAP协议提供的远程操作方法配置网络、控制节点、收集节点的数据和状态信息[3]。本文中数据处理机为Space Wire网络控制器,可向网络中任一路由器或节点设备即有效载荷发送配置指令、读取各网络设备的运行状态、获取节点设备的高速业务数据,实现了Space Wire网络的管控和有效载荷数据的传输处理。
Space Wire总线和1553B总线通过数据处理机即桥接器融为一体,桥接器是Space Wire网络控制器也是1553B总线RT设备,能同时处理Space Wire和1553B总线协议,并实现两种协议的转换。
2 Space Wire-1553B总线桥接器设计
2.1 桥接协议设计
星载Space Wire-1553B总线网络的协议分层如图3,1553B协议自底向上为物理层、数据链路层、传输层、驱动层和应用层[4],Space Wire协议自下而上为物理层、信号层、字符层、交换层、包层、网络层和应用层[5]。双总线通信网络的用户协议运行在1553B总线和Space Wire总线的应用层之上,约定了两个总线以及总线间的数据传输和交互规则。其中,1553B为平台总线,所有设备的控制指令由1553B总线发出,所有设备的运行状态也经1553B总线统一收集;Space Wire为任务系统总线,传输和处理高速的有效载荷数据,可向Space Wire网络各设备转发1553B总线指令,可采集Space Wire网络各设备的运行状态并转发至1553B总线。
根据用户协议,两个总线的桥接协议设计如图4所示,1553B总线指令转换成RMAP指令包后转发至Space Wire网络;Space Wire网络和各设备的运行状态,由RMAP指令包采集后需转换成1553B总线遥测包;1553B总线上的低速载荷业务数据和Space Wire总线上的高速载荷业务数据,需进行统一调度和CCSDS格式化处理。
2.2 硬件设计
Space Wire-1553B总线桥接器作为1553B总线RT设备和Space Wire网络控制器,需要实现1553B和Space Wire总线的各层协议、高层用户协议以及总线间的桥接协议。桥接器的硬件设计框图如图5,1553B协议芯片通过变压器与1553B总线连接,实现物理层、数据链路层和传输层协议;Space Wire路由芯片连接多个节点设备,实现物理层到网络层的协议;主控制器连接1553B协议芯片和Space Wire路由芯片,实现1553B总线驱动层和应用层协议、Space Wire应用层协议、高层用户协议以及总线桥接协议。
主控制器是桥接器的核心,采用FPGA实现,是1553B协议芯片和Space Wire路由芯片的主处理器。1553B协议芯片选用BU-65170,芯片的地址线、数据线、控制线以及反馈信号线与主控制器相连,主控制FPGA以16位方式访问BU-65170内部寄存器和RAM,并按高层协议实现RT设备的功能。Space Wire路由芯片选用Sp W-10X路由器,路由器的Space Wire端口与有效载荷或其他路由器连接,两个外部端口与主控制器连接,主控制FPGA通过外部端口访问路由器或远程节点设备的内部寄存器,实现Space Wire网络控制器的功能。此外,主控制FPGA还实现了双总线桥接协议。
3 桥接器主控制FPGA设计与实现
3.1 主控制器逻辑设计
图6是Space Wire-1553B总线桥接器中主控制FPGA的逻辑设计框图。1553B总线控制模块由驱动层控制、协议芯片配置、中断处理三个子模块组成,驱动层控制子模块是应用任务与低层协议之间的接口,实现对协议芯片内部RAM和寄存器的读写控制;协议芯片配置子模块根据用户协议制定配置流程,在系统上电或复位之后,对协议芯片的工作模式寄存器、RT查找表、RT子地址控制字、RAM存储器等进行初始化配置;中断处理子模块负责处理指令、遥测、低速业务数据等用户事务,在接收到协议芯片的中断信号后,通过驱动层控制子模块访问协议芯片的中断寄存器,识别中断源后进入相应的中断服务流程,指令服务流程对总线控制指令进行复核、回复并提取指令内容,遥测服务流程将收集到的遥测数据写入协议控制器等待总线的调度,业务数据服务流程从RAM数据缓冲区读取数据。
Space Wire网络控制模块由应用层服务接口、Space Wire网络配置管理、包处理三个子模块组成,应用层服务接口子模块是用户任务与低层协议之间的接口,向上层提供了访问Space Wire路由器或远程节点设备内部寄存器的接口,提供了写包、读包、读取和配置链路状态等服务;Space Wire网络配置管理子模块,在系统上电或复位之后配置Space Wire网络的初始状态,定时监听网络的运行状态、采集各设备和链路的状态数据,并在1553B总线指令的控制下对Space Wire网络再配置;包处理子模块将配置管理子模块输出的指令封装成RMAP指令包,通过应用层服务接口子模块发至Space Wire网络,接收各个设备和链路的RMAP指令返回包从中提取状态信息,此外还对接收到的Space Wire网络格式数据包进行判别和容错处理。
协议桥接模块衔接了1553B总线控制模块和Space Wire网络控制模块,负责两个总线间的协议转换,并将1553B总线和Space Wire网络的业务数据按CCSDS数据协议进行处理。
3.2 协议桥接模块设计
协议桥接模块的逻辑设计框图如图7,由指令译码、遥测采集及组包、指令堆栈、数据协议处理等子模块组成。指令译码子模块根据指令译码表,将1553B总线指令码翻译成Space Wire网络指令码;遥测采集及组包子模块按用户协议约定的顺序发送Space Wire网络指令码,以获取Space Wire网络各设备的运行状态信息;为防止指令间的冲突,上述两个子模块的Space Wire网络指令码分开存入指令堆栈,且总线指令具有较高优先级,待Space Wire网络配置管理模块空闲时读取。协议桥接模块为每一个Space Wire网络指令,包括1553B总线转译的控制指令和遥测采集指令,分配一个唯一的ID号,协议桥接模块根据返回包中的ID号获取指令执行情况和设备运行状态,如此,可连续发送指令,无需等待和处理当前指令的返回包。
数据协议处理子模块接收1553B总线控制模块的低速业务数据,先组MPDU协议包然后存入FIFO,接收Space Wire网络控制模块的高速业务数据存入FIFO,调度格式化子模块按CCSDS协议调度各FIFO中的数据并格式化组帧。
3.3 跨总线通信时延分析
经总线桥接器转发的指令和遥测涉及跨总线的传输,较之单总线网络,存在转发时延。
跨总线的指令处理过程为,总线桥接器接收到1553B总线指令中断后,读取指令包,检查正确性和符合性,若指令正确则提取指令码否则丢弃,然后将正确的指令译码后封装成RMAP指令包,并发送到Space Wire网络中对目标设备进行配置。
如图8所示,跨总线的指令延时为
总线桥接器以16 MHz频率、16位模式访问控制1553B协议芯片,以30 MHz频率处理Space Wire事务。tRT为处理1553B中断、读指令包及取指令码的时间,处理时间约为2.1μs。tEC为译码时间,由指令码或遥测码查表确定Space Wire网络目标设备号、目标寄存器、操作位和操作码等,约为150 ns。tTRP为等待目标链路和端口空闲的时间,1553B指令的优先级最高且RMAP返回包处理为非应答模式,因此最长等待时间为发送一个RMAP读指令包的时间,计算方法同tTWP。tSS是系统开销,约为0.2μs。tTWP为发送一个RMAP写指令包的时间,计算如公式(2),tR为RMAP包在网络中的传输延时,每个路由器的延时为0.6μs[6],总延时为0.6 R,R为RMAP指令包到目标设备所经过的路由器个数,本文的模型中到R为1;tRH为发送RMAP包头的时间,如公式(3),hF为包头中定长域的字节数,写指令包为16、读指令包为12,R为1,S为链路速率本文为160 Mbps,10是8~10 b编码后的位宽,计算得RMAP读、写指令包发送包头的时间约为0.9μs和1.2μs,tHP为目标设备处理包头的时间,按5μs计算[6];tDA为发送RMAP包的数据区和其CRC校验的时间,如公式(4),该部分为5个字节,发送时间为0.3μs。
综上,计算得tTWP为7.1μs,tTRP为6.8μs,tCD为16.3μs,能够满足系统指令的响应时间要求。
Space Wire网络各设备的运行状态遥测处理过程为:总线桥接器定时顺次读取各设备的相关寄存器值,更新遥测缓存,等待1553B总线取走。由于采用非应答方式,返回包的判读可与发送指令包并行处理,如图9所示。
返回包的处理时间为
网络传输延时tR同样为0.6μs。tRD为发送返回包的时间,本文中返回包最长为19字节,链路速率为160 MHz,根据公式(6)计算得tRD约为1.2μs。
发送一个RMAP读指令的时间tTRP为6.8μs,大于返回包的处理时间,因此读取所有寄存器值的时间为
式(6)中tTRP、tSS的含义和计算同公式(1),n为相关寄存器的个数,本文的拓扑中共有5个网络设备,每个设备需关注10个寄存器的状态,n为50,计算得tTD为358.1μs。本文定时0.2 s更新Space Wire网络遥测,更新时间仅占更新间隔的1.8%,即使在网络一直繁忙的状态下也能及时更新运行状态。
4 测试与试验
Space Wire-1553B总线桥接器的测试系统组成如图10,1553B模拟器与桥接器连接,组成1553B总线网络,节点设备1~4与桥接器连接,组成Space Wire网络。1553B模拟源模拟BC,在测试服务器的控制下,向桥接器发送1553B总线指令、收集Space Wire网路各设备的运行状态,还模拟多个RT设备,向桥接器发送低速业务数据。节点设备模拟有效载荷设备,向桥接器发送高速业务数据,桥接器则采集Space Wire网络中各节点设备及链路的运行状态,并发送到1553B总线上。数据采集设备采集并解码桥接器输出的CCSDS格式化数据,发送给测试服务器。测试服务器实时显示、记录指令的发出及遥测的变化,并根据相应的遥测变化判断指令的执行情况,还实时采集、分析数据并显示分析结果。
采用自动测试模式对总线桥接器进行720 h强度测试,测试服务器自动遍历所有1553B总线指令,并以2 s的采样速率更新1553B总线指令,实时监测分析结果表明试验期间指令均正确执行、遥测均及时更新。
5 结论
本文主要针对卫星的双总线通信系统的应用需求,进行了Space Wire-1553B总线桥接器设计。分析计算和试验结果表明,本文的总线桥接器实现了Space Wire网络控制器和1553B总线RT设备的功能,完成了Space Wire和1553B协议的桥接。桥接器支持向Space Wire网络各设备转发1553B总线指令,以及采集Space Wire网络各设备的运行状态发送至1553B总线,且跨总线的指令时延和遥测更新速度能够满足1553B总线的响应要求。
参考文献
[1]蔡曦.一种星内网络系统构架的选型及实现.上海:复旦大学,2008Cai Xi.The scheme and implementation of satellite computer network.Shanghai:Fudan University,2008
[2] Tunesi L,Armbruster P.On-board hierarchical network.The SPIE Conference on Sensors,Systems and Next-generation Satellites,Barcelona,Spain,2003;September 8—12
[3] ECSS.Remote memory access protocol.ECSS-E-50-11,4th December,2006
[4] 朱维.航天器综合电子系统技术研究.上海:上海交通大学,2013Zhu Wei.System design of spacecraft avionic.Shanghai:Shanghai Jiaotong University,2013
[5] ECSS.Space Wire-links,nodes,routers and networks.ECSS-E-50-12 A,24 January,2003