KR102553315B1 - 프로그램 생성 장치, 프로그램 생성 장치의 제어 방법, 제어 프로그램, 및 기록 매체 - Google Patents

프로그램 생성 장치, 프로그램 생성 장치의 제어 방법, 제어 프로그램, 및 기록 매체 Download PDF

Info

Publication number
KR102553315B1
KR102553315B1 KR1020217007425A KR20217007425A KR102553315B1 KR 102553315 B1 KR102553315 B1 KR 102553315B1 KR 1020217007425 A KR1020217007425 A KR 1020217007425A KR 20217007425 A KR20217007425 A KR 20217007425A KR 102553315 B1 KR102553315 B1 KR 102553315B1
Authority
KR
South Korea
Prior art keywords
program
unit
data collection
plc
target device
Prior art date
Application number
KR1020217007425A
Other languages
English (en)
Other versions
KR20210042971A (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 KR20210042971A publication Critical patent/KR20210042971A/ko
Application granted granted Critical
Publication of KR102553315B1 publication Critical patent/KR102553315B1/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
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • 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/13004Programming the plc

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Programmable Controllers (AREA)

Abstract

PLC에 의한 데이터 수집을 행하기 위한 프로그램의 생성을 용이하게 하고, 작업자의 부담을 경감한다. 데이터 수집에 관한 각종 처리에 대응한 템플릿 프로그램과, 데이터 수집의 대상이 되는 대상 기기마다 그 대상 기기에 대응한 기기 파라미터를 저장한 기기 정보 라이브러리(111)와, 접수한 대상 기기에 대응하는 템플릿 프로그램 및 기기 파라미터를 이용하여, 데이터 수집 프로그램을 생성하는 프로그램 생성부(117)를 구비한다.

Description

프로그램 생성 장치, 프로그램 생성 장치의 제어 방법, 제어 프로그램, 및 기록 매체
본 개시는, 기계를 제어하는 PLC를 위한 프로그램을 자동 생성하는 장치에 관한 것이다.
PLC(Programmable Logic Controller, 프로그래머블 로직 컨트롤러)는, 공장이나 플랜트에서, 제어 대상 기기에 대해 기계의 가공을 실행시키거나, 검출 장치에 의해 검출된 정보를 취득하거나 하는 제어 장치이다. PLC는, 동작시키는 기기의 종류, 순서, 타이밍 등, 파라미터를 적절히 설정할 필요가 있는 생산 현장에서, 공장의 자동화(팩토리 오토메이션, FA)를 위해 널리 이용되고 있다.
FA 기기가 PLC에 대해 송신하는 데이터는 다종다양하다. 이러한 다종다양한 데이터를 PLC는 통일하여 관리하기 위해, 수신한 데이터에 선형 변환 등의 변환을 실시하여 관리하고 있다.
또한, 임의의 이미 설치된 환경상에서 PLC로부터 FA 기기를 제어하여, 데이터를 수집하고, 데이터베이스에 송신하기 위해서는, 그 PLC 상에서 동작하는 프로그램을 작성할 필요가 있다.
프로그램의 작성에 관해, 특허문헌 1에는, 모범적인 소스 코드로부터 소스 코드 템플릿을 생성하는 소스 코드 템플릿 생성 장치가 기재되어 있다. 또한, 특허문헌 2에는, PLC를 위한 프로그램을, 사용자에 의해 선택된 프로그램 코드를 결합함으로써 자동 생성하는 방법이 기재되어 있다.
특허문헌 1: 일본공개특허공보 「특개 2009-230606호 공보(2009년 10월 8일 공개)」 특허문헌 2: 일본공개특허공보 「특개 2013-33479호 공보(2013년 2월 14일 공개)」
그러나, 특허문헌 1 및 특허문헌 2에 기재된 기술을 이용하여, PLC에 의한 데이터 수집 프로그램을 생성하는 경우, FA 기기마다 대응하는 파라미터를 설정할 필요가 있다. 또한, FA 기기와의 통신을 위한 파라미터도 설정할 필요가 있다.
따라서, 상술한 종래 기술을 이용하여 PLC에 의한 데이터 수집 프로그램을 생성하는 경우, 프로그램을 생성하는 작업자에게 큰 부담을 준다는 문제가 있다. 또한, 생성된 프로그램에는 작업자의 능력차에 기인하여 품질 수준에 불균일이 발생한다는 문제나, 나아가 출력되는 데이터의 형식에 속인적인 차이가 발생한다는 문제도 있다.
본 발명은, 일 측면에서는, 상기의 문제를 감안하여 이루어진 것으로, 그 목적은, PLC에 의한 데이터 수집을 행하기 위한 프로그램의 생성을 용이하게 하고, 작업자의 부담을 경감한 프로그램 개발 지원 장치 등을 실현하는 것에 있다.
본 개시는, 상술한 과제를 해결하기 위해, 이하의 구성을 채용한다.
즉, 본 발명의 일 측면에 관한 프로그램 생성 장치는, 데이터 수집에 관한 처리를 PLC(Programmable Logic Controller)에 실행시키는 데이터 수집 프로그램을 생성하는 프로그램 생성 장치로서, 상기 데이터 수집에 관한 각종 처리에 대응한 템플릿 프로그램과, 데이터 수집의 대상이 되는 대상 기기마다 그 대상 기기에 대응한 기기 파라미터를 저장한 기억부; 사용자로부터, 상기 대상 기기의 입력을 접수하는 접수부; 및 상기 접수부에서 접수한 상기 대상 기기에 대응하는 상기 템플릿 프로그램 및 상기 기기 파라미터를 이용하여, 상기 PLC에 의해 상기 대상 기기로부터 데이터를 수집하기 위한 데이터 수집 프로그램을 생성하는 프로그램 생성부;를 구비한다.
상기의 구성에 의하면, 대상 기기를 입력하는 것만으로 PLC에 의한 데이터 수집 프로그램을 생성할 수 있다. 따라서, 종래와 비교하여 작업자의 부담을 대폭으로 경감하고, PLC에 의한 데이터 수집 프로그램을 일정한 품질 수준과 통일된 출력 형식을 담보하여 생성할 수 있다.
또한, 본 발명의 일 측면에 관한 프로그램 생성 장치의 제어 방법은, 데이터 수집에 관한 처리를 PLC(Programmable Logic Controller)에 실행시키는 데이터 수집 프로그램을 생성하는 프로그램 생성 장치의 제어 방법으로서, 상기 데이터 수집에 관한 각종 처리에 대응한 템플릿 프로그램과, 데이터 수집의 대상이 되는 대상 기기마다 그 대상 기기에 대응한 기기 파라미터가 기억부에 저장되어 있고, 사용자로부터, 상기 대상 기기의 입력을 접수하는 접수 단계; 및 상기 접수 단계에서 접수한 상기 대상 기기에 대응하는 상기 템플릿 프로그램 및 상기 기기 파라미터를 이용하여, 상기 PLC에 의해 상기 대상 기기로부터 데이터를 수집하기 위한 데이터 수집 프로그램을 생성하는 프로그램 생성 단계;를 포함한다.
본 발명의 각 측면에 관한 프로그램 생성 장치는, 컴퓨터에 의해 실현해도 되고, 이 경우에는, 컴퓨터를 상기 프로그램 생성 장치가 구비하는 각 부(소프트웨어 요소)로서 동작시킴으로써 상기 프로그램 생성 장치를 컴퓨터에서 실현시키는 프로그램 생성 장치의 제어 프로그램, 및 이를 기록한 컴퓨터 판독 가능한 기록 매체도, 본 발명의 범주에 들어간다.
본 개시의 일 형태에 의하면, 작업자의 부담이 적은 프로그램 자동 생성 방법을 제공할 수 있다.
도 1은, 본 실시형태에 관한 프로그램 생성부의 주요부 구성을 나타내는 기능 블록도이다.
도 2는, 본 실시형태의 전체 개요를 나타내는 도면이다.
도 3은, 본 실시형태에 관한 기기 정보 라이브러리를 나타내는 도면이다.
도 4는, 종래의 작업 단계를 나타내는 흐름도이다.
도 5는, 본 실시형태에서의 처리의 흐름을 나타내는 흐름도이다.
도 6은, 본 실시형태에서, 처리가 개시될 때의 사용자 인터페이스 화면의 일례를 나타내는 도면이다.
도 7은, 상기 인터페이스 화면에서, 네트워크 구성 정보를 도입한 예를 나타내는 도면이다.
도 8은, 상기 인터페이스 화면에서, 대조 처리의 결과 및 공업치 변환 관리 맵에의 기입 결과의 예를 나타내는 도면이다.
도 9는, 상기 인터페이스 화면에서, 사용자가 수정 입력을 행하는 경우의 예를 나타내는 도면이다.
도 10은, 공업치 변환 관리 맵으로부터 PLC 제어 프로그램 및 데이터베이스 정의 프로그램을 작성하는 예를 설명하기 위한 도면이다.
도 11의 (a)~(c)는, 프로그램의 생성 처리의 예를 나타내는 도면이다.
도 12는, 교정치를 반영하는 예를 나타내는 도면이다.
이하, 본 개시의 일 측면에 관한 실시형태(이하, 「본 실시형태」라고도 표기함)를 도면에 기초하여 설명한다. 단, 이하에서 설명하는 본 실시형태는, 모든 점에서 본 개시의 예시에 불과하다. 본 개시의 범위를 벗어나지 않고 여러 가지의 개량이나 변형을 행할 수 있음은 물론이다.
§1 적용예
우선, 도 2를 이용하여, 본 발명이 적용되는 장면의 일례에 대해 설명한다. 도 2는, 본 실시형태의 전체 개요를 나타내는 도면이다. 도 2에는, 본 실시형태에 관한 프로그램 자동 생성부(프로그램 생성 장치)(110)가 적용되는 장면을 나타내고 있다.
도 2에 도시된 예에서는, 생산 시스템(200)에 포함되는 PLC(210)를 제어하는 단말 장치(100)가 기재되어 있다. 단말 장치(100)에는 PLC(210)를 제어하는 프로그램을 생성하는 프로그램 자동 생성부(110)가 포함된다.
도 2에 도시된 바와 같이, 프로그램 자동 생성부(110)는, 사용자에 의해 지정된 기기에 대응하는, 기기 정보 라이브러리(기억부)(111)에 저장된 템플릿 프로그램 및 기기 파라미터를 이용하여, PLC(210)가 대상 기기로부터 데이터를 수집하기 위한 데이터 수집 프로그램을 생성하는 것이다. 사용자가 대상 기기를 지정하는 것만으로, 그 대상 기기로부터 PLC(210)가 데이터를 수집하기 위한 데이터 수집 프로그램을 생성할 수 있으므로, 사용자에게 부담을 주지 않고 데이터 수집 프로그램을 자동으로 생성할 수 있다.
그리고, 본 실시형태에 관한 생산 시스템(200)에서는, PLC(210)는, 프로그램 자동 생성부(110)에서 생성된 데이터 수집 프로그램을 실행함으로써, 말단 기기(230)로부터 출력된 데이터를, 범용 센서나 이미 설치된 PLC 등의 중계 기기(중계 장치)(220)를 통해 수집한다. 그리고, PLC(210)는, 수집된 데이터에 예를 들어 선형 변환 등의 처리를 행하여, 디바이스 변수를 공업량 변수로 변환하고, 얻어진 공업량 변수를 데이터베이스(410)에 저장한다. 또, 본 실시형태에서의 데이터 수집 프로그램은, PLC(210)가 중계 기기(220) 등의 대상 기기로부터 데이터를 취득하고, 취득한 데이터를 변환하기 위한 PLC 제어 프로그램, 및 변환 후의 데이터를 데이터베이스(410)에 저장하기 위한 데이터베이스 정의 프로그램을 포함한다.
본 실시형태에서는, 프로그램 자동 생성부(110)의 네트워크 구성 임포트부(112)는 생산 시스템(200)의 네트워크 구성 정보를 임포트한다. 임포트에서는, 중계 기기(220)(통신 유닛, I/O 유닛)에서의 설정 완료된 구성을 취득할 수 있다. 그리고, 중계 기기(220) 이후의 말단 기기(230)(센서, 액추에이터 등)에 대해, 대조 처리부(115)가 후보를 한정한 선택지를 사용자에게 제시하여 선택하게 한다.
이에 의해, 사용자가, 중계 기기(220)(통신 유닛, I/O 유닛)까지의 구성을 조사한다는 수고를 필요로 하지 않고, 네트워크 구성에 맞춘 데이터 수집 프로그램을 작성할 수 있다. 또한, 말단 기기(230)(센서, 액추에이터 등)에 대해, 선택지를 선택하는 것만으로 되므로, 용이하고 신속하게 데이터 수집 프로그램을 작성할 수 있다.
또한, 네트워크 구성 정보에 기초하여, 기기끼리의 통신 프로그램을 생성할 수 있고, 데이터 취득을 위해 통신 처리 프로그램을 필요로 하는 말단 기기(230)의 데이터를, 생성한 데이터 수집 프로그램에서 취득할 수 있다.
나아가 선택지에서는 제시할 수 없었던 요소에 대해 추가, 수정을 행하는 것이 가능하므로, 환경이나 기기의 개체차에 따라 데이터 수집 프로그램을 작성할 수 있다.
또한, 기기 정보 라이브러리(111)는, 기기 정보 파라미터(1111)와 템플릿 프로그램(1112)을 분리하여 보유하고 있으므로, 기기끼리의 인터페이스의 차이 등을 신경쓰지 않고, 형식이 다른 기기에 대해, 동일한 방법으로 데이터 수집 프로그램을 작성할 수 있다.
또, 템플릿 프로그램(1112)에는 통신 처리 등 공업치 변환 이외의 처리를 기술할 수도 있다. 이에 의해, 공업치 변환 전에 통신 처리 등의 프로그램 처리가 필요한 기기에 대해서도, 동일한 방법으로 데이터 수집 프로그램을 작성할 수 있다.
§2 구성예
[하드웨어 구성]
<생산 시스템>
다음에, 도 2를 이용하여, 본 실시형태에 관한 생산 시스템의 하드웨어 구성의 일례에 대해 설명한다.
도 2에 도시된 예에서는, 본 실시형태에 관한 생산 시스템(200)은, PLC(210)와 중계 기기(220)와 말단 기기(230)를 포함한다. 중계 기기(220)는 PLC(210)에 내장되어 있어도 된다. 말단 기기(230)는, 직접 워크나 환경에 작용하고 있는 FA(Factory Automation) 기기를 포함하고, 예를 들어 여러 가지의 범용 센서, 액추에이터, 시리얼 기기이어도 된다. 또한, 이미 설치된 PLC도 편의상 이에 포함해도 된다. 중계 기기(220)는, PLC(210)와 말단 기기(230)의 사이에 들어가는 기기를 포함하고, 예를 들어 여러 가지의 I/O 유닛, 통신 유닛이어도 된다. 중계 기기(220)와 말단 기기(230)의 접속 방식은, 공지의 기술을 이용하여 동작 가능하게 구성된 것으로 된다.
<프로그램 자동 생성부>
다음에, 본 실시형태에 관한 프로그램을 자동으로 생성하는 프로그램 자동 생성부(110)를 포함하는 단말 장치(100)에 대해 설명한다. 도 2에 도시된 바와 같이, 본 실시형태에 관한 단말 장치(100)는, 프로그램 자동 생성부(110) 및 PLC 서포트부(150)를 포함한다. 단말 장치(100)는, 예를 들어 퍼스널 컴퓨터(PC)이다. 단말 장치(100)는, PLC(210)와 예를 들어 USB 케이블로 접속되어 있다. PLC(210)로부터 센서 데이터의 취득 및 PLC(210)에 프로그램의 기입 등의 통신은, USB 케이블 및 PLC 서포트부(150)를 통해 행해진다. 또, USB 대신에 Ethernet(등록상표)으로 접속되고, Ethernet 케이블 및 LAN 기기를 통해 통신이 행해져도 된다.
단말 장치(100)는, CPU(Central Processing Unit), RAM(Random Access Memory), ROM(Read Only Memory) 등을 포함한다.
<데이터베이스>
PLC(210)는, LAN 네트워크를 통해 데이터베이스 저장 장치(400)의 데이터베이스(410)에 접속하고, 데이터 수집 프로그램에 의해 수집한 데이터를 데이터베이스(410)에 기록한다. 데이터베이스 저장 장치(400)는, 예를 들어 PC이다. 데이터베이스(410)는, LAN 네트워크로 접속되어 있는 것에 한정되지 않고, 예를 들어 인터넷으로 접속된 클라우드 상에 존재하고 있어도 된다. 또한, 데이터베이스(410)는, SQLServer 등의 릴레이셔널 DB이어도 되고, 비릴레이셔널 DB이어도 된다.
[기능 구성]
다음에, 도 1을 참조하여, 본 실시형태에 관한 단말 장치(100)의 프로그램 자동 생성부(110)의 기능 구성에 대해 설명한다. 도 1은, 프로그램 자동 생성부(110)의 주요부 구성을 나타내는 기능 블록도이다.
<단말 장치>
단말 장치(100)는, 프로그램 자동 생성부(110) 및 PLC 서포트부(150)를 포함한다. PLC 서포트부(150)는, PLC(210)와 프로그램 자동 생성부(110)의 중개를 행한다. 예를 들어, PLC 서포트부(150)는, PLC(210)로부터, 생산 시스템(200)의 기존의 네트워크 구성 정보를 취득하여, 프로그램 자동 생성부(110)에 임포트하고, 프로그램 자동 생성부(110)에서 생성된 데이터 수집 프로그램의 PLC(210)에 기입하는 등을 행한다.
<프로그램 자동 생성부>
도 1에 도시된 예에서는, 프로그램 자동 생성부(110)는, 기기 정보 라이브러리(111), 네트워크 구성 임포트부(112), 기기 정보 라이브러리 검색부(114), 공업치 변환 관리 맵(113), 대조 처리부(115), 수정 입력 접수부(116), 프로그램 생성부(117), 사용자 인터페이스부(접수부)(120) 및 프로그램 엑스포트부(140)를 포함한다.
기기 정보 라이브러리(111)는, 기기 정보 파라미터(1111)와 템플릿 프로그램(1112)을 포함한다.
도 3은, 기기 정보 라이브러리(111)의 내용을 예시하는 도면이다. 상술한 바와 같이, 기기 정보 라이브러리(111)는, 기기 정보 파라미터(1111)와 템플릿 프로그램(1112)을 보유하고 있다. 기기 정보 파라미터(1111)에서는, 대상 기기를 특정하기 위한 디바이스 ID와 그 대상 기기의 파라미터명과 디폴트값이 대응되어 있다. 또한, 템플릿 프로그램(1112)에는, PLC(210)에 실행시키는 처리 내용이, 대상 기기에 대응하는 개소가 플레이스홀더가 된 상태로 기재되어 있다. 보다 상세하게는, 템플릿 프로그램(1112)에는, PLC(210)가 데이터를 수집하고, 수집한 데이터를 공업치 변환하기 위한 데이터 수집 프로그램의 템플릿과, 얻어진 공업치를 데이터베이스(410)에 저장하기 위한 데이터베이스 정의 프로그램의 템플릿이 포함된다. 데이터 수집 프로그램에는, 대상 기기로부터 송신된 데이터를 읽어들이는 프로그램, 대상 기기에 데이터의 송신을 행하게 하기 위한 프로그램, PLC(210)와 대상 기기의 통신을 제어하기 위한 프로그램 등, 데이터 수집에 필요한 프로그램이 포함된다.
네트워크 구성 임포트부(112)는, PLC(210)로부터 네트워크 구성 정보를 취득하여, 공업치 변환 관리부(118)에 송신한다. 네트워크 구성 정보란, PLC(210)에 접속되어 있는 기기의 구성을 나타내는 정보이다.
공업치 변환 관리 맵(113)은, 네트워크 구성 정보, 및 프로그램 자동 생성부(110)에서 프로그램을 생성하기 위해 필요한 정보를 저장하고 있다. 프로그램을 생성하기 위해 필요한 정보에는, 각 기기의 형식, 설정 정보, 제조사명, 공업치의 단위, 변환계수, 디바이스 변수명, 공업량 변수명 등이 포함된다.
공업치 변환 관리부(118)는, 공업치 변환 관리 맵(113)에의 입출력을 관리한다.
기기 정보 라이브러리 검색부(114)는, 기기 정보 라이브러리(111)로부터 기기 정보 파라미터(1111) 및 템플릿 프로그램(1112)의 읽어들임을 행한다.
대조 처리부(115)는, 네트워크 구성 정보와 기기 정보 파라미터(1111)를 대조하여, 예상되는 기기 형식의 후보를 좁힌다. 대조 처리부(115)는, 선택지 제시부(1151) 및 한정부(1152)를 포함한다.
선택지 제시부(1151)는, 좁혀진 결과를 선택지로서 사용자에게 제시한다. 한정부(1152)는, 말단 기기로서 접속될 수 있는 기기 중 기기 종별과 제조사가 지정된 기기만을 좁혀 사용자에게 제시한다. 사용자는, 제시된 선택지 중 최적으로 판단한 기기를 선택한다.
수정 입력 접수부(116)는, 공업치 변환 관리 맵 중의 값을 사용자가 임의로 편집하기 위한 입력을 접수한다. 예를 들어, 입출력의 상한치나 하한치의 편집을 접수한다.
프로그램 생성부(117)는, 사용자에 의해 선택된 기기, 공업치 변환 관리 맵(113)에 입력된 정보 및 템플릿 프로그램(1112)에 기초하여, 데이터 수집 프로 램을 생성한다. 또, 예를 들어, 사용자는 사용자 인터페이스 화면상의 프로그램 생성 버튼(도시생략)을 클릭하고, 이러한 클릭을 접수하면, 사용자 인터페이스부(120)는 프로그램 생성부(117)에 프로그램의 생성을 개시시켜도 된다.
생성된 데이터 수집 프로그램(160)은, 프로그램 엑스포트부(140)를 통해 엑스포트되고, PLC 서포트부(150)에 의해 PLC(210)에 기입된다. 또, 생성한 데이터 수집 프로그램을 그대로 사용하는 것이 아니라, 필요에 따라 데이터 수집 프로그램을 튜닝(수정)해도 된다.
사용자 인터페이스부(120)는, 사용자에게의 제시 및 사용자로부터의 입력을 접수하는 기기를 제어한다. 사용자 인터페이스부(120)에 의해 제어되는 기기로서는, 예를 들어 디스플레이, 터치 패널, 스피커, 키보드, 마우스, 마이크 등이 포함된다.
§3 동작예
우선, 도 4를 참조하여, 종래의 처리의 흐름을 간단하게 설명한다. 종래는, 본 실시형태에 대응하는 데이터 수집 프로그램을 생성하는 경우, 현장을 담당하는 기술자가, 대상 기기의 사양을 조사하고(S901), 유닛 사양을 조사하며(S903), 상기 대상 기기로부터 데이터를 수집하기 위한 샘플 프로그램을 이해, 검토하고(S905), 데이터 수집 프로그램을 작성하며(S907), 디버그가 있으면 수정한다(S909)는 처리를 반복하였다.
그리고, 디버그가 없어지면, IT 기술자에 대해, 대상 기기로부터 수집되는 데이터의 형식에 대해 설명하고(S911), IT 기술자가 그 데이터 형식에 대응하는 데이터 변환 프로그램을 작성(S913), 디버그가 있으면 수정한다(S915)는 처리를 반복하였다. 그리고, 디버그가 없으면, 작성한 데이터 수집 프로그램을 이용한다(S917)는 흐름으로 되었다.
따라서, 종래에서는, 작업 공정도 많고, 현장 기술자와 IT 기술자의 사이에서 교환도 필요하여, 작업자의 부담은 많은 것이었다. 나아가 이 처리에서 작성된 데이터 수집 프로그램은 상기 대상 기기로부터 데이터를 수집하는 경우에만 사용할 수 있다는 것이었다.
다음에, 도 5를 이용하여, 프로그램 자동 생성부(110)의 동작예를 설명한다. 도 5는, 프로그램 자동 생성부(110)의 처리의 일례를 나타내는 흐름도이다. 또, 이하에서 설명하는 처리는 일례에 불과하며, 각 처리는 가능한 한 변경되어도 된다. 또한, 이하에서 설명하는 처리에 대해, 실시형태에 따라 적절히 단계의 생략, 치환 및 추가가 가능하다.
우선, 사용자는, 생산 시스템(200)(PLC(210)를 포함함)과 단말 장치(100)를 접속한다. 다음에, 단말 장치(100)를 기동하고, 기동한 단말 장치(100)의 PLC 서포트부(150)는, 생산 시스템(200)의 네트워크 구성 정보를 프로그램 자동 생성부(110)에 임포트한다. 그리고, 프로그램 자동 생성부(110)는, 처리를 개시한다.
프로그램 자동 생성부(110)의 처리가 개시될 때의 사용자 인터페이스 화면의 일례를 도 6에 나타낸다. 도 6에 도시된 바와 같이, 처리 개시시의 사용자 인터페이스 화면에서는, 좌측에 공업치 변환 관리 맵(113)이 표시되어 있다. 우측은 사용자가 기기를 선택하거나, 기기 파라미터에 관한 수치나 문자열을 입력할 때에 사용하는 영역이며, 기기 종별이나 제조사를 선택하기 위한 버튼을 포함한다. 처리 개시시에는, 공업치 변환 관리 맵(113)의 내용은 초기화되어 있고, 도 6에 도시된 바와 같이 사용자 인터페이스 화면에도 정보는 입력되어 있지 않다. 또, 소프트웨어 설정이나 기동시에 실행하는 스크립트 등에 의해, 전회 종료시의 공업치 변환 관리 맵(113)의 내용 등을 자동으로 읽어들이는 것으로 해도 된다.
(단계 S101)
S101에서, 사용자는, 도시하지 않은 네트워크 구성 임포트 메뉴를 사용하여, 현시점의 네트워크 구성 정보를 임포트하는 조작을 행한다. 프로그램 자동 생성부(110)의 사용자 인터페이스부(120)는 이 조작을 접수한다. 이에 의해, 네트워크 구성 임포트부(112)는 그 시점에서의 생산 시스템(200)의 네트워크 구성 정보를 도입하여, 공업치 변환 관리 맵(113)에 입력한다. 또, 소프트웨어 설정이나 기동시에 실행하는 스크립트 등에 의해, 지정 완료된 네트워크 구성 정보를 자동으로 도입하는 것으로 해도 된다.
도 7은, 도입 결과를 나타내는 이미지도이다. 점선으로 둘러싸는 영역(701)에 나타내는 기기 형식의 컬럼이나 디바이스 변수의 컬럼 영역에, 도입된 값이 입력되어 표시되어 있다.
(단계 S103)
도 8을 참조하여, S103에 대해 설명한다. S101에 이어 사용자는, 사용자 인터페이스 화면 좌측의 공업치 변환 관리 맵(113)을 표시하는 영역 중, 점선으로 도시한 말단 기기를 나타내는 영역(801)을 클릭함으로써 말단 기기(230)를 선택한다. 그리고, 대조 처리부(115)는, 선택된 말단 기기(230)와 PLC(210)의 사이에 위치하는 중계 기기(220)의 형식과 기기 정보 파라미터(1111)를 대조하여, 말단 기기(230)로서 접속될 수 있는 후보를 좁힌다.
(단계 S105)
S105에서, 선택지 제시부(1151)는, 좁힌 결과에 기초하여 사용자 인터페이스 화면의 우측에 후보 기기를 제시한다. 다음에, 사용자는, 우측의 영역 중 기기 종별을 선택하는 풀다운 메뉴(입력 영역)를 클릭하여, 예를 들어 「유량 센서」를 선택한다. 이에 의해, 대조 처리부(115)는, 말단 기기(230)로서 접속될 수 있는 기기 중 유량 센서를 표시한다. 다음에, 사용자는, 제조사를 선택하는 풀다운 메뉴를 클릭하여, 예를 들어 「○×주식회사」를 선택한다. 이에 의해, 한정부(1152)는, 말단 기기(230)로서 접속될 수 있는 기기 중 기기 종별과 제조사가 지정된 기기만을 좁혀 표시한다.
(단계 S107)
S107에서, 사용자는, 단계 S105에서 좁혀진 후보 중에서, 실제로 생산 현장에서 사용되고 있는 기기가 표시되어 있는 행(811)(해칭으로 나타냄)을 선택하여, 좌단의 화살표 버튼을 클릭함으로써, 실재하는 말단 기기(230)를 선택한다.
(단계 S109)
S109에서, 대조 처리부(115)는, 선택된 행이 나타내는 말단 기기(230)에 기초하여, 공업치 변환 관리 맵(113)에 구체적인 기기 형식(형식 및 리비전)을 입력한다. 또한, 물리량, 기기 설정의 값 등을, 이러한 기기 형식에 대응하는 기기 정보 파라미터(1111)에 기초하여, 공업치 변환 관리 맵(113)에 입력한다.
(단계 S111)
도 9를 참조하여, 사용자가 수정 입력을 행하는 경우의 처리의 흐름을 나타낸다. S111에서, 사용자는, 단계 S109에 의해 얻어진 공업치 변환 관리 맵(113)을 확인하고, 현장의 환경이나 기기의 개체차에 맞추어 필요에 따라 수정 입력을 행한다. 또한, S111에서는, 입출력의 상한치나 하한치의 편집을 행할 수 있다. 사용자가 편집한 결과, 공업치 변환 관리 맵(113)은 갱신되고, 점선으로 둘러싸인 영역(901)과 같이 갱신 후의 값이 표시된다.
즉, 수정 입력 접수부(116)는, 프로그램 생성부(117)가 생성한 데이터 수집 프로그램에 대한 수정 지시를 접수하고, 프로그램 생성부(117)는, 수정 입력 접수부(116)가 접수한 수정 내용을 생성한 데이터 수집 프로그램에 반영시킨다.
(단계 S113)
S113에서, 수정 입력 접수부(116)는, 사용자가 입력한 상기 수정 입력값을 접수하여, 공업치 변환 관리 맵(113)에 입력한다.
(단계 S115)
S115에서, 사용자는, 사용자 인터페이스 화면에서의 도시하지 않은 메뉴를 이용하여, 프로그램 자동 작성 지시를 행한다. 또, S115를 생략하고, S107에서 기기가 선택된 후, 또는 S111에서 수정 입력이 된 후, 자동으로 프로그램의 생성이 개시되어도 된다.
(단계 S117)
S117에서, 프로그램 생성부(117)는, 공업치 변환 관리 맵(113)에 입력된 값과, 기기 정보 라이브러리(111)에 포함되는 템플릿 프로그램에 기초하여, 데이터 수집 프로그램을 생성한다. 도 10을 참조하여, 프로그램의 자동 생성에 대해 설명한다.
도 10은, 데이터 수집 프로그램의 자동 생성에 대해 설명하기 위한 도면이다. 도 10에 도시된 바와 같이, 프로그램 생성부(117)는, 공업치 변환 관리 맵(113)에 입력된 디바이스 변수, 공업량 변수, 입출력의 상한치나 하한치 등을 이용하여 템플릿 프로그램 중의 플레이스홀더를 치환하고, PLC 제어 프로그램을 작성한다. 도 10에 도시된 데이터 수집 프로그램 예 "current := N1_input * LREAL#0.001 +LREAL#0;"에서는, "():= () * LREAL#() +LREAL#();"가 템플릿 프로그램에 대응하고, "current", "N1_input", "0.001", "0"의 부분이 플레이스홀더가 된다.
즉, 템플릿 프로그램(1112)에는, 기기 정보 파라미터(1111)를 편입하는 편입란(플레이스홀더)이 마련되어 있고, 프로그램 생성부(117)는, 템플릿 프로그램(1112)의 편입란에 기기 정보 파라미터(1111)를 편입함으로써 데이터 수집 프로그램을 생성한다. 또한, 프로그램의 생성에서는 플레이스홀더의 단순한 치환뿐만 아니라, 파라미터에 의해 분기나 반복 처리(기기 정보 파라미터(1111)에 대응하는 처리)를 행해도 된다. 도 11에 프로그램의 생성 처리의 예를 나타낸다. 도 11의 (a)는, 템플릿 프로그램(1112)의 편입란에 기기 정보 파라미터(1111)를 편입함으로써 데이터 수집 프로그램을 생성하는 예로서, 정수로 취득된 데이터의 소수점을 이동하여 실수로 변환함으로써 데이터 수집 프로그램을 생성하고 있다. 또한, 도 11의 (b)는, 기기 정보 파라미터(1111)에 의해 분기하는(파라미터의 값에 따라 출력하는 처리를 변경하는) 예로서, 크기(데이터 길이)와 부호의 유무에 따른 캐스트 처리에 의해 데이터 수집 프로그램을 생성하고 있다. 또한, 도 11의 (c)는, 반복(파라미터에서 지정한 횟수만큼 반복 처리를 출력함)의 예로서, 프로세스 데이터 길이에 따른 엔디안 변환을 행하여 데이터 수집 프로그램을 생성하고 있다.
또한, 프로그램 생성부(117)는, 공업량 변수, 물리량에 기초하여 데이터베이스 정의 프로그램을 작성한다. 즉, 프로그램 생성부(117)는, 말단 기기(230)에 대응하는 템플릿 프로그램(1112) 및 기기 정보 파라미터(1111)를 이용하여, 수집한 데이터를 저장하는 데이터베이스를 정의하기 위한 데이터베이스 정의 프로그램을 생성한다.
(단계 S119)
S119에서, 프로그램 생성부(117)는, 자동 생성된 프로그램을, 프로그램 엑스포트부(140)를 통해 PLC(210)에 엑스포트한다. 자동 생성된 프로그램은, 예를 들어 ST 언어 등 PLC 제어를 위한 프로그래밍 언어를 이용하여 기술되어 있다.
(단계 S121)
S121에서, 사용자는, 자동 생성된 프로그램을 편집하여, 현장의 상황에 맞추어 수정해도 된다. 현장의 환경이나 기기의 개체차에 따라, 파라미터를 수정할 수 있는 것 외에, 데이터베이스 정의나 통신 제어 프로그램을 편집해도 된다.
도 12는, 자동 생성된 프로그램에 대해 값을 구성한 경우의 예를 나타내는 도면이다. 예를 들어, 작업자는 현장의 상황에 따라 선형 변환시에 일정한 값 0.02를 더하는 것이 적당하다고 판단한 경우, 변수 Current에 값을 대입하는 식의 가장 오른쪽 항에서 0.02를 가산하도록 식을 편집할 수 있다.
이상과 같이, 본 실시형태에서는, 용이하게 데이터 수집 프로그램을 생성할 수 있으므로, 작업자의 부담을 경감할 수 있다.
[작용·효과]
상술한 바와 같이 본 실시형태에 관한 프로그램 자동 생성부(110)는, 데이터 수집에 관한 처리를 PLC(210)에 실행시키는 데이터 수집 프로그램을 생성하는 프로그램 자동 생성부(110)로서, 데이터 수집에 관한 각종 처리에 대응한 템플릿 프로그램(1112)과, 데이터 수집의 대상이 되는 말단 기기(230)마다 그 말단 기기(230)에 대응한 기기 정보 파라미터(1111)를 저장한 기기 정보 라이브러리(111); 사용자로부터, 말단 기기(230)의 입력을 접수하는 사용자 인터페이스부(120); 및 사용자 인터페이스부(120)에서 접수한 말단 기기(230)에 대응하는 템플릿 프로그램(1112) 및 기기 정보 파라미터(1111)를 이용하여, PLC(210)에 의해 말단 기기(230)로부터 데이터를 수집하기 위한 데이터 수집 프로그램을 생성하는 프로그램 생성부(117);를 구비하는 구성이다.
이와 같이, 본 실시형태에서는, 데이터 수집 프로그램의 생성에 필요한 템플릿 프로그램(1112)과 기기 정보 파라미터(1111)를 나누어 기기 정보 라이브러리(111)에 저장하고 있다. 기기 정보 파라미터(1111)를 나눔으로써, 말단 기기(230)가 아날로그 기기인지 디지털 기기인지 등의 차이를 고려하여 말단 기기(230)마다 기기 정보 파라미터(1111)를 설정할 수 있다. 이에 의해, 사용자는 말단 기기(230)를 선택하는 것만으로, 그 말단 기기(230)에 적합한 데이터 수집 프로그램을 생성시킬 수 있다.
또한, 데이터 수집 프로그램은, 말단 기기(230)와의 통신 제어도 포함한 제어 프로그램이므로, 말단 기기(230)와의 통신에 관한 설정을 별도 행할 필요도 없다.
또한, 프로그램 자동 생성부(110)는, PLC(210)로부터, PLC(210)와 접속되어 있는 중계 기기(220)의 정보(네트워크 구성 정보)를 취득하고, 그 중계 기기(220)에 접속될 수 있는 기기를, 말단 기기(230)의 선택 후보로서 표시부에 표시한다.
이에 의해, 선택 후보가 되는 말단 기기(230)가 한정되어 표시된다. 사용자는 한정된 표시 중에서 대상 기기가 되는 말단 기기(230)를 선택하면 되고, 대상 기기를 용이하게 선택할 수 있다.
나아가 프로그램 자동 생성부(110)는, 선택 후보로부터 선택된 말단 기기(230)에 대응하는 기기 정보 파라미터(1111)에 관한 수치의 입력을 접수하는 수치 입력 화면을 표시시킨다.
이에 의해, 사용자는, 기기 정보 파라미터(1111)에 관한 수치를 입력할 수 있으므로, 말단 기기(230)의 상황, 현장의 상황 등에 맞춘 미세한 설정을 행하는 것이 가능해진다.
§4 변형예
이상, 본 개시의 실시형태를 상세하게 설명하였지만, 전술까지의 설명은 모든 점에서 본 개시의 예시에 불과하다. 본 개시의 범위를 벗어나지 않고 여러 가지의 개량이나 변형을 행할 수 있음은 물론이다. 예를 들어, 이하와 같은 변경이 가능하다. 또, 이하에서는, 상기 실시형태와 동일한 구성요소에 관해서는 동일한 부호를 이용하고, 상기 실시형태와 동일한 점에 대해서는 적절히 설명을 생략하였다. 이하의 변형예는 적절히 조합 가능하다.
<4.1>
예를 들어, 기기 정보 라이브러리(111)는, 도 2에 도시된 바와 같이, 프로그램 자동 생성부(110)와 같이 단말 장치(100)의 내부에 존재하도록 구성되어 있다. 그러나, 기기 정보 라이브러리를 구비하는 단말의 구성은 이러한 예에 한정될 필요는 없고, 실시형태에 따라 적절히 선택되어도 된다. 예를 들어, 기기 정보 라이브러리(111)는 단말 장치(100)의 외부 장치에 존재하여, LAN이나 인터넷 등 네트워크 경유로 접속되고, 기기 정보 라이브러리 검색부(114)는 네트워크 경유로 기기 정보 라이브러리(111)에 접속한다는 구성을 채용해도 된다.
또는, 기기 정보 라이브러리(111)가 단말 장치(100) 밖의 서버 데이터베이스와 단말 장치(100) 내의 로컬 데이터베이스로 나누어지고, 단말 장치(100) 내의 로컬 데이터베이스가 적절히 작성 및 갱신되는 구성으로 해도 된다. 로컬 데이터베이스가 보유하는 정보는 서버 데이터베이스의 일부이어도 되고, 전부이어도 된다. 기기 정보 라이브러리(111)의 갱신 타이밍, 프로그램 자동 생성부(110)가 사용하는 데이터베이스의 우선도, 서버 데이터베이스와 로컬 데이터베이스의 관계 등은 실시형태에 따라 적절히 변경되어도 된다.
<4.2>
또한, 도 1에 도시된 프로그램 자동 생성부(110) 중 기기 정보 라이브러리(111) 이외의 각 요소도 동일 단말 상에서 실행되도록 구성되어 있다. 바꾸어 말하면, 사용자가 조작하는 단말 상에서 프로그램 자동 생성부의 각 요소가 실행되도록 구성되어 있지만, 일부의 요소를 별도의 장치에서 실행하는 구성으로 해도 된다. 예를 들어, 프로그램 생성부(117)가, LAN이나 인터넷 등 네트워크를 경유하는 다른 장치, 예를 들어 클라우드 상의 장치에서 실행되어도 된다. 이 경우, 프로그램 자동 생성부(110)는, 공업치 변환 관리 맵(113)에 포함되는 정보 등 프로그램 생성에 필요한 정보를 송신하여, 프로그램을 생성시킨다.
또한, 예를 들어, 사용자 인터페이스에 관한 요소와 다른 요소를 프론트엔드부와 백엔드부로 분할하고, 백엔드부가 네트워크를 경유하는 다른 장치상에서 실행되는 구성으로 해도 된다. 이 경우, 프론트엔드부에는 사용자 인터페이스부(120)의 기능이 포함되고, 프론트엔드부로부터의 입력 지시에 따라, 백엔드부는 동작을 실행한다.
<4.3>
또한, 상기 실시형태에서는, 도 2에 도시된 바와 같이, 데이터베이스(410)는 단말 장치(100)와는 별도의 장치에 저장되도록 구성되어 있다. 바꾸어 말하면, 생산 시스템(200)에 데이터베이스 저장 장치(400)가 접속되어 있고, 단말 장치(100)가 생산 시스템(200)의 PLC(210)와 접속되어 있다. 그러나, 데이터베이스(410)는, 데이터베이스(410)에의 저장을 행하는 PLC(210)의 제어 프로그램 및 데이터베이스 정의 프로그램을 송신 가능한 장치에 있으면 되고, 예를 들어 단말 장치(100)의 내부에 데이터베이스(410)가 배치되어도 된다.
또한, 변형예 <4.1> 및 <4.2>에 나타내는 바와 같이, 단말 장치(100)는 프론트엔드부만을 구비하는 구성으로 해도 되고, 예를 들어 생산 시스템(200) 및 데이터베이스 저장 장치(400)가 접속된 네트워크 경유에 단말 장치(100)를 접속하는 구성으로 해도 된다. 이 경우, 백엔드부, 기기 정보 라이브러리(111) 및 데이터베이스(410)는 데이터베이스 저장 장치(400)에 저장되고, 백엔드부는 데이터베이스 저장 장치(400) 상에서 실행된다.
<4.4>
또한, 상기 실시형태에서는, 도 2에 도시된 바와 같이, 프로그램 자동 생성부(110)는 PLC 서포트부(150)와는 별도의 어플리케이션으로서 실장되어 있지만, PLC 서포트부(150)의 기능의 일부로서 프로그램 자동 생성부(110)의 기능이 실행되어도 된다.
〔소프트웨어에 의한 실현예〕
단말 장치(100)의 프로그램 자동 생성부(특히 기기 정보 라이브러리 검색부(114), 대조 처리부(115), 프로그램 생성부(117) 및 공업치 변환 관리부(118))는, 집적 회로(IC칩) 등에 형성된 논리 회로(하드웨어)에 의해 실현해도 되고, 소프트웨어에 의해 실현해도 된다.
후자의 경우, 단말 장치(100)는, 각 기능을 실현하는 소프트웨어인 프로그램의 명령을 실행하는 컴퓨터를 구비하고 있다. 이 컴퓨터는, 예를 들어 하나 이상의 프로세서를 구비하고 있음과 아울러, 상기 프로그램을 기억한 컴퓨터 판독 가능한 기록 매체를 구비하고 있다. 그리고, 상기 컴퓨터에서, 상기 프로세서가 상기 프로그램을 상기 기록 매체로부터 판독하여 실행함으로써, 본 개시의 목적이 달성된다. 상기 프로세서로서는, 예를 들어 CPU(Central Processing Unit)를 이용할 수 있다. 상기 기록 매체로서는, 「일시적이 아닌 유형의 매체」, 예를 들어 ROM(Read Only Memory) 등 외에 테이프, 디스크, 카드, 반도체 메모리, 프로그래머블한 논리 회로 등을 이용할 수 있다. 또한, 상기 프로그램을 전개하는 RAM(Random Access Memory) 등을 더 구비하고 있어도 된다. 또한, 상기 프로그램은, 이 프로그램을 전송 가능한 임의의 전송 매체(통신 네트워크나 방송파 등)를 통해 상기 컴퓨터에 공급되어도 된다. 또, 본 개시의 일 형태는, 상기 프로그램이 전자적인 전송에 의해 구현화된, 반송파에 매립된 데이터 신호의 형태로도 실현될 수 있다.
〔부기 사항〕
본 발명의 일 측면에 관한 프로그램 생성 장치는, 데이터 수집에 관한 처리를 PLC(Programmable Logic Controller)에 실행시키는 데이터 수집 프로그램을 생성하는 프로그램 생성 장치로서, 상기 데이터 수집에 관한 각종 처리에 대응한 템플릿 프로그램과, 데이터 수집의 대상이 되는 대상 기기마다 그 대상 기기에 대응한 기기 파라미터를 저장한 기억부; 사용자로부터, 상기 대상 기기의 입력을 접수하는 접수부; 및 상기 접수부에서 접수한 상기 대상 기기에 대응하는 상기 템플릿 프로그램 및 상기 기기 파라미터를 이용하여, 상기 PLC에 의해 상기 대상 기기로부터 데이터를 수집하기 위한 데이터 수집 프로그램을 생성하는 프로그램 생성부;를 구비한다.
상기의 구성에 의하면, 대상 기기를 입력하는 것만으로 PLC에 의한 데이터 수집 프로그램을 생성할 수 있다. 따라서, 종래와 비교하여 작업자의 부담을 대폭으로 경감하고, PLC에 의한 데이터 수집 프로그램을 일정한 품질 수준과 통일된 출력 형식을 담보하여 생성할 수 있다.
상기 일 측면에 관한 프로그램 생성 장치에서는, 상기 템플릿 프로그램에는, 상기 기기 파라미터이거나 또는 이 기기 파라미터에 대응하는 처리를 편입하는 편입란이 마련되어 있고, 상기 프로그램 생성부는, 상기 템플릿 프로그램의 상기 편입란에 상기 기기 파라미터이거나 또는 이 기기 파라미터에 대응하는 처리를 편입함으로써 상기 데이터 수집 프로그램을 생성하는 것이어도 된다.
상기의 구성에 의하면, 템플릿 프로그램에 기기 파라미터이거나 또는 이 기기 파라미터에 대응하는 처리를 편입하는 것만으로 데이터 수집 프로그램을 생성할 수 있으므로, 데이터 수집 프로그램을 용이하게 생성할 수 있다.
상기 일 측면에 관한 프로그램 생성 장치에서는, 상기 프로그램 생성부는, 상기 대상 기기로부터 데이터를 취득하기 위한 통신을 제어하는 프로그램을 포함하여 상기 데이터 수집 프로그램을 생성하는 것이어도 된다.
상기의 구성에 의하면, 대상 기기와의 통신을 제어하는 프로그램을 포함하므로, 데이터를 출력하는 프로토콜이 설정되지 않은 대상 기기로부터이어도, 적절히 데이터를 취득할 수 있다.
상기 일 측면에 관한 프로그램 생성 장치에서는, 상기 PLC로부터, 이 PLC와 접속되어 있는 중계 장치의 정보를 취득하고, 그 중계 장치에 접속될 수 있는 기기를, 상기 대상 기기의 선택 후보로서 표시부에 표시하는 것이어도 된다.
상기의 구성에 의하면, PLC와 접속되어 있는 중계 장치에 접속될 수 있는 기기를 대상 기기의 선택 후보로 한다. 이에 의해 대상 기기가 될 수 있는 기기만을 후보로서 표시하여, 사용자에게 선택하게 할 수 있으므로, 사용자는 대상 기기의 입력을 용이하게 행할 수 있다.
상기 일 측면에 관한 프로그램 생성 장치에서는, 상기 선택 후보로부터 선택된 상기 대상 기기에 대응하는 상기 기기 파라미터에 관한 수치 및 문자열 중 적어도 어느 하나의 입력을 접수하는 수치 입력 화면을 표시하는 것이어도 된다.
상기의 구성에 의하면, 기기 파라미터에 관한 수치 및 문자열 중 적어도 어느 하나의 입력을 접수한다. 이에 의해, 대상 기기의 상황, 현장의 상황 등에 따라 미세하게 설정한 기기 파라미터를 이용하여 데이터 수집 프로그램을 생성할 수 있다. 또, 수치 및 문자열의 입력은 숫자 및 문자열을 직접 입력하는 것이어도 되고, 슬라이더나 업다운 버튼에 의한 입력으로도 된다.
상기 일 측면에 관한 프로그램 생성 장치에서는, 상기 프로그램 생성부는, 상기 접수부에서 접수한 상기 대상 기기에 대응하는 상기 템플릿 프로그램 및 상기 기기 파라미터를 이용하여, 수집한 데이터를 저장하는 데이터베이스를 정의하기 위한 데이터베이스 정의 프로그램을 생성하는 것이어도 된다.
상기의 구성에 의하면, 처리의 내용과 대상 기기를 입력하는 것만으로 데이터베이스 정의 프로그램을 생성할 수 있다. 따라서, 종래와 비교하여 작업자의 부담을 대폭으로 경감하고, 데이터베이스 정의 프로그램을 생성할 수 있다.
상기 일 측면에 관한 프로그램 생성 장치에서는, 상기 접수부는, 상기 프로그램 생성부가 생성한 상기 데이터 수집 프로그램에 대한 수정 지시를 접수하는 것이어도 된다.
상기의 구성에 의하면, 프로그램 생성부가 생성한 프로그램을 수정할 수 있다. 따라서, 상황, 기기, 처리 내용 등에 의해 미세하게 대응한 프로그램을 생성할 수 있다.
본 개시는 상술한 각 실시형태에 한정되는 것은 아니고, 청구항에 나타낸 범위에서 여러 가지의 변경이 가능하며, 다른 실시형태에 각각 개시된 기술적 수단을 적절히 조합하여 얻어지는 실시형태에 대해서도 본 개시의 기술적 범위에 포함된다.
100 단말 장치
110 프로그램 자동 생성부(프로그램 생성 장치)
111 기기 정보 라이브러리(기억부)
112 네트워크 구성 임포트부
1111 기기 정보 파라미터
1112 템플릿 프로그램
113 공업치 변환 관리 맵
114 기기 정보 라이브러리 검색부
115 대조 처리부
116 수정 입력 접수부
117 프로그램 생성부
120 사용자 인터페이스부(접수부)
200 생산 시스템
210 PLC
220 중계 기기(중계 장치)
230 말단 기기
400 데이터베이스 저장 장치
410 데이터베이스

Claims (10)

  1. 데이터 수집에 관한 처리를 PLC(Programmable Logic Controller)에 실행시키는 데이터 수집 프로그램을 생성하는 프로그램 생성 장치로서,
    상기 데이터 수집에 관한 각종 처리에 대응한 템플릿 프로그램과, 데이터 수집의 대상이 되는 대상 기기마다 그 대상 기기에 대응한 기기 정보 파라미터를 저장한 기억부;
    상기 PLC로부터, 이 PLC와 접속하고 있는 중계 장치의 정보를 취득하고, 그 중계 장치에 접속될 수 있는 기기를, 상기 대상 기기의 선택 후보로서 표시하는 표시부;
    사용자로부터, 상기 표시부에 표시한 대상 기기의 후보로부터 상기 사용자에 의해 선택된 대상 기기의 입력을 접수하는 접수부;
    상기 접수부에서 접수한 상기 대상 기기에 대응하는 상기 템플릿 프로그램 및 상기 기기 정보 파라미터를 이용하여, 상기 PLC에 의해 상기 대상 기기로부터 데이터를 수집하기 위한 데이터 수집 프로그램을 생성하는 프로그램 생성부; 및
    네트워크 구성 정보와 기기 정보 파라미터를 대조하여, 예상되는 기기 형식의 후보를 좁히는 대조 처리부를 구비하고,
    상기 대조 처리부는,
    좁혀진 결과를 선택지로서 사용자에게 제시하는 선택지 제시부; 및
    말단 기기로서 중계 장치에 접속될 수 있는 기기 중 기기 종별과 제조사가 지정된 기기로 좁혀 사용자에게 제시하는 한정부를 포함하며,
    상기 대조 처리부에 의해 좁혀진 후보 중에서, 사용자의 선택에 의해 실재하는 말단 기기가 선택되는, 프로그램 생성 장치.
  2. 청구항 1에 있어서,
    상기 템플릿 프로그램에는, 상기 기기 정보 파라미터이거나 또는 이 기기 정보 파라미터에 대응하는 처리를 편입하는 편입란이 설치되어 있고,
    상기 프로그램 생성부는, 상기 템플릿 프로그램의 상기 편입란에 상기 기기 정보 파라미터이거나 또는 이 기기 정보 파라미터에 대응하는 처리를 편입함으로써 상기 데이터 수집 프로그램을 생성하는, 프로그램 생성 장치.
  3. 청구항 1 또는 청구항 2에 있어서,
    상기 프로그램 생성부는, 상기 대상 기기로부터 데이터를 취득하기 위한 통신을 제어하는 프로그램을 포함하여 상기 데이터 수집 프로그램을 생성하는, 프로그램 생성 장치.
  4. 삭제
  5. 청구항 1에 있어서,
    상기 선택 후보로부터 선택된 상기 대상 기기에 대응하는 상기 기기 정보 파라미터에 관한 수치 및 문자열 중 적어도 어느 하나의 입력을 접수하는 수치 입력 화면을 표시하는, 프로그램 생성 장치.
  6. 청구항 1 또는 청구항 2에 있어서,
    상기 프로그램 생성부는, 상기 접수부에서 접수한 상기 대상 기기에 대응하는 상기 템플릿 프로그램 및 상기 기기 정보 파라미터를 이용하여, 수집한 데이터를 저장하는 데이터베이스를 정의하기 위한 데이터베이스 정의 프로그램을 생성하는, 프로그램 생성 장치.
  7. 청구항 1 또는 청구항 2에 있어서,
    상기 접수부는, 상기 프로그램 생성부가 생성한 상기 데이터 수집 프로그램에 대한 수정 지시를 접수하는, 프로그램 생성 장치.
  8. 데이터 수집에 관한 처리를 PLC(Programmable Logic Controller)에 실행시키는 데이터 수집 프로그램을 생성하는 프로그램 생성 장치의 제어 방법으로서,
    상기 데이터 수집에 관한 각종 처리에 대응한 템플릿 프로그램과, 데이터 수집의 대상이 되는 대상 기기마다 그 대상 기기에 대응한 기기 정보 파라미터가 기억부에 저장되어 있고,
    상기 PLC로부터, 이 PLC와 접속하고 있는 중계 장치의 정보를 취득하는 취득 단계;
    상기 취득 단계에서 취득한 상기 중계 장치에 접속될 수 있는 기기를, 상기 대상 기기의 선택 후보로서 표시부에 표시하는 표시 단계;
    사용자로부터, 상기 표시 단계에서 상기 표시부에 표시한 대상 기기의 후보로부터 상기 사용자에 의해 선택된 대상 기기의 입력을 접수하는 접수 단계;
    상기 접수 단계에서 접수한 상기 대상 기기에 대응하는 상기 템플릿 프로그램 및 상기 기기 정보 파라미터를 이용하여, 상기 PLC에 의해 상기 대상 기기로부터 데이터를 수집하기 위한 데이터 수집 프로그램을 생성하는 프로그램 생성 단계; 및
    네트워크 구성 정보와 기기 정보 파라미터를 대조하여, 예상되는 기기 형식의 후보를 좁히는 대조 처리 단계를 포함하고,
    상기 대조 처리 단계는,
    좁혀진 결과를 선택지로서 사용자에게 제시하는 선택지 제시 단계; 및
    말단 기기로서 중계 장치에 접속될 수 있는 기기 중 기기 종별과 제조사가 지정된 기기로 좁혀 사용자에게 제시하는 한정 단계를 포함하며,
    대조 처리부에 의해 좁혀진 후보 중에서, 사용자의 선택에 의해 실재하는 말단 기기가 선택되는, 프로그램 생성 장치의 제어 방법.
  9. 청구항 1에 기재된 프로그램 생성 장치로서 컴퓨터를 기능시키기 위한 매체에 저장된 제어 프로그램으로서, 상기 프로그램 생성부로서 상기 컴퓨터를 기능시키기 위한, 매체에 저장된 제어 프로그램.
  10. 청구항 9에 기재된 제어 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
KR1020217007425A 2018-10-04 2019-10-02 프로그램 생성 장치, 프로그램 생성 장치의 제어 방법, 제어 프로그램, 및 기록 매체 KR102553315B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018189375A JP2020057332A (ja) 2018-10-04 2018-10-04 プログラム生成装置、プログラム生成装置の制御方法、制御プログラム、および記録媒体。
JPJP-P-2018-189375 2018-10-04
PCT/JP2019/038962 WO2020071439A1 (ja) 2018-10-04 2019-10-02 プログラム生成装置、プログラム生成装置の制御方法、制御プログラム、および記録媒体。

Publications (2)

Publication Number Publication Date
KR20210042971A KR20210042971A (ko) 2021-04-20
KR102553315B1 true KR102553315B1 (ko) 2023-07-07

Family

ID=70054808

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217007425A KR102553315B1 (ko) 2018-10-04 2019-10-02 프로그램 생성 장치, 프로그램 생성 장치의 제어 방법, 제어 프로그램, 및 기록 매체

Country Status (6)

Country Link
US (1) US20220035331A1 (ko)
EP (1) EP3862826A4 (ko)
JP (1) JP2020057332A (ko)
KR (1) KR102553315B1 (ko)
CN (1) CN112654940A (ko)
WO (1) WO2020071439A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113485182A (zh) * 2021-06-30 2021-10-08 中冶华天工程技术有限公司 自动生成料场皮带流程控制程序的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050228517A1 (en) * 2004-04-13 2005-10-13 Omron Corporation Control system setting device
JP2013016021A (ja) * 2011-07-04 2013-01-24 Hitachi Ltd ラダープログラム作成装置およびラダープログラム作成方法
JP2017142767A (ja) * 2016-02-09 2017-08-17 富士電機株式会社 コントローラシステム、変数連携支援装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6850808B2 (en) * 1999-09-24 2005-02-01 Rockwell Software Inc. Method and system for developing a software program using compound templates
US6947798B2 (en) * 1999-09-24 2005-09-20 Rockwell Software Inc. System and method for developing software programs by way of multiple applications and users
US6449715B1 (en) * 1999-10-04 2002-09-10 Fisher-Rosemount Systems, Inc. Process control configuration system for use with a profibus device network
US6446202B1 (en) * 1999-10-04 2002-09-03 Fisher-Rosemount Systems, Inc. Process control configuration system for use with an AS-Interface device network
US8898633B2 (en) * 2006-08-24 2014-11-25 Siemens Industry, Inc. Devices, systems, and methods for configuring a programmable logic controller
JP4858112B2 (ja) * 2006-11-22 2012-01-18 旭硝子株式会社 制御プログラム生成方法及び制御プログラム生成装置
JP2009230606A (ja) 2008-03-25 2009-10-08 Hitachi Software Eng Co Ltd ソースコードテンプレート生成装置
JP5027911B2 (ja) * 2010-10-06 2012-09-19 関東自動車工業株式会社 プログラム作成方法及び作成装置
DE102011108964A1 (de) * 2011-07-29 2013-01-31 Robert Bosch Gmbh Verfahren zur automatischen Erzeugung von Anwenderprogrammcode für eine speicherprogrammierbare Steuerung zur Steuerung einer Maschine
KR20130033479A (ko) 2011-08-22 2013-04-04 서용성 전자쿠폰 서비스 시스템 및 방법
JP5942446B2 (ja) * 2012-02-01 2016-06-29 オムロン株式会社 サポート装置およびサポートプログラム
DE112012006925B4 (de) * 2012-10-25 2016-09-01 Mitsubishi Electric Corporation Systemkonstruktions-Unterstützungswerkzeug und System
US9922030B2 (en) * 2014-12-15 2018-03-20 Mitsubishi Electric Corporation Information-system-construction support tool and information-system-construction support program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050228517A1 (en) * 2004-04-13 2005-10-13 Omron Corporation Control system setting device
JP2013016021A (ja) * 2011-07-04 2013-01-24 Hitachi Ltd ラダープログラム作成装置およびラダープログラム作成方法
JP2017142767A (ja) * 2016-02-09 2017-08-17 富士電機株式会社 コントローラシステム、変数連携支援装置

Also Published As

Publication number Publication date
EP3862826A1 (en) 2021-08-11
WO2020071439A1 (ja) 2020-04-09
CN112654940A (zh) 2021-04-13
JP2020057332A (ja) 2020-04-09
US20220035331A1 (en) 2022-02-03
EP3862826A4 (en) 2022-07-06
KR20210042971A (ko) 2021-04-20

Similar Documents

Publication Publication Date Title
RU2417391C2 (ru) Устройства, системы и способы конфигурирования программируемого логического контроллера
JP5636378B2 (ja) 安全コントローラ用のユーザプログラムを作成するための方法および機器ならびにコンピュータプログラム
US8032232B2 (en) Natively retaining project documentation in a controller
US20110302511A1 (en) Method for providing an operating menu for a field device of process automation technology
CN110244936B (zh) 用于支持visio流程图自动导入dcs算法组态软件的方法和装置
US10417836B2 (en) Device maintenance apparatus, device maintenance method, device maintenance program, and recording medium
KR102553315B1 (ko) 프로그램 생성 장치, 프로그램 생성 장치의 제어 방법, 제어 프로그램, 및 기록 매체
JP2021120903A (ja) プログラミング装置、およびプログラム
EP3185094B1 (en) Process control system and development system for human machine interface
JP7276581B2 (ja) プログラム生成装置、プログラム生成装置の制御方法、制御プログラム、および記録媒体。
AU2006336827A1 (en) Plant control system control program creation/display device
CN113614659A (zh) 开发支持装置、开发支持装置的控制方法、信息处理程序、及记录介质
US20210149938A1 (en) Information processing device and setting device
US20180088914A1 (en) Method for supporting program creation and apparatus for supporting program creation
US20210026337A1 (en) Method for Configuring an Industrial Automation Component, Industrial Automation Component, Computer Program and Computer Readable Medium
EP3557415A1 (en) Display control apparatus, program and display controlling method
US20220342376A1 (en) Apparatus and method for extracting common command information from plc ladder information
CN116028051A (zh) 自动化语言程序的可视化开发方法、系统、电子设备及存储介质
CN117215585B (zh) 一种可视化描述以及动态控制界面组件属性的方法及装置
KR20230118032A (ko) 프로토콜 드라이버 작성 장치
KR100423742B1 (ko) 순차기능챠트에 의한 전용 제어 시스템
JP2021144521A (ja) サポート装置、サポートプログラムおよびサポート方法
JP2003223204A (ja) プログラマブルコントローラのプログラミング方法およびその装置並びに記憶媒体
CN117742693A (zh) 一种基于plc程序自动生成工业设备hmi界面的系统和方法
CN117193600A (zh) 表单构建的方法、装置、介质、设备和程序产品

Legal Events

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