KR101558832B1 - 시퀀스 프로그램 디버그 지원 장치 - Google Patents

시퀀스 프로그램 디버그 지원 장치 Download PDF

Info

Publication number
KR101558832B1
KR101558832B1 KR1020147025833A KR20147025833A KR101558832B1 KR 101558832 B1 KR101558832 B1 KR 101558832B1 KR 1020147025833 A KR1020147025833 A KR 1020147025833A KR 20147025833 A KR20147025833 A KR 20147025833A KR 101558832 B1 KR101558832 B1 KR 101558832B1
Authority
KR
South Korea
Prior art keywords
unit
program
variable
invalidation
execution
Prior art date
Application number
KR1020147025833A
Other languages
English (en)
Other versions
KR20140125870A (ko
Inventor
다카유키 야마오카
Original Assignee
미쓰비시덴키 가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 미쓰비시덴키 가부시키가이샤 filed Critical 미쓰비시덴키 가부시키가이샤
Publication of KR20140125870A publication Critical patent/KR20140125870A/ko
Application granted granted Critical
Publication of KR101558832B1 publication Critical patent/KR101558832B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3624Software debugging by performing operations on the source code, e.g. via a compiler
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13142Debugging, tracing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)
  • Stored Programmes (AREA)

Abstract

시퀀스 프로그램 디버그 지원 장치는, 프로그래머블 로직 컨트롤러로부터 무효화 유닛을 수신하는 구성 편집부와, 시퀀스 프로그램상에서 유닛이 사용하는 변수를 유지하는 변수 유지부와, 시퀀스 프로그램을 편집할 수 있는 프로그램 편집부와, 시퀀스 프로그램을 실행 코드로 변환하는 변환부와, 무효화 유닛이 사용하는 변수를 변수 유지부로부터 취득하고, 취득한 변수가 시퀀스 프로그램 중에서 사용되고 있는 위치를 검색하는 검색부와, 그 위치에 대응하는 실행 코드의 구간을 실행하지 않을 무효화 구간으로서 무효화 구간 설정 파일에 기입하는 무효화 설정부와, 무효화 구간 설정 파일에 기초하여, 무효화 구간을 실행하지 않도록 실행부를 제어하는 실행 제어부를 구비한다.

Description

시퀀스 프로그램 디버그 지원 장치{SEQUENCE-PROGRAM DEBUGGING ASSISTANCE APPARATUS}
본 발명은 시퀀스 프로그램 디버그 지원 장치에 관한 것이다.
프로그래머블 로직 컨트롤러(PLC) 시스템 전용의 시퀀스 프로그램의 디버그 작업에 있어서의 동작 확인시 등에, 시스템 내의 특정 유닛에 관한 동작 프로그램만을 실행시키고 싶지 않은 경우, 종래의 엔지니어링 툴에 있어서는, 이하와 같은 일련의 조작을 행할 필요가 있었다.
(1) 대상 유닛에 관련되어 프로그램 내에서 사용되고 있는 변수 일람을 검색한다. (2) 검색한 변수를 사용하고 있는 프로그램의 장소(복수)를 특정한다. (3) 특정한 프로그램을 실행하지 않도록 한다. 구체적으로는, 프로그램을 백업하여 삭제하는, 코멘트-아웃(comment-out) 하는 등의 편집 조작을 행한다. (4) 프로그램을 컴파일한다(실행 코드로 한다). (5) 컴파일한 실행 코드를 프로그래머블 로직 컨트롤러(PLC)에 기입한다. (6) 프로그래머블 로직 컨트롤러(PLC)를 재기동한다.
예를 들면, 특허 문헌 1에 있어서는, 특정 스텝의 실행을 무효화하는 기술이 개시되어 있다.
특허 문헌 1: 일본국 특개 2008-59421호 공보
상술한 바와 같이, 종래의 기술에 의하면 시퀀스 프로그램의 디버그 작업의 공정수가 많아진다고 하는 문제가 있었다.
본 발명은 상기를 감안하여 이루어진 것으로서, 특정 유닛에 관련되는 프로그램을 실행하지 않고 동작 확인하는 시퀀스 프로그램의 디버그 작업의 공정수를 큰 폭으로 삭감하는 것이 가능한 시퀀스 프로그램 디버그 지원 장치를 얻는 것을 목적으로 한다.
상술한 과제를 해결하여 목적을 달성하기 위해서, 본 발명은 프로그래머블 로직 컨트롤러를 구성하는 유닛으로부터 유저가 선택한 무효화 유닛을 수신하는 유닛 구성 표시 편집부와, 상기 프로그래머블 로직 컨트롤러에서 실행되는 시퀀스 프로그램상에서 상기 유닛이 사용하는 변수를 상기 유닛마다 유지하는 유닛 변수 유지부와, 상기 시퀀스 프로그램을 유저가 편집할 수 있는 프로그램 표시 편집부와, 상기 시퀀스 프로그램을 기억하는 프로그램 기억부와, 상기 시퀀스 프로그램을 상기 프로그래머블 로직 컨트롤러의 프로그램 실행부가 실행 가능한 실행 코드로 변환하는 프로그램 변환부와, 상기 무효화 유닛이 사용하는 변수를 상기 유닛 변수 유지부로부터 취득하고, 취득한 상기 변수가 상기 시퀀스 프로그램 중에서 사용되고 있는 위치(箇所)를 검색하는 변수 사용 위치 검색부와, 상기 위치에 대응하는 상기 실행 코드의 구간을 실행하지 않을 무효화 구간으로서, 무효화 구간 설정 파일에 기입하는 실행 무효화 설정부를 구비한 엔지니어링 툴과; 상기 무효화 구간 설정 파일에 기초하여, 상기 무효화 구간을 실행하지 않도록 상기 프로그램 실행부를 제어하는 실행 제어부를 구비하는 것을 특징으로 한다.
본 발명에 따른 시퀀스 프로그램 디버그 지원 장치는, 시퀀스 프로그램의 디버그 작업의 공정수를 큰 폭으로 삭감할 수 있다고 하는 효과를 달성한다.
도 1은 종래의 엔지니어링 툴에 있어서 특정 유닛에 관한 동작 프로그램만을 실행시키고 싶지 않은 경우에 필요한 조작을 나타내는 도면이다.
도 2는 실시 형태 1에 따른 시퀀스 프로그램 디버그 지원 장치의 기본적인 구성을 나타내는 도면이다.
도 3은 실시 형태 1에 따른 유닛 구성 표시 편집부의 이미지를 나타내는 도면이다.
도 4는 프로그램 표시 편집부(래더-에디터)에 래더-프로그램을 표시한 이미지를 나타내는 도면이다.
도 5는 실시 형태 1에 있어서의 시퀀스 프로그램 디버그 지원 장치의 동작을 나타내는 처리 플로우를 나타내는 도면이다.
도 6은 래더-프로그램의 기본 구성의 모습을 나타내는 도면이다.
도 7은 실시 형태 1에 따른 유저의 조작과 시퀀스 프로그램 디버그 지원 장치의 동작의 모습을 도시한 도면이다.
도 8은 유닛 종류마다의 변수 종류의 일람인 유닛 변수 종류 일람을 나타내는 도면이다.
도 9는 PLC 시스템 내에서의 유닛명과 그 변수명 일람인 유닛 사용 변수명 일람을 나타내는 도면이다.
도 10은 선택된 유닛이 사용하는 변수가 시퀀스 프로그램에서 사용되고 있는 위치를 나타내는 도면이다.
도 11은 시퀀스 프로그램(래더-프로그램)과 실행 코드의 실행 구간의 대응을 나타내는 도면이다.
도 12는 무효화 구간 설정 파일의 내용을 나타내는 도면이다.
도 13은 실시 형태 2에 따른 시퀀스 프로그램 디버그 지원 장치의 기본적인 구성을 나타내는 도면이다.
도 14는 실시 형태 2에 있어서의 시퀀스 프로그램 디버그 지원 장치의 동작을 나타내는 처리 플로우를 나타내는 도면이다.
프로그래머블 로직 컨트롤러(PLC) 시스템 전용의 시퀀스 프로그램의 디버그 작업에 있어서의 동작 확인시 등에, 시스템 내의 특정 유닛에 관한 동작 프로그램만을 실행시키고 싶지 않은 경우, 종래의 엔지니어링 툴에 있어서는, 도 1에 도시된 이하와 같은 일련의 조작을 행할 필요가 있었다.
우선, 도 1의 (1)에 있어서 대상 유닛에 관한 프로그램 내에서 사용하고 있는 변수 일람을 검색한다. 그리고 (2)에 있어서 검색한 변수를 사용하고 있는 프로그램의 장소(복수)를 특정한다. 그리고 (3)에 있어서 특정한 프로그램을 실행하지 않도록 편집한다. 구체적으로는, 프로그램을 백업하여 삭제하는, 코멘트-아웃 하는 등의 편집 조작을 행한다. 그리고 (4)에 있어서 프로그램을 컴파일한다(실행 코드로 함). 그리고 (5)에 있어서 컴파일한 실행 코드를 프로그래머블 로직 컨트롤러(PLC)에 기입한다. 마지막으로, (6)에 있어서 프로그래머블 로직 컨트롤러(PLC)를 재기동(리스타트)한다.
이와 같이, 종래의 엔지니어링 툴에 있어서는 디버그 작업의 공정수가 많아진다고 하는 문제가 있었다.
이하에, 본 발명의 실시 형태에 따른 시퀀스 프로그램 디버그 지원 장치(50)를 도면에 기초하여 상세하게 설명한다. 또한, 이 실시 형태에 의해 본 발명이 한정되는 것은 아니다.
실시 형태 1.
본 발명의 실시 형태 1에 따른 시퀀스 프로그램 디버그 지원 장치(50)의 기본적인 구성을 도 2에 나타낸다. 시퀀스 프로그램 디버그 지원 장치(50)를 실현하는 기본적인 구성으로서는, 엔지니어링 툴 소프트웨어가 인스톨된 PC 등인 엔지니어링 툴(100)과, 엔지니어링 툴(100)로 작성한 프로그램을 실행하는 프로그래머블 로직 컨트롤러(PLC)의 CPU(200)(하드웨어)로 이루어진 구성을 생각할 수 있다. CPU(200)는 프로그래머블 로직 컨트롤러(PLC) 본체(전체는 도시하지 않음)의 일부이다.
이하에, 각 구성요소의 개요를 설명한다. 엔지니어링 툴(100)은 PLC 시스템에서 동작시키는 프로그램을 편집하는 툴이며, 예를 들어 엔지니어링 툴 소프트웨어가 인스톨된 PC 등으로 실현할 수 있다. 엔지니어링 툴(100)은 이하에 제시한 각 처리부를 구비한다.
유닛 구성 표시 편집부(1):
PLC 시스템에서 사용하는 유닛 구성을 설정할 수 있는 에디터이며, 도 3에 이미지를 나타낸다. 유닛 구성 표시 편집부(1)에 있어서 구성요소로서 설정할 수 있는 유닛에는, 입출력 유닛, AD 변환 유닛, 위치 결정 유닛 등이 있다. 유닛 구성 표시 편집부(1)는 PLC 시스템을 구성하는 유닛으로부터 유저가 선택한 무효화 유닛을 수신할 수 있다.
유닛 변수 유지부(2):
유닛과 그 유닛을 조작하기 위한 변수 일람의 대응을 예를 들어 데이터 베이스(DB)로서 유지한다. 예를 들어, 도 3에 도시된 바와 같이 「입력 유닛 1」에는 「X0, X1, X2, X3」라고 하는 이름의 변수가 대응하는 등의 정보가 데이터 베이스로서 유닛 변수 유지부(2)에 유지된다. 유닛 변수 유지부(2)는 엔지니어링 툴 소프트웨어가 인스톨된 PC의 기억 영역 혹은 기억장치 등에 포함된다.
프로그램 표시 편집부(3):
CPU(200)에서 실행하는 프로그램 코드를 편집할 수 있는 에디터이다. PLC 시스템에서는 래더-언어가 사용되는 것이 많기 때문에, 래더-언어에 대한 프로그램 표시 편집부(3)의 이미지를 도 4에 나타낸다.
프로그램 기억부(4):
프로그램 표시 편집부(3)에서 작성한 프로그램 코드를 기억한다. 예를 들면, 래더-언어로 작성한 프로그램 코드의 기본적 구성요소는, 회로 기호와 변수이다. 회로 기호는 접점이나 코일과 같은 PLC 시스템에서의 처리를 나타내고, 변수는 그 처리의 대상을 나타내고 있다. 프로그램 기억부(4)는 엔지니어링 툴 소프트웨어가 인스톨된 PC의 기억 영역 혹은 기억장치 등에 포함된다.
프로그램 변환부(5):
구체적으로는 컴파일러이며, 이것에 의해 프로그램 기억부(4)에 유지되어 있는 프로그램 코드를 CPU(200)에서 실행 가능한 실행 코드로 변환한다. 실행 코드는, CPU(200)에서 실행하는 처리를 배열한 것이며, 예를 들어, 명령과 그 오퍼랜드(operand)로 이루어진 커멘드의 열로서 표현되어 있다. 커멘드의 열의 각 커멘드에는 실행 순서에 상당하는 번호(이후 「스텝 번호」라고 부름)가 부여되어 있다.
변수 사용 위치 검색부(6):
변수와 프로그램을 지정하고, 변수가 프로그램 중에서 사용되고 있는 위치의 일람을 탐색·출력한다. 예를 들어, 프로그램 기억부(4) 중에 유지되어 있는 래더-프로그램(래더-언어에 의한 프로그램) 중의 5번째의 회로 기호에 변수 「X0」가 사용되고 있었을 경우, 「X0」의 사용 위치 탐색 결과에, 「5번째 」라고 하는 결과를 출력한다.
실행 무효화 설정부(7):
실행 코드 중에서 실행하지 않을 구간(무효화 구간)을 설정하고, 무효화 구간 설정 파일에 기입한다. 무효화 구간의 지정 방법으로서는, 예를 들면, 대상 실행 코드 중의 개시 스텝 번호와 종료 스텝 번호를 지정하는 방법이 있다.
PLC 통신부(8):
실행 코드와 무효화 구간 설정 파일을, CPU(200)에 기입하는 기능을 제공한다.
다음으로, CPU(200)의 각 처리부에 대해 설명한다. CPU(200)는 실행 코드를 실행하는 하드웨어이며, 프로그램 실행부(11) 및 실행 제어부(12)를 구비한다.
프로그램 실행부(11):
실행 코드의 처리를 실행하는 CPU(200)의 핵심(코어) 부분의 하드웨어이다.
실행 제어부(12):
무효화 구간 설정 파일의 내용을 판독하고, 그 내용에 따라서, 프로그램 실행부(11)의 실행을 제어한다. 예를 들어, 「실행 코드의 스텝 번호 5번에서부터 스텝 번호 10번까지를 실행하지 않음」과 같은 내용의 실행 제어를 행할 수 있다. 실행 제어부(12)의 기능은 CPU(200)상에서 동작하는 OS 혹은 펌웨어의 기능으로서 실현된다.
상술한 구성을 구비한 시퀀스 프로그램 디버그 지원 장치(50)에 의해 PLC 시스템 전용 프로그램의 디버그시에 「특정 유닛에 관련되는 프로그램을 실행하지 않도록 하는」기능을 실현한다. 고장 등에 의해 특정의 유닛을 PLC 시스템으로부터 제거했을 경우의 동작을 조사하고 싶을 때 등에는, 당해 특정의 유닛을 사용하는 프로그램의 실행을 유저가 무효화하여 조사할 수 있도록 이러한 기능이 요구된다. 그것을 위한 전제로서, 이하에 설명하는 (유닛 변수의 일람 등록), (래더-프로그램의 작성), (실행 코드의 기입)이 행해지고 있을 필요가 있다.
(유닛 변수의 일람 등록)
PLC 시스템을 구축하기 위해서는, 전원, CPU, 입출력 등의 유닛 구성을 결정할 필요가 있다. 유닛 구성을 작성하는 조작의 이미지를 도 3을 예로서 설명한다. 유닛 구성은, 유닛 구성 표시 편집부(1)에 있어서 부품 일람으로부터 유닛을 드래그&드롭 하는 것을 반복하여 작성한다.
그때, 선택·배치한 유닛을 조작하기 위한 변수 일람을 유닛 변수 유지부(2)에 등록해 둔다. 선택 유닛을 조작하기 위해서 준비된 변수 종류의 일람인[유닛 변수 종류 일람](도 8)이, 유닛에 대응한 정보로서 유닛 변수 유지부(2)의 데이터 베이스 등에 미리 유지되어 있는 것으로 한다. 도 8의 「유닛 종류」란 제품명이다. 유닛 구성의 작성시는, 선택한 유닛의[유닛 변수 종류 일람]을 판독하여, 그것들에 구체적인 변수명을 부여하고, 그 변수명 일람과 유닛명의 대응인[유닛 사용 변수명 일람](도 9)을 유닛 변수 유지부(2)에 기록하는 처리를 행한다. 도 9의 「유닛명」이란 PLC 시스템 내에서의 유닛의 명칭이다. 도 9는 도 3의 유닛 구성 표시 편집부(1)에 있어서 「부품 일람으로부터 「Q04형 입력 유닛」을 선택하여, 유닛 구성에 추가한 조작」을 행했을 때의 데이터의 생성 이미지를 나타낸다. 부품 일람으로부터 「Q04형 입력 유닛」을 선택하면, 도 8의 1행째를 기초로 당해 유닛을 조작하기 위해서 사용하는 변수명 일람을 포함하는 도 9의 내용이 유닛 변수 유지부(2)에 추가 기록된다.
(래더-프로그램의 작성)
프로그램 표시 편집부(3)의 구체예로서 래더-에디터를 사용하여 래더-프로그램을 작성한다. 프로그램 표시 편집부(3)(래더-에디터)에 래더-프로그램을 표시한 이미지를 도 4에 나타내고, 래더-프로그램의 기본 구성의 모습을 도 6에 나타낸다. 도 6을 이용하여 래더-프로그램의 기본 구성에 대해 설명한다. 설명을 간단하게 하기 위해서, 래더-프로그램의 구성요소인 회로 요소는, 여기에서는 접점(a 접점)과 코일뿐인 것으로 한다. 다른 회로 기호(명령)를 사용한 래더-프로그램에 대해서도 본 실시 형태는 유효하다.
래더-프로그램의 개략을 설명한다. 도 6에 도시된 바와 같이 래더-프로그램은, 「회로 블록」을 실행순으로 배열한 것이다. 회로 블록은, 1개의 「조건부」와 1개의 「동작부」로 이루어진다. 「조건부」는 접점이 직렬 혹은 병렬로 접속된 한 그룹의 회로이다. 「동작부」는 코일이 직렬로 접속된 한 그룹의 회로이다. 「회로 블록」에는, 「스텝 번호」가 부여된다. 「스텝 번호」는 프로그램 전체 중에서 「회로 블록」을 특정하는 식별자임과 동시에, PLC 시스템에 있어서의 실행순서를 나타내는 것이다.
1개의 「회로 블록」내의 동작은, 그 「조건부」가 도통됐을 때에, 「동작부」를 실행한다. 따라서 래더-프로그램의 디버그 작업에 있어서, 특정의 「회로 블록」을 실행시키고 싶지 않을 때는, 종래는 「조건부」에 상시 OFF(비도통)가 되는 접점을 직렬 접속하는 등 방법을 취하고 있었다.
접점 및 코일을 회로 요소라고 부른다. 회로 요소는, 회로 기호와 변수로 이루어진다. 회로 기호는, 접점 및 코일의 종별을 표현하는 심볼이며, 실행 코드에 있어서는 명령에 상당한다.
변수는 회로 기호(명령)의 처리 대상이 되는 데이터를 표현한 것이다. 전술한[유닛 사용 변수명 일람]에 등록된 변수명을 여기에 사용할 수 있다. 도 6에서 ○으로 둘러싼 회로 요소가, 도 9의 「입력 유닛 1」에 대응하는 변수명을 사용한 위치이다.
작성한 래더-프로그램은, 각 유닛을 조작하기 위해서 사용하는 변수가 사용되고 있는 「회로 블록」을 검색할 수 있는 데이터 구조로, 프로그램 기억부(4)에 기억된다.
또한, 본 실시 형태에 있어서는 래더-프로그램을 예로서 설명을 행했지만, ST(Structured Text), FBD(Function Block Diagram)과 같은 다른 프로그램 언어를 사용해도, 본 실시 형태에 따른 시퀀스 프로그램 디버그 지원 장치는 실현 가능하며 마찬가지의 효과가 얻어진다.
(실행 코드의 기입)
작성한 래더-프로그램은 프로그램 변환부(5)(컴파일러)에 의해서 CPU(200)에서 실행 가능한 실행 코드로 변환된다. 실행 코드는 PLC 통신부(8)에 의해, CPU(200)에 기입되어, 실행 가능한 상태로 되어 있다.
이상을 전제로 하여, 시퀀스 프로그램 디버그 지원 장치(50)에 의해 PLC 시스템 전용 프로그램의 디버그시에 「특정 유닛에 관련되는 프로그램을 실행하지 않도록 하는」기능을 실현한다. 이 기능을 실현할 때의 유저의 조작과 시퀀스 프로그램 디버그 지원 장치(50)의 동작을, 처리 플로우를 도시한 도 5 및 처리의 모습을 도시한 도 7을 이용하여 이하에 설명한다.
(유닛을 사용하는 프로그램의 실행 무효화 조작)
우선, 도 5의 스텝 S101에 있어서, 특정의 유닛을 사용하는 프로그램의 실행을 유저가 무효화한다. 이 때의 조작 이미지는, 도 7의 「(1) 유닛 구성도로부터 유닛을 선택하고, 메뉴로부터 실행 무효화를 실행」으로 도시된 것이다. 구체적으로는, 유저는 유닛 구성 표시 편집부(1)의 유닛 구성도 상에서 유닛을 선택하고, 메뉴의 「사용 회로를 무효화」를 실행한다. 이 조작은 키나 툴바 버튼으로 행할 수 있도록 해도 상관없다. 선택된 유닛의 식별자(유닛명)를 수신한 유닛 구성 표시 편집부(1)는, 당해 유닛의 식별자(유닛명)를 변수 사용 위치 검색부(6)로 통지한다.
(유닛에 대응하는 변수 일람의 취득)
유닛의 식별자(유닛명)를 알게 된 변수 사용 위치 검색부(6)는, 유닛 변수 유지부(2)로부터 당해 유닛이 사용하는 유닛 변수의 일람을 취득한다(스텝 S102). 구체적으로는, 예를 들면 통지된 유닛명이 「입력 유닛 1」이라면, 당해 유닛명을 키로 하여, 상술한 (유닛 변수의 일람 등록)에서 등록한 도 9로부터, 사용 변수명 일람을 취득한다. 따라서 이 예에서는, 「X0, X1, X2, X3」의 4개의 변수를 취득한다.
(변수 사용 위치 일람의 검색)
변수 사용 위치 검색부(6)는, 상기 (유닛에 대응하는 변수 일람의 취득)에서 취득한 4개의 변수에 대해서, 프로그램에서 사용되고 있는 위치의 일람을 검색한다(스텝 S103). 또한 디버그 작업시간 단축을 위해서, 여기서 취득한 4개의 변수 중에서 무효화할 변수를 유저가 선택할 수 있도록 해도 좋다. 즉, 4개의 변수 중에서 유저가 선택한 변수에만 대해서 프로그램에서 사용되고 있는 위치의 일람을 검색하도록 옵션을 부가해도 좋다. 예를 들면, 입력 디바이스에 대응하는 변수는 사용(무효화하지 않음)하지만, 출력 디바이스에 대응하는 변수는 사용하지 않음(무효화한다), 등을 유저가 지정할 수 있도록 하는 옵션이다. 이러한 옵션을 부가하지 않는 경우는, 변수 사용 위치 검색부(6)는 상기 취득한 4개의 변수 모두에 대해서, 1개씩 도 6의 래더-프로그램 중에서의 사용 위치를 검색해 간다. 그 결과, 도 6의 래더-프로그램의 예에서는, 도 10에 도시된 3위치의 변수가 검색되어, 당해 사용 위치인 회로 블록이 판명된다. 검색에 히트(hit)된 변수는 도 6에서 ○으로 둘러싸 여 도시되어 있다. 또한, 본 실시 형태에 있어서는, 래더-프로그램이 1개인 경우에 대해 설명했지만, 복수의 프로그램을 대상으로 했을 경우도 본 방식은 유효하다.
(사용 위치의 실행 무효화 설정)
실행 무효화 설정부(7)는 상기 (변수 사용 위치 일람의 검색)에서 발견된 변수를 사용하고 있는 도 6의 래더-프로그램 중의 3위치에 대해, 그 위치에 대응하는 실행 코드의 구간을 실행하지 않을 구간, 즉 무효화 구간으로서 설정하여, 무효화 구간 설정 파일에 기입한다(스텝 S104). 예를 들어, 대상이 되는 래더-프로그램의 실행 코드가 도 11에 도시된[래더-프로그램과 실행 구간의 대응]과 같은 구조로 기록되고 있다고 한다. 여기로부터 (변수 사용 위치 일람의 검색)의 검색 결과인 3개의 회로 블록의 개시 스텝 번호, 종료 스텝 번호를 취득하여, 도 12에 도시된 [무효화 구간 설정]에 옮겨 씀으로써 무효화 구간 설정 파일에 기입을 실현할 수 있다.
또한, 본 실시 형태에 있어서는, 최초로 아무것도 설정이 기재되지 않은 무효화 구간 설정 파일에 (변수 사용 위치 일람의 검색)에 있어서의 검색 결과로부터 작성한 무효화 구간을 기입한다고 하여 설명했지만, 무효화 구간 설정 파일에 이미 기입되어 있는 무효화 구간에 새롭게 무효화 구간을 추가하는 경우나 무효화 구간을 치환하는 경우에도 본 방식은 유효하다.
(무효화 구간 설정의 CPU로의 기입 지시)
유저는 상기 (사용 위치의 실행 무효화 설정)에서 작성한 무효화 구간 설정 파일을, CPU(200)에 기입하는 조작을 행한다. 이 조작은, 종래 기술의 「PC 기입」혹은 「RUN 중 기입」등의 조작과 동등한 조작으로 실현할 수 있다. 구체적으로는, 유저의 지시(스텝 S105)를 수신한 엔지니어링 툴(100)에 있어서 PLC 통신부(8)가 무효화 구간 설정 파일을 CPU(200)에 기입한다(전송한다)(스텝 S106). 또한, 이 조작은 유저가 엔지니어링 툴(100)에 지시를 내리지 않아도, 즉, 스텝 S105를 생략해도 실현 가능하다. 구체적으로는, (사용 위치의 실행 무효화 설정)에서 무효화 구간 설정 파일이 갱신되었을 때에, 엔지니어링 툴(100)(PLC 통신부(8))이 자동적으로 CPU(200)로의 기입 처리를 행하도록(스텝 S106) 해도 좋다. 이 처리의 모습은, 도 7의 「(2) 무효화 구간 설정 파일을 PLC에 기입함」에 도시되어 있다.
(실행중 프로그램의 실행 제어)
상기 (무효화 구간 설정의 CPU로의 기입 지시)에서 무효화 구간 설정 파일을 수취(受取)한(기입된) CPU(200)는, 그 내용에 따라서 실행 제어부(12)가 실행중의 실행 코드의 실행을 제어한다(스텝 S107). 이것에 의해, 상기 (유닛을 사용하는 프로그램의 실행 무효화 조작)에서 선택한 유닛에 관련되는 위치의 프로그램의 비실행을 실현한다. 구체적으로는, 실행 제어부(12)는 무효화 구간의 개시 스텝 번호로 지정된 스텝 번호에서 실행 코드의 실행을 정지하고(종래의 브레이크 포인트 기능), 다음으로 그 무효화 구간의 종료 스텝 번호까지의 실행을 건너뛰어, 다음의 스텝 번호에서부터 실행을 계속한다.
또한, 실행 제어부(12)가 상기 제어를 행하는 경우에, 프로그램의 비실행 동안의 PLC 시스템의 슬립 시간(sleep time)을 지정할 수 있도록 함으로써, 무효화했을 때의 실행 속도를 조정할 수 있다. 예를 들면, 빨리 실행하고 싶은 경우는 슬립 시간=0을 지정해도 좋지만, 실제 속도에 맞추고 싶은 경우는 비실행의 스텝수로부터 슬립 시간을 추정하여 그 동안 PLC 시스템을 슬립시켜도 좋다. 이것에 의해, 실행 시간을 단축하여 디버그 시간을 효율화하는 것도 가능하고 이에 더하여, 비실행의 스텝수로부터 슬립 시간을 추정하여 PLC 시스템을 슬립시키면 가장 늦은 케이스의 실행 상태 등을 모의할 수도 있다. 즉, 여러가지 환경을 모의하면서 디버그 하는 것이 가능해진다.
이상 설명한 것처럼, 본 발명의 실시 형태에 따른 시퀀스 프로그램 디버그 지원 장치(50)에 있어서는, 시퀀스 프로그램 중의 특정 유닛에 관련되는 동작 프로그램만을 실행시키지 않도록 하기 위해서, 이하의 3점을 자동적으로 실행한다.
(1) 대상 유닛에 관련되는 변수의 일람을 취득한다.
(2) 변수를 사용하고 있는 시퀀스 프로그램 중의 위치(구간)에 관한 정보를 취득한다.
(3) 시퀀스 프로그램 및 그것에 대응하는 실행 코드는 변경하지 않고 상기 (2)에서 취득한 위치(구간)에 대한 실행을 무효화하는 설정을 파일에 기입한다.
이것에 의해, 유저가 (1) 메뉴 화면 등에 있어서 대상이 되는 유닛을 선택하여, 실행 무효화를 지시하고, (2) 무효화 구간을 설정한 파일의 PLC로의 기입을 지시하는 (시퀀스 프로그램 디버그 지원 장치에 자동 실행시키는 경우는 생략 가능), 것만으로 특정의 유닛에 관련되는 동작 프로그램의 비실행을 실현할 수 있다.
그 결과, 유닛에 관련되는 부분을 총괄하여 실행 무효화할 수 있기 때문에, 수동으로 무효화할 때의 프로그램 수정 작업시간에 비해, 공정수를 비약적으로 단축시킬 수 있게 된다. 또, 시퀀스 프로그램 디버그 지원 장치(50)가 유닛에 관련되는 정보를 관리하고 있음으로써, 사람에 의한 판단이나 조작의 실수를 줄일 수 있기 때문에, 수동에 의한 코멘트-아웃 작업에 비해 작업 횟수를 줄일 수 있다. 추가로, 본 실시 형태에 의한 실행 무효화의 설정은, 기존의 실행 코드의 특정 위치를 스킵하는 기능으로 실현될 수 있으므로, 실행 코드로 변경을 가하지 않는다. 따라서 종래와 같은 PLC의 재기동이 불필요해진다. 이것에 의해, 디버그 작업의 시간 단축, 즉, 디버그 작업을 포함한 시퀀스 프로그램 작성을 위한 작업시간을 단축시켜 효율화할 수 있다고 하는 효과가 얻어진다.
실시 형태 2.
또, 실시 형태 1에 있어서는 (유닛을 사용하는 프로그램의 실행 무효화 조작)에 있어서, 유저가 유닛 구성도 상에서 무효화하고 싶은 유닛을 수동으로 선택한다고 했지만, PLC의 실제 기계(real machine) 시스템에 있어서 장착되어 있지 않은 유닛이 존재하는 경우에는 이 조작도 생략하는 것도 생각할 수 있다.
본 실시 형태에 있어서는, 도 13에 도시된 바와 같이, 프로그래머블 로직 컨트롤러(PLC)에 장착되어 있지 않은 유닛(비접속 유닛)을 자동 인식하는 기능을 가지는 자동 인식부(20)를 시퀀스 프로그램 디버그 지원 장치(50) 중에 준비해 둔다. 자동 인식부(20)는, 도 13에 도시된 바와 같이 CPU(200)(하드웨어)측에만 있어서 엔지니어링 툴(100)(소프트웨어)에 인식 결과를 알리도록 해도 좋고, CPU(200) 및 엔지니어링 툴(100)이 공동하여 담당하고 있어도 상관없다. 시퀀스 프로그램 디버그 지원 장치(50)의 동작을 포함하는 본 실시 형태의 동작 플로우를 도 14에 나타낸다.
우선, 도 14의 스텝 S201에 있어서, USB 접속, 혹은 네트워크 접속 등에 의해 엔지니어링 툴(100)을 PLC(의 CPU(200))에 접속한다. 그러면, 시퀀스 프로그램 디버그 지원 장치(50)는 PLC의 접속 상황에 기초하여, PLC의 시스템 구성을 상술한 것처럼 자동 인식한다. 이것에 의해, 도 7에 도시된 유닛 구성 표시 편집부(1)의 유닛 구성도 상에는 배치되어 있지만, PLC의 실제 기계에는 접속되어 있지 않은 비접속 유닛을 인식한다(스텝 S202). 그리고 비접속 유닛의 식별자(유닛명), 즉 자동 인식 결과를 알게 된 변수 사용 위치 검색부(6)는, 유닛 변수 유지부(2)로부터 비접속 유닛이 사용하는 유닛 변수의 일람을 취득한다(스텝 S203).
즉, 실시 형태 2에 있어서는, 비접속 유닛과 자동 인식된 유닛이 실시 형태 1에 있어서의 유저가 선택한 유닛으로서 다루어진다. 따라서 이후의 스텝 S204~S208은, 도 5의 스텝 S103~S107과 마찬가지이다. 또한, 본 실시 형태에 있어서는, 비접속 유닛이 접속되어 있었을 경우, 즉, 유닛 구성 표시 편집부(1)의 유닛 구성도 상에 도시된 PLC 시스템의 시퀀스 프로그램(예를 들면, 래더-프로그램)이, 미리 프로그램 변환부(5)에 의해 실행 코드로 변환되어 CPU(200)에 기입되어서 실행 가능한 상태로 되어 있다고 한다. 추가로, 실시 형태 1과 마찬가지로 스텝 S206을 생략하면, PLC의 실제 기계 시스템에 장착되어 있지 않은 유닛이 존재하는 경우에 있어서, 당해 PLC에 대응하는 시퀀스 프로그램의 실행 코드를 실질적으로 전자동으로 작성할 수 있게 된다.
또, 상기 실시 형태 1 및 2에 있어서는, 처음에 유닛 단위로 무효화하는 변수를 선택하는 경우에 대해 설명했지만, 처음부터 유닛을 선택하는 것이 아니라, 크로스 레퍼런스 결과(검색 결과) 등에 기초하여 당초부터 변수를 지정하여, 그 변수를 사용하고 있는 프로그램(실행 코드)의 코멘트-아웃 전환을 자동적으로 할 수 있도록 해도 좋다. 또, 시퀀스 프로그램의 작성시에, 예를 들면 C언어의 매크로와 마찬가지의 구조(예를 들면, 「#ifdef DEBUG 무효화 구간 설정 파일을 작성함」등과 같은 구조)를 조합함으로써, 디버그시만 실행 무효화 설정부(7)를 동작시켜 무효화 구간 설정 파일의 작성을 실행하는 프로그램을 기입하는 것도 가능하다. 이것에 의해, 상기 실시 형태에 의한 코멘트-아웃 동작에 의해서 실행 코드의 실행/비실행을 전환하고 싶은 부분을 유연하게 커스터마이즈 할 수 있으므로, 디버그 작업을 더욱 더 효율화할 수 있다.
추가로, 본원 발명은 상기 실시 형태로 한정되는 것이 아니고, 실시 단계에서는 그 요지를 일탈하지 않는 범위에서 여러 가지로 변형하는 것이 가능하다. 또, 상기 실시 형태에는 여러 가지의 단계의 발명이 포함되어 있고, 개시되는 복수의 구성 요건에 있어서의 적당한 조합에 의해 여러 가지의 발명이 추출될 수 있다. 예를 들면, 실시 형태에 제시된 전(全) 구성 요건으로부터 몇 개의 구성 요건이 삭제되어도, 발명이 해결하려고 하는 과제의 란에서 언급한 과제를 해결할 수 있어, 발명의 효과의 란에 언급되어 있는 효과가 얻어지는 경우에는, 이 구성 요건이 삭제된 구성이 본 발명으로서 추출될 수 있다. 또한, 다른 실시 형태에 따른 구성요소를 적당히 조합해도 된다.
[산업상의 이용 가능성]
이상과 같이, 본 발명에 따른 시퀀스 프로그램 디버그 지원 장치는, PLC 시스템의 시퀀스 프로그램의 디버그 작업에 유용하고, 특히, 엔지니어링 툴을 이용한 시퀀스 프로그램의 디버그 작업에 적절하다.
1: 유닛 구성 표시 편집부
2: 유닛 변수 유지부
3: 프로그램 표시 편집부
4: 프로그램 기억부
5: 프로그램 변환부
6: 변수 사용 위치 검색부
7: 실행 무효화 설정부
8: PLC 통신부
11: 프로그램 실행부
12: 실행 제어부
20: 자동 인식부
50: 시퀀스 프로그램 디버그 지원 장치
100: 엔지니어링 툴
200: CPU
S101~S107, S201~S208: 스텝

Claims (3)

  1. 프로그래머블 로직 컨트롤러를 구성하는 유닛으로부터 유저가 선택한 무효화 유닛을 수신하는 유닛 구성 표시 편집부와,
    상기 프로그래머블 로직 컨트롤러에서 실행되는 시퀀스 프로그램상에서 상기 유닛이 사용하는 변수를 상기 유닛마다 유지하는 유닛 변수 유지부와,
    상기 시퀀스 프로그램을 유저가 편집할 수 있는 프로그램 표시 편집부와,
    상기 시퀀스 프로그램을 기억하는 프로그램 기억부와,
    상기 시퀀스 프로그램을 상기 프로그래머블 로직 컨트롤러의 프로그램 실행부가 실행 가능한 실행 코드로 변환하는 프로그램 변환부와,
    상기 무효화 유닛이 사용하는 변수를 상기 유닛 변수 유지부로부터 취득하고, 취득한 상기 변수가 상기 시퀀스 프로그램 중에서 사용되고 있는 위치를 검색하는 변수 사용 위치 검색부와,
    상기 위치에 대응하는 상기 실행 코드의 구간을 실행하지 않을 무효화 구간으로서, 무효화 구간 설정 파일에 기입하는 실행 무효화 설정부를 구비한 엔지니어링 툴과;
    상기 무효화 구간 설정 파일에 기초하여, 상기 무효화 구간을 실행하지 않도록 상기 프로그램 실행부를 제어하는 실행 제어부를 구비하는 것을 특징으로 하는 시퀀스 프로그램 디버그 지원 장치.
  2. 청구항 1에 있어서,
    상기 프로그래머블 로직 컨트롤러에 접속되어 있지 않은 유닛을 비접속 유닛으로서 인식하는 자동 인식부를 추가로 구비하고,
    상기 변수 사용 위치 검색부는, 상기 자동 인식부가 인식한 상기 비접속 유닛을 상기 무효화 유닛으로 하는 것을 특징으로 하는 시퀀스 프로그램 디버그 지원 장치.
  3. 청구항 1에 있어서,
    상기 변수 사용 위치 검색부는, 취득한 상기 변수 중에서 유저가 선택한 변수에 대해 상기 시퀀스 프로그램 중에서 사용되고 있는 위치를 검색하는 것을 특징으로 하는 시퀀스 프로그램 디버그 지원 장치.
KR1020147025833A 2012-03-26 2012-03-26 시퀀스 프로그램 디버그 지원 장치 KR101558832B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/057826 WO2013145105A1 (ja) 2012-03-26 2012-03-26 シーケンスプログラムデバッグ支援装置

Publications (2)

Publication Number Publication Date
KR20140125870A KR20140125870A (ko) 2014-10-29
KR101558832B1 true KR101558832B1 (ko) 2015-10-07

Family

ID=49258475

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147025833A KR101558832B1 (ko) 2012-03-26 2012-03-26 시퀀스 프로그램 디버그 지원 장치

Country Status (7)

Country Link
US (1) US9477578B2 (ko)
JP (1) JP5599535B2 (ko)
KR (1) KR101558832B1 (ko)
CN (1) CN104204975B (ko)
DE (1) DE112012006107B4 (ko)
TW (1) TWI470383B (ko)
WO (1) WO2013145105A1 (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5987853B2 (ja) * 2014-02-19 2016-09-07 株式会社安川電機 ラダープログラム作成装置、コンピュータプログラム及びコンピュータ可読情報記録媒体
US9727442B2 (en) 2014-05-08 2017-08-08 Mitsubishi Electric Corporation Engineering tool, program editing device, and program editing system
DE112015006044T5 (de) * 2015-01-22 2017-11-02 Mitsubishi Electric Corporation Engineering-Werkzeugprogramm und Engineering-Werkzeug
KR102056350B1 (ko) * 2015-01-28 2019-12-16 미쓰비시덴키 가부시키가이샤 인텔리전트 기능 유닛 및 프로그래머블 로직 컨트롤러 시스템
KR101846140B1 (ko) * 2015-04-16 2018-04-05 미쓰비시덴키 가부시키가이샤 프로그램 진단 장치, 프로그램 진단 방법 및 프로그램 진단 프로그램
JP6323685B2 (ja) * 2015-06-18 2018-05-16 株式会社安川電機 プログラマブルコントローラ
JP6356726B2 (ja) * 2016-05-19 2018-07-11 ファナック株式会社 ラダープログラム解析装置
CN109844660B (zh) * 2016-10-17 2021-01-12 三菱电机株式会社 调试辅助装置以及调试辅助方法
JP6855886B2 (ja) * 2017-04-07 2021-04-07 株式会社Ihi ロジック生成装置
JP6946953B2 (ja) * 2017-11-10 2021-10-13 オムロン株式会社 制御プログラム開発支援装置、制御プログラム開発支援システム、制御プログラム開発支援方法、および、制御プログラム開発支援プログラム
WO2019215919A1 (ja) * 2018-05-11 2019-11-14 三菱電機株式会社 コンパイラおよびプログラミング支援装置
JP6795568B2 (ja) * 2018-11-07 2020-12-02 ファナック株式会社 トレース装置及びプログラマブルコントローラ
JP7143762B2 (ja) * 2018-12-28 2022-09-29 オムロン株式会社 コントローラシステム、制御装置および制御プログラム
CN113711142B (zh) * 2019-04-18 2022-09-09 三菱电机株式会社 调试辅助装置、调试辅助方法、记录介质
JP7172864B2 (ja) * 2019-06-07 2022-11-16 オムロン株式会社 サポート装置およびサポートプログラム
CN115066676B (zh) * 2020-02-14 2023-06-09 三菱电机株式会社 控制***、程序创建辅助装置、程序创建辅助方法及计算机可读取的记录介质
CN116670600A (zh) * 2021-03-02 2023-08-29 三菱电机株式会社 调试辅助程序、调试辅助装置、调试辅助方法及机器学习装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002244703A (ja) 2001-02-16 2002-08-30 Keyence Corp Plc構成ユニットモニタ及びそのプログラム
JP2005044316A (ja) 2003-07-25 2005-02-17 Omron Corp シミュレーション支援ツールおよびラダープログラムの検証システムならびにプログラム製品

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3733737B2 (ja) * 1998-03-31 2006-01-11 富士電機機器制御株式会社 プログラマブルコントローラおよび記録媒体
US6353896B1 (en) * 1998-12-15 2002-03-05 Lucent Technologies Inc. Method and apparatus for testing event driven software
US6502102B1 (en) * 2000-03-27 2002-12-31 Accenture Llp System, method and article of manufacture for a table-driven automated scripting architecture
US6968542B2 (en) * 2000-06-16 2005-11-22 Hewlett-Packard Development Company, L.P. Method for dynamically identifying pseudo-invariant instructions and their most common output values on frequently executing program paths
JP2002099312A (ja) 2000-09-22 2002-04-05 Mitsubishi Electric Corp プログラマブルコントローラおよび制御プログラム開発支援装置
TW526411B (en) * 2001-08-17 2003-04-01 Mediatek Inc Debugging device
US7191361B2 (en) * 2001-08-31 2007-03-13 National Instruments Corporation System and method enabling asynchronous execution of a test executive subsequence
WO2005026962A2 (en) * 2003-09-15 2005-03-24 Selex Sensors And Airborne Systems Limited Improvements in or relating to test systems or programs
JP4525681B2 (ja) * 2004-07-28 2010-08-18 三菱電機株式会社 プログラマブルコントローラ用プログラム生成装置、プログラマブルコントローラ用プログラム生成方法およびその方法のプログラムを記録した記録媒体
JP3910196B2 (ja) * 2004-10-21 2007-04-25 ファナック株式会社 シーケンスプログラムの編集装置
US7272453B2 (en) * 2004-11-30 2007-09-18 Air Products And Chemicals, Inc. Method and apparatus for utilizing a sequence interpreter approach to control logic of a programmable logic controller
US8473913B2 (en) * 2006-01-11 2013-06-25 Hitachi Data Systems Corporation Method of and system for dynamic automated test case generation and execution
US7610537B2 (en) * 2006-04-04 2009-10-27 International Business Machines Corporation Method and apparatus for testing multi-core microprocessors
JP2008059421A (ja) * 2006-09-01 2008-03-13 Yokogawa Electric Corp シーケンスプログラム編集支援装置
WO2008136407A1 (ja) 2007-04-26 2008-11-13 Kabushiki Kaisha Toshiba プログラマブルコントローラのダイアグラムのデバッグシステム、そのプログラミング装置及びそのプログラム
JP2009193276A (ja) 2008-02-14 2009-08-27 Koyo Electronics Ind Co Ltd ラダープログラム作成装置およびこれを用いたラダープログラム作成実行システム
JP4941365B2 (ja) 2008-03-13 2012-05-30 オムロン株式会社 産業用コントローラ
US8117587B1 (en) * 2008-06-03 2012-02-14 Richard Paul Testardi Microcontroller-resident software development environment supporting application-level asynchronous event handling, interactive debugging and pin variables for embedded systems
US8930912B2 (en) * 2008-12-16 2015-01-06 Cadence Design Systems, Inc. Method and system for performing software verification
JP5086296B2 (ja) 2009-03-19 2012-11-28 株式会社日立産機システム プログラマブルコントローラ制御プログラム作成方法、および、プログラマブルコントローラ制御プログラム作成システム
US20120072777A1 (en) * 2009-05-27 2012-03-22 Mitsubishi Electric Corporation Debugging device, debugging method, and computer program for sequence program
FR2962826B1 (fr) * 2010-07-13 2012-12-28 Eads Defence & Security Sys Supervision de la securite d'un systeme informatique
JP6774160B2 (ja) * 2013-12-06 2020-10-21 キヤノン株式会社 情報処理装置、並びに、データ転送装置の制御方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002244703A (ja) 2001-02-16 2002-08-30 Keyence Corp Plc構成ユニットモニタ及びそのプログラム
JP2005044316A (ja) 2003-07-25 2005-02-17 Omron Corp シミュレーション支援ツールおよびラダープログラムの検証システムならびにプログラム製品

Also Published As

Publication number Publication date
TWI470383B (zh) 2015-01-21
WO2013145105A1 (ja) 2013-10-03
DE112012006107B4 (de) 2015-12-03
DE112012006107T5 (de) 2014-12-18
JPWO2013145105A1 (ja) 2015-08-03
US9477578B2 (en) 2016-10-25
CN104204975A (zh) 2014-12-10
US20150301923A1 (en) 2015-10-22
CN104204975B (zh) 2016-10-12
TW201339773A (zh) 2013-10-01
JP5599535B2 (ja) 2014-10-01
KR20140125870A (ko) 2014-10-29

Similar Documents

Publication Publication Date Title
KR101558832B1 (ko) 시퀀스 프로그램 디버그 지원 장치
JP4541418B2 (ja) プログラマブルコントローラの周辺装置、置換方法およびプログラム
JP4877068B2 (ja) ソフトウェア開発支援プログラム、ソフトウェア開発支援方法
CN104007958B (zh) 用于创建和处理用于工业自动化装置的程序的程序编辑器和方法
JP2008282363A (ja) プログラマブルコントローラ、プログラム作成支援装置、コンピュータプログラム及びplcシステム
JP5800135B2 (ja) プログラマブルコントローラ
JP5849592B2 (ja) プログラマブルコントローラシステム、そのプログラミング装置、プログラマブルコントローラ、プログラム、デバッグ方法
JP5636783B2 (ja) プログラマブルコントローラ、およびプログラマブルコントローラのデバッグ方法
KR100694381B1 (ko) 그래피컬 프로그래밍 장치 및 프로그래머블 표시기
KR101447846B1 (ko) 모션 sfc 프로그램 부품 작성 장치
JP6205934B2 (ja) プログラマブルコントローラシステム、その支援装置、プログラム
JP2011059918A (ja) バージョン管理装置及びバージョン管理方法
KR20190114510A (ko) Plc의 브랜치 명령어 처리 방법
JP5589670B2 (ja) デバッグ方法
JP2006301765A (ja) 制御装置のメンテナンス装置
JP2007188366A (ja) コンパイル装置
JP2010128908A (ja) 情報処理装置及びその制御方法、並びに、プログラム
JP2008204023A (ja) プログラマブルコントローラシステム、プログラマブルコントローラのデバッグ方法
JP2012048471A (ja) 数値制御装置およびマクロプログラム実行方法
JP2009009314A (ja) エディタ装置、エディタプログラムおよびそれを記録した記録媒体
US20180329396A1 (en) Support device, control method of support device, and non-transitory computer-readable recording medium
KR20130104453A (ko) 피엘시 시스템의 cpu 모듈, 피엘시 시스템의 프로그램 업데이트 처리 방법
JP2007172263A (ja) データ記憶装置
JP2006323609A (ja) プログラマブルコントローラ
JP2007249828A (ja) プログラマブルコントローラシステム、プログラマブルコントローラのデバッグ方法、プログラミング支援プログラム、プログラマブルコントローラのデバッグ制御プログラム

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee