AUTOSAR_PRS_LogAndTraceProtocol文档翻译
1简介和概述
本协议规范规定了AUTOSAR协议Dlt的格式、消息序列和语义。
该协议允许将诊断、日志和跟踪信息发送到通信总线上。
因此,Dlt模块从应用程序或其他软件模块收集调试信息,向调试信息添加元数据,并将其发送到通信总线。
此外,Dlt协议允许根据严重级别过滤调试信息,例如“致命”、“错误”或“信息”。此筛选器可以在运行时通过外部日志记录工具发送的Dlt控制消息进行修改。
还可以直接向应用程序通知新的过滤器级别,以仅生成调试信息,特别是针对该选定的严重性级别,在运行时将消息分配给另一个通信总线,或者将修改后的Dlt配置存储为非易失性配置(如果硬件支持的话)。

1.1目的
Dlt协议可在ECU开发阶段用于记录调试信息,并将其外部存储在记录设备上。
1.2协议的适用性
它旨在在ECU的开发阶段使用Dlt协议。假设使用外部日志记录和跟踪工具来存储ECU生成的调试信息。
如果需要,还需要此日志记录和跟踪工具来在运行时修改过滤器设置,或者持久存储ECU的当前Dlt配置。
1.2.1安全和安保注意事项
强烈建议在开发阶段结束后停用Dlt功能。特别是,在任何情况下都应禁用注入功能!
Dlt功能的激活和停用应使用安全机制进行。
1.2.2约束和假设
Dlt协议设计为“无连接”工作。这意味着使用Dlt协议不需要外部通信或其他刺激。
尽管不需要连接外部日志记录工具,但有一个可以存储和解释接收到的调试消息的日志记录工具是有意义的。该设备还可用于生成Dlt控制消息以影响ECU,如修改过滤器设置(即更改调试信息的严重性级别)。
1.2.3限制
应考虑通信总线的可用(免费)带宽,以免对常规通信产生太大影响。
1.4对应用层的依赖
为了传输Dlt消息,应用程序需要知道是使用详细模式还是非详细模式发送Dlt消息。
此外,应用程序可以提供获得关于过滤器设置更改的通知的可能性。为此,应用程序应在Dlt模块中进行自身注册。
2用例
本章描述了可以通过实现Dlt协议的ECU的环境来实现的用例。
尽管Dlt协议与总线无关,但建议使用具有更高带宽的通信总线,如以太网。尽管如此,它并不局限于此。
2.1.1使用Dlt的用例通用日志记录

(1) 应用程序/SW-C正在向Dlt模块提供日志消息。
(2) 日志消息由实现Dlt协议的Dlt模块过滤或创建Dlt消息。(取决于日志级别。)
(3)Dlt模块将Dlt消息发送到通信总线。
(4) 外部客户端接收并存储Dlt消息。
2.1.3 Dlt的用例运行时配置

(1) 外部客户端设置日志和跟踪级别,并将更改发送到实现Dlt协议的Dlt模块。
(2) 通过Dlt控制消息,将改变发送到实现Dlt协议的Dlt模块。
(3) Dlt模块相应地调整其过滤器设置的配置。
(4) Dlt模块向应用程序通知新的日志级别。
2.1.4用例非详细模式
为了减少总线上的流量,可以避免在通信总线上发送有关变量的元数据。
相反,一个外部文件保存了应如何解释有效载荷的信息。外部Dlt客户端将这些元数据与接收到的参数值合并并存储。

(1) 应用程序/SW-C正在向Dlt模块提供非详细的日志记录数据。
(2) Dlt模块过滤并生成Dlt消息。
(3) Dlt模块向通信总线发送Dlt消息。
(4) 外部客户端从外部文件获取元信息。
(5) 合并后的信息由外部客户端存储。
5协议规范
5.1消息格式
消息格式对于调试数据和控制信息,使用相同的DLT消息格式。
它由一个标准报头、一个可选的扩展报头和一个有效载荷段组成
5.1.1 Standard Header

