一種用于程序死鎖的保護(hù)電路的制作方法
【專利摘要】本發(fā)明公開了一種用于程序死鎖的保護(hù)電路,包括:智能控制器,用于對(duì)被控設(shè)備進(jìn)行智能化控制;若干可編程處理器,均設(shè)置有獨(dú)立運(yùn)行于智能控制器的保護(hù)功能單元,用于對(duì)智能控制器進(jìn)行監(jiān)控,并在智能控制器程序死鎖時(shí)發(fā)出控制信號(hào)以對(duì)被控設(shè)備進(jìn)行保護(hù)。本發(fā)明獨(dú)立于智能控制器芯片自主運(yùn)行,采用并行的智能控制器芯片檢測和動(dòng)作機(jī)制可以提高電力系統(tǒng)控制裝置的可靠性和魯棒性。
【專利說明】
一種用于程序死鎖的保護(hù)電路
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及電力系統(tǒng)控制技術(shù)領(lǐng)域,具體地說,涉及一種應(yīng)用于分布式設(shè)備上的用于程序死鎖的保護(hù)電路。
【背景技術(shù)】
[0002]電力系統(tǒng)裝置中的智能控制器,一般由單片機(jī)作為控制核心,通過在其上運(yùn)行的控制軟件對(duì)系統(tǒng)裝置中的電能設(shè)備進(jìn)行智能化控制。電力系統(tǒng)裝置處于電源系統(tǒng)與載荷系統(tǒng)的銜接處,在發(fā)生意外的情況下,對(duì)兩側(cè)系統(tǒng)進(jìn)行隔離保護(hù)的能力十分關(guān)鍵。
[0003]在電力系統(tǒng)裝置運(yùn)行過程中,物理環(huán)境和電磁環(huán)境非常復(fù)雜,條件也十分苛刻,這些外來因素可能會(huì)導(dǎo)致智能控制器的核心處理器(如DSP)停止正常運(yùn)行。同時(shí),DSP上軟件編寫或者調(diào)試過程中,難免會(huì)出現(xiàn)邏輯錯(cuò)誤,導(dǎo)致核心處理器DSP進(jìn)入死循環(huán)狀態(tài)。這些情況下,DSP喪失了正??刂坪团袛嗟倪\(yùn)算能力,會(huì)導(dǎo)致保護(hù)動(dòng)作的失效,將整個(gè)電力控制系統(tǒng)置于危險(xiǎn)之中。因此,有必要采取相應(yīng)的設(shè)計(jì),在這類事故發(fā)生的時(shí)候,自動(dòng)的執(zhí)行保護(hù)動(dòng)作。
[0004]以往的DSP程序死鎖保護(hù)動(dòng)作僅僅存在于DSP內(nèi)部,使用DSP芯片內(nèi)部的看門狗模塊完成運(yùn)行過程的保護(hù),即DSP上運(yùn)行的程序定期的對(duì)看門狗模塊進(jìn)行驅(qū)動(dòng)更新設(shè)置。正常運(yùn)行的情況下,看門狗模塊能夠定期的被DSP控制軟件更新,從而使DSP保持在正常的工作狀態(tài)。
[0005]當(dāng)意外發(fā)生的時(shí)候,DSP程序出現(xiàn)死鎖,此時(shí)看門狗模塊的設(shè)置將得不到定期更新。一段時(shí)間以后,看門狗的延時(shí)控制邏輯將觸發(fā)一個(gè)超時(shí)信號(hào),也就是軟件保護(hù)信號(hào)。該軟件保護(hù)信號(hào)由于是DSP內(nèi)部產(chǎn)生內(nèi)部使用,所以其保護(hù)動(dòng)作局限在DSP芯片內(nèi)部,所能做的保護(hù)動(dòng)作也基本上只是驅(qū)動(dòng)DSP芯片重新啟動(dòng)。由此可知,只通過DSP芯片上的看門狗保護(hù)模塊進(jìn)行保護(hù)動(dòng)作,電力系統(tǒng)的可靠性和魯棒性得不到足夠保證。
【發(fā)明內(nèi)容】
[0006]為解決以上問題,本發(fā)明提供了一種用于程序死鎖的保護(hù)電路,用于對(duì)智能控制器的運(yùn)行狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)控。
[0007]根據(jù)本發(fā)明的一個(gè)實(shí)施例,提供了一種用于程序死鎖的保護(hù)電路,包括:
[0008]智能控制器,用于對(duì)被控設(shè)備進(jìn)行智能化控制;
[0009]若干可編程處理器,均設(shè)置有獨(dú)立運(yùn)行于所述智能控制器的保護(hù)功能單元,用于對(duì)所述智能控制器進(jìn)行監(jiān)控,并在所述智能控制器程序死鎖時(shí)發(fā)出控制信號(hào)以對(duì)被控設(shè)備進(jìn)行保護(hù)。
[0010]根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述可編程處理器包括FPGA和CPLD。
[0011]根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述可編程處理器設(shè)置于分立的輸入輸出模塊上。
[0012]根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述保護(hù)功能單元設(shè)置看門狗模塊來實(shí)現(xiàn)對(duì)所述智能控制器的程序監(jiān)測。
[0013]根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述智能控制器內(nèi)置看門狗模塊來實(shí)現(xiàn)自身的程序監(jiān)測。
[0014]根據(jù)本發(fā)明的一個(gè)實(shí)施例,若干所述可編程處理器以并行處理方式反向監(jiān)測所述智能控制器。
[0015]根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述智能控制器與若干所述可編程處理器之間通過總線方式連接。
[0016]根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述保護(hù)功能單元進(jìn)一步包括:
[0017]預(yù)分頻模塊,用于對(duì)接收的時(shí)鐘信號(hào)處理為所需頻率的時(shí)鐘信號(hào);
[0018]計(jì)數(shù)模塊,根據(jù)智能控制器輸出的復(fù)位信號(hào),復(fù)位減法計(jì)數(shù)器來對(duì)時(shí)鐘信號(hào)進(jìn)行計(jì)數(shù);
[0019]判斷模塊,根據(jù)計(jì)數(shù)器的計(jì)數(shù)結(jié)果判斷是否輸出保護(hù)控制信號(hào);
[0020]輸出模塊,將保護(hù)控制信號(hào)發(fā)送到對(duì)應(yīng)的外部動(dòng)作設(shè)備。
[0021]根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述輸出模塊采用可編程控制開關(guān)。
[0022]根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述判斷模塊采用減數(shù)計(jì)數(shù)器。
[0023]本發(fā)明的有益效果:
[0024]本發(fā)明利用可編程處理器的運(yùn)算和邏輯判斷能力,通過設(shè)置在可編程處理器上的死鎖保護(hù)器件對(duì)智能控制器的運(yùn)行狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)控,當(dāng)智能控制器的硬件環(huán)境或者軟件程序發(fā)生異常情況的時(shí)候,自主的驅(qū)動(dòng)外圍設(shè)備進(jìn)行保護(hù)動(dòng)作。由于可編程處理器件獨(dú)立于智能控制器芯片自主的運(yùn)行,這種并行的檢測和動(dòng)作機(jī)制可以提高電力系統(tǒng)控制裝置的可靠性和魯棒性。
[0025]本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過在說明書、權(quán)利要求書以及附圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。
【附圖說明】
[0026]為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要的附圖做簡單的介紹:
[0027]圖1是根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于程序死鎖的保護(hù)電路系統(tǒng)架構(gòu)圖;
[0028]圖2是根據(jù)本發(fā)明的一個(gè)實(shí)施例的采用FPGA實(shí)現(xiàn)保護(hù)功能單元的設(shè)計(jì)原理圖。
【具體實(shí)施方式】
[0029]以下將結(jié)合附圖及實(shí)施例來詳細(xì)說明本發(fā)明的實(shí)施方式,借此對(duì)本發(fā)明如何應(yīng)用技術(shù)手段來解決技術(shù)問題,并達(dá)成技術(shù)效果的實(shí)現(xiàn)過程能充分理解并據(jù)以實(shí)施。需要說明的是,只要不構(gòu)成沖突,本發(fā)明中的各個(gè)實(shí)施例以及各實(shí)施例中的各個(gè)特征可以相互結(jié)合,所形成的技術(shù)方案均在本發(fā)明的保護(hù)范圍之內(nèi)。
[0030]當(dāng)前大功率電力裝置的控制系統(tǒng)主流設(shè)計(jì)中,采樣和輸出模塊通常采用與主控芯片分立設(shè)計(jì)的方案,即輸入和輸出功能部署在外部的板卡甚至是遠(yuǎn)端設(shè)備上。以往的基于控制芯片內(nèi)部看門狗的設(shè)計(jì)方案不能夠保證處理單元發(fā)生異常的時(shí)候,及時(shí)通知到各個(gè)輸入輸出設(shè)備,并觸發(fā)對(duì)應(yīng)的保護(hù)動(dòng)作。
[0031]同時(shí),以往大功率電力裝置的保護(hù)措施大多集中在運(yùn)行參數(shù)超限超閾值性質(zhì),而對(duì)于模擬輸出量的連續(xù)控制機(jī)制中,由于需要控制軟件不間斷的輸出控制信號(hào),就必須采用獨(dú)立前置的程序死鎖保護(hù)機(jī)制,防止輸出信號(hào)的錯(cuò)誤中斷。同樣的,離散控制(開關(guān)量控制)外設(shè)中,也需要保證主控模塊的連續(xù)運(yùn)行反向檢測,當(dāng)主控模塊由于各種原因發(fā)生故障時(shí),控制輸出外設(shè)應(yīng)該自主的完成保護(hù)動(dòng)作。
[0032]因此,本發(fā)明提供了一種用于程序死鎖的保護(hù)電路,如圖1所示為根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于程序死鎖的保護(hù)電路系統(tǒng)架構(gòu)圖,以下參考圖1來對(duì)本發(fā)明進(jìn)行詳細(xì)說明。
[0033]該保護(hù)電路包括智能控制器及分別與該智能控制器連接的若干可編程處理器,其中,智能控制器用于對(duì)被控設(shè)備進(jìn)行智能化控制;可編程處理器均設(shè)置有獨(dú)立運(yùn)行于智能控制器的保護(hù)功能模塊,用于對(duì)智能控制器進(jìn)行監(jiān)控,并在智能控制器程序死鎖時(shí)發(fā)出控制信號(hào)以對(duì)被控設(shè)備進(jìn)行保護(hù)??删幊烫幚砥骺捎糜趯?duì)模擬和/或數(shù)字信號(hào)的處理。
[0034]本發(fā)明利用可編程處理器的運(yùn)算能力,通過其上獨(dú)立運(yùn)行的保護(hù)功能單元,對(duì)智能控制器的運(yùn)行狀態(tài)進(jìn)行檢測和監(jiān)測,并且在智能控制器運(yùn)行狀態(tài)異常(程序發(fā)生死鎖)的時(shí)候,發(fā)出控制信號(hào)驅(qū)動(dòng)相關(guān)電氣設(shè)備完成電力系統(tǒng)裝置的保護(hù),從而解決了智能控制器內(nèi)部軟件監(jiān)測的局限性問題。
[0035]智能控制器一般為單片機(jī)、DSP等數(shù)據(jù)處理器,可編程處理器為FPGA、CPLD等可編程邏輯處理器,本發(fā)明以DSP和FPGA為例進(jìn)行說明,但不限于此。
[0036]按照FPGA與DSP設(shè)置位置的不同,可以大致分為三種實(shí)現(xiàn)方式:緊密耦合方式,F(xiàn)PGA芯片與DSP芯片位于同一個(gè)電路板卡;松散耦合方式,F(xiàn)PGA芯片與DSP位于不同的電路板卡,并且通過板卡之間的總線進(jìn)行信息的交互;遠(yuǎn)程耦合方式,F(xiàn)PGA芯片作為前置(遠(yuǎn)程)裝置的控制核心,與DSP通過長距離的通信手段例如串行通信進(jìn)行信息交換。
[0037]無論FPGA與DSP耦合方式如何,均需要保證FPGA獨(dú)立運(yùn)行于DSP,使FPGA作為DSP的輔助監(jiān)測處理手段,具備自主的邏輯和信息處理能力,從而完成更加可靠的保護(hù)動(dòng)作。并且,如圖1所示,該保護(hù)電路可以設(shè)置多個(gè)可編程處理器,各可編程處理器與DSP通過總線方式連接,各FPGA與DSP可以通過并行處理模式,協(xié)同一致完成電力裝置的控制,而不是單純的作為外設(shè)提供數(shù)據(jù)或者接收指令。
[0038]在本發(fā)明的一個(gè)實(shí)施例中,保護(hù)功能單元設(shè)置看門狗模塊來實(shí)現(xiàn)對(duì)智能控制器的程序監(jiān)測。同時(shí),智能控制器也內(nèi)置看門狗模塊來實(shí)現(xiàn)自身的程序監(jiān)測。通過保護(hù)功能單元和智能控制器上的看門狗模塊雙重監(jiān)測模式,來對(duì)電力系統(tǒng)裝置進(jìn)行監(jiān)測,從而提高對(duì)電力系統(tǒng)裝置的保護(hù)。
[0039]在本發(fā)明的一個(gè)實(shí)施例中,可編程處理器設(shè)置于分立的輸入輸出模塊上。具體的,電力系統(tǒng)智能控制裝置中,在分立的信號(hào)輸入模塊或者控制輸出模塊中部署可編程處理器FPGA,并且在FPGA器件上根據(jù)需要配置DSP之外的保護(hù)功能單元。當(dāng)DSP運(yùn)行過程中由于各種原因出現(xiàn)程序死鎖的時(shí)候,部署在FPGA上的硬件保護(hù)邏輯將自主的生成保護(hù)動(dòng)作驅(qū)動(dòng)信號(hào),完成電路的狀態(tài)切換動(dòng)作。
[0040]如圖1所示,F(xiàn)PGA器件上的程序死鎖保護(hù)功能單元獨(dú)立于DSP信號(hào)處理單元,對(duì)DSP的運(yùn)行狀態(tài)進(jìn)行監(jiān)測。正常情況下DSP上運(yùn)行的控制程序會(huì)定期的更新FPGA硬件看門狗的控制計(jì)數(shù)器,以通知FPGA上的程序死鎖保護(hù)模塊自身的運(yùn)行狀態(tài)正常。
[0041]當(dāng)異常情況發(fā)生的時(shí)候,DSP由于發(fā)生死鎖,定時(shí)更新機(jī)制會(huì)被中斷,會(huì)導(dǎo)致看門狗信號(hào)超出安全閘的限值。FPGA器件上的死鎖保護(hù)機(jī)制在預(yù)定的時(shí)間內(nèi)如果沒有獲得更新,就可以產(chǎn)生DSP死鎖的判斷,進(jìn)而發(fā)出對(duì)應(yīng)的控制信號(hào),驅(qū)動(dòng)附屬在控制器上的保護(hù)器件進(jìn)行相應(yīng)的保護(hù)動(dòng)作。
[0042]在本發(fā)明的一個(gè)實(shí)施例中,該保護(hù)功能單元進(jìn)一步包括預(yù)分頻模塊、計(jì)數(shù)模塊、判斷模塊和輸出模塊。其中,預(yù)分頻模塊用于對(duì)接收的時(shí)鐘信號(hào)處理為所需頻率的時(shí)鐘信號(hào);計(jì)數(shù)模塊,根據(jù)智能控制器輸出的復(fù)位信號(hào),復(fù)位減法計(jì)數(shù)器來對(duì)時(shí)鐘信號(hào)進(jìn)行計(jì)數(shù);判斷模塊,根據(jù)減法計(jì)數(shù)器的計(jì)數(shù)結(jié)果判斷是否輸出保護(hù)控制信號(hào);輸出模塊,將保護(hù)控制信號(hào)發(fā)送到對(duì)應(yīng)的外部動(dòng)作設(shè)備。輸出控制采用可編程的開關(guān)器件進(jìn)行通斷(使能)控制,滿足動(dòng)態(tài)狀態(tài)切換的要求。
[0043]如圖2所示為根據(jù)本發(fā)明的一個(gè)實(shí)施例的采用FPGA實(shí)現(xiàn)保護(hù)功能單元的設(shè)計(jì)原理圖。如圖2所示,輸入的60MHz時(shí)鐘信號(hào)經(jīng)過分頻處理以后,變成IMHz的計(jì)時(shí)時(shí)鐘脈沖,目標(biāo)是將硬件保護(hù)電路的時(shí)間參數(shù)定為I微秒。硬件保護(hù)電路的核心是一個(gè)可復(fù)位的減計(jì)數(shù)器。當(dāng)智能控制器輸出的RST信號(hào)有效時(shí),計(jì)數(shù)寄存器使用輸入?yún)?shù)N作為初始值設(shè)定。正常工作是,RST消失以后,計(jì)數(shù)寄存器每個(gè)計(jì)數(shù)周期完成一次遞減操作,直到為零。計(jì)數(shù)寄存器的數(shù)值為零的時(shí)候,不再自動(dòng)遞減,而是保持這個(gè)狀態(tài)直到下一次復(fù)位操作。系統(tǒng)保護(hù)電路的輸出由判決運(yùn)算“==0”的結(jié)果決定,然后通過輸出控制的多路選擇以后,將保護(hù)控制信號(hào)發(fā)送到對(duì)應(yīng)的外部動(dòng)作設(shè)備。
[0044]利用FPGA計(jì)算技術(shù)進(jìn)行分布式系統(tǒng)程序死鎖保護(hù)的應(yīng)用軟件的使用按照如下的邏輯進(jìn)行編寫。初始化,關(guān)閉/清除FPGA-WD相關(guān)的輸出通道設(shè)置;設(shè)定初始計(jì)數(shù)值,按照延時(shí)保護(hù)的要求,微秒為單位;打開(使能)對(duì)應(yīng)的輸出通道。定時(shí)對(duì)初始計(jì)數(shù)器進(jìn)行復(fù)位操作;程序運(yùn)行結(jié)束或者需要中斷調(diào)試的時(shí)候,需要按照如下的邏輯進(jìn)行編寫:關(guān)閉對(duì)應(yīng)的輸出通道,防止保護(hù)系統(tǒng)的誤動(dòng)作;程序停止/退出。
[0045]本發(fā)明利用可編程處理器的運(yùn)算和邏輯判斷能力,通過設(shè)置在可編程處理器上的死鎖保護(hù)器件對(duì)智能控制器的運(yùn)行狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)控。當(dāng)智能控制器的硬件環(huán)境或者軟件程序發(fā)生異常情況的時(shí)候,自主的驅(qū)動(dòng)外圍設(shè)備進(jìn)行保護(hù)動(dòng)作。由于可編程處理器件獨(dú)立于智能控制器芯片自主的運(yùn)行,這種并行的檢測和動(dòng)作機(jī)制可以提高電力系統(tǒng)控制裝置的可靠性和魯棒性。
[0046]雖然本發(fā)明所公開的實(shí)施方式如上,但所述的內(nèi)容只是為了便于理解本發(fā)明而采用的實(shí)施方式,并非用以限定本發(fā)明。任何本發(fā)明所屬技術(shù)領(lǐng)域內(nèi)的技術(shù)人員,在不脫離本發(fā)明所公開的精神和范圍的前提下,可以在實(shí)施的形式上及細(xì)節(jié)上作任何的修改與變化,但本發(fā)明的專利保護(hù)范圍,仍須以所附的權(quán)利要求書所界定的范圍為準(zhǔn)。
【主權(quán)項(xiàng)】
1.一種用于程序死鎖的保護(hù)電路,包括: 智能控制器,用于對(duì)被控設(shè)備進(jìn)行智能化控制; 若干可編程處理器,均設(shè)置有獨(dú)立運(yùn)行于所述智能控制器的保護(hù)功能單元,用于對(duì)所述智能控制器進(jìn)行監(jiān)控,并在所述智能控制器程序死鎖時(shí)發(fā)出控制信號(hào)以對(duì)被控設(shè)備進(jìn)行保護(hù)。2.根據(jù)權(quán)利要求1所述的保護(hù)電路,其特征在于,所述可編程處理器包括FPGA和CPLD。3.根據(jù)權(quán)利要求1或2所述的保護(hù)電路,其特征在于,所述可編程處理器設(shè)置于分立的輸入輸出模塊上。4.根據(jù)權(quán)利要求1-3中任一項(xiàng)所述的保護(hù)電路,其特征在于,所述保護(hù)功能單元設(shè)置看門狗模塊來實(shí)現(xiàn)對(duì)所述智能控制器的程序監(jiān)測。5.根據(jù)權(quán)利要求1-4中任一項(xiàng)所述的保護(hù)電路,其特征在于,所述智能控制器內(nèi)置看門狗模塊來實(shí)現(xiàn)自身的程序監(jiān)測。6.根據(jù)權(quán)利要求1-5中任一項(xiàng)所述的保護(hù)電路,其特征在于,若干所述可編程處理器以并行處理方式反向監(jiān)測所述智能控制器。7.根據(jù)權(quán)利要求1-6中任一項(xiàng)所述的保護(hù)電路,其特征在于,所述智能控制器與若干所述可編程處理器之間通過總線方式連接。8.根據(jù)權(quán)利要求1-7中任一項(xiàng)所述的保護(hù)電路,其特征在于,所述保護(hù)功能單元進(jìn)一步包括: 預(yù)分頻模塊,用于對(duì)接收的時(shí)鐘信號(hào)處理為所需頻率的時(shí)鐘信號(hào); 計(jì)數(shù)模塊,根據(jù)智能控制器輸出的復(fù)位信號(hào),復(fù)位減法計(jì)數(shù)器來對(duì)時(shí)鐘信號(hào)進(jìn)行計(jì)數(shù); 判斷模塊,根據(jù)計(jì)數(shù)器的計(jì)數(shù)結(jié)果判斷是否輸出保護(hù)控制信號(hào); 輸出模塊,將保護(hù)控制信號(hào)發(fā)送到對(duì)應(yīng)的外部動(dòng)作設(shè)備。9.根據(jù)權(quán)利要求8所述的保護(hù)電路,其特征在于,所述輸出模塊采用可編程控制開關(guān)。10.根據(jù)權(quán)利要求8所述的保護(hù)電路,其特征在于,所述判斷模塊采用減數(shù)計(jì)數(shù)器。
【文檔編號(hào)】G05B23/02GK105929811SQ201610211014
【公開日】2016年9月7日
【申請日】2016年4月6日
【發(fā)明人】曹軍威, 袁仲達(dá), 張少杰, 楊潔
【申請人】清華大學(xué)