《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 基于PROFIBUS-DP的FCS性能研究及診斷軟件的開發
基于PROFIBUS-DP的FCS性能研究及診斷軟件的開發
摘要: 分析了PROFIBUS-DP傳輸協議與報文結構,設計了一種基于串口通信的PROFIBUS-DP總線性能分析與診斷軟件,給出了程序的實現方法和關鍵技術,在PROFIBUS-DP實驗平臺上進行了運行調試。結果表明,該軟件運行良好,可以基本完成對 PROFIBUS-DP報文采集、分析和存儲等功能。
Abstract:
Key words :

  0  引言

  PROFIBUS是工業自動化領域內市場占有率最高的一種現場總線技術,它包括用于制造業自動化的PROFIBUS-DP和用于流程工業領域的 PROFIBUS-PA,它是目前我國惟一的現場總線國家標準。隨著越來越多工業控制系統采用了PROFIBUS現場總線技術,對這些控制系統進行具體的、直觀的和實時的在線分析與診斷成為了最基本的要求,要想完成這樣的任務,就需要有相應的工程分析診斷工具。國內外目前所研究的這些總線性能分析診斷工程工具存在著功能不夠全面、界面不夠完善、價格昂貴、不適合中國國情等問題。開發一款能夠對總線系統進行分析和診斷,方便的、性能價格比高的分析診斷工程工具必將成為急需的產品。

  由于在PRIFBUS傳輸報文可以反映出總線性能的很多參數,包括各種故障狀態。比如:從參數化報文可以看出主站和從站的關系,從站的操作方式,包括通道參數、功能設定、裝置參數和ID號等。從組態報文可以看出從站I/0類型及性質,以及模塊的I/O性質及數據類型等。從診斷報文可以看出從站各種參數設置錯誤,各種組態錯誤,以及裝置模塊錯誤類型。所以,本文作者就是在對PROFIBUS-DP報文進行詳盡分析的基礎上,采用VC++ 6.0開發了一款基于串口通訊的PROFIBUS性能分析診斷軟件

  1 PROFIBUS工作機理

  1.1 PROFIBUS-DP編碼技術

  PROFIBUS-DP交換數據使用異步傳輸技術和NRZ編碼。NRZ編碼的二進制信號“0”或“1”的信號電平在信號持續期間維持不變。圖1 所示為NRZ碼信號圖。

非歸零碼信號

圖1 非歸零碼信號

  每個數據鏈路層協議數據單元應由一定數量的字符組成,每個字符都是一個用于異步傳輸的起——停字符。

  每個字符由11個比特組成,包括1個總是為二進制“0”的起始比特(ST),8個可以是二進制數“0”亦可以是二進制數“1”的信息比特,1個可以是二進制“1”也可以是二進制數“0”的偶校驗比特(P),1個總是為二進制數“1”的停止比特,如圖2所示。

單個字符格式

圖2單個字符格式

  接收器的比特同步總是從起始比特的下降沿開始,也就是說,在從二進制“1”轉換到二進制數“0”時開始。在比特時間的中間應掃描起始比特和所有后繼的比特。在比特時間的中間,起始比特應是二進制數“0”,否則認為同步失敗并停止同步過程。以二進制“1”的停止比特來結束字符的同步,如果此時出現二進制數“0”來代替此停止比特,則應認為并報告一個同步差錯或字符差錯,并應等待下一個起始比特的前導沿。

  1.2 報文格式

  如圖3所示,PRFIBUS-DP有以下5種報文格式。其中,SYN為同步周期,它是一個最小的時間間隔,在此時間間隔內,每個站在它可以接收發送/請求報文幀或令牌起始部分之前,應從傳輸介質接收空閑狀態(idle state)(idle=二進制“1”)。同步周期最小為33個線空閑比特;SD為起始定界符,DA是目的地址,SA是源地址,FC是控制幀;FCS是幀校驗和,ED為結束定界符,值為16h,L是信息字段長度,其中SD1= 10h,用于請求FDL狀態,尋找一個新的活動的站點,報文長度固定,沒有數據單元;SD2= 68h,用于SRD服務,報文的數據長度可變;SD3 = A2h,數據單元長度固定(L總為8字節);SD4 = DCh,表示該報文為令牌報文;SC =E5h, 短確認報文。

PROFIBUS

