赞
踩
http://t.csdn.cn/XPldb
http://t.csdn.cn/zSkNU 原文链接
1 简介与概述
不同诊断通信协议的开发,调整,实施和维护会给车辆制造商,系统供应商和ECU供应商带来不必要的成本。为了解决此问题,将不同的技术协议和数据通信原理编译为一个国际ISO标准,通常称为统一诊断服务(ISO 14229-1)。
诊断系统包含控制端的软件与诊断仪端的软件,这两者的软件架构基本一致。如下图所示。
模块分析— 诊断数据,策略管理层 ASW
诊断数据与策略管理层是独立于标准协议之外,根据不同的控制单元,策略及数据管理不尽相同,但归根到底就两个功能
2.相关诊断功能的实现是隶属于应用层软件的开发,在此不做描述。本文以读取控制系统中某个变量为例进行细节描述,如下图所示:
模块分析— UDS 协议应用层
UDS 的协议应用层为定义各个诊断命令的含义与指令,建立A-PDU,进行命令的解析。具体设计可以参考标准的ISO14229协议。
模块分析 — UDS 网络层
UDS 的网络层为核心,可以理解为信息交互的路由器,或者火车的编组站,对各个信息进行编组。一组为一个数据单元,一个数据单元为8个byte,命名为N-PDU
N-PDU=N_AI+N_PCI+N_DATA.
在对数据编组的过程中,分为单帧与连续帧。传输方式如下图所示:
N-AI 包含的为地址信息与寻址信息。
N-PCI 为在传输数据的时候的控制信息,详细如下图所示。
N-Data 为传输的数据。具体为数据域后面的7个数据域。
模块分析 ---- 数据链路层与物理层
数据链路层的各个功能基本都有具体的CAN传输芯片完成,而物理层表述的为传输过程中的线束及传输信号要求。代码结构分析
在进行软件设计的过程中,数据链路层与物理层描述的为硬件描述层隶属于硬件范围,网络层为服务描述层处于RTE下方与BSW上方,而诊断数据库与诊断策略都包含在ASW层。网络层,数据链路层,物理层在Autosar都含有标准模块,均可以找到标准进行更改应用,诊断策略及诊断数据库包需要根据具体的应用进行设计。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。