采用PROFIBUS-DP的FCS性能研究及診斷軟件開(kāi)發(fā)
由于在PRIFBUS傳輸報文可以反映出總線(xiàn)性能的很多參數,包括各種故障狀態(tài)。比如:從參數化報文可以看出主站和從站的關(guān)系,從站的操作方式,包括通道參數、功能設定、裝置參數和ID號等。從組態(tài)報文可以看出從站I/0類(lèi)型及性質(zhì),以及模塊的I/O性質(zhì)及數據類(lèi)型等。從診斷報文可以看出從站各種參數設置錯誤,各種組態(tài)錯誤,以及裝置模塊錯誤類(lèi)型。所以,本文作者就是在對PROFIBUS-DP報文進(jìn)行詳盡分析的基礎上,采用VC++ 6.0開(kāi)發(fā)了一款基于串口通訊的PROFIBUS性能分析診斷軟件。
1 PROFIBUS工作機理
1.1 PROFIBUS-DP編碼技術(shù)
PROFIBUS-DP交換數據使用異步傳輸技術(shù)和NRZ編碼。NRZ編碼的二進(jìn)制信號“0”或“1”的信號電平在信號持續期間維持不變。圖1所示為NRZ碼信號圖。
SHAPE * MERGEFORMAT

圖1 非歸零碼信號
每個(gè)數據鏈路層協(xié)議數據單元應由一定數量的字符組成,每個(gè)字符都是一個(gè)用于異步傳輸的起――停字符。
每個(gè)字符由11個(gè)比特組成,包括1個(gè)總是為二進(jìn)制“0”的起始比特(ST),8個(gè)可以是二進(jìn)制數“0”亦可以是二進(jìn)制數“1”的信息比特,1個(gè)可以是二進(jìn)制“1”也可以是二進(jìn)制數“0”的偶校驗比特(P),1個(gè)總是為二進(jìn)制數“1”的停止比特,如圖2所示。
SHAPE * MERGEFORMAT

圖2 單個(gè)字符格式
接收器的比特同步總是從起始比特的下降沿開(kāi)始,也就是說(shuō),在從二進(jìn)制“1”轉換到二進(jìn)制數“0”時(shí)開(kāi)始。在比特時(shí)間的中間應掃描起始比特和所有后繼的比特。在比特時(shí)間的中間,起始比特應是二進(jìn)制數“0”,否則認為同步失敗并停止同步過(guò)程。以二進(jìn)制“1”的停止比特來(lái)結束字符的同步,如果此時(shí)出現二進(jìn)制數“0”來(lái)代替此停止比特,則應認為并報告一個(gè)同步差錯或字符差錯,并應等待下一個(gè)起始比特的前導沿。
1.2 報文格式
如圖3所示,PRFIBUS-DP有以下5種報文格式。其中,SYN為同步周期,它是一個(gè)最小的時(shí)間間隔,在此時(shí)間間隔內,每個(gè)站在它可以接收發(fā)送/請求報文幀或令牌起始部分之前,應從傳輸介質(zhì)接收空閑狀態(tài)(idle state)(idle=二進(jìn)制“1”)。同步周期最小為33個(gè)線(xiàn)空閑比特;SD為起始定界符,DA是目的地址,SA是源地址,FC是控制幀;FCS是幀校驗和,ED為結束定界符,值為16h,L是信息字段長(cháng)度,其中SD1= 10h,用于請求FDL狀態(tài),尋找一個(gè)新的活動(dòng)的站點(diǎn),報文長(cháng)度固定,沒(méi)有數據單元;SD2= 68h,用于SRD服務(wù),報文的數據長(cháng)度可變;SD3 = A2h,數據單元長(cháng)度固定(L總為8字節);SD4 = DCh,表示該報文為令牌報文;SC =E5h, 短確認報文。
SHAPE * MERGEFORMAT

評論