[接口-信号链]

SENT协议输出的三轴霍尔位置传感器加速汽车数据传输

[复制链接]
1111|0
手机看帖
扫描二维码
随时随地手机跟帖
airwill|  楼主 | 2019-10-9 11:11 | 显示全部楼层 |阅读模式
SENT协议输出的三轴霍尔位置传感器加速汽车数据传输

SENT(Single Edge Nibble Transmission Protocol)协议是一种点对点的单边半字节传输协议。广泛应用于汽车及运输行业中,对汽车中传感器和电子控制单元(ECU)之间高清传感器数据的传输起到了良好的作用。

传感器数据的传输是通过两个相邻周期的下降沿之间的一系列脉冲来实现,信号开始时SENT提供一个参考校准脉冲,结束时提供一个检验位。报文的长度随着半字节的值而不同。相对于模拟输出和PWM输出,SENT(SAE J2716)汽车传感器新型接口标准具有很好的EMC特性,节省线束和插针结头并且具有很强的传输故障代码诊断能力。

1479458367776095806th.jpg

图1: SENT协议的报文格式


SENT协议有SENT2008和SENT2010两种,SENT2008一帧数据的长度包含8个Nibble和1个校验位(1个Nibble由4个Bit组成;Nibble值的范围是0到15,由12到27个Tick表示),1个节拍(ticks)作为时间单位,其范围3到10us,一般是3us。SENT2010一帧数据的长度包含8个Nibble,1个校验位及1个可变暂停位。

SENT报文起始位是一个同步脉冲,该脉冲与后续的下降沿之间的时间间隔等效于56个时钟节拍。同步脉冲之后,状态/通信半字节按照SENT格式传送状态和/或慢速通道数据位。数据通过4个数据位为一个单元来传输,或称“半字节”。用半字节时,原始逻辑0时间是一个固定的5个或更多个节拍,跟着是可变周期的逻辑1。总半字节时间计算节拍单位中编码4位的数据。12个节拍=二进制0000(16进制0),13个节拍=二进制0001(16进制1),14个节拍=二进制0010(16进制2)等等。在每条报文的尾部插入一个固定长度不超过1ms的暂停脉冲。

对于SENT协议的解析,可以通过带SENT协议解析模块的示波器来实现,但目前带这个功能的示波器都比较贵,而对于使用这种SENT输出的传感器的系统设计工程师来说,可以通过MCU定时器的Capture 功能来实现(目前也有带SENT协议模块的MCU,如RENESAS的RH850/P1X系列)。现以[color=#2655a5 !important]Melexis
的[color=#2655a5 !important]三轴霍尔位置传感器
[color=#2655a5 !important]MLX90324
(2008版本的SENT协议)和[color=#2655a5 !important]MLX90367(2010版的SENT协议)为例,来讲解SENT协议的解析过程。

图2:MLX90324应用电路连接图



1478152886408028022th.jpg

图3:MLX90367应用电路连接图


SENT解析是通过定时器的输入捕捉中断功能实现的,捕捉2次下降沿之间的时间大小来解析代表的数值。进入中断先判断帧头,然后判断出所选的芯片,是基于哪个版本的SENT协议,进而可以判断接收多少个Nibble的数据2008协议需要接收8个Nibble信息,2010协议需要接收9个Nibble信息,这样就完成一帧数据的接收,开始CRC验证,验证通过后解析SENT信息中的角度数据。程序流程图如图4。


1478153117964082355th.jpg

图4:SENT协议解析流程图


总结

SENT协议输出方式和PWM输出相比,具有更高的数据传输速度、更高的可靠性,抗干扰性能也更好,并且具有很强的故障诊断能力。这些特性与未来的智能汽车,是非常契合的,相信在汽车以及其他的工业自动化领域,这种SENT协议输出的智能传感器的应用会越来越多。




使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:欢迎进入 TI 模拟技术论坛!

556

主题

17722

帖子

883

粉丝