国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種面向多周期運(yùn)算任務(wù)的無擾組態(tài)方法

      文檔序號(hào):8543126閱讀:481來源:國(guó)知局
      一種面向多周期運(yùn)算任務(wù)的無擾組態(tài)方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明屬于工業(yè)自動(dòng)化控制領(lǐng)域,特別提供了一種面向多周期運(yùn)算任務(wù)的無擾組態(tài)設(shè)計(jì)方法,用于工業(yè)過程控制系統(tǒng)中分布式控制器的軟件內(nèi)核設(shè)計(jì)。
      【背景技術(shù)】
      [0002]隨著工業(yè)自動(dòng)化行業(yè)的高速發(fā)展,DCS/PLC控制系統(tǒng)在各個(gè)領(lǐng)域得到了廣泛的應(yīng)用。在應(yīng)用領(lǐng)域的拓展過程中,對(duì)控制系統(tǒng)中分布式控制器的功能和性能提出了更多的要求。在越來越多的場(chǎng)合,要求分布式控制器不僅具有常規(guī)的控制功能,而且要求其能夠兼容多個(gè)周期運(yùn)算任務(wù),滿足局部控制網(wǎng)絡(luò)中復(fù)雜的控制要求。在此基礎(chǔ)上,分布式控制器仍然需要具備無擾組態(tài)功能,滿足在線維護(hù)的需求。
      [0003]分布式控制器的典型應(yīng)用示意圖1所示,本方法即在該DCS分布式控制器(以下簡(jiǎn)稱控制器)的軟件內(nèi)核中應(yīng)用實(shí)現(xiàn),并與組態(tài)軟件配合使用,達(dá)到最終的應(yīng)用目的。
      [0004]無擾組態(tài),即在聯(lián)機(jī)的情況下,將控制器現(xiàn)有組態(tài)調(diào)入,并在此基礎(chǔ)上修改后下裝,保證對(duì)控制器產(chǎn)生的影響最小化。具體是指未經(jīng)修改的邏輯和數(shù)據(jù)必須與控制器中當(dāng)前的實(shí)時(shí)值保持連續(xù)性。無擾組態(tài)是在線維護(hù)的核心功能之一。
      [0005]目前主要有編譯下裝和解釋下裝兩種方式,來完成控制邏輯的組態(tài)和修改。其中編譯下裝,將所有組態(tài)邏輯和數(shù)據(jù)編輯成一個(gè)整體進(jìn)行統(tǒng)一的下載。該方法既要下載修改過的邏輯和數(shù)據(jù),又要下載未經(jīng)修改的邏輯和數(shù)據(jù)。修改與未修改之間的邏輯聯(lián)系和數(shù)據(jù)關(guān)聯(lián)難以理清,給無擾組態(tài)的實(shí)現(xiàn)帶來的極大的阻礙,而且下載數(shù)據(jù)量大,所需時(shí)間較長(zhǎng),對(duì)控制器的影響長(zhǎng)達(dá)數(shù)個(gè)運(yùn)算周期。對(duì)于解釋下裝方式,容易將邏輯和數(shù)據(jù)分為獨(dú)立的頁面結(jié)構(gòu),每次修改只需要下載發(fā)生組態(tài)變化的對(duì)應(yīng)頁面即可。各組態(tài)頁之間的邏輯和數(shù)據(jù)關(guān)系明晰,便于控制器查找其對(duì)應(yīng)的內(nèi)容變化,有利于無擾組態(tài)的實(shí)現(xiàn)。而且下載數(shù)據(jù)量小,對(duì)控制器的影響很小,一個(gè)運(yùn)算周期以內(nèi)就可以處理完畢。
      [0006]然而,在現(xiàn)有的在線下載技術(shù)中,往往無法有效地劃分已修改組態(tài)和未修改組態(tài)之間的聯(lián)系,導(dǎo)致下載過程中對(duì)組態(tài)邏輯的運(yùn)算和控制影響較大,甚至導(dǎo)致冗余運(yùn)行的控制器退出同步狀態(tài)。此外,一些實(shí)現(xiàn)了無擾組態(tài)功能的技術(shù)中,在支持多周期運(yùn)算任務(wù)時(shí),無法做到兼容,從而不能滿足更廣泛的需求。所以,在面向多周期運(yùn)算任務(wù)的控制器中,無擾組態(tài)方法的實(shí)現(xiàn),不僅需要合理設(shè)計(jì)組態(tài)邏輯頁面結(jié)構(gòu),而且涉及到多個(gè)周期的運(yùn)算任務(wù)之間以及和通訊任務(wù)之間的同步問題。

      【發(fā)明內(nèi)容】

      [0007]本發(fā)明提供了一種面向多周期運(yùn)算任務(wù)的無擾組態(tài)方法,該方法屬于解釋下裝的方式,能夠在支持控制器進(jìn)行多周期同步運(yùn)算的前提下,實(shí)現(xiàn)無擾組態(tài)的功能。從而保證控制器運(yùn)行時(shí)進(jìn)行組態(tài)邏輯和數(shù)據(jù)的修改,不會(huì)給控制器下轄設(shè)備乃至整個(gè)控制系統(tǒng)帶來顯著的影響,保證控制系統(tǒng)運(yùn)行的穩(wěn)定性。
      [0008]為此,本發(fā)明提供了一種面向多周期運(yùn)算任務(wù)的無擾組態(tài)方法,包括如下步驟:
      [0009]a)根據(jù)控制邏輯的組態(tài)需求、多周期運(yùn)算任務(wù)調(diào)度策略設(shè)計(jì)需求以及無擾組態(tài)策略的邏輯單元大小需求,建立組態(tài)邏輯的頁面結(jié)構(gòu);
      [0010]b)根據(jù)組態(tài)邏輯的頁面結(jié)構(gòu),建立組態(tài)邏輯頁面存儲(chǔ)區(qū),并定義組態(tài)下裝報(bào)文的多隊(duì)列區(qū)域,二者構(gòu)成多周期運(yùn)算任務(wù)的共享資源區(qū)域;
      [0011]c)依據(jù)組態(tài)邏輯頁面存儲(chǔ)區(qū)的內(nèi)容,建立多周期運(yùn)算任務(wù)調(diào)度池。根據(jù)各任務(wù)周期進(jìn)行多周期運(yùn)算任務(wù)的調(diào)度。根據(jù)組態(tài)頁變化的信息,進(jìn)行多周期運(yùn)算任務(wù)的創(chuàng)建、刪除;
      [0012]d)建立網(wǎng)絡(luò)通訊任務(wù)和共享資源存儲(chǔ)入口的交互機(jī)制,實(shí)現(xiàn)對(duì)組態(tài)下裝報(bào)文多隊(duì)列區(qū)域的訪問。在緩存報(bào)文的同時(shí),保存報(bào)文來源端的通訊信息,實(shí)現(xiàn)組態(tài)下裝報(bào)文的異步處理和回應(yīng);
      [0013]e)在各周期運(yùn)算任務(wù)中,建立組態(tài)下裝報(bào)文的處理機(jī)制,采用新舊組態(tài)頁邏輯逐項(xiàng)比較的策略進(jìn)行未修改邏輯的無擾組態(tài),并將各組態(tài)下裝報(bào)文的處理結(jié)果反饋給報(bào)文來源端。
      [0014]其中步驟a)進(jìn)一步包括:組態(tài)邏輯的頁面結(jié)構(gòu)中至少包含控制策略運(yùn)算的指令、數(shù)據(jù)信息;運(yùn)算任務(wù)調(diào)度管理的頁面周期信息;以及各指令、數(shù)據(jù)包含其是否被修改的標(biāo)
      肩、。
      [0015]其中步驟b)進(jìn)一步包括:所述組態(tài)邏輯頁存儲(chǔ)區(qū),存取所有頁面周期的組態(tài)頁面。
      [0016]其中步驟b)進(jìn)一步包括:所述組態(tài)下裝報(bào)文的多隊(duì)列區(qū)域,根據(jù)設(shè)計(jì)的多周期運(yùn)算任務(wù)個(gè)數(shù)來定義,每個(gè)周期運(yùn)算任務(wù)對(duì)應(yīng)一個(gè)隊(duì)列;規(guī)定每個(gè)運(yùn)算任務(wù)每周期只更新一個(gè)組態(tài)邏輯頁;在組態(tài)邏輯頁發(fā)生頁面周期變化的組態(tài)時(shí),將該組態(tài)邏輯頁放入舊周期對(duì)應(yīng)的組態(tài)下裝報(bào)文隊(duì)列中。
      [0017]其中步驟c)進(jìn)一步包括:多周期運(yùn)算任務(wù)的調(diào)度以周期快慢為依據(jù),快周期優(yōu)先級(jí)聞。
      [0018]其中步驟c)進(jìn)一步包括:多周期運(yùn)算任務(wù)的創(chuàng)建,依據(jù)新的組態(tài)頁下裝或已有運(yùn)算任務(wù)被刪除判斷。當(dāng)有新的組態(tài)頁中頁面周期為當(dāng)前調(diào)度池中不存在的運(yùn)算周期,且設(shè)計(jì)任務(wù)個(gè)數(shù)未到達(dá)限值,則創(chuàng)建該頁面周期的運(yùn)算任務(wù)。
      [0019]其中步驟c)進(jìn)一步包括:多周期運(yùn)算任務(wù)的刪除由各運(yùn)算任務(wù)自動(dòng)檢測(cè)。當(dāng)某指定周期的運(yùn)算任務(wù)掃描發(fā)現(xiàn),組態(tài)邏輯頁存儲(chǔ)區(qū)中不存在該指定周期的頁面,并維持連續(xù)三個(gè)掃描周期,則發(fā)起請(qǐng)求退出任務(wù)的標(biāo)記;多周期運(yùn)算任務(wù)調(diào)度池收到該標(biāo)記信號(hào)后,停止該指定周期的運(yùn)算任務(wù)并刪除其任務(wù)信息,所述制定周期的運(yùn)算任務(wù)同時(shí)掃描判斷是否存在其他未建立運(yùn)算任務(wù)的新周期組態(tài)頁面存在,若存在,則建立新周期運(yùn)算任務(wù);否則不予處理。
      [0020]其中步驟e)進(jìn)一步包括:所述無擾組態(tài),以組態(tài)邏輯頁為基本單位進(jìn)行;在獲取到新的組態(tài)邏輯頁之后,負(fù)責(zé)處理的運(yùn)算任務(wù)將其和對(duì)應(yīng)的舊組態(tài)邏輯頁逐項(xiàng)比較,更新邏輯組態(tài)、數(shù)據(jù)修改以及其他相關(guān)組態(tài)變化;新舊組態(tài)邏輯頁中沒有發(fā)生變化的部分,仍然保留舊組態(tài)邏輯頁中的實(shí)時(shí)數(shù)據(jù)和狀態(tài)。
      [0021]與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)是:便于有效分析出已修改組態(tài)和未修改組態(tài)之間的關(guān)聯(lián),避免了編譯下裝時(shí)組態(tài)變化前后的關(guān)聯(lián)定義不清以及關(guān)聯(lián)過多的問題,為無擾組態(tài)的實(shí)現(xiàn)提供了前提基礎(chǔ),并簡(jiǎn)化了組態(tài)軟件的功能。同時(shí),控制器在內(nèi)存分配和使用上獲得了極大的靈活性,最終實(shí)現(xiàn)了有效調(diào)度和管理多周期運(yùn)算任務(wù),完成此復(fù)雜情況下無擾組態(tài)的目標(biāo)。
      【附圖說明】
      [0022]圖1分布式控制器典型應(yīng)用示意圖;
      [0023]圖2組態(tài)邏輯的頁面結(jié)構(gòu)示意圖;
      [0024]圖3初始化創(chuàng)建新的周期運(yùn)算任務(wù)流程圖;
      [0025]圖4組態(tài)頁面的下裝報(bào)文緩存處理流程圖;
      [0026]圖5動(dòng)態(tài)創(chuàng)建新的周期運(yùn)算任務(wù)流程圖;
      [0027]圖6刪除現(xiàn)有周期運(yùn)算任務(wù)流程圖;
      [0028]圖7無擾組態(tài)處理流程圖;
      [0029]圖8應(yīng)用實(shí)例——虛擬仿真平臺(tái)。
      【具體實(shí)施方式】
      [0030]為使本發(fā)明的上述內(nèi)容、特征和優(yōu)點(diǎn)能夠更加清晰易懂,下面結(jié)合附圖對(duì)本發(fā)明的詳細(xì)實(shí)施步驟做具體的說明。
      [0031]本發(fā)明通過合理組織組態(tài)邏輯信息,采用中間層語言實(shí)現(xiàn)解釋執(zhí)行機(jī)制。簡(jiǎn)化組態(tài)軟件的設(shè)計(jì),提高控制器內(nèi)多周期運(yùn)算任務(wù)調(diào)度策略設(shè)計(jì)的靈活性,有效控制組態(tài)改變對(duì)在線運(yùn)行控制器的影響,實(shí)現(xiàn)無擾組態(tài)功能。整個(gè)方案主要包含三部分主要內(nèi)容,即建立組態(tài)邏輯的頁面結(jié)構(gòu)、建立多周期運(yùn)算任務(wù)調(diào)度池和建立同步機(jī)制三部分內(nèi)容。
      [0032]一、建立組態(tài)邏輯的頁面結(jié)構(gòu)
      [0033]首先根據(jù)控制邏輯的組態(tài)需求、多周期運(yùn)算任務(wù)調(diào)度策略設(shè)計(jì)需求以及無擾組態(tài)策略的邏輯單元大小需求,建立組態(tài)邏輯的頁面結(jié)構(gòu);組態(tài)邏輯的頁面結(jié)構(gòu)中至少包含控制策略運(yùn)算的指令、數(shù)據(jù)信息;運(yùn)算任務(wù)調(diào)度管理的頁面周期信息;以及各指令、數(shù)據(jù)包含其是否被修改的標(biāo)志信息。
      [0034]以一個(gè)實(shí)施例來說明,組態(tài)邏輯的頁面結(jié)構(gòu)示意圖如圖2所示,其中包含的信息主要有:
      [0035](I)文件基本信息,必須包含頁面周期信息,表征該頁面運(yùn)算的掃描周期;頁面的掃描周期是多周期運(yùn)算任務(wù)調(diào)度池處理任務(wù)新建和刪除的主要依據(jù),也是各個(gè)運(yùn)算任務(wù)存取組態(tài)邏輯頁的同步標(biāo)志。
      [0036](2)組態(tài)邏輯信息,表示頁面內(nèi)所有邏輯的組態(tài)和連接信息;如模塊必須有模塊名信息,用以區(qū)分不同模塊;模塊引腳標(biāo)記,表征其是否有輸入輸出連線;
      [0037](3)數(shù)據(jù)信息,由控制邏輯操作的數(shù)據(jù)點(diǎn)信息,包含數(shù)據(jù)值、狀態(tài)、類型、修改標(biāo)記信息;
      [0038](4)組態(tài)邏輯的圖形信息,由組態(tài)軟件還原組態(tài)邏輯SAMA圖所需的附加信息,控制器運(yùn)算不需要這些信息。
      [0039]二、建立多周期運(yùn)算任務(wù)調(diào)度池
      [0040]在定義了合理的組態(tài)邏輯頁面結(jié)構(gòu)之后,建立組態(tài)邏輯頁存儲(chǔ)區(qū)。
      [0041]該組態(tài)邏輯頁存儲(chǔ)區(qū),由保存在控制器硬盤或FLASH中的組態(tài)邏輯頁面文件初始化。初始化程序通過掃描指定目錄下的組態(tài)邏輯頁面文件,將其讀入該存儲(chǔ)區(qū),完成組態(tài)邏輯的初始化加載。
      [0042]在組態(tài)邏輯初始化加載到存儲(chǔ)區(qū)之后,開始依次存儲(chǔ)區(qū)的所有組態(tài)邏輯頁面,初始化建立新周期運(yùn)算任務(wù)。
      [0043]在任務(wù)創(chuàng)建過程中,需遵循圖3所示的步驟,首先根據(jù)步驟301判斷現(xiàn)有周期運(yùn)算任務(wù)個(gè)數(shù)是否達(dá)到設(shè)計(jì)限值。若已經(jīng)達(dá)到設(shè)計(jì)限值,則轉(zhuǎn)向步驟302,宣告新周期任務(wù)創(chuàng)建失敗,后續(xù)組態(tài)頁面暫時(shí)不能生效運(yùn)行。
      [0044]若沒有達(dá)到設(shè)計(jì)限值,則轉(zhuǎn)向步驟303,根據(jù)該頁面的周期創(chuàng)建新周期運(yùn)算任務(wù)。創(chuàng)建完成之后,根據(jù)步驟304,將該新周期任務(wù)加入任務(wù)調(diào)度池。
      [0045]控制器在線運(yùn)行時(shí),收到組態(tài)軟件下發(fā)的組態(tài)頁面下裝報(bào)文,并不是立刻更新相應(yīng)的組態(tài)頁面。因?yàn)榇藭r(shí)的頁面周期任務(wù)正處在掃描運(yùn)算過程中,可能正在對(duì)相應(yīng)的頁面空間進(jìn)行數(shù)據(jù)存取訪問。所以為了避免并發(fā)訪問出錯(cuò),采用組態(tài)下裝報(bào)文緩存隊(duì)列,緩存該組態(tài)頁面下裝報(bào)文及其報(bào)文來源端的通訊信息。
      [0046]因此,在建立新周期運(yùn)算任務(wù)后,接著在共享資源緩沖區(qū)中建立該任務(wù)對(duì)應(yīng)的組態(tài)下裝報(bào)文緩存隊(duì)列。該隊(duì)列用以緩存從網(wǎng)絡(luò)通訊任務(wù)收到的組態(tài)下裝報(bào)文,以便周期運(yùn)算任務(wù)在運(yùn)算空閑時(shí)間里進(jìn)行無擾組態(tài)處理。
      [0047]另外,若系統(tǒng)支持的最大周期運(yùn)算任務(wù)較少,也可考慮采用唯一的組態(tài)下裝報(bào)文緩存隊(duì)列進(jìn)行報(bào)文緩存,從而簡(jiǎn)化緩存隊(duì)列的管理和調(diào)度。
      [0048]在完成前述步驟之后,多周期運(yùn)算任務(wù)調(diào)度池便可以根據(jù)下述調(diào)度原則進(jìn)行運(yùn)算任務(wù)的調(diào)度和維護(hù)。
      [00
      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1