肖志斌
(北京中冶設(shè)備研究設(shè)計總院有限公司,北京 100029)
邯鋼電鍍鋅生產(chǎn)線原為邯鋼冷軋廠彩圖生產(chǎn)線,由北京中冶設(shè)備研究設(shè)計總院負(fù)責(zé)全線的改造工程,將原彩圖工藝改造成電鍍鋅的工藝,冶金設(shè)備院自動化部負(fù)責(zé)全線的電氣改造任務(wù),包括控制系統(tǒng)設(shè)計、軟件編程及調(diào)試。原彩圖生產(chǎn)線控制系統(tǒng)為羅克韋爾的Contrologix 1756L55控制器,采用ControlNet網(wǎng)絡(luò),改造后的電鍍鋅生產(chǎn)線控制系統(tǒng)升級到Contrologix 1756L62,并增加一個控制器負(fù)責(zé)新工藝的控制。
全線控制系統(tǒng)被劃分為四個控制機(jī)架,總共由10個1756L62控制器組成,入口段的機(jī)架配置3個1756L62控制器,工藝1段配置4個1756L62控制器,工藝2段配置1個1756L62控制器,出口段配置2個1756L62控制器,每個控制器承擔(dān)不同的任務(wù),各個機(jī)架通過ControlNet網(wǎng)絡(luò)連接,控制器之間有大量的數(shù)據(jù)通訊,包括布爾量、整型、實(shí)型、字符串等數(shù)據(jù)。通過生產(chǎn)者/消費(fèi)者通信模式,各個控制器之間、控制器與ControlNet網(wǎng)絡(luò)上的節(jié)點(diǎn)之間能高速高效的傳送各種數(shù)據(jù)類型的數(shù)據(jù),硬件組態(tài)簡單,無需進(jìn)行網(wǎng)絡(luò)編程。但是在硬件組態(tài)和ControlNet網(wǎng)絡(luò)組態(tài)過程中,如何設(shè)置好RPI時間與NUT時間,是網(wǎng)絡(luò)組態(tài)成功及網(wǎng)絡(luò)數(shù)據(jù)傳輸速度、所傳輸數(shù)據(jù)流量大小的關(guān)鍵。
ControlNet網(wǎng)絡(luò)是一種高速且時間確定性的網(wǎng)絡(luò),它為對等通信提供實(shí)時控制和報文傳送服務(wù),又可作為為控制器和I/O設(shè)備之間的一條高速通信鏈路,它在同一鏈路上滿足I/O數(shù)據(jù)實(shí)時互鎖、端到端報文傳輸和編程/組態(tài) ,且允許多個控制器同時并存,允許輸入數(shù)據(jù)和端到端數(shù)據(jù)的多路組播。
ControlNet 最重要的功能是從一個節(jié)點(diǎn)到另一個節(jié)點(diǎn)傳送時間確定性的控制信息(如IO狀態(tài)信息),也叫做預(yù)定信息,它也傳送其他信息(非時間確定性信息,如程序上傳和下載),也叫非預(yù)定信息。ControlNet控制網(wǎng)采用時間限制存取算法控制網(wǎng)絡(luò)上各個節(jié)點(diǎn)的網(wǎng)絡(luò)刷新時間(Network Update Time,NUT),以實(shí)現(xiàn)網(wǎng)絡(luò)上預(yù)定信息和非預(yù)定信息的正常傳送。
NUT時間是一種可重復(fù)的時基,可以在2~100ms范圍內(nèi)調(diào)整,其默認(rèn)值為5ms。每一個NUT時間主要被劃分為三個部分:預(yù)定信息、非預(yù)定信息和網(wǎng)絡(luò)維護(hù)信息。在預(yù)定信息傳送時間內(nèi),網(wǎng)絡(luò)保證每一個節(jié)點(diǎn)有機(jī)會傳送信息,時間確定性信息在預(yù)定信息傳送時間內(nèi)傳送;在非預(yù)定信息傳送時間內(nèi),控制網(wǎng)允許所有節(jié)點(diǎn)傳送數(shù)據(jù),直至分配給此部分的時間用完為止,傳送非預(yù)定信息的時間分配取決于預(yù)定信息的通訊量,但是控制網(wǎng)能保證有至少一個節(jié)點(diǎn)有機(jī)會傳送非預(yù)定信息;在網(wǎng)絡(luò)維護(hù)時間內(nèi),控制網(wǎng)讓地址最小的節(jié)點(diǎn)傳送信息來保持與其他的節(jié)點(diǎn)同步,網(wǎng)絡(luò)維護(hù)時間由控制網(wǎng)自動從NUT時間里扣除[1]。
RPI(Requested Packet Interval)時間是控制器的數(shù)據(jù)采樣間隔時間,實(shí)際上也就是采樣時間限幅值,控制器周期性的采樣控制網(wǎng)絡(luò)上節(jié)點(diǎn)的數(shù)據(jù)包,而實(shí)際采樣周期(實(shí)際數(shù)據(jù)包間隔)稱為API(Actual Packet Interval),API時間總是小于或等于RPI時間,它是由控制網(wǎng)根據(jù)所傳送數(shù)據(jù)包的大小及傳送速度來自動選取的。
NUT設(shè)定可以通過運(yùn)行RSNetWorx for ControlNet,在菜單Network /Properties/Network Paramerters中修改Network Update Time的值;RPI設(shè)定可以通過RSLogix5000編程軟件,在I/O Configuration展開所有已經(jīng)組態(tài)的模塊,右鍵點(diǎn)擊適配器選擇Properties/Connection修改Requested Paket Interval值(RPI),而對于消費(fèi)者標(biāo)簽的RPI值設(shè)定,打開Controller Tags后,從中選擇消費(fèi)者標(biāo)簽,在Properties/Connection修改Requested Paket Interval(RPI)值。
在RSNetWorx for ControlNet軟件中進(jìn)行網(wǎng)絡(luò)組態(tài)時,當(dāng)操作完“Edits Enable”后選擇save edits時,將會彈出一個對話框提示“if you want to optimize or possibly merge edits”。這就意味著預(yù)定的算法將處理所有的數(shù)據(jù)請求并為每一個節(jié)點(diǎn)設(shè)備定義起始NUT號碼及API。當(dāng)選擇“optimize or merge”時,RSNC掃描每一個節(jié)點(diǎn)設(shè)備,讀取設(shè)備上的所有數(shù)據(jù)請求,并為這些數(shù)據(jù)做好傳送安排。算法為每一個設(shè)備計算的請求時間(API)必須小于或等于RPI,并且每一個API必須是NUT的2n倍,如果所有混合型的數(shù)據(jù)包不能在網(wǎng)絡(luò)所限定的條件下嚴(yán)格按照時間排定好,RSNC將會提示出哪個限定條件沒有被滿足。
3.2.1 NUT與RPI值的選擇
NUT是最小的采樣間隔周期(最大的采樣頻率),當(dāng)控制器采樣離散變量時,必須使離散變量的特性與NUT一致。假設(shè)某個已經(jīng)開啟的離散變量的脈沖長度為20ms,如果設(shè)置的NUT大大超過20ms,那么控制器就可能丟失這個脈沖,因?yàn)椴蓸拥念l率不能足以保證每次都能捕捉到這個脈沖;和NUT的定義一樣,RPI同樣也可以稱為采樣間隔周期,上述API時間總是小于或等于RPI,RPI限制著API值的大小,因此,RPI相當(dāng)于最大的采樣間隔周期或最小的采樣頻率。
RPI的選擇類似于前述NUT值的選擇,對于其他設(shè)備的RPI值的選取高于NUT值的基于這些數(shù)據(jù)的要求。假設(shè)采樣一個水壩的液位數(shù)據(jù),那就不需要設(shè)置5ms采樣一次,因?yàn)橐何徊粫兓哪敲纯?,而如果要采樣一條高速罐裝生產(chǎn)線,那么RPI需要設(shè)置得盡可能的小。
NUT也限制著網(wǎng)絡(luò)的整體數(shù)據(jù)流,ControlNet網(wǎng)以5Mbits/s或 625bits/ms的速度通訊,因此在一個NUT內(nèi)能傳送的最大字節(jié)是625乘以NUT值,假設(shè)一個NUT值為2ms,那么在一個NUT內(nèi)最大能傳送1250字節(jié)數(shù)。但是所有這些字節(jié)不都是用于控制信息的,在這1250字節(jié)中,由于網(wǎng)絡(luò)維護(hù)也是需要125字節(jié)的流量。在一個NUT內(nèi),任何一個節(jié)點(diǎn)能傳送的最大的預(yù)定通訊信息是521字節(jié),在這521字節(jié)之外,44字節(jié)用于系統(tǒng)開銷,系統(tǒng)開銷減小了每一個節(jié)點(diǎn)的可用控制信息的余量。另外,ControlNet網(wǎng)還為非預(yù)定信息保留了最大521字節(jié)的流量,所以,在每一個NUT內(nèi)能傳送的最大的控制數(shù)據(jù)是:[625×NUT (in ms) – (125 + 521)]bytes。例如NUT為2ms時,僅有604字節(jié)(包含每一個節(jié)點(diǎn)的系統(tǒng)開銷)能用于傳送控制數(shù)據(jù),所以不能在一個NUT內(nèi)讓兩個節(jié)點(diǎn)同時傳送他們最大的數(shù)據(jù)量,而如果NUT設(shè)置為100ms時,可以傳送61854字節(jié)的控制數(shù)據(jù),但是更高的NUT會降低你想采樣數(shù)據(jù)的采樣速度,這里面存在一個平衡,那就是所選擇的NUT必須在數(shù)據(jù)流與采樣要求之間保持一個平衡[2]。
3.2.2 NUT與RPI值的選擇對網(wǎng)絡(luò)的影響
使用ControlNet網(wǎng)進(jìn)行上傳/下載時、在線監(jiān)控、使用HMI或MSG通訊指令時,需要為非預(yù)訂任務(wù)安排足夠的時間,RSNC顯示了平均帶寬使用率和峰值帶寬使用率,并且列出了在每一秒中能用于非預(yù)定性的通信類型的非預(yù)定字節(jié)數(shù)。如果在非預(yù)訂性信息的運(yùn)行上有問題,必須檢查帶寬使用率,根據(jù)經(jīng)驗(yàn),帶寬的使用率最好別超過50%~60%。尤其是HMI通信消費(fèi)了大量的非預(yù)訂帶寬,如果遇到超時問題,那么可以考慮降低HMI數(shù)據(jù)的輪詢率,也可以考慮將HMI數(shù)據(jù)通訊移到Ethernet,或者,當(dāng)使用Logix系統(tǒng)時,再增加一個適配器使用另一個ControlNet連接專門用于控制HMI數(shù)據(jù)及其他的非預(yù)訂信息的通訊。為了讓非預(yù)訂性帶寬盡可能大,也可以盡可能高的選擇RPI。
原系統(tǒng)中有大量的生產(chǎn)者/消費(fèi)者通訊,改造后的邯鋼電鍍鋅電氣控制系統(tǒng),由于新增了一個控制器,并且全線工藝發(fā)生了變化,因此新增的控制器與其他控制器之間新增大量的通訊數(shù)據(jù),在組態(tài)ControlNet網(wǎng)絡(luò)時,出現(xiàn)錯誤“Transmitted Scheduled Data Exceeds the Maximum Allowed for a Node”,這個錯誤的含義是“所傳送的預(yù)定性數(shù)據(jù)超過了節(jié)點(diǎn)所容許的最大值”,根據(jù)上文分析,故障原因是因?yàn)镽PI時間過小,系統(tǒng)請求數(shù)據(jù)過于頻繁,或者是ControlNet網(wǎng)絡(luò)刷新頻率不足以滿足系統(tǒng)請求數(shù)據(jù)的頻率,因此增加RPI值或減半NUT值就可以解決這個問題。
[1] 黃向明.ControlNet網(wǎng)絡(luò)技術(shù)在寶鋼3群彩涂機(jī)組的應(yīng)用與實(shí)踐[J].2005.6.
[2] RsnetWorx for ControlNet Online Help