02 汽车软件开发之SENT协议简介


SENT信号介绍

一、SENT背景介绍

提到车载总线,我们会立马想到经济可靠的CAN、Lin以及成本过高的FlexRay或Ethernet总线。但随着车载传感器数量的增加和对测量精度要求的提升,需要一种相比CAN或Lin更便捷、可靠、经济的车载数据通讯解决方案。GM公司根据这种需求,首先制定了SENT标准,后来成为SAE J2716标准。随后一些公司在动力系统中逐渐采用该标准,并应用在整车传感器、执行器及Drive-by-wire线控等子系统中,总之目前越来越多的传感器都已支持SENT类型的信号。


二、SENT定义及优势

SENT全称:Single Edge Nibble Transmission,中文名称为:单边半字传输协议,是SAE推出的一种点对点的、单向传输的方案,被用于车载传感器和电子控制单元(ECU)之间的数据传输,其主要特点如下:

  1. 无需接收器和集成发射器,因此相比CAN或Lin成本更低,且具有不错的传输精度和速度,数字数据传输速度可达30kb/s。
  2. 单线数据传输,减少信号线,加上电源和地线,总共3线;单向传输协议,数据只能从传感器到ECU,传输是连续的,不需要请求命令。
  3. 由帧来传输数据,或者数据包的形式,每一帧由不同宽度的脉冲即半字节组成,数据的传输可以分为快速通道慢速通道,重要的信号用快速通道以实现高频率的更新,比如压力等,对于非关键的信号,如诊断等可以放在慢速通道传输(快速通道是每一帧传输一个完整的信号,慢速通道需要多帧来传输一个完整的信号,即更新频率不同),比如温度等。

因此SENT(SAE J2716) 作为一种汽车传感器的新型接口标准,较AD和PWM 输出相比,具有很好的EMC特性并节省线束和插针结头,且能传输故障代码从而使传感器系统具有很强的故障诊断能力。基于协议简单和上述优势,SENT可作为Analog Input的替代品,并可在局部系统中取代CAN和Lin。但却不能全部替代CAN或是Lin。因为SENT是连续单向传输的,CAN和Lin都是双向传输

在这里插入图片描述

Figure1. SENT传感器拓扑结构
Table1. RECEIVER INPUT REQUIREMENTS

在这里插入图片描述


三、SENT信号帧介绍

3-1、SENT传输序列

SENT信号通过两个下降沿周期之间的一系列脉冲序列来传输,SENT报文以一个同步脉冲开始,该脉冲与后续的下降沿之间的时间间隔等效于56个时钟节拍;同步脉冲之后,状态/通信半字节按照SENT格式传送;随后紧接着就是6个含有传感器数据的Data Nibbles,数据通过4个数据位为一个单元来传输,或称“半字节”(一个半字节即一个Nibble);在每条报文的尾部会提供一个检验脉冲并插入一个固定长度不超过1ms的暂停脉冲,因此SENT报文的长度会随着半字节的值而有不同。

SENT信号每一帧主要包含如下五部分:
在这里插入图片描述

Figure2. EXAMPLE ENCODING SCHEME FOR TWO 12 BIT SIGNALS
  1. Synchronization/calibration pulse (包含56个 clock ticks)。
  2. 一个Nibble(即4个Bits)的Status and Serial Communication pulse (12~27clock ticks)。
  3. 连续6个Nibbles的data pulses (每个Nibble:12~27 clock ticks)。
  4. 一个Nibble(即4个Bits)的 CRC及checksum pulse(12~27 clock ticks)。
  5. 一个可选的 pause pulse。

因此,一个半字节代表4个Bits(即一个Nibble),由于一个半字节可以表示0000 ~ 1111数值范围,因此可通过6个Nibble的大小来表示传感器数据,而每个Nibble的大小可通过时钟节拍tick的个数来表示,根据协议每个Nibble大小由12~27个ticks来表示,如下所示:
在这里插入图片描述

Figure3. EXAMPLE NOMINAL NIBBLE TIMES

在这里插入图片描述

Figure4. CONTINUED EXAMPLE NIBBLE VALUES

在这里插入图片描述

Figure5. CONTINUED EXAMPLE NIBBLE VALUES

3-2、SENT实际示例

一个时钟节拍tick表示时间单位,其范围为3~10us,一般为3us。时钟节拍大小的确定本文以一个例子为例说明:SENT信号传输时会有一时钟计时每个脉冲所占用的时间,例如同步脉冲在此例总共耗用了168us,由于每个同步脉冲由56个ticks组成,那么每个时钟节拍为3us
在这里插入图片描述

Figure6. SENT信号示例

在这里插入图片描述

Figure7. SENT信号解析

一帧SENT报文包含1个同步脉冲、8个Nibbles和1个可选暂停脉冲。SENT协议有SENT 2008和SENT 2010、SENT2016两种,SENT 2008一帧数据结尾会包括1个校验位,而SENT 2010、SENT2016一帧数据结尾除了包含1个校验位还有1个可变暂停位


3-3、SENT Status/Com Bit

以上是SENT总线协议中一帧报文的基本定义即功能,SENT 总线协议的高级功能是将多帧报文组合以实现更高复杂的通信功能,一般用于传输传感器的附加信号,比如温度,故障码和传感器类型信息等。下表定义了该位信息:

Table2. STATUS AND COMMUNICATION NIBBLE DESCRIPTION

在这里插入图片描述

Note that the Status and Communication Nibble is not included in the frame CRC calculation and therefore can have a higher occurrence of non-detected errors.


3-3-1、Short Serial Message Format

串行数据(逐位)在来自发送器的连续消息的状态和通信半字节的第2位中传输。如CONSTRUCTION OF SHORT SERIAL DATA MESSAGE FROM 16 SENT MESSAGES所示,串行数据将以16位序列进行通信。串行消息的起始位由Status/Com字段的第3位中的“1”表示,接下来接收的15个帧必须在此相同的第3位位置包含值“0”。为了接收到串行值,所有16个帧都必须成功接收(无错误、校准脉冲变化、数据半字节CRC错误等)

16位消息包括一个4位消息ID半字节、2个半字节(1字节)的数据和一个CRC校验和半字节。CRC校验和是为消息ID和2个数据半字节计算得出的,并且使用与SENT CRC半字节计算相同的校验和算法。消息ID用于识别数据字节中正在传输的数据类型。实际的串行数据消息ID和数据值是特定于应用的。

在串行数据位(第2位)中传输的所有数据都是按照从最高有效位到最低有效位的顺序发送的。

CONSTRUCTION OF SHORT SERIAL DATA MESSAGE FROM 16 SENT MESSAGES

Figure8. CONSTRUCTION OF SHORT SERIAL DATA MESSAGE FROM 16 SENT MESSAGES

3-3-2、Enhanced Serial Message Format

传感器可以使用可选的增强型串行报文格式,它需要一个具有更大数据字段和更多报文 ID 的串行通信通道。如果使用增强型串行报文通道,串行数据将在状态和通信位码的第 2 位和第 3 位传输。一个串行报文帧由发射端发出的 18 个连续 SENT 数据报文组成。 必须成功接收所有 18 个报文帧(无差错、校准脉冲变化、数据字节 CRC 错误等),才能接收到串行值。

串行消息帧的起始由状态和通信半字节的第3位中的独特模式“01111110”指示。在一系列六个“1”(后面跟着一个“0”)中的第一个“1”表示串行消息帧的第一个半字节。序列号1至6的串行通信半字节的串行数据位#3被设置为“1”。而序列号7、13和18的串行通信半字节的串行数据位#3被设置为“0”