[PRS_Dlt_00458] ⌈The Dlt Standard Header shall consist of the following fields in the
following order:
Byte 0: HTYP (Header Type)
Byte 1: MCNT (Message Counter)
Byte 2-3: LEN (Length)
Byte 4-7: ECU (ECU ID)
Byte 8-11: SEID (Session ID)
Byte 12-15: TMSP (Timestamp)
⌋ (RS_LT_00002)
5.1.1.1 Header Type
5.1.1.1报头类型DLT报头类型(HTYP)包含有关DLT消息的一般信息。
[PRS_DLT_00094]⌈报头类型(HTYP)应包含以下信息并按以下方式编码:
Bit 0: UEH (Use Extended Header)
Bit 1: MSBF (Most Significant Byte First)
Bit 2: WEID (With ECU ID)
Bit 3: WSID (With Session ID)
Bit 4: WTMS (With Timestamp)
Bit 5-7: VERS (Version Number)
⌋ (RS_LT_00002)

[PRS_Dlt_00600] ⌈The Header Type (HTYP) shall be the first byte of any Dlt
message. ⌋ (RS_LT_00002)
[PRS_Dlt_00601] ⌈The size of the Header Type (HTYP) shall be 1 byte. ⌋
(RS_LT_00002)
[PRS_Dlt_00602] ⌈If the UEH bit is set to ‘0’, the extended header is not used. ⌋
(RS_LT_00002)
[PRS_Dlt_00603] ⌈If the UEH bit is set to ‘1’, the extended header is used. ⌋
(RS_LT_00002)
Note: If the verbose mode is needed, the UEH bit has to be set to 1.
[PRS_Dlt_00604] ⌈If the MSBF bit is set to ‘0’, the payload data is encoded in little
endian format. ⌋ (RS_LT_00002, RS_LT_00016)
[PRS_Dlt_00605] ⌈If the MSBF bit is set to ‘1’, the payload data is encoded in big
endian format. ⌋ (RS_LT_00002, RS_LT_00016)
[PRS_Dlt_00606] ⌈If the WEID bit is set to ‘0’, the ECU ID (ECU) field is not
contained in the Standard Header. ⌋ (RS_LT_00002, RS_LT_00022)
[PRS_Dlt_00607] ⌈If the WEID bit is set to ‘1’, the ECU ID (ECU) field is contained in
the Standard Header. ⌋ (RS_LT_00002, RS_LT_00022)
[PRS_Dlt_00608] ⌈If the WSID bit is set to ‘0’, the Session ID (SEID) field is not
contained in the Standard Header. ⌋ (RS_LT_00002)
5.1.1.2消息计数器
消息计数器对传输到选定日志通道的DLT消息进行计数。
每个日志通道都需要维护自己的消息计数器。
在接收方,可以评估消息计数器值,以识别丢失的消息达到某个级别。
[PRS_DLT_00319]⌈消息计数器是一个无符号8位(0-255)整数。
⌋(RS_LT_00018)[PRS_DLT_00613]⌈在DLT模块初始化后,消息计数器(MCNT)应设置为‘0’。
⌋(RS_LT_00018)[PRS_DLT_00105]⌈对于传输到分配的日志通道的每条DLT消息,消息计数器应递增1。⌋(RS_LT_00018)[PRS_DLT_00106]⌈如果消息计数器达到255,则计数器将在下一条要传输的日志和跟踪消息时取整并从值‘0’开始。⌋(RS_LT_00018)
5.1.3正文/有效载荷格式
DLT有效载荷跟随在DLT报头或DLT扩展报头之后(如果使用)。DLT有效负载包含记录或跟踪的参数,或者它包含控制信息。
[PRS_DLT_00314]⌈如果UEH(使用扩展报头)位设置为‘1’,则有效载荷应与DLT扩展报头相邻。⌋(RS_LT_00013,RS_LT_00023)[PRS_DLT_00315]⌈如果UEH(使用扩展报头)位设置为‘0’,则有效载荷应与DLT标准报头相邻。⌋(RS_LT_00013,RS_LT_00023)5.1.3.1非冗余模式下的有效负载为了能够仅传输参数值,而不需要关于参数值的任何元信息,可以使用非冗余模式的附加属性,如参数名称或类型。
为了允许正确地分解接收到的DLT消息内包含的参数值,将专用消息ID添加到有效负载。
一个单独的外部文件根据相应的消息ID包含对有效载荷布局的描述。

5.2报文类型
5.2.1数据报文
DLT数据报文按照5.1章《报文格式》中所述进行组装。
5.2.2控制消息
DLT控制消息主要用于修改DLT模块在运行时的行为。它们允许改变通信总线来发送DLT数据消息,修改过滤器级别,配置可以触发存储为非易失性。
5.3服务/命令
以下章节介绍已定义的DLT命令,包括唯一ID(服务ID)、格式和所需参数。
[PRS_DLT_00635]⌈应支持使用以下服务ID的下列dlt命令:

相关文章:
AUTOSAR_PRS_LogAndTraceProtocol文档翻译
1简介和概述 本协议规范规定了AUTOSAR协议Dlt的格式、消息序列和语义。 该协议允许将诊断、日志和跟踪信息发送到通信总线上。 因此,Dlt模块从应用程序或其他软件模块收集调试信息,向调试信息添加元数据,并将其发送到通信总线。 此外&#x…...
自定义比较器
package org.jeecg.modules.develop.api.livePort; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List; // 创建一个泛型类 class MyObject { private T data; public MyObject(T data) {this.data data; }p…...
【NLP】如何管理大型语言模型 (LLM)
什么是LLM编排? LLM 编排是管理和控制大型语言模型 (LLM)的过程,以优化其性能和有效性。这包括以下任务: 提示LLM:生成有效的提示,为LLMs提供适当的背景和信息以产生所需的输出。链接LLM: 结合多个LLM的输…...
利用机器学习实现客户细分的实战
前言: Hello大家好,我是Dream。 今天来学习一下机器学习实战中的案例:创建客户细分,在此过程中也会补充很多重要的知识点,欢迎大家一起前来探讨学习~ 一、导入数据 在此项目中,我们使用 UCI 机器学习代码库…...
Tair(4):Tair原理架构
一个Tair集群主要包括3个必选模块:ConfigServer、Dataserver和Client 通常情况下,一个 Tair 集群中包含2台 Configserver 及多台 DataServer。其中两台 Configserver 互为主备。通过和 Dataserver 之间的心跳检测获取集群中存活可用的 Dataserver&#…...
SAP UI5 walkthrough step7 JSON Model
这个章节,帮助我们理解MVC架构中的M 我们将会在APP中新增一个输入框,并将输入的值绑定到model,然后将其作为描述,直接显示在输入框的右边 首先修改App.controllers.js webapp/controller/App.controller.js sap.ui.define([&…...
智能检测/摄像头监控系统EasyCVR无法启动进程是什么原因?如何解决?
国标GB28181智慧安防平台EasyCVR支持高清视频的接入和传输、分发,平台采用了开放式的网络结构,提供实时远程视频监控、录像回放与存储等功能。视频安防监控汇聚平台可支持1、4、9、16个画面窗口播放,可同时播放多路视频流,也能支持…...
export命令详解
export命令详解 大家好,我是免费搭建查券返利机器人赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! Export命令详解:释放Linux强大的数据导出能力 在Linux世界中,export命令是…...
十几个软件测试实战项目【外卖/医药/银行/电商/金融】
项目一:ShopNC商城 项目概况: ShopNC商城是一个电子商务B2C电商平台系统,功能强大,安全便捷。适合企业及个人快速构建个性化网上商城。 包含PCIOS客户端Adroid客户端微商城,系统PC后台是基于ThinkPHP MVC构架开发的跨…...
用python打印出菱形图案
你可以使用Python编写一个简单的函数来打印菱形图案。下面是一个例子,这个函数接受一个参数n,表示菱形的高度,然后打印出一个菱形图案: def print_diamond(n): # 上半部分 for i in range(n): print(" " …...
k8s 中externalTrafficPolicy应用场景和实践
在Kubernetes(K8s)中,externalTrafficPolicy 是一个用于控制服务的外部流量的策略。这个字段可以在 Service 的定义中设置,其主要作用是决定服务对外部请求的负载均衡行为。具体来说,externalTrafficPolicy 有两个可选…...
Selenium自动化测试框架(超详细)
Selenium自动化测试(基于python) 1、Selenium简介 1.1 Selenium是一款主要用于Web应用程序自动化测试的工具集合。Selenium测试直接运行在浏览器中,本质是通过驱动浏览器,模拟浏览器的操作,比如跳转、输入、点击、下…...
蚂蚁SEO实用的网络baidu蜘蛛有哪些
网络蜘蛛是一种用于从互联网上自动抓取信息的程序。它们根据给定的规则和指令,遍历网站上的页面,收集信息并将其存储在数据库中。网络蜘蛛在搜索引擎、数据挖掘、信息提取等领域有着广泛的应用。本文将介绍一种实用的网络蜘蛛,并探讨其实现原…...
滑动窗口如人生,回顾往事不复还———力扣刷题
第一题:长度最小的子数组 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 思路: 第一想法肯定时暴力枚举,枚举数组任何一个元素,把他当起始位置,然后从起始位置找最短区间,使得…...
VM实现方式及其优缺点
在众多VM实现方式中,我可以说几种常见的实现方式。例如,基于栈的方式、基于寄存器的方式、基于堆的方式等。下面我将分别对这几种方式进行阐述,并讨论它们各自的优点和缺点,以及它们各自的应用场景。 基于栈的方式 基于栈的方式…...
MySQL——库,表基础操作
目录 一.库的操作 1.显示当前的数据库列表 2.创建数据库 3.字符集和校验规则 4.操纵数据库 5.删除数据库 6.数据库备份与还原 7.查看连接情况 二.表的操作 1.创建表 2.查看表结构 3.修改表 4.删除表 一.库的操作 1.显示当前的数据库列表 show databases; 2.创建数…...
文件批量管理方法:100个文件要怎样快速放在100个指定的文件夹中
处理大量文件时,经常要将多个文件放入相应的文件夹中。如果要处理的文件数量较大,例如100个文件要放入100个指定的文件夹中,那么如何快速有效地完成这个任务呢?下面看下云炫文件管理批量管理文件的方法,快速将100个文件…...
管理的五大过程和十大知识领域
PMBOK五大过程组是什么? PMBOK五大过程组是:启动过程、规划过程、执行过程、监控过程、收尾过程。 各用一句话概括项目管理知识体系五大过程组: 1、启动过程组:作用是设定项目目标,让项目团队有事可做; 2、…...
C/C++ 快乐数: 编写一个算法来判断一个数n是不是快乐数
题目: 编写一个算法来判断一个数n是不是快乐数。 快乐数的定义: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。 然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。 如果这个过…...
【后端】JVM 远程调试
前言 再好的代码,也还是有瑕疵的,不是代码不给力,是线上问题太牛逼太玄幻。这不刚部署就出现了问题,幸好还是测试的时候,早点发现早点解决,不给任何人带来不必要的损失,是我做人的原则,只要钱到位,任何问题都不是问题。 JVM 远程调试 不得不说 IDEA 和 宝塔配合是真…...
【网络】每天掌握一个Linux命令 - iftop
在Linux系统中,iftop是网络管理的得力助手,能实时监控网络流量、连接情况等,帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...
python打卡day49
知识点回顾: 通道注意力模块复习空间注意力模块CBAM的定义 作业:尝试对今天的模型检查参数数目,并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...
《用户共鸣指数(E)驱动品牌大模型种草:如何抢占大模型搜索结果情感高地》
在注意力分散、内容高度同质化的时代,情感连接已成为品牌破圈的关键通道。我们在服务大量品牌客户的过程中发现,消费者对内容的“有感”程度,正日益成为影响品牌传播效率与转化率的核心变量。在生成式AI驱动的内容生成与推荐环境中࿰…...
Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...
Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)
参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...
Linux离线(zip方式)安装docker
目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1:修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本:CentOS 7 64位 内核版本:3.10.0 相关命令: uname -rcat /etc/os-rele…...
【JVM】Java虚拟机(二)——垃圾回收
目录 一、如何判断对象可以回收 (一)引用计数法 (二)可达性分析算法 二、垃圾回收算法 (一)标记清除 (二)标记整理 (三)复制 (四ÿ…...
在树莓派上添加音频输入设备的几种方法
在树莓派上添加音频输入设备可以通过以下步骤完成,具体方法取决于设备类型(如USB麦克风、3.5mm接口麦克风或HDMI音频输入)。以下是详细指南: 1. 连接音频输入设备 USB麦克风/声卡:直接插入树莓派的USB接口。3.5mm麦克…...
向量几何的二元性:叉乘模长与内积投影的深层联系
在数学与物理的空间世界中,向量运算构成了理解几何结构的基石。叉乘(外积)与点积(内积)作为向量代数的两大支柱,表面上呈现出截然不同的几何意义与代数形式,却在深层次上揭示了向量间相互作用的…...
初级程序员入门指南
初级程序员入门指南 在数字化浪潮中,编程已然成为极具价值的技能。对于渴望踏入程序员行列的新手而言,明晰入门路径与必备知识是开启征程的关键。本文将为初级程序员提供全面的入门指引。 一、明确学习方向 (一)编程语言抉择 编…...
