摘 要: 主要介紹Profibus現(xiàn)場總線的基本特性和通信協(xié)議,討論了以PC作為Profibus—DP單主站實現(xiàn)的可行性,并給出了C語言實現(xiàn)的程序。
關鍵詞: Profibus 現(xiàn)場總線 單主站 PC機 Profibus-DP C語言
一、Profibus概述
Profibus是由SIEMENS公司推出的一種開放式現(xiàn)場總線標準,1989年成為德國標準DIN19245,1996年成為歐洲標準EN50170,1999年12月被接受為國際標準IEC61158的一部分。Profibus是目前歐洲乃至全球應用最廣泛的總線系統(tǒng),他速度快成本低,幾乎所有的PLC產(chǎn)品和極多的自動化外設產(chǎn)品都提供Profibus接口。
Profibus根據(jù)不同的應用場合提供3個兼容版本:ProfibusDP,ProfibusFMS和ProfibusPA。
ProfibusDP適用于現(xiàn)場級分布式自動化外設之間的高速數(shù)據(jù)傳輸(DP的含義為分散的外圍設備)。他的體系結(jié)構(gòu)包括ISO/OSI參考模型第1,2層以及用戶接口,傳輸技術使用RS485(稱為H2),這種結(jié)構(gòu)能保證通信的實時性和系統(tǒng)實現(xiàn)的低成本。在用戶接口中使用了定義用戶和系統(tǒng)使用的應用功能和描述現(xiàn)場設備行為的行規(guī)。
ProfibusFMS(Fieldbus Message Specification)是現(xiàn)場級和單元級通信的通用解決方案,主要解決單元級主站之間(PLC和PC)的互相通信,因此高級功能比快速性系統(tǒng)反應時間更重要。FMS使用了ISO/OSI參考模型第1,2,7層,第1,2層與ProfibusDP兼容,第7層包括了應用協(xié)議并向用戶提供了廣泛的通信服務功能。
ProfibusPA是在ProfibusDP的基礎上通過優(yōu)化、擴展而來,主要用于化工等對安全性要求高的場合,通信采用擴展的ProfibusDP協(xié)議。傳輸技術改用IEC11582(稱為H1),可確保本質(zhì)安全性并使現(xiàn)場設備通過總線供電,通過分段耦合器,能方便地和ProfibusDP,ProfibusFMS相連。
二、Profibus通信協(xié)議
Profibus通信協(xié)議通過ISO/OSI參考模型第2層實現(xiàn),在Profibus中第2層稱為FDL(Fieldbus Data Link)。
Profibus總線上的設備包括2類:主站和從站。主站在一個限定時間 (令牌持有時間TokenHoldTime) 內(nèi)對總線有控制權,這時主站可以向從站發(fā)送數(shù)據(jù)或請求從站的數(shù)據(jù)。從站對總線沒有控制權,只是響應一個主站的請求或確認主站發(fā)送的數(shù)據(jù)。因此Profibus通信協(xié)議包括主站之間的令牌傳遞協(xié)議和主、 從站之間的主從協(xié)議。
令牌傳遞協(xié)議確保每個主站有足夠的時間履行他的通信任務,令牌在所有主站中循環(huán)一周的最長時間是一定的。主從協(xié)議保證主站在令牌持有時間內(nèi)與從站的通信。
三、ProfibusDP單主站系統(tǒng)
ProfibusDP允許構(gòu)成單主站或多主站系統(tǒng)。多主站配置中,主站與各自從站構(gòu)成相互獨立的子系統(tǒng),涉及令牌的傳遞。而作為現(xiàn)場級總線系統(tǒng),很多情況下是以PLC作為調(diào)節(jié)器和主站構(gòu)成的單主站系統(tǒng),這個系統(tǒng)如果不是封閉的(不與外界交換數(shù)據(jù)而獨立運行),有可能通過ProfibusFMS或別的現(xiàn)場總線連接到車間單元級等更大規(guī)模的網(wǎng)絡,除此之外極有可能是PLC通過串行RS232與上位PC機(監(jiān)控層)通信,如圖1所示。
四、軟件實現(xiàn)
1、ProfibusDP單主站協(xié)議
主站讀命令: $①①R②13
從站回應數(shù)據(jù)格式:=③③③13
主站寫命令: $①①W②③③③13
從站確認格式: 6
13是回車鍵的ASCII碼,6是ACK的ASCII碼,$,R,W分別代表相應ASCII碼,①①是代表地址的2個ASCII碼,②是代表變量號的一個ASCII碼,③③③是代表數(shù)據(jù)的3個ASCII碼。
RS232只使用了TXD,RXD和GROUND三根信號線。每幀8個數(shù)據(jù)位,偶校驗,1個結(jié)束位。數(shù)據(jù)傳輸速率9600 b/s。
2、作為下位機查詢、設置各從站
程序框圖如圖3所示
3、作為調(diào)節(jié)器控制一個從站PID輸出
該部分程序框圖如圖4所示,具體程序略。
作為過程監(jiān)控層,也可使用循環(huán)輪詢各從站,PID程序僅作為對其中一個從站的處理。軟件當然也可使用Simatic WinCC組態(tài)、VC++6.0等編寫圖形界面PC應用程序,達到監(jiān)控和控制雙重功能。
五、結(jié)束語
程序在圖2系統(tǒng)中的PC上運行通過,與使用ASIC協(xié)議芯片的ProfibusDP從站能很好通信,PID輸出程序在皮帶秤配料控制中達到了和PLC一樣的精度,驗證了在某些ProfibusDP單主站系統(tǒng)中以PC完成PLC功能的可行性。