首页> 中国专利> 面向航空发动机分布式控制的TTP/C总线控制器设计方法

面向航空发动机分布式控制的TTP/C总线控制器设计方法

摘要

本发明公开了一种面向航空发动机分布式控制的TTP/C总线控制器设计方法。结合航空发动机分布式控制系统性能需求,TTP/C总线控制器设计方法包括TTP/C总线控制器的总体设计、TTP/C总线控制器数据链路层设计、TTP/C总线控制器协议服务层设计、TTP/C总线控制器通信网络接口设计和TTP/C总线控制器状态机设计。采用本发明设计方法基于现场可编程门阵列所设计的控制器重量较轻、成本低廉、维护方便,同时传输带宽高、容错能力强、总线利用率高,足以满足航空发动机分布式控制系统的需求。

著录项

  • 公开/公告号CN106444425A

    专利类型发明专利

  • 公开/公告日2017-02-22

    原文格式PDF

  • 申请/专利权人 南京航空航天大学;

    申请/专利号CN201610926047.X

  • 发明设计人 潘慕绚;黄金泉;

    申请日2016-10-24

  • 分类号G05B17/02(20060101);

  • 代理机构南京瑞弘专利商标事务所(普通合伙);

  • 代理人张婷婷

  • 地址 210000 江苏省南京市秦淮区御道街29号

  • 入库时间 2023-06-19 01:35:32

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-12-24

    授权

    授权

  • 2017-03-22

    实质审查的生效 IPC(主分类):G05B17/02 申请日:20161024

    实质审查的生效

  • 2017-02-22

    公开

    公开

说明书

技术领域

本发明属于航空发动机控制技术领域,具体涉及一种航空发动机分布式控制系统时间触发通信总线的实现方法,尤其是一种面向航空发动机分布式控制的TTP/C总线控制器设计方法。

背景技术

在过去的30年中,航空发动机控制系统已经从最初的机械液压式系统逐步过渡到今天的全权限数字电子控制,随着军用航空科技的竞争日趋激烈,对航空发动机数字控制器性能以及减重需求进一步提高,集中式控制构架已经难以满足发展需求,分布式控制逐渐成为研究热点。在发动机分布式控制系统中,由于各个子系统之间需要基于通信总线协同工作,因此通信总线性能将直接影响到控制系统的稳定性以及控制性能,通信总线的研究对航空发动机分布式控制系统设计非常重要。通信总线设计主要目的是为发动机控制系统提供安全高速数据通道,使数据能够实时并且准确的从源节点送至目的节点。而对于航空发动机分布式控制通信系统的研究可归结于对通信网络协议的研究。

迄今为止,各种工业化、商业化标准的通信总线已经在不同安全等级和不同场合得到了广泛应用,不同通信总线协议差别也较大,但都是基于事件触发构架(EventTriggered Architecture,ETA)和时间触发构架(Time Triggered Architecture,TTA)设计的[11]。ETA构架中的任意节点可以在任意时刻访问总线,进行数据传输,具体的访问时刻由外部事件的发生时刻决定,这类构架普遍采用载波监听多路访问/冲突避免机制(Carrier Sense Multiple Access with Collision Avoidance,CSMA/CA)的通信媒体介质访问方式,总线CAN、ARINC664、ARINC629、MIL-STD-1553B等均属于此类构架。TTA构架在预先设计的全局静态调度列表的基础之上,基于全局同步时钟进行数据传输[13],数据的传输时刻都是确定的,采用时分多路复用(Time Division Multiple Access,TDMA)的通信方式,时间触发CAN(Time Triggered CAN,TTCAN)、时间触发协议TTP、FlexRay、ARINC629等均属于此类构架。

TTA构架的TDMA介质访问方式能够以可预测的传输时延和较小的传输抖动在各个节点之间进行数据传输和信息交互,并避免因消息传输阻塞引起的总线故障。TTA构架的信息由全局静态调度列表定义,数据帧中不包括地址相关信息,这样在节省传输带宽的同时,避免了因消息节点ID被修改而引起的总线故障。TTA构架通过预先离线生成的全局静态调度列表,不仅可以保证信息传递的时间确定性,而且可以确保节点之间信息传递的时间参数特性不会因系统的改变而变化,这是可扩展、易升级的分布式控制设计的关键特性。同时,TTA构架的TDMA通信媒体介质访问方式提供了实时、可靠、安全的分布式全局同步容错时钟,并确保了实时可靠的成员关系。因此,基于TTA构架的时间触发通信总线能为航空发动机分布式控制系统的实时控制任务,搭建了一个实时、安全、可靠、可扩展、易升级的一致性分布式通信总线系统,是航空发动机分布式控制系统可实现的、理想的容错数据通信总线。

虽然在航空发动机分布式控制通信总线技术领域已经开展大量的研究工作,但迄今为止,还没有一种专门的适用于航空发动机分布式控制系统的通信总线协议。通过对一部分有可能应用于航空发动机的通信总线协议进行可行性分析与成熟度评估,研究结果表明应用于大多数工业领域的通信总线技术相对成熟并在其相应的领域得到了广泛使用。考虑到航空发动机对高温电子元器件技术发展具有相当高的要求,通信总线在航空发动机领域的应用成熟度较低,结合航空发动机分布式控制的实时性、容错性等要求,基于TTA构架的TTP/C时间触发通信总线可以作为航空发动机分布式控制系统的通信总线进行研究。

基于TTP/C总线协议通过构建一个具有的分布式、实时、多余度、容错、可重构等开放式系统特性的通信系统,为可靠性要求高的航空航天等领域提供通用的底层通信解决方案。TTP/C总线是一种基于TTA构架的多点串行通信协议,采用TDMA媒体访问方式,实现分布式全局容错同步时钟,调度策略支持由多个基本TTA周期构成的集群周期。TTP/C在通信协议层提供时间触发数据传输、分布式容错时钟同步、故障节点探测与隔离、循环冗余(Cyclic Redundancy Check,CRC)校验、收发确认、冗余管理等服务。TTP/C总线协议为其服务应用程序提供一个实时、确定、可靠、安全的一致性分布式通信总线平台。

发明内容

发明目的:为了克服现有技术中存在的不足,本发明基于时间触发协议TTP/C本身,提供一种基于FPGA的航空发动机分布式控制系统通信总线控制器设计,用于航空发动机分布式控制通信协议研究应用,从而保证分布式控制对高传输带宽、优秀容错机制、减重等要求。

技术方案:为实现上述目的,本发明采用的技术方案为:

一种面向航空发动机分布式控制的TTP/C总线控制器设计方法,包括以下步骤:

步骤1)、航空发动机分布式控制系统TTP/C总线控制器的总体设计;

步骤2)、航空发动机分布式控制系统TTP/C总线控制器数据链路层的设计;

步骤3)、航空发动机分布式控制系统TTP/C总线控制器协议服务层的设计;

步骤4)、航空发动机分布式控制系统TTP/C总线控制器CNI的设计;

步骤5)、航空发动机分布式控制系统TTP/C总线控制器状态机的设计。

进一步的,所述步骤1)包括以下过程:

步骤1-1)、基于TTP/C的航空发动机分布式控制通信总线控制器结构设计:

采用软件和硬件相结合协同设计方法,其中,硬件设计包括总线收发器、BG模块、分频器、时间触发器、CNI接口、片内存储ROM/RAM,各模块通过Avalon构架实现数据通信;软件部分通过Nios II软核完成包括容错同步时钟、故障诊断在内的功能模块设计,Nios II软核处理器是唯一主机,其他功能模块均为从机;

步骤1-2)、基于TTP/C的航空发动机分布式控制通信总线控制器协议的分层设计:

将总线分为物理层、数据链路层和应用层,分别进行设计;

步骤1-3)、基于TTP/C的航空发动机分布式控制通信总线控制器的参数设计:

对包括总线控制器的通信方式、拓补结构、帧格式、编码方式、传输介质、校验方式在内的关键技术进行设计说明;并对航空发动机分布控制系统的包括传输带宽、控制周期、容错时钟同步精度、同步算法执行时间间隔、数据帧间隔、集群周期在内的参数进行分析计算。

进一步的,所述硬件设计采用阿尔特拉公司Cyclone IV系列EP4CE15F17C8型FPGA完成。

进一步的,所述步骤2)包括以下过程:

步骤2-1)、总线收发器设计:

包括数据发送模块和数据接收模块,所述发送/接收模块均设计了发送/接收缓存A、数据组帧、循环冗余校验码生成、发送/接收缓存B、发送/接收状态机、曼彻斯特编码和发送/接收7个子模块;

步骤2-2)、总线保护器设计:

设计两路相同的独立总线保护器,用以数据传输和信息,并配有冗余管理模块管理所述两路独立总线;在发送数据时,所述冗余管理模块将待发送数据同时发送到所述两路总线中,待发送数据通过两个不同的通道在两路总线中进行传输;

步骤2-3)、航空发动机分布式控制系统MEDL列表设计:

所述MEDL指令列表包含各指令数据的指令序列、执行时刻、消息地址和附加信息,并定义一个MEDL指令触发计数器;所述触发计数器将MEDL列表中每条指令的执行时刻复制过来,在1MHz时钟脉冲的驱动下,在各执行时刻向Nios II软核处理器发送中断请求信号,Nios II软核处理器经过Avalon构架解析该中断请求信号,并在相应的控制器中断服务程序读取MEDL列表中的信息,完成在该时刻MEDL列表中配置的具体任务操作。

进一步的,所述步骤2-2)中,在发送时刻以外的其他时间内禁止数据在总线上传输,发送时刻保护总线,屏蔽总线阻塞故障。

进一步的,所述步骤2-3)中,所述MEDL命令列表信息存储在一个控制器片内ROM/RAM中,Nios II软核处理器通过Avalon交换构架在中断服务程序中逐条进行读取、解析和执行MEDL列表的相应命令,完成相应的航空发动机分布式控制系统控制任务。

进一步的,所述步骤3)包括以下过程:

步骤3-1)、航空发动机分布式控制系统成员关系容错算法设计:

在航空发动机分布式控制系统中,每一个传感器、执行机构和控制器对应于TTP/C集群周期中的一个节点,其每一个节点都拥有一个记录所有被认为正常运行的关于航空发动机分布式控制系统相应节点信息的MEDL关系列表;在每个时分多路复用周期内,每个节点通过对比自身C-状态与接收到的C-状态进行循环冗余校验,判断发送节点是否正常,若不正常,错误发送节点将从自身列表中删除该发送节点,对应于航空发动机分布式控制系统将出错模块从系统中剔除;采用成员关系服务容错算法,通过这种节点间相互的MEDL列表进行确认方式,在通信底层实现所有节点的成员列表一致性,并通过派系避免算法和隐式确认算法实现容错管理;

步骤3-2)、航空发动机分布式控制系统全局同步容错时钟设计:

采用具有容错功能的基于平均值同步算法的Welch-Lynch的同步容错算法。

进一步的,所述步骤3-2)中,所述Welch-Lynch同步容错算法的具体方法为:

假设在某个时刻有x个节点的时间计数器发生故障,但该节点仍能够在总线上传输有效的数据帧;节点A在某个通信周期内收到所有其他节点的当地时间后,将所有时间值从小到大依次排列,然后将排序后的第x+1个与第n-x个时间的平均值作为正确的同步时钟,其中,集群总节点数n≥3x-1;

设定为单故障假设,即一个TDMA周期内最多允许出现一个节点发生故障,因此,节点数必须满足n≥2;

航空发动机分布式控制系统最小通信系统由6个智能节点组成高压转子转速和燃油双变量控制系统。

进一步的,所述步骤4)中,CNI由控制器向主机传递TTP/C总线控制器的状态是通过发送异步中断信号方式实现的,具体方法为:

从中断服务程序中,主机读取TTP/C总线控制器CNI接口状态域中的中断向量列表,判断是否发生包括控制器错误、启动同步完成、C-状态有效、时间中断信号在内的异常事件,并根据相应的标志位判断发送异常事件的具体类型;

控制在系统控制器主机和总线控制器之间传递的控制信号数目,在FPGA内部采用双端口异步RAM和若干I/O信号实现CNI。

进一步的,所述步骤5)包括冻结、初始化、侦听、冷启动、启动、被动和运行和就绪8种状态以及这8种状态之间相互跳转的21种方式。

本发明具有以下有益效果:本发明提供的面向航空发动机分布式控制的TTP/C总线控制器设计方法,具有如下有益效果:

(1)本发明针对航空发动机分布式控制系统通信总线所设计的控制器,基于FPGA完成硬件架构设计,减轻了总线控制器的重量,减小了总线控制器的体积;减少故障发生的概率;缩减了总线控制器的研制周期并降低了设计费用;采用分层结构,提高系统性能;增加系统通用性和可扩展性;适应未来飞行器发展需求;

(2)本发明以相对简单的硬件构架实现TTP/C控制器设计的同时,提供了完善的容错机制、充足的节点数目和传输带宽资源、灵活的总线调度策略和拓扑结构,满足了航空发动机分布式控制系统需求;

(3)本发明采用FPGA设计基于TTP/C的航空发动机分布式控制通信总线控制器,搭建了由6个智能节点组成的高压转子转速和燃油双控制回路的航空发动机分布式控制系统最小通信系统,并完成仿真结果验证,结果表明本发明能够保证传输的确定性。

附图说明

图1是基于TTP/C的航空发动机分布式控制通信总线控制器硬件构架。

图2是基于TTP/C的航空发动机分布式控制通信总线协议分层。

图3是基于TTP/C的航空发动机分布式控制通信总线收发器结构。

图4是航空发动机分布式控制系统MEDL列表实现原理。

图5是航空发动机分布式控制系统容错关系算法节点A隐式确认过程。

图6是航空发动机分布式控制系统TTP/C控制器时钟同步实现原理。

图7是航空发动机分布式控制系统CNI接口访问互斥时序图。

图8是基于TTP/C的航空发动机分布式控制通信总线状态跳转逻辑。

图9是基于TTP/C的航空发动机分布式控制通信总线控制器运行过程。

图10是基于TTP/C的航空发动机分布式控制通信总线控制器综合通信仿真实验结果。

图11是图10仿真结果局部放大示意图。

具体实施方式

下面结合附图对本发明作更进一步的说明。

如图1所示为一种基于TTP/C的航空发动机分布式控制通信总线控制器硬件构架。结合航空发动机分布式控制系统分别设计了基于TTP/C协议的总线收发器、同步时钟、MEDL命令列表、CNI接口、故障诊断、状态跳转等多个功能模块,在实现过程中采用软件和硬件相结合协同设计方法。采用Altera公司Cyclone IV系列EP4CE15F17C8型FPGA设计了总线收发器、BG模块、分频器、时间触发器、CNI接口、片内存储ROM/RAM等功能模块,各模块通过Avalon构架实现数据通信。软件部分采用Altera公司的Nios II软核,完成容错同步时钟、故障诊断等功能模块设计,Nios II软核处理器作为唯一主机,其他功能模块均为从机。考虑航空发动机分布式控制系统智能传感器数据、控制器控制指令以及智能执行机构接收数据等特点,将总线收发器设计成由发送和接收两部分组成,完成上述智能元件数据的存储、组帧、曼彻斯特编码解码、CRC校验码生成、发送和接收状态逻辑跳转等。锁相环(PhaseLocked Loop,PLL)和分频器将FPGA自身晶振调到航空发动机分布式控制系统所需的时钟频率,通常为100Mhz。时间触发器根据分布式控制系统各信号的循环时间对比集群中的时间标记,两者相同则触发相应操作。总线控制器和主机可以随机访问该内存存储空间。MEDL定义了分布式控制系统中每个节点在集群周期中时间槽内的具体行为,集群周期内的所有节点在同步时钟的驱动下执行MEDL中的命令,实现无冲突的TDMA模式的通信访问,完成整个分布式控制系统工作过程。

图2所示为基于TTP/C的航空发动机分布式控制通信总线协议分层。本设计中总线协议包括主机软件层、冗余管理层、协议服务层、数据链路层、物理层。系统主机软件层执行各种航空发动机分布式控制系统应用软件,采用容错管理CNI接口连接主机软件层和冗余管理层。冗余管理层完成冗余功能,保证分布式控制系统的出错节点可以及时被具有相同功能的节点替换掉。主机和总线控制器之间的通信和信息数据传输由CNI接口实现;协议服务层实现分布式控制系统通信、安全和故障诊断等服务。数据链路层是协议的核心,完成航空发动机分布式控制系统各种信息数据的组帧、CRC校验、TDMA方式的数据传输等,MEDL列表在此层定义。考虑发动机分布式控制系统所处高温高震动工作环境,本发明中协议中物理层采用屏蔽性能优良的双绞线作为传输介质。

表1为基于TTP/C的航空发动机分布式控制通信总线参数和关键技术。针对航空发动机分布式控制系统高可靠性、安全性和实时性需求,选择节点间数据传输时延可预测、传输抖动小并能避免消息传输阻塞等总线故障的TDMA方式作为其通信方式。考虑分布式控制系统重量要求,采用总线型架构设计控制器。帧格式、编码方式、校验方式选择TTP/C协议定义的帧格式、曼彻斯特编码以及CRC校验。本发明中的航空发动机分布式控制最小通信系统由6个智能节点组成,实现高压转子转速和燃油流量控制。为便于后续总线升级扩展,总线控制器带宽(B)设计为5Mbps。分布式系统的控制周期(T)设计为20ms。为保证航空发动机分布式控制系统的同步精度以及容错性能,设计容错同步时钟精度γ=5μs。一帧报文的字节数为D=240bits。

设计参数:B=5MHz,D=240bits,N=6,γ=5us,T=20ms,ρ=±20ppm。

约束条件:γ<Tslot(Tslot为每个节点分配的时间槽宽度,满足此约束才能保证集群MEDL命令同步),Tframe_gap>3γ(Tframe_gap为数据帧间隔,此约束保证带宽利用率)。

计算参数:

(1)同步算法执行时间间隔:TTP/C协议规定在每个TDMA周期内至少执行一次同步算法,结合容错时钟精度,本发明取Tsg=5ms;

(2)数据帧间隔:Tframe_gap=4γ=20μs;

(3)每个节点时间槽宽度:Tslot=T/N=3333μs;

(4)集群周期:Tclust=T=20ms,且一个TDMA周期作为集群周期;

(5)最大总线带宽利用率:

表1基于TTP/C的航空发动机分布式控制通信总线参数和关键技术

图3所示为基于TTP/C的航空发动机分布式控制通信总线收发器结构。本发明中总线收发器由数据发送模块和数据接收两个模块构成,完成发动机分布式控制系统中智能传感器信号的发送、智能执行机构指令信号的接收以及控制器控制信号的收发,包括数据组帧和解码、CRC校验码的生成和校验。发送模块由发送缓存1、数据组帧、CRC校验码生成、发送缓存2、发送状态机、曼彻斯特编码和发送7个子模块构成。接收模块与发送模块在结构上基本相同,二者相互独立,设计时采用不同的缓存空间以避免收发数据时出现混乱。发送缓存和接收缓存均为数据缓存模块,其中发送缓存1模块用于存储节点待发送的有效数据,如控制器输出的指令信号;发送缓存2模块用于存储已经组完帧的待发送数据;接收缓存1模块用于存储已经完成CRC校验和数据解码的数据信息,如执行结构接收的控制信号;接收缓存2模块用于存储尚未进行处理以及接收模块正在接收的数据。数据组帧模块用于将获取的总线控制器状态信息与待发送的数据信息合并,组成数据帧;数据解码模块则是组帧逆过程,将接收到的数据中的控制信息和数据信息分离开。CRC校验码生成模块和CRC校验模块用于CRC校验以检测数据传输的正确性。发送和接收状态机模块用于协调各个模块之间的运作,同时负责控制信号的输入输出。曼彻斯特编/解码也称为相位编码,是一个同步时钟编/解码技术,用来对物理层中一个同步位流数据和时钟进行编码。

BG的作用是使控制器在发送时刻以外的其他时间内禁止数据在总线上传输,避免故障节点长时间独占总线,从而屏蔽总线阻塞故障,确保分布式控制系统信息、数据传输的准确实时性。为提升总线控制的容错性能,本发明设计了两路相同的独立总线用以数据传输和信息,同时设计了冗余管理模块管理这两路独立总线。发送数据时,该BG模块将待发送数据同时发送到这两路总线中,待发送数据通过两个不同的通道中传输。在总线控制器接收数据后,冗余管理模块采用表2所示的管理逻辑进行判断,并向处理器反馈是否成功接收或者校验出错等信息。I/II通道数据接收正确且对应的通道校验正确时数据才接收成功,I/II通道校验正确且数据接收正确时数据才校验正确。

表2航空发动机分布式控制系统通信总线冗余管理逻辑

图4所示为航空发动机分布式控制系统MEDL列表实现原理。MEDL指令列表包含指令序列、执行时刻、消息地址和附加信息,对应于发动机分布式控制系统的各类信息及控制信号,本发明定义了一个MEDL指令触发计数器,它将MEDL列表中每条指令(如燃油指令)的执行时刻复制过来,在1MHz时钟脉冲的驱动下,在各执行时刻向Nios II软核处理器发送中断请求信号。Nios II软核处理器经过Avalon构架解析该中断请求信号(如燃油指令),并在相应的中断服务程序读取MEDL列表中的信息(如燃油指令信息),完成在该时刻MEDL列表中配置的具体任务操作(如燃油控制)。本发明中MEDL命令列表信息存储在一个片内ROM/RAM中,Nios II软核处理器可通过Avalon交换构架在中断服务程序中逐条进行读取、解析和执行MEDL列表的相应命令。在启动过程执行结束之后,集群周期进入运行模态,此时所有智能节点处于MEDL关系一致和时间同步状态,每个智能节点在每个TDMA周期最多访问总线一次。正常运行时,各节点在严格的同步时钟驱动下,完成同步并执行MEDL列表规定的命令操作。但在隐式确认失效等异常情况下,节点将自动转入冻结或者被动模态,并在故障修复之后通过捕获I帧slot位置尝试再次将故障节点加入到运行中的集群周期内,完成节点再集成过程,保证发动机分布式控制系统通信可靠性。

表3所示为航空发动机一个TDMA周期的MEDL列表信息。节点0和4发送I帧数据,发送时间间隔为3333μs。

表3航空发动机一个TDMA周期的MEDL列表

TTP/C通过航空发动机分布式控制系统各节点间相互的MEDL列表进行确认,在通信底层实现了所有节点的成员列表一致性,并通过派系避免(Clique Avoidance,CA)算法和隐式确认(Implicit Acknowledgement,IA)算法实现容错管理。CA算法主要用于检测和隔离发生了接收错误的故障节点。除MEDL列表外,节点内部还定义了两个计数器,一个是失败计数器(Failure Counter,FC),一个是确认计数器(Acknowledge Counter,AC)。这两个计数器的累加计数规则如下:

(1)每个节点发送数据之后,本地AC+1,并将自身添加到本地的MEDL列表;

(2)若节点判断当前slot接收的数据帧正确,则本地AC+1,并将相应节点添加到在本地MEDL列表中;

(3)若节点判断当前slot接收的数据帧错误,则本地FC+1,并将相应节点从本地MEDL列表中删除;

(4)若节点判断当前slot为空,则本地AC和FC不变,但需要从MEDL列表中删除与当前slot对应的节点;

(5)每次发送前节点都会判断本地AC是否大于FC,若是,则将AC与FC清零发送数据,否则,节点将进入冻结状态。

隐式确认算法原理如图5所示,其算法流程如下:

(1)节点A发送数据后节点A的AC+1,等待B节点发送数据;

(2)进行CRC_1校验,若校验成功,说明A和B成员关系相同,A被B确认,A将B作为第一确认节点,并将其加入到自身MEDL列表中;

(3)若校验失败,进行第二次CRC_2校验,校验失败说明B接收失败,A将B从列表中删除,同时等待C作为第一确认节点;

(4)校验成功说明A和B中有一个发生错误,需要进一步进行CRC_3校验,若校验成功,即A被C确认,则(3)中A正确,B错误,A将C作为第一确认节点;

(5)若校验失败,需要进行CRC_4校验,结果为真说明(3)中A错误,B正确;

(6)若CRC_4校验失败则说明节点C接收错误,A继续等待D作为其第一确认节点,节点A不断地等待后续节点作为确认节点直至节点A被确认,该过程停止,若节点A在下一次发送数据前还没有被确认,则节点A将被冻结。

图6所示为基于TTP/C的航空发动机分布式控制系统总线控制器时钟同步实现原理。PLL输出100M时钟信号,经过分频后得到本地全局时钟。分布式控制系统某个TDMA周期内,时钟管理单元计算得到本地主节点A和所有其它n-1个节点的全局时间之差(当传输时延较大时,计算中须包含计算信号传输时延导致的时差)。考虑TTP/C中采用深度为4的FIFO来存储时差,即同步算法最多利用最新的4组时差来修正计数器1,因而依据Welch-Lynch算法从小到大排列时差,即Δt0≤Δt1≤Δt2≤Δt3。将第2个和第n-2个时差存入时差缓存器(两个传输通道具有独立的缓存),则接收节点的时间修正参数为(Δt1+Δt2)/2。本发明中在MEDL列表设计一条同步命令,每个TDMA周期执行一次该命令,即执行一次同步算法,将时差缓存器中的时差取平均值,然后修正计数器1的数值,得到的本地全局时间与MEDL列表中的预设时间进行比较,通过中断进入协议处理器,调用时间同步算法模块。全局时钟和MEDL列表配合即可实现基于时间触发的数据传输,确保航空发动机分布式控制系统消息传输的实时准确性。

图7所示为航空发动机分布式控制系统通信总线CNI接口访问互斥时序图。在中断服务程序中,主机读取CNI接口状态域中的中断向量列表,判断是否发生控制器错误、启动同步完成、C-状态有效、时间中断信号等异常事件,并根据相应的标志位判断发送异常事件的具体类型。本发明中针对容错性要求,严格控制主机和总线控制器之间传递的控制信号数目,在FPGA内部采用双端口异步RAM和若干I/O信号实现CNI。为了避免控制器和主机同时访问CNI接口,造成不确定的访问状态,本发明建立了主机和控制器之间的访问数据的互斥机制,图7以节点B为例,说明CNI接口互斥访问机制,在发送时间段、传输段、宣布传输段中,当节点B占据CNI时,此时其他节点是禁止使用CNI的;同理,在节点A访问CNI时,其他节点禁止访问,例如风扇进口压力传感器在该时刻通过CNI接口传输数据时,风扇出口压力传感器是禁止访问CNI的,避免消息传输时出现混乱。

图8所示为基于TTP/C的航空发动机分布式控制通信总线控制器状态跳转逻辑。针对航空发动机分布式控制系统的不同工作状态对应的不同的数据传输特性以及总线控制器可能存在的各种情况,通信总线中各智能节点存在多种工作状态,例如总线上电启动过程中,上电后总线控制器并不能正常工作,基于保护机制进入冻结状态,只有通过主机处理器激活才可以正常工作。本发明针对总线控制器各种可能的工作状态,基于TTP/C协议,创新地定义了冻结、初始化、侦听、冷启动、启动、被动、运行和就绪8种状态以及这8种状态之间相互跳转的21种方式。表4描述了这8种状态的具体特征。表5对节点间相互跳转的21种跳转逻辑进行了说明。

表4节点状态说明表

表5跳转逻辑说明表

图9所示为基于TTP/C的航空发动机分布式控制通信总线控制器运行过程。发明中给出系统各智能节点的启动模态和正常运行模态。启动模态是所有节点由冻结状态转入运行状态的过程,也是集群周期由异步状态转入同步状态,即航空发动机各智能节点的同步的过程。在主控制器主机激活初始化后,依次由节点1~6发送I帧数据确保各节点均处于同步和容错一致性状态。启动过程结束后,集群周期在MEDL列表的调度下进入正常运行模态,正常运行模态下,节点1~6在各自的发送时刻所对应时间槽内发送包含应用数据的N帧数据信息,并周期性地统一执行预设的钟同步命令,其中图9为节点4发送预设的时钟同步指令。同时,为防止某个故障节点发送的I帧将其故障传输至其他正确节点,在每个TDMA周期至少有2个节点发送I帧,保证了发生瞬态故障的节点在故障恢复后能够再次添加到集群中。

本发明公开一种面向航空发动机分布式控制的时间触发协议(Time TriggeredProtocol,TTP/C)总线控制器设计方法。结合航空发动机分布式控制系统性能需求,TTP/C总线控制器设计方法包括TTP/C总线控制器数据链路层的设计、TTP/C总线控制器协议服务层的设计、TTP/C总线控制器通信网络接口(Communication Network Interface,CNI)的设计和TTP/C总线控制器状态机的设计。对于TTP/C总线控制器数据链路层,通过设计总线收发器、总线保护器(Bus Guardian,BG)和成员关系列表(Message Description List,MEDL)完成控制器数据链路层的设计;对于TTP/C总线控制器协议服务层,通过设计成员关系容错算法和全局同步容错时钟完成控制器协议服务层的设计;对于TTP/C总线控制器CNI,通过设计数据结构和互斥访问机制完成控制器CNI的设计;对于TTP/C总线控制器状态机,通过设计各节点工作状态以及各状态之间的相互跳转关系,完成控制器状态机的设计。优点:采用本发明设计方法基于现场可编程门阵列(Field Programmable Gate Array,FPGA)所设计的控制器重量较轻、成本低廉、维护方便,同时传输带宽高、容错能力强、总线利用率高,足以满足航空发动机分布式控制系统的需求。

基于本发明所提出的方法,设计TTP/C总线控制器,针对由6个智能节点组成的高压转子转速和燃油双控制回路的航空发动机分布式控制系统最小通信系统,进行综合通信仿真实验。每个TDMA周期内由6各节点依次将数据发送至总线,其他节点采样并将采样结果经过CNI输出至主机显示。节点1发送I帧,节点2携带同步信息,其发送N帧是执行同步。综合通信仿真结果如图10所示,图11为仿真结果局部放大图。

图10和图11中,信号power1-power6为主机上电启动信号,高电平代表上电;samp1_sig-samp6_sig为节点传感器采样使能信号,表示开始采样传感器值;en1_sig-en6_sig为采样输入有效信号,高电平代表有效;data1_i-data6_i为采样输入信号,这里分别由节点1-节点6发送至总线模拟传感器采样值;rd1_sig-rd6_sig为主机读取节点数据请求信号,高电平有效;int1_req-int6_req为中断请求信号发送至主机,然后主机读取节点数据;node1_data-node6_data为节点输出数据到主机显示。由图11可以看到,节点1-节点6在时间槽1-时间槽6依次发送数据7106、7206、7306、7406、7506和7606,其他节点依次读取采样数据并发送至主机显示。综上所述,本发明所提TTP/C控制器设计方法可以正确实现发动机分布式控制系统智能节点间TTP/C协议的通信。

以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号