串行消息帧包含21位的有效载荷数据。可以根据**配置位(串行数据位#3,串行通信半字节数8)**选择两种不同的配置:

  • 12位数据和8位消息ID(配置位 = 0)
  • 16位数据和4位消息ID(配置位 = 1)
    在这里插入图片描述
Figure9. CONSTRUCTION OF ENHANCED SERIAL DATA MESSAGE FROM 18 SENT MESSAGES

(1)Status/Com 字段 bit3 组合的第 8 位为 0
在这里插入图片描述

Figure10. ENHANCED SERIAL MESSAGE FORMAT WITH 12-BIT DATA FIELD AND 8-BIT MESSAGE ID

(2)Status/Com 字段 bit3 组合的第 8 位为 1
在这里插入图片描述

Figure11. ENHANCED SERIAL MESSAGE FORMAT WITH 16-BIT DATA FIELD AND 4-BIT MESSAGE ID

All data (data field, message ID and CRC) that is transmitted in the serial message channel is sent in the order MSB
(most significant bit) to LSB (least significant bit).
The mapping and the order of the data bits, the message ID, the
configuration bit and the CRC is detailed in Figure 10 for the configuration 12-bit data + 8-bit ID and in Figure 11 for
the configuration 16-bit data and 4-bit ID.


3-3-3、Enhanced Serial Message Format CRC

This CRC-value is computed as a function of the contents of Serial data message bits #2 and #3 for frames 7-18 (the 12-
bit data field, the 8-bit message ID, the configuration bit and “0” bits 7, 13 and 18). For purposes of the CRC calculation,
the bits shall be ordered: m = [Frame 7 bit#2, Frame 7 bit #3, Frame 8 bit #2, Frame 8 bit #3 … Frame 18 bit #2, Frame 18,
bit #3], see Figure 5.2.4.3-1. These bits contribute to the message data m = [m0 m1 m2 ……. m21 m22 m23]. Bit m0
(which corresponds to frame bit D11 is the first received bit that is read-in for CRC generation, as illustrated in the lower
half of Figure 12.

在这里插入图片描述

Figure12. ORDER OF THE MESSAGE BITS, 24-BIT MESSAGE USED FOR CRC GENERATION

The encoding is defined by the generating polynomial. G(x) = x ^ 6+x ^ 4+x ^ 3+1. with seed value 010101 (0x15 hex, 21 dec).


四、SENT实际应用

4-1、SENT开发工具

  1. 芯片:RH850/U2A
  2. 传感器:HuaYang科技产品手册
  3. 手册:RH850数据手册

4-2、SENT传感器解读

4-2-1、机械结构

在这里插入图片描述

Figure13. SENT传感器机械结构
4-2-2、电器参数

在软件开发前期需要了解传感器的相关参数,比如压力值范围,温度值范围,上电时间,供电电压范围,双通道的Cnt值范围等等信息。

在这里插入图片描述

Figure14. SENT传感器电气参数

4-2-3、使用标准

SENT传感器协议标准

Figure15. SENT传感器协议标准

4-2-4、术语缩写

在这里插入图片描述

Figure16. ACRONYMS, ABBREVIATIONS, AND SYMBOLS

4-3、SENT传感器数据

结合Figure15. SENT传感器协议标准可知,该类型的传感器是P/P/T。也就是Fast Channel1(Data Nibbles 1 - 3)表示Pressure 1,Fast Channel2(Data Nibbles 4 - 6)表示Pressure 2,Slow channel(status and communication nibble)表示传感器特定参数和补充测量数据(传输特性、传感器 ID、类型、制造商) 或者诊断、补充测量数据(如温度)。将 SENT数据字节分配给Fast Channel1、Fast Channel2 以及传输慢速串行通道的状态和通信字节的情况,具体见下图:
在这里插入图片描述

Figure17. DATA CHANNELS FOR PRESSURE SENSORS AND COMBINED PRESSURE AND TEMPERATURE SENSORS

具体解释一下Fast Channel1、Fast Channel2及Error Flags等信息,具体如下

  1. Fast Channel 1
    • Data order:
      • data nibble 1: Channel 1 measurement data MSN
      • data nibble 2: Channel 1 measurement data MidN
      • data nibble 3: Channel 1 measurement data LSN
    • Error Flags
  2. Fast Channel 2
    • Data order:
      • data nibble 4: Channel 2 measurement data LSN or secure sensor counter MSN
      • data nibble 5: Channel 2 measurement data MidN or secure sensor counter LSN
      • data nibble 6: Channel 2 measurement data MSN or secure sensor inverted copy of nibble 1
    • Data vector (ordered MSB to LSB) is first divided into 4-bit groups corresponding to the nibbles order of Channel 1. The nibble order of Channel 2 is then reversed.
    • Error Flags

在这里插入图片描述

Figure18. ALLOCATION OF THE BITS OF THE STATUS AND COMMUNICATION NIBBLE

4-4、SENT Slow Channel

由于本传感器是Enhanced Serial Message Format格式,其中C = 0,则是慢通道是由12 bit 数据和8 bit ID组成。(0xFFF = 4095,12 bit)
在这里插入图片描述

Figure19. SENT慢通道解析

4-5、SENT 12-bit Pressure&Temperature Indices

SENT 12-bit压力指数 Y1 和 Y2 用于将物理值压力指数映射为 12-bit SENT 值。SENT 12-bit压力指数有两种可选形式:

  • 默认值
  • 通过慢速串行信息通道传输的传感器特定值

如果没有通过串行通道传输 Y1 和 Y2 值,则应使用Figure20. GUARANTEED PRESSURE RANGE, OUT-OF-RANGE VALUES AND SIGNALING DATATable3. PARTITIONING OF THE PRESSURE DATA SPACE WITH DEFAULT Y1 AND Y2 : (Y1=193, Y2=3896)中规定的数据空间默认分区(Y1=193,Y2=3896)。该表还规定了默认的保证压力范围、超出范围值和信号数据。
在这里插入图片描述

Figure20. GUARANTEED PRESSURE RANGE, OUT-OF-RANGE VALUES AND SIGNALING DATA
Table3. PARTITIONING OF THE PRESSURE DATA SPACE WITH DEFAULT Y1 AND Y2 : (Y1=193, Y2=3896)

在这里插入图片描述

如果使用慢速串行信息通道传输发送的12-bit压力指数 Y1 和 Y2,则 Y1 和 Y2 应在 12-bit数据的压力数据范围内,该范围由低钳位 (=1) < 压力范围 < 高钳位 (=4088) 定义。超出有效范围的 Y1、Y2 值将导致未定义状态。

  1. 传感器压力换算
    在这里插入图片描述
Figure21. P1 Transfer Curve(FC1)

在这里插入图片描述

Figure22. Pressure Sensor Transfer Functions

  1. 传感器温度换算
    在这里插入图片描述
Figure23. Temperature Transfer Curve(Slow Channel)

4-6、SENT Diagnostic Trouble Code(DTC)

在这里插入图片描述

Figure24. SENT Diagnostic Trouble Code

参考文献

  1. SAE J2716_201001 (SENT协议).pdf
  2. SAE J2716_201604 (SENT协议).pdf
  3. https://www.renesas.cn/zh/products/microcontrollers-microprocessors/rh850-automotive-mcus/rh850u2a-zonedomain-microcontroller-series#documents
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值