KR20170127569A - Program diagnostic device, program diagnostic method, and program diagnostic program - Google Patents
Program diagnostic device, program diagnostic method, and program diagnostic program Download PDFInfo
- Publication number
- KR20170127569A KR20170127569A KR1020177031427A KR20177031427A KR20170127569A KR 20170127569 A KR20170127569 A KR 20170127569A KR 1020177031427 A KR1020177031427 A KR 1020177031427A KR 20177031427 A KR20177031427 A KR 20177031427A KR 20170127569 A KR20170127569 A KR 20170127569A
- Authority
- KR
- South Korea
- Prior art keywords
- command
- search
- condition
- control program
- unit
- Prior art date
Links
- 238000000034 method Methods 0.000 claims description 19
- 238000004088 simulation Methods 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 31
- 230000000694 effects Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 238000011144 upstream manufacturing Methods 0.000 description 5
- 239000000758 substrate Substances 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000002950 deficient Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
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
- 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
- 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/0259—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
- G05B23/0267—Fault communication, e.g. human machine interface [HMI]
- G05B23/0272—Presentation of monitored results, e.g. selection of status reports to be displayed; Filtering information to the user
-
- 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/10—Plc systems
- G05B2219/14—Plc safety
- G05B2219/14112—Diagnostic, troubleshooting
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
- Human Computer Interaction (AREA)
Abstract
동작 명령 및 조건 명령을 포함하는 제어 프로그램과, 명령의 명령명, 명령의 타입 및 명령의 처리의 내용을 포함하는 명령 사양 데이터와, 제어 프로그램에 대해서 실행되는 검색의 결과가 축적되는 검색 결과 데이터를 기억하는 기억부와, 타겟 변수를 설정하는 변수 설정부와, 타겟 변수의 값이 변화할 가능성이 있는 동작 명령을 검색하고, 타겟 변수명 및 검색된 동작 명령의 명령명, 명령의 타입 및 처리의 내용을 검색 결과 데이터에 기입하는 동작 검색부와, 동작 명령을 실행하는 조건을 판정하는 조건 명령을 검색하고, 검색된 조건 명령의 인수의 변수명 및 조건 명령의 명령명, 명령의 타입 및 처리의 내용을 검색 결과 데이터에 기입하고, 조건 명령의 인수를 새로운 타겟 변수로 설정하는 조건 검색부와, 동작 검색부 및 조건 검색부에 검색을 재차 실행시키는 검색 판정부와, 검색 결과 데이터의 내용을 일람 표시하는 일람 표시부를 구비한다. A control program including an operation command and a conditional instruction; command specification data including a command name of the command, a type of the command, and contents of processing of the command; and search result data in which the result of the search executed for the control program is stored A variable setting unit for setting a target variable, an operation command having a possibility that the value of the target variable may change, a target variable name, a command name of the retrieved operation command, a type of command, An operation search unit for searching for a conditional command for determining a condition for executing an operation command, a variable name of an argument of the retrieved conditional command, a command name of the conditional command, a type of command, A condition search unit for writing the search result data into the search result data and setting an argument of the conditional command as a new target variable; The primary search execution determination section, and provided with a list display list to display the contents of the search result data to.
Description
본 발명은 제어 프로그램을 진단하는 프로그램 진단 장치, 프로그램 진단 방법 및 프로그램 진단 프로그램에 관한 것이다. The present invention relates to a program diagnostic apparatus for diagnosing a control program, a program diagnostic method, and a program diagnostic program.
FA(Factory Automation) 분야에서 기계를 제어하는 제어 시스템에서는, 제어 프로그램은 프로그램 언어로 기술(記述)된다. 프로그램 언어는 래더(Ladder, LD) 언어 또는 스트럭처드 텍스트(Structured Text, ST) 언어(IEC 61131-3, JIS B 3503:2012)가 예시된다. In a control system for controlling a machine in the field of factory automation (FA), a control program is described in a programming language. The programming language is ladder (LD) language or structured text (ST) language (IEC 61131-3, JIS B 3503: 2012).
제어 프로그램은 명령 및 변수를 포함한다. 제어 프로그램 내의 어느 변수의 값이, 상정하고 있는 값과 상이한 경우에, 그 원인을 조사하기 위해서는, 이하의 조작이 수동으로 행해지고 있었다. The control program includes commands and variables. In the case where the value of a certain variable in the control program is different from the assumed value, the following operation has been performed manually to investigate the cause thereof.
제1 조작은 제어 프로그램을 거슬러 올라가, 타겟 변수의 값을 변화시킬 가능성이 있는 지점 및 조건을 조사하는 조작이다. The first operation is an operation to go back to the control program and examine the points and conditions that are likely to change the value of the target variable.
제2 조작은 제어 프로그램을 시뮬레이션 실행하여, 제1 조작에서 조사한 지점에서 조건이 만족되는 것을 재현하는 조작이다. The second operation is an operation for simulating the control program to reproduce that the condition is satisfied at the point irradiated in the first operation.
제3 조작은 추가로 제어 프로그램을 거슬러 올라가, 제2 조작에서 재현한 조건을 만족하는 지점 및 조건을 조사하는 조작이다. The third operation is an operation of going back to the control program and examining the point and condition satisfying the condition reproduced in the second operation.
이후, 제2 조작 및 제3 조작을 반복하여, 근본이 되는 원인을 찾고 있었다.Thereafter, the second operation and the third operation were repeated to find the root cause.
그러나 수동으로 제어 프로그램을 거슬러 올라가 조사해 가는 것은, 시간 및 노력이 드므로, 변수의 값이 상정하고 있는 값과 상이한 것의 원인의 특정은 곤란했었다. However, since it is time and effort to go back and examine the control program manually, it was difficult to specify the cause of the difference of the value of the variable from the assumed value.
관련되는 기술로서, 하기의 특허 문헌 1에는, 출력 신호가 이상(異常) 접점으로 검지되었을 경우, 그 출력 신호로부터 래더 프로그램을 전의 스텝으로 돌아가, 1개 1개의 접점 상태를 확인하면서 결함 접점을 특정하는 커버리지 진단을 행하는, 래더 프로그램 진단 방법이 기재되어 있다(단락 0053).As a related art, Japanese Patent Application Laid-Open Publication No. 2001-34870 discloses a technique in which, when an output signal is detected as an abnormal contact, the ladder program is returned from the output signal to the previous step, A ladder program diagnostic method is disclosed (paragraph 0053).
또, 하기의 특허 문헌 2에는, 출력 명령부의 이상을 검색 키로 하여, 이 값을 조작 가능한 출력 명령부를 포함한 블록을 래더 프로그램 내의 모든 블록 중으로부터 발견하는 제1 과정과, 제1 과정에서 찾아 내진 블록의 조건 명령부의 논리 연산을 행하고, 이 조건 명령부의 논리 연산 결과에 대응하는 이 블록의 출력 명령부의 상태를 판정하여, 이 블록이 상기 이상한 출력 명령부의 상태를 실제로 조작하고 있는지 여부에 대한 정당성 판정을 행하는 제2 과정과, 제2 과정에서 블록이 정당한 경우에, 이 블록의 조건 명령부 중에서 그 출력 명령부의 상태를 조작 가능한 릴레이를 모두 찾는 제3 과정과, 제3 과정에서 찾아 내진 릴레이를 다음 검색 키로 하여 제1, 제2 및 제3 과정을 반복하는 제4 과정과, 제1 과정에서 해당하는 블록이 발견되지 않았을 경우에, 그 취지의 결과를 출력함과 아울러, 제3 과정에서 해당하는 릴레이가 발견되지 않았을 경우에 그 조건 명령부 내의 릴레이를 이상 원인으로 하는 결과를 출력하는 제5 과정을 가지는 래더 시퀀스 방식의 프로그램에 있어서의 이상에 대한 원인 지점 구명 방법이 기재되어 있다(제4 페이지 내지 제5 페이지).In the following
또, 하기의 특허 문헌 3에는, 시퀀스도 취득부가 동작 상태의 시퀀스도를 취득하고, 선택부가 동작 시퀀스도 중 소망하는 심볼을 선택함으로써, 그 심볼에 관련되는 상류(上流)의 접속선을 접속선 검색부가 잇따라 검색하여, 동작 상태의 출력의 유무를 용이하게 얻을 수 있음과 아울러, 동작 상태가 변화하더라도, 그 데이터를 읽어들여 불량 부분의 검색을 차례로 행할 수 있는 시퀀스도 모니터가 기재되어 있다(요약서).In the following
그렇지만, 특허 문헌 1 내지 특허 문헌 3에 기재된 기술에서는, 유저는 문제의 원인이 된 접점을 알 수 있지만, 문제의 원인이 된 접점으로부터 문제가 발생한 접점까지의 사이의 명령을 알 수 없다. 따라서, 유저가 문제의 전체 형상(이미지)을 파악하는 것은, 곤란했다. However, in the techniques described in
본 발명은 상기를 감안하여 이루어진 것으로서, 유저가 문제의 전체 형상을 파악하는 것을 용이하게 할 수 있는 프로그램 진단 장치를 얻는 것을 목적으로 한다. SUMMARY OF THE INVENTION The present invention has been made in view of the above, and an object of the present invention is to obtain a program diagnostic apparatus which enables a user to easily grasp the overall shape of a problem.
상술한 과제를 해결하여 목적을 달성하기 위해서, 본 발명은 인수(引數, argument)의 값을 변화시키는 동작 명령 및 동작 명령을 실행하는 조건을 판정하는 조건 명령을 포함하는 제어 프로그램과, 제어 프로그램에서 기술될 수 있는 명령의 명령명, 동작 명령 또는 조건 명령의 타입, 및 명령의 처리의 내용을 포함하는 명령 사양 데이터와, 제어 프로그램에 대해서 실행되는 검색의 결과가 축적되는 검색 결과 데이터를 기억하는 기억부를 구비한다. 본 발명은 타겟 변수를 설정하는 변수 설정부와, 타겟 변수의 값이 변화할 가능성이 있는 동작 명령을 제어 프로그램 중에서 검색하고, 검색된 동작 명령과 명령 사양 데이터를 대조하여, 타겟 변수명, 및 검색된 동작 명령의 명령명, 명령의 타입 및 처리의 내용을 검색 결과 데이터에 기입하는 동작 검색부와, 동작 검색부에서 검색된 동작 명령을 실행하는 조건을 판정하는 조건 명령을 제어 프로그램 중에서 검색하고, 검색된 조건 명령과 명령 사양 데이터를 대조하고, 검색된 조건 명령의 인수의 변수명, 및 검색된 조건 명령의 명령명, 명령의 타입 및 처리의 내용을 검색 결과 데이터에 기입하고, 검색된 조건 명령의 인수를 새로운 타겟 변수로 설정하는 조건 검색부와, 동작 검색부 및 조건 검색부에 검색을 재차 실행시키는 검색 판정부와, 검색 결과 데이터의 내용을 일람 표시하는 일람 표시부를 구비한다. In order to solve the above-described problems and to achieve the object, the present invention is characterized by comprising: a control program including an operation command for changing a value of an argument and a condition command for determining a condition for executing an operation command; The instruction specification data including the instruction name of the instruction, the type of the operation instruction or the condition instruction, and the content of the instruction process, and the search result data in which the result of the search executed for the control program is stored And a storage unit. The present invention includes a variable setting unit for setting a target variable, an operation command for which a value of a target variable is likely to change is searched in a control program, a target variable name and a searched operation An operation retrieval unit that writes the command name of the command, the type of the command, and the contents of the processing into the retrieval result data; and a conditional command that determines a condition for executing the operation command retrieved by the operation retrieval unit, And the command specification data, writes the variable name of the argument of the retrieved condition command, the command name of the retrieved condition command, the type of command and the contents of the processing to the retrieval result data, and sets the argument of the retrieved condition command as a new target variable A search condition determining unit for determining whether or not to search for a search result, And a list display unit for displaying a list of contents of the data.
본 발명에 따른 프로그램 진단 장치는, 유저가 문제의 전체 형상을 파악하는 것을 용이하게 할 수 있다고 하는 효과를 달성한다. The program diagnostic apparatus according to the present invention achieves the effect that the user can easily grasp the overall shape of the problem.
도 1은 실시 형태 1에 따른 제어 시스템의 구성을 나타내는 도면이다.
도 2는 실시 형태 1에 따른 제어 장치의 하드웨어 구성을 나타내는 도면이다.
도 3은 실시 형태 1에 따른 엔지니어링 툴의 하드웨어 구성을 나타내는 도면이다.
도 4는 실시 형태 1에 따른 엔지니어링 툴의 기능 블록을 나타내는 도면이다.
도 5는 실시 형태 1에 따른 엔지니어링 툴의 명령 사양 데이터를 나타내는 도면이다.
도 6은 실시 형태 1에 따른 엔지니어링 툴의 검색 횟수 데이터를 나타내는 도면이다.
도 7은 실시 형태 1에 따른 엔지니어링 툴의 검색 범위 데이터를 나타내는 도면이다.
도 8은 실시 형태 1에 따른 엔지니어링 툴의 검색 결과 데이터를 나타내는 도면이다.
도 9는 실시 형태 1에 따른 엔지니어링 툴의 프로젝트 데이터 작성 화면을 나타내는 도면이다.
도 10은 실시 형태 1에 따른 엔지니어링 툴의 처리를 나타내는 순서도이다.
도 11은 실시 형태 1에 따른 엔지니어링 툴의 처리를 나타내는 순서도이다.
도 12는 실시 형태 1에 따른 엔지니어링 툴의 처리를 나타내는 순서도이다.
도 13은 실시 형태 1에 따른 엔지니어링 툴의 프로그램 진단 화면을 나타내는 도면이다.
도 14는 실시 형태 1에 따른 엔지니어링 툴의 검색 처리를 설명하는 도면이다.
도 15는 실시 형태 1에 따른 엔지니어링 툴의 검색 처리를 설명하는 도면이다.
도 16은 실시 형태 1에 따른 엔지니어링 툴의 검색 처리를 설명하는 도면이다.
도 17은 실시 형태 1에 따른 엔지니어링 툴의 프로그램 진단 화면을 나타내는 도면이다.
도 18은 실시 형태 1에 따른 엔지니어링 툴의 처리를 나타내는 순서도이다.
도 19는 실시 형태 1에 따른 엔지니어링 툴의 처리를 나타내는 순서도이다.1 is a diagram showing a configuration of a control system according to a first embodiment.
2 is a diagram showing the hardware configuration of the control apparatus according to the first embodiment.
3 is a diagram showing the hardware configuration of the engineering tool according to the first embodiment.
4 is a functional block diagram of the engineering tool according to the first embodiment.
5 is a diagram showing command specification data of the engineering tool according to the first embodiment.
6 is a diagram showing search frequency data of the engineering tool according to the first embodiment.
7 is a diagram showing search range data of the engineering tool according to the first embodiment.
8 is a diagram showing search result data of the engineering tool according to the first embodiment.
9 is a diagram showing a project data creation screen of the engineering tool according to the first embodiment.
10 is a flowchart showing the processing of the engineering tool according to the first embodiment.
11 is a flowchart showing the processing of the engineering tool according to the first embodiment.
12 is a flowchart showing the processing of the engineering tool according to the first embodiment.
13 is a diagram showing a program diagnostic screen of the engineering tool according to the first embodiment.
14 is a diagram for explaining a search process of the engineering tool according to the first embodiment.
15 is a diagram for explaining search processing of the engineering tool according to the first embodiment.
16 is a diagram for explaining the search processing of the engineering tool according to the first embodiment.
17 is a diagram showing a program diagnostic screen of the engineering tool according to the first embodiment.
18 is a flowchart showing the processing of the engineering tool according to the first embodiment.
19 is a flowchart showing the processing of the engineering tool according to the first embodiment.
이하에, 본 발명의 실시 형태에 따른 프로그램 진단 장치, 프로그램 진단 방법 및 프로그램 진단 프로그램을 도면에 기초하여 상세하게 설명한다. 또한, 이 실시 형태에 의해 이 발명이 한정되는 것은 아니다. Hereinafter, a program diagnostic apparatus, a program diagnostic method, and a program diagnostic program according to an embodiment of the present invention will be described in detail with reference to the drawings. The present invention is not limited to these embodiments.
실시 형태 1.
도 1은 본 발명의 실시 형태 1에 따른 제어 시스템의 구성을 나타내는 도면이다. 제어 시스템(1)은 엔지니어링 툴(2)과, 제어 장치(3)와, 기계(4 및 5)를 포함한다. 1 is a diagram showing a configuration of a control system according to
엔지니어링 툴(2)은 제어 장치(3)에서 실행되는 제어 프로그램을 포함하는 프로젝트 데이터를 작성하여, 제어 장치(3)에 송신한다. 제어 장치(3)는 프로젝트 데이터에 포함되는 제어 프로그램을 실행함으로써, 기계(4 및 5)를 제어한다. 제어 장치(3)는 프로그래머블 컨트롤러(JIS B 3502:2011, programmable controllers(PLC))가 예시된다. The
도 2는 실시 형태 1에 따른 제어 장치의 하드웨어 구성을 나타내는 도면이다. 제어 장치(3)는 메인 기판(3a)과, 서브 기판(3b 및 3c)을 포함한다. 2 is a diagram showing the hardware configuration of the control apparatus according to the first embodiment. The
메인 기판(3a)은 CPU(Central Processing Unit)(3a1)와, RAM(Random Access Memory)인 메모리(3a2)와, 통신 인터페이스(3a3)와, 버스 인터페이스(3a4)와, 기억부(3a5)를 포함한다. CPU(3a1), 메모리(3a2), 통신 인터페이스(3a3), 버스 인터페이스(3a4) 및 기억부(3a5)는, 내부 버스(B1)를 통해서 접속되어 있다. The main board 3a includes a CPU (Central Processing Unit) 3a1, a memory 3a2 as a RAM (Random Access Memory), a communication interface 3a3, a bus interface 3a4, and a storage unit 3a5 . The CPU 3a1, the memory 3a2, the communication interface 3a3, the bus interface 3a4, and the storage unit 3a5 are connected via the internal bus B1.
통신 인터페이스(3a3)는 엔지니어링 툴(2)과 통신을 행한다. The communication interface 3a3 communicates with the
버스 인터페이스(3a4)는 내부 버스(B1)와 확장 버스(B2)를 연결하는 버스 브릿지 회로이다. 서브 기판(3b 및 3c)은 확장 버스(B2)를 통해서, 메인 기판(3a)에 접속되어 있다. 서브 기판(3b)은 기계(4)에 접속되어 있다. 서브 기판(3c)은 기계(5)에 접속되어 있다.The bus interface 3a4 is a bus bridge circuit that connects the internal bus B1 and the expansion bus B2. The
기억부(3a5)는 엔지니어링 툴(2)로부터 수신한 프로젝트 데이터(24a)를 기억한다. 기억부(3a5)는 SSD(Solid State Drive) 또는 HDD(Hard Disk Drive)가 예시된다. The storage unit 3a5 stores the
프로젝트 데이터(24a)는 인수의 값을 변화시키는 동작 명령 및 동작 명령을 실행하는 조건을 판정하는 조건 명령을 포함하는 제어 프로그램(24a1)과, 제어 프로그램(24a1)의 실행시에 참조되는 제어 파라미터(24a2)와, 메모리(3a2) 내의 작업 영역을 규정하는 디바이스 메모리(24a3)와, 서브 기판(3b)과 기계(4)의 접속 관계 및 서브 기판(3c)과 기계(5)의 접속 관계를 규정하는 접속 정보(24a4)를 포함한다. The
제어 프로그램(24a1)은 MAIN(메인) 프로그램(24a1a)과, SUB(서브) 프로그램(24a1b)을 포함한다. 실시 형태 1에서는, 제어 프로그램(24a1)은 래더 언어로 기술되어 있는 것으로 하지만, 이것으로 한정되지 않는다. 제어 프로그램(24a1)이 기술되는 다른 언어는, 스트럭처드 텍스트 언어가 예시된다. The control program 24a1 includes a MAIN program 24a1a and a SUB (sub) program 24a1b. In
메모리(3a2) 내에는, 디바이스 메모리(24a3)로 규정되는 복수의 디바이스가 확보된다. 실시 형태 1에서는, 메모리(3a2) 내의 복수의 디바이스의 각각은, 제어 프로그램(24a1)의 변수에 대응한다. In the memory 3a2, a plurality of devices defined by the device memory 24a3 are secured. In
도 3은 실시 형태 1에 따른 엔지니어링 툴의 하드웨어 구성을 나타내는 도면이다. 실시 형태 1에 따른 엔지니어링 툴(2)은 컴퓨터를 이용하여 실현 가능하다. 컴퓨터는 CPU(21)와, RAM(22)과, ROM(Read Only Memory)(23)과, 기억부(24)와, 입력부(25)와, 표시부(26)와, 통신 인터페이스(27)를 포함한다. CPU(21), RAM(22), ROM(23), 기억부(24), 입력부(25), 표시부(26) 및 통신 인터페이스(27)는 버스(B)를 통해서 접속되어 있다. 3 is a diagram showing the hardware configuration of the engineering tool according to the first embodiment. The
CPU(21)는 RAM(22)을 작업 영역으로서 사용하면서, ROM(23) 및 기억부(24)에 기억되어 있는 프로그램을 실행한다. ROM(23)에 기억되어 있는 프로그램은, BIOS(Basic Input/Output System) 또는 UEFI(Unified Extensible Firmware Interface)가 예시된다. 기억부(24)에 기억되어 있는 프로그램은, 오퍼레이팅 시스템 프로그램 및 엔지니어링 툴 프로그램이 예시된다. 기억부(24)는 SSD 또는 HDD가 예시된다. The
입력부(25)는 유저로부터의 조작 입력을 접수한다. 입력부(25)는 키보드 또는 마우스가 예시된다. 표시부(26)는 문자 및 화상을 표시한다. 표시부(26)는 액정 표시 장치가 예시된다. 통신 인터페이스(27)는 제어 장치(3)와 통신을 행한다. The input unit 25 accepts an operation input from the user. The input unit 25 may be a keyboard or a mouse. The display section 26 displays characters and images. The display section 26 is a liquid crystal display device. The
도 4는 실시 형태 1에 따른 엔지니어링 툴의 기능 블록을 나타내는 도면이다. 기억부(24)는 프로젝트 데이터(24a)를 기억한다.4 is a functional block diagram of the engineering tool according to the first embodiment. The
프로젝트 데이터(24a)는 인수의 값을 변화시키는 동작 명령 및 동작 명령을 실행하는 조건을 판정하는 조건 명령을 포함하는 제어 프로그램(24a1)과, 제어 프로그램(24a1)의 실행시에 참조되는 제어 파라미터(24a2)와, 제어 장치(3)의 메모리(3a2) 내의 작업 영역을 규정하는 디바이스 메모리(24a3)와, 제어 장치(3)의 서브 기판(3b)과 기계(4)의 접속 관계 및 제어 장치(3)의 서브 기판(3c)과 기계(5)의 접속 관계를 규정하는 접속 정보(24a4)를 포함한다. The
기억부(24)는 제어 프로그램(24a1)에서 기술될 수 있는 모든 명령의 명령명, 동작 명령 또는 조건 명령의 타입 및 명령의 처리의 내용을 포함하는 명령 사양 데이터(24b)를 기억한다. The
실시 형태 1에서는, 제어 프로그램(24a1)은 래더 언어로 기술되어 있다. 따라서, 명령 사양 데이터(24b)는 래더 언어의 모든 명령의 명령명, 동작 명령 또는 조건 명령의 타입 및 명령의 처리의 내용을 포함한다. In the first embodiment, the control program 24a1 is described in a ladder language. Therefore, the
도 5는 실시 형태 1에 따른 엔지니어링 툴의 명령 사양 데이터를 나타내는 도면이다. 명령 사양 데이터(24b)는 명령명의 항목(24b1)과, 명령 타입의 항목(24b2)과, 설명문의 항목(24b3)과, 비고의 항목(24b4)을 포함한다. 5 is a diagram showing command specification data of the engineering tool according to the first embodiment. The
명령 사양 데이터(24b)의 행(51)은 「LD」(로드) 명령에 관한 정보를 포함한다. 행(51)의 명령명의 항목에는 명령명 「LD」가 기술되어 있다. 행(51)의 명령 타입의 항목에는, LD 명령이 조건 명령이므로, 명령 타입 「조건」이 기술되어 있다. A row 51 of the
행(51)의 설명문의 항목에는, 「LD」명령에 대한 동작 설명이 기술되어 있다. 「LD」명령은 제1 인수가 ON(온)되어 있는지 여부를 판정하는 명령이므로, 행(51)의 설명문의 항목에는, 설명문 「#1이 ON되어 있음」이 기술되어 있다. The description of the operation of the " LD " command is described in the description of the line 51 item. Quot; # 1 is ON " is described in the item of description of the line 51 since the " LD " command is an instruction to determine whether or not the first argument is ON (ON).
행(51)의 비고의 항목에는, 「LD」명령의 제1 인수의 데이터형이 기술되어 있다. 「LD」명령의 제1 인수는 비트형이므로, 행(51)의 비고의 항목에는, 비고 「비트 변수」가 기술되어 있다. The data type of the first argument of the " LD " instruction is described in the column of the note in the row 51. [ Since the first argument of the " LD " instruction is of bit type, a note "bit variable" is described in the column of the note in the row 51. [
명령 사양 데이터(24b)의 행(52)은 「OUT」(아웃) 명령에 관한 정보를 포함한다. 행(52)의 명령명의 항목에는 명령명 「OUT」이 기술되어 있다. 행(52)의 명령 타입의 항목에는, OUT 명령이 동작 명령이므로, 명령 타입 「동작」이 기술되어 있다. A row 52 of the
행(52)의 설명문의 항목에는 「OUT」명령에 대한 동작 설명이 기술되어 있다. 「OUT」명령은 제1 인수를 ON(온)시키는 명령이므로, 행(52)의 설명문의 항목에는, 설명문 「#1을 ON시킴」이 기술되어 있다. The description of the operation of the " OUT " command is described in the explanation of the line 52. Since the " OUT " command is an instruction to turn on the first argument, the comment statement " ON # 1 "
행(52)의 비고의 항목에는, 「OUT」명령의 제1 인수의 데이터형(型)이 기술되어 있다. 「OUT」명령의 제1 인수는 비트형이므로, 행(52)의 비고의 항목에는, 비고 「비트 변수」가 기술되어 있다.The data type of the first argument of the " OUT " command is described in the column of the note in the row 52. [ Since the first argument of the " OUT " command is of the bit type, the note item of the row 52 describes the note " bit variable ".
명령 사양 데이터(24b)의 행(53)은 「=」(equal) 명령에 관한 정보를 포함한다. 행(53)의 명령명의 항목에는 명령명 「=」이 기술되어 있다. 행(53)의 명령 타입의 항목에는, 「=」명령이 조건 명령이므로, 명령 타입 「조건」이 기술되어 있다. A row 53 of the
행(53)의 설명문의 항목에는 「=」명령에 대한 동작 설명이 기술되어 있다. 「=」명령은 제1 인수와 제2 인수가 같은지 여부를 판정하는 명령이므로, 행(53)의 설명문의 항목에는, 설명문 「#1이 #2와 같음」이 기술되어 있다. The description of the operation of the "=" command is described in the description of the line 53 item. Since the command "=" is an instruction to judge whether the first argument and the second argument are the same, the comment statement "# 1 is the same as # 2" is described in the description line item of the line 53.
행(53)의 비고의 항목에는, 「=」명령의 제1 인수 및 제2 인수의 데이터형이 기술되어 있다. 「=」명령의 제1 인수 및 제2 인수는 워드형이므로, 행(53)의 비고의 항목에는, 비고 「워드 변수」가 기술되어 있다. The data type of the first argument and the second argument of the " = " command are described in the column of the note in the line 53. [ Since the first argument and the second argument of the " = " command are of the word type, a remarks " word variable "
명령 사양 데이터(24b)의 행(54)은 「MOV」(무브) 명령에 관한 정보를 포함한다. 행(54)의 명령명의 항목에는, 명령명 「MOV」가 기술되어 있다. 행(54)의 명령 타입의 항목에는, 「MOV」명령이 조건 명령이므로, 명령 타입 「동작」이 기술되어 있다. A row 54 of the
행(54)의 설명문의 항목에는, 「MOV」명령에 대한 동작 설명이 기술되어 있다. 「MOV」명령은 제1 인수의 값을 제2 인수에 전송하는 명령이므로, 행(54)의 설명문의 항목에는, 설명문 「#1이 #2에 전송됨」이 기술되어 있다. The description of the operation of the "MOV" command is described in the description of the line 54. Since the "MOV" command is a command for transferring the value of the first argument to the second argument, the comment statement "# 1 is sent to # 2" is described in the description of the line 54.
행(54)의 비고의 항목에는, 「MOV」명령의 제1 인수 및 제2 인수의 데이터형이 기술되어 있다. 「MOV」명령의 제1 인수 및 제2 인수는 워드형이므로, 행(54)의 비고의 항목에는, 비고 「워드 변수」가 기술되어 있다. The data type of the first argument and the second argument of the " MOV " command is described in the column of the note in the line 54. [ Since the first argument and the second argument of the " MOV " command are of the word type, the word "word variable" is described in the column of the note in the line 54.
도 5에서는, 4개의 명령에 관한 4개의 행(51, 52, 53 및 54)을 나타낸다. 그러나 실제로는, 명령 사양 데이터(24b)는 래더 언어로 기술되는 모든 명령에 관한 복수의 행을 포함한다. 5 shows four rows 51, 52, 53 and 54 for four instructions. In practice, however, the
다시 도 4를 참조하면, 기억부(24)는 제어 프로그램(24a1)에 대해서 실행되는 검색의 종료 조건이 기술된 검색 종료 조건 데이터(24c)를 기억한다. 검색 종료 조건 데이터(24c)는 검색 횟수 데이터(24c1)와, 검색 범위 데이터(24c2)를 포함한다. Referring again to FIG. 4, the
도 6은 실시 형태 1에 따른 엔지니어링 툴의 검색 횟수 데이터를 나타내는 도면이다. 검색 횟수 데이터(24c1)에는 「10」이 기술되어 있다. 이것에 의해, 제어 프로그램(24a)에 대해서 실행되는 검색은, 최대 10회까지에서 종료한다. 6 is a diagram showing search frequency data of the engineering tool according to the first embodiment. &Quot; 10 " is described in the search count data 24c1. As a result, the search executed for the
도 7은 실시 형태 1에 따른 엔지니어링 툴의 검색 범위 데이터를 나타내는 도면이다. 검색 범위 데이터(24c2)는 범위 선두 스텝 번호의 항목과, 범위 말미 스텝 번호의 항목을 포함한다. 범위 선두 스텝 번호의 항목에는, 「1」이 기술되어 있다. 범위 말미 스텝 번호의 항목에는, 「100」이 기술되어 있다. 이것에 의해, 제어 프로그램(24a1)에 대해서 실행되는 검색은, 스텝 번호 1 내지 스텝 번호 100까지의 범위로 한정되며, 이 범위로부터 벗어나면 종료된다. 7 is a diagram showing search range data of the engineering tool according to the first embodiment. The search range data 24c2 includes an item of the range leading step number and an item of the range end step number. &Quot; 1 " is described in the item of the range leading step number. &Quot; 100 " is described in the item of the step end step number. Thus, the search performed for the control program 24a1 is limited to the range from the step No. 1 to the step No. 100, and is terminated when the range is out of the range.
다시 도 4를 참조하면, 기억부(24)는 제어 프로그램(24a1)에 대해서 실행되는 검색의 결과가 축적되는 검색 결과 데이터(24d)를 기억한다. Referring again to FIG. 4, the
도 8은 실시 형태 1에 따른 엔지니어링 툴의 검색 결과 데이터를 나타내는 도면이다. 검색 결과 데이터(24d)는 변수명의 항목(24d1)과, 명령명의 항목(24d2)과, 명령 타입의 항목(24d3)과, 설명문의 항목(24d4)과, 프로그램명의 항목(24d5)과, 스텝 번호의 항목(24d6)을 포함한다. 8 is a diagram showing search result data of the engineering tool according to the first embodiment. The
검색 결과 데이터(24d)의 행(61, 62, 63 및 64)에 대해서는, 엔지니어링 툴(2)의 동작의 설명 중에서 설명한다. The
다시 도 4를 참조하면, 기억부(24)는 제어 프로그램(24a1)에서 사용되고 있는 모든 변수의 미리 정해진 타이밍에서의 값이 축적되는 실행 데이터(24e)를 기억한다. 즉, 실행 데이터(24e)는 복수의 상이한 타이밍에서의 모든 변수의 값이 축적된다. Referring again to FIG. 4, the
검색 결과 데이터(24d)에 대해서는, 엔지니어링 툴(2)의 동작의 설명 중에서 설명한다. The
CPU(21)는 기억부(24)에 기억된 엔지니어링 툴 프로그램을 실행한다. 이것에 의해, 프로젝트 데이터 작성부(21a1) 및 프로그램 진단부(21a2)를 포함하는 엔지니어링 툴부(21a)가 실현된다. The
프로젝트 데이터 작성부(21a1)는 프로젝트 데이터(24a)를 작성하여, 제어 장치(3)에 송신한다.The project data creating unit 21a1 creates the
도 9는 실시 형태 1에 따른 엔지니어링 툴의 프로젝트 데이터 작성 화면을 나타내는 도면이다. 프로젝트 데이터 작성부(21a1)는 프로젝트 데이터 작성 화면(30)을 표시부(26)에 표시시킨다. 9 is a diagram showing a project data creation screen of the engineering tool according to the first embodiment. The project data creating unit 21a1 displays the project
프로젝트 데이터 작성 화면(30)은 제어 프로그램 작성란(30a)을 가진다. 도 9에서는, 제어 프로그램 작성란(30a) 내에, MAIN 프로그램(24a1a)이 작성되어 있다. The project
MAIN 프로그램(24a1a)은 행(41, 42, 43, 44, 45 및 46)을 포함한다. The MAIN program 24a1a includes
행(41)은 조건 명령(41a)과, 동작 명령(41b)을 포함한다. 조건 명령(41a)은 「LD M0」이다. 이 중의 「M0」는 변수이다. 실시 형태 1에 있어서, 영문자 「M」과 수치의 결합은, 비트형의 변수를 나타낸다. The
동작 명령(41b)은 「INC D0」이다. 이 중의 「D0」는 변수이다. 실시 형태 1에 있어서, 영문자 「D」와 수치의 결합은, 워드형의 변수를 나타낸다. 「INC」(인크리먼트(increment)) 명령은, 제1 인수를 1 증가시키는 명령이다. 즉, 동작 명령(41b)은 변수 「D0」를 1 증가시키는 명령이다. The
행(42)은 조건 명령(42a)과, 동작 명령(42b)을 포함한다. 조건 명령(42a)은 「LD M100」이다. 이 중의 「M100」은 변수이다.
동작 명령(42b)은 「MOV D0 D10」이다. 이 중의 「D10」은 변수이다. 「MOV」명령은 제1 인수의 값을 제2 인수에 전송하는 명령이다. 즉, 동작 명령(42b)은 변수 「D0」의 값을 변수 「D10」에 전송하는 명령이다. The
행(43)은 조건 명령(43a)과, 동작 명령(43b)을 포함한다. 조건 명령(43a)은 「LD M200」이다. 이 중의 「M200」은 변수이다. The
동작 명령(43b)은 「OUT Y0」이다. 이 중의 「Y0」는 변수이다. 실시 형태 1에 있어서, 영문자 「Y」와 수치의 결합은, 비트형의 변수를 나타낸다. 즉, 동작 명령(43b)은 변수 「Y0」를 ON으로 하는 명령이다. The
행(44)은 조건 명령(44a)과, 동작 명령(44b)을 포함한다. 조건 명령(44a)은 「=D10 K10000」이다. 이 중의 「K10000」은 상수 「10000」이다. 즉, 조건 명령(44a)은 변수 「D10」의 값과 상수 「10000」이 같은지 여부를 판정하는 명령이다. The
동작 명령(44b)은 「MOV K15 D20」이다. 이 중의 「K15」는 상수 「15」이고, 「D20」은 변수이다. 즉, 동작 명령(44b)은 상수 「15」를 변수 「D20」에 전송하는 명령이다. The
행(45)은 조건 명령(45a)과, 동작 명령(45b)을 포함한다. 조건 명령(45a)은 「LD M10」과, 「LD M11」과, 「LD M12」의 OR(논리합)이다. 이 중의 「M10」, 「M11」 및 「M12」는 변수이다. 즉, 조건 명령(45a)은 변수 「M10」의 값과, 변수 「M11」의 값과, 변수 「M12」의 값의 논리합을 판정하는 명령이다.
동작 명령(45b)은 「MOV D20 D30」이다. 이 중의 「D30」은 변수이다. 즉, 동작 명령(45b)은 변수 「D20」의 값을 변수 「D30」에 전송하는 명령이다. The
행(46)은 종료 명령이다.
다시 도 4를 참조하면, 프로그램 진단부(21a2)는 타겟 변수를 설정하는 변수 설정부(21a2a)를 포함한다. 변수 설정부(21a2a)는 유저가 입력부(25)에 입력한 변수를 수취(受取)하여, 타겟 변수로 설정할 수 있다. 또, 변수 설정부(21a2a)는 문제가 발생한 변수를 제어 장치(3)로부터 수취하여, 타겟 변수로 설정할 수 있다.Referring again to FIG. 4, the program diagnosis unit 21a2 includes a variable setting unit 21a2a for setting a target variable. The variable setting unit 21a2a can receive the variable input by the user into the input unit 25 and set it as a target variable. In addition, the variable setting unit 21a2a can receive the variable in question from the
프로그램 진단부(21a2)는 타겟 변수의 값이 변화할 가능성이 있는 동작 명령을 제어 프로그램(24a1) 중에서 검색하고, 검색된 동작 명령과 명령 사양 데이터(24b)를 대조하여, 타겟 변수명 및 검색된 동작 명령의 명령명, 명령의 타입 및 처리의 내용을 검색 결과 데이터(24d)에 기입하는 동작 검색부(21a2b)를 포함한다. The program diagnosis unit 21a2 searches the control program 24a1 for an operation command that may change the value of the target variable, collates the retrieved operation command with the
프로그램 진단부(21a2)는 동작 검색부(21a2b)에서 검색된 동작 명령을 실행하는 조건을 판정하는 조건 명령을 제어 프로그램(24a1) 중에서 검색하고, 검색된 조건 명령과 명령 사양 데이터(24b)를 대조하여, 검색된 조건 명령의 인수의 변수명 및 검색된 조건 명령의 명령명, 명령의 타입 및 처리의 내용을 검색 결과 데이터(24d)에 기입하고, 검색된 조건 명령의 인수를 새로운 타겟 변수로 설정하는 조건 검색부(21a2c)를 포함한다. The program diagnosis unit 21a2 searches the control program 24a1 for a conditional command for determining a condition for executing the operation command retrieved from the operation retrieving unit 21a2b, collates the retrieved conditional command with the
프로그램 진단부(21a2)는 동작 검색부(21a2b) 및 조건 검색부(21a2c)에 검색을 재차 실행시키는 검색 판정부(21a2d)를 포함한다. The program diagnosis unit 21a2 includes a search determination unit 21a2d that causes the operation search unit 21a2b and the condition search unit 21a2c to execute the search again.
프로그램 진단부(21a2)는 검색 결과 데이터(24d)의 내용을 일람 표시하는 일람 표시부(21a2e)를 포함한다. The program diagnosis unit 21a2 includes a list display unit 21a2e for listing the contents of the
프로그램 진단부(21a2)는 미리 정해진 타이밍에서, 제어 장치(3)의 메모리(3a2)를 스캔함으로써, 제어 프로그램(24a1)에서 사용되고 있는 모든 변수의 값을 취득하여, 실행 데이터(24e)에 기입하는 스캔부(21a2f)를 포함한다. The program diagnosis unit 21a2 scans the memory 3a2 of the
미리 정해진 타이밍은, 이하가 예시된다. The predetermined timing is as follows.
제1 예는 일정한 시간 경과 마다이다. 일정한 시간은, 1초가 예시된다. 이것에 의해, 실행 데이터(24e)에는 일정한 시간 경과 마다의 모든 변수의 값이 축적된다. The first example is a constant time lapse. For a given time, one second is exemplified. As a result, the values of all the variables are stored in the
제2 예는 제어 장치(3)로부터 문제가 발생했다는 취지의 통지를 수신했을 때이다. 이것에 의해, 실행 데이터(24e)에는 제어 장치(3)에서 문제가 발생했을 때의 모든 변수의 값이 축적된다. The second example is when the
제3 예는 유저가 입력부(25)에 스캔을 실행하는 취지의 지시를 입력했을 때이다. 이것에 의해, 실행 데이터(24e)에는, 유저가 소망하는 타이밍에서의 모든 변수의 값이 축적된다.The third example is when the user inputs an instruction to execute the scan to the input unit 25. As a result, values of all variables at the timing desired by the user are accumulated in the
도 10은 실시 형태 1에 따른 엔지니어링 툴의 처리를 나타내는 순서도이다. 10 is a flowchart showing the processing of the engineering tool according to the first embodiment.
스캔부(21a2f)는 미리 정해진 타이밍에서, 도 10에 나타내는 처리를 실행한다. The scanning unit 21a2f executes the processing shown in Fig. 10 at a predetermined timing.
스캔부(21a2f)는, 스텝 S10에 있어서, 제어 장치(3)의 메모리(3a2)를 스캔함으로써, 제어 프로그램(24a1)에서 사용되고 있는 모든 변수의 값을 취득한다. In step S10, the scanning unit 21a2f scans the memory 3a2 of the
스캔부(21a2f)는, 스텝 S12에 있어서, 스텝 S10에서 취득한 모든 변수의 값을 실행 데이터(24e)에 기입하고, 처리를 종료한다. In step S12, the scanning unit 21a2f writes the values of all the variables obtained in step S10 into the
다시 도 4를 참조하면, 프로그램 진단부(21a2)는 제어 프로그램(24a1)을 시뮬레이션 실행함으로써, 제어 프로그램(24a1)에서 사용되고 있는 모든 변수의 값을 산출하여, 실행 데이터(24e)에 기입하는 시뮬레이션부(21a2g)를 포함한다. Referring again to FIG. 4, the program diagnosis unit 21a2 calculates the values of all variables used in the control program 24a1 by executing the control program 24a1 by simulation, and writes the values of the variables in the
이것에 의해, 실행 데이터(24e)에는 제어 장치(3)를 동작시키지 않더라도, 제어 프로그램(24a1)에서 사용되고 있는 모든 변수의 값이 축적된다. 따라서, 프로그램 진단부(21a2)는 제어 장치(3)를 동작시키지 않더라도, 제어 프로그램(24a1)의 문제를 진단할 수 있다. As a result, the values of all the variables used in the control program 24a1 are stored in the
도 11은 실시 형태 1에 따른 엔지니어링 툴의 처리를 나타내는 순서도이다.11 is a flowchart showing the processing of the engineering tool according to the first embodiment.
시뮬레이션부(21a2g)는 유저가 입력부(25)에 시뮬레이션 실행하는 취지의 지시를 입력하면, 도 11에 나타내는 처리를 실행한다. The simulation unit 21a2g executes the process shown in Fig. 11 when the user inputs an instruction to execute the simulation on the input unit 25. Fig.
시뮬레이션부(21a2g)는, 스텝 S20에 있어서, 제어 프로그램(24a1)을 시뮬레이션 실행함으로써, 제어 프로그램(24a1)에서 사용되고 있는 모든 변수의 값을 산출한다. The simulation unit 21a2g calculates the values of all the variables used in the control program 24a1 by executing the control program 24a1 by simulation in step S20.
시뮬레이션부(21a2g)는, 스텝 S22에 있어서, 스텝 S20에서 산출한 모든 변수의 값을 실행 데이터(24e)에 기입하고, 처리를 종료한다. In step S22, the simulation unit 21a2g writes the values of all the variables calculated in step S20 into the
도 12는 실시 형태 1에 따른 엔지니어링 툴의 처리를 나타내는 순서도이다. 12 is a flowchart showing the processing of the engineering tool according to the first embodiment.
변수 설정부(21a2a)는, 스텝 S100에 있어서, 타겟 변수를 설정한다. The variable setting unit 21a2a sets the target variable in step S100.
도 13은 실시 형태 1에 따른 엔지니어링 툴의 프로그램 진단 화면을 나타내는 도면이다. 변수 설정부(21a2a)는 프로그램 진단 화면(70)을 표시부(26)에 표시시킨다. 13 is a diagram showing a program diagnostic screen of the engineering tool according to the first embodiment. The variable setting unit 21a2a displays the
프로그램 진단 화면(70)은 변수 설정란(71)을 가진다. 도 13에서는 변수 설정란(71) 내에서, 변수 「D20」이 타겟 변수(72)로 설정되어 있다. The program
변수 설정부(21a2a)는 유저가 입력부(25)에 입력한 변수를 수취하여, 타겟 변수(72)로 설정할 수 있다. 또, 변수 설정부(21a2a)는 문제가 발생한 변수를 제어 장치(3)로부터 수취하여, 타겟 변수(72)로 설정할 수 있다.The variable setting unit 21a2a can receive the variable input by the user into the input unit 25 and set it to the
다시 도 12를 참조하면, 동작 검색부(21a2b)는, 스텝 S102에 있어서, 타겟 변수(72)가 인수에 기술되어 있는 동작 명령을, 제어 프로그램(24a1) 중에서 검색한다. Referring again to Fig. 12, the motion search section 21a2b searches the control program 24a1 for the motion command described in the argument in the target variable 72 in step S102.
동작 검색부(21a2b)는 제어 프로그램(24a1) 중의 명령과 명령 사양 데이터(24b)를 대조하여 당해 명령의 명령 타입을 취득함으로써, 동작 명령을 제어 프로그램(24a1) 중에서 검색할 수 있다. The operation retrieving unit 21a2b can retrieve an operation command from the control program 24a1 by obtaining the command type of the command by collating the command in the control program 24a1 with the
동작 검색부(21a2b)에 의한 검색 결과는, 복수 지점이어도 된다. The search result by the motion search section 21a2b may be a plurality of points.
도 14는 실시 형태 1에 따른 엔지니어링 툴의 검색 처리를 설명하는 도면이다. 14 is a diagram for explaining a search process of the engineering tool according to the first embodiment.
도 14에 있어서, 각 변수의 하단에 기술되어 있는 값은, 어느 타이밍에서의 각 변수의 값으로, 실행 데이터(24e)에 축적되어 있는 값이다. In Fig. 14, the values described at the bottom of each variable are the values of the respective variables at any timing, and are the values stored in the
프로그램 진단부(21a2)는 제어 장치(3)로부터 문제가 발생했다는 취지의 통지를 수신했을 때 스캔한 모든 변수의 값을 검색에 사용하는 것으로 하면, 제어 장치(3)에서 문제가 발생한 타이밍에서의 모든 변수의 값에 기초하여, 제어 프로그램(24a1)의 진단을 행할 수 있다. 이것에 의해, 프로그램 진단부(21a2)는 제어 장치(3)에서 문제가 발생한 타이밍에서의, 제어 프로그램(24a1)의 문제를 진단할 수 있다. Assuming that the program diagnostic unit 21a2 uses the values of all scanned variables when it receives a notification of the occurrence of a problem from the
프로그램 진단부(21a2)는 제어 장치(3)로부터 문제가 발생했다는 취지의 통지를 수신했을 때보다 전(前)에서의 모든 변수의 값을 검색에 사용하는 것으로 하면, 제어 장치(3)에서 문제가 발생했을 때보다 전의 타이밍에서의 모든 변수의 값에 기초하여, 제어 프로그램(24a1)의 진단을 행할 수 있다. 이것에 의해, 프로그램 진단부(21a2)는 제어 장치(3)에서 문제가 발생했을 때보다 전의 타이밍에서의, 제어 프로그램(24a1)의 문제를 진단할 수 있다. Assuming that the program diagnostic unit 21a2 uses the values of all the variables in the former time than when the notification of the occurrence of the problem is received from the
타겟 변수(72)로 설정된 변수 「D20」은, 동작 명령(44b)의 제2 인수(44b1)에 기술되어 있다. The variable " D20 " set to the
동작 검색부(21a2b)는, 스텝 S102에 있어서, 타겟 변수(72)로 설정된 변수 「D20」이 동작 명령(44b)의 제2 인수(44b1)에 기술되어 있는 것을 찾아낸다. 그리고 동작 검색부(21a2b)는 동작 명령(44b)의 명령명 「MOV」와 명령 사양 데이터(24b)를 대조함으로써, 명령명 「MOV」의 명령 타입 「동작」을 취득한다. 따라서, 동작 검색부(21a2b)는 동작 명령(44b)을 제어 프로그램(24a1) 중에서 검색할 수 있다. The motion search section 21a2b finds that the variable "D20" set in the
또한, 동작 검색부(21a2b)는 명령명과 명령 사양 데이터(24b)를 대조하는 것을 대신하여, 제어 프로그램(24a1)을 도형적으로 해석함으로써, 동작 명령을 취득하는 것으로 해도 된다. The operation retrieving unit 21a2b may also obtain the operation command by graphically analyzing the control program 24a1 instead of checking the command name and the
구체적으로는, 동작 검색부(21a2b)는, 도 9에 나타내는 제어 프로그램(24a1)의 행(41, 42, 43 및 44)과 같이, 1개의 행에 2개의 명령이 기술되어 있는 경우에는, 2개의 명령 중의 우측, 즉 제어 프로그램(24a1)의 하류측의 명령을 동작 명령으로서 취득해도 된다. Specifically, when two instructions are described in one row, as in the
또, 동작 검색부(21a2b)는, 도 9에 나타내는 제어 프로그램(24a1)의 행(45)과 같이, 1개의 행에 2개 보다 많은 명령이 기술되어 있는 경우에는, 우선, 복수의 명령이 와이어드 OR 접속되어 있는 점(45a1)을 찾아낸다. 그리고 동작 검색부(21a2b)는 점(45a1)보다 우측, 즉 제어 프로그램(24a1)의 하류측의 명령(45b)을 동작 명령으로서 취득해도 된다. When more than two instructions are described in one row, as in the
이것에 의해, 동작 검색부(21a2b)는 명령명과 명령 사양 데이터(24b)를 대조하는 일 없이, 동작 명령을 제어 프로그램(24a1) 중에서 검색할 수 있다. Thereby, the motion search section 21a2b can search for the motion command from the control program 24a1 without collating the command name and the
다시 도 12를 참조하면, 동작 검색부(21a2b)는, 스텝 S104에 있어서, 스텝 S102에서 검색한 동작 명령 중에서, 타겟 변수의 값이 변화할 가능성이 있는 동작 명령을 검색한다. Referring again to Fig. 12, in step S104, the motion search section 21a2b searches among the motion commands searched in step S102 for motion commands likely to change the value of the target variable.
타겟 변수(72)로 설정된 변수 「D20」은, 동작 명령(44b)의 제2 인수(44b1)에 기술되어 있다. 동작 명령(44b)의 명령명 「MOV」는, 제1 인수의 값을 제2 인수에 전송하는 명령이다. The variable " D20 " set to the
따라서, 동작 검색부(21a2b)는, 스텝 S104에 있어서, 타겟 변수(72)로 설정된 변수 「D20」의 값이 변화할 가능성이 있는 동작 명령(44b)을 제어 프로그램(24a1) 중에서 검색할 수 있다. Therefore, the operation retrieving unit 21a2b can search the control program 24a1 for the
동작 검색부(21a2b)는, 스텝 S106에 있어서, 스텝 S104에서 검색된 동작 명령과 명령 사양 데이터(24b)를 대조하여, 스텝 S104에서의 검색 결과에 기초한 정보를, 검색 결과 데이터(24d)에 기입한다. In step S106, the motion search unit 21a2b collates the motion command searched in step S104 with the
다시 도 8을 참조하면, 동작 검색부(21a2b)는, 스텝 S106에 있어서, 행(61)을 작성한다. 그리고 동작 검색부(21a2b)는 변수명 「D20」, 명령명 「MOV」 및 명령 타입 「동작」을, 행(61)의 항목(24d1, 24d2 및 24d3)에 기입한다. Referring back to Fig. 8, the motion search section 21a2b creates a row (61) in step S106. The operation retrieving unit 21a2b writes the variable name "D20", the command name "MOV" and the command type "operation" in the items (24d1, 24d2, and 24d3)
또, 동작 검색부(21a2b)는 스텝 S104에서 검색된 동작 명령(44b)과 명령 사양 데이터(24b)의 설명문의 항목(24b3)을 대조한다. 동작 명령(44b)의 제1 인수는 상수 「K15」이고, 제2 인수는 변수 「D20」이다. 따라서, 동작 검색부(21a2b)는 설명문 「K15가 D20에 전송됨」을 작성하여, 행(61)의 항목(24d4)에 기입한다. The operation retrieving unit 21a2b collates the
또, 동작 검색부(21a2b)는 동작 명령(44b)이 포함되어 있는 프로그램명 「MAIN」을, 행(61)의 항목(24d5)에 기입한다. The operation retrieving unit 21a2b writes the program name " MAIN " including the
또, 동작 명령(44b)은 MAIN 프로그램(24a1a)의 제11 스텝째이다. 따라서, 동작 명령부(21a2b)는 스텝 번호 「11」을 행(61)의 항목(24d6)에 기입한다. The
다시 도 12를 참조하면, 조건 검색부(21a2c)는, 스텝 S108에 있어서, 동작 검색부(21a2b)에 의해서 검색된 동작 명령을 실행하는 조건을 판정하는 조건 명령을, 제어 프로그램(24a1) 중에서 검색한다. Referring again to Fig. 12, the condition retrieval unit 21a2c retrieves, from the control program 24a1, a conditional command for determining a condition for executing the operation command retrieved by the operation retrieval unit 21a2b in step S108 .
조건 검색부(21a2c)는 제어 프로그램(24a1) 중의 명령과 명령 사양 데이터(24b)를 대조하여 당해 명령의 명령 타입을 취득함으로써, 조건 명령을 제어 프로그램(24a1) 중에서 검색할 수 있다. The condition retrieval unit 21a2c can retrieve the conditional instruction from the control program 24a1 by collating the instruction in the control program 24a1 with the
조건 검색부(21a2c)에 의한 검색 결과는, 복수 지점이어도 된다. The search result by the condition searching unit 21a2c may be a plurality of points.
또한, 조건 검색부(21a2c)는 명령명과 명령 사양 데이터(24b)를 대조하는 것을 대신하여, 제어 프로그램(24a1)을 도형적으로 해석함으로써, 동작 명령을 취득하는 것으로 해도 된다. Further, the condition retrieving unit 21a2c may acquire the operation command by graphically analyzing the control program 24a1 instead of checking the command name and the
구체적으로는, 조건 검색부(21a2c)는, 도 9에 나타내는 제어 프로그램(24a1)의 행(41, 42, 43 및 44)과 같이, 1개의 행에 2개의 명령이 기술되어 있는 경우에는, 2개의 명령 중의 좌측, 즉 제어 프로그램(24a1)의 상류측의 명령을 동작 명령으로서 취득해도 된다.Concretely, when two instructions are described in one row, as in the
또, 동작 검색부(21a2b)는, 도 9에 나타내는 제어 프로그램(24a1)의 행(45)과 같이, 1개의 행에 2개보다 많은 명령이 기술되어 있는 경우에는, 우선, 복수의 명령이 와이어드 OR 접속되어 있는 점(45a1)을 찾아낸다. 그리고 동작 검색부(21a2b)는 점(45a1)보다 좌측, 즉 제어 프로그램(24a1)의 상류측의 명령(45a)을 동작 명령으로서 취득해도 된다. When more than two instructions are described in one row, as in the
이것에 의해, 조건 검색부(21a2c)는 명령명과 명령 사양 데이터(24b)를 대조하는 일 없이, 조건 명령을 제어 프로그램(24a1) 중에서 검색할 수 있다. Thereby, the condition retrieving unit 21a2c can retrieve the conditional instruction from the control program 24a1 without collating the instruction name and the
다시 도 14를 참조하면, 동작 명령(44b)의 도면 중 좌측, 즉 MAIN 프로그램(24a1a)의 상류측에는, 조건 명령(44a)이 기술되어 있다. Referring again to Fig. 14, a
따라서, 조건 검색부(21a2c)는, 스텝 S108에 있어서, 동작 명령(44b)을 실행하는 조건을 판정하는 조건 명령(44a)을, 제어 프로그램(24a1) 중에서 검색할 수 있다. Therefore, the condition searching unit 21a2c can search the control program 24a1 for the
다시 도 12를 참조하면, 조건 검색부(21a2c)는, 스텝 S110에 있어서, 스텝 S108에서 검색된 조건 명령과 명령 사양 데이터(24b)를 대조하여, 스텝 S108에서의 검색 결과에 기초한 정보를, 검색 결과 데이터(24d)에 기입한다. 12, the condition retrieval unit 21a2c collates the conditional command retrieved in step S108 with the
다시 도 8을 참조하면, 조건 검색부(21a2c)는, 스텝 S110에 있어서, 행(62)을 작성한다. 그리고 조건 검색부(21a2c)는, 변수명 「D10」, 명령명 「=」 및 명령 타입 「조건」을, 행(62)의 항목(24d1, 24d2 및 24d3)에 기입한다. Referring back to Fig. 8, the condition retrieval unit 21a2c creates a
또, 조건 검색부(21a2c)는, 스텝 S108에서 검색된 조건 명령(44a)과 명령 사양 데이터(24b)의 설명문의 항목(24b3)을 대조한다. 조건 명령(44a)의 제1 인수는 변수 「D10」이고, 제2 인수는 상수 「K10000」이다. 따라서, 조건 검색부(21a2c)는 설명문 「D10이 K10000와 같음」을 작성하여, 행(62)의 항목(24d4)에 기입한다. The condition retrieval unit 21a2c collates the
또, 조건 검색부(21a2c)는 조건 명령(44a)이 포함되어 있는 프로그램명 「MAIN」을, 행(62)의 항목(24d5)에 기입한다. The condition retrieving unit 21a2c writes the program name " MAIN " including the
또, 조건 명령(44a)은 MAIN 프로그램(24a1a)의 제8 스텝째이다. 따라서, 조건 명령부(21a2c)는, 스텝 번호 「8」을, 행(62)의 항목(24d6)에 기입한다. The
다시 도 12를 참조하면, 조건 검색부(21a2c)는, 스텝 S112에 있어서, 스텝 S110에서 검색된 조건 명령의 인수를, 새로운 타겟 변수(72)로 설정한다. Referring again to FIG. 12, the condition retrieval unit 21a2c sets the argument of the conditional command retrieved in step S110 as a new target variable 72 in step S112.
조건 검색부(21a2c)에 의해서 설정되는 새로운 타겟 변수(72)는, 복수여도 된다. 또, 조건 검색부(21a2c)는, 제어 프로그램(24a1)을 그 이상 거슬러 올가갈 수 없는 경우는, 새로운 타겟 변수(72)를 설정하지 않는다. A plurality of
도 15는 실시 형태 1에 따른 엔지니어링 툴의 검색 처리를 설명하는 도면이다. 15 is a diagram for explaining search processing of the engineering tool according to the first embodiment.
도 15에 나타내는 것처럼, 조건 명령(44a)은 제1 인수(44a1) 「D10」과, 제2 인수 「K10000」을 포함하고 있다. 그러나 제2 인수 「K10000」는 상수이고, 변수는 아니다. 이에, 조건 검색부(21a2c)는, 스텝 S112에 있어서, 제1 인수(44a1) 「D10」을, 새로운 타겟 변수(72)로 설정한다. As shown in Fig. 15, the
다시 도 12를 참조하면, 검색 판정부(21a2d)는, 스텝 S114에 있어서, 검색 종료 조건이 만족되었는지 여부를 판정한다. 검색 종료 조건은, 이하가 예시된다. Referring again to Fig. 12, the search judgment unit 21a2d judges whether or not the search end condition is satisfied in step S114. The search termination conditions are as follows.
제1 예는, 스텝 S112에서 새로운 타겟 변수(72)가 설정되지 않았을 경우이다. 즉, 제어 프로그램(24a1)을 그 이상 거슬러 올가갈 수 없는 경우이다. The first example is a case where a new target variable 72 is not set in step S112. That is, the control program 24a1 can not go back more than that.
제2 예는, 동작 검색부(21a2b) 및 조건 검색부(21a2c)에 의한 스텝 S102부터 스텝 S112까지의 검색의 반복 횟수가, 검색 횟수 데이터(24c1)에 기술된 횟수에 도달했을 경우이다. The second example is the case where the number of repetitions of retrieval from step S102 to step S112 by the operation retrieval section 21a2b and the condition retrieval section 21a2c reaches the number of times described in the retrieval number data 24c1.
이것에 의해, 프로그램 진단부(21a2)는 검색이 종료되지 않는 것을 억제하여 검색이 정지하는 것을 확보할 수 있는, 즉 검색의 정지성을 확보할 수 있다고 하는 효과를 달성한다. 또, 프로그램 진단부(21a2)는, 제어 프로그램(24a1)의 규모가 큰 경우라도, 검색 범위를 한정할 수 있으므로, 제어 프로그램(24a1)의 문제의 원인을 특정하는 공정수를 억제할 수 있는 효과를 달성한다. Thereby, the program diagnosis unit 21a2 achieves the effect that it is possible to prevent the search from being terminated and to ensure that the search is stopped, that is, to ensure the stopping of the search. The program diagnosis unit 21a2 can limit the search range even when the scale of the control program 24a1 is large so that the effect of suppressing the number of steps for specifying the cause of the problem of the control program 24a1 .
제3 예는, 조건 검색부(21a2c)에 의해 스텝 S112에서 설정된 새로운 타겟 변수(72)가, 검색 범위 데이터(24c2)에 기술된 스텝 번호의 범위 외가 되었을 경우이다. The third example is the case where the new target variable 72 set in step S112 by the condition searching unit 21a2c is out of the range of the step number described in the search range data 24c2.
이것에 의해, 프로그램 진단부(21a2)는 검색의 정지성이 확보된다고 하는 효과를 달성한다. 또, 프로그램 진단부(21a2)는 제어 프로그램(24a1)의 규모가 큰 경우라도, 검색 범위를 한정할 수 있으므로, 제어 프로그램(24a1)의 문제의 원인을 특정하는 공정수를 억제할 수 있는 효과를 달성한다. Thereby, the program diagnosis unit 21a2 achieves the effect that the stoppability of retrieval is ensured. The program diagnosis unit 21a2 can limit the search range even when the control program 24a1 has a large scale, and thus can reduce the number of steps for specifying the cause of the problem of the control program 24a1 .
검색 판정부(21a2d)는 복수의 검색 종료 조건의 OR(논리합)를 판정할 수 있다. The search determination unit 21a2d can determine the OR (logical sum) of a plurality of search termination conditions.
검색 판정부(21a2d)는, 스텝 S114에 있어서, 검색 조건이 만족되어 있지 않다고 판정하면(No), 처리를 스텝 S102로 진행한다. If the search condition determining unit 21a2d determines in step S114 that the search condition is not satisfied (No), the process proceeds to step S102.
도 16은 실시 형태 1에 따른 엔지니어링 툴의 검색 처리를 설명하는 도면이다. 16 is a diagram for explaining the search processing of the engineering tool according to the first embodiment.
도 16에 나타내는 것처럼, 동작 명령(42b)은 제1 인수 「D0」와, 제2 인수(42b1)「D10」을 포함하고 있다. As shown in Fig. 16, the
동작 검색부(21a2b)는, 스텝 S102 및 스텝 S104에 있어서, 타겟 변수(72)로 설정된 변수 「D10」이 동작 명령(42b)의 제2 인수(42b1)에 기술되어 있는 것을 찾아낸다. 그리고 동작 검색부(21a2b)는 동작 명령(42b)의 명령명 「MOV」와 명령 사양 데이터(24b)를 대조함으로써, 명령명 「MOV」의 명령 타입 「동작」을 취득한다. 따라서, 동작 검색부(21a2b)는 동작 명령(42b)을 제어 프로그램(24a1) 중에서 검색할 수 있다. The motion search section 21a2b finds that the variable "D10" set in the
다시 도 8을 참조하면, 동작 검색부(21a2b)는, 스텝 S106에 있어서, 행(63)을 작성한다. 그리고 동작 검색부(21a2b)는 변수명 「D0」, 명령명 「MOV」 및 명령 타입 「동작」을, 행(63)의 항목(24d1, 24d2 및 24d3)에 기입한다. Referring back to Fig. 8, the motion search section 21a2b creates a row (63) in step S106. The operation retrieving unit 21a2b writes the variable name "D0", the command name "MOV" and the command type "operation" in the items (24d1, 24d2 and 24d3) of the row (63).
또, 동작 검색부(21a2b)는, 스텝 S104에서 검색된 동작 명령(42b)과 명령 사양 데이터(24b)의 설명문의 항목(24b3)을 대조한다. 동작 명령(42b)의 제1 인수는 변수 「D0」이고, 제2 인수는 변수 「D10」이다. 따라서, 동작 검색부(21a2b)는 설명문 「D0가 D10에 전송됨」을 작성하여, 행(63)의 항목(24d4)에 기입한다. The operation retrieving unit 21a2b collates the
또, 동작 검색부(21a2b)는 동작 명령(42b)이 포함되어 있는 프로그램명 「MAIN」을, 행(63)의 항목(24d5)에 기입한다.The operation retrieving unit 21a2b writes the program name " MAIN " including the
또, 동작 명령(42b)은 MAIN 프로그램(24a1a)의 제4 스텝째이다. 따라서, 동작 명령부(21a2b)는 스텝 번호 「4」를, 행(63)의 항목(24d6)에 기입한다. The
동작 명령(42b)의 도면 중 좌측, 즉 MAIN 프로그램(24a1a)의 상류측에는, 조건 명령(42a)이 기술되어 있다. On the left side of the
따라서, 조건 검색부(21a2c)는, 스텝 S108에 있어서, 동작 명령(42b)을 실행하는 조건을 판정하는 조건 명령(42a)을, 제어 프로그램(24a1) 중에서 검색할 수 있다. Therefore, the condition searching unit 21a2c can search the control program 24a1 for the
조건 검색부(21a2c)는, 스텝 S110에 있어서, 스텝 S108에서 검색된 조건 명령과 명령 사양 데이터(24b)를 대조하여, 스텝 S108에서의 검색 결과에 기초한 정보를, 검색 결과 데이터(24d)에 기입한다. In step S110, the condition retrieval unit 21a2c collates the conditional command retrieved in step S108 with the
다시 도 8을 참조하면, 조건 검색부(21a2c)는, 스텝 S110에 있어서, 행(64)을 작성한다. 그리고 조건 검색부(21a2c)는 변수명 「M100」, 명령명 「LD」 및 명령 타입 「조건」을, 행(64)의 항목(24d1, 24d2 및 24d3)에 기입한다. Referring back to Fig. 8, the condition retrieving unit 21a2c creates a
또, 조건 검색부(21a2c)는, 스텝 S108에서 검색된 조건 명령(42a)과 명령 사양 데이터(24b)의 설명문의 항목(24b3)을 대조한다. 조건 명령(42a)의 제1 인수는, 변수 「M100」이다. 따라서, 조건 검색부(21a2c)는 설명문 「M100이 ON되어 있다」를 작성하여, 행(64)의 항목(24d4)에 기입한다. The condition retrieval unit 21a2c collates the
또, 조건 검색부(21a2c)는 조건 명령(42a)이 포함되어 있는 프로그램명 「MAIN」을, 행(64)의 항목(24d5)에 기입한다. The condition retrieving unit 21a2c writes the program name " MAIN " including the
또, 조건 명령(42a)은 MAIN 프로그램(24a1a)의 제3 스텝째이다. 따라서, 조건 명령부(21a2c)는 스텝 번호 「3」을, 행(64)의 항목(24d6)에 기입한다. The
조건 명령(42a)은 제1 인수 「M100」을 포함하고 있다. 이에, 조건 검색부(21a2c)는, 스텝 S112에 있어서, 제1 인수 「M100」을, 새로운 타겟 변수(72)로 설정한다. The
다시 도 12를 참조하면, 검색 판정부(21a2d)는, 스텝 S114에 있어서, 검색 조건이 만족되어 있다고 판정하면(Yes), 처리를 스텝 S116으로 진행한다. Referring again to Fig. 12, if the search condition determining unit 21a2d determines in step S114 that the search condition is satisfied (Yes), the process proceeds to step S116.
다시 도 16을 참조하면, 타겟 변수(72) 「M100」을 포함하는 동작 명령은 제어 프로그램(24a1) 내에 존재하지 않는다. Referring again to Fig. 16, an operation command including the target variable 72 " M100 " is not present in the control program 24a1.
따라서, 검색 판정부(21a2d)는, 스텝 S114에서 검색 조건이 만족되어 있다고 판정하고(Yes), 처리를 스텝 S116으로 진행한다. Therefore, the search determination unit 21a2d determines that the search condition is satisfied in step S114 (Yes), and proceeds to step S116.
다시 도 12를 참조하면, 일람 표시부(21a2e)는, 스텝 S116에 있어서, 검색 결과 데이터(24d)의 내용을 표시부(26)에 일람 표시한다. Referring again to Fig. 12, the list display section 21a2e displays the content of the
도 17은 실시 형태 1에 따른 엔지니어링 툴의 프로그램 진단 화면을 나타내는 도면이다. 일람 표시부(21a2e)는, 검색 결과 데이터(24d)의 내용을, 프로그램 진단 화면(70)의 일람 표시란(80) 내에 일람 표시한다. 17 is a diagram showing a program diagnostic screen of the engineering tool according to the first embodiment. The list display section 21a2e displays a list of the contents of the
일람 표시란(80)은 프로그램명의 항목(81)과, 스텝 번호의 항목(82)과, 변수명의 항목(83)과, 명령명의 항목(84)과, 명령 타입의 항목(85)과, 설명문의 항목(86)을 가진다. The
일람 표시부(21a2e)는 행(91, 92, 93 및 94) 내에, 검색 결과 데이터(24d)의 행(61, 62, 63 및 64)의 내용을 각각 표시한다. The list display section 21a2e displays the contents of the
이와 같이, 프로그램 진단부(21a2)는 행(94) 내에 표시되어 있는, 문제의 원인이 된 명령의 내용 및 행(91) 내에 표시되어 있는, 문제가 발생한 명령의 내용 만이 아니라, 행(93) 및 행(92) 내에 표시되어 있는, 문제의 원인이 된 명령과 문제가 발생한 명령의 사이에 관여하는 명령의 내용도 함께, 일람 표시할 수 있다. In this manner, the program diagnosis unit 21a2 not only displays the contents of the command causing the problem and the contents of the command in which the problem has occurred, which are displayed in the
이것에 의해, 프로그램 진단부(21a2)는 유저가 문제의 원인이 된 명령과 문제가 발생한 명령 사이의 전체 형상을 파악하는 것을 용이하게 할 수 있다고 하는 효과를 달성한다. Thereby, the program diagnosis unit 21a2 achieves the effect that the user can easily grasp the overall shape between the command causing the problem and the command in which the problem has occurred.
도 18은 실시 형태 1에 따른 엔지니어링 툴의 처리를 나타내는 순서도이다. 18 is a flowchart showing the processing of the engineering tool according to the first embodiment.
일람 표시부(21a2e)는, 스텝 S200에 있어서, 행(91, 92, 93 또는 94)이 선택되면, 선택된 행의 항목(82a) 내의 스텝 번호에 해당하는 명령(44b, 44a, 42b 또는 42a)을 표시한다. The list display unit 21a2e displays the
이것에 의해, 프로그램 진단부(21a2)는 유저가 원하는 명령을 즉시 확인할 수 있다고 하는 효과를 달성한다. Thereby, the program diagnosis unit 21a2 achieves the effect that the user can immediately check the desired command.
또, 일람 표시란(80)은 프로그램명의 필터 조건을 입력하기 위한 필터 조건 입력란(81a)과, 스텝 번호의 필터 조건을 입력하기 위한 필터 조건 입력란(82a)과, 변수명의 필터 조건을 입력하기 위한 필터 조건 입력란(83a)과, 명령명의 필터 조건을 입력하기 위한 필터 조건 입력란(84a)과, 명령 타입의 필터 조건을 입력하기 위한 필터 조건 입력란(85a)과, 설명문의 필터 조건을 입력하기 위한 필터 조건 입력란(86a)을 가진다. The
도 19는 실시 형태 1에 따른 엔지니어링 툴의 처리를 나타내는 순서도이다. 19 is a flowchart showing the processing of the engineering tool according to the first embodiment.
일람 표시부(21a2e)는, 스텝 S202에 있어서, 필터 조건 입력란(84a)에 명령명이 입력되면, 검색 결과 데이터(24d)의 행(91, 92, 93 및 94) 중에서 입력된 필터 조건에 합치(合致)하는 행을 일람 표시한다. 예를 들면, 필터 조건 입력란(84a)에 「MOV」가 입력되면, 일람 표시부(21a2e)는 행(91 및 93)만을 표시한다. The list display unit 21a2e displays a list of the filter conditions entered in the filter
이것에 의해, 프로그램 진단부(21a2)는 유저가 문제에 관계되는 명령의 범위를 좁힘으로써 문제의 원인을 특정하는 공정수를 억제할 수 있는 효과를 달성한다. Thereby, the program diagnosis unit 21a2 achieves the effect that the user can reduce the number of steps for specifying the cause of the problem by narrowing the range of the command related to the problem.
또, 동작 검색부(21a2b)는 명령명과 명령 사양 데이터(24b)를 대조함으로써, 명령명의 명령 타입 「동작」을 취득할 수 있다. Also, the operation retrieving unit 21a2b can obtain the instruction type "operation" of the instruction name by collating the instruction name and the
이것에 의해, 동작 검색부(21a2b)는 동작 명령을 제어 프로그램(24a1) 중에서 검색할 수 있다. Thereby, the motion search section 21a2b can search for the motion command from the control program 24a1.
또, 조건 검색부(21a2c)는 명령명과 명령 사양 데이터(24b)를 대조함으로써, 명령명의 명령 타입 「조건」을 취득할 수 있다. The condition retrieval unit 21a2c can obtain the command type "condition" of the command name by collating the command name with the
이것에 의해, 조건 검색부(21a2c)는 조건 명령을 제어 프로그램(24a1) 중에서 검색할 수 있다. Thereby, the condition retrieval unit 21a2c can retrieve the conditional instruction from the control program 24a1.
또, 기억부(24)는 제어 프로그램(24a1)에 대해서 실행되는 검색의 종료 조건이 기술된 검색 종료 조건 데이터(24c)를 기억한다. 그리고 검색 판정부(21a2d)는 검색이 종료 조건을 만족하고 있다고 판정하면, 동작 검색부(21a2b) 및 조건 검색부(21a2c)에 의한 검색을 종료시킨다. The
이것에 의해, 프로그램 진단부(21a2)는 검색의 정지성이 확보된다고 하는 효과를 달성한다. 또, 검색 판정부(21a2d)는 제어 프로그램(24a1)의 규모가 큰 경우라도, 검색 범위를 한정할 수 있다. 따라서, 프로그램 진단부(21a2)는 제어 프로그램(24a1)의 문제의 원인을 특정하는 공정수를 억제할 수 있는 효과를 달성한다. Thereby, the program diagnosis unit 21a2 achieves the effect that the stoppability of retrieval is ensured. In addition, the search determination unit 21a2d can limit the search range even when the control program 24a1 has a large scale. Therefore, the program diagnosis unit 21a2 achieves the effect of suppressing the number of steps for specifying the cause of the problem of the control program 24a1.
또, 기억부(24)는 제어 프로그램(24a1)에서 사용되고 있는 모든 변수의 미리 정해진 타이밍에서의 값이 축적되는 실행 데이터(24e)를 기억한다.The
스캔부(21a2f)는, 미리 정해진 타이밍에서, 제어 장치(3)의 메모리(3a2)를 스캔함으로써, 제어 프로그램(24a1)에서 사용되고 있는 모든 변수의 값을 취득하여, 실행 데이터(24e)에 기입한다. The scanning unit 21a2f scans the memory 3a2 of the
이것에 의해, 프로그램 진단부(21a2)는 제어 장치(3)로부터 문제가 발생했다는 취지의 통지를 수신했을 때 스캔한 모든 변수의 값을 검색에 사용하는 것으로 하면, 제어 장치(3)에서 문제가 발생한 타이밍에서의 모든 변수의 값에 기초하여, 제어 프로그램(24a1)의 진단을 행할 수 있다. 이것에 의해, 프로그램 진단부(21a2)는 제어 장치(3)에서 문제가 발생한 타이밍에서의, 제어 프로그램(24a1)의 문제를 진단할 수 있다. Thus, if the program diagnosis unit 21a2 uses the values of all the scanned variables when it receives a notification of the occurrence of a problem from the
또, 프로그램 진단부(21a2)는 제어 장치(3)로부터 문제가 발생했다는 취지의 통지를 수신했을 때보다 전에서의 모든 변수의 값을 검색에 사용하는 것으로 하면, 제어 장치(3)에서 문제가 발생했을 때보다 전의 타이밍에서의 모든 변수의 값에 기초하여, 제어 프로그램(24a1)의 진단을 행할 수 있다. 이것에 의해, 프로그램 진단부(21a2)는 제어 장치(3)에서 문제가 발생했을 때보다 전의 타이밍에서의, 제어 프로그램(24a1)의 문제를 진단할 수 있다. If the program diagnosis unit 21a2 uses all the values of the variables in the former than the time when the notice of the occurrence of the problem is received from the
또, 시뮬레이션부(21a2g)는 제어 프로그램(24a1)을 시뮬레이션 실행함으로써, 제어 프로그램(24a1)에서 사용되고 있는 모든 변수의 값을 산출하여, 실행 데이터(24e)에 기입한다. The simulation unit 21a2g calculates the values of all the variables used in the control program 24a1 by executing the control program 24a1 by simulation and writes the values of the variables in the
이것에 의해, 프로그램 진단부(21a2)는 제어 장치(3)를 동작시키지 않더라도, 제어 프로그램(24a1)의 문제를 진단할 수 있다. Thereby, the program diagnosis section 21a2 can diagnose the problem of the control program 24a1 without operating the
이상의 실시 형태에 나타낸 구성은, 본 발명의 내용의 일례를 나타내는 것이고, 다른 공지의 기술과 조합하는 것도 가능하고, 본 발명의 요지를 일탈하지 않는 범위에서, 구성의 일부를 생략, 변경하는 것도 가능하다. The configuration shown in the above embodiments represents one example of the content of the present invention and can be combined with other known technologies and a part of the configuration can be omitted or changed without departing from the gist of the present invention Do.
1: 제어 시스템
2: 엔지니어링 툴
3: 제어 장치
4, 5: 기계
21: CPU
21a1: 프로젝트 데이터 작성부
21a2: 프로그램 진단부
21a2a: 변수 설정부
21a2b: 동작 검색부
21a2c: 조건 검색부
21a2d: 검색 판정부
21a2e: 일람 표시부
21a2f: 스캔부
21a2g: 시뮬레이션부
24: 기억부
24a: 프로젝트 데이터
24a1: 제어 프로그램
24b: 명령 사양 데이터
24c: 검색 종료 조건 데이터
24d: 검색 결과 데이터
24e: 실행 데이터1: Control system 2: Engineering tool
3:
21: CPU 21a1: Project data creation unit
21a2: Program diagnosis section 21a2a: Variable setting section
21a2b: motion search unit 21a2c: condition search unit
21a2d: search judgment unit 21a2e: list display unit
21a2f: Scan section 21a2g: Simulation section
24:
24a1:
24c: search
24e: Execution data
Claims (10)
타겟 변수를 설정하는 변수 설정부와,
상기 타겟 변수의 값이 변화할 가능성이 있는 상기 동작 명령을 상기 제어 프로그램 중에서 검색하고, 검색된 상기 동작 명령과 상기 명령 사양 데이터를 대조하여, 상기 타겟 변수명 및 검색된 상기 동작 명령의 명령명, 명령의 타입 및 처리의 내용을 상기 검색 결과 데이터에 기입하는 동작 검색부와,
상기 동작 검색부에서 검색된 상기 동작 명령을 실행하는 조건을 판정하는 상기 조건 명령을 상기 제어 프로그램 중에서 검색하고, 검색된 상기 조건 명령과 상기 명령 사양 데이터를 대조하여, 검색된 상기 조건 명령의 인수의 변수명 및 검색된 상기 조건 명령의 명령명, 명령의 타입 및 처리의 내용을 상기 검색 결과 데이터에 기입하고, 검색된 상기 조건 명령의 인수를 새로운 타겟 변수로 설정하는 조건 검색부와,
상기 동작 검색부 및 상기 조건 검색부에 검색을 재차 실행시키는 검색 판정부와,
상기 검색 결과 데이터의 내용을 일람 표시하는 일람 표시부를 구비하는 것을 특징으로 하는 프로그램 진단 장치.A control program that includes an operation command for changing a value of an argument and a conditional command for determining a condition for executing the operation command; And storage means for storing search result data in which a result of search executed for the control program is accumulated;
A variable setting unit for setting a target variable,
Searching the control program for the operation command which is likely to change the value of the target variable, verifying the retrieved operation command with the command specification data, and comparing the target variable name and the command name of the retrieved operation command, An operation search unit for writing the contents of the type and the process into the search result data,
Searching the control program for a condition command for determining a condition for executing the operation command retrieved by the operation retrieving unit, collating the retrieved condition command with the command specification data, A condition search unit that writes the command name, the command type, and the process contents of the conditional command searched in the search result data, and sets an argument of the searched conditional command as a new target variable;
A search determination unit that causes the operation search unit and the condition search unit to execute the search again,
And a list display unit for displaying a list of the contents of the search result data.
상기 동작 검색부는, 상기 제어 프로그램 중의 명령과 상기 명령 사양 데이터를 대조하여 당해 명령의 명령 타입을 취득함으로써, 상기 동작 명령을 상기 제어 프로그램 중에서 검색하는 것을 특징으로 하는 프로그램 진단 장치.The method according to claim 1,
Wherein the operation searching unit searches the control program for the operation command by collating the command in the control program with the command specification data to acquire the command type of the command.
상기 조건 검색부는, 상기 제어 프로그램 중의 명령과 상기 명령 사양 데이터를 대조하여 당해 명령의 명령 타입을 취득함으로써, 상기 조건 명령을 상기 제어 프로그램 중에서 검색하는 것을 특징으로 하는 프로그램 진단 장치.The method according to claim 1,
Wherein the condition searching unit searches the control program for the condition command by collating an instruction in the control program with the instruction specification data to acquire the instruction type of the instruction.
상기 기억부는 상기 제어 프로그램에 대해서 실행되는 검색의 종료 조건이 기술된 검색 종료 조건 데이터를 추가로 기억하고,
상기 검색 판정부는, 상기 동작 검색부 및 상기 조건 검색부에 의해서 실행된 검색이 상기 종료 조건을 만족하고 있다고 판정하면, 상기 동작 검색부 및 상기 조건 검색부에 의한 검색을 종료시키고, 상기 동작 검색부 및 상기 조건 검색부에 의해서 실행된 검색이 상기 종료 조건을 만족하고 있지 않다고 판정하면, 상기 동작 검색부 및 상기 조건 검색부에 검색을 재차 실행시키는 것을 특징으로 하는 프로그램 진단 장치.The method according to claim 1,
Wherein the storage unit further stores search termination condition data describing an end condition of search executed for the control program,
Wherein the search and determination unit terminates the search by the operation search unit and the condition search unit when it is determined that the search performed by the operation search unit and the condition search unit satisfies the end condition, And a program diagnostic apparatus for executing a search in the operation search section and the condition search section again when it is determined that the search executed by the condition search section does not satisfy the termination condition.
상기 검색 종료 조건 데이터는, 상기 동작 검색부 및 상기 조건 검색부에 의한 검색 횟수의 데이터 또는 상기 제어 프로그램의 검색 범위의 데이터인 것을 특징으로 하는 프로그램 진단 장치.The method of claim 4,
Wherein the search termination condition data is data of the number of searches by the operation search unit and the condition search unit or data of a search range of the control program.
상기 일람 표시부는 변수명, 또는 검색된 조건 명령의 명령명, 명령의 타입 혹은 처리의 내용의 필터 조건이 입력되면, 상기 검색 결과 데이터 중에서 상기 필터 조건에 합치하는 데이터의 내용을 일람 표시하는 것을 특징으로 하는 프로그램 진단 장치.The method according to claim 1,
Wherein the list display unit displays a list of contents of data matching the filter condition among the search result data when a variable name or a command name of a searched condition command, a command type, Program diagnostic device.
상기 기억부는 상기 제어 프로그램에서 사용되고 있는 모든 변수의 미리 정해진 타이밍에서의 값이 축적되는 실행 데이터를 추가로 기억하고,
상기 미리 정해진 타이밍에서, 상기 제어 프로그램을 실행하는 제어 장치의 메모리를 스캔함으로써, 상기 제어 프로그램에서 사용되고 있는 모든 변수의 값을 취득하여, 상기 실행 데이터에 기입하는 스캔부를 추가로 구비하는 것을 특징으로 하는 프로그램 진단 장치.The method according to claim 1,
Wherein the storage further stores execution data in which values at predetermined timings of all variables used in the control program are stored,
Further comprising a scan unit that scans a memory of a control device that executes the control program to acquire values of all variables used in the control program and write the values of the variables in the execution data at the predetermined timing Program diagnostic device.
상기 제어 프로그램을 시뮬레이션 실행함으로써, 상기 제어 프로그램에서 사용되고 있는 모든 변수의 값을 산출하여, 상기 실행 데이터에 기입하는 시뮬레이션부를 추가로 구비하는 것을 특징으로 하는 프로그램 진단 장치.The method of claim 7,
Further comprising a simulation unit for calculating the value of all variables used in said control program by executing said control program by simulation and writing said value to said execution data.
타겟 변수를 설정하는 변수 설정 공정과,
상기 타겟 변수의 값이 변화할 가능성이 있는 상기 동작 명령을 상기 제어 프로그램 중에서 검색하고, 검색된 상기 동작 명령과 상기 명령 사양 데이터를 대조하여, 상기 타겟 변수명 및 검색된 상기 동작 명령의 명령명, 명령의 타입 및 처리의 내용을 상기 검색 결과 데이터에 기입하는 동작 검색 공정과,
상기 동작 검색 공정에서 검색된 상기 동작 명령을 실행하는 조건을 판정하는 상기 조건 명령을 상기 제어 프로그램 중에서 검색하고, 검색된 상기 조건 명령과 상기 명령 사양 데이터를 대조하여, 검색된 상기 조건 명령의 인수의 변수명 및 검색된 상기 조건 명령의 명령명, 명령의 타입 및 처리의 내용을 상기 검색 결과 데이터에 기입하고, 검색된 상기 조건 명령의 인수를 새로운 타겟 변수로 설정하는 조건 검색 공정과,
상기 동작 검색 공정 및 상기 조건 검색 공정에 검색을 재차 실행시키는 검색 판정 공정과,
상기 검색 결과 데이터의 내용을 일람 표시하는 일람 표시 공정을 구비하는 것을 특징으로 하는 프로그램 진단 방법.A control program that includes an operation command for changing a value of an argument and a conditional command for determining a condition for executing the operation command; And a storage unit for storing instruction specification data including contents of processing of instructions and search result data in which a result of a search executed for the control program is recorded,
A variable setting step of setting a target variable,
Searching the control program for the operation command which is likely to change the value of the target variable, verifying the retrieved operation command with the command specification data, and comparing the target variable name and the command name of the retrieved operation command, Type and processing contents into the search result data;
Searching the control program for a condition instruction for determining a condition for executing the operation command retrieved in the operation retrieving step, collating the retrieved condition command with the command specification data, A condition search step of writing the command name, the type of command and the contents of the search of the retrieved conditional command into the retrieval result data, and setting an argument of the retrieved conditional command as a new target variable;
A search determining step of performing the search again in the operation searching step and the condition searching step;
And a list display step of displaying a list of the contents of the search result data.
타겟 변수를 설정하는 변수 설정 공정과,
상기 타겟 변수의 값이 변화할 가능성이 있는 상기 동작 명령을 상기 제어 프로그램 중에서 검색하고, 검색된 상기 동작 명령과 상기 명령 사양 데이터를 대조하여, 상기 타겟 변수명 및 검색된 상기 동작 명령의 명령명, 명령의 타입 및 처리의 내용을 상기 검색 결과 데이터에 기입하는 동작 검색 공정과,
상기 동작 검색 공정에서 검색된 상기 동작 명령을 실행하는 조건을 판정하는 상기 조건 명령을 상기 제어 프로그램 중에서 검색하고, 검색된 상기 조건 명령과 상기 명령 사양 데이터를 대조하여, 검색된 상기 조건 명령의 인수의 변수명 및 검색된 상기 조건 명령의 명령명, 명령의 타입 및 처리의 내용을 상기 검색 결과 데이터에 기입하고, 검색된 상기 조건 명령의 인수를 새로운 타겟 변수로 설정하는 조건 검색 공정과,
상기 동작 검색 공정 및 상기 조건 검색 공정에 검색을 재차 실행시키는 검색 판정 공정과,
상기 검색 결과 데이터의 내용을 일람 표시하는 일람 표시 공정을 구비하는 것을 특징으로 하는 프로그램 진단 프로그램.A control program that includes an operation command for changing a value of an argument and a conditional command for determining a condition for executing the operation command; And a storage unit for storing search result data in which a result of search executed for the control program is recorded, the program comprising:
A variable setting step of setting a target variable,
Searching the control program for the operation command which is likely to change the value of the target variable, verifying the retrieved operation command with the command specification data, and comparing the target variable name and the command name of the retrieved operation command, Type and processing contents into the search result data;
Searching the control program for a condition instruction for determining a condition for executing the operation command retrieved in the operation retrieving step, collating the retrieved condition command with the command specification data, A condition search step of writing the command name, the type of command and the contents of the search of the retrieved conditional command into the retrieval result data, and setting an argument of the retrieved conditional command as a new target variable;
A search determining step of performing the search again in the operation searching step and the condition searching step;
And a list display step of displaying contents of the search result data in a list.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2015/061757 WO2016166876A1 (en) | 2015-04-16 | 2015-04-16 | Program diagnosis device, program diagnosis method and program diagnosis program |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170127569A true KR20170127569A (en) | 2017-11-21 |
KR101846140B1 KR101846140B1 (en) | 2018-04-05 |
Family
ID=57126471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020177031427A KR101846140B1 (en) | 2015-04-16 | 2015-04-16 | Program diagnostic device, program diagnostic method, and program diagnostic program |
Country Status (4)
Country | Link |
---|---|
JP (1) | JP6076565B1 (en) |
KR (1) | KR101846140B1 (en) |
CN (1) | CN107533322B (en) |
WO (1) | WO2016166876A1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019003313A1 (en) * | 2017-06-27 | 2019-01-03 | 三菱電機株式会社 | Debugging device |
JPWO2020166004A1 (en) * | 2019-02-14 | 2021-02-18 | 三菱電機株式会社 | Control systems, programmable logic controllers, methods, and programs |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2923997B2 (en) * | 1989-09-21 | 1999-07-26 | ソニー株式会社 | Finding the cause of an error in a ladder sequence program |
JP4242361B2 (en) | 2004-03-31 | 2009-03-25 | オムロン株式会社 | Development support equipment |
US7272450B2 (en) * | 2004-03-31 | 2007-09-18 | Omron Corporation | Development aid device |
JP5500896B2 (en) * | 2009-07-27 | 2014-05-21 | 株式会社キーエンス | Program creation support apparatus, program creation support method, and computer program |
JP5506822B2 (en) * | 2009-12-28 | 2014-05-28 | 三菱電機株式会社 | Program creation support device |
CN104204975B (en) * | 2012-03-26 | 2016-10-12 | 三菱电机株式会社 | Sequencer debugging auxiliary device |
-
2015
- 2015-04-16 CN CN201580078870.3A patent/CN107533322B/en active Active
- 2015-04-16 WO PCT/JP2015/061757 patent/WO2016166876A1/en active Application Filing
- 2015-04-16 JP JP2016555855A patent/JP6076565B1/en active Active
- 2015-04-16 KR KR1020177031427A patent/KR101846140B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
WO2016166876A1 (en) | 2016-10-20 |
KR101846140B1 (en) | 2018-04-05 |
CN107533322A (en) | 2018-01-02 |
JPWO2016166876A1 (en) | 2017-04-27 |
JP6076565B1 (en) | 2017-02-08 |
CN107533322B (en) | 2019-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10915419B2 (en) | Industrial control system, and assistance apparatus, control assist method, and program thereof | |
JP6430037B2 (en) | Debugging support apparatus and debugging support method | |
US8074182B2 (en) | Work procedure display method and system, production process management method and system, and computer program of the same | |
KR101846140B1 (en) | Program diagnostic device, program diagnostic method, and program diagnostic program | |
JP6150953B2 (en) | Debugging device, debugging method, and debugging program | |
JP2009122936A (en) | Sequence program monitor device equipped with display function for abnormality research and programmable controller | |
TW201706739A (en) | Programmable logic controller, engineering tool and engineering tool program | |
JP6989464B2 (en) | Software generation method and software generation system | |
CN114787735A (en) | Prediction system, information processing device, and information processing program | |
KR20130100335A (en) | System design device | |
US9122772B2 (en) | Method for analyzing message archives and corresponding computer program | |
KR101716480B1 (en) | Apparatus for inputting test-case using gui | |
KR100650840B1 (en) | Testing device and programming tool | |
KR101303866B1 (en) | Method of monitoring substrate processing apparatus | |
JP6840294B1 (en) | Programmable display, control system and analysis method | |
JP7524784B2 (en) | Information processing device, control system, and report output method | |
JPH08179966A (en) | Program test device | |
JP2005275713A (en) | Maintenance information management system | |
US20210350296A1 (en) | Productivity improvement support system and productivity improvement support method | |
JP7044086B2 (en) | Control systems, control methods, and control programs | |
JP6003281B2 (en) | Quality evaluation system and quality evaluation method for products | |
JP2023107534A (en) | Support system, support method and program | |
JP2005100027A (en) | The failure information display device of the programmable controller has a content that is divided into detailed information about the relevant failure according to user-defined attributes in the failure details display section, each time this attribute is selected. A fault information display device for a programmable controller, which is displayed on the screen. | |
JPH11296358A (en) | Signal analysis support device | |
JP2019153232A (en) | Operation management device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
PA0105 | International application |
Patent event date: 20171030 Patent event code: PA01051R01D Comment text: International Patent Application |
|
PA0201 | Request for examination | ||
PA0302 | Request for accelerated examination |
Patent event date: 20171030 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination |
|
PG1501 | Laying open of application | ||
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20180314 |
|
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20180330 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20180330 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20210325 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20220222 Start annual number: 5 End annual number: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20230222 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20240220 Start annual number: 7 End annual number: 7 |