1 引言
Controllogix是Rockwell公司在1998年推出AB系列的模塊化PLC,代表了當(dāng)前PLC發(fā)展的最高水平,是目前世界上最具有競(jìng)爭(zhēng)力的控制系統(tǒng)之一,Control- logix將順序控制、過(guò)程控制、傳動(dòng)控制及運(yùn)動(dòng)控制、通訊、I/O技術(shù)集成在一個(gè)平臺(tái)上,可以為各種工業(yè)應(yīng)用提供強(qiáng)有力的支持,適用于各種場(chǎng)合,最大的特點(diǎn)是可以使用網(wǎng)絡(luò)將其相互連接,各個(gè)控制站之間能夠按照客戶的要求進(jìn)行信息的交換。
Controllogix可以提供完善的控制器的冗余功能,采用熱備的方式構(gòu)建控制器,兩個(gè)控制器框架采用完全相同的配置,它們之間使用同步電纜連接,不僅控制器可以采用熱備,通訊網(wǎng)絡(luò)也可以采用相似的方式進(jìn)行熱備,除以上的部分可以熱備外,控制器的電源也可以進(jìn)行熱備,這樣大大提高了控制器的運(yùn)行的可靠性。
2 系統(tǒng)介紹
在某焦化廠干熄焦汽輪機(jī)發(fā)電項(xiàng)目的DCS控制系統(tǒng)中,采用了冗余的Controllogix,系統(tǒng)結(jié)構(gòu)如圖1所示。上位機(jī)通過(guò)交換機(jī)與PLC處理器通訊,遠(yuǎn)程框架通過(guò)冗余的ControlNet連接到控制器框架,同時(shí),遠(yuǎn)程框架采用了冗余電源配置。整套系統(tǒng)具有很高的可靠性,滿足了汽輪機(jī)發(fā)電系統(tǒng)對(duì)于PLC控制部分需要長(zhǎng)期無(wú)故障運(yùn)行的要求。上位機(jī)采用Rsview32軟件,用以監(jiān)控現(xiàn)場(chǎng)設(shè)備的運(yùn)行。
圖1 系統(tǒng)結(jié)構(gòu)圖
本地框架由L1和L2 框架構(gòu)成,運(yùn)行時(shí)L1和L2互為熱備,構(gòu)成了冗余,L1和L2框架各個(gè)槽位的所配置的模塊如表1所示。R1,R2和R3是遠(yuǎn)程框架,所有的點(diǎn)號(hào)都連接到遠(yuǎn)程框架的模塊,遠(yuǎn)程框架的供電使用了AB的冗余電源(1756-PAR2)。
表1 L1和L2框架各個(gè)槽位的所配置的模塊

設(shè)置主從控制器框架的1756-CNBR/D的節(jié)點(diǎn)地址時(shí)應(yīng)注意,他們的地址撥碼應(yīng)該相同,應(yīng)該是系統(tǒng)中掛接在冗余ControlNET網(wǎng)上所有節(jié)點(diǎn)的最高地址,在本系統(tǒng)里面都設(shè)置為4,遠(yuǎn)程站的節(jié)點(diǎn)地址分別為1,2,3。在冗余系統(tǒng)正常運(yùn)行時(shí),從控制器框架的CNBR/D節(jié)點(diǎn)地址會(huì)自動(dòng)加1,變?yōu)?。
1757-SRM是用于同步的冗余模塊,主從控制器框架的SRM通過(guò)光纖連接。正常工作時(shí),1756-L61中所有的程序和數(shù)據(jù)通過(guò)光纖進(jìn)行同步,在RSLOGIX5000編程中,不必對(duì)此模塊進(jìn)行組態(tài)。
1756-ENBT是以太網(wǎng)接口模塊,通過(guò)網(wǎng)線連接到交換機(jī)。ENBT的地址分配為兩個(gè)連續(xù)的IP即可, 在這個(gè)系統(tǒng)中IP地址分別為192.168.1.11和192.168.1.12。
3 模塊的升級(jí)
冗余系統(tǒng)中,主控制器框架和從控制器框架上各個(gè)模塊的版本必須嚴(yán)格一致,并到達(dá)到要求的版本號(hào),否則無(wú)法正常工作。
當(dāng)版本不一致時(shí),在RSLinx中可能無(wú)法看到從控制器框架上的處理器,同時(shí),從控制器框架的處理器狀態(tài)指示燈(OK燈)變?yōu)榧t色長(zhǎng)亮。因此,一般系統(tǒng)在第一次上電時(shí),需要進(jìn)行固件升級(jí)。根據(jù)AB公布的信息,當(dāng)前一些模塊的固件版本如表2所示,這個(gè)版本同樣適用于1756-L62, 1756-L63。
表2 一些模塊的固件版本

