控制器局域网采样点检测

文档序号:1925211 发布日期:2021-12-03 浏览:18次 >En<

阅读说明:本技术 控制器局域网采样点检测 (Controller area network sampling point detection ) 是由 戴维·C·斯玛特 凯里·S·马丁 于 2021-04-08 设计创作,主要内容包括:通过控制器局域网,检测来自传输电子控制单元(ECU)的CAN消息中的隐性位的传输。在所检测的隐性位中的延迟时间后,显性脉冲被注入到网络上。检测传输ECU的行为,并且基于所检测的ECU行为来表征用于传输ECU的采样点。基于所表征的采样点生成动作信号。(The transmission of a recessive bit in a CAN message from a transmitting Electronic Control Unit (ECU) is detected via a controller area network. After a delay time in the detected recessive bit, a dominant pulse is injected onto the network. The behavior of the transmitting ECU is detected, and sampling points for the transmitting ECU are characterized based on the detected ECU behavior. Generating a motion signal based on the characterized sampling points.)

控制器局域网采样点检测

技术领域

本描述涉及使用控制器局域网的计算。更具体地,本描述涉及检测和 配置在控制器局域网上操作的电子控制单元中的采样点。

背景技术

控制器局域网(Controller area network,CAN)通信是使用记录详尽 的协议进行的。计算系统用于运行配置逻辑,以便将电子控制单元配置为 使用CAN通信进行通信。这通常包括配置可以直接测量的事物(诸如信 令速率)以及不可直接测量的事物(诸如CAN采样点)。

更具体地说,单个CAN消息(或网络数据包)通常由串行位流构成, 其从长度方面的大约60位可以变化到长度方面的远超过100位。每个单 独的位具有特定组的配置元素,这些元素共同决定了位的时间长度(或位 长度)。位的时间长度又决定了信令位速率。

电子控制单元(electronic control unit,ECU)也配置有采样点。采样 点限定了位长度(或位周期)内的在该处由ECU对位的状态进行采样的 点。采样点在位长度内的位置会极大地影响ECU解释位的状态的准确性。

以上讨论仅被提供用于一般背景信息,并不旨在用于帮助确定所要 求保护的主题的范围。

发明内容

通过控制器局域网,检测来自传输电子控制单元(ECU)的CAN消 息中的隐性位的传输。在所检测的隐性位中的延迟时间后,显性脉冲被注 入到网络上。检测传输ECU的行为,并且基于所检测的ECU行为来表征 用于传输ECU的采样点。基于所表征的采样点生成动作信号。

提供本概述是为了以简化的形式介绍将在下面的详细描述中进一步 描述的一些概念。本概述不旨在标识所要求保护的主题的关键特征或必要 特征,也不旨在用于帮助确定所要求保护的主题的范围。要求保护的主题 不限于解决背景技术中记述的任何或全部缺点的实施方式。

附图说明

图1是CAN总线架构的一个示例的框图。

图2是更详细地示出采样点验证和控制计算系统的一个示例的框图。

图3A和图3B(在此统称为图3)示出了采样点验证和控制计算系统 在标识ECU的采样点时的操作的一个示例。

图4是示出在由被测试的电子控制单元(ECU)传输的CAN消息内 将显性脉冲注入到CAN总线上的示例。

图5是示出部署在远程服务器环境中的图1示出的架构的一个示例的 框图。

图6是示出可以在前面附图中示出的架构中使用的计算环境的一个示 例的框图。

具体实施方式

如上所讨论那样,由CAN总线上的电子控制单元(ECU)使用的控 制器局域网(CAN)采样点的位置可能极大地影响ECU在CAN总线上操 作的准确性和可靠性。然而,CAN采样点不可直接测量。

在由ECU传输的CAN消息中的单独的位具有位长度(或位周期), 该位长度(或位周期)由若干时间量(tq)来定义,其中tq通常从通过预 定标器(pre-scaler)分频降低的高速时钟源(诸如主微处理器的时钟源) 导出。该位还被细分为多个时间片段,每个时间片段由整数个时间量值tq表示。时间片段通常被称为时间片段1(tseg1)和时间片段2(tseg2)。

以tq为单位的总位周期定义为:

等式1

1+tseg1+tseg2

tseg1中的时间量值的数量和tseg2中的时间量值的数量通常由在CAN 控制器(或ECU)中的一对寄存器中跟踪的值来设置。其他一些CAN控 制器具有跟踪与整个网络中的传播延迟相关的传播延迟片段(propseg)的 附加寄存器。在这样的系统中,总位周期(或位长度)如下确定:

等式2

1+propseg+tseg1+tseg2

在由上述等式1和等式2定义的位周期或位长度中的采样点位于tseg1 的末端。这意味着,在单个位内,对这个位进行采样的ECU在这个位内 等待直到tseg1结束,才能对该位的状态进行采样。

更具体地说,CAN消息以特定的“开始位”开始,该开始位是从逻 辑1(隐性状态)到逻辑0(显性状态)的转换。在所定义的位周期的开 始时,传输ECU将下一个位的状态应用于网络。下一个位的状态可以是 与前一个位相同的状态,或者是前一个位的替代性状态。每个CAN消息 也具有报头。报头包括CAN标识符字段。一些协议在CAN标识符字段中 包括传输节点的源地址。源地址(本文中也称为ECU标识器字段)可以 用于标识ECU的网络中的哪个ECU传输了消息。CAN标识符字段也用 作仲裁字段(arbitration field)。仲裁字段用于获得对CAN总线的控制。 报头也可以包括用于其他事物的其他位。CAN消息还包括数据部分。

许多CAN总线系统的物理特性包括CAN收发器、线束布线和包括端 子、拼接和连接器的其他电气特性。带有CAN总线的系统有时也具有通 常紧邻CAN总线的许多其他电路。因此,非常常见的是电气瞬变出现在 CAN总线上。这种电气瞬变可能包括诸如由于线束特性而导致的信号振 铃的事物。瞬变也可以从紧邻CAN总线的其他电路耦合到CAN总线。瞬 变也可能来自其他来源。瞬变经常发生在位周期之间的边界附近。

因此,CAN消息的传输器和接收器必须处于非常精确的时间同步。 这通常是通过基于接收控制器中的tq时钟并基于传输和接收控制器两者中 的时间片段配置,利用本地定时来精确检测位转换来实现的。

CAN ECU通常使用位处理执行器(bit processing engine,BPE)处理 CAN消息中的位。在可能存在位转换的预期的时间点或其附近看到信号 中的转换时,BPE则需要确定这个单独的位的状态。如果BPE在转换后 过早地对位状态进行采样(例如,太接近位周期的开始),则它可能会拾 取电噪声(诸如振铃),并将该振铃误解释为具有错误的逻辑状态(1或0) 的位。这是ECU具有tseg1和tseg2寄存器的原因。这些寄存器值可以用 于控制BPE何时对位的状态进行采样。

CAN通信中经常遇到的一个问题是tseg1和tseg2值的不正确配置, 这导致不正确地实施采样点。tseg1和tseg2设置的许多组合可以产生基于 tseg1和tseg2值的总和的正确的位率。然而,tseg1和tseg2值的不正确配 置虽然产生了正确的位率但也可能导致采样点的较差选择(在位周期中将 其放置得太早或太晚)。因为采样点通常在BPE内部,所以没有像位流本 身存在那样的测量采样点的直接手段。因此,可能难以确定ECU的采样 点是否被错误配置。

为了解决这个问题,CAN ECU具有用于检测传输或检测错误并重试 失败的传输的内置机制。因此,在ECU使得其采样点略微错误配置时, 重试机制可以掩盖错误或错误配置,使得工程师在产品开发期间忽略这些 错误。这可能有边际配置逃逸到产生中的风险。

因此,本描述继续进行关于确定配置的ECU中的实际采样点实施。 通过采样点验证和控制计算系统,标识CAN消息中隐性位传输的开始, 并将显性值传输到网络上。监控传输ECU的行为,以确定传输ECU是否 检测到显性位。如果是,则这意味着在传输ECU的采样点处注入显性位。 如果不是,在隐性位周期内显性位在该处被注入位周期中的位置被移动,并且在位周期内的不同位置处重复显性位注入,直到传输ECU的采样点 被充分表征。

图1是CAN总线架构100的一个示例的框图。CAN总线架构100可 以部署在移动工作机器上,诸如自行式机器、农业机器、草皮管理机器、 建筑机器、林业机器等等。在图1中示出的示例中,CAN总线构架100 具有被连接用于通过CAN总线106进行相互通信的多个不同的电子控制 单元(ECU)102和104。图1还示出了采样点验证和控制计算系统108 可以通过CAN总线106连接到ECU 102和104。各种其他项110也可以 连接到CAN总线106。

在图1中示出的示例中,计算系统108可以生成用户界面112用于用 户114进行交互。例如,用户114可以是评估ECU 102和104性能的工程 师。在一个示例中,用户114通过用户界面112直接与计算系统108交互。 在另一示例中,用户114通过用户界面112在网络116上进行交互。一个 或多个远程系统118也可以通过网络116连接到架构100。因此,网络116可以是广域网、局域网、近场通信网络、蜂窝通信网络或各种其他网络或 网络组合中的任何一种。

用户界面逻辑152说明性地生成用户界面112,并检测用户与那些用 户界面的交互。用户界面可以在用户界面机制上生成,诸如屏幕或监控器、 触敏显示屏、另一视觉输出机制、音频或触觉输出机制等。逻辑152可以 检测用户与用户界面机制上的用户可致动元件的交互。这些元素可以包括 图标、链接、由触摸手势致动的触敏按钮、点击设备等。

在图1中示出的示例中,ECU 102具有位处理执行器(或BPE)120, 并且它可以具有多种其他ECU功能122。ECU 104还具有位处理执行器(bit processing engine,BPE)124,并且它还可以具有多种其他ECU功能126。

位处理执行器120通过CAN总线106传输和接收CAN消息。CAN 消息可以被发送用于由其他ECU使用。因此,BPE 120至124中的每一个 包括用于传输、接收和采样CAN消息中的位的逻辑。

在一个示例中,采样点验证和控制计算系统108将显性脉冲注入到 CAN消息中。如果系统108在位长度(或位周期)内不对应于传输ECU 的采样点(例如,ECU 102的采样点)的位置处注入显性脉冲,则ECU 102 将忽略注入的脉冲并继续传输。然而,如果系统108在位长度内对应于 ECU 102的采样点的位置处注入脉冲,则ECU 102将看到该位具有它没有 传输的值。当ECU 102正在传输一个消息并且它看到它没有传输的位值时, 那么如果该位在它正在传输的CAN消息的仲裁字段中,则ECU 102将假 设它没有赢得仲裁以获得CAN总线106的控制,并且它将停止传输。在 另一示例中,当ECU 102看到具有它没有传输的值的位,并且该位在CAN 消息的数据字段中时,ECU 102生成CAN错误。通过在位长度内的不同 位置处注入脉冲,系统108可以响应于所注入的脉冲来监控传输ECU的 行为,并且在位长度(或位周期)内标识该ECU的采样点的位置。

