KR20060125594A - 제조와 엔터프라이즈 레벨간의 통신 모델 - Google Patents

제조와 엔터프라이즈 레벨간의 통신 모델 Download PDF

Info

Publication number
KR20060125594A
KR20060125594A KR1020060049526A KR20060049526A KR20060125594A KR 20060125594 A KR20060125594 A KR 20060125594A KR 1020060049526 A KR1020060049526 A KR 1020060049526A KR 20060049526 A KR20060049526 A KR 20060049526A KR 20060125594 A KR20060125594 A KR 20060125594A
Authority
KR
South Korea
Prior art keywords
data
controller
plc
network connection
enterprise
Prior art date
Application number
KR1020060049526A
Other languages
English (en)
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 KR20060125594A publication Critical patent/KR20060125594A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/04Manufacturing
    • 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/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • 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] or 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] or computer integrated manufacturing [CIM] characterised by the network communication
    • G05B19/4186Total 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] or computer integrated manufacturing [CIM] characterised by the network communication by protocol, e.g. MAP, TOP
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/06Energy or water supply
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/222Monitoring or handling of messages using geographical location information, e.g. messages transmitted or received in proximity of a certain spot or area
    • 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/14Plc safety
    • G05B2219/14008Pc monitors 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/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24139Recovery from power loss, failure
    • 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/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25381Restart program at predetermined position, crash recovery after power loss
    • 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/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31236Plc exclusive network connected to map
    • 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/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31394Field management, low level, instruments and controllers acting in real time
    • 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/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31396Business management, production, document, asset, regulatory management, high level
    • 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/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31449Monitor workflow, to optimize business, industrial processes
    • 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/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32413Pc generates control strategy, download in plc to monitor and react to events
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • 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)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Automation & Control Theory (AREA)
  • General Business, Economics & Management (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • General Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Public Health (AREA)
  • Water Supply & Treatment (AREA)
  • Programmable Controllers (AREA)
  • Computer And Data Communications (AREA)

Abstract

직접 엔터프라이즈의 최상 레벨로부터 엔터프라이즈의 생산층상에 위치된 저 레벨 제어기 및 센서를 갖는 통신 장치이다. 본 장치는 PLC가 플러그된 백플레인을 통하여 프로그램가능한 논리 제어기(PLC)와 인터페이스하는 제어기를 포함한다. 유저는 PLC 내의 데이터 포인트가 그들이 데이터베이스에 저장될 수 있는 엔터프라이즈 레벨로 전송되거나 다수의 가능한 전송 프로토콜을 통하여 엔터프라이즈 애플리케이션에 직접 전송되는 환경을 특성화하는 트리거를 한정할 수 있다. 본 발명은 유저가 실시간으로 PLC상의 전송 트리거를 셋업하고 데이터 포인트를 뷰잉하게 하는 소프트웨어 클라이언트를 더 포함한다.
엔터프라이즈 레벨, 논리 제어기, 트리거, PLC

Description

제조와 엔터프라이즈 레벨간의 통신 모델{MODEL FOR COMMUNICATION BETWEEN MANUFACTURING AND ENTERPRISE LEVELS}
도1은 로우 레벨로부터 엔터프라이즈 레벨까지의 종래 표준 기술의 구조를 나타낸다.
도2는 본 발명의 동작에 필요한 기능을 나타낸다.
도 3은 본 발명에 의한 장치의 상위 레벨 구조를 나타낸다.
도4는 본 발명에 의한 워크벤치 콤포넌트의 구조에 있어서 상위 레벨 다이어그램을 나타낸다.
도5는 엔터프라이즈 통신 제어기의 시스템 콤포넌트를 나타낸다.
도6은 프로젝트와 트리거가 추가된 프로세스를 나타낸다.
도7은 런-타임 데이터 트리거에 의거한 엔터프라이즈 통신 제어기의 기능을 나타낸다.
도8은 런-타임 로직 트리거에 의거한 엔터프라이즈 통신 제어기의 기능을 나타낸다.
도9는 전원 고장 후, 엔터프라이즈 통신 제어기의 기능을 나타낸다.
도10은 로우 레벨과 엔터프라이즈 레벨 사이의 연결이 우연히 해제되고, 기억 및 다음 기능이 활성화된 경우, 엔터프라이즈 통신 제어기의 기능을 나타낸다.
도11은 와치독 설비(watchdog facility) 또는 시스템 헬스 모니터(system health monitor)의 동작을 나타낸다.
도12는 구성을 익스포팅하는 동작을 나타낸다.
도13은 추가적인 외부 장치로의 직접 연결을 위한 대체 실시형태를 나타낸다.
도14는 PLC 통신 채널을 통해 멀티플 PLS로의 연결을 위한 대체 실시형태를 나타낸다.
도15는 장치 드라이버를 사용하는 멀티플 PLC에 연결을 위한 대체 실시형태를 나타낸다.
도16은 라이트 백 이벤트(write back event)이 요청된 PLC를 나타낸다.
도17은 라이트 백 이벤트가 요청된 엔터프라이즈를 나타낸다.
도18은 장치 드라이버를 갖는 PC가 엔터프라이즈 통신 제어기를 대신하여 사용되는 대체 실시형태를 나타낸다.
도19는 유저 레벨 애플리케이션을 구성하는 로직과 엔터프라이즈 통신 제어기의 로직 서버 서브시스템을 나타낸다.
도20은 유저 레벨 뷰어 애플리케이션과 엔터프라이즈 통신 제어기의 피스플레이 서버 서브시스템을 나타낸다.
도21은 유저 레벨 익스프레션 콤포저 애플리케이션과 엔터프라이즈 통신 제어기의 익스프레션 서버 서브시스템을 나타낸다.
본 발명은 제조와 엔터프라이즈 레벨간의 통신 모델에 관한 것이다.
설비 제조에 있어서, 로우 레벨 자동화, 프로세스 제어, 및 모니터링 시스템에 의해 제어된 자동화된 프로세스를 찾아내는 것이 일반적이다. 로우 레벨 자동화 시스템은 예컨대, 프로그램가능한 논리 제어기에 의해 제어 또는 모니터링된 전용 로보틱 장치 또는 다른 자동화된 시스템을 포함할 수 있다. 다양한 감지 장치와 계측기는 포토 아이(photo eye) 바코드 리더, 및 온도 감지기 등의 모니터 프로세스에 사용될 수도 있다. 근래에 사용되는 과도하게 복잡한 제조 및 어셈블리 시스템을 운영하기 위해 많은 엔터프라이즈(enterprise)는 도1에 도시된 종래 기술의 예와 같은 다중구조를 사용한다. 종래의 다중구조는 엔터프라이즈 레벨 비지니스 플래닝 시스템(엔터프라이즈 리소스 플래닝, 또는 ERP)(102); 오퍼레이션 레벨(제조 실행 시스템, 또는 MES)(104); 미드 레벨 프로세스 최적화 시스템(106)[예컨대, 휴먼 머신 인터페이스(HMI), 감시 제어 데이터 수집 시스템(SCADA), 뷰어블 플랜트 플로어 스테이터스(viewable plant floor status), 업스트림 리포팅(upstream reporting)용 데이터 모음]; 및 감지기나 다른 계측기(110)를 포함하는 로우 레벨 프로세스 자동화 또는 제어 시스템(108)을 포함한다.
대부분의 소비자는 미드 레벨 제어 시스템(106)을 구현하는데 필요한 시스템의 수가 많으면 설치 및 유지가 어렵다고 느낄 수 있다. 미드 레벨 제어 시스템(106)은 종종, 매우 복잡한 예컨대, 계획수립을 위한 작은 제조 리소스 플래 닝(MRP) 시스템이나 너무 간단하고 기능이 제한된 예컨대, SCADA/HMI 데이터 스테이터스(data status)만이 된다. 또한, IT 서포트 그룹과 플랜트 플로어 서포트 그룹 사이에는 통상적으로 표준 컴퓨터 정보 기술(IT) 장비를 책임지는 디비젼(division)이 존재한다.
종종, ERP 레벨(102)에서 예컨대, 감지기 판독 또는 생성된 유닛의 수와 같은 플랜트 플로어 상에서만 현재 이용가능한 정보에 직접 억세스하는 권리를 갖는 것이 바람직하다. 엔터프라이즈 레벨 시스템과 플랜트 플로어 장치 사이의 직접적인 연결을 달성함에 있어서 주된 걸림돌은 플랜트 플로어상에 사용되는 장치 내에 고유의 비표준 통신 프로토콜을 갖는다는 것이다. 엔터프라이즈 레벨(102)에서의 표준 통신 메카니즘[예컨대, 메시지 큐(message queues)]은 로우 레벨 제조 장치 레벨(108, 110)에서의 표준 통신 메카니즘[예컨대, 디바이스넷(DeviceNet) 및 다른 독점 프로토콜]과 차이가 있다. 또한, ERP 레벨(102)과 제어기 및 감지기(108과 110) 사이의 많은 층은 각각 이 다른 레벨 사이에서 직접 통신하기가 쉽다.
따라서, 제조 플로어로부터 데이터를 직접 수집하고 제조 프로세스를 직접 제어할 수 있기 위해 로우 레벨 제어 및 감지 레벨(108 및 110)과 엔터프라이즈 레벨(102) 사이에 직접적으로 통신하는 수단을 갖는 것이 바람직하다.
본 발명은 제조 프로세스를 직접 제어하고 수정하는 능력을 제공하는 것 뿐만 아니라 데이터를 캡쳐하고 플랜트 플로어 상에서 발생하는 개개의 이벤트(event)를 식별하는 수단을 제공한다. 식별된 개체(individual)는 통상적으로 조 직체의 엔터프라이즈 레벨(102)에 존재한다. 데이터의 수집을 허용하기 위해 이하의 능력을 갖추어야 한다. 우선, 엔터프라이즈 레벨(102)에서의 개체는 관심있는 데이터를 식별하는 능력을 갖추어야 한다. 이어서, 엔터프라이즈 레벨(102)에서의 개체는 데이터를 갱신 받기 원하는 사정을 식별할 수 있어야 한다. 마지막으로, 데이터는 데이터베이스나 엔터프라이즈 레벨 애플리케이션과 같은 엔터프라이즈 레벨(102)에서 플랜트 플로어로부터 특정 장소로 전송될 필요가 있다. 이러한 단계가 도2에 도시되어 있다. 박스(50)에 있어서, 유저는 로우 레벨로부터 엔터프라이즈 레벨로 전송될 데이터를 선택해야 한다. 박스(52)에 있어서, 유저는 언제 어떠한 조건에서든 전송될 데이터를 결정해야 한다. 마지막으로, 박스(54)에 있어서 유저는 데이터의 목적지를 특정한다.
본 발명의 하이 레벨 뷰 시스템이 도 3에 도시되어 있다. 시스템의 요부는 바람직한 실시형태에 있어서, 제조 프로세스를 제어하고 감지기를 통해 데이터를 수집하는 플랜트 플로어상에 있는 PLC(204)와 동일한 백플레인(backplane)(202)으로 플러깅(pluging)된 기능적 마이크로 컴퓨터인 엔터프라이즈 통신 제어기(500)이다. 엔터프라이즈 통신 제어기(500)는 PLC가 삽입된 백플레인(202)을 통해 PLC와 통신하기 때문에 현재 모니터링 되고 있는 모든 제조자의 PLC의 본래의 프로토콜을 나타내야 한다. 엔터프라이즈 통신 제어기(500)는 예컨대, Windows CE, VX Works, QNX 또는 끼워진 Monta Vista Linux와 같은 실시간 오퍼레이팅 시스템을 실행할 것이고, PCL로부터 데이터를 판독하거나 PCL에 데이터를 기록할 수 있는 것뿐만 아니 라 PLC로부터 엔터프라이즈 레벨로 데이터를 선택 및 전송을 도모하는 설치된 소프트웨어 콤포넌트를 가질 것이다. 또한, 엔터프라이즈 통신 제어기(500)는 표준 이더넷 프로토콜을 통한 워크벤치 클라이언트(workbench client)와 엔터프라이즈 레벨(600)과 같은 조직체의 더 높은 레벨로 링크될 것이다. 워크벤치(810)는 인트라넷 내에 또는 임의의 네트워크를 원격으로 교차한 데스크탑 상의 클라이언트 로케이션에서 통상적으로 실행하고, 엔터프라이즈 통신 제어기(500)의 소프트웨어 콤포넌트를 설정하는데 사용되는 소프트웨어 콤포넌트이다. 워크벤치(810)는 유저가 관심있는 데이터, 엔터프라이즈 통신 제어기(500)로부터 엔터프라이즈 레벨(600)으로의 데이터 전송을 기동하는 이벤트, 및 데이터베이스 애플리케이션(602)와 같은 엔터프라이즈 레벨(600) 내의 데이터의 목적지를 식별하고 명명하게 한다. 엔터프라이즈 레벨(600)는 일반적으로 조직체의 운영을 위한 회사에 의해 보통 사용되는 데이터베이스와 비지니스 애플리케이션으로 이루어진다. 데이터의 특정 조각은 예컨대, 엔터프라이즈 통신 제어기(500)로부터 엔터프라이즈 레벨(600)에서 특정 데이터베이스(602)로 또는 다양한 네트워크 프로토콜을 통해 엔터프라이즈 레벨(600)에서 실행하는 애플리케이션(602)으로 직접 플로우잉(flowing)될 수 있다.
본 발명의 상기한 장점 및 다른 특징은 참조도면에 도시된 바와 같이 본 발명의 바림직한 실시형태의 상세한 설명에 의해 명백해질 것이고, 동일, 기능적으로 유사한 및/또는 구조적으로 유사한 요소는 전체적으로 동일한 참조부호로 나타낸다.
본 발명의 모델을 이하 상세히 설명한다. 특정 예시적인 실시형태를 논의함 에 있어서, 이것은 예시만을 위한 것으로 이해되어야 한다. 당업자는 다른 콤포넌트와 구조가 본 발명의 사상과 범위로부터 벗어나지 않고 사용될 수 있음을 인식할 것이다.
본 발명의 예시적인 실시형태는 이층 구조를 사용하여 엔터프라이즈 레벨(600)과 플랜트 플로어 사이의 통신을 수행한다. 이 구조는 도1에 도시된 바와 같은 형태의 전형적인 종래기술의 다중구조를 대신하거나 또는 그에 추가적으로 사용될 수 있다.
엔터프라이즈 통신 제어기(500)는 본 발명의 요부이며, 하나 이상의 기존의 PLC와 연결되고, 데이터베이스 및 애플리케이션과 같은 업스트림 엔터프라이즈 시스템(602)과 PLC 장치 사이의 연결을 형성한다. 예시적인 실시형태에 있어서, 본 발명은 예컨대, 엔터프라이즈 레벨 시스템(602)에 직접적으로 이용가능한 결함의 수, 제품 완성 수와 제품 재가공, 또는 진보적인 레벨과 같은 정보를 갖는 능력을 제공한다. 본 발명은 단단한 연결, 높은 집적도, 모듈, 콤포넌트 기반 메카니즘을 제공하여 상위 레벨 엔터프라이즈 시스템(602)으로의 인터페이싱을 위한 하드웨어 콤포넌트와 소프트웨어 모듈의 조합을 통해 제어 도메인으로부터 엔터프라이즈로 정보를 직접 제공한다.
또한, 엔터프라이즈 통신 제어기(500)는 엔터프라이즈 레벨(600)로부터 정보를 취득하여 연결된 어느 하나의 PLC의 조건을 업데이팅할 수 있다. 이 "라이트-백" 특성은 엔터프라이즈 레벨(600)로부터의 입력에 의거하여 제품 활성화를 변화시키는데 사용될 수 있다.
또한, 엔터프라이즈 통신 제어기(500)는 엔터프라이즈 레벨로부터 데이터를 검색하여, 생산에서의 사용을 위한 PLC 제어기 상에 위치시킬 수 있다. 이 정보는 엔터프라이즈 통신 제어기(500) 상의 상태에서의 변경에 의해 시작되고, 생산에서의 사용을 위한 레서피(recipe)를 수집하는데 사용될 수 있다.
본 발명의 전형적인 실시예에서는, 유저는 도 2에서 볼 수 있는 바와 같이 공장층에서 엔터프라이즈 레벨(600)로 데이터를 이동시키는 시스템을 구성할 수 있다. 블록(52)에서 유저는 수집되는 데이터를 선택하고, 블록(52)에서 전송되는 데이터의 결과를 한정하고, 데이터가 블록(54)에서 전송되어야 할 위치를 한정한다. 도 2의 블록(50, 52 및 54)에서 설명되는 기능은 도 4에 도시된 바와 같은 프로젝트의 개념을 이용하여 도 3에 도시된 워크벤치 구성 요소에 제공된다.
프로젝트(620)는 도 3에 도시된 바와 같이 태그(tag)(624)로 이름지어진 어떤 데이터의 일부를 엔터프라이즈 레벨(600)로 전송되는 것을 야기시키는 결과를 한정하는 트리거(trigger)의 그룹이다. 트리거(622)는 공장층에서 일어나는 결과의 미리 결정된 응답으로 보여질 수 있다. 결과가 발생할 때, 응답은 데이터의 열을 데이터베이스 테이블에 기록하거나 업데이트하는 것, 메시지 큐에 메시지(626)를 집어넣는 것, 또는 e-메일을 전송하는 것 등의 기능을 초기화하도록 구성된다. 결과는 수행하는 트리거가 미리 결정된 상태(데이터 트리거)나 PLC로부터의 자발적인 메시지의 수신(논리 트리거)을 야기한다.
태그(624)는 PLC 내에서의 어떤 데이터 포인트를 보다 친밀한 방법으로 예컨대, "PLC(2)상의 데이터 포인트(12)" 대신에 "제조 카운트"로 식별하는 방법일 뿐 이다.
데이터 트리거는 PLC로부터 판독되는 어떤 데이터 포인트를 포함하는 상태의 상태의 결과로 수행되는 트리거이다. 예컨대, 데이터 트리거는 설정된 주파수에서, 예정된 시간에서, 또는 예컨대, 어떤 데이터 포인트가 값을 변화시키거나 어떤 값에 크거나 작거나 동등하다고 결정되는 경우, 어떤 데이터 포인트에서의 변화의 결과로서 주기적으로 수행할 것이다.
논리 트리거는 PLC의 래더 로직으로부터 백플레인(backplane)(202)을 통하여 자발적인 메시지의 수신의 결과로서 발생한다. 예컨대, PLC 래더 로직이 PLC 이외에 통신되거나 취급될 필요를 결정하는 상태가 발생한다. 예컨대, 제조 라인상의 온도 센서는 어떤 레벨을 초과하는 온도를 감지하여, 기능 이외에 요구될 수 있는 위험한 상태를 지시낸다.
트리거의 수행하에서의 상태에 더하여, 트리거는 몇몇 다른 부분의 정보를 또한 제공하고, 이들 중에서는 (1) 다중 데이터 포인트 값, 메시지 및 마이크로 값으로 구성될 수 있고, 상태가 발생할 때 발생되는 트리거 페이로드(trigger payload)로 알려진 통지의 내용; (2) ASCII, XML, 또는 데이터베이스 삽입/업데이트 등의 메시지의 전송에서의 포맷; (3) 데이터가 전파되는 방법, 예컨대, DB2, Oracle, Microsoft SQL, IBM Websphere MQ, 메시지 큐, JMS, TCP, UDP 또는 e-메일이 있다.
도 5는 본 발명의 시스템의 아키텍쳐를 나타내고 엔터프라이즈 통신 제어기(500)의 주요 구성 요소, 워크벤치(810)를 갖는 클라이언트(800) 및 엔터프라이 즈 컴퓨터(600)로 구성된다.
엔터프라이즈 통신 제어기(500)는 바람직하게는 PLC(204)가 플러그되는 동일한 백플레인(202)으로 플러그하는 구성 요소이다. 따라서, 엔터프라이즈 통신 제어기(500)는 백플레인(202)을 통하여 PLC(204)와 통신하는 능력을 갖는다. 엔터프라이즈 통신 제어기(500)는 운영 체제를 갖는 표준의, 다중 목적 컴퓨터 및 거기에 설치되는 본 발명의 각종 소프트웨어 구성 요소로 구성된다. 바람직하게는, 엔터프라이즈 통신 제어기(500)는 VX Works, QNX, MontaVista Linux 또는 윈도우 CE 운영 체제 등의 실시간 운영 체제 버젼을 작동할 것이다. 엔터프라이즈 통신 제어기(500) 백플레인(202)으로 플러그할 수 있는 특수화된 접속기로 또한 장착될 것이다. 상기 접속기는, 필연적으로, 엔터프라이즈 통신 제어기(500)가 인터페이스되고 있는 PLC(204)의 타입에 따라 구성될 것이다. 물론, 다른 제조자의 PLC는 다르게 구성된 백플레인(202)을 가질 것이다. 게다가, 도 5에 도시된 바와 같이, 애플리케이션 프로그래밍 인터페이스를 본 발명의 소프트웨어 구성 요소에 제공하여 백플레인(202)을 통하여 PLC(204)와 직접 통신하게 하고, 특히, PLC(204)로부터 특정 데이터 포인트를 판독하고 PLC(204) 내에서 특정 데이터 포인트로 신규 값을 기록하는 능력을 갖는 엔터프라이즈 통신 제어기(500)를 제공하는 드라이버(522)가 있다. 물리적 접속기를 갖도록, 백플레인 API(522)은 PLC의 제조자에 따라 특별 주문될 것이다.
클라이언트(800)는 조직 내에서 또는 인터넷 등의 어떤 네트워크를 거쳐서 멀리서 어떤 레벨에서 작동하는 컴퓨터이다. 상기 컴퓨터는 시스템의 유저가 프로 젝트(620)를 한정하고, 태그(624)로 데이터 포인트를 이름짓고, 프로젝트(620)에 트리거(622)를 부가하도록 하는 유저 인터페이스이고 트리거(622)가 수행될 상태하인 소프트웨어 워크벤치를 작동한다. 상기 정보는 후에 설명될 프로세스에서 엔터프라이즈 통신 제어기(500)와 통신한다.
엔터프라이즈 통신 제어기(500)는 스케너부(520)를 포함하는 특정 소프트웨어 구성 요소 및 각종 기능상의 구성 요소를 갖는 트랜잭션(transaction) 서버 구성 요소(550)가 장착된다. 본 발명의 기능상의 구성 요소가 설명된 바와 같이 분할되어 있지만, 소프트웨어 분야에서의 당업자는 설명된 기능의 어떤 제공도 다르게 보이지만 설명된 특정 실시예와 같은 동일한 기능성을 제공하는 아키텍쳐로 귀착되고 상기 변화가 본 발명의 범위에 해석된다는 것는 주목해야 한다.
스캐너 구성 요소(520)은 일반적으로 워크벤치(810)와 통신하고, 태그(624) 및 트리거(622)를 트랙킹하고, 트리거 결과가 발생할 때 결정하고, PLC(204)와 통신하는 것에 책임이 있다.
태그 스캐너(524)는 PLC(204)상의 각종 데이터 포인트의 이름 또는 태그를 식별하고, PLC(204)로부터 특정 데이터를 검색하거나 백플레인 API(522)를 통하여 PLC(204)에 특정 데이터를 기록할 수 있는 구성 요소이다.
트리거 스캐너(526)는 각종 트리거를 수행할 시기일 때를 결정하는 구성 요소이다. 예컨대, 트리거 스캐너(526)는 특정 태그(624)가 미리 결정된 값을 초과하는 등의 어떤 논리 상태를 만족하는 지의 여부를 결정하고, 그렇다면, 예컨대, 엔터프라이즈 서버(600) 내에서 메시지를 데이터베이스(602)에의 전송인 트리거(622) 로의 응답에 취해지는 적합한 기능을 결정하는 것을 태그 스캐너(524)에 문의할 수 있다. 트리거 스캐너(526)는 어떤 태그(624)의 값에서의 변화를 주기적으로 체킹하거나 서브스크라이빙(subscribing)하고 적합한 기능을 취하는데 또한 책임이 있다.
스캐너(520) 내에서의 구성 요소 프럭시(component proxy)(528)는 워크벤치(810)와 인터페이스하고, 메시지를 수신하고, 상기 메시지를 어디로 발송할지를 결정하는 구성 요소이다. 예컨대, 생성, 허가, 정지 및 트리거(622)의 a 제거를 위한 명령 등의 워크벤치(810)로부터 오는 몇몇 메시지는 프럭시(528)를 통하여 직접 트리거 스캐너(526)로 통과되는 것을 필요로 할 것이다. 게다가 워크벤치(810)로부터 프럭시 서버(528)를 통해 통과하는 몇몇 명령은 트랜잭션 구성 요소 내의 디스패쳐(dispatcher)로 전송되는 것을 필요로 할 것이다. 상기 명령은 후술될 것이다.
스캐너(520) 내의 타임 동기화 매니저(534)는 PLC(204) 내부에 있는 클럭을 유지하는 옵션을 포함하는 시스템 내의 모든 클럭간에 동기화를 유지할 책임이 있다. 타임 동기화 매니저는 PLC(204) 내에서 및 엔터프라이즈 통신 제어기(500) 내에서 외부 마스터 클럭의 지시 내용을 통하여 또는 클럭 내부를 통하여 엔터프라이즈 통신 제어기(500)로 시간을 동기화할 것이다. 바람직한 시간 지시 내용은 워크벤치(810)의 구성부에서 명확해질 수 있다. 타임 동기화 매니저(534)의 목적은 공장층으로부터 거기에 포함된 시간 지정을 가질 수 있는 PLC(204)를 통하여 오는 어떤 메시지로 엔터프라이즈 통신 제어기(500) 내에서 소프트웨어의 모든 부분을 동기화하는 것이다.
로그 매니저(532)는 제어기(500) 내에서 발생하고 상기 정보를 로그 상태로 유지하는 모든 기능을 로그하는 구성 요소이다. 바람직한 실시예에서는 로그 매니저(532)는 2개의 독립된 로그에서 정보를 저장하고, 2개의 로그는 첫번째는 유저 기능을 위한 것이고, 두번째는 로그 매니저(532)의 기능 예외를 위한 것으로 주기적인 간격 또는 중대한 결과에서 e-메일을 통하여 보고하도록 구성될 수도 있다. 에컨대, 예외가 발생하면[예컨대, 엔터프라이즈 통신 제어기(500)는 엔터프라이즈 서버(600)와의 통신을 시도하고 그렇게 할 수 없음], 로그 매니저(532)에 의해 발생되는 예외 로그에서 엔트리(entry)가 있을 것이다. 게다가, 워크벤치(810)를 통한 프로젝트 및 그것의 관련된 트리거의 생성, 및 프로젝트의 개시 및 정지는 로그 매니저(532)를 통한 로그 결과에 또한 유지된다. 로그 매니저(532)는 완료된 어디트 트레일(audit trail)을 생성하고 유지할 수 있다.
유저 매니저(530)는 유저의 생성과 그들의 인증에 책임이 있다. 워크벤치(810)로 로그되는 각종 유저는 그들의 특권 레벨에 따른 다양한 업무를 하도록 허용된다. 예컨대, 특정 유저는 트리거(622)를 생성하도록 허용될 수 없으나, 미리 한정된 프로젝트(620)를 작동하고 그 결과를 볼 수 없을 수도 있다. 유저 매니저는 다양한 특권의 레벨을 인증할 수 있다. 유저 관리의 2개의 모델이 있다. 하나에서는 유저 특권 테이블이 엔터프라이즈 통신 제어기(500)상에 유지된다. 대안의 모델에서는, 유저 매니저(530)는 중앙 유저 특권 리스트 또는 LDAP 또는 Kerberos 등의 중앙 인증 시스템 등의 엔터프라이즈 레벨 유저 관리 시스템으로 통합될 수 있어, 엔터프라이즈 내에서 유저 관리를 단일 위치로 허용할 것이다. 특권의 레벨은 중앙화된 엔터프라이즈 레벨 시스템에 저장되고 국부 유저 매니저(530)에 의해 이용될 것이다.
본 발명의 지금의 실시예에서는, 도 5의 스캐너(520) 내의 모든 구성 요소는 엔터프라이즈 통신 제어기(500)에서의 단일 프로세스에서 작동한다. 또한, 트랜잭션 구성 요소(550)는 독립된 프로세스이고 트랜잭션 구성 요소(550) 내의 모든 구성 요소가 스캐너 프로세스(520)로부터 독립된 단일 프로세스에서 작동할 수 있다. 스캐너(520) 및 트랜잭션 구성 요소(550)는 프로세스간 통신을 위한 운영 체제에 의해 제공되는 표준 메카니즘을 통하여 서로 통신할 수 있다. 그러나, 일부가 독립된 프로세스에서 작동할 수 있는 대안의 아키텍쳐가 도 13에 도시된 바와 같이 수용가능하다
트랜잭션 구성 요소(550)는 일반적으로 엔터프라이즈 통신 제어기(500)에 국부적인 비휘발성 기억 장치에 다양한 정보를 유지하고 엔터프라이즈 서버(600)로 및 로부터 메시지를 전송하고 수신하는 것에 책임이 있다.
트랜잭션(550) 구성 요소 내의 디스패쳐(554)는 엔터프라이즈 레벨(600)에서의 프로세스로부터, 워크벤치(810)로부터 또는 스캐너 프럭시(528)로부터 메시지를 수신하고 트랜잭션 구성 요소(550) 내에서 이들 메시지가 어디에서 전송되는 것을 필요로 하는가를 결정한다. 이점에서 스캐너(520) 내에서의 스캐너 프럭시(528)와 매우 유사하다. 예컨대, 스캐너(520) 내에서의 트리거 스캐너(526)가 메시지가 데이터베이스에 기록될 필요가 있다고 결정하면, 메시지는 스캐너 프럭시(528)를 통하여 디스패쳐(554)에 전송될 것이고, 디스패쳐(554)는 데이터베이스 인터페이스(552)로 요구 사항을 전송할 것이고, 이것은 결국 엔터프라이즈 서버상에 데이터 베이스를 업데이트하고 그 작동의 성공 또는 실패를 디스패쳐를 통하여 응답할 것이다. 디스패쳐(554)는 (1) 메시지가 어디로 전송될 것인가와 (2) 메시지가 어떻게 전송되는가에 따라 트랜색션 구성 요소(550) 내에서 다양한 다른 구성 요소에 메시지를 디스패치할 것이다. 예컨대, 스캐너(520) 내에서 발생되는 메시지가 엔터프라이즈 서버(600)상의 MS SQL 데이터베이스에 전송되면, 디스패쳐(554)는 상기 업무를 행할 메시지를 어디에 전송할지를 결정할 수 있다.
트랜잭션 구성 요소(550) 내의 지속 매니저(556)는 모든 한정된 프로젝트, 모든 트리거, 모든 운반 요소 및 저장될 필요가 있어 시스템이 재시작되는 것을 필요로 해야 할 그 밖의 다른 것들을 포함하는 시스템을 실행하는 것이 필요로 되는 모든 정보를 유지할 책임을 가진다. 상기 정보는 내부 디스크 또는 제어기(500) 내의 다른 비휘발 기억 장치에서의 파일(504)에 저장되고, 제어기(500)가 전력을 손실하고 재저장될 필요가 있는 경우에 주로 이용된다. 제어기(500)상의 모든 소프트웨어 구성 요소의 마지막으로 알려진 현재 상태가 파일(504)로부터 판독되어, 제어기(500)가 전력이 저장되는 때에 지속하는 것을 허용한다.
데이터베이스 인터페이스(552)는 엔터프라이즈 통신 제어기(500)로부터 엔터프라이즈 레벨(600)로 데이터를 전송하는 트랜잭션 전송 메카니즘의 일부이다. 데이터베이스 인터페이스(552)는 다수의 데이터베이스 통신 프로토콜 중 어느 하나를 통하여 PLC로부터 엔터프라이즈 레벨(600)상의 데이터베이스로 판독되는 정보를 저장할 책임을 가진다. 데이터베이스는 DB2, Oracle, 또는 MS/SQL 데이터베이스 등의 데이터베이스의 어떤 형태일 수 있다. 데이터베이스 인터페이스(552)는 단일 구성 요소일 수 있고, 다중 구성 요소일 수 있어, 각각은 데이터베이스의 특정 타입에 책임을 가진다.
메시지 큐잉 인터페이스(812), SMTP 인터페이스(813) 및 TCP 인터페이스(814)는 엔터프라이즈 통신 제어기(500)로부터 엔터프라이즈 레벨(600)로 데이터 및 메시지를 전송하는 것에 책임을 가지는 트랜잭션 구성 요소(550)의 일부이다. 이들 인터페이스는 메시지 큐로부터 정보의 수신, SMTP를 통한 특정 어드레스로 전송되는 e-메일 내용의 분석, 또는 TCP/IP 소켓으로부터의 데이터의 판독 등에 의한 다양한 방법을 통해 데이터를 수용할 수 있는 엔터프라이즈 레벨(600)에서 애플리케이션으로 데이터를 이동시키는데 이용될 수 있다. 메시지 큐잉은 Websphere Message Queues, Java Message Queues, JBOSS JMS message queues, 또는 Weblogic JMS message queues 등의 각종 툴을 통해 제공될 수 있다.
저장 및 발송 구성 요소(558)는 통신이 엔터프라이즈 통신 제어기(500)와 엔터프라이즈 레벨(600) 사이에서 이용할 수 없는 경우에 엔터프라이즈 레벨(600)에서 애플리케이션 또는 데이터베이스(602)에 의도되지 않은 메시지를 저장할 구성 요소이다. 메시지가 엔터프라이즈 통신 제어기(500) 내에서의 로컬 하드 디스크 또는 다른 비휘발 기억 장치상에 저장 및 발송 데이터베이스(506)에 저장된다. 저장 및 발송 구성 요소(558)는 통신이 복구될 때 엔터프라이즈 레벨(600)로 저장 및 발송 데이터베이스(506) 내에서 저장된 어떤 메시지를 발송할 것이다. 이들 메시지는 그들이 처음에 수신된 경로에서 전송될 것이다.
도 6은 프로젝트와 트리거가 워크벤치(810)를 이용하는 엔터프라이즈 통신 제어기(500)에 추가되는 프로세스를 나타낸다. 유저는 유저가 프로젝트를 생성하기를 원한다는 것을 진술하는 프럭시(528)로 메시지(1)를 전송한다. 워크벤치(810)로부터 화살표(1)를 통하여 전송되는 메시지는 프로젝트의 생성, 프로젝트로 트리거의 추가, 태그로 데이터 포인트의 명명 등일 수 있다. 스캐너 프럭시(528)는 상기 메시지를 디스패쳐(554)로 화살표(2)를 통하여 발송한다. 디스패쳐(554)는 이것이 지속 매니저를 통하여 파일(502) 내에 저장되는 것을 필요로 하는 결과를 결정하고, 따라서, 메시지(3)는 교대로 정보를 화살표(4)를 통하여 파일(504)에 저장하고, 그 작동의 성공 또는 실패를 화살표(5)를 통하여 디스패쳐(554)에 복귀시키는 지속 매니저로 전송된다. 디스패쳐(554)가 한번 지속 매니저(556)로부터 화살표(5)를 통하여 상태를 수신하면, 그 정보를 화살표(6)를 통하여 스캐너 프럭시(528)로 발송한다. 이 시점에서, 정보는 파일(504)에 영구적으로 저장된다. 스캐너 프럭시(528)는 프로젝트로 트리거 또는 태그를 추가할 것들을 각각 구별하기 위해 그 후 메시지를 화살표(7 및 8)를 통하여 태그 스캐너(524) 및 트리거 스캐너(528)로 전송한다.
데이터 트리거 및 논리 트리거가 각각 도 7 및 8에 도시되어 있다. 도 7에서의 데이터 트리거를 설명하기 위해, 우리는 프로젝트(620)가 이미 생성되어졌고 트리거(622)가 한정되어졌다고 가정할 것이다. 데이터 트리거를 설명하기 위하여, 우리는 PLC상의 특정 데이터 포인트가 변화되어졌을 때 메시지를 엔터프라이즈 서버에 트리거 하기를 원하는 것으로 가정한다. 예컨대, 생산 카운트를 나타내는 데이터 포인트가 하나의 PLC에서 증가될 때, 엔터프라이즈 레벨(600)에서의 유저는 통 지되는 것을 원한다. 상기 경우에서, 태그 스캐너(524)는, 예컨대, 매초에 한번 소정의 비율에서 PLC(204)에서의 생산 카운트를 나타내는 특정 데이터 포인트를 폴링(polling)할 것이다. 따라서, 메시지가 태그 스캐너(524)로부터 백플레인 API(522)으로 매초마다 전송되어 데이터를 복구하고, 데이터는 화살표(1)를 통하여 트리거 스캐너(526)로 전파된다. 트리거 스캐너(526)는 데이터의 값을 구하여 그 값이 데이터의 현재 판독과 데이터의 이전 판독 사이에 변화하였는지를 알아내고, 그렇다면, 트리거 스캐너(526)는 데이터를 취하고, 메시지를 패키지하여, 화살표(2)를 통하여 디스패쳐(554)로 전송한다. 트리거 스캐너(526)로부터 디스패쳐(554)로 전송되는 메시지는 전송에 관한 정보, 즉 엔터프라이즈 레벨(600) 내에서 어디로 데이터가 전송될 것이고, 어떻게 데이터가 전송되는지를 포함한다. 디스패쳐(554)는 메시지가 적당히 처리되도록 어디로 발송되는 것을 필요로 하는지를 결정한다. 예컨대, 메시지가 메시지 큐를 통하여 전송된다면, 디스패쳐(554)는 엔터프라이즈 레벨(600) 내에서 화살표(3)를 통하여 메시지 큐 핸들러(812)로 메시지를 전송할 것이다. 엔터프라이즈 레벨(600) 내에서의 메시지 큐 핸들러(811)는 그 후 메시지가 수신되어졌다고 하면서 트랜잭션 구성 요소(550) 내에서 화살표(5)를 통하여 메시지 큐 메니저(812)로 메시지를 역전송한다. 상기 정보는 화살표(6)를 통하여 디스패쳐(554)로 전송되고, 상태 메시지가 화살표(7)를 통하여 스캐너 프럭시(528)로 전송된다. 화살표(5)를 통하여 전송된 승인이 수신되지 않는다면, 디스패쳐(554)는 이후의 엔터프라이즈 서버(600)로의 송신을 위해 저장 및 발송 구성 요소(558)를 통하여 메시지가 결국 저장 및 발송 데이터베이스(506)에 저장되는 것 을 야기할 것이라는 것을 주목해야 한다. 게다가, 스캐너 프럭시(528)를 향하는 화살표(7)는 로그 매니저(532)를 통하여 로그 메시지가 기록되는 것을 야기할 수 있다.
이제 도 8을 참조하면, 도 8은 PLC의 래더 로직 내에서 발생되는 트리거인 논리 트리거의 결과로서 발생하는 정보의 흐름을 나타낸다. 도 8에서의 메시지의 흐름은 화살표(1 및 8)를 제외하고 도 7의 것과 매우 유사하다. 도 8에서 화살표(1)는 PLC로부터 백플레인 API(522)를 통하여 직접 오는 메시지를 표시한다. 상기 정보는 PLC로부터 메시지의 수신의 결과로서 무엇이 발생할 것인지를 결정할 태그 스캐너(524) 및 트리거 스캐너(526)를 통과한다. 예컨대, 메시지는 PLC(204)에 의해 검출되는 에러 상태일 수 있고, 또는, 예컨대, PLC(204)상의 특정 데이터 포인트에서의 변화의 결과로서 전송되는 메시지일 수 있다. 어떤 경우라도, PLC(204)의 래더 로직은 상기 메시지가 언제 전송될 것인지를 결정할 것이다. 달리 말하면, PLC(204)는 그것이 전송하는 데이터에 대하여 알아내는 것을 필요로 하는 엔터프라이즈 레벨(600)에서의 어떤 실체를 결정한다. 상기 포인트로부터 계속하여, 스캐너(520) 및 트랜잭션 구성 요소(550)를 통한 엔터프라이즈 서버(600)로의 메시지 실행 및 전파는 상태 메시지가 화살표(7)를 통하여 스캐너 프럭시(528)에 의해 수신될 때, 메시지가 화살표(8)를 통하여 PLC(204)에 및 PLC(204)에 데이터가 엔터프라이즈 레벨로 성공적으로 송신되었음을 알게 하도록 백플레인 API(522)에 전송되는 것을 제외하고는, 도 7에서의 데이터 트리거에 묘사된 것과 동일하다. 몇몇 시간의 주기 후, PLC(204)가 성공적인 송신의 확인을 얻는데 실패할 경우, PLC(204) 는 실패를 처리하는데 실행될 몇몇 로직을 아마 가질 것이다. 상기 경우에서, PLC(204)는 아마 데이터 전송을 재시도하거나 데이터 전송이 실패했다고 알리는 경고를 셋팅할 것이다.
도 9는 전원 공급 중단 후 제어기(500)가 그 자체를 복원하는 프로세스를 묘사한다. 상기 경우에서, 목적은 엔터프라이즈 통신 제어기(500)를 전원 공급 중단 이전의 상태로 복원하는 것이다. 상태 정보는 파일(504)로부터 지속 매니저(556)를 통하여 액세스된다. 프럭시(528)는 화살표(1)를 통하여 디스패쳐(554)로 메시지를 전송한다. 디스패쳐(554)는 지속 매니저(556)가 요구를 완료하는 것이 필요하다는 것을 결정하고, 화살표(2)를 통하여 지속 매니저(556)로 메시지를 전송한다. 지속 매니저(556)는 파일(504)로부터 화살표(3)를 통하여 엔터프라이즈 통신 제어기(500)의 이전 상태를 복구하고 화살표(4)의 역을 통하여 스캐너 프럭시(528)로 중계하여 전하는 디스패쳐(554)로 전송한다. 스캐너 프럭시(528)는 그 후 메시지 화살표(7)를 통하여 트리거 스캐너(526)로 모든 트리거(622)를 복구할 수 있고, 화살표(6)를 통하여 태그 스캐너(524)로 모든 태그(624)를 복구할 수 있다.
도 10은 이전에 논의된 저장 및 발송 작동 특징을 묘사한다. 저장 및 발송 특징은 메시지가 엔터프라이즈 서버(600)에 전송되는 것을 필요로 하지만 실패한 네트워크 접속에 의해 전송될 수 없을 때 요구된다. 저장 및 발송 구성 요소는 엔터프라이즈 서버(600)와의 통신 복구를 주기적으로 시도할 것이다. 통신이 엔터프라이즈 제어기(500)와 엔터프라이즈 서버(600) 사이에 복구될 때, 저장 및 발송 데이터베이스(506)에 저장된 모든 메시지는 그들이 수신되어졌던 순서로 엔터프라이 즈 서버(600)로 발송된다. 메시지 큐 핸들러(812)가 상기 특정 메시지를 위한 선택의 전송인 도 10에 도시된 경우에서는, 메시지 큐 핸들러(812)가 엔터프라이즈 서버(600)에서 메시지 큐 메니저(811)에 의해 통신 채널 화살표(1)에 에러가 있다고 결정하자 마자, 메시지 큐 핸들러(812)는 화살표(2)를 통하여 저장 및 발송 매니저(558)로 메시지를 전송한다. 저장 및 발송 매니저(558)는 메시지 큐를 통하여 전송되는 것을 필요로 하는 모든 메시지를 화살표(2)를 통하여 복구한다. 저장 및 발송 매니저(528)는 화살표(3)를 통하여 엔터프라이즈 서버(600)에서 메시지 큐 매니저(811)에 주기적으로 재접속을 시도한다. 접속이 복구되면, 저장 및 발송 메니저(528)는 엔터프라이즈 서버(600)에서 화살표(3)를 통하여 메시지 큐 매니저(811)로 저장된 메시지를 전송한다. 그 후 승인이 저장 및 발송 매니저(558)로부터 화살표(4)를 통하여 메시지 큐 핸들러(812)로 역전송되고 화살표(1)를 통하여 표준 작동이 재개된다. 그 후 데이터의 카피는 저장 및 발송 데이터베이스(506)로부터 제거된다. 상기 동일한 저장 및 발송 메카니즘은 어떤 지원되는 전송 메카니즘에도 적용될 수 있다.
도 11은 감시 계기 시스템 자체 모니터의 작동을 묘사한다. 감시 계기 설비(502)는 스캐너(520) 및 트랜잭션 구성 요소(502)가 실행되고 있는 프로세서가 작동 중이고 양호한지를 결정한다. 감시 계기 구성 요소(502)는 운영 체제와 주기적으로 통신하여 그들의 프로세스 식별자를 통하여 상기 프로세스에 대한 정보를 복구한다. 감시 계기 모니터는 프로세스가 더 이상 실행중이지 않는 것을 나타내는 둘 중의 하나의 프로세스의 프로세스 식별자가 무효하다고 결정하면, 작동 중인 프 로세스는 정지되고 양 프로세스가 그들의 적절한 순서로 재시작되고, 바람직하게는 이 시점에서, 엔터프라이즈 통신 제어기(500)의 이전 상태는 파일(504)로부터 복구된다.
도 12는 엔터프라이즈 통신 제어기(500)의 환경설정이 워크벤치(810)로 익스포트되는 기능을 도시한다. 예를 들면, 이것은 상기 셋업이 상이한 엔터프라이즈 통신 제어기(500) 상에 복제될 필요가 있을 때에 유용할 수 있다. 워크벤치(810)는 화살표(1)를 통해 메세지를 스캐너(520)내의 스캐너 프록시(528)로 송신한다. 스캐너 프록시(528)는 화살표(2)를 통해 메세지를 퍼시스턴스 매니저(556)로 송신한다. 퍼시스턴스 매니저(556)는 파일(504)로부터 현재 상태를 검색하여 화살표(3)를 통해 스캐너 프록시(528)로 반송하고, 화살표(4)를 통해 클라이언트(800)상의 워크벤치(810)로 반송한다.
도 4에 도시된 바와 같이, 워크벤치 성분(810)은 유저의 워크스테이션 및 엔터프라이즈 통신 제어기(500)와의 인터베이스이다. 전형적으로, 워크벤치(810)는 조직체의 엔터프라이즈 레벨(600)로 유저 레벨 컴퓨터 상에서 실행될 것이다. 그러나, 워크벤치(810)는 표준 인터넷 프로토콜을 통해 엔터프라이즈 통신 제어기(500)와 통신하기 때문에 실질적으로 워크벤치(810)는 조직체 내부 또는 그 외부의 모든 컴퓨터에 위치될 수 있다. 앞서 설명한 바와 같이, 워크벤치(810)의 기능 중 하나는 유저가 프로젝트(620)를 생성하도록 한다. 상기 워크벤치(810)는 프로젝트의 구축과 엔터프라이즈 통신 제어기(500)로 프로젝트의 저장을 허용하고, 그곳에서 퍼시스턴스 매니저(556)에 의해 파일(504)에 첨가될 것이다. 또한, 워크벤치(810)는 프로젝트(620)를 시작, 중지, 익스포트, 및 임포트하는 기능을 제공한다. 워크벤치(810)는 동일 세션 동안에 멀티플 엔터프라이즈 통신 제어기(500)와 상호 작용하여 각각의 엔터프라이즈 통신 제어기(500)에서 상기 리스트된 바와 같은 작용을 수행할 수 있다.
프로젝트는 데이터가 엔터프라이즈 통신 제어기(500)로부터 엔터프라이즈 서버(600)로 전송되는 상황 하에 있는 것으로 정의되는 트리거(622) 그룹으로 구성된다. 트리거는 태그(624), 메세지(626), 매크로스(628), 및 익스프레션(629)을 포함할 수 있다. 태그(624)는 데이터형 트리거로 정의되지만, 메세지(626)는 로직형 트리거로 정의된다. 트리거 내에서 정의된 상기 매크로스 설정(628)은 상기 트리거가 단순히 미리 정의된 데이터 처리를 수행하도록 한다. 상기 익스프레션 파서(629)는 상기 PLC 또는 엔터프라이즈 서버(600) 중 어느 하나로부터의 데이터를 유저가 처리하도록 한다. 예를 들면, 엔터프라이즈 서버(600)로 전송하기 이전에 섭씨 온도로부터 화씨 온도로 변경하는 것과 같이, 유저는 숫자 값을 변경하기 위해 익스프레션을 생성할 수 있다. 또한, 엔터프라이즈 통신 제어기(500)로부터 엔터프라이즈 서버(600)로 데이터를 전송하기 위해 사용될 수 있는 상기 트랜스포터(630)의 정보는 트리거(622)내에 포함되어 있다.
워크벤치(810)는 트랜스포트(630)를 정의하기 위해 사용될 수 있다. 트랜스포트(630)는 엔터프라이즈 통신 제어기(500)로부터 엔터프라이즈 서버(600)로 송신될 때의 데이터에 대해 유저가 목적지와 포맷 정보를 제공할 수 있는 메카니즘이다. 트랜스포트는 TCP, 메세지 큐, 데이터베이스(관련 데이터베이스에 대해), 및 SMTP(이메일)을 포함하는 수많은 타입 중의 어느 하나일 수 있다. 생성된 트랜스포트 타입은 유저가 데이터를 송신하려는 애플리케이션 및/또는 데이터베이스에 의존한다. 엔터프라이즈 서버(600)에서 실행하는 애플리케이션과 통신하기 위해, 상기 애플리케이션은 상기 프로토콜 중의 하나를 이해할 수 있어야 하고, 그 프로토콜을 통해 메세지를 인식할 수 있어야 한다. 전형적으로, 데이터는 엔터프라이즈 인트라넷 상의 특정 위치(즉, 애플리케이션), 인터넷 상의 위치로 송신될 수 있거나, DB2, 마이크로소프트 SQL, 또는 오라클 데이터베이스와 같은 데이터베이스로 엔터프라이즈 서버(600)내에 기억될 수 있다. 데이터의 포맷은 XML, ASCⅡ, 또는 데이터베이스 인서트/업데이트를 포함하는 수많은 포맷 중의 어느 하나일 수 있다.
또한, 워크벤치(810)는 엔터프라이즈 통신 제어기(500)에 의해 반송된 태그(624)를 유저가 뷰잉(viewing)할 수 있게 한다. 태그(624)는 PLC내의 메모리 위치를 나타내는 PLC 래더 로직 프로그램 내의 데이터 포인트로 명명된다. 워크벤치(810)는 태그의 트리 뷰(tree view)를 제공할 수 있으며, 상기 태그로부터는 PLC 래더 로직 프로그램 내의 데이터 포인트의 현재 값이 판독될 수 있을 것이다.
워크벤치(810)내의 로그 뷰어(632)는 시스템 이벤트 및 익셉션 에러 로그를 뷰잉하는 수단을 제공한다. 로그 뷰어(632)는 엔터프라이즈 통신 제어기(500)상의 로그 매니저(532)에 의해 생성되어 있는 로그를 유저가 뷰잉할 수 있게 하는 툴이다. 전형적으로, 이들 로그는 유저 액티비티, 에러, 및 시스템 메세지를 추적하고 해석하기 위한 진단 툴로서 사용될 수 있는 오디트 로그와 익셉션 로그를 포함할 수 있다. 전형적으로, PLC204에서 발생하는 액티비티는 데이트, 타임, 액티비티, 타입 및/또는 유저에 의해 로깅(logging)된다.
또한, 워크벤치(810)는 그것과 연결될 수 있는 모든 엔터프라이즈 통신 제어기(500)의 관리에 대한 중심이다. 관리 모듈(640)은 엔터프라이즈 통신 제어기(500)의 네트워크 셋팅(644)을 설정하기, IP 어드레스의 셋팅을 포함하기, 유저와 그들의 특권 레벨(648)을 정의하기, 다양한 트랜스포트 프로토콜(650)에 필요할 수 있는 워크벤치 소프트웨어에 대한 라이센스 매니지먼트 기능을 제공하기, 및 모듈 스테이터스(652)를 통해 엔터프라이즈 통신 제어기(500)와 함께 동일한 샤시(chassis)에 인스톨된 모든 PLC의 래더 로직 프로그램의 상태를 뷰잉하기 등의 관리 기능을 수행하는 수단을 제공한다. 또한, 상기 관리 기능(640)은 외부 시간 동기화 신호를 엔터프라이즈 통신 제어기(500)와 그것과 연결된 모든 PLC로 제공하는 수단을 구비할 수 있다. 워크벤치의 타임 매니지먼트 기능(646)은 유저가 현재 시간을 설정하고, 동기화 셋팅을 설정하며, 전체 시스템에 대해 외부 시간 레퍼런스로서 기능을 하는 동기화 서버를 설정할 수 있도록 한다. 상기 동기화 셋팅은 주파수 업데이트를 포함하고, 컨트롤러(500)는 외부 시간 레퍼런스에 대해 클라이언트로서 기능을 하던지, 그렇지않으면 다른 엔터프라이즈 통신 제어기(500)에 대해 클라이언트 및 서버 둘 다로서 기능을 할 것이다. 또한, 동기화 방법이나 예를 들면, 심플 네트워크 타임 프로토콜(SNTP), 유저 데이타 프로토콜(UDP), TCP 프로토콜, 또는 시간을 동기화하는데에 사용되는 기타 일반적으로 알려진 프로토콜 등의 동기화 프로토콜을 설정하는 것이 가능하다. 또한, 관리 기능은 이메일 어드레스 그룹에 의거한 익셉션 통지 리스트를 정의하는 수단을 제공한다.
워크벤치(810)가 시작될 경우, 그것은 인터넷이나 인트라넷에 연결될 수 있는 가용 엔터프라이즈 통신 제어기(500)를 위한 네트워크를 검색할 수 있는 능력을 가진다. 가용 엔터프라이즈 통신 제어기(500)에 대한 워크벤치(810)의 검색 범위는 IP 서브넷 어드레스를 규정함으로써 제한될 수 있다.
본 발명의 몇몇 다른 실시형태가 있다. 도 13은 엔터프라이즈 통신 제어기(500)가 백플레인 API522를 통해 PLC와 직접 통신하고 있는 다른 실시형태를 도시한다. 상기 구성은 엔터프라이즈 통신 제어기(500)가 전파식별(RFID)리더와 같은 추가 장치와 통신할 필요성이 있는 곳에서 필수적일 수 있고, 그 경우, BP API522b는 외부 장치와 통신하기 위해 상이할 수 있다. 또한, 상기 구성은 다양한 장치(PLC 및 RFIP리더)를 인터페이스하기 위해 멀티플 태그 스캐너(524a, 524b)를 필요로 한다.
어떤 고객 구성에 있어서는, 싱글 엔터프라이즈 통신 제어기(500)가 어떠한 엔터프라이즈 통신 제어기(500) 옵션도 없는 기타 PLC와 교신할 필요가 있을 수 있다. 이것은 백플레인 API를 사용하는 대신에 PLC 통신 모듈과의 통신으로 행해진다. 도 14 및 15에 도시된 바와 같이, 이것을 행할 수 있는 2개의 버젼이 있다. 도 14에서, 엔터프라이즈 통신 제어기는 본 발명의 제 1 실시형태에 대해서 설명되어진 방식으로 PLC(204a)와 인터페이스할 수 있다. 추가적인 PLC(204b)와 통신하기 위해, PLC(204a)는 PLC 통신 포트(210)를 통해 PLC(204b)와 접속된다. 또한, 그 후 엔터프라이즈 통신 제어기(500)가 상기 접속을 통해 PLC(204b)와 인터페이스한다. 예를 들면, PLC(204a와 204b)의 통신 포트(210)간의 접속은 RS2332 접속 또는 TCP/IP를 통해 시리얼 통신일 수 있다. 도 18에 도시된 바와 같이, 도 15는 엔터프라이즈 통신 제어기가 고객 디바이스 드라이버(502)와 함께 구성되어 PLC 통신 포트(210)를 통해 추가적인 PLC(204b)와 통신하는 또 다른 형태의 구성을 도시한다.
어떤 공장 층 환경에 있어서는, 층으로부터 데이터를 수집할 뿐만아니라 상기 층으로 정보를 송신하는 엔터프라이즈 시스템에 대한 요구가 있을 수 있다. 상기 공장 층에서 요구된 처리 정보가 있을 수 있거나, 생산 요청이 판매에 의거하여 변경될 수 있다. 엔터프라이즈 레벨로부터 PLC 레벨로의 상기 데이터 전환을 초기화하는 2가지의 방법이 있다: PLC 요청 또는 엔터프라이즈 푸쉬(push).
도 16에서, 데이터를 검색하는 PLC로부터 자발적 요청 또는 데이터 검색을 요구하는 데이터 변환이 존재한다면, 트리거 스캐너(526)는 화살표(1)를 통해 데이터에 대한 요청을 수신한다. 상기 요청은 화살표(2)를 통해 발송자(554)로 송신된다. 발송자(554)는 요청을 실행하는 적절한 전송 조종자를 선택하여 정보를 발송한다. 이러한 예에 있어서, 요청된 정보가 데이터베이스에 남아있을 수 있으므로, 상기 요청은 화살표(3)을 통해 데이터베이스 인터페이스(552)로 송신된다. 데이터베이스 인터페이스(552)는 화살표(4)를 통해 엔터프라이즈 데이터베이스 서버(560)로부터 적당한 정보를 요구하고 화살표(5)를 통해 상기 정보를 수신한다. 상기 정보는 화살표(6)를 통해 발송자(554)로 반송된 후, 화살표(7)를 통해 프록시(528)로 송신된다. 그 다음, 그것은 PLC204로의 전송을 위해 화살표(8)을 통해 백플레인 API522로 공급된다. 제어 프로세스를 위해 상기 정보는 PLC204에 의해 현재 사용될 수 있다.
또한, PLC 데이터 요청과 동일한 역할을 하는 도 17에 도시된 라이트백(write back)을 초기화한 호스트가 존재한다. 이 경우에 있어서, 엔터프라이즈 레벨(600)에서의 실재는 공장 층상의 어떤 것으로 변화시키려 한다. 이것은 PLC204로 전파되는 엔터프라이즈 레벨(600)에서 초기화된 메세지를 통해 행해지며, 하나 이상의 태그로 데이터를 기록한다. 데이터의 흐름은 초기 요청이 엔터프라이즈 서버(600)로부터 나와서 메세지 큐 매니저(811)를 통해 처리 서버(550)로 송신된다는 것을 제외하고는 도 16에서 도시된 것과 동일하다.
도 18에서 도시하는 본 발명의 다른 실시형태에 있어서는, 엔터프라이즈 통신 제어기(500)는 특별한 타입의 PLC에 대해서는 유용하지 않을 수 있거나, 관련 PLC가 백플레인을 통해 통신할 수 있는 능력을 가지고 있지 않을 수 있다. 이 경우, PLC204와의 통신이 백플레인 API522 외 다른 수단을 통해 행해지도록 본 발명의 제 1 실시형태를 수정하여 외부 PC501, 또는 "유니버셜 엔터프라이즈 통신 제어기"(UECC)를 실행하는 옵션이 존재한다. 이 경우, 특별화된 디바이스 드라이버(502)가 백플레인 API522의 기능 대신한다. 상기 해결책의 모든 다른 능력은 유지된다. 디바이스 드라이버(502)는 시리얼 통신, TCP/IP, 데이터 하이웨이+, 및 프로피버스를 포함하는 하나 이상의 공통의 공장 층 통신 메커니즘을 유지할 수 있다. 전형적으로, 이들 접속은 이더넷 또는 화살표(1)를 통한 UECC 501과 PLC 통신 모듈(210)간의 RS232 접속을 통해 이루어진다. 그러나, 어떤 PLC는 화살표(2)를 통해 그들의 PLC 제어기(212)와의 접속을 필요로 한다. 본 발명의 상기 실시형태에 있어서, UECC 501은 소정의 주어진 시간에 멀티플 PLC와 통신할 수 있다.
도 19에 도시된 바와 같이, 상기한 구조의 확장은 로직 컴포저(812)를 포함하는 경향이 있다. 로직 컴포저(812)는 풍부한 기능 설정을 말단 유저에게 제공하는 일련의 "기능 블록"에 의거한 워크 플로우나 로직 플로우를 말단 유저가 구축할 수 있게 한다. 예를 들면, 이들 기능은 테스트 조항, 데이터 조종, 어떤 트랜스포트로부터의 송수신, 로직 영역을 통한 루프, 엔터프라이즈나 PLC 레벨로부터의 요청 정보 및 기타 워크플로우 아이템을 포함할 수 있다. 로직 컴포저(812)는 각각의 존재 성분에 직접적으로 영향을 주고, 박스내의 주된 활동을 편성한다. 이것은 이미 제공되어진 다른 기능에 더해서 일반적인 비즈니스 로직 플로우를 제공한다. 로직 플로우가 클라이언트에 구축된 후, 저장과 실행을 위하여 화살표(1)를 통해 로직 서버(814)로 보내어진다. 로직 서버(814)의 로직 수행 엔진(816)부는 1) 화살표(2)를 통해 로직 저장 성분(818)에 상기 해상도를 저장하고; 2) 화살표(3)을 통해 영향을 받은 PLC 데이터 태그의 리스트를 작성하여 그것을 레퍼런스 테이블(820)에 저장하며; 3) 화살표(4) 및 (5)를 통하여 각각 퍼프/서브 클라이언트(822)와 퍼브/서브 서버(824)를 통해 필요한 데이타에 기록한다. 시스템이 실행되면, 로직 수행 엔진(816)은 화살표(6) 및 (7)를 통해 데이터 변환을 수신한 후, 필요한 비즈니스 로직이나 데이터 조종을 수행한다. 그 결과 정보가 하나 이상의 옵션을 통해 필요한 유저로 송신될 수 있다. 업데이트된/유추된 정보가 화살표(8)를 통해 스캐너(520)에 의해 PLC204로 반송될 수 있고, 업데이트된/유추된 정보가 화살표(9)를 통해 처리 서버(550)에 의해 엔터프라이즈 서버(600)로 송신될 수 있으며, 또는 업데이트된/유추된 정보가 화살표(10)를 통해 디스플레이 서버(640)에 의해 말단 유저로 디플레이될 수 있다.
또한, 본 발명의 구조는 도 20에 도시된 바와 같이, 3개의 주된 성분으로 구성되는 디스플레이 서브시스템을 포함할 수 있다: 데이터를 뷰잉하는 런타임 뷰어(850), 스크린을 규정하는 워크벤치 디스플레이 컴포저(842), 및 스크린/데이터 업데이트를 유지하고 디스플레이 해상도를 지속시키는 런타임 디스플레이 서버(840). 본 발명의 일 실시형태에 있어서, 워크벤치(810)는 유저가 작동 및 PLC와 엔터프라이즈 서버(600)간의 데이터/메세지 교환을 규정하도록 한다. 또한, 유저는 그들의 뷰잉 요구에 충족하는 스크린을 규정하기 위해 다양한 클라이언트로부터의 데이터를 뷰잉할 필요성을 가진다. 상기 디스플레이 서브시스템은 이들 해상도가 엔터프라이즈 통신 제어기(500)내에서 생성되어, 어떠한 클라이언트에게도 이 데이터를 제공할 수 있게 하는 확실한 툴이다.
디스플레이 컴포저(842)는 데이터가 디스플레이되는 스크린의 해상도를 허용하는 워크벤치(810)에 대한 익스텐션이다. 상기 스크린은 필 바, 텍스트 필드, 버턴, 경고 지시자, 또는 PLC 204에서 데이터 태그와 링크된 기타 디스플레이 객체를 포함할 수 있다. 디스플레이 컴포저(842)는 화살표(1)을 통해 스크린 해상도 정보를 디스플레이 서버(840)의 요청 조정자부(844)로 송신한다. 요청 조정자(844)는 디스플레이 해상도를 국소적으로 디스플레이 저정부(842)에 저장하거나, 독립된 중앙 서버상에 저장될 수 있는 디스플레이를 레퍼런스한다. 또한, 요청 조정자(844)는 디스플레이 해상도의 컨텐츠를 분석하고, 디스플레이에 알릴 필요가 있는 PLC 데이터 태그의 리스트를 생성하여, 이 리스트를 레퍼런스 테이블(846)에 저장한다. 요청 조정자(844)는 데이터에 있어서 변환을 통지하는 PLC를 화살표(4)를 통해 퍼브/서브 클라이언트(822)에게 요청하기 위해 PLC 데이터 태그의 리스트를 사용한다. 화살표(5)를 통해 퍼브/서브 클라이언트(822)는 제 1 실시형태의 스캐너(520)에 대해서 향상된 퍼브/서브 서버(824)에 의해 이들 요청을 등록한다. 태그가 공장 층 변화에 의거하여 PLC에서 업데이트되면, 퍼브/서브 서버(824)는 퍼브/서브 클라이언트(822), 화살표(6) 및 (7)를 통해 요청 조정자(844)로 상황에 있어서의 변화를 송신한다. 그 다음, 디스플레이 정보가 업데이트되고, 화살표(8)를 통해 적당한 뷰어로 송신된다. 클라이언트(800)에서의 뷰어 애플리케이션(850)은 독점 뷰어일 수 있거나, 일반적인 상용 웹 브라우저일 수 있다. 클라이언트에 의존하여, 화살표(8)의 프로토콜은 독점 프로토콜이거나 표준 HTTP 또는 HTTPS일 수 있다.
상기한 구조의 익스텐션은 엔터프라이즈 레벨(600)로 데이터를 송신하기 전에 유저가 데이터의 추가적인 조종을 할 수 있게 하는, 도 21에 도시된 익스프레션 파서를 포함하는 경향이 있다. 현재의 구조는 디바이스 상에서 규정된 데이터 포인트 또는 태그를 다양한 출력 소스로 기록하는 것을 허용한다. 출력 소소에 대한 데이터 포인트의 어소시에이션이 트리거의 페이로드를 규정하는 동안에 이루어진다. 이들 초기 데이터 포인터 값을 기록하면서, 출력 소스에 대한 산출된 값을 기록하는 것이 바람직할 경우가 존재한다. 상기 연산으로의 입력은 유저에 의해 정의된 상수값과 함께 디바이스로부터 데이터 포인트 값 판독으로 구성될 수 있다. 상기 인핸스먼트는 트리거 페이로드의 일부로서의 데이터 포인트 값 및 상수값을 구성하면서 유저가 수학 방정식을 정의할 수 있게한다. 상기 방정식의 결과가 상기 디바 이스 상에서 발생하여 대응 트리거가 발사될 때에 데이터 포인트 값 판독을 사용한다. 상기 인핸스먼트는 태그 값 및 상수값 뿐만 아니라 산출된 값을 포함하는 데이터 기록 능력을 확장시킨다.
익스프레션 컴포저(818)를 사용하여, 워크벤치(810)는 유저가 트리거 페이로드내의 데이터 소스로서 수학 방정식을 생성할 수 있게한다. 태그 값을 페이로드 해상도로 드래그하고 드랍(drop)할 수 있음과 아울러, 또한 유저는 미리 규정된 매크로 값(타임스탬프스)과 유저가 규정한 매크로 값(상수)을 트리거 페이로드로 드래그하고 드랍할 수 있다. 또한, 익스프레션 컴포저(818)는 유저에게 트리거 페이로드로 공식을 드래그하는 능력을 제공한다. 공식 매크로를 트리거 페이로드로 드랍핑하는 것은 익스프레션 컴포저(818)를 초기화하여, 디바이스 상에서 런타임에 평가된 수학 익스프레션의 해상도로 유저에게 제공한다. 에디터는 유저가 표준 계산기를 리젬블링하는 인터페이스로부터 수학 연산자와 함께 상수 분수값을 입력할 수 있게 한다. 추가적으로, 에디터는 유저가 분수 데이터 포인트를 방정식으로 드래그하고 드랍할 수 있게 한다.
도 21은 상기한 익스프레션 컴포저 특성에 대한 데이터의 흐름을 도시한다. 익스프레션 컴포저(818)는 유저가 그래픽적으로 수식 및 로직 익스프레션을 작성할 수 있게 하는 클라이언트(800) 상에서 실행되는 유저 레벨 클라이언트 애플리케이션이다. 익스프레션 해상도는 화살표(1)를 통해 익스프레션 서버(870)내의 익스프레션 파서 엔진(872)으로 보내어진다. 방정식 해상도는 익스프레션 저장부(874)에 국소적으로 저장된다. 익스프레션 파서(872)는 익스프레션 해상도를 분석하고, 익 스프레션을 평가하여 화살표(3)를 통해 레퍼런스 테이블(826)에 이들을 저장하기 위해 알려질 필요가 있는 PLC 데이터 태그의 리스트를 생성한다. 익스프레션 파서(872)는 공표/기록 클라이언트(822)로의 화살표(4)를 통해, 관련되는 데이터 내에서의 어떠한 변화를 통지하는 PLC로 요청을 만들기 위해 PLC 데이터 태그 리스트를 사용한다. 공표/기록 클라이언트(822)는 화살표(5)를 통해 공표/기록 서버(824)와 함께 이들 요청을 등록하고, 화살표(6) 및 (7)를 통해 이들 데이터 아이템의 어떠한 변화를 통지한다. 익스프레션의 평가 결과는 메시지를 엔터프라이즈 레벨(600)로 송신하기 위해 상기한 방식으로 화살표(8) 및 (9)를 통해 유저로 보내어질 수 있다.
여기에서 본 발명의 바람직한 실시형태가 설명되었지만, 상기 기술분야에서 본자의 통상적인 기술 중의 하나로 이해되어야하며, 본 발명의 범위는 균등물 및 유사한 기능을 수행하는 기타 충족물을 포함하는 경향이 있다. 본 발명의 범위는 아래의 클레임에서 규정된다.
본 발명은 제조 프로세스를 직접 제어하고 수정하는 능력을 제공하는 것 뿐만 아니라 데이터를 캡쳐하고 플랜트 플로어 상에서 발생하는 개개의 이벤트를 식별하는 효과가 있다.

Claims (48)

  1. 제어 및 감시 장치와 데이터 통신하는 시스템에 있어서:
    상기 제어 및 감시 장치에 연결되어 상기 제어 및 감시 장치와 통신하는 제어기로서, 네트워크 접속, 및 상기 제어기에 설치된 소프트웨어를 갖는 제어기를 포함하며;
    상기 소프트웨어는 상기 제어 및 감시 장치로부터 데이터를 판독하고, 상기 제어 및 감시 장치로부터 비청구 메시지를 수신하며, 상기 소프트웨어는 상기 데이터 및 메시지를 상기 네트워크 접속을 통하여 수신지에 전송하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  2. 제 1 항에 있어서,
    상기 제어 및 감시 장치는 프로그램가능한 논리 제어기(PLC)이고, 상기 데이터는 상기 프로그램가능한 논리 제어기로부터 판독된 이산데이터 포인트인 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  3. 제 2 항에 있어서,
    상기 데이터는 하나 이상의 트리거 상태의 발생에 따라 상기 네트워크 접속을 통하여 전송되는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  4. 제 3 항에 있어서,
    상기 하나 이상의 트리거 상태는 상기 PLC로부터의 비청구 메시지의 수신으로 구성되는 그룹, 상기 PLC로부터 판독된 데이터 포인트의 변화, 및 상기 PLC로부터 판독된 데이터 포인트에 관한 논리 상태의 만족으로부터 선택되는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  5. 제 4 항에 있어서,
    상기 제어기는 프로그램가능하여 상기 트리거 상태를 규정하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  6. 제 2 항에 있어서,
    상기 소프트웨어는 상기 네트워크 접속을 통해서 수신된 요구에 응답하여 상기 데이터를 상기 네트워크 접속을 통하여 수신지에 전송하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  7. 제 5 항에 있어서,
    상기 트리거 상태의 상기 프로그래밍은 상기 데이터의 상기 수신지에 관한 정보 및 상기 트리거 상태의 만족에 따라 상기 데이터가 전송되게 하는 포맷을 포함하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  8. 제 7 항에 있어서,
    상기 데이터는 상기 네트워크 접속을 통하여 상기 수신지에 전송되기 전에 포맷되는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  9. 제 8 항에 있어서,
    상기 포맷 데이터는 TCP, 메시지 큐, SMTP, 및 SQL 데이터베이스 호출을 포함하는 하나 이상의 다른 프로토콜을 사용한 상기 네트워크 접속을 통하여 전송되는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  10. 제 7 항에 있어서,
    상기 소프트웨어는 상기 데이터를 데이터베이스에 삽입하거나 또는 데이터베이스에 이미 상주하는 데이터를 업데이트하며, 상기 데이터베이스는 상기 네트워크 접속을 통하여 상기 제어기에 접속된 컴퓨터에 상주하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  11. 제 8 항에 있어서,
    상기 소프트웨어는 상기 네트워크 접속을 통하여 상기 제어기에 접속된 컴퓨터상에서 실행되는 애플리케이션에 상기 포맷 메시지를 전송하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  12. 제 7 항에 있어서,
    상기 제어기상의 비휘발성 기억 장치에 포함된 하나 이상의 구성 파일을 더 포함하며, 상기 구성 파일은 모두 규정된 프로젝트, 전송 및 범용 세팅의 기록을 포함하며, 상기 소프트웨어는 그 자체를 전원 장애 상태로부터의 회복에 따라 상기 구성 파일을 사용한 이전 상태로 복구하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  13. 제 7 항에 있어서,
    상기 PLC로부터 판독된 모든 참조 이산 데이터 포인트의 현재 상태를 포함하는 휘발성 작업용 기억 영역을 더 포함하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  14. 제 8 항에 있어서,
    상기 제어기상의 비휘발성 기억 장치에 포함된 일시 기억 영역을 더 포함하며, 상기 포맷 데이터는 상기 네트워크 접속이 이용되지 않는 경우에 기억되는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  15. 제 14 항에 있어서,
    상기 소프트웨어는 상기 네트워크 접속이 이용되는 경우 상기 일시 기억 영 역에 기억된 모든 포맷 데이터를 재전송하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  16. 제 8 항에 있어서,
    상기 제어기내의 비휘발성 기억 장치에 기억된 하나 이상의 로그 파일을 더 포함하며, 상기 소프트웨어는 상기 로그 파일을 등록하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  17. 제 8 항에 있어서,
    상기 네트워크 접속을 통하여 상기 제어기에 접속된 컴퓨터상에서 실행되는 유저 애플리케이션을 더 포함하며, 상기 유저 애플리케이션은 상기 유저가 상기 제어기를 구성 및 프로그램하게 하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  18. 제 18 항에 있어서,
    상기 유저는 하나 이상의 트리거 상태로 구성되는 프로젝트를 생성하고, 상기 프로젝트는 상기 네트워크 접속을 통하여 상기 제어기내의 상기 소프트웨어에 다운로드되는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  19. 제 18 항에 있어서,
    상기 유저는 상기 데이터의 특정 수신지 및 상기 특정 수신기와의 관련 트리거 상태를 규정하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  20. 제 19 항에 있어서,
    상기 특정 수신지는 네트워크 접속을 갖는 컴퓨터상에서 실행되는 애플리케이션, 네트워크 접속을 갖는 컴퓨터상에 상주하는 데이터베이스, 및 이메일 어드레스로 구성되는 그룹으로부터 선택되는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  21. 제 20 항에 있어서,
    상기 제어기는 상기 트리거 상태가 만족될 경우 상기 데이터를 트리거 상태와 관련된 상기 특정 수신지에 직접 전송하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  22. 제 20 항에 있어서,
    상기 유저는 상기 데이터를 상기 특정 수신지에 전송하는데 사용되는 방법을 지정하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  23. 제 22 항에 있어서,
    상기 방법은 TCP 메시지, SQL 데이터베이스 호출, 및 SMTP 메시지를 포함하는 그룹으로부터 선택되는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  24. 제 2 항에 있어서,
    상기 제어기 및 상기 PLC는 공통 백플레인을 공유하고, 상기 제어기는 상기 백플레인을 통하여 상기 PLC와 통신하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  25. 제 24 항에 있어서,
    상기 제어기는 공통 백플레인과 다중 PLC를 공유하고, 상기 공유 백플레인을 통하여 상기 다중 PLC와 통신하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  26. 제 24 항에 있어서,
    상기 PLC는 통신 채널을 통하여 제 2 PLC에 연결되고, 상기 제어기는 백플레인을 공유하는 PLC를 통하여 상기 제 2 PLC와 통신하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  27. 제 24 항에 있어서,
    상기 통신 채널은 직렬 접속 또는 TCP/IP 접속을 포함하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  28. 제 2 항에 있어서,
    상기 소프트웨어는 통신 장치 드라이버를 더 포함하고, 상기 장치 드라이버는 상기 제어기가 통신 채널을 통하여 제 2 PLC와 통신하게 하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  29. 제 28 항에 있어서,
    상기 통신 채널은 직렬 접속 또는 TCP/IP 접속을 포함하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  30. 제 2 항에 있어서,
    상기 제어기는 상기 PLC상에서 상기 이산 데이터 포인트를 수정하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템..
  31. 제 30 항에 있어서,
    상기 PLC는 상기 제어기로부터 특정 데이터를 요구하고, 상기 제어기는 상기 네트워크 접속을 통하여 상기 PLC에 의해 요구된 상기 데이터를 검색하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  32. 제 7 항에 있어서,
    상기 제어기를 구성하며, 상기 트리거 상태를 규정하고, 상기 데이터에 대한 상기 수신지를 규정하기 위해서 상기 네트워크 접속을 통하여 상기 제어기에 접속된 컴퓨터상에서 실행되는 유저 애플리케이션을 더 포함하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  33. 제 2 항에 있어서,
    상기 소프트웨어는 상기 PLC로부터 판독된 상기 데이터의 변화를 트래킹하고 논리 조작을 상기 PLC로부터 판독된 상기 데이터에 적용하는 논리 서버를 더 포함하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  34. 제 33 항에 있어서,
    상기 논리 서버에 대한 논리 흐름을 구성하기 위해서 상기 네트워크 wqj속을 통하여 상기 제어기에 접속된 컴퓨터상에서 실행되는 논리 컴포저 애플리케이션을 더 포함하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  35. 제 2 항에 있어서,
    상기 소프트웨어는 상기 네트워크 접속을 통하여 상기 제어기에 접속된 유저 디스플레이를 유지하고 업데이트하는 디스플레이 서버를 더 포함하는 것을 특징으 로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  36. 제 35 항에 있어서,
    상기 디스플레이 서버에 의해 유지되고 업데이트된 상기 디스플레이를 뷰잉하기 위해서 상기 네트워크 접속을 통하여 상기 제어기에 접속된 컴퓨터상에서 실행되는 뷰어 애플리케이션을 더 포함하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  37. 제 36 항에 있어서,
    상기 뷰어 애플리케이션은 웹 브라우저인 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  38. 제 2 항에 있어서,
    수리 또는 논리 익스프레션을 평가하고 상기 PLC로부터 판독된 데이터를 사용하는 익스프레션 서버를 더 포함하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  39. 제 38 항에 있어서,
    상기 익스프레션 서버에 대한 수리 또는 논리 익스프레션을 구성하기 위해서 상기 네트워크 접속을 통하여 상기 제어기에 접속된 컴퓨터상에서 실행되는 익스프 레션 컴포저 애플리케이션을 더 포함하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  40. 제 23 항에 있어서,
    상기 제어기는 PC이고, 상기 소프트웨어는 장치 드라이버를 더 포함하고, 상기 장치 드라이버는 상기 PC가 하나 이상의 통신 채널을 통하여 하나 이상의 PLC와 통신하게 하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  41. 제 40 항에 있어서,
    상기 하나 이상의 통신 채널은 직렬 접속 또는 TCP/IP 접속 중 하나를 포함하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  42. PLC와 데이터 통신하는 시스템에 있어서:
    상기 PLC에 연결되어 상기 PLC와 통신하는 제어기로서, 상기 PLC로부터 특정 데이터 포인트를 판독하는 제어기를 포함하며;
    상기 제어기는,
    네트워크 접속;
    트리거 상태를 평가하고 상기 트리거 상태가 만족될 경우 상기 PLC로부터 판독된 하나 이상의 상기 데이터 포인트를 상기 네트워크 접속을 통하여 소정의 수신지에 전송하는 상기 제어기에 설치된 소프트웨어 컴포넌트; 및
    상기 제어기를 구성하고, 상기 트리거 상태를 규정하고, 상기 소정의 수신지를 규정하기 위해서 상기 네트워크 접속을 통하여 상기 제어기에 접속된 컴퓨터상에서 실행되는 유저 애플리케이션을 가지는 것을 특징으로 하는 PLC와 데이터 통신하는 시스템.
  43. 제 42 항에 있어서,
    상기 소정의 수신지는 네트워크 접속을 갖는 컴퓨터상에서 실행되는 애플리케이션, 네트워크 접속을 갖는 컴퓨터상에 상주하는 데이터베이스, 및 이메일 어드레스로 구성되는 그룹으로부터 선택되는 것을 특징으로 하는 PLC와 데이터 통신하는 시스템.
  44. 제 42 항에 있어서,
    상기 제어기는 상기 PLC의 백플레인으로 플러그되고 상기 백플레인을 통하여 상기 PLC와 통신하는 것을 특징으로 하는 PLC와 데이터 통신하는 시스템.
  45. 제 42 항에 있어서,
    상기 트리거 상태는 상기 PLC로부터의 비청구 메지의 수신, 상기 PLC로부터판독된 데이터 포인트의 변화, 및 상기 PLC로부터 판독된 데이터 포인트에 관한 논리 상태의 만족으로 구성되는 그룹으로부터 선택되는 것을 특징으로 하는 PLC와 데이터 통신하는 시스템.
  46. 제어 및 감시 장치와 데이터 통신하는 시스템에 있어서:
    하나 이상의 상기 제어 및 감시 장치에 연결되어 이 장치와 통신하는 PC를 포함하며;
    상기 PC는,
    네트워크 접속; 및
    상기 PC에 설치된 소프트웨어로서, 상기 하나 이상의 제어 및 감시 장치로부터 데이터를 판독하고 상기 하나 이상의 제어 및 감시 장치로부터 비청구 메시지를 수신하는 장치 드라이버를 포함하는 소프트웨어를 가지며;
    상기 소프트웨어는 상기 데이터 및 메시지를 상기 네트워크 접속을 통하여 수신지에 전송하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  47. 제 46 항에 있어서,
    상기 하나 이상의 제어 및 감시 장치는 프로그램가능한 논리 제어기(PLC)이고, 상기 데이터는 상기 하나 이상의 프로그램가능한 논리 제어기로부터 판독된 이산 데이터 포인트인 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
  48. 제 47 항에 있어서,
    상기 PC는 하나 이상의 대응하는 통신 채널을 통하여 하나 이상의 PLC에 연결되고, 상기 통신 채널은 직렬 접속 또는 TCP/IP 접속 중 하나를 포함하는 것을 특징으로 하는 제어 및 감시 장치와 데이터 통신하는 시스템.
