SAEJ1939学习笔记转.docx

上传人:b****2 文档编号:3387846 上传时间:2023-05-05 格式:DOCX 页数:13 大小:50.94KB
下载 相关 举报
SAEJ1939学习笔记转.docx_第1页
第1页 / 共13页
SAEJ1939学习笔记转.docx_第2页
第2页 / 共13页
SAEJ1939学习笔记转.docx_第3页
第3页 / 共13页
SAEJ1939学习笔记转.docx_第4页
第4页 / 共13页
SAEJ1939学习笔记转.docx_第5页
第5页 / 共13页
SAEJ1939学习笔记转.docx_第6页
第6页 / 共13页
SAEJ1939学习笔记转.docx_第7页
第7页 / 共13页
SAEJ1939学习笔记转.docx_第8页
第8页 / 共13页
SAEJ1939学习笔记转.docx_第9页
第9页 / 共13页
SAEJ1939学习笔记转.docx_第10页
第10页 / 共13页
SAEJ1939学习笔记转.docx_第11页
第11页 / 共13页
SAEJ1939学习笔记转.docx_第12页
第12页 / 共13页
SAEJ1939学习笔记转.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

SAEJ1939学习笔记转.docx

《SAEJ1939学习笔记转.docx》由会员分享,可在线阅读,更多相关《SAEJ1939学习笔记转.docx(13页珍藏版)》请在冰点文库上搜索。

SAEJ1939学习笔记转.docx

SAEJ1939学习笔记转

转自

SAEJ1939学习笔记

(一)

1.总线布局

2.差分信号线

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

 

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

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

250K波特率时,在J1939高、低导线间的电压从0到1每秒变化250K次是可能的。

用一个高频示波器可以看到此电压变化。

3.ISO标准对应

–Layer1– J1939/11:

  物理层,物理介质,总线的设计, 长度,节点,等等.

–Layer2– J1939/21:

  数据层,定义分类PGN信息/传输协议.

–Layer3– J1939/31:

   网络层,定义不同网络互连之间的转换技术。

–Layer7– J1939/71:

   应用层,信息分享、解析。

J1939/73:

   应用层,故障信息。

4.术语

SPN–特定参数–特定参数对应的号码,例如:

        SPN190= 发动机转速

        SPN513=% 扭矩

PGN –参数组号码–总线上的信息被以“组”的形式广播,例如:

  PGN61444=发动机控制器#1(EEC1)

  PGN61444=SPN190,SPN513,等等.

 发动机转速和扭矩百分比都属于PGN61444参数组。

优先级–告诉ECM接收的信息的重要性:

   0= 最重要

   6= 最不重要

  例如:

如果变速箱用优先级3请求发动机升速,而牵引控制器用优先级0请求发动机降速,最终发动机会选择降速。

源地址和目的地址–指示信息是从哪一个控制器发出,或发送到哪一个控制器。

  00h–发动机控制器--主机

  01h–发动机控制器--辅机

  03h–变速箱

5.CAN标准帧和扩展帧

标准帧只有11位的标识符(ID)

扩展帧有11+18=29位标识符(ID)

以后均以扩展帧作介绍。

6.协议数据单元(PDU)

标识符+数据域=协议数据单元(PDU)。

7.参数组编号(PGN)

PGN(ParameterGroupNumber)参数组编号:

参数组编号唯一标识一个参数组,在通讯过程中起到“索引”的作用,表征报文的内容和用途,确定报文的类型和传播数据需要的帧数目。

可以理解为同类(或者有共同特征的设备)参数的集合的索引。

SAEJ1939中的格式规定如下:

pgn61443–ElectronicEngineController#2–EEC2–

TransmissionRepetitionRate:

50ms    ->信息发送周期

DataLength:

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

DataPage:

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

PDUFormat:

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

PDUSpecific:

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

DefaultPriority:

            3    ->优先级 

ParameterGroupNumber:

           61443(00F00316)        ->PGN

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

1.1                       2bits            AcceleratorPedalLowIdleSwitch    558                ->1.1表示第一个字节第一位

1.3                       2bits            AcceleratorPedalKickdownSwitch   559                ->2bits表示该SPN对应的数据长度

1.5                       2bits            RoadSpeedLimit                1437

2                         1byte           AcceleratorPedalPosition           91

3                         1byte           PercentLoadatCurrentSpeed       92

4                         1byte           RemoteAccelerator               974

8.特定参数号(SPN)

spn91–AcceleratorPedalPosition– Theratioofactualacceleratorpedalpositiontomaximumpedalposition. AlthoughitisusedasaninputtodeterminetransmissionandASRalgorithmsaboutdriver’sactions.

DataLength:

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

Resolution:

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

DataRange:

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

Type:

                                Measured

SuspectParameterNumber:

        91           ->SPN号

ParameterGroupNumber:

           [61443]       ->隶属的PGN号

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

如下是一个实际的 J1939信息

 0.10001 OCF00300x   Rx  d8 7DC3 C02DFFFFFFFF

转换步骤:

   十六进制转成十进制

   乘以转换系数

   加上偏置

举例:

查询PGN:

SPN110如下:

SPN175:

SAEJ1939学习笔记

(二)

特殊的J1939信息(车辆控制)

>pgn0-TSC1

>pgn65226-DM1

>pgn60160&pgn60471–TP.BAM

pgn0-TSC1  扭矩/速度控制

TSC1 允许三种方式控制发动机:

 - 扭矩控制 (0%->100%)

 - 速度控制 (低怠速 ->高怠速)

 - 扭矩/速度限制(两者之中的低者)

例如:

1、变速箱在换档时会利用此命令控制发动机转速;

    2、车辆控制器利用此命令控制发动机转速;

    3、牵引控制器利用此命令控制发动机的扭矩来防止车辆打滑

pgn0-Torque/SpeedControl#1-TSC1-

TransmissionRepetitionRate:

     whenactive;10mstoengine,50mstoretarder

DataLength:

                          8bytes

DataPage:

                     0

PDUFormat:

                         0

PDUSpecific:

                       DA

DefaultPriority:

              3

ParameterGroupNumber:

          0(00000016 )

BitStartPosition/Bytes LengthSPNDescription                   SPN

1.1                           2bits          OverrideControlMode                695

1.3                           2bits          RequestedSpeedControlConditions  696

1.5                           2bits          OverrideControlModePriority    897

2-3                           2bytes     RequestedSpeed/SpeedLimit      898

4               1byte      RequestedTorque/TorqueLimit     518

数据域举例如下:

相应SPN介绍

SPN695 - OverrideControlMode

  00–Overridedisable

 01–SpeedControl–GovernstoadesiredSpeed

 10–TorqueControl–MaintainsadesiredTorquevalue

 11–Speed/TorqueLimitControl–Controlstothelowestvalue.

SPN897 -OverrideControlModePriority

 00–HighestPriority

 01–HighPriority

 10–MediumPriority

 11–LowPriority

SPN696- RequestedSpeedControlConditions

 Basedonthesebits(bits4,3inbyte1)uptoFour(4)differentASGgainsets canbeappliedDYNAMICALLY.

 00 =Gainset 1   

 01 =Gainset2  

 10 =Gainset 3

 11 =Gainset 4

 ThiscanbeasignificantadvantagewhentheTSC1isbeingusedinspeedcontroltoaccomplishtheapplication’sintendedfunction. 

 Ex:

 Improveloadpickupduringloadedoperationsandthenswitchtodifferentgainsetforstabilityduringlightloading.

spn898- RequestedSpeed/SpeedLimit -

 Thisistheenginespeedwhichtheengineisexpectedtooperateatifthespeedcontrolmodeisactiveortheenginespeedwhichtheengineisnotexpectedtoexceedifthespeedlimitmodeisactive.

 DataLength:

                 2bytes

 Resolution:

              0.125rpm/bit,0offset

 DataRange:

              0to8,031.875rpm

 Type:

                      Status

 SuspectParameterNumber:

       898

 ParameterGroupNumber:

      [0]        ->PGNNofrompreviousslide

 AsthisisanSPN,don’tforgettoByteSwapwhenconvertinghence     01000000 00111000 swappedis 0011100001000000

 Toconvertinformation

-CovertBinarytoDecimal

-MultiplybyResolution

-AddOffset

Hence:

 00111000 01000000=3840h

ConverttoDec:

 3840h =14400Dec

Multiplyby0.125:

 14400x0.125=1800

Add0:

 1800+0=1800

Result:

 1800rpm

spn518-RequestedTorque/TorqueLimit - Thisistheenginetorqueatwhichtheengineisexpectedtooperateifthetorquecontrolmodeisactiveortheenginetorquewhichtheengineisnotexpectedtoexceedifthetorquelimitmodeisactive.

DataLength:

                      1byte

Resolution:

                  1%/bit,-125%offset

DataRange:

                    -125to125%

OperatingRange:

           0to125%enginetorquerequests

Type:

                            Status

SuspectParameterNumber:

           518

ParameterGroupNumber:

             [0]    ->PGNNofrompreviousslide

Hence:

   10010110=96h

ConverttoDec:

 96h =150Dec

Multiplyby1:

 150x1=150

Add-125:

 150-125=25

Result:

 25%TQ

SAEJ1939学习笔记(三)

J1939故障代码种类

J1939由几个不同的诊断信息:

  –诊断信息1-DM1–现行故障代码

  –诊断信息2-DM2–非现行故障代码

  –诊断信息3-DM3–清除非现行故障代码

通常地,用户会用DM1信息来读取现行故障码。

DM1信息是 PGN65226 or FECAh。

相关的信息请参考J1939-73标准。

PGN65226

pgn65226–ActiveDiagnosticTroubleCodes–DM1 

TransmissionRepetitionRate:

WhenafaultgoesActive/Inactive&1swhileactive.

DataLength:

            Variable

Datapage:

              0

PDUFormat:

                          254

PDUSpecific:

                         202

DefaultPriority:

           6

ParameterGroupNumber:

           65226(00FECA16)

Byte:

     1            LampStatus

Byte:

    2            Reserved

Bytes:

    3–5           SPNandFMI

Byte:

     6Bit:

8                 SPNConversion

Byte:

    6Bits:

1–7       OccurrenceCount

注意:

1.参考文件中例子字节和我引用的例子字节的描述序列均为:

12345678...(字节)。

   2.参考文件中例子字节和我引用的例子字节的描述位序列均为:

87654321(位),即第一个数描述为第8位,依次递减,最小序号为1。

如上例中,字节6的描述第8位则为第1个数。

     注:

当实际需要计算的时候,或者其他应用的时候,仍然在前的为高位,并不需要做位调整,只是称呼不同而已。

   3.J1939字节排序为小端模式,即为高字节在后,低字节在前(多字节),所以实际计算的时候,如在数据域表示为8AA1,则实际的计算数据应为A18A。

(所有数据(不论多少个字节)都是最后一个字节为最高字节,这和16位或32为单片机有出入)(特殊情况例外,如下例的SPN)

Byte1–LampStatus

§Bits1–2 ProtectionLamp       保护灯状态

§Bits3–4 AmberWarningLamp      琥珀色警告灯状态

§Bits5–6 RedStopLamp        红色停止灯状态

§Bits7–8 MalfunctionIndicatorLamp  故障指示灯状态

Bytes3-5

  该19位的数字是用于识别报告的诊断项目。

SPN用于多种目的,专用于诊断的有:

(1)用于识别可修复的失效最小子系统;

(2)用于识别子系统或集成部件可能并无严重故障,但存在运行不正常;(3)识别一个将要告知的专门事件或情况;以及(4)用于报告部件和非标准的故障模式。

可疑参数与参数组中相关参数或与诊断项目一一对应,但并不是参数组中的参数本身。

可疑参数编号与发送故障诊断信息的控制模块的地址编码无关,然而,有必要通过控制模块的地址编码来确定故障诊断信息是由网络上的哪个控制器来执行诊断的。

 初始的511个SPN是预置SPN,并将使用与在SAEJ1587中使用的参数标志符(PID)完全相同的编号。

也就是在报告加速踏板故障时,该参数标志符在SAEJ1587中定义为PID91,而SPN的编号就定义为SPN91。

所有其他的SPN将从512开始继续编号,且每加一作为一个新的赋值。

生产厂可自定义可疑参数,编号自520192至524287, 多达4096个。

  该FMI定义了为SPN所识别的子系统中发现的故障类型。

注意,该故障可能不是电子故障,但相反可能是需要报告给设备技术员甚至操作员的子系统故障或条件,这些条件包括需要报告的系统事件或状态。

FMI、SPN为预留的和发生次数域组合已知的诊断故障代码。

如果另外的故障模式是必需的,FMI将由CATARC来赋值。

 

数据长度:

   5位 

分辨率:

   1FMI/位 

数据范围:

  0~31 

类型:

    状态 

可疑参数编号:

 1215 

                -《商用车控制系统局域网络(CAN总线)通讯协议,第6部分:

应用层—诊断》

TheSuspectParameterNumber(SPN)isconvertedintodecimaldependingontheConversionBit(6.8).

Byte6,Bit8:

tellsuswhichmethodisusedinterprettheSPN。

All Mid-RangeandHeavyDuty willhavea‘0’inthispositionhenceConversionMethod0(J1939Version4)。

All HighHorsePower willhavea‘1’inthispositionhenceConversionMethod1(J1939Version1)。

UsedbyMid-RangeandHeavyDuty(QSB,QSC,QSM,QSX):

SPN=000 00000010 01110101=629

FMI=01100=12

SPN629,FMI12=FaultCode111–Eng

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2