上電后,首先在RSLinx中檢查模塊的版本號(hào),如果與表2不一致,需要到AB網(wǎng)站上去下載這個(gè)版本的升級(jí)包V13.71 Redundancy Bundle。升級(jí)工作需要使用Rockwell的固件升級(jí)軟件ControlFLASH。
升級(jí)前,先要取消SRM的從框架資格,在RSLinx中,從框架比主框架的節(jié)點(diǎn)地址大1。從圖標(biāo)上進(jìn)入1757-SRM的屬性,找到Configration的Auto-Synchonization選項(xiàng),將參數(shù)改為NEVER.然后進(jìn)入Synchonization選項(xiàng)卡,單擊Disqualify Secondary(取消從框架資格),這個(gè)時(shí)候主從處理器之間就不會(huì)同步了。
升級(jí)時(shí),先打開一個(gè)處理器框架的電源,關(guān)閉另一個(gè)框架的電源。等1757-SRM顯示PRIM后,在RSLinx中可以找到這個(gè)框架中的模塊。然后使用ControlFLASH分別進(jìn)行升級(jí)。升級(jí)完畢后,關(guān)閉這個(gè)處理器框架的電源,打開另一個(gè)框架的電源,也如此進(jìn)行升級(jí)。
升級(jí)完畢后,進(jìn)入1757-SRM的屬性,將從控制器設(shè)為主控制器,使用RSLogix5000將程序下載到從處理器,關(guān)閉機(jī)架電源,進(jìn)入從1757-SRM的屬性,選擇BecomePrimary,然后進(jìn)入RSLogix5000的通訊菜單,清除掉故障。完成以上升級(jí)工作后,主從控制器框架都上電,然后使用RSNetWorx for ControlNET對(duì)網(wǎng)絡(luò)進(jìn)行調(diào)度。
在正常工作情況下,一般哪一個(gè)框架先上電,哪一個(gè)就是主框架,另一個(gè)是從框架,主框架的1757-SRM會(huì)顯示PRIM,從框架的會(huì)顯示SYNC。正常運(yùn)行時(shí),在SRM屬性中可以進(jìn)行主從的切換。如果顯示狀態(tài)與這個(gè)不一致,表示系統(tǒng)同步出現(xiàn)問(wèn)題,需要進(jìn)行進(jìn)行檢查,剛上電時(shí)因?yàn)镾RM需要自檢,可能要花一些時(shí)間。如果同步光纖、ControlNET或者以太網(wǎng)出現(xiàn)連接問(wèn)題,都有可能導(dǎo)致同步不正常。
在RSLogix5000中進(jìn)行冗余系統(tǒng)的編程時(shí),只能使用一個(gè)連續(xù)性任務(wù)或幾個(gè)周期性任務(wù)。盡量不要使用SINT和INT型的數(shù)據(jù),另外,數(shù)據(jù)的定義最好都采用數(shù)組完成,這樣可以提高同步時(shí)的效率。在打點(diǎn)和程序調(diào)試期間,由于經(jīng)常下載程序,這個(gè)時(shí)候容易導(dǎo)致同步出錯(cuò),最好在1757-SRM中把自動(dòng)同步選項(xiàng)設(shè)為禁用,采用手動(dòng)的方式進(jìn)行同步。等調(diào)試完畢后,再把這個(gè)選項(xiàng)打開,正式將系統(tǒng)投運(yùn)。
4 RSLinx中的冗余配置
為了保證冗余系統(tǒng)能夠和上位機(jī)的HMI軟件正常通訊,需要在RSLinx中進(jìn)行冗余配置。
RSLinx中,首先定義兩個(gè)Topic,分別指向主框架和從框架的處理器,然后,在Alias Topic中,定義一個(gè)別名Topic,指向剛才定義的兩個(gè)Topic,在使用時(shí),HMI中的節(jié)點(diǎn)的定義只要指向別名Topic就可以了,當(dāng)處理器發(fā)生主從切換時(shí),HMI仍然可以保持正常的通訊。
5 SRM時(shí)間同步
1757-SRM正常運(yùn)行時(shí),需要對(duì)同步過(guò)程中發(fā)生的事件按照時(shí)間順序進(jìn)行記錄,1757-SRM出廠時(shí)的缺省時(shí)間不是當(dāng)前的時(shí)間,因此需要對(duì)SRM進(jìn)行時(shí)間重新設(shè)置。在設(shè)置1757-SRM時(shí)間時(shí),筆者采用編程的方式將1757-SRM的時(shí)間與處理器的時(shí)間進(jìn)行同步,同時(shí),利用AB提供的時(shí)間同步工具,筆者可以將處理器的時(shí)間與上位機(jī)的時(shí)間進(jìn)行同步,這樣也就實(shí)現(xiàn)了1757-SRM與上位機(jī)的時(shí)間同步。
在RSLogix5000中添加程序,如圖2所示:
圖2 RSLogix5000中添加程序
GSV中讀出的時(shí)間數(shù)據(jù)寫入到WCT(WCT定義為DINT[2].)然后,由MSG把數(shù)組WCT的值寫入到SRM的時(shí)間屬性。MSG指令的設(shè)置如圖3所示。