粉丝10.0万获赞14.9万

at unified diagnostic services 统一诊断服务是车在网络中用于故障检测和数据监视的通信协议。在 iso 一四二三零、 iso 一五零三一、 iso 幺五七六五这些标准中都有定义。大子协议为 ecu 电子控制单元设备提供了一种标准化的方式来进行诊断和在编程。大子协议包含以下主要功能 一、数据诊断允许获取存储在 e、 c、 u 内部的数据,如故障码、数据流等。二、控制功能可以对 e、 c、 u 进行控制,如模块复位、进入编程模式等。三、软件编程 可以进行在线或离线的软件升级。 autos r automotive open system mayor kite texture 汽车开放系统 架构是一个全球汽车产业链上的大型联合体,其主要目标是建立一个开放的、标准化的汽车软件架构。基于 otos。 二、工具链软件的开发流程一般包含以下步骤一、系统配置 使用 autos 二工具链进行系统模块配置,包括数据类型、接口、组件、运行实体 runnable、 系统映射等。 二、生成基础软件根据显示配置生成平台相关的基础软件 be stabble, 例如操作系统 os、 内存管理器 map、 通信组件 com 等。 三、编写应用软件 s 根据需要实现的功能编写具体的应用层处理逻辑代码。四、集成 将编写的应用程序和征程的基础软件组合在一起,形成一个完整的系统。五、验证利用模拟器或者实际设备进行功能验证,杜绝存在的问题。需要注意的是, 奥特斯尔还定义了一套规范的软件开发流程,基于此流程,可以很容易对软件系统进行升级和扩展,同时也方便了各个汽车配件供应商的协同工作。

大家好,这期视频和大家简单的说一下 uds 诊断协议的学习路径,现在大家的时间呢都很宝贵,所以我的视频一定要短,要长话短说,毕竟我们工程师的时间不是都是用来刷抖音的,还得留点时间干活。 我这里画了两个梯子,其实是两个一样的梯子,大家如果想学习 uds 和相关的诊断协议,就按照这个梯子爬就可以了,向上爬或向下爬都可以,我建议呢是向上爬, 这个梯子是目前用的最多也是上手最容易的一个梯子。除此之外,这里第三个梯子 现在爬的人也比较多,我这里呢没有画出来,如果是基础不扎实的工程师建议呢,先不爬这个梯子,这个梯子有点长,下面这个梯子和上面实际上 是一样的,只不过呢,画在表格里面。大家平常呢也不要总是来爬梯子,梯子呢你爬不爬他都在那里,所以该干活干活,该吹牛吹牛,累了呢,或者没事了呢,再过来上下爬两遍,锻炼锻炼身体,谢谢大家。

本视频将向大家介绍 u d s。 的诊断概述。 首先,诊断的概念来源于医学医生通过询问、观察病人或者通过仪器检测,利用数据对病症做出判断。 而车辆整个的目的也有类似的地方,为了能够快速、准确地判断车辆或者某个控制器的故障以及故障原因,从而为维修提供可靠的证据。 在车辆诊断中,有两个端口,分别是开始的端和 e c u 端,这两端通过诊断协议进行通信。诊断协议包括 i s o 幺四二三零、 iso 幺五零三幺、 iso 幺五七六五以及我们接下来要讲的 iso 幺四二二九。 在协议里面定义了诊断的请求、诊断响应的报文格式、 e c u 怎样处理诊断请求、报文以及诊断服务的应用。 u d s 的全称为 unifined denocotisk services 的缩写,翻译过来为统一诊断服务。在国际标准按 s o 幺四二二九杠一中定义 u d s 标准中除了定义服务的用法以及服务的格式以外,还定了一了一些标准化的数据。 而到 oem 要使用 uds 协议时,除了要使用标准定义的服务以及标准数据以外,还要依据自身的情况定义属于 oem 特定的数据。 比如说,定义所要遵循的服务需要支持 d i d, 需要支持的 d t c 等这些内容,这样形成的符合某 o e m。 的诊断规范,才能用于 e c u 诊断功能的开发以及验证。 随着车辆 ecu 的增多,车辆网络 top 结构也越来越复杂,比如说一辆车需要有多种种线,嗯,这种种线包括看种线令拟态网、 flex 类的, 所以在二零一三年释放了 u d s。 协议中除了对通用诊断服务的定义以外,还增加了关于 u d s 在各个种线中应用的定义。 这张图就描述了 u d s 在 o s i 七层模型中的应用。 o s i 七层模型,第一层、第二层分别定义了物理层和数据链路层, 第三层、第四层定义了网络层和传输层,第七层是应用层。比如说我们熟悉的看准线,物理层和数据链路层遵循的是 iso 幺幺八九八, 而他的传输层遵循的是 iso 幺五七六五杠二。在 iso 幺四二幺九杠三中定义了 uds 基于看准线的应用。而现在比较火的以太网,它的目里程和数据链路程遵循的是 iso 幺三四零零杠三,它的传输程,也就是独 ip 遵循的是 iso 幺三四零零杠二, 它的 u d s 基于以太网的应用是 i s o 幺四二二九杠五。 关于 u d s 整弹概述的教学内容就展示到这里,如果您有更多的问题,关于私信北汇信息,感谢收看!

