当前位置:首页 > 申请书大全 > Vo_cano,UDS诊断解决方案在BCM控制器上的应用 太阳能路灯 控制器解决方案
 

Vo_cano,UDS诊断解决方案在BCM控制器上的应用 太阳能路灯 控制器解决方案

发布时间:2019-02-16 04:37:45 影响了:

  摘要:本文简单介绍了Volcano UDS诊断服务模块结构和功能,并且结合实际项目开发,介绍了如何运用Volcano UDS来快速开发维护BCM的诊断功能。   关键字:诊断;DSLM(诊断服务层模块);UDS;快速开发
  
  1、前言
  
  随着CAN网络在整车应用的逐渐普及以及车身电子功能的日趋复杂,越来越多的车身电子控制模块都开始放弃传统的K线下的诊断方式,转而应用基于更高速可靠的CAN的诊断方式。BCM作为车身电子的重要模块,采用基于CAN的诊断方式也显得非常必要。但一般网络诊断软件相对比较复杂,测试项目繁多,开发周期较长。所以我们在APllBCM的开发中选择了VBolcano的产品。
  
  2、Volcano诊断解决方案
  
  Volcano提供一整套的ISO诊断相关的嵌入式软件协议栈,以方便ECU与外部诊断工具进行信息交互。它由传输层模块TLM及诊断服务模块DSLM组成。TLM及DSLM的功能均通过DCT(DiagnosticConfiguration Tool)工具生成的配置文件进行控制,方便软件集成开发,以及后续的维护工作。
  
  
  2.1、传输层模块
  Volcarlo Transport Layer(TLM)是Voleailo提供的基于VTP的附加模块。它提供超过8字节的数据传输支持,主要用于诊断通信中。TLM具有如下特点:
  ●支持多通道配置
  ●符合ISO 15765-2标准
  ●采用图形化的诊断配置工具DCT生成配置文件
  ●方便简捷的API接口函数,易于集成
  ●占用系统资源少
  
  2.2、诊断服务层模块
  Volcano Diagnostic
  Service Layer
  Module(DSLM)提供了基于ISO标准的诊断服务的支持。主要帮助应用程序确认诊断命令,管理安全级别及诊断模式,发送诊断响应。DSLM具有如下特点:
  ●支持ISO 14230或ISO 14229服务组
  ●采用TLM进行数据传输
  ●采用图形化的诊断配置工具DCT生成配置文件
  ●方便简捷的API接口函数,易于集成
  ●丰富的回调函数用于与应用程序交互
  ●占用系统资源少
  
  3、Volcano DSLM(诊断服务层模块)的使用
  
  Volcano DSLM(诊断服务层模块)基于其网络传输层,应用层软件可以直接调用其API函数,其接口关系如图2所示。
  
  从图2中也可以看出Volcano、TLM网络传输层和DSLM诊断服务层三者间的关系。Volcano目前提供了三个独立的库文件:volcano5.lib、tlm.lib和dslm_14229.lib。另外,它对用户提供配置工具,用户只要依据项目实际需要对TLM和DSLM进行配置,自定义所需要的网络报文和诊断ID。软件通过在工程集成配置工具生成的v_gen.e文件来实现网络诊断功能的更新,程序整体流程如图3所示。
  
  对于诊断服务层模块来说,我们只需要维护一个类似表格的*dlm文件就可以根据项目需要,增加修改诊断ID以及他们的属性,维护非常方便。
  在诊断服务层模块中,提供了两类函数接口:Function API和User provided call-out API。其中Function API包括:
  v_dsl_verify()
  v_dsl_init()
  v_dsLprocessing()
  v_dsl_confirm()
  v_dsl_indication()
  v_dsl_current_diagnostic_mode()
  v_dsl_current_access_mode()
  v_dsl_get_buffer,v_dsLget_buffer_size()
  v_dsLis_pending()
  这类函数主要用来对DSL层进行初始化和配置等。我们在使用DSLM提供的UDS服务前,需要先调用函数v_dsl_verifv和v_dsl_init,检查DSLM有效性并对其初始化。
  模块中的User_provided_call-out API就是我们常用的UDS服务,下面就是常用UDS诊断服务和DSLM中接口函数的对照表,如表1所示。
  
  
  User provided call-out API接口函数在满足相关标准的同时,也提供了灵活的传递参数,使用起来非常方便。图4就是一个Read Data By Identifier诊断服务的示例函数。
  
  4、总结
  
  在项目时间节点紧迫,相关资源缺乏的情况下,我们在APll BCM的软件开发中使用了Volcano模块、TLM网络传输模块和DSLM诊断服务模块三个模块,快速完成了BCM网络诊断的开发。经过实际使用验证,相关功能均符合客户要求且维护简单方便。

猜你想看
相关文章

Copyright © 2008 - 2022 版权所有 职场范文网

工业和信息化部 备案号:沪ICP备18009755号-3