一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng)的制作方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),包括中斷任務(wù)、底層服務(wù)任務(wù)和應(yīng)用任務(wù),中斷任務(wù)之間存在優(yōu)先級(jí),中斷任務(wù)能夠打斷應(yīng)用任務(wù)和底層服務(wù)任務(wù)優(yōu)先執(zhí)行,中斷任務(wù)與應(yīng)用任務(wù)、底層服務(wù)任務(wù)之間通過(guò)數(shù)據(jù)接口函數(shù)進(jìn)行傳遞;底層服務(wù)任務(wù)之間相互獨(dú)立,不存在優(yōu)先級(jí),每個(gè)底層服務(wù)任務(wù)使用單獨(dú)定義的變量、結(jié)構(gòu)體,在應(yīng)用任務(wù)和中斷任務(wù)中被觸發(fā);應(yīng)用任務(wù)之間存在任務(wù)優(yōu)先級(jí),應(yīng)用任務(wù)只執(zhí)行算法計(jì)算,并最終將數(shù)據(jù)通過(guò)接口函數(shù)傳遞給底層服務(wù)任務(wù),并觸發(fā)底層服務(wù)任務(wù)開(kāi)始執(zhí)行。本發(fā)明通過(guò)對(duì)任務(wù)調(diào)度運(yùn)行方式的改進(jìn),從而能夠大大節(jié)省程序主循環(huán)時(shí)間,既可以保持高的運(yùn)行效率,也大大降低了硬件系統(tǒng)的功耗。
【專(zhuān)利說(shuō)明】
一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及智能綜合保護(hù)開(kāi)關(guān)技術(shù)領(lǐng)域,特別是涉及一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng)。
【背景技術(shù)】
[0002]智能綜合保護(hù)開(kāi)關(guān)是運(yùn)行時(shí)顯示配電線(xiàn)路中用電的電壓、電流的設(shè)備,廣泛用于辦公樓、商場(chǎng)、學(xué)校、酒店、賓館等公共娛樂(lè)場(chǎng)所及工礦企業(yè)倉(cāng)庫(kù)車(chē)間等場(chǎng)所。智能綜合保護(hù)開(kāi)關(guān)具有過(guò)電壓、欠電壓、過(guò)載、短路、漏電、消防、遠(yuǎn)程通訊、用電顯示、故障顯示、過(guò)載、過(guò)電壓、欠電壓、漏電流保護(hù)可調(diào)等功能,也可作為預(yù)費(fèi)電表專(zhuān)用開(kāi)關(guān)使用,智能綜合保護(hù)開(kāi)關(guān)在運(yùn)行時(shí)顯示配電線(xiàn)路中用電的電壓、電流等情況。是替代小型斷路器、漏電保護(hù)器、漏電斷路器、過(guò)欠壓保護(hù)器、熔斷器的最佳綜合保護(hù)器產(chǎn)品。主要適用于交流50Hz,額定電流從6A至63A額定絕緣電壓600V,額定工作電壓220V的配電線(xiàn)路中,作為線(xiàn)路中過(guò)電壓、欠電壓、過(guò)載、短路、人身觸電、設(shè)備漏電保護(hù)之用,也可用來(lái)防止因設(shè)備絕緣損壞,產(chǎn)生接地故障電流而引起的火災(zāi)危險(xiǎn)。智能綜合保護(hù)開(kāi)關(guān)通常采用高速微處理器,并帶有通訊接口,能夠直接與國(guó)電通服務(wù)器連接,通過(guò)計(jì)算機(jī)精確地設(shè)定、檢測(cè)、監(jiān)視電路中的用電情況。現(xiàn)有的智能綜合保護(hù)開(kāi)關(guān)(比如申請(qǐng)公布號(hào)CN104617662A所披露的)存在著程序主循環(huán)時(shí)間長(zhǎng),運(yùn)行效率低的弊端。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的目的在于克服現(xiàn)有技術(shù)之不足,提供一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),通過(guò)對(duì)任務(wù)調(diào)度運(yùn)行方式的改進(jìn),從而能夠大大節(jié)省程序主循環(huán)時(shí)間,既可以保持高的運(yùn)行效率,也大大降低了硬件系統(tǒng)的功耗。
[0004]本發(fā)明解決其技術(shù)問(wèn)題所采用的技術(shù)方案是:一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),包括開(kāi)啟全局中斷和進(jìn)入程序主循環(huán);系統(tǒng)中斷時(shí)執(zhí)行中斷任務(wù),程序主循環(huán)執(zhí)行多個(gè)應(yīng)用任務(wù)和多個(gè)底層服務(wù)任務(wù);中斷任務(wù)之間存在優(yōu)先級(jí),中斷任務(wù)能夠打斷應(yīng)用任務(wù)和底層服務(wù)任務(wù)優(yōu)先執(zhí)行,中斷任務(wù)與應(yīng)用任務(wù)、底層服務(wù)任務(wù)之間通過(guò)數(shù)據(jù)接口函數(shù)進(jìn)行傳遞;底層服務(wù)任務(wù)之間相互獨(dú)立,不存在優(yōu)先級(jí),每個(gè)底層服務(wù)任務(wù)使用單獨(dú)定義的變量、結(jié)構(gòu)體,在應(yīng)用任務(wù)和中斷任務(wù)中被觸發(fā);應(yīng)用任務(wù)之間存在任務(wù)優(yōu)先級(jí),應(yīng)用任務(wù)只執(zhí)行算法計(jì)算,并最終將數(shù)據(jù)通過(guò)接口函數(shù)傳遞給底層服務(wù)任務(wù),并觸發(fā)底層服務(wù)任務(wù)開(kāi)始執(zhí)行。
[0005]所述程序主循環(huán)包括喂看門(mén)狗、串口任務(wù)實(shí)時(shí)處理、WiFi模塊任務(wù)實(shí)時(shí)處理、校時(shí)任務(wù)實(shí)時(shí)處理、測(cè)量任務(wù)實(shí)時(shí)處理、保護(hù)任務(wù)實(shí)時(shí)處理、MODBUS協(xié)議實(shí)時(shí)處理、數(shù)據(jù)存儲(chǔ)任務(wù)實(shí)時(shí)處理和國(guó)電通協(xié)議任務(wù)實(shí)時(shí)處理;其中,串口任務(wù)實(shí)時(shí)處理、WiFi模塊任務(wù)實(shí)時(shí)處理和數(shù)據(jù)存儲(chǔ)任務(wù)實(shí)時(shí)處理為底層服務(wù)任務(wù),校時(shí)任務(wù)實(shí)時(shí)處理、測(cè)量任務(wù)實(shí)時(shí)處理、保護(hù)任務(wù)實(shí)時(shí)處理、MODBUS協(xié)議實(shí)時(shí)處理和國(guó)電通協(xié)議任務(wù)實(shí)時(shí)處理為應(yīng)用任務(wù)。
[0006]所述中斷任務(wù)包括Ims定時(shí)中斷、1ms定時(shí)中斷、EMU中斷、PMU中斷、RTC中斷和串口中斷。
[0007]所述中斷任務(wù),或?qū)?shù)據(jù)通過(guò)接口函數(shù)傳遞給底層服務(wù)任務(wù)或者應(yīng)用任務(wù),或觸發(fā)底層服務(wù)執(zhí)行機(jī)制,從而確保進(jìn)入中斷后程序只執(zhí)行一段很少的代碼就退出中斷。
[0008]所述應(yīng)用任務(wù)中,其中的一個(gè)或多個(gè)應(yīng)用任務(wù)還劃分為幾個(gè)子任務(wù),各子任務(wù)之間存在優(yōu)先級(jí),當(dāng)有高的優(yōu)先級(jí)子任務(wù)執(zhí)行時(shí),低優(yōu)先級(jí)子任務(wù)暫時(shí)擱置,直到高優(yōu)先級(jí)子任務(wù)執(zhí)行完畢。
[0009]所述底層服務(wù)任務(wù),在處理過(guò)程中當(dāng)需要用到延時(shí)函數(shù)時(shí),則是將延時(shí)判斷交給定時(shí)器進(jìn)行處理。
[0010]所述底層服務(wù)任務(wù)中還具有任務(wù)超時(shí)復(fù)位機(jī)制,以確保當(dāng)?shù)讓臃?wù)任務(wù)出現(xiàn)故障時(shí),不會(huì)對(duì)主程序的運(yùn)行造成影響。
[0011]所述測(cè)量任務(wù)實(shí)時(shí)處理用來(lái)執(zhí)行電網(wǎng)參數(shù)的有效值運(yùn)算、電能累積、保護(hù)參數(shù)更新,并在電能累積至預(yù)置數(shù)值時(shí),將電能參數(shù)傳遞至存儲(chǔ)數(shù)組,觸發(fā)存儲(chǔ)任務(wù)。
[0012]所述保護(hù)任務(wù)實(shí)時(shí)處理用來(lái)執(zhí)行過(guò)載、漏電、瞬時(shí)短路、過(guò)欠壓、溫度的保護(hù)算法,并在故障時(shí)觸發(fā)脫扣。
[0013]所述國(guó)電通協(xié)議任務(wù)實(shí)時(shí)處理用來(lái)執(zhí)行國(guó)電通協(xié)議規(guī)定的各種子任務(wù),按任務(wù)優(yōu)先級(jí)分為:定時(shí)用電數(shù)據(jù)獲取及觸發(fā)存儲(chǔ)、異常上報(bào)數(shù)據(jù)獲取及觸發(fā)上報(bào)、校時(shí)查詢(xún)幀觸發(fā)發(fā)送、定時(shí)用電數(shù)據(jù)觸發(fā)上報(bào);所有上報(bào)任務(wù)均采取優(yōu)先級(jí),并確保每次只執(zhí)行最高優(yōu)先級(jí)任務(wù)。
[0014]所述串口任務(wù)實(shí)時(shí)處理用來(lái)執(zhí)行串口接收數(shù)據(jù)傳遞、錯(cuò)誤還原和串口發(fā)送觸發(fā)兩個(gè)相互獨(dú)立的任務(wù);當(dāng)串口接收到合法數(shù)據(jù)時(shí),是將串口接收數(shù)組傳遞給傳遞數(shù)組;當(dāng)接收到非法的數(shù)據(jù)幀時(shí),則對(duì)串口接收數(shù)組及串口狀態(tài)進(jìn)行還原;當(dāng)其他任務(wù)需要串口進(jìn)行數(shù)據(jù)發(fā)送時(shí),將數(shù)據(jù)通過(guò)傳遞數(shù)組賦值給串口發(fā)送數(shù)組,觸發(fā)串口實(shí)時(shí)處理任務(wù)中的串口發(fā)送任務(wù),啟動(dòng)串口發(fā)送中斷進(jìn)行數(shù)據(jù)發(fā)送。
[0015]所述WiFi模塊任務(wù)實(shí)時(shí)處理用來(lái)執(zhí)行WiFi模塊下行數(shù)據(jù)的處理任務(wù),通過(guò)對(duì)接收傳遞數(shù)組進(jìn)行解析,得出WiFi模塊當(dāng)前工作狀態(tài)。
[0016]所述Modbus協(xié)議實(shí)時(shí)處理用來(lái)執(zhí)行Modbus協(xié)議讀/寫(xiě)功能碼的相關(guān)處理算法,并通過(guò)串口傳遞數(shù)組觸發(fā)串口發(fā)送任務(wù)。
[0017]所述校時(shí)任務(wù)實(shí)時(shí)處理用來(lái)執(zhí)行校時(shí)成功后的系統(tǒng)時(shí)間同步算法、時(shí)間戳算法以及用電上報(bào)數(shù)據(jù)存儲(chǔ)指針?biāo)惴?,確保智能綜合保護(hù)開(kāi)關(guān)與國(guó)電通服務(wù)器之間的運(yùn)行時(shí)間保持一致、上報(bào)數(shù)據(jù)及時(shí)可靠。
[0018]所述數(shù)據(jù)存儲(chǔ)實(shí)時(shí)處理用來(lái)執(zhí)行各種數(shù)據(jù)的存儲(chǔ)任務(wù),并確保一次只執(zhí)行一個(gè)存儲(chǔ)任務(wù),執(zhí)行完成后清除相應(yīng)的觸發(fā)標(biāo)志。
[0019]與現(xiàn)有技術(shù)相比較,本發(fā)明的有益效果是:
[0020](I)精簡(jiǎn)了中斷處理程序,解決了因中斷處理時(shí)間過(guò)長(zhǎng)導(dǎo)致的系統(tǒng)任務(wù)延遲甚至死機(jī)的情況;
[0021](2)設(shè)計(jì)了緊湊的針對(duì)底層服務(wù)任務(wù)的輸入-輸出結(jié)構(gòu),大大節(jié)省了程序主循環(huán)時(shí)間,使單片機(jī)在較低的主頻(5.505024MHz)下,仍然可以保持高的運(yùn)行效率,同時(shí)也大大降低了硬件系統(tǒng)的功耗;
[0022](3)對(duì)應(yīng)用任務(wù)內(nèi)部的優(yōu)先級(jí)劃分,確保每個(gè)應(yīng)用任務(wù)都能有序及時(shí)的進(jìn)行,而不會(huì)出現(xiàn)低優(yōu)先級(jí)任務(wù)先于高優(yōu)先級(jí)任務(wù)的情況發(fā)生;
[0023](4)對(duì)底層服務(wù)任務(wù)設(shè)計(jì)的任務(wù)超時(shí)復(fù)位機(jī)制,能確保在某個(gè)底層服務(wù)由于硬件原因出現(xiàn)故障時(shí),不會(huì)對(duì)主程序的運(yùn)行造成影響。
[0024]以下結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明;但本發(fā)明的一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng)不局限于實(shí)施例。
【附圖說(shuō)明】
[0025]圖1是本發(fā)明的智能綜合保護(hù)開(kāi)關(guān)的硬件構(gòu)成示意圖;
[0026]圖2是本發(fā)明的智能綜合保護(hù)開(kāi)關(guān)的軟件流程圖;
[0027]圖3是本發(fā)明的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng)劃分圖;
[0028]圖4是本發(fā)明的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng)的中斷任務(wù)流程圖;
[0029]圖5是本發(fā)明的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng)的中斷任務(wù)(1ms定時(shí)中斷串口處理程序)流程圖;
[0030]圖6是本發(fā)明的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng)的底層服務(wù)任務(wù)輸入-輸出結(jié)構(gòu)圖;
[0031]圖7是本發(fā)明的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng)的Ims定時(shí)中斷存儲(chǔ)超時(shí)處理程序流程圖;
[0032]圖8是本發(fā)明的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng)的應(yīng)用任務(wù)子任務(wù)優(yōu)先級(jí)劃分示意圖。
【具體實(shí)施方式】
[0033]實(shí)施例
[0034]參見(jiàn)圖1至圖8所示,本發(fā)明的一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),其硬件構(gòu)成如圖1所示,硬件包括處理器11、電網(wǎng)采樣電路12、溫度采樣電路13、存儲(chǔ)電路14、WiFi模塊15和脫扣電路16,本實(shí)施例的處理器11采用上海鉅泉光電科技有限公司的ATT7037計(jì)量Soc芯片,內(nèi)部具有電源檢測(cè)模塊(PMU)、時(shí)鐘模塊(RTC)、定時(shí)器模塊(??Μ)、計(jì)量模塊(EMU)、看門(mén)狗(WDT)、溫度傳感器(TBS)、串行接口模塊(UART、12C、SPI)等,智能綜合保護(hù)開(kāi)關(guān)通過(guò)電網(wǎng)采樣電路12將電網(wǎng)中的電流、電壓信號(hào)轉(zhuǎn)化為ATT7037芯片的采樣信號(hào),ATT7037芯片通過(guò)內(nèi)置的PMU模塊對(duì)采樣信號(hào)進(jìn)行處理,通過(guò)運(yùn)算得到電網(wǎng)中的電流值、電壓值、功率及電能等信息;通過(guò)溫度采樣電路13將溫度轉(zhuǎn)化為電信號(hào),ATT7037芯片通過(guò)內(nèi)置的TBS模塊對(duì)溫度信號(hào)進(jìn)行處理,通過(guò)運(yùn)算得到智能綜合保護(hù)開(kāi)關(guān)當(dāng)前的溫度值;ATT7037芯片對(duì)采集到的電流、電壓、功率、電能、溫度等信息進(jìn)行判斷、保護(hù)處理,當(dāng)電網(wǎng)中出現(xiàn)過(guò)載電流、瞬時(shí)短路大電流、過(guò)欠壓、溫度超標(biāo)等故障時(shí),ATT7037芯片會(huì)通過(guò)GP1驅(qū)動(dòng)脫扣電路16,帶動(dòng)智能綜合保護(hù)開(kāi)關(guān)的脫扣機(jī)構(gòu),實(shí)現(xiàn)斷開(kāi)出線(xiàn)端用電的功能,同時(shí),ATT7037芯片會(huì)對(duì)故障信息進(jìn)行記錄,通過(guò)IIC接口將故障信息存儲(chǔ)到存儲(chǔ)電路14中的掉電非易失存儲(chǔ)器中;ATT7037芯片通過(guò)內(nèi)置的UART串口控制WiFi模塊15,實(shí)現(xiàn)同國(guó)電通服務(wù)器的校時(shí)、數(shù)據(jù)上報(bào)等功能。
[0035]如圖2、圖3所示,本發(fā)明的一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),包括開(kāi)啟全局中斷2和進(jìn)入程序主循環(huán)3;在程序主循環(huán)中包括喂看門(mén)狗31、串口任務(wù)實(shí)時(shí)處理32、WiFi模塊任務(wù)實(shí)時(shí)處理33、校時(shí)任務(wù)實(shí)時(shí)處理34、測(cè)量任務(wù)實(shí)時(shí)處理35、保護(hù)任務(wù)實(shí)時(shí)處理36、MODBUS協(xié)議實(shí)時(shí)處理37、數(shù)據(jù)存儲(chǔ)任務(wù)實(shí)時(shí)處理38和國(guó)電通協(xié)議任務(wù)實(shí)時(shí)處理39;其中,串口任務(wù)實(shí)時(shí)處理32、WiFi模塊任務(wù)實(shí)時(shí)處理33和數(shù)據(jù)存儲(chǔ)任務(wù)實(shí)時(shí)處理38為底層服務(wù)任務(wù),校時(shí)任務(wù)實(shí)時(shí)處理34、測(cè)量任務(wù)實(shí)時(shí)處理35、保護(hù)任務(wù)實(shí)時(shí)處理36、M0DBUS協(xié)議實(shí)時(shí)處理37和國(guó)電通協(xié)議任務(wù)實(shí)時(shí)處理39為應(yīng)用任務(wù);中斷任務(wù)之間存在優(yōu)先級(jí),中斷任務(wù)能夠打斷應(yīng)用任務(wù)和底層服務(wù)任務(wù)優(yōu)先執(zhí)行,中斷任務(wù)與應(yīng)用任務(wù)、底層服務(wù)任務(wù)之間通過(guò)數(shù)據(jù)接口函數(shù)進(jìn)行傳遞;底層服務(wù)任務(wù)之間相互獨(dú)立,不存在優(yōu)先級(jí),每個(gè)底層服務(wù)任務(wù)使用單獨(dú)定義的變量、結(jié)構(gòu)體,在應(yīng)用任務(wù)和中斷任務(wù)中被觸發(fā);應(yīng)用任務(wù)之間存在任務(wù)優(yōu)先級(jí),應(yīng)用任務(wù)只執(zhí)行算法計(jì)算,并最終將數(shù)據(jù)通過(guò)接口函數(shù)傳遞給底層服務(wù)任務(wù),并觸發(fā)底層服務(wù)任務(wù)開(kāi)始執(zhí)行。
[0036]如圖3所示,應(yīng)用任務(wù)a和應(yīng)用任務(wù)b分別通過(guò)接口函數(shù)a觸發(fā)底層服務(wù)任務(wù)a,中斷任務(wù)a在應(yīng)用任務(wù)a和應(yīng)用任務(wù)b之間中斷,中斷任務(wù)a通過(guò)接口函數(shù)b觸發(fā)底層服務(wù)任務(wù)a,應(yīng)用任務(wù)b分別通過(guò)接口函數(shù)c觸發(fā)底層服務(wù)任務(wù)b,中斷任務(wù)b在應(yīng)用任務(wù)b和底層服務(wù)任務(wù)b之間中斷,中斷任務(wù)b通過(guò)接口函數(shù)d觸發(fā)應(yīng)用任務(wù)η。本發(fā)明是將整個(gè)任務(wù)系統(tǒng)劃分為中斷任務(wù)、應(yīng)用任務(wù)和底層服務(wù)任務(wù),通過(guò)接口函數(shù)進(jìn)行數(shù)據(jù)傳遞,中斷任務(wù)之間存在優(yōu)先級(jí),中斷任務(wù)可以打斷應(yīng)用任務(wù)和底層服務(wù)任務(wù)優(yōu)先執(zhí)行,中斷任務(wù)與其他任務(wù)之間通過(guò)數(shù)據(jù)接口函數(shù)進(jìn)行傳遞;底層服務(wù)任務(wù)之間相互獨(dú)立,不存在優(yōu)先級(jí),每個(gè)底層服務(wù)任務(wù)使用單獨(dú)定義的變量、結(jié)構(gòu)體等,在應(yīng)用任務(wù)和中斷任務(wù)中被觸發(fā);應(yīng)用任務(wù)之間存在任務(wù)優(yōu)先級(jí),一個(gè)應(yīng)用任務(wù)又可以劃分為幾個(gè)子任務(wù),各子任務(wù)之間也存在優(yōu)先級(jí),應(yīng)用任務(wù)只執(zhí)行算法計(jì)算,并最終將數(shù)據(jù)通過(guò)接口函數(shù)傳遞給底層任務(wù),并觸發(fā)底層服務(wù)任務(wù)開(kāi)始執(zhí)行。
[0037]串口任務(wù)實(shí)時(shí)處理32用來(lái)執(zhí)行串口接收數(shù)據(jù)傳遞、錯(cuò)誤還原和串口發(fā)送觸發(fā)兩個(gè)相互獨(dú)立的任務(wù);當(dāng)串口接收到合法數(shù)據(jù)時(shí),是將串口接收數(shù)組傳遞給傳遞數(shù)組;當(dāng)接收到非法的數(shù)據(jù)幀(例如接收數(shù)據(jù)幀的長(zhǎng)度超過(guò)串口接收數(shù)組最大允許長(zhǎng)度)時(shí),則對(duì)串口接收數(shù)組及串口狀態(tài)進(jìn)行還原;當(dāng)其他任務(wù)需要串口進(jìn)行數(shù)據(jù)發(fā)送時(shí),將數(shù)據(jù)通過(guò)傳遞數(shù)組賦值給串口發(fā)送數(shù)組,觸發(fā)串口實(shí)時(shí)處理任務(wù)中的串口發(fā)送任務(wù),啟動(dòng)串口發(fā)送中斷進(jìn)行數(shù)據(jù)發(fā)送。
[0038]WiFi模塊任務(wù)實(shí)時(shí)處理33用來(lái)執(zhí)行WiFi模塊下行數(shù)據(jù)的處理任務(wù),WiFi模塊工作時(shí)會(huì)往串口發(fā)送一系列代表不同含義的數(shù)據(jù)幀,表示W(wǎng)iFi模塊當(dāng)前的工作狀態(tài),例如WiFi模塊正在鏈接國(guó)電通服務(wù)器、WiFi模塊已鏈接到國(guó)電通服務(wù)器、WiFi模塊復(fù)位、WiFi模塊進(jìn)入可配置狀態(tài)等等,同時(shí),在WiFi模塊鏈接到國(guó)電通服務(wù)器后,服務(wù)器會(huì)通過(guò)WiFi模塊向智能綜合保護(hù)開(kāi)關(guān)發(fā)送相應(yīng)的Modbus-RTU格式查詢(xún)幀,而智能綜合保護(hù)開(kāi)關(guān)也會(huì)定時(shí)通過(guò)WiFi模塊獲取校時(shí)信息,這些都屬于WiFi模塊任務(wù)實(shí)時(shí)處理任務(wù)需要解析及處理的范疇,通過(guò)對(duì)接收傳遞數(shù)組進(jìn)行解析,得出WiFi模塊當(dāng)前工作狀態(tài)。
[0039]校時(shí)任務(wù)實(shí)時(shí)處理34用來(lái)執(zhí)行校時(shí)成功后的系統(tǒng)時(shí)間同步算法、時(shí)間戳算法以及用電上報(bào)數(shù)據(jù)存儲(chǔ)指針?biāo)惴ǎ_保智能綜合保護(hù)開(kāi)關(guān)與國(guó)電通服務(wù)器之間的運(yùn)行時(shí)間保持一致、上報(bào)數(shù)據(jù)及時(shí)可靠。
[0040]測(cè)量任務(wù)實(shí)時(shí)處理35用來(lái)執(zhí)行電網(wǎng)參數(shù)的有效值運(yùn)算、電能累積、保護(hù)參數(shù)更新,并在電能累積至預(yù)置數(shù)值(例如累積至I度電、2度電、3度電……)時(shí),將電能參數(shù)傳遞至存儲(chǔ)數(shù)組,觸發(fā)存儲(chǔ)任務(wù)。
[0041]保護(hù)任務(wù)實(shí)時(shí)處理36用來(lái)執(zhí)行過(guò)載、漏電、瞬時(shí)短路、過(guò)欠壓、溫度的保護(hù)算法,并在故障時(shí)觸發(fā)脫扣。
[0042]Modbus協(xié)議實(shí)時(shí)處理37用來(lái)執(zhí)行Modbus協(xié)議讀/寫(xiě)功能碼的相關(guān)處理算法,并通過(guò)串口傳遞數(shù)組觸發(fā)串口發(fā)送任務(wù)。
[0043]數(shù)據(jù)存儲(chǔ)實(shí)時(shí)處理38用來(lái)執(zhí)行各種數(shù)據(jù)的存儲(chǔ)任務(wù),并確保一次只執(zhí)行一個(gè)存儲(chǔ)任務(wù),執(zhí)行完成后清除相應(yīng)的觸發(fā)標(biāo)志。
[0044]國(guó)電通協(xié)議任務(wù)實(shí)時(shí)處理39用來(lái)執(zhí)行國(guó)電通協(xié)議規(guī)定的各種子任務(wù),按任務(wù)優(yōu)先級(jí)分為:定時(shí)用電數(shù)據(jù)獲取及觸發(fā)存儲(chǔ)、異常上報(bào)數(shù)據(jù)獲取及觸發(fā)上報(bào)、校時(shí)查詢(xún)幀觸發(fā)發(fā)送、定時(shí)用電數(shù)據(jù)觸發(fā)上報(bào);所有上報(bào)任務(wù)均采取優(yōu)先級(jí),并確保每次只執(zhí)行最高優(yōu)先級(jí)任務(wù)。
[0045]本發(fā)明的一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),中斷任務(wù)通過(guò)Soc芯片的各類(lèi)中斷服務(wù)子程序?qū)崿F(xiàn),包括Ims定時(shí)中斷、1ms定時(shí)中斷、EMU中斷、PMU中斷、RTC中斷、串口中斷等;底層服務(wù)任務(wù)執(zhí)行的是與Soc芯片硬件接口相關(guān)的任務(wù),例如串口消息處理、WiFi模塊狀態(tài)檢測(cè)、脫扣動(dòng)作、數(shù)據(jù)存儲(chǔ)等;應(yīng)用任務(wù)主要分為國(guó)電通協(xié)議信息處理、Modbus-RTU應(yīng)答式信息處理、電網(wǎng)參數(shù)計(jì)算、保護(hù)算法、校時(shí)算法、主動(dòng)上報(bào)算法等。
[0046]本發(fā)明的一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),對(duì)每個(gè)中斷任務(wù)提出精簡(jiǎn)要求,或?qū)?shù)據(jù)通過(guò)接口函數(shù)傳遞給底層服務(wù)任務(wù)或者應(yīng)用任務(wù),或觸發(fā)底層服務(wù)執(zhí)行機(jī)制,確保進(jìn)入中斷后程序只執(zhí)行一段很少的代碼就退出中斷;如圖4所示,例如串口中斷任務(wù),包括接收中斷處理和發(fā)送中斷處理,在接收中斷處理中僅僅執(zhí)行將接收寄存器的數(shù)據(jù)賦值給接收數(shù)組,并啟動(dòng)接收超時(shí)這兩段代碼;在發(fā)送中斷處理中僅僅執(zhí)行將發(fā)送數(shù)組的下一個(gè)數(shù)據(jù)賦值給發(fā)送寄存器,并啟動(dòng)發(fā)送狀態(tài)超時(shí)這兩段代碼,執(zhí)行時(shí)間均控制在us級(jí)以?xún)?nèi);如圖5所示,在1ms定時(shí)中斷任務(wù)中執(zhí)行串口的接收超時(shí)和發(fā)送狀態(tài)超時(shí)處理,執(zhí)行時(shí)間也控制在us級(jí)以?xún)?nèi);如此能夠確保中斷任務(wù)不會(huì)占用整個(gè)系統(tǒng)運(yùn)行的大量時(shí)間,保證了系統(tǒng)的時(shí)效性。
[0047]本發(fā)明的一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),所述底層服務(wù)任務(wù),在處理過(guò)程中當(dāng)需要用到延時(shí)函數(shù)時(shí),則是將延時(shí)判斷交給定時(shí)器進(jìn)行處理。所述底層服務(wù)任務(wù)中還具有任務(wù)超時(shí)復(fù)位機(jī)制,以確保當(dāng)?shù)讓臃?wù)任務(wù)出現(xiàn)故障時(shí),不會(huì)對(duì)主程序的運(yùn)行造成影響。本發(fā)明的整個(gè)任務(wù)系統(tǒng)對(duì)每個(gè)底層服務(wù)任務(wù)設(shè)計(jì)了緊湊的輸入-輸出結(jié)構(gòu),將一些功能在實(shí)現(xiàn)過(guò)程中需要用到的延時(shí)函數(shù)交由定時(shí)器來(lái)控制,確保系統(tǒng)程序中“零存在” ms級(jí)的延時(shí)。如圖6、圖7所示,例如智能綜合保護(hù)開(kāi)關(guān)需要將電網(wǎng)保護(hù)參數(shù)寫(xiě)到掉電非易失性存儲(chǔ)器24LC64中,24LC64的芯片特性決定了每次擦寫(xiě)必須延時(shí)5ms以上,當(dāng)有多個(gè)不連續(xù)的A\B\C參數(shù)需要存儲(chǔ)在24LC64中時(shí),如果按照順序結(jié)構(gòu)流程處理,僅執(zhí)行一次要將A\B\C參數(shù)全部存儲(chǔ)到24LC64中,則程序需要花費(fèi)15ms以上時(shí)間,大量的時(shí)間都用在延時(shí)上,而按本設(shè)計(jì)的存儲(chǔ)任務(wù)處理方式,一次執(zhí)行一個(gè)參數(shù)存儲(chǔ),并將延時(shí)判斷交給定時(shí)器,在等待定時(shí)器延時(shí)結(jié)束同時(shí),主程序仍然可以執(zhí)行其他任務(wù),從而大大節(jié)省了程序循環(huán)時(shí)間。
[0048]本發(fā)明的一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),所述應(yīng)用任務(wù)中,其中的一個(gè)或多個(gè)應(yīng)用任務(wù)還劃分為幾個(gè)子任務(wù),各子任務(wù)之間存在優(yōu)先級(jí),當(dāng)有高的優(yōu)先級(jí)子任務(wù)執(zhí)行時(shí),低優(yōu)先級(jí)子任務(wù)暫時(shí)擱置,直到高優(yōu)先級(jí)子任務(wù)執(zhí)行完畢。如圖8所示,執(zhí)行國(guó)電通協(xié)議規(guī)定的各種子任務(wù),按任務(wù)優(yōu)先級(jí)分為:定時(shí)用電數(shù)據(jù)獲取及觸發(fā)存儲(chǔ)、異常上報(bào)數(shù)據(jù)獲取及觸發(fā)上報(bào)、校時(shí)查詢(xún)幀觸發(fā)發(fā)送、定時(shí)用電數(shù)據(jù)觸發(fā)上報(bào)等。所有上報(bào)任務(wù)采取優(yōu)先級(jí)策略,確保每次只執(zhí)行最高優(yōu)先級(jí)上報(bào),從而能夠滿(mǎn)足國(guó)電通協(xié)議要求,實(shí)現(xiàn)優(yōu)先級(jí)上報(bào)。
[0049]本發(fā)明的一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),精簡(jiǎn)了中斷處理程序,解決了因中斷處理時(shí)間過(guò)長(zhǎng)導(dǎo)致的系統(tǒng)任務(wù)延遲甚至死機(jī)的情況;本發(fā)明設(shè)計(jì)了緊湊的針對(duì)底層服務(wù)任務(wù)的輸入-輸出結(jié)構(gòu),大大節(jié)省了程序主循環(huán)時(shí)間,使單片機(jī)在較低的主頻(5.505024MHz)下,仍然可以保持高的運(yùn)行效率,同時(shí)也大大降低了硬件系統(tǒng)的功耗;本發(fā)明對(duì)應(yīng)用任務(wù)內(nèi)部的優(yōu)先級(jí)劃分,確保每個(gè)應(yīng)用任務(wù)都能有序及時(shí)的進(jìn)行,而不會(huì)出現(xiàn)低優(yōu)先級(jí)任務(wù)先于高優(yōu)先級(jí)任務(wù)的情況發(fā)生;本發(fā)明對(duì)底層服務(wù)任務(wù)設(shè)計(jì)的任務(wù)超時(shí)復(fù)位機(jī)制,能確保在某個(gè)底層服務(wù)由于硬件原因出現(xiàn)故障時(shí),不會(huì)對(duì)主程序的運(yùn)行造成影響。
[0050]上述只是本發(fā)明的較佳實(shí)施例,并非對(duì)本發(fā)明作任何形式上的限制。雖然本發(fā)明已以較佳實(shí)施例揭露如上,然而并非用以限定本發(fā)明。任何熟悉本領(lǐng)域的技術(shù)人員,在不脫離本發(fā)明技術(shù)方案范圍的情況下,都可利用上述揭示的技術(shù)內(nèi)容對(duì)本發(fā)明技術(shù)方案作出許多可能的變動(dòng)和修飾,或修改為等同化的等效實(shí)施例。因此,凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明技術(shù)實(shí)質(zhì)對(duì)以上實(shí)施例所做的任何簡(jiǎn)單修改、等同變化及修飾,均應(yīng)落在本發(fā)明技術(shù)方案保護(hù)的范圍內(nèi)。
【主權(quán)項(xiàng)】
1.一種智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),其特征在于:包括開(kāi)啟全局中斷和進(jìn)入程序 主循環(huán);系統(tǒng)中斷時(shí)執(zhí)行中斷任務(wù),程序主循環(huán)執(zhí)行多個(gè)應(yīng)用任務(wù)和多個(gè)底層服務(wù)任務(wù);中 斷任務(wù)之間存在優(yōu)先級(jí),中斷任務(wù)能夠打斷應(yīng)用任務(wù)和底層服務(wù)任務(wù)優(yōu)先執(zhí)行,中斷任務(wù) 與應(yīng)用任務(wù)、底層服務(wù)任務(wù)之間通過(guò)數(shù)據(jù)接口函數(shù)進(jìn)行傳遞;底層服務(wù)任務(wù)之間相互獨(dú)立, 不存在優(yōu)先級(jí),每個(gè)底層服務(wù)任務(wù)使用單獨(dú)定義的變量、結(jié)構(gòu)體,在應(yīng)用任務(wù)和中斷任務(wù)中 被觸發(fā);應(yīng)用任務(wù)之間存在任務(wù)優(yōu)先級(jí),應(yīng)用任務(wù)只執(zhí)行算法計(jì)算,并最終將數(shù)據(jù)通過(guò)接口 函數(shù)傳遞給底層服務(wù)任務(wù),并觸發(fā)底層服務(wù)任務(wù)開(kāi)始執(zhí)行。2.根據(jù)權(quán)利要求1所述的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),其特征在于:所述程序主循 環(huán)包括喂看門(mén)狗、串口任務(wù)實(shí)時(shí)處理、WiFi模塊任務(wù)實(shí)時(shí)處理、校時(shí)任務(wù)實(shí)時(shí)處理、測(cè)量任 務(wù)實(shí)時(shí)處理、保護(hù)任務(wù)實(shí)時(shí)處理、MODBUS協(xié)議實(shí)時(shí)處理、數(shù)據(jù)存儲(chǔ)任務(wù)實(shí)時(shí)處理和國(guó)電通協(xié) 議任務(wù)實(shí)時(shí)處理;其中,串口任務(wù)實(shí)時(shí)處理、WiFi模塊任務(wù)實(shí)時(shí)處理和數(shù)據(jù)存儲(chǔ)任務(wù)實(shí)時(shí)處 理為底層服務(wù)任務(wù),校時(shí)任務(wù)實(shí)時(shí)處理、測(cè)量任務(wù)實(shí)時(shí)處理、保護(hù)任務(wù)實(shí)時(shí)處理、MODBUS協(xié) 議實(shí)時(shí)處理和國(guó)電通協(xié)議任務(wù)實(shí)時(shí)處理為應(yīng)用任務(wù)。3.根據(jù)權(quán)利要求1所述的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),其特征在于:所述中斷任務(wù) 包括lms定時(shí)中斷、10ms定時(shí)中斷、EMU中斷、PMU中斷、RTC中斷和串口中斷;所述中斷任務(wù), 或?qū)?shù)據(jù)通過(guò)接口函數(shù)傳遞給底層服務(wù)任務(wù)或者應(yīng)用任務(wù),或觸發(fā)底層服務(wù)執(zhí)行機(jī)制,從 而確保進(jìn)入中斷后程序只執(zhí)行一段很少的代碼就退出中斷。4.根據(jù)權(quán)利要求1所述的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),其特征在于:所述應(yīng)用任務(wù) 中,其中的一個(gè)或多個(gè)應(yīng)用任務(wù)還劃分為幾個(gè)子任務(wù),各子任務(wù)之間存在優(yōu)先級(jí),當(dāng)有高的 優(yōu)先級(jí)子任務(wù)執(zhí)行時(shí),低優(yōu)先級(jí)子任務(wù)暫時(shí)擱置,直到高優(yōu)先級(jí)子任務(wù)執(zhí)行完畢。5.根據(jù)權(quán)利要求1所述的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),其特征在于:所述底層服務(wù) 任務(wù),在處理過(guò)程中當(dāng)需要用到延時(shí)函數(shù)時(shí),則是將延時(shí)判斷交給定時(shí)器進(jìn)行處理;所述底 層服務(wù)任務(wù)中還具有任務(wù)超時(shí)復(fù)位機(jī)制,以確保當(dāng)?shù)讓臃?wù)任務(wù)出現(xiàn)故障時(shí),不會(huì)對(duì)主程 序的運(yùn)行造成影響。6.根據(jù)權(quán)利要求2所述的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),其特征在于:所述測(cè)量任務(wù) 實(shí)時(shí)處理用來(lái)執(zhí)行電網(wǎng)參數(shù)的有效值運(yùn)算、電能累積、保護(hù)參數(shù)更新,并在電能累積至預(yù)置 數(shù)值時(shí),將電能參數(shù)傳遞至存儲(chǔ)數(shù)組,觸發(fā)存儲(chǔ)任務(wù);所述保護(hù)任務(wù)實(shí)時(shí)處理用來(lái)執(zhí)行過(guò) 載、漏電、瞬時(shí)短路、過(guò)欠壓、溫度的保護(hù)算法,并在故障時(shí)觸發(fā)脫扣。7.根據(jù)權(quán)利要求2所述的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),其特征在于:所述國(guó)電通協(xié) 議任務(wù)實(shí)時(shí)處理用來(lái)執(zhí)行國(guó)電通協(xié)議規(guī)定的各種子任務(wù),按任務(wù)優(yōu)先級(jí)分為:定時(shí)用電數(shù) 據(jù)獲取及觸發(fā)存儲(chǔ)、異常上報(bào)數(shù)據(jù)獲取及觸發(fā)上報(bào)、校時(shí)查詢(xún)幀觸發(fā)發(fā)送、定時(shí)用電數(shù)據(jù)觸 發(fā)上報(bào);所有上報(bào)任務(wù)均米取優(yōu)先級(jí),并確保每次只執(zhí)行最尚優(yōu)先級(jí)任務(wù)。8.根據(jù)權(quán)利要求1所述的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),其特征在于:所述串口任務(wù) 實(shí)時(shí)處理用來(lái)執(zhí)行串口接收數(shù)據(jù)傳遞、錯(cuò)誤還原和串口發(fā)送觸發(fā)兩個(gè)相互獨(dú)立的任務(wù);當(dāng) 串口接收到合法數(shù)據(jù)時(shí),是將串口接收數(shù)組傳遞給傳遞數(shù)組;當(dāng)接收到非法的數(shù)據(jù)幀時(shí),則 對(duì)串口接收數(shù)組及串口狀態(tài)進(jìn)行還原;當(dāng)其他任務(wù)需要串口進(jìn)行數(shù)據(jù)發(fā)送時(shí),將數(shù)據(jù)通過(guò) 傳遞數(shù)組賦值給串口發(fā)送數(shù)組,觸發(fā)串口實(shí)時(shí)處理任務(wù)中的串口發(fā)送任務(wù),啟動(dòng)串口發(fā)送 中斷進(jìn)行數(shù)據(jù)發(fā)送。9.根據(jù)權(quán)利要求2所述的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),其特征在于:所述WiFi模塊任務(wù)實(shí)時(shí)處理用來(lái)執(zhí)行WiFi模塊下行數(shù)據(jù)的處理任務(wù),通過(guò)對(duì)接收傳遞數(shù)組進(jìn)行解析,得 出WiFi模塊當(dāng)前工作狀態(tài);所述Modbus協(xié)議實(shí)時(shí)處理用來(lái)執(zhí)行Modbus協(xié)議讀/寫(xiě)功能碼的 相關(guān)處理算法,并通過(guò)串口傳遞數(shù)組觸發(fā)串口發(fā)送任務(wù)。10.根據(jù)權(quán)利要求2所述的智能綜合保護(hù)開(kāi)關(guān)任務(wù)調(diào)度系統(tǒng),其特征在于:所述校時(shí)任 務(wù)實(shí)時(shí)處理用來(lái)執(zhí)行校時(shí)成功后的系統(tǒng)時(shí)間同步算法、時(shí)間戳算法以及用電上報(bào)數(shù)據(jù)存儲(chǔ) 指針?biāo)惴?,確保智能綜合保護(hù)開(kāi)關(guān)與國(guó)電通服務(wù)器之間的運(yùn)行時(shí)間保持一致、上報(bào)數(shù)據(jù)及 時(shí)可靠;所述數(shù)據(jù)存儲(chǔ)實(shí)時(shí)處理用來(lái)執(zhí)行各種數(shù)據(jù)的存儲(chǔ)任務(wù),并確保一次只執(zhí)行一個(gè)存 儲(chǔ)任務(wù),執(zhí)行完成后清除相應(yīng)的觸發(fā)標(biāo)志。
【文檔編號(hào)】G05B19/042GK106054723SQ201610487146
【公開(kāi)日】2016年10月26日
【申請(qǐng)日】2016年6月28日
【發(fā)明人】鄭坪坪, 王文利
【申請(qǐng)人】廈門(mén)宏發(fā)開(kāi)關(guān)設(shè)備有限公司