视频将向大家介绍一零服务。 首先,一零服务有三个常用的绘画,分别为默认绘画、编程绘画以及扩展绘画。 其中默认绘画权限最小,可操作的服务少,在该模式下仅支持一般的信息读取和查询操作。 扩展模式通常用于解锁高权限诊断服务,例如写入数据参数,读写诊断码。 编程模式用于解锁 boatload 相关的整段服务及程序。稍录,我们将除了默认绘画以外的 所有绘画都称为非默认绘画,其中叉号代表允许。从表中我们可以看出,很多服务在默认绘画下是不允许的, 比如说有二七服务、二八服务和刷写相关的三四三六三七服务。 接下来我们看两个时间参数,一个是叫 p two sever, 一个是叫做 p two sever。 心当 test 端给 e c u 发送请求过后, e c u 需要在 p two sever 时间内给出相应的响应。 如果 e c u 当前正在处理别的任务,而不能在 p two 十二月的时间内给出相应的响应,那么他先在 p two server 时间内给出一个 n r c 为七八的挂旗报文,告诉 tash 的端 e c u 正在忙之后会在 p two server 星的时间内给出相应的响应报文。 这个是绘画状态的一个状态机,状态机之间可以互相跳转,状态机自身也能跳转。 如果在默认绘画模式下收到默认绘画模式的请求,服务器端应当重新初始化默认绘画, 即之前被临时激活或者改变的数据都应该恢复到刚上店初始化的状态,写入到非一时存储器的数据不会重新初始化。如果在默认绘画下 收到任何非默认绘画模式的请求,服务端应当切换到被请求的绘画模式。并且如果通过零 x 八六服务设置了事件的话,这时候需要暂停。 但是目前基本上不会使用零 x 八六服务,所以一般直接切换即可。 在飞梦人绘画下收到飞梦人绘画模式的请求,服务器端应该完成以下操作,一、停止通过零 x 八六服务设置的事件。 二、重新锁定安全访问状态,并且重置依赖于安全访问的服务。三、不依赖于安全访问的服务。如果再被请求的绘画模式也支持,应当保持当前状 状态,例如说有通信控制服务和 d t c 控制服务。如果是在非默认绘画模式下收到默认绘画模式的请求,服务器端应当恢复之前被暂停的通过零 x 八六服务设置的事件, 停止所有默认绘画模式不支持的服务。当 ecu 一上电的时候,是处于默认绘画的,我们通过幺零,比如说幺零零三,幺零零二来将绘画状态由默认绘画跳转到非默认绘画, 由非默认绘画执行,幺零零一会跳转至默认绘画。当 e c u 处于非默认绘画的时候, s 三 time 这个时间潮时, e c u 也会从 非默认绘画跳转到默认绘画。为了防止 ecu 从非默认绘画跳转至默认绘画,我们要求开始的端周期发送三亿服务,让 ecu 一直维持在非默认绘画。 那么 s 三 time 这个时间怎么用呢?我们来看下面这张图。 test 端会利用 s 三 ctrling 的周期发送 test percent 给 e c u e c u 收到 test percent, 比如说三亿零零,三亿八零的服务请求会让 e c u 维持在非梦人绘画。 如果探索端 s 三 sever 这个时间内都没有给 e c u 发送任何诊断请求报文,那么 e c u 就会从飞 默认绘画跳转到默认绘画。如果 e c u 处于解锁状态,也会从解锁状态跳转到锁定状态。通常情况下, s 三 clint 时间要小于 s 三 sell 的时间,比如说有网关淹实的一些情况。 这个是一零服务的请求和响应格式。首先请求是一零零,二零二指的就是编程绘画, 然后他的肯定响应为一零加四零就是五零,然后再加上零二,后面加上四个字节的参数,这个参数就是刚才我们讲的 p two 和 p two 星。 一零服务支持的 n r c 有三个,分别为幺二只功能不支持 幺三、豹纹的长度或格式不正确。还有二条件不满足。 关于一流服务介绍的教学内容就展示到这里,如果您有更多问题,欢迎私信北汇信息,感谢收看!

