KR102593008B1 - Opc ua를 이용한 분산형 스마트 팩토리 운영 방법 및 장치 - Google Patents

Opc ua를 이용한 분산형 스마트 팩토리 운영 방법 및 장치 Download PDF

Info

Publication number
KR102593008B1
KR102593008B1 KR1020190094155A KR20190094155A KR102593008B1 KR 102593008 B1 KR102593008 B1 KR 102593008B1 KR 1020190094155 A KR1020190094155 A KR 1020190094155A KR 20190094155 A KR20190094155 A KR 20190094155A KR 102593008 B1 KR102593008 B1 KR 102593008B1
Authority
KR
South Korea
Prior art keywords
local
server unit
opc
event
message
Prior art date
Application number
KR1020190094155A
Other languages
English (en)
Other versions
KR20210015387A (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 한국전자통신연구원
Priority to KR1020190094155A priority Critical patent/KR102593008B1/ko
Publication of KR20210015387A publication Critical patent/KR20210015387A/ko
Application granted granted Critical
Publication of KR102593008B1 publication Critical patent/KR102593008B1/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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by the network communication
    • 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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/4183Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by data acquisition, e.g. workpiece identification
    • 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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/41845Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by system universality, reconfigurability, modularity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/12Arrangements for remote connection or disconnection of substations or of equipment thereof
    • 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

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Factory Administration (AREA)

Abstract

OPC UA(Open Platform Communications Unified Architecture)를 이용한 분산형 스마트 팩토리 운영 방법 및 장치가 개시된다. 상기 분산형 스마트 팩토리 운영 방법은, 로컬 또는 원격으로 통신 세션(communication session)을 연결하는 단계, 연결된 통신 세션을 기초로 적어도 하나의 생산 장비가 수행하는 공정을 모니터링하는 단계, 모니터링 결과 미리 설정된 조건에 따른 이벤트를 감지하는 단계, 감지된 이벤트의 처리를 위한 메시지를 생성하는 단계 및 생성된 메시지를 로컬 또는 원격에 위치한 OPC UA 서버부로 전송하는 단계를 포함할 수 있다.

Description

OPC UA를 이용한 분산형 스마트 팩토리 운영 방법 및 장치{METHOD AND APPARATUS FOR DISTRIBUTED SMART FACTORY OPERATION USING OPC UA}
본 발명은 OPC UA(Open Platform Communications Unified Architecture)를 이용한 분산형 스마트 팩토리 운영 방법 및 장치에 관한 것으로, 더욱 상세하게는, OPC UA를 이용하여 공장 내 하위 계층에 위치한 분산형 플랫폼 서버를 통해 개별 생산 장비들에 독자적인 컴퓨팅 기능을 지원하며, 분산형 플랫폼 서버를 통해 개별 생산 장비들 상호간에 자유로운 메시지 교환을 가능하게 하여 수평적 상호 작용을 지원하는 기술에 관한 것이다.
오늘날의 IoT(Internet of Things) 기술은 현실 세계의 모든 사물, 공간 및 환경을 네트워크로 연결하고 상호작용하는 초 연결사회를 위한 핵심 기술로 주목받고 있다. 제조 산업 분야도 IoT 기술을 생산 공정에 적용하여 보다 지능화된 생산 자동화를 실현하는 스마트 팩토리(smart factory)를 도입하는 사례가 증가하고 있다.
스마트 팩토리를 실현하기 위해서는 제조 공정에 참여하는 각종 생산 장비 및 IoT 센서들에서 발생된 데이터를 다른 생산 장비 및 상위 시스템과 수평적, 수직적으로 상호 교환하고, 교환된 데이터를 통합 및 분석할 수 있는 플랫폼 구조와 통신 환경이 필요하다.
현재 대부분의 스마트 팩토리는 클라우드 컴퓨팅 기반의 중앙 집중형 플랫폼을 활용하고 있는데, 이러한 중앙 집중형 플랫폼은, 방대한 양의 데이터를 중앙 서버에 저장하기 때문에 최하위 생산 장비로부터 최상위 클라우드 서버까지 데이터를 송수신하는 비용이 많고, 처리 시간이 지연되는 문제가 있다.
한편, OPC협회는 1996년에 PLC 특정 프로토콜(Modbus, Profibus 등)을 추상화해 HMI/SCADA와 상호작용할 수 있도록 표준 인터페이스(OLE for Process Control)를 발표하였다. 또한, 2006년 협회는 기존 OPC의 문제를 개선하고, 시스템에 독립적인 OPC UA(Open Platform Communications Unified Architecture)를 발표하였다.
OPC UA는 이종의 산업용 기기, 시스템 및 응용 서비스 등에 종속되지 않고 데이터 통합 및 교환을 가능하게 하는 플랫폼 독립적인 산업용 데이터 통신 표준이며, 소프트웨어 측면에서 독립성만이 아니라 하드웨어에 대해서도 독립적인 플랫폼을 구성할 수 있는 환경을 마련하고 있다. 또한, OPA UA는 기본적으로 클라이언트(Client), 서버(Server) 구조를 가지고 있어 센서 및 제어기와 같은 최하위 계층에 위치한 정보 제공자가 서버의 역할을 수행하며, 서버로부터 수집된 데이터를 상위 계층에서 분석, 응용하는 클라우드 서버와 같은 정보 소비자가 클라이언트의 역할을 수행하는 것이 일반적이다.
그런데, OPA UA를 이용하여 생산 장비 상호간 협업 과정에서 발생하는 데이터 교환을 수평적으로 수행하고, 상호 운용성을 확보하기 위해서는 세부적인 통신 절차와 운영 방안이 필요한 실정이다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, OPC UA를 이용한 분산형 스마트 팩토리 운영 방법을 제공하는 데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, OPC UA를 이용한 분산형 스마트 팩토리 운영 장치를 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 일 측면은, OPC UA를 이용한 분산형 스마트 팩토리 운영 방법을 제공한다.
상기 분산형 스마트 팩토리 운영 방법은, 로컬 OPC UA 클라이언트부와 로컬 OPC UA 서버부를 포함하는 OPC UA를 이용한 분산형 스마트 팩토리 운영 장치에서 수행될 수 있다.
상기 분산형 스마트 팩토리 운영 방법은, 로컬 또는 원격으로 통신 세션(communication session)을 연결하는 단계, 연결된 통신 세션을 기초로 적어도 하나의 생산 장비가 수행하는 공정을 모니터링하는 단계, 모니터링 결과 미리 설정된 조건에 따른 이벤트를 감지하는 단계, 감지된 이벤트의 처리를 위한 메시지를 생성하는 단계 및 생성된 메시지를 로컬 또는 원격에 위치한 OPC UA 서버부로 전송하는 단계를 포함할 수 있다.
상기 미리 설정된 조건에 따른 이벤트는, 상기 적어도 하나의 생산 설비들의 작업 상태, 자원 상태, 메시지의 요청 및 응답 상태를 포함할 수 있다.
상기 통신 세션을 연결하는 단계는, 상기 로컬 OPC UA클라이언부가 상기 로컬 OPC UA 서버부와 통신 세션을 연결하는 단계 및 상기 로컬 OPC UA 클라이언트부가 상기 로컬 OPC UA 서버부에 상기 미리 설정된 조건에 따른 이벤트를 등록하는 단계를 포함할 수 있다.
상기 이벤트를 감지하는 단계는, 상기 로컬 OPC UA 클라이언트부가 상기 로컬 OPC UA 서버부로부터 상기 이벤트를 지시하는 메시지를 수신하는 단계 및 상기 로컬 OPC UA 서버부에 등록된 생산 장비들에 대한 상태 정보를 상기 로컬 OPC UA 서버부를 통해 수신하는 단계를 포함할 수 있다.
상기 메시지를 생성하는 단계는, 상기 로컬 OPC UA 서버부를 통해 수신한 상태 정보를 기초로 로컬 처리 명령 메시지를 생성할 수 있다.
상기 생성된 메시지를 로컬 또는 원격에 위치한 OPC UA 서버부로 전송하는 단계는, 상기 로컬 OPC UA 클라이언트부가 상기 로컬 OPC UA 서버부에 상기 로컬 처리 명령 메시지를 전송하는 단계 및 상기 로컬 OPC UA 서버부가 상기 등록된 생산 장비들 중 적어도 하나에 대한 제어 명령을 발행하는 단계를 포함할 수 있다.
상기 통신 세션을 연결하는 단계는, 상기 로컬 OPC UA클라이언부가 복수의 원격 OPC UA 서버부와 통신 세션을 연결하는 단계를 포함할 수 있다.
상기 이벤트를 감지하는 단계는, 상기 로컬 OPC UA 클라이언트부가 상기 로컬 OPC UA 서버부로부터 상기 이벤트를 지시하는 메시지를 수신하는 단계 및 상기 복수의 원격 OPC UA 서버부 각각에 등록된 생산 장비들에 대한 상태 정보를 상기 복수의 원격 OPC UA 서버부를 통해 수신하는 단계를 포함할 수 있다.
상기 메시지를 생성하는 단계는, 상기 복수의 원격 OPC UA 서버부로부터 수신한 상태 정보를 기초로, 로컬 또는 원격으로 처리할지 여부를 결정하는 단계를 포함할 수 있다.
상기 생성된 메시지를 로컬 또는 원격에 위치한 OPC UA 서버부로 전송하는 단계는, 원격으로 처리하는 것으로 결정되면, 상기 복수의 원격 OPC UA 서버부 중 적어도 하나에 상기 이벤트에 대한 처리를 요청하는 원격 요청 메시지를 전송하는 단계를 포함할 수 있다.
상기 목적을 달성하기 위한 본 발명의 다른 측면은, OPC UA를 이용한 분산형 스마트 팩토리 운영 장치를 제공한다.
OPC UA를 이용한 분산형 스마트 팩토리 운영 장치는, 적어도 하나의 프로세서(processor) 및 상기 적어도 하나의 프로세서가 적어도 하나의 소프트웨어 모듈에 따라 적어도 하나의 단계를 수행하도록 지시하는 명령어들(isntructions)을 저장하는 메모리(memory)를 포함할 수 있다.
상기 적어도 하나의 소프트웨어 모듈은 로컬 OPC UA 서버부와 로컬 OPC UA 클라이언트부를 포함할 수 있다.
상기 적어도 하나의 단계는, 로컬 또는 원격으로 통신 세션(communication session)을 연결하는 단계, 연결된 통신 세션을 기초로 적어도 하나의 생산 장비가 수행하는 공정을 모니터링하는 단계, 모니터링 결과 미리 설정된 조건에 따른 이벤트를 감지하는 단계, 감지된 이벤트의 처리를 위한 메시지를 생성하는 단계 및 생성된 메시지를 로컬 또는 원격에 위치한 OPC UA 서버부로 전송하는 단계를 포함할 수 있다.
상기 미리 설정된 조건에 따른 이벤트는, 상기 적어도 하나의 생산 설비들의 작업 상태, 자원 상태, 메시지의 요청 및 응답 상태를 포함할 수 있다.
상기 통신 세션을 연결하는 단계는, 상기 로컬 OPC UA클라이언부가 상기 로컬 OPC UA 서버부와 통신 세션을 연결하는 단계 및 상기 로컬 OPC UA 클라이언트부가 상기 로컬 OPC UA 서버부에 상기 미리 설정된 조건에 따른 이벤트를 등록하는 단계를 포함할 수 있다.
상기 이벤트를 감지하는 단계는, 상기 로컬 OPC UA 클라이언트부가 상기 로컬 OPC UA 서버부로부터 상기 이벤트를 지시하는 메시지를 수신하는 단계 및 상기 로컬 OPC UA 서버부에 등록된 생산 장비들에 대한 상태 정보를 상기 로컬 OPC UA 서버부를 통해 수신하는 단계를 포함할 수 있다.
상기 메시지를 생성하는 단계는, 상기 로컬 OPC UA 서버부를 통해 수신한 상태 정보를 기초로 로컬 처리 명령 메시지를 생성할 수 있다.
상기 생성된 메시지를 로컬 또는 원격에 위치한 OPC UA 서버부로 전송하는 단계는, 상기 로컬 OPC UA 클라이언트부가 상기 로컬 OPC UA 서버부에 상기 로컬 처리 명령 메시지를 전송하는 단계 및 상기 로컬 OPC UA 서버부가 상기 등록된 생산 장비들 중 적어도 하나에 대한 제어 명령을 발행하는 단계를 포함할 수 있다.
상기 통신 세션을 연결하는 단계는, 상기 로컬 OPC UA클라이언부가 복수의 원격 OPC UA 서버부와 통신 세션을 연결하는 단계를 포함할 수 있다.
상기 이벤트를 감지하는 단계는, 상기 로컬 OPC UA 클라이언트부가 상기 로컬 OPC UA 서버부로부터 상기 이벤트를 지시하는 메시지를 수신하는 단계 및 상기 복수의 원격 OPC UA 서버부 각각에 등록된 생산 장비들에 대한 상태 정보를 상기 복수의 원격 OPC UA 서버부를 통해 수신하는 단계를 포함할 수 있다.
상기 메시지를 생성하는 단계는, 상기 복수의 원격 OPC UA 서버부로부터 수신한 상태 정보를 기초로, 로컬 또는 원격으로 처리할지 여부를 결정하는 단계를 포함할 수 있다.
상기 생성된 메시지를 로컬 또는 원격에 위치한 OPC UA 서버부로 전송하는 단계는, 원격으로 처리하는 것으로 결정되면, 상기 복수의 원격 OPC UA 서버부 중 적어도 하나에 상기 이벤트에 대한 처리를 요청하는 원격 요청 메시지를 전송하는 단계를 포함할 수 있다.
상기와 같은 본 발명에 따른 OPC UA를 이용한 분산형 스마트 팩토리 운영 방법 및 장치를 이용할 경우에는, 스마트 팩토리에서 하위 계층에 위치한 분산 플랫폼 서버가 개별 생산 장비들의 소규모 컴퓨팅 기능을 지원함으로써 다양한 이벤트와 실시간성을 요구하는 데이터 처리에 효율적으로 대처할 수 있다.
또한, 표준화된 메시지 교환 프로토콜을 이용함으로써 분산형 스마트 팩토리 운영 장치를 통해 개별 생산 장비 상호간 데이터 공유 및 협업을 효율적으로 지원함으로써 상호 운용성을 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 OPC UA를 이용한 분산형 스마트 팩토리 운영 방법이 수행되는 전체 환경을 나타낸 개념도이다.
도 2는 본 발명의 일 실시예에 따른 OPC UA를 이용한 분산형 스마트 팩토리 운영 장치를 기능적으로 도시한 개념도이다.
도 3은 본 발명의 일 실시예에 따른 OPC UA를 이용한 분산형 스마트 팩토리 운영 방법에 대한 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 OPC UA를 이용한 분산형 스마트 팩토리 운영 장치에서 OPC UA 클라이언트부와 OPC UA 서버부 사이의 동작을 나타낸 흐름도이다.
도 5a 내지 도 5b는 본 발명의 일 실시예에 따른 OPC UA를 이용한 분산형 스마트 팩토리 운영 장치가 외부에 위치한 다른 운영 장치와 원격으로 메시지 교환을 수행하는 절차에 대한 시퀀스도이다.
도 6은 본 발명의 일 실시예에 따른, OPC UA를 이용한 분산형 스마트 팩토리 운영 장치에 대한 하드웨어 구성을 나타낸 예시도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 OPC UA를 이용한 분산형 스마트 팩토리 운영 방법이 수행되는 전체 환경을 나타낸 개념도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 OPC UA(Open Platform Communications Unified Architecture)를 이용한 분산형 스마트 팩토리 운영 방법은 최하위 계층(110)에 제조로봇, 컨베이어 등과 같은 각종 생산 장비(Machines로 표기)와 운반용 크레인, 센서들(Sensors) 등(이하에서는 생산 장비로 통칭할 수 있음)이 위치할 수 있다. 또한, 이와 같이 최하위 계층(110)에, PLC(Programmable Logic Controller), DCS(Distributed Control System) 등과 같이 각종 생산 장비를 실행하고 생산 공정을 제어하는 제어기(Controller)가 위치할 수 있다.
2차 계층(120)에는 최하위 계층(110)에서 생산 장비들을 직접 제어하는 제어기들과 연동하여 각종 생산 장비들로부터 수신되는 데이터들을 실시간으로 모니터링하는 분산형 플랫폼 서버(distributed platform Server, 이하에서 OPC UA를 이용한 분산형 스마트 팩토리 운영 장치로 혼용하여 지칭할 수 있음)가 위치할 수 있다. 또한, 2차 계층(120)에는, 최하위계층(110)에 위치한 각종 생산 장비들에 대해 관리하고 작업하는 작업자(Operator)가 소지하거나 사용하는 HMI(Human-Machine Interface) 도구가 위치할 수 있다. 이러한 HMI 도구는 다수의 분산형 플랫폼 서버와 연동되어 있어, 그러한 다수의 분산형 플랫폼 서버를 통해 각종 생산 장비들과 통신할 수 있다.
3차 계층(130)에는 2차 계층(120)의 분산형 플랫폼 서버가 원격에 위치한 다른 스마트 팩토리와 정보를 공유하고, 협업을 수행할 수 있는 통신 중계 역할을 수행하는 게이트웨이(Gateway)가 위치할 수 있다.
최상위계층(140)에는 3차 계층(130)에 위치한 게이트웨이를 통해 스마트 팩토리에서 생성되는 다수의 데이터들을 집계(Data Aggregation)하고, 공장의 공정 진행 상태를 모니터링하며(Factory Monitoring), 수집된 데이터를 분석하고(Data Analytics), 빅 데이터로서 데이터베이스에 저장(BigData Database)하는 각종 응용 시스템이 위치할 수 있다.
이와 같이 본 발명의 일 실시예에서는 스마트 팩토리에서 각종 생산 장비들을 분산하여 관리하는 다수의 분산형 플랫폼 서버를 2차 계층(120)에서 배치함으로써, 생산 장비들 사이의 수평적 상호작용을 지원할 수 있다. 이하에서는 이러한 분산형 플랫폼 서버(또는 OPC UA를 이용한 분산형 스마트 팩토리 운영 장치와 혼용하여 지칭)에 대해 좀더 상세히 설명한다.
도 2는 본 발명의 일 실시예에 따른 OPC UA를 이용한 분산형 스마트 팩토리 운영 장치를 기능적으로 도시한 개념도이다.
도 2를 참조하면, OPC UA를 이용한 분산형 스마트 팩토리 운영 장치(200)는, OPC UA 서버부(210), OPC UA 클라이언트부(220), 세션 관리부(230), 이벤트 관리부(240), 메시지 처리부(250), 데이터 변환부(260) 및/또는 디바이스 제어부(270)를 포함할 수 있다.
OPC UA 서버부(210)는, 할당된 하나 이상의 생산 장비들로부터 발생되는 데이터를 수집하고, 사전에 정의된 이벤트 조건에 따라 생산 장비들을 모니터링하며, 특정 이벤트가 발생할 때 발생된 이벤트에 관한 정보를 OPC UA 클라이언트(220)로 전송할 수 있다. 또한, OPC UA 서버부(210)는, 생산 공정에 참여하는 각종 생산 장비들의 구성과 역할에 따라 사전에 정의된 데이터 구조, 메소드(Method) 및 이벤트 등을 저장하고 참조할 수 있다.
OPC UA 클라이언트부(220)는, 상기 OPC UA 서버부(210) 또는 원격에 위치한 다른 분산형 스마트 팩토리 운영 장치에 포함된 OPC UA 서버부와 세션 연결을 유지하면서, 각종 데이터(예를 들어 생산 장비들에 대한 상태 정보)를 수신할 수 있다. 또한, OPC UA 클라이언트부(220)는, 특정 이벤트를 OPC UA 서버부(210)로부터 확인하였을 때, 다른 분산형 스마트 팩토리 운영 장치와 메시지 교환을 통해 확인된 이벤트에 대한 대응처리를 수행할 수 있다.
세션 관리부(230)는, 공정에 참여하고 있는 생산 설비들을 담당하고 있는 다른 분산형 스마트 팩토리 운영 장치에 대한 정보(더욱 상세하게는 다른 분산형 스마트 팩토리 운영 장치의 OPC UA 서버부에 관한 정보)를 등록하고 관리할 수 있다. 따라서, OPC UA 클라이언트(220)는 세션 관리부(230)를 통해 다른 분산형 스마트 팩토리 운영 장치의 OPC UA 서버부에 관한 정보를 획득하고, 획득된 정보를 참조하여 외부의 분산형 스마트 팩토리 운영 장치와 통신할 수 있다.
이벤트 관리부(240)는, 각종 생산 설비들의 작업 상태, 메시지의 요청과 응답 상태, 생산 설비들의 자원 상태 등을 비롯하여 생산 설비들에게 발생할 수 있는 다수의 상태 변화들을 이벤트로 등록하고, 관리할 수 있다.
메시지 처리부(250)는, OPC UA 서버부(210)를 통해 수신되고 수집되는 각종 데이터 및 이벤트를 해석하고, 해석 결과에 기반하여 대응을 위한 응답 데이터를 생성하여 OPC UA 서버(210) 또는 데이터 변환부(260)로 전달할 수 있다.
데이터 변환부(260)는, 메시지 처리부(250)를 통해 전달받는 응답 데이터를 파싱(parsing)한 후, 사전에 정의된 데이터 포맷으로 변환하여 디바이스 제어부(270)로 제공할 수 있다.
디바이스 제어부(270)는 데이터 변환부(260)를 통해 제공받은 데이터를 기반으로 분산형 스마트 팩토리 운영 장치(200)가 관리하는 다수의 생산 설비들에 대한 물리적 제어 명령을 생성 및 관리할 수 있다.
도 2에 따른, 분산형 스마트 팩토리 운영 장치(200)의 구성요소들은 도 1에 따른 분산형 플랫폼 서버의 소프트웨어 모듈들을 표현한 것으로 해석될 수도 있다. 예를 들어, OPC UA 서버부(210)는 실제 서버를 의미하는 것이 아니라 OPC UA에 따른 서버(Server)로서의 기능을 수행하는 소프트웨어 기능 모듈로 해석될 수 있으나 반드시 이에 한정되는 것은 아니다.
또한, 여기서 세션 관리부(230), 이벤트 관리부(240), 메시지 처리부(250), 데이터 변환부(260), 디바이스 제어부(270)를 별도로 도시하였으나, 반드시 별도의 기능 모듈로 구현되어야 하는 것은 아니며, OPC UA 클라이언트부(220) 또는 OPC UA 서버부(210)에 전부 또는 일부가 포함되어 구현될 수도 있다. 예를 들어, 세션 관리부(230), 이벤트 관리부(240)는 OPC UA 클라이언트부(220)로 통합될 수 있고, 메시지 처리부(250), 데이터 변환부(260), 디바이스 제어부(270)는 OPC UA 서버부(210)로 통합될 수 있다.
이하에서 도 2에 따른 분산형 스마트 팩토리 운영 장치(200)의 동작을 OPC UA를 이용한 분산형 스마트 팩토리 운영 방법으로 지칭하고 좀더 상세히 설명한다.
도 3은 본 발명의 일 실시예에 따른 OPC UA를 이용한 분산형 스마트 팩토리 운영 방법에 대한 흐름도이다.
도 3을 참조하면, OPC UA(Open Platform Communications Unified Architecture)를 이용한 분산형 스마트 팩토리 운영 방법은, 로컬 또는 원격으로 통신 세션(communication session)을 연결하는 단계(S100), 연결된 통신 세션을 기초로 적어도 하나의 생산 장비가 수행하는 공정을 모니터링하는 단계(S110), 모니터링 결과 미리 설정된 조건에 따른 이벤트를 감지하는 단계(S120), 감지된 이벤트의 처리를 위한 메시지를 생성하는 단계(S130) 및 생성된 메시지를 로컬 또는 원격에 위치한 OPC UA 서버부로 전송하는 단계(S140)를 포함할 수 있다.
여기서, 도 3에 따른 OPC UA를 이용한 분산형 스마트 팩토리 운영 방법은, 도 2에 따른 분산형 스마트 팩토리 운영 장치(200) 또는 도 1에 따른 분산형 플랫폼 서버에 의해 수행될 수 있다. 더욱 상세하게 도 3에 따른 분산형 스마트 팩토리 운영 방법은, 도 2에 따른 분산형 스마트 팩토리 운영 장치(200)에 포함된 OPC UA 클라이언트부(220)에 의해 수행될 수 있다.
통신 세션을 연결하는 단계(S100)는, 로컬 또는 원격에 위치한 OPC UA 서버부와 세션 연결을 수행할 수 있다. 여기서 로컬에 위치한 OPC UA 서버부는, 도 3에 따른 단계들을 직접 수행하는 분산형 스마트 팩토리 운영 장치 내부의 소프트웨어 기능 모듈일 수 있고, 원격에 위치한 OPC UA 서버부는, 다른 분산형 스마트 팩토리 운영 장치 내부의 소프트웨어 기능 모듈일 수 있다.
메시지를 생성하는 단계(S130)는, 감지된 이벤트가 스스로 관리하는 생산 장비들에서 처리해야 하는 경우 로컬 처리 명령 메시지를 생성할 수 있고, 외부의 다른 분산형 스마트 팩토리 운영 장치가 관리하는 생산 설비들에서 처리되어야 할 필요가 있는 경우에는 원격 요청 메시지를 생성할 수 있다. 따라서, 로컬 처리 명령 메시지는 도 3에 따른 단계들을 수행하는 장치가 직접 관리 및 제어하는 생산 설비들의 제어를 위한 메시지일 수 있고, 원격 요청 메시지는 외부에 위치한 분산형 스마트 팩토리 운영 장치가 관리 및 제어하는 생산 설비들의 제어를 요청하는 메시지일 수 있다.
여기서 생성된 로컬 처리 명령 메시지는 단계 S140에서 로컬에 위치한 OPC UA 서버부로 전달되며, 원격 요청 메시지는 단계 S140에서 외부의 다른 분산형 스마트 팩토리 운영 장치의 OPC UA 서버부로 전달될 수 있다.
여기서 단계 S130 및 단계 S140은 감지된 이벤트를 처리할 수 있는 생산 장비가 결정될 때까지 반복될 수 있다.
이처럼, 본 발명의 일 실시예에 따른 분산형 스마트 팩토리 운영 장치는 감지된 이벤트에 대해 자신이 관리하는 생산 장비들을 제어하는 로컬 처리 과정이 필요할 수도 있고, 감지된 이벤트에 대해 다른 분산형 팩토리 운영 장치가 관리하는 생산 장비들에 제어를 요청하는 원격 처리 과정이 필요할 수도 있다.
도 4는 본 발명의 일 실시예에 따른 OPC UA를 이용한 분산형 스마트 팩토리 운영 장치에서 OPC UA 클라이언트부와 OPC UA 서버부 사이의 동작을 나타낸 흐름도이다.
앞에서 설명한 것처럼, 본 발명의 일 실시예에 따른 분산형 스마트 팩토리 운영 장치(200)는 각자의 내부에 OPC UA 클라이언트부(220) 및 로컬 OPC UA 서버부(210)를 포함할 수 있다. 이하에서는, 설명의 편의를 위해 하나의 운영 장치 내부에 위치한 OPC UA 클라이언트부 및 OPC UA 서버부를 로컬 OPC 클라이언트부 및 로컬 OPC UA 서버부로 지칭하고, 외부의 다른 운영 장치 내부에 위치한 OPC UA 클라이언트부 및 OPC UA 서버부를 원격 OPC 클라이언트부 및 원격 OPC UA 서버부로 지칭한다.
구체적으로 먼저, 로컬 OPC UA 클라이언트부(220)는, 로컬 OPC UA 서버부(210)에 접속하여 통신 세션 연결을 수행할 수 있다(S200, getLocalSession 함수로 표기). 다음으로, 로컬 OPC UA 클라이언트부(220)는, 연결된 통신 세션을 기초로 로컬 OPC UA 서버부(210)에 미리 설정된 조건에 따른 이벤트를 등록(S205, eventRegistration 함수로 표기)할 수 있다. 여기서 미리 설정된 조건에 따른 이벤트는, 각종 생산 설비들의 작업 상태, 메시지의 요청과 응답 상태, 생산 설비들의 자원 상태 등을 비롯하여 생산 설비들에게 발생할 수 있는 다수의 상태 변화들을 포함할 수 있다. 또한, 여기서 이벤트는 도 2에 따른 이벤트 관리부(240)를 통해 제공받을 수 있다.
단계 S210 이후에, 로컬 OPC UA 서버부(210)는 등록된 이벤트를 모니터링하고(S210), 로컬 OPC UA 클라이언트부(220)는, 로컬 OPC UA 서버부(210)를 통해 미리 설정된 조건에 따른 이벤트를 지시하는 메시지를 수신받을 수 있다(S220, eventTriggering 함수로 표기). 여기서 이벤트를 지시하는 메시지는, 해당 이벤트가 발생(또는 트리거링)되었음을 나타내는 메시지일 수 있다. 단계 S220 이후에 로컬 OPC UA 클라이언트부(220)는, 상기 로컬 OPC UA 서버부(210)에 등록된 생산 장비들에 대한 상태 정보를 상기 로컬 OPC UA 서버부(210)를 통해 수신할 수 있다(S225, readLocalState 함수로 표기).
다음으로, 로컬 OPC UA 클라이언트부(220)는, 상기 로컬 OPC UA 서버부(210)를 통해 수신한 상태 정보를 기초로 감지된 이벤트의 처리를 위한 메시지를 생성할 수 있다(S230, setRequestMessage 함수로 표기). 이때, 도 4에 따른 처리 과정은 로컬 처리를 전제로 하므로, 로컬 OPC UA 클라이언트부(220)는, 로컬 처리 명령 메시지를 생성할 수 있다.
다음으로, 로컬 OPC UA 클라이언트부(220)는 상기 로컬 OPC UA 서버부(210)에 생성된 로컬 처리 명령 메시지를 전송할 수 있고(S240, writeCommand 함수로 표기), 로컬 OPC UA 서버부(210)는 로컬 OPC UA 서버부(210)에 등록된 생산 장비들(즉, 직접 관리하고 있는 생산 장비들) 중 적어도 하나에 대한 제어 명령을 발행(publish)할 수 있다(S245, publishCommand 함수로 표기). 여기서 제어 명령이 발행되면, 발행된 제어 명령은 로컬 OPC UA 서버부(210)에 등록된 생산 장비들 중 적어도 하나에 전달될 수 있다.
도 5a 내지 도 5b는 본 발명의 일 실시예에 따른 OPC UA를 이용한 분산형 스마트 팩토리 운영 장치가 외부에 위치한 다른 운영 장치와 원격으로 메시지 교환을 수행하는 절차에 대한 시퀀스도이다.
도 5a 내지 도 5b를 참조하면, 본 발명의 일 실시예에 따른 OPC UA를 이용한 분산형 스마트 팩토리 운영 장치들 셋(제1 운영 장치(200a), 제2 운영 장치(200b), 제2 운영 장치(200c))이 서로 협력하여 이벤트를 처리하는 것을 전제로 설명하지만 이에 한정되는 것은 아니다.
먼저, 각각의 운영 장치들(200a, 200b, 200c) 내부의 로컬 OPC UA 클라이언트부들(220a, 220b, 220c)은, 원격에 위치한 다른 운영 장치들 내부에 포함된 OPC UA 서버부들(210a, 210b, 210c)과 원격으로 통신 세션을 연결할 수 있다(S300, getRemoteSession함수로 표기). 예를 들어, 제1 운영 장치(200a)의 로컬 OPC UA클라이언부(220a)는 복수의 원격 OPC UA 서버부(210b, 210c)와 통신 세션을 연결할 수 있다. 즉, 각 운영 장치들은 다른 다수의 운영 장치들(M개로 가정)과 1:M의 통신 세션 연결을 수행할 수 있다.
이때, 각각의 운영 장치들(200a, 200b, 200c) 내부의 로컬 OPC UA 클라이언트부들(220a, 220b, 220c)은, 각자의 운영 장치 내부에 위치한 로컬 OPC UA 서버부와도 통신 세션을 연결할 수 있다(S300, getLocalSession함수로 표기). 또한, 도면에는 도시하지 않았으나 도 4에서와 마찬가지로 각각의 운영 장치들(200a, 200b, 200c)은 로컬로 연결된 통신 세션을 기초로 각자의 로컬 OPC UA 서버부에 이벤트를 등록할 수 있다.
통신 세션이 연결되면, 각각의 운영 장치들(200a, 200b, 200c)의 로컬 OPC UA 서버부들(210a, 210b, 201c)은 각자 등록된 이벤트를 모니터링할 수 있다. 이때, 모니터링 결과 제1 운영 장치(200a) 내부에 위치한 로컬 OPC UA 서버부(210a)가 이벤트를 감지하면, 감지된 이벤트를 지시하는 메시지를 제1 운영 장치(200a) 내부의 로컬 OPC UA 클라이언트부(220a)로 전송할 수 있다(S320).
다음으로, 제1 운영 장치(200a) 내부의 로컬 OPC UA 클라이언트(220a)는, 복수의 원격 OPC UA 서버부(210b, 210c) 각각에 등록된 생산 장비들에 대한 상태 정보를 복수의 원격 OPC UA 서버부(210b, 210c)를 통해 수신할 수 있다(S325).
제1 운영 장치 내부의 로컬 OPC UA 클라이언트(220a)는, 복수의 원격 OPC UA 서버부(210b, 210c)로부터 수신한 상태 정보를 기초로, 로컬 또는 원격으로 처리할지 여부를 결정할 수 있다. 이때, 로컬로 처리하는 것으로 결정되면, 도 4의 단계 S240에 따라 로컬 OPC UA 서버부로 로컬 처리 명령 메시지를 전송할 수 있다.
한편, 원격으로 처리하는 것으로 결정되면, 상기 복수의 원격 OPC UA 서버부 중 적어도 하나에 상기 이벤트에 대한 처리를 요청하는 원격 요청 메시지를 전송할 수 있다(S340). 예를 들어, 원격 요청 메시지는 복수의 원격 OPC UA 서버부 모두에 전송될 수도 있고, 선택된 하나의 원격 OPC UA 서버부(예를 들면 제2 운영 장치에 속하는 OPC UA 서버부)에 전송될 수도 있다.
원격 요청 메시지를 수신받은 제2 운영 장치(200b)의 원격 OPC UA 서버부(210b)는, 자신의 내부에서 로컬로 처리해야하는 이벤트인지 판단하고, 로컬로 처리해야하는 이벤트로 판단되면, 제2 운영 장치(200b)의 OPC UA 클라이언트부(220b)에 이벤트를 지시하는 메시지를 전송할 수 있다(S350).
제2 운영 장치(200b)의 OPC UA 클라이언트부(220b)는, 이벤트를 내부적으로 처리하기 위한 로컬 처리 명령 메시지를 생성하고(S360), 생성된 로컬 처리 명령 메시지를 다시 제2 운영 장치(200b)의 OPC UA 서버부(210b)로 전송할 수 있다(S370). 제2 운영 장치(200b)의 OPC UA 서버부(210b)는, 수신된 로컬 처리 명령 메시지에 따라 자신에게 등록된 생산 장비들(즉, 직접 관리하고 있는 생산 장비들) 중 적어도 하나에 대한 제어 명령을 발행(publish)할 수 있다(S380).
도 6은 본 발명의 일 실시예에 따른, OPC UA를 이용한 분산형 스마트 팩토리 운영 장치에 대한 하드웨어 구성을 나타낸 예시도이다.
도 3 내지 도 5b에 따른 방법을 수행하는 장치 또는 도 2에 따른 장치는 도 6에 따른 하드웨어 구성을 갖도록 구현될 수 있다. 이때, OPC UA 서버부와 OPC UA 클라이언트부는 소프트웨어 모듈로서 프로세서(110)에 수행될 수 있다.
구체적으로 도 6을 참조하면, OPC UA(Open Platform Communications Unified Architecture)를 이용한 분산형 스마트 팩토리 운영 장치는, 적어도 하나의 프로세서(processor, 110) 및 상기 적어도 하나의 프로세서가 적어도 하나의 소프트웨어 모듈에 따라 적어도 하나의 단계를 수행하도록 지시하는 명령어들(isntructions)을 저장하는 메모리(memory, 120)를 포함할 수 있다.
상기 적어도 하나의 소프트웨어 모듈은 OPC UA 서버부와 OPC UA 클라이언트부를 포함할 수 있다. 더욱 상세하게 상기 적어도 하나의 소프트웨어 모듈은 도 2에 따른 구성요소들을 포함할 수 있다.
여기서 적어도 하나의 프로세서(110)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU), 또는 본 발명의 실시예들에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(120) 및 저장 장치(160) 각각은 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(120)는 읽기 전용 메모리(read only memory, ROM) 및 랜덤 액세스 메모리(random access memory, RAM) 중에서 적어도 하나로 구성될 수 있다.
또한, OPC UA를 이용한 분산형 스마트 팩토리 운영 장치(100)는, 무선 네트워크를 통해 통신을 수행하는 송수신 장치(transceiver)(130)를 포함할 수 있다. 또한, OPC UA를 이용한 분산형 스마트 팩토리 운영 장치(100)는 입력 인터페이스 장치(140), 출력 인터페이스 장치(150), 저장 장치(160) 등을 더 포함할 수 있다. OPC UA를 이용한 분산형 스마트 팩토리 운영 장치(100)에 포함된 각각의 구성 요소들은 버스(bus)(170)에 의해 연결되어 서로 통신을 수행할 수 있다.
상기 적어도 하나의 단계는, 로컬 또는 원격으로 통신 세션(communication session)을 연결하는 단계, 연결된 통신 세션을 기초로 적어도 하나의 생산 장비가 수행하는 공정을 모니터링하는 단계, 모니터링 결과 미리 설정된 조건에 따른 이벤트를 감지하는 단계, 감지된 이벤트의 처리를 위한 메시지를 생성하는 단계 및 생성된 메시지를 로컬 또는 원격에 위치한 OPC UA 서버부로 전송하는 단계를 포함할 수 있다.
상기 미리 설정된 조건에 따른 이벤트는, 상기 적어도 하나의 생산 설비들의 작업 상태, 자원 상태, 메시지의 요청 및 응답 상태를 포함할 수 있다.
상기 통신 세션을 연결하는 단계는, 상기 로컬 OPC UA클라이언부가 상기 로컬 OPC UA 서버부와 통신 세션을 연결하는 단계 및 상기 로컬 OPC UA 클라이언트부가 상기 로컬 OPC UA 서버부에 상기 미리 설정된 조건에 따른 이벤트를 등록하는 단계를 포함할 수 있다.
상기 이벤트를 감지하는 단계는, 상기 로컬 OPC UA 클라이언트부가 상기 로컬 OPC UA 서버부로부터 상기 이벤트를 지시하는 메시지를 수신하는 단계 및 상기 로컬 OPC UA 서버부에 등록된 생산 장비들에 대한 상태 정보를 상기 로컬 OPC UA 서버부를 통해 수신하는 단계를 포함할 수 있다.
상기 메시지를 생성하는 단계는, 상기 로컬 OPC UA 서버부를 통해 수신한 상태 정보를 기초로 로컬 처리 명령 메시지를 생성할 수 있다.
상기 생성된 메시지를 로컬 또는 원격에 위치한 OPC UA 서버부로 전송하는 단계는, 상기 로컬 OPC UA 클라이언트부가 상기 로컬 OPC UA 서버부에 상기 로컬 처리 명령 메시지를 전송하는 단계 및 상기 로컬 OPC UA 서버부가 상기 등록된 생산 장비들 중 적어도 하나에 대한 제어 명령을 발행하는 단계를 포함할 수 있다.
상기 통신 세션을 연결하는 단계는, 상기 로컬 OPC UA클라이언부가 복수의 원격 OPC UA 서버부와 통신 세션을 연결하는 단계를 포함할 수 있다.
상기 이벤트를 감지하는 단계는, 상기 로컬 OPC UA 클라이언트부가 상기 로컬 OPC UA 서버부로부터 상기 이벤트를 지시하는 메시지를 수신하는 단계 및 상기 복수의 원격 OPC UA 서버부 각각에 등록된 생산 장비들에 대한 상태 정보를 상기 복수의 원격 OPC UA 서버부를 통해 수신하는 단계를 포함할 수 있다.
상기 메시지를 생성하는 단계는, 상기 복수의 원격 OPC UA 서버부로부터 수신한 상태 정보를 기초로, 로컬 또는 원격으로 처리할지 여부를 결정하는 단계를 포함할 수 있다.
상기 생성된 메시지를 로컬 또는 원격에 위치한 OPC UA 서버부로 전송하는 단계는, 원격으로 처리하는 것으로 결정되면, 상기 복수의 원격 OPC UA 서버부 중 적어도 하나에 상기 이벤트에 대한 처리를 요청하는 원격 요청 메시지를 전송하는 단계를 포함할 수 있다.
OPC UA를 이용한 분산형 스마트 팩토리 운영 장치(100)의 예를 들면, 통신 가능한 데스크탑 컴퓨터(desktop computer), 랩탑 컴퓨터(laptop computer), 노트북(notebook), 스마트폰(smart phone), 태블릿 PC(tablet PC), 모바일폰(mobile phone), 스마트 워치(smart watch), 스마트 글래스(smart glass), e-book 리더기, PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 디지털 카메라(digital camera), DMB(digital multimedia broadcasting) 재생기, 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), PDA(Personal Digital Assistant) 등일 수 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 상술한 방법 또는 장치는 그 구성이나 기능의 전부 또는 일부가 결합되어 구현되거나, 분리되어 구현될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (10)

  1. OPC UA(Open Platform Communications Unified Architecture) 클라이언트부 및 서버부를 포함하는 분산형 스마트 팩토리 운영 장치에서 수행되는 분산형 스마트 팩토리 운영 방법으로서,
    로컬 클라이언트부에 의해, 로컬 서버부와 통신 세션(communication session)을 연결하는 단계;
    상기 로컬 클라이언트부에 의해, 스마트 팩토리의 적어도 하나의 생산 장비가 수행하는 공정에 대해 미리 설정된 조건에 따른 이벤트를 상기 로컬 서버부에 등록하는 단계;
    상기 로컬 서버부에 의해, 상기 적어도 하나의 생산 장비가 수행하는 공정을 모니터링하는 단계;
    상기 로컬 서버부에 의해, 상기 모니터링의 결과, 상기 미리 설정된 조건에 따른 이벤트를 감지하는 단계;
    상기 로컬 서버부에 의해, 상기 감지된 이벤트를 지시하는 제1 메시지를 생성하는 단계;
    상기 로컬 서버부에 의해, 상기 생성된 제1 메시지를 상기 로컬 클라이언트부로 전송하는 단계;
    상기 로컬 클라이언트부에 의해, 상기 제1 메시지의 수신에 따라 상기 로컬 서버부에 등록된 생산 장비들에 대한 상태 정보를 읽어내는 단계;
    상기 로컬 클라이언트부에 의해, 상기 상태 정보에 기초하여 이벤트 처리에 필요한 요청 메시지를 생성하는 단계; 및
    상기 로컬 클라이언트부에 의해, 상기 요청 메시지를 로컬 또는 원격에 위치한 서버부로 선택적으로 전송하는 단계;
    를 포함하며,
    상기 요청 메시지를 받은 원격 서버부는 상기 요청 메시지의 처리 명령이 로컬로 처리해야 하는 이벤트인지를 판단하고, 로컬로 처리해야 하는 이벤트인 경우, 상기 이벤트를 지시하는 메시지를 동일 운영 장치 내 원격 클라이언트부로 전송하며,
    상기 원격 클라이언트부는 상기 이벤트를 내부적으로 처리하기 위한 로컬 처리 명령 메시지를 생성하고 생성된 로컬 처리 명령 메시지를 상기 원격 서버부로 전송하는, 분산형 스마트 팩토리 운영 방법.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 미리 설정된 조건에 따른 이벤트는, 상기 적어도 하나의 생산 설비들의 작업 상태, 자원 상태, 메시지의 요청 및 응답 상태를 포함하는, 분산형 스마트 팩토리 운영 방법.
  4. 청구항 1에 있어서,
    상기 요청 메시지를 생성하는 단계 및 상기 로컬 또는 원격에 위치한 서버부로 선택적으로 전송하는 단계는, 상기 로컬 클라이언트부에 의해, 상기 이벤트를 내부적으로 처리하기 위한 로컬 처리 명령 메시지를 생성하는 단계, 및 생성된 로컬 처리 명령 메시지를 상기 로컬 서버부로 전송하는 단계를 포함하는, 분산형 스마트 팩토리 운영 방법.
  5. 삭제
  6. 청구항 1에 있어서,
    상기 원격 서버부는 상기 로컬 처리 명령 메시지에 따라 자신에게 등록된 생산 장비들 중 적어도 하나에 대한 제어 명령을 발행하는, 분산형 스마트 팩토리 운영 방법.
  7. 청구항 4에 있어서,
    상기 로컬 서버부에 의해, 상기 로컬 처리 명령 메시지에 따라 자신에게 등록된 생산 장비들 중 적어도 하나에 대한 제어 명령을 발행하는 단계를 더 포함하는, 분산형 스마트 팩토리 운영 방법.
  8. OPC UA(Open Platform Communications Unified Architecture) 클라이언트부 및 서버부와 연결되어 분산형 스마트 팩토리를 운영하는 분산형 스마트 팩토리 운영 장치로서,
    적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서가 적어도 하나의 소프트웨어 모듈에 따라 적어도 하나의 단계를 수행하도록 지시하는 명령어들을 저장하는 메모리;
    를 포함하고,
    상기 프로세서가 수행될 때, 상기 명령어들에 의해 상기 프로세서가:
    로컬 클라이언트부에 의해, 로컬 서버부와 통신 세션(communication session)을 연결하는 단계;
    상기 로컬 클라이언트부에 의해, 스마트 팩토리의 적어도 하나의 생산 장비가 수행하는 공정에 대해 미리 설정된 조건에 따른 이벤트를 상기 로컬 서버부에 등록하는 단계;
    상기 로컬 서버부에 의해, 상기 적어도 하나의 생산 장비가 수행하는 공정을 모니터링하는 단계;
    상기 로컬 서버부에 의해, 상기 모니터링의 결과, 미리 설정된 조건에 따른 이벤트를 감지하는 단계;
    상기 로컬 서버부에 의해, 상기 감지된 이벤트를 지시하는 제1 메시지를 생성하는 단계; 및
    상기 로컬 서버부에 의해, 상기 생성된 제1 메시지를 상기 로컬 클라이언트부로 전송하는 단계;
    상기 로컬 클라이언트부에 의해, 상기 제1 메시지의 수신에 따라 상기 로컬 서버부에 등록된 생산 장비들에 대한 상태 정보를 읽어내는 단계;
    상기 로컬 클라이언트부에 의해, 상기 상태 정보에 기초하여 이벤트 처리에 필요한 요청 메시지를 생성하는 단계; 및
    상기 로컬 클라이언트부에 의해, 상기 요청 메시지를 로컬 또는 원격에 위치한 서버부로 선택적으로 전송하는 단계를 수행하도록 하고,
    상기 요청 메시지를 받은 원격 서버부는 상기 요청 메시지의 처리 명령이 로컬로 처리해야 하는 이벤트인지를 판단하고, 로컬로 처리해야 하는 이벤트인 경우, 상기 이벤트를 지시하는 메시지를 동일 운영 장치 내 원격 클라이언트부로 전송하며,
    상기 원격 클라이언트부는 상기 이벤트를 내부적으로 처리하기 위한 로컬 처리 명령 메시지를 생성하고 생성된 로컬 처리 명령 메시지를 상기 원격 서버부로 전송하는, 분산형 스마트 팩토리 운영 장치.
  9. 청구항 8에 있어서,
    상기 요청 메시지를 생성하는 단계 및 상기 로컬 또는 원격에 위치한 서버부로 선택적으로 전송하는 단계는, 상기 로컬 클라이언트부에 의해, 상기 이벤트를 내부적으로 처리하기 위한 로컬 처리 명령 메시지를 생성하는 단계, 및 생성된 로컬 처리 명령 메시지를 상기 로컬 서버부로 전송하는 단계를 포함하며,
    상기 적어도 하나의 프로세서가, 상기 로컬 서버부에 의해, 상기 로컬 처리 명령 메시지에 따라 자신에게 등록된 생산 장비들 중 적어도 하나에 대한 제어 명령을 발행하는 단계를 더 수행하도록 하는, 분산형 스마트 팩토리 운영 장치.
  10. 청구항 8에 있어서,
    상기 원격 서버부는 상기 로컬 처리 명령 메시지에 따라 자신에게 등록된 생산 장비들 중 적어도 하나에 대한 제어 명령을 발행하는, 분산형 스마트 팩토리 운영 장치.
KR1020190094155A 2019-08-02 2019-08-02 Opc ua를 이용한 분산형 스마트 팩토리 운영 방법 및 장치 KR102593008B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190094155A KR102593008B1 (ko) 2019-08-02 2019-08-02 Opc ua를 이용한 분산형 스마트 팩토리 운영 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190094155A KR102593008B1 (ko) 2019-08-02 2019-08-02 Opc ua를 이용한 분산형 스마트 팩토리 운영 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20210015387A KR20210015387A (ko) 2021-02-10
KR102593008B1 true KR102593008B1 (ko) 2023-10-23

Family

ID=74561235

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190094155A KR102593008B1 (ko) 2019-08-02 2019-08-02 Opc ua를 이용한 분산형 스마트 팩토리 운영 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102593008B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023113074A1 (ko) * 2021-12-16 2023-06-22 한국전자기술연구원 디지털 트윈 서버와 장비의 opc ua 데이터 연동을 위한 iec 63278 기반 모델링 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100902662B1 (ko) * 2004-12-30 2009-06-15 삼성전자주식회사 단말용 데이터 포맷을 이용한 통신 제어 시스템 및 그 방법
JP5395532B2 (ja) * 2009-06-22 2014-01-22 日本電信電話株式会社 クライアント装置、サーバ装置、コンピュータシステム、および、ファイルシステムアクセス方法、並びに、クライアントプログラムおよびサーバプログラム
US20180309831A1 (en) * 2017-04-19 2018-10-25 Microsoft Technology Licensing, Llc Internet of things pub-sub data publisher

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102170160B1 (ko) * 2017-06-16 2020-10-28 한국전자통신연구원 Opc-ua 기반의 단방향 데이터 송신 장치 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100902662B1 (ko) * 2004-12-30 2009-06-15 삼성전자주식회사 단말용 데이터 포맷을 이용한 통신 제어 시스템 및 그 방법
JP5395532B2 (ja) * 2009-06-22 2014-01-22 日本電信電話株式会社 クライアント装置、サーバ装置、コンピュータシステム、および、ファイルシステムアクセス方法、並びに、クライアントプログラムおよびサーバプログラム
US20180309831A1 (en) * 2017-04-19 2018-10-25 Microsoft Technology Licensing, Llc Internet of things pub-sub data publisher

Also Published As

Publication number Publication date
KR20210015387A (ko) 2021-02-10

Similar Documents

Publication Publication Date Title
US11323519B2 (en) Internet of things pub-sub data publisher
US10146217B2 (en) Controlling real world objects in an industrial installation
CN104025070A (zh) 用于管理工业过程的系统和方法
CN106027671A (zh) 基于云计算的工业数据总线与数据服务系统
Kurfess et al. A review of modern communication technologies for digital manufacturing processes in industry 4.0
CN113612820A (zh) 基于SuperEdge和EdgeXFoundry的云边端设备平台控制架构和方法
Hästbacka et al. Device status information service architecture for condition monitoring using OPC UA
Ferrer et al. Connecting web-based IoT devices to a cloud-based manufacturing platform
CN104808606A (zh) 在工业自动化系统之内提供功能的方法和工业自动化系统
Lee et al. Implementation of distributed smart factory platform based on edge computing and OPC UA
Alexakos et al. Iot integration for adaptive manufacturing
KR102593008B1 (ko) Opc ua를 이용한 분산형 스마트 팩토리 운영 방법 및 장치
Abukwaik et al. OPC UA Realization for simplified commissioning of adaptive sensing applications for the 5G IIoT
JP2014222871A (ja) プロフィバスdpのマスタ装置
Prist et al. Cyber-physical manufacturing systems: An architecture for sensor integration, production line simulation and cloud services
Chuquimarca et al. Evaluation of Data Transfer from PLC to Cloud Platforms-Based Real-Time Monitoring Using the Industrial Internet of Things
Bonci et al. An OSGi-based production process monitoring system for SMEs
Tietz et al. Development of an internet of things gateway applied to a multitask industrial plant
Luis et al. Development of network system for connection PLC to cloud platforms using IIoT
KR20170093562A (ko) 스마트 팩토리 연동 모듈 및 이의 작동 방법
TWI665560B (zh) 行動製造管理和優化平台
CN104079658A (zh) Web环境下基于池技术的环保物联网实时控制方法
KR101740236B1 (ko) 엠큐티티(mqtt) 및 디디에스(dds) 클라이언트 모듈을 갖는 장치를 위한 원격관리시스템
Hiriyannaiah et al. A multi-layered framework for Internet of Everything (IoE) via wireless communication and distributed computing in Industry 4.0
Jiang et al. RFID, social sensors and extended cyber-physical system

Legal Events

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