基于PROFIBUS-DPFCS診斷軟件
1.2 報(bào)文格式
如圖3所示,PRFIBUS-DP有以下5種報(bào)文格式。其中,SYN為同步周期,它是一個(gè)最小的時(shí)間間隔,在此時(shí)間間隔內(nèi),每個(gè)站在它可以接收發(fā)送/請(qǐng)求報(bào)文幀或令牌起始部分之前,應(yīng)從傳輸介質(zhì)接收空閑狀態(tài)(idle state)(idle=二進(jìn)制“1”)。同步周期最小為33個(gè)線空閑比特;SD為起始定界符,DA是目的地址,SA是源地址,F(xiàn)C是控制幀;FCS是幀校驗(yàn)和,ED為結(jié)束定界符,值為16h,L是信息字段長度,其中SD1= 10h,用于請(qǐng)求FDL狀態(tài),尋找一個(gè)新的活動(dòng)的站點(diǎn),報(bào)文長度固定,沒有數(shù)據(jù)單元;SD2= 68h,用于SRD服務(wù),報(bào)文的數(shù)據(jù)長度可變;SD3 = A2h,數(shù)據(jù)單元長度固定(L總為8字節(jié));SD4 = DCh,表示該報(bào)文為令牌報(bào)文;SC =E5h, 短確認(rèn)報(bào)文。
圖3 PROFIBUS―DP鏈路層報(bào)文格式
2 報(bào)文診斷軟件的實(shí)現(xiàn)
2.1 實(shí)驗(yàn)平臺(tái)
圖4為作者組建的PROFIBUS-DP網(wǎng)絡(luò)實(shí)驗(yàn)系統(tǒng)結(jié)構(gòu)圖。在網(wǎng)絡(luò)系統(tǒng)中,1類主站為SIEMENS公司的CPU315-2DP PLC,PC工控機(jī)作為2 類主站,通過現(xiàn)場總線接口卡CP5611與DP 總線相連, WAGO公司的750-333、BECKHOFF公司的BK3120、SIEMENS公司的ET200-L及和利時(shí)公司的LM3107 PLC等PLC設(shè)備作為從站連接到DP網(wǎng)絡(luò)中。
圖4 PROFIBUS-DP網(wǎng)絡(luò)實(shí)驗(yàn)系統(tǒng)結(jié)構(gòu)圖
2.2 軟件開發(fā)環(huán)境
軟件開發(fā)工具為VC++6.0,通過計(jì)算機(jī)標(biāo)準(zhǔn)串口通信,將PROFIBUS―DP報(bào)文采集到上位機(jī)進(jìn)行處理。PROFIBUS-DP系統(tǒng)作為實(shí)驗(yàn)平臺(tái),采用RS485/RS232通信電纜將其RS485的一端接入PROFIBUS-DP網(wǎng)絡(luò)連接器的背插接口,RS232一端直接接入到PC機(jī)的串口。
2.3 軟件系統(tǒng)基本程序框圖
軟件系統(tǒng)的程序基本架構(gòu)流程圖
整個(gè)系統(tǒng)軟件包括如下幾個(gè)模塊:
1)程序主控模塊:負(fù)責(zé)實(shí)現(xiàn)程序邏輯與主界面,調(diào)用串口通信模塊和接收顯示模塊。
2)串口通信模塊:負(fù)責(zé)實(shí)現(xiàn)串口通信任務(wù),PROFIBUS-DP報(bào)文數(shù)據(jù)采集及串口參數(shù)設(shè)置。
3)數(shù)據(jù)處理模塊:根據(jù)PROFIBUS-DP協(xié)議報(bào)文格式,將采集上來的數(shù)據(jù)按報(bào)文格式進(jìn)行處理,并存入臨時(shí)緩沖區(qū)。
4)接收顯示模塊:負(fù)責(zé)實(shí)現(xiàn)接收數(shù)據(jù)的處理與顯示。
5)數(shù)據(jù)庫模塊及數(shù)據(jù)查詢模塊,用來實(shí)現(xiàn)對(duì)采集到報(bào)文的歷史數(shù)據(jù)的分析和查詢。
評(píng)論