大家好,我是贾老师,我们又见面了,我是一名一直坚守在众多车企车载测试领域最前沿的守望者, 贾老师所有视频呢,都会跟大家分享车载测试的技术干货,在最近一年多的时间里呢,贾老师已经成功地帮助超过一百名的小伙伴进入了各家车企 啊,成为一名车载测试工程师啊!是的啊,是贾老师亲手帮助送进去的啊,不是送到橘子里,耗子里啊,是送到车企 啊,贾老师亲力亲为的为这些小伙伴过他们的车载的测试简历,包括过他们车载测试的技术,包括他们车载测试的相关项目啊,给他们一一分析。呃,所以说,希望各位正在观看视频的小伙伴呢,如果对车 车载测试有任何的技术疑问啊,可以在留言区踊跃的留言评论啊,贾老师也会一一回复我们的小伙伴 啊,如果想学习车载测试更多呃技术技能的小伙伴呢,可以一键三连啊,关注 up 主收藏起来啊,去学习贾老师其他的车载测试的技术的这个视频。 那本期视频呢,跟大家分享的是一个非常重要的啊,车载测试领域里面一个非常重要的模块, u d s 诊断,当然 u d s 诊断是很大的一块了啊,那本期给我们的小伙伴分享的是零 x 二七服务 啊,也就是我们说的解锁 e c u。 那何为解锁 e c u? 那就得先谈一谈。呃,我们对 ecu 各种诊断的操作中,有一些非常私密性的操作啊,比如说你想升级刷写我们的 ecu 啊,改变 ecu 中的构建程序, 或者说我们现在现在想向 e c u 中写入一些非常重要的数据, 比如说车架号啊,就是我们汽车的 v i n 码,或者说想写入一些非常重要的软件的、硬件的版本的这样的一些信息,那不是说谁会这个,谁会一点我们诊断的服务,谁就都能像这个 e c u 中所写入的, 那必然需要有一个类似于密码的这种东西,那必须要让我们的 e c u 处于一种解锁的这种状态以后才能去写入这些啊,比较私要的这些 数据,或者说是去刷写我们的这种 e c u, 那这就涉及到可以用我们本期视频所讲解的二期服务来解锁 e c u, 让 e c u 呃处于一个解锁的这种状态, 那怎么样用二期服务解锁我们的这个 e c u 呢?或者说解锁 e c u 的这个流程又是怎么样的呢?我们的小伙伴可以看屏幕上的啊,现在的这样的一个啊,动画视频 啊,我们可以看到左边是诊断仪,右边是 e c u, 诊断仪需要先向我们的 e c u 发送一个请求,请求一个种子,种子就是 e c u 通过自己内部随机算法生成的一个随机的 数值啊,两两个字节啊,四个字节都比较常见。那么然后呢, ecu 就会把生成的这个种子作为本次的响应诊断的响应返回种子给到我们的这个 ecu, 与此同时呢,我们 ecu 那一边啊,就是 ecu 那一边也会用一个啊,特别自己的啊,很安全性很高的安全算法,根据这个种子会计算出一个 t 啊,一个钥匙啊,已被后面去进行验证, 那么这个啊安全算法非常非常的保密啊,外人是拿不到的,车企之外的外人是拿不到的, 那我们的诊断仪如果有这个授权的安全算法,他同样的也会用这个安全算法算出一个 k, 一般也是 这两个字节啊,四个字节的比较多,紧接着他就会把这个 k 作为第二阶段的请求再发送给 e c u, 让 e c u 去进行验证。那 e c u 收到了诊断仪发送过来的这个 k 啊,跟他自己算出来的这个右边的这个 key 去进行对比,这就是我们在验证我们的这个 key, 如果验证通过,他就会返回肯定响应,当然验证失败也会返回否定响应, ok, 这就是我们啊,咱们的这个呃 解锁 e c u 要用二期服务去解锁 e c u 的这样的一个呃流程,那具体的二期服务的豹纹实力是怎么样的呢? 我们来结合刚才啊看到的解锁 ecu 的流程,再来给我们的小伙伴说说二期服务的啊请求响应的相关的这个报文。那我们可以看到现在屏幕上方,同样我们的诊断仪准备 请求一个种子向我们 ecu 发送二七零幺这样的一个子功能的请求,零幺就代表是要请求一个种子 服务,当然是二七零幺同样的 ecu 啊,假设啊收到这个请求以后,利用自己的随机算法生成了一个随机的种子。本例中假设是两个字节 呃右边的三 a f 二,那么他紧接着就会用肯定响应六七零幺三 a f 二把这个三 a f 二发回 为给诊断仪,同时服务器 e c u 这一边会利用自己的安全算法算出一个 k 啊,就是由三 a f 二算出来的一个 k。 本例中假设是九幺五 c, 同样诊断仪内一边用事先呃拿到的呃 e c u 这边的安全算法,它也会计算出一个 t, 那他拿到的算法是正确的,如果算的对,他算出来的必然也是九幺五 c。 紧接着第二步,他就要用二七零二这个请求来发送 t, 他当然就会把算出来的九幺五 c 这个蓝色的九幺五 c 发送给我们的这个 ecu, 那我们的 e c u 拿到诊断仪发送过来的九幺 f 四五呃九幺五 c, 和自己计算出来的九幺五 c 进行对比, 验证这个 k, 那验证这个 k 的结果就有可能有两种,是吧?一个是验证通过,比如说当前情况下,诊断仪发送过来的这个九幺五 c 和我们的这个 ecu 自己算出来的九幺五 c 相等的,那这就是啊,会给出一个肯定响应,如果验证失败,就会给出否定响应。本例中算出来的是对的,那给出的就是一个六七零二这样的一个肯定响应,这个时候 ecu 就解锁成功了, 那这就是我们结合了这个解锁的流程,看到了一个 e c u 的豹纹实力。那我们后面还有几点几个重点要和我们的小伙伴说明。第一啊,咱们必须要在扩展绘画 下啊,才能使用二七服务来解锁 ecu 啊,否则一定会给我们一个否定响应。如果那么不在二七服,不在我们的扩展规划下啊,然后去解锁我们的 ecu, 就会啊给回一个否定响应。 第二一个啊,稍微难一点点理解的就是,其实啊,我们不只有二七零幺二七零二这两个子宫门,可能还会有 零三零四、零五零六这样一对一对的啊,零幺零二是一对,零三零四是一对,零五零六是一对,零七零八是一对。那所有单数的子宫门啊,一三五 代表都是发送请求,请求一个种子,而零二零四、零六零八这样 偶数的子功能都代表要进行发送一个 k, 让我们的 e c u 去进行验证。那为什么会有这么多不同的请求种子啊,并且配套的我们的发送 k 的子功能呢?其实也就是要协议规定 ecu 可以支持不同的啊,多个啊安全级别啊,也叫 level 的这样的一种解锁,也就是说,呃,我们 ecu 是可以定义多个不同的解锁级别状态下各做各的事啊, 这个不同的解锁级别安全级别并不是谁比谁更高啊,就是有几个不同的安全解锁解锁级别,比如说,那么我们啊,假设啊,我们有三 个啊,三个安全级所的这个级别,那我们就可以配置用二七零幺去啊,请求啊一号级别的这样的一个种子,然后用二七零二去发送一号级别的这样的一个 k, 我们可以配置用二七零三啊去。呃,请求二号级别的这个安全的种子用二七零四去发送二号安全级别的 key 用二七零五去啊发送三号级别的这样的请求种子的请求用二七零六去。呃,发送三号级别的这个啊, t 是这样的啊,这个是由我们的呃主机厂或者说 e c u 的供应商自己去定义的,当然一定会有零一和零二 这一组。那第三点我们要说的话呢,就是我们的否定响应时候的否定响应码,这个比较重要了,那像我们的这个解锁 e c u 的时候啊,如果你使用不恰当的请求,可能会得到否定响应。 比较常规的啊,比如说咱们的这个 e c u 解锁的级别啊,没有零三零五、零七,你非要用 二七啊,零三零五、零七,这个时候我们 e c u 就会返回幺二这个 n r c 否定响应码,代表当前请求的这个子宫能不被 e c u 所支持。还有一种很常见的情况,我们还只是处于默认绘画下, 我们就去请求解锁 e c u 了啊,那这个时候呢,我们的 e c u 一般会返回二二 二的否定响应码啊,代表这个解锁 e c u 的前提条件不正确,没有出于扩展,绘画下是不能解锁 e c u 的,我们刚才有提到过。 那如果我们解锁 e c u 的时候啊,使用,比如说二七、零二啊,零四啊,这样发送 k 让 e c u 去验证 k 的这个, 呃,请求的时候,我们的 k 计算出来的不正确,说穿了就是你密码错误啊,理解成这个意思吧,那这个时候我们的 e c u 就会返回否定响应码为三五的否定响应三五就代表我们发送的 k 不正确, e c u 验证失败了。 那么一般而言,我们如果不断地去尝试解锁 ecu, 不断地发送错 购物的这个 k 达到了三次啊,有的是五次,就看 e c o 的研发人员是怎么规定的啊,车企里面一般是三次到,达了三次以后啊 就达,就是达到了这个 e c u 设定的最大的呃验证失败的次数以后,那么我们的呃 e c u 这次就会返回三六否定响应码的否定响应, 那么返回了三六以后,如果诊断仪还是要发送啊解锁 ecu 的这个请求,这个时候我们的 ecu 直接返回 三七否定响应码,这个是什么意思呢?也就是说我们 e c u 一旦达到了失败最大次数,他会把自己锁定一段时间,那在锁定的这段时间啊,有的可以是几十秒,有的甚至 可以是几分钟,如果这段时间我们的诊断仪再发送我们的二期服务,尝试去解锁 ecu, ecu 就会给回一个三七的否定响应码,就代表你不准来解锁我。 好了,这个就是我们嗯二期服务的常见的否定响应码。那支持我们本期视频讲解二期服务解锁 ecu, 也给小伙伴讲解到这,希望我们的小伙伴喜欢。如果想学习车载测试技术的更多细节 啊,请一键三连关注 up 主啊,点个赞啊!如果希望获取本期视频相关资料的小伙伴,也可以加 up 主的微信啊,感谢小伙伴的收看,我们下期再见!

u d s 协议常见服务分类以及功能第一大类是基础诊断和通信服务,比如说呃,一零二七一一三 e, 它主要是实现 e c o 的 会话模式切换、安全访问解锁、 e c o 重启以及保持诊断通信链路的活跃。 第二大类是 d i d 数据的读写服务,比如说二二二 e, 它可以读写一些呃版本号、二维码等一些基础的标识数据。第三大类是刷写环境准备服务,比如说八五二八这些服务,它可以暂停其他控制器的网络报文发送, 禁止 dtc 故障码设置,优化刷写时的网络宽带,搭建稳定的一个刷写环境。第四大类是数据下载服务,比如是三一三四三六三七这些服务,它是主要负责 e c o 程序或者是数据的一个 下载,包含了下载请求、数据分块传输,以下载完成之后的退出等一些关键的步骤。记得点赞关注哦!