圖3 PROFIBUS—DP鏈路層報文格式

  2 報文診斷軟件的實現

 

 

  2.1   ,實驗平臺

  圖4為作者組建的PROFIBUS-DP網絡實驗系統結構圖。在網絡系統中,1類主站為SIEMENS公司的CPU315-2DP PLC,PC工控機作為2 類主站,通過現場總線接口卡CP5611與DP 總線相連, WAGO公司的750-333、BECKHOFF公司的BK3120、SIEMENS公司的ET200-L及和利時公司的LM3107 PLC等PLC設備作為從站連接到DP網絡中。

PROFIBUS-DP網絡實驗系統結構圖

圖4 PROFIBUS-DP網絡實驗系統結構圖

   2.2   軟件開發環境

  軟件開發工具為VC++6.0,通過計算機標準串口通信,將PROFIBUS—DP報文采集到上位機進行處理。PROFIBUS-DP系統作為實驗平臺,采用RS485/RS232通信電纜將其RS485的一端接入PROFIBUS-DP網絡連接器的背插接口,RS232一端直接接入到PC機的串口。

  2.3   軟件系統基本程序框圖

  軟件系統的程序基本架構流程圖如圖5所示。

基本程序框架流程圖

圖5基本程序框架流程圖

  整個系統軟件包括如下幾個模塊:

  1)程序主控模塊:負責實現程序邏輯與主界面,調用串口通信模塊和接收顯示模塊。

 

  2)串口通信模塊:負責實現串口通信任務,PROFIBUS-DP報文數據采集及串口參數設置。

  3)數據處理模塊:根據PROFIBUS-DP協議報文格式,將采集上來的數據按報文格式進行處理,并存入臨時緩沖區。

  4)接收顯示模塊:負責實現接收數據的處理與顯示。

  5)數據庫模塊及數據查詢模塊,用來實現對采集到報文的歷史數據的分析和查詢。

  2.4關鍵技術

  該軟件主要是實現對PROFIBUS報文進行提取,實現在線采集PROFIBUS-DP報文數據,從數據鏈路層角度對各種報文進行分析,完成各種類型報文的顯示,完成對報文種類、服務類型、地址、數據長度及數據單元等信息的提取顯示,并對診斷報文、參數化報文及組態報文等的數據單元進行詳細的分析,得出總線性能的各種參數及故障原因,將分析過的數據存儲進數據庫,存入臨時緩沖區,根據需要將分析過的報文信息存入數據庫,實現歷史查詢。

  如何實現報文幀的提取是本軟件設計的一個關鍵問題。由于PROFIBUS報文格式有很多種,而且包括數據長度不固定的可變報文。雖然各種報文都具有固定的報頭、報尾,但是存在的問題是報頭報尾并不是特定的字符,有可能和報文中數據單元內容一樣,所以這里利用報頭報尾進行報文的提取是不可行的。作者在這里利用各種報文幀前的同步字符進行報文提取,也就是說,在每個完整報文幀傳輸之前,其前面都有一個不小于33bit的同步時間,在報文幀中間是沒有任何間隔的,利用這一同步時間,在VC++中利用超時函數,對報文幀進行了完整地提取。

  另外,由于通信數據量很大,速度較快,這里采用了WINDOWS多線程技術。一個線程為監視線程,監視串口通訊,一個為數據處理主線程,另外一個為定時刷新數據庫線程。當監視線程監視到串口中有數據到達時,就觸發一個消息通知數據處理主線程,數據處理主線程就去串口緩沖區中取出數據,并進行數據處理。定時器線程定時刷新數據庫顯示,以實現實時顯示功能。

  作者在程序編寫的過程中,出現數據庫不能實時刷新的情況,后來發現問題出在WINDOWS的WM_TIMER定時器上,由于該定時器消息優先級較低,可能造成WM_TIMER消息的丟失,所以不能實現數據庫的實時刷新。解決的方法是采用WINDOWS的多媒體定時器。在使用多媒體定時器的過程中,定時間隔的選取又是一個關鍵的問題,定時間隔選取太小,將會耗費大量的CPU內存,造成系統“死機”, 定時間隔選取太大,又不能完成“實時”顯示功能。這里又涉及到PROFIBUS總線信息循環時間的問題,總線信息循環時間與總線傳輸的波特率、從站的數量、I/O數據的數量、從站需要的延遲時間以及主站的空閑時間等有關。作者通過了大量的計算和多次實驗調試,尋找到一個合適的定時器間隔。

  2.5顯示界面

  該PROFIBUS-DP報文分析軟件的程序界面包括主界面、串口配置界面、報文過濾界面、報文查詢界面、數據庫存儲界面以及歷史查詢界面等。

  PROFIBUS-DP分析診斷軟件的運行主界面如圖6,窗口左上部分“當前profibus報文”組框內存放最近采集到的PROFIBUS- DP報文信息,并可通過工具欄上的記錄移動按鈕滾動察看記錄;右上方“信息面板”是用來顯示所有查看報文的詳細信息。窗口下半部分以網格形式顯示 PROFIBUS-DP歷史信息。

   若需要打開串口,開始接收PROFIBUS報文信息,則可選擇“命令”菜單下的“開始接收”項;若需停止接收PROFIBUS報文信息,則可選擇“命令”菜單下的“停止接收”項;若需要配置串口參數,則可選擇“命令”菜單下的“串口配置”項,此時將彈出“串口配置對話框”,若需清除當前所有記錄,可選擇“記錄”菜單下的“清除所有記錄項”命令,如果需要分類查看各種報文,可以選擇“查看”命令菜單下的“報文查詢”,此時將彈出“報文查詢對話框”,可根據需要進行報文分類查看。

軟件運行主界面

圖6 軟件運行主界面

  3 結束語

  該軟件經過作者在PROFIBUS網絡實驗系統上的反復運行調試,結果表明該軟件能夠實現對幾種PROFIBUS報文進行分析,能夠完成采集、顯示、分析、存儲和查詢等功能,為以后的研究開發奠定了基礎,同時具有一定的實用價值。

  參考文獻

  1. 中華人民共和國機械行業標準.測量和控制數字數據通信工業控制系統用現場總線類型3:PROFIBUS規范[M].北京,機械工業出版社,2006.

  2. 王永華,Andy Verwer. 現場總線技術及應有教程[M]——從PROFIBUS到AS-i.北京:機械工業出版社,2006.

  3. IEC. Digital data communications for measurment and control-Fieldbus for use in industrial control systems-Part 3: Data Link Layer service definition[M]. Third edition. 1999.10

 

  4. IEC. Digital data communications for measurment and control-Fieldbus for use in industrial control systems-Part 4: Data Link Layer protocol specification[M]. Third edition. 1999.10

  5. 陳幼平,周硯,陳冰等.基于CPLD的PROFIBUS-DP報文接收器的設計[J].測控技術,2005,24(6).

  6. 吳方余,周勇.一種基于數據庫的串口數據采集保存方案[J].計算機與現代化,2005,10.

  7. 龔建偉,雄光明.Visual C++/TurboC 串口通信編程實踐[M].電子工業出版社,2004.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲精品久久久一区二区三区| 欧美一区二区三区在线观看| 亚洲一区国产| 亚洲人成人一区二区三区| 国产主播一区二区三区| 国产日韩欧美一区在线 | 国产精品久久久久久久久免费樱桃 | 欧美三日本三级少妇三2023| 欧美高清一区二区| 嫩草成人www欧美| 久久青青草综合| 久久免费精品日本久久中文字幕| 欧美尤物巨大精品爽| 欧美一级久久久| 性欧美1819性猛交| 香蕉久久夜色精品国产使用方法| 午夜国产精品视频| 午夜精品久久久久久久久久久久久| 亚洲一区欧美一区| 亚洲欧美成人在线| 午夜精品一区二区三区在线播放| 亚洲欧美成人一区二区在线电影| 亚洲欧美日本精品| 亚洲欧美综合精品久久成人| 欧美一区二区三区日韩| 欧美在线观看网址综合| 久久精品99国产精品酒店日本| 久久精品夜色噜噜亚洲a∨ | 亚洲免费小视频| 亚洲在线视频一区| 午夜精品影院在线观看| 西西人体一区二区| 性欧美xxxx大乳国产app| 午夜视频在线观看一区二区三区| 欧美一区二区三区成人| 久久激情视频免费观看| 另类成人小视频在线| 欧美成人午夜激情在线| 欧美另类极品videosbest最新版本| 欧美日韩一区自拍| 国产精品久久久久久久久久久久久久| 国产精品视频xxx| 国产中文一区二区| 亚洲国产免费看| avtt综合网| 亚洲免费在线| 亚洲国产精品第一区二区| 亚洲精品人人| 亚洲一卡久久| 久久久亚洲综合| 欧美国产综合| 国产裸体写真av一区二区| 黄色成人免费网站| 亚洲人成免费| 亚洲欧美国产制服动漫| 亚洲国产日韩一区| 亚洲性视频h| 久久久999国产| 欧美日本高清一区| 国产女人精品视频| 亚洲精美视频| 亚洲欧美一区二区三区极速播放| 亚洲黄色一区| 欧美亚洲一区在线| 免费日韩av| 国产精品推荐精品| 在线观看精品视频| 制服诱惑一区二区| 亚洲第一福利社区| 亚洲自拍高清| 欧美xx视频| 国产精品一卡二| 最新日韩在线| 欧美一区二区三区啪啪| 一本久久综合| 久久亚洲私人国产精品va| 欧美日韩精品免费看| 国内精品久久久久久久影视麻豆 | 国产精品日韩在线观看| 在线免费观看一区二区三区| 亚洲一级黄色| 日韩视频在线你懂得| 久久精品国产第一区二区三区最新章节| 欧美精品999| 国产一区二区主播在线| 一级成人国产| 亚洲人精品午夜| 久久不射电影网| 国产精品久久久久久妇女6080 | 亚洲日本成人女熟在线观看| 欧美一区影院| 国产精品vvv| 最新国产成人av网站网址麻豆| 欧美在线观看天堂一区二区三区| 亚洲综合色网站| 欧美日韩国产电影| 亚洲第一在线综合在线| 欧美一区二区三区四区在线| 亚洲欧美另类在线| 欧美日韩国产三级| 亚洲国产精品久久人人爱蜜臀| 欧美综合国产| 欧美在线一级va免费观看| 欧美色播在线播放| 亚洲激情一区二区| 亚洲第一在线综合网站| 久久不射电影网| 国产精品揄拍一区二区| 一本久久a久久免费精品不卡| 亚洲精品久久| 欧美ab在线视频| 国语自产精品视频在线看8查询8| 午夜精品视频在线| 香蕉成人啪国产精品视频综合网| 欧美性猛交视频| 一本一道久久综合狠狠老精东影业 | 欧美大片va欧美在线播放| 韩日在线一区| 欧美在线91| 久久九九全国免费精品观看| 国产欧美一区二区三区久久人妖 | 一本色道久久综合一区| 一区二区三区成人| 欧美精品黄色| 亚洲片区在线| 99精品国产在热久久| 欧美激情视频一区二区三区不卡| 亚洲第一区在线观看| 亚洲美女尤物影院| 欧美日本精品在线| 日韩一级二级三级| 亚洲一区欧美一区| 国产精品久久久久秋霞鲁丝| 亚洲一区二区av电影| 欧美一级一区| 国产视频在线观看一区| 欧美在线观看视频| 老司机免费视频一区二区| 国产亚洲精品v| 亚洲第一区色| 欧美本精品男人aⅴ天堂| 亚洲七七久久综合桃花剧情介绍| 亚洲视频成人| 国产精品区免费视频| 亚洲欧美日韩精品| 久久久久久一区二区| 一区在线影院| 夜夜爽99久久国产综合精品女不卡| 欧美日韩一区二区三区四区五区| 中国亚洲黄色| 久久国产毛片| 亚洲国产成人一区| 在线视频免费在线观看一区二区| 国产精品videossex久久发布| 午夜精品福利在线观看| 久久久亚洲人| 亚洲人精品午夜| 午夜一区二区三视频在线观看| 国产一区二区久久久| 亚洲精品国产精品国自产观看| 欧美日韩一区二区在线| 亚洲女同在线| 蜜臀a∨国产成人精品| 日韩午夜电影| 久久国产免费看| 最新日韩中文字幕| 性视频1819p久久| 在线观看日韩| 亚洲男同1069视频| 狠狠色丁香久久婷婷综合丁香| 日韩亚洲欧美成人| 国产精品免费电影| 亚洲第一色中文字幕| 欧美视频一区在线| 欧美影院午夜播放| 欧美日韩黄视频| 欧美一区二视频| 欧美日韩精品是欧美日韩精品| 亚洲欧美在线高清| 欧美日本高清| 亚洲第一黄色网| 欧美亚一区二区| 亚洲高清一区二| 国产精品欧美在线| 亚洲三级免费电影| 国产精品自拍小视频| 亚洲免费精品| 国产一区二区三区直播精品电影| 亚洲午夜久久久久久尤物 | 亚洲高清色综合| 欧美一区永久视频免费观看| 亚洲精品综合| 久久全球大尺度高清视频| 亚洲色诱最新| 欧美激情精品久久久久久蜜臀| 欧美一区二区三区视频在线| 国产精品v一区二区三区| 亚洲精品乱码久久久久久| 国产欧美69| 亚洲一区bb|