控制器、信息處理裝置及程序的制作方法
【專利摘要】提供控制器、信息處理裝置及程序,在包含控制裝置(控制器)和其他系統(tǒng)的控制系統(tǒng)中,使得調(diào)試使PLC與其他系統(tǒng)協(xié)同進行動作的用戶程序的處理變得容易。CPU單元104具有通信接口,執(zhí)行用戶程序(186),按照包含在用戶程序(186)中的指令,調(diào)出DB連接服務(wù)來生成用于訪問數(shù)據(jù)庫裝置(400)的指令語句。DB連接服務(wù)切換第一模式及第二模式來進行動作,在第一模式中生成與訪問指令相對應(yīng)的指令語句,并將所生成的指令語句發(fā)送至數(shù)據(jù)庫系統(tǒng),并將其響應(yīng)結(jié)果響應(yīng)給用戶程序(186)。在第二模式中,將與指令語句相對應(yīng)的執(zhí)行結(jié)果響應(yīng)給用戶程序(186),而不向數(shù)據(jù)庫裝置(400)發(fā)送指令語句。
【專利說明】控制器、信息處理裝置及程序
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及包含周期性地執(zhí)行用戶程序的控制器的控制系統(tǒng),特別涉及與數(shù)據(jù)庫系統(tǒng)連接的控制系統(tǒng)。
【背景技術(shù)】
[0002]在很多的生產(chǎn)現(xiàn)場中使用的機械或設(shè)備,典型地利用主要由可編程控制器(Programmable Logic Controller,下面還稱為“PLC”)等控制裝置構(gòu)成的控制系統(tǒng)來進行控制。PLC等控制器用于對工廠等的自動機械進行控制等,具有多個輸入輸出功能,例如依次讀取從傳感器等輸出的值來保持?jǐn)?shù)據(jù)。
[0003]另外,近年來已知有連接到數(shù)據(jù)庫系統(tǒng)上的PLC。PLC將PLC所保持的數(shù)據(jù)積聚到數(shù)據(jù)庫系統(tǒng)中。由此,能夠使得與數(shù)據(jù)庫連接的信息處理裝置之間的數(shù)據(jù)的共有更加容易,并且能夠通過收集各種數(shù)據(jù)來使數(shù)據(jù)的統(tǒng)計及分析等更加容易。例如,日本特開2012 -108642號公報(專利文獻I)公開了具有如下功能的PLC,該功能是指,將包含多個用于訪問數(shù)據(jù)庫的SQL語句的SQL處理組發(fā)送至數(shù)據(jù)庫功能。
[0004]現(xiàn)有技術(shù)文獻
[0005]專利文獻
[0006]專利文獻1:日本特開2012 — 108642號公報
[0007]在對PLC和其他系統(tǒng)(數(shù)據(jù)庫系統(tǒng)等)進行連接的結(jié)構(gòu)中,有時需要在使其他系統(tǒng)運行之前啟動PLC。例如,存在如下情況:利用實機(real machine)對PLC的控制動作進行驗證,并且想要在日后對與數(shù)據(jù)庫系統(tǒng)等其他系統(tǒng)連接的部分的動作進行驗證。在對PLC的控制動作的驗證結(jié)束后,要對PLC與其他系統(tǒng)結(jié)合的情況的動作進行評價的情況下,在其他系統(tǒng)還未運行的狀態(tài)下,需要通過模擬程序來啟動該其他系統(tǒng),并利用模擬系統(tǒng)來確認(rèn)PLC與其他系統(tǒng)之間的連接。因此,在與PLC連接的其他系統(tǒng)運行之前的階段,需要啟動模擬系統(tǒng)等,導(dǎo)致在PLC中進行動作的用戶程序的調(diào)試變得繁雜。
[0008]因此,在采用將PLC連接到其他系統(tǒng)上的結(jié)構(gòu)的情況下,需要對PLC與其他系統(tǒng)協(xié)同進行動作的用戶程序的調(diào)試變得容易的技術(shù)。
【發(fā)明內(nèi)容】
[0009]本發(fā)明的一個技術(shù)方案的控制器包括:通信接口,其用于與數(shù)據(jù)庫系統(tǒng)連接;指令執(zhí)行部,其執(zhí)行用于對控制對象進行控制的用戶程序;訪問處理部,其在由指令執(zhí)行部執(zhí)行包含用于訪問數(shù)據(jù)庫系統(tǒng)的訪問指令的用戶程序時,控制按照與訪問指令相對應(yīng)的指令語句而經(jīng)由通信接口對數(shù)據(jù)庫系統(tǒng)進行的訪問;訪問處理部,能夠以第一模式及第二模式進行動作;在第一模式中,訪問處理部將與訪問指令相對應(yīng)的指令語句發(fā)送至數(shù)據(jù)庫系統(tǒng),并將該指令語句的響應(yīng)結(jié)果響應(yīng)給用戶程序;在第二模式中,訪問處理部將與指令語句相對應(yīng)的執(zhí)行結(jié)果響應(yīng)給用戶程序,而不向數(shù)據(jù)庫系統(tǒng)發(fā)送指令語句。
[0010]優(yōu)選地,控制器也可以還具有用于對時刻進行計時的計時部;指令執(zhí)行部,也可以在用戶程序執(zhí)行規(guī)定的處理時,將處理內(nèi)容與由計時部計時得到的時刻相對應(yīng)關(guān)聯(lián)地保存至存儲器來作為日志;訪問處理部,也可以將與訪問指令相對應(yīng)的處理內(nèi)容與計時部計時得到的時刻相對應(yīng)關(guān)聯(lián)地保存至存儲器來作為日志。
[0011]優(yōu)選地,訪問處理部,也可以生成與訪問指令相對應(yīng)的指令語句,并將所生成的指令語句作為日志保存至存儲器。
[0012]優(yōu)選地,訪問處理部,也可以在第二模式中,對用戶程序進行表示用指令語句對數(shù)據(jù)庫系統(tǒng)的訪問正常結(jié)束的響應(yīng)或用指令語句對數(shù)據(jù)庫系統(tǒng)的訪問出錯的響應(yīng),作為與對對應(yīng)于訪問指令的指令語句相對應(yīng)的執(zhí)行結(jié)果。
[0013]優(yōu)選地,控制部也可以包括接受響應(yīng)時間的設(shè)定的響應(yīng)時間設(shè)定部;也可以在以第二模式進行動作的情況下,控制部在從處理的開始起經(jīng)過了所設(shè)定的響應(yīng)時間之后輸出與訪問指令相對應(yīng)的處理結(jié)果。
[0014]優(yōu)選地,控制器也可以具有輸入輸出部,該輸入輸出部與連接到控制器上的信息處理裝置進行數(shù)據(jù)的發(fā)送及接收;輸入輸出部,也可以按照信息處理裝置的要求,將訪問處理部對用戶程序的響應(yīng)結(jié)果輸出至信息處理裝置。
[0015]優(yōu)選地,輸入輸出部,也可以從信息處理裝置接受使訪問處理部以第一模式和第二模式中的哪個模式進行動作的指定;訪問處理部,也可以按照從信息處理裝置接受的指定切換第一模式及第二模式。
[0016]優(yōu)選地,用戶程序也可以包括指定指令,該指定指令用于指定以第一模式和第二模式中的哪個模式使訪問處理部進行動作;訪問處理部,也可以按照指定指令所表示的指定,以第一模式和第二模式中的某個模式進行動作。
[0017]本發(fā)明的一個技術(shù)方案的程序,用于對控制器的動作進行控制,控制器具有用于訪問數(shù)據(jù)庫系統(tǒng)的通信接口、處理器及存儲器;程序使處理器執(zhí)行如下步驟:執(zhí)行用于對控制對象進行控制的用戶程序,在執(zhí)行包含用于訪問數(shù)據(jù)庫系統(tǒng)的訪問指令的用戶程序時,控制按照與訪問指令相對應(yīng)的指令語句而經(jīng)由通信接口對數(shù)據(jù)庫系統(tǒng)進行的訪問;在控制按照與訪問指令相對應(yīng)的指令語句訪問數(shù)據(jù)庫系統(tǒng)的步驟中,能夠以第一模式及第二模式進行動作,使處理器,在第一模式中,將與訪問指令相對應(yīng)的指令語句發(fā)送至數(shù)據(jù)庫系統(tǒng),并將該指令語句的響應(yīng)結(jié)果響應(yīng)給用戶程序,在第二模式中,將與指令語句相對應(yīng)的執(zhí)行結(jié)果響應(yīng)給用戶程序,而不向數(shù)據(jù)庫系統(tǒng)發(fā)送指令語句。
[0018]本發(fā)明的一個技術(shù)方案的信息處理裝置,用于連接到控制器上,控制器具有:通信接口,其用于與數(shù)據(jù)庫系統(tǒng)連接;指令執(zhí)行部,其執(zhí)行用于對控制對象進行控制的用戶程序;訪問處理部,其在由指令執(zhí)行部執(zhí)行包含用于訪問數(shù)據(jù)庫系統(tǒng)的訪問指令的用戶程序時,控制按照與訪問指令相對應(yīng)的指令語句而經(jīng)由通信接口對數(shù)據(jù)庫系統(tǒng)進行的訪問;輸入輸出部,其與信息處理裝置連接,用于與信息處理裝置進行數(shù)據(jù)的發(fā)送與接收;訪問處理部,能夠以第一模式及第二模式進行動作;在第一模式中,訪問處理部將與訪問指令相對應(yīng)的指令語句發(fā)送至數(shù)據(jù)庫系統(tǒng),并將該指令語句的響應(yīng)結(jié)果響應(yīng)給用戶程序;在第二模式中,訪問處理部將與指令語句相對應(yīng)的執(zhí)行結(jié)果響應(yīng)給用戶程序,而不向數(shù)據(jù)庫系統(tǒng)發(fā)送指令語句;信息處理裝置具有:接收處理部,其經(jīng)由控制器的輸入輸出部接收訪問處理部對用戶程序的響應(yīng)結(jié)果;顯示處理部,其將用接收處理部接收的響應(yīng)結(jié)果顯示到監(jiān)視器上。
[0019]本發(fā)明的一個技術(shù)方案的控制器具有:用于連接數(shù)據(jù)庫系統(tǒng)的通信接口、處理器、存儲器;處理器用于進行如下處理:切換第一模式及第二模式來進行動作;執(zhí)行用于對控制對象進行控制的用戶程序,在執(zhí)行包含用于訪問數(shù)據(jù)庫系統(tǒng)的訪問指令的用戶程序時,控制按照與訪問指令相對應(yīng)的指令語句而經(jīng)由通信接口對數(shù)據(jù)庫系統(tǒng)進行的訪問;在以第一模式進行動作的情況下,將與訪問指令相對應(yīng)的指令語句發(fā)送至數(shù)據(jù)庫系統(tǒng),并將該指令語句的響應(yīng)結(jié)果響應(yīng)給用戶程序;在以第二模式進行動作的情況下,將與指令語句相對應(yīng)的執(zhí)行結(jié)果響應(yīng)給用戶程序,而不向數(shù)據(jù)庫系統(tǒng)發(fā)送指令語句。
[0020]根據(jù)本發(fā)明,在采用將PLC連接到其他系統(tǒng)上的結(jié)構(gòu)的情況下,能夠使得調(diào)試使PLC和其他系統(tǒng)協(xié)同進行動作的用戶程序處理變得容易。
【專利附圖】
【附圖說明】
[0021]圖1是示出了本實施方式的控制系統(tǒng)I的系統(tǒng)結(jié)構(gòu)的示意圖。
[0022]圖2是示出了表示本實施方式的PLC100的主要部分的硬件結(jié)構(gòu)的示意圖。
[0023]圖3是示出了本實施方式的PLC100的軟件結(jié)構(gòu)的示意圖。
[0024]圖4是示出了連接到本實施方式的PLC100上使用的輔助裝置300的硬件結(jié)構(gòu)的示意圖。
[0025]圖5是示出了本實施方式的PLC100與數(shù)據(jù)庫裝置400之間的通信處理的概要以及日志記錄的概要的圖。
[0026]圖6是示出了本實施方式的PLC100以測試模式進行動作時的通信處理的概要以及日志記錄的概要的圖。
[0027]圖7是示出了運行日志184的圖。
[0028]圖8是示出了本實施方式的PLC100的處理步驟及數(shù)據(jù)庫裝置400的處理步驟的流程圖。
[0029]圖9是示出了測試模式中的PLC100的處理步驟的流程圖。
[0030]圖10是示出了輔助裝置300用于獲取運行日志184的處理的流程圖。
[0031]圖11是示出了輔助裝置300將以測試模式進行動作的指示賦予PLC100的處理步驟的例子的圖。
[0032]圖12是示出了本實施方式的輔助裝置300中提供的用戶接口的一個例子的圖。
[0033]附圖標(biāo)記的說明
[0034]I控制系統(tǒng),10檢測開關(guān),20繼電器,30伺服電機驅(qū)動器,32電機,100PLC,102電源單元,104CPU單元,10610單元,108PLC系統(tǒng)總線,110現(xiàn)場總線,112網(wǎng)絡(luò),114連接電纜,120處理器,122芯片集,124系統(tǒng)時鐘,126主存儲器,128非易失性存儲器,130USB連接器,140PLC系統(tǒng)總線控制器,142、152、162緩沖存儲器,144PLC系統(tǒng)總線控制電路,146、156、166DMA控制電路,148PLC系統(tǒng)總線連接器,150現(xiàn)場總線控制器,154現(xiàn)場總線控制電路,158現(xiàn)場總線連接器,160上位通信控制器,164上位通信控制電路,168上位通信連接器,170存儲卡接口,172存儲卡,1800S,184運行日志,184J SQL語句,1842日志文件,186用戶程序,188系統(tǒng)程序,190序列指令程序,192訪問處理程序,194輸入輸出處理程序,196接口處理程序,198排程器,200遠(yuǎn)程IO終端,202通信連接器,208終端總線,300輔助裝置,302CPU,304R0M, 306RAM, 308硬盤,310鍵盤,312鼠標(biāo),314監(jiān)視器,316光盤讀取裝置,330輔助程序,332光學(xué)記錄介質(zhì),388運行日志顯示部,389詳細(xì)信息顯示部,400數(shù)據(jù)庫裝置?!揪唧w實施方式】
[0035]參照附圖,詳細(xì)說明本發(fā)明的實施方式。此外,對于圖中的相同或等同的部分,標(biāo)注相同附圖標(biāo)記,不重復(fù)進行說明。
[0036]< A.系統(tǒng)結(jié)構(gòu)>
[0037]首先,說明本實施方式的控制系統(tǒng)的系統(tǒng)結(jié)構(gòu)。在本實施方式中,將對機械或設(shè)備等控制對象進行控制的可編程控制器(PLC)作為控制裝置的典型例子來進行說明。但是,本發(fā)明的控制裝置并不限定于PLC,能夠適用于各種控制裝置。
[0038]圖1是示出了本實施方式的控制系統(tǒng)I的系統(tǒng)結(jié)構(gòu)的示意圖。參照圖1,控制系統(tǒng)I包含PLC100、連接到PLC100上的輔助裝置300、接受來自PLC100的訪問的數(shù)據(jù)庫裝置400。PLC100周期性地執(zhí)行如后述的用戶程序,或者在發(fā)生事件時(按事件觸發(fā))執(zhí)行用戶程序。用戶程序是由PLC100的使用人員作成的。用戶例如能夠通過操作輔助裝置300來作成包含訪問指令的程序(源程序)。輔助裝置300將源程序變換為能夠在PLC100上執(zhí)行的形式,并將變換得到的用戶程序發(fā)送至PLC100。PLC100執(zhí)行用戶程序,能夠按照包含在用戶程序中的訪問指令來訪問數(shù)據(jù)庫裝置400。
[0039]S卩,PLC100及數(shù)據(jù)庫裝置400能夠經(jīng)由以太網(wǎng)(注冊商標(biāo))等的網(wǎng)絡(luò)112來互相交
換數(shù)據(jù)。
[0040]輔助裝置300是能夠與PLC100連接的信息處理裝置的典型例子。輔助裝置300經(jīng)由連接電纜114與PLC100相連接,向PLC100提供各種參數(shù)的設(shè)定、編程、顯示(監(jiān)視)、調(diào)試等的功能。在PLC100與輔助裝置300之間,典型地能夠按照USB(Universal Serial Bus:通用串行總線)標(biāo)準(zhǔn)來進行通信。
[0041]PLC100包含執(zhí)行控制運算的CPU單元104和一個以上的IO(Input/Output:輸入/輸出)單元106。這些單元能夠經(jīng)由PLC系統(tǒng)總線108互相交換數(shù)據(jù)。另外,利用電源單元102向這些單元供給適當(dāng)電壓的電源。
[0042]在控制系統(tǒng)I中,PLC100經(jīng)由(經(jīng)由PLC系統(tǒng)總線108相連接)IO單元106或現(xiàn)場總線110,或者經(jīng)由這兩者,與各種現(xiàn)場儀器互相交換數(shù)據(jù)。這些現(xiàn)場儀器包含用于對控制對象進行某種處理的促動器以及用于從控制對象獲取各種信息的傳感器等。在圖1中,作為這樣的現(xiàn)場儀器的一個例子,包括檢測開關(guān)10、繼電器20以及對電機32進行驅(qū)動的伺服電機驅(qū)動器30。另外,PLC100經(jīng)由現(xiàn)場總線110還與遠(yuǎn)程IO終端200相連接。遠(yuǎn)程IO終端200基本上與IO單元106同樣地進行與一般的輸入輸出處理相關(guān)的處理。更具體地,遠(yuǎn)程IO終端200包含用于與現(xiàn)場總線110進行數(shù)據(jù)傳輸處理的通信連接器202和一個以上的IO單元204。這些單元能夠經(jīng)由遠(yuǎn)程IO終端總線208互相交換數(shù)據(jù)。
[0043]< B.PLC100 的結(jié)構(gòu)>
[0044]接著,說明本實施方式的PLC100的結(jié)構(gòu)。圖2是示出了表示本實施方式的PLC100的主要部分的硬件結(jié)構(gòu)的示意圖。圖3是示出了本實施方式的PLC100的軟件結(jié)構(gòu)的示意圖。
[0045]參照圖2,說明PLC100的CPU單元104的硬件結(jié)構(gòu)。CPU單元104包含處理器120、芯片集122、系統(tǒng)時鐘124、主存儲器126、非易失性存儲器128、USB連接器130、PLC系統(tǒng)總線控制器140、現(xiàn)場總線控制器150、上位通信控制器160及存儲卡接口 170。在芯片集122和其他元件之間,經(jīng)由各種總線分別相結(jié)合。
[0046]處理器120及芯片集122典型地按照通用的計算機架構(gòu)構(gòu)成。即,處理器120解讀并執(zhí)行從芯片集122按照內(nèi)部時鐘依次供給來的指令代碼。芯片集122和與之身相連接的各種元件互相交換內(nèi)部數(shù)據(jù),并且生成處理器120所需的指令代碼。系統(tǒng)時鐘124生成預(yù)先規(guī)定的周期性的系統(tǒng)時鐘并將其提供給處理器120。芯片集122具有對由處理器120執(zhí)行運算處理的結(jié)果所得到的數(shù)據(jù)等進行緩存的功能。另外,芯片集122包含接受從系統(tǒng)時鐘124提供的時鐘來進行計時的計時芯片123。
[0047]CPU單元104具有作為存儲單元的主存儲器126及非易失性存儲器128。主存儲器126是易失性存儲區(qū)域,保持處理器120應(yīng)執(zhí)行的各種程序,并且還作為執(zhí)行各種程序時的工作用存儲器來使用。非易失性存儲器128非易失性地保持OS (Operating System:操作系統(tǒng))、系統(tǒng)程序、用戶程序、日志信息等。
[0048]USB連接器130是用于連接輔助裝置300和CPU單元104的接口。典型地,從輔助裝置300傳遞來的能夠執(zhí)行的程序等經(jīng)由USB連接器130導(dǎo)入至CPU單元104。
[0049]CPU單元104具有作為通信單元的PLC系統(tǒng)總線控制器140、現(xiàn)場總線控制器150及上位通信控制器160。這些通信電路進行數(shù)據(jù)的發(fā)送及接收。
[0050]PLC系統(tǒng)總線控制器140對經(jīng)由PLC系統(tǒng)總線108的數(shù)據(jù)的互相交換進行控制。更具體地,PLC系統(tǒng)總線控制器140包含緩沖存儲器142、PLC系統(tǒng)總線控制電路144及DMA(Dynamic Memory Access:動態(tài)內(nèi)存訪問)控制電路146。PLC系統(tǒng)總線控制器140經(jīng)由PLC系統(tǒng)總線連接器148與PLC系統(tǒng)總線108相連接。
[0051]現(xiàn)場總線控制器150包含緩沖存儲器152、現(xiàn)場總線控制電路154及DMA控制電路156?,F(xiàn)場總線控制器150經(jīng)由現(xiàn)場總線連接器158與現(xiàn)場總線110相連接。上位通信控制器160包含緩沖存儲器(簡稱為“緩存”)162、上位通信控制電路(簡稱為“CTR”)164及DMA控制電路(簡稱為“DMA”)166。上位通信控制器160經(jīng)由上位通信連接器168與網(wǎng)絡(luò)112相連接。
[0052]存儲卡接口 170連接存儲卡172和處理器120,該存儲卡172能夠安裝到CPU單元104上并能夠從CPU單元104上拆卸。
[0053]接著,參照圖3,說明用于實現(xiàn)本實施方式的PLC100所提供的各種功能的軟件結(jié)構(gòu)。包含在這些軟件中的指令代碼在適當(dāng)?shù)臅r刻被讀取,并被CPU單元104的處理器120執(zhí)行。
[0054]參照圖3,由CPU單元104執(zhí)行的軟件,具有0S180、系統(tǒng)程序188及用戶程序186。
[0055]0S180提供處理器120用于執(zhí)行系統(tǒng)程序188及用戶程序186的基本的執(zhí)行環(huán)境。
[0056]系統(tǒng)程序188是提供PLC100的基本功能的軟件組。具體地,系統(tǒng)程序188包含序列指令程序190、DB (數(shù)據(jù)庫)訪問處理程序192、輸入輸出處理程序194、工具(Tool)接口處理程序196及排程器198。
[0057]相對于此,用戶程序186是根據(jù)對控制對象的控制目的來任意作成的程序。即,用戶程序186是根據(jù)用控制系統(tǒng)I進行控制的對象來任意設(shè)計的。
[0058]用戶程序186與序列指令程序190協(xié)同地實現(xiàn)用戶的控制目的。即,用戶程序186通過利用序列指令程序190所提供的指令、函數(shù)、功能模塊等,來實現(xiàn)程序化的動作。因此,還有將用戶程序186及序列指令程序190統(tǒng)稱為“控制程序”的情況。[0059]就運行日志184而言,在隨著系統(tǒng)程序188及用戶程序186的執(zhí)行而產(chǎn)生預(yù)先規(guī)定的事件時,將所發(fā)生的該事件的信息與時刻信息相對應(yīng)關(guān)聯(lián)地保存至該運行日志184。即,在運行日志184中,保存有與系統(tǒng)程序188或用戶程序186或這兩者的執(zhí)行相對應(yīng)的各種信息來作為日志(履歷信息)。
[0060]下面,更詳細(xì)地說明各程序。
[0061]序列指令程序190包含如下的指令代碼組,該指令代碼組是指,隨著用戶程序186的執(zhí)行,調(diào)出在用戶程序186中被指定的序列指令的實體,并實現(xiàn)該指令的內(nèi)容的指令代碼組。
[0062]DB訪問處理程序192包含如下的指令代碼組,該指令代碼組用于,隨著用戶程序186的執(zhí)行,實現(xiàn)訪問數(shù)據(jù)庫裝置400所需的處理。DB訪問處理程序192包含與能夠在用戶程序186中指定的指令相對應(yīng)的執(zhí)行代碼。
[0063]輸入輸出處理程序194是指,對IO單元106和各種現(xiàn)場儀器之間的輸入數(shù)據(jù)的獲取及輸出數(shù)據(jù)的發(fā)送進行管理的程序。
[0064]工具(Tool)接口處理程序196提供用于與輔助裝置300之間互相交換數(shù)據(jù)的接□。
[0065]排程器198根據(jù)預(yù)先規(guī)定的優(yōu)先級或系統(tǒng)計時器的值等,來生成用于執(zhí)行控制程序的線程(thread)或過程(procedure)。
[0066]用戶程序186是如上述那樣根據(jù)用戶的控制目的來作成的。典型地,用戶程序186的形式是能夠在CPU單元104的處理器120中執(zhí)行的目標(biāo)程序形式。用戶程序186是在輔助裝置300等中以梯(Ladder)形式或功能塊形式記述的源程序被編譯(compiled)而生成的。然后,將生成的目標(biāo)程序形式的用戶程序從輔助裝置300傳遞至CPU單元104,并保存至非易失性存儲器128等。
[0067]PLC100具有利用圖2及圖3說明的結(jié)構(gòu),通過由處理器120執(zhí)行系統(tǒng)程序188及用戶程序186,來發(fā)揮“執(zhí)行用于對控制對象進行控制的用戶程序的指令執(zhí)行部”的功能。另外,PLC100通過由處理器120執(zhí)行DB訪問處理程序192及用戶程序186,來發(fā)揮“訪問處理部”的功能,其中,“訪問處理部”用于,在包含用于訪問數(shù)據(jù)庫裝置400的訪問指令的用戶程序被指令執(zhí)行部執(zhí)行時,對按照與訪問指令相對應(yīng)的指令語句經(jīng)由通信接口訪問數(shù)據(jù)庫裝置400的處理進行控制。PLC100通過執(zhí)行DB訪問處理程序192,通過如后述的處理將DB連接服務(wù)的動作模式以第一模式(運行模式)或第二模式(測試模式)中的任意模式進行動作。PLC100通過由處理器120根據(jù)包含在用戶程序186中的訪問指令來執(zhí)行DB訪問處理程序192,來發(fā)揮如下功能,S卩,“在第一模式中,將與訪問指令相對應(yīng)的指令語句(SQL語句)發(fā)送至數(shù)據(jù)庫裝置400,并將該指令語句的響應(yīng)結(jié)果響應(yīng)給用戶程序186,在第二模式中,不向數(shù)據(jù)庫裝置400發(fā)送指令語句,而將與指令語句相對應(yīng)的執(zhí)行結(jié)果響應(yīng)給用戶程序 186”。
[0068]< C.輔助裝置300的結(jié)構(gòu)>
[0069]接著,說明本實施方式的輔助裝置300。輔助裝置300用于對PLC100的CPU單元104的使用進行輔助,向PLC100提供各種參數(shù)的設(shè)定、編程、顯示(監(jiān)視)、調(diào)試等的功能。
[0070]圖4是示出了連接到本實施方式的PLC100上使用的輔助裝置300的硬件結(jié)構(gòu)的示意圖。輔助裝置300典型地由通用的計算機構(gòu)成。[0071]參照圖4,輔助裝置300包括:CPU302,其執(zhí)行包含OS的各種程序;R0M(Read OnlyMemory:只讀存儲器)304,其保存BIOS (Basic Input Output System:基本輸入輸出系統(tǒng))及各種數(shù)據(jù);存儲器RAM (Random Access Memory:隨機存取存儲器)306,其提供用于保存CPU302執(zhí)行程序所需的數(shù)據(jù)的工作區(qū)域;硬盤(HDD)308,其非易失性地保存CPU302所執(zhí)行的程序等。更具體地,在硬盤308中保存有用于實現(xiàn)輔助裝置300所提供的功能的輔助程序 330。
[0072]輔助裝置300還包括接受來自用戶的操作的鍵盤310和鼠標(biāo)312以及用于將信息提示給用戶的監(jiān)視器314。進而,輔助裝置300還包括用于與PLC100 (CPU單元104)等進行通信的通信接口(IF) 318。
[0073]在輔助裝置300中執(zhí)行的輔助程序330等被保存到光學(xué)記錄介質(zhì)332中來流通。保存到光學(xué)記錄介質(zhì)332中的程序,用光盤讀取裝置316來讀取并保存至硬盤308等?;蛘?,也可以通過網(wǎng)絡(luò)從上位主機等中下載程序。
[0074]輔助裝置300經(jīng)由通信IF318與PLC100連接。輔助裝置300通過由CPU302執(zhí)行輔助程序330,來發(fā)揮以下功能,S卩,“接收處理部,其從PLC100接收由DB訪問處理程序192響應(yīng)給用戶程序186的響應(yīng)結(jié)果”以及“顯示處理部,其將由接收處理部接收的上述響應(yīng)結(jié)果顯示到監(jiān)視器314上”的功能。
[0075]< D.數(shù)據(jù)庫裝置400的結(jié)構(gòu)>
[0076]接著,說明本實施方式的數(shù)據(jù)庫裝置400。數(shù)據(jù)庫裝置400能夠采用提供數(shù)據(jù)庫的公知的結(jié)構(gòu)。這樣的數(shù)據(jù)庫能夠采用關(guān)系數(shù)據(jù)類型或目標(biāo)數(shù)據(jù)類型這樣的任意結(jié)構(gòu)。數(shù)據(jù)庫裝置400是按照通用的計算機架構(gòu)構(gòu)成的,因而在此不重復(fù)其詳細(xì)說明。
[0077]數(shù)據(jù)庫裝置400接受來自PLC100的連接要求或訪問要求(在關(guān)系數(shù)據(jù)類型中是SQL語句),來執(zhí)行所需的處理,并將其處理結(jié)果等響應(yīng)給PLC100。
[0078]< E.DB (數(shù)據(jù)庫)?的訪問處理及日志記錄的概要>
[0079]接著,說明在本實施方式的控制系統(tǒng)I中由PLC100訪問數(shù)據(jù)庫裝置400的處理的概要。圖5是示出了本實施方式的PLC100和數(shù)據(jù)庫裝置400之間的通信處理的概要以及日志記錄的概要的圖。
[0080]本實施方式的PLC100的CPU單元104,通過DB連接服務(wù)來進行對數(shù)據(jù)庫裝置400的訪問處理。DB連接服務(wù)切換多個動作模式來進行動作。在本實施方式中,DB連接服務(wù)將動作模式切換為運行模式(第一模式)和測試模式(第二模式)來進行動作。
[0081]運行模式是指,在將PLC100連接到數(shù)據(jù)庫裝置400等其他系統(tǒng)上的狀態(tài)下,使控制系統(tǒng)I運行的情況下使用的動作模式,以及在試運行的情況下使用的動作模式。測試模式是指,在未將PLC100連接到其他系統(tǒng)上的狀態(tài)下,對使用了用于連接到其他系統(tǒng)上的指令(在本實施方式中,是DB連接指令)的用戶程序186的動作進行確認(rèn)時使用的動作模式。在本實施方式中,就DB連接服務(wù)而言,在以測試模式進行動作的情況下,不執(zhí)行向數(shù)據(jù)庫裝置400的SQL語句的發(fā)送,而使DB連接服務(wù)正常結(jié)束。在圖5中,示出了 CPU單元104的DB連接服務(wù)以運行模式進行動作的情況。
[0082]假定在用戶程序186中指定有用于訪問數(shù)據(jù)庫裝置400的指令(例如,圖5的DB連接指令“DB_Insert”)。CPU單元104在使DB連接服務(wù)以運行模式進行動作的情況下,在到達(dá)DB連接指令的執(zhí)行時刻時,調(diào)出與DB訪問處理程序192 (圖3)相對應(yīng)的指令代碼,來生成包含連接數(shù)據(jù)庫裝置400的連接要求的SQL語句,并將所生成的SQL語句發(fā)送至數(shù)據(jù)庫裝置400。通過DB訪問處理程序192來實現(xiàn)DB連接服務(wù)。通過執(zhí)行用戶程序186中的DB連接指令,觸發(fā)DB連接服務(wù)。DB連接服務(wù)生成SQL語句并將所生成的SQL語句傳遞給DB訪問功能。DB訪問功能是為了訪問各種數(shù)據(jù)庫系統(tǒng)而準(zhǔn)備的驅(qū)動軟件。DB訪問功能是由上位通信控制器160 (圖2)及DB訪問處理程序192 (圖3)來實現(xiàn)的功能,將從DB連接服務(wù)接收的SQL語句經(jīng)由網(wǎng)絡(luò)112發(fā)送至數(shù)據(jù)庫裝置400。
[0083]數(shù)據(jù)庫裝置400在接收到來自PLC100的SQL語句時,按照所接收的SQL語句來執(zhí)行處理,并根據(jù)需要,將其結(jié)果響應(yīng)給PLC100。
[0084]另外,本實施方式的日志輸出功能,能夠隨著由程序所規(guī)定的規(guī)定處理的執(zhí)行,而輸出日志(下面,還稱為“執(zhí)行日志”),以及在發(fā)生程序的執(zhí)行失敗或硬件不良情況時輸出相對應(yīng)的日志(下面,還稱為“事件日志”)。運行日志184包括這些全部的日志。在本實施方式中,說明PLC100如后述那樣將運行日志184寫入安裝到PLC100上的存儲卡等記錄介質(zhì)中的例子。存儲卡等記錄介質(zhì)保存運行日志184作為日志文件。
[0085]執(zhí)行日志是在執(zhí)行預(yù)先規(guī)定的種類的處理時通過將其處理內(nèi)容與時刻信息相對應(yīng)關(guān)聯(lián)地記錄來得到的信息。通過該執(zhí)行日志,能夠確認(rèn)在用戶程序186中指定的處理已執(zhí)行。就執(zhí)行日志而言,基本上在PLC100的運行過程中(正在執(zhí)行由程序預(yù)先規(guī)定的種類的處理的狀態(tài))始終進行日志記錄。事件日志是在所指定的處理的執(zhí)行失敗這樣的情況下通過將其處理內(nèi)容與時刻信息相對應(yīng)關(guān)聯(lián)地記錄來得到的信息。典型地,在所指定的處理因出錯等而被中斷這樣的情況下其內(nèi)容被記錄為日志記錄。例如,DB連接服務(wù)與時刻信息相對應(yīng)關(guān)聯(lián)地輸出根據(jù)DB連接指令而生成的SQL語句,以此作為日志。
[0086]在圖5中,示出了在用戶程序186中定義有連接數(shù)據(jù)庫裝置400的連接指令的例子。在圖5的例子中,用戶通過在輔助裝置300中執(zhí)行的輔助程序,來作成包含連接數(shù)據(jù)庫裝置400的連接指令的程序。輔助裝置300將作成的程序變換為能夠在PLC100中執(zhí)行的形式,并將變換得到的用戶程序從輔助裝置300發(fā)送至PLC100。其中,就在用戶程序186中定義的指令而言,能夠任意定義,并且所定義的該指令的種類并不對本發(fā)明的范圍帶來任何影響。
[0087]DB連接服務(wù)對該DB連接指令的執(zhí)行(SQL語句的作成及發(fā)送)進行響應(yīng),將通過該指令來指定的信息與時刻信息相對應(yīng)關(guān)聯(lián)地(即,作為執(zhí)行日志)吸入到運行日志184 (在圖5所示的例子中,是保存至存儲卡172的日志文件1842)中。S卩,保存PLC100的運行狀況的日志。此時,建立了如下的系統(tǒng)環(huán)境,即,用戶不需明確指示向運行日志184寫入執(zhí)行日志,而在執(zhí)行DB連接指令時,DB連接服務(wù)自動將運行狀況寫入至運行日志184。
[0088]此外,運行日志184的寫入對象并不限定于存儲卡172,也可以是主存儲器126或非易失性存儲器128(圖2),或者,也可以是PLC100外部的存儲裝置。其中,優(yōu)選在PLC100的電源被切斷的情況下也能夠保持這些運行日志184的存儲裝置。
[0089]圖6是示出了本實施方式的PLC100以測試模式進行動作的情況的通信處理的概要以及日志記錄的概要的圖。就使DB連接服務(wù)以測試模式或運行模式中的哪個模式進行動作而言,能夠通過從輔助裝置300給出指示。
[0090]針對測試模式中的動作,與DB連接服務(wù)以運行模式進行動作的情況進行比較。DB連接服務(wù)在以測試模式進行動作時,根據(jù)DB連接指令進來生成SQL語句,并將SQL語句的執(zhí)行結(jié)果響應(yīng)給用戶程序186,而不將所生成的SQL語句發(fā)送至數(shù)據(jù)庫裝置400。DB連接服務(wù),將以下兩種響應(yīng)中的任一響應(yīng)輸出至用戶程序186 (能夠設(shè)定輸出哪個響應(yīng)),這兩種響應(yīng)是指,表示SQL語句的執(zhí)行在數(shù)據(jù)庫裝置400中正常進行的響應(yīng),表示SQL語句的執(zhí)行在數(shù)據(jù)庫裝置400中出錯的響應(yīng)。例如,在用輔助裝置300對用戶程序186進行調(diào)試的情況下,存在如下情況等,即,使CPU單元104的DB連接服務(wù)以測試模式進行動作,對表示在數(shù)據(jù)庫裝置400中處理正常進行的響應(yīng)和表示在數(shù)據(jù)庫裝置400中處理出錯的響應(yīng),分別確認(rèn)用戶程序186的動作。
[0091]DB連接服務(wù),在以測試模式進行動作的情況下,也將根據(jù)DB連接指令而生成的SQL語句寫入到運行日志184中。由此,使用戶程序186的調(diào)試變得容易。
[0092]另外,輔助裝置300能夠設(shè)定測試模式中的DB連接服務(wù)的響應(yīng)時間。如上所述,DB連接服務(wù)在以測試模式進行動作的情況下,響應(yīng)給用戶程序186,而不將SQL語句發(fā)送至數(shù)據(jù)庫裝置400。在此,用戶能夠通過操作輔助裝置300來設(shè)定DB連接服務(wù)的響應(yīng)時間,并且能夠在通過包含在用戶程序186中的DB連接指令來調(diào)出DB連接服務(wù)之后,在經(jīng)過了所設(shè)定的響應(yīng)時間之后,向DB連接服務(wù)輸出響應(yīng)結(jié)果。由此,考慮到假定的從數(shù)據(jù)庫裝置400發(fā)送來的響應(yīng)時間,能夠?qū)B連接服務(wù)設(shè)定為測試模式來對用戶程序186進行調(diào)試。
[0093]< F?運行日志 184 >
[0094]參照圖7,說明由PLC100記錄的運行日志184。圖7是示出了運行日志184的圖。記錄到運行日志184中的日志包含條目184A、日期及時間184B、類別184C、日志名184D、結(jié)果184E、連接名184F、序列ID184G、表名184H及SQL語句184J。 [0095]日期及時間184B表示成為日志獲取對象的處理所發(fā)生的時刻。類別184C表示日志的屬性。日志名184D包含能夠一目了然掌握日志內(nèi)容的信息。結(jié)果184E包含表不處理結(jié)果的代碼,例如包含表示與數(shù)據(jù)庫裝置400的連接成功還是失敗的信息。DB連接名184F及序列ID184G主要是與DB連接相關(guān)的信息,含有用于表示在預(yù)先設(shè)定的連接設(shè)定中使用了哪個設(shè)定這樣的信息。184H包含用于識別PLC100所連接的數(shù)據(jù)庫表的信息。SQL語句184J表示由DB連接服務(wù)根據(jù)DB連接指令而生成的SQL語句。
[0096]< G.處理步驟〉
[0097]接著,說明本實施方式的PLC100和數(shù)據(jù)庫裝置400之間的通信處理以及日志記錄的處理。圖8是示出了本實施方式的PLC100的處理步驟以及數(shù)據(jù)庫裝置400的處理步驟的流程圖。在圖8中,DB連接服務(wù)(DB訪問處理程序)以運行模式進行動作。
[0098]圖8所示的各步驟通過由CPU單元104的處理器120分別執(zhí)行用戶程序186及系統(tǒng)程序188來實現(xiàn)。此外,在圖8中,示出了相互獨立地執(zhí)行用戶程序186及系統(tǒng)程序188的例子,但也可以將這兩個程序包含在一個程序中來執(zhí)行該一個程序。
[0099]參照圖8,就用戶程序186的執(zhí)行而言,處理器120加載(load)預(yù)先保存的用戶程序186,并以預(yù)先規(guī)定的周期重復(fù)執(zhí)行所加載的用戶程序186。此外,假定加載的該用戶程序186是被編譯后能夠執(zhí)行的目標(biāo)形式。其中,可以直接加載由用戶作成的源代碼,或者,也可以加載編譯源代碼得到的中間代碼。此時,處理器120—邊依次編譯所加載的代碼,一邊執(zhí)行處理。即,處理器120按照包含在用戶程序186中的指令,一邊根據(jù)必要調(diào)出系統(tǒng)程序188, —邊執(zhí)行被指定的處理。
[0100]在步驟SlOl中,處理器120按照包含在用戶程序186中的指令來執(zhí)行處理,在執(zhí)行用于訪問數(shù)據(jù)庫裝置400的指令時,開始通過DB訪問處理程序192來進行對數(shù)據(jù)庫裝置400的訪問處理。
[0101]在步驟S201中,處理器120通過DB訪問處理程序192執(zhí)行對數(shù)據(jù)庫裝置400的訪問,并輸出與包含在用戶程序186中的用于訪問數(shù)據(jù)庫裝置400的指令相對應(yīng)的指令語句(SQL語句)。
[0102]在步驟S203中,處理器120將所生成的SQL語句發(fā)送至數(shù)據(jù)庫裝置400,并將與該發(fā)送處理相關(guān)的日志保存至運行日志184。
[0103]在步驟S205中,處理器120設(shè)定自身與數(shù)據(jù)庫裝置400之間的通信的超時時間,并且一直接受來自數(shù)據(jù)庫裝置400的響應(yīng),直到發(fā)生通信超時為止。
[0104]在步驟S401中,數(shù)據(jù)庫裝置400接收從PLC100發(fā)送來的SQL語句,并執(zhí)行所接收的SQL語句。
[0105]在步驟S403中,數(shù)據(jù)庫裝置400將SQL語句的執(zhí)行結(jié)果響應(yīng)給PLC100。
[0106]在步驟S207中,處理器120在對自身與數(shù)據(jù)庫裝置400之間的通信設(shè)定的超時期間經(jīng)過之前從數(shù)據(jù)庫裝置400接收到表示數(shù)據(jù)庫裝置400中的SQL語句的執(zhí)行結(jié)果的響應(yīng)時,將來自數(shù)據(jù)庫裝置400的響應(yīng)從DB訪問處理程序192傳遞給用戶程序186。另外,處理器120將與從數(shù)據(jù)庫裝置400接收到響應(yīng)結(jié)果相關(guān)的日志保存至運行日志184。
[0107]在步驟S103中,處理器120與SQL語句的執(zhí)行結(jié)果相對應(yīng)地執(zhí)行用戶程序186。
[0108](測試模式中的DB連接服務(wù)的動作)
[0109]接著,參照圖9,說明測試模式中的DB連接服務(wù)(DB訪問處理程序)的動作。圖9是示出了測試模式中的PLC100的處理步驟的流程圖。如上所述,在測試模式中,DB連接服務(wù)通過包含在用戶程序186中的DB連接指令來被調(diào)出,在用輔助裝置300等設(shè)定的響應(yīng)時間經(jīng)過之后輸出響應(yīng)結(jié)果。
[0110]在步驟SlOl中,處理器120按照包含在用戶程序186中的指令執(zhí)行處理,如果執(zhí)行樂用于訪問數(shù)據(jù)庫裝置400的指令,則使DB訪問處理程序192進行動作。
[0111]在步驟S201中,處理器120通過DB訪問處理程序192生成與包含在用戶程序186中的用于訪問數(shù)據(jù)庫裝置400的指令相對應(yīng)的指令語句(SQL語句)。
[0112]在步驟S211中,處理器120待機至所設(shè)定的響應(yīng)時間經(jīng)過(超過響應(yīng)時間)為止。
[0113]在步驟S213中,處理器120將在步驟S201中生成的SQL語句保存至運行日志184。
[0114]在步驟S215中,處理器120不將所生成的SQL語句發(fā)送至數(shù)據(jù)庫裝置400,而是將與所生成的SQL語句相對應(yīng)的指令執(zhí)行結(jié)果從DB訪問處理程序192響應(yīng)給用戶程序186。
[0115]在步驟S103中,處理器120根據(jù)SQL語句的執(zhí)行結(jié)果來執(zhí)行用戶程序186。
[0116]通過上面的圖8及圖9所示的處理,DB連接服務(wù)切換運行模式和測試模式來進行動作。
[0117]< H.日志的獲取>
[0118]例如,用輔助裝置300來獲取由PLC100記錄的運行日志184,由此,用戶能夠通過操作輔助裝置300來參照運行日志184。例如,輔助裝置300按如下方式從PLC100獲取運行日志184。S卩,輔助裝置300與PLC100進行通信,并通過PLC100的系統(tǒng)程序188來從存儲器中讀取運行日志184,并將所讀取的運行日志184從PLC100響應(yīng)給輔助裝置300。
[0119]圖10是示出了輔助裝置300用于獲取運行日志184的處理的流程圖。[0120]在步驟S311中,輔助裝置300指示PLClOO獲取運行日志184。
[0121 ] 在步驟S221中,處理器120通過執(zhí)行系統(tǒng)程序188,來按照運行日志的獲取指示來獲取運行日志184。
[0122]在步驟S223中,處理器120通過系統(tǒng)程序188的處理,來將所獲取的運行日志184響應(yīng)給用戶程序186。
[0123]在步驟S313中,輔助裝置300從PLC100獲取運行日志184,并將所獲取的運行日志184顯示到監(jiān)視器314上。
[0124]通過執(zhí)行用戶程序186來讀取運行日志184,由此例如能夠在用戶程序186執(zhí)行任意指令之后獲取運行日志184,從而,用戶能夠?qū)LC100與數(shù)據(jù)庫裝置400之間的通信發(fā)生不良情況等的原因采取措施。
[0125]除此之外,也可以通過將規(guī)定的指令包含到用戶程序中,來從存儲器中讀取運行日志184。用戶能夠通過操作輔助裝置300,來將日志獲取指令包含到用戶程序186中。處理器120通過用戶程序186的日志獲取指令,一邊調(diào)出系統(tǒng)程序188或DB訪問處理程序192,一邊執(zhí)行讀取運行日志184的處理。通過用戶程序186讀取運行日志184,例如能夠在輔助裝置300上顯示運行日志184。
[0126]< 1.輔助裝置300指示動作模式的例子>
[0127]使CPU單元104的DB連接服務(wù)切換到運行模式和測試模式中的哪個動作模式來進行動作的處理,例如也可以由PLC100的系統(tǒng)程序188基于輔助裝置300的指示來進行。
[0128]圖11是示出了輔助裝置300將測試模式的動作指示賦予PLC100的處理步驟的例子的圖。
[0129]在步驟S301中,輔助裝置300從用戶接受用于使CPU單元104的DB連接服務(wù)以測試模式進行動作的輸入操作。
[0130]在步驟S303中,輔助裝置300根據(jù)在步驟S301中的輸入操作,將用于切換動作模式的指示發(fā)送至CPU單元104。
[0131]在步驟S121中,CPU單元104的處理器120通過系統(tǒng)程序188的功能來與輔助裝置300進行通信,由此,從輔助裝置300接受用于切換動作模式的指示。處理器120按照從輔助裝置300接受的指示,來設(shè)定DB連接服務(wù)的動作模式。
[0132]在步驟S123中,處理器120在DB連接服務(wù)的動作模式的設(shè)定變更結(jié)束時,將設(shè)定結(jié)束的情況通知給輔助裝置300。
[0133]在步驟S305中,輔助裝置300從CPU單元104接收表示DB連接服務(wù)的動作模式的設(shè)定變更結(jié)束的信息。
[0134]這樣,輔助裝置300能夠按照用戶的輸入操作來切換PLC100的DB連接服務(wù)的動作模式,從而能夠使用戶的調(diào)試變得容易。
[0135]除此之外,還能夠?qū)⒂糜谥付ㄊ笵B連接服務(wù)以運行模式和測試模式中的哪個模式進行動作的指令包含到用戶程序中。用戶在用輔助裝置300作成程序時,定義使DB連接服務(wù)以運行模式和測試模式中的哪個模式進行動作。如果通過輔助裝置300生成了包含對動作模式的指定的用戶程序,并將該用戶程序發(fā)送至PLC100,則PLC100在執(zhí)行用戶程序時按照動作模式的指定來進行動作。
[0136]<J.用戶接口的例>[0137]圖12是示出了本實施方式的輔助裝置300中提供的用戶接口的一個例子的圖。輔助裝置300能夠?qū)⑦\行日志184顯示到輔助裝置300的監(jiān)視器上。
[0138]輔助裝置300例如通過上述的圖10所示的步驟來從PLC100獲取運行日志184。
[0139]如圖12所示,顯示畫面380將運行日志184顯示為一覽表。用運行日志顯示部388的各條目(條目381、條目382、條目383、條目384),來顯示包含在運行日志184(在圖7中示出)中的各種數(shù)據(jù)。
[0140]輔助裝置300例如也可以還將獲取按鈕390顯示到顯示畫面380上,通過接受用戶對獲取按鈕390的輸入操作,來從PLC100獲取運行日志184。例如也可以通過接受對獲取按鈕390的輸入操作,來使輔助裝置300執(zhí)行上述圖10所示的步驟。另外,也可以對于用戶所選擇的條目(在圖12中,通過用邊框強調(diào)表示條目381,來表示條目381被用戶選擇的情況),將其詳細(xì)信息顯示到運行日志顯示部388。例如,在圖12的例子中,對于條目381,將用DB連接服務(wù)生成的SQL語句的日志顯示到了詳細(xì)信息389上。
[0141]通過采用如上所述的結(jié)構(gòu),用戶在采用將PLC連接到其他系統(tǒng)(數(shù)據(jù)庫系統(tǒng)等)上的結(jié)構(gòu)的情況下,即使不使實際的其他系統(tǒng)與PLC進行通信,也能夠使PLC的DB連接服務(wù)以測試模式進行動作,從而使PLC和其他系統(tǒng)協(xié)同進行動作的用戶程序的調(diào)試變得容易。
[0142]另外,在上述的實施方式的說明中,由于由輔助裝置300將運行日志184顯示到監(jiān)視器上,因而說明了如下例子,即,例如在PLC100通過系統(tǒng)程序188從輔助裝置300接收到運行日志184的讀取要求的情況下,從規(guī)定的存儲器讀取運行日志184來將其響應(yīng)給輔助裝置300。除此之外,例如也可以采用如下結(jié)構(gòu),該結(jié)構(gòu)是指,CPU單元104具備FTP (FileTransfer Protocol:文件傳輸協(xié)議)服務(wù)器功能,用FTP客戶端軟件登錄到CPU單元104,并由FTP客戶端軟件通過FTP來獲取運行日志184。
[0143]應(yīng)當(dāng)認(rèn)為本公開的實施方式是在全部點的例示而非限制。本發(fā)明的范圍并不由上述說明來表示,而是由權(quán)利要求書來表示,意在包括在與權(quán)利要求書均等的意思和范圍內(nèi)的全部變更。
【權(quán)利要求】
1.一種控制器,其特征在于, 該控制器包括: 通信接口,其用于與數(shù)據(jù)庫系統(tǒng)連接, 指令執(zhí)行部,其執(zhí)行用于對控制對象進行控制的用戶程序, 訪問處理部,其在由所述指令執(zhí)行部執(zhí)行包含用于訪問所述數(shù)據(jù)庫系統(tǒng)的訪問指令的所述用戶程序時,控制按照與所述訪問指令相對應(yīng)的指令語句而經(jīng)由所述通信接口對所述數(shù)據(jù)庫系統(tǒng)進行的訪問; 所述訪問處理部,能夠以第一模式及第二模式進行動作; 在所述第一模式中,所述訪問處理部將與所述訪問指令相對應(yīng)的指令語句發(fā)送至所述數(shù)據(jù)庫系統(tǒng),并將該指令語句的響應(yīng)結(jié)果響應(yīng)給所述用戶程序; 在所述第二模式中,所述訪問處理部將與所述指令語句相對應(yīng)的執(zhí)行結(jié)果響應(yīng)給所述用戶程序,而不向所述數(shù)據(jù)庫系統(tǒng)發(fā)送所述指令語句。
2.如權(quán)利要求1所述的控制器,其特征在于, 所述控制器,還具有用于對時刻進行計時的計時部; 所述指令執(zhí)行部,在所述用戶程序執(zhí)行規(guī)定的處理時,將處理內(nèi)容與由所述計時部計時得到的時刻相對應(yīng)關(guān)聯(lián)地保存至存儲器來作為日志; 所述訪問處理部,將與所述訪問指令相對應(yīng)的處理內(nèi)容與由所述計時部計時得到的時刻相對應(yīng)關(guān)聯(lián)地保存至所述存儲器來作為所述日志。
3.如權(quán)利要求2所述的控制器,其特征在于, 所述訪問處理部,生成與所述訪問指令相對應(yīng)的指令語句,并將所生成的指令語句作為所述日志保存至所述存儲器。
4.如權(quán)利要求1所述的控制器,其特征在于, 所述訪問處理部,在所述第二模式中,對所述用戶程序進行正常響應(yīng)或出錯響應(yīng),來作為所述訪問指令所對應(yīng)的所述指令語句所對應(yīng)的執(zhí)行結(jié)果, 所述正常響應(yīng)是指,表示通過所述指令語句對所述數(shù)據(jù)庫系統(tǒng)進行的訪問正常結(jié)束的響應(yīng), 所述出錯響應(yīng)是指,表示通過所述指令語句對所述數(shù)據(jù)庫系統(tǒng)進行的訪問出錯的響應(yīng)。
5.如權(quán)利要求1所述的控制器,其特征在于, 所述控制部包括接受響應(yīng)時間的設(shè)定的響應(yīng)時間設(shè)定部; 在以所述第二模式進行動作的情況下,所述控制部在從所述處理的開始起經(jīng)過所設(shè)定的所述響應(yīng)時間之后,輸出與所述訪問指令相對應(yīng)的處理結(jié)果。
6.如權(quán)利要求1至5中的任一項所述的控制器,其特征在于, 所述控制器具有輸入輸出部,該輸入輸出部與連接到所述控制器上的信息處理裝置進行數(shù)據(jù)的發(fā)送及接收; 所述輸入輸出部,按照所述信息處理裝置的要求,將所述訪問處理部對所述用戶程序的響應(yīng)結(jié)果輸出至所述信息處理裝置。
7.如權(quán)利要求6所述的控制器,其特征在于, 所述輸入輸出部,從所述信息處理裝置接受使所述訪問處理部以所述第一模式和所述第二模式中的哪個模式進行動作的指定; 所述訪問處理部,按照從所述信息處理裝置接受的指定,切換所述第一模式和所述第二模式。
8.如權(quán)利要求1所述的控制器,其特征在于, 所述用戶程序包括指定指令,該指定指令用于指定以所述第一模式和所述第二模式中的哪個模式使所述訪問處理部進行動作; 所述訪問處理部,按照所述指定指令所表示的指定,以所述第一模式和所述第二模式中的某個模式進行動作。
9.一種程序,用于對控制器的動作進行控制,其特征在于, 所述控制器具有用于訪問數(shù)據(jù)庫系統(tǒng)的通信接口、處理器及存儲器; 所述程序使所述處理器執(zhí)行如下步驟: 執(zhí)行用于對控制對象進行控制的用戶程序, 在執(zhí)行包含用于訪問所述數(shù)據(jù)庫系統(tǒng)的訪問指令的所述用戶程序時,控制按照與所述訪問指令相對應(yīng)的指令語句而經(jīng)由所述通信接口對所述數(shù)據(jù)庫系統(tǒng)進行的訪問; 在控制按照與所述訪問指令相對應(yīng)的指令語句訪問數(shù)據(jù)庫系統(tǒng)的步驟中,能夠以第一模式及第二模式進行動作,使所述處理器, 在所述第一模式中,將與所述訪問指令相對應(yīng)的指令語句發(fā)送至所述數(shù)據(jù)庫系統(tǒng),并將該指令語句的響應(yīng)結(jié)果響應(yīng)給所述用戶程序, 在所述第二模式中,將與所述指令語句相對應(yīng)的執(zhí)行結(jié)果響應(yīng)給所述用戶程序,而不向所述數(shù)據(jù)庫系統(tǒng)發(fā)送所述指令語句。
10.一種信息處理裝置,與控制器相連接,其特征在于, 所述控制器具有: 通信接口,其用于與數(shù)據(jù)庫系統(tǒng)連接, 指令執(zhí)行部,其執(zhí)行用于對控制對象進行控制的用戶程序, 訪問處理部,其在由所述指令執(zhí)行部執(zhí)行包含用于訪問所述數(shù)據(jù)庫系統(tǒng)的訪問指令的所述用戶程序時,控制按照與所述訪問指令相對應(yīng)的指令語句而經(jīng)由所述通信接口對所述數(shù)據(jù)庫系統(tǒng)進行的訪問, 輸入輸出部,其與所述信息處理裝置連接,用于與所述信息處理裝置進行數(shù)據(jù)的發(fā)送與接收; 所述訪問處理部,能夠以第一模式及第二模式進行動作; 在所述第一模式中,所述訪問處理部將與所述訪問指令相對應(yīng)的指令語句發(fā)送至所述數(shù)據(jù)庫系統(tǒng),并將該指令語句的響應(yīng)結(jié)果響應(yīng)給所述用戶程序, 在所述第二模式中,所述訪問處理部將與所述指令語句相對應(yīng)的執(zhí)行結(jié)果響應(yīng)給所述用戶程序,而不向所述數(shù)據(jù)庫系統(tǒng)發(fā)送所述指令語句; 所述信息處理裝置具有: 接收處理部,其經(jīng)由所述控制器的所述輸入輸出部接收所述訪問處理部對所述用戶程序的響應(yīng)結(jié)果, 顯示處理部,其將用所述接收處理部接收的所述響應(yīng)結(jié)果顯示到監(jiān)視器上。
11.一種控制器,其特征在于,具有: 用于連接數(shù)據(jù)庫系統(tǒng)的通信接口, 處理器, 存儲器; 所述處理器用于進行如下處理: 切換第一模式及第二模式來進行動作, 執(zhí)行用于對控制對象進行控制的用戶程序,在執(zhí)行包含用于訪問所述數(shù)據(jù)庫系統(tǒng)的訪問指令的所述用戶程序時,控制按照與所述訪問指令相對應(yīng)的指令語句而經(jīng)由所述通信接口對所述數(shù)據(jù)庫系統(tǒng)進行的訪問, 在以第一模式進行動作的情況下,將與所述訪問指令相對應(yīng)的指令語句發(fā)送至所述數(shù)據(jù)庫系統(tǒng),并將該指令語句的響應(yīng)結(jié)果響應(yīng)給所述用戶程序, 在以第二模式進行動作的情況下,將與所述指令語句相對應(yīng)的執(zhí)行結(jié)果響應(yīng)給所述用戶程序,而不向所述數(shù) 據(jù)庫系統(tǒng)發(fā)送所述指令語句。
【文檔編號】G05B19/418GK103995499SQ201310656213
【公開日】2014年8月20日 申請日期:2013年12月6日 優(yōu)先權(quán)日:2013年2月15日
【發(fā)明者】岡村弘太郎, 太田政則, 西山佳秀, 矢尾板宏心, 中崎勝 申請人:歐姆龍株式會社