一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

三通道位对位远程电子单元的制作方法

2021-08-13 10:47:00 来源:中国专利 TAG:相关联 总体上 架构 单元 申请
三通道位对位远程电子单元的制作方法

本申请总体上涉及与远程电子单元相关联的系统和架构。



背景技术:

在飞行器的电传操纵(FBW)系统中,飞行器的致动器可以通过远程电子单元(REU)来控制。REU可将致动器的控制输入转换为可用于控制致动器的电子信号。REU可以促进飞行器飞行控制表面(例如包括副翼、襟副翼、高升力和翼尖折叠的机翼表面致动器,或例如升降舵、方向舵和稳定器的尾翼表面)的致动器的控制。REU配置为与其它电子盒通信,例如致动器控制电子设备(ACE)或飞行控制计算机(FCC)。因此,为了保证飞行器的安全,REU产生的电子信号以及REU与其它电子设备之间的数字/串行接口的完整性必须很高。



技术实现要素:

在一些示例中,一般描述远程电子单元。远程电子单元可以包括配置为彼此通信的第一通道(lane)、第二通道和第三通道。第一通道可以配置为接收与控制致动器的命令相关联的输入数据。第一通道还可以配置为基于输入数据生成第一输出数据。第一通道还可以配置为将第一输出数据发送到表决器。第一通道还可以配置为将第一输出数据发送到多路复用器。第二通道可以配置为接收输入数据。第二通道还可以配置为基于输入数据生成第二输出数据。第二通道还可以配置为将第二输出数据发送到表决器。第二通道还可以配置为将第二输出数据发送到多路复用器。第三通道可以配置为接收输入数据。第三通道还可以配置为基于输入数据生成第三输出数据。第三通道还可以配置为将第三输出数据发送到表决器。表决器可以配置为响应于第一、第二、和第三输出数据中的至少两个是相同的,将选择信号输出到多路复用器。多路复用器可以配置为基于选择信号选择第一输出数据和第二输出数据中的一个。多路复用器还可以配置为将选择的输出数据发送到致动器控制电子单元,该致动器控制电子单元配置为将选择的输出数据转换为用于致动器的模拟伺服命令。

在一些示例中,一般地描述了用于生成输出数据以控制致动器的方法。该方法可以包括在远程电子单元的第一通道、第二通道和第三通道接收与控制致动器的命令相关联的输入数据。该方法还可以包括由第一通道基于输入数据生成第一输出数据。该方法还可以包括由第一通道将第一输出数据发送到表决器。该方法还可以包括由第一通道将第一输出数据发送到多路复用器。该方法还可以包括由第二通道基于输入数据生成第二输出数据。该方法还可以包括由第二通道将第二输出数据发送到表决器。该方法还可以包括由第二通道向多路复用器发送第二输出数据。该方法还可以包括由第三通道基于输入数据生成第三输出数据。该方法还可以包括由第三通道将第三输出数据发送到表决器。该方法还可以包括响应于第一、第二、和第三输出数据中的至少两个相同,由表决器将选择信号输出到多路复用器。该方法还可以包括由多路复用器基于选择信号选择第一输出数据和第二输出数据中的一个。该方法还可以包括由远程电子单元的发送器(transmitter)将选择的输出数据发送到致动器控制电子单元,该致动器控制电子单元配置为将选择的输出数据转换为用于致动器的模拟伺服命令。

在一些示例中,一般地描述了有效地产生输出以控制致动器的系统。该系统可以包括致动器和控制机构,该控制机构配置为生成与控制致动器的命令相关联的输入数据。该系统还可包括致动器控制电子单元,该致动器控制电子单元配置为将命令转换为用于致动器的模拟伺服命令。该系统还可包括远程电子单元,该远程电子单元配置为与控制机构和致动器通信。远程电子单元可以包括配置为彼此通信的第一通道、第二通道和第三通道。该系统还可包括配置为与第一通道、第二通道和第三通道通信的表决器。该系统还可包括配置为与第一通道和第二通道通信的多路复用器。第一通道可以配置为接收输入数据。第一通道还可以配置为基于输入数据生成第一输出数据。第一通道还可以配置为将第一输出数据发送到表决器。第一通道还可以配置为将第一输出数据发送到多路复用器。第二通道可以配置为接收输入数据。第二通道还可以配置为基于输入数据生成第二输出数据。第二通道还可以配置为将第二输出数据发送到表决器。第二通道还可以配置为将第二输出数据发送到多路复用器。第三通道可以配置为接收输入数据。第三通道还可以配置为基于输入数据生成第三输出数据。第三通道还可以配置为将第三输出数据发送到表决器。表决器可以配置为响应于第一、第二、和第三输出数据中的至少两个是相同的,将选择信号输出到多路复用器。多路复用器可以配置为基于选择信号选择第一输出数据和第二输出数据中的一个。多路复用器还可以配置为将选择的输出数据发送到致动器控制电子单元。致动器控制电子单元可以配置为将选择的输出数据转换为用于致动器的模拟伺服命令。

下面参照附图详细描述各种实施例的其它特征以及结构和操作。在附图中,相同的附图标记表示相同或功能相似的元件。

附图说明

图1示出了一个实施例中的示例系统,该系统可用于实现三通道位对位(bit for bit)远程电子单元。

图2是在一个实施例中与图1中描述的三通道位对位远程电子单元相关的示例处理帧。

图3图示了在一个实施例中与三通道位对位远程电子单元相关的过程的流程图。

图4图示了在一个实施例中与三通道位对位远程电子单元相关的过程的流程图。

图5图示了在一个实施例中与三通道位对位远程电子单元相关的过程的流程图。

图6图示了在一个实施例中与三通道位对位远程电子单元相关的过程的流程图。

具体实施方式

在飞行控制系统中,线路更换单元(LRU)的输出控制数据由命令(COM)通道生成。命令通道生成的输出控制数据的完整性通常要求低于每小时故障次数(FPH)小于1E-7(或10-7)。命令通道生成的输出控制数据的完整性通常进行验证,以确保输出控制数据不会因内部错误而出错,以满足完整性要求。监视器(MON)通道用于监视命令通道的输出,以确保命令通道的完整性。监视通道可以包括与命令通道不同的硬件,以减轻命令通道与监视通道之间的一般错误。监视通道可以独立地确定与命令通道相同的输出,然后将其与来自命令通道输出的包装数据进行比较。

命令/监视器(COM/MON)通道的架构可用于远程电子单元(REU)以控制致动器。通常,在启动/启动或启动/待命配置中使用两个或更多冗余REU,以确保在其中一个REU发生故障时继续运行。然而,如果命令通道或监视通道处理元件中发生一般故障,则这种架构可能会失去致动器控制。一般故障问题可以通过引入第二COM/MON REU来解决,该COM/MON REU具有与原始COM/MON REU不同的处理元件。然而,第二REU的引入通常需要两个独特的REU设计和四个不同的处理元件来分布在两个独特的REU设计之间。成本和技术挑战使其成为不可取的选择。

在一个实施例中,根据本发明的图1中所示的远程电子单元(REU)103的架构可以提供一种解决方案来减轻上述COM/MON架构的缺点。REU 103的架构可以用三个不同的处理通道来实现。通过使用三个不同的处理通道,两个或更多REU可以控制一个致动器,而无需担心其中一个处理通道中的单个一般故障将禁用所有REU并导致失去致动器控制。

在一些示例中,REU可能需要具有相对高完整性的输出,例如对于故障概率小于1E-10(或10-10)FPH的无错误输出数据的完整性要求。这种要求可以通过使用位对位匹配方法匹配来自三个通道的REU输出来满足(例如,在位级别匹配来自三个通道的输出)。通过要求三个通道输出位对位匹配,系统100可以消除对输出数据进行任何振荡分析的需要,因为所有三个通道都产生相同的数据。在消除对输出数据进行任何振荡分析的需要的另一个示例中,可以通过位对位跟踪来实现阈值和持久性(persistence)方法(approach)。虽然使用位对位跟踪来实现阈值和持久性方法,但需要进行分析以确保所选的阈值和持久性能够满足飞机级别的结构振荡/瞬态要求,从而消除对来自位对位跟踪的输出数据的任何振荡分析的需要。

从三个通道实现位对位匹配的输出可能需要所有三个REU通道来处理相同的输入数据。鉴于此示例中的三个处理通道由三个独立的时钟设备驱动,并且每个时钟设备具有关联的独立硬件容限,这三个通道可能彼此异步运行。所有三个通道都在控制法则内实现时间相关功能,例如积分器和微分器,它们最终将开始发散并可能导致通道产生非位对位匹配的输出。因此,必须设计一种机制,使所有三个通道使用相同的输入数据组,并且所有三个通道同时执行其内部处理任务。如下文将详细描述的,通道同步与输入数据一致性相结合,确保所有三个处理通道将生成位对位匹配的输出。

在一个示例中,三个处理通道中的一个可以将致动器数据总线(ADB)数据发送到飞行器的致动器控制电子设备(ACE)(其中ACE可以是生成致动器命令的电子设备),将致动器命令发送到REU 103(其中REU 103可以将接收到的致动器命令转换为模拟伺服命令),并将模拟伺服命令返回给ACE。在一些示例中,REU 103还可以包括其它接口,例如压力传感器和其它位移传感器(VDT),从而促进致动器命令的接收和模拟伺服命令的回传给ACE。所有三个通道都可以监视通过环绕、位对位发送的ADB数据。如果三个通道中的两个检测到正在发送有故障的数据(例如,发送的数据与自己的本地数据位对位比较失败),则检测到故障的通道可能会立即禁用ADB发送器,从而截断ADB数据包。ACE可以将被截断的ADB发送检测为失败并继续使用从REU接收到的先前数据组。这种ADB故障检测/保护机制可以确保不向ACE发送错误数据(例如,可能被ACE视为有效数据的数据)的“小于1E-10(或10-10)FPH”完整性要求由REU满足。

在一个示例中,飞行器的每个主表面(例如,副翼、方向舵、升降舵和襟副翼)具有启动/启动配置,这意味着两个致动器和两个REU来控制表面。如本文所用,飞行器是指任何空中物体,例如固定翼飞行器、旋翼飞行器、无人驾驶飞行器和精确制导弹药。

图1示出了示例系统100,该系统100可用于实现根据本文描述的至少一些实施例布置的三通道位对位远程电子单元。在一些示例中,系统100可以是飞行控制系统的一部分。系统100可以包括至少一组控制器101、一个或多个远程电子单元(REU)103、和/或一个或多个致动器105。在一些示例中,REU 103可以是可以靠近致动器105或可以安装在致动器105上从而提供对致动器105的本地控制的电子部件。REU 103可以接收命令并且可以处理用于控制致动器105所必需的功能的输入和输出信号。控制器101的组可以是一组飞行控制装置,包括可以(由飞机的飞行员)移动的机构,从而生成输入数据102。例如,飞行员可以移动驾驶舱中的控制杆,或者可以在方向舵踏板上施加压力,生成输入控制。在其它示例中,自动或半自动计算机控制处理可以生成输入数据。输入控制可以表示为输入数据102并且可以由REU 103转换为一组输出数据104,其中输出数据104可以包括可以用于控制致动器105的电子信号。在一些示例中,输入数据102和/或输出数据104可以包括模拟信号。

如图1所示,REU 103可以包括三个通道——通道110、通道130、和通道150。在一些示例中,每个通道可以包括各自的一组组件,并且每个通道可以被编程为执行各自的组的操作。在示例中,每个通道可以是现场可编程门阵列(FPGA)设备,使得每个通道可以包括用硬件描述语言编程或配置的逻辑模块的单独集合。每个通道可以由各自的振荡器驱动,使得每个通道可以异步操作并且在单独的时钟周期下操作。即使每个通道可以由各自的振荡器驱动,三个振荡器可以具有相同的模型但被编程为以各自的时钟速度驱动三个通道。REU 103还可以包括接收器122和发送器124,其中接收器122和发送器124配置为与通道110、130、150通信。应当理解,对第一、第二、和第三通道的指定用于说明和解释目的,与特定单元、通道或流程无关。

在图1所示的示例中,通道110可以包括一个或多个逻辑模块,例如时钟111、参数模块112、静态随机存取存储器(SRAM)模块113、致动器数据总线接收模块(ADB Rx)114、致动器数据总线发送模块(ADB Tx)115、跨通道数据链路(CLDL)模块116、和同步(SYNC)模块117。时钟111可以由第一振荡器(未示出)驱动,并且时钟111的输出可以调节通道110的逻辑模块之间的信号流,以及在通道110处接收或从通道110发送的信号流。参数模块112可以是配置为存储一组参数以促进通道110的操作的模块。在一些示例中,可以从REU 103的非易失性存储器接收存储在参数模块112中的参数。SRAM模块113可以包括从可电擦除可编程只读存储器(EEPROM)读取的数据。ADB Rx接收模块114可以配置为促进通过连接到通道110、130、150的ADB从致动器105接收数据。CLDL模块116可以配置为促进输入数据102的副本的交换,其将被下面进一步说明。SYNC模块117可以配置为促进通道110、130、150之间的同步,这将在下面进一步描述。

在一些示例中,ADB Tx发送模块115可以是通道110的一部分,但是可以不被编程以发送来自通道110的输出。在一些示例中,可以为每个REU位置唯一地定义编程离散飞行器上的控制器可以确定是通道130还是通道150是输出数据104的发送器。通过对三个通道中的两个进行编程以发送输出数据104,REU 103可以提供通用故障缓解。此外,配置让三个通道中的两个发送输出允许REU 103以三个通道中的一个故障通道进行调度,但不会以两个故障通道进行调度。此外,具有三个通道中的两个来发送输出的配置可以最小化REU 103设计中的硬件和固件使用。

通道130可以包括一个或多个逻辑模块,例如时钟131、参数模块132、静态随机存取存储器(SRAM)模块133、致动器数据总线接收模块(ADB Rx)134、致动器数据总线发送模块(ADB Tx)135、跨通道数据链路(CLDL)模块136、和同步(SYNC)模块137。时钟131可以由第一振荡器(未示出)驱动,并且时钟131的输出可以调节通道130的逻辑模块之间的信号流,以及在通道130处接收或从通道130发送的信号流。参数模块132可以是配置为存储一组参数以促进操作的模块通道130。在一些示例中,可以从REU 103的非易失性存储器接收存储在参数模块132中的参数。SRAM模块133可以包括从可电擦除可编程只读存储器(EEPROM)读取的数据。ADB接收模块134和ADB发送模块135可以配置为促进通过连接到通道110、130、150的ADB从致动器105接收数据和向致动器105发送数据。CLDL模块136可以配置为促进输入数据102的副本的交换,这将在下面进一步描述。SYNC模块137可以配置为促进通道110、130、150之间的同步,这将在下面进一步描述。

通道150可以包括一个或多个逻辑模块,例如时钟151、参数模块152、致动器数据总线接收模块(ADB Rx)154、致动器数据总线发送模块(ADB Tx)155、跨通道数据链路(CLDL)模块156和同步(SYNC)模块157。时钟151可以由第一振荡器(未示出)驱动,并且时钟151的输出可以调节通道150的逻辑模块之间的信号流,以及在通道150处接收或从通道150发送的信号流。参数模块152可以是配置为存储一组参数以促进通道150的操作的模块。在一些示例中,可以从REU 103的非易失性存储器接收存储在参数模块152中的参数。ADB接收模块154和ADB发送模块155可以配置为促进通过连接到通道110、130、150的ADB从致动器105接收和发送数据以及向致动器105发送数据。CLDL模块156可以配置为促进输入数据102的副本的交换,这将在下面进一步描述。SYNC模块157可以配置为促进通道110、130、150之间的同步,这将在下面进一步描述。

在一个示例中,当通道150用基于闪存的FPGA实现并且通道110、130用基于SRAM的FPGA实现时,通道150可以排除SRAM逻辑模块,这不同于通道110(具有SRAM模块113)和通道130(具有SRAM模块133)。因此,通道110和130可以在每次从启动存储器设备(boot memory device)开启时对它们自身进行编程。

在一个示例中,REU 103的接收器122可以从控制器101接收输入数据102。在一些示例中,REU 103可以包括模数转换器(ADC),其配置为,在将输入数据102分配到通道110、130、150之前,将在接收器122处接收到的可以是模拟数据的输入数据102转换为数字数据。接收器122可以将输入数据102分配到通道110、130、150。由于通道110、130、150在各自的时钟111、131、151上操作,通道110、130、150可以在不同时间从接收器122接收输入数据102的副本。此外,由于通道110、130、150可以在控制法则内实现时间相关函数,所以在每个通道接收的输入数据102的副本可能随着时间变得彼此不同,这可能导致通道110、130、150基于输入数据的不同副本102产生不同的输出。

为了确保通道110、130、150正在使用输入数据102的相同副本,每个通道可以与其它两个通道共享其各自的输入数据102副本。在交换输入数据102的副本时,每个通道可以访问相同的三个输入数据副本102。然后每个通道可以中值选择输入数据102的三个副本,或选择是三个副本中的中位数的输入数据的副本102。通过基于相同规则(中值选择)选择输入数据102的副本,三个通道110、130、150可以使用相同的输入数据来生成相应的输出数据104。

例如,从接收器122,通道110可以接收输入数据102的第一副本(标记为102a),通道130可以接收输入数据102的第二副本(标记为102b),并且通道150可以接收输入数据102的第三副本(标记为102c)。通道110可以通过CLDL模块116将输入数据102a的第一副本发送到通道130、150。通道130可以通过CLDL模块136将输入数据102b的第二副本发送到通道110、150。通道150可以通过CLDL模块156将输入数据102c的第三副本发送到通道110、130。CDLD模块116、136、156也可以促进接收每个通道的输入数据102的副本。结果,通道110、130、150每个都可以访问输入数据102(102a、102b、102c)的第一、第二、和第三副本。每个通道110、130、150可以选择输入数据102的特定副本,该副本包括输入数据102a、102b、102c的第一、第二、和第三副本的值之中的中值。例如,如果通道110、130、150选择了输入数据的第二副本102b,则通道110、130、150可以使用输入数据102b的选定副本分别生成第一输出数据104a、第二输出数据104b、第三输出数据104c。

在一些示例中,还可以在通道110、130、150中的每个通道中对输入数据102a、120b、102c的副本的值执行跨通道比较监视器(CLCM)。如果三个通道之一提供的值相对于其它两个通道提供的值超出容限(例如,通过将输入数据102的副本的值与预定义阈值进行比较),则提供故障值的该通道将由其它两个通道重置,以尝试恢复第三通道的正常操作。

在一个示例中,输入数据102可以包括由系统100的各种传感器(未示出)生成的传感器数据,并且REU 103可以经由致动器数据总线(ADB)将传感器数据传递到致动器。ADB接口和REU 103接收的所有输入传感器数据也需要数据一致性。ADB数据可以在被REU 103接收时提供给三个通道110、130、150,并且可以由与每个通道的内部处理任务异步的通道110、130、150接收。然后传感器数据可以由REU 103经由ADB发送到致动器105。对传感器数据应用中值选择(MVS)可以确保三个通道110、130、150可以提供位对位匹配的值以发送到ADB。在一些示例中,REU 103可以经由ADB提供其它ADB数据,例如控制律(CLAW)变量。这种ADB数据也可以在通道110、130、150的CLDL模块上共享,并且MVS可以在将ADB数据的值填充到ADB上之前应用于ADB数据。因此,使用CLDL模块的数据共享方案和基于MVS的信号选择过程可以确保所有三个通道准备了位对位匹配的关键ADB发送数据。

在一个实施例中,REU 103可以包括一个或多个表决器组件以促进上述数据一致性过程。表决器组件可以被编程为执行数字一致性技术,从而能够在所有通道中产生精确的值。

同步算法可由REU 103的通道110、130、150之间的SYNC模块实施以实现通道同步,以确保所有三个通道110、130、150生成位对位匹配的输出。在一个示例中,每个通道可以实现一个处理帧,其中每个处理帧可以包括以一致的顺序执行的一系列任务。每个通道可以通过处理帧末尾的硬件离散输出生成同步请求。在每个通道上,在开启或从重置和初始化中恢复时,通道可以向其它两个通道发出同步请求。接收或检测到两个活动同步请求的通道可以打开一个同步窗口。同步窗口的宽度可以基于与相应通道时钟和同步离散时序相关联的最坏情况时序容限。在同步窗口期间,来自第三处理通道的同步请求预计会被已经发出同步请求的两个通道接收。如果接收到第三个同步请求,则所有三个通道都同步。如果在同步窗口期间没有接收到第三个同步请求,那么未能发出同步请求的通道可能会被其它两个通道重置。当第三通道正在重置时,实现同步的两个通道可以提供完整的REU功能

例如,在通道110的处理帧结束时,通道110可以通过SYNC模块117向通道130、150发出第一同步请求120a,其中通道130、150可以分别通过SYNC模块137、157接收同步请求120a。通道110还可以通过SYNC模块117从通道130接收第二同步请求120b。在从通道130接收到第二同步请求120b后,通道110和通道130可以同步并且可以在各自的处理帧中执行各自的一系列任务。此外,响应于本地同步请求(第一同步请求120a)的发出,并且响应于从通道130接收到第二同步请求120b,通道110可以定义同步窗口。在同步窗口期间,通道110可以预期从通道150接收第三同步请求120c。如果在通道110、130两者处都接收到来自通道150的第三同步请求120c,则所有三个通道110、130、150被同步,并且所有三个通道110、130、150可以同步地在各自的处理帧中执行各自的一系列任务。如果在同步窗口期间,在通道110没有接收到第三同步请求120c,则通道150可以被通道110重置。当通道150正在重置时,实现同步的两个通道110、130可以提供完整的REU功能。

上述通道同步算法可以解决每个通道可能同时执行各自的任务的问题。如上所述的数据一致性算法可以通过确保三个通道110、130、150使用相同的输入数据为致动器105生成输出数据104来进一步使REU 103能够实现位对位发送。

在图1所示的示例中,两个通道130、150可以配置为生成可以发送到致动器控制电子设备(ACE)的输出数据,使得ACE可以监视和/或处理输出数据,并且将输出数据输入进控制律,从而在闭环系统中生成有效的致动器命令。例如,致动器105可以从通道130或通道150接收输出数据104b或输出数据104c。通道110可以生成输出数据以确保被发送到致动器105的输出数据的正确性。如此,即使通道110生成输出数据104a,输出数据104a也可以不是发送到致动器105的输出。

输出数据104a或104b之一的选择和发送可以基于表决器124和多路复用器(“MUX”)125的使用。表决器124可以是三输入表决器,使得当三个中的两个如果进入表决器124的输入相同,则表决器124可以将选择信号(“SEL”)输出到MUX 125。通道130、150可以将相应的输出数据104b、104c发送到MUX 125和表决器124。通道110可以将输出数据104a发送到表决器124但不发送到MUX 125。如下文将更详细描述的,MUX 125可以从表决器124接收SEL信号,其中SEL信号可以指示选择MUX 125接收到的输出数据104b、104c之一。响应于SEL信号的接收,MUX可以通过ADB(未示出)并经由ACE将输出数据104b、104c之一发送到致动器105。

在一个示例中,如果表决器124接收到相同的输出数据104a、104b、104c,则表决器124可以将SEL信号输出到MUX 125。在所有三个输出都相同的示例中,选择是否将输出数据104b、104c发送到致动器105可以基于REU 103在飞行器中的位置。在另一示例中,如果表决器124接收输出数据104a、104b相同但输出数据104c与输出数据104a、104b不同,则表决器124可确定存在故障(单通道故障)但仍可输出SEL信号到MUX 125以指示MUX 125选择输出数据104b。类似地,如果表决器124接收到输出数据104a、104c相同但输出数据104b与输出数据104a、104c不同,则表决器124可确定存在故障(单通道故障)但仍可输出SEL信号到MUX 125以指示MUX 125选择输出数据104c。在另一示例中,如果表决器124接收到彼此不同的输出数据104a、104b、104c,则表决器124可以确定存在故障(双通道故障)并且可以不向MUX 125输出SEL信号.

图2示出了根据本文描述的至少一些实施例布置的与图1中描述的三通道位对位远程电子单元相关的示例处理帧。图2的以下描述可参考图1的组件。

在图2所示的示例中,可以例如通过REU 103的调度器(未示出)将通道(例如,通道110、130或150)的处理帧202调度到一毫秒(1ms)的持续时间。处理帧202中的多个子帧可以是可配置的,例如在编译时,并且取决于期望的实现。图2所示的处理帧202包括十六(16)个子帧204(标记为子帧[0]到[15],使得每个子帧204的持续时间可以为62.5微秒(μs)。子帧204可以是无论在处理帧202中执行的功能实际完成多快,都按顺序执行并且每个都完整地执行。在一些示例中,在给定子帧期间可以执行不止一个功能。可以分配或专用最终子帧204[15]来实现通道110、130、150的跨通道同步。通道110、130、150之间的同步可能导致调度器立即“重新启动”(或“电子同步”)到子帧[15],这可能包括与初始POR后同步相同的效果。

在图2所示的示例处理帧中,每个通道可以在处理帧202内执行一系列任务,并且可以在不同的子帧204执行不同的任务。在一些示例中,特定任务可以跨越一个以上的子帧。在一些示例中,特定子帧可以是空闲的,使得可以在空闲子帧处不执行任何任务。在一些示例中,通道110、130、150可以配置为执行图2中可能未示出或描述的任务。处理帧202可以通过启用REU 103的调度器来初始化。

在子帧204[0]处,通道可以执行更新ADB输入信号管理(ISM)、从模数转换器(ADC)获取数字化数据、以及获取离散输入的任务。在一个示例中,ISM可以是固件实体,它有助于从各种硬件接口(例如,致动器数据总线、模数转换器输入、离散输入等)接收各个通道的数据,并且可以使接收到的数据能够用于可以使用接收到的数据的各种固件过程(例如,解调、CLAW、监视器等)。

在子帧204[1],通道可以对接收到的输入(例如输入数据102)执行解调过程。在子帧204[2],通道可以执行CLDL发送和接收,例如共享输入数据102的副本,并从其它两个通道接收输入数据102的副本。在子帧204[3]处,通道可以处理控制律(CLAW)变量,例如积分器和导数,以便基于输入数据102生成输出数据104。

在子帧204[5]至204[7]处,通道可以继续监视由通道执行的一系列任务的执行,例如输出数据104的生成。在子帧204[9]处,通道可以执行进一步的CLDL发送和接收任务。在子帧204[11]处,通道可以更新数模转换器(DAC)的输出,例如通过将生成的输出数据104发送到DAC,以便将输出数据104转换为适合于致动器105使用的格式。

在子帧204[13]处,通道可以更新ADB输出信号管理(OSM)。OSM可以是一个固件过程,它收集要由相应通道输出的数据,并且可以使收集到的数据能够供其它固件过程(例如,ADB输出数据、CLAW输出数据等)使用。ADB OSM更新子帧204[13]可以具体地与当前帧的ADB输出数据的更新相关。

在子帧204[15],即最后子帧,通道可以通过生成第一同步请求并向相邻的两个通道发出第一同步请求来执行跨通道同步过程。随后,处理帧202可以在新的子帧[0]处重新启动。

图3示出了与根据本文描述的至少一些实施例布置的三通道位对位远程电子单元相关的过程的流程图。下面对图3的描述可以参考图1和图2的组件。

在一个示例中,由每个通道110、130、150发出的同步请求可以是低有效断言。如上所述,通道110、130、150可以在其相应处理帧的末尾或最后子帧(例如,图2中的子帧204[15])生成相应的同步请求。在图3所示的流程图中,同步过程可以在通道110、130、150中的第一通道在模块301发出本地同步请求时开始。

在发出本地同步请求后,在模块303,发出本地同步请求的第一通道可以等待第二同步请求,其中发出的本地同步是第一同步请求(即已经发出或在本地接收)。可以从通道110、130、150中的第二通道或第三通道接收第二同步请求。在从第二通道接收到第二同步请求时,同步过程可以进行到模块304。

在模块304,第一通道可以响应于接收到两个同步请求而启动同步窗口定时器。第一通道可以在同步窗口定时器内等待来自第三通道的第三同步。

在模块305,如果第一通道可以从第三通道接收到第三同步请求,那么同步事件可以在模块306发生,其中所有三个通道110、130、150都被同步。如果在一段时间之后第一通道没有接收到第三同步请求,则在模块307,第一通道可以确定同步窗口是否已经超时。如果同步窗口没有超时,第一通道可以继续等待来自第三通道的第三同步请求。

如果同步窗口已经超时,则同步过程可以继续到模块308,其中对于第一通道和第二通道(已经发出第一和第二同步请求的两个通道)可以发生同步事件。这样,即使同步窗口已经超时并且没有接收到第三同步请求,只要保持第一通道与第二通道之间的同步,REU 103就可以继续操作。此外,第一通道或第二通道的同步监视器可以检测在第一通道没有接收到第三同步请求的故障。同步监视器可以确定如果故障持续超过特定一段时间(例如,200毫秒),则需要重置第三通道。在模块309,同步监视器可以跳闸并且检测到故障的通道可以重置故障通道(第三通道)以尝试恢复故障通道中的正常操作。

同步过程可以在模块306或模块309之后在模块302处重新启动,其中在模块302处,第一通道可以等待第一同步请求(或它自己的本地同步请求)。

在一些示例中,故障可能由单事件翻转(SEU)现象引起,该现象可能会驱动通道110、130、150中的任何一个对给定REU处理帧的输出数据进行错误计算,这可能会导致在ADB发送上的错误计算。SEU通常可以自我修复,因为故障可能会自行缓解,并且错误计算可能最终会消失。然而,如果故障是硬件故障,例如单事件闩锁(SEL),则故障可能会继续存在,并且在故障持续的同时,下游发送监视器可能会继续阻止REU 103输出的数据(例如通过使离开REU 103的数据无效)。

图4示出了与根据本文描述的至少一些实施例布置的三通道位对位远程电子单元相关的过程的流程图。下面对图4的描述可以参考图1和图2的组件。

可以使用类似于上述通道同步的方案来确保ADB数据一致性。在一个示例中,跨通道ADB接收确认的实现可以有助于确定从ACE到REU 103跨通道110、130、150的最近写入的ABD数据的状态。在一个示例中,ADB可以是对于给定的消息接收的可以确保跨通道110、130、105的最小偏差的单个ADB物理总线。

图4中示出了与过程400a相关的示例流程图,其中过程400a与跨通道ADB接收确认过程相关。在模块401,第一通道可以在完成接收ADB数据包时通过硬件离散输出生成ADB接收确认信号。例如,每个通道110、130、150的ADB Tx模块115、135、155都可以配置为响应于接收到ADB数据包而发出ADB接收确认信号,并且每个通道110、130、150的ADB Rx模块114、134、154都可以配置为接收ADB接收确认信号。在模块402、403,当第二通道也断言其ADB接收确认信号时,响应于检测到两个活动的ADB接收确认信号,通道打开ADB接收确认窗口。ADB接收确认窗口宽度可以基于与通道时钟和ADB接收处理时序相关联的最坏情况时序容限。

在ADB接收确认窗口期间,来自第三处理通道的ADB接收确认信号预计将被已经确认ADB接收完成的两个通道接收。如果从第三通道收到ADB接收确认,则所有通道使用最新ADB数据前进,该ADB数据保证在所有三个通道中相同。如果由于故障情况,在ADB接收确认窗口内未从第三条通道收到ADB接收确认,则其它两条通道使用最新ADB数据继续前进。故障条件下的第三通道将使用ADB数据,即之前的有效接收数据。第三通道可以自行从故障中恢复,或者故障可能会持续存在。在任一情况下,REU中的下游监视都可以检测并阻止第三通道的任何后续故障传播到REU输出。

在模块404处,第一通道可以检测窗口定时器的持续时间是否已经到期。如果窗口定时器尚未到期,则过程返回到模块403,其中第一通道可以继续等待第三ADB接收确认信号。如果接收到第三ADB接收确认,则第一通道可以终止窗口定时器,使窗口定时器立即到期,即使没有达到窗口超时时间。在一个示例中,模块404中“时间到期”为真的标准可以是1)所有3条通道都已确认接收到ADB数据;或2)窗口计时器已到期。如果窗口定时器已到期,则过程继续到模块405,其中可以捕获跨通道结果(在通道之间交换的ADB数据)并将其传递给后续的监视/故障管理功能。流程图400a的过程然后可以返回到模块402以等待来自相邻通道的后续第二ABD Rx确认信号。

图4中示出了与过程400b相关的示例流程图,其中过程400b可以与通道110、130、150中的每个通道的调度器/帧执行相关联。模块422,通道处理调度器/帧执行可以用ADB数据更新输入信号管理(ISM),其中更新可以跨通道110、130、150同步执行。使用ADB数据的ISM的更新可以跨三个通道同步,因为通道已经同步,并且在通道同步之前可以不执行ISM更新。在一个示例中,通过ISM的实际数据可以基于最后一个有效数据包(例如,没有故障的ADB数据包)来确定。例如,每个通道可以检查跨通道结果(例如,由过程400a锁存的结果)以确定对于那些未能确认分组接收的通道的适当动作。

在模块423,通道可以检查ADB接收确认窗口是否关闭(或到期),以避免发生竞争条件。如果ADB接收确认窗口没有关闭,该通道可以继续等待接收来自其它通道的ABD接收确认信号。如果ADB接收确认窗口关闭,则通道可以移动到模块424,在此,通道可以用最后一个有效接收分组更新ISM。通道可以在处理帧的每个实例中执行ISM的此更新功能。

图5示出了与根据本文描述的至少一些实施例布置的三通道位对位远程电子单元相关的过程的流程图。下面对图5的描述可以参考图1和图2的组件。

图5所示的示例流程图涉及用于实现REU 103的通道110、130、150(标记为通道A、通道B、通道C)的初始跨通道同步(作为启动的一部分)的同步算法。通道A、B、C可以异步操作,并且实现跨通道A、B、C的同步可能会导致通道A、B、C各自生成一个位对位匹配的输出。

在模块511,第一通道(通道A)可以被初始化。在模块512,通道A可以向第二通道(通道B)和第三通道(通道C)发出第一同步请求。通道A可以等待从通道B或通道C接收同步请求。在一些示例中,通道A、B、C中的任何通道可以发出第一同步请求。

模块531可以晚于模块511发生,其中可以初始化第二通道(通道B)。由于通道B的初始化发生在通道A的初始化之后,通道B可以在模块532处向通道A和通道C发出第二同步请求,这发生在比模块512晚的时间。

通道A可以接收第二同步请求,并且在模块513处,在通道A与通道B之间实现同步。如图所示,直到至少两个通道同意同步(例如,具有包括它自己的本地同步请求的两个同步请求),同步事件才会实现。结果,在模块514、533处,通道A和通道B可以在各自的处理帧中同步地执行各自的一系列任务。在一个示例中,基于同步,通道A和通道B可以同步地生成位对位匹配的输出。在模块515、534,同步的通道A和通道B可以发出下一个同步请求,并且可以各自等待来自通道C的第三同步请求。

模块551可以晚于模块511、531发生,其中可以初始化第三通道(通道C)。由于通道C的初始化发生在通道A和通道B的初始化之后,通道C可以在模块552向通道A和通道B发出第三同步请求。在示例中,模块522可以通道A和通道B在模块513同步之后发生。如果模块522发生在模块513之前,则可以在模块513处实现所有三个通道的同步。由于模块522发生在模块513之后,因此通道C可能必须等待下一个同步窗口才能实现与通道A和通道B同步。在一些示例中,最后上线的通道在初始化结束时发出其同步请求,并且当相邻的两个通道发出同步请求时自然地实现同步。

