KR20070037426A - 컨트롤러들 및 장치들에 최신 제어 및 구성 정보를도모하기 위한 데이터 매입 - Google Patents

컨트롤러들 및 장치들에 최신 제어 및 구성 정보를도모하기 위한 데이터 매입 Download PDF

Info

Publication number
KR20070037426A
KR20070037426A KR1020060097251A KR20060097251A KR20070037426A KR 20070037426 A KR20070037426 A KR 20070037426A KR 1020060097251 A KR1020060097251 A KR 1020060097251A KR 20060097251 A KR20060097251 A KR 20060097251A KR 20070037426 A KR20070037426 A KR 20070037426A
Authority
KR
South Korea
Prior art keywords
data
devices
name
configuration
controller
Prior art date
Application number
KR1020060097251A
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 KR20070037426A publication Critical patent/KR20070037426A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • 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/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] or computer integrated manufacturing [CIM] characterised by data acquisition, e.g. workpiece identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • 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/25064Update component configuration to optimize program execution
    • 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/31166Access data by name, object, stored in list, database
    • 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
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
    • Y04S40/18Network protocols supporting networked applications, e.g. including control of end-device applications over a network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Manufacturing & Machinery (AREA)
  • Automation & Control Theory (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Quality & Reliability (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Tourism & Hospitality (AREA)
  • Strategic Management (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • Stored Programmes (AREA)
  • Programmable Controllers (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

산업 자동화 시스템은 네트워크를 통해 자동화 장치들에 연결되어 있는 업데이팅 컴포넌트를 갖춘 프로세서를 포함한다. 업데이팅 컴포넌트는 장치들의 머신 판독 가능 표현들로부터 제어 정보를 판독하고 제어 정보로 데이터 구조를 실장한다. 또한, 업데이팅 컴포넌트는 파일 오브젝트 및/또는 데이터 구조에 저장되어 있는 데이터로부터 장치의 구성 정보를 업데이트하여, 구성 정보가 임계치를 초과하면, 이러한 전송이 복수개 메시지들로 세분되게 한다. 게다가, 디플로이먼트 이전에 장치들 및 장치들을 위한 펌웨어에 DTM(Device Type Manager)을 매입하며 DTM에 대해 디플로이먼트 이후의 업데이트들을 선택적으로 허용할 수 있는 벤더 디플로이먼트 방법이 제공된다.
업데이팅 컴포넌트, 산업 제어 시스템, 머신 판독 가능 표현, 데이터 구조, 파일 오브젝트, DTM, EDS, 세분화, 자동화 장치

Description

컨트롤러들 및 장치들에 최신 제어 및 구성 정보를 도모하기 위한 데이터 매입{EMBEDDING CONTROLLERS AND DEVICES WITH DATA TO FACILITATE UP-TO-DATE CONTROL AND CONFIGURATION INFORMATION}
도 1은 본 발명의 태양에 따라 최신 구성 정보를 도모하기 하기 위해 자동화 장치와 통신하는 컨트롤러를 갖춘 시스템을 나타내는 도.
도 2는 본 발명의 태양에 따라 최신 구성 정보를 도모하기 위해 복수개 자동화 장치들과 통신하는 컨트롤러를 갖춘 시스템의 블록도.
도 3은 본 발명의 태양에 따라 머신 판독 가능 표현으로부터 판독된 데이터를 데이터 구조로 저장하는 것을 용이하게 하는 절차들의 예시적 흐름도.
도 4는 본 발명의 태양에 따라 구성의 사이즈가 임계치를 초과할 때 세분화 프로토콜(fragmentation protocol)을 개시하는 것을 용이하게 하는 절차들의 예시적 흐름도.
도 5는 본 발명의 태양에 따라 2개의 CCV들(Configuration Consistency Values)이 매칭되는지의 여부를 알아내는 것을 용이하게 하는 절차들의 예시적 흐름도.
도 6은 본 발명의 태양에 따라 최신 구성 정보를 용이하게 하는 시스템을 위한 예시적 데이터 구조들을 나타내는 도.
도 7은 본 발명의 태양에 따른 컨트롤러와 자동화 장치 간의 I/O 교환을 위한 예시적 데이터 구조를 나타내는 도.
도 8은 본 발명의 태양에 따라 장치의 오브젝트에 DTM 및 클라이언트 컨테이너 애플리케이션을 매입하는 것을 용이하게 하는 절차들의 예시적 흐름도.
도 9는 본 발명의 태양에 따라 최신 구성 정보를 도모하기 위해 복수 개의 새로운 장치들과 통신하는 컨트롤러를 갖춘 시스템의 블록도.
도 10은 본 발명의 개시된 태양들을 실행하도록 조작 가능한 컴퓨터의 블록도.
도 11은 본 발명의 태양들에 따른 예시적 컴퓨팅 환경의 개략적인 블록도.
<도면의 주요 부분에 대한 부호의 설명>
100 : 산업 제어 시스템
102 : 컨트롤러
104 : 데이터 구조
106 : 데이터 필드
108 : 명칭 필드
110 : 업데이팅 컴포넌트
112 : 네트워크
114 : 자동화 장치
116 : 머신 판독 가능 표현
본 발명은 일반적으로 산업 제어 시스템들에 관한 것이며, 보다 구체적으로는 컨트롤러들과 자동화 장치들간의 산업 자동화 환경에서의 최신 구성 정보를 통신하는 것에 관한 것이다.
DTM(Device Type Manager) 및 EDS(Electronic Data Sheet)는 모두가 자동화 장치들의 머신 판독 가능 표현들이다. 이들은 통상적으로, 사용자가 장치의 기능들을 구성하는 것을 지원할 목적으로, 네트워크-중심의 소프트웨어 도구들에 의해 사용자에게 장치에 관한 제어 정보를 제시하는데 사용된다.
또한, 이들 머신 판독 가능 표현들은, 장치가 컨트롤러와의 실시간 I/O 교환에 이용 가능한, I/O 데이터 블록들의 사이즈들 및 관련 구조들에 관한 정보를 제공한다. 그 다음, 이 정보는 장치와의 통신을 위한 컨트롤러의 스캔 리스트를 구성하는데 사용된다. I/O 데이터 블록들은 통상적으로 컨트롤러 데이터 테이블의 바이트 또는 워드 어레이들로 나타나는데, 데이터의 다양한 요소들에 대한 특징적 의미 및 블록에서의 그들의 오프셋은, 요소들이 현재 제어 프로그램(들)과 적절하게 사용될 수 있도록 사용자에 의해 수동적으로 관리되어야 한다. 통상적으로, 데이터 요소들의 제어 프로그램내의 기능들로의 이러한 매핑은 제어 시스템의 장치 인스턴스 각각에 대해 사용자에 의해 별도로 수행되어야 한다.
소정 컨트롤러들에서, 사용자는 요소들 각각을 위한 데이터 타이핑 및 특징적 레이블들/태그들이 완비된 사용자 정의형 구조들을 수동적으로 생성하기 위한 옵션을 갖는데, 이는, 장치의 실현값 각각을 위해 매 인스턴스 기반으로 적용될 수 있다. 이것은 다소 시간 소모적이므로, 통상적으로, 사용자가 제조 공장에서 그러한 다수의 장치들을 사용할 것이 예상되는 경우에만 수행된다. 예를 들어, 장치는 그 장치 프로파일로부터의 디폴트 포맷으로서, 비트들 각각이 표현하는 것을 위한 기능 및 명명 규칙을 갖춘, 예를 들어, 10 바이트의 입력 데이터 및 10 바이트의 출력 데이터를 가질 수도 있다. 그러나, 벤더 또는 제조자에 의해, 예를 들어, 특정 애플리케이션의 소비자에게 유용할 수 있는 새로운 사양들이 장치에 추가될 수 있다. 종래의 시스템들이라면, 상기 상황에서, 사용자는, 장치 프로파일에 그러한 추가 요소들이 존재하지 않기 때문에, 소프트웨어 프로그래밍 도구로 데이터 구조의 그러한 추가 요소들을 수동으로 추가해야 한다.
더 나아가, 시스템이 (예를 들어, DTM 또는 EDS와 같은 최신의 머신 판독 가능 표현으로부터) 이용 가능한 제어 정보를 쉽게 이용가능한 경우라 하더라도, 장치는 여전히 그 구성 정보를 업데이트시켜야 할 수도 있다. 예를 들어, 장치가 손상되거나 동작을 중단하면, 유지 보수 요원은 대부분, 장치를 위한 카탈로그 번호 또는 부품 번호에 기초해 장치를 교체하는데 필요한 절차들을 적절하게 수행할 수 있다. 유지 보수 요원은 새로운 장치를 설치하고 그것을 종전과 같이 재접속(탑재, 전기 배선, 배관, 공기 공급, 공압식 및/또는 유압식 라인들 등)할 수 있다. 그러나, 장치가 시스템에서 동일한 방식으로 동작하도록 재구성되게 하는 것은 대체로 귀찮은 일이다. 일단 장치가 결합되고 나면, 종래의 시스템들은 장치를 구성하기 위해 장치에 접속할 것을 요한다. 통상적으로, 원래의 구성 소프트웨어 도구 뿐만 아니라 현재 장치의 구성 파일도 요구된다. 대체로, 구성이 이용 불가능하거나 구식일 것이라는 점에서, 어려움들이 존재한다. 더 나아가, 유지 보수 요원이 실제로 적합한 구성을 가지고 있을 수도 있지만, 상이한 다수 벤더들로부터 구성 소프트웨어의 다수 인스턴스들이 존재할 수 있기 때문에, 그것을 장치로 다운로드하기 위해, 유지 보수 요원이 그것을 찾아내지 못할 수도 있다.
이러한 동일한 어려움들이 구성 정보에 대해서 뿐만 아니라 제어 정보에 대해서도 존재한다. 예를 들어, 장치를 구성, 재구성, 수리 및/또는 모니터링해야 할 때, DTM이 소프트웨어 도구에 이용 불가능할 수도 있다. 예를 들어, CD(compact disc)가 그것이 설치되기 전에 소실되었거나, 실제로 사용 중인 장치에 대한 펌웨어 업그레이드가 있었고 필요한 DTM의 새로운 버전이 존재하지만, 벤더의 웹사이트로부터 그것을 업로드하기 위한 그때에 인터넷으로의 액세스가 이용 불가능하다.
또한, 다른 어려움들도 존재한다. 예를 들어, 사용자는 소프트웨어 프로그래밍 도구를 이용해 장치의 기능을 "미세 조정(tweak)"할 수 있지만, 이러한 변경들이 컨트롤러 및/또는 컨트롤러 프로그램들에 나타나지 않으므로, 컨트롤러가 인지하지 못하는 방식으로 장치가 동작하고 있기 때문에, 바람직하지 못한 결과들을 초래할 수 있다. 더 나아가, CO(Connection Originator;예를 들어, 컨트롤러)가 장치와 CIP(Common Industrial Protocol) I/O 접속을 확립하고자 할 때, CO는 CIP 설계 명세에 따라 접속 개방 요청(open connection request)을 발행한다. 다른 것들 중에서도, 이 요청은, 장치를 위한 구성 파라미터들을 포함하는 데이터 세그먼 트를 포함한다.
접속 요청에 장치 구성 데이터를 포함시키는 것은, 장치가 CO의 요구들에 따라 장치의 기능(들)을 수행하도록 설정된다는 것과 교환될 데이터가 CO에 대해 의미를 가질 것(예를 들어, 적절하게 스케일링된 소정 데이터 유형 등)을 보장한다. 그것은 또한, 장치가 교체된다면, 그것이 원래의 장치와 정확하게 동일하게 구성될 것을 보장하는 추가적인 이점도 가진다. 그러나, 데이터 세그먼트는 이론적으로 최대 512 바이트로 제한된다. 그러나, 실제로는, 접속 개방 요청의 다른 데이터와 조합된 네트워크 메시지 사이즈의 제한들로 인해, 그것은 일반적으로 약 450 바이트로 제한된다. 이것이 종래의 대다수 장치들에 대해서는 적합했지만, 최근에는, 450 바이트를 초과하는 구성의 장치들이 점차 보편화되고 있다.
이하에서는, 여기에서 설명되는 몇몇 태양들에 대한 기본적인 이해를 제공하기 위해, 청구된 주제(claimed subject matter)의 간략화된 요약이 제시된다. 이 요약은 포괄적인 개요가 아니며, 주된/핵심 요소들을 식별하거나 청구된 주제의 범위를 서술하려는 것이 아니다. 그것의 목적은 나중에 제시되는 좀더 상세한 설명에 대한 도입부로서 일부 개념들을 간략화된 형태로 제시하기 위한 것일 뿐이다.
여기에서 설명되는 청구 주제는 컨트롤러들 및 장치들에 최신 제어 및 구성 정보를 도모하기 위하여 데이터를 매입하는(embedding) 것에 관한 것이다. 프로그램 가능 로직 컨트롤러와 같은, 산업 자동화 컨트롤러는 소프트웨어 오브젝트들 뿐만 아니라 산업 자동화 장치들과의 I/O 통신을 위한 것과 같은 다양한 목적들을 위 해 데이터를 저장하기 위한 데이터 구조들을 포함할 수 있다.
본 발명의 태양에 따르면, 머신 판독 가능 표현들을 이용해 컨트롤러 및/또는 HMI(Human Machine Interface)의 데이터 구조들을 자동적으로 생성할 수 있는 시스템 및 방법이 제공된다. 머신 판독 가능 표현들은 DTM(Device Type Manager), EDS(Electronic Data Sheet), 또는 장치 프로파일의 임의의 적당한 다른 표현일 수 있다. DTM 또는 EDS와 같은 머신 판독 가능 표현들은, 사용자가 장치의 기능들 구성 및 제어 프로그램들에서의 그것의 실시간 I/O 데이터 이용을 지원하려는 목적들을 위해 이용할 수 있는 장치에 관한 제어 정보를 포함한다. 업데이팅 컴포넌트는 이러한 제어 정보를 판독하고, 컨트롤러내의 데이터 구조를, 프로세서와의 실시간 I/O 교환을 위해 이용 가능한, 장치의 데이터 요소들에 대한 사이즈, 데이터 유형 및 위치에 관한 정보로 실장할(populate) 수 있다. 이 데이터는 장치의 데이터 요소 각각으로 매핑될 수 있고 이 데이터에는 계층 구조 태그가 부여될 수 있어, 컨트롤러 프로그램들의 생성 및 유지 보수를 사용자를 위해 크게 향상시킨다.
본 발명의 다른 태양에 따르면, 대형 구성들의 장치들을 자동적으로 교체하기 위한 시스템 및 방법이 제공된다. 본 발명은 CIP(Common Industrial Protocol) 파일 오브젝트를 이용해 장치에 장치의 구성을 그리고 CO(Connector Originator)에 사본을 보유할 수 있다. CO는, 장치와 I/O 접속을 확립할 때, 이 접속이 대형 구성의 장치를 위한 것이라고 판정할 수 있다. 그 다음, CO는 먼저, 세분화 프로토콜을 이용해, CIP 파일 오브젝트 내용들을 장치로 전송할 수 있다. 양자의 종단점들 모두가 임계치 미만인 메시지 사이즈를 협상(negotiate)할 수 있고, 그 다음, 네트워크의 제한들 및/또는 장치의 최대 메시지 사이즈내에서 전체 파일의 전송을 발생시키기에 필요한 만큼의 단편들(fragments)로 구성 파일을 분해할 수 있다. 일단 완결되고 나면, CO는, 데이터 세그먼트가 송신되지 않는다는 것을 제외하면, 개방 I/O 접속 요청을 송신한다.
부가적인 효율로서 그리고 본 발명의 다른 태양에 따르면, 설명된 태양들은, 장치가 이미 CO에 의해 그것을 위해 보유된 동일한 구성을 포함하고 있는 경우에는 CIP 파일 오브젝트를 전송해야 할 필요성을 제거하는 것에 의해, 향상될 수 있다. 장치의 CIP 고유성 오브젝트(CIP Identity Object)에 대한 CCV(Configuration Consistency Value) 속성은 CO 구성 소프트웨어 도구에 의해 제공될 수 있다. 이 경우, I/O 접속을 확립하기 전에, CO는 장치로부터 CCV를 판독할 수 있다. 그것이 매칭되면, CO는 I/O 접속을 직접적으로 개방할 수 있고, 그에 의해, 시간 소모적인 구성 파일 전송 프로세스를 제거한다.
본 발명의 또 다른 태양에 따르면, 클라이언트 자동화 장치의 DTM 업데이트를 용이하게 하는 벤더 디플로이먼트 방법(vendor deployment methodology)이 제공된다. 장치 제조자 및/또는 벤더는 장치를 위한 최신의 구성 및 제어 데이터를 판정할 수 있고 DTM을 통해 이 정보를 제공할 수 있다. 그 다음, 벤더는, 디플로이먼트 이전에, 이러한 DTM을 직접적으로 장치의 파일 오브젝트 인스턴스로 매입할 수 있다. 또한, 벤더는 DTM의 구성 및 제어 정보에 대한 차후 업데이트들도 선택적으로 허용할 수 있다. DTM이 장치를 위한 펌웨어에도 매입될 수 있다는 것을 알 수 있을 것이다.
상기 및 관련 목적들의 실현을 위해, 여기에서는 다음의 설명 및 첨부 도면들과 관련하여 본 발명의 예시적인 소정 태양들이 설명된다. 그러나, 이러한 태양들은 본 발명의 원리들이 이용될 수 있는 다양한 방법들 중 일부만을 지시하며, 본 발명은 그러한 태양들 및 그들의 등가물들 모두를 포함하기 위한 것이다. 본 발명의 다른 이점들과 신규한 사양들은, 도면들과 함께 고려되는, 본 발명에 대한 다음의 상세한 설명으로부터 명백해질 것이다.
이하에서는, 유사한 참조 번호들이 전체에 걸쳐 유사한 요소들을 언급하는데 사용되는 도면들을 참조하여, 청구된 주제가 설명된다. 설명의 목적들을 위한 다음의 서술에서는, 청구된 주제에 대한 완전한 이해를 제공하기 위해, 다수의 특징적 세부 사항들이 기술된다. 그러나, 그러한 주제는 이러한 특징적 세부 사항들 없이도 실시될 수 있다는 것도 명백할 수 있다. 다른 경우들로서, 본 발명을 설명하는 것을 용이하게 하기 위해, 널리 공지되어 있는 구조들 및 장치들은 블록도 형태로 도시된다.
이 출원서에서 사용되는 바와 같이, "컴포넌트", "시스템" 등의 용어들은, 하드웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어, 또는 실행 중인 소프트웨어인, 컴퓨터-관련 엔티티를 언급하기 위한 것이다. 예를 들어, 컴포넌트는 프로세서에서 실행 중인 프로세스, 프로세서, 오브젝트, 인스턴스, 실행 가능한 것, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수 있지만, 이에 한정되는 것은 아니다. 일례로, 컴퓨터에서 실행 중인 애플리케이션과 컴퓨터 모두가 컴포넌트일 수 있다. 하나 이상의 컴포넌트들이 프로세스 및/또는 실행 스레드내에 상주할 수도 있고 컴포넌트는 하나의 컴퓨터에 국한되거나 그리고/또는 2 이상의 컴퓨터들 사이에서 분산될 수도 있다.
더 나아가, 청구된 주제는, 표준 프로그래밍 및/또는 엔지니어링 기술들을 사용해, 컴퓨터/프로세싱 장치를 개시된 주제를 구현하도록 제어하는 소프트웨어, 펌웨어, 하드웨어, 또는 그것에 관한 임의 조합을 발생시키는 방법, 장치, 또는 제품으로서 구현될 수도 있다. 여기에서 사용되는 "제품"이라는 용어는 임의의 컴퓨터-판독 가능 장치, 캐리어, 또는 매체들로부터 액세스 가능한 컴퓨터 프로그램을 포함하는 것이다. 예를 들어, 컴퓨터 판독 가능 매체들로는 자기 저장 장치들(예를 들어, 하드 디스크, 플로피 디스크, 자기 스트립들, ...), 광 디스크들(예를 들어, CD(compact disk), DVD(digital versatile disk), ...), 스마트 카드들, 및 플래시 메모리 장치들(예를 들어, 카드, 스틱, 키 드라이브, ...)을 들 수 있지만, 이에 한정되는 것은 아니다. 부가적으로, 반송파가 전자 메일을 송수신하는데 또는 인터넷이나 LAN(local area network)과 같은 네트워크에 액세스하는데 사용되는 것들과 같은 컴퓨터-판독 가능 전자 데이터를 전달하는데 이용될 수 있다는 것도 알 수 있어야 한다. 물론, 당업자들이라면, 청구된 주제의 범위 또는 사상을 벗어나지 않으면서, 이 구성에 대한 다수 변경들이 이루어질 수도 있다는 것을 알 수 있을 것이다. 더 나아가, "예시적"이라는 단어는 여기에서 일례, 경우, 또는 예시로서 사용되는 것을 의미한다. 여기에서 "예시적"인 것으로 설명되는 임의 태양 또는 설계가 다른 태양들 또는 설계들에 비해 반드시 바람직스럽거나 유익한 것으 로 해석될 필요는 없다.
이제 도면들을 참조하면, 도 1은 컨트롤러(102)를 갖춘 산업 제어 시스템(100)을 도시한다. 컨트롤러(102)는 데이터 필드(106) 및 명칭 필드(108)를 갖춘 데이터 구조(104)를 포함할 수 있다. 컨트롤러(102)는 업데이팅 컴포넌트(110)를 더 포함할 수 있다. 컨트롤러(102)는 네트워크(112)를 통해 자동화 장치(114)와 통신할 수 있다. 일반적으로, 머신 판독 가능 표현(116)은 장치(114)내에 저장될 수 있다. 머신 판독 가능 표현(116)은 그것이 상주하는 장치(114)에 관한 (도시되어 있지 않은) 제어 정보를 포함할 수 있다. 예를 들어, 머신 판독 가능 표현(116)은, 장치(114)가 컨트롤러(102)와의 실시간 I/O 교환에 이용할 수 있는 (도시되어 있지 않은) I/O 데이터 블록들의 사이즈들 및 관련 구조들에 관한 정보를 포함할 수 있다. 이들 I/O 데이터 블록들은 통상적으로, 컨트롤러(102)와 장치(114) 사이에서 통신하는데 사용되는 I/O 데이터 블록내의 데이터의 다양한 필드들에 대한 특징적 의미 및 그들의 개개 위치 및/또는 오프셋을 갖춘 컨트롤러 데이터 테이블의 바이트 또는 워드 어레이들로 나타난다.
특히, 컨트롤러(102)와 장치(114)간의 통신이 발생할 때, 디폴트 I/O 데이터 블록이 전송될 수 있다. 예를 들어, 디폴트 데이터 블록은 입력을 위한 10 바이트 및 출력을 위한 10 바이트를 포함할 수도 있는데, I/O 데이터 블록의 각 비트 및/또는 바이트는 장치(114)의 구성에 기초해 특정 의미를 가질 수 있다. 따라서, 컨트롤러(102)가 장치(114)의 거동을 변경하고자 한다면, 컨트롤러(102)는 데이터 블록의 적합한 위치에서 데이터 블록내의 데이터를 조정할 수 있다. 예를 들어, 컨 트롤러(102)가 장치(114)의 컴포넌트에 대한 가속(acceleration)을 변경하고자 하고, 그 컴포넌트를 위한 가속이 디폴트 I/O 데이터 블록의 바이트 5 및 6의 데이터에 의해 제어된다면, 컨트롤러(102)는 그 위치에서 그러한 데이터를 변경할 수 있다.
I/O 데이터 블록으로 전송될 수 있는 각각의 I/O 요소를 위한 데이터 유형들, 데이터 사이즈들 및 데이터 위치들이 머신 판독 가능 표현(116)에 저장될 수 있다. 그에 따라, 본 발명의 일 태양에 따르면, 업데이팅 컴포넌트(110)는, I/O 데이터내의 각 비트가 의미하는 바가 무엇인지를 알아내기 위해, 머신 판독 가능 표현(116)을 판독할 수 있다. 예를 들어, 업데이팅 컴포넌트(110)는, 장치(116)의 가속이 16-비트 워드 또는 바이트 5 및 6에 저장된 부동 소수점 수(floating point number)로서 표현된다는 것뿐만 아니라 나머지 모든 비트들, 바이트들 및/또는 워드들을 위한 의미들과 데이터 유형들도 알아낼 수 있다. 또한, 업데이팅 컴포넌트(110)는, 도 2와 관련하여 다음에서 부연되는 바와 같이, 자동적으로 또는 사용자에 의한 입력이나 선택에 기초해 장치 명칭을 획득할 수도 있다.
필요한 정보를 수집한 후에, 업데이팅 컴포넌트(110)는 데이터 구조(104)를 실장하여 사용자 참조(예를 들어, 데이터 구조;104)를 동적으로 생성할 수 있다. 특히, 업데이팅 컴포넌트(110)는 데이터 필드(106)에 장치(114)와 컨트롤러(102) 사이에서 교환될 수 있는 데이터의 사이즈, 데이터 유형 및 위치에 관한 정보를 저장한다(예를 들어, 바이트 5 및 6은 부동 유형의 단일 요소(single element of type float)이다). 또한, 업데이팅 컴포넌트(110)는, 명칭 필드(108)를 정의되고 있는 장치(114) 자체 및 데이터 요소를 표현하는 계층 구조 태그로 실장하는 것에 의해, 데이터 필드(106)를 라벨링할 수도 있다. 예를 들어, 계층 구조 태그는 <장치 명칭>.<데이터 요소>와 같은 명명 규칙을 따를 수 있다. 따라서, 장치(114)가 "motor4"라고 명명되면, 계층 구조 태그는, 예를 들어, "motor4.accel"로서 표현되어 명칭 필드(108)에 삽입될 수 있다. 본 발명의 사상 및 범위를 벗어나지 않으면서, 다른 명명 규칙들이 상정되어 사용될 수 있다는 것도 알 수 있을 것이다. 다른 방법으로는, File Obj의 "머신" 판독 가능 형태로 장치에 매입된 프로파일(예를 들어, DTM/EDS/profile)이 PC(personal computer)의 소프트웨어 도구에 의해 장치로부터 업로드될 수 있다. 그 다음, PC는 프로파일을 파싱/디코딩하여 장치의 구성 옵션들 및 그것의 실시간 I/O 데이터 포맷(들)에 관한 관련 정보를 추출할 수 있다.
따라서, 본 발명의 태양에서, 업데이팅 컴포넌트(110)는 자동적으로 데이터 구조(104)를 생성하고 데이터 구조(104)를 각 장치(114)에 관한 데이터로 실장한다. 그에 따라, 본 발명은 장치들(예를 들어, 장치(114))과 통신하기 위한 시간을 절감할 수 있고 용이하게 이해되는 컨트롤러 프로그램들을 도모할 수 있다. 단 하나의 장치(114)만이 도시되어 있지만, 다수 장치들이 이용될 수도 있다는 것을 알 수 있을 것이다. 부가적으로, 컨트롤러(102)는 로컬 또는 원격 서버나 HMI(Human Machine Interface)와 같은 임의의 적합한 시스템 또는 장치에 상주하거나 임의의 적합한 시스템 또는 장치의 컴포넌트일 수 있다는 것도 알 수 있을 것이다. 이 도면에서 그리고 후속 도면들에서 업데이팅 컴포넌트(110) 및/또는 데이터 구조(104) 는 컨트롤러(102)의 구성 요소들로서 도시되어 있지만, 그러한 컴포넌트들(104, 110)이 컨트롤러(102)내에 상주할 필요는 없다는 것도 이해할 수 있을 것이다. 오히려, 컴포넌트들(104, 110)은, 본 발명의 사상 및 범위를 벗어나지 않으면서, 국지적으로 또는 원격적으로 그리고/또는 네트워크(112)와 연결되어 다른 적당한 위치들에 상주할 수 있다.
이제 도 2를 참조하면, 산업 제어 시스템(200)이 도시되어 있다. 일반적으로, 시스템(200)은 컨트롤러(102; 도 1)와 유사한 컨트롤러(202)를 포함한다. 업데이팅 컴포넌트(110) 및 데이터 구조(104) 이외에, 컨트롤러(202)는, 컨트롤러(102)와 I/O 데이터를 교환하는 장치들 모두 또는 다수에 대한 장치 명칭들 및 장치 프로파일들을 포함할 수 있는 스캔리스트(204)도 포함할 수 있다. 게다가, 시스템(200)은 네트워크(112)를 통해, 집합적으로 또는 개별적으로 장치들(206)로서 언급되는 복수개 장치들(2061 - 206N)과 통신할 수 있다. 장치들(206)이 집합적으로 언급될 수도 있지만, 다음에서, 개개 장치들(206)은 장치들(206) 각각을 구별하는 고유한 속성들을 가질 수도 있다는 것을 알 수 있을 것이다. 예를 들어, 앞서 부연된 바와 같이, 장치(114; 도 1)는 머신 판독 가능 표현(116; 도 1)을 포함할 수 있다. 마찬가지로, 장치(206)는 DTM(Data Type Manager), EDS(Electronic Data Sheet), 또는 임의의 다른 적합한 데이터 구조나 파일 포맷 형태의 머신 판독 가능 표현들을 포함할 수도 있다.
따라서, 업데이팅 컴포넌트(110)는 스캔리스트(204)에 포함된 장치 프로파일 이 존재하는 장치(206) 각각에 대한 DTM 및/또는 EDS를 판독할 수 있다. 업데이팅 컴포넌트(110)는 스캔리스트(204)로부터 장치(206)를 위한 장치 명칭을 획득할 수 있고, 다음으로는, 데이터 구조(104)를 실장하기 위해, 장치들(206)로부터 데이터 요소 정보를 검색할 수 있다. 당업자들이라면, 데이터 구조(104)를 발생시키기 위해 사용자 개입이 불필요하다는 것을 쉽게 알 수 있을 것이다. 더 나아가, 데이터 구조(104)는 최신의 제어 정보 뿐만 아니라 모든 장치들을 위해 계층 구조적으로 라벨링되어 있는 최신의 구성 정보를 저장하는데도 이용될 수 있는데, 이는, 사용자들에 의한 신속하고 간단한 상호 작용을 용이하게 할 수 있다. 부가적으로 또는 다른 방법으로, 최신의 구성 정보는, 업데이팅 컴포넌트(110)가 구성 정보를 획득할 수 있는 (도시되어 있지 않은) CIP(Control and Information Protocol) 파일 오브젝트에 저장될 수도 있다.
본 발명의 소정 태양들은 컨트롤러(202)와 통신하는 모든 장치들(206) 뿐만 아니라 새롭게 설치되거나 교체된 장치들을 위한 데이터 구조(104)를 자동적으로 생성하는데 이용될 수 있다는 것도 이해할 수 있을 것이다. 또한, 데이터 구조(104; 및/또는 CIP 파일 오브젝트)는 각 장치의 최신 구성에 관한 정보의 저장 공간(store)도 제공한다. 따라서, 업데이팅 컴포넌트(110)는 장치가 의도대로 동작할 것을 보장하기 위해 (예를 들어, 교체된 장치를 위한) 장치 구성을 업데이트하는데도 이용될 수 있다.
예를 들어, 장치(206)가 손상되거나 동작을 중단할 때, 유지 보수 요원은 대체로, 장치(206)를 위한 카탈로그 번호 또는 부품 번호에 기초해 장치를 교체하는 데 필요한 절차들을 적절하게 수행할 수 있다. 유지 보수 요원은 새로운 장치(206)를 설치하고 배선(탑재, 전기 배선, 배관, 공기 공급, 공압식 및/또는 유압식 라인들 등)을 종전과 같이 교체할 수 있다. 그러나, 장치(206)가 시스템(200)에서 동일한 방식으로 동작하도록 재구성되게 하는 것은 대체로 귀찮은 일이다. 통상적으로, 원래의 구성 소프트웨어 도구 뿐만 아니라 현재 장치의 구성 파일도 요구된다. 그러나, 본 발명의 태양에 따르면, 업데이팅 컴포넌트(110)는 데이터 구조(104;및/또는 CIP 파일 오브젝트)로부터 장치(206)를 위한 현재 구성을 검색할 수 있고, 그 다음, 이 정보를 장치(206)로 직접적으로 전송할 수 있다.
더 나아가, 장치(206)가 새로운 또는 추가 기능을 제공하도록 재구성되거나 업그레이드된다 하더라도, 사용자는, 시간 소모적이고 오류가 발생하기 쉬운 프로그래밍 도구로 데이터 구조를 수동적으로 업데이트할 필요가 없다. 오히려, 업데이팅 컴포넌트(110)는 머신 판독 가능 표현들(예를 들어, DTM 및/또는 EDS)로부터 이러한 새로운 제어 정보를 직접적으로 판독할 수 있다. 부가적으로, 업데이트된 상기 정보가 동일한 다른 장치들(206)에 존재하지 않는다면, 업데이팅 컴포넌트(110)가 이러한 어려움을 완화시킬 수 있다는 것도 알 수 있을 것이다. 예를 들어, 업데이팅 컴포넌트(110)는 메시지를 발생시킬 수 있거나(예를 들어, 스태프(staff)를 지원하기 위한 이메일이 생성되고 전달되게 할 수 있거나), 장치(206)의 새로운 DTM 및/또는 EDS로부터 검색된 데이터로부터 직접적으로 예전의 DTM 및/또는 EDS를 업데이트할 수 있다.
따라서, 제어 정보 및 장치 구성들이 장치나 컨트롤러(예를 들어, 데이터 구 조(104) 및/또는 CIP 파일 오브젝트)내에서 업데이트될 수 있다는 것을 쉽게 알 수 있다. 예를 들어, 장치 구성은 새로운 장치가 시스템에 설치될 때 업데이트되어야 할 수도 있는데, 이는, 자동적으로 (예를 들어, 데이터 구조(104)로부터 장치(206)로 정보를 전송 중인 업데이팅 컴포넌트(110)를 통해) 수행될 수 있다. 또한, 장치 구성이 프로그래밍 도구에 의해 직접적으로, 예를 들어, 그것의 성능을 미세 조정하도록 변경된다면, 장치 구성의 컨트롤러 버전이 업데이트될 수 있다(예를 들어, 업데이팅 컴포넌트(110)는 장치(206)로부터 정보를 검색하고 그것을 데이터 구조(104)에 저장한다). 장치(206) 구성 파일의 자동적인 교체는 도 4와 관련하여 다음에서 부연된다.
도 3은 본 발명에 따른 방법(300)을 예시한다. 설명의 간략화를 위해, 여기에서 기술되는 한가지 이상의 방법들은 일련의 동작들로서 도시되고 설명되지만, 일부 동작들은 여기에서 도시되고 설명되는 동작들과 다른 순서들로 그리고/또는 여기에서 도시되고 설명되는 동작들로부터의 다른 동작들과 동시에 발생할 수도 있으므로, 청구되는 주제가 동작들의 순서에 의해 한정되는 것은 아니라는 것이 이해될 수 있을 것이다. 예를 들어, 당업자들이라면, 방법이, 상태도에서와 같이, 일련의 상호 관련된 상태들 또는 이벤트들로서 다른 방법으로 표현될 수 있다는 것도 이해할 수 있을 것이다. 더 나아가, 청구된 주제에 따른 방법을 구현하는데, 도시된 모든 동작들이 요구되는 것은 아닐 수도 있다. 부가적으로, 다음에서 그리고 이 명세서 전체에 걸쳐 개시되는 방법들이 그러한 방법들의 컴퓨터들로의 이송 및 전송을 용이하게 하기 위한 제품에 저장될 수 있다는 것도 알 수 있어야 한다. 여 기에서 사용되는 제품이라는 용어는 임의의 컴퓨터-판독 가능 장치, 캐리어, 또는 매체들로부터 액세스 가능한 컴퓨터 프로그램을 포함하는 것이다.
이제 도 3을 참조하면, 산업 제어 시스템의 컨트롤러에 데이터 구조들을 자동적으로 생성하기 위한 예시적인 컴퓨터 구현 방법(300)이 도시되어 있다. 게다가, 방법(300)은 HMI를 통해 이용될 수도 있다. 참조번호 302에서는, 일반적으로 업데이팅 컴포넌트에 의해, 머신 판독 가능 표현으로부터 데이터가 수신된다. 앞서 논의된 바와 같이, 머신 판독 가능 표현은 DTM, EDS, (예를 들어, 장치 명칭을 검색하기 위한) 스캔 리스트, 및/또는 적합한 다른 파일 포맷이나 데이터 구조일 수 있다.
참조번호 304에서는, 장치의 I/O 요소들을 매핑하기 위한 데이터 구조가 생성될 수 있다. 통상적으로, 이 데이터 구조는 장치의 I/O 요소 각각을 위한 명칭 필드 및 데이터 필드를 가질 것이다. 일반적으로, 이것은 업데이팅 컴포넌트에 의해서도 실현되는데, 이 시점에서, 업데이팅 컴포넌트는 데이터 필드를 장치에 관한 적절한 데이터로 실장할 수 있다. 본 발명의 범위 및 사상을 벗어나지 않으면서, 하나의 데이터의 구조가 모든 장치들을 위해 생성될 수 있거나 매 장치마다 하나의 데이터 구조가 생성될 수 있을 뿐만 아니라, 다른 구현들도 생성될 수 있다.
참조번호 306에서는, 장치의 명칭이 판정될 수 있다. 장치 명칭은 사용자 입력형이거나 리스트(예를 들어, 스캔 리스트)로부터 선택될 수 있다. 다른 실시예에서, 업데이팅 컴포넌트는, 사용자 상호 작용이 전혀 없는 상태에서, 이 정보를 스캔 리스트로부터 또는 스캔 리스트에 포함된 장치 프로파일로부터 자동적으로 검 색할 수 있다. 참조번호 308에서, 본 방법(300)은, 통상적으로 장치의 머신 판독 가능 표현(예를 들어, DTM 및/또는 EDS)으로부터 발견되는 데이터 필드 명칭을 결정할 수 있다. 장치 명칭 및 데이터 필드 명칭 모두에 의해, 계층 구조 명칭 태그(예를 들어, <장치 명칭>.<데이터 필드 명칭>)가 생성될 수 있다. 참조번호 310에서, 각각의 데이터 필드는 적절한 계층 구조 태그로 라벨링될 수 있다.
이제 도 4를 참조하면, 장치 구성의 자동적인 교체를 위한 컴퓨터 구현 방법(400)이 일 태양에 따라 도시되어 있다. 예를 들어, 장치가 손상되거나 동작을 중단하면, 유지 보수 요원은 흔히 장치를 물리적으로 교체할 수 있지만, 그것은 여전히, 선행 장치가 동작했던 것처럼, 시스템(예를 들어, 시스템(200))과 동작하도록 구성되어야 한다. 앞서 설명된 바와 같이, 업데이팅 컴포넌트(예를 들어, 도 1의 110)는 수동적인 재구성을 요하지 않으면서 자동적으로 (예를 들어, CIP 파일 오브젝트를 통해) 이 업데이트를 수행할 수 있다. 그러나, 일부 경우들에서, 구성 정보의 사이즈는 최대값 제한을 초과할 수도 있으므로, 네트워크 및/또는 장치의 최대 메시지 사이즈에 대한 본질적인 제한들로 인해, 통상적인 방법으로는 전달될 수 없다. 전통적인 사이즈 제한이 종래의 대다수 장치들을 위해서는 적절했지만, 최근에는, 좀더 큰 구성의 장치들이 좀더 보편화되어 왔다. 게다가, 훨씬 큰 메모리의 좀더 복잡한 컨트롤러들이 좀더 큰 구성 파일들을 유발시켜 왔다. 최대 사이즈 제한은 도 7과 관련하여 다음에서 부연된다.
참조번호 402에서, 본 방법(400)은, 장치 구성의 사이즈가 임계치를 초과한다고 판정하고, 참조번호 404에서는, 세분화 프로토콜이 개시된다. 세분화 프로토 콜은 적절한 메시지 사이즈를 결정한 다음, 2개 종단점들 사이에서 접속을 개방할 수 있다. 세분화 프로토콜은, 도 9와 관련하여 다음에서 부연되는 바와 같이, 지능적으로 수행될 수 있다는 것이 이해될 수 있을 것이다. 다음으로는, 세분화 프로토콜을 포함하는 CIP 파일 오브젝트 또는 적당한 다른 오브젝트(예를 들어, 데이터 구조(104))가 제2 종단점으로 전송된다. 그후, 프로토콜은 구성 파일을 네트워크 및/또는 장치의 최대 메시지 사이즈의 제한들내에서 전송시키는데 필요한 만큼의 단편들로 분해한다.
따라서, 406에서는, 통상적으로 CO(Connection Originator)인 제1 종단점이, 통상적으로 구성되어야 하는 장치인 제2 종단점으로 접속 개방 요청을 전송할 수 있다. CO는, 예를 들어, 장치와 점 대 점으로 접속된 랩탑일 수 있거나 장치를 네트워크를 가로지로는 노드로서 어드레싱할 수 있다. 또한, CO는 원격 컴퓨터나 임의의 다른 적합한 장치 또는 컴포넌트일 수도 있다. 참조번호 408에서는, 임계치 이하의 메시지 사이즈가 결정될 수 있다. 참조번호 410에서는, 장치 구성이 임계치에 관한 구성 파일의 사이즈에 기초해 복수 개의 메시지 프레임들로 분할될 수 있다. 참조번호 412에서는, 전체 구성 파일이 복수 개의 메시지 프레임들을 통해 제2 종단점에서 수신될 수 있다. 더 나아가, 참조번호 414에서는, 다음에서 설명되는 바와 같이, 다른 태양들이 세분화 프로토콜 및 다양한 다른 동작들(예를 들어, 동작들(404-412))을 이용할 수 있다.
도 5를 간략하게 참조하면, 본 발명의 태양에 따른 장치 구성의 자동적 교체를 위한 방법(500)이 도시되어 있다. 방법(500)은 방법(400; 도 4)에 도시된 소정 동작들 중 일부 또는 전부뿐만 아니라 여기에서 동작들로서 설명되는 추가 효능들도 이용할 수 있다. 예를 들어, 방법(400)은, 장치가 이미 CO에 의해 장치를 위해 보유된 동일한 구성을 포함하고 있을 경우, (402와 관련하여 설명된 바와 같이) CIP 파일 오브젝트를 전송해야 할 필요성을 제거하는 것에 의해, 향상될 수 있다. 장치의 고유성 오브젝트에 대한 CCV(Configuration Consistency Value) 속성은 CO 구성 소프트웨어 프로그래밍 도구에 의해 제공될 수 있다. 이 태양에서, CO는 먼저, 장치로부터 CCV를 판독할 수 있는 I/O 접속을 확립할 수 있다. CCV 값들이 매칭되면, CO는 바로 I/O 접속을 개방하도록 진행할 수 있고, 그에 의해, 시간 소모적인 구성 파일 전달 프로세스를 제거한다.
그에 따라, 참조번호 502에서는 I/O 접속이 확립될 수 있다. 참조번호 504에서는, CO에 보유된 CCV 값이 (존재한다면) 장치의 CCV 값과 비교된다. 그들이 매칭되지 않으면, 참조번호 506에서는, CIP 파일 오브젝트가 CO로부터 장치로 업로드될 수 있다. 그러나, 참조번호 504에서, CCV 값들이 매칭되면, CO는 장치가 동일한 CIP 파일 오브젝트를 포함한다고 판정할 수 있고, 그에 따라, 이 오브젝트는 장치로 전송될 필요가 없다. 따라서, 동작 506은 완전히 우회될 수 있고, 방법(500)은 참조번호 508로 진행한다. 참조번호 508에서는, 구성 파일의 사이즈가 임계치보다 큰지에 대한 판정이 내려질 수 있다. 그렇지 않다면, 구성 파일은 정상적으로 전송될 수 있다. 그러나, 구성 파일의 사이즈가 임계치를 초과한다면, 참조번호 510에서는, 방법(400)과 관련하여 상술된 바와 같이, 소정 동작들이 수행될 수 있다.
방법들(300, 400 및 500)이 산업 자동화 프로토콜을 이용할 수 있으며, 그러한 프로토콜은 산업 설정내에서의 이용을 위해 설계된 임의의 적합한 프로토콜일 수 있다는 것이 이해될 수 있을 것이다. 예를 들어, DeviceNet, ControlNet, EtherNet/IP, Modbus, Profibus, 및 Foundation Fieldbus가 본 발명의 태양들에서 이용될 수 있는 예시적 산업 자동화 프로토콜들이다. 이러한 프로토콜들 중 하나 이상은 상기 산업 자동화 프로토콜들 중 하나 이상을 위한 애플리케이션 계층 프로토콜일 수 있는 CIP에 적어도 부분적으로 기초할 수 있다. 그러나, 그러한 프로토콜들 중 어떤 것이나 프로토콜들의 조합도 다음에 첨부된 청구항들의 범위내에 해당되는 것으로 예상되고 의도된다는 것이 이해될 수 있다.
도 6에서는, 업데이팅 컴포넌트(110;및/또는 (도시되어 있지 않은) 컨트롤러)와 (도시되어 있지 않은) 장치 사이에서 통신될 수 있는 데이터의 상세도가 제공된다. 특히, 도 6은, 예를 들어, 도 1 및 도 2와 관련하여 앞서 논의된 데이터 교환들을 좀더 상세하게 예시한다. 이제 도 6을 참조하면, 시스템(600)이 도시되어 있다. 시스템(600)은 장치를 위해 매핑된 I/O 데이터를 위한 예시적 데이터 필드(602)를 포함하는데, 장치는 이번에도 "motor4"로 명명되어 있다. 또한, 데이터 필드(602)는 장치의 각 요소 및/또는 기능을 위한 대응하는 명칭 필드(604)를 가질 수 있다. 마찬가지로, 장치의 데이터 구조(606)가 도시되어 있다. 예시된 바와 같이, 장치의 데이터 구조(606)는 모터를 위한 RPM(revolutions per minute), 누산기 등과 같은 다양한 I/O 데이터 요소들을 포함할 수 있다.
도 1을 참조하여 이미 설명된 바와 같이, 업데이팅 컴포넌트(110)는 장치의 데이터 구조(606)와 상호 작용하여 데이터 구조들(602 및 604)을, 각각, 실장할 수 있다. 다른 실시예들에서, 업데이팅 컴포넌트(110)는 데이터 구조들(602 및 604)에 저장된 정보에 기초해 장치의 데이터 구조(606)를 업데이트할 수 있다. 데이터 구조들(602-606)은 데이터 필드들(예를 들어, 도 1의 컴포넌트들(106, 108)), 데이터 구조들(예를 들어, 도 1의 컴포넌트(104)), 데이터베이스들, 파일 오브젝트들(예를 들어, CIP 파일 오브젝트)의 파일들 또는 인스턴스들, 데이터 패킷들, 데이터 스트림들, 메시지 프레임들, 데이터 세그먼트들 및/또는 머신 판독 가능 표현들(예를 들어, DTM, EDS, 및 장치 프로파일들을 갖춘 스캔리스트) 중 어떤 것일 수 있다. 따라서, 업데이팅 컴포넌트는 머신 판독 가능 표현들에 의해 제공되는 제어 정보로부터의 데이터 구조들의 자동적 생성에 영향을 미칠 수 있을 뿐만 아니라 컨트롤러 및 장치 모두의 장치 구성들을 자동적으로 교체 및/또는 업데이트할 수도 있다. 또한, 장치 구성이 너무 커 단일 메시지내에서 송신될 수 없다면, 세분화 프로토콜이 초기화되어, 사용자 개입없이, 업데이트된 구성을 실현할 수도 있다.
예를 들어, 도 7은, 세분화 프로토콜이 이용될 수 있는 경우에 대한 상세도를 제공한다. 도 7을 참조하면, 데이터 구조(700)는 (도시되어 있지 않은) 장치와 (도시되어 있지 않은) 컨트롤러 및/또는 (도시되어 있지 않은) HMI 사이에서 교환되는 I/O 데이터를 예시한다. 데이터 세그먼트(702)에 대한 이론적 제한은 510 바이트이지만, 실제로, 그것은, 접속 개방 요청(704)과 같은 다른 데이터와 조합된 네트워크 메시지 사이즈의 제한들로 인해, 510 바이트보다 작다.
예를 들어, 접속 개방 요청(704)은, 어떤 입력 접속 데이터가 사용될 것인 지, 어떤 출력 접속 데이터가 사용될 것인지, 얼마나 빈번하게 접속이 시도될 것인지, 접속을 위한 타임 아웃, 양방향에서 교환될 I/O 데이터의 사이즈 등과 같은, 정보를 포함할 수 있다. 이 정보(예를 들어, 접속 개방 요청(704)에 포함되어 있는 데이터)의 데이터 구조(700)로의 추가 이후에, 데이터 세그먼트(702)의 임계치(706) 또는 "진정한" 최대 사이즈가 획득된다. 일반적으로, 접속 개방 요청(704)에 포함되어 있는 데이터는 약 60 바이트 길이이다. 따라서, 임계치(706)는 약 450 바이트이다. 그에 따라, 구성 정보(예를 들어, 장치의 데이터 구조(606))와 같은, 장치로 또는 장치로부터 송신되는 데이터는 임계치(706) 미만이어야 한다. 그렇지 않다면, 수동 구성의 필요성을 방지하기 위해, 도 4와 관련하여 상술된 바와 같은, 세분화 프로토콜이 사용될 수 있다.
여기에서 설명되는 태양들 중 다수는, 머신 판독 가능 표현들 및/또는 구성 정보 및/또는 파일들로부터의 제어 정보가 최신이라고 보장할 수 있는 시스템들 및 방법들에 관한 것이라는 것을 쉽게 알 수 있다. 최신 정보가, 예를 들어, 사용자 상호 작용없이, 자동적으로 작용되게 하는 것이 좀더 효율적이고 안정적일 수 있다. 또한, 모든 점들에서 (예를 들어, 컨트롤러 및 장치 모두에서) 최신 정보를 갖는 것은, 현재적으로 이용 불가능하거나, 발견될 수 없거나, 그리고/또는 사용자에 의해 부정확하게 선택될 수도 있는 구성 파일로의 액세스를 요하지 않으면서, 다른 노드에 의한 일 노드의 업데이트를 허용할 수 있다. 그에 따라, 도 8은, 제어 정보 및 장치 구성들을, 특히, DTM과 관련하여, 최신으로 유지하는데 이용될 수 있는 본 발명의 또 다른 태양을 예시한다. 좀더 구체적으로, DTM은 FDT(Field Device Tool)-DTM JIG(Joint Interest Group)에 의해 정의된 API(Application Program Interface)에 따른 Windows-브랜드 기반의 소프트웨어 애플릿일 수 있다. FDT는 네트워킹된 자동화 시스템내의 다양한 장치들을 구성하는데 사용되는 동일한 API를 준수하는 벤더 독립적인 클라이언트 컨테이너 애플리케이션일 수 있다.
본 개념은, 특정 장치의 벤더가, FDT 컨테이너와 함께 설치될 경우, 시스템내에서 그러한 장치 유형의 발생들 모두를 구성하는데 사용될 수 있는 구성 애플릿과 호환 가능한 DTM을 기재한다는 것이다. 이것은, 오퍼레이팅 시스템(예를 들어, Microsoft Windows-브랜드의 오퍼레이팅 시스템)에 설치될 경우, 그러한 특징적 프린터 모델을 위한 구성, 테스팅 및 수리 지원을 제공할 수 있는, 프린터를 위한 특징적 드라이버를 제공하는 프린터 제조자와 다소 유사하다. 프린터 드라이버들처럼, 소정 장치를 위한 DTM은 통상적으로, 웹사이트로부터 다운로드 가능한 그리고/또는 다양한 구성 소프트웨어 공급자들의 FDT 컨테이너 애플리케이션들에 미리 설치되어 있을 수 있는, 예를 들어, CD(compact disc)를 제품과 함께 포함시키는 것에 의해, 사용자들에게 이용 가능화될 수 있다.
그러나, 장치를 구성, 재구성, 수리 및/또는 모니터링해야 할 때, DTM이 프로그래밍 소프트웨어 도구에 이용 불가능할 수도 있다. 예를 들어, CD가 설치되기 전에 분실되었거나, 실제로 사용 중인 장치에 대한 펌웨어 업그레이드가 있었고 DTM의 새로운 버전이 필요하지만, 웹으로의 액세스가 그 당시에는 이용 불가능할 수도 있다.
이제 도 8을 참조하면, 클라이언트 자동화 장치에서의 DTM 업데이트를 용이 하게 하는 벤더 디플로이먼트 방법(800)이 도시되어 있다. 참조번호 802에서는, 최신 DTM이 판정될 수 있다. 상술된 바와 같이, 구성 정보 및/또는 DTM과 같은 머신 판독 가능 표현들이 CIP 파일 오브젝트 또는 다른 적당한 데이터 구조에 포함될 수 있다. 그에 따라, 참조번호 804에서, 벤더는 장치의 디플로이먼트 이전에 DTM 및 클라이언트 컨테이너 애플리케이션을 CIP 파일 오브젝트에 매입할 수 있다. 최신 DTM이 자동화 장치 또는 장치를 위한 펌웨어 업그레이드에 매입될 수 있다는 것이 이해될 수 있을 것이다. 따라서, 그것이 수송 중인 새로운 장치인지 아니면 장치를 위한 펌웨어 업그레이드인지에 상관없이, 최종 사용자는, 원래 구성 정보로의 액세스 또는, 예를 들어, 벤더 웹사이트로부터와 같은 검색을 위한 인터넷 액세스없이도, 최신의 DTM이 이용 가능할 것이라고 확신한다.
참조번호 806에서, DTM은 디플로이먼트 이후에 벤더에 의해, 예를 들어, 인터넷을 통해 선택적으로 업데이트될 수 있다. 좀더 구체적으로, 벤더 및/또는 장치 제조자는, DTM을 포함하는 CIP 파일 오브젝트 인스턴스가 사용 중에 별도로 업데이트되게 할 수도 있다. 이로 인해, 제조자는, 장치 자체의 능력에 변화가 없는 경우라 하더라도, 시간에 따라 DTM 자체의 기능(예를 들어, 사용자 인터페이스, 결함 수정들)을 향상시킬 수 있다. 일단 장치로 다운로드되고 나면, 다양한 유지 보수 또는 서비스 요원에 의한 장치의 모든 후속 액세스들이 DTM의 최신 및/또는 적당한 버전에 의해 그렇게 한다는 것이 보장된다. 그러한 기능이 펌웨어 업데이트를 통해서도 실현될 수 있다는 것이 이해될 수 있을 것이다. 부가적으로, CIP 파일 오브젝트가 강제적인 것은 아니라는 것도 이해될 수 있을 것이다. 본 발명의 범위 및 사상을 벗어나지 않으면서, 임의의 적당한 오브젝트가 이용될 수 있다.
이제 도 9를 참조하면, 장치들(902-906) 및 컨트롤러(202)를 위한 최신의 제어 및 구성 정보를 도모하는 시스템(900)이 도시되어 있다. 시스템(900)은 컨트롤러(202)와 장치들(902-906)간의 적당한 I/O 데이터 교환 뿐만 아니라 용이하게 유지 보수되고 이해되는 컨트롤러 프로그램들을 도모하기 위한 데이터 구조들을 컨트롤러(202)에 자동적으로 생성할 수 있다. 더 나아가, 시스템(900)은, 장치 구성이 데이터 세그먼트의 길이를 위한 최대 임계치를 초과하는 경우라 하더라도, (예를 들어, 세그먼트화 프로토콜을 통해) 장치 구성의 자동적인 교체를 제공할 수 있다. 부가적으로, 시스템(900)은, 최신의 DTM이 검색될 수 있도록 하기 위해, 장치의 디플로이먼트 또는 펌웨어 업그레이드 이전에 장치내에 DTM을 매입는하 것이나 장치를 위한 펌웨어 업그레이드를 도모할 수 있다. 더 나아가, 시스템(900)은, 예를 들어, 인터넷을 통해 또는 네트워크(112)의 임의 노드로부터 또는 장치들(902-906)과 점 대 점으로 접속되어 있는 터미널로부터, 디플로이먼트 이후에 업데이트 가능한 DTM들을 제공할 수 있다.
한정이 아닌 일례로, 장치들(902-906)은, 예를 들어, 다른 장치들을 교체하기 위해 또는 시스템(900)에 기능을 추가하기 위해, 시스템(900)에 새롭게 설치된 장치들이다. 장치들(902-906)이 새로울 필요는 없지만, 다른 방법으로는, 여러 원인들로 인해, 구성 및/또는 머신 판독 가능 표현으로의 자동 업데이트에 의해 이점을 취할 수 있다. 본 발명의 일 태양에서, 장치(902)는 EDS를 포함하지만, 컨트롤러(202)의 데이터 구조(104)내에 장치에 관한 데이터는 존재하지 않는다. 앞서 설 명된 바와 같이, 업데이팅 컴포넌트(110)는 EDS를 판독할 수 있고 제어 정보 및 대응하는 계층 구조 태그들로 데이터 구조(104)를 실장할 수 있다. 장치(902)가 다른 방법으로 또는 부가적으로 DTM 또는 그로부터 판독될 수 있는 소정의 다른 적합한 머신 판독 가능 표현을 포함할 수 있다는 것을 알 수 있을 것이다.
장치(904)는 새로운 장치 벤더(908)로부터 새롭게 수송되는 장치일 수 있다. 앞서 설명된 바와 같이, 새로운 장치 벤더(908)는 장치(904)에 최신 DTM을 매입할 수 있다. 따라서, 업데이팅 컴포넌트(110)는 이러한 DTM을 검색한 다음 데이터 구조(104)를 장치(904)의 용이한 구성을 허용하기에 적합한 제어 정보로 실장할 수 있다. 또한, 새로운 장치(904)가 디플로이되고 물리적으로 설치된 후, 새로운 장치 벤더(908)는, DTM을 포함하는 파일 오브젝트 인스턴스가 업데이트되는 것을 허용할 수도 있다. 이것은, 인터넷에 연결될 수 있는 네트워크(112)를 통해 또는 다른 적당한 방식으로 실현될 수 있다. 다른 방법으로는, 장치(904)가 시스템(900)에 이미 물리적으로 설치되었을 수도 있지만, 상이한 DTM이 펌웨어 업그레이드의 방법으로 새로운 장치 벤더(908)에 의해 제공될 수도 있다. 그 다음, 이 DTM 또한 설명된 방식으로 새로운 장치 벤더(908)에 의해 업데이트될 수 있다.
장치(906)가, 아직까지는 그것이 최신 구성을 가지고 있지 않은, DTM 또는 EDS와 같은, 매입된 적당한 제어 정보를 가질 수 있다. 예를 들어, 장치(906)는 적절하게 구성되었던 부서지거나 손상된 장치를 교체하기 위해 새롭게 설치될 수 있으므로, 새로운 장치(906)는 교체된 장치의 기능을 매칭하도록 업데이트되어야 한다. 업데이팅 컴포넌트(110)는 데이터 구조(104) 또는 컨트롤러(102)내의 (도시 되어 있지 않은) CIP 오브젝트 파일에 저장된 정보에 기초해 자동적으로 이것을 수행할 수 있다. 부가적으로, 장치(906)로 전송될 수 있는 구성 정보가 최대의 데이터 세그먼트 사이즈보다 크다면, 전송을 수행하기 위해, 세분화 프로토콜이 업데이팅 컴포넌트(110)에 의해 이용될 수 있다.
일 태양에 따르면, 시스템(900)은 지능 컴포넌트(910)를 포함할 수도 있다. 네트워크(112)를 통해 통신할 수 있는 별도의 컴포넌트로서 예시되어 있지만, 업데이팅 컴포넌트(110)와 컨트롤러(202) 중 어느 하나 또는 모두가 지능 컴포넌트(902)를 포함할 수 있다는 것도 이해될 수 있을 것이다. 지능 컴포넌트(902)는, 예를 들어, 업데이팅 컴포넌트(110)에 의해 제어 정보 및/또는 구성 정보가 구식인지의 여부를 판정하는데 이용될 수 있다. 구식 정보는 컨트롤러(202), 장치들(902-906), 또는 다른 적합한 위치에 상주할 수 있다는 것을 알 수 있을 것이다. 더 나아가, 지능 컴포넌트는, 예를 들어, 임계치 미만인 적당한 메시지 사이즈를 결정하기 위해, 세분화 프로토콜과 관련하여 사용될 수도 있다.
지능 컴포넌트(910)는 이벤트들 및/또는 데이터를 통해 포착되는 한 세트의 관찰들로부터 시스템, 환경, 및/또는 사용자의 상태들에 관한 논거를 제공하거나 추리할 수 있다. 추론은 특징적 문맥 또는 동작을 식별하는데 이용될 수 있거나, 예를 들어, 상태들에 대한 확률 분포를 발생시킬 수 있다. 추론은 확률적일 수 있는데, 다시 말해, 관심있는 상태들에 대한 확률 분포의 계산은 데이터 및 이벤트들의 고려에 기초할 수 있다. 또한, 추론은 한 세트의 이벤트들 및/또는 데이터로부터 더 높은 레벨의 이벤트들을 구성하는데 이용되는 기술들을 의미할 수도 있다.
그러한 추론은, 한 세트의 관찰된 이벤트들 및/또는 저장된 이벤트 데이터로부터의 새로운 이벤트들 또는 동작들의 구성, 이벤트들이 시간적으로 인접하게 상관되어 있는지의 여부, 및 이벤트들 및 데이터가 하나 또는 수개의 이벤트 및 데이터 소스들로부터 유래하는지의 여부를 초래할 수 있다. 다양한 분류 (명시적으로 그리고/또는 암시적으로 트레이닝된) 방식들 및/또는 시스템들(예를 들어, SVM들(support vector machines), 신경망들, 전문가 시스템들, BBN들(Bayesian belief networks), 퍼지 로직, 데이터 퓨전 엔진들, ...)이 주제 발명과 관련한 자동화 및/또는 추론 동작을 수행하는 것과 관련하여 이용될 수 있다.
분류자(classifier)는 입력 속성 벡터(x = (x1, x2, x3, x4, xn))를 입력이 클래스에 속한다는 신뢰도, 즉, f(x) = confidence(class)에 매핑하는 기능이다. 그러한 분류는, 사용자가 자동적으로 수행하고자 하는 동작을 진단하거나 추론하기 위해 확률 및/또는 통계-기반 분석(예를 들어, 분석 유틸리티들 및 비용들로의 팩토링)을 이용할 수 있다. SVM은 이용될 수 있는 분류자의 일례이다. SVM은 가능한 입력들의 공간에서 초곡면(hypersurface)을 찾아내는 것에 의해 동작하는데, 여기에서, 초곡면은 비-트리거링 이벤트들로부터 트리거링 기준들을 분리시키려 한다. 직관적으로, 이것은 분류를, 근접하지만 트레이닝 데이터와 동일하지 않은 데이터를 테스트하기에 적합하게 한다. 다른 지향성 및 비지향성 모델 분류 접근 방법들은, 예를 들어, Naive Bayes, Bayesian 네트워크들, 판정 트리들, 신경망들, 퍼지 로직 모델들, 및 독립적인 상이한 패턴들을 제공하는 확률 분류 모델들을 포함한다. 또한, 여기에서 사용되는 분류는 우선 순위 모델들을 개발하는데 이용되 는 통계적 회귀를 포함한다.
이제 도 10을 참조하면, 노드들(예를 들어, 제어 시스템들, 프로세서들, 자동화 장치들, 랩탑들 등) 사이에서 통신하고 제어 및 구성 정보를 업데이트하는 개시된 시스템 및 방법을 실행하도록 조작 가능한 예시적 컴퓨팅 환경의 블록도가 예시되어 있다. 주제 발명의 다양한 태양들을 위한 추가적인 맥락을 제공하기 위해, 도 10 및 다음의 논의는, 본 발명의 다양한 태양들이 구현될 수 있는 적당한 컴퓨팅 환경(1000)의 간략하고 일반적인 설명을 제공하기 위한 것이다. 본 발명이 하나 이상의 컴퓨터들에서 실행될 수 있는 컴퓨터-실행 가능 명령어들의 일반적인 맥락에서 상술되었지만, 당업자들이라면, 본 발명이 다른 프로그램 모듈들과의 조합으로 그리고/또는 하드웨어와 소프트웨어의 조합으로서 구현될 수도 있다는 것을 알 수 있을 것이다.
일반적으로, 프로그램 모듈들은 특정한 태스크들을 수행하거나 특정한 추상적 데이터형들을 구현하는 루틴들, 프로그램들, 컴포넌트들, 데이터 구조들 등을 포함한다. 더 나아가, 당업자들이라면, 본 발명의 방법들이, 각각이 하나 이상의 관련 장치들과 적절하게 연결될 수 있는, 단일-프로세서 또는 멀티프로세서 컴퓨터 시스템들, 미니컴퓨터들, 메인프레임 컴퓨터들 뿐만 아니라 퍼스널 컴퓨터들, 핸드-헬드 컴퓨팅 장치들, 마이크로프로세서-기반 또는 프로그램 가능한 소비자 전자 장치들 등을 포함하는, 다른 컴퓨터 시스템 구성들로도 실행될 수 있다는 것을 알 수 있을 것이다.
또한, 본 발명의 도시된 태양들은, 소정 태스크들이 통신 네트워크를 통해 링크되어 있는 로컬 프로세싱 장치들에 의해 수행되는 분산 컴퓨팅 환경에서 실시될 수도 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈들은 로컬 및 원격 메모리 저장 장치들 모두에 배치될 수 있다.
컴퓨터는 통상적으로 다양한 컴퓨터-판독 가능 매체들을 포함한다. 컴퓨터-판독 가능 매체들은 컴퓨터에 의해 액세스될 수 있으며 휘발성 및 비휘발성 매체들과 분리형 및 비분리형 매체들 모두를 포함하는 임의의 이용 가능 매체들일 수 있다. 한정이 아닌 일례로, 컴퓨터-판독 가능 매체들은 컴퓨터 저장 매체들 및 통신 매체들을 구비할 수 있다. 컴퓨터 저장 매체들은 컴퓨터-판독 가능 명령어들, 데이터 구조들, 프로그램 모듈들, 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체들 모두를 포함한다. 컴퓨터 저장 매체들은 RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, DVD 또는 다른 광학 디스크 저장 장치, 자기 카세트들, 자기 테이프, 자기 디스크 저장 장치 또는 다른 자기 저장 장치들, 또는 소정 정보를 저장하는데 사용될 수 있으며 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함하지만, 이에 한정되는 것은 아니다.
통신 매체들은 통상적으로 컴퓨터 판독 가능 명령어들, 데이터 구조들, 프로그램 모듈들 또는 반송파와 같은 변조 데이터 신호나 다른 전송 메커니즘의 다른 데이터를 구현하며 임의의 정보 전달 매체들을 포함한다. "변조 데이터 신호"라는 용어는, 그것의 특징들 중 하나 이상의 세트를 가지며 정보를 신호로 인코딩하는 방식으로 변경된 신호를 의미한다. 한정이 아닌 일례로, 통신 매체들은 유선 네트 워크 또는 직접-유선 접속과 같은 유선 매체들, 및 음향, RF, 적외선 및 다른 무선 매체들과 같은 무선 매체들을 포함한다. 상기한 것들의 임의 조합들 또한 컴퓨터 판독 가능 매체들의 범위내에 포함되어야 한다.
다시 도 10을 참조하면, 본 발명의 다양한 태양들을 구현하기 위한 예시적 환경(1000)은, 프로세싱 유닛(1004), 시스템 메모리(1006) 및 시스템 버스(1008)를 포함하는 컴퓨터(1002)를 포함한다. 시스템 버스(1008)는 시스템 메모리(1006)를 포함하지만, 이에 한정되는 것은 아닌, 시스템 컴포넌트들을 프로세싱 유닛(1004)에 연결한다. 프로세싱 유닛(1004)은 상업적으로 이용 가능한 여러 프로세서들 중 하나일 수 있다. 듀얼 마이크로프로세서들 및 다른 멀티-프로세서 아키텍처들이 프로세싱 유닛(1004)으로서 이용될 수도 있다.
시스템 버스(1008)는, 부가적으로 (메모리 컨트롤러를 갖추거나 갖추지 않은) 메모리 버스, 주변 장치 버스, 및 다양한 버스 아키텍처들 중 하나를 사용하는 로컬 버스에 상호 접속될 수도 있는 버스 구조의 몇가지 유형들 중 하나일 수 있다. 시스템 메모리(1006)는 ROM(read only memory;1010) 및 RAM(random access memory;1012)을 포함한다. 스타트-업(start-up) 동안과 같은 때에, 컴퓨터(1002)내의 소자들 사이에서 정보 전달을 돕는 기본적 루틴들을 포함하는 BIOS(basic input/output system)는 ROM, EPROM, EEPROM과 같은 비휘발성 메모리(1010)에 저장된다. RAM(1012)은 데이터를 캐싱하기 위한 SRAM(static RAM)과 같은 고속 RAM도 포함할 수 있다.
컴퓨터(1002)는 (도시되어 있지 않은) 적당한 섀시에서의 외부 사용을 위해 구성될 수도 있는 내장형 하드 디스크 드라이브(1014;HDD)(예를 들어, EIDE, SATA), (예를 들어, 분리형 디스켓(1018)으로부터 판독하거나 거기에 기입하기 위한) 자기 플로피 디스크 드라이브(FDD;1016) 및 (예를 들어, CD-ROM 디스크(1022)를 판독하거나 DVD와 같은 다른 고용량 광학 매체들로부터 판독하거나 거기에 기입하기 위한) 광학 디스크 드라이브(1020)를 더 포함한다. 하드 디스크 드라이브(1014), 자기 디스크 드라이브(1016) 및 광학 디스크 드라이브(1020)는, 각각, 하드 디스크 드라이브 인터페이스(1024), 자기 디스크 드라이브 인터페이스(1026) 및 광학 드라이브 인터페이스(1028)에 의해 시스템 버스(1008)에 접속될 수 있다. 외부 드라이브 구현들을 위한 인터페이스(1024)는 USB(Universal Serial Bus) 및 IEEE 1094 인터페이스 기술들 중 적어도 하나 또는 모두를 포함한다. 다른 외부 드라이브 접속 기술들도 주제 발명의 의도내에 해당된다.
드라이브들 및 그들과 관련된 컴퓨터-판독 가능 매체들은 데이터, 데이터 구조들, 컴퓨터-실행 가능 명령어들 등의 비휘발성 저장 공간을 제공한다. 컴퓨터(1002)의 경우, 드라이브들 및 매체들은 적당한 디지털 포맷의 임의 데이터 저장을 수용한다. 컴퓨터-판독 가능 매체들의 상기 설명은 HDD, 분리형 자기 디스켓, 및 CD 또는 DVD와 같은 분리형 광학 매체들을 언급하지만, 당업자들이라면, 집 드라이브들, 자기 카세트들, 플래시 메모리 카드들, 카트리지들 등과 같은, 컴퓨터에 의해 판독 가능한 매체들의 다른 유형들도 예시적 동작 환경에서 사용될 수 있을 뿐만 아니라, 부가적으로, 임의의 그러한 매체들이 본 발명의 방법들을 수행하기 위한 컴퓨터-실행 가능 명령어들을 포함할 수 있다는 것도 알 수 있어야 한다.
오퍼레이팅 시스템(1030), 하나 이상의 애플리케이션 프로그램들(1032), 다른 프로그램 모듈들(1034) 및 프로그램 데이터(1036)를 포함하는, 다수의 프로그램 모듈들이 드라이브들 및 RAM(1012)에 저장될 수 있다. 오퍼레이팅 시스템, 애플리케이션들, 모듈들, 및/또는 데이터의 전부 또는 부분들이 RAM(1012)에 캐싱될 수도 있다. 본 발명이 상업적으로 이용 가능한 다양한 오퍼레이팅 시스템들 또는 오퍼레이팅 시스템들의 조합들로 구현될 수 있다는 것도 알 수 있을 것이다.
사용자는 하나 이상의 유선/무선 입력 장치들, 예를 들어, 키보드(1038) 및, 마우스(1040)와 같은, 포인팅 장치를 통해 컴퓨터 시스템(1002)에 명령들 및 정보를 입력할 수 있다. (도시되어 있지 않은) 다른 입력 장치들로는 마이크로폰, IR 원격 제어, 조이스틱, 개임 패드, 스틸러스 펜, 터치 스크린 등을 들 수 있다. 이들 및 다른 입력 장치들은 대체로, 시스템 버스(1008)에 연결되어 있는 입력 장치 인터페이스(1042)를 통해 프로세싱 유닛(1004)에 접속되지만, 병렬 포트, IEEE 1094 직렬 포트, 게임 포트, USB 포트, IR 인터페이스 등과 같은, 다른 인터페이스들에 의해 접속될 수도 있다.
모니터(1044) 또는 다른 유형의 디스플레이 장치 또한, 비디오 어댑터(1046)와 같은, 인터페이스를 통해 시스템 버스(1008)에 접속되어 있다. 모니터(1044) 이외에, 컴퓨터는 통상적으로, 스피커들, 프린터들 등과 같은, (도시되어 있지 않은) 다른 주변 출력 장치들을 포함한다.
컴퓨터(1002)는, 원격 컴퓨터(들)(1048)와 같은, 하나 이상의 원격 컴퓨터들에 대한 유선 및/또는 무선 통신을 통한 논리 접속들을 사용하는 네트워크 환경에 서 동작할 수도 있다. 원격 컴퓨터(들)(1048)는 워크스테이션, 서버 컴퓨터, 라우터, 퍼스널 컴퓨터, 휴대용 컴퓨터, 마이크로프로세서-기반의 엔터테인먼트 어플라이언스, 피어 장치 또는 다른 공통 네트워크 노드일 수 있고, 간략화를 위해, 메모리/저장 장치(1050)만이 도시되어 있지만, 통상적으로 컴퓨터(1002)와 관련하여 설명된 소자들 중 많은 것을 또는 그 전부를 포함한다. 도시된 논리 접속들은 LAN(local area network;1052) 및/또는 더 큰 네트워크들, 예를 들어, WAN(wide area network;1054)을 포함한다. 그러한 LAN 및 WAN 네트워킹 환경들은 사무실들 및 회사들에서 흔히 볼 수 있고, 그들 모두가 글로벌 통신 네트워크, 예를 들어, 인터넷에 접속될 수도 있는, 인트라넷들과 같은, 기업-범위의 컴퓨터 네트워크들을 도모한다.
LAN 네트워킹 환경에서 사용될 경우, 컴퓨터(1002)는 유선 및/또는 무선 통신 네트워크 인터페이스 또는 어댑터(1056)를 통해 LAN(1052)에 접속된다. 어댑터(1056)는, 무선 어댑터(1056)와의 통신을 위해 배치되어 있는 무선 액세스 포인트를 포함할 수도 있는 LAN(1052)으로의 유선 또는 무선 통신을 도모할 수도 있다.
WAN 네트워킹 환경에서 사용될 경우, 컴퓨터(1002)는 모뎀(1058)을 포함할 수 있거나, WAN(1054)상의 통신 서버로 접속되거나, 인터넷에 의한 것과 같은, WAN(1054)을 통해 통신을 확립하기 위한 다른 수단을 가진다. 내장형 또는 외장형 그리고 유선 또는 무선 장치일 수 있는 모뎀(1058)은 직렬 포트 인터페이스(1042)를 통해 시스템 버스(1008)에 접속되어 있다. 네트워크 환경에서는, 컴퓨터(1002)와 관련하여 도시된 프로그램 모듈들 또는 그것의 일부가 원격 메모리/저장 장 치(1050)에 저장될 수 있다. 도시된 네트워크 접속들은 예시적인 것이며 컴퓨터들 사이에서 통신 링크를 확립하는 다른 수단이 사용될 수도 있다.
컴퓨터(1002)는 무선 통신으로 적절하게 배치되어 있는 임의의 무선 장치들 또는 엔티티들, 예를 들어, 프린터, 스캐너, 데스크탑 및/또는 휴대용 컴퓨터, PDA(portable data assistant), 통신 위성, 무선으로 검출 가능한 태그와 연관된 장비 또는 위치의 임의 부분(예를 들어, 키오스크, 신문 가판대, 화장실), 및 전화기와 통신하도록 동작할 수 있다. 이것은 적어도 Wi-Fi 및 BluetoothTM 무선 기술들을 포함한다. 따라서, 통신은 기존 네트워크와의 소정 구조 또는 단순히 2 이상의 장치들간의 애드 호크 통신일 수 있다.
Wi-Fi(Wireless Fidelity)는, 배선없이, 집의 소파, 호텔방의 침대, 또는 직장에서의 회의실로부터 인터넷으로의 접속을 허용한다. Wi-Fi는 그러한 장치들, 예를 들어, 컴퓨터들이 실내 및 실외에서, 기지국의 범위내의 어디에서든, 데이터를 송수신하는 것을 가능하게 하는, 셀폰에서 사용되는 것과 유사한 무선 기술이다. Wi-Fi 네트워크들은 안전하고, 신뢰할 수 있는, 고속의 무선 접속을 제공하기 위해 IEEE 802.11(a, b, g 등)이라고 하는 라디오 기술들을 사용한다. Wi-Fi 네트워크는 컴퓨터들을 서로, 인터넷에, 그리고 (IEEE 802.3 또는 이더넷을 사용하는) 유선 네트워크들에 접속시키는데 사용될 수 있다. Wi-Fi 네트워크들은 허가된 2.4 및 5 GHz 라디오 대역들에서, 11 Mbps(802.11a) 또는 54 Mbps(802.11b) 데이터 속도로, 또는, 예를 들어, 양자의 대역들(듀얼 밴드)을 포함하는 제품들과 함께 동작 하므로, 네트워크들은 다수의 사무실들에서 사용되는 기본적인 10BaseT의 유선형 이더넷 네트워크들과 유사한 실제 성능을 제공할 수 있다.
이제 도 11을 참조하면, 노드들 사이에서 통신하며 제어 및 구성 정보를 업데이트하는 개시된 시스템 및 방법을 실행하도록 동작 가능한 예시적 컴퓨팅 환경의 개략적인 블록도가 예시되어 있다. 시스템(1100)은 하나 이상의 클라이언트(들)(1102)를 포함한다. 클라이언트(들)(1102)는 하드웨어 및/또는 소프트웨어(예를 들어, 스레드들, 프로세스들, 컴퓨팅 장치들)일 수 있다. 클라이언트(들)(1102)는, 예를 들어, 본 발명을 이용하는 것에 의해 쿠키(들) 및/또는 연관된 문맥 정보를 수용할 수 있다.
또한, 시스템(1100)은 하나 이상의 서버(들)(1104)를 포함한다. 서버(들)(1104) 또한 하드웨어 및/또는 소프트웨어(예를 들어, 스레드들, 프로세스들, 컴퓨팅 장치들)일 수 있다. 서버들(1104)은, 예를 들어, 본 발명을 이용하는 것에 의해, 변환들을 수행하기 위한 스레드들을 수용할 수 있다. 클라이언트(1102)와 서버(1104)간의 가능한 일 통신은 2 이상의 컴퓨터 프로세스들 사이에서 전송되도록 적응된 데이터 패킷의 형태일 수 있다. 데이터 패킷은, 예를 들어, 쿠키 및/또는 연관된 문맥 정보를 포함할 수도 있다. 시스템(1100)은 클라이언트(들)(1102)와 서버(들)(1104)간의 통신을 용이하게 하는데 이용될 수 있는 통신 프레임워크(1106;예를 들어, 인터넷과 같은 글로벌 통신 네트워크)를 포함한다.
통신은 (광 섬유를 포함하는) 유선 및/또는 무선 기술을 통해 도모될 수 있다. 클라이언트(들)(1102)는 클라이언트(들)(1102)에 대해 국지적인 정보(예를 들 어, 쿠키(들) 및/또는 연관된 문맥 정보)를 저장하는데 이용될 수 있는 하나 이상의 클라이언트 데이터 저장 공간(들)(1108)에 적절하게 접속되어 있다. 마찬가지로, 서버(들)(1104)는 서버들(1104)에 대해 국지적인 정보를 저장하는데 이용될 수 있는 하나 이상의 서버 데이터 저장 공간(들)(1110)에 적절하게 접속되어 있다.
상술된 내용은 본 발명의 일례들을 포함한다. 물론, 주제 발명을 설명하기 위해 컴포넌트들 또는 방법들의 가능한 모든 조합을 설명할 수는 없지만, 당업자라면, 본 발명의 추가적인 다수 조합들 및 변경들이 가능하다는 것을 알 수 있을 것이다. 따라서, 본 발명은 첨부된 청구항들의 사상 및 범위내에 해당되는 그러한 모든 대안들, 변형들 및 변경들 모두를 포함하는 것이다. 더 나아가, "포함하다(includes)" 또는 "함유하다(contains)"라는 용어들이 상세한 설명이나 청구항들에서 사용될 경우, 그러한 용어는, "포함하는(comprising)"이라는 용어가 청구항에서 변천어(transitional word)로서 이용될 때 해석되는 바와 같이, "포함하는(comprising)"이라는 용어와 유사한 방식으로 포괄적인 의도로 사용된다.
따라서, 본 발명에 따르면, 네트워크를 통해 자동화 장치들에 연결되어 있으며 장치들의 머신 판독 가능 표현들로부터 제어 정보를 판독하고 제어 정보로 데이터 구조를 실장하는 업데이팅 컴포넌트를 갖춘 프로세서를 구비하는 산업 자동화 시스템이 제공된다.

Claims (10)

  1. 네트워크를 통해 산업 제어 시스템의 자동화 장치와 통신하는 컨트롤러로서,
    데이터 필드 및 대응하는 명칭 필드를 포함하는 데이터 구조; 및
    상기 자동화 장치에 대한 적어도 하나의 머신 판독 가능 표현으로부터 판독되는 정보에 적어도 부분적으로 기초하여, 상기 명칭 필드를 계층 구조 태그로 동적으로 실장하는(populate) 업데이팅 컴포넌트
    를 포함하는 컨트롤러.
  2. 제1항에 있어서,
    상기 적어도 하나의 머신 판독 가능 표현은 DTM(Device Type Manager), EDS(Electronic Data Sheet), 및 장치 프로파일 중 적어도 하나인 컨트롤러.
  3. 제1항에 있어서,
    상기 계층 구조 태그는 상기 자동화 장치의 명칭을 표현하는 장치 명칭 및 상기 데이터 필드로 매핑되는 상기 자동화 장치의 데이터 요소를 표현하는 요소 명칭을 포함하는 컨트롤러.
  4. 제3항에 있어서,
    상기 장치 명칭 및 상기 요소 명칭은 상기 업데이팅 컴포넌트에 의해 동적으 로 실장되는 컨트롤러.
  5. 제1항에 있어서,
    상기 업데이팅 컴포넌트는 상기 데이터 필드를 상기 적어도 하나의 머신 판독 가능 표현으로부터의 정보로 동적으로 실장하고,
    상기 정보는 상기 컨트롤러와의 실시간 I/O 교환을 위해, 상기 자동화 장치가 가지고 있는 데이터를 표현하는 컨트롤러.
  6. 제1항에 있어서,
    상기 데이터 구조는 자동화 장치를 위한 현재 구성 정보용 저장 공간을 포함하고,
    상기 업데이팅 컴포넌트는 상기 자동화 장치를 상기 현재 구성 정보로 업데이트하는 컨트롤러.
  7. 산업 제어 시스템의 컨트롤러에 자동적으로 데이터 구조들을 생성하기 위한 컴퓨터 구현 방법으로서,
    자동화 장치에 대한 적어도 하나의 머신 판독 가능 표현으로부터 데이터를 수신하는 단계;
    상기 자동화 장치의 I/O 데이터 요소 각각을 상기 데이터 구조의 개개의 데이터 필드로 매핑하기 위해 상기 데이터 구조를 생성하는 단계;
    상기 수신 데이터 및 사용자 입력 중 적어도 하나에 기초하여 장치 명칭을 결정하는 단계;
    상기 수신 데이터에 기초하여 데이터 필드 명칭을 결정하는 단계; 및
    상기 장치 명칭 및 상기 데이터 필드 명칭에 기초하여 상기 데이터 구조의 필드 각각을 계층 구조 태그로 동적으로 라벨링(labeling)하는 단계
    를 포함하는 컴퓨터 구현 방법.
  8. 장치 구성의 자동적 교체를 위한 컴퓨터 구현 방법으로서,
    상기 장치 구성의 사이즈가 임계치를 초과한다고 판정하는 단계; 및
    종단점들 사이에서 세분화 프로토콜(fragmentation protocol)을 개시하는 단계
    를 포함하고,
    상기 프로토콜은,
    상기 장치 구성을 포함하는 제1 종단점으로부터 산업 제어 시스템의 네트워크를 통해 제2 종단점으로 접속 개방 요청을 전송하는 단계;
    상기 임계치 이하인 메시지 사이즈를 협상(negotiating)하는 단계;
    상기 메시지 사이즈 이하인 복수개의 메시지 프레임들로 상기 장치 구성을 분할하는 단계; 및
    상기 제2 종단점에서 상기 장치 구성을 수신하는 단계를 포함하는 컴퓨터 구현 방법.
  9. 제8항에 있어서,
    상기 제1 종단점은 접속 발신기(connection originator)이고 상기 제2 종단점은 자동화 장치인 컴퓨터 구현 방법.
  10. 제8항에 있어서,
    상기 임계치는 데이터 세그먼트 한계와 상기 접속 개방 요청의 바이트 사이즈 간의 차이에 적어도 부분적으로 기초하는 컴퓨터 구현 방법.
KR1020060097251A 2005-09-30 2006-10-02 컨트롤러들 및 장치들에 최신 제어 및 구성 정보를도모하기 위한 데이터 매입 KR20070037426A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/239,890 2005-09-30
US11/239,890 US8392602B2 (en) 2005-09-30 2005-09-30 Embedding controllers and devices with data to facilitate up-to-date control and configuration information

Publications (1)

Publication Number Publication Date
KR20070037426A true KR20070037426A (ko) 2007-04-04

Family

ID=37644673

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060097251A KR20070037426A (ko) 2005-09-30 2006-10-02 컨트롤러들 및 장치들에 최신 제어 및 구성 정보를도모하기 위한 데이터 매입

Country Status (6)

Country Link
US (3) US8392602B2 (ko)
EP (1) EP1770459B1 (ko)
JP (1) JP2007164764A (ko)
KR (1) KR20070037426A (ko)
CN (1) CN1940785B (ko)
TW (1) TWI371666B (ko)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005034944B3 (de) * 2005-07-22 2006-11-09 Siemens Ag Verfahren und Anordnung zur automatischen Konfiguration eines Master-Slave-Feldbussystems
JP4961889B2 (ja) * 2006-08-10 2012-06-27 横河電機株式会社 パラメータ設定装置
DE102006062478B4 (de) * 2006-12-28 2021-09-02 Codewrights Gmbh Verfahren zum Betreiben eines objektbasierten Konfigurationssystems für Feldgeräte der Automatisierungstechnik
DE102006062605A1 (de) * 2006-12-29 2008-07-03 Codewrights Gmbh Verfahren zur Online-Bedienung eines Feldgerätes der Automatisierungstechnik
EP2015536B1 (en) 2007-07-12 2015-09-02 Omron Europe B.V. Managing a device name for an I/O device in an industrial automation system
JP4962721B2 (ja) * 2007-07-12 2012-06-27 オムロン株式会社 ツール装置及びメッセージ送信プログラムの作成方法
US8543741B2 (en) * 2007-08-16 2013-09-24 Fisher Controls International Llc Network scanning and management in a device type manager of type device
DE102007047061B4 (de) * 2007-10-01 2019-08-08 Endress + Hauser Process Solutions Ag Verfahren zum Bedienen von Feldgeräten der Prozessautomatisierungstechnik mit einem geräteunabhängigen Bedienprogramm
DE102007058606A1 (de) * 2007-12-04 2009-06-10 Codewrights Gmbh Verfahren zur Integration von Geräteobjekten in ein objektbasiertes Managementsystem für Feldgeräte in der Automatisierungstechnik
US8634325B2 (en) * 2007-12-31 2014-01-21 Schneide Electric USA, Inc. Tuning of industrial automation system performance based on device operating characteristics
JP5051466B2 (ja) * 2008-07-22 2012-10-17 横河電機株式会社 フィールド機器管理装置、フィールド機器管理システム、コンピュータプログラム、記録媒体
US8352905B2 (en) * 2008-09-30 2013-01-08 Rockwell Automation Technologies, Inc. Application builder for industrial automation
AU2014240328B2 (en) * 2008-10-20 2016-08-11 Emerson Automation Solutions Measurement Systems & Services Llc Coupling a specialty system, such as a metering system, to multiple control systems
US8046519B2 (en) 2008-10-20 2011-10-25 Daniel Measurement And Control, Inc. Coupling a specialty system, such as a metering system, to multiple control systems
EP2187571B1 (de) * 2008-11-12 2011-06-15 VEGA Grieshaber KG Generieren einer Gerätebeschreibung für ein Messgerät
DE102009005902A1 (de) * 2009-01-23 2010-06-02 Siemens Aktiengesellschaft Verfahren zum Betrieb eines elektrischen Geräts und korrespondierendes elektrisches Gerät
US8244380B2 (en) * 2009-05-20 2012-08-14 Rockwell Automation Technologies, Inc. System and method for storing data from an industrial controller
JP5029929B2 (ja) 2010-06-16 2012-09-19 横河電機株式会社 フィールド通信システム
DE102010038458A1 (de) * 2010-07-27 2012-02-02 Endress + Hauser Process Solutions Ag System zur Bedienung von Feldgeräten in einer Prozessanlage
US8806470B2 (en) 2010-09-29 2014-08-12 Mitsubishi Electric Corporation System, method, and apparatus for software maintenance of sensor and control systems
BR112013008405A2 (pt) * 2010-10-08 2016-06-21 Abb Technology Ag método e sistema para a propagação de alterações feitas a um mestre para cópias
DE102010064321A1 (de) 2010-12-29 2012-07-05 Robert Bosch Gmbh Kommutator und Herstellungsverfahren dafür und elektrische Maschine
EP2498155B1 (de) * 2011-03-11 2016-01-06 Siemens Aktiengesellschaft Verfahren zur Erkennung von Änderungen an SW-Schnittstellen und zum automatischen Anpassungen dieser Schnittstellen in einer Automatisierungsslösung
US9182757B2 (en) * 2011-03-30 2015-11-10 Fisher-Rosemount Systems, Inc. Methods and apparatus to transmit device description files to a host
US20150088281A1 (en) * 2011-05-31 2015-03-26 General Electric Company Systems and methods to overlay behaviors on foundation fieldbus alerts
US9772617B2 (en) * 2011-06-30 2017-09-26 General Electric Company Systems and methods for function block instantiation
US8914794B2 (en) * 2011-06-30 2014-12-16 Rockwell Automation Technologies, Inc. Multiple deployment of applications with multiple configurations in an industrial automation environment
BR112014005206B1 (pt) * 2011-09-08 2022-04-19 Intel Corporation Método, dispositivo e sistema para comunicação através de um elemento de índice de perfil de dispositivo
US9363185B2 (en) * 2012-10-17 2016-06-07 Opanga Networks, Inc. Method and system for determining sustainable throughput over wireless networks
US9558220B2 (en) 2013-03-04 2017-01-31 Fisher-Rosemount Systems, Inc. Big data in process control systems
US10649424B2 (en) 2013-03-04 2020-05-12 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics
US10909137B2 (en) 2014-10-06 2021-02-02 Fisher-Rosemount Systems, Inc. Streaming data for analytics in process control systems
US10866952B2 (en) 2013-03-04 2020-12-15 Fisher-Rosemount Systems, Inc. Source-independent queries in distributed industrial system
US10691281B2 (en) 2013-03-15 2020-06-23 Fisher-Rosemount Systems, Inc. Method and apparatus for controlling a process plant with location aware mobile control devices
US9690594B2 (en) 2013-04-29 2017-06-27 Honeywell International Inc. System for configuring a controller
US9645572B2 (en) * 2013-11-07 2017-05-09 Rockwell Automation Technologies, Inc. Device class information support for multi-option devices
US9599974B2 (en) * 2013-11-26 2017-03-21 Rockwell Automation Technologies, Inc. System for dynamic connection of distributed advanced process control components with control level applications
US20150363543A1 (en) * 2014-06-13 2015-12-17 Rockwell Automation Technologies, Inc. Systems and methods for designing an industrial automation system
US9383989B1 (en) 2014-06-16 2016-07-05 Symantec Corporation Systems and methods for updating applications
US10728793B2 (en) * 2014-06-30 2020-07-28 Telefonakitiebolaget L M Ericsson (Publ) Aggregation of congestion information
DE102014118428A1 (de) * 2014-12-11 2016-06-16 Codewrights Gmbh Installationsprogramm zum Installieren von DTMs
DE102015207731A1 (de) * 2015-04-28 2016-11-03 Siemens Schweiz Ag Verfahren zum effektiven Übertragen von Daten auf ein Busgerät einer busorientierten programmierbaren Elektroinstallation
US10609185B2 (en) 2015-11-04 2020-03-31 Rockwell Automation Technologies, Inc. Method for topology tree to learn about, present, and configure device information by automatically uploading device description files from device
JP6352893B2 (ja) 2015-12-09 2018-07-04 ファナック株式会社 プログラマブルロジックコントローラとの通信機能を備えたロボット制御装置及び通信システム
EP3336029B1 (en) * 2016-12-14 2020-04-15 Kone Corporation Remote configuration of elevators, escalators and automatic doors
US10936563B2 (en) * 2017-06-23 2021-03-02 Yokogawa Electric Corporation System and method for merging a source data from a source application into a target data of a target application
US11095502B2 (en) * 2017-11-03 2021-08-17 Otis Elevator Company Adhoc protocol for commissioning connected devices in the field
US11144042B2 (en) * 2018-07-09 2021-10-12 Rockwell Automation Technologies, Inc. Industrial automation information contextualization method and system
US10440537B1 (en) * 2018-12-11 2019-10-08 Vmware, Inc. Defining automations for enrolled user devices
US11403541B2 (en) 2019-02-14 2022-08-02 Rockwell Automation Technologies, Inc. AI extensions and intelligent model validation for an industrial digital twin
US11086298B2 (en) 2019-04-15 2021-08-10 Rockwell Automation Technologies, Inc. Smart gateway platform for industrial internet of things
EP3734382A1 (en) * 2019-05-03 2020-11-04 AB Sandvik Coromant Method for establishing communication in a machine tool system and a communication apparatus therefor
US11388239B2 (en) 2019-06-10 2022-07-12 Vmware, Inc. Previewing impacted entities in automated device definitions
US11435726B2 (en) 2019-09-30 2022-09-06 Rockwell Automation Technologies, Inc. Contextualization of industrial data at the device level
US11249462B2 (en) 2020-01-06 2022-02-15 Rockwell Automation Technologies, Inc. Industrial data services platform
JP7124023B2 (ja) * 2020-09-17 2022-08-23 東芝インフラシステムズ株式会社 コントローラ
US11300940B1 (en) * 2020-09-29 2022-04-12 Rockwell Automation Technologies, Inc. Application code manager and intellicenter integration
US11846918B1 (en) * 2022-09-22 2023-12-19 Rockwell Automation Technologies, Inc. Data driven digital twins for industrial automation device operation enhancement

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6999824B2 (en) * 1997-08-21 2006-02-14 Fieldbus Foundation System and method for implementing safety instrumented systems in a fieldbus architecture
JP3690106B2 (ja) * 1998-04-02 2005-08-31 三菱電機株式会社 機器系統の監視制御方法
US6453346B1 (en) * 1998-07-17 2002-09-17 Proactivenet, Inc. Method and apparatus for intelligent storage and reduction of network information
JP2001022730A (ja) 1999-07-09 2001-01-26 Naretsuji Moderingu Kenkyusho:Kk ビジネス支援装置及び記録媒体
US6330517B1 (en) * 1999-09-17 2001-12-11 Rosemount Inc. Interface for managing process
AUPQ808700A0 (en) 2000-06-09 2000-07-06 Honeywell Limited Human-machine interface
US6879806B2 (en) * 2001-06-01 2005-04-12 Zensys A/S System and a method for building routing tables and for routing signals in an automation system
US7355971B2 (en) 2001-10-22 2008-04-08 Intel Corporation Determining packet size in networking
SE0104113D0 (sv) 2001-12-07 2001-12-07 Ericsson Telefon Ab L M A wireless station and a transmission method in a wireless local area network
JP2004054351A (ja) * 2002-07-16 2004-02-19 Oki Electric Ind Co Ltd 係員操作装置
US7268898B2 (en) * 2002-08-01 2007-09-11 Kabushiki Kaisha Toshiba System and method for data processing
US6892274B2 (en) * 2002-09-05 2005-05-10 Intel Corporation Method and apparatus for handling data transfers
US20040054789A1 (en) * 2002-09-12 2004-03-18 International Business Machines Corporation Pervasive home network portal
DE10393080T5 (de) * 2002-10-08 2005-09-29 Invensys Systems, Inc., Foxboro Serviceportal
US20040153171A1 (en) * 2002-10-21 2004-08-05 Brandt David D. System and methodology providing automation security architecture in an industrial controller environment
DE10313389A1 (de) * 2003-03-25 2004-10-07 Endress + Hauser Process Solutions Ag Verfahren zur Übertragung von Softwarecode von einer Steuereinheit zu einem Feldgerät der Prozessautomatisierungstechnik
JP2004295814A (ja) * 2003-03-28 2004-10-21 Mitsubishi Electric Corp ネットワーク管理システム
US8775584B2 (en) * 2003-04-29 2014-07-08 Microsoft Corporation Method and apparatus for discovering network devices
JP4547614B2 (ja) * 2003-10-28 2010-09-22 横河電機株式会社 フィールドバスシステム
DE102004050383A1 (de) * 2004-10-15 2006-04-27 Siemens Ag Übertragung von Daten in und aus Automatisierungskomponenten

Also Published As

Publication number Publication date
EP1770459A2 (en) 2007-04-04
CN1940785A (zh) 2007-04-04
US8996721B2 (en) 2015-03-31
US8677013B2 (en) 2014-03-18
TWI371666B (en) 2012-09-01
EP1770459B1 (en) 2012-05-16
CN1940785B (zh) 2012-09-05
US8392602B2 (en) 2013-03-05
US20070078956A1 (en) 2007-04-05
EP1770459A3 (en) 2010-07-21
US20130159260A1 (en) 2013-06-20
US20140156710A1 (en) 2014-06-05
TW200715207A (en) 2007-04-16
JP2007164764A (ja) 2007-06-28

Similar Documents

Publication Publication Date Title
US8996721B2 (en) Embedding controllers and devices with data to facilitate up-to-date control and configuration information
WO2021217871A1 (zh) 微服务集群部署方法、装置、计算机设备及存储介质
US7721019B2 (en) Method and apparatus for partitioning industrial control data
EP1351108B1 (en) Method and apparatus for programming
EP1367767B1 (en) Method and apparatus for configuring a monitoring system
CN100553202C (zh) 用于动态设备地址管理的方法和系统
KR100330613B1 (ko) 서버 컴퓨터가 클라이언트 컴퓨터 시스템의 에셋 정보를원격 액세스하는 방법 및 데이터 처리 시스템
US7827436B2 (en) Method of updating a dual redundant chassis management system
WO2008151925A2 (en) Managing computer resources in a distributed computing system
JPH10308989A (ja) 測定および制御システム初期化方法
CN102081537A (zh) 一种软件升级方法
CN101268442B (zh) 配置远程数据处理系统的方法和系统
US20210406037A1 (en) Field device configuration tool
JP2008134999A (ja) 工業用制御システム
KR20070119013A (ko) 네트워크 시스템의 디바이스 장치 및 프로파일 전송 방법
EP3703342B1 (en) Dynamic load balancing in network centric process control systems
EP2649755B1 (en) Dynamic host profiles for option modules
JP4324864B2 (ja) ネットワークシステム
JP2007249471A (ja) 共有データ管理システムおよび管理サーバ並びに共有データ管理方法
JP2005085279A (ja) セキュリティコンフリクトを回避する、調整されたネットワークイニシエータ管理
US8082336B1 (en) Decoupled terminal server
Kaghazchi et al. Development of an opc server for a fieldbus diagnosis tool
CN112783610A (zh) 基于Saltstack部署Ceph的主节点
CN112748705A (zh) 具有解耦控制器的工业过程控制和自动化系统
EP2936736A1 (en) Configuration device and method for computer-implemented configuration of one or more network devices

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application