TWI673582B - 程式驗證系統、控制裝置及程式驗證方法 - Google Patents
程式驗證系統、控制裝置及程式驗證方法 Download PDFInfo
- Publication number
- TWI673582B TWI673582B TW107106586A TW107106586A TWI673582B TW I673582 B TWI673582 B TW I673582B TW 107106586 A TW107106586 A TW 107106586A TW 107106586 A TW107106586 A TW 107106586A TW I673582 B TWI673582 B TW I673582B
- Authority
- TW
- Taiwan
- Prior art keywords
- control
- input
- test
- input data
- data
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0256—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults injecting test signals and analyzing monitored process response, e.g. injecting the test signal while interrupting the normal operation of the monitored system; superimposing the test signal onto a control signal during normal operation of the monitored system
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/4155—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0426—Programming the control sequence
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/23—Pc programming
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/31—From computer integrated manufacturing till monitoring
- G05B2219/31362—Verify correct configuration of system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/40—Bus coupling
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Programmable Controllers (AREA)
- Debugging And Monitoring (AREA)
Abstract
在程式驗證系統10具備有:PLC 15;以及藉由核對測試輸出資料與控制輸出資料從而進行控制程式的動作驗證的核對部13;在進行控制程式的動作驗證時,當控制程式具有參照控制輸入資料的命令時,PLC 15係產生PLC 15內的第一時間資訊,並且從測試模式內抽出與第一時間資訊相對應的測試輸入資料,且使用已抽出的測試輸入資料及控制程式算出控制輸出資料。
Description
本發明係關於驗證裝置控制用的控制程式的程式驗證系統、控制裝置及程式驗證方法。
可程式邏輯控制器(Programmable Logic Controller,以下稱PLC)的控制裝置係保持著各種的資料,且使用保持的資料,來令用以對裝置進行控制的控制程式動作。因此,PLC係在特定的週期控制嵌入有PLC的裝置或設備。
如此的控制程式係根據嵌入有PLC的裝置的動作規格來設計,且使用如裝置或設備的實際機器(real machine)進行動作驗證。專利文獻1所揭示的動作驗證裝置係從控制程式的機械人動作程式當中,檢測出具有在與屬於PLC的序列器(sequencer)之間的控制信號的輸入或輸出功能的程式部分。並且專利文獻1所揭示的動作驗證裝置係將檢測出的程式部分予以逐次輸入至序列器來改變序列器的內部狀態,且根據此變化進行序列器的動作驗證。
專利文獻1:日本特開平10-97307號公報。
然而,在上述習知技術的專利文獻1中,由於在動作驗證時未考慮時間的資訊,所以無法精確地令裝置動作。因此,上述習知技術的專利文獻1會有無法進行控制程式之正確的動作驗證的問題。
本發明係鑑於上述課題所研創者,目的在於獲得可進行控制程式之正確的動作驗證的程式驗證系統。
為了解決上述課題,且達成目的,本發明係在程式驗證系統具備有:控制裝置,係輸入有來自進行資料的輸入輸出的輸入輸出裝置的控制輸入資料,並且使用對裝置進行控制用的控制程式算出與控制輸入資料相對應的控制輸出資料並輸出至輸入輸出裝置;以及核對部,係藉由核對包含在測試模式之測試輸出資料與控制裝置所算出的控制輸出資料,從而進行控制程式的動作驗證,該測試模式係滿足裝置的動作規格的測試輸入資料與前述測試輸出資料之組合且為顯示時間性變化者。再者,本發明的程式驗證系統中,控制裝置係具有:記憶部,係記憶測 試模式;以及控制部,係在進行控制程式的動作驗證時,當控制程式具有參照控制輸入資料的命令時,取得屬於控制裝置內的時間資訊的第一時間資訊,並且從測試模式內抽出與第一時間資訊相對應的測試輸入資料,且使用已抽出的測試輸入資料及控制程式算出控制輸出資料。
本發明的程式驗證系統係發揮可進行控制程式之正確的動作驗證的效果。
10‧‧‧程式驗證系統
11‧‧‧驗證裝置
12‧‧‧測試模式產生部
13‧‧‧核對部
14‧‧‧裝置
15‧‧‧PLC
16‧‧‧輸入輸出裝置
17‧‧‧記憶部
18‧‧‧控制部
19‧‧‧時間資訊產生部
21‧‧‧測試模式儲存區域
22‧‧‧參數儲存區域
23‧‧‧輸入資料儲存區域
24‧‧‧輸出資料儲存區域
25‧‧‧控制程式儲存區域
31、32‧‧‧通信IF部
101‧‧‧測試模式
300‧‧‧控制電路
301‧‧‧處理器
302‧‧‧記憶體
P1‧‧‧處理
P2‧‧‧處理
P3‧‧‧處理
P11‧‧‧處理
P12‧‧‧處理
P13‧‧‧處理
第1圖係顯示本發明實施形態之程式驗證系統的構成之圖示。
第2圖係顯示實施形態中之PLC所具備的記憶部的構成之圖示。
第3圖係顯示實施形態之裝置的動作規格例之圖示。
第4圖係顯示實施形態之測試模式的一例之圖示。
第5圖係顯示實施形態之PLC的動作處理順序的流程圖。
第6圖係說明使用實際機器的動作驗證與實施形態的動作驗證的相異點之圖示。
第7圖係顯示實施形態中之PLC所具備的控制部的硬體構成例之圖示。
以下,根據圖式詳細說明本發明之實施形 態的程式驗證系統、控制裝置及程式驗證方法。另外,本發明不受該實施形態所限定。
實施形態
第1圖係顯示本發明之實施形態的程式驗證系統的構成之圖示。程式驗證系統10係具備有:如工作機械或半導體製造裝置之裝置14;及對裝置14之控制用的控制程式進行驗證的驗證裝置11。
裝置14係具備有:屬於用以控制裝置14之控制裝置的PLC 15;以及在與PLC 15之間進行資料的輸入輸出的輸入輸出裝置16。PLC 15具備有:記憶各種資訊的記憶部17;以及使用記憶部17內的資訊來控制裝置14的控制部18。此外,PLC 15具備有:在與驗證裝置11之間進行資料通信的通信介面(InterFac,以下稱IF)部31;以及在與輸入輸出裝置16之間進行資料通信的通信IF部32。
屬於第一通信部的通信IF部31係根據來自控制部18的指示,在與驗證裝置11之間執行資料通信。通信IF部31係接收自驗證裝置11送來的測試模式並傳送至記憶部17。測試模式係控制程式之驗證用的資料。測試模式係滿足裝置14的動作規格,且為後述的輸入資料與後述的輸出資料的組合,且顯示要在由裝置14之動作規格所規定的範圍內可能發生之資料的時間變化。也就是,測試模式係顯示根據嵌入有PLC 15的裝置14或配置有PLC 15的設備的動作規格所定義的輸入資料及輸出資料的時間性 變化。具體而言,測試模式係對屬於測試輸入資料的輸入資料、屬於測試輸出資料的輸出資料以及屬於時間資訊的後述的時間資訊T2建立對應關聯者。
輸入資料的一例係輸入輸出裝置16輸入至PLC 15的資料。輸出資料係PLC15內的控制程式所算出的資料,且藉由PLC 15輸出給輸入輸出裝置16。就程式驗證系統10所用的輸入資料而言,有兩種類的輸入資料。兩種類的輸入資料當中,於測試模式所包含的輸入資料係控制程式之驗證所用的測試輸入資料。此外,兩種類的輸入資料當中,從輸入輸出裝置16所輸入的輸入資料係輸入輸出裝置16之控制所用的控制輸入資料。此外,就程式驗證系統10所使用的輸出資料而言,具有兩種類的輸出資料。兩種類的輸出資料當中,於測試模式所含的輸出資料係控制程式之驗證所用的測試輸出資料。此外,兩種類的輸出資料當中,控制部18所算出的輸出資料係控制輸出資料。在程式驗證系統10執行後述的動態分析時,控制部18所算出的控制輸出資料係用在與測試輸出資料的核對。此外,在程式驗證系統10執行後述的動態分析時,控制部18所算出的控制輸出資料係用在輸入輸出裝置16的控制。
通信IF部31係對驗證裝置11傳送控制部18所使用的輸入資料與控制部18使用控制程式而算出的輸出資料的組合。屬於第二通信部的通信IF部32係根據來自控制部18的指示,在與輸入輸出裝置16之間執行資 料通信。通信IF部32係接收從輸入輸出裝置16所傳送過來的輸入資料並傳送至記憶部17。此外,通信IF部32係對輸入輸出裝置16傳送被儲存於記憶部17之控制部18所算出的輸出資料。
記憶部17係記憶:輸入資料、輸出資料、控制程式、顯示控制部18的動作設定的動作設定參數以及測試模式。控制程式的一例為階梯程式(ladder programs)的序列程式(sequence program)。顯示控制部18的動作設定的動作設定參數之例係指定執行控制程式的動態分析之與否的參數,或指定動作驗證時之輸入資料的取得方法的參數。就動作驗證時的輸入資料的取得方法而言具有:由測試模式取得所有的輸入資料的方法,以及由測試模式取得輸入資料的一部分,而由輸入輸出裝置16取得剩下的部分的方法。
控制部18係控制通信IF部31、32以及記憶部17。此外,控制部18係具備有時間資訊產生部19,該時間資訊產生部19係產生屬於PLC 15所管理之時間的資訊的時間資訊。時間資訊產生部19係具有時鐘功能,且使用時鐘功能產生時間資訊。另外,時間資訊產生部19亦可配置於控制部18的外部。
在以下的說明中,時間資訊產生部19所產生之PLC 15內的時間資訊稱為時間資訊T1。此外,在以下的說明中,測試模式內的時間的資訊稱為時間資訊T2。屬於第一時間資訊的時間資訊T1亦可為從PLC 15的電源 被導通起的經過時間,亦可為利用時鐘所量測的時刻或日期時間的資訊。屬於第二時間資訊的時間資訊T2係與時間資訊T1相對應的時間的資訊。因此,時間資訊T2係當時間資訊T1屬於從PLC 15的電源被導通起的經過時間時,為顯示該經過時間的資訊,而當時間資訊T1屬於利用時間所量測的時刻或日期時間時,為顯示時刻或日期時間的資訊。
控制部18係執行控制程式,從而算出輸出至輸入輸出裝置16的輸出資料。控制部18係將輸入資料應用至控制程式,來算出輸出資料。換言之,控制部18係使用控制程式,來算出與輸入資料相對應的輸出資料。控制部18係參照儲存於記憶部17的輸入資料或輸入輸出裝置16的輸入資料,並執行控制程式從而算出輸出資料。控制部18係將輸入資料與使用控制程式所算出的輸出資料的組合記憶至記憶部17。
當控制部18控制輸入輸出裝置16的通常動作時,算出與從輸入輸出裝置16傳送來的輸入資料相對應的輸出資料。換言之,當控制部18於控制通常動作時,根據控制輸入資料,來算出與控制輸入資料相對應的控制輸出資料。此外,當控制部18於確認控制程式的動作時,根據時間資訊產生部19所產生的時間資訊T1,從測試模式內抽出輸入資料。具體而言,控制部18係從測試模式內抽出與時間資訊T1相同的時間資訊T2,且從測試模式內抽出與所抽出的時間資訊T2建立對應關聯的輸入資料。 當控制部18確認控制程式的動作時,算出與從測試模式內已抽出的輸入資料相對應的輸出資料。換言之,當控制部18於確認控制程式的動作時,根據測試輸入資料,來算出與測試輸入資料相對應的控制輸出資料。
輸入輸出裝置16係進行資料的輸入及輸出的裝置,且連接於PLC 15。輸入輸出裝置16係含有:將輸入資料傳送至PLC 15的輸入裝置;及自PLC 15獲取輸出資料的輸出裝置。
輸入裝置的例子係輸入按鍵或感測器。輸入裝置為輸入按鍵時,當輸入按鍵被使用者按下時,對PLC 15傳送顯示按下的輸入資料。此外,輸入裝置為感測器時,感測器係對PLC 15傳送屬於經檢測的溫度或位置的資訊。
輸出裝置的例子為開閉閥或LED(Light Emitting Diode,發光二極體)。輸出裝置為開閉閥時,開閉閥係從PLC 15接收用以將閥設為開狀態的輸出資料,或用以將閥設為閉狀態的輸出資料。此外,輸出裝置為LED時,LED係從PLC 15接收用以點亮LED的輸出資料,或用以將LED關燈的輸出資料。
PLC 15當由輸入裝置輸入了輸入資料時,使用控制程式算出與來自輸入裝置的輸入資料相對應的輸出資料,且將算出的輸出資料輸出至輸出裝置。由PLC 15傳送至輸出裝置的輸出資料係由控制程式所算出的輸出資料的算出結果。
驗證裝置11係具備有:產生測試模式的測試模式產生部12;及核對控制程式的動作與測試模式的核對部13。測試模式產生部12係根據裝置14的動作規格,來產生測試模式。測試模式產生部12係將產生的測試模式傳送至PLC 15及核對部13。
測試模式產生部12亦可將產生的測試模式的整體傳送至PLC 15,惟產生的測試模式當中,亦可將輸入資料及時間資訊T2的一部分傳送至PLC 15。亦即,PLC 15所使用的是屬於測試模式內的輸入資料,所以測試模式產生部12亦可將除去了輸出資料部分的測試模式傳送至PLC 15。測試模式產生部12係將產生的測試模式的整體傳送至核對部13。
核對部13係從PLC 15接收自測試模式所抽出的輸入資料,及與抽出的輸入資料相對應的輸出資料的組合。核對部13係核對PLC 15的輸出資料與裝置14的動作規格。此時,核對部13係核對第一組合與第二組合,該第一組合係從PLC 15接收的輸入資料及輸出資料的組合該第二組合係測試模式內的輸入資料及輸出資料的組合。具體而言,核對部13係自測試模式內抽出與對第一組合建立對應關聯的時間資訊T1相同的時間資訊T2,且從測試模式內抽出與已抽出的時間資訊T2相對應的第二組合。於是,核對部13比較已接收的第一組合與已抽出的第二組合。核對部13係根據該比較結果,驗證程式控制的動作。核對部13係在已接收的第一組合與已抽出的第二組 合為相同的情形,判定控制程式為根據裝置14的動作規格所作成。測試模式內的輸入資料及輸出資料係滿足裝置14的動作規格。因此,實施形態的核對部13係藉由核對自PLC 15接收的輸出資料與測試模式內的輸出資料,從而驗證控制程式的動作。該情形下,核對部13係從測試模式抽出與自PLC 15接收的輸入資料相對應的輸出資料,且將已抽出的輸出資料與自PLC 15接收的輸出資料作比較。另一方面,核對部13在已接收的第一組合與已抽出的第二組合為不同的情形,判定控制程式非根據裝置14的動作規格所作成。實施形態的核對部13係在自PLC 15已接收的輸出資料與測試模式內的輸出資料為不同時,判定控制程式非根據裝置14的動作規格來作成。
另外,PLC 15亦可配置於裝置14的外部。此外,驗證裝置11亦可配置於裝置14內。該情形,測試模式產生部12亦可配置於裝置14的外部。此外,驗證裝置11亦可配置於PLC 15內。換言之,PLC 15亦可執行作為PLC 15的輸入輸出資料與裝置14的動作規格的核對的動作驗證。該情形,測試模式產生部12亦可配置於PLC 15的外部。
接著,針對記憶部17的構成加以說明。第2圖係顯示實施形態的PLC所具備的記憶部的構成的圖式。記憶部17係具備有:儲存測試模式的測試模式儲存區域21;以及儲存動作設定參數的參數儲存區域22。此外,記憶部17係具備有:儲存輸入資料的輸入資料儲存區域 23;以及儲存輸出資料的輸出資料儲存區域24。此外,記憶部17係具備有儲存控制程式的控制程式儲存區域25。
屬於第一記憶部的測試模式儲存區域21係儲存從驗證裝置11所傳送過來的測試模式的區域。參數儲存區域22係儲存由裝置14的使用者所設定的動作設定參數的區域。
屬於第二記憶部的輸入資料儲存區域23係儲存控制程式之執行所使用的輸入資料的區域。程式驗證系統10在驗證控制程式的動作時,控制部18係將從測試模式抽出的輸入資料儲存至輸入資料儲存區域23。換言之,當驗證控制程式的動作時,控制部18係將輸入資料的一部分或全部的值重寫成測試模式內的輸入資料。在該情形,控制部18係核對包含於測試模式的時間資訊T2以及時間資訊產生部19產生的時間資訊T1,且從測試模式抽出用來重寫輸入資料儲存區域23內之輸入資料的輸入資料的值。另一方面,PLC 15係使用輸入輸出裝置16,而於執行通常動作時,控制部18藉由輸入輸出裝置16將輸入至PLC 15的輸入資料予以儲存至輸入資料儲存區域23。如此,輸入資料儲存區域23係在程式驗證系統10驗證控制程式的動作時,儲存屬於測試輸入資料的輸入資料,而在執行通常動作時,儲存屬於控制輸入資料的輸入資料。
屬於第三記憶部的輸出資料儲存區域24係儲存輸出資料的區域。當控制部18算出與儲存於輸入資料 儲存區域23的輸入資料相對應的輸出資料,就將算出的輸出資料儲存至輸出資料儲存區域24。當儲存於輸入資料儲存區域23的輸入資料為測試模式的輸入資料時,控制部18將與測試模式的輸入資料相對應的輸出資料儲存至輸出資料儲存區域24。另一方面,儲存於輸入資料儲存區域23的輸入資料為來自輸入輸出裝置16的輸入資料時,控制部18係與將來自輸入輸出裝置16的輸入資料相對應的輸出資料儲存至輸出資料儲存區域24。輸入資料儲存區域23及輸出資料儲存區域24的一例為暫存器。如此,輸出資料儲存區域24於程式驗證系統10驗證控制程式的動作時及執行通常動作時的任一情形,皆儲存屬於使用輸入資料所算出的控制輸出資料的輸出資料。
控制程式儲存區域25係儲存從未圖示之程式作成裝置的外部裝置所傳送來的控制程式的區域。另外,記憶部17亦可以複數個記憶裝置來構成。在以下的說明中,會有將輸入資料及輸出資料稱為輸入輸出資料的情形。
以下,針對裝置14的動作規格例加以說明。第三圖係顯示實施形態之裝置的動作規格例的圖式。在第3圖中,顯示記載於裝置14的動作規格的輸入輸出資料的時序圖。第3圖所示的橫軸為時間,而縱軸為輸入資料X0、X1及輸出資料Y0、Y1。
裝置14的動作規格係含有輸入輸出資料的更新及控制程式的執行。並且,裝置14的動作規格的控制 程式係含有兩個命令。PLC 15所使用的控制程式係根據該裝置14的動作規格所作成者。在這裡的動作規格中所包含之命令的第一例,為若於輸入輸出資料的更新時取得的輸入資料X0為導通(ON)則設輸出資料Y0為導通的命令。此外,在這裡的動作規格中所包含之命令的第二例,為在執行程式控制的命令時,若輸入輸出裝置16的輸入資料X1為導通則設輸出資料Y1為導通的命令。PLC 15所使用的控制程式中含有上述的第一例或第二例的命令。藉此,可利用控制程式達成裝置14的動作規格。
當執行控制程式時,輸入資料X0在時間t1為導通,所以輸出資料Y0為導通。再者,當執行控制程式時,輸入資料X1在時間t1為關斷(OFF),所以輸出資料Y1為保持在導通的狀態。並且,在時間t2輸入資料X1為導通,則輸出資料Y1為導通。
PLC 15的控制部18係在時間t0至時間t1將來自輸入輸出裝置16的輸入資料X0儲存至記憶部17,且將儲存於記憶部17的輸出資料傳送給輸入輸出裝置16。藉此,控制部18係在時間t0至時間t1進行輸入輸出資料的更新。此外,控制部18係在時間t1至時間t3參照記憶部17內的輸入輸出資料並執行控制程式,且將執行結果的輸出資料逐次儲存至記憶部。
第4圖係顯示實施形態之測試模式的一例的圖式。在第4圖中,顯示與第3圖所示的動作規格相對應的測試模式101。測試模式101係以輸入輸出資料之值 及時間資訊為要素的資訊。驗證裝置11的測試模式產生部12係根據第3圖所示的動作規格,來產生測試模式101。
測試模式101的一例係對輸入輸出資料及時間資訊T2建立對應關聯的資訊表格。在測試模式101中,對參數賦予輸入資料及時間資訊T2。藉此,測試模式101係以輸入資料的時間性變化之方式定義。
如第3圖所示,輸入資料X0係從時間t0直至時間t3為止保持在導通的狀態。因此,測試模式101的輸入資料X0在時間t0、時間t1、時間t2、及時間t3全部係設為導通。
再者,如第3圖所示,輸入資料X1係從時間t0即將到時間t2之前為止為關斷,而在時間t2成為導通並保持此狀態直至時間t3為止為導通。因此,測試模式101的輸入資料X1係在時間t0及時間t1被設定為關斷,而在時間t2及時間t3被設定為導通。
實施形態的控制部18係在執行控制程式的動作驗證時,核對時間資訊產生部19所產生的時間資訊T1及測試模式101內的時間資訊T2,且決定參照的輸入資料X0、X1的值。具體而言,控制部18係從測試模式101內,抽出與時間資訊T1一致的時間資訊T2或最接近於時間資訊T1的時間資訊T2。並且,控制部18係從測試模式101內抽出與已經抽出之時間資訊T2相對應的輸入資料X0、X1的值並儲存至輸入資料儲存區域23。
第5圖係顯示實施形態的PLC的動作處理 順序的流程圖。在此,針對依據輸入資料X0、X1的值來決定輸出資料Y0、Y1的值之控制程式被儲存於PLC 15時的PLC 15的動作例加以說明。
當程式驗證系統10實施屬於控制程式的動作驗證的動態分析時,由使用者對PLC 15輸入執行控制程式的動態分析的指示。當PLC 15的控制部18接受該指令,就將表示執行控程式的動態分析的動作設定參數儲存至參數儲存區域22。另一方面,當程式驗證系統10執行控制程式的通常動作時,由使用者對PLC 15輸入執行控制程式的通常動作的指示。當PLC 15的控制部18接受該指示,就將表示執行控制程式的通常動作的動作設定參數儲存至參數儲存區域22。
PLC 15係當從驗證裝置11的測試模式產生部12傳送來測試模式101時,在步驟S10,由控制部18將測試模式101儲存至記憶部17的測試模式儲存區域21。此外,PLC 15亦可先執行測試模式101的儲存處理與動作設定參數的儲存處理的任一個。
在步驟S20,PLC 15開始動作時,即在步驟S30,由控制部18判定進行控制程式的動態分析的與否。具體而言,控制部18係參照儲存於參數儲存區域22的動作設定參數,且根據動作設定參數,來判定執行動態分析的與否。
執行動態分析的情形,亦即在步驟S30為是(Yes)的情形,控制部18係進行輸入輸出資料的更新以 及控制程式的執行。控制部18在更新輸入輸出資料時,在步驟S40,決定由測試模式101當中進行參照的輸入資料X0。於是,在步驟S50,控制部18係將已決定的輸入資料X0儲存至記憶部17的測試模式儲存區域21。換言之,控制部18係將儲存於記憶部17的輸入資料之值重寫成測試模式101內的輸入資料X0的值。具體而言,控制部18係核對在時間資訊產生部19所產生的時間資訊T1、與測試模式101內的時間資訊T2,並決定適用於控制程式的輸入資料X0。此時,控制部18係從測試模式101內抽出與時間資訊T1相同的時間資訊T2,且從測試模式101內抽出與已經抽出的時間資訊T2建立對應關聯的輸入資料X0。並且,控制部18將抽出的輸入資料X0決定為儲存至記憶部17的輸入資料X0。
控制部18儲存了輸入資料X0之後,在步驟S60,將儲存於記憶部17的輸出資料儲存區域24的輸出資料傳送至驗證裝置11的核對部13。在此的控制部18係將控制程式的命令當中,屬於在較從此開始執行的命令還前一個命令所執行的執行結果的輸出資料傳送至核對部13。在該情形,控制部18係對儲存於記憶部17的輸出資料與在儲存於記憶部17的前一個命令所使用的輸入資料建立對應關聯,並將輸出資料及輸入資料傳送至核對部13。亦即,控制部18係對輸出資料與用在輸出資料之算出的輸入資料建立對應關聯並傳送至核對部13。具體而言,控制部18係傳送輸入資料儲存區域23內的前一個輸入資 料與輸出資料儲存區域24內的最新的輸出資料之組合。上述的步驟S40至步驟S60的處理係執行動態分析時的輸入輸出資料的更新處理。
另外,在進行動態分析時的輸入輸出資料的更新處理中,控制部18亦可從測試模式101抽出全部的輸入資料,亦可從測試模式101抽出部分的輸入資料,亦可從輸入輸出裝置16取得其他的輸入資料。從測試模式101要抽出哪一個輸入資料,係根據由使用者所設的動作設定參數的設定來決定。
控制部18係執行輸入輸出資料的更新之後,執行儲存在記憶部17的控制程式儲存區域25的控制程式。控制程式係含有複數個命令所構成,且控制部18係依序進行控制程式內的命令的讀取及執行。在控制程式內的命令係具有:參照儲存於記憶部17的輸入資料X0的命令;以及參照輸入輸出裝置16的輸入資料X1的命令。當進行動態分析時,控制部18係核對時間資訊產生部19所產生的時間資訊T1及測試模式101,且進行參照的輸入資料X0、X1的決定及讀取。
控制部18係讀取輸入資料X0之後,執行控制程式內的命令,且將藉由執行所獲得的輸出資料儲存於記憶部17的輸出資料儲存區域24。在此,針對控制部18動態分析與第3圖所示的動作規格相對應的控制程式之情形加以說明。
在步驟S70,當控制部18從控制程式讀取 參照記憶部17內的輸入資料X0的命令時,控制部18係讀取儲存於記憶部17的輸入資料儲存區域23的輸入資料X0。控制部18係參照所讀取的輸入資料X0,並執行控制程式。藉此,控制程式係算出與輸入資料X0相對應的輸出資料Y0。
在此的控制部18係在步驟S80判定輸入資料X0是否為導通。輸入資料X0為導通時,亦即在步驟S80為是(Yes)的情形,在步驟S90,控制部18係使用控制程式來決定輸出資料Y0為導通。另一方面,輸入資料X0為關斷時,亦即在步驟S80為否(No)的情形,在步驟S100,控制部18係使用控制程式來決定輸出資料Y0為關斷。如此,控制部18係藉由執行控制程式,從而算出與輸入資料X0相對應的輸出資料Y0。之後,在步驟S110,控制部18係將屬於執行結果的輸出資料Y0的值儲存至記憶部17的輸出資料儲存區域24。
再者,在步驟S120,當控制部18從控制程式讀取參照輸入輸出裝置16內的輸入資料X1的命令時,控制部18係藉由從測試模式101內抽出與時間資訊產生部19所產生的時間資訊T1相同的時間資訊T2,來取得時間資訊T2。亦即,當控制部18係在有參照輸入資料X1的命令時,在此時序(timming)取得時間資訊T1,並且取得與時間資訊T1相對應的時間資訊T2。並且,在步驟S130,控制部18係根據時間資訊T2,決定從測試模式101當中進行參照的輸入資料X1。並且,控制部18係讀取登錄在 測試模式101的輸入資料X1。如此,在實施形態中,在控制部18進行動態分析時,在有參照輸入輸出裝置16內的輸入資料X1的命令時,讀取登錄在測試模式101的輸入資料X1。於是,控制部18參照所讀取的輸入資料X1,來執行控制程式。藉此,控制程式係算出與輸入資料X1相對應的輸出資料Y1。
在此的控制部18,在步驟S140,判定輸入資料X1是否為導通。當輸入資料X1為導通時,亦即在步驟S140為是(Yes)的情形,於步驟S150,控制部18係使用控制程式來決定輸出資料Y1為導通。另一方面,輸入資料X1為關斷時,亦即在步驟S140為否(No)的情形,在步驟S160,控制部18係使用控制程式來決定輸出資料Y1為關斷。如此,控制部18係藉由執行控制程式,來算出與輸入資料X1相對應的輸出資料Y1。
此後,在步驟S170,控制部18係將屬於執行結果的輸出資料Y1的值儲存至記憶部17的輸出資料儲存區域24。上述之步驟S70至步驟S170的處理係執行動態分析時的控制程式的執行處理。
在步驟S180,控制部18係根據來自使用者的指示,判定停止PLC 15的動作的與否。若使用者未對PLC 15輸入動作停止的指示,則控制部18不停止PLC 15的動作。不停止PLC 15的動作時,亦即在步驟S180為否(No)的情形,控制部18係返回步驟S30,並判斷是否進行控制程式的動態分析。當控制部18執行動態分析時,亦即 步驟S30為是(Yes)的情形,執行步驟S40至步驟S180的處理。
在步驟S180,控制部18係直至判定要停止PLC 15的動作為止,反覆步驟S30至步驟S170的處理。並且,在步驟S180,當控制部18判定要停止PLC 15的動作時,亦即步驟S180為是(Yes)的情形,控制部18係停止PLC 15的動作。如此,控制部18係完成控制程式的執行之後,直到接收動作停止的指示為止,反覆輸入輸出資料的更新及控制程式的執行。
在不執行動態分析時,亦即步驟S30為否(No)情形,控制部18係與執行動態分析時同樣地,進行輸入輸出資料的更新以及控制程式的執行。當控制部18不執行動態分析時,則對輸入輸出裝置16值行通常的控制動作。此時,控制部18係在步驟S190,將從輸入輸出裝置16讀出的輸入資料X0儲存至記憶部17的輸入資料儲存區域23。
控制部18儲存輸入資料X0之後,在步驟S200將儲存於記憶部17的輸出資料儲存區域24的輸出資料傳送至輸入輸出裝置16。在此的控制部18係將控制程式的命令當中,屬於在較從此開始執行的命令還前一個命令所執行的執行結果的輸出資料傳送至輸入輸出裝置16。上述之步驟S190至步驟S200的處理係執行通常動作時的輸入輸出資料的更新處理。
當控制部18執行了輸入輸出資料的更新之 後,執行儲存於記憶部17的控制程式儲存區域25的控制程式。控制部18係從輸入輸出裝置16讀取輸入資料X0之後,執行控制程式內的命令,且將藉由執行所獲得的輸出資料儲存至記憶部17的輸出資料儲存區域24。在此,控制部18係針對執行與在第3圖所示的動作規格相對應的控制程式時加以說明。另外,在以下的說明中,會有省略說明執行通常動作時的處理中,與執行動態分析時同樣之處理的情形。
當控制部18使用控制程式執行通常動作時,執行與步驟S70至步驟S110同樣的處理的步驟S210至步驟S250的處理。並且,在步驟S260,當控制部18從控制程式讀取參照輸入輸出裝置16內的輸入資料的命令時,在步驟S270,控制部18係參照輸入輸出裝置16內的輸入資料X1。此後,控制部18執行與步驟S140至步驟S170同樣之處理的步驟S280至步驟S310的處理。
並且,在步驟S180,控制部18係根據來自使用者的指示,判定停止PLC 15的動作的與否。若使用者未對PLC 15輸入動作停止的指示,則控制部18不停止PLC 15的動作。在不停止PLC 15的動作時,亦即在步驟S180為否(No)的情形,控制部18係返回步驟S30,並判斷控制程式的動態分析進行的與否。當控制部18不執行動態分析時,亦即步驟S30為是(No)的情形,執行步驟S190至步驟S310的處理。
在步驟S180,控制部18係直至判定要停止 PLC 15的動作為止,反覆步驟S190至步驟S310及步驟S180的處理。並且,在步驟S180,當控制部18判定要停止PLC 15的動作時,亦即步驟S180為是(Yes)的情形,控制部18係停止PLC 15的動作。如此,控制部18係完成控制程式的執行之後,直到接收動作停止的指示為止,反覆輸入輸出資料的更新及控制程式的執行。
另外,控制部18亦可在執行動態分析時,逐次執行對於核對部13的輸入輸出資料的傳送,亦可在記憶部17累積輸入輸出資料後以固定的週期傳送輸入輸出資料。
核對部13係藉由核對從PLC 15傳送來的輸入資料X0、X1、輸出資料Y0、Y1與裝置14的動作規格,而驗證控制程式是否根據動作規格而設計。在該情形中,核對部13亦可以核對從PLC 15傳送來的輸輸入輸出資料與在第3圖所示的裝置14的動作規格,亦可以核對從PLC 15傳送來的輸入輸出資料與在第4圖所示的測試模式101。
在此,針對使用裝置14或設備的實際機器進行控制程式的動作驗證的情形,與藉由程式驗證系統10所執行之控制程式的動作驗證的不同點加以說明。
第6圖係用以說明使用實際機器的動作驗證與實施形態之動作驗證的不同點的圖式。在第6圖中,顯示使用如裝置14的實際機器的比較例的驗證處理,及由程式驗證系統10所執行的驗證處理。另外,在此為了便於 說明,實施形態的PLC稱為PLC 15,而進行使用實際機器的動作驗證的PLC稱為比較例PLC。再者,比較例PLC所具備的記憶部稱為比較例記憶部。該比較例記憶部係對應於PLC 15所具備的記憶部17。
PLC15及比較例PLC所進行之裝置14的控制係含有更新輸入輸出資料的程序及執行控制程式的程序的兩個程序。再者,PLC 15及比較例PLC所用於裝置14的控制的控制程式係具有包含複數個命令的命令群。
PLC 15及比較例PLC係時間t0至時間t1為止之間,執行更新輸入輸出資料的處理。再者,PLC 15及比較例PLC係時間t1至時間t3為止之間,執行控制程式。在該情形中,PLC 15及比較例PLC係時間t1至時間t2為止之間,嘗試參照記憶部17的輸入資料X0的命令的執行,且在時間t2至時間t3為止之間,嘗試參照輸入輸出裝置16的輸入資料X1的命令的執行。
並且,輸入輸出裝置16所保持的輸入資料X1係隨著時間改變。另一方面,儲存於記憶部17的輸入資料X1係在輸入輸出資料的更新處理的時序改變,而在控制程式的執行時不改變。因此,在輸入輸出資料的更新處理時,若記憶部17及比較例記憶部儲存輸入資料X1的「0」,則控制程式的執行時,記憶部17及比較例記憶部所儲存的輸入資料X1亦保持在「0」的狀態。
如此,對於輸入資料X1,實施形態的PLC 15係使用時間t0至時間t3為止的時間資訊執行動作驗證, 相對於此,比較例PLC係使用時間t0的時間資訊執行動作驗證。
在實施形態中,就具有參照輸入輸出裝置16的輸入資料X1的命令的時序而言,測試模式產生部12係在測試模式101設定與輸入輸出裝置16所保持之輸入資料X1相同的輸入資料X1。亦即,設定於測試模式101的輸入資料X1係與輸入輸出裝置16所保持的輸入資料X1同樣地隨時間改變。因此,當時間t2至時間t3為止之間的輸入輸出裝置16的輸入資料X1為「1」時,時間t2至時間t3為止之間的測試模式101的輸入資料X1亦為「1」。另一方面,比較例PLC僅可參照比較例記憶部內的輸入資料X1。以下,針對實施形態的PLC 15執行的處理P1至處理P3,以及比較例PLC執行處理P11至處理P13加以說明。處理P1、處理P11係時間t0至時間t1為止的處理,處理P2、處理P12係時間t1至時間t2為止的處理,而處理P3、處理P13係時間t2至時間t3為止的處理。
(處理P1)
實施形態的PLC 15係在更新輸入輸出資料的程序中,使用時間資訊產生部19來取得時間資訊T2。並且,PLC 15係根據時間資訊T2並參照測試模式101,藉此抽出與時間資訊T2相對應的輸入資料X0。再者,PLC 15係將自測試模式101所抽出的輸入資料X0儲存至記憶部17。
(處理P2)
再者,當PLC 15在執行控制程式的程序具有參照記 憶部17的輸入資料X0的命令時,參照記憶部17內的輸入資料X0,且根據該輸入資料X0執行命令。
(處理P3)
再者,PLC 15在執行控制程式的程序中有參照輸入輸出裝置16的輸入資料X1之命令時,使用時間資訊產生部19取得時間資訊T2。並且,PLC1係根據時間資訊T2並參照測試模式101,藉此抽出與時間資訊T2相對應的輸入資料X1。進而,PLC 15係根據從測試模式101抽出的輸入資料X1來執行命令。藉此,結束處理P3的處理。
測試模式101內的輸入資料X1係與輸入輸出裝置16所保持的輸入資料X1相同值,所以PLC 15係可執行與使用輸入輸出裝置16動作時相同的動作。如此,PLC 15係在記憶部17儲存有測試模式101,所以可參照時間t2的正確的輸入資料。再者,PLC 15係從記憶部17內的測試模式101讀出輸入資料X1並儲存至記憶部17內,所以在動作驗證時,不需要PLC 15與驗證裝置11之間的通信時間。
(處理P11)
比較例PLC係在更新輸入輸出資料的程序,取得時間t0的時間資訊。之後,比較例PLC係根據時間t0的時間資訊並參照測試模式,藉此抽出與時間t0的時間資訊相對應的輸入資料X0。進而,比較例PLC係將從測試模式抽出的輸入資料X0儲存至比較例記憶部。在該情形中,比較例PLC所參照的測試模式係與時間t0的時間資訊相對 應者。在比較例PLC所使用的測試模式內的時間t0的輸入資料X0與在實施形態的PLC 15所使用的測試模式101內的時間t0的輸入資料X0為相同。因此,PLC 15及比較例PLC可在處理P1及處理P11獲得同樣的驗證結果。
(處理P12)
另外,比較例PLC係在執行控制程式之程序中有參照比較例記憶部的輸入資料X0之命令時,參照比較例記憶部內的輸入資料X0,且根據該輸入資料X0來執行命令。在該情形,時間t1至時間t3為止之間,不會更新記憶部17及比較例記憶部的輸入資料。因此,在比較例PLC所使用的測試模式內的時間t1的輸入資料X0與在實施形態的PLC 15所使用的測試模式101內的時間t1的輸入資料X0為相同。因此,PLC 15及比較例PLC係可在處理P2及處理P12獲得同樣的驗證結果。
(處理P13)
如上述之方式,在屬於輸入輸出資料的更新處理的時間t0,若比較例PLC將輸入資料X1的「0」儲存至比較例記憶部,則控制程式的執行時,比較例記憶部所儲存的輸入資料X1亦保持在「0」的狀態。因此,比較例PLC即使在執行控制程式的程序有參照輸入輸出裝置16的輸入資料X1的命令,亦僅能取得比較例記憶部的輸入資料X0。因此,比較例PLC無法使用屬於輸入輸出裝置16之實際輸入資料的輸入資料X1。亦即,比較例PLC執行如參照輸入輸出裝置16的輸入資料X1之命令時,由於比較 例PLC僅具有與驗證裝置11通信之時間t0的輸入資料X0,所以並無法參照正確的輸入資料X1。如此,比較例PLC仍是屬於將時間t0的時間點的輸入資料X0、X1儲存在記憶部之狀態,所以即使是在時間t2的時間點進行驗證之情形,亦僅可使用在時間t0的時間點的輸入資料X0、X1。因此,比較例PLC無法以與實際機器相同的精確度進行動作驗證。另外,輸入輸出裝置16不進行動作,所以比較例PLC無法從輸入輸出裝置16讀出輸入資料X1。
再者,在驗證裝置11在動作驗證時對比較例PLC傳送屬於驗證用的資料的輸入資料X1之情形,在驗證裝置11與比較例PLC之間產生通信處理。因此,比較例PLC無法在動作驗證時,在與實際的動作同樣的時序進行動作。結果,驗證裝置11無法正確驗證比較例PLC所使用的輸入輸出資料。
再者,若電腦藉由模擬來進行控制程式的動作驗證時,會增加耗費在建構使用於模擬的虛擬環境的工時,並且並非進行即時的驗證,所以驗證需要較長時間。此外,電腦藉由模擬來進行控制程式的動作驗證時,與使用前述實際機器的動作驗證同樣地,無法在與實際機器同樣的時序確認輸入輸出資料是否遷移。
另一方面,PLC 15預先將屬於動作驗證用的資料的測試模式101儲存至記憶部17內,參照測試模式101內的輸入資料X0、X1來計算可獲得PLC 15動作之結果的輸出資料Y0、Y1。並且,驗證裝置11係核對裝置14 的動作規格與算出的輸出資料Y0、Y1。換言之,驗證裝置11係核對測試模式101內的輸出資料與算出的輸出資料Y0、Y1。藉此,可在與實際的裝置14同樣的時序驗證輸入資料X0、X1及輸出資料Y0、Y1是否遷移。
在此,針對控制部18的硬體構成加以說明。第7圖係顯示實施形態的PLC所具備的控制部的硬體構成例的圖式。控制部18係藉由第7圖所示的控制電路300來實現,亦即可藉由處理器301及記憶體302來實現。處理器301的例子為:CPU(亦稱:Central Processing Unit、中央處理裝置、處理裝置、演算裝置、微處理器(microprocessor)、微電腦(microcomputer)、處理器、DSP)或系統LSI(Large Scale Integration)。記憶體302的例子為:RAM(Random Access Memory)、ROM(Read Only Memory)或快閃記憶體(flash memory)。
控制部18係藉由處理器301讀出並執行在記憶體302所記憶的用來執行控制部18的動作之程式來實現,。再者,該程式亦稱為使電腦執行控制部18的步驟或方法者。記憶體302亦使用於處理器301執行各種處理時的暫時記憶體。
如此,處理器301所執行的程式為可利用電腦執行的電腦程式產品,該電腦程式產品係具有包含用來進行資料處理的複數個命令的電腦可讀取並且非暫態(non-transitory)性的紀錄媒體。處理器301所執行的程式,係使電腦執行複數個命令進行資料處理者。
再者,亦可以專用的硬體實現控制部18。再者,就控制部18的功能,亦可以專用的硬體實現一部分,而以軟體或韌體實現一部分的形態。
另外,驗證裝置11的測試模式產生部12及核對部13亦與控制部18同樣地,可藉由第7圖所示的控制電路300來實現,亦即藉由處理器301及記憶體302來實現。
如此,在實施形態中,PLC 15預先記憶含有時間資訊T2的測試模式101,且根據產生的時間資訊T1,從測試模式101抽出輸入資料X0、X1。並且,PLC 15係使用控制程式及已抽出的輸入資料X0、X1來算出輸出資料Y0、Y1。進而,驗證裝置11係核對測試模式101內的與輸入資料X0、X1相對應的輸出資料與PLC 15所算出的輸出資料。藉此,程式驗證系統10係可在與實際的裝置14同樣的時序下執行驗證輸入輸出資料是否遷移的驗證。因此,程式驗證系統10係可容易地進行控制程式的正確的動作驗證。
再者,PLC 15係將測試模式101儲存至PLC 15內的記憶部17,所以可以高速重寫PLC 15內的輸入輸出資料的值。再者,PLC 15係將測試模式101儲存至PLC 15內的記憶部17,所以在動作驗證時,不須從驗證裝置11接收輸入資料X0、X1。藉此,程式驗證系統10可以短時間並且較少工時來執行控制程式的動作驗證。因此,能夠縮短研發含有裝置14或PLC 15之設備時的啟動期間。
以上的實施形態所示的構成係顯示本發明內容的一例,亦可與其他習知技術組合,且在未脫離本發明之要旨的範圍,亦可省略、變更構成的一部分。
Claims (8)
- 一種程式驗證系統,係具備有:控制裝置,係輸入有來自進行資料的輸入輸出的輸入輸出裝置的控制輸入資料,並且使用對裝置進行控制用的控制程式算出與前述控制輸入資料相對應的控制輸出資料並輸出至前述輸入輸出裝置;以及核對部,係藉由核對包含在測試模式的測試輸出資料與前述控制裝置所算出的前述控制輸出資料,從而進行前述控制程式的動作驗證,該測試模式係滿足前述裝置的動作規格的測試輸入資料與前述測試輸出資料之組合且顯示時間性變化者;前述控制裝置係具有:記憶部,係記憶前述測試模式;以及控制部,係在進行前述控制程式的動作驗證時,當在前述控制程式有參照前述控制輸入資料的命令時,取得屬於前述控制裝置內之時間資訊的第一時間資訊,並且從前述測試模式內抽出與前述第一時間資訊相對應的前述測試輸入資料,且使用已抽出的前述測試輸入資料及前述控制程式算出前述控制輸出資料。
- 如申請專利範圍第1項所述之程式驗證系統,又具備有:測試模式產生部,係產生前述測試模式並傳送至前述控制裝置。
- 如申請專利範圍第1項或第2項所述之程式驗證系 統,其中,前述記憶部係含有:第一記憶部,係記憶前述測試模式;第二記憶部,係記憶來自前述輸入輸出裝置的前述控制輸入資料;以及第三記憶部,係記憶用於前述輸入輸出裝置的前述控制輸出資料;在進行前述控制程式的動作驗證時,前述控制程式中有參照由前述輸入輸出裝置所輸入的前述控制輸入資料的命令,則前述控制部係根據前述第一時間資訊從前述測試模式內抽出前述測試輸入資料並儲存至前述第二記憶部,並且使用已抽出的前述測試輸入資料及前述控制程式來算出前述控制輸出資料並儲存至前述第三記憶部,並且將前述第二記憶部內的前述測試輸入資料及前述第三記憶部內的前述控制輸出資料予以傳送至前述核對部,前述核對部係使用與來自前述控制部的前述測試輸入資料相對應的前述測試輸出資料來進行前述動作驗證。
- 如申請專利範圍第1項所述之程式驗證系統,其中,前述控制裝置又具備有:產生前述第一時間資訊的時間資訊產生部;前述測試模式係使前述測試輸入資料、前述測試輸出資料及屬於與前述第一時間資訊相對應之時間資 訊的第二時間資訊建立對應關聯而得者,前述核對部係根據前述第一時間資訊及前述第二時間資訊,來核對前述控制裝置所算出的前述控制輸出資料及前述測試模式內的前述測試輸出資料。
- 如申請專利範圍第2項所述之程式驗證系統,其中,前述測試模式產生部係根據前述裝置的動作規格,來產生前述測試模式。
- 一種控制裝置,係具備有:控制部,係使用對裝置進行控制用的控制程式算出與控制輸入資料相對應的控制輸出資料;第一通信部,係將前述控制輸入資料及前述控制部所算出之前述控制輸出資料輸出至驗證裝置;第二通信部,係輸入有來自進行資料之輸入輸出的輸入輸出裝置的前述控制輸入資料,並對前述輸入輸出裝置輸出前述控制輸出資料;以及記憶部,係記憶測試模式,該測試模式係滿足前述裝置的動作規格的測試輸入資料與測試輸出資料的組合且顯示時間性變化者;前述控制部係在進行前述控制程式的動作驗證時,產生屬於自身裝置內之時間資訊的第一時間資訊,並且從前述測試模式內抽出與前述第一時間資訊相對應的前述測試輸入資料,且使用已抽出的前述測試輸入資料及前述控制程式算出前述控制輸出資料。
- 如申請專利範圍第6項所述之控制裝置,其中,前述 驗證裝置又具備有:核對部,係藉由核對前述控制部所算出的前述控制輸出資料與前述測試模式,從而進行前述控制程式的動作驗證;前述核對部係核對前述控制裝置所算出的前述控制輸出資料與前述測試模式內的前述測試輸出資料。
- 一種程式驗證方法,係含有:記憶步驟,係由控制裝置記憶測試模式,該控制裝置係輸入有來自進行資料的輸入輸出的輸入輸出裝置的控制輸入資料,並且使用對裝置進行控制用的控制程式算出與前述控制輸入資料相對應的控制輸出資料並輸出至前述輸入輸出裝置,該測試模式係滿足前述裝置的動作規格的測試輸入資料與測試輸出資料的組合且顯示時間性變化者;算出步驟,係在進行前述控制程式的動作驗證時,由前述控制裝置產生屬於前述控制裝置內的時間資訊的第一時間資訊,並且從前述測試模式內抽出與前述第一時間資訊相對應的前述測試輸入資料,且使用已抽出的前述測試輸入資料及前述控制程式算出前述控制輸出資料;以及驗證步驟,係由進行前述控制程式的動作驗證的驗證裝置核對前述控制裝置所算出的前述控制輸出資料與前述測試模式內的前述測試輸出資料,從而進行前述控制程式的動作驗證。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2017/023134 WO2018235250A1 (ja) | 2017-06-23 | 2017-06-23 | プログラム検証システム、制御装置およびプログラム検証方法 |
??PCT/JP2017/023134 | 2017-06-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201905613A TW201905613A (zh) | 2019-02-01 |
TWI673582B true TWI673582B (zh) | 2019-10-01 |
Family
ID=63668419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107106586A TWI673582B (zh) | 2017-06-23 | 2018-02-27 | 程式驗證系統、控制裝置及程式驗證方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20190302739A1 (zh) |
JP (1) | JP6395967B1 (zh) |
CN (1) | CN109643095A (zh) |
DE (1) | DE112017003607T5 (zh) |
TW (1) | TWI673582B (zh) |
WO (1) | WO2018235250A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6923569B2 (ja) * | 2019-01-22 | 2021-08-18 | ファナック株式会社 | テストパターン生成装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040064253A1 (en) * | 2000-01-24 | 2004-04-01 | Brayton D. Dwight | Control system simulation, testing, and operator training |
TW200904056A (en) * | 2007-07-10 | 2009-01-16 | Mitsubishi Electric Corp | Transmitter apparatus and communication system |
CN102565747A (zh) * | 2012-01-10 | 2012-07-11 | 深圳市科陆电子科技股份有限公司 | 一种单相智能电能表自动化检定系统及方法 |
US20120246612A1 (en) * | 2011-03-23 | 2012-09-27 | Siemens Corporation | System and method for verification and validation of redundancy software in plc systems |
KR101252358B1 (ko) * | 2011-04-01 | 2013-04-08 | 엘에스산전 주식회사 | Plc 명령어 테스트 장치 및 방법 |
TW201710810A (zh) * | 2015-09-02 | 2017-03-16 | Mitsubishi Electric Corp | 模擬裝置以及模擬程式產品 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS643748A (en) * | 1987-06-26 | 1989-01-09 | Hitachi Ltd | Test device for software logical device |
JPH1097307A (ja) * | 1996-09-20 | 1998-04-14 | Toyota Motor Corp | シーケンサ動作検証装置およびシーケンサ動作検証プログラムを記録した媒体 |
JPH10161906A (ja) * | 1996-11-29 | 1998-06-19 | Toshiba Corp | ソフトウェア実行装置及びソフトウェア実行方法 |
CN1120395C (zh) * | 1998-12-03 | 2003-09-03 | 三菱电机株式会社 | 伺服系统控制器 |
JP4465920B2 (ja) * | 2001-06-04 | 2010-05-26 | マツダ株式会社 | シミュレーション装置及びシミュレーション方法 |
JP4379687B2 (ja) * | 2003-07-25 | 2009-12-09 | オムロン株式会社 | シミュレーション支援ツールおよびラダープログラムの検証システムならびにプログラム製品 |
CN104272205B (zh) * | 2012-05-09 | 2016-06-29 | 三菱电机株式会社 | 数控装置 |
-
2017
- 2017-06-23 WO PCT/JP2017/023134 patent/WO2018235250A1/ja active Application Filing
- 2017-06-23 US US16/316,484 patent/US20190302739A1/en not_active Abandoned
- 2017-06-23 CN CN201780050245.7A patent/CN109643095A/zh active Pending
- 2017-06-23 DE DE112017003607.0T patent/DE112017003607T5/de not_active Withdrawn
- 2017-06-23 JP JP2018502432A patent/JP6395967B1/ja not_active Expired - Fee Related
-
2018
- 2018-02-27 TW TW107106586A patent/TWI673582B/zh not_active IP Right Cessation
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040064253A1 (en) * | 2000-01-24 | 2004-04-01 | Brayton D. Dwight | Control system simulation, testing, and operator training |
TW200904056A (en) * | 2007-07-10 | 2009-01-16 | Mitsubishi Electric Corp | Transmitter apparatus and communication system |
US20120246612A1 (en) * | 2011-03-23 | 2012-09-27 | Siemens Corporation | System and method for verification and validation of redundancy software in plc systems |
KR101252358B1 (ko) * | 2011-04-01 | 2013-04-08 | 엘에스산전 주식회사 | Plc 명령어 테스트 장치 및 방법 |
CN102565747A (zh) * | 2012-01-10 | 2012-07-11 | 深圳市科陆电子科技股份有限公司 | 一种单相智能电能表自动化检定系统及方法 |
TW201710810A (zh) * | 2015-09-02 | 2017-03-16 | Mitsubishi Electric Corp | 模擬裝置以及模擬程式產品 |
Also Published As
Publication number | Publication date |
---|---|
US20190302739A1 (en) | 2019-10-03 |
CN109643095A (zh) | 2019-04-16 |
WO2018235250A1 (ja) | 2018-12-27 |
TW201905613A (zh) | 2019-02-01 |
JPWO2018235250A1 (ja) | 2019-06-27 |
JP6395967B1 (ja) | 2018-09-26 |
DE112017003607T5 (de) | 2019-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4442524B2 (ja) | 安全plc | |
US12056476B2 (en) | Software defined manufacturing/assembly system | |
JP5636378B2 (ja) | 安全コントローラ用のユーザプログラムを作成するための方法および機器ならびにコンピュータプログラム | |
TWI553497B (zh) | 模擬系統、可程式控制器、模擬裝置、工程工具 | |
JP6433635B1 (ja) | シミュレーション装置およびシミュレーション方法 | |
JP6476594B2 (ja) | シミュレーションシステム | |
JP6139386B2 (ja) | プログラマブルコントローラ | |
US20170068235A1 (en) | Programmable controller and device control method for programmable controller | |
TWI673582B (zh) | 程式驗證系統、控制裝置及程式驗證方法 | |
US10126726B2 (en) | Apparatus and method for generating program | |
US20190204816A1 (en) | Simulation device | |
US20170205780A1 (en) | Embedded Emulation Modules in Industrial Control Devices | |
JP2016024798A (ja) | 冗長化コントローラシステム、その待機系コントローラ | |
JP7184710B2 (ja) | 模擬プロセス制御装置 | |
JP2008165324A (ja) | プログラム作成支援装置 | |
JPH03223901A (ja) | 半導体製造装置 | |
JP2009289156A (ja) | シミュレーション装置 | |
JP3598732B2 (ja) | 分散制御システムの構成管理方法およびこれに用いるデータ | |
JP2018067148A (ja) | シミュレーションシステム | |
JP2004265001A (ja) | プロセスコントロール機器及びcpuユニット | |
WO2024166239A1 (ja) | 数値制御システム、数値制御プログラムおよび数値制御方法 | |
US20220365864A1 (en) | Program development device, and program for providing program development device | |
KR102199611B1 (ko) | 카드 리더기를 이용한 블록 프로그래밍 시스템 및 이를 이용한 블록 프로그래밍 방법 | |
JP2010108075A (ja) | プログラマブルコントローラ及びそのシーケンスプログラム動作検証方法 | |
JPWO2014184949A1 (ja) | ソフトウェア試験装置、ソフトウェア試験方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |