KR20210133111A - Plc 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법 - Google Patents

Plc 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법 Download PDF

Info

Publication number
KR20210133111A
KR20210133111A KR1020200167620A KR20200167620A KR20210133111A KR 20210133111 A KR20210133111 A KR 20210133111A KR 1020200167620 A KR1020200167620 A KR 1020200167620A KR 20200167620 A KR20200167620 A KR 20200167620A KR 20210133111 A KR20210133111 A KR 20210133111A
Authority
KR
South Korea
Prior art keywords
input
plc program
flowchart
program information
output matrix
Prior art date
Application number
KR1020200167620A
Other languages
English (en)
Other versions
KR102414933B1 (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 KR20210133111A publication Critical patent/KR20210133111A/ko
Application granted granted Critical
Publication of KR102414933B1 publication Critical patent/KR102414933B1/ko

Links

Images

Classifications

    • 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/13044Display as flow chart, SFC, FUP
    • 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/13067Use of variables, symbols in instructions, to indicate mechanisms, interfaces
    • 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/13113Read image of sequence ladder diagram, flow chart drawing, translate into code
    • 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/13122Flow chart program activates several ladder diagrams, each controls one machine
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

본 발명에 따른 PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법은 PLC 프로그램 정보의 심볼을 표준화하는 단계; 표준화된 심볼을 포함하는 PLC 프로그램 정보를 대한 입력 및 출력의 로직 연결을 설정하는 단계; 및 상기 출력이 DO 동작 및 UNDO 동작 중 어느 하나의 동작 분류기준으로 설정되었을 경우에, 상기 동작 분류기준에 따라 상기 설정된 로직 연결에 대응하는 플로우차트를 생성하는 단계를 포함하는 것을 특징으로 한다.

Description

PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법{Method for generating flow-chart using static data of PLC program information}
본 발명은 PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법에 관한 것이다.
PLC는 low level 언어로 프로그램 되며 자동화 시스템을 제어하는데 사용되는 산업용 컴퓨터이다. PLC의 내부로직인 PLC 프로그램은 Boolean 연산을 통해 자동화 시스템을 제어한다. 일반적인 제조 공정에서 설계된 PLC 프로그램은 검증과정을 거치며 프로그램의 정확성이 보장되면 실제 자동화 시스템을 제어하게 된다.
최근 자동화된 제조 산업은 제조 라인의 복잡성 증대에 따라 제어 로직이 방대하며 또한 매우 복잡하게 설계되어 있다. 이에 따라 PLC 프로그램도 복잡하게 로직화 되어 있다. 이러한 이유로 PLC 프로그램을 진단 및 모니터링 하는 것 또한 점점 더 어려워지고 있으며, 이에 따라 에러를 발견하고 수정하는데 걸리는 시간이 점진적으로 증가하는 추세이다. Operational Diagnostics, The holy grail of control automation에 따르면 이러한 진단 방법과 에러를 규명하는데 걸리는 시간으로 인한 작업 지연은 전체 설비 고장 시간의 80%를 넘는 것으로 나타나 있다. 특히 자동차 차체 조립 라인의 경우, 평균 사이클 타임(Cycle Time)은 1분 안팎이며 따라서 설비 고장에 의한 라인 정지시, 짧은 시간 동안 큰 이익의 손실을 야기하게 된다.
일반적인 자동화 시스템은 수많은 로봇과 자동화된 이송장치로 이루어져 있다. 로봇과 이송장치는 PLC 프로그램의 로직에 따라 용접이나 이송 등의 다양한 작업을 하게 된다. 최근 자동화 시스템은 대단위의 자동화 생산라인을 구축하고 있어 복잡도가 높아 설비 자체의 에러, 또는 로봇 운동 범위 간섭과 같은 외부 요인에 의한 에러 등의 다양한 작업 실패 요소를 포함하고 있다. 작업 중 실패에 의한 지연은 에러 발견 및 장치의 셋 업(set-up) 시간 증가로 인한 막대한 경제적 손실을 야기한다.
이러한 에러들을 진단하기 위해서 공정 및 물류의 흐름을 제어하는 PLC 프로그램 내부에 진단을 위한 코드를 추가하는 방법으로 자동화 시스템을 모니터링 한다. 일반적으로 자동화 시스템의 대표격인 자동차 산업은 자동화가 이루어진 제조라인에서 오류가 발생하였을 경우, 미리 예상한 이상표시모듈을 통해 PLC 프로그램을 모니터링 한다.
그런데, 종래의 PLC 프로그램에 대한 모니터링을 위한 입출력 데이터에 대해서 사용자가 확인하기 위해서는 PLC 프로그램에 대해 수기로 작성된 데이터를 확인하는 방식을 사용하였다.
또한, PLC 프로그램정보에 포함된 레더 정보의 경우에, 레더 정보 자체는 확인할 수 있지만, 해당 레더 정보를 출력으로 하는 계층화된 정보를 용이하게 확인할 수는 없었다.
즉, 종래에는 레더 정보의 특성 상 접점의 상관관계를 파악하는데 있어서 입력 및 출력 형태로 밖에 표현하지 못하는 한계가 있었다. 또한, 이로 인해 입력의 다양한 접점들 중 하위 입력들을 갖는 접점을 보기 위해서는 그 접점을 출력으로 갖는 로직을 다시 찾아서 상관관계를 파악 해야 하는 번거로움이 있었다.
대한민국 공개특허공보 제10-2011-0024477호(공개일 2011년 3월 9일)
본 발명이 해결하고자 하는 과제는 레더 로직(Ladder Logic) 정보로 작성된 PLC 프로그램으로부터 공정의 흐름을 추적하기 위한 PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법에 관한 것이다.
본 발명에 따른 PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법은 PLC 프로그램 정보의 심볼을 표준화하는 단계; 표준화된 심볼을 포함하는 PLC 프로그램 정보에 대한 입력 및 출력의 로직 연결을 설정하는 단계; 및 상기 출력이 DO 동작 및 UNDO 동작 중 어느 하나의 동작 분류기준으로 설정되었을 경우에, 상기 동작 분류기준에 따라 상기 설정된 로직 연결에 대응하는 플로우차트를 생성하는 단계를 포함하는 것을 특징으로 한다.
상기 심볼을 표준화하는 단계는, 영어 문자는 모두 대문자로 표준화하고, 각 문자들을 단어 레벨로 표준화하고, 영어와 한글을 분리하고, 띄어쓰기 하지 않은 단어를 분리하고, 영어, 한글 및 숫자 이외의 기호를 제거하는 것을 특징으로 한다.
상기 로직 연결을 설정하는 단계는, 보조 항목 및 조건 항목 사이의 연결관계를 설정하는 것을 특징으로 한다.
상기 플로우차트를 생성하는 단계는, 상기 출력을 DO 동작 및 UNDO 동작 중 어느 하나의 동작 분류기준으로 설정하는 단계; 상기 설정된 로직 연결 중에서 선택된 동작 프로그램 유닛(Program of Unit)에 대응하는 입출력 행렬을 표시하는 단계; 상기 생성된 입출력 행렬에 대해 상기 DO 동작 및 UNDO 동작이 서로 상보 관계에 있는 입력조건쌍들을 그룹핑하는 단계; 그룹핑된 상기 입출력 행렬에서 필요 없는 경로를 제거하는 단계; 상기 입출력 행렬에서 입력이 작업완료 태그를 갖는 경로에 대해 접점 종류에 따라 입출력 행렬을 그룹핑하는 단계; 및 상기 그룹핑된 입출력 행렬에 대해 접점에 따라 상기 DO 동작 및 상기 UNDO 동작의 순서를 재정렬하여 상기 플로우차트를 생성하는 단계를 포함하는 것을 특징으로 한다.
상기 DO 동작 및 UNDO 동작은, 잠김과 풀림, CLAMP와 UNCLAMP, 상승과 하강, 전진과 후진, SWING과 UNSWING, LATCH와 UNLATCH, CLOSE와 OPEN, LOCK와 UNLOCK, TURN과 RETURN 중 적어도 하나 이상을 포함하는 것을 특징으로 한다.
상기 필요 없는 경로를 제거하는 단계는, 상기 작업완료 태그를 입력조건으로 가지고 있지 않거나, 상기 DO 동작 또는 상기 UNDO 동작에서 동시에 동일 접점을 포함하고 있는 경로를 제거하는 것을 특징으로 한다.
본 발명에 따르면, PLC 프로그램 정보의 심볼을 표준화하고, 표준화된 심볼을 포함하는 PLC 프로그램 정보에 대해 로직 연결을 설정하고, 로직 연결 관계에 대응하는 플로우차트를 생성하여 디스플레이 화면상에 표시함으로써, PLC 프로그램정보로부터 공정의 흐름을 추적하기 위한 플로우차트에 관한 정보를 용이하게 확인할 수 있다.
도 1은 본 발명에 따른 PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법을 설명하기 위한 일 실시예의 흐름도이다.
도 2는 PLC 프로그램 정보를 예시하는 참조도이다.
도 3a는 PLC 프로그램 정보에 대한 입력 및 출력의 로직 연결을 설정하기 위한 사용자 인터페이스를 예시하는 참조도이다.
도 3b는 도 2의 PLC 프로그램 정보에서 입력 및 출력의 로직 연결이 설정되기 전의 'Y3.54.1'에 대한 입출력 행렬을 예시하는 참조도이다.
도 4a는 '보조 항목'에 해당하는 로직 연결을 설정하기 위한 사용자 인터페이스를 예시하는 참조도이다.
도 4b는 도 2의 PLC 프로그램 정보에서 '보조 항목'에 해당하는 로직 연결이 설정된 상태의 'Y3.54.1'에 대한 입출력 행렬을 예시하는 참조도이다.
도 5a는 '보조 항목'의 하위에 '조건 항목'에 해당하는 로직 연결을 설정하기 위한 사용자 인터페이스를 예시하는 참조도이다.
도 5b는 도 2의 PLC 프로그램 정보에서 '보조 항목' 및 '조건 항목'에 해당하는 로직 연결이 설정된 상태의 'Y3.54.1'에 대한 입출력 행렬을 예시하는 참조도이다.
도 6은 도 1에 도시된 플로우차트를 생성하는 단계를 설명하기 위한 일 실시예의 흐름도이다.
도 7은 선택된 동작 프로그램 유닛(Program of Unit)에 대응하는 PLC 프로그램 리스트를 예시하는 참조도이다.
도 8은 도 7에서 선택된 동작 프로그램 유닛 "L421_LH_JIG_동작"에 대응하는 PLC 프로그램의 입출력 행렬을 예시하는 참조도이다.
도 9는 상기 DO 동작 및 UNDO 동작이 서로 상보 관계에 있는 입력쌍들을 그룹핑한 것을 예시하는 참조도이다.
도 10은 입력쌍들로 그룹핑된 입출력 행렬에서 필요 없는 경로를 예시하는 참조도이다.
도 11은 입력이 작업완료 태그를 갖는 경로에 대해 A 접점과 B 접점으로 그루핑된 상태를 예시나는 참조도이다.
도 12는 접점에 따라 입출력 행렬에서의 DO 동작 및 상기 UNDO 동작의 순서가 재정렬되는 것을 예시하는 참조도이다.
도 13은 PLC 프로그램 정보에 대응하는 전체 입출력 행렬(플로우차트)를 예시하는 참조도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 
본 발명의 실시예들은 당해 기술 분야에서 통상의 지식을 가진 자에게 본 발명을 더욱 완전하게 설명하기 위하여 제공되는 것이며, 아래의 실시예들은 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 아래의 실시예들로 한정되는 것은 아니다. 오히려, 이들 실시예는 본 개시를 더욱 충실하고 완전하게 하며 당업자에게 본 발명의 사상을 완전하게 전달하기 위하여 제공되는 것이다. 
본 명세서에서 사용된 용어는 특정 실시예를 설명하기 위하여 사용되며, 본 발명을 제한하기 위한 것이 아니다. 본 명세서에서 사용된 바와 같이 단수 형태는 문맥상 다른 경우를 분명히 지적하는 것이 아니라면, 복수의 형태를 포함할 수 있다. 또한, 본 명세서에서 사용된 바와 같이, 용어 "및/또는"은 해당 열거된 항목 중 어느 하나 및 하나 이상의 모든 조합을 포함한다. 
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 
도 1은 본 발명에 따른 PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법을 설명하기 위한 일 실시예의 흐름도이다.
먼저, PLC 프로그램 정보의 심볼을 표준화한다(S100 단계). PLC는 자동화 산업의 공정제어를 위한 안정성이 보장된 제어장치로써 다품종 소량생산으로 인한 현장의 잦은 시스템 변경에 대응하기 위해 프로그램이 가능하며 소규모이고 시스템 변경에 비교적 자유로운 제어장치에 해당한다.
PLC를 동작시키기 위한 프로그래밍 정보는 LD(Ladder Diagram), FBD(Function Block Diagram), ST(Structured Text), IL(Instruction List), SFC(Sequential Function Chart), CFC(Continuous Function Chart) 등으로 국제 규격 IEC 61131-3에 규정되어 있다.
이러한, PLC 프로그램 정보는 구동되는 PLC에 대한 제어정보를 담고 있는 레더 정보, 이들의 주소 정보, 및 태그 정보 등을 포함할 수 있다. 레더 정보는 자동화 공정을 운영하는데 있어서 가장 기본이 되는 요소로써 설비/공정/라인 제어를 위한 시퀀스와 조건 등에 대한 정보를 포함하고 있다. 레더 정보는 자동화 공정 운영 분석의 핵심적 정보로서 자동화 공정에서 발생하는 다양한 이상 상황에 대한 신속 정확한 원인 파악 및 대응조치를 위한 기준이 되는 정보이며, 이러한 레더 정보의 분석을 통해 생산성 향상 및 공정 최적화를 실현시킬 수 있다. 주소 정보는 PLC에서 접점에 대한 위치를 파악하도록 사용하는 주소체계정보이고, 태그 정보는 PLC의 접점에 대한 코멘트 정보를 포함하고 있다.
이러한, PLC 프로그램 정보의 심볼을 표준화하는 단계는, 영어 문자는 모두 대문자로 표준화하고, 각 문자들을 단어 레벨로 표준화하고, 영어와 한글을 분리하고, 띄어쓰기 하지 않은 단어를 분리하고, 영어, 한글 및 숫자 이외의 기호를 제거한다. 예를 들어, 'sol', 'SOL', 'Sol', '솔'로 표시된 PLC 프로그램 정보를 'SOL'이라는 대문자로 표준화한다. 또한, 예를 들어, 'Robot(로봇)'으로 표시된 PLC 프로그램 정보를 'ROBOT' 및 '로봇'이라는 단어 레벨로 표준화하고, 영어와 한글을 분리한다. 또한, 'Robot #'으로 표시된 PLC 프로그램 정보에서 '#"'이라는 특수 기호를 제거하여 'ROBOT' 이라는 심볼로 표준화한다.
S100 단계 후에, 표준화된 심볼을 포함하는 PLC 프로그램 정보에 대한 입력 및 출력의 로직 연결을 설정한다(S102 단계). 상기 로직 연결을 설정하는 단계는, 보조 항목 및 조건 항목 사이의 연결관계를 설정하는 것을 특징으로 한다.
도 2는 PLC 프로그램 정보를 예시하는 참조도이다. 도 2를 참조하면, 접점 M602와 관련된 로직정보가 오픈되어 로직이 서로 연결되어 있음을 도시하고 있다. 또한, 접점 M600과 관련된 로직정보가 오프되어 로직이 서로 연결되어 있음을 도시하고 있다.
도 3a는 PLC 프로그램 정보에 대한 입력 및 출력의 로직 연결을 설정하기 위한 사용자 인터페이스를 예시하는 참조도이고, 도 3b는 도 2의 PLC 프로그램 정보에서 입력 및 출력의 로직 연결이 설정되기 전의 'Y3.54.1'에 대한 입출력 행렬을 예시하는 참조도이다.
도 3a 및 도 3b를 참조하면, "SOL" 이외의 어떠한 심볼값을 적용하지 아니한 경우(즉, 보조 항목이나 조건 항목에 대응하는 연결 로직이 설정되지 않은 경우)이므로, 출력이 'Y3.54.1'이고, 입력이 'Y3.54.0', 'M604', 'M602'에 해당하는 현재의 PLC 프로그램 정보에 대해서만 입출력 행렬에 출력된다.
도 4a는 '보조 항목'에 해당하는 로직 연결을 설정하기 위한 사용자 인터페이스를 예시하는 참조도이고, 도 4b는 도 2의 PLC 프로그램 정보에서 '보조 항목'에 해당하는 로직 연결이 설정된 상태의 'Y3.54.1'에 대한 입출력 행렬을 예시하는 참조도이다.
도 4a 및 도 4b를 참조하면, "SOL" 이라는 심볼의 하위의 계층 정보로서 "보조"라는 심볼값을 적용한 경우(즉, 보조 항목의 연결 로직이 설정된 경우)이므로, 출력이 'Y3.54.1'이고, 입력이 'Y3.54.0', 'M604', 'M600', 'X4.21.13', 'L114', 'M105', 'M414', 'L110', 'M102', 'M248', 'M180', 'M204', 'X4.2.0', 'M171', 'M200', 'M195'에 해당하는 PLC 프로그램 정보가 입출력 행렬에 출력된다.
도 4b에서, "SOL" 이라는 심볼을 출력으로 하고, 그 하위의 계층 정보로서 "보조"라는 심볼값을 갖는 4개의 분기된 정보들이 각각 A 타입과 B 타입으로 구분되어 있는 것을 예시하고 있다.
도 5a는 '보조 항목'의 하위에 '조건 항목'에 해당하는 로직 연결을 설정하기 위한 사용자 인터페이스를 예시하는 참조도이고, 도 5b는 도 2의 PLC 프로그램 정보에서 '보조 항목' 및 '조건 항목'에 해당하는 로직 연결이 설정된 상태의 'Y3.54.1'에 대한 입출력 행렬을 예시하는 참조도이다.
도 5a 및 도 5b를 참조하면, "SOL" 이라는 심볼의 하위의 계층 정보로서 "보조"라는 심볼값을 적용하며, 아울러, "보조" 이라는 심볼의 하위의 계층 정보로서 "조건"라는 심볼값을 적용한 경우(즉, 보조 항목 및 조건 항목의 연결 로직이 설정된 경우)이므로, 출력이 'Y3.54.1'이고, 입력이 'Y3.54.0', 'M604', 'M634', 'M62C', 'M624', 'M61C', 'M614', 'M413', 'M408', 'M414', 'M403', 'X4.21.13', 'L114', 'M105', 'L110', 'M102', 'M248', 'M180', 'M204', 'X4.2.0', 'M171', 'M200', 'M195'에 해당하는 PLC 프로그램 정보가 입출력 행렬에 출력된다.
도 5b에서, "SOL" 이라는 심볼을 출력으로 하고, 그 하위의 계층 정보로서 "보조"라는 심볼값을 갖는 4개의 분기된 정보들과, 이들 4개의 분기된 정보들에 각각 2개의 "조건"에 해당하는 정보들로 나뉘어지며, 이들은 각각 A 타입과 B 타입으로 구분되어 있는 것을 예시하고 있다.
S102 단계 후에, 상기 출력이 DO 동작 및 UNDO 동작 중 어느 하나의 동작 분류기준으로 설정되었을 경우에, 상기 동작 분류기준에 따라 상기 설정된 로직 연결에 대응하는 플로우차트를 생성한다(S104 단계).
도 6은 도 1에 도시된 플로우차트를 생성하는 단계를 설명하기 위한 일 실시예의 흐름도이다.
먼저, 상기 출력을 DO 동작 및 UNDO 동작 중 어느 하나의 동작 분류기준으로 설정한다(S200 단계).
상기 DO 동작 및 UNDO 동작은, 잠김과 풀림, CLAMP와 UNCLAMP, 상승과 하강, 전진과 후진, SWING과 UNSWING, LATCH와 UNLATCH, CLOSE와 OPEN, LOCK와 UNLOCK, TURN과 RETURN 중 적어도 하나 이상을 포함할 수 있다. 다음의 표 1은 동작 분류기준을 예시하는 표이다.
DO UNDO
잠김 풀림
CLAMP UNCLAMP
상승 하강
전진 후진
SWING UNSWING
LATCH UNLATCH
CLOSE OPEN
LOCK UNLOCK
TURN RETURN
Do 조건 및 Undo 조건은 상반되는 값을 가지며, 동시에 이루어 질 수 없는 동작 조건이다.
S200 단계 후에, 상기 설정된 로직 연결 중에서 선택된 동작 프로그램 유닛(Program of Unit)에 대응하는 입출력 행렬을 표시한다(S202 단계).
도 7은 선택된 동작 프로그램 유닛(Program of Unit)에 대응하는 PLC 프로그램 리스트를 예시하는 참조도이다. 도 7을 참조하면, "L421_LH_JIG_동작"에 해당하는 동작 프로그램 유닛의 선택에 따라 이에 대응하는 심볼인 "SOL"을 갖는 PLC 프로그램 리스트가 추출되어 표시된 것을 확인할 수 있다.
도 8은 도 7에서 선택된 동작 프로그램 유닛 "L421_LH_JIG_동작"에 대응하는 PLC 프로그램의 입출력 행렬을 예시하는 참조도이다. 도 8을 참조하면, "L421_LH_JIG_동작"의 심볼인 "SOL"에 매칭되는 PLC 프로그램의 입출력 행렬이 표시됨을 확인할 수 있다.
S202 단계 후에, 상기 생성된 입출력 행렬에 대해 상기 DO 동작 및 UNDO 동작이 서로 상보 관계에 있는 입력쌍들을 그룹핑한다(S204 단계).
도 9는 상기 DO 동작 및 UNDO 동작이 서로 상보 관계에 있는 입력쌍들을 그룹핑한 것을 예시하는 참조도이다. 도 9를 참조하면, 'SOL'인 출력에서 'SOL 상승'에 해당하는 DO 동작 조건을 갖는 "Y3.54.0"는 'SOL 하강'의 UNDO 동작 조건을 갖는 "Y3.54.1"과 동작 조건이 상보적 관계에 있으므로, 입력쌍으로 상호 그룹핑된다. 또한, 센서단에서 'S421 상승단'에 해당하는 DO 동작 조건을 갖는 "M603"은 'S421 하강단'의 UNDO 동작 조건을 갖는 "M604"와 동작 조건이 상보적 관계에 있으므로, 입력쌍으로 상호 그룹핑된다. 또한, 센서에서 'S421 LS 상승단1' 및 'S421 LS 상승단2' 에 해당하는 DO 동작 조건을 갖는 "X3.51.4" 및 "X3.51.6"은 'S421 LS 하강단1' 및 'S421 LS 하강단2'의 UNDO 동작 조건을 갖는 "X3.51.5" 및 "X3.51.7"과 각각 동작 조건이 상보적 관계에 있으므로, 입력쌍으로 상호 그룹핑된다. 이와 같은 방식으로 동작 프로그램 유닛(Program of Unit)에 대응하는 입출력 행렬 모두에 대해 입력쌍들을 그룹핑한다.
S204 단계 후에, 그룹핑된 상기 입출력 행렬에서 필요 없는 경로를 제거한다(S206 단계). 상기 필요 없는 경로를 제거하는 단계는, 상기 작업완료 태그를 입력조건으로 가지고 있지 않거나, 상기 DO 동작 또는 상기 UNDO 동작에서 동시에 동일 접점을 포함하고 있는 경로를 제거한다.
도 10은 입력쌍들로 그룹핑된 입출력 행렬에서 필요 없는 경로를 예시하는 참조도이다. 도 10을 참조하면, 식별기호 300은 작업완료 태그가 입력조건으로 표시되어 있지 않은 경로를 나타내고, 식별기호 302는 입력쌍의 DO 동작 또는 상기 UNDO 동작에서 동시에 동일 접점(즉, A 접점)을 포함하고 있는 경로로서, 각각 입출력 행렬에서 제거되어야 하는 경로를 의미한다.
S206 단계 후에, 상기 입출력 행렬에서 입력이 작업완료 태그를 갖는 경로에 대해 접점 종류에 따라 입출력 행렬을 그룹핑한다(S208 단계). 접점의 종류가 A 접점과 B 접점으로 구분될 때, 입력이 작업완료 태그인 경로에서 A 접점에 해당하는 경로와 B 접점에 해당하는 경로를 구분하여 그룹핑한다. A 접점은 지정된 조건을 충족하는 경우에 회로가 연결되는 스위치/센서의 기능을 의미한다. B 접점은 지정된 조건을 충족하는 경우에 회로의 연결이 끊어지는 스위치/센서의 기능을 의미한다.
도 11은 입력이 작업완료 태그를 갖는 경로에 대해 A 접점과 B 접점으로 그루핑된 상태를 예시나는 참조도이다. 도 11을 참조하면, 작업완료 태그가 B 접점을 갖는 경우에는 작업 완료 전에 해당하고, 작업완료 태그가 A 접점을 갖는 경우에는 작업 완료 후에 해당한다.
S208 단계 후에, 그룹핑된 입출력 행렬에 대해 접점에 따라 상기 DO 동작 및 상기 UNDO 동작의 순서를 재정렬하여 상기 플로우차트를 생성한다(S210 단계). 생성된 플로우차트를 디스플레이 화면 상에 표시할 수 있다.
도 12는 접점에 따라 입출력 행렬에서의 DO 동작 및 상기 UNDO 동작의 순서가 재정렬되는 것을 예시하는 참조도이다.
도 12의 (a)는 입력쌍 "M623" 및 "M624"에 대한 DO 동작 및 UNDO 동작 순서가 재정렬되기 전의 상태를 예시하는 입출력 행렬의 참조도이고, 도 12의 (b)는 입력쌍 "M623" 및 "M624"의 접점(A, B)에 따라 DO 동작 및 UNDO 동작의 순서가 재정렬된 상태를 예시하는 입출력 행렬의 참조도이다.
도 12의 (a)를 살펴보면, 먼저 "M624"에서 A 접점에 해당하는 UNDO 동작을 순차적으로 수행하다가 "M623"에서 A 접점에 해당하는 DO동작을 수행하는 것으로 표시되어 있다. 그러나, A 접점에 해당하는 UNDO 동작이 수행되는 도중에 B 접점으로의 전환 없이 DO 동작이 수행될 수는 없다. 따라서, 도 12의 (a)에 도시된 입출력 행렬에서 입력쌍 "M623" 및 "M624"에 대한 DO 동작 및 UNDO 동작 순서는 올바른 동작 순서가 아니다. 이에 따라, 이를 올바른 순서로 재정렬하기 위해서는 "M624"의 A 접점에 해당하는 UNDO 동작에 대해서는 "M623"의 B 접점에 해당하는 순위보다 앞서서 수행될 수 있도록 재정렬해야 한다. 따라서, 도 12의 (b)에 도시된 바와 같이, 출력이 "Y3.54.E (OUT)#1"인 경로를 "M623"의 B 접점의 상위에 배치되도록 정렬시킨다.
또한, "M623" 의 최초 A 접점에 해당하는 DO 동작은 출력이 "Y3.54.C (OUT)#2"에 해당하는 것으로, 이러한 경로는 B 접점의 출현 없이 동작할 수 없는 경로라는 점에서, "M623" 의 B 접점에 해당하는 경로의 순위보다 나중에 수행될 수 있도록 재정렬해야 한다. 따라서, 도 12의 (b)에 도시된 바와 같이, 출력이 "Y3.54.C (OUT)#2"인 경로를 "M623"의 B 접점의 아래에 배치되도록 정렬시킨다.
입출력 행렬의 순서가 재정렬됨에 따라, 입출력 행렬의 출력에 해당하는 순서가 PLC 프로그램 정보의 플로우차트 정보로서 생성되는 것이다.
도 13은 PLC 프로그램 정보에 대응하는 전체 입출력 행렬(플로우차트)를 예시하는 참조도이다.
도 13을 참조하면, PLC 프로그램 정보에 대한 전체 입출력 행렬의 플로우차트는 순차적으로, "Y3.54.0 (OUT)#1", "Y3.54.E (OUT)#1", "Y3.54.6 (OUT)#1", "Y3.54.4 (OUT)#1", "Y3.54.2 (OUT)#1", "Y3.54.8 (OUT)#1", "Y3.54.A (OUT)#1", "Y3.54.A (OUT)#1", "Y3.57.0 (OUT)#1", "Y3.57.1 (OUT)#1", "Y4.6.1 (OUT)#1", "Y3.54.3 (OUT)#2", "Y3.54.C (OUT)#2", "Y3.54.B (OUT)#2", "Y3.54.F (OUT)#2", "Y3.54.D (OUT)#2", "Y3.54.9 (OUT)#2", "Y3.54.7 (OUT)#2", "Y3.54.5 (OUT)#2", "Y3.54.1 (OUT)#2"의 순서로 정렬됨을 확인할 수 있다.
본 발명의 PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법은 소프트웨어적인 프로그램으로 구현하여 컴퓨터로 읽을 수 있는 소정 기록매체에 의해 구현될 수 있다. 예컨대, 기록매체는 각 재생장치의 내장형으로 하드디스크, 플래시 메모리, RAM, ROM 등이거나, 외장형으로 CD-R, CD-RW와 같은 광디스크, 콤팩트 플래시 카드, 스마트 미디어, 메모리 스틱, 멀티미디어 카드일 수 있다. 또한, 프로세서는 기록매체에 저장된 플로우차트 생성을 위한 프로그램을 이용하여 이 PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성을 위한 각 단계를 수행할 수 있다.
이상과 같이 본 발명의 실시예를 설명하였으나, 본 발명의 명세서에 개시된 실시예들은 본 발명을 한정하는 것이 아니다. 본 발명의 범위는 아래의 특허청구범위에 의해 해석되어야 하며, 그와 균등한 범위 내에 있는 모든 기술도 본 발명의 범위에 포함되는 것으로 해석해야 할 것이다.

Claims (6)

  1. PLC 프로그램 정보의 심볼을 표준화하는 단계;
    표준화된 심볼을 포함하는 PLC 프로그램 정보에 대한 입력 및 출력의 로직 연결을 설정하는 단계; 및
    상기 출력이 DO 동작 및 UNDO 동작 중 어느 하나의 동작 분류기준으로 설정되었을 경우에, 상기 동작 분류기준에 따라 상기 설정된 로직 연결에 대응하는 플로우차트를 생성하는 단계를 포함하는 것을 특징으로 하는 PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법.
  2. 청구항 1에 있어서,
    상기 심볼을 표준화하는 단계는,
    영어 문자는 모두 대문자로 표준화하고, 각 문자들을 단어 레벨로 표준화하고, 영어와 한글을 분리하고, 띄어쓰기 하지 않은 단어를 분리하고, 영어, 한글 및 숫자 이외의 기호를 제거하는 것을 특징으로 하는 PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법.
  3. 청구항 1에 있어서,
    상기 로직 연결을 설정하는 단계는,
    보조 항목 및 조건 항목 사이의 연결관계를 설정하는 것을 특징으로 하는 PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법.
  4. 청구항 1에 있어서,
    상기 플로우차트를 생성하는 단계는,
    상기 출력을 DO 동작 및 UNDO 동작 중 어느 하나의 동작 분류기준으로 설정하는 단계;
    상기 설정된 로직 연결 중에서 선택된 동작 프로그램 유닛(Program of Unit)에 대응하는 입출력 행렬을 표시하는 단계;
    상기 생성된 입출력 행렬에 대해 상기 DO 동작 및 UNDO 동작이 서로 상보 관계에 있는 입력쌍들을 그룹핑하는 단계;
    상기 입력쌍들이 그룹핑된 상기 입출력 행렬에서 필요 없는 경로를 제거하는 단계;
    상기 입출력 행렬에서 입력이 작업완료 태그를 갖는 경로에 대해 접점 종류에 따라 입출력 행렬을 그룹핑하는 단계; 및
    상기 그룹핑된 입출력 행렬에 대해 접점에 따라 상기 DO 동작 및 상기 UNDO 동작의 순서를 재정렬하여 상기 플로우차트를 생성하는 단계를 포함하는 것을 특징으로 하는 PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법.
  5. 상기 청구항 4에 있어서,
    상기 DO 동작 및 UNDO 동작은,
    잠김과 풀림, CLAMP와 UNCLAMP, 상승과 하강, 전진과 후진, SWING과 UNSWING, LATCH와 UNLATCH, CLOSE와 OPEN, LOCK와 UNLOCK, TURN과 RETURN 중 적어도 하나 이상을 포함하는 것을 특징으로 하는 PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법.
  6. 상기 청구항 4에 있어서,
    상기 필요 없는 경로를 제거하는 단계는,
    상기 작업완료 태그를 입력조건으로 가지고 있지 않거나, 상기 DO 동작 또는 상기 UNDO 동작에서 동시에 동일 접점을 포함하고 있는 경로를 제거하는 것을 특징으로 하는 PLC 프로그램 정보의 정적 데이터를 이용한 플로우차트 생성방법.
KR1020200167620A 2020-04-27 2020-12-03 Plc 프로그램 정보를 이용한 플로우차트 생성방법 KR102414933B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200050667 2020-04-27
KR20200050667 2020-04-27

Publications (2)

Publication Number Publication Date
KR20210133111A true KR20210133111A (ko) 2021-11-05
KR102414933B1 KR102414933B1 (ko) 2022-07-04

Family

ID=78508019

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200167620A KR102414933B1 (ko) 2020-04-27 2020-12-03 Plc 프로그램 정보를 이용한 플로우차트 생성방법

Country Status (1)

Country Link
KR (1) KR102414933B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002527803A (ja) * 1998-10-13 2002-08-27 サイアントロニクス・インコーポレーテッド 制御プログラムを生成するためのシステムおよび方法
KR100981330B1 (ko) * 2009-03-25 2010-09-10 주식회사 유디엠텍 입출력 모델을 자동으로 생성하기 위한 피엘씨 코드의 피엘씨 심벌 구조를 이용하여 피엘씨 코드를 테스트하기 위한 시뮬레이션 장치 및 방법
KR20110024477A (ko) 2009-09-02 2011-03-09 엘에스산전 주식회사 Plc 시스템의 모니터링 시스템 및 그를 이용한 모니터링 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002527803A (ja) * 1998-10-13 2002-08-27 サイアントロニクス・インコーポレーテッド 制御プログラムを生成するためのシステムおよび方法
KR100981330B1 (ko) * 2009-03-25 2010-09-10 주식회사 유디엠텍 입출력 모델을 자동으로 생성하기 위한 피엘씨 코드의 피엘씨 심벌 구조를 이용하여 피엘씨 코드를 테스트하기 위한 시뮬레이션 장치 및 방법
KR20110024477A (ko) 2009-09-02 2011-03-09 엘에스산전 주식회사 Plc 시스템의 모니터링 시스템 및 그를 이용한 모니터링 방법

Also Published As

Publication number Publication date
KR102414933B1 (ko) 2022-07-04

Similar Documents

Publication Publication Date Title
CN106814714B (zh) 生产管理装置及生产系统
KR100981330B1 (ko) 입출력 모델을 자동으로 생성하기 위한 피엘씨 코드의 피엘씨 심벌 구조를 이용하여 피엘씨 코드를 테스트하기 위한 시뮬레이션 장치 및 방법
US6167406A (en) System, method and article of manufacture for building an enterprise-wide data model
US6157864A (en) System, method and article of manufacture for displaying an animated, realtime updated control sequence chart
US6108662A (en) System method and article of manufacture for integrated enterprise-wide control
AU721795B2 (en) System and method for simulating signal flow through a logic block pattern of a real time process control system
US6862553B2 (en) Diagnostics method and apparatus for use with enterprise controls
US20050278670A1 (en) Mechanical-electrical template based method and apparatus
US10824810B2 (en) System and method for identifying correlated operator action events based on text analytics of operator actions
EP2541351B1 (en) Block execution sequence display system
US7433801B2 (en) Identifying and visualizing faults in PLC-based manufacturing systems
EP1624352B1 (en) Manual restart learning process and manual restart process for an automated system
Chung Diagnosing PN-based models with partial observable transitions
JPH0355147A (ja) 数値制御装置付き工作機械における作動履歴の表示方法
CN110275451A (zh) 开发支援装置、开发支援方法以及记录介质
KR102414933B1 (ko) Plc 프로그램 정보를 이용한 플로우차트 생성방법
JP6633477B2 (ja) 複数の製造設備からなる生産設備の稼働停止時に原因を特定する機能を備えた生産制御装置
KR101566358B1 (ko) 자동화 공정 이상상태 알림 시스템 및 방법
US11561526B2 (en) Control system of industrial machine
JP3711820B2 (ja) Plc用の操作盤及び同操作盤における異常表示方法
US9122772B2 (en) Method for analyzing message archives and corresponding computer program
CN114462663A (zh) 模块化工业车间中的事件分析
CN101004603A (zh) 模具条码监控方法及其系统
Kim et al. An upper bound for carriers in a three-workstation closed serial production system operating under production blocking
US20090241093A1 (en) Method for debugging programmable logic controller

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant