控制系統(tǒng)、控制裝置及控制方法
【專利摘要】控制系統(tǒng)具有:主裝置,其包括運(yùn)算部及通信處理部;以及一個以上從屬裝置,經(jīng)由網(wǎng)絡(luò)與主裝置連接。通信處理部管理數(shù)據(jù)流在網(wǎng)絡(luò)上的巡回傳輸,數(shù)據(jù)流含有主裝置及一個以上從屬裝置進(jìn)行處理的數(shù)據(jù)。通信處理部與運(yùn)算部中的輸出處理的運(yùn)行聯(lián)動的方式,開始將含有輸出數(shù)據(jù)的第一數(shù)據(jù)流巡回傳輸給一個以上從屬裝置,在比運(yùn)算部縱的輸入處理的運(yùn)行的開始時刻提前預(yù)設(shè)期間的時刻,開始巡回傳輸?shù)诙?shù)據(jù)流,第二數(shù)據(jù)流用于獲取一個以上從屬裝置從控制對象收集來的信息。
【專利說明】
控制系統(tǒng)、控制裝置及控制方法
技術(shù)領(lǐng)域
[0001 ]本發(fā)明涉及一種用于控制機(jī)械和設(shè)備等的動作的控制系統(tǒng)、控制裝置及控制方法。
【背景技術(shù)】
[0002]典型地,在很多生產(chǎn)現(xiàn)場中使用的機(jī)械和設(shè)備被由可編程序邏輯控制器(Programmable Logic Controller;以下稱為“PLC”)等構(gòu)成的控制系統(tǒng)控制。這樣的控制系統(tǒng)從外部的開關(guān)和傳感器等收集信息,并輸出通過規(guī)定的控制運(yùn)算來獲得的指令值。
[0003]很多時候這樣的現(xiàn)場信息的收集及指令值的輸出是通過網(wǎng)絡(luò)進(jìn)行的。例如,在JP特開2001-147905號公報(專利文獻(xiàn)I)中公開:至少一個以上CPU模塊和多個I/O模塊與環(huán)型總線連接而形成的可編程序邏輯控制系統(tǒng)。
[0004]現(xiàn)有技術(shù)文獻(xiàn)
[0005]專利文獻(xiàn)
[0006]專利文獻(xiàn)1:特開2001-147905號公報
【發(fā)明內(nèi)容】
[0007]發(fā)明要解決的問題
[0008]如上所述,當(dāng)通過網(wǎng)絡(luò)來傳輸現(xiàn)場信息和指令值(以下,還稱為“10( Input/Output:輸入輸出)數(shù)據(jù)”)時,需要一定的傳輸時間。關(guān)于控制程序的運(yùn)行周期,在傳輸時間足夠小的情況下雖不會引起大問題,但如果欲使程序運(yùn)行周期變得更短,則傳輸時間會成為問題。然而,上述特開2001-147905號公報(專利文獻(xiàn)I)中并沒有提及這樣的問題。
[0009]S卩,迫切期望一種能夠以更短的周期來反復(fù)運(yùn)行對控制對象進(jìn)行控制所需的程序的結(jié)構(gòu)。
[0010]解決問題的方法
[0011]根據(jù)本發(fā)明的一方面提供一種用于對控制對象進(jìn)行控制的控制系統(tǒng)??刂葡到y(tǒng)具有:主裝置,包括運(yùn)算部及通信處理部;以及一個以上從屬裝置,經(jīng)由網(wǎng)絡(luò)與主裝置連接。通信處理部管理數(shù)據(jù)流在網(wǎng)絡(luò)上的巡回傳輸,數(shù)據(jù)流含有主裝置及一個以上從屬裝置進(jìn)行處理的數(shù)據(jù)。運(yùn)算部以預(yù)設(shè)的運(yùn)行周期反復(fù)運(yùn)行輸出處理及輸入處理,并且在輸出處理及輸入處理的非運(yùn)行期間,反復(fù)運(yùn)行程序運(yùn)行處理。輸入處理包括根據(jù)由一個以上從屬裝置收集的來自控制對象的信息來更新輸入數(shù)據(jù)的處理。輸出處理包括生成輸出數(shù)據(jù)的處理,輸出數(shù)據(jù)含有程序運(yùn)行處理的運(yùn)行結(jié)果。通信處理部以與運(yùn)算部中的輸出處理的運(yùn)行聯(lián)動的方式,開始將含有輸出數(shù)據(jù)的第一數(shù)據(jù)流巡回傳輸給一個以上從屬裝置,通信處理部在比運(yùn)算部中的輸入處理的運(yùn)行的開始時刻提前預(yù)設(shè)期間的時刻,開始巡回傳輸?shù)诙?shù)據(jù)流,第二數(shù)據(jù)流用于獲取一個以上從屬裝置從控制對象收集的信息。
[0012]優(yōu)選地,通信處理部在發(fā)送了第一數(shù)據(jù)流后,無論該第一數(shù)據(jù)流到達(dá)主裝置與否,發(fā)送第二數(shù)據(jù)流。
[0013]優(yōu)選地,第一數(shù)據(jù)流及第二數(shù)據(jù)流具有相同的數(shù)據(jù)結(jié)構(gòu)。
[0014]優(yōu)選地,第一數(shù)據(jù)流及第二數(shù)據(jù)流均含有用以從一個以上從屬裝置中獲取信息的指令及輸出數(shù)據(jù)。
[0015]優(yōu)選地,第二數(shù)據(jù)流所含的輸出數(shù)據(jù)無效。
[0016]或者,優(yōu)選地,一個以上從屬裝置中的各從屬裝置將第二數(shù)據(jù)流所含的輸出數(shù)據(jù)作廢。
[0017]優(yōu)選地,主裝置基于事先存儲的偏移值,以輸入處理的運(yùn)行開始時刻為基準(zhǔn),確定發(fā)送第二數(shù)據(jù)流的時刻。
[0018]優(yōu)選地,主裝置基于網(wǎng)絡(luò)的初始結(jié)構(gòu)結(jié)果,確定偏移值。
[0019]本發(fā)明的另一方面的用于對控制對象進(jìn)行控制控制裝置具有運(yùn)算部以及結(jié)合于運(yùn)算部的通信處理部??刂蒲b置經(jīng)由網(wǎng)絡(luò)與一個以上從屬裝置連接。通信處理部管理數(shù)據(jù)流在網(wǎng)絡(luò)上的巡回傳輸,數(shù)據(jù)流含有通信處理部本身及一個以上從屬裝置進(jìn)行處理的數(shù)據(jù)。運(yùn)算部以預(yù)設(shè)的運(yùn)行周期反復(fù)運(yùn)行輸出處理及輸入處理,并且在輸出處理及輸入處理的非運(yùn)行期間反復(fù)運(yùn)行程序運(yùn)行處理。輸入處理包括根據(jù)由一個以上從屬裝置收集的來自控制對象的信息來更新輸入數(shù)據(jù)的處理,輸出處理包括生成輸出數(shù)據(jù)的處理,輸出數(shù)據(jù)含有程序運(yùn)行處理的運(yùn)行結(jié)果。通信處理部以與運(yùn)算部中的輸出處理的運(yùn)行聯(lián)動的方式,開始將含有輸出數(shù)據(jù)的第一數(shù)據(jù)流巡回傳輸給一個以上從屬裝置,通信處理部在比運(yùn)算部中的輸入處理的運(yùn)行的開始時刻提前預(yù)設(shè)期間的時刻,開始巡回傳輸?shù)诙?shù)據(jù)流,第二數(shù)據(jù)流用于獲取一個以上從屬裝置從控制對象收集的信息。
[0020]本發(fā)明的另一方面的用于對控制對象進(jìn)行控制的控制裝置的控制方法中,控制裝置經(jīng)由網(wǎng)絡(luò)與一個以上從屬裝置連接,對數(shù)據(jù)流在網(wǎng)絡(luò)上的巡回傳輸進(jìn)行管理,數(shù)據(jù)流含有該控制裝置及一個以上從屬裝置進(jìn)行處理的數(shù)據(jù)??刂品椒ò?以預(yù)設(shè)的運(yùn)行周期反復(fù)運(yùn)行輸出處理及輸入處理,并且在輸出處理及輸入處理的非運(yùn)行期間反復(fù)運(yùn)行程序運(yùn)行處理的步驟。輸入處理包括根據(jù)由一個以上從屬裝置收集的來自控制對象的信息來更新輸入數(shù)據(jù)的處理。輸出處理包括生成輸出數(shù)據(jù)的處理,輸出數(shù)據(jù)含有程序運(yùn)行處理的運(yùn)行結(jié)果??刂品椒ㄟ€包括:以與輸出處理的運(yùn)行聯(lián)動的方式,開始將含有輸出數(shù)據(jù)的第一數(shù)據(jù)流巡回傳輸給一個以上從屬裝置的步驟;以及在比輸入處理的運(yùn)行的開始時刻提前預(yù)設(shè)期間的時刻,開始巡回傳輸?shù)诙?shù)據(jù)流的步驟,第二數(shù)據(jù)流用于獲取一個以上從屬裝置從控制對象收集的信息。
[0021]發(fā)明效果
[0022]根據(jù)本發(fā)明的某些方面的控制系統(tǒng),能夠以更短的周期來反復(fù)運(yùn)行對控制對象進(jìn)行控制所需的程序。
【附圖說明】
[0023]圖1是表示本實施方式的PLC系統(tǒng)的整體結(jié)構(gòu)的示意圖。
[0024]圖2是表示本實施方式的PLC系統(tǒng)中的CPU單元的裝置結(jié)構(gòu)的示意圖。
[0025]圖3是表示本實施方式的PLC系統(tǒng)中的遠(yuǎn)程裝置的裝置結(jié)構(gòu)的一例的示意圖。
[0026]圖4是說明在本實施方式的現(xiàn)場網(wǎng)絡(luò)上傳輸?shù)耐ㄐ艓膱D。
[0027]圖5是說明本實施方式的PLC系統(tǒng)中的處理概要的圖。
[0028]圖6是表示本實施方式的PLC系統(tǒng)中使用的通信幀的數(shù)據(jù)結(jié)構(gòu)的例子的圖。
[0029]圖7是表示本實施方式的CPU單元的安裝例的圖。
[0030]圖8是表示本實施方式的變形例的PLC系統(tǒng)的整體結(jié)構(gòu)的示意圖。
【具體實施方式】
[0031]本發(fā)明
[0032]參照附圖詳細(xì)說明本發(fā)明的實施方式。此外,對圖中相同或等同的部分采用相同的附圖標(biāo)記,不進(jìn)行反復(fù)說明。
[0033]在本實施方式中,作為控制系統(tǒng)的一例,例示出以PLC為中心的系統(tǒng)。但是,作為這樣的控制系統(tǒng)不僅可以采用PLC,也可采用將各種工業(yè)用計算機(jī)為中心的結(jié)構(gòu)。進(jìn)而,隨著技術(shù)的發(fā)展,當(dāng)開發(fā)出新的處理裝置(運(yùn)算裝置)時,可以采用這樣的新的處理裝置。
[0034]<A.PLC系統(tǒng)的整體結(jié)構(gòu)>
[0035]首先,對控制系統(tǒng)的一方式即本實施方式的PLC系統(tǒng)I的整體結(jié)構(gòu)進(jìn)行說明。圖1是表示本實施方式的PLC系統(tǒng)I的整體結(jié)構(gòu)的示意圖。
[0036]參照圖1,PLC系統(tǒng)I為用于對控制對象進(jìn)行控制的控制系統(tǒng),包括主處理裝置2、一個以上的遠(yuǎn)程裝置40_1、40_2、40_3、."、40__以下,有時稱為“遠(yuǎn)程裝置40”)。主處理裝置2及遠(yuǎn)程裝置40是構(gòu)成PLC系統(tǒng)I的至少一部分的控制裝置,經(jīng)由現(xiàn)場網(wǎng)絡(luò)4彼此連接。
[0037]經(jīng)由現(xiàn)場網(wǎng)絡(luò)4的通信,主要由主處理裝置2控制。具體地,主處理裝置2根據(jù)預(yù)設(shè)蝕刻或規(guī)則,發(fā)送要依次在現(xiàn)場網(wǎng)絡(luò)4上傳輸?shù)臄?shù)據(jù)。在以下說明中,要依次在現(xiàn)場網(wǎng)絡(luò)4上傳輸?shù)臄?shù)據(jù)稱為“通信幀” ο出于這種含義,將主處理裝置2稱為“主裝置”,將遠(yuǎn)程裝置40_1、40_2、40_3、…、40_~各遠(yuǎn)程裝置稱為“從屬裝置”。
[0038]主處理裝置2通過運(yùn)行對控制對象進(jìn)行控制所需的程序(如后所述般,包含用戶程序和系統(tǒng)程序等)來實現(xiàn)以下處理:收集來自外部的開關(guān)和傳感器等的輸入信號(以下,還稱為“現(xiàn)場信息”或“IN數(shù)據(jù)”)的處理;基于收集到的現(xiàn)場信息進(jìn)行控制運(yùn)算的處理;將通過控制運(yùn)算算出的指令值(以下,還稱為“OUT數(shù)據(jù)(輸出數(shù)據(jù))”)賦給外部繼電器或運(yùn)行器的處理等。
[0039]主處理裝置2的裝置結(jié)構(gòu)包括CPU單元10、一個以上1單元20和電源單元30XPU單元10及1單元20通過未圖示的內(nèi)部總線以能夠相互進(jìn)行數(shù)據(jù)通信的方式連接。電源單元30向CPU單元10及1單元20供給恰當(dāng)電壓的電力。
[0040]CPU單元10包括:運(yùn)算部,運(yùn)行對控制對象進(jìn)行控制所需的程序;以及相當(dāng)于通信處理部的通信控制器110,用于對經(jīng)由現(xiàn)場網(wǎng)絡(luò)4與遠(yuǎn)程裝置40的通信進(jìn)行控制。
[0041]遠(yuǎn)程裝置40接收來自外部的開關(guān)和傳感器的現(xiàn)場信息,經(jīng)由現(xiàn)場網(wǎng)絡(luò)4將所接收到的現(xiàn)場信息值(IN數(shù)據(jù)(輸入數(shù)據(jù)))發(fā)送至主處理裝置2。并且,遠(yuǎn)程裝置40將經(jīng)由現(xiàn)場網(wǎng)絡(luò)4從主處理裝置2接收的指令值(OUT數(shù)據(jù))輸出至外部的繼電器或運(yùn)行器。或者,遠(yuǎn)程裝置40也可以根據(jù)經(jīng)由現(xiàn)場網(wǎng)絡(luò)4接收的指令值(OUT數(shù)據(jù))來使自身進(jìn)行動作。例如,作為遠(yuǎn)程裝置40假設(shè)為不具有運(yùn)算功能的單純的1單元、具有運(yùn)算功能的1單元、具有如運(yùn)動控制器(Mot1n controller)這樣的運(yùn)行器的裝置等。
[0042]CPU單元10的通信控制器110管理數(shù)據(jù)流(在本實施方式中還稱為“通信幀”)在現(xiàn)場網(wǎng)絡(luò)4上的巡回傳輸,該數(shù)據(jù)流包括主處理裝置2(主裝置)及一個以上遠(yuǎn)程裝置40(從屬裝置)所處理的數(shù)據(jù)。此外,圖1中示意性示出所謂環(huán)形式的網(wǎng)絡(luò),但也可為如后所述的菊花鏈連接(Daisy chain connect1n)的網(wǎng)絡(luò)。也就是,作為本實施方式的網(wǎng)絡(luò),只要是能夠?qū)?shù)據(jù)流(通信幀)巡回傳輸?shù)慕Y(jié)構(gòu)即可,可采用任何結(jié)構(gòu)。典型地,本實施方式的通信處理還可適用于總幀(Total frame)方式的網(wǎng)絡(luò)。
[0043]<B.CPU單元1的裝置結(jié)構(gòu)>
[0044]其次,對本實施方式的PLC系統(tǒng)I中的CPU單元10的裝置結(jié)構(gòu)進(jìn)行說明。圖2是表示本實施方式的PLC系統(tǒng)I中的CPU單元1的裝置結(jié)構(gòu)的示意圖。
[0045]參照圖2,CPU單元10除了具有通信處理部即通信控制器110之外,還包括作為運(yùn)算部的處理器100、主存儲器102、非易失性存儲器104和內(nèi)部總線控制器106。這些構(gòu)成部分能夠通過內(nèi)部總線108相互進(jìn)行數(shù)據(jù)通信。
[0046]處理器100運(yùn)行控制相關(guān)的程序。處理器100從非易失性存儲器104等中讀取所需程序,并加載到主存儲器102來運(yùn)行。作為控制有關(guān)的程序,典型地,包括用戶程序及系統(tǒng)程序。
[0047]內(nèi)部總線控制器106通過內(nèi)部總線109與1單元20連接,并且調(diào)解處理器100和1單元20之間的數(shù)據(jù)(IN數(shù)據(jù)及OUT數(shù)據(jù))交換。
[0048]通信控制器110經(jīng)由現(xiàn)場網(wǎng)絡(luò)4與遠(yuǎn)程裝置40連接,并調(diào)解CPU單元10與遠(yuǎn)程裝置40之間的數(shù)據(jù)(IN數(shù)據(jù)及OUT數(shù)據(jù))交換。更具體地,通信控制器110包括共有存儲器112、發(fā)送緩沖器120、發(fā)送電路122、接收緩沖器130和接收電路132。
[0049]發(fā)送緩沖器120及發(fā)送電路122實現(xiàn)從通信控制器110向外部裝置發(fā)送幀的處理,接收緩沖器130及接收電路132實現(xiàn)從外部裝置向通信控制器110發(fā)送幀的處理。通信控制器110具有共有存儲器112,處理器100直接訪問共有存儲器112來寫入OUT數(shù)據(jù)并獲取IN數(shù)據(jù)。也就是,寫入共有存儲器112的OUT數(shù)據(jù)被轉(zhuǎn)送至發(fā)送緩沖器120,再從發(fā)送緩沖器120發(fā)送至外部裝置。另外,從外部裝置獲取的IN數(shù)據(jù)被接收緩沖器130接收之后,再被轉(zhuǎn)送至共有存儲器112。
[0050]通信控制器I I O能夠用軟件來實現(xiàn)其一部分或全部?;蛘?,也可用AS I C(Applicat1n Specific Integrated Circuit:專用集成電路)或FPGA (Field-Programmable Gate Array:現(xiàn)場可編程門陣列)等硬件電路來實現(xiàn)其一部分或全部。
[0051]<C.遠(yuǎn)程裝置40的裝置結(jié)構(gòu)>
[0052]接著,對本實施方式的PLC系統(tǒng)I中的遠(yuǎn)程裝置40的裝置結(jié)構(gòu)進(jìn)行說明。圖3是表示本實施方式的PLC系統(tǒng)I中的遠(yuǎn)程裝置40的裝置結(jié)構(gòu)的一例的示意圖。
[0053]作為本實施方式的遠(yuǎn)程裝置40能夠采用各種結(jié)構(gòu),圖3中示出具有運(yùn)算功能及1功能的結(jié)構(gòu)例。參照圖3,遠(yuǎn)程裝置40具有運(yùn)算處理部400、輸入電路402、輸出電路404和通信控制器410。
[0054]運(yùn)算處理部400基于經(jīng)由現(xiàn)場網(wǎng)絡(luò)4所接收的數(shù)據(jù)運(yùn)行預(yù)設(shè)處理,并將作為處理結(jié)果得到的數(shù)據(jù)經(jīng)由現(xiàn)場網(wǎng)絡(luò)4送出。
[0055]輸入電路402將從現(xiàn)場側(cè)輸入的表示信號值(IN數(shù)據(jù))的信息(數(shù)字值)輸出至運(yùn)算處理部400。輸出電路將由運(yùn)算處理部400賦給的與OUT數(shù)據(jù)對應(yīng)的信號向現(xiàn)場側(cè)輸出。
[0056]通信控制器410經(jīng)由現(xiàn)場網(wǎng)絡(luò)4與CPU單元10連接,調(diào)解遠(yuǎn)程裝置40與CPU單元10之間的數(shù)據(jù)(IN數(shù)據(jù)及OUT數(shù)據(jù))交換。更具體地,通信控制器410包括共有存儲器412、接收緩沖器420、接收電路422、發(fā)送緩沖器430和發(fā)送電路432。這些構(gòu)成部分具有與上述共有存儲器112、發(fā)送緩沖器120、發(fā)送電路122、接收緩沖器130及接收電路132(全都是圖2)相同的功能,因此不反復(fù)詳細(xì)說明。但是,當(dāng)通過作為從屬裝置的一部分的通信控制器410接收通信幀時的處理及發(fā)送通信幀時的處理,與通過作為主裝置的一部分的CPU單元10的通信控制器110進(jìn)行的處理不同。
[0057]關(guān)于遠(yuǎn)程裝置40(運(yùn)算處理部400、輸入電路402、輸出電路404及通信控制器410),可以用軟件來實現(xiàn)其功能的全部或一部分,但優(yōu)選用ASIC或FPGA等硬件電路來實現(xiàn)其一部分或全部。
[0058]<D ?現(xiàn)場網(wǎng)絡(luò)>
[0059]其次,對現(xiàn)場網(wǎng)絡(luò)4的通信處理進(jìn)行說明。
[0060]作為現(xiàn)場網(wǎng)絡(luò)4中的通信方式,優(yōu)選能夠以預(yù)設(shè)通信周期進(jìn)行數(shù)據(jù)傳輸?shù)?也就是能夠?qū)崟r通信的)方式。作為一例,作為現(xiàn)場網(wǎng)絡(luò)4可以采用各種工業(yè)用以太網(wǎng)(注冊商標(biāo))。作為工業(yè)用以太網(wǎng)(注冊商標(biāo))的具體例,例如有EtherCAT(注冊商標(biāo)),PR0FINET IRT,MECHATR0LINK(注冊商標(biāo))-1II,Powerlink,SERCOS(注冊商標(biāo))-1II,CIP Mot1n等。在以下說明中,作為典型例,對采用EtherCAT(注冊商標(biāo))的結(jié)構(gòu)例進(jìn)行說明。
[0061]圖4是說明在本實施方式的現(xiàn)場網(wǎng)絡(luò)4上傳輸?shù)耐ㄐ艓膱D。參照圖4,通信幀50在現(xiàn)場網(wǎng)絡(luò)4上巡回傳輸。也就是,從主裝置即主處理裝置2發(fā)送來的通信幀50依次轉(zhuǎn)送至作為從屬裝置的遠(yuǎn)程裝置40_1、40_2、40_3。在全部遠(yuǎn)程裝置40中轉(zhuǎn)送后的通信幀50返回主處理裝置2。也就是,通信幀50在主處理裝置2及遠(yuǎn)程裝置40 j、40_2、40_3、…、40_Ν2間巡回傳輸。
[0062]更具體地,通信幀50包含幀頭51、分配給各從屬裝置的數(shù)據(jù)區(qū)域52、53、54和幀腳55。幀頭51中存儲有該通信幀的地址和各種屬性信息。數(shù)據(jù)區(qū)域52、53、54各自存儲有所對應(yīng)的從屬裝置的OUT數(shù)據(jù)及IN數(shù)據(jù)。幀腳55中存儲有結(jié)束代碼和校驗位等信息。
[0063]主裝置將要賦給各從屬裝置的OUT數(shù)據(jù)寫入分配給對象從屬裝置的數(shù)據(jù)區(qū)域,生成通信幀50并發(fā)送。各從屬裝置在從上級側(cè)接收通信幀50時,從所接收到的通信幀50中的分配給本地的數(shù)據(jù)區(qū)域中提取要發(fā)給本地的OUT數(shù)據(jù),并將本地中收集的IN數(shù)據(jù)寫入分配給本地的數(shù)據(jù)區(qū)域,重新生成通信幀50,然后發(fā)送至下級側(cè)。這樣,隨著通信幀50被巡回轉(zhuǎn)送,OUT數(shù)據(jù)及IN數(shù)據(jù)被依次更新。
[0064]也就是,本實施方式的現(xiàn)場網(wǎng)絡(luò)4中,從主裝置發(fā)送出通信幀50,該通信幀50存儲有要發(fā)送給全部從屬裝置的OUT數(shù)據(jù)(指令值),并且在各從屬裝置中OUT數(shù)據(jù)(指令值)及IN數(shù)據(jù)(反饋值)交換后的通信幀50返回主裝置。也就是,通信幀50巡回一次,完成主裝置和各從屬裝置之間的數(shù)據(jù)交換。
[0065]<Ε ?概要 >
[0066]其次,對本實施方式的PLC系統(tǒng)I的處理概要進(jìn)行說明。圖5是說明本實施方式的PLC系統(tǒng)I中的處理概要的圖。圖5中的(a)是說明關(guān)聯(lián)技術(shù)中CPU單元的程序反復(fù)運(yùn)行的圖,圖5中的(b)是說明本實施方式的CPU單元10的程序反復(fù)運(yùn)行的圖。
[0067]如圖5中的(a)所示,在CPU單元10中周期性地反復(fù)運(yùn)行控制相關(guān)的程序。以下,將該程序的運(yùn)行周期稱為“PLC系統(tǒng)周期”。所運(yùn)行的程序包括系統(tǒng)程序60和用戶程序70。系統(tǒng)程序60是運(yùn)行使PLC系統(tǒng)I恰當(dāng)動作所需的處理的程序,典型地,包括輸出處理62、通信處理64和輸入處理66。
[0068]輸出處理62包含對通過運(yùn)行用戶程序70等所算出的OUT數(shù)據(jù)進(jìn)行匯集來生成通信幀50的處理(還稱為“成幀處理”等)。通信處理64包括:將生成的通信幀50發(fā)送至從屬裝置的處理;以及從在所有從屬裝置巡回后返回的通信幀50中收集IN數(shù)據(jù)的處理。輸入處理66基于從返回的通信幀50中收集到的IN數(shù)據(jù)來更新內(nèi)部數(shù)據(jù)(或內(nèi)部變量)的處理。
[0069]用戶程序70是PLC系統(tǒng)I的用戶根據(jù)目的或用途任意制作的程序,可以根據(jù)控制內(nèi)容、控制對象、控制用途等細(xì)分為一個或多個。例如,用戶程序70能夠包含序列控制邏輯、動作控制邏輯及PID控制邏輯等。另外,針對細(xì)分為多個的用戶程序,也可設(shè)置運(yùn)行周期和運(yùn)行的優(yōu)先等級。此時,針對用戶程序設(shè)置的運(yùn)行周期有時會比PLC系統(tǒng)周期長(通常是PLC系統(tǒng)周期的整數(shù)倍),此時,該程序橫跨多個PLC系統(tǒng)周期運(yùn)行。圖5中的(a)中示出的例中,用戶程序70包含A處理72、B處理74和C處理76。
[0070]如圖5所述,作為運(yùn)算部的處理器100以預(yù)設(shè)運(yùn)行周期(PLC系統(tǒng)周期)反復(fù)運(yùn)行輸出處理62及輸入處理66,并在輸出處理62及輸入處理66的非運(yùn)行期間反復(fù)運(yùn)行程序運(yùn)行處理(用戶程序70的運(yùn)行處理)。在此,輸入處理66包含根據(jù)由一個以上從屬裝置(遠(yuǎn)程裝置40)收集到的來自控制對象的信息(現(xiàn)場信息或IN數(shù)據(jù))更新輸入數(shù)據(jù)的處理。輸出處理62包含用于生成輸出數(shù)據(jù)(通信幀或OUT數(shù)據(jù))的處理,該輸出數(shù)據(jù)包含程序運(yùn)行處理(用戶程序70的運(yùn)行處理)的運(yùn)行結(jié)果。
[0071]系統(tǒng)程序60在每一PLC系統(tǒng)周期必運(yùn)行一次。如圖5中的(a)所示,在系統(tǒng)程序60的通信處理64中,如果從主裝置發(fā)送通信幀50,該通信幀50沒有在全部從屬裝置中巡回之后返回主裝置,則無法完成主裝置與從屬裝置之間的OUT數(shù)據(jù)及IN數(shù)據(jù)的更新。
[0072]也就是,各從屬裝置從通信幀50接收指令值(OUT數(shù)據(jù)),將反饋值(IN數(shù)據(jù))加載在通信幀50。此時,直到通信幀50返回為止,主裝置處于等待狀態(tài)。到從主裝置發(fā)送的通信幀50返回主裝置為止所需的時間(以下,還稱為“通信幀一巡回周期D”。)根據(jù)連接在現(xiàn)場網(wǎng)絡(luò)4的從屬裝置的數(shù)量而變長。
[0073]PLC系統(tǒng)周期T2相當(dāng)于運(yùn)行系統(tǒng)程序60所需的時間(xl+x2+x3)和運(yùn)行用戶程序70所需的時間(χ4+χ5+χ6)的總和。在此,有時用戶程序70還包含例如動作控制邏輯(對多軸機(jī)械手等的位置(角度)的連續(xù)控制邏輯)這樣的要求高速運(yùn)行(以更短的周期反復(fù)運(yùn)行)的處理。因此,迫切期望使PLC系統(tǒng)周期Τ2盡可能短。
[0074]當(dāng)考慮到這樣的PLC系統(tǒng)周期Τ2的高速化時,如圖5中的(a)所示,運(yùn)行系統(tǒng)程序60的通信處理64所需的時間相對變長。這是因為,直到發(fā)送的通信幀50返回為止處于等待狀
??τ O
[0075]本申請的發(fā)明人著眼于這樣的通信處理的等待狀態(tài),想到通過使處于該等待狀態(tài)的時間盡量縮短或為零,來縮短PLC系統(tǒng)周期Τ2的新的解決方法。參照圖5中的(b)來說明該新的解決方法。
[0076]參照圖5中的(b),本實施方式的CPU單元10在一個PLC系統(tǒng)周期內(nèi)發(fā)送主要用于收集IN數(shù)據(jù)的通信幀50A和與圖5中的(a)相同的通信幀50。通過恰當(dāng)設(shè)置該通信幀50A的發(fā)送時刻,實際能夠忽視通信處理所需時間。也就是,如果在開始運(yùn)行將從各從屬裝置收集到的IN數(shù)據(jù)作為構(gòu)成要素的輸入處理66之前,使用于收集IN數(shù)據(jù)的通信幀50A返回主裝置,則能夠立即運(yùn)行輸入處理66。
[0077]在本實施方式的CPU單元10中,能夠?qū)嶋H上使通信處理所需的時間為零,所運(yùn)行的系統(tǒng)程序65實際上只包含輸出處理62及輸入處理66。也就是,在從主裝置發(fā)送圖5中的(a)所示的關(guān)聯(lián)技術(shù)的通信幀50之前,發(fā)送用于收集IN數(shù)據(jù)(反饋值)的通信幀50A。從而,無需等待輸入處理66的運(yùn)行的開始,并且能夠?qū)⑼ㄟ^輸出處理62生成的通信幀50立即發(fā)送。
[0078]S卩,通信控制器110(通信處理部)與處理器100(運(yùn)算部)中的輸出處理62的運(yùn)行聯(lián)動地,開始使含有OUT數(shù)據(jù)(輸出數(shù)據(jù)或指令值)的通信幀50(第一數(shù)據(jù)流)巡回傳輸給一個以上遠(yuǎn)程裝置40(從屬裝置)。并且,就通信控制器110(通信處理部)而言,在比處理器100(運(yùn)算部)輸入處理66的運(yùn)行的開始時刻提前預(yù)設(shè)期間的時刻,開始巡回傳輸用于取得一個以上遠(yuǎn)程裝置40(從屬裝置)從控制對象收集的信息(現(xiàn)場信息或IN數(shù)據(jù))的通信幀50A(第二數(shù)據(jù)流)。此外,發(fā)送通信幀50A的開始時刻,只要是所發(fā)送的通信幀50A從全部從屬裝置中收集IN數(shù)據(jù),然后在對應(yīng)的PLC系統(tǒng)周期的輸入處理66開始之前返回主裝置即可,可以是任何時刻。但是,必須要不影響通信幀50的發(fā)送,因此優(yōu)選將發(fā)送之后通信幀50A返回主裝置的時刻設(shè)置在輸入處理66開始之前。
[0079]另外,可以在從主裝置發(fā)送的通信幀50A被送出后,且返回主裝置之前,從主裝置發(fā)送通信幀50。相反,可以在從主裝置送出通信幀50之后,且返回主裝置之前,從主裝置發(fā)送通信幀50A。也就是,只要通信幀50的發(fā)送期間和通信幀50A不反復(fù)即可,可以任意設(shè)置兩者的發(fā)送開始時刻。
[0080]S卩,無論其中一方通信幀發(fā)送之后,該通信幀在現(xiàn)場網(wǎng)絡(luò)4中巡回一次到達(dá)主裝置與否,都能夠發(fā)送另一方的通信幀。換言之,能夠彼此獨(dú)立地確定一方通信幀進(jìn)行一個巡回后到達(dá)主裝置的到達(dá)時刻與另一方通信幀的發(fā)送時刻。
[0081]通過這樣的處理,能夠使主裝置的等待時間實際上變?yōu)榱?。比較圖5中的(a)和圖5中的(b)中示出的時序圖可知,能夠使PLC系統(tǒng)周期的長度縮短通信處理64所需的時間。
[0082]<F.發(fā)送時刻的確定方法>
[0083 ]接著,對確定通信幀50A的發(fā)送時刻的一些方法進(jìn)行示例。
[0084](I)通過實際測量來確定通信幀一巡回周期的方法
[0085]如圖5中的(b)所示,如果已知通信幀50A從主裝置中送出并在全部從屬裝置中巡回一次之后返回主裝置為止的時間,即通信幀一巡回周期D2,則能夠確定通信幀50A的發(fā)送時刻。即,只要在比輸入處理66的開始時刻提前通信幀一巡回周期D2的時間的時刻,發(fā)送通信幀50AS卩可。
[0086]在處理器100中,控制相關(guān)的程序(系統(tǒng)程序65及用戶程序70)的運(yùn)行時刻是已知的,因此能夠事先知道輸入處理66的開始時刻。因此,以與系統(tǒng)程序65及用戶程序70的運(yùn)行同步的方式,根據(jù)通信幀一巡回周期D2的長度來確定通信幀50A的發(fā)送時刻。也就是,通信幀一巡回周期D2相當(dāng)于用于確定通信幀50A的發(fā)送時刻的偏移值。
[0087]典型地,通信幀一巡回周期D2是在由主裝置及一個以上從屬裝置構(gòu)成現(xiàn)場網(wǎng)絡(luò)4時所運(yùn)行的初始化處理中被實際測量的。也就是,為了在主裝置和一個以上從屬裝置之間構(gòu)筑網(wǎng)絡(luò),作為初始化處理在裝置間交換所需信息,在該信息的交換中,實際測量通信幀一巡回周期D2。所實際測量到的通信幀一巡回周期D2的長度被保存在CHJ單元10內(nèi),使用該值,每次確定通信幀50A的發(fā)送時刻。也就是,通信幀一巡回周期D2的長度包含在網(wǎng)絡(luò)初始結(jié)構(gòu)結(jié)果中。
[0088]這樣,主處理裝置2(主裝置)基于事先存儲的偏移值,以輸入處理66的運(yùn)行開始時刻為基準(zhǔn),確定發(fā)送通信幀50A(第二數(shù)據(jù)流)的時刻。典型地,主處理裝置2(主裝置)基于網(wǎng)絡(luò)初始結(jié)構(gòu)結(jié)果確定偏移值。
[0089](2)通過仿真來確定通信幀一巡回周期的方法
[0090]如上所述,也可采用仿真等來預(yù)測算出通信幀一巡回周期,由此來代替通過實際測量來確定通信幀一巡回周期的方法。更具體地,基于連接在現(xiàn)場網(wǎng)絡(luò)4的從屬裝置的數(shù)量及各從屬裝置的種類(能夠推定各從屬裝置的處理能力及數(shù)據(jù)處理量)等,能夠估算出通信幀50A在現(xiàn)場網(wǎng)絡(luò)4中巡回一次所需的時間。即使不進(jìn)行實際測量,也能夠事先推定通信幀一巡回周期D,因此程序設(shè)計變得更容易。
[0091]此時,通信幀一巡回周期D2作為用于確定通信幀50A的發(fā)送時刻的偏移值使用。也就是,主處理裝置2(主裝置)基于事先存儲的偏移值,以輸入處理66的運(yùn)行開始時刻為基準(zhǔn),確定發(fā)送通信幀50A(第二數(shù)據(jù)流)的時刻。如上所述,該偏移值(通信幀一巡回周期D2)可以通過仿真來確定。
[0092]此外,在現(xiàn)場網(wǎng)絡(luò)4中設(shè)有通用計時器(計數(shù)器),以使主裝置及各從屬裝置之間能夠獲得同步。因此,可以將發(fā)送通信幀50A(第二數(shù)據(jù)流)的時刻確定為通過該通用計時器(計數(shù)器)進(jìn)行計數(shù)的時間(計數(shù)值)的絕對值,也可確定為以輸入處理66的運(yùn)行開始時刻為基準(zhǔn)的相對值。
[0093]<G.通信幀的數(shù)據(jù)結(jié)構(gòu)及從屬裝置中的處理>
[0094]接著,對通信幀50、50A以及從屬裝置中的處理進(jìn)行說明。如上所述,基本上,通信幀50A只要能夠收集IN數(shù)據(jù)即可。因此,作為通信幀50A的數(shù)據(jù)結(jié)構(gòu),可以采用根據(jù)IN數(shù)據(jù)收集進(jìn)行特殊化的結(jié)構(gòu),也可采用與通信幀50相同的結(jié)構(gòu)。
[0095]以下,對通信幀50、50A的一些數(shù)據(jù)結(jié)構(gòu)以及與各數(shù)據(jù)結(jié)構(gòu)對應(yīng)的從屬裝置中的處理進(jìn)行說明。
[0096]圖6是表示本實施方式的PLC系統(tǒng)I中使用的通信幀的數(shù)據(jù)結(jié)構(gòu)的例子的圖。
[0097](I)通信幀50A采用縮短的通信幀的情況
[0098]圖6中的(a)中示出作為通信幀50A的數(shù)據(jù)結(jié)構(gòu)采用了與通信幀50的數(shù)據(jù)結(jié)構(gòu)相比被縮短的結(jié)構(gòu)的例子。更具體地,在通常的通信幀50中,在幀頭及幀腳之間分別設(shè)置有分配給各從屬裝置的OUT數(shù)據(jù)及IN數(shù)據(jù)用數(shù)據(jù)區(qū)域。并且,幀頭存儲有如下的命令(IN數(shù)據(jù)刷新命令):指示各從屬裝置將輸入本地的現(xiàn)場信息寫入所分配的IN數(shù)據(jù)的數(shù)據(jù)區(qū)域。各從屬裝置根據(jù)幀頭中的IN數(shù)據(jù)刷新命令,在分配給本地的IN數(shù)據(jù)的數(shù)據(jù)區(qū)域?qū)懭胱钚碌姆答佒?。同時,各從屬裝置從分配給本地的OUT數(shù)據(jù)的數(shù)據(jù)區(qū)域中讀取OUT數(shù)據(jù)(指令值)并運(yùn)行處理。
[0099]與此相比,在圖6中的(a)所示的被縮短的通信幀50A中,OUT數(shù)據(jù)的數(shù)據(jù)區(qū)域被刪除,僅有IN數(shù)據(jù)的數(shù)據(jù)區(qū)域。幀頭上存儲有針對各從屬裝置的IN數(shù)據(jù)刷新命令,因此各從屬裝置根據(jù)幀頭中的IN數(shù)據(jù)刷新命令,在分配給本地的IN數(shù)據(jù)的數(shù)據(jù)區(qū)域?qū)懭胱钚碌姆答佒?。從而,能夠利用通信?0A來實現(xiàn)IN數(shù)據(jù)的收集。并且,由于不存在OUT數(shù)據(jù)的數(shù)據(jù)區(qū)域,因此可以使通信幀50A的幀長度(數(shù)據(jù)量)變短。也就是,能夠使通信幀50A的通信幀一巡回周期變短,與通信幀5相比時間上的余裕變大。
[0100](2)通信幀50A的OUT數(shù)據(jù)被設(shè)為無效值的情況
[0101]下面,圖6中的(b)中示出的通信幀50A表示具有與通信幀50相同的數(shù)據(jù)結(jié)構(gòu)的例子。也就是,圖6中的(b)中示出的例中,通信幀50(第一數(shù)據(jù)流)及通信幀50A(第二數(shù)據(jù)流)具有相同的數(shù)據(jù)結(jié)構(gòu)。
[0102]在此,作為通信幀50A的OUT數(shù)據(jù)被設(shè)為無效值。在圖6中的(b)所示的例子中,通信幀50A的OUT數(shù)據(jù)的各數(shù)據(jù)區(qū)域中存儲有“null值(無效值)”,各從屬裝置即使接收到通信幀50A,也無法讀取有效的OUT數(shù)據(jù)。即,通信幀50A(第二數(shù)據(jù)流)所含的OUT數(shù)據(jù)(輸出數(shù)據(jù))被無效。
[0103]此外,在OUT數(shù)據(jù)的各數(shù)據(jù)區(qū)域可以不存儲“null值(無效值)”,而通過存儲不能成為OUT數(shù)據(jù)的值(例如,負(fù)值等),從而被無效。
[0104]通信幀50與通信幀50A的數(shù)據(jù)結(jié)構(gòu)相同,因此均包含IN數(shù)據(jù)刷新命令。也就是,通信幀50(第一數(shù)據(jù)流)及通信幀50A(第二數(shù)據(jù)流)均包含用于從從屬裝置獲取信息的指令(IN數(shù)據(jù)刷新命令)及OUT數(shù)據(jù)(輸出數(shù)據(jù))。
[0105]這樣,通過使通信幀50和通信幀50A之間共用數(shù)據(jù)結(jié)構(gòu),能夠共用主裝置中的通信幀制作處理,在實現(xiàn)本實施方式的處理時,能夠避免安裝方式變復(fù)雜。
[0106](3)聲明通信幀50A的OUT數(shù)據(jù)為無效值的情況
[0107]圖6中的(C)中示出通信幀50A具有與通信幀50相同的數(shù)據(jù)結(jié)構(gòu)的例子。也就是,在圖6中的(b)所示的例子中,通信幀50(第一數(shù)據(jù)流)及通信幀50A(第二數(shù)據(jù)流)具有相同的數(shù)據(jù)結(jié)構(gòu)。
[0108]與通信幀50—樣,在通信幀50A的OUT數(shù)據(jù)中也存儲有通過對控制對象進(jìn)行控制所需的程序的最近一次運(yùn)行算出的指令值(OUT數(shù)據(jù))。但是,幀頭存儲有如下的聲明(OUT數(shù)據(jù)無效聲明):表示在各從屬裝置的OUT數(shù)據(jù)的數(shù)據(jù)區(qū)域中存儲的命令值是無效的。根據(jù)該OUT數(shù)據(jù)無效聲明,各從屬裝置運(yùn)行作廢所接收的指令值(OUT數(shù)據(jù))的處理。即,各從屬裝置能夠作廢通信幀50A(第二數(shù)據(jù)流)中含有的輸出數(shù)據(jù)。在圖6中的(C)中示出的例子中,通過采用OUT數(shù)據(jù)無效聲明,來使通信幀50A(第二數(shù)據(jù)流)中含有的OUT數(shù)據(jù)(輸出數(shù)據(jù))實際被無效。
[0109]此外,通過OUT數(shù)據(jù)無效聲明,無論OUT數(shù)據(jù)的數(shù)據(jù)區(qū)域中存儲的是什么值都會被無效,因此在該數(shù)據(jù)區(qū)域中可以存儲任意值。但是,從安裝方面來看,優(yōu)選使用最近一次運(yùn)行程序算出的OUT數(shù)據(jù)。
[0110]通信幀50與通信幀50A,由于數(shù)據(jù)結(jié)構(gòu)相同,因此均包含用于從從屬裝置獲取信息的指令(IN數(shù)據(jù)刷新命令)及OUT數(shù)據(jù)(輸出數(shù)據(jù))。
[0111]這樣,通信幀50和通信幀50A之間共用數(shù)據(jù)結(jié)構(gòu),能夠共用主裝置中的通信幀制作處理,在實現(xiàn)本實施方式的處理時,能夠避免安裝方式變復(fù)雜。
[0112](4)作為通信幀50A重新發(fā)送上次發(fā)送的通信幀50的情況
[0113]圖6中的(a)?圖6中的(C)中示出采用與通常的通信幀50具有不同數(shù)據(jù)結(jié)構(gòu)的通信幀50A的例子,但作為通信幀50A也可米用與最近一次發(fā)送的通信幀50完全相同的通信幀。也就是,也可將前一個PLC系統(tǒng)周期中發(fā)送的通信幀50在當(dāng)前PLC系統(tǒng)周期中再次發(fā)送。無論是哪個通信幀都含有最新OUT數(shù)據(jù)組,因此作為各從屬裝置不存在異常舉動的情況。
[0114]通過采用這樣的結(jié)構(gòu),可進(jìn)一步簡化用于實現(xiàn)本實施方式的通信處理的安裝結(jié)構(gòu)。
[0115](5)其他結(jié)構(gòu)
[0116]此外,通信幀50A與通信幀50之間的數(shù)據(jù)結(jié)構(gòu)不是必須相同。進(jìn)而,無需使各通信幀中存儲的IN數(shù)據(jù)和OUT數(shù)據(jù)的數(shù)據(jù)長度相同。為了縮短通信幀轉(zhuǎn)送所需時間,也可靈活地選擇所需最小限的數(shù)據(jù)長度。或者,根據(jù)網(wǎng)絡(luò)上的通信幀的統(tǒng)計信息等預(yù)先推測IN數(shù)據(jù)及OUT數(shù)據(jù)的數(shù)據(jù)長度的最佳值,將通信幀確定為所推測的數(shù)據(jù)長度。
[0117]<Η.安裝例>
[0118]接著,對上述通信幀的發(fā)送相關(guān)的幾個安裝例進(jìn)行例示。
[0119]圖7是表示本實施方式的CPU單元10的安裝例的圖。
[0120](I)在控制器110的內(nèi)部觸發(fā)通信幀的發(fā)送的安裝例
[0121]在圖7中的(a)所示的安裝例中,通信控制器110包括安裝有控制引擎的FPGA及安裝有模擬/數(shù)字轉(zhuǎn)換和存儲器等的信號處理電路的ASIC。在該安裝例中,安裝有控制引擎FPGA發(fā)出內(nèi)部信號,從而生成通信幀50A并發(fā)送。通過使用這樣的FPGA,在處理器100中無需進(jìn)行時刻管理等,并且能夠進(jìn)行更高速的控制。
[0122](2)處理器100觸發(fā)通信幀的發(fā)送的安裝例
[0123]在圖7中的(a)所示的安裝例中,在運(yùn)行對控制對象進(jìn)行控制所需的程序(用戶程序或系統(tǒng)程序等)的處理器100中,可以使管理時刻的線程運(yùn)行,由該線程觸發(fā)通信幀50A。此時,通信幀50A的生成及發(fā)送相關(guān)的內(nèi)部指令從處理器100賦給通信控制器110。
[0124](3)其他處理器觸發(fā)通信幀的發(fā)送的安裝例
[0125]在圖7中的(b)所示的安裝例中,除了運(yùn)行對控制對象進(jìn)行控制所需的程序(用戶程序或系統(tǒng)程序等)的處理器100_1之外,還安裝有運(yùn)行對時刻進(jìn)行管理的線程的其他處理器100_2。處理器100_2觸發(fā)通信幀50A。
[0126](4)專用處理器觸發(fā)通信幀的發(fā)送的安裝例
[0127]圖7中的(b)中示出設(shè)有與通信控制器110連接的專用處理器160的安裝例。在該安裝例中,專用處理器160對時刻進(jìn)行管理,而且與處理器100相獨(dú)立,向通信控制器110賦給用于發(fā)送通信幀50A的內(nèi)部指令。
[0128]以上,對四個典型的安裝例進(jìn)行了例示,然而不限于這些安裝例,可以根據(jù)所需的用途和規(guī)格等,采用任意的軟件和/或硬件的組合來安裝。
[0129]<1.變形例 >
[0130]在上述實施方式中,例示了所謂環(huán)形式的網(wǎng)絡(luò),但也可適用菊花鏈形式的網(wǎng)絡(luò)。關(guān)于這樣的菊花鏈形式的網(wǎng)絡(luò),參照圖8來示例。
[0131 ]圖8是表示本實施方式的變形例的PLC系統(tǒng)IA的整體結(jié)構(gòu)的示意圖。參照圖8,PLC系統(tǒng)IA包括主處理裝置2(主裝置),一個以上遠(yuǎn)程裝置40(從屬裝置),這些裝置通過菊花鏈形式的現(xiàn)場網(wǎng)絡(luò)連接。在現(xiàn)場網(wǎng)絡(luò)中,通信幀從主裝置依次轉(zhuǎn)送至各從屬裝置(下行幀),在終端部折返后,通信幀從各從屬裝置依次轉(zhuǎn)送至主裝置(上行幀)。
[0132]當(dāng)采用這樣的菊花鏈形式時,CPU單元10具有與菊花鏈形式相符合的通信控制器110A。關(guān)于其他結(jié)構(gòu)和處理等與上述的相同,因此不反復(fù)詳細(xì)說明。
[0133]另外,雖然在上述實施方式及其變形例中例示了現(xiàn)場網(wǎng)絡(luò)上的數(shù)據(jù)傳輸,但也適用于PLC內(nèi)的連接CPU單元10與1單元20的內(nèi)部總線。
[0134]<J.優(yōu)點(diǎn) >
[0135]根據(jù)本實施方式,在主裝置與一個以上從屬裝置通過網(wǎng)絡(luò)連接的結(jié)構(gòu)中,先行運(yùn)行主裝置從一個以上從屬裝置經(jīng)由網(wǎng)絡(luò)收集現(xiàn)場信息的處理。因此,不用等待現(xiàn)場信息的收集結(jié)束后所運(yùn)行的輸入處理。也就是,將OUT數(shù)據(jù)(指令值)發(fā)送至各從屬裝置的處理和從各從屬裝置收集IN數(shù)據(jù)的處理之間不存在等待時間,因此能夠使運(yùn)行對控制對象進(jìn)行控制所需的程序(包括用戶程序及系統(tǒng)程序)的周期(PLC系統(tǒng)周期)變短。也就是,能夠提供以更高速地運(yùn)行用戶程序的環(huán)境。由此,能夠更高速地運(yùn)行動作控制邏輯等,因此能夠提高控制精度。
[0136]應(yīng)認(rèn)為本次公開的實施方式在所有方面上都是例示,而不是限制性的。本發(fā)明的保護(hù)范圍不是以上述說明表示,而通過權(quán)利要求書表示,包含與權(quán)利要求書等同的含義及范圍內(nèi)的所有變更。
[0137]附圖標(biāo)記說明
[0138]UlA PLC系統(tǒng),2主處理裝置,
[0139]4現(xiàn)場網(wǎng)絡(luò),10 CPU單元,
[0140]20 1單元,30電源單元,
[0141]40遠(yuǎn)程裝置,50、50A通信幀,
[0142]51幀頭,52、53、54數(shù)據(jù)區(qū)域,
[0143]55幀腳,60、65系統(tǒng)程序,
[0144]62輸出處理,64通信處理,
[0145]66輸入處理,70用戶程序,
[0146]100處理器,102主存儲器,
[0147]104非易失性存儲器,106內(nèi)部總線控制器,
[0148]108,109內(nèi)部總線,110、110A、410通信控制器,
[0149]112,412共有存儲器,120,430發(fā)送緩沖器,
[0150]122,432發(fā)送電路,130、420接收緩沖器,
[0151]132,422接收電路,160專用處理器,
[0152]400運(yùn)算處理部,402輸入電路,
[0153]404輸出電路。
【主權(quán)項】
1.一種用于對控制對象進(jìn)行控制的控制系統(tǒng),其中, 具有: 主裝置,包括運(yùn)算部及通信處理部;以及 一個以上從屬裝置,經(jīng)由網(wǎng)絡(luò)與所述主裝置連接, 所述通信處理部管理數(shù)據(jù)流在所述網(wǎng)絡(luò)上的巡回傳輸,所述數(shù)據(jù)流含有所述主裝置及所述一個以上從屬裝置進(jìn)行處理的數(shù)據(jù), 所述運(yùn)算部以預(yù)設(shè)的運(yùn)行周期反復(fù)運(yùn)行輸出處理及輸入處理,并且在所述輸出處理及所述輸入處理的非運(yùn)行期間,反復(fù)運(yùn)行程序運(yùn)行處理,所述輸入處理包括根據(jù)由所述一個以上從屬裝置收集的來自所述控制對象的信息來更新輸入數(shù)據(jù)的處理,所述輸出處理包括生成輸出數(shù)據(jù)的處理,所述輸出數(shù)據(jù)含有所述程序運(yùn)行處理的運(yùn)行結(jié)果, 所述通信處理部以與所述運(yùn)算部中的所述輸出處理的運(yùn)行聯(lián)動的方式,開始將含有所述輸出數(shù)據(jù)的第一數(shù)據(jù)流巡回傳輸給所述一個以上從屬裝置, 所述通信處理部在比所述運(yùn)算部中的所述輸入處理的運(yùn)行的開始時刻提前預(yù)設(shè)期間的時刻,開始巡回傳輸?shù)诙?shù)據(jù)流,所述第二數(shù)據(jù)流用于獲取所述一個以上從屬裝置從所述控制對象收集的信息。2.根據(jù)權(quán)利要求1所述的控制系統(tǒng),其中,所述通信處理部在發(fā)送了所述第一數(shù)據(jù)流后,無論該第一數(shù)據(jù)流到達(dá)所述主裝置與否,發(fā)送所述第二數(shù)據(jù)流。3.根據(jù)權(quán)利要求1或2所述的控制系統(tǒng),其中,所述第一數(shù)據(jù)流及所述第二數(shù)據(jù)流具有相同的數(shù)據(jù)結(jié)構(gòu)。4.根據(jù)權(quán)利要求1至3中任一項所述的控制系統(tǒng),其中,所述第一數(shù)據(jù)流及所述第二數(shù)據(jù)流均含有用以從所述一個以上從屬裝置獲取信息的指令及所述輸出數(shù)據(jù)。5.根據(jù)權(quán)利要求4所述的控制系統(tǒng),其中,所述第二數(shù)據(jù)流所含的所述輸出數(shù)據(jù)無效。6.根據(jù)權(quán)利要求4所述的控制系統(tǒng),其中,所述一個以上從屬裝置中的各從屬裝置將所述第二數(shù)據(jù)流所含的所述輸出數(shù)據(jù)作廢。7.根據(jù)權(quán)利要求1至5中任一項所述的控制系統(tǒng),其中,所述主裝置基于事先存儲的偏移值,以所述輸入處理的運(yùn)行開始時刻為基準(zhǔn),確定發(fā)送所述第二數(shù)據(jù)流的時刻。8.根據(jù)權(quán)利要求7所述的控制系統(tǒng),其中,所述主裝置基于所述網(wǎng)絡(luò)的初始結(jié)構(gòu)結(jié)果,確定所述偏移值。9.一種用于對控制對象進(jìn)行控制的控制裝置, 具有: 運(yùn)算部;以及 通信處理部,與所述運(yùn)算部結(jié)合, 所述控制裝置經(jīng)由網(wǎng)絡(luò)與一個以上從屬裝置連接, 所述通信處理部管理數(shù)據(jù)流在所述網(wǎng)絡(luò)上的巡回傳輸,所述數(shù)據(jù)流含有所述通信處理部本身及所述一個以上從屬裝置進(jìn)行處理的數(shù)據(jù), 所述運(yùn)算部以預(yù)設(shè)的運(yùn)行周期反復(fù)運(yùn)行輸出處理及輸入處理,并且在所述輸出處理及所述輸入處理的非運(yùn)行期間,反復(fù)運(yùn)行程序運(yùn)行處理,所述輸入處理包括根據(jù)由所述一個以上從屬裝置收集的來自所述控制對象的信息來更新輸入數(shù)據(jù)的處理,所述輸出處理包括生成輸出數(shù)據(jù)的處理,所述輸出數(shù)據(jù)含有所述程序運(yùn)行處理的運(yùn)行結(jié)果, 所述通信處理部以與所述運(yùn)算部中的所述輸出處理的運(yùn)行聯(lián)動的方式,開始將含有所述輸出數(shù)據(jù)的第一數(shù)據(jù)流巡回傳輸給所述一個以上從屬裝置, 所述通信處理部在比所述運(yùn)算部中的所述輸入處理的運(yùn)行的開始時刻提前預(yù)設(shè)期間的時刻,開始巡回傳輸?shù)诙?shù)據(jù)流,所述第二數(shù)據(jù)流用于獲取所述一個以上從屬裝置從所述控制對象收集的信息。10.—種用于對控制對象進(jìn)行控制的控制裝置中的控制方法, 所述控制裝置經(jīng)由網(wǎng)絡(luò)與一個以上從屬裝置連接,對數(shù)據(jù)流在所述網(wǎng)絡(luò)上的巡回傳輸進(jìn)行管理,所述數(shù)據(jù)流含有該控制裝置及所述一個以上從屬裝置進(jìn)行處理的數(shù)據(jù), 所述控制方法包括: 以預(yù)設(shè)的運(yùn)行周期反復(fù)運(yùn)行輸出處理及輸入處理,并且在所述輸出處理及所述輸入處理的非運(yùn)行期間,反復(fù)運(yùn)行程序運(yùn)行處理的步驟,所述輸入處理包括根據(jù)由所述一個以上從屬裝置收集的來自所述控制對象的信息來更新輸入數(shù)據(jù)的處理,所述輸出處理包括生成輸出數(shù)據(jù)的處理,所述輸出數(shù)據(jù)含有所述程序運(yùn)行處理的運(yùn)行結(jié)果; 以與所述輸出處理的運(yùn)行聯(lián)動的方式,開始將含有所述輸出數(shù)據(jù)的第一數(shù)據(jù)流巡回傳輸給所述一個以上從屬裝置的步驟;以及 在比所述輸入處理的運(yùn)行的開始時刻提前預(yù)設(shè)期間的時刻,開始巡回傳輸?shù)诙?shù)據(jù)流的步驟,所述第二數(shù)據(jù)流用于獲取所述一個以上從屬裝置從所述控制對象收集的信息。
【文檔編號】H04L12/42GK106063197SQ201580011512
【公開日】2016年10月26日
【申請日】2015年1月15日 公開號201580011512.0, CN 106063197 A, CN 106063197A, CN 201580011512, CN-A-106063197, CN106063197 A, CN106063197A, CN201580011512, CN201580011512.0, PCT/2015/50921, PCT/JP/15/050921, PCT/JP/15/50921, PCT/JP/2015/050921, PCT/JP/2015/50921, PCT/JP15/050921, PCT/JP15/50921, PCT/JP15050921, PCT/JP1550921, PCT/JP2015/050921, PCT/JP2015/50921, PCT/JP2015050921, PCT/JP201550921
【發(fā)明人】水谷征爾, 李天兵, 米田光宏
【申請人】歐姆龍株式會社