KR1020060049526A 2005-06-01 2006-06-01 제조와 엔터프라이즈 레벨간의 통신 모델 KR20060125594A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/142,200 US7904181B2 (en) 2004-06-01 2005-06-01 Model for communication between manufacturing and enterprise levels
US11/142,200 2005-06-01

Publications (1)

Publication Number Publication Date
KR20060125594A true KR20060125594A (ko) 2006-12-06

Family

ID=36940612

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060049526A KR20060125594A (ko) 2005-06-01 2006-06-01 제조와 엔터프라이즈 레벨간의 통신 모델

Country Status (10)

Country Link
US (1) US7904181B2 (ko)
EP (1) EP1736839A3 (ko)
JP (1) JP5005263B2 (ko)
KR (1) KR20060125594A (ko)
CN (1) CN1901671A (ko)
AU (1) AU2006202340A1 (ko)
CA (1) CA2549321C (ko)
IL (1) IL175962A (ko)
MX (1) MXPA06006195A (ko)
TW (1) TW200710750A (ko)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7689711B2 (en) 2001-03-26 2010-03-30 Salesforce.Com, Inc. System and method for routing messages between applications
US9948644B2 (en) 2001-03-26 2018-04-17 Salesforce.Com, Inc. Routing messages between applications
US7788399B2 (en) 2001-03-26 2010-08-31 Salesforce.Com, Inc. System and method for mapping of services
US7801628B2 (en) * 2005-09-30 2010-09-21 Rockwell Automation Technologies, Inc. Industrial operator interfaces interacting with higher-level business workflow
US20070226318A1 (en) * 2006-02-21 2007-09-27 Rydberg Kris M System, method, and device for communicating between a field device, device controller, and enterprise application
US8266308B2 (en) * 2006-02-21 2012-09-11 Comtrol Corporation System, method, and device for communicating between a field device, device controller, and enterprise application
US7463935B1 (en) * 2006-03-09 2008-12-09 Rockwell Automation Technologies, Inc. Message queuing in an industrial environment
US9594606B2 (en) * 2006-06-06 2017-03-14 Siemens Industry, Inc. Runtime extension framework
US20070288482A1 (en) * 2006-06-09 2007-12-13 Bea Systems, Inc. RFID Workflow Client
US8120489B2 (en) * 2006-06-09 2012-02-21 Oracle International Corporation Workflow improvements
US7880590B2 (en) 2006-07-18 2011-02-01 Hewlett-Packard Development Company, L.P. Method and apparatus for localization of configurable devices
US7852198B2 (en) * 2006-07-18 2010-12-14 Hewlett-Packard Development Company, L.P. RF tag
DE102006038696B4 (de) * 2006-08-18 2012-05-03 Dematic Gmbh System und Verfahren zur Steuerung einer fördertechnischen Anlage mit einer Kommunikationsvorrichtung zur Umwandlung von Daten zwischen unterschiedlichen Datenformaten
US20080126352A1 (en) * 2006-09-27 2008-05-29 Rockwell Automation Technologies, Inc. Client side state cache for industrial control systems
CN101681282A (zh) 2006-12-06 2010-03-24 弗森多系统公司(dba弗森-艾奥) 用于共享的、前端、分布式raid的装置、系统和方法
US8380842B2 (en) 2007-04-26 2013-02-19 Mtelligence Corporation System and methods for the universal integration of plant floor assets and a computerized management system
EP2191336B1 (en) * 2007-09-21 2012-03-14 Siemens Aktiengesellschaft Method of configuring manufacturing execution systems
DE102007045926A1 (de) * 2007-09-26 2009-04-02 Robert Bosch Gmbh Schnittstelle zwischen einem Fertigungsmanagementsystem und einem Automatisierungssystem
US20090327023A1 (en) * 2008-06-25 2009-12-31 Nanji Chris System for management and control of an enterprise
EP2161637B1 (en) * 2008-09-04 2015-05-20 Siemens Aktiengesellschaft Method for updating manufacturing planning data for a production process
EP2309432A1 (en) * 2009-09-07 2011-04-13 Siemens Aktiengesellschaft A method and a system for propagating a scaling mode in a production process
US9223514B2 (en) 2009-09-09 2015-12-29 SanDisk Technologies, Inc. Erase suspend/resume for memory
US8289801B2 (en) 2009-09-09 2012-10-16 Fusion-Io, Inc. Apparatus, system, and method for power reduction management in a storage device
US8468270B2 (en) 2009-12-11 2013-06-18 General Electric Company Method, system, and apparatus for archiving networked data
WO2011143628A2 (en) * 2010-05-13 2011-11-17 Fusion-Io, Inc. Apparatus, system, and method for conditional and atomic storage operations
WO2012016089A2 (en) 2010-07-28 2012-02-02 Fusion-Io, Inc. Apparatus, system, and method for conditional and atomic storage operations
US8725934B2 (en) 2011-12-22 2014-05-13 Fusion-Io, Inc. Methods and appratuses for atomic storage operations
US8984216B2 (en) 2010-09-09 2015-03-17 Fusion-Io, Llc Apparatus, system, and method for managing lifetime of a storage device
JP2012084119A (ja) * 2010-09-16 2012-04-26 Ricoh Co Ltd 機器管理装置および機器管理プログラム
US8910143B2 (en) * 2010-09-20 2014-12-09 General Electric Company Conversion system and method for use in upgrading a monitoring system
US9218278B2 (en) 2010-12-13 2015-12-22 SanDisk Technologies, Inc. Auto-commit memory
US10817502B2 (en) 2010-12-13 2020-10-27 Sandisk Technologies Llc Persistent memory management
US10817421B2 (en) 2010-12-13 2020-10-27 Sandisk Technologies Llc Persistent data structures
US9208071B2 (en) 2010-12-13 2015-12-08 SanDisk Technologies, Inc. Apparatus, system, and method for accessing memory
US9588503B2 (en) 2011-11-15 2017-03-07 Rockwell Automation Technologies, Inc. Routing of enterprise resource planning messages
US9551983B2 (en) 2011-11-15 2017-01-24 Rockwell Automation Technologies, Inc. Activity set management in a Manufacturing Execution System
US9953280B2 (en) 2011-11-15 2018-04-24 Rockwell Automation Technologies, Inc. Industry-specific workflows in a manufacturing execution system with premier integration
US10133662B2 (en) 2012-06-29 2018-11-20 Sandisk Technologies Llc Systems, methods, and interfaces for managing persistent data of atomic storage operations
US9274937B2 (en) 2011-12-22 2016-03-01 Longitude Enterprise Flash S.A.R.L. Systems, methods, and interfaces for vector input/output operations
US9251086B2 (en) 2012-01-24 2016-02-02 SanDisk Technologies, Inc. Apparatus, system, and method for managing a cache
US20150072707A1 (en) * 2012-03-16 2015-03-12 Qoros Automotive Co., Ltd. Mobile system and method for marking location
CN103914018A (zh) * 2012-12-31 2014-07-09 施耐德电器工业公司 可编程控制器的编程辅助系统及方法
US9454158B2 (en) 2013-03-15 2016-09-27 Bhushan Somani Real time diagnostics for flow controller systems and methods
US9535808B2 (en) 2013-03-15 2017-01-03 Mtelligence Corporation System and methods for automated plant asset failure detection
US10543706B2 (en) * 2013-08-09 2020-01-28 MeccoPartners, LLC EIP protocol converter system for laser for dot peen marking systems
US9842302B2 (en) 2013-08-26 2017-12-12 Mtelligence Corporation Population-based learning with deep belief networks
CN103592907B (zh) * 2013-10-14 2016-02-17 苏州市职业大学 一种网络采集系统
EP3202066B1 (en) * 2014-09-30 2023-05-17 Emerson Process Management LLLP Field device with self-recovery
DE112014006946T5 (de) 2014-10-10 2017-06-14 Mitsubishi Electric Corporation Speicherprogrammierbare Steuerung
US9922097B2 (en) * 2015-04-28 2018-03-20 Splunk Inc. Facilitating configuration of alerts based on information obtained from search results in a query-processing system
CN105843157B (zh) * 2016-03-30 2018-10-12 上海云统信息科技有限公司 具有远程数据追踪捕捉功能的plc系统及其工作方法
US10887395B2 (en) 2016-11-21 2021-01-05 Ecosteer Srl Processing signals from a sensor group
CN109190944A (zh) * 2018-08-20 2019-01-11 国药集团重庆医药设计院有限公司 药企生产制造执行系统
JP7245742B2 (ja) * 2019-07-25 2023-03-24 東芝三菱電機産業システム株式会社 Scadaウェブhmiサーバ装置
US11693386B2 (en) * 2019-08-27 2023-07-04 Samsung Eleotronics Co., Ltd. Method and electronic device for guiding semiconductor manufacturing process
CN114518724B (zh) * 2022-01-28 2023-04-28 弥费科技(上海)股份有限公司 一种适用于amhs系统的通讯装置及通讯方式

