汽車技術(shù)不斷變化的今天,你不努力、不學(xué)習(xí),明天就有可能會(huì)被行業(yè)所淘汰!快來一起了解新技術(shù)、使用新工具、開拓新思路,爭(zhēng)做一名與時(shí)俱進(jìn)的汽車診斷師吧!
SENT(Single Edge Nibble Transmission)協(xié)議(SAE J2716)是一種傳感器與電子控制單元(ECU)之間的信號(hào)傳輸標(biāo)準(zhǔn),主要具有以下基本特點(diǎn)。
(1)它是一種數(shù)字信號(hào)傳輸協(xié)議,具有更高的傳輸精度和速度。
(2)單線傳輸數(shù)據(jù),1根信號(hào)線可傳輸多個(gè)數(shù)據(jù),能夠減少傳感器信號(hào)線數(shù)量,降低成本。采用SENT協(xié)議的傳感器只有3根導(dǎo)線,分別為1根5 V電源線、1根搭鐵線和1根SENT數(shù)據(jù)線。
(3)單向傳輸數(shù)據(jù),數(shù)據(jù)只能從傳感器到ECU,傳輸是連續(xù)的,不需要請(qǐng)求命令。
(4)傳感器數(shù)據(jù)的傳輸通過2個(gè)相鄰周期的下降沿之間的脈沖(即單邊半字節(jié))來實(shí)現(xiàn)。
(5)數(shù)據(jù)傳輸分為快速通道和慢速通道,重要的信號(hào)(壓力、溫度等)用快速通道傳輸,非關(guān)鍵的信號(hào)(如傳感器型號(hào)、診斷信息等)用慢速通道傳輸。
位(bit)表示二進(jìn)制位,只有0和1兩種狀態(tài)。bit為計(jì)算機(jī)內(nèi)部數(shù)據(jù)儲(chǔ)存的最小單位,比如00000011就是一個(gè)8 bit的二進(jìn)制數(shù)。字節(jié)(Byte)為計(jì)算機(jī)數(shù)據(jù)處理的基本單位,1個(gè)字節(jié)由8個(gè)二進(jìn)制位構(gòu)成,即1 Byte=8 bit。所以,將一個(gè)4 bit的二進(jìn)制數(shù)稱為半字節(jié),其范圍為0000~1111。
圖1為1個(gè)單邊半字節(jié)脈沖信號(hào),它主要由1個(gè)下降沿、1段低電平、1個(gè)上升沿和1段高電平組成?!皢芜叀本褪侵高@個(gè)下降沿,“半字節(jié)”是指這段脈沖信號(hào)代表著1個(gè)半字節(jié)信號(hào),比如對(duì)應(yīng)0011,具體的對(duì)應(yīng)關(guān)系下文有介紹。
圖1 單邊半字節(jié)脈沖信號(hào)
SENT報(bào)文(圖2)主要由5個(gè)部分組成,分別為同步段、狀態(tài)段、數(shù)據(jù)段、校驗(yàn)段和開放段,下面重點(diǎn)介紹同步段和數(shù)據(jù)段。
圖2 SENT報(bào)文
SENT協(xié)議規(guī)定,同步段(圖3)由56個(gè)時(shí)鐘節(jié)拍(tick)組成。通過同步段的時(shí)間即可計(jì)算出tick的時(shí)間,其范圍為3 μs~90 μs。例如同步段的時(shí)間為168 μs,則tick的時(shí)間為168 μs÷56=3 μs。計(jì)算tick的時(shí)間對(duì)數(shù)據(jù)段的數(shù)據(jù)計(jì)算有著重要意義。
圖3 同步段的時(shí)間
數(shù)據(jù)段(圖4)由6個(gè)單邊半字節(jié)脈沖信號(hào)組成,共24 bit,可以發(fā)送多個(gè)數(shù)據(jù)信號(hào)。以發(fā)送節(jié)氣門位置傳感器信號(hào)為例,前3個(gè)單邊半字節(jié)脈沖信號(hào)負(fù)責(zé)發(fā)送節(jié)氣門電位計(jì)1的信號(hào),后3個(gè)單邊半字節(jié)脈沖信號(hào)負(fù)責(zé)發(fā)送節(jié)氣門電位計(jì)2的信號(hào)。
圖4 數(shù)據(jù)段的組成
SENT協(xié)議規(guī)定,用單邊半字節(jié)脈沖信號(hào)的時(shí)間長(zhǎng)短來解析其代表的數(shù)據(jù),具體解析步驟如下。
(1)通過同步段的時(shí)間計(jì)算出tick的時(shí)間。
(2)用單邊半字節(jié)脈沖信號(hào)的時(shí)間除以tick的時(shí)間,得到對(duì)應(yīng)tick的數(shù)量。假設(shè)根據(jù)同步段計(jì)算出tick的時(shí)間為3 μs,則1個(gè)持續(xù)時(shí)間為81 μs的單邊半字節(jié)脈沖信號(hào)對(duì)應(yīng)的tick數(shù)為81 μs÷3 μs =27(圖5)。
圖5 單邊半字節(jié)脈沖信號(hào)tick數(shù)的計(jì)算
(3)用得到的tick數(shù)減去12,最終得到1個(gè)十進(jìn)制數(shù)。若tick數(shù)為27,則其對(duì)應(yīng)的十進(jìn)制數(shù)為27-12=15。
(4)將得到的十進(jìn)制數(shù)轉(zhuǎn)換為4 bit的二進(jìn)制數(shù)(即半字節(jié))。如將十進(jìn)制數(shù)15轉(zhuǎn)換為半字節(jié),為1111。由于半字節(jié)范圍為0000~1111,對(duì)應(yīng)的十進(jìn)制數(shù)范圍為0~15,所以一個(gè)單邊半字節(jié)脈沖信號(hào)對(duì)應(yīng)的tick數(shù)范圍為12~27。
如圖6所示,同步段為56個(gè)tick,狀態(tài)段為1個(gè)半字節(jié),有12個(gè)tick,對(duì)應(yīng)十進(jìn)制數(shù)為12-12=0,對(duì)應(yīng)半字節(jié)為0000。數(shù)據(jù)段1由3個(gè)半字節(jié)組成,共12 bit;第1個(gè)半字節(jié)有27個(gè)tick,對(duì)應(yīng)十進(jìn)制數(shù)為27-12=15,對(duì)應(yīng)半字節(jié)為1111;第2個(gè)半字節(jié)有17個(gè)tick,對(duì)應(yīng)十進(jìn)制數(shù)為17-12=5,對(duì)應(yīng)半字節(jié)為0101;第3個(gè)半字節(jié)有22個(gè)tick,對(duì)應(yīng)十進(jìn)制數(shù)為22-12=10,對(duì)應(yīng)半字節(jié)為1010。所以,數(shù)據(jù)段1對(duì)應(yīng)的數(shù)據(jù)代碼為1111 0101 1010,同理可知數(shù)據(jù)段2對(duì)應(yīng)的數(shù)據(jù)代碼為0010 1000 0000。
圖6 SENT報(bào)文對(duì)應(yīng)的數(shù)據(jù)計(jì)算
同步段的時(shí)間固定為56 tick,不會(huì)發(fā)生變化,而同步段、數(shù)據(jù)段及校驗(yàn)段的時(shí)間是隨著數(shù)據(jù)變化而發(fā)生變化的。
使用pico示波器可以捕捉SENT信號(hào)波形,并能對(duì)其進(jìn)行譯碼。在pico波形分析軟件上依次選擇“工具→串行譯碼→創(chuàng)建→SENT Fast”(圖7),然后設(shè)置通道號(hào)、閾值、tick時(shí)間及傳感器類型等(圖8),設(shè)置完成后點(diǎn)擊“確定”即完成快速通道(SENT Fast)的譯碼(圖9)。再按照上述方法完成慢速通道(SENT Slow)的譯碼,與快速通道的譯碼對(duì)比(圖10)可知,快速通道是每一幀傳輸一個(gè)完整的信號(hào),慢速通道需要用多個(gè)幀來傳輸一個(gè)完整的信號(hào)。
圖7 創(chuàng)建“SENT fast”譯碼(截屏)
圖8 設(shè)置“SENT fast”譯碼參數(shù)(截屏)
圖9 快速通道的譯碼(截屏)
圖10 快速通道和慢速通道的譯碼對(duì)比(截屏)