KR101324370B1 - 시퀀스 프로그램의 디버그 장치, 디버그 방법, 및 프로그램 - Google Patents
시퀀스 프로그램의 디버그 장치, 디버그 방법, 및 프로그램 Download PDFInfo
- Publication number
- KR101324370B1 KR101324370B1 KR1020117023314A KR20117023314A KR101324370B1 KR 101324370 B1 KR101324370 B1 KR 101324370B1 KR 1020117023314 A KR1020117023314 A KR 1020117023314A KR 20117023314 A KR20117023314 A KR 20117023314A KR 101324370 B1 KR101324370 B1 KR 101324370B1
- Authority
- KR
- South Korea
- Prior art keywords
- value
- range
- setting
- skip
- output contact
- Prior art date
Links
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
- 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
- G05B19/056—Programming the PLC
-
- 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/048—Monitoring; Safety
-
- 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/3664—Environments for testing or debugging software
-
- 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/13—Plc programming
- G05B2219/13142—Debugging, tracing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- Programmable Controllers (AREA)
Abstract
본 발명은 시퀀스 프로그램의 디버그를 용이하고 또한 효율적으로 실행할 수 있는 디버그 환경을 제공하는 시퀀스 프로그램의 디버그 장치를 제공하는 것이다. 시퀀스 프로그램을 실행할 때 스킵하는 스킵 범위를 설정하는 범위 설정부와, 상기 스킵 범위에 포함되어 다른 범위에 값을 출력하는 출력 접점을 추출하는 추출부와, 추출된 상기 출력 접점에 값을 설정하는 값설정부를 가지는 것을 특징으로 한다.
Description
본 발명은 시퀀스 프로그램의 디버그 효율을 향상시키기 위한 디버그 장치, 디버그 방법, 및 프로그램에 관한 것이다.
종래로부터 시퀀스 프로그램의 디버그를 실행할 때, 시퀀스 프로그램의 일부를 스킵하고 실행시키는 것이 있다. 이것은 시퀀스 프로그램에 의해 제어되는 기계의 일부가 완성되어 있지 않는 경우 등에 실행된다. 예를 들면, 일본국 특개평 08-328614호 공보(특허 문헌 1)에는, 스킵하는 범위의 스텝 번호(No)를 지정함으로써, 프로그램의 일부를 스킵하는 프로그래머블 컨트롤러 장치의 발명이 개시되어 있다.
특허 문헌 1 등에 공개된 시퀀스 프로그램의 디버그 장치에서는, 시퀀스 프로그램의 일부를 지정하여 그 지정한 범위를 스킵시키는 설정을 실행하고, 그 설정에 따라서 시퀀스 프로그램의 일부를 스킵시켜 실행시킨다.
그렇지만, 특허 문헌 1 등에 개시된 프로그래머블 컨트롤러 장치 등의 발명에서는 시퀀스 프로그램의 디버그를 실행할 때에 스킵시키고 있는 범위 내의 연산 결과를, 시퀀스 프로그램의 실행시에 의사적(擬似的)으로 디바이스 테스트 등의 기능을 이용하여 설정하기 때문에, 디버그가 비효율적이고 또한 어렵다고 하는 문제점이 있었다.
본 발명은 상기의 점에 감안하여 이러한 문제를 해소하기 위해서 발명된 것으로, 시퀀스 프로그램의 디버그를 용이하고 또한 효율적으로 실행할 수 있는 디버그 환경을 제공하는 것을 목적으로 하고 있다.
상기 목적을 달성하기 위해서, 본 발명의 시퀀스 프로그램의 디버그 장치는 다음과 같은 구성을 채용했다.
본 발명의 시퀀스 프로그램의 디버그 장치는 시퀀스 프로그램을 실행할 때에 스킵하는 스킵 범위를 설정하는 범위 설정부와, 상기 스킵 범위에 포함되어 다른 범위에 값을 출력하는 출력 접점을 추출하는 추출부와, 추출된 상기 출력 접점에 값을 설정하는 값설정부를 가지는 구성으로 할 수 있다.
이것에 의해, 시퀀스 프로그램의 디버그를 용이하고 또한 효율적으로 실행할 수 있는 디버그 환경을 제공하는 시퀀스 프로그램의 디버그 장치를 제공할 수 있다.
본 발명의 시퀀스 프로그램의 디버그 장치, 디버그 방법, 및 프로그램에 의하면, 시퀀스 프로그램의 디버그를 용이하고 또한 효율적으로 실행할 수 있는 디버그 환경을 제공하는 시퀀스 프로그램의 디버그 장치, 디버그 방법, 및 프로그램을 제공하는 것이 가능하게 된다.
도 1은 본 실시 형태에 관한 디버그 장치의 기능 구성예를 나타내는 도면이다.
도 2a는 래더-프로그램의 일부가 표시된 화면예이다.
도 2b는 스킵 범위를 설정하는 화면예를 나타내는 도면이다.
도 3a는 스킵 범위 외의 범위에 대해 값을 출력하는 비트 디바이스 및 워드 디바이스를 설명하는 도면이다.
도 3b는 디바이스 테스트 기능에 의해 비트 디바이스 및 워드 디바이스의 값을 설정하는 화면예를 나타내는 도면이다.
도 4는 스킵 범위 외에서 연산되어 스킵 범위에서 그 값이 참조되는 것을 설명하는 도면이다.
도 5는 스킵 범위에 포함되는 비트 디바이스 및 워드 디바이스에 값을 설정하는 처리를 설명하는 도면이다.
도 6a은 래더-프로그램에 대해 스킵 범위가 지정된 화면예를 나타내는 도면이다.
도 6b는 스킵 범위의 정보를 표시하는 화면예를 나타내는 도면이다.
도 6c는 다른 범위에서 참조되는 비트 디바이스 및 워드 디바이스에 대해 값을 설정하는 화면을 나타내는 도면이다.
도 7a는 스킵 범위에 있어서 연산되는 비트 디바이스가 추출된 화면을 설명하는 도면이다.
도 7b는 추출된 비트 디바이스에 대해 값을 설정하는 화면을 나타내는 도면이다.
도 8a는 스킵 범위에 있어서 연산되는 워드 디바이스가 추출된 화면을 설명하는 도면이다.
도 8b는 추출된 워드 디바이스에 대해 값을 설정하는 화면을 나타내는 도면이다.
도 9는 스킵 범위에 포함되고, 또한 다른 범위의 비트 디바이스 또는 워드 디바이스의 값에 의해 값이 변화하는 비트 디바이스 및 워드 디바이스에 값을 설정하는 처리를 설명하는 도면이다.
도 10a는 다른 범위에서 연산되어 스킵 범위에서 참조되는 비트 디바이스가 추출되는 예(그 1)를 나타내는 도면이다.
도 10b는 스킵 범위에서 연산되어 다른 범위에서 참조되는 비트 디바이스가 추출되는 예(그 1)를 나타내는 도면이다.
도 10c는 스킵 범위에서 연산되어 다른 범위에서 참조되는 비트 디바이스의 값을 설정하는 예(그 1)를 나타내는 도면이다.
도 11a는 다른 범위에서 연산되어 스킵 범위에서 참조되는 워드 디바이스가 추출되는 예(그 1)를 나타내는 도면이다.
도 11b는 스킵 범위에서 연산되어 다른 범위에서 참조되는 워드 디바이스가 추출되는 예(그 1)를 나타내는 도면이다.
도 11c는 스킵 범위에서 연산되어 다른 범위에서 참조되는 워드 디바이스의 값을 설정하는 예(그 1)를 나타내는 도면이다.
도 12a는 다른 범위에서 연산되어 스킵 범위에서 참조되는 비트 디바이스가 추출되는 예(그 2)를 나타내는 도면이다.
도 12b는 스킵 범위에서 연산되어 다른 범위에서 참조되는 워드 디바이스가 추출되는 예(그 2)를 나타내는 도면이다.
도 12c는 스킵 범위에서 연산되어 다른 범위에서 참조되는 워드 디바이스의 값을 설정하는 예(그 2)를 나타내는 도면이다.
도 13a는 다른 범위에서 연산되어 스킵 범위에서 참조되는 워드 디바이스가 추출되는 예(그 2)를 나타내는 도면이다.
도 13b는 스킵 범위에서 연산되어 다른 범위에서 참조되는 비트 디바이스가 추출되는 예(그 2)를 나타내는 도면이다.
도 13c는 스킵 범위에서 연산되어 다른 범위에서 참조되는 비트 디바이스의 값을 설정하는 예(그 2)를 나타내는 도면이다.
도 14는 본 실시 형태에 관한 디버그 장치(10)의 하드웨어 구성도이다.
도 2a는 래더-프로그램의 일부가 표시된 화면예이다.
도 2b는 스킵 범위를 설정하는 화면예를 나타내는 도면이다.
도 3a는 스킵 범위 외의 범위에 대해 값을 출력하는 비트 디바이스 및 워드 디바이스를 설명하는 도면이다.
도 3b는 디바이스 테스트 기능에 의해 비트 디바이스 및 워드 디바이스의 값을 설정하는 화면예를 나타내는 도면이다.
도 4는 스킵 범위 외에서 연산되어 스킵 범위에서 그 값이 참조되는 것을 설명하는 도면이다.
도 5는 스킵 범위에 포함되는 비트 디바이스 및 워드 디바이스에 값을 설정하는 처리를 설명하는 도면이다.
도 6a은 래더-프로그램에 대해 스킵 범위가 지정된 화면예를 나타내는 도면이다.
도 6b는 스킵 범위의 정보를 표시하는 화면예를 나타내는 도면이다.
도 6c는 다른 범위에서 참조되는 비트 디바이스 및 워드 디바이스에 대해 값을 설정하는 화면을 나타내는 도면이다.
도 7a는 스킵 범위에 있어서 연산되는 비트 디바이스가 추출된 화면을 설명하는 도면이다.
도 7b는 추출된 비트 디바이스에 대해 값을 설정하는 화면을 나타내는 도면이다.
도 8a는 스킵 범위에 있어서 연산되는 워드 디바이스가 추출된 화면을 설명하는 도면이다.
도 8b는 추출된 워드 디바이스에 대해 값을 설정하는 화면을 나타내는 도면이다.
도 9는 스킵 범위에 포함되고, 또한 다른 범위의 비트 디바이스 또는 워드 디바이스의 값에 의해 값이 변화하는 비트 디바이스 및 워드 디바이스에 값을 설정하는 처리를 설명하는 도면이다.
도 10a는 다른 범위에서 연산되어 스킵 범위에서 참조되는 비트 디바이스가 추출되는 예(그 1)를 나타내는 도면이다.
도 10b는 스킵 범위에서 연산되어 다른 범위에서 참조되는 비트 디바이스가 추출되는 예(그 1)를 나타내는 도면이다.
도 10c는 스킵 범위에서 연산되어 다른 범위에서 참조되는 비트 디바이스의 값을 설정하는 예(그 1)를 나타내는 도면이다.
도 11a는 다른 범위에서 연산되어 스킵 범위에서 참조되는 워드 디바이스가 추출되는 예(그 1)를 나타내는 도면이다.
도 11b는 스킵 범위에서 연산되어 다른 범위에서 참조되는 워드 디바이스가 추출되는 예(그 1)를 나타내는 도면이다.
도 11c는 스킵 범위에서 연산되어 다른 범위에서 참조되는 워드 디바이스의 값을 설정하는 예(그 1)를 나타내는 도면이다.
도 12a는 다른 범위에서 연산되어 스킵 범위에서 참조되는 비트 디바이스가 추출되는 예(그 2)를 나타내는 도면이다.
도 12b는 스킵 범위에서 연산되어 다른 범위에서 참조되는 워드 디바이스가 추출되는 예(그 2)를 나타내는 도면이다.
도 12c는 스킵 범위에서 연산되어 다른 범위에서 참조되는 워드 디바이스의 값을 설정하는 예(그 2)를 나타내는 도면이다.
도 13a는 다른 범위에서 연산되어 스킵 범위에서 참조되는 워드 디바이스가 추출되는 예(그 2)를 나타내는 도면이다.
도 13b는 스킵 범위에서 연산되어 다른 범위에서 참조되는 비트 디바이스가 추출되는 예(그 2)를 나타내는 도면이다.
도 13c는 스킵 범위에서 연산되어 다른 범위에서 참조되는 비트 디바이스의 값을 설정하는 예(그 2)를 나타내는 도면이다.
도 14는 본 실시 형태에 관한 디버그 장치(10)의 하드웨어 구성도이다.
이하, 본 실시 형태를 도면에 기초하여 설명한다. 이하의 실시 형태에서는, 주로 래더-프로그램에 대해서 설명하지만, 실시 형태는 래더-프로그램에 한정하지 않고, 구조화된(structured)·텍스트, 기능·블록·다이어그램, 또는 시퀀셜·기능·차트 등의 시퀀스 프로그램의 디버그에 적용할 수 있다. 또, 이하의 실시 형태에 있어서의 「입력 접점」은 예를 들면 래더-프로그램의 「접점」에 대응하고,「출력 접점」은 예를 들면 래더-프로그램의 「코일」에 대응한다.
〔본 실시 형태〕
도 1은 본 실시 형태에 관한 디버그 장치의 기능 구성예를 나타내는 도면이다. 도 1의 디버그 장치(10)는 입력 장치(11), 제어부(12), 및 표시 장치(13)를 가진다. 입력 장치(11)는 예를 들면, 키보드 등의 입력 디바이스이며, 제어부(12)에 대해, 조작자에 의해 디버그 처리의 지시 등이 입력된다. 입력 장치(11)로부터는 또한 시퀀스 프로그램 중에 스킵하는 범위가 입력된다. 표시 장치(13)는 예를 들면 디스플레이 등이며, 디버그 시에 실행되는 시퀀스 프로그램이나, 디버그의 결과 등이 표시된다.
제어부(12)는 시퀀스 프로그램의 디버그 처리를 실행한다. 제어부(12)는 설정부(21), 데이터 유지부(28), 및 실행부(29)를 가진다. 설정부(21)는 시퀀스 프로그램을 디버그할 때에 스킵하는 범위를 설정하고, 그 범위에 관한 접점의 값을 설정한다. 설정부(21)는 범위 설정부(22), 추출부(23), 화면 생성부(24), 및 값설정부(25)를 가진다.
범위 설정부(22)는 시퀀스 프로그램을 실행할 때에, 스킵하는 스킵 범위를 설정한다. 또한, 「스킵한다」라는 것은, 지정된 범위 등을 실행하는 일 없이, 다음 라인 등으로 진행하는 것을 말한다.
추출부(23)는 설정된 스킵 범위에 포함되어 있는 접점 가운데, 시퀀스 프로그램의 다른 범위에 대해서 값을 출력하는 출력 접점을 추출한다. 추출부(23)는 또한 설정된 스킵 범위와는 다른 범위에 포함되어 있는 접점 가운데, 스킵 범위에 대해서 값을 입력하는 입력 접점을 추출한다.
화면 생성부(24)는 스킵 범위의 설정을 촉구하는 화면, 스킵 범위의 정보, 접점의 정보, 및 접점에 설정되는 값의 정보 등을 표시하는 화면을 생성한다.
값설정부(25)는 추출부(23)가 추출한 출력 접점에 대해 값을 설정한다. 값설정부(25)는 또한 출력 접점의 값이 입력 접점의 값마다 다른 경우에는, 각각의 입력 접점의 값마다 출력 접점의 값을 설정한다.
데이터 유지부(28)는 값설정부(25)에 의해 설정된 출력 접점의 값을 유지한다. 데이터 유지부(28)는 또한 범위 설정부(22)에 의해 설정된 스킵 범위의 정보를 유지하면 좋다.
실행부(29)는 시퀀스 프로그램의 디버그 처리를 실행한다. 실행부(29)는 디버그 시에 스킵하는 스킵 범위의 정보를 데이터 유지부(28)로부터 취득한다. 실행부(29)는 또한 스킵 범위로부터 값을 출력하는 출력 접점의 값을 데이터 유지부(28)로부터 취득한다. 이것에 의해, 디버그 처리 시에, 디바이스 테스트 기능 등을 이용하는 일 없이, 시퀀스 프로그램의 일부를 스킵하고 디버그할 수 있다.
본 실시 형태에 관한 디버그 장치(10)에 의한 디버그 처리의 상세한 설명에 앞서, 종래의 디버그 처리의 개략에 대해서, 도 2 내지 도 4를 이용하여 설명한다. 도 2 내지 도 4는 시퀀스 프로그램의 디버그 처리를 실행할 때에, 표시되는 화면예를 설명하는 도면이다. 도 2a는 래더-프로그램의 일부가 표시된 화면예이다. 도 2a의 화면에서는, 해칭(hatching)된 범위 a1이 스킵 범위이다. 스킵 범위의 지정은 예를 들면, 마우스 등의 입력 디바이스에 의해, 도 2a의 화면 안에서 스텝을 지정함으로써 실행되면 좋다.
도 2b는 도 2a에서 도시된 범위 a1을 스킵 범위로서 설정하는 화면예를 나타내는 도면이다. 도 2b에서는 해칭된 행 a2가 스킵 범위로서 설정된다.
도 3a은 스킵 범위에 포함되어 있는 비트 디바이스 및 워드 디바이스 가운데, 스킵 범위 외의 범위에 대해 값을 출력하는 비트 디바이스 및 워드 디바이스를 설명하는 도면이다. 도 3a에서는 비트 디바이스 M10 및 워드 디바이스 D10이 스킵 범위 외에서 참조된다. 따라서 스킵 범위에서 연산하여 얻어진 값을 디바이스 테스트 기능을 이용하여 의사적으로 설정한다. 도 3b는 디버그 처리 시에, 디바이스 테스트 기능에 의해 비트 디바이스 및 워드 디바이스의 값을 설정하는 화면예를 나타내는 도면이다.
도 4는 스킵 범위에 포함되어 있는 비트 디바이스 및 워드 디바이스 가운데, 스킵 범위 외에서 연산되어 스킵 범위에서 그 값이 참조되는 것을 설명하는 도면이다. 도 4에서는 비트 디바이스 M10 및 워드 디바이스 D10이 각각 스킵 범위 외의 라인 b1 및 라인 b2에서 연산하여 값이 결정된다. 이러한 비트 디바이스 및 워드 디바이스도, 디바이스 테스트 기능에 의해 값을 의사적으로 설정한다.
도 5는 디버그 장치(10)가 실행하는, 스킵 범위에 포함되는 비트 디바이스 및 워드 디바이스에 값을 설정하는 처리를 설명하는 도면이다. 도 5의 스텝 S11에서는, 범위 설정부(22)에 의해 스킵 범위가 설정된다. 스텝 S11에 이어 스텝 S12로 진행되어, 추출부(23)가 스킵 범위에서 연산되어 다른 범위에서 참조되는 비트 디바이스 및 워드 디바이스를 추출한다.
스텝 S12에 이어 스텝 S13로 진행되어, 값설정부(25)가 스텝 S12에서 추출된 비트 디바이스 및 워드 디바이스에 값을 설정한다.
도 6은 도 5의 처리에 대해 표시되는 화면예를 나타내는 도면이다. 도 6의 화면은 표시 장치(13)에 표시된다. 도 6a은 래더-프로그램에 대해 스킵 범위가 지정된 화면예를 나타내는 도면이다. 도 6a에서는 해칭된 범위 c1이 스킵 범위로서 지정되어 있다. 도 6b는 지정된 스킵 범위 c1의 정보를 표시하는 화면예를 나타내는 도면이다. 도 6b에서는 스킵 범위 c1의 개시 위치와 종료 위치가 도시된 행 c2가 강조 표시되어 있다.
도 6c는 스킵 범위 c1에 있어서 연산되는 비트 디바이스 및 워드 디바이스 가운데, 다른 범위에서 참조되는 비트 디바이스 및 워드 디바이스에 대해 값을 설정하는 화면을 나타내는 도면이다. 도 6c에서는 비트 디바이스 Y101에 대해 값 「ON」이 설정되고, 워드 디바이스 D10에 대해 값 「100」이 설정된다. 도 6c의 화면에 기초하여 조작자가 입력 장치(11)로부터 값을 입력함으로써, 대응하는 비트 디바이스 또는 워드 디바이스에 값이 설정된다.
도 7은 스킵 범위에 있어서 연산되는 비트 디바이스가 추출되어 값이 설정될 때의 화면을 설명하는 도면이다. 도 7a 및 도 7b의 화면은 화면 생성부(24)에 의해 생성되어 표시 장치(13)에 표시된다. 도 7a에서는 스킵 범위 d1에 비트 디바이스 M10이 포함되고, 또한 스킵 범위 d1의 외에서 비트 디바이스 M10이 참조되고 있다. 그래서, 추출부(23)가 비트 디바이스 M10을 추출한다.
도 7b는 추출된 비트 디바이스 M10에 대해 값을 설정하는 화면을 나타내는 도면이다. 도 7b에서는, 비트 디바이스 M10에 값 「ON」이 대응지어져 있다. 디바이스의 항목에 포함되는 「M10」은 추출부(23)에 의해 추출된 비트 디바이스이며, 대응하는 값의 란(欄)에는 입력 장치(11)로부터 입력되는 값이 표시된다. 이것에 의해, 값설정부(25)가 비트 디바이스 M10에 대해 값「ON」을 설정한다.
도 8은 스킵 범위에 있어서 연산되는 워드 디바이스가 추출되어 값이 설정될 때의 화면을 설명하는 도면이다. 도 8a 및 도 8b의 화면은 화면 생성부(24)에 의해 생성되어 표시 장치(13)에 표시된다. 도 8a에서는 스킵 범위 e1에 워드 디바이스 D10이 포함되고, 또한 스킵 범위 e1의 외에서 워드 디바이스 D10이 참조되고 있다. 그래서, 추출부(23)가 워드 디바이스 D10을 추출한다.
도 8b는 추출된 워드 디바이스 D10에 대해 값을 설정하는 화면을 나타내는 도면이다. 도 8b에서는, 워드 디바이스 D10에 값「100」이 대응지어져 있다. 디바이스의 항목에 포함되는 「D10」은 추출부(23)에 의해 추출된 워드 디바이스이며, 대응하는 값의 란에는 입력 장치(11)로부터 입력되는 값이 표시된다. 이것에 의해, 값설정부(25)가 워드 디바이스 D10에 대해 값「100」을 설정한다.
도 9는 스킵 범위에 포함되고, 또한 다른 범위의 비트 디바이스 또는 워드 디바이스의 값에 의해 값이 변화하는 비트 디바이스 및 워드 디바이스에 값을 설정하는 처리를 설명하는 순서도이다. 도 9의 처리는 디버그 장치(10)에 의해 실행된다.
도 9의 스텝 S21에서는 범위 설정부(22)에 의해 스킵 범위가 설정된다. 스텝 S22에서는, 추출부(23)가 다른 범위에서 연산되어 스킵 범위에서 참조되는 비트 디바이스 및 워드 디바이스를 추출한다. 스텝 S23에서는, 추출부(23)가 스킵 범위에서 연산되어 다른 범위에서 참조되는 비트 디바이스 및 워드 디바이스를 추출한다.
스텝 S24에서는, 값설정부(25)가 스텝 S23에서 추출된 디바이스의 값이, 스텝 S22에서 추출된 디바이스의 값에 의존하는지 여부를 판단한다. 의존하는 경우에는 스텝 S25로 진행하고, 의존하지 않는 경우에는 스텝 S26으로 진행한다.
스텝 S25에서는, 다른 범위에서 참조되는 비트 디바이스 및 워드 디바이스에 대해, 스킵 범위에서 참조되는 값마다 대응하는 값을 설정한다. 스텝 S26에서는, 다른 범위에서 참조되는 비트 디바이스 및 워드 디바이스에 대해 값을 설정한다.
도 10 내지 도 13은, 도 9의 처리에 의해 비트 디바이스 및 워드 디바이스의 값이 설정될 때에 표시되는 화면예를 나타내는 도면이다. 도 10 내지 도 13의 화면은 화면 생성부(24)에 의해 생성된다.
도 10은 비트 디바이스의 값을 설정하는 예를 나타내는 도면이다. 도 10a는 다른 범위에서 연산되어 스킵 범위에서 참조되는 비트 디바이스가 추출되는 예를 나타내는 도면이다. 도 10a에서는 f1에서 출력되는 비트 디바이스 M0가, 스킵 범위에 포함되어 있는 f2에 입력된다.
도 10b는 스킵 범위에서 연산되어 다른 범위에서 참조되는 비트 디바이스가 추출되는 예를 나타내는 도면이다. 도 10b에서는, 스킵 범위에 포함되어 있는 f3에서 출력되는 비트 디바이스 M0가, f4에 입력된다. 도 10a 및 도 10b에서, f4에 입력되는 비트 디바이스 M0의 값은, f2에 입력되는 값에 의해 다른 값이 된다.
도 10c는 f4에 입력되는 M0의 값을 설정하는 화면을 나타내는 도면이다. 도 10c에 있어서,「조건」은 f2에 입력될 때의 값, 「디바이스」는 디바이스의 명칭, 「값」은 설정하는 값의 항목을 각각 나타낸다.
도 10c에서는, f2에 입력될 때의 값이 「ON」과「OFF」 각각의 경우마다, f4에 입력되는 값이 입력 장치(11)로부터 입력된 예를 나타낸다. 입력된 값은 값설정부(25)에 의해 조건마다 대응지어져, 데이터 유지부(28)에 유지된다.
도 11은 워드 디바이스의 값을 설정하는 예를 나타내는 도면이다. 도 11a는 다른 범위에서 연산되어 스킵 범위에서 참조되는 워드 디바이스가 추출되는 예를 나타내는 도면이다. 도 11a에서는 g1에서 출력되는 워드 디바이스 D0가, 스킵 범위에 포함되어 있는 g2에서 참조되어 워드 디바이스 D10에 대입된다.
도 11b는 스킵 범위에서 연산되어 다른 범위에서 참조되는 워드 디바이스가 추출되는 예를 나타내는 도면이다. 도 11b에서는 g3에서 출력되는 워드 디바이스 D10이 g4에서 참조된다.
도 11c는 g2에서 참조되는 워드 디바이스 D0의 값마다, 워드 디바이스 D10의 값을 설정하는 화면예를 나타내는 도면이다. 도 11c에 있어서, 「조건」은 g2에서 참조될 때의 값, 「디바이스」는 값을 설정하는 디바이스의 명칭, 「값」은 설정하는 값의 항목을 각각 나타낸다.
도 11c에서는, g2에 입력되는 워드 디바이스 D0의 값이 「0」과「10」각각의 경우마다, g4에 입력되는 값이 입력 장치(11)로부터 입력된 예를 나타낸다. 입력된 값은 값설정부(25)에 의해 조건마다 대응지어져, 데이터 유지부(28)에 유지된다.
도 12는 비트 디바이스의 값마다, 워드 디바이스의 값이 설정되는 예를 나타내는 도면이다. 도 12a는 다른 범위에서 연산되어 스킵 범위에서 참조되는 비트 디바이스가 추출되는 예를 나타내는 도면이다. 도 12a에서는 h1에서 출력되는 비트 디바이스 M0가, 스킵 범위에 포함되는 h2에서 참조되고, 그 값에 의해 M10와 D10의 값이 연산된다.
도 12b는 스킵 범위에서 연산되어 다른 범위에서 참조되는 워드 디바이스가 추출되는 예를 나타내는 도면이다. 도 12b에서는, 스킵 범위에 포함되는 h3에서 출력되는 워드 디바이스 D10이 h4에서 참조된다.
도 12c는 h2에서 참조되는 비트 디바이스 M0의 값마다, 워드 디바이스 D10의 값을 설정하는 화면예를 나타내는 도면이다. 도 12c에 있어서, 「조건」은 h2에서 참조되는 M0의 값, 「디바이스」는 값을 설정하는 디바이스의 명칭, 「값」은 설정하는 값의 항목을 각각 나타낸다.
도 12c에서는, h2에 입력되는 비트 디바이스 M0의 값이 「ON」과「OFF」각각의 경우마다, h4에 입력되는 D10의 값이 입력 장치(11)로부터 입력된 예를 나타낸다. 입력된 값은 값설정부(25)에 의해 조건마다 대응지어져, 데이터 유지부(28)에 유지된다.
도 13은 워드 디바이스의 값마다, 비트 디바이스의 값이 설정되는 예를 나타내는 도면이다. 도 13a은 다른 범위에서 연산되어 스킵 범위에서 참조되는 워드 디바이스가 추출되는 예를 나타내는 도면이다. 도 13a에서는, j1에서 출력되는 워드 디바이스 D0가 스킵 범위에 포함되는 j2에서 참조되고, 그 값에 따라 비트 디바이스 M10의 값이 정해진다.
도 13b는 스킵 범위에서 연산되어 다른 범위에서 참조되는 비트 디바이스가 추출되는 예를 나타내는 도면이다. 도 13b에서는 스킵 범위에 포함되는 j3에서 출력되는 비트 디바이스 M10의 값이 j4에서 참조된다.
도 13c는 j2에서 참조되는 워드 디바이스 D0의 값마다, 비트 디바이스 M10의 값을 설정하는 화면예를 나타내는 도면이다. 도 13c에 있어서, 「조건」은 j2에서 참조되는 D0의 값, 「디바이스」는 값을 설정하는 디바이스의 명칭, 「값」은 설정하는 값의 항목을 각각 나타낸다.
도 13c에서는, j2에 입력되는 워드 디바이스 D0의 값이 「ON」과「OFF」각각의 경우마다, j4에 입력되는 M10의 값이 입력 장치(11)로부터 입력된 예를 나타낸다. 입력된 값은 값설정부(25)에 의해 조건마다 대응지어져, 데이터 유지부(28)에 유지된다.
도 14는 본 실시 형태에 관한 디버그 장치(10)의 하드웨어 구성의 도면이다. 본 실시 형태에 관한 디버그 장치(10)는 CPU(Central Processing Unit; 1), ROM(Read Only Memory; 2), RAM(Random Access Memory; 3), 키보드(4), 디스플레이(5), 하드 디스크 드라이브(이하,「HDD」라고 함; 8), 및 네트워크 인터페이스 카드(이하,「NIC」라고 함; 9)를 가진다.
CPU(1)는 제어장치이며, 디버그 장치(10)의 각부를 제어한다. ROM(2) 및 RAM(3)은 기억장치이며, CPU(1)가 실행하는 프로그램 등을 격납하고, 또한 CPU(1)가 프로그램을 실행할 때 워크 메모리로서 기능한다.
본 실시 형태에 관한 프로그램은 ROM(2)에 격납되는 것 외에, 컴퓨터로 독취 가능한 기억 매체에 격납되고 도시하지 않은 드라이브 장치 등에 삽입된 것으로, CPU(1)가 독출하여 실행하여도 괜찮다.
키보드(4)는 입력장치이며, 디버그 장치(10)에 대한 지시 등을 입력한다. 디스플레이(5)는 표시 장치이며, 디버그 시에 조작자에 대해서 제시하는 화면 등을 표시한다. HDD(8)는 기억장치이며, 디버그 처리되는 시퀀스 프로그램 등의 데이터 및 CPU(1)가 실행하는 프로그램 등을 격납한다. NIC(9)는 네트워크를 통하여 접속된 도시하지 않은 다른 장치 등과의 통신을 실행한다.
이상, 발명을 실시하기 위한 바람직한 형태에 대해서 설명을 했지만, 본 발명은 이 바람직한 형태에서 상술한 실시 형태로 한정되는 것은 아니다. 본 발명의 주지를 해치지 않는 범위에서 변경하는 것이 가능하다.
[산업상의 이용 가능성]
이상과 같이, 본 발명에 관한 시퀀스 프로그램의 디버그 장치는 제어되는 기계의 제작시 이용되는 시퀀스 프로그램의 디버그에 적합하다.
1: CPU 2: ROM
3: RAM 4: 키보드
5: 디스플레이 8: HDD
9: NIC 10: 디버그 장치
11: 입력장치 12: 제어부
13: 표시장치 21: 설정부
22: 범위 설정부 23: 추출부
24: 화면 생성부 25: 값설정부
28: 데이터 유지부 29: 실행부
3: RAM 4: 키보드
5: 디스플레이 8: HDD
9: NIC 10: 디버그 장치
11: 입력장치 12: 제어부
13: 표시장치 21: 설정부
22: 범위 설정부 23: 추출부
24: 화면 생성부 25: 값설정부
28: 데이터 유지부 29: 실행부
Claims (7)
- 시퀀스 프로그램을 실행할 때에 스킵하는 스킵 범위를 설정하는 범위 설정부와,
상기 스킵 범위에 포함되어 다른 범위에 값을 출력하는 출력 접점을 추출하는 추출부와,
추출된 상기 출력 접점에 값을 설정하는 값설정부를 가지며,
상기 추출부는 또한, 상기 스킵 범위와 다른 범위에 포함되어 상기 스킵 범위에 값을 입력하는 입력 접점을 추출하고,
상기 출력 접점의 값이 상기 입력 접점의 값에 대응하여 변화하는 경우에, 상기 값설정부는 상기 입력 접점이 취득하는 값마다 상기 출력 접점의 값을 설정하는 것을 특징으로 하는 시퀀스 프로그램의 디버그 장치. - 청구항 1에 있어서, 설정된 상기 값을 유지하는 값유지부를 가지는 것을 특징으로 하는 시퀀스 프로그램의 디버그 장치.
- 청구항 1 또는 청구항 2에 있어서,
설정된 상기 출력 접점의 값을 이용하여 상기 시퀀스 프로그램의 디버그 처리를 실행하는 실행부를 가지고,
상기 입력 접점 및 상기 출력 접점은 비트 디바이스 또는 워드 디바이스인 것을 특징으로 하는 시퀀스 프로그램의 디버그 장치. - 청구항 1 또는 청구항 2에 있어서, 설정된 상기 출력 접점의 값을 이용하여 상기 시퀀스 프로그램의 디버그 처리를 실행하는 실행부를 가지는 것을 특징으로 하는 시퀀스 프로그램의 디버그 장치.
- 청구항 1 또는 청구항 2에 있어서, 상기 입력 접점 및 상기 출력 접점은 비트 디바이스 또는 워드 디바이스인 것을 특징으로 하는 시퀀스 프로그램의 디버그 장치.
- 시퀀스 프로그램을 실행할 때 스킵하는 스킵 범위를 설정하는 범위 설정 스텝과,
상기 스킵 범위에 포함되어 다른 범위에 값을 출력하는 출력 접점을 추출하는 추출 스텝과,
추출된 상기 출력 접점에 값을 설정하는 값설정 스텝을 가지며,
상기 추출 스텝은 또한, 상기 스킵 범위와 다른 범위에 포함되어 상기 스킵 범위에 값을 입력하는 입력 접점을 추출하는 스텝을 포함하고,
상기 출력 접점의 값이 상기 입력 접점의 값에 대응하여 변화하는 경우에, 상기 값설정 스텝은 상기 입력 접점이 취득하는 값마다 상기 출력 접점의 값을 설정하는 스텝을 포함하는 것을 특징으로 하는 시퀀스 프로그램의 디버그 방법. - 시퀀스 프로그램을 실행할 때 스킵하는 스킵 범위를 설정하는 범위 설정 스텝과,
상기 스킵 범위에 포함되어 다른 범위에 값을 출력하는 출력 접점을 추출하는 추출 스텝과,
추출된 상기 출력 접점에 값을 설정하는 값설정 스텝을 가지며,
상기 추출 스텝은 또한, 상기 스킵 범위와 다른 범위에 포함되어 상기 스킵 범위에 값을 입력하는 입력 접점을 추출하는 스텝을 포함하고,
상기 출력 접점의 값이 상기 입력 접점의 값에 대응하여 변화하는 경우에, 상기 값설정 스텝은 상기 입력 접점이 취득하는 값마다 상기 출력 접점의 값을 설정하는 스텝을 포함하는 것을 특징으로 하는 시퀀스 프로그램의 디버그 방법을 컴퓨터에 실행시키기 위한 프로그램이 기록된 컴퓨터 판독가능 매체.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2009/059709 WO2010137139A1 (ja) | 2009-05-27 | 2009-05-27 | シーケンスプログラムのデバッグ装置、デバッグ方法、及び、プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120041153A KR20120041153A (ko) | 2012-04-30 |
KR101324370B1 true KR101324370B1 (ko) | 2013-11-01 |
Family
ID=43222280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020117023314A KR101324370B1 (ko) | 2009-05-27 | 2009-05-27 | 시퀀스 프로그램의 디버그 장치, 디버그 방법, 및 프로그램 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20120072777A1 (ko) |
JP (1) | JP5279901B2 (ko) |
KR (1) | KR101324370B1 (ko) |
CN (1) | CN102449563B (ko) |
DE (1) | DE112009004802T5 (ko) |
WO (1) | WO2010137139A1 (ko) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE112012006107B4 (de) * | 2012-03-26 | 2015-12-03 | Mitsubishi Electric Corp. | Sequenzprogramm-Fehlerbehebungs-Hilfsvorrichtung |
DE112013006688T5 (de) * | 2013-03-07 | 2015-10-29 | Mitsubishi Electric Corporation | Kontaktplanprogramm-Anzeigeprogramm und Kontaktplanprogramm-Anzeigevorrichtung |
WO2015170382A1 (ja) * | 2014-05-08 | 2015-11-12 | 三菱電機株式会社 | エンジニアリングツール、プログラム編集装置およびプログラム編集システム |
JP5762601B1 (ja) * | 2014-06-17 | 2015-08-12 | 三菱電機株式会社 | プログラム編集装置、方法、およびプログラム |
JP6150953B2 (ja) * | 2015-06-01 | 2017-06-21 | 三菱電機株式会社 | デバッグ装置、デバッグ方法及びデバッグプログラム |
JP6356726B2 (ja) * | 2016-05-19 | 2018-07-11 | ファナック株式会社 | ラダープログラム解析装置 |
CN109002388B (zh) * | 2018-07-17 | 2021-11-23 | 京信网络系统股份有限公司 | 一种调试方法及装置 |
CN110543429B (zh) * | 2019-09-10 | 2023-05-16 | 深圳前海微众银行股份有限公司 | 测试用例调试方法、装置及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06250712A (ja) * | 1993-02-26 | 1994-09-09 | Toyoda Mach Works Ltd | プログラマブルコントローラの周辺装置 |
JPH0736510A (ja) * | 1993-07-22 | 1995-02-07 | Mitsubishi Electric Corp | プログラマブルコントローラ |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6093519A (ja) * | 1983-10-26 | 1985-05-25 | Mitsubishi Electric Corp | プロセス入出力信号の模擬装置 |
JP2978260B2 (ja) * | 1991-03-15 | 1999-11-15 | 株式会社日立製作所 | プログラマブルコントローラのプログラミング方法及びその装置 |
JP3380912B2 (ja) * | 1991-11-08 | 2003-02-24 | オムロン株式会社 | 故障診断のための診断対象のグループ化方法および装置 |
CN1279449C (zh) * | 1994-12-28 | 2006-10-11 | 株式会社东芝 | 微处理器 |
JP3439882B2 (ja) | 1995-05-30 | 2003-08-25 | 三菱電機株式会社 | プログラマブルコントローラ装置 |
JPH08328619A (ja) | 1995-06-01 | 1996-12-13 | Omron Corp | 処理装置 |
US6480818B1 (en) * | 1998-11-13 | 2002-11-12 | Cray Inc. | Debugging techniques in a multithreaded environment |
JP2002073370A (ja) * | 2000-08-25 | 2002-03-12 | Nec Microsystems Ltd | デバッグ支援装置およびその装置によるデバッグ方法 |
US7191373B2 (en) * | 2001-03-01 | 2007-03-13 | Syntest Technologies, Inc. | Method and apparatus for diagnosing failures in an integrated circuit using design-for-debug (DFD) techniques |
US7155426B2 (en) * | 2001-09-20 | 2006-12-26 | International Business Machines Corporation | SQL debugging using stored procedures |
CN100351805C (zh) * | 2002-12-26 | 2007-11-28 | 三菱电机株式会社 | 加工程序编制装置 |
US20050028036A1 (en) * | 2003-07-30 | 2005-02-03 | Kohsaku Shibata | Program debug apparatus, program debug method and program |
US7299456B2 (en) * | 2003-09-18 | 2007-11-20 | International Business Machines Corporation | Run into function |
US7383540B2 (en) * | 2003-12-12 | 2008-06-03 | International Business Machines Corporation | Altering execution flow of a computer program |
DE602005015052D1 (de) * | 2004-03-31 | 2009-08-06 | Omron Tateisi Electronics Co | Vorrichtung zur Entwicklungsunterstützung |
US7958497B1 (en) * | 2006-06-07 | 2011-06-07 | Replay Solutions, Inc. | State synchronization in recording and replaying computer programs |
US7836430B2 (en) * | 2006-07-21 | 2010-11-16 | Apple Inc. | Reversing execution of instructions in a debugger |
JP2011028648A (ja) * | 2009-07-28 | 2011-02-10 | Renesas Electronics Corp | オブジェクトコード生成システム、及びオブジェクトコード生成方法 |
US8745597B2 (en) * | 2009-11-25 | 2014-06-03 | International Business Machines Corporation | Providing programming support to debuggers |
US20110137820A1 (en) * | 2009-12-09 | 2011-06-09 | Reisbich Julia | Graphical model-based debugging for business processes |
-
2009
- 2009-05-27 US US13/322,501 patent/US20120072777A1/en not_active Abandoned
- 2009-05-27 JP JP2011515795A patent/JP5279901B2/ja not_active Expired - Fee Related
- 2009-05-27 DE DE112009004802T patent/DE112009004802T5/de not_active Withdrawn
- 2009-05-27 WO PCT/JP2009/059709 patent/WO2010137139A1/ja active Application Filing
- 2009-05-27 CN CN200980159559.6A patent/CN102449563B/zh not_active Expired - Fee Related
- 2009-05-27 KR KR1020117023314A patent/KR101324370B1/ko not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06250712A (ja) * | 1993-02-26 | 1994-09-09 | Toyoda Mach Works Ltd | プログラマブルコントローラの周辺装置 |
JPH0736510A (ja) * | 1993-07-22 | 1995-02-07 | Mitsubishi Electric Corp | プログラマブルコントローラ |
Also Published As
Publication number | Publication date |
---|---|
CN102449563B (zh) | 2014-06-18 |
JP5279901B2 (ja) | 2013-09-04 |
CN102449563A (zh) | 2012-05-09 |
WO2010137139A1 (ja) | 2010-12-02 |
US20120072777A1 (en) | 2012-03-22 |
KR20120041153A (ko) | 2012-04-30 |
DE112009004802T5 (de) | 2012-06-28 |
JPWO2010137139A1 (ja) | 2012-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101324370B1 (ko) | 시퀀스 프로그램의 디버그 장치, 디버그 방법, 및 프로그램 | |
JP6430037B2 (ja) | デバッグ支援装置およびデバッグ支援方法 | |
JP5859173B1 (ja) | エンジニアリングツール、プログラム編集装置およびプログラム編集システム | |
JP6333798B2 (ja) | 数値制御装置 | |
KR20060120539A (ko) | 그래피컬 프로그래밍 장치 및 프로그래머블 표시기 | |
JP2015156063A (ja) | ラダープログラム作成装置、コンピュータプログラム及びコンピュータ可読情報記録媒体 | |
US10248099B2 (en) | Programmable logic controller, engineering tool, and engineering tool program | |
JP2019160079A (ja) | 開発支援装置、開発支援方法、および開発支援プログラム | |
JP2016170662A (ja) | ラダープログラムの分岐回路抽出表示機能を有するモニタ装置 | |
JP2008242572A (ja) | 制御処理シミュレーション装置 | |
JP2007034825A (ja) | デバッグ装置 | |
WO2010044189A1 (ja) | 工作機械の制御装置及び制御方法 | |
JP2007240848A (ja) | 表示プログラム、データ構造及び表示装置 | |
JP2016148887A (ja) | タッチパネルのジェスチャ操作による編集が可能なラダープログラムの編集装置 | |
CN107045606A (zh) | 用于监测程序代码的执行的方法和设备 | |
JP7423895B2 (ja) | ラダー図プログラム作成支援装置、ラダー図プログラム作成支援方法、およびラダー図プログラム作成支援プログラム | |
JP2020149299A (ja) | グラフ表示装置、グラフ表示方法、及びグラフ表示プログラム | |
JP6025955B1 (ja) | プログラム解析装置及びプログラム解析方法 | |
JP6279373B2 (ja) | 補正装置、方法及びプログラム | |
JP2008159004A (ja) | プログラマブル・ロジック・コントローラのデータトレース装置 | |
JP4802130B2 (ja) | 図面作成プログラム、図面作成装置および図面作成方法 | |
JP2021012494A (ja) | ラベリングプログラム、ラベリング装置及びラベリング方法 | |
JP2012164081A (ja) | 中間コード検査システム、中間コード検査方法、及び中間コード検査プログラム | |
JP2020149298A (ja) | グラフ表示装置、グラフ表示方法、及びグラフ表示プログラム | |
JP2010198457A (ja) | ソースコード作成装置、ソースコード作成プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |