APP下载

时间触发航空电子系统的软件架构分析

2021-11-28王彦庆陈芳明王晨

今日自动化 2021年8期
关键词:数据通信

王彦庆 陈芳明 王晨

[摘    要]基于航空电子系统,根据其所具备的诸多特点,例如数据量多、稳定性要求苛刻、任务并不简单等,阐述了以往软件架构的优势以及不足,结合具体的运行流程,把任务进行划分,以产生多个阶段,如数据输入以及解算,按照时间片对任务全部阶段开展调度,保证了系统的可靠性。针对于航空电子系统,对其运行机制进行了分析,并且设置了软件架构的模型。通过实验数据,再结合理论分析显示,与传统软件架构进行比较,通过时间触发架构,无论是可靠性还是稳定性,均能够得到显著的提升。

[关键词]软件架构;航空电子系统;时间片调度;数据通信;TimeBase

[中图分类号]V243 [文献标志码]A [文章编号]2095–6487(2021)08–0–02

[Abstract]Based on the avionics system, according to its many characteristics, such as large amount of data, demanding stability, task is not simple, etc., the advantages and disadvantages of the previous software architecture are explained, combined with the specific operation process, the task is carried out Divided to produce multiple stages, such as data input and solution, according to time slices, all stages of the task are scheduled to ensure the reliability of the system. Aiming at the avionics system, its operating mechanism is analyzed, and a software architecture model is set up. Through experimental data, combined with theoretical analysis, it is shown that compared with traditional software architecture, through time-triggered architecture, both reliability and stability can be significantly improved.

[Keywords]software architecture; avionics system; time slice scheduling; data communication; TimeBase

在机载方面,对于资源集成度来讲,与飞机的负载以及散热息息相关,而且和系统也有着联系。就航空电子系统而言,其中存在着多项资源,例如计算,具备一系列的功能(如数据保存以及通信)。结合单处理节点来分析,有着诸多的存储资源,如较为常见的FLASH。每项任务的完成,均要借助多项资源,如计算资源。对于任务流程来说,结束一个阶段之后,直接进到下一环节,不存在时间间隔。伴随系统的运转,任务实施时间随之改变,因此确定性并不高。以这样的软件架构来分析,设计相对简单,在数据量不多的情况下,是能够接受的,不然的话,会提高系统不确定性,极有可能因为故障影响,从而有碍于别的阶段的实施,最终致使故障蔓延。基于该系统的特征,本文设置了一种软件结构,确保了系统的正常运转,避免出现故障的情况。

1 以往航空电子系统软件架构

在传统系统中,每分区能够存在数个任务,对于分区来讲,是根据时间片开展调度的,而就进程而言,是根据优先级来调度的。结合此种软件架构来分析,结构并不复杂,而且对于开发人员,所提出的要求并不苛刻,不过也有着一定的不足,通常可体现于以下几点:对于任务运行时刻来讲,仅可对时间范围进行明确,而难以实际明确时间;对于实施时间长度,也难以得到明确,基于运行时间范围,可以实现对执行时刻的确定,不过也难以具体明确时间[1];在进程出现阻塞的情况下,会对别的任务的实施造成影响;任务中的某一环节发生故障,则直接影响到整体的运行。

2 时间触发软件架构

根据分区时间片调度,促使任务的所有环节运行,独自占有相应的时间片,当实施时间到来时,切换至下环节运转,在此基础上,确保调度的精准以及可靠。

根据阶段来分解任务,结合时间片开展相应的调度。把系统任务分成多个阶段,例如数据输入以及解算,根据时间片调度,进一步来开展所有阶段。基于某一时间片内,仅存在1个任务运转,功能实施结束之后,系统为空闲状况;当下一个时间片来临时,不管有没有执行完成,均切换至下一环节;只有下一时间片出现时,才能换至下一环节[2]。在执行任务的时候,因为会借助多项资源,所以按照不一样的资源,针对于数据输入以及存取等,进一步分成相应的小阶段。为了便于对资源进行访问,创造充足的时间窗口。因为发生资源故障,从而难以顺利实施时,会换至下一资源访问,达到隔离的目的,与此同时,防止故障持续蔓延。

3 软件架构设计

对于系统软件结构设置,本文主要从时间触发调度设置、各阶段数据通信等方面进行探究。

(1)调度设计。按照资源的种类,针对于数据输入以及存取等,分成一系列小阶段。在软件结构中,通过对调度器的使用,来完成对所有阶段的调度。对于时间片调度来讲,主要基于两点来达到的,即调度器与任务信息表。而就任务阶段调度器而言,与定时器中断息息相关,实际運转中,会定时形成中断,通过中断服务程序,进一步来对执行时间进行判断,结束阶段的切换。对于时间片调度准确度来说,与间隔时间有着很大的联系,误差处于时间范围[3]。间隔时间越少,则表明调度精度越为理想。当处于初始化的时候,借助于系统的窗口,来创建相应的任务;当进行调度时,按照任务句柄复位。以下为进程流程:初始化;实施功能;挂起进程;切换至第二步,即功能执行。基于调度任务环节,复位这一环节的进程,由第一步开始运转,功能实施之后,若时间片没有到来,则挂起当前进程,这个时候,系统为空闲状况;若时间片到来,进程还处于第一阶段或第二阶段,则挂起进程,复位下一进程,实施下一环节进程。

