陳耿新 黃國健 劉桂雄
IEEE1451系列網(wǎng)絡(luò)化智能傳感器接口標準為實現(xiàn)傳感器網(wǎng)絡(luò)中通訊設(shè)備和現(xiàn)場總線多樣化奠定基礎(chǔ)。其中 IEEE1451.2規(guī)范了網(wǎng)絡(luò)化智能傳感器基本結(jié)構(gòu),包括智能變送器接口模塊 STIM (Smart Transducer Interface Module)、網(wǎng)絡(luò)適配器 NCAP(Network Capable Application Processor)以及建立它們聯(lián)系的接口TII (Transducer Independent Interface),通過一系列的讀寫邏輯操作功能,實現(xiàn)了傳感器的互連與互換。TII協(xié)議是一種通用技術(shù)規(guī)范,IEEE1451.2允許用戶在需要的情況下,改變標準推薦的傳輸模式,使其更好地發(fā)揮性能。文獻[1]分析了觸發(fā)、TII中讀/寫字節(jié)傳輸、讀/寫結(jié)構(gòu)傳輸?shù)葏f(xié)議關(guān)系,為協(xié)議使用做了一些有益工作[1];許多專家學者則從簡化TII連線角度出發(fā),定義一種更為簡單的物理層(如RS-232、USB等),將啟動、啟動回應(yīng)、快速交換及出錯報告等信號由原來的硬件信號線改為通過串行的信息來處理,雖簡化了TII連線,但降低數(shù)據(jù)傳輸速率、增加數(shù)據(jù)丟包風險[2~6]。
本文從TII模型時序、數(shù)據(jù)線利用率展開探討,針對性地提出在應(yīng)用中可以提高模型性能的方法,以數(shù)據(jù)傳輸速率、延時作為主要的參考指標,借助LabVIEW構(gòu)建TII的圖形化仿真模型,對這些方法進行動態(tài)分析并驗證其有效性。
圖1為IEEE1451.2定義的接口圖,其中TII是實現(xiàn) IEEE1451智能傳感器中STIM 和NCAP數(shù)據(jù)傳輸?shù)?10線數(shù)字接口。表 1為基于SPI協(xié)議的TII接口的管腳分配及信號定義表。
表1 TII管腳分配及信號定義
圖2為TII協(xié)議時序圖。TII協(xié)議包括觸發(fā)、寫數(shù)據(jù)和讀數(shù)據(jù)協(xié)議。數(shù)據(jù)的傳輸速率、實時性主要由讀(DOUT)、寫(DIN)數(shù)據(jù)協(xié)議決定。讀、寫數(shù)據(jù)協(xié)議相似。以讀數(shù)據(jù)為例,其過程如下:① NCAP置低 NIOE,發(fā)起讀數(shù)據(jù)操作(見圖中 A 時刻);②STIM驅(qū)動NACK應(yīng)答(圖中B時刻);③ NCAP檢測NACK應(yīng)答,發(fā)出DCLK時鐘,完成該次握手;④NCAP由DINR寫入功能、通道地址(圖中BC、CD段);⑤ DOUTR讀取一幀數(shù)據(jù)(一字節(jié)或者多字節(jié),圖中DE、EF段);⑥ NCAP置高 NIOE,STIM 再置高NACK(圖中G時刻),完成讀操作。
圖2 TII協(xié)議時序圖
由圖2可以看出:STIM(或NCAP)每接收處理完8位數(shù)據(jù)后,才驅(qū)動NACK應(yīng)答,由NCAP檢測到應(yīng)答發(fā)出DCLK時鐘,這個握手過程會產(chǎn)生延時。圖2中tw包括STIM處理數(shù)據(jù)時間和一次握手延時。對于多字節(jié)幀的傳輸,會因為頻繁握手而產(chǎn)生大量延時;讀(或?qū)?數(shù)據(jù)DF期間,僅用到DOUTR(或DINW),DINR(或 DOUTW)處于空閑狀態(tài),這種簡化數(shù)據(jù)傳輸模式下兩根數(shù)據(jù)線傳輸數(shù)據(jù)利用率僅有50%。
NI公司LabVIEW圖形化程序設(shè)計環(huán)境,適用于構(gòu)建 TII模型(具有硬件功能及實現(xiàn)各時序信號的嚴格配合)進行仿真及測試。
下面討論基于LabVIEW的TII模型的構(gòu)建。TII模型的NSDET、NTRIG、NIOE邏輯關(guān)系的實現(xiàn)可通過LabVIEW的條件結(jié)構(gòu)等實現(xiàn)。這里主要討論其數(shù)據(jù)傳輸功能的實現(xiàn)方法。圖3為TII模型讀寫數(shù)據(jù)程序框圖,數(shù)據(jù)傳輸按隊列緩存模式進行,圖(a)中TII模型,在NCAP端實現(xiàn) NACK接收,DCLK產(chǎn)生及發(fā)送,DIN在DCLK負邊沿發(fā)送數(shù)據(jù),DOUT在DCLK正邊沿接收數(shù)據(jù);圖(b)中TII模型,在STIM端實現(xiàn)NACK翻轉(zhuǎn)及發(fā)送,DCLK接收,DIN在DCLK在正邊沿接收數(shù)據(jù),DOUT在負邊沿發(fā)送數(shù)據(jù)。
圖3 TII模型讀寫數(shù)據(jù)程序框圖
筆者提出在應(yīng)用中可提高模型性能的三種方法。
由于NACK每次握手僅傳輸8位數(shù)據(jù),對于多字節(jié)幀的傳輸,會因為頻繁握手而產(chǎn)生大量延時。對于某些IEEE 1451智能傳感器采用16位(或32位)處理器的場合,NACK每次翻轉(zhuǎn)傳輸8位數(shù)據(jù)與處理器位數(shù)不匹配的問題,將會產(chǎn)生系列的延時。因此可考慮根據(jù)處理器位數(shù),將 NACK每次翻轉(zhuǎn)的傳輸位數(shù)相應(yīng)增加至16位或者32位。
圖4為NACK翻轉(zhuǎn)傳輸不同位數(shù)的延時比較圖,圖中tDCLK表示DCLK時鐘周期,假設(shè)8位、16位和32位處理器處理相應(yīng)位數(shù)數(shù)據(jù)的時間和完成一次握手產(chǎn)生的延時均相同(即tw相同)。傳輸32位數(shù)據(jù),NACK每次翻轉(zhuǎn)傳輸32位數(shù)據(jù)比傳輸8位數(shù)據(jù)減少3次握手過程,減少延時t2=3(tw-tDCLK)。
圖4 NACK翻轉(zhuǎn)傳輸8、16、32位數(shù)據(jù)延時比較圖
表2為利用基于LabVIEW的TII模型的仿真環(huán)境得出的256bytes緩存區(qū)下NACK翻轉(zhuǎn)傳輸不同位數(shù)讀、寫數(shù)據(jù)性能表。以寫數(shù)據(jù)為例,NACK每次翻轉(zhuǎn)傳輸16位、32位平均傳輸速率增加至 43.135kb/s和47.608kb/s,分別比 8位傳輸方式提高 19.36%和31.74%;延時減少至45.540ms和40.652ms,分別比8位傳輸方式減少14.80%和23.94%。
表2 NACK翻轉(zhuǎn)傳輸不同位數(shù)讀、寫數(shù)據(jù)性能表
STIM包含高采樣率緩沖序列傳感器或高速執(zhí)行器需傳輸大量數(shù)據(jù)時,須合理增加緩存區(qū),以實現(xiàn)一次觸發(fā)、連續(xù)讀寫數(shù)據(jù)來提高數(shù)據(jù)傳輸速率。
表3為利用基于LabVIEW的TII模型的仿真環(huán)境得出的不同緩沖區(qū)讀、寫數(shù)據(jù)性能表。以寫數(shù)據(jù)為例,緩存區(qū) 512bytes比 64bytes平均傳輸速率增加13.22%,但延時增加78.690ms。在應(yīng)用的時候,需結(jié)合具體應(yīng)用要求,對數(shù)據(jù)傳輸速率要求高而實時性要求不高的場合,合理增加緩存區(qū)。
表3 不同緩沖區(qū)讀、寫數(shù)據(jù)性能表
基于DIN、DOUT同步讀取數(shù)據(jù)的方法可提高數(shù)據(jù)線利用率,進而提高數(shù)據(jù)傳輸速率和減少延時。圖5為筆者改進的DIN、DOUT同步讀取數(shù)據(jù)時序圖。NCAP首先通過DIN寫入功能和通道地址(其中功能地址是STIM控制字中供用戶擴展的讀操作碼,通道地址是表示全局操作的地址0),然后DIN、DOUT同步讀取與STIM連接的多路傳感器數(shù)據(jù)。
圖5 DIN、DOUT同步讀取數(shù)據(jù)時序圖
表4為利用基于LabVIEW的TII模型的仿真環(huán)境得出的256bytes緩存區(qū)下單雙通道讀數(shù)據(jù)性能表。8位傳輸方式下DIN、DOUT同步讀取數(shù)據(jù)平均傳輸速率增加至 37.513kb/s,比僅 DOUT讀取數(shù)據(jù)增加41.93%;延時則減少至77.740ms,比僅DOUT讀取數(shù)據(jù)減少11.49%。
表4 單雙通道讀數(shù)據(jù)性能表
(1)、TII模型的應(yīng)用有許多技巧,針對具體應(yīng)用可以有許多提高模型性能的具體方法。
(2)、LabVIEW圖形化編程語言功能強大、擴展性強,非常適用于構(gòu)建TII模型進行仿真及測試。
(3)、增加NACK翻轉(zhuǎn)傳輸位數(shù)方法適合于采用16位(或32位)處理器的場合,合理增加緩存區(qū)方法適合于對數(shù)據(jù)傳輸速率要求高而實時性要求不高的場合,基于DIN、DOUT同步讀取數(shù)據(jù)的方法適合于單向讀取多個關(guān)聯(lián)傳感器的場合。
[1] 童利標,陸文駿,于益.網(wǎng)絡(luò)化智能傳感器標準IEEE 1451.2的TII協(xié)議研究[J].傳感器世界,2006(03):37-40
[2] Jih-Fu T. Create a TII of IEEE 1451.1 under DART[C].2009
[3] Li M, Wang R. System of Ultrasonic Transducer Performance Detection Based on Virtual Instrument and USB 2.0 Interface Technology[C].2009:347-350
[4] Depari A, Ferrari P, Flammini A, et al. IEEE1451 smart sensors supporting USB connectivity[C].2004:177-182
[5] Bissi L, Placidi P, Scorzoni A, et al. Environmental monitoring system compliant with the IEEE 1451 standard and featuring a simplified transducer interface[J]. Sensors and Actuators A:Physical.2007,137(1):175-184
[6] Ramos H M, Ramos P M, Paces P. Development of a IEEE 1451 Standard Compliant Smart Transducer Network with Time Synchronization Protocol[C].2007
[7] 沈小燕,林玉池.基于LabVIEW的FBG傳感解調(diào)系統(tǒng)的改進[J].傳感器與微系統(tǒng),2009(07):12-14,17
[8] 霍峰,王長松,鞏憲鋒,齊昕.基于Zig Bee和LabVIEW的多功能數(shù)據(jù)采集系統(tǒng)[J].傳感器與微系統(tǒng),2008(07):82-85