PC作為ProfibusDP單主站的實現(xiàn)
PC作為ProfibusDP單主站的實現(xiàn)
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的含義為分散的外圍設備),。他的體系結構包括ISO/OSI參考模型第1,,2層以及用戶接口,傳輸技術使用RS485(稱為H2),,這種結構能保證通信的實時性和系統(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),,可確保本質安全性并使現(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允許構成單主站或多主站系統(tǒng),。多主站配置中,主站與各自從站構成相互獨立的子系統(tǒng),,涉及令牌的傳遞,。而作為現(xiàn)場級總線系統(tǒng),很多情況下是以PLC作為調(diào)節(jié)器和主站構成的單主站系統(tǒng),,這個系統(tǒng)如果不是封閉的(不與外界交換數(shù)據(jù)而獨立運行),,有可能通過ProfibusFMS或別的現(xiàn)場總線連接到車間單元級等更大規(guī)模的網(wǎng)絡,除此之外極有可能是PLC通過串行RS232與上位PC機(監(jiān)控層)通信,,如圖1所示,。
在大多數(shù)溫度控制、配料等系統(tǒng)中,,傳感器的采樣速率一般>10 ms,,從站數(shù)目較少,總線數(shù)據(jù)傳輸速度≤500 kb/s,,*可以用PC取代PLC作為調(diào)節(jié)器和主站,,PC與ProfibusDP之間使用低成本的RS232/RS485轉換器連接,以節(jié)省昂貴的PLC,,如圖2所示,。在軟件上,由于單主站系統(tǒng)不涉及令牌傳遞,,可容易地在PC上編寫兼容ProfibusDP協(xié)議的單主站程序,。
四、軟件實現(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個結束位,。數(shù)據(jù)傳輸速率9600 b/s。
2,、作為下位機查詢,、設置各從站
程序框圖如圖3所示。
具體C語言程序程序實現(xiàn)如下:
3,、作為調(diào)節(jié)器控制一個從站PID輸出
該部分程序框圖如圖4所示,,具體程序略。
作為過程監(jiān)控層,,也可使用循環(huán)輪詢各從站,,PID程序僅作為對其中一個從站的處理。軟件當然也可使用Simatic WinCC組態(tài),、VC++6.0等編寫圖形界面PC應用程序,,達到監(jiān)控和控制雙重功能。