SAE J1939学习笔记(一)「建议收藏」

SAE J1939学习笔记(一)「建议收藏」1.总线布局2.差分信号线J1939通讯传输的是一系列的“1”或“0”。 1代表在J1939(+)与J1939(-)之间是高电压差。0代表在J1939(+)与J1939(-)之间是低电压差250K波特率时,在J1939高、低导线间的电压从0到1每秒变化250K次是可能的。用一个高频示波器可以看到此电压变化。3.ISO标准对应–Layer…

大家好,又见面了,我是你们的朋友全栈君。

1.总线布局

SAE J1939学习笔记(一)「建议收藏」

2.差分信号线

J1939 通讯传输的是一系列的“1”或“0” 。 

1 代表在J1939(+)与J1939(-)之间是高电压差。

0 代表在J1939(+)与J1939(-)之间是低电压差

SAE J1939学习笔记(一)「建议收藏」

250K波特率时,在J1939高、低导线间的电压从0到1每秒变化250K次是可能的。用一个高频示波器可以看到此电压变化。

SAE J1939学习笔记(一)「建议收藏」

3.ISO标准对应

– Layer1–  J1939/11:   物理层,物理介质 , 总线的设 计 ,  长度 , 节点 , 等等 .
– Layer2–  J1939/21:   数据层,定义分类 PGN 信息 / 传输协议 .
– Layer3–  J1939/31:    网络层,定义不同网络互连之间 的转换技术。
– Layer7–  J1939/71:    应用层,信息分享、解析。

                    J1939/73:   应用层,故障信息。

4.术语

SPN–特定参数–特定参数对应的号码,例如:
              SPN 190 = 发动机转速
              SPN 513 = % 扭矩

PGN  – 参数
号码 –总线上的信息被以 “ 组 ” 的形式广播,例如:
   PGN 61444 = 发动机控制器 #1 (EEC1)
   PGN 61444 = SPN 190, SPN 513, 等等 .
  发动机转速和扭矩百分比都属于 PGN 61444参数组。
优先级 – 告诉 ECM 接收的信息的重要性 :
     0 =  最重要
     6 =  最不重要
    例如:如果变速箱用优先级3请求发动机升速,而牵引控制器用优先级0请求发动机降速,最终发动机会选择降速。
源地址和目的地址 – 指示信息是从哪一个控制器发出,或发送到哪一个控制器。
    00 h – 发动机控制器--主机
    01 h – 发动机控制器--辅机
    03 h – 变速箱

5.CAN标准帧和扩展帧

SAE J1939学习笔记(一)「建议收藏」

标准帧只有11位的标识符(ID)
扩展帧有11+18=29位标识符(ID)
以后均以扩展帧作介绍。

6.协议数据单元(PDU)

标识符+数据域=协议数据单元(PDU)。
SAE J1939学习笔记(一)「建议收藏」

7.参数组编号(PGN)

PGN(Parameter Group Number)参数组编号:

参数组编号唯一标识一个参数组,在通讯过程中起到“索引”的作用,表征报文的内容和用途,确定报文的类型和传播数据需要的帧数目。可以理解为同类(或者有共同特征的设备)参数的集合的索引。
SAEJ1939中的格式规定如下:

pgn61443 – Electronic EngineController #2 – EEC2 –

Transmission Repetition Rate: 50ms                        ->信息发送周期

Data Length:                            8 Bytes                        ->数据域长度(CAN扩展帧中的数据域)

Data Page:                              0                                    ->数据页(PGN中的数据页DP)

PDU Format:                           240                              ->PDU格式(PDU1(<240)和PDU2(240~255))(CAN格式中的PF)

PDU Specific:                          3                                  ->PDU特定域(PF<240,DA,240≤PF≤255,组扩展)

Default Priority:                        3                                  ->优先级 

Parameter Group Number:            61443 (00F00316)                ->PGN

Bit Start Position / Byte     Length          SPNDescription                        SPN (对应的SPN号)   ->数据域分布

1.1                        2 bits             Accelerator Pedal Low Idle Switch        558                               ->1.1表示第一个字节第一位

1.3                        2 bits             Accelerator Pedal Kickdown Switch      559                               ->2bits表示该SPN对应的数据长度

1.5                        2 bits             Road Speed Limit                                1437

2                          1 byte            Accelerator Pedal Position                      91

3                          1 byte            Percent Load at Current Speed              92

4                          1 byte            Remote Accelerator                               974

8.特定参数号(SPN)

spn91 – Accelerator PedalPosition – The ratio of actual acceleratorpedal position to maximum pedal position. Although it is used as an input to determine transmission and ASRalgorithms about driver’s actions.

 

Data Length:                            1 Bytes                    ->SPN号对应的数据的长度

Resolution:                        0.4%/ bit, 0 offset          ->计算方式(见下)

Data Range:                      0 to100%                        ->数据范围(涉及偏移量计算)

Type:                                 Measured

Suspect Parameter Number:         91                     ->SPN号

Parameter Group Number:            [61443]             ->隶属的PGN号

由SPN数据(CAN格式中的读出的数据)计算实际的数据方法:

如下是一个实际的 J1939信息

  0.1000 1  OCF00300x   Rx   d8  7DC3 C0 2D FFFFFFFF

转换步骤:

    十六进制转成十进制
    乘以转换系数
    加上偏置

举例:

SAE J1939学习笔记(一)「建议收藏」

查询PGN:

SAE J1939学习笔记(一)「建议收藏」

SPN110如下:

SAE J1939学习笔记(一)「建议收藏」

SPN175:

SAE J1939学习笔记(一)「建议收藏」

其他类同。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/139897.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Hanlp分词之CRF中文词法分析详解

    Hanlp分词之CRF中文词法分析详解

    2021年6月30日
    140
  • 数学分析 反常积分(第11章)

    数学分析 反常积分(第11章)一.反常积分的概念相对于普通的定积分(称为正常积分),下面提出2类反常积分1.无穷积分的提出:2.瑕积分的提出:二.无穷积分1.定义:2.性质三.瑕积分1.定义:

    2025年5月27日
    3
  • Kali Linux安装pip

    https://pip.pypa.io/en/stable/installing/

    2022年4月6日
    59
  • nvue踩坑2

    nvue踩坑2小透明继续写一个 继上次的探索之后又遇到了一些问题 我来再说两句吧 希望能给同样遇到问题的朋友一点启发 1 关于图片圆角 因为我做的页面上面有出现用户头像 是圆形的 需要做成图片圆角 看了一些别人的博客 他们说是在 image 外层的父容器 div 的样式上加上圆角 然后用 overflow 来切掉它 让图片变圆 可是我尝试了以后发现并没有成功 然后 我把关注点从 div 上挪开 改成在 image 上加上 border radius 就成功了 写成 50 image div div image

    2025年11月9日
    2
  • provideoplayer2中文教程_potplayer vr

    provideoplayer2中文教程_potplayer vrPotplayer是高清影视常用的播放器,界面简洁,功能齐全,比MPC-HC和MPC-BE更人性化;但其默认方案十分糟糕,预设过多错误,无法正确播放10-bit视频,一直饱受诟病。VCB-Stuido以往发布的数篇高清教程大多偏重于madVR,在PotPlayer的设置方面有些错漏。为了广大观众能正确、便捷地用PotPlayer享受高清影视,我们为大家带来一篇基于Pot…

    2025年11月16日
    2
  • Mysql修改已有数据的字符集

    Mysql修改已有数据的字符集

    2022年3月8日
    65

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号