(2)各阶段数据通信。对于数据通信来讲,属于单向的。计算过程中,应当利用到两个阶段的数据,即输入以及预存取阶段,在结束计算之后,基于I/O阶段,进一步对解算结果进行输出。通过借助缓冲池的作用,达到数据交互的目的,把数据放进缓冲池内;当处于计算环节,可以基于缓冲池,获得相应的数据,从而达到计算的目的;当处于结果存储环节,也是借助于缓冲池,获得相应的数据,以记录于存儲介质;同样在处于输出阶段,也基于缓冲池获得有关数据,借助设备输出。

4 系统验证及探析

为对架构稳定性进行验证,设置了测试用例,依次在两种软件架构中运转,全面比较实验数据,同时进行理论分析,进一步来表明架构的有效性以及稳定性。

(1)测试用例设计。建立两个任务,用A、B来表示。对于第一个任务来讲,其周期是25 ms,对RS422数据进行接收,并记录于文件系统,通过一定的格式转换之后,记录于电子盘,完成计算的同时保存结果,接下来,由FC总线来输出;对于第一个任务(即B任务)来讲,周期也是25 ms,对NBI数据进行接收,并记录于文件系统,通过一定的格式转换之后,记录于电子盘,接下来,也借助FC总线来输出。在持续时间这一方面,A任务的为18 ms,B任务的为7 ms。对于外部设备来讲,其输入周期是25 ms[4]。间隔时间是1 ms,阶段分配时间片见表1。针对于实验数据,采取以下的方法来开展统计以及分析。①借助系统中的TimeBase,来对数据进行测试:当处于起始的地方,通过TimeBase来对间隔时间进行计算,与此同时,对误差进行统计。②借助FC设备,进一步来对数据进行测试:利用FC监控设备,进一步来对时间间隔进行监控,与此同时,针对于间隔时间以及周期,对两者的误差进行统计。

(2)测试结果。①TimeBase测试数据。针对于测试用例,依次在两种软件架构中,运转一万个周期,借助TimeBase对B任务间隔时间进行统计,见表1。误差介于0至正负1 ms,对于以往程序架构来讲,大约达到68%,而对于时间触发架构而言,可以达到100%。结合实验结果可以得知,相比之下,时间触发架构有着较好的可靠性。②FC总线测试数据。针对于测试用例,依次在两种软件架构中,运转一万个周期,通过借助FC监控设备,来对A任务间隔时间进行统计,见表2。误差介于0至正负1 ms,对于以往程序架构来讲,大约达到67%,而对于时间触发架构而言,可以达到100%[5]。结合试实数据可以得知,相比之下,时间触发架构有着较好的稳定性。

(3)分析以及结论。把这两种软件架构分析比较,根据理论分析,再加上对实验结果的探究,能够获取下述的结论。根据所统计的数据,基于0 ms至正负1 ms的范围,以往软件架构误差大概达到67%,相比之下,时间触发架构可以达到100%。当调度器中断时,因为时间间隔是1 ms,所以在误差低于1 ms的情况下,时间触发架构有着更为理想的稳定性。结合时间触发架构来分析,某一环节出现故障之后,不会对下一环节运转造成影响;相比之下,就以往软件架构而言,某一环节出现故障之后,会对下一环节运转造成影响,致使故障进一步蔓延。显而易见,时间触发架构有着更为理想的可靠性。基于时间触发架构,对任务进行分解处理,以便能够形成多个阶段,与此同时,对于有关的开发人员来讲,需要充分把控任务实施所需时间,以对时间进行科学的配置。相比之下,就以往软件架构而言,需要把控总的实施时间,不用对任务进行分解。

5 结束语

对以往软件架构开展分析,设置一种时间触发架构。在任务调度这一方面,将vx-works操作系统作为平台,设计可靠且稳定的系统,以有效完成时间调度任务。基于合理且有效的测试验证,再加上有关的理论分析,得出这样的结论:与以往软件架构进行对比,就时间触发架构而言,其有着更为理想的可靠性以及稳定性。

参考文献

[1] 段海军,郭勇,孙志颖,等.时间触发航空电子系统的软件架构研究[J].航空计算技术,2021,51(2):88-92.

[2] 汪帅,安一纯.新型航空电子系统总线互连技术发展探讨[J].工业技术创新,2019,4(5):102-104.

[3] 冯冰清,任艳.基于时间触发的航空电子全双工交换式以太网调度方法研究[J].现代计算机(专业版),2019(2):6-9.

[4] 张英静,熊华钢,刘志丹,等.可用于航空电子系统的时间触发以太网[J].电光与控制,2018,22(5):49-53.

[5] 蒋社稷,卢海涛,史志钊,等.时间触发以太网在航空电子系统中的应用[J].电光与控制,2017,22(5):84-88.

猜你喜欢

数据通信
光伏发电中的传感器节能控制器设计
基于EDA技术的通用异步收发器设计
北斗卫星同步技术在电力行业中的运用简析
优化网络设备维护提高数据通信传输质量
浅谈大连地铁二号线DCS系统
基于FPGA的CAN总线通信系统的设计
基于MSP430单片机的窄带无线数据传输模块的设计
全相位单通道混合LDPC码识别安全跟踪算法
分布式仿真技术研究
提高数据通信网络安全的对策研究