欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

可編程邏輯控制器的CPU單元的制造方法與工藝

文檔序號(hào):11293570閱讀:287來源:國知局
可編程邏輯控制器的CPU單元的制造方法與工藝
本發(fā)明涉及在用于控制機(jī)械、設(shè)備等的動(dòng)作而使用的PLC(可編程邏輯控制器。也被稱為可編程控制器)中執(zhí)行多個(gè)控制程序時(shí)的全局變量的同步。

背景技術(shù):
PLC例如由具備用于執(zhí)行控制程序的微處理器的CPU(中央處理單元)單元、負(fù)責(zé)來自外部的開關(guān)或傳感器的信號(hào)輸入以及對(duì)外部的繼電器或執(zhí)行機(jī)構(gòu)(actuator)的信號(hào)輸出的IO(輸入輸出)單元等的多個(gè)單元構(gòu)成。CPU單元通過重復(fù)執(zhí)行包含以下操作的控制程序從而控制控制對(duì)象,即對(duì)其他單元的輸出數(shù)據(jù)的發(fā)送、來自其他單元的輸入數(shù)據(jù)的接收、使用輸入數(shù)據(jù)生成輸出數(shù)據(jù)。控制程序包含根據(jù)用戶的控制目的而生成的用戶程序。控制程序也可以包含在用戶程序中指示執(zhí)行的動(dòng)作控制程序。已知在PLC中以分時(shí)方式執(zhí)行多個(gè)控制程序。例如,在專利文獻(xiàn)1(特開2007-140655號(hào)公報(bào))中記載了以下內(nèi)容:在由一個(gè)CPU處理用于控制電機(jī)的動(dòng)作控制功能和用于執(zhí)行時(shí)序運(yùn)算的PLC功能的裝置中,在基本時(shí)鐘的每個(gè)循環(huán)執(zhí)行“固定周期動(dòng)作控制處理以及各軸處理”和“高速時(shí)序處理”,進(jìn)而在各基本時(shí)鐘循環(huán)內(nèi)的剩余時(shí)間中執(zhí)行“低速時(shí)序處理”或者“非固定周期動(dòng)作控制處理”。此外,記載了當(dāng)?shù)退贂r(shí)序處理在基本時(shí)鐘循環(huán)內(nèi)不結(jié)束的情況下,在相應(yīng)于規(guī)定的基本時(shí)鐘次數(shù)的時(shí)間停止后執(zhí)行剩余的處理。現(xiàn)有技術(shù)文獻(xiàn)專利文獻(xiàn)專利文獻(xiàn)1:特開2007-140655號(hào)公報(bào)

技術(shù)實(shí)現(xiàn)要素:
發(fā)明要解決的課題在PLC中執(zhí)行多個(gè)控制程序時(shí),除了各控制程序僅用于自身的處理的局部變量之外,有時(shí)還需要被多個(gè)控制程序所參照的全局變量。一個(gè)控制程序從開始執(zhí)行到結(jié)束為止的期間,該控制程序只要不是自己改寫全局變量的內(nèi)容,那么就算對(duì)同一個(gè)全局變量參照了幾次也應(yīng)當(dāng)?shù)玫较嗤膬?nèi)容。但是,在該控制程序的執(zhí)行開始到結(jié)束為止的期間,如果其他的控制程序改寫了全局變量的內(nèi)容,則該控制程序無法進(jìn)行利用了全局變量的具有一貫性的運(yùn)算。在這樣的情況下,考慮控制程序本身在使用全局變量之前將全局變量的內(nèi)容復(fù)制到自身的局部變量,實(shí)際的運(yùn)算中參照局部變量來進(jìn)行?;蛘撸P(guān)于改寫全局變量的時(shí)間,考慮等待至對(duì)于其他控制程序而言改寫不方便的時(shí)機(jī)后執(zhí)行改寫。為此,控制程序的編程人員必須決定全局變量在使用上的過程并按它進(jìn)行編程,以便進(jìn)行那樣的處理,成為對(duì)于控制程序的編程人員的負(fù)擔(dān)。PLC的系統(tǒng)程序如果進(jìn)行在使用全局變量的一個(gè)控制程序從開始執(zhí)行到結(jié)束為止的期間使其他控制程序不能使用該全局變量的排他控制,則確保控制程序的運(yùn)算的一貫性。但是,如果進(jìn)行排他控制,則在獲得了對(duì)全局變量的訪問權(quán)的控制程序執(zhí)行結(jié)束之前無法執(zhí)行使用全局變量的其他的控制程序,因此在重視實(shí)時(shí)性的PLC中,進(jìn)行伴隨這樣的長時(shí)間的訪問限制的排他控制是不現(xiàn)實(shí)的。本發(fā)明的目的在于,在PLC中,控制程序本身不需要進(jìn)行用于確保全局變量的一貫性的過程的處理,多個(gè)控制程序的并行執(zhí)行不受妨礙,并且多個(gè)控制程序能夠參照確保了一貫性的全局變量。用于解決課題的方案根據(jù)本發(fā)明的一個(gè)方面,提供對(duì)控制對(duì)象進(jìn)行控制的PLC的CPU單元。PLC的CPU單元包括微處理、存儲(chǔ)部件以及通信電路。PLC的CPU單元通過重復(fù)輸出數(shù)據(jù)的發(fā)送、輸入數(shù)據(jù)的接收、以及使用輸入數(shù)據(jù)生成輸出數(shù)據(jù)的控制程序的執(zhí)行,從而控制控制對(duì)象。存儲(chǔ)部件用于存儲(chǔ)控制程序、控制控制程序的執(zhí)行的系統(tǒng)程序、以及有關(guān)控制程序使用的變量的屬性數(shù)據(jù)。微處理器執(zhí)行在存儲(chǔ)部件中存儲(chǔ)的系統(tǒng)程序以及控制程序。通信電路發(fā)送輸出數(shù)據(jù)以及接收輸入數(shù)據(jù)。在變量為由多個(gè)控制程序參照的全局變量時(shí),屬性數(shù)據(jù)能夠包含能夠改寫該變量的一個(gè)所有者側(cè)控制程序的指定、以及只能參照該變量的一個(gè)或者多個(gè)參照者側(cè)控制程序的指定。系統(tǒng)程序作為控制程序的執(zhí)行準(zhǔn)備處理而包含:在存儲(chǔ)部件內(nèi)生成用于存儲(chǔ)全局變量的全局變量區(qū)域的處理;以及關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,在存儲(chǔ)部件內(nèi)生成在該參照者側(cè)控制程序參照全局變量時(shí)代替全局變量區(qū)域而設(shè)為參照目的地的同步緩沖器的處理。系統(tǒng)程序作為控制程序的執(zhí)行控制處理而包含:用于使所有者側(cè)控制程序開始執(zhí)行的所有者側(cè)開始處理;如果所有者側(cè)控制程序的執(zhí)行結(jié)束,則將通過該所有者側(cè)控制程序改寫的全局變量從全局變量區(qū)域復(fù)制到與該全局變量對(duì)應(yīng)的同步緩沖器的復(fù)制處理;以及用于使參照者側(cè)控制程序開始執(zhí)行的參照者側(cè)開始處理。優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,將第1同步緩沖器以及第2同步緩沖器作為同步緩沖器的組來生成的處理。第1同步緩沖器以及第2同步緩沖器被不重復(fù)地賦予寫入目的地狀態(tài)以及參照目的地狀態(tài)的其中一個(gè)狀態(tài),其中,寫入目的地狀態(tài)是能夠從全局變量區(qū)域復(fù)制全局變量的狀態(tài),參照目的地狀態(tài)是能夠從參照者側(cè)控制程序進(jìn)行參照的狀態(tài)。復(fù)制處理是復(fù)制到處于寫入目的地狀態(tài)的同步緩沖器的處理。更優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,將第1同步緩沖器、第2同步緩沖器以及第3同步緩沖器作為同步緩沖器的組來生成的處理。第1同步緩沖器、第2同步緩沖器以及第3同步緩沖器被不重復(fù)地賦予寫入目的地狀態(tài)、參照目的地狀態(tài)、待機(jī)狀態(tài)的其中一個(gè)狀態(tài)。復(fù)制處理還包含用于調(diào)換成為復(fù)制目的地的處于寫入目的地狀態(tài)的同步緩沖器以及在與該同步緩沖器相同的組中處于待機(jī)狀態(tài)的同步緩沖器的寫入目的地狀態(tài)和待機(jī)狀態(tài)的第1調(diào)換處理。參照者側(cè)開始處理還包含對(duì)于執(zhí)行開始的參照者側(cè)控制程序的同步緩沖器,以存儲(chǔ)著最新數(shù)據(jù)的同步緩沖器為待機(jī)狀態(tài)作為條件,調(diào)換處于待機(jī)狀態(tài)的同步緩沖器以及處于參照目的地狀態(tài)的同步緩沖器的待機(jī)狀態(tài)和參照目的地狀態(tài)的第2調(diào)換處理?;蛘邇?yōu)選的是,系統(tǒng)程序作為控制程序的執(zhí)行準(zhǔn)備處理而還包含:對(duì)通過全局變量相關(guān)聯(lián)的所有者側(cè)控制程序和參照者側(cè)控制程序的每個(gè)組合,在存儲(chǔ)部件內(nèi)生成最新數(shù)據(jù)更新標(biāo)志的處理。復(fù)制處理還包含將與該復(fù)制處理關(guān)聯(lián)的最新數(shù)據(jù)更新標(biāo)志設(shè)為開通的處理。參照者側(cè)開始處理還以與執(zhí)行開始的參照者側(cè)控制程序的同步緩沖器關(guān)聯(lián)的最新數(shù)據(jù)更新標(biāo)志為開通作為條件,包含第2調(diào)換處理以及將該最新數(shù)據(jù)更新標(biāo)志設(shè)為關(guān)閉的處理。由此,實(shí)現(xiàn)以存儲(chǔ)著最新數(shù)據(jù)的同步緩沖器為待機(jī)狀態(tài)作為條件來執(zhí)行的第2調(diào)換處理?;蛘邇?yōu)選的是,系統(tǒng)程序作為控制程序的執(zhí)行準(zhǔn)備處理而還包含在存儲(chǔ)部件內(nèi)生成最新狀態(tài)記錄區(qū)域的處理。復(fù)制處理還包含在最新狀態(tài)記錄區(qū)域中記錄復(fù)制目的地的同步緩沖器為最新狀態(tài)的情況的處理。參照者側(cè)開始處理還包含以通過最新狀態(tài)記錄區(qū)域的內(nèi)容所確定的處于最新狀態(tài)的同步緩沖器為待機(jī)狀態(tài)作為條件來執(zhí)行的第2調(diào)換處理?;蛘邇?yōu)選的是,參照者側(cè)開始處理還包含對(duì)于執(zhí)行開始的參照者側(cè)控制程序的同步緩沖器,以存儲(chǔ)著最新數(shù)據(jù)的同步緩沖器為寫入目的地狀態(tài)作為條件,調(diào)換處于寫入目的地狀態(tài)的同步緩沖器以及處于參照目的地狀態(tài)的同步緩沖器的寫入目的地狀態(tài)和參照目的地狀態(tài)的第3調(diào)換處理。更優(yōu)選的是,系統(tǒng)程序作為控制程序的執(zhí)行準(zhǔn)備處理而還包含:對(duì)通過全局變量相關(guān)聯(lián)的所有者側(cè)控制程序和參照者側(cè)控制程序的每個(gè)組合,在存儲(chǔ)部件內(nèi)生成最新數(shù)據(jù)更新標(biāo)志的處理。復(fù)制處理還包含將與該復(fù)制處理關(guān)聯(lián)的最新數(shù)據(jù)更新標(biāo)志設(shè)為開通的處理。參照者側(cè)開始處理還以與執(zhí)行開始的參照者側(cè)控制程序的同步緩沖器關(guān)聯(lián)的最新數(shù)據(jù)更新標(biāo)志為開通作為條件,包含第3調(diào)換處理以及將該最新數(shù)據(jù)更新標(biāo)志設(shè)為關(guān)閉的處理。由此,實(shí)現(xiàn)以存儲(chǔ)著最新數(shù)據(jù)的同步緩沖器為寫入目的地狀態(tài)作為條件來執(zhí)行的第3調(diào)換處理。或者更優(yōu)選的是,系統(tǒng)程序作為控制程序的執(zhí)行準(zhǔn)備處理而還包含在存儲(chǔ)部件內(nèi)生成最新狀態(tài)記錄區(qū)域的處理。復(fù)制處理還包含在最新狀態(tài)記錄區(qū)域中記錄復(fù)制目的地的同步緩沖器為最新狀態(tài)的情況的處理。參照者側(cè)開始處理還包含以通過最新狀態(tài)記錄區(qū)域的內(nèi)容所確定的處于最新狀態(tài)的同步緩沖器為寫入目的地狀態(tài)作為條件來執(zhí)行的第3調(diào)換處理。優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,將第1同步緩沖器以及第2同步緩沖器作為同步緩沖器的組來生成的處理。系統(tǒng)程序作為控制程序的執(zhí)行準(zhǔn)備處理而還包含在存儲(chǔ)部件內(nèi)生成最新狀態(tài)記錄區(qū)域的處理。復(fù)制處理還包含在最新狀態(tài)記錄區(qū)域中記錄復(fù)制目的地的同步緩沖器為最新狀態(tài)的情況的處理。參照者側(cè)開始處理還包含將通過最新狀態(tài)記錄區(qū)域的內(nèi)容所確定的處于最新狀態(tài)的同步緩沖器設(shè)為在該參照者側(cè)控制程序的執(zhí)行中參照的參照目的地狀態(tài)的處理。更優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,將第1同步緩沖器、第2同步緩沖器以及第3同步緩沖器作為同步緩沖器的組來生成的處理。第1同步緩沖器、第2同步緩沖器以及第3同步緩沖器被不重復(fù)地賦予能夠從全局變量區(qū)域復(fù)制全局變量的狀態(tài)即寫入目的地狀態(tài)、參照目的地狀態(tài)、待機(jī)狀態(tài)的其中一個(gè)狀態(tài)。復(fù)制處理是復(fù)制到處于寫入目的地狀態(tài)的同步緩沖器的處理,并且還包含用于調(diào)換成為復(fù)制目的地的處于寫入目的地狀態(tài)的同步緩沖器以及在與該同步緩沖器相同的組中處于待機(jī)狀態(tài)的同步緩沖器的寫入目的地狀態(tài)和待機(jī)狀態(tài)的第1調(diào)換處理。參照者側(cè)開始處理還包含將屬于與設(shè)為參照目的地狀態(tài)的同步緩沖器相同的組并且不是寫入目的地狀態(tài)的同步緩沖器設(shè)為待機(jī)狀態(tài)的處理?;蛘邇?yōu)選的是,第1同步緩沖器以及第2同步緩沖器被不重復(fù)地賦予能夠從全局變量區(qū)域復(fù)制全局變量的狀態(tài)即寫入目的地狀態(tài)、以及參照目的地狀態(tài)的其中一個(gè)狀態(tài)。復(fù)制處理是復(fù)制到處于寫入目的地狀態(tài)的同步緩沖器的處理。參照者側(cè)開始處理還包含將屬于與設(shè)為參照目的地狀態(tài)的同步緩沖器相同的組的另一個(gè)同步緩沖器設(shè)為寫入目的地狀態(tài)的處理?;蛘邇?yōu)選的是,參照者側(cè)開始處理還包含將通過最新狀態(tài)記錄區(qū)域的內(nèi)容所確定的處于最新狀態(tài)的同步緩沖器設(shè)為寫入禁止?fàn)顟B(tài)的處理。系統(tǒng)程序作為控制程序的執(zhí)行控制處理還包含:如果參照者側(cè)控制程序的執(zhí)行結(jié)束,則解除處于寫入禁止?fàn)顟B(tài)的同步緩沖器的寫入禁止?fàn)顟B(tài)的寫入禁止解除處理。復(fù)制處理是將第1同步緩沖器以及第2同步緩沖器中不是寫入禁止?fàn)顟B(tài)的其中一個(gè)同步緩沖器作為復(fù)制目的地進(jìn)行復(fù)制的處理。優(yōu)選的是,參照者側(cè)開始處理還包含將在其執(zhí)行中參照的同步緩沖器設(shè)為寫入禁止?fàn)顟B(tài)的處理。系統(tǒng)程序作為控制程序的執(zhí)行控制處理還包含:如果參照者側(cè)控制程序的執(zhí)行結(jié)束,則解除處于寫入禁止?fàn)顟B(tài)的同步緩沖器的寫入禁止?fàn)顟B(tài)的寫入禁止解除處理。復(fù)制處理是以復(fù)制目的地的同步緩沖器不是寫入禁止?fàn)顟B(tài)作為條件而執(zhí)行的處理。更優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量生成一個(gè)同步緩沖器的處理。更優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,將第1同步緩沖器以及第2同步緩沖器作為同步緩沖器的組來生成的處理。系統(tǒng)程序作為控制程序的執(zhí)行準(zhǔn)備處理而還包含在存儲(chǔ)部件內(nèi)生成最新狀態(tài)記錄區(qū)域的處理。復(fù)制處理是將第1同步緩沖器以及第2同步緩沖器中不是寫入禁止?fàn)顟B(tài)的其中一個(gè)同步緩沖器作為復(fù)制目的地進(jìn)行復(fù)制的處理,進(jìn)而包含在最新狀態(tài)記錄區(qū)域中記錄復(fù)制目的地的同步緩沖器為最新狀態(tài)的情況的處理。參照者側(cè)開始處理還包含將通過最新狀態(tài)記錄區(qū)域的內(nèi)容所確定的處于最新狀態(tài)的同步緩沖器設(shè)為在該參照者側(cè)控制程序的執(zhí)行中參照的參照目的地狀態(tài)的處理。優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,將第1同步緩沖器以及第2同步緩沖器作為同步緩沖器的組來生成的處理。第2同步緩沖器是參照者側(cè)控制程序參照全局變量時(shí)設(shè)為參照目的地的同步緩沖器。復(fù)制處理是復(fù)制到第1同步緩沖器的處理。參照者側(cè)開始處理還包含將第1同步緩沖器中存儲(chǔ)的數(shù)據(jù)復(fù)制到第2同步緩沖器的處理。根據(jù)本發(fā)明的另一方面,提供一種PLC用的系統(tǒng)程序,用于在PLC的CPU單元中被存儲(chǔ)到存儲(chǔ)部件并且通過微處理器執(zhí)行,PLC的CPU單元包括微處理器、存儲(chǔ)部件以及通信電路,PLC的CPU單元通過重復(fù)輸出數(shù)據(jù)的發(fā)送、輸入數(shù)據(jù)的接收、以及使用輸入數(shù)據(jù)生成輸出數(shù)據(jù)的控制程序的執(zhí)行,從而控制控制對(duì)象。存儲(chǔ)部件用于存儲(chǔ)控制程序、控制控制程序的執(zhí)行的系統(tǒng)程序、以及有關(guān)控制程序使用的變量的屬性數(shù)據(jù)。微處理器除了執(zhí)行系統(tǒng)程序之外,執(zhí)行控制程序。通信電路發(fā)送輸出數(shù)據(jù)以及接收輸入數(shù)據(jù)。在變量為由多個(gè)控制程序參照的全局變量時(shí),屬性數(shù)據(jù)能夠包含能夠改寫該變量的一個(gè)所有者側(cè)控制程序的指定、以及只能參照該變量的一個(gè)或者多個(gè)參照者側(cè)控制程序的指定。系統(tǒng)程序使微處理器作為控制程序的執(zhí)行準(zhǔn)備處理而執(zhí)行以下處理:在存儲(chǔ)部件內(nèi)生成用于存儲(chǔ)全局變量的全局變量區(qū)域的處理;以及關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,在存儲(chǔ)部件內(nèi)生成在該參照者側(cè)控制程序參照全局變量時(shí)代替全局變量區(qū)域而設(shè)為參照目的地的同步緩沖器的處理。系統(tǒng)程序使微處理器作為控制程序的執(zhí)行控制處理而執(zhí)行以下處理:用于使所有者側(cè)控制程序開始執(zhí)行的所有者側(cè)開始處理;如果所有者側(cè)控制程序的執(zhí)行結(jié)束,則將通過該所有者側(cè)控制程序改寫的全局變量從全局變量區(qū)域復(fù)制到與該全局變量對(duì)應(yīng)的同步緩沖器的復(fù)制處理;以及用于使參照者側(cè)控制程序開始執(zhí)行的參照者側(cè)開始處理。優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,將第1同步緩沖器以及第2同步緩沖器作為同步緩沖器的組來生成的處理。第1同步緩沖器以及第2同步緩沖器被不重復(fù)地賦予寫入目的地狀態(tài)以及參照目的地狀態(tài)的其中一個(gè)狀態(tài),其中,該寫入目的地狀態(tài)是能夠從全局變量區(qū)域復(fù)制全局變量的狀態(tài),該參照目的地狀態(tài)是能夠從參照者側(cè)控制程序進(jìn)行參照的狀態(tài)。復(fù)制處理是復(fù)制到處于寫入目的地狀態(tài)的同步緩沖器的處理。更優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,將第1同步緩沖器、第2同步緩沖器、第3同步緩沖器作為同步緩沖器的組來生成的處理。第1同步緩沖器、第2同步緩沖器以及第3同步緩沖器被不重復(fù)地賦予寫入目的地狀態(tài)、參照目的地狀態(tài)、待機(jī)狀態(tài)的其中一個(gè)狀態(tài)。復(fù)制處理還包含用于調(diào)換成為復(fù)制目的地的處于寫入目的地狀態(tài)的同步緩沖器以及在與該同步緩沖器相同的組中處于待機(jī)狀態(tài)的同步緩沖器的寫入目的地狀態(tài)和待機(jī)狀態(tài)的第1調(diào)換處理。參照者側(cè)開始處理還包含對(duì)于執(zhí)行開始的參照者側(cè)控制程序的同步緩沖器,以存儲(chǔ)著最新數(shù)據(jù)的同步緩沖器為待機(jī)狀態(tài)作為條件,調(diào)換處于待機(jī)狀態(tài)的同步緩沖器以及處于參照目的地狀態(tài)的同步緩沖器的待機(jī)狀態(tài)和參照目的地狀態(tài)的第2調(diào)換處理。或者優(yōu)選的是,參照者側(cè)開始處理還包含對(duì)于執(zhí)行開始的參照者側(cè)控制程序的同步緩沖器,以存儲(chǔ)著最新數(shù)據(jù)的同步緩沖器為寫入目的地狀態(tài)作為條件,調(diào)換處于寫入目的地狀態(tài)的同步緩沖器以及處于參照目的地狀態(tài)的同步緩沖器的寫入目的地狀態(tài)和參照目的地狀態(tài)的第3調(diào)換處理。優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,將第1同步緩沖器以及第2同步緩沖器作為同步緩沖器的組來生成的處理。系統(tǒng)程序還使微處理器作為控制程序的執(zhí)行準(zhǔn)備處理而執(zhí)行在存儲(chǔ)部件內(nèi)生成最新狀態(tài)記錄區(qū)域的處理。復(fù)制處理還包含在最新狀態(tài)記錄區(qū)域中記錄復(fù)制目的地的同步緩沖器為最新狀態(tài)的情況的處理。參照者側(cè)開始處理還包含將通過最新狀態(tài)記錄區(qū)域的內(nèi)容所確定的處于最新狀態(tài)的同步緩沖器設(shè)為在該參照者側(cè)控制程序的執(zhí)行中參照的參照目的地狀態(tài)的處理。優(yōu)選的是,參照者側(cè)開始處理還包含將在其執(zhí)行中參照的同步緩沖器設(shè)為寫入禁止?fàn)顟B(tài)的處理。系統(tǒng)程序還使微處理器作為控制程序的執(zhí)行控制處理而執(zhí)行以下處理:如果參照者側(cè)控制程序的執(zhí)行結(jié)束,則解除處于寫入禁止?fàn)顟B(tài)的同步緩沖器的寫入禁止?fàn)顟B(tài)的寫入禁止解除處理。復(fù)制處理是以復(fù)制目的地的同步緩沖器不是寫入禁止?fàn)顟B(tài)作為條件而執(zhí)行的處理。優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,將第1同步緩沖器以及第2同步緩沖器作為同步緩沖器的組來生成的處理。第2同步緩沖器是參照者側(cè)控制程序參照全局變量時(shí)設(shè)為參照目的地的同步緩沖器。復(fù)制處理是復(fù)制到第1同步緩沖器的處理。參照者側(cè)開始處理還包含將第1同步緩沖器中存儲(chǔ)的數(shù)據(jù)復(fù)制到第2同步緩沖器的處理。根據(jù)本發(fā)明的又一方面,提供一種存儲(chǔ)了PLC用的系統(tǒng)程序的記錄介質(zhì),該系統(tǒng)程序用于在PLC的CPU單元中被存儲(chǔ)到存儲(chǔ)部件并且通過微處理器執(zhí)行,PLC的CPU單元包括微處理器、存儲(chǔ)部件以及通信電路,PLC的CPU單元通過重復(fù)輸出數(shù)據(jù)的發(fā)送、輸入數(shù)據(jù)的接收、以及使用輸入數(shù)據(jù)生成輸出數(shù)據(jù)的控制程序的執(zhí)行,從而控制控制對(duì)象。存儲(chǔ)部件用于存儲(chǔ)控制程序、控制控制程序的執(zhí)行的系統(tǒng)程序、以及有關(guān)控制程序使用的變量的屬性數(shù)據(jù)。微處理器除了執(zhí)行系統(tǒng)程序之外,執(zhí)行控制程序。通信電路發(fā)送輸出數(shù)據(jù)以及接收輸入數(shù)據(jù)。在變量為由多個(gè)控制程序參照的全局變量時(shí),屬性數(shù)據(jù)能夠包含能夠改寫該變量的一個(gè)所有者側(cè)控制程序的指定、以及只能參照該變量的一個(gè)或者多個(gè)參照者側(cè)控制程序的指定。系統(tǒng)程序使微處理器作為控制程序的執(zhí)行準(zhǔn)備處理而執(zhí)行以下處理:在存儲(chǔ)部件內(nèi)生成用于存儲(chǔ)全局變量的全局變量區(qū)域的處理;以及關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,在存儲(chǔ)部件內(nèi)生成在該參照者側(cè)控制程序參照全局變量時(shí)代替全局變量區(qū)域而設(shè)為參照目的地的同步緩沖器的處理。系統(tǒng)程序使微處理器作為控制程序的執(zhí)行控制處理而執(zhí)行以下處理:用于使所有者側(cè)控制程序開始執(zhí)行的所有者側(cè)開始處理;如果所有者側(cè)控制程序的執(zhí)行結(jié)束,則將通過該所有者側(cè)控制程序改寫的全局變量從全局變量區(qū)域復(fù)制到與該全局變量對(duì)應(yīng)的同步緩沖器的復(fù)制處理;以及用于使參照者側(cè)控制程序開始執(zhí)行的參照者側(cè)開始處理。優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,將第1同步緩沖器以及第2同步緩沖器作為同步緩沖器的組來生成的處理。第1同步緩沖器以及第2同步緩沖器被不重復(fù)地賦予寫入目的地狀態(tài)以及參照目的地狀態(tài)的其中一個(gè)狀態(tài),其中,該寫入目的地狀態(tài)是能夠從全局變量區(qū)域復(fù)制全局變量的狀態(tài),該參照目的地狀態(tài)是能夠從參照者側(cè)控制程序進(jìn)行參照的狀態(tài)。復(fù)制處理是復(fù)制到處于寫入目的地狀態(tài)的同步緩沖器的處理。更優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,將第1同步緩沖器、第2同步緩沖器、第3同步緩沖器作為同步緩沖器的組來生成的處理。第1同步緩沖器、第2同步緩沖器以及第3同步緩沖器被不重復(fù)地賦予寫入目的地狀態(tài)、參照目的地狀態(tài)、待機(jī)狀態(tài)的其中一個(gè)狀態(tài)。復(fù)制處理還包含用于調(diào)換成為復(fù)制目的地的處于寫入目的地狀態(tài)的同步緩沖器以及在與該同步緩沖器相同的組中處于待機(jī)狀態(tài)的同步緩沖器的寫入目的地狀態(tài)和待機(jī)狀態(tài)的第1調(diào)換處理。參照者側(cè)開始處理還包含對(duì)于執(zhí)行開始的參照者側(cè)控制程序的同步緩沖器,以存儲(chǔ)著最新數(shù)據(jù)的同步緩沖器為待機(jī)狀態(tài)作為條件,調(diào)換處于待機(jī)狀態(tài)的同步緩沖器以及處于參照目的地狀態(tài)的同步緩沖器的待機(jī)狀態(tài)和參照目的地狀態(tài)的第2調(diào)換處理。或者優(yōu)選的是,參照者側(cè)開始處理還包含對(duì)于執(zhí)行開始的參照者側(cè)控制程序的同步緩沖器,以存儲(chǔ)著最新數(shù)據(jù)的同步緩沖器為寫入目的地狀態(tài)作為條件,調(diào)換處于寫入目的地狀態(tài)的同步緩沖器以及處于參照目的地狀態(tài)的同步緩沖器的寫入目的地狀態(tài)和參照目的地狀態(tài)的第3調(diào)換處理。優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,將第1同步緩沖器以及第2同步緩沖器作為同步緩沖器的組來生成的處理。系統(tǒng)程序還使微處理器作為控制程序的執(zhí)行準(zhǔn)備處理而執(zhí)行在存儲(chǔ)部件內(nèi)生成最新狀態(tài)記錄區(qū)域的處理。復(fù)制處理還包含在最新狀態(tài)記錄區(qū)域中記錄復(fù)制目的地的同步緩沖器為最新狀態(tài)的情況的處理。參照者側(cè)開始處理還包含將通過最新狀態(tài)記錄區(qū)域的內(nèi)容所確定的處于最新狀態(tài)的同步緩沖器設(shè)為在該參照者側(cè)控制程序的執(zhí)行中參照的參照目的地狀態(tài)的處理。優(yōu)選的是,參照者側(cè)開始處理還包含將在其執(zhí)行中參照的同步緩沖器設(shè)為寫入禁止?fàn)顟B(tài)的處理。系統(tǒng)程序還使微處理器作為控制程序的執(zhí)行控制處理而執(zhí)行以下處理:如果參照者側(cè)控制程序的執(zhí)行結(jié)束,則解除處于寫入禁止?fàn)顟B(tài)的同步緩沖器的寫入禁止?fàn)顟B(tài)的寫入禁止解除處理。復(fù)制處理是以復(fù)制目的地的同步緩沖器不是寫入禁止?fàn)顟B(tài)作為條件而執(zhí)行的處理。優(yōu)選的是,生成同步緩沖器的處理是關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,將第1同步緩沖器以及第2同步緩沖器作為同步緩沖器的組來生成的處理。第2同步緩沖器是參照者側(cè)控制程序參照全局變量時(shí)設(shè)為參照目的地的同步緩沖器。復(fù)制處理是復(fù)制到第1同步緩沖器的處理。參照者側(cè)開始處理還包含將第1同步緩沖器中存儲(chǔ)的數(shù)據(jù)復(fù)制到第2同步緩沖器的處理。發(fā)明效果根據(jù)本發(fā)明,在PLC中多個(gè)控制程序能夠參照確保了一貫性的全局變量。此時(shí),控制程序本身不需要進(jìn)行用于確保全局變量的一貫性的過程的處理。此外,由于對(duì)全局變量的訪問權(quán)長時(shí)間處于開放等待,因此多個(gè)控制程序的分時(shí)執(zhí)行或者并行執(zhí)行不受妨礙。附圖說明圖1是表示本發(fā)明的實(shí)施方式的PLC系統(tǒng)的概略結(jié)構(gòu)的示意圖。圖2是表示本發(fā)明的實(shí)施方式的CPU單元的硬件結(jié)構(gòu)的示意圖。圖3是表示本發(fā)明的實(shí)施方式的由CPU單元執(zhí)行的軟件結(jié)構(gòu)的示意圖。圖4是表示本發(fā)明的實(shí)施方式的CPU單元的主存儲(chǔ)器的區(qū)域結(jié)構(gòu)的示意圖。圖5是表示本發(fā)明的實(shí)施方式的CPU單元中的系統(tǒng)程序的整體處理的流程圖。圖6是表示實(shí)施方式1的執(zhí)行動(dòng)作的時(shí)序圖。圖7是針對(duì)圖6所示的控制循環(huán)1以及2放大示出的時(shí)序圖。圖8是表示實(shí)施方式1的執(zhí)行動(dòng)作的流程圖。圖9是表示實(shí)施方式1的另一執(zhí)行動(dòng)作的時(shí)序圖。圖10是表示實(shí)施方式1的另一執(zhí)行動(dòng)作的流程圖。圖11是表示實(shí)施方式2的執(zhí)行動(dòng)作的時(shí)序圖。圖12是表示實(shí)施方式2的執(zhí)行動(dòng)作的流程圖。圖13是表示實(shí)施方式2的另一執(zhí)行動(dòng)作的時(shí)序圖。圖14是表示實(shí)施方式2的另一執(zhí)行動(dòng)作的流程圖。圖15是表示實(shí)施方式3的執(zhí)行動(dòng)作的時(shí)序圖。圖16是表示實(shí)施方式3的執(zhí)行動(dòng)作的流程圖。圖17是表示實(shí)施方式3的另一執(zhí)行動(dòng)作的時(shí)序圖。圖18是表示實(shí)施方式3的另一執(zhí)行動(dòng)作的流程圖。圖19是表示實(shí)施方式3的多核的微處理器下的執(zhí)行動(dòng)作的時(shí)序圖。圖20是表示實(shí)施方式3的多核的微處理器下的執(zhí)行動(dòng)作的時(shí)序圖。圖21是表示實(shí)施方式3的執(zhí)行動(dòng)作的流程圖。圖22是表示實(shí)施方式3的多核的微處理器下的另一執(zhí)行動(dòng)作的時(shí)序圖。圖23是表示實(shí)施方式3的另一執(zhí)行動(dòng)作的流程圖。圖24是表示實(shí)施方式4以及5的多核的微處理器下的執(zhí)行動(dòng)作的時(shí)序圖。圖25是表示實(shí)施方式4以及5的多核的微處理器下的執(zhí)行動(dòng)作的時(shí)序圖。圖26是表示實(shí)施方式4的執(zhí)行動(dòng)作的流程圖。圖27是表示實(shí)施方式4以及5的多核的微處理器下的另一執(zhí)行動(dòng)作的時(shí)序圖。圖28是表示實(shí)施方式4的另一執(zhí)行動(dòng)作的流程圖。圖29是表示實(shí)施方式5的執(zhí)行動(dòng)作的流程圖。圖30是表示實(shí)施方式5的另一執(zhí)行動(dòng)作的流程圖。圖31是表示實(shí)施方式6以及7的多核的微處理器下的執(zhí)行動(dòng)作的時(shí)序圖。圖32是表示實(shí)施方式6以及7的多核的微處理器下的執(zhí)行動(dòng)作的時(shí)序圖。圖33是表示實(shí)施方式6的執(zhí)行動(dòng)作的流程圖。圖34是表示實(shí)施方式6的多核的微處理器下的另一執(zhí)行動(dòng)作的時(shí)序圖。圖35是表示實(shí)施方式6的另一執(zhí)行動(dòng)作的流程圖。圖36是表示實(shí)施方式7的執(zhí)行動(dòng)作的流程圖。圖37是表示實(shí)施方式7的另一執(zhí)行動(dòng)作的流程圖。圖38是表示本發(fā)明的實(shí)施方式的連接到CPU單元使用的PLC支援裝置的硬件結(jié)構(gòu)的示意圖。圖39是表示本發(fā)明的實(shí)施方式的連接到CPU單元使用的PLC支援裝置的軟件結(jié)構(gòu)的示意圖。具體實(shí)施方式參照附圖詳細(xì)說明本發(fā)明的實(shí)施方式。另外,針對(duì)圖中相同或者相應(yīng)部分附上相同標(biāo)號(hào)并且不重復(fù)其說明。<A.系統(tǒng)結(jié)構(gòu)>本實(shí)施方式的PLC控制機(jī)械或設(shè)備等的控制對(duì)象。本實(shí)施方式的PLC包含作為其構(gòu)成元素的CPU單元。CPU單元包含微處理器、存儲(chǔ)部件、通信電路。存儲(chǔ)部件用于存儲(chǔ)控制程序、用于控制程序的執(zhí)行的系統(tǒng)程序、以及針對(duì)控制程序使用的變量的屬性數(shù)據(jù)。微處理器執(zhí)行在存儲(chǔ)部件中存儲(chǔ)的系統(tǒng)程序以及控制程序。通信電路發(fā)送輸出數(shù)據(jù)以及接收輸入數(shù)據(jù)。當(dāng)變量為被多個(gè)控制程序所參照的全局變量時(shí),屬性數(shù)據(jù)可包含能夠改寫該變量的一個(gè)所有者側(cè)控制程序的指定、以及只能參照該變量的一個(gè)或者多個(gè)參照者側(cè)控制程序的指定。首先,參照?qǐng)D1說明本實(shí)施方式的PLC1的系統(tǒng)結(jié)構(gòu)。圖1是表示本發(fā)明的實(shí)施方式的PLC系統(tǒng)的概略結(jié)構(gòu)的示意圖。參照?qǐng)D1,PLC系統(tǒng)SYS包含PLC1、經(jīng)由現(xiàn)場(chǎng)網(wǎng)絡(luò)2與PLC1連接的伺服電機(jī)驅(qū)動(dòng)器3以及遠(yuǎn)程IO終端5、作為現(xiàn)場(chǎng)設(shè)備的檢測(cè)開關(guān)6以及繼電器7。此外,在PLC1中經(jīng)由連接線纜10等連接PLC支援裝置8。PLC1包含執(zhí)行主要的運(yùn)算處理的CPU單元13、一個(gè)以上的IO單元14、特殊單元15。這些單元構(gòu)成為能夠經(jīng)由PLC系統(tǒng)總線11相互交換數(shù)據(jù)。此外,這些單元中通過電源單元12被提供適當(dāng)?shù)碾妷旱碾娫础A硗?,作為PLC1而構(gòu)成的各單元由于是PLC廠家提供,因此PLC系統(tǒng)總線11通常由每個(gè)PLC廠家獨(dú)立開發(fā)并使用。相對(duì)于此,如后述那樣針對(duì)現(xiàn)場(chǎng)網(wǎng)絡(luò)2,為了不同廠家的產(chǎn)品之間能夠連接,其標(biāo)準(zhǔn)等已公開的情況也較多。針對(duì)CPU單元13的細(xì)節(jié),參照?qǐng)D2在后面敘述。IO單元14是有關(guān)通常的輸入輸出處理的單元,負(fù)責(zé)如導(dǎo)通/截止這樣的二值化的數(shù)據(jù)的輸入輸出。即,IO單元14收集表示檢測(cè)開關(guān)6等的傳感器是正在檢測(cè)某種對(duì)象物的狀態(tài)(導(dǎo)通)以及沒有檢測(cè)任何對(duì)象物的狀態(tài)(截止)中的哪一個(gè)的信息。此外,IO單元14對(duì)如繼電器7或執(zhí)行機(jī)構(gòu)這樣的輸出目的地,輸出用于激活的指令(導(dǎo)通)以及用于失活的指令(截止)的其中一個(gè)。特殊單元15具有如模擬數(shù)據(jù)的輸入輸出、溫度控制、基于特定的通信方式的通信這樣的在IO單元14中不支持的功能?,F(xiàn)場(chǎng)網(wǎng)絡(luò)2傳輸與CPU單元13交換的各種數(shù)據(jù)。作為現(xiàn)場(chǎng)網(wǎng)絡(luò)2,典型地,可使用各種工業(yè)用以太網(wǎng)(注冊(cè)商標(biāo))。作為工業(yè)用以太網(wǎng)(注冊(cè)商標(biāo)),例如已知EtherCAT(注冊(cè)商標(biāo))、ProfinetIRT、MECHATROLINK(注冊(cè)商標(biāo))-III、Powerlink、SERCOS(注冊(cè)商標(biāo))-III、CIPMotion等,可以采用這其中的任一個(gè)。進(jìn)而,也可以使用工業(yè)用以太網(wǎng)(注冊(cè)商標(biāo))以外的現(xiàn)場(chǎng)網(wǎng)絡(luò)。例如,如果是不進(jìn)行動(dòng)作控制的情況,則也可以使用DeviceNet、CompoNet/IP(注冊(cè)商標(biāo))等。在本實(shí)施方式的PLC系統(tǒng)SYS中,典型地在本實(shí)施方式中,例示采用工業(yè)用以太網(wǎng)(注冊(cè)商標(biāo))的EtherCAT(注冊(cè)商標(biāo))作為現(xiàn)場(chǎng)網(wǎng)絡(luò)2時(shí)的結(jié)構(gòu)。另外,在圖1中例示具有PLC系統(tǒng)總線11以及現(xiàn)場(chǎng)網(wǎng)絡(luò)2的雙方的PLC系統(tǒng)SYS,但也可以采用僅搭載其中一方的系統(tǒng)結(jié)構(gòu)。例如,也可以通過現(xiàn)場(chǎng)網(wǎng)絡(luò)2來連接所有的單元?;蛘?,也可以不使用現(xiàn)場(chǎng)網(wǎng)絡(luò)2,將伺服電機(jī)驅(qū)動(dòng)器3直接連接到PLC系統(tǒng)總線11。進(jìn)而,也可以將現(xiàn)場(chǎng)網(wǎng)絡(luò)2的通信單元連接到PLC系統(tǒng)總線11,從CPU單元13經(jīng)由該通信單元進(jìn)行與連接到現(xiàn)場(chǎng)網(wǎng)絡(luò)2的設(shè)備之間的通信。另外,PLC1也可以是如下的結(jié)構(gòu):使CPU單元13具有IO單元14的功能和伺服電機(jī)驅(qū)動(dòng)器3的功能,從而CPU單元13不經(jīng)由IO單元14或伺服電機(jī)驅(qū)動(dòng)器3等而直接控制控制對(duì)象。伺服電機(jī)驅(qū)動(dòng)器3經(jīng)由現(xiàn)場(chǎng)網(wǎng)絡(luò)2與CPU單元13連接,并且根據(jù)來自CPU單元13的指令值來驅(qū)動(dòng)伺服電機(jī)4。更具體地說,伺服電機(jī)驅(qū)動(dòng)器3從PLC1以一定周期接受如位置指令值、速度指令值、轉(zhuǎn)矩指令值這樣的指令值。此外,伺服電機(jī)驅(qū)動(dòng)器3從連接到伺服電機(jī)4的軸上的位置傳感器(旋轉(zhuǎn)編碼器)和轉(zhuǎn)矩傳感器這樣的檢測(cè)器,取得如位置、速度(典型地,根據(jù)本次位置和上次位置之差而算出)、轉(zhuǎn)矩這樣的伺服電機(jī)4的動(dòng)作相關(guān)的實(shí)測(cè)值。然后,伺服電機(jī)驅(qū)動(dòng)器3將來自CPU單元13的指令值設(shè)定為目標(biāo)值,并將實(shí)測(cè)值作為反饋值而進(jìn)行反饋控制。即,伺服電機(jī)驅(qū)動(dòng)器3調(diào)整用于驅(qū)動(dòng)伺服電機(jī)4的電流使得實(shí)測(cè)值接近目標(biāo)值。另外,伺服電機(jī)驅(qū)動(dòng)器3有時(shí)也被稱為伺服電機(jī)放大器。此外,在圖1中示出對(duì)伺服電機(jī)4和伺服電機(jī)驅(qū)動(dòng)器3進(jìn)行了組合的系統(tǒng)例,但也能夠采用其他結(jié)構(gòu),例如對(duì)脈沖電機(jī)和脈沖電機(jī)驅(qū)動(dòng)器進(jìn)行了組合的系統(tǒng)。在圖1所示的PLC系統(tǒng)SYS的現(xiàn)場(chǎng)網(wǎng)絡(luò)2中,進(jìn)一步連接了遠(yuǎn)程IO終端5。遠(yuǎn)程IO終端5基本上與IO單元14同樣地,進(jìn)行有關(guān)通常的輸入輸出處理的處理。更具體地說,遠(yuǎn)程IO終端5包含用于進(jìn)行在現(xiàn)場(chǎng)網(wǎng)絡(luò)2下的數(shù)據(jù)傳輸相關(guān)的處理的通信耦合器(Coupler)52、一個(gè)以上的IO單元53。這些單元構(gòu)成為能夠經(jīng)由遠(yuǎn)程IO終端總線51相互交換數(shù)據(jù)。關(guān)于PLC支援裝置8在后面敘述。<B.CPU單元的硬件結(jié)構(gòu)>接著,參照?qǐng)D2說明CPU單元13的硬件結(jié)構(gòu)。圖2是表示本發(fā)明的實(shí)施方式的CPU單元13的硬件結(jié)構(gòu)的示意圖。參照?qǐng)D2,CPU單元13包含微處理器100、芯片組102、主存儲(chǔ)器104、非易失性存儲(chǔ)器106、系統(tǒng)定時(shí)器108、PLC系統(tǒng)總線控制器120、現(xiàn)場(chǎng)網(wǎng)絡(luò)控制器140、USB連接器110。芯片組102和其他的組件(component)之間經(jīng)由各種總線而分別耦合。微處理器100以及芯片組102典型地按照通用的計(jì)算機(jī)架構(gòu)構(gòu)成。即,微處理器100對(duì)從芯片組102按照內(nèi)部時(shí)鐘而依次提供的命名代碼進(jìn)行解釋后執(zhí)行。芯片組102在與所連接的各種組件之間交換內(nèi)部數(shù)據(jù),并且生成微處理器100所需的命令代碼。進(jìn)而,芯片組102具有對(duì)在微處理器100中執(zhí)行運(yùn)算處理的結(jié)果所得到的數(shù)據(jù)等進(jìn)行緩存的功能。微處理器100在以下說明的實(shí)施方式1~7中,在沒有明示是多核的情況下,設(shè)為是單核。多核意味著核數(shù)目為2以上的情況(也包含核數(shù)目為2的情況)。CPU單元13作為存儲(chǔ)部件而具有主存儲(chǔ)器104以及非易失性存儲(chǔ)器106。主存儲(chǔ)器104是易失性的存儲(chǔ)區(qū)域(RAM),保持在對(duì)CPU單元13接通電源之后應(yīng)由微處理器100執(zhí)行的各種程序。此外,主存儲(chǔ)器104作為基于微處理器100執(zhí)行各種程序時(shí)的工作用存儲(chǔ)器來使用。作為這樣的主存儲(chǔ)器104,使用如DRAM(動(dòng)態(tài)隨機(jī)接入存儲(chǔ)器)或SRAM(靜態(tài)隨機(jī)接入存儲(chǔ)器)這樣的設(shè)備。另一方面,非易失性存儲(chǔ)器106非易失性地保持如實(shí)時(shí)OS(操作系統(tǒng))、PLC1的系統(tǒng)程序、用戶程序、動(dòng)作運(yùn)算程序、系統(tǒng)設(shè)定參數(shù)這樣的數(shù)據(jù)。這些程序或數(shù)據(jù)被復(fù)制到主存儲(chǔ)器104使得微處理器100能夠根據(jù)需要來訪問。作為這樣的非易失性存儲(chǔ)器106,可使用閃速存儲(chǔ)器那樣的半導(dǎo)體存儲(chǔ)器?;蛘?,也能夠使用硬盤驅(qū)動(dòng)器那樣的磁記錄介質(zhì)、DVD-RAM(數(shù)字視頻盤隨機(jī)接入存儲(chǔ)器)那樣的光學(xué)記錄介質(zhì)等。系統(tǒng)定時(shí)器108按照一定周期產(chǎn)生中斷信號(hào)而提供給微處理器100。典型地,根據(jù)硬件的規(guī)格而構(gòu)成為以多個(gè)不同的周期分別產(chǎn)生中斷信號(hào),但也能夠設(shè)定為根據(jù)OS(操作系統(tǒng))或BIOS(基本輸入輸出系統(tǒng))等,以任意的周期產(chǎn)生中斷信號(hào)。利用該系統(tǒng)定時(shí)器108產(chǎn)生的中斷信號(hào),實(shí)現(xiàn)后述那樣的每個(gè)控制循環(huán)的控制動(dòng)作。CPU單元13作為通信電路而具有PLC系統(tǒng)總線控制器120以及現(xiàn)場(chǎng)網(wǎng)絡(luò)控制器140。這些通信電路進(jìn)行輸出數(shù)據(jù)的發(fā)送以及輸入數(shù)據(jù)的接收。另外,在使CPU單元13本身具有IO單元14或伺服電機(jī)驅(qū)動(dòng)器3的功能的情況下,基于通信電路的輸出數(shù)據(jù)的發(fā)送以及輸入數(shù)據(jù)的接收,成為將負(fù)責(zé)這些功能的部分作為通信對(duì)方而在CPU單元13的內(nèi)部進(jìn)行的發(fā)送以及接收。PLC系統(tǒng)總線控制器120控制經(jīng)由PLC系統(tǒng)總線11的數(shù)據(jù)交換。更具體地說,PLC系統(tǒng)總線控制器120包含DMA(動(dòng)態(tài)存儲(chǔ)器接入)控制電路122、PLC系統(tǒng)總線控制電路124、緩沖存儲(chǔ)器126。另外,PLC系統(tǒng)總線控制器120經(jīng)由PLC系統(tǒng)總線連接器130與PLC系統(tǒng)總線11以內(nèi)部方式連接。緩沖存儲(chǔ)器126作為經(jīng)由PLC系統(tǒng)總線11輸出到其他單元的數(shù)據(jù)(以下也稱為“輸出數(shù)據(jù)”)的發(fā)送緩沖器、以及經(jīng)由PLC系統(tǒng)總線11從其他單元輸入的數(shù)據(jù)(以下也稱為“輸入數(shù)據(jù)”)的接收緩沖器發(fā)揮作用。另外,通過基于微處理器100的運(yùn)算處理而生成的輸出數(shù)據(jù)最初被存儲(chǔ)到主存儲(chǔ)器104。并且,應(yīng)轉(zhuǎn)發(fā)至特定的單元的輸出數(shù)據(jù)從主存儲(chǔ)器104被讀出后臨時(shí)保持在緩沖存儲(chǔ)器126。此外,應(yīng)從其他單元轉(zhuǎn)發(fā)的輸入數(shù)據(jù)在被暫時(shí)保持在緩沖存儲(chǔ)器126之后轉(zhuǎn)移到主存儲(chǔ)器104。DMA控制電路122進(jìn)行從主存儲(chǔ)器104到緩沖存儲(chǔ)器126的輸出數(shù)據(jù)的轉(zhuǎn)發(fā)、以及從緩沖存儲(chǔ)器126到主存儲(chǔ)器104的輸入數(shù)據(jù)的轉(zhuǎn)發(fā)。PLC系統(tǒng)總線控制電路124在與連接到PLC系統(tǒng)總線11的其他單元之間,進(jìn)行發(fā)送緩沖存儲(chǔ)器126的輸出數(shù)據(jù)的處理以及接收輸入數(shù)據(jù)后存儲(chǔ)到緩沖存儲(chǔ)器126的處理。典型地,PLC系統(tǒng)總線控制電路124提供PLC系統(tǒng)總線11中的物理層以及數(shù)據(jù)鏈路層的功能?,F(xiàn)場(chǎng)網(wǎng)絡(luò)控制器140控制經(jīng)由了現(xiàn)場(chǎng)網(wǎng)絡(luò)2的數(shù)據(jù)交換。即,現(xiàn)場(chǎng)網(wǎng)絡(luò)控制器140按照所使用的現(xiàn)場(chǎng)網(wǎng)絡(luò)2的標(biāo)準(zhǔn),控制輸出數(shù)據(jù)的發(fā)送以及輸入數(shù)據(jù)的接收。如上所述,在本實(shí)施方式中采用遵循EtherCAT(注冊(cè)商標(biāo))標(biāo)準(zhǔn)的現(xiàn)場(chǎng)網(wǎng)絡(luò)2,因此使用包含用于進(jìn)行通常的以太網(wǎng)(注冊(cè)商標(biāo))通信的硬件的現(xiàn)場(chǎng)網(wǎng)絡(luò)控制器140。在EtherCAT(注冊(cè)商標(biāo))標(biāo)準(zhǔn)中,能夠利用實(shí)現(xiàn)遵循通常的以太網(wǎng)(注冊(cè)商標(biāo))標(biāo)準(zhǔn)的通信控制的一般的以太網(wǎng)(注冊(cè)商標(biāo))控制器。但是,根據(jù)作為現(xiàn)場(chǎng)網(wǎng)絡(luò)2來采用的工業(yè)用以太網(wǎng)(注冊(cè)商標(biāo))的種類,使用與不同于通常的通信協(xié)議的專用規(guī)格的通信協(xié)議對(duì)應(yīng)的特殊規(guī)格的以太網(wǎng)(注冊(cè)商標(biāo))控制器。此外,在采用了工業(yè)用以太網(wǎng)(注冊(cè)商標(biāo))以外的現(xiàn)場(chǎng)網(wǎng)絡(luò)的情況下,使用與該標(biāo)準(zhǔn)相應(yīng)的專用的現(xiàn)場(chǎng)網(wǎng)絡(luò)控制器。緩沖存儲(chǔ)器146作為經(jīng)由現(xiàn)場(chǎng)網(wǎng)絡(luò)2輸出到其他裝置等的數(shù)據(jù)(關(guān)于該數(shù)據(jù),在以下也稱為“輸出數(shù)據(jù)”)的發(fā)送緩沖器、以及經(jīng)由現(xiàn)場(chǎng)網(wǎng)絡(luò)2從其他裝置等輸入的數(shù)據(jù)(關(guān)于該數(shù)據(jù),在以下也稱為“輸入數(shù)據(jù)”)的接收緩沖器發(fā)揮作用。如上所述,通過基于微處理器100的運(yùn)算處理而生成的輸出數(shù)據(jù)最初被存儲(chǔ)到主存儲(chǔ)器104。并且,應(yīng)轉(zhuǎn)發(fā)至特定的單元的輸出數(shù)據(jù)從主存儲(chǔ)器104被讀出后臨時(shí)保持在緩沖存儲(chǔ)器146。此外,應(yīng)從其他單元轉(zhuǎn)發(fā)的輸入數(shù)據(jù)在被暫時(shí)保持在緩沖存儲(chǔ)器146之后轉(zhuǎn)移到主存儲(chǔ)器104。DMA控制電路142進(jìn)行從主存儲(chǔ)器104到緩沖存儲(chǔ)器146的輸出數(shù)據(jù)的轉(zhuǎn)發(fā)、以及從緩沖存儲(chǔ)器146到主存儲(chǔ)器104的輸入數(shù)據(jù)的轉(zhuǎn)發(fā)?,F(xiàn)場(chǎng)網(wǎng)絡(luò)控制電路144在與連接到現(xiàn)場(chǎng)網(wǎng)絡(luò)2的其他裝置之間,進(jìn)行發(fā)送緩沖存儲(chǔ)器146的輸出數(shù)據(jù)的處理以及接收輸入數(shù)據(jù)后存儲(chǔ)到緩沖存儲(chǔ)器146的處理。典型地,現(xiàn)場(chǎng)網(wǎng)絡(luò)控制電路144提供現(xiàn)場(chǎng)網(wǎng)絡(luò)2中的物理層以及數(shù)據(jù)鏈路層的功能。USB連接器110是用于連接PLC支援裝置8和CPU單元13的接口。典型地,從PLC支援裝置8轉(zhuǎn)發(fā)的能夠由CPU單元13的微處理器100執(zhí)行的程序等,經(jīng)由USB連接器110被獲取到PLC1。<C.CPU單元的軟件結(jié)構(gòu)>下面,參照?qǐng)D3說明本實(shí)施方式的用于提供各種功能的軟件組。這些軟件中包含的命令代碼在適當(dāng)?shù)亩〞r(shí)被讀出,并由CPU單元13的微處理器100執(zhí)行。圖3是表示本發(fā)明的實(shí)施方式的由CPU單元13執(zhí)行的軟件結(jié)構(gòu)的示意圖。參照?qǐng)D3,作為由CPU單元13執(zhí)行的軟件,分為實(shí)時(shí)OS200、系統(tǒng)程序210、用戶程序236的三層。實(shí)時(shí)OS200根據(jù)CPU單元13的計(jì)算機(jī)架構(gòu)而設(shè)計(jì),提供微處理器100用于執(zhí)行系統(tǒng)程序210以及用戶程序236的基本的執(zhí)行環(huán)境。該實(shí)時(shí)OS典型地由PLC的廠家或者專門的軟件公司等提供。系統(tǒng)程序210是用于提供作為PLC1的功能的軟件組。具體地說,系統(tǒng)程序210包含調(diào)度器程序212、輸出處理程序214、輸入處理程序216、時(shí)序命令運(yùn)算程序232、動(dòng)作運(yùn)算程序234、其他的系統(tǒng)程序220。另外,一般輸出處理程序214以及輸入處理程序216被連續(xù)地(作為一體)執(zhí)行,因此有時(shí)也將這些程序統(tǒng)稱為IO處理程序218。用戶程序236根據(jù)用戶的控制目的而生成。即,是根據(jù)利用PLC系統(tǒng)SYS控制的對(duì)象的行(過程(process))等,任意設(shè)計(jì)的程序。如后述那樣,用戶程序236與時(shí)序命令運(yùn)算程序232以及動(dòng)作運(yùn)算程序234協(xié)作,實(shí)現(xiàn)用戶中的控制目的。即,用戶程序236通過利用由時(shí)序命令運(yùn)算程序232以及動(dòng)作運(yùn)算程序234提供的命令、函數(shù)、功能模塊等,實(shí)現(xiàn)編程化的動(dòng)作。因此,有時(shí)也將用戶程序236、時(shí)序命令運(yùn)算程序232以及動(dòng)作運(yùn)算程序234統(tǒng)稱為控制程序230。如此,CPU單元13的微處理器100執(zhí)行在存儲(chǔ)部件中存儲(chǔ)的系統(tǒng)程序210以及用戶程序236。以下,針對(duì)各個(gè)程序更加詳細(xì)地說明。用戶程序236如上所述那樣,根據(jù)用戶中的控制目的(例如,對(duì)象的行或過程)而生成。用戶程序236典型地,成為能夠在CPU單元13的微處理器100中執(zhí)行的目標(biāo)程序形式。該用戶程序236通過在PLC支援裝置8等中對(duì)由梯形圖語言記述的源程序進(jìn)行編譯而生成。然后,生成的目標(biāo)程序形式的用戶程序236從PLC支援裝置8經(jīng)由連接線纜10被轉(zhuǎn)發(fā)到CPU單元13,并存儲(chǔ)到非易失性存儲(chǔ)器106等。調(diào)度器程序212針對(duì)輸出處理程序214、輸入處理程序216、以及控制程序230,控制在各執(zhí)行循環(huán)中的處理開始以及處理中斷后的處理重啟。更具體地說,調(diào)度器程序212控制用戶程序236以及動(dòng)作運(yùn)算程序234的執(zhí)行。在本實(shí)施方式的CPU單元13中,將適合動(dòng)作運(yùn)算程序234的一定周期的執(zhí)行循環(huán)(控制循環(huán))作為處理整體的共同循環(huán)來采用。因此,在一個(gè)控制循環(huán)內(nèi),由于不易完成所有的處理,因此根據(jù)應(yīng)執(zhí)行的處理的優(yōu)先級(jí)等,區(qū)分在各控制循環(huán)中應(yīng)完成執(zhí)行的處理和可以經(jīng)過多個(gè)控制循環(huán)而執(zhí)行的處理。調(diào)度器程序212管理這些已區(qū)分的處理的執(zhí)行順序等。更具體地說,調(diào)度器程序212在各控制循環(huán)期間內(nèi)先執(zhí)行被賦予更高的優(yōu)先級(jí)的程序。輸出處理程序214將通過執(zhí)行用戶程序236(控制程序230)而生成的輸出數(shù)據(jù)重新配置成適合轉(zhuǎn)發(fā)到PLC系統(tǒng)總線控制器120和/或現(xiàn)場(chǎng)網(wǎng)絡(luò)控制器140的形式。PLC系統(tǒng)總線控制器120或者現(xiàn)場(chǎng)網(wǎng)絡(luò)控制器140需要來自微處理器100的用于執(zhí)行發(fā)送的指示的情況下,輸出處理程序214發(fā)出那樣的指示。輸入處理程序216將通過PLC系統(tǒng)總線控制器120和/或現(xiàn)場(chǎng)網(wǎng)絡(luò)控制器140接收的輸入數(shù)據(jù)重新配置成適合控制程序230使用的形式。時(shí)序命令運(yùn)算程序232在執(zhí)行用戶程序236中使用的某種時(shí)序命令時(shí)被調(diào)用,是為了實(shí)現(xiàn)該命令的內(nèi)容而執(zhí)行的程序。動(dòng)作運(yùn)算程序234按照用戶程序236的指示而執(zhí)行,是在每當(dāng)執(zhí)行對(duì)如伺服電機(jī)驅(qū)動(dòng)器3或脈沖電機(jī)驅(qū)動(dòng)器這樣的電機(jī)驅(qū)動(dòng)器輸出的指令值時(shí)計(jì)算的程序。其他的系統(tǒng)程序220是將圖3中單獨(dú)示出的程序以外的、用于實(shí)現(xiàn)PLC1的各種功能的程序集中示出的程序。實(shí)時(shí)OS200提供用于按照時(shí)間的經(jīng)過而切換執(zhí)行多個(gè)程序的環(huán)境。在本實(shí)施方式的PLC1中,作為用于將通過CPU單元13的程序執(zhí)行而生成的輸出數(shù)據(jù)輸出(發(fā)送)到其他的單元或者其他的裝置的事件(中斷),初始設(shè)定控制循環(huán)開始的中斷。實(shí)時(shí)OS200在產(chǎn)生控制循環(huán)開始的中斷時(shí),將微處理器100中的執(zhí)行對(duì)象從中斷發(fā)生時(shí)刻正在執(zhí)行的程序切換為調(diào)度器程序212。另外,當(dāng)調(diào)度器程序212以及調(diào)度器程序212控制其執(zhí)行的程序的任一個(gè)都沒有被執(zhí)行的情況下,實(shí)時(shí)OS200執(zhí)行在其他的系統(tǒng)程序210中包含的程序。作為這樣的程序,例如,包含有關(guān)經(jīng)由了CPU單元13和PLC支援裝置8之間的連接線纜10(USB)等的通信處理的程序。另外,控制程序230以及調(diào)度器程序212被存儲(chǔ)到作為存儲(chǔ)部件的主存儲(chǔ)器104以及非易失性存儲(chǔ)器106。<D.主存儲(chǔ)器結(jié)構(gòu)>下面,參照?qǐng)D4說明CPU單元13的主存儲(chǔ)器104中構(gòu)成的存儲(chǔ)區(qū)域。圖4是表示本發(fā)明的實(shí)施方式的CPU單元13的主存儲(chǔ)器104的區(qū)域結(jié)構(gòu)的示意圖。參照?qǐng)D4,主存儲(chǔ)器104中形成各種程序區(qū)域1041、控制程序的作業(yè)區(qū)域1042、PLC系統(tǒng)總線發(fā)送緩沖器1043、PLC系統(tǒng)總線接收緩沖器1044、現(xiàn)場(chǎng)網(wǎng)絡(luò)發(fā)送緩沖器1045、現(xiàn)場(chǎng)網(wǎng)絡(luò)接收緩沖器1046。各種程序區(qū)域1041中除了存儲(chǔ)程序本身的區(qū)域之外,還包含存儲(chǔ)在執(zhí)行程序時(shí)使用的變量的屬性數(shù)據(jù)的區(qū)域1041a。當(dāng)變量是由多個(gè)控制程序參照的全局變量時(shí),變量的屬性數(shù)據(jù)可包含能夠改寫該變量的一個(gè)所有者側(cè)控制程序的指定、以及只能參照該變量的一個(gè)或者多個(gè)參照者側(cè)控制程序的指定。在控制程序的作業(yè)區(qū)域1042中除了各控制程序230的局部變量區(qū)域之外,通過系統(tǒng)程序210生成全局變量區(qū)域1042a以及同步緩沖區(qū)域1042b。在控制程序的作業(yè)區(qū)域1042中存儲(chǔ)通過控制程序230的執(zhí)行而生成的輸出數(shù)據(jù)以及控制程序參照的輸入數(shù)據(jù)。PLC系統(tǒng)總線發(fā)送緩沖器1043以及PLC系統(tǒng)總線接收緩沖器1044分別臨時(shí)存儲(chǔ)經(jīng)由PLC系統(tǒng)總線11發(fā)送以及接收的數(shù)據(jù)。同樣地,現(xiàn)場(chǎng)網(wǎng)絡(luò)發(fā)送緩沖器1045以及現(xiàn)場(chǎng)網(wǎng)絡(luò)接收緩沖器1046分別臨時(shí)存儲(chǔ)經(jīng)由現(xiàn)場(chǎng)網(wǎng)絡(luò)2發(fā)送以及接收的數(shù)據(jù)。更具體地說,輸出處理程序214在需要經(jīng)由PLC系統(tǒng)總線11發(fā)送某一個(gè)輸出數(shù)據(jù)時(shí),將對(duì)象的輸出數(shù)據(jù)從控制程序的作業(yè)區(qū)域1042復(fù)制到PLC系統(tǒng)總線發(fā)送緩沖器1043。這時(shí),輸出處理程序214為了能夠匯總發(fā)送被發(fā)送到同一單元的多個(gè)輸出數(shù)據(jù),在PLC系統(tǒng)總線發(fā)送緩沖器1043中重新配置輸出數(shù)據(jù)使得面向同一單元的輸出數(shù)據(jù)組被集中。同樣地,輸出處理程序214在需要經(jīng)由現(xiàn)場(chǎng)網(wǎng)絡(luò)2發(fā)送某一個(gè)輸出數(shù)據(jù)時(shí),將對(duì)象的輸出數(shù)據(jù)從控制程序的作業(yè)區(qū)域1042復(fù)制到現(xiàn)場(chǎng)網(wǎng)絡(luò)發(fā)送緩沖器1045。這時(shí),輸出處理程序214在現(xiàn)場(chǎng)網(wǎng)絡(luò)發(fā)送緩沖器1045中,將輸出數(shù)據(jù)重新配置成能夠作為串行幀來發(fā)送的形式。另一方面,輸入處理程序216將PLC系統(tǒng)總線控制器120接收并存儲(chǔ)到PLC系統(tǒng)總線接收緩沖器1044的輸入數(shù)據(jù)和/或現(xiàn)場(chǎng)網(wǎng)絡(luò)控制器140接收并存儲(chǔ)到現(xiàn)場(chǎng)網(wǎng)絡(luò)接收緩沖器1046的輸入數(shù)據(jù)復(fù)制到控制程序的作業(yè)區(qū)域1042。這時(shí),輸入處理程序216在控制程序的作業(yè)區(qū)域1042中,將輸入數(shù)據(jù)重新配置成適合控制程序230使用的形式。PLC系統(tǒng)總線控制器120的DMA控制電路122將存儲(chǔ)在PLC系統(tǒng)總線發(fā)送緩沖器1043的輸出數(shù)據(jù)轉(zhuǎn)發(fā)到PLC系統(tǒng)總線控制器120的緩沖存儲(chǔ)器146,并且將在緩沖存儲(chǔ)器146中存儲(chǔ)的輸入數(shù)據(jù)轉(zhuǎn)發(fā)到PLC系統(tǒng)總線接收緩沖器1044?,F(xiàn)場(chǎng)網(wǎng)絡(luò)控制器140的DMA控制電路142將在現(xiàn)場(chǎng)網(wǎng)絡(luò)發(fā)送緩沖器1045中存儲(chǔ)的輸出數(shù)據(jù)轉(zhuǎn)發(fā)到現(xiàn)場(chǎng)網(wǎng)絡(luò)控制器140的緩沖存儲(chǔ)器146,并且將在緩沖存儲(chǔ)器146中存儲(chǔ)的輸入數(shù)據(jù)轉(zhuǎn)發(fā)到現(xiàn)場(chǎng)網(wǎng)絡(luò)接收緩沖器1046。控制程序的作業(yè)區(qū)域1042、PLC系統(tǒng)總線發(fā)送緩沖器1043、PLC系統(tǒng)總線接收緩沖器1044、現(xiàn)場(chǎng)網(wǎng)絡(luò)發(fā)送緩沖器1045、以及現(xiàn)場(chǎng)網(wǎng)絡(luò)接收緩沖器1046構(gòu)成為能夠相互獨(dú)立地控制各自的訪問。因此,例如,能夠并行執(zhí)行以下所示的(1)~(3)這樣的多個(gè)動(dòng)作。(1)微處理器100進(jìn)行的、伴隨用戶程序236的執(zhí)行的對(duì)控制程序的作業(yè)區(qū)域1042的訪問(2)PLC系統(tǒng)總線控制器120的DMA控制電路122進(jìn)行的、用于主存儲(chǔ)器104上的PLC系統(tǒng)總線發(fā)送緩沖器1043和/或PLC系統(tǒng)總線接收緩沖器1044與PLC系統(tǒng)總線控制器120內(nèi)的緩沖存儲(chǔ)器126之間的數(shù)據(jù)轉(zhuǎn)發(fā)的、對(duì)主存儲(chǔ)器104上的PLC系統(tǒng)總線發(fā)送緩沖器1043和/或PLC系統(tǒng)總線接收緩沖器1044的訪問(3)現(xiàn)場(chǎng)網(wǎng)絡(luò)控制器140的DMA控制電路142進(jìn)行的、用于主存儲(chǔ)器104上的現(xiàn)場(chǎng)網(wǎng)絡(luò)發(fā)送緩沖器1045和/或現(xiàn)場(chǎng)網(wǎng)絡(luò)接收緩沖器1046與現(xiàn)場(chǎng)網(wǎng)絡(luò)控制器140內(nèi)的緩沖存儲(chǔ)器146之間的數(shù)據(jù)轉(zhuǎn)發(fā)的、對(duì)主存儲(chǔ)器104上的現(xiàn)場(chǎng)網(wǎng)絡(luò)發(fā)送緩沖器1045和/或現(xiàn)場(chǎng)網(wǎng)絡(luò)接收緩沖器1046的訪問。<E.系統(tǒng)程序的整體處理動(dòng)作>下面,說明系統(tǒng)程序210的整體處理動(dòng)作。在系統(tǒng)程序210的執(zhí)行階段,依次執(zhí)行控制程序230的執(zhí)行準(zhǔn)備處理以及控制程序230的執(zhí)行控制處理。更具體地說,系統(tǒng)程序210作為控制程序230的執(zhí)行準(zhǔn)備處理而包含以下的(1)以及(2)的處理。(1)在存儲(chǔ)部件內(nèi)生成用于存儲(chǔ)全局變量的全局變量區(qū)域的處理(2)關(guān)于各個(gè)參照者側(cè)控制程序,對(duì)于由該參照者側(cè)控制程序參照的每個(gè)全局變量,在該參照者側(cè)控制程序參照全局變量時(shí)在存儲(chǔ)部件內(nèi)生成代替全局變量區(qū)域而設(shè)為參照目的地的同步緩沖器的處理進(jìn)而,控制程序230的執(zhí)行準(zhǔn)備處理還可包含與具體的安裝方式相應(yīng)的其他的執(zhí)行準(zhǔn)備處理。此外,系統(tǒng)程序210作為控制程序230的執(zhí)行控制處理而包含以下的(3)~(5)的處理。(3)用于使所有者側(cè)控制程序開始執(zhí)行的所有者側(cè)開始處理(4)如果所有者側(cè)控制程序的執(zhí)行結(jié)束,則將通過該所有者側(cè)控制程序改寫的全局變量從全局變量區(qū)域復(fù)制到與該全局變量對(duì)應(yīng)的同步緩沖器的復(fù)制處理(5)用于使參照者側(cè)控制程序開始執(zhí)行的參照者側(cè)開始處理進(jìn)而,控制程序230的執(zhí)行控制處理還可包含與具體的安裝方式相應(yīng)的其他的執(zhí)行控制處理。圖5是表示本發(fā)明的實(shí)施方式的CPU單元中的系統(tǒng)程序的整體處理的流程圖。如圖5所示,首先,執(zhí)行控制程序230的執(zhí)行準(zhǔn)備處理(步驟S1),接著執(zhí)行控制程序230的執(zhí)行控制處理(步驟S2)。在控制程序230的執(zhí)行準(zhǔn)備處理(步驟S1)中包含的各處理的執(zhí)行順序被適當(dāng)設(shè)計(jì)。同樣地,在控制程序230的執(zhí)行控制處理(步驟S2)中包含的各處理,伴隨重復(fù)執(zhí)行控制程序230而重復(fù)執(zhí)行,其執(zhí)行順序依賴于具體地實(shí)施方式。以下,作為具體的安裝方式的典型例,說明實(shí)施方式1~7。<F.單一同步緩沖器方式(實(shí)施方式1)>(f1:概要)在實(shí)施方式1中,設(shè)想以分時(shí)方式執(zhí)行多個(gè)控制程序的情況。這時(shí),存在由多個(gè)控制程序參照的全局變量。對(duì)于該全局變量,設(shè)定能夠進(jìn)行改寫的一個(gè)所有者側(cè)控制程序,并且設(shè)定只能參照全局變量的一個(gè)或者多個(gè)參照者側(cè)控制程序。以下,將在所有者側(cè)控制程序中設(shè)定的控制程序稱為“全局變量的所有者”或者簡(jiǎn)稱為“所有者”。以下,例示有別于執(zhí)行循環(huán)的大小關(guān)系,將控制程序中的其中一個(gè)指定為全局變量的所有者的情況。(f2:執(zhí)行優(yōu)先級(jí)高且執(zhí)行循環(huán)短的一方的控制程序?yàn)槿肿兞康乃姓?在以下所示的例子中,設(shè)想執(zhí)行執(zhí)行優(yōu)先級(jí)和執(zhí)行循環(huán)的長度不同的多個(gè)控制程序(控制程序1~3)的狀態(tài)。這時(shí),設(shè)控制程序的執(zhí)行優(yōu)先級(jí)與其他的控制程序2以及3相比高,并且控制程序1的執(zhí)行循環(huán)與其他的控制程序2以及3相比短。在這樣的狀況下,設(shè)為執(zhí)行循環(huán)短的一方的控制程序1被設(shè)定為全局變量的所有者(所有者側(cè)控制程序),控制程序2以及3被設(shè)定為全局變量的參照者(參照者側(cè)控制程序)。圖6是表示實(shí)施方式1的執(zhí)行動(dòng)作的時(shí)序圖。參照?qǐng)D6,假設(shè)執(zhí)行控制程序1~3。圖7是針對(duì)圖6所示的控制循環(huán)1以及2放大示出的時(shí)序圖。圖8是表示實(shí)施方式1的執(zhí)行動(dòng)作的流程圖。沿圖6的控制程序1~3的各自的時(shí)間軸示出的虛線的圓角矩形表示對(duì)應(yīng)的控制程序的執(zhí)行循環(huán)。例如,控制程序1將一次的控制循環(huán)設(shè)為執(zhí)行循環(huán),同樣地,控制程序2以及3分別將兩次以及4次的控制循環(huán)設(shè)為執(zhí)行循環(huán)。另外,在以下用于說明的時(shí)序圖中以同樣的方法表示執(zhí)行循環(huán)。此外,圖6的橫向的實(shí)線的箭頭標(biāo)記表示數(shù)據(jù)的交換,此外,與各箭頭標(biāo)記關(guān)聯(lián)示出的數(shù)字表示對(duì)應(yīng)的數(shù)據(jù)反映了哪個(gè)控制循環(huán)的狀態(tài)。例如,在被賦予(1)的箭頭標(biāo)記中,表示通過在控制循環(huán)1中執(zhí)行控制程序而生成的數(shù)據(jù)被交換。以下,在用于說明的時(shí)序圖中也以同樣的方法來表示執(zhí)行循環(huán)。在圖6所示的例子中,由于控制程序1是全局變量的所有者,因此控制程序1將該執(zhí)行的結(jié)果等寫入全局變量區(qū)域1042a內(nèi)的全局變量區(qū)域1。另一方面,在參照者側(cè)控制程序中設(shè)定的控制程序2以及3參照在同步緩沖區(qū)域1042b內(nèi)的各自對(duì)應(yīng)的同步緩沖器2以及3中存儲(chǔ)的數(shù)據(jù)而執(zhí)行處理。也可以將執(zhí)行結(jié)果等分別寫入對(duì)應(yīng)的同步緩沖器2以及3。此外,同步緩沖器2以及3的數(shù)據(jù)按照如后述那樣的順序,在與全局變量區(qū)域1之間保持同步。圖6中,沿著控制程序1~3的各自的時(shí)間軸表示其控制程序的執(zhí)行狀態(tài)。更具體地說,在應(yīng)執(zhí)行預(yù)先決定的處理的執(zhí)行循環(huán)內(nèi),監(jiān)視作為尚未開始處理的狀態(tài)的“執(zhí)行前”、在該執(zhí)行循環(huán)內(nèi)正在進(jìn)行處理的“執(zhí)行中”、以及在該執(zhí)行循環(huán)內(nèi)處理已經(jīng)完成的“執(zhí)...
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
南安市| 荥阳市| 和平县| 连山| 申扎县| 阳东县| 康乐县| 肃宁县| 宜章县| 资阳市| 遵义市| 资阳市| 南陵县| 昌图县| 乌拉特后旗| 广州市| 新乡市| 普安县| 呼玛县| 华阴市| 惠州市| 山阴县| 耒阳市| 正宁县| 台山市| 新丰县| 修文县| 疏勒县| 库尔勒市| 许昌县| 和龙市| 丹寨县| 桑植县| 宣恩县| 江北区| 阳城县| 太湖县| 荔波县| 萨迦县| 民县| 独山县|