TW201734682A - 控制器裝置及控制器裝置之任務執行管理方法 - Google Patents
控制器裝置及控制器裝置之任務執行管理方法 Download PDFInfo
- Publication number
- TW201734682A TW201734682A TW106100560A TW106100560A TW201734682A TW 201734682 A TW201734682 A TW 201734682A TW 106100560 A TW106100560 A TW 106100560A TW 106100560 A TW106100560 A TW 106100560A TW 201734682 A TW201734682 A TW 201734682A
- Authority
- TW
- Taiwan
- Prior art keywords
- task
- controller
- execution
- microprocessor
- controller device
- Prior art date
Links
- 238000007726 management method Methods 0.000 title claims description 57
- 238000012545 processing Methods 0.000 claims abstract description 52
- 230000000737 periodic effect Effects 0.000 claims description 44
- 238000000034 method Methods 0.000 claims description 21
- 230000008569 process Effects 0.000 claims description 18
- 230000008859 change Effects 0.000 claims description 7
- 230000009471 action Effects 0.000 description 52
- 238000004891 communication Methods 0.000 description 14
- 238000004458 analytical method Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 7
- 230000002093 peripheral effect Effects 0.000 description 7
- 238000009826 distribution Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000009434 installation Methods 0.000 description 6
- 101150029683 gB gene Proteins 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 102200065573 rs140660066 Human genes 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 101710157310 Tegument protein UL47 homolog Proteins 0.000 description 3
- 238000003745 diagnosis Methods 0.000 description 3
- 101150002378 gC gene Proteins 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 101150045567 GP16 gene Proteins 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000004378 air conditioning Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000010865 sewage Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/484—Precedence
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Programmable Controllers (AREA)
Abstract
本發明之課題在於可使用一次執行一個任務之單一之微處理器,執行優先度不同之任務,且輸出性能指標。 控制器1具備:單一之微處理器,其係一次執行一個任務;第1任務執行部110,其係藉由微處理器實現,執行設定為較高優先度之第1任務;第2任務執行部120,其係藉由微處理器實現,執行設定為較低優先度之第2任務;及任務管理部130,其算出微處理器所具有之運算處理資源中之可分配至第2任務之執行之餘裕資源,決定使用算出之餘裕資源執行第2任務之情形時的顯示第2任務之性能之推定值之性能指標,且輸出餘裕資源與性能指標。
Description
本發明係關於一種控制器裝置及控制器裝置之任務執行管理方法。
例如,於發電廠、工場、工廠等各種設施中,設置有複數個發電機、馬達、泵、加熱器等致動器、或溫度感測器、壓力感測器、電壓計、電流計等感測器。設置於設施之控制器裝置係基於來自感測器之信號而控制致動器。 控制器裝置亦稱作序列控制裝置或可程式化控制器(PLC:Programmable Logic Controller)。控制器裝置係按照由以梯形語言為代表之序列程式語言記述之內容,而控制致動器之動作等。 因控制器裝置通常進行按照逐個決定之順序執行之序列控制,故並不適合需要進行複雜之算術運算之資料處理。以梯形語言等記述複雜之算術運算,程式製作方面之負擔較大。再者,因相較於序列執行時間,於資料處理消耗更長之時間,故可能對序列執行之即時性造成影響。 因此,於專利文獻1中,揭示有序列執行部若讀取啟動命令,則使資料處理執行部啟動而使其執行資料處理程式,接收其運算結果而繼續進行序列控制之技術。 又,亦已知使用多芯CPU,利用如序列控制之要求較高即時性之處理、與如HMI(Human Machine Interface:人機介面)處理之不要求較高即時性之處理,而劃分所分配之CPU芯之技術。 [先前技術文獻] [專利文獻] [專利文獻1]日本專利特開平9-274511號公報 [非專利文獻] [非專利文獻1]德國倍福公司,“多芯與多任務之支持”,[online(在線)],2011年12月22日,德國倍福公司TwinCAT 3產品介紹網頁,[2015年9月29日檢索],網際網路<URL:http://www.beckhoff.co.jp/jp.asp?twincat/ twincat-3-xa-performance.htm>
[發明所欲解決之問題] 於專利文獻1中,藉由以互不相同之微電腦使序列執行部與資料處理執行部執行,而一面維持序列處理之即時性,一面實現包含複雜之算術運算之資料處理。但,發電廠或工場、工廠等各種設施所使用之控制器裝置中,具備所謂單晶片、單芯構成之CPU者亦較多。對於一次僅可處理一個任務之構成之微處理器而言,難以兼顧優先度較高之序列處理與優先度較低之資料處理。 於非專利文獻1中,因使用具有複數個芯之多芯CPU,故可與專利文獻1同樣地,兼顧優先度較高之序列處理與優先度較低之HMI處理。但,與專利文獻1同樣地,非專利文獻1亦無法對組裝機器等多使用之單晶片、單芯構成之CPU進行應用。 假設於具有單晶片、單芯構成之CPU之序列控制裝置中執行序列處理與包含複雜之算術運算之資料處理之情形時,使用者無從知曉資料處理以何種程度之性能被實施。 本發明係鑑於上述課題而完成者,其目的在於提供一種控制器裝置及控制器裝置之任務執行管理方法,可使用一次執行一個任務之單一之微處理器而兼顧較高優先度之第1任務之執行與較低優先度之第2任務之執行,且可輸出執行第2任務之情形時之性能指標。 [解決問題之技術手段] 為解決上述課題,按照本發明之控制器裝置係執行優先度不同之複數個任務者,且具備:單一之微處理器,其係一次執行一個任務;第1任務執行部,其係藉由微處理器實現,執行設定為較高優先度之一個以上之第1任務;第2任務執行部,其係藉由微處理器實現,執行設定為較低優先度之一個以上之第2任務;及任務管理部,其算出微處理器所具有之運算處理資源中之可分配至第2任務之執行之餘裕資源,決定使用算出之餘裕資源執行第2任務之情形時的顯示第2任務之性能之推定值之性能指標,且輸出餘裕資源與性能指標。 [發明之效果] 根據本發明,可藉由一次執行一個任務之單一之微處理器,執行優先度較高之第1任務與優先度較低之第2任務,再者,可算出可分配至第2任務之執行之餘裕資源,輸出執行第2任務之情形時之性能指標。藉此,可執行優先度不同之複數個任務,且可輸出執行第2任務之情形時之性能指標。
以下,基於圖式而說明本發明之實施形態。本實施形態之控制系統具有控制器裝置與程式發佈裝置。控制器裝置具備一次執行一個任務之單一之微處理器。控制器裝置係藉由單一之微處理器,執行具有較高優先度之第1任務與具有較低優先度之第2任務。 第1任務係例如如發電廠、工場、鐵路、工廠、電梯系統等各種控制系統中所使用之序列控制的要求較高即時性之高優先任務。以下,將第1任務稱作高優先度任務。與此相對,第2任務係於序列控制之間隙執行的如包含複雜之算術運算之資料處理之最大努力型之任務。以下,將第2任務稱作BE任務。BE任務係利用某一個高優先度任務與另一個高優先度任務之間之間隙時間,以儘可能高之性能執行。 因BE任務為最大努力型之任務,故不能保證執行時之性能。因此,通常之情形時,控制器裝置之使用者無從知曉BE任務以何種程度之性能被執行。但,於本實施形態中,可推定BE任務之執行時之性能並輸出。因此,使用者可容易地把握BE任務發揮何種程度之性能等,而提高便利性。 於本實施形態中,自CPU動作頻率與週期任務之CPU利用率,算出BE任務可執行之CPU動作頻率之標準。再者,於本實施形態中,將可自CPU動作頻率換算之性能指標轉換為適於BE任務之單位與值,而提示給使用者。所謂適於BE任務之單位與值係指性質適於BE任務之處理內容之單位或值。例如,於解析特定期間之記錄資訊之BE任務之情形時,將解析該記錄資訊所需之「時間」採用為性能指標。例如,於管理機器之動作狀態之BE任務之情形時,將管理對象之機器之「數量」採用為性能指標。例如,於定期計測某種物理狀態之變化之BE任務之情形時,將取樣之「頻率」採用為性能指標。例如,於解析監視照相機之圖像之BE任務之情形時,採用顯示於特定時間解析之圖像資料之數量之「訊框率」。以上為BE任務之性能指標之一例,於本實施形態中並未限定於上述例。 本實施形態之控制器裝置1係如後述,保持關於一個或複數個週期任務之週期與平均執行時間之表143,且保持關於微處理器11之動作頻率之表147。 控制器裝置1具有自各週期任務之週期與平均執行時間之和、及控制器裝置1之CPU動作頻率,於未產生中斷任務之情形時,算出週期任務未使用CPU之CPU閒置狀況之步驟(S40~S42)。CPU資源係與「運算處理資源」對應,CPU閒置狀況係與「餘裕資源」對應。 於本實施形態中,將CPU閒置狀況作為BE任務可利用之CPU資源之標準使用。本實施形態係對控制器裝置之使用者提供BE任務可以何種程度之性能動作之標準。但,提供給使用者之性能指標僅為一個標準,並不代表控制器裝置1保證提示給使用者之性能。 於本實施形態中,以例如計算時間、數量、取樣頻率、訊框率之類對使用者而言容易理解之指標提供以CPU資源量(CPU動作頻率、CPU使用率)換算之BE任務之性能。控制器裝置1具有:表144,其管理各BE任務之性能指標;表146,其管理各BE任務進行最低限度動作所需之性能指標;及表145,其關於各BE任務可設定之性能指標。 使用者可使用計算時間或訊框率之類容易理解之性能指標,簡單地設定各BE任務可利用之CPU資源。各BE任務係消耗與使用者所設定之性能指標對應之CPU資源而執行。 於本實施形態中,具備用以對控制器裝置1發佈BE任務之程式發佈裝置2。程式發佈裝置2係將使用者所要求之BE任務、或控制器裝置1自動判斷而要求之BE任務,經由通信網路CN1而發送至控制器裝置1。程式發佈裝置2具有可對各BE任務設定之性能指標之主資訊232、與管理BE任務之發佈之任務發佈管理部210。程式發佈裝置2於對控制器裝置1發佈BE任務時,亦一同發佈可對該BE任務設定之性能指標之資訊。 於如此構成之本實施形態中,可利用包含週期任務或中斷任務之高優先度任務未利用CPU之間隙時間,以儘可能高之性能執行BE任務。再者,於本實施形態中,將BE任務之性能指標之標準提示給使用者。於本實施形態中,使用者可使用GUI(Graphical User Interface:圖形使用者介面)而簡單地設定BE任務之動作及性能指標。 [實施例1] 使用圖1~圖18而說明第1實施例。圖1顯示控制系統整體之功能構成例。 控制系統係使用於例如發電廠、工場、工廠、電梯系統、鐵路系統、上下水道系統、樓宇空調系統等各種設施4之控制。控制系統具備至少一個控制器1、至少一個程式發佈裝置2、及至少一個控制對象機器3。控制器1係與「控制器裝置」對應。可於設施4內設置複數個控制器1。各控制器1可分別將複數個控制對象機器3置於管理下。程式發佈裝置2除可連接於同一設施4內之各控制器1外,亦可與設置於圖外之其他設施之控制器1連接。 說明連接構成。程式發佈裝置2與控制器1係可經由通信網路CN1進行雙向通信地連接。通信網路CN1係包含例如內部網路等自建網、利用光通信等之閉域網、專用線或網際網路等而構成。通信網路CN1可為有線或無線之任一者。 於設施4內,控制器1與控制對象機器3係可經由控制網路CN2進行通信地連接。控制器1與控制對象機器3係經由例如LAN(Local Area Network:區域網路)電纜、RS-485電纜、RS-232C電纜、專用匯流排等有線或無線而連接於控制網路CN2,並依照特定之順序交換資訊。 於控制對象機器3包含感測器31與致動器32。於感測器31例如有手動開關、繼電器、光電開關、近接開關、限位開關、重量計、溫度感測器、壓力感測器、振動感測器、音波感測器、流量計、流速計、氣體感測器、速度感測器、旋轉計、電流計、電壓計、電力計、水質感測器、顏色判別感測器、照相機等。於致動器32例如有馬達、發電機、加熱器、控制閥、氣缸、螺線管、燈、顯示器、蜂鳴器、揚聲器、泵、壓縮機、空調機、冷凍機、輸送機等。 說明控制器1之功能構成。控制器1例如具備高優先度任務執行部110、BE任務執行部120、任務管理部130、記憶部140、及使用者介面部150。 高優先度任務執行部110係與「第1任務執行部」對應。高優先度任務執行部110執行作為「第1任務」之中斷任務111及週期任務112。所謂中斷任務111係藉由於檢測出特定事項時產生之中斷而執行之任務。所謂週期任務112係週期性地執行之任務。但,週期任務112之執行週期未必固定。亦有週期以某一程度之時間寬度變化之情形。高優先度任務係用以控制控制對象機器3之任務,對控制處理要求較高即時性。因此,對高優先度任務設定較BE任務高之優先度。 BE任務執行部120係與「第2任務執行部」對應。BE任務執行部120執行作為「第2任務」之BE任務121。BE任務121例如有解析記錄資訊而製作故障預兆所需之學習資料之處理、自感測器信號診斷故障預兆之處理、自機械振動診斷狀態之處理、解析圖像資料之處理等。因BE任務不同於高優先度任務,不要求即時性,故利用未執行高優先度任務之間隙時間(空閒時間)而執行。因BE任務係設為於可執行之情形時於可能之範圍內可執行之所謂最大努力型任務,故被設定較高優先度任務低之優先度。 任務管理部130管理高優先度任務或BE任務。任務管理部130係藉由管理記憶部140中所記憶之各管理表141~149之內容,而管理高優先度任務或BE任務。再者,任務管理部130經由使用者介面部150,將用以設定BE任務之動作之畫面G10(以圖17後述)提供給使用者。任務管理部130係根據自BE任務動作設定畫面G10輸入之使用者指示,而變更BE任務之參數。 記憶部140保持為管理高優先度任務及BE任務等所需之複數個表141~149。於記憶部140保持例如高優先度任務優先度表141、BE任務優先度表142、週期任務動作表143、BE任務性能指標表144、BE任務可設定性能指標表145、BE任務最低動作性能指標表146、CPU動作頻率表147、CPU閒置狀況表148、BE任務動作狀態表149。各表之詳細內容將予以後述。 使用者介面部(圖中為UI部)150係用以於控制器1之使用者與控制器1之間交換資訊之功能。於本實施例中,說明控制器1使用控制器1內之使用者介面部150與使用者交換資訊之情形。並未限於此,亦可為使用者與控制器藉由使用者所持有之使用者終端與控制器1進行通信而交換資訊之構成。 說明程式發佈裝置2之功能構成。程式發佈裝置2係對各設施4內之各控制器1發佈BE任務之電腦。程式發佈裝置2例如具備任務發佈管理部210、資料庫管理部220、及記憶部230。 任務發佈管理部210係若通過控制器1收到來自使用者之要求,則將指定之BE任務發送至控制器1之任務管理部130。資料庫管理部220管理記憶部230中所記憶之各BE任務231或表232。另,任務發佈管理部210亦可設為按照來自控制器1之要求,將控制器1自動判斷為必要之BE任務發送至任務管理部130之構成。 圖2顯示控制器1及程式發佈裝置2之硬體構成。首先,最初,自控制器1開始說明。控制器1例如具備:微處理器(圖中為CPU)11、網路介面12、13、周邊控制裝置14、EPROM(Erasable Programmable Read Only Memory:可抹除可程式化唯讀記憶體)15、主記憶體16、非揮發性記憶裝置17、及使用者介面裝置18。各裝置11、12、15、16係以匯流排19相互連接。以下,有將介面略記為I/F之情形。網路I/F12、13、非揮發性記憶裝置17、使用者介面裝置18係經由周邊控制裝置14而連接於匯流排19。 微處理器11係藉由執行例如EPROM15中所記憶之電腦程式,而實現以圖1敘述之功能110~130。 網路I/F12係連接於通信網路CN1而進行通信。網路I/F13係連接於控制網路CN2而進行通信。 非揮發性記憶裝置17係作為例如如HDD(Hard Disk Drive:硬磁碟驅動器)或SSD(Solid State Drive:固體狀態驅動器)之記憶裝置而構成。非揮發性記憶裝置17記憶作業系統或各種電腦程式。以圖1敘述之記憶部140係藉由非揮發性記憶裝置17實現,但並未限於此,亦可由例如EPROM15或主記憶體16、非揮發性記憶裝置17之任一者或複數個而實現記憶部140。電腦程式或檔案之至少一部分亦可記憶於EPROM15。非揮發性記憶裝置17或EPROM15中所記憶之電腦程式等係於主記憶體16中展開而由CPU11執行。 使用者介面裝置18具備用以供使用者對控制器1輸入指示等之資訊輸入裝置、及用以自控制器1對使用者提供資訊之資訊輸出裝置。作為資訊輸入裝置,例如有鍵盤、觸控面板、滑鼠、聲音輸入裝置等。作為資訊輸出裝置,例如有顯示器、聲音合成裝置、揚聲器、印表機等。 說明程式發佈裝置2之構成。程式發佈裝置2例如具備:微處理器21、網路I/F22、周邊控制裝置23、EPROM24、主記憶體25、非揮發性記憶裝置26、及使用者介面裝置27。微處理器21、主記憶體25、EPROM24及周邊控制裝置23係經由匯流排28而相互連接。網路I/F22、非揮發性記憶裝置26及使用者介面裝置27係經由周邊控制裝置23而連接於匯流排28。 若非揮發性記憶裝置26或EPROM24中所記憶之電腦程式被傳送至主記憶體25並於主記憶體25上展開,則微處理器21讀取該電腦程式並執行。藉此,實現以圖1敘述之任務發佈管理部210及資料庫管理部220之功能。 網路I/F22係連接於通信網路CN1而進行通信。使用者介面裝置27係用於系統管理者與程式發佈裝置2交換資訊。另,對程式發佈裝置2而言,亦可經由通信網路CN1或記憶媒體使其記憶BE任務。 圖3顯示管理高優先度任務之優先度之表141之構成。該高優先度任務優先度表141係由控制器1保持。 表141係例如將高優先度任務名C1411與執行優先度C1412建立關聯而管理。高優先度任務名C1411係識別高優先度任務即各中斷任務或各週期任務之名稱。執行優先度C1412係與「較高優先度」對應。 此處,於優先度C1412中,值越小之任務,優先度越高。作業系統之任務排程器係若於執行優先度較低之任務中,優先度高於其之任務啟動,則將CPU11之資源分配給該優先度較高之任務。作為搭載於控制器1之作業系統,例如有Linux(註冊商標)或iTRON。另,優先度為相同值之任務之情形時,由任務排程器均等地分配CPU資源(電腦資源)。 圖4顯示管理BE任務之優先度之表142。BE任務優先度表142係由控制器1保持。BE任務優先度表142係例如將BE任務名C1421與執行優先度C1422建立關聯而管理。BE任務名C1421係識別BE任務之名稱。執行優先度C1422係與「較低優先度」對應。如上所述,值越小則優先度越高。於本實施例中,因對高優先度任務設定負值,對BE任務設定正值(此處包含0),故BE任務之優先度低於高優先度任務之優先度。 圖5顯示管理週期任務之動作之表143。該週期任務動作表143係由控制器1保持。週期任務動作表143係例如將週期任務名C1431、動作週期C1432、及平均執行時間C1433建立關聯而管理。 週期任務名C1431係識別週期任務之名稱。動作週期C1432為週期任務執行之週期。平均執行時間C1433係執行一次週期任務所需之時間之平均值。平均執行時間C1433亦可由控制器1自過去之動作履歷更新為最新值。或如後述之實施例般,亦可基於在其他控制器1動作之實績值而設定。 圖6顯示管理BE任務之性能指標之表144。該BE任務性能指標表144係由控制器1保持。該表144係例如將BE任務名C1441、性能指標之內容C1442、及性能指標之單位C1443建立關聯而管理。 BE任務名C1441係識別BE任務之名稱。性能指標之內容C1442顯示對每個BE任務所設定之性能指標之具體內容。單位C1443係性能指標之單位。性能指標係根據BE任務之性質而設定。例如,於預測故障而學習之BE任務中,以解析一天之記錄資訊而學習為性能指標。該性能指標之單位為「小時」。於診斷故障預兆之BE任務中,以作為故障預測之診斷對象之感測器之數量為性能指標。該性能指標之單位為「感測器數量」。於診斷振動之BE任務中,以檢測振動之取樣頻率為性能指標。該性能指標之單位為「頻率」。於解析圖像資料之BE任務中,以圖像資料之解析速度即訊框率為性能指標。該性能指標之單位為「fps」。 圖7顯示管理可對BE任務設定之性能指標之表145。該表145係由控制器1保持。BE任務可設定性能指標表145係例如將BE任務名C1451、可設定之性能指標C1452及對應之CPU動作頻率C1453建立關聯而管理。 BE任務名C1451係識別BE任務之名稱。可設定之性能指標C1452顯示可對BE任務設定之性能指標。對應之CPU動作頻率C1453係與可設定之各性能指標對應之CPU動作頻率。將可對BE任務設定之性能指標設為越高,則實現該性能指標所需之CPU動作頻率亦越高。於替代CPU動作頻率而使用CPU使用率之情形時,設為越高之性能指標,則所需之CPU使用率越大。 此處,控制器1所保持之BE任務可設定性能指標表145係程式發佈裝置2所保持之BE任務可設定性能指標主表232之一部分。即,程式發佈裝置2係以主表232管理所登錄之可對各BE任務設定之所有性能指標。自程式發佈裝置2對控制器1發佈BE任務時,亦一同發佈可對該BE任務設定之性能指標之一覽。控制器1係將自程式發佈裝置2收到之BE任務及可設定之性能指標登錄於表145而保持。因程式發佈裝置2所保持之主表232之基本構成係與圖7所示之BE任務可設定性能指標表145相同,故省略圖示。 圖8係管理BE任務之最低動作時之性能指標之表146。該表146係由控制器1保持。BE任務最低動作性能指標表146係例如將BE任務名C1461、最低動作性能指標C1462及對應之CPU動作頻率C1463建立關聯而管理。 BE任務名C1461係識別BE任務之名稱。最低動作性能指標C1462顯示BE任務動作時之最低性能指標。BE任務無法以低於最低動作性能指標之性能執行。對應之CPU動作頻率C1463係以最低動作性能指標執行BE任務之情形時所需之CPU動作頻率。如上所述,亦可替代CPU動作頻率而使用CPU使用率。 圖9係管理CPU動作頻率之表147。該表147係由控制器1保持。CPU動作頻率表147記憶CPU11之最大動作頻率。 圖10係管理CPU11之閒置狀況之表148。該表148係由控制器1保持。CPU閒置狀況表148係例如將動作頻率C1481與CPU使用率C1482建立關聯而管理。 動作頻率C1481係CPU11當前之動作頻率。CPU使用率C1482係CPU11當前之使用率。例如,於CPU11之最大動作頻率為1000 MHz,當前之動作頻率為650 MHz之情形時,CPU11僅閒置動作頻率350 MHz。若CPU11當前之使用率為65%,則CPU11閒置35%,即運算處理中存在餘裕。 圖11顯示管理BE任務之動作狀態之表149。該表149係由控制器1保持。BE任務動作狀態表149係例如將BE任務名C1491、動作狀態C1492、所設定之性能指標C1493、及對應之CPU動作頻率C1494建立關聯而管理。 BE任務名C1491係識別BE任務之名稱。動作狀態C1492顯示BE任務當前之動作狀態。於動作狀態之值,例如有「執行中」與「停止中」。所設定之性能指標C1493顯示對BE任務設定之性能指標。BE任務係以所設定之性能指標為目標而執行。但,由於為最大努力型之任務,故所設定之性能指標僅為一個標準,亦或期望或推定之性能。因此,未必依照所設定之性能指標執行BE任務。對應之CPU動作頻率C1494係與所設定之性能指標對應之CPU11之動作頻率。 圖12顯示對任務分配CPU11之資源之情況。控制器1之任務排程器係安排對中斷任務及週期任務之CPU資源分配。 圖12(1)顯示未產生中斷任務之情形。圖12(2)顯示於週期任務(TPb)與週期任務(TPc)之間之間隙時間產生中斷任務(TIa)之情形。圖12(3)顯示於執行週期任務(TPb)中產生中斷任務(TIa)之情形。 如圖12(1)所示,於未產生中斷任務之情形時,任務排程器係按照高優先度任務優先度表141之資訊,對各週期任務(TPa)(TPb)(TPc)分配CPU資源。於該等週期任務(TPa)(TPb)(TPc)之優先度彼此相等之情形時,任務排程器均等地分配CPU資源。任務排程器係以各週期任務(TPa)(TPb)(TPc)之執行時間不重複之方式均等地分配CPU資源。 圖12(2)中,於週期任務(TPb)與週期任務(TPc)之間之閒置時間,產生中斷任務(TIa)並執行。因本就為閒置之時間帶,故於各週期任務(TPa)(TPb)(TPc)之執行時間未產生變更。週期任務(TPa)(TPb)(TPc)係以與圖12(1)相同之時序及時間執行。 圖12(3)中,於執行週期任務(TPb)中,產生中斷任務(TIa)。如上所述,中斷任務之優先度係設定為高於週期任務之優先度。因此,任務排程器暫時中斷週期任務(TPb)之處理,而於中斷之時間帶(t1-t2)執行中斷任務(TIa)。 於圖12之狀況下,說明使BE任務動作之情形。BE任務之優先度低於高優先度任務之優先度。因此,於中斷任務或週期任務之執行中,任務排程器不對BE任務分配CPU資源。任務排程器係於未執行週期任務及中斷任務之任一者之期間,對BE任務分配CPU資源。圖12中,以虛線顯示可執行BE任務之時間之一部分。 於本實施例中,任務管理部130係如以下般試算可對BE任務分配之CPU資源。 圖13係算出CPU11之閒置狀況並記憶之處理之流程圖。本處理係於例如控制器1之啟動時、或以圖17敘述之BE任務動作設定畫面G10之製作時執行。雖本處理之執行主體為任務管理部130,但以控制器1為執行主體進行說明。 控制器1係首先最初計算週期任務動作表143中記載之各週期任務之CPU使用率之和(值A)(S10)。此處,各週期任務之CPU使用率係自平均執行時間與動作週期之商求得(CPU使用率=動作週期/平均執行時間)。 圖5所示之週期任務動作表143之情形時,週期任務TPa之CPU使用率成為10%(100 μs/1000 μs=0.1)。週期任務TPb之CPU使用率成為20%(200/2000=0.1)。週期任務TPc之CPU使用率成為15%(75/500=0.15)。因此,各週期任務之CPU使用率之和(值A)成為35%(10%+10%+15%=35%)。 控制器1算出(1-A)與CPU動作頻率表147之CPU動作頻率(值B)之積而獲得值C(C=B*(1-A))。以具體例進行說明。因CPU動作頻率(值B)為1000 MHz,值A為35%,故值B與值(1-A)之積(值C)成為650 MHz(1000 MHz*(100-35/100)=650 MHz(S11)。 控制器1係將值C儲存至CPU閒置狀況表148之動作頻率c1481,並將值(C/B)儲存至CPU閒置狀況表148之CPU使用率C1482(S12)。 圖14係判定可否執行停止中之BE任務之處理之流程圖。本處理係於以圖17敘述之BE任務動作設定畫面G10之描繪時等,由任務管理部130執行。以下,將動作主體設為控制器1而進行說明。 控制器1係藉由以圖16後述之處理,追加地算出可執行BE任務之CPU動作頻率(值F)(S20)。即,控制器1算出CPU11之資源剩餘何種程度。 控制器1係參照BE任務動作狀態表149而選擇一個動作狀態C1492為「停止中」之任務(S21)。以下,有將停止動作之BE任務稱作「停止中BE任務」之情形。 控制器1係自BE任務最低動作性能指標表146之欄位C1463,讀取與步驟S21中選擇之停止中BE任務對應之CPU動作頻率(值G)(S22)。 控制器1係比較步驟S20中算出之值F與步驟S22中讀取之值G,而判定值F是否大於值G(S23)。 若值F大於值G(S23:是),則控制器1判斷可執行步驟S21中選擇之停止中BE任務,並於圖17所示之BE任務動作設定畫面G10中顯示為「停止中」(S24)。 與此相對,控制器1係於值F為值G以下之情形時(S23:否),判定無法執行步驟S21中選擇之停止中BE任務,並於BE任務動作設定畫面G10中顯示為「無法執行」(S25)。 控制器1係於執行步驟S24或步驟S25後,確認是否已對所有停止中BE任務判定可否執行(S26)。控制器1係於存在尚未判定之停止中BE任務之情形時(S26:否),返回至步驟S21,選擇一個未判定之停止中BE任務。若判斷針對BE任務動作狀態表149中所記載之所有停止中BE任務之可否執行(S26:是),則控制器1結束本處理。 圖15係顯示判定可對BE任務設定之性能指標之處理之流程圖。本處理係由任務管理部130,於製作BE任務動作設定畫面G10時等執行。此處亦將動作主體設為控制器1而進行說明。 控制器1係藉由以圖16敘述之處理,追加地算出可執行BE任務之CPU動作頻率(值F)(S30)。 控制器1係參照BE任務動作狀態表149,而自動作狀態C1492中設定有「執行中」或「停止中」之任一者之BE任務中選擇任一者(S31)。 控制器1係參照BE任務可設定性能指標表145,而自與步驟S31中選擇之BE任務對應之CPU動作頻率C1453中讀取一個CPU動作頻率(值H)(S32)。 控制器1係比較步驟S30中取得之值F與步驟S32中取得之值H,而判定值F是否大於值H(S33)。控制器1係於值F大於值H之情形時(S33:是),判定可對步驟S31中選擇之BE任務設定與步驟S32中選擇之CPU動作頻率對應之性能指標(S34)。 控制器1係於值F為值H以下之情形時(S33:否),判定無法對步驟S31中選擇之BE任務設定與步驟S32中選擇之CPU動作頻率對應之性能指標(S35)。 控制器1係於執行步驟S34或S35之後,確認是否已對與步驟S31中選擇之BE任務相關之所有性能指標,判定是否可對該BE任務進行設定(S36)。 控制器1係於存在未判定可否對步驟S31中選擇之BE任務進行設定之性能指標之情形時(S36:否),返回至步驟S32。控制器1係自BE任務可設定性能指標表145之動作頻率C1453中,選擇一個與步驟S31中選擇之BE任務相關之其他CPU動作頻率。之後,執行上述處理。然後,控制器1係於已對與步驟S31中選擇之BE任務相關之所有性能指標判定可否進行該設定之情形時(S36:是),移行至步驟S37。 控制器1確認是否已對BE任務動作狀態表149之動作狀態C1492中設定有「執行中」或「停止中」之任一者之BE任務整體進行判定(S37)。 控制器1係於存在未判定之BE任務之情形時(S37:否),返回至步驟S31,並自BE任務動作狀態表149中,選擇一個動作狀態C1492為「執行中」或「停止中」之任一者之BE任務。之後,執行上述處理。然後,若對動作狀態C1492中設定有「執行中」或「停止中」之任一者之BE任務之整體,判定可否設定性能指標(S37:是),則控制器1結束本處理。 圖16係顯示追加地算出可執行BE任務之CPU動作頻率(值F)之處理之流程圖。 控制器1係對BE任務動作狀態表149之動作狀態C1492為「執行中」之所有BE任務,讀取設定於性能指標C1493之CPU動作頻率,並算出其等之和(值D)(S40)。 控制器1係自CPU閒置狀況表148之欄位C1481,讀取CPU動作頻率作為值E(S41)。控制器1計算步驟S41中取得之值E與步驟S40中取得之值D之差F(F=E-D),並將該差F追加設為可執行BE任務之CPU動作頻率(值F)(S42)。即,控制器1算出當前執行中之BE任務中所消耗之CPU動作頻率之合計、與CPU11之最大動作頻率之差(F),作為可分配至新的BE任務之執行之動作頻率。 圖17顯示BE任務動作設定畫面G10之例。BE任務動作設定畫面G10係自使用者介面部150提供給使用者。使用者介面部150可將設定畫面G10以例如Web伺服器所提供之網頁之方式提供給使用者,並與使用者之間交換資訊。關於製作設定畫面G10之處理,將以圖18後述。 設定畫面G10例如包含標準顯示部GP10、任務一覽GP11、設定按鈕GP12、取消按鈕GP13、及注意顯示部GP14。 標準顯示部GP10係顯示可重新執行BE任務之CPU資源之標準之區域。任務一覽GP11顯示控制器1所管理之BE任務之一覽。任務一覽GP11係例如將「任務名」、「動作狀態」、「性能指標之內容」、「最低動作性能指標」、「最低動作頻率」、「設定性能指標」、「設定動作頻率」建立關聯而一覽顯示。 「任務名」係識別控制器1管理下之BE任務之名稱。「動作狀態」顯示各BE任務之動作狀態。於動作狀態例如有停止中、執行中、無法執行。使用者可利用下拉選單等變更「停止中」或「執行中」之BE任務之動作狀態。「性能指標之內容」顯示用以知曉BE任務之性能之指標之內容。「最低動作性能指標」係BE任務進行最低限度之動作時之性能指標。「最低動作頻率」係與最低動作性能指標對應之CPU動作頻率。「設定性能指標」係對BE任務當前設定之性能指標。「設定動作頻率」係與設定性能指標對應之CPU動作頻率。使用者可利用下拉選單GP16等變更對執行中之BE任務所設定之性能指標。 使用者係於以對畫面G10之輸入而設定BE任務之動作之情形時,操作設定按鈕GP12。反之,使用者係於取消對畫面G10之輸入之情形時,操作取消按鈕GP13。 注意顯示部GP14顯示用以將對BE任務設定之性能指標並非保證其實現者,而僅為標準之內容通知給使用者之訊息。 藉由顯示上述BE任務動作設定畫面G10,可令使用者知曉BE任務可利用之CPU資源之標準。再者,BE任務之性能指標係將1天之記錄資訊之學習時間、取樣頻率、感測器數量、訊框率之類各BE任務之性能作為可直觀把握之資訊而提供。因此,使用者可藉由對畫面G10之GUI操作,而簡單地設定所期望之性能指標。 如圖12所示,於產生中斷任務之情形或週期任務之執行時間變長之情形時,BE任務可利用之CPU資源較CPU閒置狀況表148所示之值減少。因此,BE任務亦存在僅可發揮較設定之性能指標低之性能之可能性。因此,於BE任務動作設定畫面G10中,設置注意顯示部GP14以促使使用者注意。 圖18係製作BE任務動作設定畫面G10之處理之流程圖。本處理係由控制器1之任務管理部130於描繪BE任務動作設定畫面G10時執行。以下,將動作主體設為控制器1而敘述。 控制器1係參照CPU閒置狀況表148,而讀取可執行BE任務之CPU資源之值C1481、C1482,並作為CPU使用率(動作頻率)之標準進行描繪(S50)。 控制器1係基於BE任務性能指標表144、BE任務動作狀態表149、BE任務最低動作性能指標表146中記載之資訊,而描繪顯示於任務一覽GP11之表(S51)。 控制器1係參照BE任務可設定性能指標表145,而內部保持可對各BE任務設定之性能指標欄位C1452之值(S52)。控制器1判定是否可重啟執行停止中之BE任務,並對停止中之BE任務中判定為無法執行之BE任務記作「無法執行」,令使用者無法選擇(S53)。 控制器1判定可對各BE任務設定之性能指標,並自S52中保持之內容排除無法設定之性能指標(S54)。可藉由執行以上之處理,製作圖17所示之設定畫面G10。 圖19係顯示對控制器1安裝BE任務之處理之流程圖。控制器1係自使用者介面部150向使用者提供用以將BE任務安裝至控制器1之安裝畫面。使用者可調用未圖示之安裝畫面,而要求安裝BE任務。 控制器1若收到來自使用者之安裝指示,則連接至程式發佈裝置2而對程式發佈裝置2要求使用者所指定之BE任務之安裝(S60)。 程式發佈裝置2若收到安裝要求,則對控制器1要求CPU11之動作頻率與已對控制器1安裝完畢之BE任務之一覽。 控制器1係將CPU動作頻率表147中記載之CPU動作頻率與BE任務動作狀態表149中記載之BE任務名C1491之資訊,發送至程式發佈裝置2(S62)。 程式發佈裝置2比較BE任務可設定性能指標主表232與控制器1之CPU動作頻率及BE任務名之一覽,檢測控制器1可安裝之BE任務之一覽。程式發佈裝置2將控制器1可安裝之BE任務一覽發送至控制器1(S63)。 控制器1係將自程式發佈裝置2接收到之BE任務一覽,經由使用者介面部150提示給使用者。使用者自提示之BE任務中,選擇所期望之BE任務。使用者之選擇結果係自使用者介面部150輸入至控制器1(S64)。 控制器1對程式發佈裝置2要求使用者所選擇之BE任務之安裝(S65)。程式發佈裝置2將自控制器1要求之BE任務之程式與可對該BE任務設定之性能指標之資訊發送至控制器1(S66)。 控制器1係將自程式發佈裝置2接收到之BE任務安裝至BE任務執行部120,再者,將可對該BE任務設定之性能指標之資訊分別追記於BE任務性能指標表144、BE任務可設定性能指標表145、BE任務動作狀態表149、BE任務最低動作性能指標表146、及BE任務優先度表142(S67)。 根據如此構成之本實施例,可藉由單晶片、單芯構成之CPU11,一面優先執行週期任務及中斷任務,一面利用未執行該等高優先度任務之情形時之餘裕資源,以儘可能高之性能執行BE任務。因此,本實施例之控制器裝置並非使用複數個微處理器或具有複數個芯之微處理器,而可根據其優先度之不同而分別執行複數個任務,可將裝置構成簡化而降低製造成本。 於本實施例中,因將成為BE任務之執行性能之標準之指標提示給使用者,故使用者可於事前確認BE任務以何種程度之性能被執行,而提高易用性。再者,於本實施例中,因將如時間、感測器數量、頻率、訊框率等與BE任務之性質相應且容易理解之性能指標提示給使用者,故即使為不熟練之使用者,亦可直觀地把握BE任務之性能。 再者,於本實施例中,因通過BE任務動作設定畫面G10之注意顯示部GP14而通知BE任務之性能指標為標準之內容,故可防止使用者誤解於未然,藉此亦提高易用性。 [實施例2] 使用圖20說明第2實施例。因包含本實施例之以下之各實施例相當於第1實施例之變化例,故以與第1實施例之不同為中心而進行說明。於本實施例中,說明幾種對控制器1設定BE任務之平均執行時間之方法。 圖20係控制系統之整體圖。程式發佈裝置2係與複數個控制器1(1)~(3)連接。該等控制器1(1)~(3)可設置於同一事務所,亦可設置於各不相同之事務所。此處,假定控制器1(1)、(2)為既有,控制器1(3)為新設者而進行說明。另,並未限於控制器1之新設時,於控制器1所管理之控制系統之構成變化之情形、或使用者指示更新之情形時,亦可執行以下處理。 本實施例之程式發佈裝置2係除第1實施例中敘述之構成外,亦具備實績值解析部240與參數設定部250。 實績值解析部240係自複數個控制器1(1)、(2)之任務管理部130分別收集週期任務之平均執行時間或BE任務之動作參數(S70)並進行解析(S71)。實績值解析部240可藉由對複數個控制器1(1)、(2)之各任務之執行實績進行統計處理等而獲得更準確之推定值。 參數設定部250係將實績值解析部240之解析結果發送至更新對象之控制器1(3)之任務管理部130,使其更新週期任務之平均執行時間或BE任務之動作參數(例如最低動作性能指標等)(S72)。對新設之控制器1(3)初始設定之各種參數被更新為實績值解析部240所算出之最新值。參數設定部250之功能亦可由任務發佈管理部210執行。 亦可替代對既有之控制器1(1)、(2)之實績值進行統計處理之方法,或與進行統計之處理一起,使用模擬器5。模擬器5係於模擬各任務之動作環境之環境下,事前測試各任務之執行,並調製各任務之參數(S80)。參數設定部250係按照模擬器5之結果,更新對象之控制器1(3)所具有之各任務之參數。 如此構成之本實施例亦發揮與第1實施例相同之作用效果。再者,於本實施例中,因可更新控制器1所具有之各任務之參數,故可更準確地算出CPU11之閒置狀況等,可提高BE任務之性能指標之實現精度。 設置控制器1之控制系統並非始終不變,而係隨著控制對象機器3之經年劣化等而變化。又,設置控制系統之現場之條件或周圍環境亦變化。因此,執行各任務所需之時間變化。 又,由於BE任務亦可利用所謂開放源碼程式而製作,故因安全對策等而將程式加以適當修正。伴隨程式修正,BE任務之執行性能變化。於本實施例中,可於事前由模擬器5確認經程式修正後之BE任務之動作,因可根據需要變更參數等,故可提高BE任務之可靠性,而提高易用性。 [實施例3] 使用圖21說明第3實施例。於本實施例中,使用者可簡單地設定BE任務之動作。圖21顯示本實施例之BE任務動作設定畫面G10A之例。 本實施例之畫面G10A具備簡易設定部GP17。簡易設定部GP17係按照使用者所選擇之意願而自動設定BE任務之動作。於簡易設定部GP17中,使用者可選擇例如「執行儘可能多之BE任務」、「優先執行優先度較高之BE任務」等條件。 為了「執行儘可能多之BE任務」,只要例如以執行所需之CPU動作頻率由少至多之順序選擇BE任務,直至所選擇之BE任務之CPU動作頻率之合計值與空閒之CPU動作頻率之值一致(直至於不超過空閒之CPU動作頻率之值之前提下最接近)即可。 又,為了「優先執行優先度較高之BE任務」,只要例如以優先度由高至低之順序且執行所需之CPU動作頻率由少至多之順序選擇BE任務,直至所選擇之BE任務之CPU動作頻率之合計值與空閒之CPU動作頻率之值一致(直至於不超過空閒之CPU動作頻率之值之前提下最接近)即可。 任務管理部130係按照自簡易設定部GP17取得之選擇結果,而自動設定BE任務動作設定部G10A之具體內容,並提示給使用者。 如此構成之本實施例亦發揮與第1實施例相同之作用效果。再者,於本實施例中,因設置簡易設定部GP17,故即使為不熟練之使用者,亦可將BE任務之動作設定為所期望之值。於本實施例中,藉由結合與BE任務相關之直觀性之性能指標之顯示、與用以簡易設定BE任務之動作之簡易設定部GP17,而進一步提高使用者之易用性。 [實施例4] 使用圖22說明第4實施例。於本實施例中,說明BE任務與高優先度任務協作進行之情形。圖22係顯示BE任務與高優先度任務(週期任務、中斷任務)協作而相互作用之例之流程圖。 說明BE任務之執行結果作用於高優先度任務之例。BE任務執行部120係若檢測出故障預兆,則通知任務管理部130(S90)。任務管理部130對是否對該故障預兆作出應對進行評估,再者,對作出應對之情形時之參數變更進行評估(S91)。任務管理部130係於評估為對故障預兆作出應對之情形時,指示高優先度任務執行部110進行參數之變更(S93)。 例如,於檢測出故障預兆之情形時,可藉由變更設定溫度或設定壓力等設定值或者動作週期等之週期任務之參數,而降低故障之可能性,或延遲故障產生之時間。於週期任務之動作週期變短之情形時,因可提高BE任務之執行時之性能,故可更進一步地提高故障預兆等處理之頻率或精度。 如圖22之下側所示,高優先度任務執行部110係若檢測出某種異常,則通知任務管理部130(S94)。任務管理部130診斷該異常檢測,而判定是否必須執行BE任務(S95)。例如,於檢測出異常之聲音之情形時,任務管理部130判定是否應啟動故障預兆診斷BE任務或振動診斷任務。 BE任務執行部120判定是否已安裝應執行之BE任務,並於未安裝之情形時,對程式發佈裝置2要求安裝(S96)。因該處理將以圖19敘述,故予以省略。 BE任務執行部120對BE任務執行部120指示應執行之BE任務之執行(S97)。BE任務執行部120執行所指示之BE任務。 藉此,於本實施例中,由於不僅發揮與第1實施例相同之作用效果,而且可使BE任務與高優先度任務協作進行,故可提高控制器1之可靠性。 另,本發明並未限定於上述之實施形態。只要為本領域技術人員,則可於本發明之範圍內進行各種追加或變更等。於上述實施形態中,並未限定於附加圖式所圖示之構成例。於達成本發明之目的之範圍內,可適當變更實施形態之構成或處理方法。 又,本發明之各構成要素可任意取捨選擇,且具備經取捨選擇之構成之發明亦包含於本發明。再者,申請專利範圍所記載之構成亦可於申請專利範圍中所明示之組合以外進行組合。 本實施形態亦可例如如下述般表現。 「一種電腦程式,其係用以藉由具有一次執行一個任務之單一之微處理器之控制器裝置執行設定為較高優先度之一個以上之第1任務與設定為較低優先度之一個以上之第2任務者;且 算出上述微處理器所具有之運算處理資源中之可分配至上述第2任務之執行之餘裕資源; 決定使用上述算出之餘裕資源執行上述第2任務之情形時的顯示上述第2任務之性能之推定值之性能指標; 輸出上述餘裕資源與上述性能指標。」 「一種控制系統,其係具備執行優先度不同之複數個任務之控制器裝置、與對上述控制器裝置發佈任務之程式發佈裝置者;且 上述控制器裝置具有: 單一之微處理器,其係一次執行一個任務; 第1任務執行部,其係藉由上述微處理器實現,執行設定為較高優先度之一個以上之第1任務; 第2任務執行部,其係藉由上述微處理器實現,執行設定為較低優先度之一個以上之第2任務;及 任務管理部,其算出上述微處理器所具有之運算處理資源中之可分配至上述第2任務之執行之餘裕資源,決定使用上述算出之餘裕資源執行上述第2任務之情形時的顯示上述第2任務之性能之推定值之性能指標,且輸出上述餘裕資源與上述性能指標;且 上述程式發佈裝置係將自上述控制器裝置要求之第2任務與安裝該第2任務時必需之資訊發送至上述控制器裝置而使其進行安裝。」
1‧‧‧控制器
1(1)‧‧‧控制器
1(2)‧‧‧控制器
1(3)‧‧‧控制器
2‧‧‧程式發佈裝置
3‧‧‧控制對象機器
4‧‧‧設施
5‧‧‧模擬器
11‧‧‧微處理器
12‧‧‧網路介面
13‧‧‧網路介面
14‧‧‧周邊控制裝置
15‧‧‧EPROM
16‧‧‧主記憶體
17‧‧‧非揮發性記憶裝置
18‧‧‧使用者介面裝置
19‧‧‧匯流排
21‧‧‧微處理器
22‧‧‧網路I/F
23‧‧‧周邊控制裝置
24‧‧‧EPROM
25‧‧‧主記憶體
26‧‧‧非揮發性記憶裝置
27‧‧‧使用者介面裝置
28‧‧‧匯流排
31‧‧‧感測器
32‧‧‧致動器
110‧‧‧高優先度任務執行部
111‧‧‧中斷任務
112‧‧‧週期任務
120‧‧‧BE任務執行部
121‧‧‧BE任務
130‧‧‧任務管理部
140‧‧‧記憶部
141‧‧‧高優先度任務優先度表
142‧‧‧BE任務優先度表
143‧‧‧週期任務動作表
144‧‧‧BE任務性能指標表
145‧‧‧BE任務可設定性能指標表
146‧‧‧BE功能最低動作性能指標表
147‧‧‧CPU動作頻率表
148‧‧‧CPU閒置狀況表
149‧‧‧BE任務動作狀態表
150‧‧‧使用者介面部
210‧‧‧任務發佈管理部
220‧‧‧資料庫管理部
230‧‧‧記憶部
231‧‧‧BE任務
232‧‧‧表
240‧‧‧實績值解析部
250‧‧‧參數設定部
C1411‧‧‧高優先度任務名
C1412‧‧‧執行優先度
C1421‧‧‧BE任務名
C1422‧‧‧執行優先度
C1431‧‧‧週期任務名
C1432‧‧‧動作週期
C1433‧‧‧平均執行時間
C1441‧‧‧BE任務名
C1442‧‧‧性能指標之內容
C1443‧‧‧性能指標之單位
C1451‧‧‧BE任務名
C1452‧‧‧可設定之性能指標
C1453‧‧‧對應之CPU動作頻率
C1461‧‧‧BE任務名
C1462‧‧‧最低動作性能指標
C1463‧‧‧對應之CPU動作頻率
C1481‧‧‧動作頻率
C1482‧‧‧CPU使用率
C1491‧‧‧BE任務名
C1492‧‧‧動作狀態
C1493‧‧‧所設定之性能指標
C1494‧‧‧對應之CPU動作頻率
CN1‧‧‧通信網路
CN2‧‧‧控制網路
G10‧‧‧BE任務動作設定畫面
G10A‧‧‧BE任務動作設定畫面
GP10‧‧‧標準顯示部
GP11‧‧‧任務一覽
GP12‧‧‧設定按鈕
GP13‧‧‧取消按鈕
GP14‧‧‧注意顯示部
GP16‧‧‧下拉選單
GP17‧‧‧簡易設定部
S10~S12‧‧‧步驟
S20~S26‧‧‧步驟
S30~S37‧‧‧步驟
S40~S42‧‧‧步驟
S50~S54‧‧‧步驟
S60~S67‧‧‧步驟
S70~S72‧‧‧步驟
S80‧‧‧步驟
S90~S98‧‧‧步驟
t1-t2‧‧‧時間帶
TIa‧‧‧中斷任務
TIb‧‧‧中斷任務
TIc‧‧‧中斷任務
TPa‧‧‧週期任務
TPb‧‧‧週期任務
TPc‧‧‧週期任務
1(1)‧‧‧控制器
1(2)‧‧‧控制器
1(3)‧‧‧控制器
2‧‧‧程式發佈裝置
3‧‧‧控制對象機器
4‧‧‧設施
5‧‧‧模擬器
11‧‧‧微處理器
12‧‧‧網路介面
13‧‧‧網路介面
14‧‧‧周邊控制裝置
15‧‧‧EPROM
16‧‧‧主記憶體
17‧‧‧非揮發性記憶裝置
18‧‧‧使用者介面裝置
19‧‧‧匯流排
21‧‧‧微處理器
22‧‧‧網路I/F
23‧‧‧周邊控制裝置
24‧‧‧EPROM
25‧‧‧主記憶體
26‧‧‧非揮發性記憶裝置
27‧‧‧使用者介面裝置
28‧‧‧匯流排
31‧‧‧感測器
32‧‧‧致動器
110‧‧‧高優先度任務執行部
111‧‧‧中斷任務
112‧‧‧週期任務
120‧‧‧BE任務執行部
121‧‧‧BE任務
130‧‧‧任務管理部
140‧‧‧記憶部
141‧‧‧高優先度任務優先度表
142‧‧‧BE任務優先度表
143‧‧‧週期任務動作表
144‧‧‧BE任務性能指標表
145‧‧‧BE任務可設定性能指標表
146‧‧‧BE功能最低動作性能指標表
147‧‧‧CPU動作頻率表
148‧‧‧CPU閒置狀況表
149‧‧‧BE任務動作狀態表
150‧‧‧使用者介面部
210‧‧‧任務發佈管理部
220‧‧‧資料庫管理部
230‧‧‧記憶部
231‧‧‧BE任務
232‧‧‧表
240‧‧‧實績值解析部
250‧‧‧參數設定部
C1411‧‧‧高優先度任務名
C1412‧‧‧執行優先度
C1421‧‧‧BE任務名
C1422‧‧‧執行優先度
C1431‧‧‧週期任務名
C1432‧‧‧動作週期
C1433‧‧‧平均執行時間
C1441‧‧‧BE任務名
C1442‧‧‧性能指標之內容
C1443‧‧‧性能指標之單位
C1451‧‧‧BE任務名
C1452‧‧‧可設定之性能指標
C1453‧‧‧對應之CPU動作頻率
C1461‧‧‧BE任務名
C1462‧‧‧最低動作性能指標
C1463‧‧‧對應之CPU動作頻率
C1481‧‧‧動作頻率
C1482‧‧‧CPU使用率
C1491‧‧‧BE任務名
C1492‧‧‧動作狀態
C1493‧‧‧所設定之性能指標
C1494‧‧‧對應之CPU動作頻率
CN1‧‧‧通信網路
CN2‧‧‧控制網路
G10‧‧‧BE任務動作設定畫面
G10A‧‧‧BE任務動作設定畫面
GP10‧‧‧標準顯示部
GP11‧‧‧任務一覽
GP12‧‧‧設定按鈕
GP13‧‧‧取消按鈕
GP14‧‧‧注意顯示部
GP16‧‧‧下拉選單
GP17‧‧‧簡易設定部
S10~S12‧‧‧步驟
S20~S26‧‧‧步驟
S30~S37‧‧‧步驟
S40~S42‧‧‧步驟
S50~S54‧‧‧步驟
S60~S67‧‧‧步驟
S70~S72‧‧‧步驟
S80‧‧‧步驟
S90~S98‧‧‧步驟
t1-t2‧‧‧時間帶
TIa‧‧‧中斷任務
TIb‧‧‧中斷任務
TIc‧‧‧中斷任務
TPa‧‧‧週期任務
TPb‧‧‧週期任務
TPc‧‧‧週期任務
圖1係顯示包含控制器之控制系統之整體構成之說明圖。 圖2係控制器及程式發佈裝置之硬體構成圖。 圖3係管理執行高優先度任務時之優先度之高優先度任務優先度表。 圖4係管理最大努力型任務(BE任務)之優先度之BE任務優先度管理表。 圖5係管理週期性地執行之週期任務之動作週期及執行時間之週期任務動作表。 圖6係管理BE任務之性能指標之BE任務性能指標表。 圖7係管理可對BE任務設定之性能指標及對應之CPU動作頻率之BE任務可設定性能指標表。 圖8係管理BE任務動作時之最低限度之性能指標及對應之CPU動作頻率之BE任務最低動作性能指標表。 圖9係管理CPU之動作頻率之CPU動作頻率表。 圖10係管理CPU之閒置狀況之CPU閒置狀況表。 圖11係管理BE任務之動作狀態之BE任務動作狀態表。 圖12(1)~(3)顯示控制器之任務排程器之對中斷任務及週期任務之CPU資源之安排動作之例。 圖13係顯示算出CPU閒置狀況並予以記憶之處理之流程圖。 圖14係判定是否可允許執行停止中之BE任務之處理之流程圖。 圖15係判定可對BE任務設定之性能指標之處理之流程圖。 圖16係算出可追加執行BE任務之CPU動作頻率之處理之流程圖。 圖17係設定BE任務之動作之BE任務動作設定畫面。 圖18係製作BE任務動作設定畫面之處理之流程圖。 圖19係自程式發佈裝置對控制器安裝BE任務之處理之流程圖。 圖20係關於第2實施例,且顯示設定任務之參數之幾種方法之說明圖。 圖21係第3實施例之BE任務動作設定畫面。 圖22係關於第4實施例,且顯示高優先度任務與BE任務基於彼此之執行結果而相互作用之情況之流程圖。
1‧‧‧控制器
2‧‧‧程式發佈裝置
3‧‧‧控制對象機器
4‧‧‧設施
31‧‧‧感測器
32‧‧‧致動器
110‧‧‧高優先度任務執行部
111‧‧‧中斷任務
112‧‧‧週期任務
120‧‧‧BE任務執行部
121‧‧‧BE任務
130‧‧‧任務管理部
140‧‧‧記憶部
141‧‧‧高優先度任務優先度表
142‧‧‧BE任務優先度表
143‧‧‧週期任務動作表
144‧‧‧BE任務性能指標表
145‧‧‧BE任務可設定性能指標表
146‧‧‧BE功能最低動作性能指標表
147‧‧‧CPU動作頻率表
148‧‧‧CPU閒置狀況表
149‧‧‧BE任務動作狀態表
150‧‧‧使用者介面部
210‧‧‧任務發佈管理部
220‧‧‧資料庫管理部
230‧‧‧記憶部
231‧‧‧BE任務
232‧‧‧表
CN1‧‧‧通信網路
CN2‧‧‧控制網路
Claims (15)
- 一種控制器裝置,其係執行優先度不同之複數個任務者,且包含: 單一之微處理器,其係一次執行一個任務; 第1任務執行部,其係藉由上述微處理器實現,執行設定為較高優先度之一個以上之第1任務; 第2任務執行部,其係藉由上述微處理器實現,執行設定為較低優先度之一個以上之第2任務;及 任務管理部,其算出上述微處理器所具有之運算處理資源中之可分配至上述第2任務之執行之餘裕資源,決定使用上述算出之餘裕資源執行上述第2任務之情形時的顯示上述第2任務之性能之推定值之性能指標,且輸出上述餘裕資源與上述性能指標。
- 如請求項1之控制器裝置,其中 上述第1任務係優先使用上述運算處理資源而執行者;且 上述第2任務係使用上述餘裕資源而執行者。
- 如請求項2之控制器裝置,其中 上述第1任務係與上述微處理器之控制對象即控制對象機器直接相關之處理,且優先使用上述運算處理資源而執行者;且 上述第2任務係與上述控制對象機器間接相關之處理,且使用上述餘裕資源而執行者。
- 如請求項3之控制器裝置,其中 上述餘裕資源係基於上述運算處理資源中之未執行上述第1任務之空閒時間而算出。
- 如請求項4之控制器裝置,其中 上述第1任務包含週期性地執行之週期任務、及插入至上述微處理器執行中之任務而執行之中斷任務;且 上述餘裕資源係根據未產生上述中斷任務之情形時上述週期任務使用上述運算處理資源之時間與上述運算處理資源整體之差分而算出。
- 如請求項5之控制器裝置,其中 上述餘裕資源係使用上述微處理器之使用率或動作頻率之至少任一者進行顯示輸出。
- 如請求項6之控制器裝置,其中 上述性能指標係自基於上述微處理器之使用率或動作頻率之任一者而預先準備之複數個值中選擇。
- 如請求項6之控制器裝置,其中 上述任務管理部係將上述性能指標與上述微處理器之使用率或動作頻率建立關聯而輸出。
- 如請求項8之控制器裝置,其中 上述任務管理部係將對上述第2任務設定之性能指標之值即設定性能指標、與上述設定性能指標對應之上述微處理器之使用率或驅動頻率之值、上述第2任務進行最低限度動作所需之性能指標之值即最低動作性能指標、及與上述最低動作性能指標對應之微處理器之使用率或驅動頻率之值建立關聯而輸出。
- 如請求項9之控制器裝置,其中 上述任務管理部亦可輸出上述第2任務之動作狀態;且 於上述動作狀態包含「執行中」、「停止中」、「無法執行」。
- 如請求項10之控制器裝置,其中 上述任務管理部, 比較上述決定之性能指標與上述餘裕資源; 對可執行之第2任務,選擇「停止中」作為上述動作狀態,且以可受理使用者之執行指示之方式進行顯示輸出;且 對無法執行之第2任務,選擇「無法執行」作為上述動作狀態,且以不受理使用者之執行指示之方式進行顯示輸出。
- 如請求項11之控制器裝置,其中 上述任務管理部係對上述動作狀態為「執行中」之第2任務,以可受理使用者之上述設定性能指標之變更指示之方式進行顯示輸出。
- 如請求項1至12中任一項之控制器裝置,其中 上述任務管理部係基於上述第2任務執行部之執行結果,變更上述第1任務執行部執行上述第1任務時之參數之至少一部分。
- 如請求項13之控制器裝置,其中 上述任務管理部係基於上述第1任務執行部之執行結果而決定使上述第2任務執行部執行之第2任務。
- 一種控制器裝置之任務執行管理方法,其係藉由控制器裝置執行優先度不同之複數個任務之任務執行管理方法;且 上述控制器裝置具備一次執行一個任務之單一之微處理器; 於上述任務包含設定為較高優先度之一個以上之第1任務與設定為較低優先度之一個以上之第2任務;且 上述控制器裝置, 算出上述微處理器所具有之運算處理資源中之可分配至上述第2任務之執行之餘裕資源; 決定使用上述算出之餘裕資源執行上述第2任務之情形時的顯示上述第2任務之性能之推定值之性能指標;且 輸出上述餘裕資源與上述性能指標。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016063034A JP6580505B2 (ja) | 2016-03-28 | 2016-03-28 | コントローラ装置およびコントローラ装置のタスク実行管理方法 |
JP??2016-063034 | 2016-03-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201734682A true TW201734682A (zh) | 2017-10-01 |
TWI646412B TWI646412B (zh) | 2019-01-01 |
Family
ID=59963806
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106100560A TWI646412B (zh) | 2016-03-28 | 2017-01-09 | 控制器裝置及控制器裝置之任務執行管理方法 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP3441879A4 (zh) |
JP (1) | JP6580505B2 (zh) |
TW (1) | TWI646412B (zh) |
WO (1) | WO2017168814A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6493506B1 (ja) * | 2017-12-15 | 2019-04-03 | オムロン株式会社 | 産業用制御システムとその支援装置、制御支援方法およびプログラム |
WO2019159310A1 (ja) * | 2018-02-16 | 2019-08-22 | 株式会社日立製作所 | 電子制御装置 |
JP6857153B2 (ja) * | 2018-03-29 | 2021-04-14 | 株式会社日立産機システム | コントロール装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3862715B2 (ja) * | 2004-06-01 | 2006-12-27 | 株式会社ソニー・コンピュータエンタテインメント | タスク管理方法、タスク管理装置、半導体集積回路、電子装置、およびタスク管理システム |
JP2009199367A (ja) * | 2008-02-21 | 2009-09-03 | Nec Corp | 計算機システム、i/oスケジューラ及びi/oスケジューリング方法 |
JP2010033131A (ja) * | 2008-07-25 | 2010-02-12 | Mitsubishi Electric Corp | 管理装置及びプログラム |
US8286172B2 (en) * | 2008-10-02 | 2012-10-09 | Nec Laboratories America, Inc. | Systems and methods for implementing best-effort parallel computing frameworks |
US8397235B2 (en) * | 2008-10-07 | 2013-03-12 | Futurewei Technologies, Inc. | User tolerance based scheduling method for aperiodic real-time tasks |
JP6007516B2 (ja) * | 2012-03-02 | 2016-10-12 | 日本電気株式会社 | リソース配分システム、リソース配分方法、及びリソース配分プログラム |
-
2016
- 2016-03-28 JP JP2016063034A patent/JP6580505B2/ja active Active
- 2016-11-04 WO PCT/JP2016/082754 patent/WO2017168814A1/ja active Application Filing
- 2016-11-04 EP EP16897030.9A patent/EP3441879A4/en not_active Withdrawn
-
2017
- 2017-01-09 TW TW106100560A patent/TWI646412B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
JP6580505B2 (ja) | 2019-09-25 |
EP3441879A4 (en) | 2019-11-27 |
WO2017168814A1 (ja) | 2017-10-05 |
JP2017182105A (ja) | 2017-10-05 |
TWI646412B (zh) | 2019-01-01 |
EP3441879A1 (en) | 2019-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4572251B2 (ja) | 計算機システム、計算機システムの障害の予兆検知方法及びプログラム | |
JP6753278B2 (ja) | 制御システムおよび制御装置 | |
TW201734682A (zh) | 控制器裝置及控制器裝置之任務執行管理方法 | |
JP3839440B2 (ja) | エネルギー管理装置、施設監視制御装置、エネルギー管理プログラムおよび施設監視制御プログラム | |
JP5967931B2 (ja) | エネルギー管理システム及びエネルギー管理方法 | |
US11262089B2 (en) | Data center management systems and methods for compute density efficiency measurements | |
US10312685B2 (en) | Device control apparatus | |
JP5066222B2 (ja) | ネットワーク解析支援装置、ネットワーク解析支援方法及びプログラム | |
KR102089811B1 (ko) | 플랫폼 기반의 에너지 관리 시스템 및 에너지 관리 방법 | |
WO2010103779A1 (ja) | 機器管理システム | |
JP7038629B2 (ja) | 機器状態監視装置及びプログラム | |
JP2014089766A (ja) | 省エネ診断装置およびそれを用いた省エネ診断システム | |
EP3942486A1 (en) | Data center management systems and methods for compute density efficiency measurements | |
JP2012168842A (ja) | 多店舗型施設の設備運用システムとその処理方法とプログラム | |
KR20160126609A (ko) | 건물 에너지 분석 시스템 및 방법 | |
JP2010044780A (ja) | 運転状況分析方法および運転状況分析システム | |
KR101857363B1 (ko) | 스마트 홈을 위한 센서 흐름 제어 시스템 및 방법 | |
JP7507399B2 (ja) | 施設保守管理システム、施設保守管理方法、及びプログラム | |
CN110146317A (zh) | 一种建筑物机电设备健康状态的诊断方法和装置 | |
US20240118737A1 (en) | Evaluation device and program | |
JP5914281B2 (ja) | 予測変数特定装置、方法、およびプログラム | |
JP6061874B2 (ja) | データ管理装置及びプログラム | |
WO2023139705A1 (ja) | 空気調和システム、空調制御装置および空調制御方法 | |
JP2011002151A (ja) | コントローラ | |
JP2021012556A (ja) | 内部負荷推定装置及び内部負荷推定方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |