如何使用CANoe和CANalyzer中的Diagnostics/ISO TP

目录

1 Diagnostics/ISO TP

1.1 Diagnostic Description(CDD,ODX/PDX,MDX)

1.1.1 Diagnostic Description诊断描述

1.1.2 Available Options可用选项

1.1.3 Usage of the Diagnostic Description诊断描述的使用

1.2 Transport Layer

1.2.1 Parameters from diagnostic description for transport and diagnostic layer来自传输层和诊断层的诊断描述的参数

1.2.2 Addressing寻址

1.2.3 Additional ISO TP protocol parameters附加ISO TP协议参数

1.2.4 Mixing of CAN 2.0 and FD frames(CAN 2.0和FD帧的混合)

1.3 Diagnostic Layer

1.3.1 Parameters from diagnostic description for transport and diagnostic layer来自传输层和诊断层的诊断描述的参数

1.3.2 'Tester Present' request“测试人员在场”请求

1.3.3 Timing计时

1.3.4 Security Access安全访问

1.3.5 Diagnostic Console诊断控制台

1.4 Additional Descriptions

1.5 举例:“自定义诊断ID”设置

1.5.1 经典CAN标准帧

1.5.2 经典CAN扩展帧

1.5.3 CANFD标准帧(DLC = 8)

1.5.4 CANFD扩展帧(DLC = 8)

1.5.5 CANFD标准帧(DLC = 64)

1.5.6 CANFD扩展帧(DLC = 64)


在使用CANoe/CANalyzer时,常用菜单栏Diagnostics下的“Diagnostic Console”选项,将CANoe/CANalyzer充当一个诊断仪(主机),来模拟UDS/OBD诊断服务的请求,以及ECU(从机)诊断响应的可视化。

下面我将详细介绍菜单栏Diagnostics下的各个选项:Diagnostics/ISO TPDiagnostic ParametersDiagnostic ConsoleFault memorySession Control

1 Diagnostics/ISO TP

依次选择“Diagnostics”—>“Diagnostics/ISO TP”,弹出“Diagnostics/ISO TP Configuration”对话框,如下图。

此子对话框分为三个区域:

  • Diagnostic Descriptions

在这里,您可以管理diagnostic description,即添加、删除、打开……。

  • On-board Diagnostics(OBD-II)

通过此列表,您可以为OBD选择以下设置:

  1. No OBD-II functionality
  2. Use 11 bit(Normal) addressing
  3. Use 29 bit(NormalFixed) addressing
  • Gateway Settings

Enable diagnostics via common DoIP/HSFZ gateway for this network复选框。

加载诊断描述文件CDD/ODX/PDX

通过“Add Diagnostic Descriptions列表”或“CAN Networks树视图中第2级元素(CAN1)的上下文菜单”,您可以添加不同的diagnostic description

  • Diagnostic Description(CDD,ODX/PDX,MDX)
  • Basic Diagnostic Description(UDS)
  • Basic Diagnostic Description(KWP)
  • Standard Diagnostic Description(CDD)

 这里以“Add Diagnostic Description(CDD,ODX/PDX,MDX)”为例,加载合适的诊断描述文件CDD/ODX/PDX。

1.1 Diagnostic Description(CDD,ODX/PDX,MDX)

Diagnostic Description(CDD,ODX/PDX,MDX)中,我们选择一个诊断描述文件CDD:Test.cdd文件。在CAN1下,会出现一些分支:Transport Layer,Diagnostic Layer和Additional Descriptions,下面依次介绍,见下图。

 您可以在此处为选定的diagnostic description(CDD,ODX/PDX,MDX)配置以下设置:

1.1.1 Diagnostic Description诊断描述

ECU Qualifier

此处显示了ECU Qualifier,CANoe将使用该Qualifier来引用当前的diagnostic description。CANoe配置中配置的每个diagnostic descriptionQualifier必须是唯一的。

添加描述文件时,默认情况下将使用描述中定义的ECU Qualifier。然而,也可以在此处手动修改此QualifierQualifier名称只能包含字母A…Za…z、数字和下划线_

此外,确保为所有ECU分配唯一的Qualifier

Note

特别是这对CAPL程序有影响。

当您配置目标ECUDiagSetTargetDiagInitECUSimulation)时,您必须指定正确的Qualifier

它也是Diagnostic Console, Diagnostic Session Control和Fault Memory窗口,以及Symbol Explorer.中使用的名称。

File

当前指定的diagnostic description的路径。通过带有三个点的按钮,您可以更改diagnostic description

1.1.2 Available Options可用选项

Interface

诊断描述文件中的接口定义了访问ECU的通信参数。通常,并非所有访问类型都在定义文件中定义,例如对于某些总线系统,它们可能会丢失。

因此,可以在所有支持的总线系统和诊断访问类型(例如DoIP/HSFZ、K-Line)上使用诊断描述文件。

在基本诊断ECU的情况下,还提供了支持总线系统的默认接口。

Variant

如果诊断描述文件中包含多个变体,则需要在测量开始前指定默认变体该变体确定哪些服务和参数可用于诊断和通信。

Language

诊断描述文件可以包含多种语言版本,必须选择其中一种。请注意,某些diagnostic description仅支持一种语言。

Target group

您可以定义所谓的“target groups”(例如"Developer","Supplier","Workshop")。diagnostic description的每个实例和服务都可以指定一个或多个“target groups”。通过这样做,您可以提供量身定制的信息。

  1. 当您选择其中一个“target groups”时,Diagnostic Console将仅显示已为特定“target groups”激活的服务。
  2. 如果没有选择“target groups”,将显示所有服务。

1.1.3 Usage of the Diagnostic Description诊断描述的使用

激活适合您的用例的选项,即指定您要对diagnostic description执行的操作:

  • 将diagnostic interpretation添加到trace。
  • 根据此diagnostic description与ECU通信。
  • 模拟ECU的诊断行为。

对于第一个用例,即使用CANoe的diagnostic observer功能,只需在“Diagnostics/ISO TP Configuration”对话框中添加诊断配置即可,无需在此处激活任何其他复选框。将不提供诊断窗口(Diagnostic Console,Fault Memory or Session Control)。(此用例以前仅提供interpretation only mode)。

对于第二个用例,即配置内置诊断通道的测试仪端,您需要激活Diagnostic tester复选框并为其选择所需的寻址类型。

这将在CANoe中提供Diagnostic Console,Fault Memory和Session Control窗口。在CANoe中,此diagnostic description也可用于Test Modules或Test Units。可以使用以下寻址类型:

  • Physical Requests

这是与ECU进行诊断通信的典型方式

对于总线上的真实ECU,此描述中的诊断请求在当前选择的网络上传输和接收。

  • Functional Group Requests

只有诊断控制台和故障记忆窗口可用。向组发送功能请求

diagnostic description用于向网络上的所有ECU发送功能请求。diagnostic description中定义的功能ID(除非手动修改)用于此目的。

Note

根据diagnostic description是否包含有关fault memory modelsession model的信息,Fault MemorySession Control窗口可能不可用。

对于第三个用例,即配置built-in diagnostic channel的仿真端,您需要激活Simulation by复选框并为其选择所需的仿真节点。这将激活CANoe中的简化诊断模拟,即CANoe将以肯定响应响应对模拟ECU的诊断请求,响应中的每个参数值都设置为0。您可以通过在CANoe中添加diagRequest处理程序/事件过程来修改模拟ECU的响应行为。

1.2 Transport Layer

1.2.1 Parameters from diagnostic description for transport and diagnostic layer来自传输层和诊断层的诊断描述的参数

Override manually

如果diagnostic description具有与网络匹配的接口,则使用来自diagnostic description接口的默认参数。在激活Override manually复选框后,您可以手动调整下文这些参数。

对于basic diagnostic descriptions,可以随时覆盖参数。

Note:

请注意,在以下情况下您无法更改此设置:

  1. 选择使用非ISO TP传输协议的接口。
  2. 描述加载在非CAN网络上。

Reset to Defaults

通过[Reset to defaults]按钮,您可以将手动更改(见上文)重新设置为所用diagnostic description的参数。

1.2.2 Addressing寻址

提供的参数列在表中。您可以通过复选框更改CAN ID并激活或禁用29位标识符。

对于测试仪和控制单元(ECU)之间的通信,使用了几个“传输通道”:

  • Physical requests

测试仪将这些信息准确地发送到一个ECU。

  • Physical responses

对物理请求的响应。

  • Functional requests

测试仪将这些发送到一组控制单元,其中目标地址指定该组(例如“全部”)。通常,控制单元要么物理响应,要么根本不响应。

  • Multiple responses(OEM specific)

一些制造商允许ECU向请求发送额外的“UUDT”响应(未确认的未分段数据传输),例如每隔一秒。

根据制造商和类别,这些传输通道使用各种地址模式。CANoe现在允许更改这些模式的参数。

Parameter Overview

对于每个方向(到/从ECU),都有一行带有地址参数。对于每个transport channel,显示使用的地址模式,并释放与该模式相关的输入字段。您将在OSEK TP(CAN传输协议)或ISO 15765-2中找到有关地址模式的更多信息。

Parameter

Description

Modes

CAN ID

CAN报文标识符

Normal,Mixed-11 Bit

29 bit identifier

切换到扩展ID

Normal,Mixed-11 Bit

ECU address

ECU编号(1字节)

Extended,NormalFixed,Mixed-29 Bit

Tester address

测试仪编号(1字节)

Extended,NormalFixed,Mixed-29 Bit

Basic address

与ECU地址一起生成CAN ID

Extended

Tx priority

CAN ID的附加仲裁优先级

NormalFixed,Mixed-29 Bit

Address extension

附加地址信息(1个字节)

Mixed

1.2.3 Additional ISO TP protocol parameters附加ISO TP协议参数

此外,还可以在此处设置ISO TP的协议参数。这与CAPL程序和通过控制台访问ECU相关。

  • STmin

这指定了连续帧(发送器的CAN消息)之间的最小间隔(以毫秒为单位)。

  • Block size块大小

在如此多的连续帧之后,发送器等待来自接收器的流控制帧。0将其关闭。

  • FC delay

测试仪将延迟发送这么多毫秒的流量控制帧。延迟帧可能是必要的,以确保ECU准备好接收它。

  • Max.length

传输应该有这个以字节为单位的最大长度。根据ISO 15765-2(2015),最大值可以增加到4 GiB,而CANoe目前最高支持16 MiB。必须在此处给出> 4095的值才能激活新的标头格式。当接收到更大长度的传输时,它会因溢出错误而中止。

  • 如果激活了CAN FD模式(Hardware ribbon tab|Network Hardware:),以下两个功能才可用:

1.DLC

使用此列表,您可以决定,诊断传输协议是仅使用CAN 2.0消息(CAN 2.0)还是使用具有相应最大长度的CAN FD消息(FD <= 8FD = 64。只要您选择CAN FD条目,就会出现Enable BRS复选框。

2.Enable BRS

使用此复选框可激活CAN FD比特率开关,即传输协议在CAN FD消息的数据段使用更高的比特率

1.2.4 Mixing of CAN 2.0 and FD frames(CAN 2.0和FD帧的混合)

对于某些场景,build-in diagnostic tester应能够处理具有相同通信通道的CAN 2.0和FD帧,即无需为CAN 2.0和CAN FD配置2个diagnostic description,只需一个描述即可。测试仪可能必须适应ECU接收的帧类型:

  • ignore

默认。测试仪会忽略与配置类型不匹配的CAN帧。

  • accept

测试仪将接受并处理其他类型的帧,但继续使用配置的类型发送。

  • adapt

测试器不仅会接受和处理其他类型的帧,还会继续使用这种类型发送。

1.3 Diagnostic Layer

您可以在此处设置控制台的行为并为CAPL程序指定参数。这些参数可以在CAPL测量期间重置。

1.3.1 Parameters from diagnostic description for transport and diagnostic layer来自传输层和诊断层的诊断描述的参数

Override manually

如果diagnostic description具有与网络匹配的接口,则使用来自diagnostic description接口的默认参数。在激活Override manually复选框后,您可以手动调整下文这些参数。

Note

请注意,在以下情况下您无法更改此设置:

  • 选择使用非ISO TP传输协议的接口。
  • 描述加载在非CAN网络上。

Reset to Defaults

通过[Reset to defaults]按钮,您可以将手动更改(见上文)重新设置为所用diagnostic description的参数。

1.3.2 'Tester Present' request“测试人员在场”请求

许多ECU必须接收这样的请求才能保持在(扩展的)诊断会话中。使用此对话框设置可以更改,它控制为Diagnostic Console、Fault Memory窗口和此类diagnostic testers发送测试仪当前服务,这些诊断仪不使用CAPL回调接口进行诊断。

Note

如果在测试仪中使用CAPL回调接口进行诊断,则在测试仪中也必须注意请求内容的定义和循环发送(例如,通过使用计时器)。在这种情况下,不会使用对话框的设置。

  • Send tester present

在这里,您决定是否应该将存在的测试仪循环发送到ECU。如果选中,则仅在开始测量后并且通过发送一个诊断请求与ECU建立诊断会话后,才会发送Tester Present。停止发送周期性的测试仪呈现请求

  • 切换诊断控制台或故障内存窗口中的(测试仪出现开/关)按钮,或
  • 在CAPL测试仪中调用DiagStopTesterPresent()函数。

Note

  • 测试仪在场在测量开始时总是关闭。
  • 如果Send tester present处于活动状态(诊断配置|诊断层),它将在发送请求后立即打开。
  • 启动COM客户端时,在场的测试仪既不会打开也不会关闭(保持之前的状态)。
  • 当COM客户端结束时,当前的测试仪将关闭。之后,即使发送测试仪处于活动状态并且正在发送请求,测试仪仍然处于关闭状态。

  • S3 client time[ms]

诊断客户端(=tester)在发送测试仪存在请求之前应等待的时间。

  • S3 server time[ms]

诊断服务器中用于离开非默认会话的超时。

Note

此时间必须大于S3 Client Time。如果输入的值小于或等于,则使用1.25 * S3 Client Time。

  • From description

从诊断描述文件中定义的Tester Present服务中,选择要发送的服务。如果不应该在诊断描述文件中定义Tester Present服务,则始终可以选择默认请求。

  • Manually defined

可以通过手动输入字节流(例如 0x3e 0x03 0x04)来定义Tester Present服务。

1.3.3 Timing计时

这些参数确定测试仪何时指示超时:

  • P2 timeout

发送请求后,ECU必须在这段时间内(以毫秒为单位)做出反应,即在测试仪期望对请求作出响应的情况下发送肯定或否定消息。

  • P2 extended

如果ECU发送带有错误代码0x78Response Pending”的否定响应,则测试仪再次等待响应,从而使用此时间(以毫秒为单位)。

如果使用IP诊断(DoIP),则使用P6而不是P2参数:

  • P6 Timeout

发送请求后,必须在此时间内收到来自车辆的响应。

  • P6 Extended

如果车辆发送带有错误代码0x78“响应未决”的否定响应,则测试仪此时将等待另一个响应。

1.3.4 Security Access安全访问

Seed & Key DLL

如果您正在使用要解锁控制单元执行的诊断服务,则必须在此处指定一个DLL:

1.3.5 Diagnostic Console诊断控制台

防止常量参数被无意覆盖

如果选中,Diagnostic Console将不允许更改定义为常量的请求参数的值。

如果必须在此处更改此类参数,请取消激活该复选框。

使用[Reset to defaults],您可以将所有设置重置为diagnostic description中的值。

1.4 Additional Descriptions

 Additional Diagnostic Description是用于扩展所谓的Master Description的诊断定义。这可用于将诊断服务添加到不能或不应更改的diagnostic description中,例如因为它是由OEM提供的。

Additional Diagnostic Descriptions共享Master Description的通信通道,因此不需要额外的参数化。

Additional Diagnostic Descriptions可用于诊断窗口(Diagnostic Console,Fault Memory Window和Diagnostic Session Control)以及CAPL中,并用于跟踪窗口中的Diagnostics Observer解释诊断消息。

1.5 举例:“自定义诊断ID”设置

1.5.1 经典CAN标准帧

1.5.2 经典CAN扩展帧

1.5.3 CANFD标准帧(DLC = 8)

1.5.4 CANFD扩展帧(DLC = 8)

1.5.5 CANFD标准帧(DLC = 64)

1.5.6 CANFD扩展帧(DLC = 64)

获取更多“汽车电子资讯”和“工具链使用”,

请关注“汽车电子助手”(CSDN微信公众号同名),做您的好助手。

  • 23
    点赞
  • 135
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汽车电子助手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值