Family Cites Families (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5038318A (en) * 1987-12-17 1991-08-06 Square D Company Device for communicating real time data between a programmable logic controller and a program operating in a central controller
US5245704A (en) * 1990-03-22 1993-09-14 Square D Company System for sharing data between microprocessor based devices
GB9006661D0 (en) * 1990-03-24 1990-05-23 Reflex Manufacturing Systems L Network-field interface for manufacturing systems
US5377315A (en) * 1992-10-06 1994-12-27 Leggett; Andrew G. Regeneration of process control flow diagrams for programmable logic controllers
US5473757A (en) * 1992-12-11 1995-12-05 Ge Fanuc Automation North America, Inc. I/O controller using single data lines for slot enable/interrupt signals and specific circuit for distinguishing between the signals thereof
JPH06304850A (ja) * 1993-04-23 1994-11-01 Keyence Corp 生産管理データ集計装置及び生産管理用端末装置
US5555504A (en) * 1994-06-10 1996-09-10 Johnson & Johnson Vision Products, Inc. Production line tracking and quality control system
DE69635409T2 (de) * 1995-03-06 2006-07-27 Intel Corp., Santa Clara Ein rechnersystem mit unbewachter auf-anfrage-verfügbarkeit
US5729067A (en) * 1995-08-30 1998-03-17 Eaton Corporation Method and apparatus for closed loop position control in a linear motor system
US6401081B1 (en) 1995-11-20 2002-06-04 Schlumberger Resource Management Services, Inc. Modular object-based architecture for extensible master station software
GB2319866B (en) * 1996-01-31 1999-04-14 Mitsubishi Electric Corp Data processing apparatus
TWI249760B (en) 1996-07-31 2006-02-21 Canon Kk Remote maintenance system
US6175765B1 (en) * 1997-03-05 2001-01-16 Medtronic Physio-Control Manufacturing Corp. H-bridge circuit for generating a high-energy biphasic waveform in an external defibrillator
JP3295753B2 (ja) * 1997-08-01 2002-06-24 株式会社椿本チエイン 負荷監視装置
US6370569B1 (en) * 1997-11-14 2002-04-09 National Instruments Corporation Data socket system and method for accessing data sources using URLs
US6108662A (en) 1998-05-08 2000-08-22 Allen-Bradley Company, Llc System method and article of manufacture for integrated enterprise-wide control
US6252363B1 (en) * 1998-06-01 2001-06-26 Prestolite Wire Corporation Circuit for timed position control of device driven by a DC motor
JP2000047707A (ja) * 1998-07-27 2000-02-18 Omron Corp 情報管理装置およびその制御方法
US6853867B1 (en) * 1998-12-30 2005-02-08 Schneider Automation Inc. Interface to a programmable logic controller
US6147601A (en) * 1999-01-09 2000-11-14 Heat - Timer Corp. Electronic message delivery system utilizable in the monitoring of remote equipment and method of same
US6268853B1 (en) * 1999-09-30 2001-07-31 Rockwell Technologies, L.L.C. Data structure for use in enterprise controls
CA2389183C (en) 1999-10-27 2008-05-20 Roy-G-Biv Corporation Systems and methods for generating and communicating motion data through a distributed network
WO2001033759A1 (en) 1999-11-03 2001-05-10 Avantcom Network, Inc. Method of sharing proprietary information
DE19962230A1 (de) * 1999-12-22 2001-06-28 Siemens Ag Industrielle Steuerung für Werkzeugmaschinen, Roboter und/oder Fertigungsmaschinen
US6408260B1 (en) * 2000-02-16 2002-06-18 Cymer, Inc. Laser lithography quality alarm system
US6801835B2 (en) * 2000-02-28 2004-10-05 Autogas Systems, Inc. System and method for controlling an automated fueling station
US6373389B1 (en) * 2000-04-21 2002-04-16 Usm Systems, Ltd. Event driven information system
AU2001255627A1 (en) * 2000-04-24 2001-11-07 Spectrum Controls, Inc. Method, system, and apparatus for providing data regarding the operation and monitoring of a control system
US20010054044A1 (en) * 2000-06-14 2001-12-20 Liu Yi Bo Method for monitoring and browsing database of test system
US20020022969A1 (en) 2000-07-07 2002-02-21 Berg Marc Van Den Remote automated customer support for manufacturing equipment
US6757714B1 (en) 2000-07-28 2004-06-29 Axeda Systems Operating Company, Inc. Reporting the state of an apparatus to a remote computer
US6760782B1 (en) * 2000-08-04 2004-07-06 Schneider Automation Inc. Apparatus for controlling internetwork communications
JP2002091888A (ja) * 2000-09-12 2002-03-29 Digital Electronics Corp 制御システムおよびそれに適用されるメール送信プログラムを記録した記録媒体
US6728262B1 (en) * 2000-10-02 2004-04-27 Coi Software, Inc. System and method for integrating process control and network management
JP2002152259A (ja) * 2000-11-13 2002-05-24 Yozan Inc 通信端末装置および課金処理装置
US7162534B2 (en) * 2001-07-10 2007-01-09 Fisher-Rosemount Systems, Inc. Transactional data communications for process control systems
JP2003111151A (ja) * 2001-09-27 2003-04-11 Fuji Electric Co Ltd 遠隔監視制御用通信アダプタ及び遠隔監視制御方法
US7200448B2 (en) * 2001-11-27 2007-04-03 Rockwell Automation Technologies, Inc. System and method for function block execution order generation
ES2328121T3 (es) * 2001-12-18 2009-11-10 SIEMENS ENERGY & AUTOMATION, INC. Radiomensajeria numerica y por texto mediante modem incorporado a un plc.
JP3984046B2 (ja) * 2001-12-21 2007-09-26 日清エンジニアリング株式会社 情報配信装置並びにリモートエンジニアリングシステム
JP3783644B2 (ja) * 2002-04-03 2006-06-07 ブラザー工業株式会社 端末情報通知システム、ネットワーク端末装置及びコンピュータプログラム
JP2004005306A (ja) * 2002-06-03 2004-01-08 Hitachi High-Technologies Corp プロセス運転監視操作装置
US7149604B2 (en) * 2002-11-25 2006-12-12 Honda Giken Kogyo Kabushiki Kaisha Method and system for backing up programmable logic controllers over network
JP4161189B2 (ja) * 2002-12-27 2008-10-08 オムロン株式会社 情報監視支援装置及び情報監視システム
JP2004213406A (ja) * 2003-01-06 2004-07-29 Mitsubishi Electric Corp プログラマブルコントローラの情報通信ユニット、ファクトリオートメーション機器の遠隔管理システムおよびその方法
US6840086B2 (en) * 2003-03-06 2005-01-11 Cincinnati Test Systems, Inc. Method and apparatus for detecting leaks
US6684121B1 (en) * 2003-05-16 2004-01-27 Taiwan Semiconductor Manufacturing Company Real time work-in-process (WIP) system

Also Published As

Publication number Publication date
AU2006202340A1 (en) 2006-12-21
JP2007012045A (ja) 2007-01-18
CN1901671A (zh) 2007-01-24
EP1736839A3 (en) 2018-07-04
CA2549321A1 (en) 2006-12-01
US7904181B2 (en) 2011-03-08
MXPA06006195A (es) 2007-01-25
TW200710750A (en) 2007-03-16
IL175962A (en) 2011-11-30
CA2549321C (en) 2014-02-04
EP1736839A2 (en) 2006-12-27
US20050267882A1 (en) 2005-12-01
JP5005263B2 (ja) 2012-08-22
IL175962A0 (en) 2006-10-05

Similar Documents

Publication Publication Date Title
KR20060125594A (ko) 제조와 엔터프라이즈 레벨간의 통신 모델
US20230385273A1 (en) Web services platform with integration and interface of smart entities with enterprise applications
US8782249B1 (en) Message engine
US7836217B2 (en) Associating and evaluating status information for a primary input parameter value from a Profibus device
US7895315B2 (en) Supporting extensions to production event message schemes via production database server versioning
US20070088816A1 (en) System and method for monitoring the status of a bus in a server environment
US7142929B2 (en) Process data management
US7392100B1 (en) System and methodology that facilitate factory automation services in a distributed industrial automation environment
US7802235B2 (en) System and method for tracing and/or evaluating the exchange of information
CA3136404A1 (en) Selective address space aggregation
JP2019506680A (ja) アクセス不可能な入力/出力(i/o)デバイスとのプロセッサ通信を容易にするリレー・メカニズム
Jennyc Linking Enterprise Business Systems to the Factory Floor
Lutes et al. VOLTTRON: User guide
US20220067599A1 (en) Robotic process automation analytics platform
US10878690B2 (en) Unified status and alarm management for operations, monitoring, and maintenance of legacy and modern control systems from common user interface
EP3506034B1 (en) Control system
US11880676B1 (en) Containerized modeling of device updates or modifications via digital twins
TW576986B (en) Extensible modular communication executive with active message queue and intelligent message pre-validation
EP3723345A1 (en) Aggregating server and method for forwarding node data
CN115879905A (zh) 用于工业机器监测的系统、方法和非暂态计算机可读介质
CN114430825A (zh) 机器人流程自动化数据连接器
CN114021054A (zh) 一种基于kvm结合工业互联网模式的运维管理方法
IE83779B1 (en) Process data management
IE20030927A1 (en) Process data management

Legal Events

Date Code Title Description
A201 Request for examination
E601 Decision to refuse application