1.总线布局

![在这里插入图片描述](https://img-blog.csdn.net/20130607113405921)

2.差分信号线

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

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

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

![在这里插入图片描述](https://img-blog.csdn.net/20130607113744421)

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

![在这里插入图片描述](https://img-blog.csdn.net/20130607114022421)

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请求发动机降速,最终发动机会选择降速。
源地址和目的地址–指示信息是从哪一个控制器发出,或发送到哪一个控制器。
00h–发动机控制器--主机
01h–发动机控制器--辅机
03h–变速箱

5.CAN标准帧和扩展帧

![在这里插入图片描述](https://img-blog.csdn.net/20130607115146828)
标准帧只有11位的标识符(ID)
扩展帧有11+18=29位标识符(ID)
以后均以扩展帧作介绍。

6.协议数据单元(PDU)

标识符+数据域=协议数据单元(PDU)。
![在这里插入图片描述](https://img-blog.csdn.net/20130607115450562)

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

转换步骤:

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

举例:

![在这里插入图片描述](https://img-blog.csdn.net/20130607123623640)

查询PGN:

![在这里插入图片描述](https://img-blog.csdn.net/20130607123755750)

SPN110如下:

![在这里插入图片描述](https://img-blog.csdn.net/20130607123949203)

SPN175:

![在这里插入图片描述](https://img-blog.csdn.net/20130607124056781)

其他类同。

SAE J1939学习笔记(一)相关推荐

  1. SAE 1939学习笔记(三)

    转自:http://blog.csdn.net/hugohut/article/details/24553043 J1939故障代码种类 J1939 由几个不同的诊断信息: –诊断信息 1 - DM1 ...

  2. 堆叠式自动编码器(SAE)--学习笔记

    自动编码器及常见类型: 对于自编码器,往往并不关心输出是什么(因为输出就是输入的复现),只需要关心中间层的编码,或输入到编码的映射. 如果在编码和输入不同的前提下,系统仍可以复原输入,则说明编码已承载 ...

  3. SAE 1939学习笔记(一)

    转自:http://blog.csdn.net/Hugohut/article/details/24552509 1.总线布局 2.差分信号线 J1939 通讯传输的是一系列的"1" ...

  4. 小猫爪:AWR294x学习笔记01-AWR294x之MCAN

    小猫爪:AWR294x学习笔记01-AWR294x之MCAN 1 前言 2 MCAN简介 3 Feature描述 3.1 MCAN的工作模式 3.2 Timer Counter 3.3 ECC检测 3 ...

  5. 学习笔记10--CAN总线技术

    本系列博客包括6个专栏,分别为:<自动驾驶技术概览>.<自动驾驶汽车平台技术基础>.<自动驾驶汽车定位技术>.<自动驾驶汽车环境感知>.<自动驾驶 ...

  6. 无人驾驶车辆路径规划及轨迹跟踪控制学习笔记(2)

    目录 汇总 学习笔记 汇总 在关键交通场景中,轨迹规划和轨迹跟踪控制是自动驾驶车辆避免碰撞的两个关键.它不仅需要系统功能,而且需要强大的实时性. 我们集成了自动驾驶汽车的轨迹规划器和跟踪控制器,通过轨 ...

  7. TLD7002学习笔记(一)-芯片介绍

    文章目录 1. 前言 2. TLD7002-16ES简介 3. TLD7002-16ES基本功能介绍 3.1 引脚和功能框图 3.2 状态机 3.2.1 正常工作时状态机 3.2.2 OTP烧录或者仿 ...

  8. CV学习笔记 | CV综述 [2020.10.01]

    文章目录 0. 概述(整理完后随时修改) 1. 人工神经网络 1.1. 人工神经网络发展历程 1.2. 一些神经元节点的工作原理 1.2.1. 基本神经元 1.2.2. 卷积神经元(Convoluti ...

  9. 788_AUTOSAR_RS_SystemTemplate3_通信2_时序以及SAE J1939等

    全部学习汇总: GitHub - GreyZhang/hack_autosar: learning autosar documents, aha, very hard! 继续学习AUTOSAR的文档, ...

  10. 网上某位牛人的deep learning学习笔记汇总

    目录(?)[-] 作者tornadomeet 出处httpwwwcnblogscomtornadomeet 欢迎转载或分享但请务必声明文章出处 Deep learning一基础知识_1 Deep le ...

最新文章

  1. 【前端】layui日期控件点击一闪而过解决方法
  2. linux rsync
  3. Logistic and Softmax Regression (逻辑回归和Softmax回归)
  4. eclipse中maven的user settings和global settings的区别
  5. 【Python】洛谷 P1175_表达式的转换(逆波兰式、中缀表达式、后缀表达式、栈)
  6. CPU高速缓存行对齐和代码优化
  7. 使用 keytool 生成安卓应用程序签名
  8. Asp.Net 构架(HttpModule 介绍) - Part.3
  9. linux 查看磁盘管理,linux下的磁盘管理
  10. 小结Python的中文处理(转)
  11. 第一篇 你好,我叫Flask
  12. 熊猫烧香病毒源码及分析
  13. 推荐25个值得收藏的前端开源Awesome项目
  14. python与爬虫-02复杂的HTML解析
  15. Take Your Seat
  16. 【华为OD机试真题 JAVA】数字涂色
  17. Gartner发布2021年隐私技术成熟度曲线,数字伦理登上顶点
  18. php 队列取并集,php多个数组并集、交集和差集操作函数总结
  19. php把文字写到图片生成
  20. -Xdebug 启动命令详解和使用

热门文章

  1. signature=c9b7b92b79e9a32ac6be9993bfe5df5a,这字幕= =太销魂了
  2. Ubuntu安装sqlmap
  3. 怎么样学好c++_怎么样
  4. 【CPLEX教程01】Cplex介绍,下载和安装Cplex
  5. 在浏览器上打开swf文件时变成了下载swf文件解决方式
  6. 射频电子电路设计图集---研读
  7. 万年历算法介绍(C程序)
  8. GPS坐标与UTM坐标的转换
  9. 日期,时间相关R代码
  10. 做下一个互联网时代的“水电公司”——融云的通信云视野与蓝图