当前位置:文档之家› 最新j1939协议理解教学文稿

最新j1939协议理解教学文稿

J1939协议理解

今天读了J1939协议的介绍文档,下面主要说说我的理解:

1、网络应用分为几个层

物理层 SAE J1939-11

数据链路层 SAE J1939-21

网络层 SAE J1939-31

应用层 SAE J1939-71

故障诊断 SAE J1939-73

网络管理层 SAE J1939-81

2、下面主要说说数据链路层和应用层

数据链路层:为物理连接之间提供可靠的数据传输。包括发送CAN 数据帧所必需的同步、顺序控制、

出错控制和流控制。

首先要明白几个概念

PGN:参数组编号

帧(Frame): 组成一个完整信息的一系列有序的数据位。帧又被划分成几个域,每个域包括了预定义类型的数据。

CAN 数据帧(CAN Data Frame):组成CAN 协议帧所必需的有序位域,以帧起始(SOF)开始以帧结束(EOF)结尾。

标准帧(Standard Frame):CAN2.0A规范中定义的使用11 位标识符的CAN 数据帧。

扩展帧(Extended Frame):CAN2.0 B规范中定义的使用29 位标志符的CAN 数据帧。

包(Packet):一个单一的CAN 数据帧就是一个包。当一条报文包含参数组的数据长度小于等于8个字节时,这样的报文也称为包。

报文(Message):指一个或多个具有相同参数组编号的(PGN)数据帧。也就是说只要一个或多个CAN数据帧具有相同的PGN号,那他们就是属于一个报文。

多包报文(Multipacket Messages):当具有相同参数组编号的所有数据需要使用多个CAN 数据帧来传输时使用的一种J1939报文。每个CAN 数据帧拥有相同的标识符,但在每个包中数据不同。

协议数据单元PDU的格式

PDU是J1939传输数据的格式,它基于CAN协议的扩展帧传输方式。即它的标识符是29位的。

优先级:最高0(000)设置到最低7(111 )。所有控制报文的缺省优先级是3(011 )。扩展数据页(EDP)和数据页(DP)的关系:

什么是第0页PGN,什么是第1页PGN?作用有什么不同?还不是太清楚

PDU 格式(PF)PDU格式PDU 特定域(PS)

PF<240 PDU1格式PS是目标地址(DA)

PF=240 ̄255 PDU2格式PS是组扩展(GE)

PDU1和PDU2时的参数组编号(PGN)数目

EDP DP PF PS PDU1时参数组编号

0 0或者1 0-239 目标地址2X240(PF的值)=480

EDP DP PF PS PDU2时参数组编号

0 0或者1 240-255共16个

组扩展值0-255(共256个

数)

2X16X256=8192

在说说J1939的标识符合CAN协议的对应格式:

J1939的29位标识符格式

CAN协议扩展帧格式

首先,J1939的标识符是29位的,所以它使用的是CAN协议的扩展帧格式来传输数据。29位的标识符在寄存器中的存放位置,正好对应CAN的ID28-ID0的29位。我们主要在ID18和ID17直接有两个位,SRR和IDE要求是必须写1的,它不包括在我们的J1939的标识符,还有ID0的后一位RTR位也不包括在我们的标识符中,这一位是无效位,应该写0。

标识符对应的CAN扩展帧的位数:

优先权3位-----------------→ID28 ID27 ID26

扩展数据页EP-------------→ID25

数据页DP-------------------→ID24

PDU格式PF------------- →ID23~ID16

PDU特定域PS----------→ID15~ID8

源地址SA-----------------→ID7~ID0

如果ECU读回来一串数据怎么判断参数组编号PGN呢?

首先,把数据的前29个字节(标识符)提取出来。

然后进行解析,解析方式:

把ID28~ID24提取出来组成一个字节(对应优先权位、EP、DP)

把ID23~ID16提取出来组成一个字节(对应PF的8位)

把ID15~ID8提取出来组成一个字节(对应PS的8位)

上述ID25~ID8就组成了数据的PGN(参数组编号)

例如:

收到的前29个字节是0x67,0x98,0x1c,0xa2

看看它们的存储方式:

BIT7 6 5 4 3 2 1 0

IDR0 ID28 ID27 ID26 ID25 ID24 ID23 ID22 ID21

0 1 1 0 0 1 1 1 0x67 IDR1 ID20 ID19 ID18 SRR=1 IDE=1 ID17 ID16 ID15

1 0 0 1 1 0 0 0 0x98 IDR

2 ID14 ID1

3 ID12 ID11 ID10 ID9 ID8 ID7

0 0 0 1 1 1 0 0 0x1c IDR3 ID6 DI5 ID4 ID3 ID2 ID1 ID0 RTR

1 0 1 0 0 0

2 0 0xa2

进制),

把ID23~ID16提取出来,组成二进制的:11110000(PF字节的8位)

把ID15~ID8提取出来,组成00001110(对应PS的8位)

把上述3个字节连接起来组成一个二进制的数:00 11110000 00001110,把它转换成16进制就是0XF00E,转换成十进制是:61454,这就是它的PGN号。

3、应用层

应用层为应用过程访问OSI 环境提供了一种方法,包括支持应用的管理功能和通用的机制。它以PGN和SPN的方式具体规定了车辆使用的每个参数的数据长度,数据类型,分辨率和数据范围等。

应用层报文使用PGN作为一组参数的标号。一组参数称为“参数组”(PG),PGN是其唯一的标识号。参数组内有一个或多个具体的参数,每个具体参数都有一个唯一的标号,称为“怀疑参数编号”,即SPN。

以一个实例讲解PGN的使用

以PGN65213为例,首先是它的J1939的协议定义:

假定我们只使用了协议中的前3个参数,预计风扇转速比,风扇驱动器状态,风扇转速。下面是这3个参数在字节中的存储方式,预计风扇转速比是一个字节的,它占用了byte1的8位,风扇驱动器状态是4个字节的,占用了byte2的后四位,风扇转速是2字节的,占用的byte3和byte4. 其他没有使用的位要写1.

他们每一个参数对应一个SPN,在SPN中都有它的斜率和分辨率的规定。

例如第一个参数Estimated Percent Fan Speed,我们看它的SPN号是975,我们再来查看SPN975的内容,发现他是一个表示百分比的数,范围是0%到100%,分辨率是0.4%,偏移量是0。如果我们想写个50%进去,怎么把50%转换为二进制数放到字节中呢,

计算方式:50%/分辨率+偏移量=要写入的字节数,我们来计算下50%/0.4%+0=125,这个数是十进制的,把它转换为二进制就是:0111 1101,我们把这数放到字节1中就可以了。

4、

康美之恋评论

感知觉上的享受在这则广告中表现得淋漓尽致。正如大多数观众看了这部广告后最经常用两个字来评论——“唯美”,它由以下几个因素来体现:

首先是画面美,剧组汇集了国内一流的创作人才,组成了一百多人的摄制团队,三百多人的演出阵容,调用大批国际尖端的影视设备,整个拍摄串起了桂林的浪石滩、遇龙河、相公山、会同桥、老寨山以及中越边境德天瀑布等广西9大著名风景区。《康美之恋》中优美的画面如同人间仙境的设计也是别具匠心的:如今工作在城市里的人们早已厌烦了白天感受城市喧嚣,晚上回家打开电视却又是商业味浓郁的广告。而本广告以清新的天然美景满足了人们对自然山水的渴求。

其次是音乐美,可以说“一首歌火了一个广告”。本广告歌曲的演唱者是著名歌唱家谭晶。在这首歌中雨点慢慢飘落,河水潺潺而流,花苞柔情地开放,情人的笑脸羞答答地张开。她极具韧性的声音刚好把能把歌中的这种意境表现得恰到好处,诠释得迷人并富有诗意。

最后是情节美,以故事情节制造悬念,调动观众的收看欲望,关键时刻点明广告主题,以期达到既好看、又好记的目的。其实讲故事——听故事,正是人们最基本的阅读和欣赏习惯,在广告中能满足人们的这一基本心理需求,其广告诉求就一定会实现。本广告的故事围绕一对青梅竹马的恋人共同创办“康美药业”这个主题展开,男女主人公一身民国乡间装束,感觉他俩是最般配的荧幕情侣形象。从最初的男子采药、配药,女子熬药、晒药,进行一道道精细而紧密的制药工序,到最后“康美药业”正式开张和男女主人公婚庆双喜临门的完美结局,浓浓的情意正像歌词中所诉说的“春秋十载,风雨人生写下爱的神话;一条路海角天涯,两颗心相依相伴,风吹不走誓言,雨打不湿浪漫”。

此外,情感的诉求在《康美之恋》中也表现的恰到好处。情感诉求是当代广告的一个重要审美取向。情感,实质上是一种审美的价值评价,它自身就具有很强的尺度性意味,客体的审美属性与主体的审美需要之间结构同构与否,必然引起审美主体情感上的不同反应。同时,情感又是审美主体由审美感知向审美联想以至审美超越跨跃的绝对中介桥梁。没有情感的介入。感知所得的表象运动永远是沿着逻辑概念的路线前进,而无法进入以形象想象为思维特征的审美领域。仔细品味,这则广告在改变消费者的情感上使用的心理学原理是值得学习的:它试图在不直接影响消费者的信念或行为的条件下,用以下三种方法赢得他们对于品牌的好感:

相关主题