Adaptive AUTOSAR Diagnostic Manager模块介绍(一)

      最后更新:2022-08-01 17:22:54 手机定位技术交流文章

      在AutoSar中,完成诊断模块所需的依赖是:

      • 1.基本应用管理:包括初始化和过程状态管理
        2.中级通信:ara:com要求应用程序提供所需的信息,如故障记忆、寿命数据、常规控制等,通常由Socal、SomeIpBinding和IpcBinding模块组成
        3.ara::per : 用来存储数据保存,比如开机的参数、永久存储的数据等
        4.ara::em:流程管理模块管理
        5.Ara::log:日志管理
        6.Libjason:分析Jason的文件格式
        7.Libvector:用于存储和处理信息的矢量容器。
        8.线程:线程创建等。
        9.iostream:输入和输出模块

      Diagnostic Manager 模块在Autosar的架构设计:

      1. UDS服务诊断服务提供
      2. diag autosar诊断模块的库
      3. UDSTransportProtocolApi UDS运输协议C++接口
      4. DoIp数据传输

      架构图如下所示:
      在这里插入图片描述
      autosar软件设计:
      在这里插入图片描述
      解释下上边的架构:
      Autosar应用程序的诊断模块分为多个软件端,每个软件端代表一个独立的诊断实体,具有自己的诊断地址。
      DM为每个安装的软件端提供了一个专门的诊断服务器实例。
      服务器实例共享一个传输层实例(例如TCP/IP端口13400上的DoIP)。
      DM根据接收目标向软件集群发送UDS请求地址,并将请求发送到负责的诊断服务器实例。
      介绍下DoIP
      DoIP传输协议是通过以太网从诊断服务器传输诊断数据的协议客户端连接到ECU.
      DoIP子组件:

      • Socket Handling: UDP 或者 TCP socket构建通讯
      • Message Validation: 消息验证,一系列的接口可以校验消息的确认
      • Vehicle Identification: ECU端的识别和认证
      • Node Information: 当前端点的状态
      • Routing Activation: DoIP客户端管理
      • Diagnostic Messages: 诊断消息的实体

      通过UDP和TCP接口,诊断客户端与DoIP子组件之间的通信
      AUTOSAR定义的接口API:
      GetConversation(meta_info)获取诊断会话
      GetAllConversations() 获取所有诊断对话
      GetCurrentActiveConversations()获取当前对话
      SetActivityNotifier(activity_status_notifier) 设置对话框通知状态
      GetActivityStatus()获取当前状态

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/31179.html

          热门文章

          文章分类