SAEJ1939学习笔记转Word文档格式.docx
《SAEJ1939学习笔记转Word文档格式.docx》由会员分享,可在线阅读,更多相关《SAEJ1939学习笔记转Word文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
以后均以扩展帧作介绍。
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
AcceleratorPedalKickdownSwitch
559
2bits表示该SPN对应的数据长度
1.5
RoadSpeedLimit
1437
2
1byte
AcceleratorPedalPosition
91
3
PercentLoadatCurrentSpeed
92
4
RemoteAccelerator
974
8.特定参数号(SPN)
spn91–AcceleratorPedalPosition–
Theratioofactualacceleratorpedalpositiontomaximumpedalposition.
AlthoughitisusedasaninputtodeterminetransmissionandASRalgorithmsaboutdriver’sactions.
1Bytes
SPN号对应的数据的长度
Resolution:
0.4%/bit,0offset
计算方式(见下)
DataRange:
0to100%
数据范围(涉及偏移量计算)
Type:
Measured
SuspectParameterNumber:
91
SPN号
[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-
whenactive;
10mstoengine,50mstoretarder
8bytes
0
DA
3
0(00000016
)
BitStartPosition/Bytes
LengthSPNDescription
SPN
1.1
2bits
OverrideControlMode
695
1.3
RequestedSpeedControlConditions
696
1.5
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
3
11
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.
1byte
1%/bit,-125%offset
-125to125%
OperatingRange:
0to125%enginetorquerequests
Status
518
[0]
10010110=96h
96h
=150Dec
Multiplyby1:
150x1=150
Add-125:
150-125=25
25%TQ
SAEJ1939学习笔记(三)
J1939故障代码种类
J1939由几个不同的诊断信息:
–诊断信息1-DM1–现行故障代码
–诊断信息2-DM2–非现行故障代码
–诊断信息3-DM3–清除非现行故障代码
通常地,用户会用DM1信息来读取现行故障码。
DM1信息是
PGN65226
or
FECAh。
相关的信息请参考J1939-73标准。
PGN65226
pgn65226–ActiveDiagnosticTroubleCodes–DM1
WhenafaultgoesActive/Inactive&
1swhileactive.
Variable
Datapage:
254
202
6
65226(00FECA16)
Byte:
1
LampStatus
2
Reserved
Bytes:
3–5
SPNandFMI
6Bit:
8
SPNConversion
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)。
HighHorsePower
willhavea‘1’inthispositionhenceConversionMethod1(J1939Version1)。
UsedbyMid-RangeandHeavyDuty(QSB,QSC,QSM,QSX):
SPN=000
00000010
01110101=629
FMI=01100=12
SPN629,FMI12=FaultCode111–EngineControlModule
–CriticalinternalFailure
UsedbyHighHorsePower(QSK,QST,QSKV):
SPN=00000000
01001110
101=629
FMI=0
1100=12
SPN629,FMI12=FaultCode111–