在模块515、534处发出新的同步请求后,通道A和通道B可以接收从通道C请求的在模块552处发出的第三同步。因此,所有三个通道A、B、C可以在模块516处实现同步。结果,在模块517、535、553处,通道A、B、C可以同步地在各个处理帧中执行各个系列的任务。在一个示例中,可以通过每个处理帧执行一次同步算法来维持图5所示过程的跨通道同步,作为重新启动处理帧的机制。

与本发明中描述的REU相关联的系统和架构可以提供REU设计的改进。在一些示例中,REU已经通过依赖于REU的通道略微发散并使用通道跟踪算法来保持通道紧密对齐的架构来实现。然而,这些架构无法生成位对位匹配的输出,或通道输出之间的零失配。此外,根据本发明的同步过程可以在例如小于一微秒(1μs)的可行的一段时间内实现跨所有三个通道的同步。此外,初步分析表明,在1毫秒的处理帧时间内可以实现200纳秒(ns)的最大通道间时钟漂移。此外,根据本发明的数据一致性过程为串行总线提供了数据一致性,其通过生成和提供对正被发送到数字串行总线(来自REU)的所有定点值的位对位跟踪来改进REU设计。因此,可以实现所有通道生成的输出之间的完美跟踪(零误差)。

图6示出了与根据本文呈现的至少一些实施例布置的三通道位对位远程电子单元相关的过程的流程图。可以使用例如上面讨论的计算机系统100来实现图6中的过程。示例过程可包括如模块602、604、606、608、610、612、和/或614中的一个或多个所示的一个或多个操作、动作、或功能。尽管被示为离散模块,但根据所需的应用,各种模块可被划分为额外的模块、组合成更少的模块、消除或并行执行。

过程可以在模块602处开始,其可以由远程电子单元的第一通道、第二通道和第三通道执行。在模块602处,第一通道、第二通道和第三通道可以各自接收与控制致动器的命令相关联的输入数据。

过程可以从模块602继续到模块604。在模块604处,第一通道、第二通道和第三通道可以各自基于输入数据分别生成第一输出数据、第二输出数据和第三输出数据。

过程可以从模块604继续到模块606。在模块606处,第一通道、第二通道和第三通道可以将第一输出数据、第二输出数据和第三输出数据发送到远程电子单元的表决器。

过程可以从模块606继续到模块608。在模块608处,第一通道和第二通道可以将第一输出数据和第二输出数据发送到远程电子单元的多路复用器。

过程可以从模块608继续到模块610。在模块610,表决器可以响应于第一、第二、和第三输出数据中的至少两个是相同的,将选择信号输出到多路复用器。

过程可以从模块610继续到模块612。在模块612处,多路复用器可以基于从表决器接收到的选择信号来选择第一输出数据或第二输出数据中的一个。

过程可以从模块612继续到模块614。在模块614处,多路复用器可以将选择的输出数据发送到致动器控制电子单元,该致动器控制电子单元配置为将选择的输出数据转换为用于致动器的模拟伺服命令。

在一些示例中,由第一通道接收的输入数据可以是输入数据的第一副本。第一通道可以将输入数据的第一副本发送到第二通道和第三通道。第二通道可以接收输入数据的第二副本。第二通道可以将输入数据的第二副本发送到第一通道和第三通道。第三通道可以接收输入数据的第三副本。第三通道可以将输入数据的第三副本发送到第一通道和第二通道。第一、第二、和第三通道中的每一个可以识别输入数据的第一、第二、和第三副本中的输入数据的特定副本。第一、第二、和第三输出数据的生成可以基于输入数据的识别副本。在一些示例中,第一通道可以通过对输入数据的第一、第二、和第三副本执行中值选择来识别输入数据的特定副本。在一些示例中,第一通道可以确定输入数据的第一、第二、和第三副本中的一个是否超出容限。如果输入数据的第一、第二、和第三副本中的一个超出容限,则第一通道可以重置提供输入数据的超出容限副本的通道。

在一些示例中,第一通道可以定义同步窗口并且可以预期来自同步窗口内的第三通道的同步请求。响应于在同步窗口内未能从第三通道接收到同步请求,第一通道可以检测在第三通道发生故障。第一通道可以确定故障是否持续超过一段时间。响应于故障持续超过该段时间,第一通道可以重置第三通道。

在一些示例中,第一输出数据、第二输出数据、和第三输出数据可以在位级别上相同。在一些示例中,第一通道、第二通道、和第三通道可以配置为在第一通道接收到第二同步请求之前异步操作。

权利要求中所有装置或步骤加功能元件的相应结构、材料、动作和等效物(如果有的话)旨在包括用于与其它要求保护的元件组合执行功能的任何结构、材料或动作,正如特别声明的那样。本发明的描述是为了说明和描述的目的而呈现的,但并不旨在穷举或限制所公开形式的本发明。在不脱离本发明的范围和精神的情况下,许多修改和变化对于本领域普通技术人员来说将是显而易见的。选择和描述实施例是为了最好地解释本发明的原理和实际应用,并且使本领域普通技术人员能够理解本发明的各种实施例以及适合于预期的特定用途的各种修改。

再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文章

  • 日榜
  • 周榜
  • 月榜