因此,ECU 102和104的采样点可以通过用户114的用户界面112来 进行标识和显现。它们也可以通过网络116发送到远程系统118。系统108 还可以确定特定ECU的采样点是否处于不期望的位置(诸如太靠近位的 开始,或者太靠近位的末尾),使得接收ECU可能因为在位长度的开始和 /或末尾处发生的振铃或其他瞬变而误解释位值。

图2是更详细地示出采样点验证和控制计算系统108的一个示例的框 图。一些项类似于图1中示出的那些,并且它们类似地进行编号。图2示 出计算系统108说明性地包括一个或多个处理器130、数据存储设备132、 CAN消息开始位检测器134、隐性位检测器136、tq时钟138、通信系统 140、采样延迟时间生成器142、显性脉冲注入器144、ECU行为检测器146、采样点表征系统148、输出生成系统150、用户界面逻辑152,并且 它可以包括各种其他项154。采样延迟时间生成器142本身可以包括初始 延迟生成器156、延迟变化生成器158,并且它可以包括其他项160。ECU 行为检测器146可以包括连续传输检测器162、停止传输检测器164、CAN 错误生成检测器166,并且它可以包括其他项168。采样点表征系统148 可以包括ECU标识器169、位置标识器170、位置比较系统171、变化标 识器172、分辨率标识器174,并且它可以包括其他项176。输出生成系统 150可以包括位置输出组件178、分辨率输出组件180、配置控制输出组件 182,并且它可以包括多种其他项184。在更详细地描述采样点验证和控制 计算系统108的操作之前,将首先提供计算系统108中的一些项及其操作 的简要描述。

tq时钟说明性地生成高频时钟脉冲,该高频时钟脉冲可以用作处理器 130的定时电路或其他。它们说明性地相对于作为CAN总线106上的CAN 消息的一部分传输的位的位长度(或位周期)是高频的。因此,由tq时钟 138标识的时间量值(或者其可以通过缩放tq时钟138的输出来标识)可 以用于标识CAN消息中每个位的位长度。进一步,它们可以用于激活tseg1 和tseg2寄存器(未示出),也用于其他定时功能。这将在下面详细描述。

通信系统140说明性地允许系统108中的项彼此通信,并且允许计算 系统108通过网络116(图1中示出)通信。因此,通信系统140可以基 于其要通过其进行通信的网络116的类型而变化。

CAN消息开始位检测器134说明性地接收CAN消息,并检测CAN 消息的开始位。隐性位检测器136检测作为CAN消息的一部分传输的隐 性位。采样延迟时间生成器142在位长度内生成延迟时间,计算系统108 在其注入显性脉冲之前等待该延迟时间。初始延迟生成器156可以生成初 始延迟值,而延迟变化组件158改变延迟,如下文更详细讨论的那样,使 得计算系统108可以标识和表征传输分析中的CAN消息的传输ECU的采 样点。

在由采样延迟时间生成器142标识的延迟到所检测的隐性位中之后, 显性脉冲注入器148将显性脉冲注入到CAN总线106上。然后,ECU行 为检测器146响应于所注入的显性脉冲,检测传输ECU的行为。连续传 输检测器162检测传输ECU何时继续传输(例如,它检测传输ECU已经 忽略显性脉冲,这意味着显性脉冲没有在传输ECU的采样点处被注入)。 停止传输检测器164检测传输ECU响应于所注入的脉冲已经停止传输。 例如,如果所注入的脉冲是在传输ECU断言隐性位的CAN消息的仲裁部 分期间注入的,则传输ECU将确定它没有赢得仲裁,并将停止传输。这 由检测器164检测。CAN错误生成检测器166检测传输ECU何时生成CAN 错误。例如,当在CAN消息的仲裁周期之后(以及在数据部分期间)注 入显性脉冲时,然后传输ECU将把所注入的脉冲(如果它是在采样点处 注入的)解释为与传输ECU传输的值不同的值,并且因此传输ECU将生 成CAN错误。

采样点表征系统148随后基于传输ECU响应所注入的脉冲的行为来 表征采样点。也就是说,如果期望的话,它标识采样点的多个特征,这些 特征可以用于将传输ECU重新配置为在位长度内移动采样点。在注入显 性脉冲之前接收整个ECU标识器字段的示例中,ECU标识器169标识传 输ECU。位置标识器170标识采样点在位长度内的位置(根据时间量值或其他)。位置比较系统171将采样点的位置与期望的位置进行比较。变化 标识器172可以用于标识由CAN总线上的不同ECU使用的采样点位置方 面的变化。分辨率标识器174可以用于标识位长度或位周期的分辨率(例 如,位长度或位周期中的时间量值的数量)。

基于采样点的特性,输出生成系统170生成输出。例如,位置输出组 件178生成指示采样点在位长度内的位置的输出(其可以通过检查CAN 标识符字段与传输ECU的身份一起针对用户114显现在用户界面112上)。 分辨率输出组件180可以生成指示传输ECU正在使用的分辨率的输出, 并且配置控制输出组件182可以生成用于修改传输ECU的配置的控制输 出(例如,增加其分辨率、将其重新配置为移动采样点的位置等)。采样 点配置控制输出组件182可以生成自动地用于重新配置传输ECU的输出。 自动地是指除了启动或授权操作之外,不需要任何另外的人工参与来执行 该操作。在另一示例中,组件182可以生成由用户界面逻辑152在用户接 口112上输出的动作信号,使得用户114可以使用该信息来重新配置传输 ECU。

图3A和图3B(本文中统称为图3)示出了流程图,该流程图示出了 采样点验证和控制计算系统108在为传输ECU标识采样点并基于所表征 的采样点生成输出时的操作的一个示例。首先假设采样点验证和控制计算 系统102被耦合以从传输ECU接收CAN消息。这由图3的流程图中的框 190指示。在一个示例中,系统108可以耦合到单独的ECU,以验证和控 制其采样点。这由框192指示。在另一示例中,计算系统108可以耦合到 所连接的ECU的网络。这由框194指示。在这种场景下,计算系统108 可以从网络中多个不同的ECU中的任何一个接收CAN消息。计算系统 108也可以以其他方式连接到ECU。这由框196指示。在本示例中,将假 设ECU 102是传输ECU。

然后,CAN消息开始位检测器134检测由ECU 102通过CAN总线 106已经传输的CAN消息的开始位。检测开始位由图3的流程图中的框 198指示。

隐性位检测器136然后检测CAN消息中的隐性位。这由图3的流程 图中的框200指示。在一个示例中,隐性位检测器136检测第一隐性位的 存在,不管它在CAN消息中位于什么位置。这由框202指示。在另一示 例中,隐性位检测器136在ECU标识器字段之后在CAN消息中的位置处 检测隐性位,该标识符字段可以是仲裁字段的一部分或者是CAN消息的 分离字段。在接收ECU标识器字段后检测隐性位由图3的流程图中的框 204指示。隐性位也可以以其他方式检测,这由框206指示。

初始延迟生成器156输出初始延迟周期,该初始延迟周期指示在隐性 位的位长度内显性脉冲注入器144为了注入显性脉冲将要等待的多个时间 量值。在隐性位长度中初始延迟的等待由图3的流程图中的框208指示。 然后,在延迟之后,显性脉冲注入器144在隐性位长度的位置处注入显性 脉冲。这由图3的流程图中的框210指示。显性脉冲的宽度(或时间长度) 可以变化。

ECU行为检测器146然后响应于所注入的显性脉冲检测传输ECU 102 的行为。这由框212指示。继续传输检测器162检测传输ECU 102是否继 续传输,从而指示它已经忽略了所注入的脉冲。这由框214指示。停止传 输检测器164检测传输ECU是否已经停止传输。这由框216指示。这可 以是传输ECU 102已经在CAN消息的仲裁字段中检测到所注入的脉冲的情况。CAN错误生成检测器166检测传输ECU 102是否已经生成CAN错 误。这由框218指示。这可以是传输ECU 102在CAN消息的数据字段部 分中(或仲裁字段之后的某个部分处)检测到所注入的脉冲的情况。在一 个示例中,ECU行为检测器146也能够检测传输ECU 102的其他行为。 这由框220指示。

如果ECU行为检测器146确定传输ECU 102没有停止传输,则这个 输出的指示被提供给采样延迟时间生成器142。延迟变化生成器158然后 改变注入显性脉冲的位周期中的延迟时间,并且处理返回到框198,在框 198,计算系统108基于由延迟变化生成器158输出的变化的延迟,等待 要从传输ECU 102接收的另一CAN消息,并且等待在位周期的不同位置处注入显性脉冲。在图3的流程图中,确定传输ECU是否响应于所注入 的显性脉冲而停止传输由框222指示。使用延迟变化生成器158改变延迟 时间(当传输ECU 102已经忽略所注入的显性脉冲时)由图3的流程图中 的框224指示。

采样点表征系统然后确定采样点是否已经被充分表征。这由框226指 示。例如,可能的是系统仅需要ECU标识器169来标识被测试的特定ECU 102(其中ECU的网络正在被测试),以及需要位置标识器170来标识被 标识的ECU的采样点的位置。采样点的位置将对应于当注入显性脉冲且 传输ECU停止传输时位长内的延迟。在一个示例中,这是所完成的所有 表征——在位周期内标识用于传输ECU 102的采样点的位置。

在另一示例中,位置比较系统171还可以将采样点的位置与期望的采 样点位置(距位长度的开始和末尾足够远的位置,以避免由振铃或其他瞬 变引起的损坏)进行比较。位置比较系统171随后输出用于被测传输ECU 的采样点的位置如何与期望的采样点位置相比较的指示。

然而,采样点表征系统148可以被配置成执行采样点的甚至更进一步 的表征。作为示例,可能的是系统148将检测CAN总线上的不同ECU的 采样点的位置方面的变化,或者由传输ECU 102正使用的分辨率(以时间 量值计)。在这种情况下,延迟变化生成器158改变延迟,以更接近地标 识位长度的开始和末尾。例如,可以注入显性脉冲以标识联网ECU的最早的采样点,然后可以改变延迟,从而注入显性脉冲以标识联网ECU的 最新的采样点。

因此,如果采样点表征系统148确定需要注入更多的显性脉冲来进一 步表征采样点,则延迟变化生成器158再次改变延迟,并且处理再次返回 到框198,在框198,计算系统108等待以从传输ECU 102接收另一CAN 消息并注入另一显性脉冲。改变延迟时间以进一步表征采样点由图3的流 程图中的框228表示。

以这样的方式,采样点表征系统148中的ECU标识器169可以标识 正在被测试的ECU。位置标识器170可以在位长度内标识采样点的位置。 可以由位置比较系统171将采样点的位置与期望的采样点位置进行比较。 分辨率标识器174可以标识正在由传输ECU 102使用的分辨率。变化标识 器172可以检测或验证用于EUC的采样点的位置方面的变化。这些特性 中的任何一个或全部、和/或其他特征然后可以被提供给输出生成系统150, 用于基于所表征的采样点生成输出。基于所表征的采样点生成输出由在图 3的流程图中的框230指示。

输出生成系统150因此可以生成标识被分析的ECU 102的输出。这由 框232指示。

位置输出组件178可以在位长度内生成标识传输ECU 102的采样点的 位置的输出。它还可以生成指示在位长度内该位置与采样点的期望位置如 何进行比较的输出。这由图3的流程图中的框234指示。分辨率输出组件 180可以输出正在由传输ECU 102使用的分辨率236。

配置改变输出组件182还可以生成输出以改变传输ECU 102的配置。 它可以使用用户界面逻辑152在用户接口112上显现所建议的改变,其中 用户114可以进行观察,并进行对传输ECU 102的配置改变。在另一示例 中,组件182可以生成输出信号以自动改变传输ECU 102的配置。例如, 在用于传输ECU 102的采样点的位置将在位长度内改变的情况下,组件 182可以生成配置输出信号,该配置输出信号通过CAN总线106施加到 传输ECU 102,以便改变其配置。输出所建议的改变由图3的流程图中的 框238指示。

可能的是采样点表征系统148生成指示采样点处于正确位置(或被定 位在可接受范围内)的输出。在这种情况下,位置输出组件178可以生成 验证采样点是正确的或是可接受的输出。这由图3的流程图中的框240指 示。分辨率输出组件180可以生成指示由传输ECU102正在使用的分辨率 的输出,并且它还可以生成输出信号来建议重新配置传输ECU 102以增加 或以其他方式改变其分辨率。组件180也可以生成信号来自动重新配置传 输ECU102,以改变其分辨率。由框242指示输出用于改变正在由传输 ECU 102使用的分辨率的信号。输出生成系统150还可以输出指示在CAN 总线上的联网的ECU的采样点的位置方面的变化的变化指示符。这由框 243指示。输出生成系统150也可以以其他方式生成多种其他输出,这由 框244指示。

图4是示出在CAN消息内传输的位的一个示例的图。在图4示出的 示例中,信号在电压v0和v1之间变化,这沿y轴表示。传输两个CAN信 号,CAN_H和CAN_L。显性或隐性状态由CAN_H和CAN_L信号之间 的电压差表示。显性状态由CAN_H和CAN_L之间较大的电压差表示,而隐性状态由CAN_H和CAN_L之间的较小的电压差表示。时间量t0至 t16沿代表时间的x轴示出。t0标志隐性位的开始,该隐性位作为正在被 分析的CAN消息的一部分被传输。可以看出的是,隐性位具有t0至t16 的位长(或位周期)。在一个示例中,从t13至t14示出了期望的采样点范 围251。这表示位长t0至t16的一部分,在该部分,CAN信号已经稳定, 在下一次转换之前足够了。因此,点t13至t14处的位值不太可能被网络 上的瞬变损坏。

图4还示出了注入显性脉冲,如250所示。在图4示出的示例中,显 性脉冲250在位长度内稍微在t8到大约t9之前的位置处被注入。这意味 着采样延迟时间生成器142已经设置在位长度t0至t16中从t0到稍微在 t8之前的时间位置的时间延迟值。假设传输ECU 102的采样点范围251 对应于时间段t13至t14,则传输ECU 102将看不到显性脉冲250,因为它在用于ECU 102的采样点范围251之外。在这种情况下,ECU 102将继续 传输,从而忽略显性脉冲250。

然而,假设在对应于t13至t14的时间点处注入显性脉冲250。在这种 情况下,因为传输ECU 102正在传输隐性位,并且在其采样点检测到显性 脉冲,所以传输ECU 102停止传输。如果正在分析的位在CAN消息的仲 裁字段中,则传输ECU 102假设它丢失了仲裁,并且停止传输(或连续传 输隐性值)。如果正在分析的位在CAN消息的数据部分,则传输ECU 102停止传输(开始传输隐性值)并生成CAN错误。

图4还示出了采样点表征系统148可以如何控制计算系统108来表征 传输ECU 102的采样点,而不是简单地标识其位置。例如,如果采样点表 征系统148被配置为标识不同ECU的采样点的位置方面的变化,则它可 以控制采样延迟时间生成器142和显性脉冲注入器144在t13之前的时间 开始注入显性脉冲250。然后,它可以增加延迟,直到在整个可接受范围 t13至t14上注入显性脉冲250。相反,它可以控制采样延迟时间生成器142 将延迟增加到t14之后的位置,并且然后开始减小延迟,直到在可接受范 围251上注入显性脉冲250。

以这样的方式,变化标识器172可以控制计算系统108,使得它标识 网络上的所有ECU的最早采样点(例如,t13)和最新采样点(例如,t14)。 当然,这些仅仅是采样点表征系统148可以如何控制计算系统108来表征 传输ECU 102的采样点的示例。它也可以以其他方式进行。

因此,可以看出的是,本描述是针对用于标识由传输ECU使用的采 样点的位置的系统和方法进行的。本描述还可以用于进一步表征采样点, 诸如通过标识其变化、传输ECU的分辨率以及其他事物。

目前的讨论已经提及了处理器和服务器。在一个示例中,处理器和服 务器包括具有相关联的存储器和定时电路系统的计算机处理器,它们可能 没有单独地示出。它们是其所属的系统或设备的功能部分,并且由这些系 统中的其他组件或项激活并促进系统中的其他组件或项的功能。

应当注意的是,上述讨论已经描述了各种不同的系统、组件和/或逻辑。 应当理解的是,这样的系统、组件和/或逻辑可以由执行与那些系统、组件 和/或逻辑相关联的功能的硬件项(诸如处理器和相关联的存储器,或其他 处理组件,其中的一些将在下面描述)构成。此外,系统、组件和/或逻辑 可以由加载到存储器中并随后由处理器或服务器或其他计算组件执行的 软件组构成,如下所述。系统、组件和/或逻辑也可以由硬件、软件、固件 等的不同组合构成,下面描述了其一些示例。这些只是可以用于形成以上 描述的系统、组件和/或逻辑的不同结构的一些示例。也可以使用其他结构。

而且,已经讨论了许多用户界面显示器。它们可以采取各种不同的形 式,并且可以具有设置在其上的各种不同的用户可致动的输入机构。例如, 用户可致动的输入机制可以是文本框、复选框、图标、链接、下拉菜单、 搜索框等。它们也可以以各种不同的方式被致动。例如,可以使用点击设 备(诸如轨迹球或鼠标)来致动它们。它们可以使用硬件按钮、开关、操 纵杆或键盘、拇指开关或拇指垫等来致动。也可以使用虚拟键盘或其他虚 拟致动器来致动它们。此外,在它们被显示在其上的屏幕是触敏屏幕的情 况下,可以使用触摸手势来致动它们。而且,在显示它们的设备具有语音 识别组件的情况下,可以使用语音命令来致动它们。

还讨论了一些数据存储装置。应当注意的是,它们可以各自分成多个 数据存储装置。全部数据存储装置可以对访问它们的系统是本地的,全部 可以是远程的,或者一些可以是本地的而另一些是远程的。本文中考虑了 全部这些配置。

而且,附图示出了多个块,其中功能归属到每个块。应当注意的是, 可以使用更少的块,因此功能由更少的组件执行。而且,更多的块可以与 分布在更多组件当中的功能一起使用。

图5是图1中示出的架构100的框图,除了它与远程服务器架构500 中的元件通信。在示例中,远程服务器架构500可以提供计算、软件、数 据访问和存储服务,这些服务不需要终端用户了解递送服务的系统的物理 位置或配置。在各种示例中,远程服务器可以使用适当的协议在广域网(诸 如互联网)上递送服务。例如,远程服务器可以通过广域网递送应用,并 且可以通过网络浏览器或任何其他计算组件访问它们。图1中示出的软件 或组件以及相对应的数据可以被存储在远程位置处的服务器上。远程服务 器环境中的计算资源可以整合在远程数据中心位置处,或者他们也可以被 分散。远程服务器基础设施可以通过共享数据中心递送服务,即使它们对 用户来说作为单一访问点出现。因此,本文描述的组件和功能可以使用远 程服务器架构从远程位置处的远程服务器提供。替代性地,它们可以从常 规服务器提供,或者它们可以直接安装在客户端设备上,或者以其他方式 安装。

在图5中示出的示例中,一些项类似于图1和图2中示出的项目,并 且它们类似地进行编号。图5具体而言示出了采样点表征系统148或来自 架构100的其他项可以位于远程服务器位置502处。因此,系统108通过 远程服务器位置502访问那些系统。

图5还描绘了远程服务器架构的另一示例。图5示出了还可以设想, 图1和图2的一些元件被布置在远程服务器位置502处,而其他元件没有。 作为示例,数据存储装置132或远程系统118可以设置在与位置502分离 的位置处,并通过位置502处的远程服务器来访问。无论它们位于何处, 它们都可以由架构100通过网络(广域网或局域网)直接访问,它们可以 由服务器托管在远程站点处,或者它们可以作为服务器提供,或者由驻留 在远程位置的连接服务器访问。而且,数据可以被存储在基本上任何位置, 并由感兴趣的各方间歇地访问或转发给感兴趣的各方。本文中考虑了全部 这些架构。

还应当注意的是,图1和图2的元件或它们的各部分可以设置在各种 不同的设备上。这些设备中的一些包括服务器、台式计算机、膝上型计算 机、平板计算机或其他移动设备,诸如掌上电脑、手机、智能手机、多媒 体播放器、个人数字助理等。

图6是计算环境的示例,其中可以部署图1和图2的元件或它们中的 一部分(例如)。参考图6,用于实施一些实施例的示例系统包括呈计算机 810形式的计算设备,该计算设备被编程为如本文所述进行操作。计算机 810的组件可以包括但不限于处理单元820(其可以包括(多个)处理器 130)、系统存储器830和将包括系统存储器在内的各种系统组件耦合到处 理单元820的系统总线821。系统总线821可以是几种类型的总线结构中 的任何一种,包括存储器总线或存储器控制器、外围总线以及使用各种总 线架构中的任何一种的局部总线。参照图1和图2描述的存储器和程序可 以部署在图6的相对应的部分中。

计算机810通常包括各种计算机可读介质。计算机可读介质可以是可 以由计算机810访问的任何可用介质,并且包括易失性和非易失性介质、 可移动和不可移动介质。作为示例而非限制,计算机可读介质可以包括计 算机存储介质和通信介质。计算机存储介质不同于调制数据信号或载波, 也不包括调制数据信号或载波。它包括硬件存储介质,包括以任何方法或 技术实施的易失性和非易失性、可移动和不可移动介质,用于存储诸如计 算机可读指令、数据结构、程序模块或其他数据的信息。计算机存储介质 包括但不限于RAM、ROM、EEPROM、闪存或其他存储技术、CD-ROM、 数字多功能盘(digital versatile disk,DVD)或其他光盘存储装置、盒式磁 带、磁带、磁盘存储装置或其他磁存储设备,或可以用于存储所期望的信 息并可以由计算机810访问的任何其他介质。通信介质可以包含计算机可读指令、数据结构、程序模块或传输机制中的其他数据,并且包括任何信 息递送介质。术语“经调制的数据信号”表示信号的一个或多个特征被设 置或改变从而对信号中的信息进行编码。

系统存储器830包括呈易失性和/或非易失性存储器形式的计算机存 储介质,诸如只读存储器(read only memory,ROM)831和随机存取存储 器(random access memory,RAM)832。基本输入/输出系统833(basic input/output system,BIOS)(包含诸如在启动期间帮助在计算机810内的元 件之间传递信息的基本例程)通常存储在ROM 831中。RAM 832通常包 含可由处理单元820立即访问和/或当前正在该处理单元上操作的数据和/ 或程序模块。作为示例而非限制,图6示出了操作系统834、应用程序835、 其他程序模块836和程序数据837。

计算机810还可以包括其他可移动/不可移动的、易失性/非易失性计 算机存储介质。仅作为示例,图6示出了从不可移动、非易失性磁介质读 取或向其写入的硬盘驱动器841、光盘驱动器855和非易失性光盘856。 硬盘驱动器841通常通过诸如接口840的不可移动存储器接口连接到系统 总线821,并且光盘驱动器855通常通过诸如接口850的可移动存储器接 口连接到系统总线821。

替代性地或此外,本文描述的功能可以至少部分地由一个或多个硬件 逻辑组件来执行。例如,但不限于,可以使用的说明性类型的硬件逻辑组 件包括现场可编程门阵列(Field-programmable Gate Array,FPGA)、专用 集成电路(例如ASIC)、专用标准产品(例如ASSP)、片上系统 (System-on-a-chip system,SOC)、复杂可编程逻辑器件(ComplexProgrammable Logic Device,CPLD)等。

上文讨论并在图6中示出的驱动器及其相关联的计算机存储介质为计 算机810提供计算机可读指令、数据结构、程序模块和其他数据的存储。 例如,在图6中,硬盘驱动器841被示为存储操作系统844、应用程序845、 其他程序模块846和程序数据847。注意,这些组件可以与操作系统834、 应用程序835、其他程序模块836和程序数据837相同或不同。

用户可以通过输入设备(诸如键盘862、麦克风863和指示设备861 (诸如鼠标、跟踪球或触摸板))将命令和信息输入到计算机810中。其 他输入设备(未示出)可以包括操纵杆、游戏手柄、碟型卫星天线、扫描 仪等。这些和其他输入设备通常通过耦合到系统总线的用户输入接口860 连接到处理单元820,但是也可以通过其他接口和总线结构连接。视觉显示器891或其他类型的显示设备也通过诸如视频接口890的接口连接到系 统总线821。除了监控器之外,计算机还可以包括可以通过输出外围接口 895连接的其他外围输出设备,诸如扬声器897和打印机896。

计算机810使用到一个或多个远程计算机(诸如远程计算机880)的 逻辑连接(诸如控制器局域网-CAN、局域网-LAN或广域网WAN)在 联网环境中操作。

当在LAN联网环境中使用时,计算机810通过网络接口或适配器870 连接到LAN871。当在WAN联网环境中使用时,计算机810通常包括调 制解调器872或用于通过WAN 873(诸如因特网)建立通信的其他装置。 在联网环境中,程序模块可以存储在远程存储器存储设备中。图6例如示 出了远程应用程序885可以驻留在远程计算机880上。

还应当注意的是,本文描述的不同实施例可以以不同的方式组合。也 就是说,一个或多个实施例的各部分可以与一个或多个其他实施例的各部 分组合。所有这些在本文中被考虑。

示例1是一种计算机实施的方法,包括:

通过控制器局域网(CAN)总线从传输电子控制单元(ECU)接收 CAN消息;

在CAN消息中检测具有隐性位长度的隐性位;

在位长度内,在延迟时间后将显性脉冲注入到CAN总线上;

在注入显性脉冲之后检测传输ECU的行为;

基于延迟时间和传输ECU的所检测到的行为,表征传输ECU的采样 点,以获得采样点特征;以及

基于采样点特征生成控制信号。

示例2是任何或全部前述示例的计算机实施的方法,其中,检测传输 ECU的行为包括:

确定传输ECU是否响应于显性脉冲的注入而停止传输CAN消息。

示例3是任何或全部前述示例的计算机实施的方法,其中,表征传输 ECU的采样点包括:

如果传输ECU响应于显性脉冲的注入而停止传输CAN消息,则基于 隐性位长度内的延迟时间,在隐性位长度内标识传输ECU的采样点的位 置。

示例4是任何或全部前述示例的计算机实施的方法,其中,表征传输 ECU的采样点包括:

如果传输ECU没有响应于显性脉冲的注入而停止传输CAN消息,则:

将延迟时间改变为不同的延迟时间;

从传输ECU接收不同的CAN消息;

在不同的CAN消息中检测具有隐性位长度的隐性位;

在隐性位长度内,在不同的延迟时间之后,将显性脉冲注入到CAN 总线上;

在注入显性脉冲之后检测传输ECU的行为;以及

基于不同的延迟时间和传输ECU的所检测到的行为,表征传输ECU 的采样点,以获得采样点特征。

示例5是任何或全部前述示例的计算机实施的方法,其中,表征传输ECU的采样点包括:

如果传输ECU没有响应于显性脉冲的注入而停止传输CAN消息,则:

重复以下步骤:改变延迟时间以获得不同的延迟时间;检测不同的 CAN消息中的隐性位;以及在不同的延迟时间之后在隐性位期间注入显 性脉冲,直到传输ECU响应于显性脉冲的注入而停止传输CAN消息;以 及

基于当传输ECU响应于显性脉冲的注入而停止传输CAN消息时的延 迟时间的值,在隐性位长度中标识用于传输ECU的采样点的位置。

示例6是任何或全部前述示例的计算机实施的方法,其中,CAN消 息包括标识传输ECU的ECU标识符部分和数据部分,并且其中检测隐性 位包括:

检测在CAN消息的ECU标识符部分后的隐性位。

示例7是任何或全部前述示例的计算机实施的方法,其中,传输ECU 是在包括另一ECU的网络上,并且其中表征传输ECU的采样点包括:

基于CAN消息的ECU标识符部分标识传输ECU。

示例8是任何或全部前述示例的计算机实施的方法,其中,检测传输 ECU的行为包括:

检测传输ECU响应于显性脉冲的注入而生成CAN错误。

示例9是任何或全部前述示例的计算机实施的方法,其中,生成控制 信号包括:

生成界面控制信号以在用户界面上显现用于传输ECU的采样点特征。

示例10是任何或全部前述示例的计算机实施的方法,其中,生成控 制信号包括:

生成控制信号以自动重新配置传输ECU,从而将传输ECU的采样点 移动到隐性位长度中的不同位置。

示例11是任何或全部前述示例的计算机实施的方法,其中,注入显 性脉冲包括将显性脉冲注入来自传输ECU的多个不同的CAN消息中的隐 性位,每个显性脉冲以不同的延迟时间被注入,并且其中表征采样点包括:

在隐性位长度中标识采样点的位置,以及标识用户传输ECU的采样 点的位置相对于网络上另一ECU的采样点的位置的变化。

示例12是一种计算系统,包括:

隐性位检测器,该隐性位检测器检测由传输电子控制单元(ECU)通 过CAN总线传输的CAN消息中具有隐性位长度的隐性位;

显性脉冲注入器,该显性脉冲注入器在隐性位长度内、在延迟时间后 将显性脉冲注入到CAN总线上;

ECU行为检测器,该ECU行为检测器检测注入显性脉冲之后传输 ECU的行为;

采样点表征系统,该采样点表征系统基于延迟时间和传输ECU的所 检测到的行为,表征传输ECU的采样点,以获得采样点特征;以及

输出生成系统,该输出生成系统基于采样点特征生成控制信号。

示例13是任何或全部前述示例的计算系统,其中,ECU行为检测器 包括:

停止传输检测器,该停止传输检测器检测传输ECU是否响应于显性 脉冲的注入而停止传输CAN消息。

示例14是任何或全部前述示例的计算系统,其中,采样点表征系统 包括:

位置标识器,该位置标识器被配置为:如果传输ECU响应于显性脉 冲的注入而停止传输CAN消息,则基于隐性位长度内的延迟时间,在隐 性位长度内标识传输ECU的采样点的位置。

示例15是任何或全部前述示例的计算系统,其中,CAN消息包括标 识传输ECU的ECU标识符部分和数据部分,并且其中,隐性位检测器被 配置为检测CAN消息的ECU标识符部分之后的隐性位。

示例16是任何或全部前述示例的计算系统,其中,传输ECU是在包 括另一ECU的网络上,并且其中,采样点表征系统包括:

ECU标识器,该ECU标识器基于CAN消息的ECU标识符部分标识 传输ECU。

示例17是任何或全部前述示例的计算系统,其中,ECU行为检测器 包括:

CAN错误产生检测器,该CAN错误产生检测器检测传输ECU响应 于显性脉冲的注入而生成CAN错误。

示例18是任何或全部前述示例的计算系统,其中,输出生成系统包 括:

配置改变输出部件,该配置改变输出部件生成控制信号以自动重新配 置传输ECU,从而将传输ECU的采样点移动到隐性位长度中的不同位置。

示例19是一种计算机实施的方法,包括:

通过控制器局域网(CAN)总线从传输电子控制单元(ECU)接收 CAN消息;

在CAN消息中检测具有隐性位长度的隐性位;

在隐性位长度内,在延迟时间后将显性脉冲注入到CAN总线上;

确定传输ECU是否响应于显性脉冲的注入而停止传输CAN消息;

如果传输ECU响应于显性脉冲的注入而停止传输CAN消息,则基于 隐性位长度内的延迟时间、在隐性位长度内标识传输ECU的采样点的位 置;以及

基于采样点的位置生成控制信号。

示例20是任何或全部前述示例的计算机实施的方法,并且还包括如 果传输ECU没有响应于显性脉冲的注入而停止传输CAN消息,则:

重复以下步骤:改变延迟时间以获得不同的延迟时间;检测不同的 CAN消息中的隐性位;并且在不同的延迟时间之后在隐性位期间注入显 性脉冲,直到传输ECU响应于显性脉冲的注入而停止传输CAN消息;以 及

基于当传输ECU响应于显性脉冲的注入而停止传输CAN消息时的延 迟时间的值,在隐性位长度中标识用于传输ECU的采样点的位置。

尽管已经以特定于结构特征和/或方法动作的语言描述了主题,但是应 当理解的是,在所附权利要求中定义的主题不必限于上述特定特征或动作。 相反,上面描述的具体特征和动作是作为实施权利要求的示例形式而公开 的。

23页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:可提高通信可靠度的异步串行总线动态配置方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!