□ 文/李妮
城市交通信號(hào)機(jī)的冗余方案研究
□文/李妮
隨著城市機(jī)動(dòng)車(chē)保有量的快速增長(zhǎng),道路交通問(wèn)題日益成為社會(huì)關(guān)注的焦點(diǎn)。交通信號(hào)機(jī)承擔(dān)著對(duì)城市交叉路口車(chē)輛指揮和疏異重要控制功能。但信號(hào)機(jī)惡劣的工作環(huán)境和長(zhǎng)時(shí)間不間斷工作狀態(tài),極易出現(xiàn)各種故障。雖然大部分信號(hào)機(jī)都具備故障檢測(cè)和處理系統(tǒng),但處理措施只是簡(jiǎn)單的降級(jí)黃閃,將錯(cuò)誤信息上報(bào)中心等待維修,缺乏更加及時(shí)有效的現(xiàn)場(chǎng)維持措施。本文提出了通過(guò)冗余技術(shù)大幅提升信號(hào)機(jī)的可靠性,在城市交通、公路交通等領(lǐng)域提高現(xiàn)場(chǎng)信號(hào)控制系統(tǒng)的安全性。
系統(tǒng)組成
現(xiàn)在城市路口的交通信號(hào)控制系統(tǒng)大部分都有信號(hào)機(jī)、信號(hào)燈、信號(hào)燈驅(qū)動(dòng)模塊以及電源模塊組成。部分產(chǎn)品會(huì)增加檢測(cè)模塊或保護(hù)模塊,或?qū)讉€(gè)模塊集成一體化。在現(xiàn)場(chǎng)的安裝過(guò)程中,信號(hào)機(jī)一般都安裝在路邊的金屬機(jī)柜中,通過(guò)線纜(部分產(chǎn)品用zigbee等無(wú)線模塊)連接信號(hào)燈驅(qū)動(dòng)模塊,驅(qū)動(dòng)信號(hào)燈進(jìn)行相位輸出。
故障點(diǎn)分析
信號(hào)機(jī)作為路口相位控制的核心設(shè)備,容易受到雷擊、水浸、高溫以及自身設(shè)計(jì)的缺陷造成故障,是信號(hào)控制系統(tǒng)的主要的故障點(diǎn);信號(hào)燈驅(qū)動(dòng)模塊一般都是通過(guò)功率放大電路來(lái)驅(qū)動(dòng)信號(hào)燈,在長(zhǎng)時(shí)間工作下容易造成驅(qū)動(dòng)電路故障(如晶閘管短路和開(kāi)路);信號(hào)燈故障主要是led燈組長(zhǎng)時(shí)間運(yùn)行壞損造成;通訊線纜容易在路口道路維護(hù)過(guò)程中意外破損造成通訊故障;電源模塊容易受到高溫、水浸、雷擊等環(huán)境因素?fù)p壞。以上故障一旦出現(xiàn),系統(tǒng)要么進(jìn)入某種保護(hù)模式,或者直接停止運(yùn)行,無(wú)論哪種處理方式,都無(wú)法在短時(shí)間內(nèi)恢復(fù)現(xiàn)場(chǎng)的控制邏輯。
工業(yè)自動(dòng)化領(lǐng)域,冗余控制是一種滿足連續(xù)工作要求,提高控制系統(tǒng)可靠性和可用性的有效手段。冗余控制嚴(yán)格來(lái)講是采用一定或成倍量的設(shè)備或元器件的方式組成控制系統(tǒng)來(lái)參加控制。當(dāng)某一設(shè)備或元器件發(fā)生故障而損壞時(shí),它可以通過(guò)硬件、軟件或人為方式,相互切換作為后備設(shè)備或元器件,替代因故障而損壞的設(shè)備或元器件,保持系統(tǒng)正常工作,降低控制設(shè)備因故障而造成的損失。
冗余控制的一個(gè)重要功能是同步(synchronization)。它是指冗余系統(tǒng)的兩個(gè)或多個(gè)處理器之間要經(jīng)常比較各自的狀態(tài),根據(jù)一定的規(guī)則以決定系統(tǒng)是否工作在正常的狀態(tài)。同步的處理算法也是冗余控制的核心算法,決定了該冗余系統(tǒng)的總體可靠性和運(yùn)行性能。
冗余控制的分類(lèi)
冗余控制的方式在不同的領(lǐng)域和客戶需求下,采用的方式也不盡相同。一般冗余控制可分為:處理器冗余;通信冗余;I/O冗余;電源冗余。按冗余的切換方式來(lái)分大致可分為:熱備份(hotbackup),即硬冗余方式,當(dāng)主設(shè)備故障時(shí),通過(guò)特定硬件判別、備份方式無(wú)間隙地自動(dòng)切換到備用設(shè)備上,保持系統(tǒng)正常運(yùn)行;溫備份(warmbackup),即軟冗余方式,主要通過(guò)編程方式來(lái)實(shí)現(xiàn)冗余。由于軟冗余的實(shí)現(xiàn)受多方因素制約,系統(tǒng)切換的時(shí)間較硬冗余稍長(zhǎng),因此部分軟冗余可能會(huì)使主設(shè)備在發(fā)生切換時(shí)有間隙或需要人為簡(jiǎn)單干預(yù)或預(yù)置才得以完善。冷備份(cold-backup),即一套或部分冗余的設(shè)備不通電、不工作。當(dāng)主設(shè)備故障時(shí)需要人工恢復(fù)系統(tǒng)運(yùn)行。
根據(jù)前面對(duì)上述城市交通信號(hào)機(jī)組成和冗余控制的描述,城市交通冗余控制主要包含了信號(hào)機(jī)冗余、信號(hào)燈驅(qū)動(dòng)模塊冗余、電源冗余、通訊冗余等。從成本和系統(tǒng)復(fù)雜度考慮,雙機(jī)熱備冗余技術(shù)可以滿足大部分城市交通信號(hào)機(jī)的可靠性要求。下圖是雙機(jī)熱備的城市交通信號(hào)機(jī)架構(gòu)圖:
▲圖1 雙機(jī)熱備冗余信號(hào)機(jī)架構(gòu)圖
信號(hào)機(jī)冗余的工作原理
作為城市交通信號(hào)控制系統(tǒng)的核心組件,信號(hào)機(jī)冗余也是整個(gè)雙機(jī)熱備冗余系統(tǒng)運(yùn)作的關(guān)鍵。在兩套獨(dú)立供電的信號(hào)機(jī)箱內(nèi),將信號(hào)機(jī)通過(guò)通訊冗余線進(jìn)行物理連接。當(dāng)主機(jī)箱發(fā)生故障時(shí),備用機(jī)箱自動(dòng)投入運(yùn)行,稱(chēng)故障切換或系統(tǒng)切換。
兩個(gè)信號(hào)機(jī)模塊一個(gè)為主信號(hào)機(jī),一個(gè)為備信號(hào)機(jī),正常運(yùn)行情況下、主信號(hào)機(jī)參與相位邏輯運(yùn)算,備信號(hào)機(jī)處于“熱備份"狀態(tài),即備信號(hào)機(jī)在線工作,只是不參與通訊和控制。一旦主信號(hào)機(jī)出現(xiàn)故障,備信號(hào)機(jī)便可自動(dòng)接替其工作,系統(tǒng)不受停機(jī)損失。主備信號(hào)機(jī)之間通過(guò)實(shí)時(shí)數(shù)據(jù)通信完成數(shù)據(jù)同步,每個(gè)信號(hào)機(jī)具有自檢功能,當(dāng)主信號(hào)機(jī)檢測(cè)到故障以后,將故障信息發(fā)送給備信號(hào)機(jī),備信號(hào)機(jī)得知主信號(hào)機(jī)故障后,便會(huì)使能備用通訊和輸出功能,接替主信號(hào)機(jī)控制相位。
信號(hào)機(jī)冗余的同步算法
信號(hào)機(jī)冗余的同步算法是整個(gè)冗余系統(tǒng)的核心。主備信號(hào)機(jī)之間需要通過(guò)某個(gè)通訊線(以下稱(chēng)作冗余線)進(jìn)行主備協(xié)商、數(shù)據(jù)共享和主備切換。通訊的介質(zhì)一般可以通過(guò)以太網(wǎng)接口,或普通的RS232/485接口。接口的通訊速率決定著冗余的切換時(shí)間。大部分冗余技術(shù)的同步算法基于復(fù)雜的狀態(tài)機(jī)進(jìn)行設(shè)計(jì)。雙信號(hào)機(jī)熱備冗余的同步狀態(tài)機(jī)的實(shí)現(xiàn)功能目標(biāo)大致如下:
1、兩個(gè)信號(hào)機(jī)在連接輸出冗余線的情況下,實(shí)現(xiàn)同時(shí)上電后只有一個(gè)信號(hào)機(jī)是主,一個(gè)是備。
2、主信號(hào)機(jī)運(yùn)行相位邏輯并進(jìn)行輸出通訊,備信號(hào)機(jī)同步主信號(hào)機(jī)的相位數(shù)據(jù)計(jì)算相位邏輯,但不輸出通訊。
3、冗余信號(hào)機(jī)在連接冗余線和輸出通訊線的情況下,主信號(hào)機(jī)斷電, 備信號(hào)機(jī)切換成主,并輸出通訊。
4、冗余信號(hào)機(jī)在連接冗余線和輸出通訊線的情況下,主信號(hào)機(jī)斷開(kāi)輸出通訊線,備信號(hào)機(jī)切換成主,并輸出通訊。
5、冗余信號(hào)機(jī)在連接冗余線和輸出通訊線的情況下,主信號(hào)機(jī)運(yùn)行死機(jī),備信號(hào)機(jī)切換成主,并輸出通訊。
6、冗余信號(hào)機(jī)在連接冗余線和輸出通訊線的情況下,斷開(kāi)冗余線,主備狀態(tài)保持不變。
7、冗余信號(hào)機(jī)在主備切換時(shí),輸出相位數(shù)據(jù)不出現(xiàn)明顯錯(cuò)亂。
信號(hào)機(jī)冗余的同步數(shù)據(jù)通訊
冗余信號(hào)機(jī)數(shù)據(jù)同步包括發(fā)起同步與接受同步:
1、發(fā)起同步:主信號(hào)機(jī)發(fā)送同步請(qǐng)求幀,并等接收到備信號(hào)機(jī)同步應(yīng)答幀后,發(fā)送同步確認(rèn)幀,并執(zhí)行同步后信息交換;
2、接受同步:備信號(hào)機(jī)在任務(wù)開(kāi)始時(shí),判斷是否收到同步請(qǐng)求幀,收到后回復(fù)同步應(yīng)答幀,并等收到主信號(hào)機(jī)同步確認(rèn)幀后,執(zhí)行同步后信息交換。
主備信號(hào)機(jī)同步算法是建立在主備冗余方式上的,在信號(hào)機(jī)同步之前必須規(guī)主信號(hào)機(jī)為同步發(fā)起方,備信號(hào)機(jī)為同步被喚醒方。同步通訊原理如下圖所示:
▲圖2 通訊原理
信號(hào)機(jī)冗余的狀態(tài)機(jī)
信號(hào)機(jī)冗余狀態(tài)機(jī)是主備信號(hào)機(jī)在上電以及正常運(yùn)行過(guò)程中所出現(xiàn)的狀態(tài)以及轉(zhuǎn)換的觸發(fā)條件。
主備系統(tǒng)的狀態(tài)包含:
1、等待:信號(hào)機(jī)上電后進(jìn)入等待狀態(tài),等待另外一臺(tái)信號(hào)機(jī)上電。等待狀態(tài)發(fā)送等待報(bào)文。
2、協(xié)商:信號(hào)機(jī)收到等待報(bào)文后進(jìn)入?yún)f(xié)商狀態(tài),根據(jù)上電時(shí)間信息爭(zhēng)奪誰(shuí)是主誰(shuí)是備。
3、主運(yùn)行:協(xié)商爭(zhēng)奪的主信號(hào)機(jī)進(jìn)入主運(yùn)行狀態(tài)。發(fā)送同步數(shù)據(jù)。主運(yùn)行狀態(tài)可以輸出相位信息到信號(hào)燈驅(qū)動(dòng)模塊。
4、備運(yùn)行:協(xié)商爭(zhēng)奪失敗的備信號(hào)機(jī)進(jìn)入備運(yùn)行狀態(tài)。接收主同步數(shù)據(jù)。備信號(hào)機(jī)通過(guò)主的同步數(shù)據(jù)進(jìn)行相位邏輯運(yùn)算,但不輸出。
5、故障:當(dāng)主信號(hào)機(jī)在運(yùn)行過(guò)程中檢測(cè)到故障,著將故障信息同步到備,并放棄主的權(quán)利。
冗余狀態(tài)機(jī)的切換觸發(fā):
1、等待狀態(tài):超時(shí)為收到對(duì)方報(bào)文,進(jìn)入主運(yùn)行;收到等待報(bào)進(jìn)入?yún)f(xié)商;收到主同步報(bào)文進(jìn)入備運(yùn)行;
2、協(xié)商狀態(tài):收到協(xié)商報(bào)文進(jìn)入主運(yùn)行或備運(yùn)行;超時(shí)進(jìn)入等待狀態(tài);
3、主運(yùn)行狀態(tài):信號(hào)燈驅(qū)動(dòng)模塊通訊中斷進(jìn)入備運(yùn)行;檢測(cè)到故障進(jìn)入故障轉(zhuǎn)該;收到對(duì)方爭(zhēng)主報(bào)文進(jìn)入?yún)f(xié)商狀態(tài);
4、備運(yùn)行狀態(tài):收到主運(yùn)行退出報(bào)文進(jìn)入主運(yùn)行;冗余線斷且信號(hào)燈驅(qū)動(dòng)模塊未動(dòng)作,判斷對(duì)方主斷電,切換為主;冗余線鏈路正常且信號(hào)燈驅(qū)動(dòng)模塊未動(dòng)作,判斷對(duì)方主死機(jī),切換為主;
5、故障狀態(tài):檢測(cè)到故障恢復(fù),著進(jìn)入備運(yùn)行;
狀態(tài)機(jī)圖如下所示:
▲圖3 冗余狀態(tài)機(jī)
信號(hào)機(jī)冗余的故障檢測(cè)
為了保證當(dāng)主信號(hào)機(jī)出現(xiàn)故障時(shí),備信號(hào)機(jī)可以及時(shí)準(zhǔn)確地接替故障模塊工作,必須要求系統(tǒng)有精確的在線故障檢測(cè)能力,實(shí)現(xiàn)故障發(fā)現(xiàn)、定位、隔離和故障報(bào)警。雙機(jī)熱備冗余的信號(hào)機(jī)故障可以分為處理芯片故障、通訊故障、電源故障、內(nèi)部存儲(chǔ)器故障、外部存儲(chǔ)器故障等。
對(duì)于信號(hào)機(jī)的故障檢測(cè)技術(shù),市面上的信號(hào)機(jī)產(chǎn)品都有較為成熟的技術(shù)方案,本文不進(jìn)行詳細(xì)描述。在雙機(jī)熱備冗余的信號(hào)機(jī)系統(tǒng)架構(gòu)下,故障檢測(cè)技術(shù)的重點(diǎn)和難點(diǎn)是快速發(fā)現(xiàn)故障,并做主備切換和保護(hù)現(xiàn)場(chǎng)運(yùn)行。而傳統(tǒng)單一信號(hào)機(jī)架構(gòu)故障檢測(cè)無(wú)法避免對(duì)現(xiàn)場(chǎng)的控制變化。這也是冗余系統(tǒng)架構(gòu)對(duì)單一系統(tǒng)的絕對(duì)優(yōu)勢(shì)。
信號(hào)機(jī)冗余的無(wú)擾動(dòng)切換
無(wú)擾動(dòng)切換就是當(dāng)備信號(hào)機(jī)檢測(cè)到主信號(hào)機(jī)故障時(shí),備信號(hào)機(jī)立即接替故障信號(hào)機(jī)工作,保證接管前后相位輸出狀態(tài)不變,同時(shí)保證故障信號(hào)機(jī)輸出控制信號(hào)對(duì)設(shè)備不產(chǎn)生干擾。故無(wú)擾動(dòng)切換具有以下三個(gè)技術(shù)指標(biāo):
1、出現(xiàn)故障后,冗余切換時(shí)間盡可能短(在100ms以?xún)?nèi))。該指標(biāo)由故障檢測(cè)時(shí)間決定,而故障檢測(cè)時(shí)間又受信號(hào)機(jī)同步算法周期影響,同步周期越短,故障檢測(cè)時(shí)間越短,冗余切換時(shí)間越短。
2、對(duì)故障信號(hào)機(jī)故障前輸出狀態(tài)的現(xiàn)場(chǎng)保存。該指標(biāo)是通過(guò)數(shù)據(jù)同步算法實(shí)現(xiàn),每次同步完成后,都需要進(jìn)行輸出狀態(tài)存儲(chǔ)和共享。
3、故障信號(hào)機(jī)的隔離。該指標(biāo)是信號(hào)燈驅(qū)動(dòng)模塊的冗余和回檢實(shí)現(xiàn)的,在雙機(jī)熱備冗余方式中,通過(guò)信號(hào)燈驅(qū)動(dòng)模塊對(duì)故障信號(hào)機(jī)的輸出信號(hào)(或通訊協(xié)議)進(jìn)行實(shí)時(shí)監(jiān)測(cè)和分析,當(dāng)發(fā)現(xiàn)信號(hào)機(jī)輸出信號(hào)故障(或通訊超時(shí)),模塊對(duì)輸出進(jìn)行隔離。
本文針對(duì)城市交通信號(hào)機(jī)的實(shí)際工作環(huán)境和運(yùn)行特點(diǎn),將雙機(jī)熱備冗余技術(shù)運(yùn)用信號(hào)控制方式中。這種冗余技術(shù)增強(qiáng)了系統(tǒng)的可維護(hù)性,大大提高了信號(hào)機(jī)的可靠性和穩(wěn)定性,具有很好的實(shí)用價(jià)值和廣闊的應(yīng)用前景。
作者單位:浙江浙大中控信息技術(shù)有限公司