国内或国外 期刊或论文

您当前的位置:发表学术论文网电子论文》 基于软总线的卫星跟踪控制系统设计与实现> 正文

基于软总线的卫星跟踪控制系统设计与实现

所属分类:电子论文 阅读次 时间:2022-02-23 10:24

本文摘要:摘要:卫星跟踪控制是卫星通信技术中的一项重要技术;设计了一种基于软总线机制的卫星跟踪控制系统,给出了关键的设计方案;硬件平台方面处理芯片采用FPGA+ARM的ZYNQ处理平台,保障系统中处理资源和接口扩展的需求;软件方面通过构建软总线的数据管理机制和通信代理机制,

  摘要:卫星跟踪控制是卫星通信技术中的一项重要技术;设计了一种基于软总线机制的卫星跟踪控制系统,给出了关键的设计方案;硬件平台方面处理芯片采用FPGA+ARM的ZYNQ处理平台,保障系统中处理资源和接口扩展的需求;软件方面通过构建软总线的数据管理机制和通信代理机制,解决传统系统中耦合度高及触发条件难以精准把控等问题,使跟踪系统软件架构清晰明朗,各功能模块接口高效、便捷、易扩展;跟踪流程设计中,优化了跟踪角度调节处理时机,使跟踪算法和外设控制得以并行处理,充分利用处理资源,最终搭建测试环境验证了系统能力;结果表明,该设计有效可靠,其中软总线机制还可应用于其他外部设备复杂的环境,具有较高的应用及推广价值。

  关键词:卫星跟踪控制;软总线;ZYNQ;数据管理机制;通信代理机制

卫星跟踪控制

  0引言

  高速发展的信息化社会中,通信作为众多技术的基础支撑,其重要性日益提升。在各类通信方式中,卫星通信以其通信距离远、覆盖面广、不受地面基站限制、不受地理条件限制、性能稳定可靠、通信容量大且灵活等独特优势,为缺乏通信基础设施的偏远地区用户、航空用户、航海用户提供了很大的便利。同时,在应急通信领域,在突如其来的自然灾害和意外事件发生时,卫星通信凭借开通时间短、传输距离远、通信容量大、组网方式灵活等诸多优点,在地面通信基础设施受到严重破坏无法工作,亟需紧急通信的情形下发挥了重要作用[1]。

  而卫星通信的质量相当程度上依赖于天线对卫星的跟踪,关键技术之一就是能够调整天线的指向,使天线能够快速精准地对准卫星方向。现有的卫星跟踪方案主要使用机械伺服天线和相控阵天线。机械伺服天线因其系统构成简单而最早应用,但随着载体平台小型化、高速化、机动化的更高要求,使得依赖伺服电机驱动齿轮或皮带等传动装置等方式遭遇性能瓶颈。而相控阵天线,通过波控主机输入波控数码,使相邻阵元产生一定相位差从而改变波束在空间的指向,相位空间的变化频率可以达到毫秒级,相对于传统机械转动具有更高的性能保证。

  相控阵天线带来了更快的波束切换能力,同时对上层跟踪控制算法性能带来了挑战,如果对角度的计算速度还停留在原有机械伺服量级,就无法体现相控阵天线的优势。故现有的相控阵卫星跟踪控制方案主控器为了追求实时性,降低系统复杂度,多采用STM32单片机或DSP处理芯片进行搭建,以非操作系统的模式工作,处理芯片时钟均围绕跟踪程序工作,虽然能够实现跟踪目的,但由于其单任务、单线程的处理方式,使得软件设计逻辑性变差、可扩展性降低。

  随着目前跟踪技术引入更多的控制和传感外部设备,功能和接口重复迭代的需求不断提出,这使得原有处理器应付起来相对吃力,需要引入多任务、代理式的设计模式来降低接口耦合性、功能扩展性和代码可读性[2]。基于以上问题提出了使用基于Zynq平台,并搭载Linux操作系统的处理架构,并提供一种多外设协同处理的软总线机制。软件总体架构不仅从根本上决定了软件的各项性能指标能否达到预期的要求,还影响了所开发软件的质量[3]。

  基于以上问题在设计卫星跟踪控制系统软件的过程中,以软件模块化、多外设协同运行为目标,结合系统硬件运行平台和软件开发环境的特点,通过引入软总线的概念,设计了一种基于软总线的卫星跟踪控制系统。硬件上使用基于Zynq平台,并搭载Linux操作系统的处理架构。软件上层次化划分更加清晰,软件各层次间通过标准化接口呈现出松散耦合状态,进而提升了软件的可维护性以及可重用性。从而对后续技术迭代后的接口和需求更改,软件运行性能提高,团队共享维护等工作提供有力支撑。

  1卫星跟踪控制系统平台设计

  系统由主控器、天线阵面(发射阵面、接收阵面)、组合导航设备、变频模块、信标机、功分器、调制解调器等组成[45]。

  1.1主控器

  主控器主要工作时根据组合导航、信标机等设备回传的位置、姿态、信号强度等信息,综合判断天线指向,从而进行卫星跟踪。传统的卫星跟踪主控器多采用单片机,再按需搭配FPGA等扩展使用。系统采用ZNYQ平台架构,其实将专用的中央处理器CPU硬核与FPGA集成于一颗芯片中,产生了一种全新的异构平台,称之为全可编程片上系统(AllProgrammableSoC)。一方面,使得嵌入式系统的设计结构更加灵活,体积显著缩小,可靠性和系统整体性能明显提高;另一方面,使得FPGA可以更快速便捷的融入嵌入式系统中[6]。

  ZYNQAX7020包含两大部分ps(集成两个ARMcortex-a9处理器),和pL(FPGA)。PS:主频1GHz,256kB片内RAM,8GbitSDRAM(以太网,串口,usb,spiflash,SD,IO,LED,KEY)。PL:可编程逻辑块,可编程IO块等(eep-romRTCHDMILEDKEYADC)互联:PS内和PS到PL高宽带连接基于ARMAMBAAXI总线传输质量控制和带宽控制。这些接口和资源能很好的解决主控器对跟踪算法的处理和外部设备的多种扩展需求。

  1.2天线阵面

  天线阵面采用相控阵体制,接收主控器的控制指令,控制发射和接收角度。天线阵面工作在KA频段,在一块印制电路板上集成了1024个发射天线单元、256个beamformer芯片、馈电网络、驱动芯片、波束控制电路、电源电路等,依托FPGA的实时计算能力,快速更改每个天线单元的信号相位与幅度,阵面所有阵元辐射的射频信号在空间合成,实时形成所需指向波束。天线阵面设计紧凑,低剖面,无需机械伺服机构,坚固耐用,能在大空域范围内进行快速指向更新。使用灵活,可由多块阵面按需进行拼接创建所需口径的相控阵天线,针对客户性能需求进行快速迭代,无需设计全新的天线。

  1.3组合导航设备

  组合导航设备用于获取载体自身的位置、姿态,对主控器的跟踪流程进行支撑。选用天线专用惯导系统,采用高精度MEMS技术的惯性传感器,可精确测量载体在空间坐标系中3个轴的姿态(倾斜、俯仰、偏航)、角速率、线加速度以及GPS导航定位信息。本设备根据捷联式惯性导航算法实时计算载体的姿态,采用卡尔曼滤波进行误差补偿,保证在动态环境下和长工作时间的可靠性和测量精度。本传感器系统将惯性测量单元、三轴磁传感器、GPS接收机组合成一体,进行组合导航。

  1.4信标机

  信标机主要用于接收L频段的DVB载波、单音信标或连续载波信号,并以数字电压标称,为跟踪是否成功提供判断依据。具有优越的捕获时间、幅度稳定性及灵活性,能够保障天线在传统卫星系统或高通量多波束卫星系统中实现卫星信号的快速识别及跟踪。

  2卫星跟踪控制系统软件设计

  2.1问题与解决思路

  目前一般的卫星跟踪控制系统采用单任务、单线程的处理架构,将用于感知的组合导航、信标机等设备以及需控制的天线、变频器等设备的通信数据交互,统一并入跟踪的主体流程中进行设计,这样会面临两个技术问题:

  1)随着卫星跟踪技术的发展以及人们对各类功能需求的增加,外设种类逐步增加,如果没有将对外设的控制与卫星跟踪主体流程分离进行思考和设计,没有统一的管理模块对所有数据进行管理,会使整个软件系统架构过于庞大和复杂,造成维护及其困难的窘境,对系统的每次升级,无异于重新开发,大大降低了系统迭代的速度;2)跟踪流程中的触发机制和条件对外设的数据要求时间节拍和处理间隙条件各不相同,有的需要数据到来时同步立即进行处理,有的需要某些处理时机到来时异步取用最新数据处理。但外设种类繁多,如果只考虑单任务进行,势必造成时间间隔出现偏差,处理精度和处理速度会产生较大影响,从而影响整个软件和系统的运行效率,成为阻碍跟踪结果的瓶颈[78]。

  综上所述,这两方面问题也是本设计方案所要解决的重点与难点问题。本文引入软总线设计思路,通过开发一种多外设协同数据处理的软总线模块,来解决上述问题。对于第一个问题,软总线模块在设计上具有数据管理机制,建立资源表,各模块可通过输入资源表获取信息来进行交互。

  同时,提供软总线内部极速内存传输机制,进行资源表的输入输出以及更新操作。功能层面来讲,向各模块提供“注册-发布”功能,各模块可向软总线将自己进行注册,同时发布自身数据类型以及具体数据服务,其他模块按需在软总线上查找所需其他模块的数据。对于第二个问题,软总线模块在设计上具有通信代理机制。该机制为了屏蔽不同模块或外设之间硬件接口差异,通过调用操作系统提供的设备操作函数实现了上下层之间数据与信息的交互,是上层应用模块与底层操作系统交互的纽带。

  同时,通信代理机制还具备时间同步功能,更高效跟直接的设计方式,保证操作系统毫秒级别的实时性水平,这是实现卫星跟踪系统的前提和基础,因此,保证系统各模块时间的全局相对一致是确保系统实时性的关键[911]。而后,在软总线机制的基础上,构建了跟踪处理流程,主要应用于对组合导航、多模机数据的使用,以及对天线和变频器的控制,以及对用户输出工作参数,最后进行了系统搭建和测试验证。

  2.2软件架构设计

  2.2.1操作系统层

  操作系统层是系统设计的基础依赖。使用操作系统可为上层模块提供了一个统一标准的运行环境,使跟踪控制系统在维护、扩展、效率、应用上上一个台阶。操作系统层根据上层应用模块的需求调用相应的操作系统级别驱动将其处理的结果转换为实现卫星跟踪控制所需的输出信息,是软总线与系统硬件资源之间信息交互的桥梁,负责整合硬件资源获取的信息。

  2.2.2驱动层

  由于基于Linux操作系统设计,驱动层非真实与底层硬件资源交互,而是对一些常用的接口资源进行抽象封装,包括串口、网络(TCP、UDP)、SPI以及与FPGA的内存访问交互等。为外设层提供更加便捷的接口使用方式。

  2.2.3外部设备层

  可理解为软总线的驱动。对天线阵面(发射阵面、接收阵面)、组合导航设备、变频模块、信标机、调制解调器等设备进行抽象封装,提供对接软总线接口。向下可适配同类型各型号设备,向上提供统一接口。

  2.2.4软总线层

  软总线层作为控制系统的核心中枢,实现外部设备与跟踪控制应用模块的数据交互部分,屏蔽了不同外设之间的接口差异,使应用模块在适当时机高实时性的对其他模块数据进行读写调度。软总线通过数据管理机制和通信代理机制完成对整个系统资源的管理。在软总线的控制下,各外设模块可对自身信息进行广播,每个外设模块对其他外设模块的资源均统一汇入一张系统资源信息表;当某一外设模块需要使用相应的外设数据资源时,由软总线直接输入或输出目标信息,发送资源请求,目标外设接收到该信息后,再由软总线完成资源跨外设调用,可在不影响其他流程的情况下,快速扩展系统的接口资源[1213]。

  2.2.5应用层

  应用层作为系统各项业务功能实现的关键部分,负责实现卫星整体跟踪流程和算法、整机的电源等控制、以及对用户的服务接口。为了满足软件可维护性、可扩展性的性能需求,各模块通过制定的标准接口完成与软总线的信息交互,最终实现软总线对其的统一管理。

  2.3软总线模块设计

  根据前文所述,软总线模块将系统内所用所有数据统一封装至数据共享模块,一切对全局数据的修改和访问都需经过该模块,保证了数据的安全性对数据进行分类,每大类负责一种数据,大类中还可划分小类,可以对大类中的指定数据进行获取和更新。

  由于是全局访问,考虑多线程访问冲突,需对模块修改进行加锁。考虑到运行效率,对每大类数据分别定义自己的线程锁。建立回调函数列表,在数据更新时,回调响应注册的模块[1416]。

  总的来说,软总线模块的实现具有以优点:

  1)系统软件的开发趋向于扁平化、模块化。为了使软件各模块能够独立并行开发,可按功能需求划分成多个独立的模块,各模块仅通过标准接口与外界交互信息,提高了整个系统的开发效率。2)系统间交互效率提升。通过软总线的同步、异步模式,向各处理模块、外设模块高效的传递数据信息,在非实时操作系统Linux下,也可满足卫星跟踪控制领域对实时性较高的要求。

  3)系统易扩展。随着功能需求的变化,系统可能需要增加或替换相应的外设资源。通过软总线具备的注册和管理机制,实现系统对已有外设资源的管理和新增外设资源的注册,实现外设资源的增加和替换。4)便于后期维护。所有模块都采用封装式设计和开发,当面临功能需求变动时,可直接对相应的模块进行修改,或开发新代码来匹配原接口进行替换,使得软件的开发和修改不再牵一发而动全身。

  2.4跟踪流程设计

  跟踪算法流程采用多线程并行处理,多处同步异步处理应用软总线模块各类接口,主要流程为控制主流程和跟踪模式判定流程[1718]:

  主要通过将组合导航设备、信标机、变频模块等设备实时数据进行综合分析处理,得到天线实时指向。流程中加黑处表示使用软总线接口同步或异步输入输出数据。值得说明的是,整个工作流程时间节拍取决于信标机的传输频率。在通过软总线的同步回调接口,获取信标机实时输出信噪比后,马上对结果进行分析。而对于其他设备数据,由于无法紧密卡准时间节拍,则使用软总线的异步获取接口,沿用最近一次数据进行融合分析,最终得出新的天线指向,从而等待进行下一次信噪比输入。流程中加黑处表示使用软总线接口同步或异步输入输出数据。之所以将此流程独立于主流程并行处理,主要出于两方面考虑:

  1)可更好地明确任务分工,便于维护和升级;2)在关键节点通过线程锁的方式,锁定和释放处理资源,可利用主流程中等待信标机数据的时间间隙,先行对本次处理数据进行处理,起到有效利用处理资源的目的。在判断算法中,加入了多组冗余计算机制,并做了动态配置机制,可通过后期调试调整冗余组数,从而调整至效率和稳定最佳的参数。由于主流程中时间节拍是由信标机控制的,信标机的输入频率有最大上限,只需将此流程的延时频率超过其上限,便可保证永远判断较新的数据(即使出现实时性问题,也建立了保护机制,频率能够追赶即不会影响)。

  3系统搭建与测试

  系统使用Ka频段中星16卫星进行实际验证,并开发了卫星跟踪上位机软件,用于对跟踪结果进行监控,系统与上位机软件通过网络通信。

  系统搭建完成后,首先在楼顶天台向南空旷处进行静态测试。系统设备加电后,通过上位机观察,工作状态开始处于盲扫,天线离轴角、方位角、组合导航设备俯仰角、横滚角、航向角等都在不断变化,各外设在跟踪系统的调度下正常工作。随后信噪比增大,进入动态跟踪状态,此时天线进入锁定状态,跟踪成功。随后,将卫星跟踪控制系统安装于汽车顶部,将调制解调器、路由器等安装于汽车内部,进行跑车测试。测试主要包括高速路段、弯路段、颠簸路段、隧道路段等,覆盖验证高速动态跟踪、大航向加速度动态跟踪、大横滚俯仰加速度动态跟踪、长时遮挡重新跟踪等测试项目。测试记录如下:

  1)组合导航数据使用效率。测试在每个角度计算时,距离组合导航传入系统的延时时间,组合导航输出周期为4ms,测试结果表明系统每次使用组合导航数据均为最新数据,最大限度保证了姿态计算实时性。2)波束角度输出间隔。测试通过计算进行波束 角度切换的时间间隔。

  信标机输出周期为4ms,测试结果表明系统在收到信标机数据后在0.4ms内完成计算,并输出扫描角度,保证了卫星跟踪的实时性。

  3)动态跟踪指向有效性。测试系统在不同姿态和方位下,卫星跟踪动态扫描的指向是否在可用范围。

  测试结果表明,经计算的扫描离轴角度均在1度以内浮动,满足动态扫描要求,可实现持续动态跟踪。4)冷启动跟踪锁定时间。测试在组合导航航向角为初始状态时,进入跟踪状态所需时间,是系统关键指标,指标业界普遍指标在1min左右。

  测试结果表明,此卫星跟踪控制系统设计高效,冷启动跟踪锁定时间在45s以内,指标优于业界水平。5)热启动跟踪锁定时间。测试在已知航向角的情况下,快速进入跟踪状态时间。业界普遍指标在5s左右。

  测试结果表明,卫星跟踪控制系统设计高效,热启动跟踪锁定时间在4s以内,指标优于业界水平。6)长时间遮挡动态恢复时间。测试在长时间处于对天遮挡状态,导致组合导航姿态漂移的情况下,迅速动态恢复时间。业界普遍指标在10s左右。

  测试结果表明,长时间遮挡后,在10s内均可恢复跟踪状态,指标优于业界水平。综上,通过各类静态、动态测试,基于软总线的卫星跟踪控制系统在设计上可行,在处理方式上高效,实际卫星跟踪效果佳,整体指标优于业界。

  4结束语

  本文设计的卫星跟踪控制系统,优化和改善传统卫星跟踪系统的软件耦合性高、扩展性差等缺点;硬件设计采用ZYNQ7020芯片为控制核心,与各类卫星跟踪所需外部设备进行通信;通过合理的软件架构设计,提出了设计软总线模块,用于解决卫星跟踪系统中外设种类多、复杂度高,以及各模块同步异步交互等问题。而后通过应用软总线模块,设计了卫星跟踪流程,并搭建了验证环境。经过测试验证,该系统高效可靠、灵活方便,且扁平化、可维护性、可扩展性较强,为卫星跟踪控制系统设计提供了一种新的思路,该机制还可沿用至其他复杂控制系统。

  参考文献:

  [1]张帆.国内外卫星通信产业技术应用现状和发展趋势[J].网络安全技术与应用,2017(1):9899.

  [2]李淑静,关于移动卫星通信天线自动跟踪方法的探讨[J].科技与创新,2016(13):8686.

  [3]刘义才.基于软件总线的嵌入式集成开发环境的研究与设计[D].成都:电子科技大学,2006.

  [4]江涛.卫星天线的自动跟踪技术研究[J].信息技术,2012(7):3940,49.

  [5]苏涛.嵌入式智能车载终端的研究与实现[D].合肥:合肥工业大学,2018.

  [6]朱亚杰,王劲强,石志成,等.浅谈嵌入式操作系统在航天领域中的应用[J].单片机与嵌入式系统应用,2013,13(5):710.

  作者:张伟,张聪,钟洋,周鹏,周诗超

转载请注明来自发表学术论文网:http://www.fbxslw.com/dzlw/29615.html