PROFINET是適用于不同需求的完整解決方案,其功能包括8個主要的模塊,依次為實時通信、分布式現場設備、運動控制、分布式自動化、網絡安裝、IT標準和信息安全、故障安全和過程自動化。
PROFINET主要有兩種通信方式[1]:
(1)PROFINET IO實現控制器與分布式I/O之間的實時通信;
(2)PROFINET CBA實現分布式智能設備之間的實時通信。
從PROFINET的角度來看,PROFINET IO是在工業以太網上實現模塊化、分布式應用的通信概念。通過PROFINET IO,分布式I/O和現場設備能夠集成到以太網通信中。
1 PROFINET IO的基本概念
1.1 PROFINET IO的工程模型
(1)IO控制器
IO控制器[2]一般是可編程控制器(例如PLC),它能夠執行自動化程序。其功能相當于PROFIBUS類型1的主站。
(2)IO設備
IO設備是連接到PROFINET網絡中的現場分布式I/O。
(3)IO監視器
IO監視器[2]是一種工程設備,通常為PC、HMI或可編程控制器,用于IO控制器和IO設備的調試和診斷,在運行期間連接IO監視器,通常只是暫時性地用于調試和故障處理。IO監視器的功能相當于PROFIBUS類型2的主站。
1個PROFINET IO系統應該包括至少1個IO控制器和1個IO設備。
1.2?
PROFINET IO通信站點的數據交換是通過標準通道[3](基于UDP/IP)和實時通道完成的。在這些通道里,數據使用不同的協議進行傳輸。例如啟動時從站參數是由 主站通過UDP協議傳遞的,設備地址名字的分配是通過DCP協議完成的,這些都屬于標準數據,也可以稱為非實時(NRT)數據。而周期數據[4]、報警數 據是通過實時協議傳送的,被稱為實時數據。
1.3?
1.3.1?
PROFINET IO組態如圖1所示,主站是CPU319-3 PN/DP,從站有3個IO設備,分別為ET-200S,ET-200pro和ET-200eco,還可以繼續添加IO設備,SIMATIC 產品系列的 PROFINET 設備具有PROFINET接口[5](帶或不帶集成交換機)。帶集成交換機的 PROFINET 設備通常具有2個端口,用于網絡的線性總線結構。 同時還提供有3個或更多端口的 PROFINET 設備以連接樹型拓撲。由圖1可見,CPU319通過雙絞屏蔽線與設備3(ET-200S)連接,不同的IO設備之間通過它們自帶的交換機接口進行連接。
1.3.2?
(1)發送時鐘(Send clock)[6]:IRT或RT通信中2個連續間隔之間的時間段。發送時鐘是用于交換數據的可能的最短傳輸時間;
(2)更新時間(Update time):更新時間=發送時鐘× Factor。
在此時間間隔之內,IO 控制器/IO 設備為 PROFINET IO 系統中的IO設備/IO 控制器提供新的數據。可以為每個IO設備單獨組態發送周期,并定義將數據從 IO 控制器發送到 IO 設備(輸出)的時間間隔以及將數據從 IO 設備發送到IO控制器的時間間隔(輸入)。更新時間在SETP7組態中可以設置。
(3)Factor:Fatcor是放大倍數,為2n,也稱減速比(Reduction Ratio)[7]
(4)看門狗時間 (Watchdog xime)
通過STEP7,采用更新時間的整倍數來設置看門狗時間,該時間也可由用戶修改。如果在看門狗時間內IO控制器沒有為IO設備提供輸入/輸出數據,IO設備將出現故障并給出替換值。這種情況將作為站故障報告給IO控制器。
2 研究PROFINET IO實時性的必要性
首先,在運動控制系統等對實時性要求很高的領域,用戶需要知道PROFINET IO數據循環的周期,以便更好地進行生產。其次,如果在STEP7工程工具中對PROFINET IO設備的更新時間和看門狗時間設置不合適,設備就會在運行時出現莫名其妙的故障。所以,對PROFINET IO實時性的研究是很有必要并且具有現實意義。
3?
3.1?
標準以太網的幀如表1所示。可以看出,一個標準以太網幀數據大小為64 B~1?
3.2?
SIMATIC 中的交換機通過 PROFINET 上的2個機制滿足實時要求。
(1) 存儲與轉發S&F(Store and Forward)[4]
使用存儲轉發方法時,交換機將完整地存儲消息幀,并將它們排成一個隊列。 如果交換機支持國際標準 IEEE 802.1Q,則根據其在隊列中的優先級存儲數據。 這些消息幀隨后將有選擇性地轉發給可訪問已尋址節點的特定端口(存儲轉發)。
對于存儲轉發,數據經過交換機時先存儲進行校驗,然后由交換機根據地址表再進行轉發。
(2)直通交換方式(Cut Through)[4]
在直通交換方式過程中,并不是將整個數據包臨時存儲在緩沖區中,而是在目標地址和目標端口已經確定后,馬上將整個數據包直接傳送到目標端口。這 樣通過交換機傳送數據包所用的時間是最小的,且不受消息幀長度的影響。當目標段與下一個交換機的端口之間的區段已被占用時,數據將“根據優先級的存儲和轉 發過程”臨時存儲。
根據西門子交換機SCALANCE X200手冊,64 B的數據S&F延遲時間是10 μs,1 500 B數據S&F延遲時間是130 μs。
3.3?
假設組態ET200分布式I/O模塊不是很多的情況下,這樣一個最小的以太網報文64 B完全可以控制I/O,那么就認為PROFINET報文的大小為64 B。根據快速以太網(100 Mb/s)傳輸64 B數據的時間是5 μs,經過n臺交換機的傳輸時間約為n×5 μs。根據SCALANCE X200手冊,64 B的數據S&F延遲時間是10 μs,經過n臺交換機的延遲時間約為n×10 μs。那么RT數據的延遲時間為n×(10+5)μs。
所謂反應時間是液晶顯示器各像素點對輸入信號反應的速度,即像素由暗轉亮或由亮轉暗所需要的時間(其原理是在液晶分子內施加電壓,使液晶分子扭 轉與回復)。常說的25ms、16ms就是指的這個反應時間,反應時間越短則使用者在看動態畫面時越不會有尾影拖曳的感覺。一般將反應時間分為兩個部分: 上升時間(Rise time)和下降時間(Fall time),而表示時以兩者之和為準。
根據這種分析方法,對任何的PROFINET網絡拓撲結構都可以通過上述的方法確定PROFINET?
如果使用SCANLANCE X IRT交換機串聯,由于IRT交換機使用Cut Through的處理數據方式,這樣數據的延遲時間會明顯縮短。
如果使用帶有PN接口的ET200串聯,由于集成ERTEC芯片,同樣適用Cut Though的數據處理方式,這樣數據的延遲時間會大大縮短。
由交換機的機制和數據在網絡介質中傳輸造成的延遲可以看出,距離主站組態距離不同的IO設備數據更新時間是不同的,距離主站越遠的設備,IO數據更新時間越長,所以必須要設定相應的看門狗時間,以避免因為到達看門狗時間數據未更新而造成設備故障誤報。
使用IRT(等時實時)通信可以有效地減少數據在交換機上的延遲,因為IRT數據經過交換機使用的是Cut Through方式。