KR102168775B1 - Method for quickly processing service-based information query via a network and a device for said method - Google Patents

Method for quickly processing service-based information query via a network and a device for said method Download PDF

Info

Publication number
KR102168775B1
KR102168775B1 KR1020190177089A KR20190177089A KR102168775B1 KR 102168775 B1 KR102168775 B1 KR 102168775B1 KR 1020190177089 A KR1020190177089 A KR 1020190177089A KR 20190177089 A KR20190177089 A KR 20190177089A KR 102168775 B1 KR102168775 B1 KR 102168775B1
Authority
KR
South Korea
Prior art keywords
state
network
message
value
processing unit
Prior art date
Application number
KR1020190177089A
Other languages
Korean (ko)
Inventor
김순욱
이승준
Original Assignee
주식회사에어플러그
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사에어플러그 filed Critical 주식회사에어플러그
Priority to KR1020190177089A priority Critical patent/KR102168775B1/en
Application granted granted Critical
Publication of KR102168775B1 publication Critical patent/KR102168775B1/en

Links

Images

Classifications

    • H04L67/16
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

A device according to the present invention refers to information on a preset profile, with respect to a request for setting to a specific value for a specific state from another device received from a network, checks a registered identifier in association with the information indicating the specific state included in the setting request, configure a data block including the specific value by including the checked identifier at the head, and performs transmission to a second network through an interface unit provided in the device so that at least one third device connected to the second network having a communication method different from the network can receive a message. In addition, a shared message is selectively configured for the data block continuously filled with values without information indicating a state for one or more states belonging to a group of states designated to be dedicated thereto, which is received through the interface unit, and then transmitted to the network so that the at least another device can receive the message. Here, the data block is composed of a portion filled with at least the identifier indicating the type of the data block and values for one or more states.

Description

네트워크를 경유하는 서비스 기반의 정보 조회를 신속하게 처리하기 위한 방법과 그 방법을 위한 기기 {Method for quickly processing service-based information query via a network and a device for said method}A method for quickly processing service-based information query via a network and a device for said method.

본 발명은, 임의의 기기에서 실행되는 응용 프로그램들이, 하나 이상의 네트워크를 통해 그 임의의 기기와 연결된 다른 기기가 처리하는 정보를 확인하거나 또는 다른 기기로부터의 네트워크를 경유하여 요구되는 정보의 설정을 처리하는 방법과 그 방법이 적용된 기기에 관한 것이다.In the present invention, application programs running on an arbitrary device check information processed by another device connected to the arbitrary device through one or more networks, or process the setting of requested information through a network from another device. It relates to a method and a device to which the method is applied.

사람의 생활을 편리하게 하는 수 많은 종류의 장치들은, 특히 차량 등과 같이 그 기능이 매우 다양하고 복잡한 장치는, 수많은 정보가 각종의 전자제어 유니트( ECU: Electronic Control Unit )간에 실시간으로 통신되는 것에 기반하고 있다. 차량 등에서의 이러한 정보 교환은, 케이블링 작업의 편의성을 위해 공통적으로 연결되는 네트워크를 통해 이루어진다.Numerous types of devices that make life convenient, especially those with very diverse and complex functions, such as vehicles, are based on real-time communication between various types of electronic control units (ECUs). Are doing. Such information exchange in a vehicle or the like is performed through a network that is commonly connected for convenience of cabling work.

그런데, 오늘날에는, 차량의 현재 상태나 운행과 관련된 유형의 데이터 외에 다양한 유형의 데이터가 차량 내에서 발생하고 있다. 예를 들면, 차량 내에 설치된 AV 기기가 저장장치의 멀티미디어 컨텐츠를 플레이하기도 하고, 네비게이션 기기가 TPEG 데이터를 수신하여 이를 화면 상에 표시하기도 하며, 차량의 향상된 안전 또는 운전편의 기능, 예를 들어 오토 크루즈(auto-cruise) 기능 등에 의해 차량이 주행하고 있는 전방이나 도로의 차선 등을 지속적으로 촬영함에 따른 데이터가 발생되기도 한다. However, today, in addition to the types of data related to the current state or operation of the vehicle, various types of data are generated in the vehicle. For example, an AV device installed in a vehicle may play multimedia contents of a storage device, a navigation device may receive TPEG data and display it on the screen, and improved safety or driving convenience functions of the vehicle, such as auto cruise. In some cases, data is generated by continuously photographing the vehicle ahead or the lane of the road by the (auto-cruise) function.

이와 같이, 이전에 비해 현저히 많은 양과 다양한 유형의 데이터가 차량내에서 발생하고 있고, 이러한 유형의 데이터도 또한, 전자제어 유니트들 간에 통신에 의해 상호 공유되거나, 또는 해당 데이터를 처리하는 단말기기에 통신망을 통해 전송될 필요가 있다. In this way, significantly larger amounts and various types of data are generated in the vehicle than before, and this type of data is also shared with each other by communication between electronic control units, or a communication network is connected to a terminal device that processes the data. Need to be transmitted through.

이러한 요구를 충족하기 위해, 전자제어 유니트들 간의 통신로에 대해서, 기존보다도 더 높은 속도의 네트워크를 제공하고 있고, 또한 데이터를 직접 처리하는 전자제어 유니트의 경우에도, 높은 사양의 기기가 점진적으로 적용되고 있다. 그리고, 이러한 고사양의 전자제어 유니트에 대해서는, 생산업자가, 해당 자원( CPU, 메모리, 통신소자, 다양한 종류의 입출력 인터페이스들, ADC 등 )의 효율적인 사용을 위한 운영시스템(O/S)도 함께 제공하고 있어서, 차량과 같은 특정 장치에 전자제어 유니트를 적용하고자 할 때, 그 운영시스템을 기반으로 보다 쉽게 전자제어 유니트에서 원하는 동작을 수행하는 응용 프로그램을 개발하여 적용할 수 있다.In order to meet these demands, a higher-speed network is provided for communication paths between electronic control units than before, and higher specification devices are gradually applied to electronic control units that directly process data. Has become. And, for these high-spec electronic control units, manufacturers also provide an operating system (O/S) for efficient use of the corresponding resources (CPU, memory, communication devices, various types of input/output interfaces, ADC, etc.). Therefore, when applying the electronic control unit to a specific device such as a vehicle, it is possible to develop and apply an application program that performs a desired operation in the electronic control unit more easily based on the operating system.

도 1은, 이러한 유형의 전자제어 유니트들이 네트워크를 통해 서로 연결되어 있는 단순한 예를 보여준다. 도 1에 도시된 예에서, 개발자가 개발하여 임의의 한 전자제어 유니트(11)에 설치하여 실행시키는 응용 프로그램은, 해당 전자제어 유니트에서 처리하는, 보다 구체적으로 그 유니트에 직접 연결된 각종의 센서나 부품, 기계적 또는 전기적 모듈 등에서 입력되는 또는 자체적으로 생성하는 신호를 확인하고 그들에 대해 원하는 신호를 설정하는 동작 만을 위한 것일 수도 있고, 예시된 바와 같이, 다른 전자제어 유니트(12)에서 처리하는 신호에 대한 확인( 요청 후에 그에 따른 응답의 수신 )(p11)이나 설정(p12)의 동작도 함께 할 수 있는 것일 수도 있다.1 shows a simple example in which electronic control units of this type are connected to each other through a network. In the example shown in FIG. 1, an application program developed by a developer and installed and executed in an electronic control unit 11 is processed by the corresponding electronic control unit, and more specifically, various sensors or directly connected to the unit It may be for only the operation of checking signals input from parts, mechanical or electrical modules, or generated by itself, and setting a desired signal for them. As illustrated, the signals processed by other electronic control units 12 Confirmation (receiving a response after request) (p11) or setting (p12) may also be performed.

이와 같은 동작이 정상적으로 이루어지게 하기 위해서는, 개발자는, 해당 응용 프로그램(11a)을 개발할 때, 그 프로그램에 의해 의도되는 실행 동작에 필요한 각각의 신호에 대해 구체적으로 파악하고 있어야 한다. 예를 들어, 해당 신호가 또는 해당 신호에 상응하는 정보가, 그 응용 프로그램이 실행될 전자제어 유니트를 포함하여 어떤 전자제어 유니트에서 처리하는 것인 지, 그 전자제어 유니트에서 어떤 응용 프로그램이 처리하는 것인 지, 그리고 어떤 포맷으로 해당 신호의 정보가 실려서 제공되는 지 등을 파악학고, 그에 맞추어 프로그래밍(programming)하여야 한다.In order for such an operation to be performed normally, when developing the application program 11a, the developer must specifically grasp each signal required for an execution operation intended by the program. For example, whether the signal or information corresponding to the signal is processed by which electronic control unit, including the electronic control unit in which the application program is to be executed, and which application program is processed by the electronic control unit. Recognition and in what format the information of the signal is loaded and provided, etc., and programming accordingly.

그런데, 이러한 프로그래밍에 개발되는 응용 프로그램은 이식성(移植性)이 매우 낮을 수 밖에 없어서, 다른 전자제어 유니트에 동일한 프로그램 소스(source)를 컴파일(compile)하여 실행시킬 때, 그 포팅(porting)된 전자제어 유니트에서 동일한 동작을 정상적으로 수행할 가능성이 희박하다. 예를 들어, 전자제어 유니트들이 장착되는 장치가 차량인 경우, 임의의 한 모델의 차량의 전자제어 유니트에 대해서 개발된 응용 프로그램을 다른 모델의 동일 기능의 전자제어 유니트에 그 프로그램 소스를 그대로 이식하였을 때, 정상적으로 동작하지 않는 것이 일반적이다. 차량들이 모델별로 전자제어 유니트들에 대한 네트워크 구축환경이 부분적으로 다르고, 또한 처리하는 신호나 정보들의 종류에도 부분적으로 차이가 있어서, 그러한 신호나 정보의 종류의 차이에 따라 정보 전달을 위한 포맷도 대부분 서로 일치하지 않기 때문이다.However, application programs developed for such programming have very low portability, so when the same program source is compiled and executed in another electronic control unit, the ported electronic It is unlikely that the control unit will normally perform the same operation. For example, if the device to which the electronic control units are mounted is a vehicle, the application program developed for the electronic control unit of a vehicle of one model would have been transplanted to the electronic control unit of the same function of another model as it is. In general, it does not work normally. The network construction environment for the electronic control units for each model of vehicles is partially different, and there are also partial differences in the types of signals or information to be processed, so most of the formats for information transmission are based on differences in the types of such signals or information. Because they do not match each other.

따라서, 전자제어 유니트에서 실행될 응용 프로그램을 개발하는 개발자는, 임의의 한 모델의 차량에 대해 개발된 응용 프로그램을 다른 모델의 차량에 적용하기 위해서는, 그 적용할 모델 차량에 맞도록, 관련된 프로그램 부분을 찾아서 모두 수정하여야 한다. 이러한 프로그램 수정이나 보완 작업은, 동일 종류의 차량에 대해서, 성능 개선 등을 위해 해당 응용 프로그램을 다른 전자제어 유니트로 이식시키는 경우에도 마찬가지로 필요할 수 있다.Therefore, a developer who develops an application program to be executed in the electronic control unit, in order to apply an application program developed for a vehicle of one model to a vehicle of another model, selects a related program part according to the model vehicle to be applied. You have to find it and fix it all. Such program modification or supplementary work may be similarly necessary when the application program is transplanted to another electronic control unit for performance improvement or the like for the same type of vehicle.

하지만, 동일 동작을 위한 응용 프로그램을, 적용하는 장치의 종류가 달라질 때마다 또는 적용 네트워크의 환경이 달라질 때마다 그에 맞게 수정, 보완하는 작업은, 개발자에게 있어 대단히 번거로운 일이고, 또한, 그러한 수정 보완 작업의 필요성은, 해당 장치의 생산자 입장에서 보면, 성능 개선이나 새로운 모델의 장치의 개발에 있어 시간과 비용을 더 많이 투입해야 함을 의미한다.However, it is very cumbersome for the developer to modify and supplement the application program for the same operation whenever the type of device to be applied is different, or whenever the applied network environment is changed. The necessity of work means that, from the perspective of the manufacturer of the device, more time and cost must be invested in improving performance or developing a new model device.

본 발명은, 임의의 장치 내에서는 대상 기기에 무관하게 자유로이 응용 프로그램을 적용할 수 있게 하는 방법과 그 방법을 지원하는 기기를 제공하는 것에 일 목적이 있는 것이다.An object of the present invention is to provide a method of allowing an application program to be freely applied regardless of a target device in an arbitrary device, and a device supporting the method.

본 발명의 다른 목적은, 분산된 복수의 응용 프로그램들이 각기 의도하는 동작에 필요한 정보의 조회가 신속하게 이루어질 수 있게 하는 방법과 그 방법을 지원하는 기기를 제공하는 것이다.Another object of the present invention is to provide a method of allowing a plurality of distributed application programs to quickly inquire information necessary for an intended operation, and to provide a device supporting the method.

본 발명의 또 다른 목적은, 분산된 복수의 응용 프로그램들이 각기 의도하는 동작에 필요한 정보의 조회가, 네트워크에 가해지는 부하를 최소화하면서 신속하게 이루어질 수 있게 하는 방법과 그 방법을 지원하는 기기를 제공하는 것이다.Another object of the present invention is to provide a method of allowing a plurality of distributed application programs to search for information necessary for an intended operation, and to be quickly performed while minimizing the load on the network, and to provide a device supporting the method. Is to do.

본 발명의 또 다른 목적은, 분산된 복수의 응용 프로그램들에 의한 동일 정보에 대한 처리 요구를 집중하여 처리함으로써, 서로 상충되는 동작의 발생을 방지할 수 있는 방법과 그 방법을 지원하는 기기를 제공하는 것이다.Another object of the present invention is to provide a method for preventing the occurrence of conflicting operations and a device supporting the method by concentrating and processing requests for processing the same information by a plurality of distributed application programs. Is to do.

본 발명의 또 다른 목적은, 이종의 네트워크를 통해 연결된 전자제어 유니트들에 의해 처리되는 신호나 정보를 필요로 하는 응용 프로그램들에 대해서도 전술한 각각의 목적들이 달성될 수 있게 하는 방법과 그 방법을 위한 기기를 제공하는 것이다.Another object of the present invention is to provide a method and a method for achieving each of the aforementioned objects for application programs that require signals or information processed by electronic control units connected through heterogeneous networks. It is to provide a device for.

본 발명의 목적은, 상기 명시적으로 서술된 목적에 국한되는 것은 아니며, 본 발명에 대한 구체적이고 예시적인 하기의 설명에서 도출될 수 있는 효과를 달성하는 것을 그 목적에 당연히 포함한다.The object of the present invention is not limited to the objects explicitly described above, and naturally includes in the object to achieve the effects that can be derived from the detailed and exemplary description of the present invention.

본 발명의 일 측면에 따른, 임의의 장치에 구축된 네트워크에 연결되어 그 네트워크를 통한 타 기기와의 메시지 교환을 통해, 상기 장치와 그 구성품들의 각종의 상태들에 대해 조회나 설정을 하기 위한 기기는, 상기 네트워크를 통해 상기 타 기기와 메시지를 주고 받을 수 있도록 구성된 제 1처리부와, 상기 각종의 상태들 중, 상기 기기가 전담하여 처리하도록 지정된 상태 그룹에 속하는 상태들의 각각에 대하여, 해당 상태를 지시하는 정보가 등재되고 해당 상태들의 현재 값이 기록될 수 있도록 구성된 상태값 목록과, 상기 각종의 상태들 중 적어도 일부의 상태들의 각각에 대해, 해당 상태에 대한 값이 실리는 데이터 블록에 대한 식별자와 해당 상태를 지시하는 정보가 서로 연계되어 등재되어 있는 블록 프로파일과, 상기 제 1처리부를 통해 상기 네트워크로부터 수신되는 상기 타 기기로부터의 특정 상태에 대한 특정값으로의 설정 요청에 대하여, 상기 블록 프로파일에서, 그 설정 요청에 포함된 상기 특정 상태를 지시하는 정보에 연계되어 등재된 식별자를 확인하고, 상기 특정값을 포함하는 데이터 블록을 상기 확인한 식별자를 선두에 포함시켜 구성한 후, 상기 네트워크와는 통신 방식이 상이한 제 2네트워크에 연결된 하나의 이상의 제 3의 기기가 수신할 수 있도록, 상기 제 2네트워크를 향해 상기 기기에 구비된 인터페이스부를 통해 전송하도록 구성된 제 2처리부를 포함하여 구성된다. 그리고, 상기 제 2처리부는, 상기 인터페이스부를 통해 수신되는, 상기 상태 그룹에 속하는 하나 이상의 상태에 대한 값을 해당 상태를 지시하는 정보없이 값들이 포함하여 구성된 데이터 블록에 대해서 선택적으로 제 1형의 제 1공유 메시지로 구성하여, 적어도 상기 타 기기가 수신할 수 있도록 상기 제 1처리부를 통해 상기 네트워크로 전송되게 한다. 여기서, 상기 데이터 블록은, 적어도 데이터 블록의 종류를 나타내는 식별자와 하나 이상의 상태에 대한 값이 채워진 부분으로써 구성된다.A device for inquiring or setting various states of the device and its components through message exchange with other devices through the network connected to a network built in a device according to an aspect of the present invention Is, for each of the first processing unit configured to send and receive messages to and from the other device through the network, and states belonging to a state group designated to be processed exclusively by the device among the various states, the corresponding state A list of status values configured so that the indicated information is registered and the current values of the corresponding states can be recorded, and an identifier for a data block in which a value for the corresponding state is carried for each of at least some of the various states And a block profile in which information indicating a corresponding state is registered in association with each other, and a request for setting a specific value for a specific state from the other device received from the network through the first processing unit, the block profile In, after checking the registered identifier in association with the information indicating the specific state included in the setting request, and configuring the data block including the specific value by including the identified identifier at the head, communication with the network And a second processing unit configured to transmit to the second network through an interface unit provided in the device so that at least one third device connected to a second network having a different scheme can receive it. In addition, the second processing unit selectively selects a first type of data block including values for one or more states belonging to the state group, received through the interface unit, without information indicating the corresponding state. It consists of one shared message, and is transmitted to the network through the first processing unit so that at least the other device can receive it. Here, the data block is composed of a portion filled with at least an identifier indicating the type of the data block and values for one or more states.

본 발명에 따른 일 실시예에서는, 상기 기기는, 상기 설정 요청을 그 내용으로 하는 설정요구 메시지를 상기 제 1처리부를 통해 수신하고, 그 수신된 상기 설정요구 메시지에 따라 상기 설정 요청을 상기 제 2처리부에 인가하도록 구성된 제 3처리부를 더 포함하여 구성될 수 있다. 이 경우, 상기 제 3처리부는, 상기 설정 요청을 상기 제 2처리부에 인가한 후, 상기 제 1처리부를 통해 상기 네트워크로부터 수신한 다른 메시지가 상기 특정 상태에 대해 임의값으로의 설정을 요구하는 것일 때는, 그 다른 메시지의 수신 시점이, 상기 설정 요청의 상기 제 2처리부에의 인가시점으로부터 기 지정된 제한 시간 내이면, 상기 다른 메시지에 대해서는 그 설정 요구를 거절하는 응답 메시지가 상기 제 1처리부를 통해 전송되게 한다. 본 실시예에서는, 상기 제한 시간이, 상기 각종의 상태들에 대해 분류된 그룹들 중에서 상기 특정 상태가 속하는 그룹에 대해 지정된 시간일 수 있으며, 상기 분류된 그룹들 중 2개 이상의 그룹은, 지정된 상기 제한 시간이 서로 다를 수 있다.In one embodiment according to the present invention, the device receives, through the first processing unit, a setting request message containing the setting request as its content, and sends the setting request to the second according to the received setting request message. It may be configured to further include a third processing unit configured to apply to the processing unit. In this case, the third processing unit, after applying the setting request to the second processing unit, requests another message received from the network through the first processing unit to set an arbitrary value for the specific state. When the other message is received, a response message rejecting the setting request is sent to the other message through the first processing unit when the receiving time of the other message is within a predetermined time limit from the time of authorization of the setting request to the second processing unit. To be transmitted. In this embodiment, the time limit may be a time designated for a group to which the specific state belongs among the groups classified for the various states, and at least two groups among the classified groups are designated The time limit may be different.

본 발명에 따른 일 실시예에서는, 상기 제 1공유 메시지로 구성되는 데이터 블록이, 적어도 상기 타 기기로부터 상기 네트워크를 경유하여 상기 제 1처리부를 통해 상태공유 등록을 요청받은 상태에 대한 값을 포함하는 데이터 블록일 수 있다. 그리고, 상태공유 등록을 요청받은 상기 상태에 대해서는, 상기 상태값 목록에 공유할 대상으로서 적어도 상기 타 기기의 주소가 연계되어 기재되어 있게 되며, 상기 제 1공유 메시지는, 적어도 상기 타 기기만을 목적지로 하여 전송될 수 있다.In an embodiment according to the present invention, a data block composed of the first sharing message includes a value for a state that is requested to register a state sharing through the first processing unit from at least the other device via the network. It can be a data block. And, with respect to the state for which state sharing registration is requested, at least the address of the other device as a target to be shared is described in the state value list in association, and the first sharing message includes at least the other device as a destination. Can be transmitted.

본 발명에 따른 다른 일 실시예에서는, 상기 제 1공유 메시지로 구성되는 데이터 블록이, 기 설정된 공유 프로파일에 등재되어 있는 상태들 중 적어도 어느 하나의 상태에 대한 값을 포함하는 데이터 블록일 수 있고, 상기 제 1공유 메시지는, 상기 타 기기를 포함하는 상기 네트워크에 연결되어 복수의 기기들 모두의 수신을 의도하여 전송될 수 있다. 본 실시예에서는, 상기 제 2처리부가, 상기 공유 프로파일에 등재되어 있지 않은 상태에 대하여, 상기 네트워크를 경유하여 상기 제 1처리부를 통해 상태공유 등록을 요청받게 되면, 그 등록 요청받은 상태에 대한 값을 포함하는, 상기 인터페이스부를 통해 수신되는 데이터 블록에 대해서도 상기 제 1형의 제 2공유 메시지로 구성하여 상기 제 1처리부를 통해 상기 네트워크로 전송하게 된다.In another embodiment according to the present invention, the data block composed of the first shared message may be a data block including a value for at least one of states registered in a preset sharing profile, The first sharing message may be transmitted with the intention of receiving all of a plurality of devices by being connected to the network including the other device. In the present embodiment, when the second processing unit receives a state sharing registration request through the first processing unit via the network for a state not listed in the sharing profile, the value of the registration request state A data block received through the interface unit including, is configured as a second shared message of the first type and transmitted to the network through the first processing unit.

본 발명에 따른 일 실시예에서는, 상기 제 2처리부가, 상기 제 2네트워크를 경유하여 상기 인터페이스부를 통해 수신되는 데이터 프레임에 패킹된 데이터 블록에 대해서, 상기 상태값 목록에 속하는 상태들에서 대응되는 상태들의 값들로 각각 식별하여 상기 상태값 목록에서 해당 상태에 대한 현재 값으로 기록하게 된다.In one embodiment according to the present invention, the second processing unit, for a data block packed in a data frame received through the interface unit via the second network, corresponds to states belonging to the state value list. Each of these values is identified and recorded as a current value for the corresponding state in the state value list.

본 발명에 따른 일 실시예에서는, 상기 기기가, 직접 연결된 센서, 상기 장치의 부품, 전기적인 모듈 또는 기계적인 모듈을 포함하는 주변 기기들의 상태들의 각각에 대해서 현재 값을 확인하여, 상기 상태값 목록에 등재된 상태들 중에서 대응되는 상태의 현재 값으로 기록하거나, 상기 주변 기기들의 상태들 중 임의의 상태에 대해서 특정 값으로 설정할 수 있도록 구성된 제 4처리부를 더 포함하여 구성될 수도 있다. 또한, 본 실시예에서는, 상기 기기가, 상기 주변 기기들의 상태들 또는 상기 수신된 데이터 블록에 그 값이 포함된 상태들의 적어도 일부에 대해서, 각 상태를 지시하는 정보와 각 상태의 현재 값을 상기 상태값 목록에서 획득하여 배열함으로써 제 2형의 공유용 메시지를 구성하여, 적어도 상기 타 기기가 수신할 수 있도록 상기 제 1처리부를 통해 상기 네트워크로 전송되게 하는 제 3처리부를 더 포함하여 구성될 수 있다. 다른 실시예에서는, 상기 제 3처리부가, 상기 주변 기기들의 상태들 중 하나 이상의 상태에 대해서, 상기 제 2형의 공유용 메시지가 아닌 상기 제 1형의 공유용 메시지로 구성하여 공유를 위해 상기 네트워크로 전송할 수도 있다. 즉, 상기 주변 기기들의 상태들 중 하나 이상의 상태에 대해서, 해당 상태의 현재 값을, 적어도 그 해당 상태가 포함되었음을 알리기 위한 식별자를 전치(前置)시켜 포함한 데이터 블록을 구성하고, 그 구성된 데이터 블록을 상기 제 1형의 공유용 메시지로 구성하여, 적어도 상기 타 기기가 수신할 수 있도록 상기 제 1처리부를 통해 상기 네트워크로 전송되게 할 수도 있다.In one embodiment according to the present invention, the device checks a current value for each of the states of peripheral devices including a sensor, a component of the device, an electrical module or a mechanical module directly connected, and the state value list It may be configured to further include a fourth processing unit configured to record a current value of a corresponding state among states listed in, or to set a specific value for an arbitrary state among states of the peripheral devices. In addition, in the present embodiment, the device, for at least some of the states of the peripheral devices or states in which the value is included in the received data block, the information indicating each state and the current value of each state. A third processing unit configured to configure a second type of sharing message by acquiring and arranging it from the status value list, and transmitting it to the network through the first processing unit so that at least the other device can receive it. have. In another embodiment, the third processing unit configures one or more of the states of the peripheral devices as the first type sharing message instead of the second type sharing message, It can also be transferred to. That is, for one or more states of the peripheral devices, a data block including at least an identifier for indicating that the corresponding state is included and a current value of the corresponding state is formed, and the configured data block May be configured as the first type of sharing message and transmitted to the network through the first processing unit so that at least the other device can receive it.

상기 제 3처리부와 상기 제 4처리부를 더 포함하여 구성되는 실시예에서는, 상기 공유용 메시지로 구성되는 임의 상태의 현재 값이, 상기 공유용 메시지의 구성 직전에 상기 네트워크로 송신한 그 공유용 메시지와 동일한 유형( 즉, 제 1형 또는 제 2형 )의 다른 공유용 메시지에 포함된 상기 임의 상태의 직전 값과는 차이가 있는 것이다. 그리고, 상기 제 3처리부는, 상기 공유용 메시지에 그 값이 포함되는 하나 이상의 상태에서, 기 정해진 시간을 주기로, 각 상태의 현재 값을 포함하는 상기 공유용 메시지가 구성되어 상기 네트워크로 전송되게 하며, 그 주기 내에서는, 상기 어느 하나의 상태에 대해 값이 변경되어도 상기 공유용 메시지를 상기 네트워크로 전송하지 않는다. 상기 기 정해진 시간은, 상기 각종의 상태들에 대해 분류된 그룹들 중에서 상기 하나 이상의 상태가 속하는 그룹에 대해 지정된 시간이고, 상기 분류된 그룹들 중 2개 이상의 그룹은, 상기 주기로 적용하는 기 정해진 시간이 서로 다르게 설정된다.In an embodiment further comprising the third processing unit and the fourth processing unit, the current value of the arbitrary state consisting of the sharing message is the sharing message transmitted to the network immediately before the configuration of the sharing message. It is different from the immediately preceding value of the random state included in other shared messages of the same type (ie, type 1 or type 2). And, the third processing unit, in one or more states in which the value is included in the sharing message, at a predetermined time period, the sharing message including the current value of each state is configured and transmitted to the network. , Within that period, the sharing message is not transmitted to the network even if the value is changed for any one of the states. The predetermined time is a time designated for a group to which the one or more states belong among the groups classified for the various states, and two or more of the classified groups are a predetermined time applied at the period These are set differently.

또한, 상기 제 3처리부와 상기 제 4처리부를 더 포함하여 구성되는 실시예에서는, 상기 상태값 목록에서 상기 상태 그룹에 속하는 상태들에 대해서는 소유주를 구분하는 정보가 부가 기록될 수 있으며, 상기 제 3처리부는, 상기 설정 요청에 포함된 상기 특정 상태에 대한 소유주가 상기 상태값 목록에서 상기 제 2처리부로 확인될 때에, 상기 제 2네트워크에 연결된 하나의 이상의 제 3의 기기가 수신할 수 있도록 상기 구성한 데이터 블록을 상기 인터페이스부를 통해 전송할 수 있다. 본 실시예에서는, 상기 제 3처리부가, 상기 설정 요청에 포함된 상기 특정 상태에 대한 소유주가 상기 상태값 목록에서 상기 제 4처리부로 확인될 때에는, 상기 특정값을 상기 제 4처리부에 전달하면서 해당되는 주변 기기에 설정토록 명령함으로써 상기 설정 요청을 처리하게 된다.In addition, in an embodiment configured to further include the third processing unit and the fourth processing unit, information for identifying the owner may be additionally recorded for states belonging to the state group in the state value list, and the third The processing unit is configured so that at least one third device connected to the second network can receive when the owner for the specific state included in the setting request is identified with the second processing unit in the state value list. The data block may be transmitted through the interface unit. In this embodiment, when the owner of the specific state included in the setting request is identified as the fourth processing unit in the state value list, the third processing unit transmits the specific value to the fourth processing unit while transmitting the corresponding The setting request is processed by instructing the peripheral device to be set.

본 발명에 따른 일 실시예에서는, 상기 기기는, 그 기기에서 실행되는 응용 프로그램으로부터 임의의 상태에 대한 요청을 수신하고, 또한 그 요청에 따른 결과를 상기 응용 프로그램에 리턴(return)하도록 구성된 서비스 인터페이스부를 더 포함하여 구성된다. 상기 서비스 인터페이스부는, 상기 응용 프로그램으로부터 수신되는 상기 임의의 상태에 대한 요청에 대하여, 상기 각종의 상태들에 속하는 전부 또는 일부의 상태들의 각각에 대해 해당 상태를 지시하는 정보와 해당 상태에 대해 행할 수 있는 액션(action)을 지정하고 있는 프로파일에 근거하여 그 요청을 처리하는 것이 가능한 지를 판별한다.In one embodiment according to the present invention, the device is a service interface configured to receive a request for an arbitrary state from an application program running on the device and return a result according to the request to the application program. It is configured to further include wealth. The service interface unit, in response to a request for the arbitrary state received from the application program, may perform information indicating a corresponding state for each of all or part of states belonging to the various states and the corresponding state. Determines whether it is possible to process the request based on the profile specifying the action that exists.

본 발명의 다른 일 측면에 따른, 임의의 장치에 구축된 네트워크에 연결되어 그 네트워크를 통한 타 기기와의 메시지 교환을 통해, 상기 장치와 그 구성품들의 각종의 상태들에 대해 조회나 설정을 하기 위한 기기는, 상기 기기에서 실행되는 응용 프로그램으로부터 임의의 상태에 대한 요청을 수신하고, 또한 그 요청에 따른 결과를 상기 응용 프로그램에 리턴하도록 구성된 서비스 인터페이스부와, 상기 네트워크를 통해 상기 타 기기와 메시지를 주고 받을 수 있도록 구성된 제 1처리부와, 상기 각종의 상태들 중 일부의 상태들의 각각에 대해, 해당 상태에 대한 값이 실리는 데이터 블록에 대한 식별자와 해당 상태를 지시하는 정보가 서로 연계되어 등재되어 있는 블록 프로파일과, 상기 제 1처리부를 통해 수신되는 제 1형의 공유 메시지에 포함된 하나 이상의 데이터 블록의 각각에 대해서, 상기 블록 프로파일에 근거하여 해석함으로써, 해당 데이터 블록에 포함된 각 신호가 어떤 상태에 대한 것인 지를 식별하고, 각 신호를 상태값 목록에 등재된 상태들 중에서 그 식별된 상태에 대한 현재 값으로 기록하도록 구성된 매핑부와, 상기 서비스 인터페이스부를 통해 상기 응용 프로그램으로부터 수신되는, 상기 각종의 상태들에 속하는 임의의 상태에 대한 요청이, 그 임의의 상태에 대한 조회이면 상기 임의의 상태에 대한 값을 상기 상태값 목록에서 확인하여 상기 서비스 인터페이스부를 통해 상기 응용 프로그램에 제공하고, 그 임의의 상태에 대한 설정이면, 그 임의의 상태를 지시하는 정보와 그 요청에 수반된 특정값을 포함하는 설정요구 메시지를 구성하여, 상기 제 1처리부를 통해, 상기 임의의 상태를 전담하여 처리하도록 지정된 타 기기로 전송하도록 구성된 제 2처리부를 포함하여 구성된다. According to another aspect of the present invention, through a connection to a network built in a device and exchange of messages with other devices through the network, for inquiring or setting various states of the device and its components. The device includes a service interface unit configured to receive a request for an arbitrary state from an application program running in the device and return a result according to the request to the application program, and a message with the other device through the network. For each of the first processing unit configured to be able to send and receive, and some of the states of the various states, an identifier for a data block carrying a value for the state and information indicating the corresponding state are registered in association with each other. For each of the block profile that is present and one or more data blocks included in the type 1 sharing message received through the first processing unit, each signal included in the corresponding data block is analyzed based on the block profile. A mapping unit configured to identify whether it is for a state, and record each signal as a current value for the identified state among states listed in the state value list, and received from the application program through the service interface unit. If the request for an arbitrary state belonging to various states is a query for the arbitrary state, the value for the arbitrary state is checked in the state value list and provided to the application program through the service interface, If it is a setting for an arbitrary state, a configuration request message including information indicating the arbitrary state and a specific value accompanying the request is constructed, and the arbitrary state is processed exclusively through the first processing unit. And a second processing unit configured to transmit to another designated device.

본 발명에 따른 일 실시예에서는, 상기 제 2처리부가, 상기 타 기기가 상기 네트워크로 전송함에 따라 상기 제 1처리부를 통해 수신되는, 전술한 바의 제 2형 공유 메시지에 포함된 정보에 근거하여, 상기 상태값 목록의 일부의 상태들에 대하여 그 값을 갱신할 수 있다. In one embodiment according to the present invention, the second processing unit, based on information included in the type 2 sharing message described above, received through the first processing unit as the other device transmits to the network. , For some states of the state value list, the value may be updated.

본 발명에 따른 일 실시예에서는, 상기 기기가, 자신에 직접 연결된 센서, 상기 장치의 부품, 전기적인 모듈 또는 기계적인 모듈을 포함하는 주변 기기들의 상태들의 각각에 대해서 현재 값을 확인하여, 상기 상태값 목록에 등재된 상태들 중에서 대응되는 상태의 현재 값으로 기록하거나, 상기 주변 기기들의 상태들 중 임의의 상태에 대해서 특정 값으로 설정할 수 있도록 구성된 제 3처리부를 더 포함하여 구성될 수 있다.In one embodiment according to the present invention, the device checks a current value for each of the states of peripheral devices including a sensor directly connected to it, a component of the device, an electrical module or a mechanical module, and the state It may be configured to further include a third processing unit configured to record a current value of a corresponding state among states listed in the value list, or to set an arbitrary state among states of the peripheral devices to a specific value.

본 발명에 따른 일 실시예에서는, 상기 제 2처리부가, 상기 기기에서 실행되는 하나 이상의 응용 프로그램으로부터 상기 서비스 인터페이스부를 통해 전달받은 필요 상태들이, 기 설정된 피공유 프로파일에 등재되어 있는 지를 확인하고, 상기 피공유 프로파일에 등재되어 있지 않은 적어도 하나의 상태에 대해서는, 상태공유 등록을 요구하는 메시지를 구성하여, 상기 제 1처리부에 전달하면서 상기 네트워크로의 전송을 요청할 수도 있다.In an embodiment according to the present invention, the second processing unit checks whether necessary states transmitted through the service interface unit from one or more application programs executed in the device are registered in a preset shared profile, and the For at least one state that is not listed in the shared profile, a message requesting registration of state sharing may be constructed and transmitted to the first processing unit to request transmission to the network.

본 발명의 또 다른 일 측면에 따른, 임의의 장치에 구축된 네트워크에 연결된 복수의 기기들 중 어느 하나의 기기가, 다른 기기와 메시지를 교환함으로써, 상기 장치와 그 구성품들의 각종의 상태들의 일부에 대해 조회 또는 설정하는 제 1방법은, 상기 각종의 상태들 중, 상기 어느 하나의 기기가 전담하여 처리하도록 지정된 상태 그룹에 속하는 상태들의 적어도 하나에 대한 현재 값을 포함하는, 상기 네트워크와는 통신 방식이 상이한 제 2네트워크 상에서 발생된 데이터 블록을 수신하는 1단계와, 기 설정된 공유정보가, 상기 수신한 데이터 블록에 대해서 적어도 상기 다른 기기와 공유하도록 설정된 것이면, 상기 데이터 블록을 공유 메시지로 구성하여, 적어도 상기 다른 기기가 수신할 수 있도록 상기 네트워크로 전송하고, 또한 상기 데이터 블록에 실린 하나 이상의 값을, 상기 상태 그룹에 속하는 상태들의 각각을 지시하는 정보가 등재되어 있는 상태값 목록에서, 해당되는 상태에 대한 현재 값으로 기록하는 2단계와, 상기 네트워크로부터 수신되는 상기 다른 기기로부터의 특정 상태에 대한 특정값으로의 설정 요청에 대하여, 기 설정된 블록 프로파일에서, 그 설정 요청에 포함된 상기 특정 상태를 지시하는 정보에 연계되어 등재된 식별자를 확인하고, 상기 특정값을 포함하는 데이터 블록을 상기 확인한 식별자를 선두에 포함시켜 구성한 후, 상기 네트워크와는 통신 방식이 상이한 제 2네트워크에 연결된 하나의 이상의 제 3의 기기가 수신할 수 있도록, 상기 제 2네트워크를 향해 상기 어느 하나의 기기에 구비된 인터페이스부를 통해 전송하는 3단계를 포함하여 이루진다.According to another aspect of the present invention, any one of a plurality of devices connected to a network built in an arbitrary device exchanges messages with other devices, thereby changing a part of various states of the device and its components. The first method of inquiring or setting a communication method with the network includes a current value for at least one of the states belonging to a state group designated to be processed exclusively by the one device among the various states. Step 1 of receiving a data block generated on this different second network, and if the preset sharing information is set to share with at least the other device for the received data block, the data block is configured as a sharing message, In a state value list in which information indicating each of the states belonging to the state group is registered, one or more values transmitted to the network so that at least the other device can receive it, and loaded in the data block, a corresponding state In the second step of recording the current value for, and in response to a request for setting to a specific value for a specific state from the other device received from the network, the specific state included in the configuration request in a preset block profile After confirming the identifier registered in connection with the indicated information, and configuring the data block including the specific value by including the identified identifier at the head, one or more second networks connected to a second network different from the network It includes a third step of transmitting through an interface unit provided in any one of the devices toward the second network so that the devices of 3 can receive.

본 발명의 또 다른 일 측면에 따른, 임의의 장치에 구축된 네트워크에 연결된 복수의 기기들 중 어느 하나의 기기가, 다른 기기와 메시지를 교환함으로써, 상기 장치와 그 구성품들의 각종의 상태들의 일부에 대해 조회 또는 설정하는 제 2방법은, 상기 네트워크를 통해 상기 다른 기기로부터 수신되는 공유 메시지에 포함된 하나 이상의 데이터 블록의 각각에 대해서, 기 설정된 블록 프로파일에 근거하여 해석함으로써, 해당 데이터 블록에 포함된 각 신호가 어떤 상태에 대한 것인 지를 식별하고, 각 신호를 상태값 목록에 등재된 상태들 중에서 그 식별된 상태에 대한 현재 값으로 기록하는 1단계와, 상기 어느 하나의 기기에서 실행되는 응용 프로그램으로부터 임의의 상태에 대한 요청을 수신하는 2단계와, 상기 임의의 상태에 대한 상기 요청이, 그 임의의 상태에 대한 조회이면 상기 임의의 상태에 대한 값을 상기 상태값 목록에서 확인하여 상기 응용 프로그램에 제공하고, 그 임의의 상태에 대한 설정이면, 그 임의의 상태를 지시하는 정보와 그 요청에 수반된 특정값을 포함하는 설정요구 메시지를 구성하여, 상기 네트워크를 통해, 복수의 기기들 중 상기 임의의 상태를 전담하여 처리하도록 지정된 특정 기기로 전송하는 3단계를 포함하여 이루어진다.According to another aspect of the present invention, any one of a plurality of devices connected to a network built in an arbitrary device exchanges messages with other devices, thereby changing a part of various states of the device and its components. In the second method of inquiring or setting a data block, each of one or more data blocks included in a shared message received from the other device through the network is analyzed based on a preset block profile. Step 1 of identifying which state each signal is for and recording each signal as a current value for the identified state from among the states listed in the state value list, and an application program running on any of the devices Step 2 of receiving a request for an arbitrary state from and, if the request for the arbitrary state is a query for the arbitrary state, the application program checks the value for the arbitrary state in the state value list And, if it is a setting for the arbitrary state, a configuration request message including information indicating the arbitrary state and a specific value accompanying the request is configured, and through the network, the It includes three steps of transmitting an arbitrary state to a specific device designated for processing.

본 발명에 따른 상기 제 2방법의 일 실시예에서는, 상기 어느 하나의 기기에는 피공유 프로파일이 설정되어 있되, 상기 피공유 프로파일에는, 상기 다른 기기에 설정된 공유 프로파일에 등재된 특정 상태들을 적어도 포함하는 상태들이 등재되며, 상기 특정 상태들은, 상기 다른 기기가 해당 상태의 값이 획득되면 그 획득된 값을 포함하는 공유 메시지를 상기 네트워크로 전송하도록 지정된 것이다. 그리고, 상기 제 2방법은, 상기 응용 프로그램으로부터 전달받은 필요 상태들 중에서, 상기 피공유 프로파일에 등재되어 있지 않은 상태가 있으면, 그 미등재된 상태에 대해서, 상태공유 등록을 요구하는 메시지를 구성하여 상기 네트워크로 전송하는 4단계를 더 포함하여 이루어질 수 있다.In one embodiment of the second method according to the present invention, a shared profile is set in any of the devices, and the shared profile includes at least specific states registered in a shared profile set in the other device. States are listed, and the specific states are designated to transmit a shared message including the acquired value to the network when the other device acquires a value of the state. In the second method, if there is a state that is not listed in the shared profile among the required states transmitted from the application program, a message for requesting state sharing registration for the unlisted state is constructed. It may further include a fourth step of transmitting to the network.

전술한 본 발명 또는, 하기에서 첨부된 도면과 함께 상세히 설명되는 본 발명의 적어도 일 실시예에 따른, 네트워크를 경유하는 서비스 기반의 정보 조회를 신속하게 처리하기 위한 방법은, 통상적으로 전자제어 유니트(ECU)로 불리는 임의의 전자제어 기기에서 실행되는 응용 프로그램이 의도된 고유 기능을 수행함에 있어서 필요로 하는, 타 기기가 관리하는 센서, 부품, 기계적 또는 전기적 모듈 등의 상태를 나타내는 신호나 정보에 대해서, 서비스 기반의 조회를 통해서 알 수 있게 함으로써, 개발된 응용 프로그램이 어떠한 전자제어 기기에 이식되어 실행되어도 동일한 기능으로 동작하게 함은 물론이고, 동시에, 그러한 신호나 정보에 대해서 통신망을 통해 연결된 모든 전자제어 기기나 또는 해당 신호나 정보를 필요로 하는 일부 기기들에 대해서 미리 공유를 시킴으로써, 그러한 신호나 정보에 대한 확인이 해당 기기 내에서 매우 신속하게 이루어지게 한다.In accordance with the above-described present invention or at least one embodiment of the present invention described in detail with the accompanying drawings below, a method for quickly processing a service-based information inquiry via a network is typically an electronic control unit ( ECU) for signals or information indicating the status of sensors, parts, mechanical or electrical modules managed by other devices, required for an application program running in an electronic control device to perform its intended function. , By making it possible to know through service-based inquiries, the developed application program operates with the same function no matter which electronic control device is implanted and executed, and at the same time, all electronic devices connected through the communication network for such signals or information By pre-sharing the control device or some devices that need the signal or information, the confirmation of the signal or information is made very quickly within the device.

또한, 본 발명의 일 실시예에 의해서는, 서비스 기반의 요청 방식이 지원되지 않아, 특화된 고유의 신호교환 방식과 특정 포맷, 그리고 대상 기기가 요구하는 데이터 형식 등에 맞추어서 프로그래밍된 응용 프로그램을 통해서만 조회나 설정이 가능했던 기존의 네트워크 시스템에 대해서도, 그 네트워크에 특별한 기능의 기기를 개입시켜 다른 네트워크에 적응시킴으로써, 그 기존의 네트워크 시스템에서 처리되는 신호나 정보에 대해서도 서비스 기반의 조회나 설정이 가능해 진다. 따라서, 임의의 전자제어 기기에서 실행시켜, 이종 네트워크 상의 기기들에 직접 연결된 센서, 부품, 기계적 또는 전기적 모듈 등의 상태를 네트워크를 경유하여 확인하거나 제어하는 응용 프로그램의 개발이 매우 용이해 진다. 물론, 그러한 응용 프로그램의 동일 네트워크 상의 타 기기로의 이식에도 아무런 제약이 없게 된다.In addition, according to an embodiment of the present invention, a service-based request method is not supported, so that the inquiry is performed only through an application program programmed in accordance with a specialized unique signal exchange method, a specific format, and a data format required by the target device. Even for an existing network system that has been settable, service-based inquiries and settings for signals or information processed in the existing network system are possible by intervening devices with special functions in the network and adapting to other networks. Therefore, it is very easy to develop an application program that executes in an arbitrary electronic control device and checks or controls the state of sensors, parts, mechanical or electrical modules directly connected to devices on a heterogeneous network through a network. Of course, there are no restrictions on porting such application programs to other devices on the same network.

그리고, 동일 네트워크에 연결된( 본 명세서에서는, '동일 네트워크'의 용어를, 게이트웨이를 통해 복수의 네트워크들이 서로 연결된 경우에는 그 복수의 네트워크들도 포함하는 의미로 사용한다. ) 모든 전자제어 기기들은, 그러한 기기들이 장착되는 차량과 같은 장치에서 발생되는 모든 신호나 정보, 그리고 제어해야 할 물리량( 엔진 rpm, 온도, 속도, 각종 모터의 회전량, 바퀴의 감속비, 밸브의 개방정도 등 ) 등에 대해서 서로 분배하여 전담하고 있고, 동일한 또는 서로 다른 기기들에서 실행되는 복수의 응용 프로그램들은, 임의 신호나 정보를 확인하거나 특정의 물리량에 대해 제어하고자 할 때, 반드시 그 임의 신호나 정보, 또는 그 물리량을 전담하는 기기를 통해서만 통합적으로 이루어지므로, 서로 다른 개발자들이 자신이 의도하는 기능의 응용 프로그램들을 독립적으로 개발하여 임의의 전자제어 기기(들)에서 실행시키더라도 동일한 물리량에 대하여 서비스 기반으로 요청된 제어가 서로 충돌하거나 상충되는 경우를 방지할 수 있다. 이는, 응용 프로그램들이 서로 독립적으로 개발되어 적용되어도 기계적 장치나 전기적 회로에 무리가 가는 현상은 방지할 수 있게 됨을 의미한다.In addition, connected to the same network (in this specification, the term “same network” is used to mean including a plurality of networks when a plurality of networks are connected to each other through a gateway.) All electronic control devices, All signals or information generated from devices such as vehicles on which such devices are installed, and physical quantities to be controlled (engine rpm, temperature, speed, rotation amount of various motors, reduction ratio of wheels, valve opening degree, etc.) And multiple application programs running on the same or different devices must be in charge of the arbitrary signal or information or the physical quantity when checking an arbitrary signal or information or to control a specific physical quantity. Since it is integrated only through the device, even if different developers independently develop application programs with their intended functions and run them on any electronic control device(s), the requested control for the same physical quantity conflict with each other based on the service. Or conflicting cases can be avoided. This means that even if application programs are developed and applied independently of each other, it is possible to prevent a phenomenon in which an excessive force on a mechanical device or an electrical circuit is applied.

도 1은, 서로 다른 전자제어 유니트(ECU)에서 실행되는 응용 프로그램들이 개별적으로 처리하는 임의 신호에 대한 값을 네트워크를 통해 서로 교환하는 과정을 개념적으로 도시한 것이고,
도 2는, 본 발명의 일 실시예에 따른, 네트워크를 경유하는 서비스 기반의 정보 조회를 신속하게 처리하기 위한 방법이 각기 구현된 전자제어 기기들이 네트워크를 통해 서로 연결되어 있는 것을 예시한 것이고,
도 3은, 본 발명의 일 실시예에 따른, 도 2의 서비스 에이전트(agent)에 대하여 그 구성을 상세히 나타낸 블록도이고,
도 4는, 동일한 네트워크에 연결된 도 2의 전자제어 기기들이, 각기 지원하는 서비스 기반 요청들의 내역을 서로 공유함으로써 구축하는, 본 발명의 일 실시예에 따른 서비스 프로파일 세트(set)의 구성을 예시한 것이고,
도 5a는, 본 발명의 일 실시예에 따른, 각 전자제어 기기에서 동작하는 서비스 에이전트가 전담하는 상태 변수들에 대해 현재 값을 모니터링(monitoring)하기 위해 조직화하여 구축한 데이터베이스의 단순한 예를 나타낸 것이고,
도 5b는, 본 발명의 일 실시예에 따라, 각 전자제어 기기에서 동작하는 서비스 에이전트들이 각기 전담하는 상태 변수들에 대하여 현재 값들을 서로 공유함으로써 구축하는 데이터베이스를 예시적으로 도시한 것이고,
도 6은, 본 발명의 일 실시예에 따른, 임의의 응용 프로그램으로부터의 서비스 기반의 조회를, 서비스 에이전트들 간의 네트워크를 경유하는 정보 교환을 통해 처리하는 과정에 대한 예시적인 신호 호름도이고,
도 7은, 본 발명의 일 실시예에 따른, 다른 종류의 네트워크에 연결된 전자제어 유니트들에서 각기 전담하여 처리하는 신호에 대해서도 서비스 기반의 요청이 가능하도록 하는, 전자제어 기기에서 기능하는 서비스 에이전트의 구성과 그 주변 구성을 보여주는 블록도이고,
도 8은, 본 발명의 다른 일 실시예에 따라, 이종 네트워크에서 처리하는 형식에 맞게 구성된 데이터 블록(block)을 직접 분석하여, 서비스 기반 요청에 응답할 수 있는 상태 변수의 값에 반영하는 신호 매핑부를 더 포함하여 구성된 서비스 에이전트에 대한 블록도이고,
도 9는, 본 발명의 다른 일 실시예에 따라, 상태 변수들을 공유함에 있어서, 필요로 하는 상태 변수들에 한하여 기기들 간에 서로 공유하기 위한 과정을 보여주는 신호 흐름도의 일 예이고,
도 10a는, 도 9에 따른 실시예를 위해, 임의의 서비스 에이전트가, 자신이 전담하는 상태 변수들에 대해 상태공유를 위한 기기정보를 포함하여 구축운용하는 데이터베이스의 일 예이고,
도 10b는, 본 발명의 다른 일 실시예에 따라, 다른 종류의 네트워크에 연결된 전자제어 유니트들이 처리하는 신호나 정보들에 대해서, 그 네트워크에서의 송수신을 위해 구성된 형식 그대로 다른 기기들에 공유하기 위해 구축운용하는 직(直)공유 목록의 일 예를 도시한 것이고,
도 11은, 본 발명의 일 실시예에 따른, 서로 다른 응용 프로그램들으로부터의 서비스 기반의 설정에 대하여, 이종의 네트워크 간을 매개하는 서비스 에이전트에 의한 이종의 네트워크를 경유하는 신호나 정보의 송수신으로써 처리되는 과정에 대한 예시적인 신호 호름도이다.
1 is a conceptual diagram illustrating a process of exchanging values for arbitrary signals individually processed by application programs running in different electronic control units (ECUs) with each other through a network,
FIG. 2 illustrates that electronic control devices each implemented in a method for quickly processing a service-based information inquiry through a network according to an embodiment of the present invention are connected to each other through a network,
3 is a block diagram showing in detail the configuration of the service agent of FIG. 2 according to an embodiment of the present invention;
FIG. 4 illustrates the configuration of a service profile set according to an embodiment of the present invention, which is constructed by sharing details of service-based requests supported by the electronic control devices of FIG. 2 connected to the same network with each other. Will,
5A is a diagram illustrating a simple example of a database organized and constructed to monitor current values for state variables dedicated by a service agent operating in each electronic control device according to an embodiment of the present invention. ,
5B is an exemplary diagram illustrating a database constructed by sharing current values for state variables dedicated to each of the service agents operating in each electronic control device according to an embodiment of the present invention,
6 is an exemplary signaling diagram for a process of processing a service-based inquiry from an application program through an information exchange via a network between service agents according to an embodiment of the present invention.
7 is a diagram of a service agent functioning in an electronic control device that enables a service-based request for signals that are individually processed by electronic control units connected to different types of networks according to an embodiment of the present invention. It is a block diagram showing the composition and its surroundings,
FIG. 8 is a signal mapping that directly analyzes a data block configured according to a format processed by a heterogeneous network and reflects it in a value of a state variable capable of responding to a service-based request, according to another embodiment of the present invention. It is a block diagram of a service agent configured further including a part,
FIG. 9 is an example of a signal flow diagram showing a process for sharing state variables with each other about required state variables, according to another embodiment of the present invention,
10A is an example of a database in which a service agent builds and operates, including device information for state sharing, for state variables that are dedicated to it for the embodiment according to FIG. 9,
10B is a diagram for sharing signals or information processed by electronic control units connected to different types of networks to other devices in a format configured for transmission and reception in the network according to another embodiment of the present invention. It shows an example of the direct share list that is built and operated,
FIG. 11 is a diagram illustrating a service-based configuration from different application programs according to an embodiment of the present invention by transmitting and receiving signals or information through heterogeneous networks by a service agent that mediates between heterogeneous networks. It is an exemplary signal chart for the process being processed.

이하에서는, 본 발명에 따른 다양한 실시예들에 대해 첨부된 도면을 참조하여 상세히 설명한다.Hereinafter, various embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

이하의 본 발명에 따른 실시예들의 설명과 첨부된 도면에 있어서, 부기된 동일 번호는 특별한 사정이 없는 한 동일한 구성요소를 지칭한다. 물론, 설명의 편의와 이해에의 도움을 위해, 필요에 따라서는 동일한 구성요소에 대해서도 서로 다른 번호로 부기될 수도 있다. In the following description of the embodiments according to the present invention and in the accompanying drawings, the same numbers added refer to the same components unless otherwise specified. Of course, for convenience of description and aid in understanding, the same components may be added with different numbers as needed.

도 2는, 본 발명의 일 실시예에 따른, 네트워크를 경유하는 서비스 기반의 정보 조회를 신속하게 처리하기 위한 방법이 각기 구현된 기기들(20i, i=1,..,N)이 네트워크를 통해 서로 연결되어 있는 것을 예시한 것이다. 물론, 도시된 기기(20i, i=1,..,N)는, 종래에서와 같이 차량 등과 같은 장치에 장착되는, 통상적으로 전자제어 유니트(ECU)로 불리우는 기기일 수 있다.2 is a network diagram of devices 20 i , i = 1, .., N each implementing a method for quickly processing a service-based information inquiry via a network according to an embodiment of the present invention. It is an example of being connected to each other through. Of course, the illustrated devices 20 i , i = 1, .., N may be devices generally referred to as electronic control units (ECUs), which are mounted on devices such as vehicles as in the prior art.

상기 기기들(20i, i=1,..,N)( 이하에서는, '전자제어 기기'로 칭하기도 한다. )의 각각은, 서비스 지향 인터페이싱 에이전트(Service-Oriented Interfacing Agent)(200i, i=1,..,N)( 이하, '서비스 에이전트'로 약칭한다. )를 구비하며, 이 서비스 에이전트(200i)는, 응용 프로그램들(App ki, k=1,..,N, i=1,2,..)과 운영시스템(OS) 사이에 개입하여, 각각의 응용 프로그램들이, 서비스 기반의 요청으로써, 해당 기기에 감지나 제어를 위한 신호선이 입출력 인터페이스등을 통해 직접 연결된 센서, 부품, 기계적 또는 전기적 모듈 등의 주변 기기들( 이하, 이들에 대해서 '전속 주변부'라 칭한다. )에서 또는 해당 기기에서 자체적으로 발생되는 각종의 신호나 정보에 대하여(p21), 그리고 네트워크 상의 다른 기기나 그 기기의 전속 주변부에서 발생되는 신호나 정보에 대하여(p22) 조회하고 설정할 수 있게 한다.Each of the devices 20 i , i = 1,..,N (hereinafter, also referred to as'electronic control device') is a service-oriented interfacing agent 200 i , i=1,..,N) (hereinafter, abbreviated as'service agent') is provided, and the service agent 200 i includes application programs (App k i , k=1,..,N). , i=1,2,..) and the operating system (OS), each application program is a service-based request, and the signal line for detection or control is directly connected to the device through the input/output interface. For various signals or information generated from peripheral devices such as sensors, parts, mechanical or electrical modules (hereinafter referred to as'exclusive peripherals' for these) or from the device itself (p21), and on the network Enables inquiries and settings for signals or information generated from other devices or their exclusive peripherals (p22).

도 3은, 본 발명의 일 실시예에 따른, 상기 서비스 에이전트(200k)의 구성에 대한 블록도이다. 도시된 바와 같이, 임의의 응용 프로그램(10k_n)이 서비스 기반의 정보 조회(query)와 설정( 이하에서는, '서비스 기반의 정보 조회와 설정'을 통칭하여 '서비스 기반(의) 요청'이라 칭한다. )을 할 수 있도록, 그러한 서비스 기반 요청을, 정해진 서비스 구문법(syntax)에 따라 해석하도록 구성된 서비스 인터페이스부(201)와, 상기 서비스 인터페이스부(201)가 임의의 서비스 기반 요청을 해석하여 그 요청에 의해 수행되어야 할 동작( 이와 같이, 임의의 서비스 기반 요청이 의도하는 해석된 동작을, 본 명세서에서는, '액션(action)'이라 별칭한다. )과 그 동작의 대상이 되는 상태 변수를, 기 약속된 방식으로 각각 특정하여 전달하면, 그 특정된 상태 변수에 대해 그 특정된 액션이 실행되게 하는 동작을 수행하도록 구성된 서비스 처리부(202)와, 운영시스템(OS) 또는 별도로 구비되는 미들웨어 등이 제공하는 다양한 통신용 프로토콜 실행 루틴들을 적절히 호출함으로써, 네트워크 상의 다른 기기들과 기 정해진 프로토콜, 예를 들어 SOME/IP (Scalable service-Oriented Middleware over IP)와 같은 프로토콜에 따라 메시지들을 주고 받을 수 있도록 구성된 메시지 처리부인 메시지 핸들러(handler)(203)와, 운영시스템이 제공하는 다양한 인터페이스용 실행 루틴들을 통해, 해당 기기(20k)의 전속 주변부로부터 신호나 정보를 획득하거나 그들에 대해 특정 값을 설정하도록 구성된 로컬 정보 처리부인 로컬 상태 핸들러(204)를 포함하여 구성된다. 3 is a block diagram of a configuration of the service agents (200 k) in accordance with one embodiment of the present invention. As shown, an arbitrary application program (10 k_n ) is referred to as a service-based information query and setting (hereinafter,'service-based information inquiry and setting' is collectively referred to as a'service-based (of) request'). ), the service interface unit 201 configured to interpret such a service-based request according to a predetermined service syntax, and the service interface unit 201 interprets an arbitrary service-based request and the request An action to be performed by (as described above, an interpreted action intended by an arbitrary service-based request is also referred to as'action' in this specification) and a state variable that is a target of the action. When each specified and transmitted in a promised manner, a service processing unit 202 configured to perform an operation that causes the specified action to be executed for the specified state variable, and an operating system (OS) or separately provided middleware are provided. Message processing configured to send and receive messages according to a predetermined protocol, for example, SOME/IP (Scalable service-Oriented Middleware over IP), with other devices on the network by appropriately calling various communication protocol execution routines. A local configured to obtain signals or information from the dedicated peripherals of the device ( 20k ) or to set specific values for them through a denial message handler 203 and execution routines for various interfaces provided by the operating system. It comprises a local state handler 204 which is an information processing unit.

이하의 본 발명에 따른 다양한 실시예들에서의 상기 서비스 에이전트(200k)의 동작 설명에서, 상기 구성요소들(201,202,203,204)의 동작이 보다 구체적이고 상세하게 설명될 것이다.In an operation of the service agent (200 k) in various embodiments of the present invention described below will be the operation of said component (201 202 203 204) described in more specific and detailed.

또한, 상기 서비스 에이전트(200k)에는, 해당 전자제어 기기(20k)나 그 전속 주변부가 만들거나 형성할 수 있는 각종의 상태들, 예를 들어 그들에 의해 획득되는 신호나 정보들 또는 그에 의해 제어되는 물리량 등의 상태들에 대해 각기 대응하여 지정된 상태 변수( 이하에서는, 이러한 상태 변수를 '레거시(legacy) 상태변수' 또는 '전담 상태변수'라 칭한다. )들을 대상으로 하여 지원하는 서비스들에 대해 정의하고 있는 서비스 프로파일(210)( 이 프로파일에 대해서는 '고유 프로파일'이라 칭한다. )과, 레거시 상태 변수들을 지시하는 정보, 예를 들어, 상태 변수의 명칭들이 등재되고, 그 상태 변수들에 대해 모니터링되는 현재 값들이 기록되도록 조직화되어 있는 목록인 상태값 데이터베이스(220)( 이하, '상태값 디비'로 약칭한다. )가 구비되는데, 이들은, 전술한 바의 서비스 인터페이스부(201), 서비스 처리부(202), 그리고 로컬 상태 핸들러(204)에 의해 조회되거나 또는 적어도 일부의 정보가 갱신될 수 있다.Further, the service agent (200 k) has, in the electronic control device (20 k) or that the full-speed peripheral various conditions that may be created or formed, e.g., signals or information obtained by them or by it State variables designated in correspondence with states such as controlled physical quantities (hereinafter, these state variables are referred to as'legacy state variables'or'dedicated state variables') to services supported by targeting them. The service profile 210 (this profile is referred to as a'unique profile') and information indicating legacy state variables, for example, names of state variables, are registered, and the state variables A status value database 220 (hereinafter, abbreviated as'status value DB'), which is a list organized so that the monitored current values are recorded, is provided, which includes the service interface unit 201 and the service processing unit as described above. 202, and the local state handler 204 may be viewed or at least some of the information may be updated.

상기 서비스 에이전트(200k)의 레거시 상태변수들은, 네트워크를 통해 서로 통신가능하도록 연결된 전자제어 기기들(20i, i=1,..,N)이 장착되는 장치나 그 장치의 구성품들( 센서, 부품, 기계적 또는 전기적 모듈 등 )이 나타낼 수 있는 모든 상태들 중에서, 상기 전자제어 기기(20k)가 전담하여 처리하도록 할당된 상태들의 그룹에 속하는 상태들에 대해 각기 대응하여 지정된 것이다.It said service agent (200 k) legacy state variables, the electronic control device connected to communicate with each other over a network (20 i, i = 1, .., N) of components of the apparatus or the device is equipped with a (sensors , Parts, mechanical or electrical modules, etc.), among all states that can be represented, states belonging to the group of states assigned to be handled exclusively by the electronic control device 20 k are designated correspondingly.

이하에서 그 동작이 상세히 설명되는 상기 서비스 에이전트(200k)의 모든 기능 또는 부분적 기능은, 해당 전자제어 기기(20k)의 운영시스템을 기반으로 실행되는 명령 코드(code)들로써 구성된 프로세스(process) 또는 실행 모듈(executable module)( 이하에서는, '프로세스'와 '실행 모듈'을 통칭하여 "실행 개체"라는 용어가 사용될 수 있다. )에 의해 달성될 수 있다. 경우에 따라서는, 상기 서비스 에이전트(200k)의 기능들의 적어도 일부가 미들웨어(middleware), 또는 응용 프로그램들이 기반하는 플랫폼(platform) 형태로, 또는 운영시스템(OS)의 일부의 형태로 상기 기기(20k)에 구현되어 있을 수도 있다. 또한 상기 서비스 에이전트(200k)는 하드웨어(hardware)의 구성을 포함함으로써, 이하에서 상세히 설명하는 기능들의 일부를 그 하드웨어를 통해 수행할 수도 있다. 따라서, 본 발명에 따른 다양한 실시예들에서 그 구성과 동작방식이 상세히 설명되는 상기 서비스 에이전트(200k)는, 그 구현하는 형태 또는 사용된 자원(resource)의 유형 등에 의해 본 발명의 범위가 제한되는 것은 아니다.The service all the functions or part functions of the agent (200 k) to which the operation is described in detail below is a process consisting deulrosseo command code (code) which runs on the operating system of the electronic control device (20 k) (process) Or, it may be achieved by an executable module (hereinafter, the term “executable entity” may be used to collectively refer to “process” and “executable module”). In some cases, the service agent (200 k) the device to the at least a portion in the form of a part of the middleware (middleware), or to the platform (platform) form of application are based, or the operating system (OS) of the functions in ( 20 k ) may be implemented. Further, the service agent (200 k) may perform some of the functions that will be described in detail below, by including the configuration of hardware (hardware) through its hardware. Accordingly, the service agent (200 k) which is described in detail the construction and operation methods in the various embodiments is to limit the scope of the present invention by the type of implementation of the resource (resource) form or use of according to the invention It does not become.

본 발명에 따른 일 실시예에서는, 상기 서비스 에이전트(200k)를 구성하는 서비스 인터페이스부(201), 서비스 처리부(202), 메시지 핸들러(203) 그리고 로컬 상태 핸들러(204)가 운영시스템의 기반하에 각기 개별적으로 수행되는 실행개체일 수 있다. 다르게는, 이들(201,202,203,204)을 포함하는 상기 서비스 에이전트(200k)가 단일의 실행개체로서 구현될 수도 있다. 이 경우에는 서로간의 정보 또는 데이터 교환은 광역변수들, 내부변수들 또는 로컬함수의 인자(argument) 및/또는 리턴값 등을 통해서 이루어질 수 있다. 따라서, 본 발명의 개념과 주제, 그리고 목적하는 효과 등은, 상기 서비스 인터페이스부(201), 상기 서비스 처리부(202), 상기 메시지 핸들러(203) 그리고 상기 로컬 상태 핸들러(204)가 반드시 분리되어 각기 실행되는 실행개체를 전제하거나 필요로 하는 것은 아니며, 이하에서 설명하는 구성요소들(201,202,203,204)의 모두가 상기 서비스 에이전트(200k)로 통합되어 단일의 실행개체로써 구현되어도 당연히 달성될 수 있다. In one embodiment according to the present invention, the service interface unit 201, the service processing unit 202, the message handler 203, and the local state handler 204 constituting the service agent 200 k are based on the operating system. Each may be an execution entity that is executed individually. Alternatively, the service agent (200 k) comprising these (201 202 203 204) may be implemented as a single executable. In this case, information or data exchange between each other may be performed through global variables, internal variables, or arguments and/or return values of local functions. Therefore, the concept and subject of the present invention, and the desired effect, etc., the service interface unit 201, the service processing unit 202, the message handler 203, and the local state handler 204 must be separated and each it is not necessary for the premise or executable that runs, all of the components (201 202 203 204) described below is integrated in the service agents (200 k) it can be achieved of course be implemented as a single executable.

물론, 상기 서비스 에이전트(200k)는, 운영시스템을 기반으로 동작하지 않고, 직접 자신의 동작에 필요한 하드웨어 자원( 각종의 입출력 인터페이스, 통신용 소자 등 )을 구동하거나 제어할 수도 있다. 이를 위해서는, 그러한 동작을 위해 필요한 명령 코드들을 상기 구성요소들(201,202,203,204) 중 해당되는 구성요소가 더 포함하여 구성된다.Of course, the service agent (200 k) is not operating based on the operating system, it is also possible to drive and control the hardware resources directly (various kinds of input-output interface, communication device, etc.) necessary for their operation. To this end, a corresponding component of the components 201, 202, 203, and 204 is further included in the command codes required for such operation.

상기 서비스 에이전트(200k)는 해당 기기(20k)의 운영시스템 또는 부트 로더(boot loader)에 의해서, 해당 기기(20k)의 플래시 메모리로부터 로딩되어 실행되거나, 또는, 해당 기기(20k)가 연결된 네트워크 상의 특정 네트워크 주소( 예를 들어, IP주소, 또는 MAC 주소 등 )로 지정된 노드(node)로부터 다운로드되어 해당 기기(20k)에서 실행될 수 있다.The service agent (200 k ) is loaded and executed from the flash memory of the device (20 k ) by the operating system or boot loader of the device (20 k ), or, or, the device (20 k ) a specific network address on the connected network is downloaded from (e.g., IP address, or MAC address) and node (node) is specified as can be implemented on the device (20 k).

이하에서는, 상기 서비스 에이전트(200k)가 각기 구비된 전자제어 기기(20i, i=1,..,k,..,N)에서 이루어지는, 또는 네트워크를 통해 서로 연결된 전자제어 기기들 간의 정보 교환을 통해 이루어지는, 서비스 기반의 요청을 처리하는 방법에 대해서 구체적으로 설명한다.In the following, information between electronic control devices 20 i , i = 1, .., k,.., N, each provided with the service agent 200 k , or connected to each other through a network. It describes in detail how to process service-based requests made through exchange.

해당 전자제어 기기에 전원이 인가됨으로써 상기 서비스 에이전트(200k)가 기동되면, 상기 서비스 처리부(202)는, 먼저, 상기 고유 프로파일(210)의 내용을 상기 메시지 핸들러(203)에 제공함으로써, 동일 네트워크에 연결된 모든 기기들, 즉 그 기기들의 각 서비스 처리부가 그 내용을 파악할 수 있도록 한다. 상기 메시지 핸들러(203)는, 상기 서비스 처리부(202)가 전달하는 내용을, 하나의 메시지로 또는 복수의 메시지들로 구성하여, 연결된 네트워크의 송수신이 요구하는 프로토콜에 따른 포맷, 예를 들어 UDP 또는 TCP 방식의 수송 프레임에 실어서 네트워크로 송신한다.When the service agent 200 k is started by applying power to the corresponding electronic control device, the service processing unit 202 first provides the content of the unique profile 210 to the message handler 203, thereby providing the same All devices connected to the network, that is, each service processing unit of those devices, are able to grasp the contents. The message handler 203 configures the content delivered by the service processing unit 202 as a single message or a plurality of messages, and a format according to a protocol required for transmission and reception of a connected network, for example, UDP or It is loaded on a transport frame of the TCP method and transmitted to the network.

그리고, 서비스 에이전트 간에 교환되어야 하는 메시지에 대해서는, 그 헤더에 기 할당된 특별한 메시지 ID를 부가함으로써 또는 해당 메시지들은 기 정해진 특정 포트(port)를 이용하여 통신함으로써, 각 전자제어 기기에서 실행되는 다른 실행 개체들이 있더라도 그들에 의해서는 수취되지 않도록 한다. 즉, 그 특별한 메시지 ID의 식별자로써, 동일 네트워크에 연결된 모든 전자제어 기기들의 서비스 에이전트들끼리만 서비스 기반의 메시지를 서로 통신할 수 있는 전용의 메시지 채널이 확보되는 것이다.And, for messages to be exchanged between service agents, other executions executed in each electronic control device are performed by adding a special message ID previously assigned to the header or by communicating the messages using a predetermined specific port. Even if there are objects, make sure they are not received by them. That is, as the identifier of the special message ID, a dedicated message channel is secured for communication of service-based messages with only service agents of all electronic control devices connected to the same network.

수송 프레임을 송신할 때는, 상기 메시지 핸들러(203)는, 운영시스템에 통신용 소켓(socket)의 생성을 먼저 요청하고, 그 요청에 따라 소켓이 생성되면, 그 소켓을 기반으로 수송 프레임을 네트워크로 송신할 수 있다. 물론, 가능하다면 이때의 프레임 전송은 방송(broadcast) 방식으로 또는 다중 전송(multicast) 방식으로 전송한다. 그렇지 않으면, 네트워크에 연결된 각 기기의 네트워크 상의 주소( IP주소, MAC 주소 등 )( 이하에서는, 이를 '노드(node) 주소'로 칭한다. )를 먼저 식별하고, 그 식별된 각 주소로 서비스 프로파일의 내용( 예를 들어, 서비스 프로파일의 내용을 담은 파일의 데이터 )을 실은 수송 프레임을 개별적으로 전송하게 된다. 네트워크에 연결된 각 기기에 대한 디스커버리(discovery)와 할당된 네트워크의 주소의 식별은, 본 발명의 주제나 기술적 사상과는 무관하며, 공지된 다양한 방밥들 중 어느 하나의 방법이 적용될 수 있다.When transmitting a transport frame, the message handler 203 first requests the operating system to create a communication socket, and when a socket is created according to the request, transmits the transport frame to the network based on the socket. can do. Of course, if possible, frame transmission at this time is transmitted in a broadcast method or a multicast method. Otherwise, the address (IP address, MAC address, etc.) on the network of each device connected to the network (hereinafter, this is referred to as a'node address') is first identified, and each of the identified addresses in the service profile is identified. Transport frames containing contents (for example, data of a file containing the contents of a service profile) are individually transmitted. Discovery of each device connected to the network and identification of the assigned network address are irrelevant to the subject matter or technical idea of the present invention, and any one of various known methods may be applied.

동일 네트워크에 연결된 각 기기에 공유되는 상기 고유 프로파일(210)은, 도 4에 예시된 바와 같이, 해당 기기가 지원하는 서비스, 즉 전담하는 상태 변수들과 그들에 대해 지원하는 액션에 대해서 그 내역을 정의하고 있는 정보 테이블이다. 도 4에 예시된 고유 프로파일(210)의 극히 단순한 예는, 해당 서비스 에이전트(200k)가 동작하는 전자제어 기기(20k)가, 차량의 헤드 유니트에 장착되는 기기임을 가정하였을 때, 입출력 인터페이스를 통해 직접 연결된 AV 플레이어에 대해 지원가능한 서비스의 일부분을 나타낸 것이다. 예시된 바와 같이, 각각의 서비스는, 하나의 상태 변수에 대해 그 변수에 행할 수 있는 액션들과, 해당 액션이 인자(argument)를 필요로 하는 지의 여부로 정의될 수 있다. 구체적인 예로서, 상태 변수가 볼륨(volume)인 경우, 그 상태 변수에 대해서는, 그 상태 변수의 값을 조회하는, 인자가 요구되지 않는 'Get' 액션과, 그 상태 변수에 대해 값을 설정하는, 인자가 요구되는 'Set' 액션이 지원가능한 서비스로 정의되어 있음을 보여준다. The unique profile 210 shared with each device connected to the same network, as illustrated in FIG. 4, provides details of the services supported by the device, that is, dedicated state variables and actions supported for them. It is an information table that is being defined. Very simple example of the unique profile 210 illustrated in Figure 4, when assumed that the corresponding service agent (200 k) is the electronic control device (20 k) to operate, the device mounted to the head unit of the vehicle, the output interface It shows some of the services that can be supported for AV players that are directly connected through. As illustrated, each service may be defined as actions that can be performed on one state variable and whether the corresponding action requires an argument. As a specific example, when the state variable is a volume, for the state variable, a'Get' action that retrieves the value of the state variable and does not require an argument, and sets a value for the state variable, It shows that the'Set' action requiring an argument is defined as a supportable service.

그리고, 각각의 상태 변수는, 해당 장치의 상태들 또는 그 장치가 처리하는 신호 등의 상태들, 또는 그 장치의 구성품들, 보다 구체적으로는, 그 장치에 부속된 모든 종류의 부품들이나 기계적 또는 전기적 모듈들이 개별적으로 가질 수 있는 또는 개별적으로 처리하는 신호 등의 세부 상태들의 각각에 대해서 대응하여 지정되며, 동일한 네트워크를 통해 연결된 어떤 전자제어 기기들 간에도 중복되지 않고 유일하게 구분 특정될 수 있는 명칭의 문자열로써 정의된다. 물론, 숫자 또는 기호 등이 부가된, 또는 이들만으로 구성된 문자열로써 정의될 수도 있다. And, each state variable is the states of the device or states such as signals processed by the device, or components of the device, more specifically, all kinds of components or mechanical or electrical components attached to the device. A string of names that are designated correspondingly for each of the detailed states such as signals that modules can have individually or individually processed, and that can be uniquely identified and identified without overlapping between any electronic control devices connected through the same network Is defined as Of course, it may be defined as a character string to which numbers or symbols are added or composed of only them.

본 발명에 따른 일 실시예에서는, 도 4에 예시된 바와 같이, 각 상태 변수에 대해 그리고 각 액션에 대해 고유의 코드(41,42)가 지정될 수 있다. 이 지정된 코드는, 응용 프로그램으로부터의 서비스 기반 요청을 해석한 뒤, 그 해석된 서비스 기반 요청을 네트워크를 경유하여 다른 기기로 전달할 때 사용될 수 있다. 해당 기기(20k)의 응용 프로그램의 서비스 기반 요청을 네트워크 상의 다른 기기로 전달하여 처리토록 하는 과정에 대해서는 이후에 설명한다.In an embodiment according to the present invention, as illustrated in FIG. 4, unique codes 41 and 42 may be specified for each state variable and for each action. This designated code can be used when interpreting a service-based request from an application program and then transmitting the interpreted service-based request to another device via a network. It describes a service request based on application of the device (20 k) for the subsequent process of processing ever passed to the other devices on the network.

본 발명에 따른 다른 일 실시예에서는, 그 해석된 서비스 기반 요청을, 서비스 프로파일(210)에 정의된 바와 같은 텍스트 형식 그대로 다른 기기로 전달할 수도 있다. 즉, 현재 AV 플레이어의 볼륨의 크기를 조회하기 위한 서비스 기반 요청에 대해서 "Volumn.Get" 또는 "Volumn.Get()"과 같은 텍스트 형식의 메시지를 수송 프레임에 실어서 그대로 다른 기기로 전달할 수도 있다. 본 실시예에서는, 당연히 상태 변수와 액션에 대한 코드(41,42)의 할당이 불필요하다.In another embodiment according to the present invention, the interpreted service-based request may be transmitted to another device in a text format as defined in the service profile 210. That is, a message in text format such as "Volumn.Get" or "Volumn.Get()" for a service-based request for inquiring the volume size of the current AV player may be loaded on the transport frame and delivered to other devices as it is. . In this embodiment, of course, assignment of codes 41 and 42 to state variables and actions is unnecessary.

한편, 전술한 바와 같이, 네트워크 상의 모든 전자제어 기기들이, 자신의 고유 프로파일의 내용을 다른 기기들에 하나 또는 그 이상의 메시지로써 전송하면, 그 복수의 기기들 중 하나인 상기 전자제어 기기(20k)에서 동작 중인 상기 서비스 에이전트(200k)의 메시지 핸들러(203)가 그 메시지를 운영시스템으로 수신하여 분석하고, 그 분석에 따라 해당 메시지가 서비스 프로파일의 내용임을 식별하게 된다. 이렇게 서비스 프로파일의 내용으로 해당 메시지를 식별하면, 그 메시지를 상기 서비스 처리부(202)에 그 송신지의 노드 주소와 함께 전달한다. 이러한 방식으로 전달되는, 네트워크 상의 각 기기의 고유 프로파일(211,212,213,..)( 이와 같이 공유에 의해 사후적으로 획득되는 타 기기의 고유 프로파일에 대해서는 '공유 프로파일'이라 칭한다. )에 대해서, 상기 서비스 처리부(202)는, 도 4에 예시된 바와 같이, 해당 노드 주소를 지정하면서(43) 취합하여 통합된 서비스 프로파일 세트(set)(400)를 구축한다.On the other hand, all the electronic control devices and systems connected to a network, their own when transmitting the contents of the profile by one or more messages to other devices, (20 k of the plurality of devices to one of the electronic control unit of as described above ) operations, the message being a message handler 203 of the service agents (200 k) is analyzed and receives the message to the operating system, in accordance with the analysis in the identification is that the content of the service profile. When the message is identified by the contents of the service profile, the message is transmitted to the service processing unit 202 together with the node address of the transmission destination. For the unique profile 211, 212, 213,...) of each device on the network delivered in this manner (a'shared profile' is referred to as a unique profile of another device obtained afterwards by sharing in this way), the service is described above. As illustrated in FIG. 4, the processing unit 202 constructs an integrated service profile set 400 by collecting (43) specifying the corresponding node address.

이와 같은 서비스 프로파일 세트(400)의 구축은, 각 기기의 고유 프로파일을 네트워크를 통해 서로 공유하는 모든 기기들에서 이루어진다.The service profile set 400 is constructed in all devices that share a unique profile of each device with each other through a network.

한편, 상기 로컬 상태 핸들러(204)는, 해당 전자제어 기기(20k) 내의 특정 하드웨어 모듈들( 예를 들어, 실시간 클럭부 등 ), 그리고 그 기기의 전속 주변부가 감지 또는 검출하는 값 또는 그들의 상태를 나타내는 값을 주기적으로 또는 인터럽트(interrupt) 방식으로 확인하여, 상기 서비스 처리부(202)가 기 정해진 형식으로 조직화하여 구축하고 있는 상태변수 목록인 상태값 디비(220)에서 해당 상태 변수에 대한 현재 값으로 기록한다. 도 5a는, 이러한 방식으로 현재 값들이 해당 상태 변수에 대해 기록되는 상태값 디비(220)의 극히 단순한 예를 보여준다. 예를 들어, 상기 로컬 상태 핸들러(204)는, 현재 AV 플레이어가 플레이되고 있는 중일 때, 현재 트랙(track)에서의 플레이 지점이 변하는 것을 일정 주기로 추적하면서 현재 지점을 나타내는 상태 변수를 상기 상태값 디비(220)에서 찾아서 해당 값(221)을 기록하게 된다.On the other hand, the local state handler 204, a particular hardware module in the electronic control device (20 k), (e.g., real-time clock unit, and so on), and a full-speed peripheral portion is detected or to detect the value or in a condition of the device The current value of the corresponding state variable in the state value DB 220, which is a list of state variables that the service processing unit 202 organizes and constructs in a predetermined format by checking the value representing ΔC periodically or in an interrupt method. Record as. 5A shows a very simple example of a state value DB 220 in which current values are recorded for a corresponding state variable in this manner. For example, when the current AV player is playing, the local state handler 204 tracks the change of the play point on the current track at regular intervals, and sets a state variable indicating the current point to the state value DB. It is searched at (220) and the corresponding value (221) is recorded.

전술한 바와 같이, 네트워크 상의 모든 전자제어 기기들에 구비된 각각의 서비스 에이전트(200i, i=1,..,N)가 자신의 고유 프로파일을 서로 공유함으로써 공유 프로파일과 함께 서비스 프로파일 세트(400)를 구축한 상태에서, 자신이 전담하는 상태 변수들에 대한 값을 모니터링하면서 업데이트하고 있는 중에, 해당 전자제어 기기(20k)에서 실행 중인 임의의 응용 프로그램(10k_n)이, 자신이 의도하는 동작을 위해 임의의 상태 변수에 대해 조회를 요구하거나 특정한 값으로의 설정을 요구할 수 있다. 도 6은, 응용 프로그램으로부터의 이러한 요구 중 조회에 대해서, 관련된 서비스 에이전트들 간의 네트워크를 경유하는 정보 교환을 통해 처리하는 과정을 예시적으로 나타낸 신호 흐름도이다.As described above, each service agent (200 i , i = 1, .., N) provided in all electronic control devices on the network shares their own profiles with each other, so that the service profile set 400 together with the shared profile ), while monitoring and updating the values of state variables that are in charge of itself, an arbitrary application program (10 k_n ) running in the electronic control device (20 k ) is For operation, you can request an inquiry about an arbitrary state variable or request a setting to a specific value. 6 is a signal flow diagram illustrating an exemplary process of processing an inquiry among such requests from an application program through information exchange through a network between related service agents.

본 발명에 따른 구성을 갖는 서비스 에이전트가 전자제어 기기에 구비되어 있어, 해당 전자제어 기기에서 실행되고 있는 임의의 응용 프로그램(10k_n)은, 특정의 기계적, 전기적 또는 화학적 상태에 대한 값을 조회하거나 그에 해당하는 물리량을 제어하기 위해, 기 정해진 데이터 구조에 맞주어 해당 순서의 변수를 지정하고, 또한 그러한 상태나 물리량에 대하여 전담하고 있는 전자제어 기기를 특정하여, 기 정해진 포맷에 따라 해당되는 위치에 원하는 데이터를 삽입하는 방법으로 프레임이나 메시지를 작성한 후 운영시스템의 해당 실행 루틴을 호출하는 종래의 방법과는 달리, 단순히, 상태 변수와 액션을 지정하는 서비스 기반 요청을 상기 서비스 에이전트(200k)에 하게 된다(S61). 이때의 서비스 기반 요청은 택스트 형식으로 이루어질 수 있다. 예를 들어, 전술한 바와 같이, 상태 변수를 고유하게 식별할 수 있도록 지정된 문자열과, 액션을 나타내는 문자열이 구분자(delimeter)를 매개로 결합된( 인자가 필요한 액션은 그 인자를 나타내는 문자열 또는 숫자 등도 결합된 ) 형식( 예를 들어, "Volumn.Get", "Volumn.Get()" 또는 "Volumn.Set( 10 )" 등 )일 수 있다.Since the service agent having the configuration according to the present invention is provided in the electronic control device, any application program (10 k_n ) running on the electronic control device can query a value for a specific mechanical, electrical, or chemical state, or In order to control the corresponding physical quantity, a variable in the order is designated according to a predetermined data structure, and an electronic control device dedicated to the state or physical quantity is specified, and the corresponding position is located according to a predetermined format. Unlike the conventional method of calling the corresponding execution routine of the operating system after creating a frame or message by inserting the desired data, simply, a service-based request specifying a state variable and an action is sent to the service agent (200 k ). It is done (S61). The service-based request at this time may be made in a text format. For example, as described above, a specified string to uniquely identify a state variable and a string representing an action are combined via a delimeter (an action requiring an argument is a string representing the argument or a number, etc.). It can be a combined) format (eg, "Volumn.Get", "Volumn.Get()", or "Volumn.Set( 10 )", etc.).

이와 같은 방식으로 이루어지는, 상기 응용 프로그램(10k_n)으로부터의 서비스 기반 요청은, 상기 서비스 인터페이스부(201)에 인가되고, 상기 서비스 인터페이스부(201)는, 그 서비스 기반 요청을 분석하여 정해진 구문법에 맞는지를 확인하고, 맞지 않으면 문법적 에러로써 그 요청에 대해 응답하고, 맞으면, 전술한 바와 같이 공유에 의해 구축된 서비스 프로파일 세트(400)에서 해당 상태 변수와 해당 액션을 찾는다.In this way, the service-based request from the application program (10 k_n ) is applied to the service interface unit 201, and the service interface unit 201 analyzes the service-based request and determines the syntax. If it is correct, it responds to the request with a grammatical error if it is not correct, and if it is, the corresponding state variable and the corresponding action are found in the service profile set 400 constructed by sharing as described above.

상기 서비스 인터페이스부(201)는, 서비스 프로파일 세트(400)에서 해당 상태 변수와 액션이 찾아지지 않으면, 지원불가 에러로써 상기 응용 프로그램(10k_n)의 요청에 대해 응답하고, 찾아지면, 상기 서비스 프로파일 세트(400)에서 해당되는 항목을 가리키는 인덱스(index)를 상기 서비스 처리부(202)에 전달한다. 이때, 해당 요청을 고유하게 식별하기 위한 인스턴스(instance) ID를 생성하여 함께 전달한다. 물론, 서비스 기반 요청에 인자가 있었다면 그 인자도 함께 전달한다. If the corresponding state variable and action are not found in the service profile set 400, the service interface unit 201 responds to the request of the application program 10 k_n as an unsupported error, and if found, the service profile An index indicating a corresponding item in the set 400 is transmitted to the service processing unit 202. At this time, an instance ID for uniquely identifying the request is created and delivered together. Of course, if there are arguments in the service-based request, those arguments are also passed.

인덱스를 전달받은 상기 서비스 처리부(202)는, 서비스 기반 요청이 레거시 상태변수에 대한 것인 지를 확인한다(P62). 즉, 그 전달받은 인덱스가 고유 프로파일의 항목을 가리키는 것인 지 공유 프로파일의 항목을 가리키는 것인 지를 확인한다. 서비스 기반 요청이 레거시 상태변수에 대한 것이고, 그 액션이 조회 명령이면, 상기 서비스 처리부(202)는, 상기 상태값 디비(220)에서 해당 상태 변수를 찾은 후, 그 찾은 변수에 연계 기록되어 있는 값을 읽어서(P63), 상기 서비스 인터페이스부(201)에, 앞서 전달받은 인스턴스 ID와 함께 제공한다. 그러면, 상기 서비스 인터페이스부(201)는, 그 인스턴스 ID에 근거하여 어떤 서비스 기반 요청에 대한 결과인 지를 식별한 후, 전달받은 상태변수 값을 해당 응용 프로그램(10k_n)에 응답으로서 리턴하게 된다(S64).Upon receiving the index, the service processing unit 202 checks whether the service-based request is for a legacy state variable (P62). That is, it is checked whether the received index points to an item of a unique profile or an item of a shared profile. If the service-based request is for a legacy state variable and the action is an inquiry command, the service processing unit 202 finds the corresponding state variable in the state value DB 220 and then records the value linked to the found variable. Is read (P63), and provided to the service interface unit 201 along with the previously transmitted instance ID. Then, the service interface unit 201 identifies which service-based request is the result based on the instance ID, and then returns the received state variable value as a response to the application program 10 k_n ( S64).

만약, 서비스 기반 요청이 레거시 상태변수에 대한 것인데, 그 액션이 설정 명령이면, 상기 서비스 처리부(202)는, 그 상태 변수를 지정하면서 동시에 인자로서 받은 값을 상기 로컬 상태 핸들러(204)에 제공하면서 설정을 요청하고, 그 요청에 따라 상기 로컬 상태 핸들러(204)는, 설정 요청된 값을, 해당 상태 변수가 지정된 신호나 정보, 또는 물리량 동을 처리하는 동 기기(20k) 내의 내부 모듈로 또는 전속 주변부 중 하나가 연결된 인터페이스를 통해 인가하거나 출력하여 그 값이 설정되도록 한다.If the service-based request is for a legacy state variable, and the action is a setting command, the service processing unit 202 designates the state variable and provides the value received as an argument to the local state handler 204 The local state handler 204 requests the setting, and according to the request, the local state handler 204 transmits the requested value to an internal module within the same device 20 k that processes the signal or information or physical quantity for which the corresponding state variable is assigned, or The value is set by applying or outputting through an interface to which one of the full speed peripherals is connected.

상기 서비스 처리부(202)는, 상기 로컬 상태 핸들러(204)로부터 설정에 따른 결과, 예를 들어 '성공' 또는 '실패'를 나타내는 값을 전달받아, 그 값을 인스턴스 ID와 함께 상기 서비스 인터페이스부(201)에 제공하며, 그 제공된 결과는, 전술한 바와 같이 상기 서비스 인터페이스부(201)에 의해 서비스 기반 요청에 대한 응답으로서 해당 응용 프로그램(10k_n)에 리턴된다.The service processing unit 202 receives a result according to the setting from the local state handler 204, for example, a value indicating'success'or'fail', and sends the value to the service interface unit ( 201), and the provided result is returned to the corresponding application program 10 k_n as a response to the service-based request by the service interface unit 201 as described above.

한편, 상기 서비스 인터페이스부(201)로부터 전달된, 상기 서비스 프로파일 세트(400)에 대한 인덱스가 공유 프로파일에 대한 것이면, 상기 서비스 처리부(202)는, 해당 인덱스가 어떤 전자제어 기기의 고유 프로파일인 지를 확인하고, 즉 해당 인덱스가 가리키는 항목의 서비스 프로파일의 노드 주소를 파악하고(P65), 그 노드 주소와 해당 인덱스가 가리키는 항목, 즉 상태 변수와 액션을 상기 메시지 핸들러(203)에 전달하면서 해당 노드 주소로의 전송을 요청한다. 물론, 이때도 전달받은 인자가 있으면 그 인자도 함께 전달한다.On the other hand, if the index for the service profile set 400 transmitted from the service interface unit 201 is for a shared profile, the service processing unit 202 determines which electronic control device's unique profile the corresponding index is. The node address of the service profile of the item indicated by the index is identified (P65), and the node address and the item indicated by the index, that is, a state variable and an action, are transmitted to the message handler 203, and the node address Request a transfer to. Of course, even at this time, if there is an argument that has been delivered, the argument is also delivered.

그러면, 상기 메시지 핸들러(203)는, 그 전달받은 내용들로써 하나의 메시지를 구성한다. 이때 구성되는 메시지에는, 수신자 노드 주소와 송신자 노드 주소, 메시지 유형, 그리고, 상태 변수, 액션을 나타내는 정보들( 인자가 요구되는 액션인 경우에는 그 인자에 대한 정보도 포함 )이 포함될 수 있다. 구성되는 메시지는 지정되는 유형에 따라 그 포맷이 달라질 수 있으며, 이는, 상기 메시지 핸들러(203)에 미리 설정되어 있게 된다. 메시지 유형은, 서비스 기반 요청에 대한 것인 지, 서비스 기반 요청에 대한 응답에 대한 것인 지, 전술한 바와 같이 서비스 프로파일을 공유하기 위한 것인 지 등을 구분하기 위해 사용된다. 그리고, 이후에 설명하는 다른 실시예에서의 전자제어 기기들 간의 상태 변수들에 대한 공유나, 공유할 상태 변수들의 통지를 위한 메시지를 구분하기 위해서도 사용된다.Then, the message handler 203 constructs a message with the received contents. In this case, the configured message may include a recipient node address, a sender node address, a message type, and information indicating a state variable and an action (in the case of an action requiring an argument, information on the argument is also included). The configured message may have a different format according to the designated type, which is preset in the message handler 203. The message type is used to distinguish whether it is for a service-based request, a response to a service-based request, or for sharing a service profile as described above. In addition, it is also used for sharing state variables between electronic control devices in another embodiment to be described later, or for discriminating a message for notification of state variables to be shared.

상기 메시지 핸들러(203)에 의해 구성되는 서비스 기반 요청을 위한 메시지에는, 상태 변수와 액션( 물론, 인자가 있는 경우 그 인자도 함께 )가, 상기 응용 프로그램(20k_n)이 요청할 때의 구문법 그대로, 예를 들어 텍스트 기반의 문자열 형식으로 포함될 수도 있고, 다르게는, 앞서 언급한 바와 같이, 해당 상태 변수와 액션에 각기 할당된 고유의 코드로써 포함될 수도 있다.In the message for a service-based request configured by the message handler 203, a state variable and an action (of course, if there is an argument, the argument is also included), as the syntax used when the application program 20 k_n requests, For example, it may be included in a text-based string format, or alternatively, as mentioned above, it may be included as a unique code assigned to a corresponding state variable and action, respectively.

상기 메시지 핸들러(203)는, 자신이 구성한 메시지를 네트워크 상의 송수신을 위한 수송 프레임 내에 패킹(packing)시켜서 운영시스템이 제공하는 네트워크 액세스용 실행 루틴을 호출하여, 액션이 수행되어야 할 상태 변수를 전담하는 전자제어 기기(20p)를 목적지로 하여 그 수송 프레임을 전송한다(S66). The message handler 203 packs a message configured by itself in a transport frame for transmission and reception on the network, calls an execution routine for network access provided by the operating system, and is in charge of a state variable in which an action is to be performed. by the electronic control unit (20 p) as the destination and transmits the transport frame (S66).

이렇게 전송되는 서비스 기반 요청의 메시지를 실은 수송 프레임은 네트워크를 경유하여 목적지인 전자제어 기기(20p)에 의해 수신되고, 통신용 하드웨어 자원과 운영시스템을 거쳐 해당 기기(20p)의 서비스 에이전트(200p)에 전달된다. 이렇게 전달되는 수송 프레임은 그 서비스 에이전트(200p)의 메시지 핸들러(203)에 의해 수취되고, 그 메시지 핸들러(203)는, 수송 프레임 내에서 메시지 부분을 추출한 후, 메시지 유형을 통해 서비스 기반 요청의 메시지임을 식별하고, 그에 맞게 메시지를 분해하여 상태 변수, 액션, 그리고 인자가 있으면 그 인자와 함께 서비스 처리부(202)에 타 기기로부터의 서비스 기반 요청을 전달한다. The transport frame carrying the message of the service-based request transmitted in this way is received by the electronic control device 20 p as the destination via the network, and the service agent 200 of the device 20 p through communication hardware resources and an operating system. p ). The transport frame transmitted in this way is received by the message handler 203 of the service agent 200 p , and the message handler 203 extracts the message part from the transport frame, and then sends the service-based request through the message type. The message is identified, and the message is decomposed accordingly, and if there are state variables, actions, and arguments, a service-based request from another device is transmitted to the service processing unit 202 with the parameters.

상기 메시지 핸들러(203)로부터 전달되는 이러한 서비스 기반 요청에 대하여, 상기 서비스 처리부(202)는, 상태값 디비(220)에서 해당 상태 변수에 대한 값을 읽거나(P67), 또는 해당 상태 변수와 인자로서 받은 값을 로컬 상태 핸들러(204)에 지정하면서 설정을 요청함으로써, 다른 전자제어 기기에서 발생된 서비스 기반 요청을 처리하게 된다. 그리고, 그 처리의 결과( 조회된 값 또는 설정동작의 결과를 나타내는 값 )를 상기 메시지 핸들러(203)에 전달한다. 그러면, 상기 메시지 핸들러(203)는, 전달된 처리 결과를 하나의 응답 메시지로 구성하여, 앞서 수신한 서비스 기반 요청의 메시지에 대한 응답으로서 전송한다(S68)For this service-based request transmitted from the message handler 203, the service processing unit 202 reads the value of the corresponding state variable from the state value DB 220 (P67), or A service-based request generated from another electronic control device is processed by requesting the setting while designating the value received as to the local state handler 204. Then, the result of the processing (a value that is inquired or a value indicating the result of the setting operation) is transmitted to the message handler 203. Then, the message handler 203 configures the transmitted processing result into one response message and transmits it as a response to the previously received service-based request message (S68).

이렇게 응답된 메시지는, 서비스 기반 요청의 메시지를 송신한 서비스 에이전트(200k)의 메시지 핸들러(203)에 의해 수취되고, 그 메시지 핸들러(203)는, 그 메시지 유형( 서비스 기반 요청에 대한 응답 메시지 )에 근거하여 해당 메시지를 분해하여 응답된 값을 추출하고, 그 구출한 응답 값을 상기 서비스 처리부(202)에 전달한다.Thus the response message, is received by the message handler 203 of the service agents (200 k) has transmitted a message of a service based on the request, the message handler 203, the message type (a response message to the service-request ), the message is decomposed and the response value is extracted, and the rescued response value is transmitted to the service processing unit 202.

상기 서비스 처리부(202)와 상기 메시지 핸들러(203) 간에도 상태 변수 등의 전달과 그에 따른 응답이 서로 연관되도록 하기 위해, 전술한 바와 같이 인스턴스 ID가 생성되어, 서로 전달하는 정보에 함께 전달될 수 있다.In order to correlate the transmission of state variables and the corresponding response between the service processing unit 202 and the message handler 203, as described above, an instance ID may be generated and transmitted together in information transmitted to each other. .

이와 같이 상기 메시지 핸들러(203)로부터 수신된 응답 값은, 앞서 설명한, 레거지 상태 변수에 대해 확인한 값 또는 그 변수에 대한 값의 설정에 따른 결과를, 서비스 기반 요청을 한 응용 프로그램(10k_n)에 전달하는 것과 동일한 방식으로 전달하게 된다(S69).In this way, the response value received from the message handler 203 is the value checked for the legacy state variable or the result of setting the value for the variable, as described above, and the application that made the service-based request (10 k_n ) It is delivered in the same way as the one delivered to (S69).

이상에서 구체적으로 설명한 바와 같이, 임의의 전자제어 기기에서 실행되는 임의의 응용 프로그램은, 전자제어 기기에 구비되는 서비스 에이전트(200i, i=1,..,N)에 의해, 의도하는 동작을 위해서, 정의된 형식에 따라 상태 변수의 명칭과 액션을 텍스트 기반으로 지정만 하면 된다. 그리고, 그 상태 변수를 어떤 전자제어 기기가 전담하고 있는 지에 불문하고, 임의의 전자제어 기기에서 그 상태 변수에 대한 조회와 설정이 가능하므로, 의도한 동작에서 그 상태 변수를 필요로 하는 응용 프로그램은 어떤 전자제어 기기에서 실행되어도 무방하다. 따라서, 응용 프로그램의 개발자는, 임의의 장치, 예를 들어, 임의의 한 모델의 차량을 목표로 개발한 응용 프로그램을, 다른 모델의 차량에 대해서도, 적용 객체인 전자제어 기기에 상기 서비스 에이전트가 구비되어 있으면, 그대로 적용시켜서, 의도하는 동작이 이루어지게 할 수 있다. 물론, 동일한 모델의 차량의 경우에도, 성능 개선이나 최적화를 위해 필요하다면, 그 어떤 수정없이 다른 전자제어 기기에서 실행시켜 동일한 동작을 구현해 낼 수 있다.As specifically described above, an arbitrary application program executed in an arbitrary electronic control device performs an intended operation by a service agent (200 i , i = 1, ..,N) provided in the electronic control device. To do this, all you have to do is specify the name of the state variable and the action based on text according to the defined format. And, regardless of which electronic control device is in charge of the state variable, it is possible to inquire and set the state variable in any electronic control device, so an application program that requires the state variable in the intended operation is It can be run on any electronically controlled device. Therefore, the developer of the application program has the service agent provided in the electronic control device, which is an application object, for an application program developed for an arbitrary device, for example, a vehicle of an arbitrary model, for vehicles of another model. If so, it can be applied as it is, so that the intended operation can be achieved. Of course, even in the case of a vehicle of the same model, if necessary for performance improvement or optimization, the same operation can be achieved by executing it in another electronic control device without any modification.

지금까지 설명한, 임의의 전자제어 기기에서 동작하는 서비스 에이전트는, 모두 동일한 네트워크에 연결된 전자제어 기기들에서 발생되는 신호나 정보 또는 그 기기들이 제어코자 하는 물리량을 각각의 상태 변수로 지정한 것임을 전제로 한 것이었다. 하지만, 본 발명의 원리와 기술적 사상은, 그러한 조건에 구속되지 않고, 서로 다른 종류의 네트워크에 연결된 전자제어 기기들에서 발생되는 신호나 정보, 또는 그 기기들이 제어코자 하는 물리량을 대상으로도 서비스 기반 요청이 이루어지도록 실시될 수 있다.Service agents operating in any electronic control device described so far are based on the premise that signals or information generated from electronic control devices connected to the same network or physical quantities that the devices want to control are designated as respective state variables. It was. However, the principles and technical ideas of the present invention are not limited to such conditions, and are service-based even for signals or information generated from electronic control devices connected to different types of networks, or physical quantities that the devices want to control. It can be implemented to make the request happen.

도 7은, 이러한 복합 네트워크 환경에 적용될 수 있는 실시예를 위한 기기의 구성을, 연결된 이종의 네트워크(1,2)와 관련 기기들을 함께 도시한 것으로서, 본 실시예를 위한 기기(30)에는, 전술한 바와 같은 서비스 기반 요청을 지원하기 위한 서비스 에이전트(300)가 구비되며, 그 기기(30)에는, 서로 다른 통신방식에 준하여 데이터를 통신해야 하는 이종의 양 네트워크(1,2)가 연결되어 있다. 이를 위해 해당 기기(30)에는, 각각의 네트워크(1,2)에 적용된 신호방식과 데이터 포맷에 따라 통신할 수 있는 망 인터페이스부(31,32)가 구비되어 있다. 7 shows the configuration of a device for an embodiment that can be applied to such a complex network environment, together with connected heterogeneous networks 1 and 2 and related devices. In the device 30 for this embodiment, A service agent 300 for supporting a service-based request as described above is provided, and the device 30 is connected to both heterogeneous networks 1 and 2 to communicate data according to different communication methods. have. To this end, the device 30 is provided with network interface units 31 and 32 capable of communicating according to a signal method and data format applied to each of the networks 1 and 2.

상기 기기(30)가 연결되는 양 네트워크 중 하나의 네트워크(1)는, 도 2에 예시된 바와 같이, 각기 서비스 에이전트(200i, i=1,..,N)가 구비되어 있어서 응용 프로그램들로부터의 서비스 기반 요청을 지원하는 전자제어 기기(20i, i=1,..,N)들이 연결되어 있는 네트워크( 이 네트워크에 대해서는 '주 네트워크'로 칭한다. )이고, 다른 네트워크(2)는, 전술한 바의 서비스 에이전트가 실행될 수 있는 자원이나 성능을 갖추지 못하고, 단지 입출력 인터페이스를 통해 직접 연결된 센서나 부품, 기계적 또는 전기적 모듈 등으로 구성된 전속 주변부로부터의 신호 또는 데이터를 검출하거나, 설정 명령이 지정하는 값이나 데이터를 해당되는 전속 주변부에 설정하는 기존의 특화된 전자제어 기기들(3i, i=1,..,M)( 이러한 전자제어 기기에 대해서 구분하여 지칭할 필요가 있을 때는, '통상(通常)의 제어기기'라 칭한다. )이 연결되어 있는 네트워크( 이 네트워크에 대해서, 주 네트워크(1)와 구분하여 지칭할 때는 '서브 네트워크'의 용어를 사용한다. )이다.One of the two networks to which the device 30 is connected is provided with service agents 200 i , i = 1, .., N, respectively, as illustrated in FIG. 2, so that application programs are provided. It is a network to which electronic control devices (20 i , i = 1,..,N) supporting service-based requests from are connected (this network is referred to as'main network'), and the other network 2 is , The service agent as described above does not have the resources or performance to be executed, and only detects signals or data from the exclusive peripheral part composed of sensors or parts, mechanical or electrical modules directly connected through the input/output interface, or setting commands Existing specialized electronic control devices (3 i , i = 1,..,M) that set the designated value or data to the periphery of the corresponding exclusive speed (When it is necessary to distinguish and refer to these electronic control devices, ' It is referred to as a'normal controller'.) It is a network to which it is connected (for this network, the term'sub-network' is used when referring separately from the main network 1).

상기 서브 네트워크(2)는, 일반적으로, 상기 주 네트워크(1) 보다는 제공 속도가 낮으며, 특정 종류의 장치에 적용되는 특화된 네트워크일 수 있다. 예를 들어, 상기 주 네트워크(1)는 일반적으로 고속의 통신망을 구축할 때 채택되는 10Mbps 이상의 전용의 이더넷(Ethernet)일 수 있고, 상기 서브 네트워크(2)는 최대 1Mbps의 속도를 제공할 수 있는 차량 등과 같은 특정 유형의 장치에 채택되는 CAN( Controller Area Network ) 일 수 있다.The sub-network 2 generally has a lower provision speed than the main network 1, and may be a specialized network applied to a specific type of device. For example, the main network 1 may be a dedicated Ethernet of 10 Mbps or more, which is generally adopted when constructing a high-speed communication network, and the sub network 2 may provide a maximum speed of 1 Mbps. It may be a Controller Area Network (CAN) adopted for certain types of devices such as vehicles.

상기 서브 네트워크(2)에 연결되어 있는 많은 통상의 제어기기들(3i, i=1,..,M)에서는 수많은 종류의 신호나 정보가 발생한다. 차량의 경우에, 엔진, 기어, 조향장치, 배기장치, 각종의 편의장치 등이 현재 이러한 통상의 제어기기들(3i, i=1,..,M)에 의해 발생 신호나 정보가 관리되고 있다. 그러므로, 이러한 신호나 정보는 현재 서비스 기반 요청에 의해 조회되거나 설정될 수 없다. 도 7에 예시된 기기(30)는, 이와 같이 통상의 제어기기들이 연결되어 있는 상기 서브 네트워크(2)에도 함께 연결되어, 그 서브 네트워크(2)에 연결되어 있는 많은 통상의 제어기기들(3i, i=1,..,M)에서 발생되는 신호나 정보, 또는 그들이 제어코자 하는 물리량 등에 대해서도 서비스 기반 요청을 지원하는 구성을 갖는다. 본 명세서에서는, 이러한 구성을 갖는 기기(30)를, 전속 주변부에 대해서 서비스 기반 요청을 지원하는 다른 전자제어 기기와 구분하여 특별히 '어댑팅 기기'라 칭하고, 그 어댑팅 기기(30)에 구비되어 서비스 기반 요청을 지원하는 서비스 에이전트(300)에 대해서도 '서비스 어댑팅 에이전트'로 특별히 구분하여 칭한다.Numerous types of signals or information are generated in a number of common controllers (3 i , i = 1, ..., M) connected to the sub-network 2. In the case of a vehicle, signals or information generated by engines, gears, steering devices, exhaust devices, various convenience devices, etc. are currently managed by these common control devices (3 i , i = 1, .., M). have. Therefore, these signals or information cannot be inquired or set by the current service-based request. The device 30 illustrated in FIG. 7 is also connected to the sub-network 2 to which common control devices are connected in this way, and many common control devices 3 are connected to the sub-network 2. It has a configuration that supports service-based requests for signals or information generated from i , i=1,..,M), or physical quantities they want to control. In the present specification, the device 30 having such a configuration is specifically referred to as an'adapting device' and is provided in the adapting device 30 by distinguishing it from other electronic control devices that support service-based requests to the exclusive peripheral part. The service agent 300 supporting service-based request is also specifically classified and referred to as a'service adapting agent'.

상기 서비스 어댑팅 에이전트(300)는, 도시된 바와 같이, 서비스 인터페이스부(301)와, 서비스 처리부(302)와, 메시지 핸들러(303)와, 로컬 상태 핸들러(304)와, 서브망 데이터 핸들러(305)를 포함하여 구성되며, 또한 전술한 바와 같이 구축운용되는 서비스 프로파일(310)( 또는 서비스 프로파일 세트(400) )과, 상태값 디비(320)를 구비하게 된다.As illustrated, the service adapting agent 300 includes a service interface unit 301, a service processing unit 302, a message handler 303, a local state handler 304, and a subnetwork data handler ( 305), and a service profile 310 (or service profile set 400) constructed and operated as described above, and a status value DB 320.

상기 어댑팅 기기(30)에는, 도시된 바와 같이 응용 프로그램(10q)이 설치되어 실행될 수도 있지만, 단지, 서브 네트워크(2)에 연결되어 있는 통상의 제어기기들(3i, i=1,..,M)과 전속 주변부에서 처리되는 신호나 정보, 또는 제어하는 물리량 등에 대해 서비스 기반의 요청을 지원하는 기능으로만 구성될 수도 있다. 이 경우에는, 해당 기기(30)에 구비되는 서비스 어댑팅 에이전트(300)에는 서비스 인터페이스부(301)가 구비되지 않을 수 있다. 또한, 상기 어댑팅 기기(30)는, 전속 주변부 없이, 단지 서브 네트워크(2)를 통해 연결되어 있는 통상의 제어기기들(3i, i=1,..,M)을 대상으로 하는 서비스 기반의 요청만을 지원하도록 구성될 수도 있다. 이렇게 구성되는 경우에는, 상기 서비스 어댑팅 에이전트(300)는 당연히 상기 로컬 상태 핸들러(304)를 그 구성에 포함하지 않을 수 있다.In the adapting device 30, as shown, the application program 10 q may be installed and executed, but only, ordinary control devices 3 i , i = 1, connected to the sub-network 2 ..,M) and the signal or information processed in the peripheral part of the exclusive speed, or the physical quantity to be controlled may be configured only with a function that supports service-based requests. In this case, the service interface unit 301 may not be provided in the service adapting agent 300 provided in the corresponding device 30. In addition, the adapting device 30 is a service base targeting conventional controllers (3 i , i = 1,...,M) connected through the sub-network 2 only without a dedicated peripheral part. It can also be configured to support only requests from. When configured in this way, the service adapting agent 300 may not naturally include the local state handler 304 in its configuration.

이하에서는, 상기 서비스 어댑팅 에이전트(300)의 동작에 대해서 구체적으로 설명하되, 전술한 바의 서비스 에이전트(200k)와 동일한 구성요소의 동일한 동작에 대해서는 그 설명을 생략한다. 따라서, 전술한 바의 서비스 에이전트(200k)의 동작 설명에서, 서로 대응되는 구성요소들에 대한 부분은 상기 서비스 어댑팅 에이전트(300)에 대해 그대로 원용될 수 있다.In the following, but the word service is explained in detail the operation of daepting agent 300, and a description thereof will be omitted of the same operation of the same components as the service agent (200 k) of the foregoing. Thus, in an operation of the service agent (200 k) of the foregoing, part of the components corresponding to each other it can be incorporated as for the service control daepting agent 300.

상기 서브망 데이터 핸들러(305)는, 운영시스템을 통해 서브망 인터페이스부(32)를 구동하거나 그를 통해 수신되는 데이터를 취득함으로써, 지정된 통신방식, 예를 들어 CAN 방식에 따라 서브 네트워크(2)를 통해 데이터를 송수신할 수 있다. 그리고, 상기 서브망 데이터 핸들러(305)에는, 서브 네트워크(2)에 실리는, 통상의 제어기기들이 전송하는 각종의 데이터 프레임에 대해서, 해당 데이터 프레임에 실린 데이터 블록의 종류를 나타내는 식별자( 이하, 이 식별자를 '블록 ID'라 칭한다. )에 근거하여, 그 데이터 프레임에 실린 데이터 블록이 어떤( 즉, 어떤 상태 변수에 대응되는 ) 신호들을 어떤 순서로 배열하고 있는 것인 지를 기 정해진 규칙에 따라 식별할 수 있다. 이러한 식별에 적용되는 규칙은, 데이터 구조체로서 지정하고 있는 별도의 프로파일( 이후에 구체적으로 설명하는 데이터 블록 프로파일일 수 있다. )이거나 또는 서브망 데이터 핸들러(305)에 하드 코딩(hard coding)된 루틴일 수 있다.The sub-network data handler 305 drives the sub-network interface unit 32 through an operating system or acquires data received through the sub-network interface unit 32, thereby operating the sub-network 2 according to a designated communication method, for example, a CAN method. Data can be transmitted and received through. In addition, the sub-network data handler 305 includes, for various data frames loaded on the sub-network 2 and transmitted by ordinary controllers, an identifier indicating the type of the data block loaded in the data frame (hereinafter, This identifier is referred to as'block ID'. Based on ), it is determined in what order the signals (ie, corresponding to a state variable) of the data block loaded in the data frame are arranged according to a predetermined rule. Can be identified. A rule applied to such identification is a separate profile designated as a data structure (it may be a data block profile to be described in detail later), or a routine hard-coded in the subnetwork data handler 305. Can be

그리고, 데이터 프레임에 실리는 데이터 블록의 종류를 식별케 하는 블록 ID는, 바람직하게는 데이터 블록 선두에 위치하며, 실시예에 따라서는, 데이터 프레임의 헤더에 실리는 프레임 식별자의 부분까지 포함하는 것일 수도 있다.In addition, the block ID for identifying the type of the data block carried in the data frame is preferably located at the head of the data block, and depending on the embodiment, includes a part of the frame identifier carried in the header of the data frame. May be.

상기 서브망 데이터 핸들러(305)는 리모트(remote) 정보의 처리부로서, 서브 네트워크(2)로부터 수신되는 데이터 프레임에 대해서 그 데이터 프레임에 패킹된 데이터 블록을 분석하여 각각의 신호나 정보를 분리하여, 상기 상태값 디비(320)의 해당되는 상태 변수의 값으로서 기록한다. The sub-network data handler 305 is a processing unit for remote information, and for a data frame received from the sub-network 2, it analyzes a data block packed in the data frame and separates each signal or information, It is recorded as a value of a corresponding state variable of the state value DB 320.

본 명세서에서는, 도 7에서와 같이, 상기 서브망 데이터 핸들러(305)가, 주 네트워크(1)와는 통신 방식이 상이한 서브 네트워크(2)에 직접 연결되어 해당 방식에 맞도록 데이터를 송수신하는, 동 기기(30)에 포함구성된 상기 서브망 인터페이스부(32)로부터, 데이터 블록을 수송하는 데이터 프레임을 수신하는 것을 전제하여 설명한다. 하지만, 상기 서브망 데이터 핸들러(305)가, 상기 서브 네트워크(2)에 연결되어 있는 통상의 제어기기들(3i, i=1,..,M)로부터의 데이터 블록을, 반드시 이러한 전제를 충족시키는 구성을 통해서만 수신해야 하는 것은 아니다. 다르게는, 상기 서브망 데이터 핸들러(305)가, 주 네트워크(1)와 동일한 통신 방식의 네트워크에 연결되는 망 인터페이스부를 통해 데이터 블록을 수신할 수도 있다. 이와 같은 데이터 블록의 수신 방식은, 통상의 제어기기들(3i, i=1,..,M)이 연결되어 있는 서브 네트워크(2)에 게이트웨이(gateway)가 연결되고, 그 게이트웨이가 서브 네트워크(2)와 주 네트워크 간의 데이터 송수신을 위한 프레임의 변환동작을 수행하고, 서브 네트워크(2)로부터의 데이터 프레임에 대해서는, 상기 어댑팅 기기(30)를 목적지로 하여 전송하도록 구성되는 것(70)으로써 가능하다.In the present specification, as shown in FIG. 7, the sub-network data handler 305 is directly connected to a sub-network 2 that has a different communication method from the main network 1 to transmit and receive data according to the corresponding method. The description will be made on the premise that a data frame transporting a data block is received from the sub-network interface unit 32 included in the device 30. However, the sub-network data handler 305 takes a block of data from ordinary controllers (3 i , i = 1,...,M) connected to the sub-network 2, and must take this premise. It does not have to be received only through a configuration that satisfies. Alternatively, the subnetwork data handler 305 may receive a data block through a network interface unit connected to a network having the same communication method as the main network 1. In this way of receiving a data block, a gateway is connected to the sub-network 2 to which common controllers (3 i , i = 1,...,M) are connected, and the gateway is a sub-network. (70) configured to perform a frame conversion operation for data transmission/reception between (2) and the main network, and to transmit the data frame from the sub-network (2) with the adapting device 30 as a destination (70) It is possible by

따라서, 본 발명의 개념과 기술적 사상은, 상기 어댑팅 기기(30)가, 통상의 제어기기들(3i, i=1,..,M)과 송수신하게 되는 데이터 블록을, 직접 연결된 서브 네트워크(2)로부터 또는 서브 네트워크(2)에 직접 연결된 게이트웨이와 같은 중계기기를 통해 수신하는 구성의 실시예들에 모두 적용가능하므로, 통상의 제어기기들과 데이터 블록을 주고받기 위한 서브 네트워크(2)와의 물리적 연결방식이 직접적이 아니라는 이유로 본 발명의 권리범위가 배척되어서는 안된다. 그리고, 이하의 본 발명에 대한 구체적인 설명에서, 상기 서브망 데이터 핸들러(305)가 서브 네트워크(2)로부터 또는 상기 서브망 인터페이스부(32)를 통해 데이터 블록을 수신하거나 그 역으로 송신한다는 기재는, 앞서 언급한 바와 같이 게이트웨이를 통해 그러한 동작이 이루어질 수도 있는 것으로 확장적으로 이해되어야 한다.Accordingly, the concept and technical idea of the present invention is that the adapting device 30 transmits/receives a data block to and from the general control devices 3 i , i = 1, .., M, and a sub-network directly connected to it. Since it is applicable to all embodiments of the configuration that receive from (2) or through a relay device such as a gateway directly connected to the sub-network (2), the sub-network (2) for exchanging data blocks with ordinary controllers The scope of the present invention should not be excluded because the physical connection method with is not direct. And, in the following detailed description of the present invention, the description that the subnetwork data handler 305 receives a data block from the subnetwork 2 or through the subnetwork interface unit 32 or vice versa As mentioned above, it should be broadly understood that such an operation may be performed through a gateway.

한편, 상기 서비스 어댑팅 에이전트(300)가 로컬 상태 핸들러(304)를 포함하여 구성되어 있어서, 상기 상태값 디비(320)에 상태 변수에 대한 값을 기록할 수 있는 구성요소가 복수인 경우에는, 상기 상태값 디비(320)는, 각각의 레거시 상태변수에 대해 그 소유주(owner)를 지정하는 필드도 포함한다. 예를 들어, 상기 어댑팅 기기(30)에, 트렁크 도어 개폐 감지용 센서가 입출력 인터페이스를 통해 직접 연결되어 있는 경우라면, 그 센서의 감지 상태에 대해 지정된 상태 변수 TrunkDoor에 대해서는, '로컬 상태 핸들러'를 나타내는 값이 소유주 필드에, 그리고 서브 네트워크(2) 상의 통상의 제어기기로부터 전달되는 신호나 정보 등에 대해 지정된 상태 변수, 예를 들어 엔진 rpm에 대한 상태 변수 EngineRPM에 대해서는, '서브망 데이터 핸들러'를 나타내는 값이 소유주 필드에 기록되어 있게 된다.On the other hand, when the service adapting agent 300 is configured to include the local state handler 304 and there are a plurality of components capable of recording a value of a state variable in the state value DB 320, The status value DB 320 also includes a field for designating an owner of each legacy status variable. For example, if a sensor for detecting opening/closing of a trunk door is directly connected to the adapting device 30 through an input/output interface, for a state variable TrunkDoor designated for the sensing state of the sensor, a'local state handler' In the owner field, and a state variable specified for a signal or information transmitted from an ordinary control device on the sub-network 2, for example, a state variable for engine rpm, for EngineRPM,'sub-network data handler' The value representing is recorded in the Owner field.

이렇게 구축운용되는 상기 상태값 디비(320)에 기록된 상태 변수들에 대한 각각의 값은, 상기 주 네트워크(1)에 연결되어 있는 다른 전자제어 기기(20i, i=1,..,N)에서 실행되고 있는 응용 프로그램으로부터의 또는 상기 어댑팅 기기(30)에서 실행 중인 응용 프로그램(10q)으로부터의 서비스 기반의 조회, 예를 들어 현재 엔진의 rpm 값을 조회하는 "EngineRPM.Get"과 같은 요청이 있을 때, 상기 메시지 핸들러(303)를 통해 다른 전자제어 기기에 또는 상기 서비스 인터페이스부(301)를 통해 동 기기내의 응용 프로그렘에 제공된다.Each value of the state variables recorded in the state value DB 320 constructed and operated in this way is the other electronic control devices 20 i , i = 1, .., N connected to the main network 1. ) Service-based query from the application program running on the adapting device 30 or from the application program 10 q running on the adapting device 30, for example, "EngineRPM.Get" for querying the rpm value of the current engine; and When the same request is made, it is provided to another electronic control device through the message handler 303 or to an application program in the device through the service interface unit 301.

서비스 기반의 요청이 상태값 설정인 경우에는, 그 요청이, 전술한 바와 같이, 상기 서비스 인터페이스부(301)로부터 또는 상기 메시지 핸들러(303)로부터 상기 서비스 처리부(302)에 인가되는데, 상기 서비스 처리부(302)는, 그 설정이 요구되는 상태 변수를 상기 상태값 디비(320)에서 찾아 그 소유주를 먼저 확인한다( 상기 서비스 인터페이스부(301)로부터의 요청일 때는 레거시 상태변수에 대한 것으로 판별된 경우에 한한다. ). 그리고, 그 확인된 소유주가 '로컬 상태 핸들러'이면, 전술한 바와 같이 해당 상태 변수를 지정하면서 동시에 인자로서 받은 값을 상기 로컬 상태 핸들러(304)에 전달하면서 설정을 명령하고, 소유주가 '서브망 데이터 핸들러'이면, 해당 상태 변수를 지정하면서 동시에 인자로서 받은 값을 상기 서브망 데이터 핸들러(305)에 전달하면서 설정을 요청한다.When the service-based request is a status value setting, the request is applied to the service processing unit 302 from the service interface unit 301 or from the message handler 303, as described above, and the service processing unit 302 finds a state variable for which the setting is requested in the state value DB 320 and first confirms its owner (in the case of a request from the service interface unit 301, when it is determined that it is for a legacy state variable) Limited to). And, if the confirmed owner is a'local state handler', as described above, a corresponding state variable is specified and a value received as an argument is delivered to the local state handler 304 while commanding the setting, and the owner In the case of'data handler', while designating a corresponding state variable and simultaneously passing a value received as an argument to the subnetwork data handler 305, the setting is requested.

이와 같은 상태 변수에 대한 설정을 요청받으면, 상기 서브망 데이터 핸들러(305)는, 그 상태 변수에 대한 값의 설정을 위한 데이터 블록을, 기 파악하고 있는 규칙에 따라 구성한다. 예를 들어, 설정 요청된 상태 변수가 챠량의 운전석 둥받이에 대한 경사각을 나타내는 DriverSeatDecline이고, 액션은 Set이며, 그 인자는 10일 때, 운전석 시트에 대한 설정임을 나타내는 블록 ID의 데이터 블록을 구성하면서, 그 데이터 블록에서 등받이의 기울기가 실리는 위치, 예를 들어 한 바이트에 10을 기록한다. 그리고, 그렇게 구성된 데이터 블록을 서브 네트워크(2)를 통해 전송하기 위한 데이터 프레임으로 만들어서, 서브망 인터페이스(32)를 통해 해당 네트워크로 송신한다. 그러면, 그 데이터 프레임은, 그 서브 네트워크(2) 상의 모든 통상의 제어기기들(3i, i=1,..,M)이 수신하게 되고, 이들 중 해당 블록 ID를 처리하도록 지정된 통상의 제어기기만이 그 데이터 블록을 해석하여 그에 따른 설정, 예를 들어, 운전석 등받이의 경사각을 10o로 하기 위해 모터를 필요한만큼 구동하게 된다.When a request for setting such a state variable is received, the subnetwork data handler 305 constructs a data block for setting a value for the state variable according to a known rule. For example, when the requested state variable is DriverSeatDecline indicating the inclination angle of the vehicle's driver's seat, the action is Set, and the argument is 10, the data block of the block ID indicating the setting for the driver's seat is configured. , In the data block, the position where the slope of the backrest is loaded, for example, write 10 in one byte. Then, the configured data block is made into a data frame for transmission through the sub-network 2 and transmitted to the corresponding network through the sub-network interface 32. Then, the data frame is received by all ordinary controllers (3 i , i = 1,...,M) on the sub-network 2, of which a normal controller designated to process the corresponding block ID. The deception interprets the data block and drives the motor as needed to set accordingly, for example, to set the inclination angle of the driver's seat back to 10 o .

이상에서 설명한, 상기 서비스 어댑팅 에이전트(300)의 서비스 기반 요청을 처리하는 동작에 의해, 현재 CAN과 같은 서브 네트워크에 연결된 통상의 제어기기에 의해 관리 또는 제어되고 있는 엔진, 트랜스미션, 바디 전장품( 도어, 시트, 윈도우 등 )의 구동기기나 각종의 기계적 또는 전기적 모듈 등에 대해서도 서비스 기반 요청이 가능하게 된다.As described above, by the operation of processing the service-based request of the service adapting agent 300, the engine, transmission, and body electrical equipment (doors) that are currently managed or controlled by a common controller connected to a sub-network such as CAN , Seats, windows, etc.), and service-based requests for various mechanical or electrical modules, etc.

그런데, 엔진에 대한 제어를 위해 구비된 기기가 통상의 제어기기로서, 상기 서브 네트워크(2)에 연결되어 있고, 상기 주 네트워크(1)에 연결되어 있는 도 3과 같이 구성된 전자제어 기기(20k)에서 실행되는, 엔진의 상태나 진단을 위한 임의의 응용 프로그램이 엔진의 상태를 지속적으로 확인하고자 하는 경우라면, 엔진의 상태를 나타내는 여러 상태 변수들애 대하여 서비스 기반의 조회를 반복적으로 하게 된다. 예를 들어, 엔진의 상태를, 엔진 부하, 엔진 온도, 엔진 압력, 그리고 엔진 rpm 등으로써 나타낸다면, 이들에 각기 대응하는 상태 변수들을 개별적으로 조회하는 "EngineLoad.Get", "EngineTemp.Get", "EnginePressure.Get", "EngineRPM.Get" 등의 서비스 기반 요청을 상기 어댑팅 기기(30)에 반복적으로 하여야 한다.By the way, as an ordinary control unit of the device is provided for control of the engine, the sub is connected to a network (2), the main network (1), the electronic control device (20 k is configured as shown in FIG. 3 that is connected to the ), if an arbitrary application program for engine status or diagnosis wants to continuously check the status of the engine, service-based inquiries are repeatedly performed for various status variables representing the status of the engine. For example, if the status of the engine is expressed as engine load, engine temperature, engine pressure, engine rpm, etc., "EngineLoad.Get", "EngineTemp.Get", which individually inquires the state variables corresponding to them, respectively. Service-based requests such as "EnginePressure.Get" and "EngineRPM.Get" must be repeatedly made to the adapting device 30.

서비스 기반 요청은, 레거시 상태변수에 대한 것이 아니면, 그 요청이 있을 때마다 하나의 메시지로 구성되어 그 상태 변수를 전담하는 서비스 에이전트( 또는 서비스 어댑팅 에이전트 )로 네트워크를 경유하여 전송되고, 그 요청에 대한 응답도 개별적인 메시지로써 이루어지므로, 응용 프로그램이 엔진 상태를 한번 파악함에 있어서, 관련된 상태 변수들을 개별적으로 확인한다면, 그 상태 변수들의 수만큼 네트워크를 경유하는 메시지들이 교환되어야 한다. 따라서, 레거시 상태변수들이 아닌 경우에 발생하게 되는 이와 같은 다수 메시지들의 네트워크를 통한 교환이 수반되는 정보 확인이나 값의 설정 과정은, 그 메시지들의 네트워크를 통한 교환에 소요되는 시간에 의해 지연된다.The service-based request, unless it is for a legacy state variable, is composed of one message each time the request is made, and is transmitted through the network to the service agent (or service adapting agent) in charge of the state variable. Responses to are also made as individual messages, so if the application program checks the related state variables individually when checking the engine state once, messages via the network as many as the number of state variables must be exchanged. Accordingly, the process of confirming information or setting values, which involves the exchange of multiple messages through the network, which occurs when the legacy state variables are not, is delayed by the time required for the exchange of the messages through the network.

서비스 기반의 요청을 지원하기 위해서는, 차량과 같은 장치에 부속된 특정 부품과 관련된 신호들의 각각에 대응하여 상태 변수들이 지정되어야 하는데, 앞서 언급한 네트워크를 경유하는 개별적인 메시지 교환을 수반하는 서비스 기반 요청은, 특정 부품과 관련된 신호들의 수가 많을수록, 그 특정 부품의 현재 상태를 확인하게 되는 시간도 길어지게 만든다.In order to support a service-based request, state variables must be specified in response to each of signals related to a specific component attached to a device such as a vehicle, and a service-based request involving an individual message exchange via the aforementioned network is In this case, the more signals associated with a particular part, the longer the time to check the current state of that particular part.

따라서, 본 발명에 따른 일 실시예에서는, 이러한 네트워크를 경유하는 상태 변수의 조회 절차를 줄임으로써, 타 전자제어 기기의 전속 주변부에 대한 상태 확인이 보다 신속하게 이루어지게 할 수 있다. 이를 위해, 본 실시예에서는, 상기 서비스 어댑팅 에이전트(300)가, 상기 서브망 데이터 핸들러(305)로부터 현재 값이 취득되는 상태 변수들에 대해서, 바람직하게는 방송 메시지의 형식으로 또는 다중 전송의 형식으로 상기 주 네트워크(1)에 연결되어 있는 전자제어 기기들(20i, i=1,..,N)에 제공하여 상태 변수들의 현재 값들을, 조회 요청과 무관하게 미리 공유시킨다. 이때의 상태변수 공유를 위한 메시지는, 그 메시지에 포함되는 메시지 유형에 의해 상태 변수들에 대한 현재 값들의 공유임이 지정된다.Accordingly, in an embodiment according to the present invention, by reducing the inquiry procedure of the state variable via such a network, it is possible to more quickly check the state of the exclusive peripheral part of the other electronic control device. To this end, in the present embodiment, the service adapting agent 300, preferably in the form of a broadcast message or multi-transmission, for state variables whose current values are obtained from the subnetwork data handler 305 It is provided to the electronic control devices (20 i , i = 1,...,N) connected to the main network 1 in a form to share the current values of the state variables in advance regardless of the inquiry request. The message for sharing state variables at this time is designated as sharing of current values for state variables by the message type included in the message.

이와 같은 상태 변수들의 공유에 있어서, 상기 서비스 어댑팅 에이전트(300)가 대체적으로 정보 제공자가 된다. 이는, 차량과 같은 장치에서, 수많은 종류의 신호나 정보들을 처리하는 통상의 제어기기들(3i, i=1,..,M)이 대체적으로 상기 서브 네트워크(2)에 연결되어 있어서, 그 서브 네트워크(2)로부터 현재 값들이 얻어지는 상태 변수들을 상기 서비스 어댑팅 에이전트(300)가 전담하게 되고, 타 전자제어 기기들에서 실행되고 있는 많은 응용 프로그램들이 의도된 동작을 수행하기 위해 그러한 신호나 정보들을 필요로 하기 때문이다.In sharing such state variables, the service adapting agent 300 generally becomes an information provider. This is because, in a device such as a vehicle, common control devices (3 i , i = 1, .., M) that process numerous types of signals or information are generally connected to the sub-network 2, The service adapting agent 300 is in charge of the state variables for which the current values are obtained from the sub-network 2, and such signals or information are used in order for many application programs running in other electronic control devices to perform their intended operations. Because you need to listen.

하지만, 상태 변수들의 공유에 있어서, 반드시 상기 서비스 어댑팅 에이전트(300) 만이 정보 제공자가 되는 것은 아니다. 상기 주 네트워크(1)에 연결되어 있는 전자제어 기기(20i, i=1,..,N)에 구비된 서비스 에이전트(200i, i=1,..,N)도, 경우에 따라서는, 공유에 있어서의 정보 제공자가 될 수도 있다. 즉, 그 전자제어 기기에서 자체적으로 생성되는 또는 그 전자제어 기기의 전속 주변부에서 생성되는 많은 종류의 신호나 정보가 다른 전자제어 기기(들)에서 필요로 할 가능성이 높은 경우라면, 그 전자제어 기기에서 실행 중인 서비스 에이전트도, 이하에서 설명하는, 전담하는 상태 변수들의 현재 값들을 정보 제공자로서 다른 전자제어 기기에 공유시키는 상기 서비스 어댑팅 에이전트(300)와 마찬가지로, 방송 메시지 등을 통해 지속적으로 다른 전자제어 기기(들)에 공유시키는 정보 제공자가 될 수 있는 것이다.However, in the sharing of state variables, the service adapting agent 300 is not necessarily the only information provider. The service agent (200 i , i = 1,..,N) provided in the electronic control device (20 i , i = 1,..,N) connected to the main network 1 is also, in some cases, In addition, it can be an information provider in sharing. That is, if there is a high possibility that other electronic control device(s) need many kinds of signals or information generated by the electronic control device itself or in the peripheral part of the electronic control device, the electronic control device Like the service adapting agent 300 that shares current values of dedicated state variables to other electronic control devices as information providers, the service agent running in It can be an information provider to share with the control device(s).

상기 서비스 어댑팅 에이전트(300)의 서비스 처리부(302)는, 상기 상태값 디비(320)에 값들이 기록된 상태 변수들에 대해서, 기 지정된 분류 방식에 따라 그룹핑하고, 각 그룹마다, 각각의 상태 변수를 나타내는 정보( 예를 들어, 상태변수명 또는 상태 변수에 대한 고유 코드 등 )와 해당 상태 변수의 현재 값의 세트를 정해진 순서대로 배열하여 하나의 방송 메시지를 구성한 후, 그 메시지에 대해서 상태 변수의 공유임을 나타내는 메시지 유형을 지정한다( 이하에서는, 이렇게 구성된 메시지를 '상태공유 메시지'라 칭한다. ). 어떤 그룹에 대한 것인 지를 나타내는 정보도 메시지 유형의 일부분으로써 지정될 수 있다. 상태 변수들을 그룹핑하기 위한 분류는, 장치의 부품별로, 기능 블록별로, 계통별로 또는 그외의 다양한 방식에 근거하여 이루어질 수 있다.The service processing unit 302 of the service adapting agent 300 groups the state variables in which values are recorded in the state value DB 320 according to a pre-designated classification method, and for each group, each state After configuring one broadcast message by arranging the set of information representing the variable (for example, the name of the state variable or the unique code for the state variable) and the current value of the corresponding state variable in a predetermined order, the state variable for the message Specifies a message type indicating that it is shared (in the following, a message constructed in this way is referred to as a'state sharing message'). Information indicating which group it is for can also be specified as part of the message type. Classification for grouping the state variables may be performed according to device parts, function blocks, systems, or other various methods.

본 밞명에 따른 일 실시예에서는, 상기 상태값 디비(320)에 값들이 기록된 레거시 상태변수들에 대해서 모두 다른 전자제어 기기(들)에 현재 값들을 공유시키지 않고, 기 지정된 상태 변수들에 대해서만 하나 이상의 상태공유 메시지를 통해, 이하에서 설명하는 방식으로 타 기기(들)에 공유시킬 수도 있다. 본 발명에 따른 일 실시예에서는, 공유할 상태 변수들을 공유정보로서 나열하고 있는 공유변수 프로파일을, 상기 서비스 처리부(302)에 사전에 설정함으로써, 타 기기에 공유시킬 상태변수들에 대해 지정되게 할 수 있다. 그리고, 이 공유변수 프로파일에 리스트된 상태 변수들은, 다른 전자제어 기기들(20i)에서 각기 동작하는 서비스 에이전트(200i, i=1,..,N)의 서비스 처리부(202)에 '피공유변수 프로파일'로 사전에 설정될 수 있다.In an embodiment according to the present invention, all of the legacy state variables in which values are recorded in the state value DB 320 are not shared with other electronic control device(s), but only for pre-designated state variables. Through one or more state sharing messages, it may be shared with other device(s) in the manner described below. In an embodiment according to the present invention, a shared variable profile listing state variables to be shared as shared information is set in advance in the service processing unit 302, so that state variables to be shared with other devices can be designated. I can. Then, the state variables listed in the shared variable profile are'P' to the service processing unit 202 of the service agent 200 i , i = 1, .., N, respectively operating in the other electronic control devices 20 i . It can be set in advance as'shared variable profile'.

상기 서비스 처리부(302)는, 전술한 바와 같이 상태공유 메시지를 구성한 후, 상기 메시지 핸들러(303)에 네트워크를 통한 방송 형식의 전송을 요청하고, 그 요청에 따라 상기 메시지 핸들러(303)는, 해당 메시지에 대해서 방송임을 나타내는 주소가 헤더에 포함된 하나의 수송 프레임에 실어서 상기 주 네트워크(1)로 전송함으로써, 그 주 네트워크(1) 상의 모든 전자제어 기기들의 서비스 에이전트(200i, i=1,..,N)가 그 상태공유 메시지의 수송 프레임을 수취할 수 있게 한다.The service processing unit 302, after constructing a state sharing message as described above, requests the message handler 303 to transmit a broadcast format through a network, and according to the request, the message handler 303 The address indicating that the message is broadcast is loaded in one transport frame included in the header and transmitted to the main network 1, so that the service agents 200 i and i = 1 of all electronic control devices on the main network 1 ,..,N) can receive the transport frame of the state sharing message.

각 서비스 에이전트에 의해 수취되는 수송 프레임에 대해서 메시지 핸들러(203)( 다른 서비스 어댑팅 에이전트의 메시지 핸들러(303)도 포함될 수 있다. )는, 해당 수송 프레임에서 메시지를 추출하고, 그 추출된 메시지에 대해서, 그 메시지 유형으로부터 상태공유 메시지임을 식별하고, 그에 따라 해당 메시지의 내용을 서비스 처리부(202)( 다른 서비스 어댑팅 에이전트의 서비스 처리부(302)도 포함될 수 있다. 상태공유 메시지의 처리에 대해서는, 이하 동일하다. )에 제공한다.For transport frames received by each service agent, the message handler 203 (message handler 303 of another service adapting agent may also be included) extracts a message from the transport frame, and extracts a message from the extracted message. On the other hand, the message type identifies that the message is a state sharing message, and accordingly, the content of the message may be included in the service processing unit 202 (the service processing unit 302 of another service adapting agent). For the processing of the state sharing message, It is the same below. ).

그러면, 상기 서비스 처리부(202)는, 그 전달된 내용에 포함된 메시지 유형에 근거하여, 그 메시지에 포함된 상태 변수들이 어떤 그룹에 해당하는 지를 확인한 뒤, 해당 그룹에 대한 상태변수들에 대한 상태값 디비를, 자신이 구축운용하는 레거시 상태 변수들에 대한 상태값 디비(220)와는 별도로 구축한다. 물론, 앞서 구축되어 있는 경우에는, 해당되는 상태변수들에 대하여, 수신된 상태공유 메시지에 의해 전달된 현재 값들로써 갱신하게 된다.,Then, the service processing unit 202 checks which group the state variables included in the message correspond to, based on the message type included in the transmitted content, and then determines the status of the state variables for the group. The value DB is built separately from the state value DB 220 for the legacy state variables that it builds and operates. Of course, in the case of previously established, the corresponding state variables are updated with the current values delivered by the received state sharing message.

도 5b는, 본 발명에 따른 전술한 실시예에 의해, 상기 주 네트워크(1)에 연결된 임의의 전자제어 기기(20k)에서 동작 중인 서비스 에이전트(200k)가, 레거시 상태 변수들에 대한 상태값 디비(220)와 함께, 다른 전자제어 기기 또는 어댑팅 기기로부터 공유를 위해 제공되는 상태 변수들에 대한 값들을 이용하여 별도의 상태값 디비들(230i, i=1,2,..,NN)을 구축한( 또는 갱시된 ) 예를 보여준다. 본 명세서에서는, 전자의 디비(220)에 대해서는 '로컬 상태값 디비'로, 그리고 후자의 디비(230i, i=1,2,..,NN)에 대해서는 '공유 상태값 디비'로 구분하여 칭하고, 이들을 통칭할 필요가 있을 때는 상태값 디비 세트(500)라는 용어를 사용한다.Figure 5b, by the above-described embodiment according to the present invention, the main network (1) any of the electronic control device (20 k), a service agent (200 k), operating in a connected to the state of the legacy state variables In addition to the value division 220, separate status value divisions 230 i , i = 1, 2, .., by using values for status variables provided for sharing from other electronic control devices or adapting devices. NN) is constructed (or updated). In the present specification, the former DB 220 is divided into a'local state value DB' and the latter DB (230 i , i = 1,2,..,NN) is divided into a'shared state value DB'. When there is a need to refer to these and collectively, the term "state value DB set 500" is used.

전술한 바와 같은 상태공유 메시지를 통한 네트워크 상의 모든 전자제어 기기들( 이들 중 일부는 어댑팅 기기일 수도 있다. )에 구비된 각 서비스 에이전트( 또는 서비스 어댑팅 에이전트 )가, 도 5b에 예시된 바와 같이 상태값 디비 세트(500)를 구축하고 있으면, 해당 기기에서 실행되고 있는 임의의 응용 프로그램으로부터의 상태 변수에 대한 서비스 기반의 조회가 있을 때, 그 조회가 레거시 상태 변수에 대한 것인 지 아닌 지에 따라, 서비스 처리부(202)가, 상기 상태값 디비 세트(500)에서 로컬 상태값 디비(220)를 검색하거나, 아니면 공유 상태값 디비들(230i, i=1,2,..,NN)을 검색하여 해당 상태 변수에 대한 값을 확인하여 그 확인한 값을 서비스 인터페이스부(201)를 통해 응답으로서 리턴하게 된다.Each service agent (or service adapting agent) provided in all electronic control devices on the network through the above-described state sharing message (some of these may be adapting devices), as illustrated in FIG. 5B, If the state value DB set 500 is constructed together, when there is a service-based query for a state variable from an application running on the device, it is determined whether the query is for a legacy state variable. Accordingly, the service processing unit 202 searches for the local status value DB 220 from the status value DB set 500, or otherwise shared status value divisions 230 i , i = 1,2,...,NN). By searching for, the value of the corresponding state variable is checked, and the checked value is returned as a response through the service interface unit 201.

따라서, 임의의 전자제어 기기에서 실행되는 응용 프로그램이, 장치의 특정 부품에 대한 현재 상태를 알기 위해, 다른 전자제어 기기가 또는 어댑팅 기기가 전담하는 여러 상태 변수들을 조회할 필요가 있을 때, 관련된 각 상태 변수에 대한 조회용 메시지를 네트워크를 경유하여 개별적으로 주고 받을 필요 없이, 동 기기에 이미 공유되어 있는 관련 상태 변수들의 값들에 대한 조회로부터 부품 등에 대한 상태의 확인이 신속하게 이루어진다.Therefore, when an application program running in a certain electronic control device needs to query various state variables dedicated by another electronic control device or an adapting device in order to know the current state of a specific part of the device, Without the need to send and receive messages for inquiry for each status variable individually via the network, the status of parts, etc. is quickly checked from the inquiry about the values of the related status variables already shared in the device.

한편, 상기 서비스 어댑팅 에이전트(300)( 또는 상기 서비스 에이전트(200k), 이하에서는, 이 두가지 유형의 에이전트에 대해서 구별없이 통칭할 때는 '에이전트'라고 칭한다. )가 레거시 상태변수들의 현재 값들을 다른 기기에 공유함에 있어서, 임의의 한 상태 변수에 대한 값이 갱신될 때마다, 그 상태 변수가 속한 그룹에 대하여 상태공유 메시지를 구성하여 타 기기들로 제공할 수 있다.On the other hand, the service control daepting agent 300 (or the service agent (200 k), below, when collectively without distinction for the two types of agents referred to as "agents") are the current values of the legacy state variables In sharing to other devices, whenever a value of a state variable is updated, a state sharing message for a group to which the state variable belongs may be configured and provided to other devices.

본 발명에 따른 다른 일 실시예에서는, 레거시 상태변수들에 대한 공유를, 상태 변수들에 대해 그 특성에 따라 분류해 둔 그룹마다 공유하는 시간격을 달리할 수도 있다. 이를 위해서는, 에이전트가, 기 지정된 분류 방식에 따라 레거시 상태변수들을 그룹핑한 형식으로 로컬 상태값 디비를 구축하게 되고, 각 그룹에 대해서 공유 시간격도 그 그룹에 맞게 지정해 둔다. 예를 들어, 전자제어 기기들이 장착되는 장치가 차량이라면, 엔진 계통에 대한 상태변수 그룹에 대해서는 100msec, 트랜스미션, 조향 및 브레이크 계통에 대한 상태변수 그룹에 대해서는 200msec, 배기 계통에 대한 상태변수 그룹에 대해서는 500msec, 그리고 공조 계통에 대한 상태변수 그룹에 대해서는 1sec와 같은 식으로 지정해 둘 수 있다. 물론, 이러한 분류보다 훨씬 세분화하여 상태 변수들을 그룹핑하여 분류할 수도 있다.In another embodiment according to the present invention, the sharing of the legacy state variables may be shared at different time intervals for each group classified according to the characteristics of the state variables. To this end, the agent constructs a local state value DB in a format in which legacy state variables are grouped according to a pre-designated classification method, and a shared time interval for each group is also designated according to the group. For example, if the device on which electronic control devices are installed is a vehicle, 100 msec for the status variable group for the engine system, 200 msec for the status variable group for the transmission, steering and brake systems, and 200 msec for the status variable group for the exhaust system. It can be designated in the same way as 500msec and 1sec for the group of state variables for the air conditioning system. Of course, it is possible to classify the state variables by grouping them further than this classification.

이렇게 레거시 상태변수들에 대해 그룹별로 공유 시간격이 지정되어 있을 때는, 해당 그룹에 속하는 상태변수들에 대하여 상태공유 메시지를 통해 타 기기들에 공유시키게 되면, 해당 공유 시간격이 경과할 때까지는, 그 도중에, 로컬 상태 핸들러(204,304)에 의해 또는 서브망 데이터 핸들러(305)로부터 수취한 메시지에 의해 그 중 하나 이상의 상태 변수의 값이 갱신되어도 대기하고, 다음의 공유 시간격이 되었을 때 해당 그룹의 상태 변수들에 대해서 한꺼번에 상태공유 메시지를 구성하여 전송함으로써 그룹별로 일괄적으로 공유시키게 된다.When the sharing time interval for each group is specified for the legacy state variables, if the state variables belonging to the group are shared with other devices through a state sharing message, until the corresponding sharing time interval elapses, In the meantime, it waits even if the value of one or more of the state variables is updated by the local state handlers 204 and 304 or by a message received from the subnetwork data handler 305, and when the next shared time interval is reached, State variables are collectively shared for each group by constructing and sending a state sharing message at once.

본 발명에 따른 일 실시예에서는, 에이전트가 레거시 상태 변수들에 대해서 일부만을 타 에이전트와 공유할 수도 있다. 예를 들어, 차량의 경우, 시트나 도어 등의 상태는 그 변화가 빈번히 발생하지 않는다. 따라서, 이와 같은 상태 변수들에 대해서는 주기적으로 상태공유 메시지를 통해 타 기기들로 제공하는 대신, 전술한 바와 같이, 임의의 응용 프로그램이 임의의 기기에서 서비스 기반 요청을 하였을 때, 네트워크를 경유하는 조회와 응답을 통해 그 값을 제공할 수도 있다.In an embodiment according to the present invention, the agent may share only some of the legacy state variables with other agents. For example, in the case of a vehicle, the state of the seat or door does not change frequently. Therefore, instead of periodically providing these state variables to other devices through a state sharing message, as described above, when a certain application program makes a service-based request from a certain device, a query through the network You can also provide the value through the and response.

본 발명에 따른 일 실시예에서는, 주 네트워크(1)와 서브 네트워크(2)에 함께 연결되어, 서브 네트워크(2)에 연결되어 있는 통상의 제어기기들과 관련하여 지정된 상태 변수들을 전담하는 상기 서비스 어댑팅 에이전트(300)가, 상기 서브 네트워크(2)로부터 수취되는 상태 변수들의 현재 값에 대해서, 전술한 방법과는 상이한 방법으로 다른 기기들에 공유할 수 있다. 이하에서는, 본 실시예에 따른 방법을 구체적으로 설명한다.In one embodiment according to the present invention, the service is connected to the main network (1) and the sub-network (2) together, and is dedicated to state variables designated in relation to ordinary controllers connected to the sub-network (2). The adapting agent 300 may share the current values of state variables received from the sub-network 2 with other devices in a method different from the above-described method. Hereinafter, the method according to the present embodiment will be described in detail.

본 실시예를 위해서는, 동일한 네트워크에 함께 연결된 전자제어 기기에서 동작하는 서비스 에이전트(200i, i=1,..,N)의 각각에는( 또는 서비스 어댑팅 에이전트에는 ), 도 8에 예시된 바와 같이, 서브 네트워크(2)를 통해 송수신되는 데이터 프레임에 패킹되는 데이터 블록에 대해서, 그 데이터를 기 설정된 데이터 블록 프로파일(240)에 의거하여 해석하여 처리하도록 구성된 신호 매핑부(206)가 더 포함될 수 있다. 물론, 이하에서 설명하는 상기 신호 매핑부(206)의 동작을, 메시지 핸들러(203)나 서비스 처리부(202)가 수행할 수도 있다.For this embodiment, each of the service agents (200 i , i = 1, .., N) operating in the electronic control device connected to the same network (or the service adapting agent), as illustrated in FIG. Likewise, for a data block packed in a data frame transmitted and received through the sub-network 2, a signal mapping unit 206 configured to analyze and process the data based on a preset data block profile 240 may be further included. have. Of course, the operation of the signal mapping unit 206 described below may be performed by the message handler 203 or the service processing unit 202.

상기 서비스 어댑팅 에이전트(300) 내의 서브망 데이터 핸들러(305)는, 데이터 블록 방식의 직(直)공유가 상기 서비스 처리부(302)로부터의 명령에 따라 활성화된 모드이면, 서브 네트워크(2)로부터 데이터 프레임을 수취하여 그 프레임 내의 데이터 블록을 획득할 때마다, 그 데이터 블록을 페이로드(payload)로 하고, '서브망 신호 직공유'임을 식별케 하는 메시지 유형(Type)과 앞서 언급한 메시지 ID를 포함하는 헤더를 구성하여 그 페이로드에 전치시켜 하나의 메시지를 구성한 후, 메시지 핸들러(303)로 바로 전달하여 주 네트워크(1)로의 전송을 요청한다. 이때, 전치되는 메시지 유형은, 주 네트워크(1) 상의 전자제어 기기들이 상태 변수를 서로 공유하기 위해 각 상태 변수와 그 값의 세트가 하나 이상 배열하는 형식으로 구성한 상태공유 메시지에 부가되는 메시지 유형과는 구분되는 값이다The subnetwork data handler 305 in the service adapting agent 300 is in a mode in which the direct sharing of the data block method is activated according to the command from the service processing unit 302, from the subnetwork 2 Whenever a data frame is received and a data block in the frame is acquired, the data block is used as a payload, and the message type and the aforementioned message ID identify that it is'directly shared subnetwork signal'. After configuring a header including a header and transposing it to the payload to form one message, it is directly transferred to the message handler 303 to request transmission to the main network 1. At this time, the message type to be transposed is a message type added to the state sharing message in a format in which one or more sets of state variables and their values are arranged in order for electronic control devices on the main network 1 to share state variables with each other. Is a distinct value

본 발명에 따른 일 실시예에서는, 서브 네트워크(2)로부터 수신되는 모든 데이터 프레임의 데이터 블록에 대해서 직공유하지 않고, 일부의 데이터 블록들에 대해서만 직공유할 수도 있다. 그리고, 직공유할 데이터 블록에 대한 지정은, 전술한 바와 같이 공유변수 프로파일에 의해 지정될 수 있다. 이때는, 공유할 데이터 블록들에 대해서 해당 블록 ID를 각각 지정하는 형식으로 공유변수 프로파일이 구성될 수 있다. 공유변수 프로파일의 정보가 이렇게 구성되면, 상기 서비스 처리부(302)는, 그 프로파일의 블록 ID 리스트를 그대로 상기 서브망 데이터 핸들러(305)에 전달하여 블록 직공유 목록으로 사용되게 한다. In an embodiment according to the present invention, data blocks of all data frames received from the sub-network 2 may not be directly shared, but only some data blocks may be directly shared. In addition, designation of the data block to be directly shared may be designated by the shared variable profile as described above. In this case, a shared variable profile may be configured in a format in which a corresponding block ID is respectively designated for data blocks to be shared. When the information of the shared variable profile is configured in this way, the service processing unit 302 transmits the block ID list of the profile as it is to the subnetwork data handler 305 to be used as a block direct sharing list.

다르게는, 전술한 바와 같이, 공유할 상태 변수들을 각기 지시하는 정보( 예를 들어, 상태변수명 또는 상태 변수에 대한 고유 코드 등 )가 리스트된 형식으로 구성된 공유변수 프로파일이 직공유에도 적용될 수 있다. 이 경우에는, 서비스 에이전트(200i)에 사전에 설정되는 것으로 설명한 데이터 블록 프로파일이, 상기 서비스 어댑팅 에이전트(300)에도 미리 설정된다. 따라서, 상기 서비스 처리부(302)는, 공유변수 프로파일에 등재되어 있는 각각의 상태 변수에 대해서 상기 서브망 데이터 핸들러(305)에 전달하면서 '직공유 설정'을 요청하게 된다. 이 설정요청에 따라, 상기 서브망 데이터 핸들러(305)는, 블록 직공유 목록에 필요 정보를 기입하고, 그 블록 직공유 목록에 기반한 상태변수 공유를 위한 동작을 수행한다. 이에 대해서는, 이후에 상세히 설명된다.Alternatively, as described above, a shared variable profile configured in a format in which information indicating each state variable to be shared (for example, a state variable name or a unique code for a state variable) is listed may be applied to direct sharing. . In this case, the data block profile described as being set in advance in the service agent 200 i is also set in advance in the service adapting agent 300. Accordingly, the service processing unit 302 transmits each state variable registered in the shared variable profile to the subnetwork data handler 305 and requests'direct sharing setting'. In response to this configuration request, the sub-network data handler 305 writes necessary information in the block direct sharing list, and performs an operation for sharing state variables based on the block direct sharing list. This will be described in detail later.

한편, '서브망 신호 직공유'로 지정된 메시지 유형의 상태공유 메시지에 패킹되어 공유를 위해 전송되는 데이터 블록은, 상태 변수들에 대해, 전술한 일 실시예에서의 '상태변수 공유'로 지정된 메시지 유형의 상태공유 메시지와는 다른 형식으로 해당 값들을 패킹(packing)하고 있다. 좀더 구체적으로, 데이터 블록은, 후술하는 바와 같이, 그 데이터 블록의 종류를 나타내는 식별자와, 그 식별자에 이어지는, 하나 또는 그 이상의 상태 변수들의 각각에 대하여 해당 상태 변수를 지시하는 정보없이 그 값들만이 각기 정해진 크기로 정해진 순서대로( 이는 데이터 블록의 종류에 따라 달리 지정될 수 있다. ) 연속적으로( 복수의 상태 변수들인 경우 ) 배열되어 채워진 부분으로 구성되어 있다.On the other hand, a data block packed in a state sharing message of a message type designated as'subnetwork signal direct sharing' and transmitted for sharing is a message designated as'state variable sharing' in the above-described embodiment for state variables. The values are packed in a format different from the type of state sharing message. More specifically, the data block is an identifier indicating the type of the data block, as will be described later, and only those values without information indicating the corresponding state variable for each of one or more state variables following the identifier. It consists of parts that are arranged and filled in a sequence with a predetermined size and in a predetermined order (this may be different depending on the type of data block).

상기 서브망 데이터 핸들러(305)는, 서브 네트워크(2)로부터 수취되는 데이터 프레임들로부터 추출되는 데이터 블록들이 기 정해진 수가 되었을 때 하나의 메시지로 구성하여 상기 메시지 핸들러(303)를 통해 상기 주 네트워크(1)로 전송할 수도 있다. 이 경우, 상기 메시지 핸들러(303)는, 메시지의 길이에 따라, 수송 프레임의 포맷을 다르게 할 수도 있다. 예를 들어, UDP 형식이 아닌 TCP 형식으로 프레임을 구성할 수도 있다.When the number of data blocks extracted from the data frames received from the sub-network 2 reaches a predetermined number, the sub-network data handler 305 is configured as a single message, and the main network ( You can also send to 1). In this case, the message handler 303 may change the format of the transport frame according to the length of the message. For example, frames can be configured in TCP format instead of UDP format.

한편, 데이터 프레임 내에서 추출한 데이터 블록의 데이터에 대해서 상태값 디비(320)에 반영되게 하는 동작은 전술하였던 실시예에서와 동일하게 진행된다. 다만, 상기 서비스 처리부(302)가 상기 상태값 디비(320)에서 갱신되는 값들을 확인하여, 그 갱신된 값들의 레거시 상태 변수들( 서브 네트워크(2)에 연결된 통상의 제어기기들이 처리하는 신호나 정보 또는 제어하는 물리량 등에 대해 정의된 상태 변수들 )을 전술한 바와 같이 공유하는 동작은 배제된다. 물론, 상기 상태값 디비(320)에서 소유주가 '로컬 상태 핸들러'로 지정된 상태 변수들, 즉 상기 어댑팅 기기(30)의 전속 주변부에 대한 상태변수들의 값이 갱신될 때에는, 그들에 대해서, 전술한 바와 같이 상태공유 메시지를 구성하여 주 네트워크(1)로 전송되게 함으로써 타 기기에 공유시키는 동작은 여전히 수행된다.Meanwhile, the operation of causing the data of the data block extracted from the data frame to be reflected in the state value DB 320 proceeds in the same manner as in the above-described embodiment. However, the service processing unit 302 checks the values updated in the status value DB 320, and the legacy status variables of the updated values (a signal or a signal processed by ordinary controllers connected to the sub-network 2) The operation of sharing information or state variables defined for the physical quantity to be controlled) as described above is excluded. Of course, when the values of the state variables designated by the owner as the'local state handler' in the state value DB 320, that is, the state variables for the exclusive peripheral part of the adapting device 30 are updated, As described above, by configuring the state sharing message to be transmitted to the main network 1, the operation of sharing to other devices is still performed.

본 발명에 따른 일 실시예에서는, 소유주가 '로컬 상태 핸들러'로 지정된 상태 변수들에 대하여 타 기기들에 공유시키기 위한 상태공유 메시지와 동일한 형식으로 구성할 수도 있다. 즉, 소유주가 '로컬 상태 핸들러'로 지정된 상태 변수들의 적어도 일부에 대해 그 값들을 공유하고자 할 때, 그 값만이 또는 그 값들만이 연속적으로 배열되는 데이터 블록으로 구성될 수도 있다. 물론, 이때 구성되는 데이터 블록의 식별자, 즉, 블록 ID는, 직공유를 위한 데이터 블록에 할당된 블록 ID들과는 다른 값이 하나 이상 할당되어 사용된다. 그리고, 그 블록 ID에 대해서도 하나 또는 그 이상의 상태 변수들의 배열 순서와 값의 크기 등에 대한 정보가, 서비스 에이전트에 사전에 설정되는 데이터 블록 프로파일에 정의되어 있게 된다.In an embodiment of the present invention, the owner may configure state variables designated as'local state handlers' in the same format as a state sharing message for sharing to other devices. That is, when the owner wants to share the values for at least some of the state variables designated as the'local state handler', only that value or only the values may be composed of a data block in which the values are continuously arranged. Of course, one or more values different from the block IDs allocated to the data block for direct sharing are allocated and used as the identifier of the data block, that is, the block ID. Also, for the block ID, information on the order of arrangement of one or more state variables and the size of a value is defined in a data block profile previously set in the service agent.

상기 메시지 핸들러(303)는, 상기 서브망 데이터 핸들러(305)로부터 전송 요청받은 직공유를 위한 메시지( 또는, 상기 서비스 처리부(302)로부터 수신되는, 상태 변수를 데이터 블록 포맷으로 공유하기 위한 메시지 )를 수송 프레임 내에 패킹(packing)한 후, 그 수송 프레임을 주 네트워크(1)를 통해 방송 프레임으로서 또는 다중 전송 방식으로 전송한다.The message handler 303 is a message for direct sharing received from the subnetwork data handler 305 (or a message for sharing a state variable in a data block format received from the service processing unit 302) After packing in a transport frame, the transport frame is transmitted through the main network 1 as a broadcast frame or in a multiple transmission method.

그러면, 상기 주 네트워크(1) 상의 모든 전자제어 기기들 내에서 각기 동작하고 있는 서비스 에이전트( 또는 다른 서비스 어댑팅 에이전트 )의 메시지 핸들러(203)는, 그 수송 프레임을 수신하여 그 프레임에서 메시지를 추출하고, 그 추출된 메시지의 헤더에 있는 메시지 유형으로부터 '서브망 신호 직공유'임을 인지하고, 메시지 유형 다음부터의 데이터, 즉, 다른 종류의 서브 네트워크(2) 상에서 데이터 프레임에 패킹되어 송수신되는 하나 이상의 데이터 블록을 상기 신호 매핑부(206)로 전달한다.Then, the message handler 203 of the service agent (or other service adapting agent) operating in all electronic control devices on the main network 1 receives the transport frame and extracts a message from the frame. And, from the message type in the header of the extracted message, it recognizes that it is'subnetwork signal direct sharing', and the data following the message type, that is, one that is packed in a data frame on another type of subnetwork 2 The above data block is transferred to the signal mapping unit 206.

그러면, 상기 신호 매핑부(206)는, 그 전달된 데이터 블록에 대해서, 또는 그 데이터 블록이 복수개 이면 그 각각의 블록을 분리하고 분리된 각 데이터 블록에 대해서, 기 설정되어 있는 데이터 블록 프로파일(240)을 참조로 하여, 그 블록의 데이터들이 각각 어떤 상태 변수에 대한 값인 지를 식별한다. 예를 들어, 데이터 블록은, 그 선단의 블록 ID에 따라, 어떤 물리량에 대한 신호나 정보들이 각기 얼마의 크기로 어떤 순서로 배열되어 있는 지가 정해져 있을 수 있으며, 이런 경우에, 상기 데이터 블록 프로파일(240)은, 각 블록 ID에 대해 얼마의 크기가 어떤 상태 변수에 대응되는 가를 순서대로 지정하고 있을 수 있다.Then, the signal mapping unit 206 separates each block for the transmitted data block or if the data block is plural, and for each separated data block, a preset data block profile 240 ), identify which state variable each data in the block is. For example, for a data block, according to the block ID of its tip, it may be determined in what order the signals or information for a certain physical quantity are arranged in what size and in what order. In this case, the data block profile ( 240) may sequentially designate what size of each block ID corresponds to which state variable.

상기 신호 매핑부(206)는, 수신된 데이터 블록에 대해서, 상기 데이터 블록 프로파일(240)에 근거하여, 각각의 값들을 분해하고 그 분해한 각각의 값이 어떤 상태 변수에 대응되는 지를 파악한 후, 도 5b와 같이 구축된 상태값 디비 세트(500)에서, 해당되는 상태 변수가 속하는 공유 상태값 디비(230i, i=1,..,NN)에서 그 상태 변수의 값을 갱신하여 기록하게 된다.The signal mapping unit 206, based on the data block profile 240 for the received data block, decomposes each value and determines which state variable the decomposed value corresponds to, In the state value DB set 500 constructed as shown in FIG. 5B, the value of the state variable is updated and recorded in the shared state value DB (230 i , i = 1, .., NN) to which the corresponding state variable belongs. .

이상에서 설명한 과정이, 상기 주 네트워크(1)에 연결된 모든 전자제어 기기( 또는 다른 어댑팅 기기 )에서 동작 중인 서비스 에이전트( 또는 다른 서비스 어댑팅 에이전트 )에서 진행됨으로써, 서브 네트워크(2)에 연결되어 있는 통상의 제어기기들이 처리하는 신호나 정보, 또는 제어하는 물리량에 대한 값들이 그 서브 네트워크(2)를 관할하는 서비스 어댑팅 에이전트(300)에 의해 다른 기기들에 실시간으로 공유된다. 따라서, 다른 전자제어 기기 또는 다른 어댑팅 기기에서 실행 중인 응용 프로그램이, 그 서브 네트워크(2) 상의 통상의 제어기기에서 처리하거나 제어하는 특정의 물리량에 대해서, 네트워크를 경유하는 메시지의 교환없이 동 기기에서 바로 그 값을 조회할 수 있게 된다.The process described above is performed by the service agent (or other service adapting agent) operating in all electronic control devices (or other adapting devices) connected to the main network 1, thereby being connected to the sub-network 2 Signals or information processed by existing controllers, or values for physical quantities controlled by the sub-network 2 are shared with other devices in real time by the service adapting agent 300 in charge of the sub-network 2. Therefore, an application program running in another electronic control device or another adapting device, for a specific physical quantity processed or controlled by an ordinary controller device on the sub-network 2, the same device without exchanging messages via the network. You will be able to retrieve the value directly from.

한편, 임의의 한 에이전트가, 전술한 바와 같이 다른 기기들에 공유하고자 전송하는 상태공유 메시지에 실린 정보는, 특정 기기에서만 필요하고 다른 기기들에서는 필요치 않을 수 있다. 즉, 연료 잔류량을 포함하는 연료 공급계통으로 분류된 그룹의 상태 변수들에 대한 값들이 임의의 한 기기에서만 실행되고 있는 응용 프로그램이 필요로 할 때, 연료 공급계통에 대한 그룹의 상태 변수들을 전담하는 에이전트가 해당 그룹에 대하여 상태공유 메시지를 전송하면, 한 기기에서만 그 상태공유 메시지가 의미가 있을 뿐, 다른 기기들은 그 상태공유 메시지의 수신과 취사여부의 판별을 위해 자원을 불필요하게 사용하게 된다.Meanwhile, as described above, information contained in a state sharing message transmitted by an agent to be shared with other devices may be necessary only in a specific device and may not be necessary in other devices. That is, when the values for the group's state variables classified as the fuel supply system including the fuel residual amount are needed by an application program running only in one device, the group's state variables for the fuel supply system are dedicated. When an agent transmits a state sharing message to the group, the state sharing message is meaningful only in one device, and other devices use resources unnecessarily to determine whether to receive and cook the state sharing message.

따라서, 본 발명에 따른 일 실시예에서는, 상태 변수들을 공유함에 있어서, 해당 상태 변수를 필요로 하는 기기들에 대해서만 공유를 할 수 있다. 도 9는, 본 실시예에 따른, 상태 변수 공유를 위한 기기들 간의 신호 흐름도를 예시한 것이다.Accordingly, in an embodiment of the present invention, in sharing state variables, only devices that require the state variable may be shared. 9 is a diagram illustrating a signal flow diagram between devices for sharing a state variable according to the present embodiment.

도 9에 따른 실시예에서는, 전자제어 기기들(20i, i=l,m,..)에서 실행되는 응용 프로그램들(10i_j, i=l,m,.., j=x,y,..)이 그 실행 초기에, 자신이 의도하는 기능을 수행하기 위해 필요로 하는 상태 변수들에 대해서, 동일 기기 내의 서비스 에이전트(200i, i=l,m,..)에, "ReqOBJs.Set(Statea,Stateb,..)"( 여기서, Statea, Stateb 등은 의도된 동작을 위해 필요로 하는 상태 변수들을 유일 식별케 하는 각각의 명칭을 나타낸다. )와 같은 형식의 서비스 기반의 등록 요청을 한다(S81a,S81b). 이때의 등록 요청은, 조회가 그 대상이 되는 상태 변수들에 한하여 할 수도 있다. 즉, 의도된 동작에서 조회는 요구되지 않고 설정만을 요구하게 되는 상태 변수가 있다면 이러한 상태 변수는 등록 요청에서 제외될 수 있다.In the embodiment according to FIG. 9, application programs 10 i_j , i=l,m,.., j=x,y, executed in electronic control devices 20 i , i=l,m,.. ..) at the beginning of its execution, for the state variables needed to perform its intended function, to the service agent (200 i , i = l, m, ..) in the same device, "ReqOBJs. Set(State a ,State b ,..)"( Here, State a , State b, etc. represent each name that uniquely identifies the state variables required for the intended operation.) Request for registration of (S81a, S81b). The registration request at this time may be made only to the state variables for which the inquiry is targeted. In other words, if there is a state variable that requires only setting and not an inquiry in the intended operation, such a state variable can be excluded from the registration request.

상기와 같은 등록 요청은, 서비스 인터페이스부(201)에 의해 수신되고, 그 서비스 인터페이스부(201)는, 고유 프로파일(210)( 또는, 공유에 의해 구축된 서비스 프로파일 세트(400) )을 참조하여, 등록 요청한 상태 변수들 중에서, 레거시 상태 변수가 아닌 상태 변수들을 구분한다. 그리고, 이렇게 구분된 타 기기 전담 상태변수들에 대해서는, 서비스 처리부(202)에 상태 변수들에 대한 공유등록 요청으로서 전달한다.The registration request as described above is received by the service interface unit 201, and the service interface unit 201 refers to the unique profile 210 (or the service profile set 400 constructed by sharing). , Among the state variables requested for registration, state variables that are not legacy state variables are identified. And, the state variables dedicated to other devices classified as described above are transmitted to the service processing unit 202 as a request for shared registration of the state variables.

그러면, 상기 서비스 처리부(202)는, 공유등록 요청임을 식별케 하는 메시지 유형으로써, 그 전달받은 상태 변수들을 포함하는 메시지를 구성한 후, 메시지 핸들러(203)에 방송 방식으로의 전송을 요청하고, 이 요청에 따라 공유등록 요청의 메시지를 실은 수송 프레임이 상기 주 네트워크(1)를 통해 방송으로서 전송된다(S82a,S82b). 물론, 이러한 공유등록 요청을 위한 동작은, 상기 서비스 어댑팅 에이전트(300)가 구비된 어댑팅 기기(30)에 응용 프로그램이 실행되는 경우에도 마찬가지로 이루어진다. Then, the service processing unit 202 constructs a message including the received state variables as a message type that identifies the request for sharing registration, and then requests the message handler 203 to transmit the message in a broadcast manner. In accordance with the request, a transport frame carrying a message of a share registration request is transmitted as a broadcast through the main network 1 (S82a, S82b). Of course, the operation for requesting shared registration is similarly performed even when an application program is executed on the adapting device 30 equipped with the service adapting agent 300.

상기 주 네트워크(1) 상의 모든 기기들에서 각기 동작 중인 서비스 어댑팅 에이전트(300) 또는 서비스 에이전트(200i, i=1,..,N)의 메시지 핸들러(303,203)는, 그 방송 프레임 내의 메시지를 추출하고, 그 추출한 메시지 내의 메시지 유형으로부터 상태공유 등록요청 메시지임을 식별하며, 그에 따라 해당 메시지 내용을 서비스 처리부(303,203)에 전달한다. 이때, 그 방송 프레임의 송신지의 노드 주소도 함께 전달한다.The service adapting agent 300 or the message handlers 303 and 203 of the service agents 200 i , i = 1,..,N respectively operating in all devices on the main network 1, the message in the broadcast frame. Is extracted, the message type in the extracted message is identified as a status sharing registration request message, and the contents of the message are transmitted to the service processing units 303 and 203 accordingly. At this time, the node address of the transmission destination of the broadcast frame is also transmitted.

그러면, 상기 서비스 처리부(302,202)는, 그 전달된 메시지 내용에서 각각의 상태 변수들을 추출하고, 그 추출된 상태 변수들에 대하여, 로컬 상태값 디비를 검색하여 자신이 전담하는 상태 변수에 해당하는 상태 변수가 있는 지를 확인한다. 레거시 상태변수에 해당하는 항목이 있으면, 상기 서비스 처리부(302,202)는, 그 항목의 상태 변수에 대하여, 상태공유를 위한 기기정보( 이하, '공유처 정보'라 칭한다. )를 부가한다. Then, the service processing units 302 and 202 extract each state variable from the content of the transmitted message, search for the local state value DB for the extracted state variables, and state the state variable corresponding to the state variable in charge of itself. Check if there is a variable. If there is an item corresponding to the legacy state variable, the service processing units 302 and 202 add device information for state sharing (hereinafter, referred to as'share destination information') to the state variable of the item.

도 10a는, 본 실시예에 따라 구성되는 로컬 상태값 디비(900)에 대한 구성의 일 예를 나타낸 것으로서, 값을 공유하게 될 상태 변수들에 대해 필요 정보를 기재할 수 있는 공유처 정보필드 블록(910)이 더 포함되어 구성된다. 상기 공유처 정보필드 블록(910)은, 각 상태 변수에 대하여, 공유할 기기의 수와 그 수만큼의 기기들에 대한 노드 주소를 기입하기 위한 필드로 구성되어 있다.10A is a diagram showing an example of the configuration of the local state value DB 900 configured according to the present embodiment, and a shared destination information field block capable of describing necessary information for state variables to be shared with values 910 is further included. The shared destination information field block 910 is composed of a field for writing the number of devices to be shared and node addresses for the number of devices for each state variable.

상기 서비스 처리부(302,202)는, 상기 메시지 핸들러(303,203)로부터 수신되는 모든 상태공유 등록요청 메시지에 대해서, 도 10a의 로컬 상태값 디비(900)에서와 같이, 공유처 정보를 기록하게 되고, 각각의 상태공유 등록요청 메시지에 대해서는, 그 중 공유처 정보를 기록하게 된 상태 정보들로써, 그 상태공유 등록요청 메시지에 대한 응답 메시지를 구성하여 메시지 핸들러(303,203)로 그 전송을 요청한다. 이 요청에 따라, 상기 메시지 핸들러(303,203)는, 그 응답 메시지를, 상태공유 등록요청 메시지를 발신한 기기(20i, i=l,m,..)로 각각 전송한다(S83a,S83b).The service processing units 302 and 202 record sharing destination information, as in the local state value DB 900 of FIG. 10A, for all state sharing registration request messages received from the message handlers 303 and 203, respectively. As for the state sharing registration request message, a response message to the state sharing registration request message is constructed as state information in which the sharing destination information is recorded, and the transmission is requested to the message handlers 303 and 203. In response to this request, the message handlers 303 and 203 transmit the response message to the devices 20 i , i = l, m, .. that sent the state sharing registration request message, respectively (S83a, S83b).

이 응답 메시지를 실은 수송 프레임은 목적지 기기(20i, i=l,m,..)의 서비스 에이전트(200i, i=l,m,..)에 의해 수신되어, 메시지 핸들러(203)를 통해 서비스 처리부(202)로 전달된다. 이러한 식으로 공유를 요청한 상태 변수(들)를 각기 전담하는 하나 이상의 기기로부터 전송되는 응답 메시지에 대해서, 상태공유 등록요청 메시지를 전송한 서비스 처리부(202)는, 그 응답 메시지에 실려 있는 상태 변수들을 취합하면서, 자신이 상태공유 등록요청 메시지에 실어서 전송한 상태 변수들이 모두 취합되는 지를 확인한다. In fact, the transport frame with a response message is received by the destination device (20 i, i = l, m, ..) of the service agents (200 i, i = l, m, ..), the message handler 203 It is transmitted to the service processing unit 202 through the. In this way, with respect to the response message transmitted from one or more devices dedicated to each of the state variable(s) requesting sharing, the service processing unit 202 that transmitted the state sharing registration request message includes the state variables included in the response message. During the aggregation, it checks whether all the state variables transmitted by itself in the state sharing registration request message are collected.

각각의 응답 메시지로부터 취합된 상태 변수들이, 공유 등록을 요청한 상태 변수들과 일치하면, 상기 서비스 처리부(202)는, 응용 프로그램(10i_j, i=l,m,.., j=x,y,..)으로부터의 서비스 기반의 상태변수 등록요청에 대해 '성공'을 알리는 리턴을 하도록 서비스 인터페이스부(201)에 요청하고, 만약, 주 네트워크(1)로 상태공유 등록요청 메시지를 전송한 시점으로부터 기 지정된 제한시간이 경과할 때까지, 응답 메시지들로부터 취합된 상태 변수들이 공유등록을 요청한 상태 변수들보다 부족하면, 제한시간이 경과된 시점에, 응답되지 않은( 또는 응답된 ) 상태 변수들을 인자로 하여 '일부 등록실패'를 알리는 리턴을 하도록 서비스 인터페이스부(201)에 요청한다(S84a,S84b). When the state variables collected from each response message coincide with the state variables requested for sharing registration, the service processing unit 202, the application program 10 i_j , i=l,m,.., j=x,y When requesting the service interface unit 201 to return notifying'success' to the service-based state variable registration request from ,..), and, if it is, the time when the state sharing registration request message is transmitted to the main network 1 When the state variables collected from the response messages are less than the state variables requested for shared registration until a preset time limit elapses, the unanswered (or responded) state variables at the time limit elapsed. A request is made to the service interface unit 201 to return notifying'partial registration failure' as a factor (S84a, S84b).

만약, 응용 프로그램이, 일부 등록실패를 서비스 인터페이스부(201)를 통해 리턴받게 되면, 그 등록실패한 상태 변수는, 일시적인 통신 장애에 따라 공유 등록이 정상적으로 진행되지 않은 것일 수 있으므로, 상태변수 등록요청을 재시도를 하거나, 해당 네트워크에서 전담하는 기기가 없음에 따른 것일 수 있으므로, 해당 상태 변수와 관련된 동작, 즉 조회나 설정의 요청은 수행하지 않게 될 것이다.If the application program returns some registration failures through the service interface unit 201, the status variable that has failed to register may be that the shared registration has not been normally performed due to a temporary communication failure. Since it may be due to retrying or the absence of a device dedicated to the network, an operation related to the state variable, that is, a request for inquiry or setting, will not be performed.

전술한 실시예에서는, 타 기기 전담 상태변수들에 대해서 방송 방식으로 공유등록 요청 메시지를 전송함으로써 주 네트워크(1) 상의 모든 기기들로 하여금 그 메시지에 실린 상태 변수들에 자신의 레거시 상태변수가 있는 지를 확인하고, 그 확인 결과에 따라 자신의 로컬 상태값 디비에 공유처 정보를 부가하도록 하였다. 하지만, 본 발명에 따른 다른 실시예에서는, 타 기기 전담 상태변수들에 대해서, 대상 기기를 지정하여 개별적으로 공유등록 요청 메시지를 전송할 수도 있다. 본 실시예에서는, 상기 서비스 처리부(202)가, 상기 서비스 인터페이스부(201)로부터 전달받은 타 기기 전담 상태변수들에 대해서, 동일한 공유 프로파일(211,212,213,..)에 등재된 상태 변수들끼리 분류하고, 그 분류된 각 그룹마다, 상태 변수들에 대해 공유등록을 요청하는 메시지를 구성하고, 해당 공유 프로파일에 기록되어 있는 노드 주소와 함께 상기 메시지 핸들러(203)에 전달하면서 그 전송을 요청하게 된다. 이에 따라, 공유등록 요청 메시지는, 공유할 상태 변수를 전담하는 기기에 개별적으로 전송되어 전술한 바와 같이 공유처 정보가 로컬 상태값 디비에 반영된다.In the above-described embodiment, by transmitting a share registration request message in a broadcast method for state variables dedicated to other devices, all devices on the main network 1 have their own legacy state variables in the state variables loaded in the message. After checking that, according to the result of the check, the shared destination information was added to the DB of the local state value. However, in another embodiment according to the present invention, it is possible to individually transmit a sharing registration request message by designating a target device with respect to state variables dedicated to other devices. In the present embodiment, the service processing unit 202 classifies the state variables registered in the same shared profile 211, 212, 213, .. with respect to the state variables dedicated to other devices received from the service interface unit 201, and classifies them with each other. , For each of the classified groups, a message for requesting shared registration for state variables is configured, and the transmission is requested while transmitting to the message handler 203 along with the node address recorded in the corresponding shared profile. Accordingly, the sharing registration request message is individually transmitted to the device in charge of the state variable to be shared, and the sharing destination information is reflected in the local state value DB as described above.

이상에서 설명한 바와 같은 방법에 따라, 각각의 전자제어 기기( 또는 어댑팅 기기 )로부터의 상태공유 등록요청에 의해, 각 기기의 에이전트(300,200i)가, 도 10a에 예시된 바와 같이, 자신이 전담하는 상태 변수들에 대해 로컬 상태값 디비(900)를 구축한 후에는, 공유처 정보가 부기된 상태 변수에 대해서는 그 값이 변할 때, 공유할 해당 기기에, 즉 해당 기기의 에이전트에 통지하게 된다. According to the method described above, by a state sharing registration request from each electronic control device (or adapting device), the agent 300,200 i of each device is in charge of itself, as illustrated in FIG. 10A. After building the local state value DB 900 for the state variables to be shared, when the value of the state variable to which the shared destination information is added changes, the device to be shared is notified, that is, to the agent of the device. .

본 실시예에서는, 서비스 에이전트(200i, i=1,..,N)의 로컬 상태 핸들러(204)가, 해당 기기의 전속 주변부에서 감지, 검출 또는 획득하는 값에 대해, 해당되는 상태 변수의 값으로서, 상기 로컬 상태값 디비(900)에 기록할 때, 그 기록되는 값의 항목을 지시하는 인덱스를 서비스 처리부(202)에 통지한다. 다르게는, 상기 로컬 상태 핸들러(204)가 현 시점에 감지된 또는 획득된 값을, 해당 상태 변수에 대해 현재 기록되어 있는 값과 비교하고 동일하지 않을 때만, 그 감지 또는 획득된 값을 해당 상태 변수의 값으로서 갱신 기록하면서 해당 항목을 가리키는 인덱스를 상기 서비스 처리부(202)에 통지할 수도 있다.In this embodiment, the local state handler 204 of the service agent (200 i , i = 1,...,N) detects, detects, or acquires values from the peripheral part of the corresponding device. As a value, when recording in the local state value DB 900, an index indicating an item of the recorded value is notified to the service processing unit 202. Alternatively, the local state handler 204 compares the detected or acquired value at the present time with the value currently recorded for the corresponding state variable, and only when not the same, the detected or acquired value is compared to the corresponding state variable. It is also possible to notify the service processing unit 202 of an index indicating a corresponding item while being updated as a value of.

만약, 서비스 어댑팅 에이전트(300)라면, 로컬 상태 핸들러(304)가 전술한 방법에 따라 통지하는 로컬 상태값 디비(900)에 대한 인덱스 외에, 서브망 데이터 핸들러(305)로부터도 로컬 상태값 디비(900)에 대한 인덱스를 통지받을 수 있다. 서비스 어댑팅 에이전트(300)에서는, 상기 서브망 데이터 핸들러(305)도, 서브 네트워크(2)로부터 수신되는 데이터 블록에 대해서 그 데이터를 분석하여 각각의 신호나 정보를 분리하여, 상기 로컬 상태값 디비(900)의 해당되는 상태 변수의 값으로서 기록하면서 동시에 해당 상태 변수의 항목을 상기 서비스 처리부(302)에 통지하게 된다. 이 경우에도, 현재 기록되어 있는 값과 기록할 값이 서로 다를 때에 한하여, 해당 상태 변수에 대한 인덱스를 상기 서비스 처리부(302)에 통지할 수 있다.If the service adapting agent 300, in addition to the index for the local status value DB 900 notified by the local status handler 304 according to the above-described method, the local status value DB also from the subnetwork data handler 305 The index for 900 may be notified. In the service adapting agent 300, the subnetwork data handler 305 also analyzes the data for a data block received from the subnetwork 2 and separates each signal or information, and the local state value DB While recording as the value of the corresponding state variable of 900, the item of the corresponding state variable is notified to the service processing unit 302. Even in this case, only when the currently recorded value and the value to be recorded are different from each other, the service processing unit 302 can be notified of the index for the corresponding state variable.

본 발명의 일 실시예에 따라, 임의의 한 상태 변수에 대하여 그 값이 변경됨으로써(도 9의 E01), 상기 로컬 상태값 디비(900)에 대한 인덱스를 통지받으면, 상기 서비스 처리부(302,202)는, 해당 항목의 상태 변수에 대한 값을 읽어서 이벤트성 공유 메시지를 구성한다. 이 이벤트성 공유 메시지는, 메시지 유형에 의해 지정되고, 현 시점에 변경된 상태 변수와 그 변수의 값을 포함하며, 그 인덱스에 의해 지시되는 항목의 공유처 정보를 참조하여 각 공유처별로 구성된다. 이렇게 공유처별로 구성된 이벤트성 공유 메시지에 대해서, 공유처 정보에서 얻은 해당 메시지의 수신지 주소, 즉 노드 주소를 메시지 핸들러(303,203)에 전달하면서 주 네트워크(1)로의 전송을 요청한다.According to an embodiment of the present invention, when the value of a state variable is changed (E01 in FIG. 9), and when an index for the local state value DB 900 is notified, the service processing units 302 and 202 , Compose an event sharing message by reading the value of the state variable of the corresponding item. The event sharing message is designated by a message type, includes a state variable changed at the present time and a value of the variable, and is configured for each shared destination by referring to shared destination information of an item indicated by the index. For the event sharing message configured for each shared destination, the destination address of the corresponding message obtained from the shared destination information, that is, the node address, is transmitted to the message handlers 303 and 203, and transmission to the main network 1 is requested.

이 요청에 따라, 그 이벤트성 공유 메시지를 실은 수송 프레임이 상기 메시지 핸들러(303,203)에 의해 구성되어 주 네트워크(1)로 전송됨으로써(S85a,S85b), 앞서 해당 상태 변수에 대해서 상태공유 등록요청을 한 에이전트(200i, i=l,m,..)에 전달된다. 그러면, 그 에이전트의 서비스 처리부(202)는, 메시지 핸들러(203)로부터 수신된 이벤트성 공유 메시지에 실린 상태 변수와 그 값을 추출하여, 도 5b에 예시된 바와 같이 구축된, 공유 상태값 디비들(230i, i=1,..,NN)에서 그 상태 변수가 속한 그룹내의 해당 상태 변수의 값을 갱신함으로써, 해당 상태 변수의 현재 값을 미리 공유해 두게 된다(P86a,P86b).In response to this request, a transport frame carrying the event sharing message is configured by the message handlers 303 and 203 and transmitted to the main network 1 (S85a, S85b), so that a state sharing registration request for the corresponding state variable is previously requested. It is delivered to an agent (200 i , i = l,m,..). Then, the service processing unit 202 of the agent extracts the state variable and its value contained in the event-related shared message received from the message handler 203, and is constructed as illustrated in FIG. 5B. By updating the value of the corresponding state variable in the group to which the state variable belongs at (230 i , i = 1,..,NN), the current value of the corresponding state variable is shared in advance (P86a, P86b).

전술한 이벤트성 공유의 설명에서는, 값이 변경된 상태 변수(State4)에 대해 상태공유 등록요청을 한 기기가 복수개를 전제한 것이고, 값이 변경된 상태 변수가 생겼을 때(도 9의 E02), 그 상태 변수(State2)에 대해 상태공유 등록요청을 한 기기가 단일이면, 당연히 그 기기에 대해서만 이벤트성 공유 메시지가 전송되어(S87), 해당 기기의 서비스 에이전트(200m)에서만, 공유 상태값 디비의 해당 상태 변수에 그 값이 갱신됨으로써 공유된다(P88).In the description of event sharing described above, it is assumed that a plurality of devices requesting state sharing registration for a state variable whose value has changed (State 4 ) is assumed, and when a state variable whose value has been changed occurs (E02 in FIG. 9), If the device that requested the state sharing registration for the state variable (State 2 ) is a single device, of course, an event sharing message is transmitted only to that device (S87), and only the service agent of the device (200 m ), the shared state value DB It is shared by updating its value to the corresponding state variable of (P88).

전술한 실시예는, 임의의 전자제어 기기( 또는 어댑팅 기기 )에서 실행되는 응용 프로그램들이 의도하는 고유의 기능들을 위해 필요로 하는 상태 변수들에 대해서, 레거시 상태 변수가 아닌 것들에 대해서 타 기기에 상태공유 등록요청을 함으로써, 그러한 상태 변수들의 값에 변화가 있을 때, 이벤트성으로 개별적으로 통지받아 상태 변수들을 공유하는 방식이다. 이러한 공유 방식은, 전술하였던 바와 같이, 해당 상태 변수가, 서브 네트워크(2)에 연결된 통상의 제어기기들이 처리하는 신호, 정보 또는 제어코자 하는 물리량에 대해 지정되어 상기 서비스 어댑팅 에이전트(300)가 전담하는 것일 때도 동일하게 적용된다.In the above-described embodiment, application programs running in any electronic control device (or adapting device) are used for state variables that are required for the intended unique functions, and for other devices that are not legacy state variables. By making a state sharing registration request, when there is a change in the values of such state variables, they are individually notified as an event and share state variables. In this sharing method, as described above, a corresponding state variable is designated for a signal, information, or a physical quantity to be controlled by ordinary controllers connected to the sub-network 2 so that the service adapting agent 300 The same applies when it is dedicated.

하지만, 서비스 어댑팅 에이전트(300)가 관할하는 서브 네트워크(2) 상의 통상의 제어기기들에 대한 상태 변수들에 대해서는, 전술한 바와는 다른 본 발명의 일 실시예에 따른 방법으로 다른 기기의 서비스 에이전트( 또는 다른 서비스 어댑팅 에이전트 )에 공유될 수 있다. 이하에서는, 본 실시예에 대해 구체적으로 설명한다.However, with respect to the state variables of the general controllers on the sub-network 2 under the jurisdiction of the service adapting agent 300, the service of other devices is performed by a method according to an embodiment of the present invention different from that described above. It can be shared with an agent (or other service adapting agent). Hereinafter, this embodiment will be described in detail.

본 실시예에서는, 앞서 설명한 본 발명의 일 실시예에서와 같이, 서비스 어댑팅 에이전트(300)가 서브 네트워크(2)에 실리는 데이터 프레임으로부터 수취하는 데이터 블록을 그대로 수송 프레임에 패킹하여 주 네트워크(1)로 전송하는 방식에 의해 다른 기기(들)에 공유되며, 서비스 어댑팅 에이전트(300)에는, 앞선 실시예에서 설명한 데이터 블록 프로파일(240)이 구비되고, 또한, 각 서비스 에이전트(200i, i=1,..,N)는, 그 데이터 블록 프로파일을 구비하여 그 프로파일의 정보를 참조하여 동작하는 전술한 바의 신호 매핑부(206)의 구성요소를 더 포함하여 구성된다.In this embodiment, as in the embodiment of the present invention described above, the service adapting agent 300 packs the data block received from the data frame loaded on the sub-network 2 into the transport frame as it is, and 1) is shared with other device(s) by a transmission method, and the service adapting agent 300 is provided with the data block profile 240 described in the previous embodiment, and each service agent 200 i , i=1,..,N) further includes a component of the above-described signal mapping unit 206 that has the data block profile and operates by referring to information of the profile.

그리고, 상기 서비스 어댑팅 에이전트(300)의 서비스 처리부(302)는, 다른 기기들로부터 수신되는 상태공유 등록요청 메시지에 대해서, 그 메시지 내의 상태 변수들의 각각을 구축된 로컬 상태값 디비(320)에서 검색하여 그 소유주를 해당 필드에서 확인한다. 소유주에 '서브망 데이터 핸들러'를 나타내는 값이 지정되어 있는 상태 변수이면, 상기 서비스 처리부(302)는, 그 메시지의 송신지 주소와 해당 상태 변수를 서브망 데이터 핸들러(305)에 전달하면서 '직공유 설정'을 요청한다.And, the service processing unit 302 of the service adapting agent 300, with respect to the state sharing registration request message received from other devices, each of the state variables in the message in the built-in local state value DB 320 Search and identify its owner in the field. If a value representing the'subnetwork data handler' is specified in the owner, the service processing unit 302 transmits the address of the message and the corresponding state variable to the subnetwork data handler 305, Request'Share Settings'.

이러한 직공유 설정의 요청이 있으면, 상기 서브망 데이터 핸들러(305)는, 기 구비하고 있는 상기 데이터 블록 프로파일을 참조하여, 직공유 설정 요청된 상태 변수가 어떤 블록 ID의 데이터 블록에 실리는 신호에 대한 것인 지를 파악한다. 이렇게, 직공유 설정 요청된 상태 변수에 대해서 블록 ID가 파악되면, 그 설정 요청에 함께 전달된 송신지 주소와 함께, 도 10b에 예시된 바와 같은 구조의 블록 직공유 목록(920)을 구축한다.When there is a request for such direct sharing setting, the sub-network data handler 305 refers to the previously provided data block profile, and the state variable requested for direct sharing setting is transmitted to a signal loaded in a data block of a certain block ID. Find out if it's about. In this way, when the block ID of the state variable requested for direct sharing setting is identified, a block direct sharing list 920 having a structure as illustrated in FIG. 10B is constructed together with the source address transmitted with the setting request.

직공유 설정의 요청에 따라, 해당 블록 ID를 블록 직공유 목록(920)에 새로운 항목으로 등재할 수도 있지만(921), 기존 등재된 해당 블록 ID의 항목에, 공유할 노드의 수를 증가시키고 설정 요청에 의해 전달된 노드 주소를 부가할 수도 있다(922). 또한, 직공유 설정 요청된 상태 변수에 대해 확인된 블록 ID가 이미 하나의 항목으로 등재되어 있으면서 동시에 그 항목에 동일 노드 주소가 부가되어 있을 수도 있다. 이는, 동일한 블록 ID로써 구성되는 데이터 블록에 함께 포함되는 서로 다른 물리량의 신호에 대해, 하나의 기기에서 각각의 상태 변수로서 상태공유 등록요청을 함에 기인한다.In response to the direct sharing setting request, the block ID may be registered as a new item in the block direct sharing list 920 (921), but the number of nodes to be shared is increased and set in the existing registered block ID item. The node address transmitted by the request may be added (922). In addition, it is possible that the block ID checked for the state variable requested for direct sharing setting is already registered as an item and the same node address is added to the item at the same time. This is because, for signals of different physical quantities included in a data block constituted by the same block ID, a state sharing registration request is requested as each state variable in one device.

어떤 경우이든, 직공유 설정 요청에 대해서 상기 블록 직공유 목록(920)에 해당 블록 ID를 새로이 등재하거나 기존 등재가 확인되면, 상기 서브망 데이터 핸들러(305)는, 그 직공유 설정 요청에 대해 '완료'를 상기 서비스 처리부(302)에 통지하고, 그 통지에 따라 상기 서비스 처리부(302)는, 전술한 실시예에서와 같이, 해당 상태 변수에 대한 상태공유 등록요청 메시지에 대한 응답 메시지를 구성하여 메시지 핸들러(303)로 그 전송을 요청함으로써, 그 응답 메시지가, 해당 상태 변수에 대해 상태공유 등록요청 메시지를 발신한 기기로 전송되게 한다.In any case, when a corresponding block ID is newly listed in the block direct sharing list 920 or an existing listing is confirmed for the direct sharing configuration request, the subnetwork data handler 305 responds to the direct sharing configuration request. Completion' is notified to the service processing unit 302, and according to the notification, the service processing unit 302 constructs a response message to a state sharing registration request message for the corresponding state variable, as in the above-described embodiment. By requesting the transmission of the message handler 303, the response message is transmitted to the device that sent the state sharing registration request message for the corresponding state variable.

한편, 전술한 바와 같이, 상태공유 등록요청 메시지에 실린 상태 변수에 대해, 그 상태 변수에 대응하는 신호가 실리는 데이터 블록의 블록 ID를 확인하고, 그 확인에 따라, 도 10b에 예시된 바와 같이 블록 직공유 목록(920)을 구축하는 동작을, 상기 서비스 처리부(302)가 수행할 수 있다. 이러한 실시예에서는, 구축된 블록 직공유 목록(920)을 참조할 수 있는 인덱스 정보를 상기 서브망 데이터 핸들러(305)에 공유하면서 블록 직공유 방식을 활성화시킬 수 있다.Meanwhile, as described above, with respect to the state variable carried in the state sharing registration request message, the block ID of the data block carrying the signal corresponding to the state variable is checked, and according to the confirmation, as illustrated in FIG. 10B. The service processing unit 302 may perform an operation of constructing the block direct sharing list 920. In this embodiment, the block direct sharing method can be activated while sharing index information that can refer to the built block direct sharing list 920 to the subnetwork data handler 305.

도 10b에 예시된 바와 같은 구조의 블록 직공유 목록(920)이 구축되고, 상기 서브망 데이터 핸들러(305)가 이를 참조할 수 있는 상태이면, 상기 서브망 데이터 핸들러(305)는, 서브 네트워크(2)로부터 데이터 프레임이 수신될 때마다, 그 프레임 내의 데이터 블록을 추출한 후, 그 블록 ID를 상기 블록 직공유 목록(920)에서 검색하고, 그 목록(920)에 하나의 항목으로 등재된 블록 ID이면, 그 블록 ID에 부가되어 있는 하나 이상의 노드 주소를 읽어서, 추출한 데이터 블록과 함께 메시지 핸들러(303)으로 전달하면서 각 노드 주소로의 전송을 요청한다. 물론, 그 추출한 데이터 블록에 포함된 값들에 대해서, 로컬 상태값 디비(320)에 반영하는 동작은 기존과 동일하게 이루어진다.When the block direct sharing list 920 having the structure as illustrated in FIG. 10B is constructed and the subnetwork data handler 305 can refer to it, the subnetwork data handler 305 is 2) Whenever a data frame is received from, after extracting a data block in the frame, the block ID is retrieved from the block direct sharing list 920, and the block ID registered as an item in the list 920 In this case, one or more node addresses added to the block ID are read and transmitted to the message handler 303 along with the extracted data block, and transmission to each node address is requested. Of course, the operation of reflecting the values included in the extracted data block to the local state value DB 320 is the same as before.

상기 메시지 핸들러(303)가 전달받은 데이터 블록을 주 네트워크(1)를 통해 하나 이상의 다른 기기가 그 블록내의 값들을 공유하도록 수송 프레임으로 구성하여 전송하는 방식은 전술한 실시예에서와 동일한다. The message handler 303 configures and transmits the received data block as a transport frame so that one or more other devices share values in the block through the main network 1 and transmit the same as in the above-described embodiment.

이렇게 전송된 수송 프레임은, 그 목적지로 지정된 기기에서 동작 중인 서비스 처리부(200i, i=1,..,N)( 또는, 다른 서비스 에이전트의 서비스 처리부 )만 수취하게 되고, 이렇게 수취된 수송 프레임은, 해당 에이전트의 메시지 핸들러(203,303)에 의해 패킹된 메시지가 추출되고, 그 메시지 선단의 메시지 유형으로부터 '서브망 신호 직공유'임을 인지하고, 메시지 유형 다음부터의 데이터 블록을, 동 에이전트 내의 신호 매핑부로 전달한다. 이 신호 매핑부가 그 데이터 블록을 분석 처리하여, 해당 상태 변수들을 공유 상택값 디비에 반영하는 방법은 전술한 바와 동일하다.The transport frame thus transmitted is received only by the service processing unit (200 i , i = 1,..,N) (or the service processing unit of another service agent) operating in the device designated as the destination, and the transport frame thus received Is, the message packed by the message handlers (203, 303) of the agent is extracted, recognizes that the message type at the front end of the message is'subnetwork signal direct sharing', and the data block following the message type is transferred to the signal in the agent. Pass it to the mapping unit. The method of analyzing and processing the data block by the signal mapping unit and reflecting the corresponding state variables to the shared residence value DB is the same as described above.

물론, 주 네트워크(1) 상에 연결되어 있는 전자제어 기기들(20i, i=1,..,N)( 어댑팅 기기(30)도 포함될 수 있다. )의 서비스 에이전트들(200i, i=1,..,N)( 서비스 어댑팅 에이전트(300)도 포함된다. ) 간에는, 그 주 네트워크(1)를 경유하여 상태 변수들를 공유하기 위해 약속된 형식으로 구성된 상태 변수들과 그 값들의 메시지를 주고 받음으로써, 메시지 유형에 의해 확인되어 메시지 핸들러(203,303)에 의해 서비스 처리부(202,302)로 전달되어, 그 서비스 처리부(202,302)에 의해, 서비스 기반의 조회에 신속하게 응답하기 위해 미리 공유 상태값 디비에 반영되는 전술한 동작은, 앞서 설명한 서브망 신호 직공유와 독립하여 진행된다.Of course, the service agents 200 i of the electronic control devices 20 i , i = 1,...,N) (adapting device 30 may also be included) connected on the main network 1 i=1,..,N) (the service adapting agent 300 is also included. ), the state variables and their values configured in the form promised to share the state variables via the main network 1 By sending and receiving their messages, they are identified by the message type and transferred to the service processing units 202 and 302 by the message handlers 203 and 303, and shared in advance to quickly respond to service-based inquiries by the service processing units 202 and 302. The above-described operation reflected in the state value DB is performed independently from the direct sharing of the sub-network signal described above.

본 발명에 따른 다른 일 실시예에서는, 상태공유 등록요청 메시지가 수신되었을 때, 그 메시지의 송신지에 대해서, 도 10a에 예시된 바와 같이 공유처 정보를 기록하거나, 또는 도 10b에 예시된 바와 같이, 송신지 주소를 기입하는 동작을 수행하지 않을 수도 있다. 즉, 본 실시예에서는, 상태공유 등록요청이 임의의 기기에서 동작하는 에이전트로부터 수신되더라도, 그 임의의 기기만을 대상으로 하는, 등록요청된 상태 변수의 값을 포함하는 상태공유 메시지의 전송을 하지 않고, 대신, 주 네트워크(1) 상의 모든 전자제어 기기들을 대상으로, 즉 방송 형식으로 전송하고 있는 상태공유 메시지에 그 임의의 기기의 에이전트로부터 등록요청된 상태 변수의 값을 추가하는 방식으로 그 등록요청을 수용할 수 있다. 이하는, 상기 서비스 어댑팅 에이전트(300)가 공유등록 요청에 대해 이와 같은 방식으로 직공유 처리하는 보다 구체적인 설명이다.In another embodiment according to the present invention, when a state sharing registration request message is received, the destination of the message is recorded as illustrated in FIG. 10A, or as illustrated in FIG. 10B, You may not perform the operation of writing the source address. That is, in the present embodiment, even if a state sharing registration request is received from an agent operating in an arbitrary device, the state sharing message including the value of the state variable requested for registration is not transmitted, targeting only the arbitrary device. Instead, the registration request is made by adding the value of the state variable requested by the agent of the arbitrary device to the state sharing message transmitted in the form of broadcasting for all electronic control devices on the main network (1). Can accommodate. The following is a more detailed description in which the service adapting agent 300 directly processes the shared registration request in this manner.

본 실시예에서는, 전술한 바와 같이, 상기 서브망 데이터 핸들러(305)가, 상기 서비스 처리부(302)로부터의 직공유 설정 요청에 따라 구성한 블록 직공유 목록에 등재된 블록 ID의 데이터 블록에 대해서 방송 형식의 수송 프레임으로 구성하여, 메시지 핸들러(303)를 통해 주 네트워크(1)로 전송하게 된다. 그리고, 상기 주 네트워크(1)에 연결된 임의의 전자제어 기기에서 동작하는 서비스 에이전트로부터 특정 상태 변수에 대한 상태공유 등록요청 메시지가 수신되면, 상기 서비스 처리부(302)는, 기 구비된 데이터 블록 프로파일을 참조하여 그 특정 상태 변수가 어떤 블록 ID의 데이터 블록에 해당 값이 실리는 것인 지를 확인한다. 물론, 이는, 상태값 디비(320)에서 그 특정 상태 변수에 대한 소유주가 '서브망 데이터 핸들러'로 확인되었을 때이다.In this embodiment, as described above, the subnetwork data handler 305 broadcasts a block ID of a data block registered in the block direct sharing list configured in response to a direct sharing setting request from the service processing unit 302. It is composed of a transport frame of the form and transmitted to the main network 1 through the message handler 303. And, when a state sharing registration request message for a specific state variable is received from a service agent operating in a certain electronic control device connected to the main network 1, the service processing unit 302, the previously provided data block profile. With reference, check whether the corresponding value is loaded in the data block of which block ID of the specific state variable. Of course, this is when the owner of the specific state variable in the state value DB 320 is identified as a'subnetwork data handler'.

그리고, 상기 서비스 처리부(302)는, 공유의 등록이 요청된 상기 특정 상태 변수에 대해서는, 공유변수 프로파일에 추가하여 등재해 둘 수 있다.In addition, the service processing unit 302 may register the specific state variable for which the registration of sharing is requested by adding it to the shared variable profile.

상기 서비스 처리부(302)는, 상기 확인된 블록 ID에 대해서, 상기 서브망 데이터 핸들러(305)에 직공유 설정을 요청하게 된다. 이때는, 전술한 실시예에서와는 달리, 상태공유 등록요청 메시지의 송신지 주소는 전달하지 않는다. 그 설정요청에 따라, 상기 서브망 데이터 핸들러(305)는 해당 블록 ID가 블록 직공유 목록에 등재되어 있지 않으면 추가하게 된다. 이렇게 블록 직공유 목록에 새로이 추가된 블록 ID의 데이터 블록이 서브 네트워크(2)로부터 수신되면, 그 데이터 블록을 상기 메시지 핸들러(303)에 전달하면서 방송 형식으로 주 네트워크(1)로의 전송을 요청하게 된다.The service processing unit 302 requests the subnetwork data handler 305 to set direct sharing for the confirmed block ID. In this case, unlike in the above-described embodiment, the source address of the state sharing registration request message is not delivered. According to the configuration request, the sub-network data handler 305 adds the corresponding block ID if it is not listed in the block direct sharing list. When a data block of a block ID newly added to the block direct sharing list is received from the sub-network 2, the data block is transmitted to the message handler 303 and a request for transmission to the main network 1 in a broadcast format is performed. do.

이상에서 직공유를 예로 하여 설명한, 방송 형식의 상태공유 메시지의 전송에서, 상태 변수에 대한 추가 등록요청을 반영하는 방식은, 일련의 상태 변수들의 값을 '상태변수 공유'의 메시지 유형으로 공유하는 경우에도 그대로 적용될 수 있다. In the transmission of a state sharing message in a broadcast format, described above using direct sharing as an example, the method of reflecting an additional registration request for a state variable is to share the values of a series of state variables as a message type of'state variable sharing'. It can also be applied as it is.

한편, 본 발명에 따른 일 실시예에서는, 상기 주 네트워크(1)에 연결되어 있는 전자제어 기기(20i, i=1,..,N)( 어댑팅 기기도 포함될 수 있다. )에서 동작하는 서비스 에이전트(200i, i=1,..,N)( 서비스 어댑팅 에이전트도 포함될 수 있다. )에, 앞서 언급하였던 바와 같이 피공유변수 프로파일이 미리 설정되어 있을 수 있다. 본 실시예에서는, 각 서비스 에이전트(20i)의 서비스 처리부(202)가, 피공유변수 프로파일에 등재되어 있는 상태 변수들에 대해서는, 상태공유 등록요청 메시지를 타 기기로 전송하지 않는다. 이는, 피공유변수 프로파일에 등재되어 있는 상태 변수들에 대해서는, 해당 상태 변수를 전담하는 기기의 서비스 에이전트( 또는 서비스 어댑팅 에이전트 )에 설정된 공유변수 프로파일에 의해 이미 공유하는 것으로 정해져 있기 때문이다.Meanwhile, in an embodiment according to the present invention, the electronic control device 20 i , i = 1, .., N (adapting device may also be included) connected to the main network 1 is operated. In the service agent 200 i , i = 1,..,N) (a service adapting agent may also be included), a shared variable profile may be preset as described above. In this embodiment, the service processing unit 202 of each service agent 20 i does not transmit a state sharing registration request message to other devices for state variables registered in the shared variable profile. This is because it is determined that the state variables registered in the shared variable profile are already shared by the shared variable profile set in the service agent (or service adapting agent) of the device dedicated to the state variable.

만약, 임의의 기기에서 동작하는 에이전트(200i,300)가, 해당 기기에서 실행되는 응용 프로그램들로부터의 동작에 필요한 상태 변수들의 등록요청을 지원하는 경우에는, 앞서 설명하였던 바와 같이, 해당 기기에서 실행되는 응용 프로그램들이, 의도된 동작을 위해 현재 값을 필요로 하는 상태 변수들에 대하여, 실행 초기에 동 기기 내의 에이전트에 등록을 요청하게 되고, 이 등록 요청된 상태 변수에 대해서, 해당 에이전트는, 기 설정되어 있는 피공유변수 프로파일에 등재되어 있는 지를 먼저 확인하고, 등재되어 있지 않을 때에 한해서, 해당 상태 변수에 대해서, 전술한 바와 같이, 상태공유 등록요청 메시지를 구성하여 주 네트워크(1)를 통해 타 기기로 전송함으로써, 어느 한 기기에서 방송되는 상태공유 메시지에 해당 상태 변수의 값이 공유를 위해 추가되도록 한다.If the agent ( 200i , 300) running on a certain device supports the registration request of state variables required for operation from application programs running on the device, as described above, in the device For the state variables that are running application programs that require a current value for their intended operation, they request registration with the agent in the device at the beginning of execution, and for this state variable requested for registration, the agent, First check whether it is registered in the preset shared variable profile, and only when it is not, configure the state sharing registration request message for the corresponding state variable as described above, and use the main network (1). By transmitting to another device, the value of the corresponding state variable is added to the state sharing message broadcasted by one device for sharing.

그리고, 상태공유 등록요청 메시지에 대해서 등록되었음을 알리는 응답 메시지가 수신되면, 앞서 공유의 등록을 요청한 상태 변수에 대해서 상기 피공유변수 프로파일에 추가로 등재해 둘 수 있다.In addition, when a response message informing that registration for the state sharing registration request message is received is received, the state variable that has previously requested registration of the sharing may be additionally registered in the shared variable profile.

지금까지 설명한 실시예들에 따라, 임의의 기기에서 실행되는 응용 프로그램들이, 자신의 고유 기능을 위해 필요로 하는 상태 변수들에 대해서, 실행 초기에 동 기기 내의 에이전트에 통지하여, 네트워크를 통해 서로 연결된 모든 기기들에 이를 등록시키거나, 또는 사전에 공유변수 프로파일과 피공유변수 프로파일을 통해 설정시켜둠으로써( 필요한 경우, 그 프로파일 상의 상태 변수들에 더하여 추가의 상태 변수를 상태공유 등록요청함으로써 ), 필요로 하는 상태 변수들의 현재 값들이 항상 그 임의의 기기에 공유된 상태로 있게 만든다. 따라서, 임의의 기기에서 실행되는 응용 프로그램이 타 기기가 전담하는 상태 변수를 조회하는 서비스 기반의 요청을 하였을 때도, 그 서비스 기반 요청에 대해서 네트워크를 경유하는 정보의 교환없이, 동일 기기 내에 공유된 상태 변수들의 값들로부터 신속하게 그 요청에 대한 응답을 그 응용 프로그램에 제공할 수 있게 된다.According to the embodiments described so far, application programs running on an arbitrary device notify an agent in the device at the beginning of execution about the state variables required for their own functions, and are connected to each other through a network. By registering it to all devices, or by setting it through the shared variable profile and the shared variable profile in advance (if necessary, by requesting state sharing registration for additional state variables in addition to the state variables in the profile), Make sure the current values of the required state variables are always shared with that arbitrary device. Therefore, even when an application program running on an arbitrary device makes a service-based request to inquire a state variable dedicated to another device, the service-based request is shared within the same device without exchanging information via the network. From the values of the variables, you can quickly provide a response to the request to the application.

또한, 각 기기에서 실행되고 있는 응용 프로그램들이 필요로 하는 상태 변수들에 대해서만 공유시키는 실시예는, 응용 프로그램의 필요여부와 무관하게 레거시 상태변수들을 모두 타 기기에 공유시키는 전술한 실시예에 비해, 상태 변수들의 공유를 위한 네트워크 상의 데이터양을 감소시키는 잇점을 갖는다.In addition, the embodiment in which only state variables required by application programs running on each device are shared is compared to the above-described embodiment in which all legacy state variables are shared with other devices regardless of the need for the application program. It has the advantage of reducing the amount of data on the network for sharing state variables.

전술한 바와 같이, 각 기기의 응용 프로그램들이 의도된 고유 동작을 위해 필요로 하는 상태 변수들에 대한 현재 값들은 동일 네트워크에 연결된 전자제어 기기들에 모두 공유되므로, 각 기기에서 동작하는 에이전트(200i, 300)는, 어느 하나의 상태 변수에 대한 조회와 설정의 요청에 대해서 다른 방식으로 처리한다. 즉, 조회 요청에 대해서는, 기기가 연결된 네트워크를 통한 정보 교환없이 로컬 상태값 디비 또는 공유 상태값 디비에서 바로 확인하여 해당 상태 변수의 값을 응용 프로그램에 제공해 주고, 설정 요청에 대해서는 연결된 네트워크로 필요한 정보를 그 상태 변수를 전담하는 기기로 전송함으로써 처리하게 된다. 설정 요청에 대한 처리는 이후에 설명된다.As described above, since the current values of the state variables required for the intended unique operation of the application programs of each device are shared by all electronic control devices connected to the same network, the agent 200 i operating in each device , 300) handles a request for inquiry and setting of any one state variable in a different manner. In other words, for inquiry request, the value of the corresponding state variable is provided to the application program by checking it directly from the local state value DB or the shared state value DB without exchanging information through the network to which the device is connected, and for setting requests, necessary information through the connected network Is processed by sending the state variable to the dedicated device. Processing of the setting request will be described later.

한편, 공유처 정보가 부가되어 있는 임의의 한 상태 변수에 대해 값이 변경되는 경우에 이벤트성 공유 메시지를 그 공유처 정보에 해당하는 기기로 전송하는 실시예에서는, 이벤트성 공유 메시지를 전송한 직 후, 예를 들어, 수십 msec 이내에, 공유처 정보가 동일한 다른 상태 변수에 대해 값이 변경되면, 또 다른 이벤트성 공유 메시지를 전송하게 된다. 이와 같이 값이 변경된 상태 변수에 대해 개별적으로 이벤트성 공유 메시지를 발생시키게 되면, 네트워크에 가해지는 부하가 커질 수 있다.Meanwhile, in an embodiment in which the event sharing message is transmitted to the device corresponding to the sharing destination information when the value of any one state variable to which the sharing destination information is added is changed, the direct event sharing message is transmitted. Thereafter, for example, within several tens of msec, if the value of another state variable having the same shared destination information is changed, another event sharing message is transmitted. If an event sharing message is individually generated for a state variable whose value has been changed in this way, the load on the network may increase.

따라서, 본 발명에 따른 일 실시예에서는, 이벤트성 공유 메시지를 상태 변수를 그룹핑하여 발생시킬 수 있다. 본 실시예에서는, 에이전트의 서비스 처리부(302,202)가, 일정 주기마다, 그 주기 동안에 값이 변경되었다고 인덱스가 통지된 항목들에 대해서, 공유해야 할 기기별로 묶어서 이벤트성 공유 메시지를 각각 구성하여 제공하게 된다. 물론, 그 주기 동안에, 임의의 기기가 공유처 정보로 부기된 상태 변수들에는 값이 변경된 것이 없으면, 당연히 그 임의의 기기에 대해서는 이벤트성 공유 메시지를 구성하지 않는다.Accordingly, in an embodiment according to the present invention, an event sharing message may be generated by grouping state variables. In the present embodiment, the service processing units 302 and 202 of the agent configure and provide event sharing messages by grouping each device to be shared with respect to items for which the index is notified that the value has changed during the period. do. Of course, during the period, if there is no change in the value of the state variables added to the shared destination information by any device, of course, the event sharing message is not configured for that arbitrary device.

전술한 실시예에서와 같이, 레거시 상태변수들에 대해서, 기 지정된 분류 방식에 따라 그룹핑되어 있는 경우에는, 각 그룹별로 이벤트성 공유 메시지를 구성하게 될 주기를 다르게 할 수도 있다. 예를 들어, 제 1그룹의 레거시 상태변수들에 대해서는 200msec를 주기로, 제 2그룹의 레거시 상태변수들에 대해서는 400msec를 주기로 하여, 그 주기 동안에 값이 변한 상태 변수가 하나 이상 있으면, 그러한 상태 변수에 대해 상태공유를 등록해 둔 기기, 즉 그 기기에서 동작 중인 에이전트별로 묶어서 이벤트성 공유 메시지를 구성하여 해당 기기로 전송하게 된다.As in the above-described embodiment, when legacy state variables are grouped according to a pre-designated classification method, the period in which the event sharing message is configured for each group may be different. For example, if there is one or more state variables whose values have changed during the period, with a cycle of 200 msec for the legacy state variables of the first group and 400 msec for the legacy state variables of the second group. For each device that has registered state sharing, that is, by grouping each agent operating in the device, an event sharing message is formed and transmitted to the corresponding device.

한편, 본 발명의 원리와 기술적 사상에 따라, 네트워크를 통해 연결된 각 기기에 서비스 에이전트 또는 서비스 어댑팅 에이전트를 구비하여, 그 에이전트가 장치에서 관리되어야 하는 상태 변수들의 일부를 전담하도록 지정함으로써, 즉, 각 에이전트의 고유 프로파일에 상태 변수들을 등록하여 레거시 상태변수들로 지정함으로써, 상태 변수에 대응하는 신호나 물리량에 대해서 통합적이고 모순되지 않는 제어가 가능해 진다.On the other hand, according to the principles and technical idea of the present invention, by providing a service agent or a service adapting agent to each device connected through a network, and designating that agent to be in charge of some of the state variables to be managed by the device, that is, By registering state variables in the unique profile of each agent and designating them as legacy state variables, integrated and non-contradictory control of the signals or physical quantities corresponding to the state variables becomes possible.

각 기기에서 실행될 응용 프로그램에 대해서, 의도하는 동작을 위해서 필요한, 제어 대상인 부품이나 기계적 또는 전기적 모듈 등을 전속 주변부로 하는 전자제어 기기를 특정하고, 그 전자제어 기기를 통해 제어코자 대상에 인가할 신호에 해당하는 데이터를 네트워크를 통해 전송하는 방식으로 프로그래밍하여, 그 응용 프로그램을 해당 기기에 적용하는 종래의 경우에, 동일한 제어 대상에 대한 제어를 고유의 기능에 포함하고 있는 복수의 응용 프로그램들이, 서로 다른 개발자에 의해 프로그래밍되어 서로 다른 전자제어 기기에서 각기 실행될 수도 있다. 그리고, 이와 같이 임의의 한 제어 대상에 대해 개별적으로 제어가 가능한 상황이 되면, 서로 독립적으로 동작하는 응용 프로그램들은, 각각에 설정된 조건에 따라, 동일한 제어 대상에 대해 서로 충돌하거나 상충되는 제어를 동시에 요청하는 경우가 발생할 수도 있다.For the application program to be executed in each device, a signal to be applied to the target to be controlled through the electronic control device by specifying an electronic control device that is required for the intended operation and has a control target component, mechanical or electrical module, etc. In the conventional case of programming in a manner that transmits the data corresponding to the network to the corresponding device and applying the application program to the device, a plurality of application programs including control for the same control object in their own function It can be programmed by different developers and executed separately on different electronic control devices. And, when a situation where individual control is possible for an arbitrary control target as described above, applications that operate independently of each other, depending on the conditions set for each, conflict with each other or request conflicting control for the same control target at the same time. There may be cases.

예를 들어, 오토 크루즈(auto cruise)를 위한 응용 프로그램에 의해서 차량 속도가 V1으로 설정 요청됨과 동시에, 네비게이션에 기반한 안전 주행을 위한 응용 프로그램에 의해서 지정 속도가 V2(≠V1)로 설정 요청될 수도 있는 것이다. 이렇게 서로 충돌하거나 상충되는 설정이 동시에 요청되면, 엔진 rpm과 트랜스미션을 제어하는 전자제어 기기는 엔진 계통이나 구동 계통의 기계장치에 무리가 가는 제어 신호를 그대로 인가할 수 밖에 없다.For example, the vehicle speed may be requested to be set to V1 by an application program for auto cruise, and the designated speed may be requested to be set to V2 (≠V1) by an application program for safe driving based on navigation. There is. When such conflicting or conflicting settings are requested at the same time, the electronic control device that controls the engine rpm and the transmission has no choice but to apply an excessive control signal to the engine system or the machinery of the drive system as it is.

하지만, 이와 같은 상충되거나 서로 부합하지 않은 제어 신호가 동시에 임의의 제어 대상에 인가되는 상황은, 본 발명의 개념과 기술적 사상에 따라, 각 전자제어 기기에 개별적으로 구비되는 에이전트에 의해서 관리될 수 있다.However, the situation in which such conflicting or inconsistent control signals are simultaneously applied to an arbitrary control target may be managed by an agent separately provided in each electronic control device according to the concept and technical idea of the present invention. .

도 11은, 임의의 상태 변수에 대한 이러한 관리 방법을 예시적으로 보여주는 도면으로서, 예로서 제시된 상태 변수가 통상의 제어기기(3M)에 의해 설정되는 신호나 또는 제어되는 물리량에 대해 지정된 것임을 가정한 것으로, 이 가정에 따라, 그 상태 변수는, 그 통상의 제어기기(3M)와 서브 네트워크(2)를 통해 서로 연결된 어댑텅 기기(30)의 서비스 어댑팅 에이전트(300)가 전담하는 상태변수가 된다.Home 11 is that a view showing such a management method for any of the state variables by way of example, a status variable given as an example is specified for the physical quantity signal and or control, which is set by the conventional control device (3 M) According to this assumption, the state variable is a state in which the service adapting agent 300 of the adapter device 30 connected to each other through the normal control device 3 M and the sub-network 2 is dedicated. It becomes a variable.

물론, 이하에서 도 11을 참조로 설명하는, 서브 네트워크 상의 통상의 제어기기가 직접 설정하는 신호나 제어하는 물리량을 나타내는 임의의 상태 변수가 상기 서비스 어댑팅 에이전트(300)에 의해 통합적으로 관리되는 방법은, 전술한 바의 전자제어 기기(20i, i=1,..,N)에서 동작하는 서비스 에이전트(200i)에도 당연히 적용될 수 있다.Of course, a method in which an arbitrary state variable representing a signal or a physical quantity to be controlled by a general controller on a sub-network, which will be described below with reference to FIG. 11, is integratedly managed by the service adapting agent 300 Is also applicable to the service agent 200 i operating in the electronic control device 20 i , i = 1,...,N as described above.

복수의 전자제어 기기(20l,20m)에서 각기 실행 중인 임의의 응용 프로그램(10l_x,10m_y)이, 동일한 특정 상태 변수에 대해 그 값(VSx,VSy)을 설정코자 하는 서비스 기반 요청을 동시에 하면(S1010,S1011), 해당 기기의 서비스 에이전트(200l,200m)는, 그 서비스 기반 요청이 조회에 대한 것인 지 설정에 대한 것인 지를 먼저 확인한다. 조회에 대한 것이면, 전술한 바와 같이 로컬 또는 공유 상태값 디비를 참조하여 그 요청을 동 기기 내에서 바로 처리하고, 설정에 대한 것이면 구축된 서비스 프로파일 세트(400)에 근거하여 타 기기 전담 상태 변수에 대한 서비스 기반 요청인 지를 확인한다.A service-based service in which an arbitrary application program (10 l_x ,10 m_y ) running on a plurality of electronic control devices (20 l ,20 m ) each wants to set its value (VS x ,VS y ) for the same specific state variable When the request is made simultaneously (S1010, S1011), the service agent (200 l , 200 m ) of the corresponding device first checks whether the service-based request is for inquiry or setting. If it is for inquiry, the request is directly processed within the device by referring to the local or shared state value DB as described above, and if it is for setting, the state variable dedicated to other devices is based on the established service profile set 400. Check whether it is a service-based request for.

전술한 가정에 따라, 설정의 서비스 기반 요청은, 타 기기 전담 상태 변수에 대한 것이므로, 이 확인에 따라, 해당 기기, 즉 상기 어댑팅 기기(30)로 해당 상태 변수의 설정을 요청하는 메시지( 이하, '설정요구 메시지'라 칭한다. )를 수송 프레임에 패킹하여 주 네트워크(1)를 통해 전송한다(S1020,S1021). 즉, 종래에서와 달리, 상태 변수에 대응하는 신호나 물리량을 설정하거나 제어하는 통상의 제어기기로 설정을 위한 신호가 직접 전송되지 않고, 그 상태 변수를 전담하는 에이전트로 전달됨으로써, 그 상태 변수에 대한 설정 요청이 전담 에이전트로 집중된다. 상기 설정요구 메시지는, 해당 상태 변수를 나타내는 정보( 상태 변수명, 또는 할당된 고유 식별번호 등 )와 해당 상태 변수에 대해 설정코자 하는 값을 포함하여 구성된다.According to the above assumption, since the service-based request for setting is for a state variable dedicated to other devices, according to this confirmation, a message requesting the setting of the corresponding state variable to the corresponding device, that is, the adapting device 30 (hereinafter, , Is called a'configuration request message'.) is packed in a transport frame and transmitted through the main network 1 (S1020, S1021). In other words, unlike in the prior art, a signal for setting or a signal for setting is not directly transmitted to a general controller that sets or controls a signal or a physical quantity corresponding to a state variable, but is transmitted to the agent in charge of the state variable. Requests for setting up are concentrated on a dedicated agent. The setting request message includes information indicating a corresponding state variable (such as a state variable name or an assigned unique identification number) and a value to be set for the corresponding state variable.

이와 같은 동일 상태 변수에 대해 서로 상이한 값을 설정코자 하는 설정요구 메시지가 극히 짧은 시차를 두고서 상기 어댑팅 기기(30)의 서비스 어댑팅 에이전트(300)에 도착하는 경우에는, 먼저 도착한 메시지를, 그리고, 서로 동시에 도착하더라도, 그 수신 처리에 있어서는, 선후가 있을 수 밖에 없으므로, 앞서 수신처리된( 예를 들어, 큐(queue) 등과 같은 선입선출 버퍼에 먼저 저장되어 있는 ) 설정요구 메시지에 실린 내용에 따라, 해당 상태 변수에 대하여 지정된 값(VSx)을 설정하는 동작을 수행한다.When the setting request message for setting different values for the same state variable arrives at the service adapting agent 300 of the adapting device 30 with an extremely short time difference, the message that has arrived first, and However, even if they arrive at the same time, there must be a first-and-forth in the receiving process, so the contents of the setting request message previously received (for example, stored in a first-in-first-out buffer such as a queue) Accordingly, the operation of setting the specified value (VS x ) for the corresponding state variable is performed.

이를 위해, 먼저, 상기 서비스 어댑팅 에이전트(300)의 서비스 처리부(302)는, 그 설정요구 메시지에 실린 상태 변수에 대해서, 로컬 상태값 디비(320)에서 그 소유주를 확인한다. To this end, first, the service processing unit 302 of the service adapting agent 300 checks the owner of the state variable carried in the setting request message in the local state value DB 320.

도 11의 예에서는, 설정요구 메시지가 설정을 의도하는 해당 상태 변수가 서브 네트워크(2)에 연결된 통상의 제어기기(3M)가 제어하는 물리량에 대한 것이므로, 상기의 소유주 확인에서, '서브망 데이터 핸들러'로 확인될 것이다. 이렇게 '서브망 데이터 핸들러'로 소유주가 확인되는 상태 변수에 대해서는, 기 설정된 데이터 블록 프로파일을 참조하여, 해당 상태 변수가 어떤 블록 ID의 데이터 블록에 설정할 값이 실리는 것인 지를 확인한다. 동시에, 그 데이터 블록에서의 순서와 차지하는 크기도 확인한다.In Fig. In the 11 cases, the state variable is because of the physical quantity to the normal control control unit (3 M) connected to the sub-network (2), check the owners of the assignment request message intended to setup, 'subnetwork It will be identified as'data handler'. As for the state variable whose owner is identified by the'subnet data handler', by referring to the preset data block profile, it is checked whether the value to be set is loaded in the data block of which block ID of the corresponding state variable. At the same time, it checks the order and occupied size in the data block.

이러한 확인이 끝나면, 상기 서비스 처리부(302)는, 상기 확인된 사항에 맞게, 해당 상태 변수의 값, 즉 지정된 차량 속도의 설정을 위한 데이터와, 그러한 용도의 블록임을 지정하는 블록 ID를 포함하는 데이터 블록을 구성하여 서브망 데이터 핸들러(305)를 통해 데이터 프레임 형태로 서브 네트워크(2)로 전송하게 된다(S1030). Upon completion of such confirmation, the service processing unit 302, according to the checked matter, includes data for setting the value of the corresponding state variable, that is, a designated vehicle speed, and a block ID specifying that the block is for such a purpose. A block is configured and transmitted to the sub-network 2 in the form of a data frame through the sub-network data handler 305 (S1030).

만약, 해당 상태 변수에 대한 앞서의 소유주 확인에서, 해당 상태 변수가, 서브 네트워크(2)에 연결된 통상의 제어기기가 아니고 입출력 인터페이스 등을 통해 직접 연결된 부품이나 기계적 또는 전기적 모듈 등에 대한 물리량에 대한 것으로서, '로컬 상태 핸들러'로 확인되면, 상기 서비스 처리부(302)는, 로컬 상태 핸들러(304)를 통해서 그 설정요청을 처리하게 된다. If, in the previous verification of the owner of the corresponding state variable, the corresponding state variable is not a normal controller connected to the sub-network (2), but a physical quantity for a component or mechanical or electrical module directly connected through an input/output interface, etc. , If confirmed as a'local state handler', the service processing unit 302 processes the setting request through the local state handler 304.

한편, 상기 서비스 어댑팅 에이전트(300)의 서비스 처리부(302)는, 임의의 한 상태 변수에 대한 설정을 요청한 시점부터 기 지정된 제한 시간내에 수신된 다른 설정요구 메시지가, 동일 상태 변수에 대한 설정이면, 그 설정요청에 대해서는 거절한다(P1031). 그리고, 그 설정요구 메시지를 전송한 기기로는 설정요청의 거절을 나타내는 메시지를 구성하여 주 네트워크(1)를 통해 전송한다(S1032).On the other hand, the service processing unit 302 of the service adapting agent 300, if the other setting request message received within a predetermined time limit from the time of requesting the setting of one arbitrary state variable is the setting for the same state variable , The request for setting is rejected (P1031). Then, a message indicating rejection of the setting request is constructed to the device that has transmitted the setting request message, and transmitted through the main network 1 (S1032).

본 발명에 따른 일 실시예에서는, 상기 제한 시간이 상태 변수별로 지정될 수도 있고, 다르게는 상태 변수들을 그룹핑하여 그룹별로 설정될 수도 있다. 예를 들어, 차량의 경우에, 구동이나 조향 계통에 관련된 상태변수 그룹에 대해서는 상기 제한 시간을 다소 길게 지정하여 기계 장치 등에 무리가 가지 않게 하고, 배기나 공조 계통에 관련된 상태 변수 그룹은, 구동이나 조향 계통에 관련된 상태변수 그룹보다는 좀 더 짧게 지정될 수 있다. 이러한, 상태 변수별로의 또는 상태변수 그룹별로의 상기 제한 시간 지정은, 전술한 바의 로컬 상태값 디비(320,220)에 설정될 수 있다.In an embodiment of the present invention, the time limit may be specified for each state variable, or alternatively, the state variables may be grouped and set for each group. For example, in the case of a vehicle, the above time limit is set somewhat longer for a group of state variables related to a driving or steering system so that it does not cause an overwhelming effect on machinery, etc., and a group of state variables related to an exhaust or air conditioning system is It can be assigned a little shorter than the group of state variables related to the steering system. The designation of the time limit for each state variable or each state variable group may be set in the local state value DBs 320 and 220 as described above.

또한, 극히 짧은 시간격 내에서의 조작 변경이 아무런 문제가 되지 않는 제어 대상, 예를 들어, 라디오 FM채널 등과 같은 상태 변수에 대해서는 상기 제한 시간이 설정되지 않을 수 있다. 즉, "RadioFMChannel.Set(Next)"과 같은, 라디오 FM신호대역에서의 다음 동조 채널로의 설정은, 한번의 설정 요청을 실행한 후에 즉시 다음 설정 요청이 수신되어도 그대로 그 요청을 실행시킬 수 있다.In addition, the time limit may not be set for a state variable such as a control target, for example, a radio FM channel, in which operation change within an extremely short time interval is not a problem. That is, for setting to the next tuning channel in the radio FM signal band, such as "RadioFMChannel.Set(Next)", even if the next setting request is received immediately after executing one setting request, the request can be executed as it is. .

한편, 상기 서비스 어댑팅 에이전트(300)의 서비스 처리부(302)는, 지정된 상태 변수에 대하여 특정 값으로의 설정을 명령하는 데이터 블록을 데이터 프레임에 실어서 서브 네트워크(2)로 전송한 후에는, 서브망 데이터 핸들러(305)가, 그 서브 네트워크(2)에 실리는 데이터 프레임들로부터 추출한 데이터 블록에 대해서, 전술한 바와 같이, 그 데이터 블록에 포함된 값들을 그 메시지 유형에 따라 분해하여 상태값 디비(320)의 해당 상태 변수의 현재 값으로서 각각 반영하면서 그 값이 반영된 항목의 인덱스를 통지할 때마다, 그 인덱스가 가리키는 항목이, 자신이 설정을 명령한 상태 변수에 대한 것인 지를 확인한다.On the other hand, after the service processing unit 302 of the service adapting agent 300 loads a data block instructing the setting of a specified state variable to a specific value in a data frame and transmits it to the sub-network 2, As described above, for the data block extracted from the data frames loaded on the sub-network data handler 305, the sub-network data handler 305 decomposes the values included in the data block according to the message type, Each time the index of the item to which the value is reflected is notified while reflecting each of the current values of the corresponding state variables of the DB 320, it is checked whether the item indicated by the index is for the state variable for which the setting is commanded. .

설정명령한 상태 변수에 대하여 현재 값(VSC)이 반영된 것으로 확인되면(S1040), 상기 서비스 처리부(302)는, 앞서, 주 네트워크(1)를 통해 타 전자제어 기기(20l)로부터 수신한 설정요구 메시지에 대한 응답 메시지로서, 그 상태 변수와 그 변수의 현재 값(VSC)을 포함한 메시지를 구성하여 주 네트워크(1)를 통해 그 기기(20l)로 전송한다(S1041).When it is confirmed that the current value (VS C ) is reflected for the set-commanded state variable (S1040), the service processing unit 302, previously, received from the other electronic control device (20 l ) through the main network (1). As a response message to the setting request message, a message including the state variable and the current value (VS C ) of the variable is configured and transmitted to the device 20 l through the main network 1 (S1041).

이렇게 전송된 응답 메시지는, 해당 기기의 서비스 에이전트(200l)에 의해 수취되어 상태 변수와 현재 값이 식별됨으로써, 그 현재 값(VSC)이, 앞선 상태 변수의 설정을 위한 서비스 기반 요청(S1010)에 대한 리턴 값으로서 해당 응용 프로그램(10l_x)에 전달된다(S1042).The response message transmitted in this way is received by the service agent 200 l of the corresponding device and the status variable and the current value are identified, so that the current value (VS C ) is a service-based request for setting the previous status variable (S1010 As a return value for ), it is transmitted to the corresponding application program (10 l_x ) (S1042).

그리고, 상태 변수에 대한 설정요구 메시지에 대하여 거절 메시지를 응답으로 수신한 서비스 에이전트(200m)는, 앞선 상태 변수의 설정을 위한 서비스 기반 요청(S1011)에 대하여 '실패'를 알리는 값을 리턴하게 된다(S1033).And, the service agent (200 m ), which received the rejection message in response to the setting request message for the state variable, returns a value indicating'failure' with respect to the service-based request (S1011) for setting the previous state variable. It becomes (S1033).

지금까지 구체적으로 설명한, 본 발명에 따른 네트워크를 경유하는 서비스 기반의 정보 조회를 신속하게 처리하기 위한 방법과 그 방법을 위한 기기에 대한 다양한 실시예들과, 그 실시예에서 설명된 구성 및 작용 등은 서로 양립할 수 없는 경우가 아니라면, 상호 다양한 방식으로 선택적으로 결합되어 실시 가능하다.Various embodiments of a method for quickly processing a service-based information inquiry through a network according to the present invention and a device for the method, as described in detail so far, and the configuration and operation described in the embodiment, etc. Unless they are incompatible with each other, they can be selectively combined and implemented in various ways.

이상, 전술한 본 발명의 실시예들은, 예시의 목적을 위해 개시된 것으로, 당업자라면, 이하 첨부된 청구범위에 개시된 본 발명의 기술적 사상과 그 기술적 범위 내에서, 또 다른 다양한 실시예들을 개량, 변경, 대체 또는 부가 등이 가능할 것이다.Above, the above-described embodiments of the present invention are disclosed for purposes of illustration, and those skilled in the art, within the technical spirit and scope of the present invention disclosed in the appended claims below, improve and change other various embodiments. , Substitution or addition may be possible.

1,2: 네트워크 3i: 통상의 전자제어 기기
10i_j: 응용 프로그램 11,12: 전자제어 유니트(ECU)
11a,12a: 응용 프로그램 20i: 전자제어 기기
31,32: 망 인터페이스부
200i: 서비스 지향 인터페이싱 에이전트
201: 서비스 인터페이스부 202: 서비스 처리부
203: 메시지 핸들러(Handler) 204: 로컬 상태 핸들러
205: 서브망(sub-net) 데이터 핸들러 206: 신호 매핑부
210: 서비스 프로파일
220,230i: (로컬 또는 공유) 상태값 데이터베이스
400: 서비스 프로파일 세트
1,2: network 3 i : ordinary electronic control device
10 i_j : Application program 11,12: Electronic control unit (ECU)
11a,12a: application program 20i : electronic control device
31,32: network interface unit
200 i : Service-oriented interfacing agent
201: service interface unit 202: service processing unit
203: message handler 204: local state handler
205: sub-net data handler 206: signal mapping unit
210: service profile
220,230 i : (local or shared) status value database
400: service profile set

Claims (24)

임의의 장치에 구축된 네트워크에 연결되어 그 네트워크를 통한 타 기기와의 메시지 교환을 통해, 상기 장치와 그 구성품들의 각종의 상태들에 대해 조회나 설정을 하기 위한 기기에 있어서,
상기 네트워크를 통해 상기 타 기기와 메시지를 주고 받을 수 있도록 구성된 제 1처리부와,
상기 각종의 상태들 중, 상기 기기가 전담하여 처리하도록 지정된 상태 그룹에 속하는 상태들의 각각에 대하여, 해당 상태를 지시하는 정보가 등재되고 해당 상태들의 현재 값이 기록될 수 있도록 구성된 상태값 목록과,
상기 각종의 상태들 중 적어도 일부의 상태들의 각각에 대해, 해당 상태에 대한 값이 실리는 데이터 블록에 대한 식별자와 해당 상태를 지시하는 정보가 서로 연계되어 등재되어 있는 블록 프로파일과,
상기 제 1처리부를 통해 상기 네트워크로부터 수신되는 상기 타 기기로부터의 특정 상태에 대한 특정값으로의 설정 요청에 대하여, 상기 블록 프로파일에서, 그 설정 요청에 포함된 상기 특정 상태를 지시하는 정보에 연계되어 등재된 식별자를 확인하고, 상기 특정값을 포함하는 데이터 블록을 상기 확인한 식별자를 선두에 포함시켜 구성한 후, 상기 네트워크와는 통신 방식이 상이한 제 2네트워크에 연결된 하나의 이상의 제 3의 기기가 수신할 수 있도록, 상기 제 2네트워크를 향해 상기 기기에 구비된 인터페이스부를 통해 전송하도록 구성된 제 2처리부를 포함하여 구성되되,
상기 제 2처리부는, 상기 인터페이스부를 통해 수신되는, 상기 상태 그룹에 속하는 하나 이상의 상태에 대한 값을 해당 상태를 지시하는 정보없이 포함하여 구성된 데이터 블록에 대해서 선택적으로 제 1형의 제 1공유 메시지로 구성하여, 적어도 상기 타 기기가 수신할 수 있도록 상기 제 1처리부를 통해 상기 네트워크로 전송되게 하고,
상기 데이터 블록은, 적어도 데이터 블록의 종류를 나타내는 식별자와 하나 이상의 상태에 대한 값이 채워진 부분으로써 구성된 것인 기기.
In the device for inquiring or setting various states of the device and its components through message exchange with other devices through the network connected to a network established in an arbitrary device,
A first processing unit configured to exchange messages with the other device through the network,
Of the various states, for each of the states belonging to a state group designated to be processed exclusively by the device, a state value list configured such that information indicating the state is registered and current values of the states are recorded,
For each of at least some of the various states, a block profile in which an identifier for a data block carrying a value for the corresponding state and information indicating the corresponding state are listed in association with each other;
In response to a request for setting to a specific value for a specific state from the other device received from the network through the first processing unit, the block profile is linked to information indicating the specific state included in the setting request. After confirming the registered identifier and configuring the data block including the specific value by including the identified identifier at the head, at least one third device connected to a second network having a different communication method from the network will receive To be configured to include a second processing unit configured to transmit to the second network through an interface unit provided in the device,
The second processing unit selectively converts a data block configured by including values for one or more states belonging to the state group, received through the interface unit, into a first type 1 shared message without information indicating a corresponding state. Configured to be transmitted to the network through the first processing unit so that at least the other device can receive,
The data block is configured as a part filled with at least an identifier indicating a type of the data block and values for one or more states.
제 1항에 있어서,
상기 설정 요청을 그 내용으로 하는 설정요구 메시지를 상기 제 1처리부를 통해 수신하고, 그 수신된 상기 설정요구 메시지에 따라 상기 설정 요청을 상기 제 2처리부에 인가하도록 구성된 제 3처리부를 더 포함하여 구성되되,
상기 제 3처리부는, 상기 설정 요청을 상기 제 2처리부에 인가한 후, 상기 제 1처리부를 통해 상기 네트워크로부터 수신한 다른 메시지가 상기 특정 상태에 대해 임의값으로의 설정을 요구하는 것일 때는, 그 다른 메시지의 수신 시점이, 상기 설정 요청의 상기 제 2처리부에의 인가시점으로부터 기 지정된 제한 시간 내이면, 상기 다른 메시지에 대해서는 그 설정 요구를 거절하는 응답 메시지가 상기 제 1처리부를 통해 전송되게 하는 것인 기기.
The method of claim 1,
And a third processing unit configured to receive a configuration request message having the configuration request as its content through the first processing unit, and to apply the configuration request to the second processing unit according to the received configuration request message. Do it,
The third processing unit, after applying the setting request to the second processing unit, when another message received from the network through the first processing unit requests the setting of the specific state to an arbitrary value, the If the receiving time of the other message is within a predetermined time limit from the time of authorization of the setting request to the second processing unit, a response message for rejecting the setting request is transmitted through the first processing unit for the other message. Device.
제 2항에 있어서,
상기 제한 시간은, 상기 각종의 상태들에 대해 분류된 그룹들 중에서 상기 특정 상태가 속하는 그룹에 대해 지정된 시간이고,
상기 분류된 그룹들 중 2개 이상의 그룹은, 지정된 상기 제한 시간이 서로 다른 것인 기기.
The method of claim 2,
The time limit is a time designated for a group to which the specific state belongs among groups classified for the various states,
Two or more of the classified groups have different designated time limits.
제 1항에 있어서,
상기 제 1공유 메시지로 구성되는 데이터 블록은, 적어도 상기 타 기기로부터 상기 네트워크를 경유하여 상기 제 1처리부를 통해 상태공유 등록을 요청받은 상태에 대한 값을 포함하는 데이터 블록이고,
상태공유 등록을 요청받은 상기 상태에 대해서는, 상기 상태값 목록에 공유할 대상으로서 적어도 상기 타 기기의 주소가 연계되어 기재되어 있으며,
상기 제 1공유 메시지는, 적어도 상기 타 기기만을 목적지로 하여 전송되는 메시지인 것인 기기.
The method of claim 1,
The data block composed of the first sharing message is a data block including a value for a state in which state sharing registration is requested through the first processing unit from at least the other device via the network,
For the state for which state sharing registration has been requested, at least the address of the other device as a target to be shared is described in association with the state value list,
The first shared message is a message transmitted to at least the other device as a destination.
제 1항에 있어서,
상기 제 1공유 메시지로 구성되는 데이터 블록은, 기 설정된 공유 프로파일에 등재되어 있는 상태들 중 적어도 어느 하나의 상태에 대한 값을 포함하는 데이터 블록이고,
상기 제 1공유 메시지는, 상기 타 기기를 포함하는 상기 네트워크에 연결되어 복수의 기기들 모두의 수신을 의도하여 전송되는 메시지인 것인 기기.
The method of claim 1,
The data block composed of the first sharing message is a data block including a value for at least one of states registered in a preset sharing profile,
The first shared message is a message connected to the network including the other device and transmitted with the intention of receiving all of a plurality of devices.
제 5항에 있어서,
상기 제 2처리부는, 상기 공유 프로파일에 등재되어 있지 않은 상태에 대하여, 상기 네트워크를 경유하여 상기 제 1처리부를 통해 상태공유 등록을 요청받게 되면, 그 등록 요청받은 상태에 대한 값을 포함하는, 상기 인터페이스부를 통해 수신되는 데이터 블록에 대해서도 상기 제 1형의 제 2공유 메시지로 구성하여 상기 제 1처리부를 통해 상기 네트워크로 전송하도록 구성된 것인 기기.
The method of claim 5,
The second processing unit, when a state sharing registration request is received through the first processing unit through the network for a state that is not listed in the shared profile, includes a value for the state requested for registration. The device is configured to configure the data block received through the interface unit as a second shared message of the type 1 and transmit it to the network through the first processing unit.
제 1항에 있어서,
상기 제 2처리부는, 상기 제 2네트워크를 경유하여 상기 인터페이스부를 통해 수신되는 데이터 프레임에 패킹된 데이터 블록에 대해서, 상기 상태값 목록에 속하는 상태들에서 대응되는 상태들의 값들로 각각 식별하여 상기 상태값 목록에서 해당 상태에 대한 현재 값으로 기록하도록 더 구성된 것인 기기.
The method of claim 1,
The second processing unit identifies each data block packed in a data frame received through the interface unit via the second network as values of corresponding states from states belonging to the state value list, and identifies the state value. The device being further configured to record the current value for that state in the list.
제 1항에 있어서,
상기 기기에 직접 연결된 센서, 상기 장치의 부품, 전기적인 모듈 또는 기계적인 모듈을 포함하는 주변 기기들의 상태들의 각각에 대해서 현재 값을 확인하여, 상기 상태값 목록에 등재된 상태들 중에서 대응되는 상태의 현재 값으로 기록하거나, 상기 주변 기기들의 상태들 중 임의의 상태에 대해서 특정 값으로 설정할 수 있도록 구성된 제 4처리부를 더 포함하여 구성된 것인 기기.
The method of claim 1,
A current value is checked for each of the states of peripheral devices including a sensor directly connected to the device, a component of the device, an electrical module, or a mechanical module, and a corresponding state among the states listed in the state value list. The device further comprises a fourth processing unit configured to record a current value or set a specific value for any of the states of the peripheral devices.
제 8항에 있어서,
상기 상태값 목록에 등재된 상태들의 적어도 일부에 대해서, 각 상태를 지시하는 정보와 각 상태의 현재 값을 상기 상태값 목록에서 획득하여 배열함으로써 제 2형의 공유용 메시지를 구성하여, 적어도 상기 타 기기가 수신할 수 있도록 상기 제 1처리부를 통해 상기 네트워크로 전송되게 하는 제 3처리부를 더 포함하여 구성되는 것인 기기.
The method of claim 8,
For at least some of the states listed in the state value list, information indicating each state and the current value of each state are obtained and arranged in the state value list to form a second type of sharing message, and at least the other The device is configured to further include a third processing unit for transmitting to the network through the first processing unit so that the device can receive.
제 8항에 있어서,
상기 주변 기기들의 상태들 중 하나 이상의 상태에 대해서, 해당 상태의 현재 값을, 적어도 그 해당 상태가 포함되었음을 알리기 위한 식별자를 전치(前置)시켜 포함한 데이터 블록을 구성하고, 그 구성된 데이터 블록을 상기 제 1형의 공유용 메시지로 구성하여, 적어도 상기 타 기기가 수신할 수 있도록 상기 제 1처리부를 통해 상기 네트워크로 전송되게 하는 제 3처리부를 더 포함하여 구성되는 것인 기기.
The method of claim 8,
For one or more states of the peripheral devices, a data block including at least a current value of the corresponding state is transposed and an identifier indicating that the corresponding state is included, and the configured data block And a third processing unit configured as a type 1 sharing message and transmitted to the network through the first processing unit so that at least the other device can receive it.
제 9항 또는 제 10항에 있어서,
상기 공유용 메시지로 구성되는 임의 상태의 현재 값은, 상기 공유용 메시지의 구성 직전에 상기 네트워크로 송신한 그 공유용 메시지와 동일한 유형의 다른 공유용 메시지에 포함된 상기 임의 상태의 직전 값과는 차이가 있는 것인 기기.
The method of claim 9 or 10,
The current value of the arbitrary state composed of the sharing message is different from the immediately preceding value of the arbitrary state included in the other sharing message of the same type as the sharing message sent to the network immediately before the configuration of the sharing message. The device that makes a difference.
제 9항 또는 제 10항에 있어서,
상기 제 3처리부는, 상기 공유용 메시지에 그 값이 포함되는 하나 이상의 상태에 대하여, 기 정해진 시간을 주기로, 각 상태의 현재 값을 포함하는 상기 공유용 메시지가 구성되어 상기 네트워크로 전송되게 하되, 상기 하나 이상의 상태에서 어느 하나의 상태에 대한 현재 값이 상기 주기 내에서 변경되어도, 그 변경된 시점에는, 상기 어느 하나의 상태에 대해 현재 값을 포함하는 상기 공유용 메시지를 상기 네트워크로 전송하지 않도록 구성된 것인 기기.
The method of claim 9 or 10,
The third processing unit configures and transmits the sharing message including the current value of each status to the network at a predetermined time period with respect to one or more states in which the value is included in the sharing message, In the one or more states, even if the current value for any one state is changed within the period, at the time of the change, the sharing message including the current value for any one state is not transmitted to the network. Device.
제 12항에 있어서,
상기 기 정해진 시간은, 상기 각종의 상태들에 대해 분류된 그룹들 중에서 상기 하나 이상의 상태가 속하는 그룹에 대해 지정된 시간이고,
상기 분류된 그룹들 중 2개 이상의 그룹은, 상기 주기로 적용하는 기 정해진 시간이 서로 다른 것인 기기.
The method of claim 12,
The predetermined time is a time designated for a group to which the at least one state belongs among groups classified for the various states,
Two or more of the classified groups have different predetermined times applied in the period.
제 9항에 있어서,
상기 상태값 목록에서 상기 상태 그룹에 속하는 상태들에 대해서는 소유주를 구분하는 정보가 부가 기록되어 있되,
상기 제 3처리부는, 상기 설정 요청에 포함된 상기 특정 상태에 대한 소유주가 상기 상태값 목록에서 상기 제 2처리부로 확인될 때에, 상기 제 2네트워크에 연결된 하나의 이상의 제 3의 기기가 수신할 수 있도록 상기 구성한 데이터 블록을 상기 인터페이스부를 통해 전송하도록 구성된 것인 기기.
The method of claim 9,
In the status value list, information for identifying the owner is additionally recorded for the statuses belonging to the status group,
The third processing unit may receive at least one third device connected to the second network when the owner of the specific state included in the setting request is identified as the second processing unit in the state value list. The device is configured to transmit the configured data block through the interface unit.
제 14항에 있어서,
상기 제 3처리부는, 상기 설정 요청에 포함된 상기 특정 상태에 대한 소유주가 상기 상태값 목록에서 상기 제 4처리부로 확인될 때에는, 상기 특정값을 상기 제 4처리부에 전달하면서 해당되는 주변 기기에 설정토록 명령함으로써 상기 설정 요청을 처리하도록 구성된 것인 기기.
The method of claim 14,
When the owner for the specific state included in the setting request is identified as the fourth processing unit in the state value list, the third processing unit transmits the specific value to the fourth processing unit and sets the corresponding peripheral device. And processing the setting request by instructing to do so.
제 1항에 있어서,
상기 기기에서 실행되는 응용 프로그램으로부터 임의의 상태에 대한 요청을 수신하고, 또한 그 요청에 따른 결과를 상기 응용 프로그램에 리턴(return)하도록 구성된 서비스 인터페이스부를 더 포함하여 구성되되,
상기 서비스 인터페이스부는, 상기 응용 프로그램으로부터 수신되는 상기 임의의 상태에 대한 요청에 대하여, 상기 각종의 상태들에 속하는 전부 또는 일부의 상태들의 각각에 대해 해당 상태를 지시하는 정보와 해당 상태에 대해 행할 수 있는 액션(action)을 지정하고 있는 프로파일에 근거하여 그 요청을 처리하는 것이 가능한 지를 판별하도록 더 구성된 것인 기기.
The method of claim 1,
It is configured to further include a service interface unit configured to receive a request for an arbitrary state from the application program running on the device, and return a result according to the request to the application program,
The service interface unit, in response to a request for the arbitrary state received from the application program, may perform information indicating a corresponding state for each of all or part of states belonging to the various states and the corresponding state. The device further configured to determine whether it is possible to process the request based on a profile specifying an action that exists.
임의의 장치에 구축된 네트워크에 연결되어 그 네트워크를 통한 타 기기와의 메시지 교환을 통해, 상기 장치와 그 구성품들의 각종의 상태들에 대해 조회나 설정을 하기 위한 기기에 있어서,
상기 기기에서 실행되는 응용 프로그램으로부터 임의의 상태에 대한 요청을 수신하고, 또한 그 요청에 따른 결과를 상기 응용 프로그램에 리턴하도록 구성된 서비스 인터페이스부와,
상기 네트워크를 통해 상기 타 기기와 메시지를 주고 받을 수 있도록 구성된 제 1처리부와,
상기 각종의 상태들 중 일부의 상태들의 각각에 대해, 해당 상태에 대한 값이 실리는 데이터 블록에 대한 식별자와 해당 상태를 지시하는 정보가 서로 연계되어 등재되어 있는 블록 프로파일과,
상기 제 1처리부를 통해 수신되는 제 1형의 공유 메시지에 포함된 하나 이상의 데이터 블록의 각각에 대해서, 상기 블록 프로파일에 근거하여 해석함으로써, 해당 데이터 블록에 포함된 각 신호가 어떤 상태에 대한 것인 지를 식별하고, 각 신호를 상태값 목록에 등재된 상태들 중에서 그 식별된 상태에 대한 현재 값으로 기록하도록 구성된 매핑부와,
상기 서비스 인터페이스부를 통해 상기 응용 프로그램으로부터 수신되는, 상기 각종의 상태들에 속하는 임의의 상태에 대한 요청이, 그 임의의 상태에 대한 조회이면 상기 임의의 상태에 대한 값을 상기 상태값 목록에서 확인하여 상기 서비스 인터페이스부를 통해 상기 응용 프로그램에 제공하고, 그 임의의 상태에 대한 설정이면, 그 임의의 상태를 지시하는 정보와 그 요청에 수반된 특정값을 포함하는 설정요구 메시지를 구성하여, 상기 제 1처리부를 통해, 상기 임의의 상태를 전담하여 처리하도록 지정된 타 기기로 전송하도록 구성된 제 2처리부를 포함하여 구성되되,
상기 데이터 블록은, 데이터 블록의 종류를 나타내는 식별자와, 상기 네트워크에 연결된 임의의 기기가 전담하는 상태들 중 하나 이상의 상태에 대한 값이, 해당 상태를 지시하는 정보없이 채워진 부분을 포함하여 구성된 것인 기기.
In the device for inquiring or setting various states of the device and its components through message exchange with other devices through the network connected to a network established in an arbitrary device,
A service interface unit configured to receive a request for an arbitrary state from an application program running on the device and return a result according to the request to the application program,
A first processing unit configured to exchange messages with the other device through the network,
For each of some states among the various states, a block profile in which an identifier for a data block carrying a value for the state and information indicating the state are listed in association with each other;
Each of the one or more data blocks included in the type 1 sharing message received through the first processing unit is analyzed based on the block profile, so that each signal included in the corresponding data block corresponds to a certain state. A mapping unit configured to identify each signal and record each signal as a current value for the identified state from among the states listed in the state value list;
If a request for an arbitrary state belonging to the various states, received from the application program through the service interface unit, is a query for the arbitrary state, the value for the arbitrary state is checked in the state value list, Provided to the application program through the service interface unit, and if it is set for an arbitrary state, a configuration request message including information indicating the arbitrary state and a specific value accompanying the request is configured, and the first It is configured to include a second processing unit configured to transmit, through the processing unit, to another device designated to process the arbitrary state exclusively,
The data block includes an identifier indicating the type of the data block, and a value for one or more of the states dedicated to a device connected to the network, filled without information indicating the corresponding state. device.
제 17항에 있어서,
상기 제 2처리부는, 상기 타 기기가 상기 네트워크로 전송함에 따라 상기 제 1처리부를 통해 수신되는 제 2형 공유 메시지에 포함된 정보에 근거하여, 상기 상태값 목록의 일부의 상태들에 대하여 그 값을 갱신하도록 더 구성되되,
상기 제 2형의 공유 메시지에는, 하나 이상의 상태의 각각에 대해서, 해당 상태를 지시하는 정보와 해당 상태에 대한 값의 세트가 배열되어 있는 것인 기기.
The method of claim 17,
The second processing unit, based on the information included in the type 2 sharing message received through the first processing unit as the other device transmits to the network, the value of the state of some of the state value list. Is further configured to update,
In the second type of sharing message, information indicating a corresponding state and a set of values for the corresponding state are arranged for each of one or more states.
제 17항에 있어서,
상기 기기에 직접 연결된 센서, 상기 장치의 부품, 전기적인 모듈 또는 기계적인 모듈을 포함하는 주변 기기들의 상태들의 각각에 대해서 현재 값을 확인하여, 상기 상태값 목록에 등재된 상태들 중에서 대응되는 상태의 현재 값으로 기록하거나, 상기 주변 기기들의 상태들 중 임의의 상태에 대해서 특정 값으로 설정할 수 있도록 구성된 제 3처리부를 더 포함하여 구성된 것인 기기.
The method of claim 17,
A current value is checked for each of the states of peripheral devices including a sensor directly connected to the device, a component of the device, an electrical module, or a mechanical module, and a corresponding state among the states listed in the state value list. The device further comprises a third processing unit configured to record a current value or set a specific value for any of the states of the peripheral devices.
제 17항에 있어서,
상기 제 2처리부는, 상기 기기에서 실행되는 하나 이상의 응용 프로그램으로부터 상기 서비스 인터페이스부를 통해 전달받은 필요 상태들이, 기 설정된 피공유 프로파일에 등재되어 있는 지를 확인하고, 상기 피공유 프로파일에 등재되어 있지 않은 적어도 하나의 상태에 대해서는, 상태공유 등록을 요구하는 메시지를 구성하여, 상기 제 1처리부에 전달하면서 상기 네트워크로의 전송을 요청하도록 더 구성된 것인 기기.
The method of claim 17,
The second processing unit checks whether the necessary states transmitted through the service interface unit from one or more application programs running on the device are registered in a preset shared profile, and at least not registered in the shared profile For one state, the device is further configured to request transmission to the network while constructing a message requesting state sharing registration and transmitting it to the first processing unit.
임의의 장치에 구축된 네트워크에 연결된 복수의 기기들 중 어느 하나의 기기가, 다른 기기와 메시지를 교환함으로써, 상기 장치와 그 구성품들의 각종의 상태들의 일부에 대해 조회 또는 설정하는 방법에 있어서,
상기 각종의 상태들 중, 상기 어느 하나의 기기가 전담하여 처리하도록 지정된 상태 그룹에 속하는 상태들의 적어도 하나에 대한 현재 값을 포함하는, 상기 네트워크와는 통신 방식이 상이한 제 2네트워크 상에서 발생된 데이터 블록을 수신하는 1단계와,
기 설정된 공유정보가, 상기 수신한 데이터 블록에 대해서 적어도 상기 다른 기기와 공유하도록 설정된 것이면, 상기 데이터 블록을 공유 메시지로 구성하여, 적어도 상기 다른 기기가 수신할 수 있도록 상기 네트워크로 전송하고, 또한 상기 데이터 블록에 실린 하나 이상의 값을, 상기 상태 그룹에 속하는 상태들의 각각을 지시하는 정보가 등재되어 있는 상태값 목록에서, 해당되는 상태에 대한 현재 값으로 기록하는 2단계와,
상기 네트워크로부터 수신되는 상기 다른 기기로부터의 특정 상태에 대한 특정값으로의 설정 요청에 대하여, 기 설정된 블록 프로파일에서, 그 설정 요청에 포함된 상기 특정 상태를 지시하는 정보에 연계되어 등재된 식별자를 확인하고, 상기 특정값을 포함하는 데이터 블록을 상기 확인한 식별자를 선두에 포함시켜 구성한 후, 상기 네트워크와는 통신 방식이 상이한 제 2네트워크에 연결된 하나의 이상의 제 3의 기기가 수신할 수 있도록, 상기 제 2네트워크를 향해 상기 어느 하나의 기기에 구비된 인터페이스부를 통해 전송하는 3단계를 포함하여 이루어지되,
상기 데이터 블록은, 적어도 데이터 블록의 종류를 나타내는 식별자와 하나 이상의 상태에 대한 값이 채워진 부분으로써 구성된 것이고,
상기 블록 프로파일은, 상기 각종의 상태들 중 적어도 일부의 상태들의 각각에 대해, 해당 상태에 대한 값이 실리는 데이터 블록에 대한 식별자와 해당 상태를 지시하는 정보가 서로 연계되어 등재되어 있는 것인 방법.
In a method for inquiring or setting some of various states of the device and its components by exchanging messages with other devices by any one of a plurality of devices connected to a network built in an arbitrary device,
A data block generated on a second network that has a different communication method from the network, including a current value for at least one of the states belonging to a state group designated to be processed exclusively by the one device among the various states Step 1 of receiving and,
If the preset sharing information is set to be shared with at least the other device for the received data block, the data block is configured as a sharing message and transmitted to the network so that at least the other device can receive it, and the A second step of recording one or more values carried in a data block as a current value for a corresponding state in a state value list in which information indicating each of the states belonging to the state group is registered;
Regarding the request for setting to a specific value for a specific state from the other device received from the network, in a preset block profile, check the registered identifier in connection with information indicating the specific state included in the setting request And, after configuring the data block including the specific value by including the identified identifier at the head, one or more third devices connected to a second network having a different communication method from the network can receive the data block. 2 It comprises three steps of transmitting to the network through an interface unit provided in any one of the devices,
The data block is composed of at least an identifier indicating the type of data block and a part filled with values for one or more states,
In the block profile, for each of at least some of the various states, an identifier for a data block on which a value for the corresponding state is loaded and information indicating the corresponding state are listed in association with each other. .
임의의 장치에 구축된 네트워크에 연결된 복수의 기기들 중 어느 하나의 기기가, 다른 기기와 메시지를 교환함으로써, 상기 장치와 그 구성품들의 각종의 상태들의 일부에 대해 조회 또는 설정하는 방법에 있어서,
상기 네트워크를 통해 상기 다른 기기로부터 수신되는 공유 메시지에 포함된 하나 이상의 데이터 블록의 각각에 대해서, 기 설정된 블록 프로파일에 근거하여 해석함으로써, 해당 데이터 블록에 포함된 각 신호가 어떤 상태에 대한 것인 지를 식별하고, 각 신호를 상태값 목록에 등재된 상태들 중에서 그 식별된 상태에 대한 현재 값으로 기록하는 1단계와,
상기 어느 하나의 기기에서 실행되는 응용 프로그램으로부터 임의의 상태에 대한 요청을 수신하는 2단계와,
상기 임의의 상태에 대한 상기 요청이, 그 임의의 상태에 대한 조회이면 상기 임의의 상태에 대한 값을 상기 상태값 목록에서 확인하여 상기 응용 프로그램에 제공하고, 그 임의의 상태에 대한 설정이면, 그 임의의 상태를 지시하는 정보와 그 요청에 수반된 특정값을 포함하는 설정요구 메시지를 구성하여, 상기 네트워크를 통해, 복수의 기기들 중 상기 임의의 상태를 전담하여 처리하도록 지정된 특정 기기로 전송하는 3단계를 포함하여 이루어지되,
상기 데이터 블록은, 적어도 데이터 블록의 종류를 나타내는 식별자와 하나 이상의 상태에 대한 값이 채워진 부분으로써 구성된 것이고,
상기 블록 프로파일은, 상기 각종의 상태들 중 적어도 일부의 상태들의 각각에 대해, 해당 상태에 대한 값이 실리는 데이터 블록에 대한 식별자와 해당 상태를 지시하는 정보가 서로 연계되어 등재되어 있는 것인 방법.
In a method for inquiring or setting some of various states of the device and its components by exchanging messages with other devices by any one of a plurality of devices connected to a network built in an arbitrary device,
Each of the one or more data blocks included in the shared message received from the other device through the network is analyzed based on a preset block profile to determine what state each signal included in the corresponding data block corresponds to. A first step of identifying and recording each signal as a current value for the identified state among the states listed in the state value list;
Step 2 of receiving a request for an arbitrary state from an application program running on any of the devices,
If the request for the arbitrary state is a query for the arbitrary state, the value for the arbitrary state is checked in the state value list and provided to the application program. If the request for the arbitrary state is set, the Constructs a configuration request message including information indicating a certain state and a specific value accompanying the request, and transmits it to a specific device designated to handle the arbitrary state among a plurality of devices through the network. It includes three steps,
The data block is composed of at least an identifier indicating the type of data block and a part filled with values for one or more states,
In the block profile, for each of at least some of the various states, an identifier for a data block on which a value for the corresponding state is loaded and information indicating the corresponding state are listed in association with each other. .
제 22항에 있어서,
상기 어느 하나의 기기에는 피공유 프로파일이 설정되어 있되, 상기 피공유 프로파일에는, 상기 다른 기기에 설정된 공유 프로파일에 등재된 특정 상태들을 적어도 포함하는 상태들이 등재되어 있되,
상기 특정 상태들은, 상기 다른 기기가 해당 상태의 값이 획득되면 그 획득된 값을 포함하는 공유 메시지를 상기 네트워크로 전송하도록 지정된 것인 방법.
The method of claim 22,
A shared profile is set in one of the devices, and states including at least specific states registered in a shared profile set in the other device are registered in the shared profile,
The specific states are designated to transmit a shared message including the obtained value to the network when the other device obtains a value of the corresponding state.
제 23항에 있어서,
상기 응용 프로그램으로부터 전달받은 필요 상태들 중에서, 상기 피공유 프로파일에 등재되어 있지 않은 상태가 있으면, 그 미등재된 상태에 대해서, 상태공유 등록을 요구하는 메시지를 구성하여 상기 네트워크로 전송하는 4단계를 더 포함하여 이루어지는 것인 방법.
The method of claim 23,
If there is a state that is not listed in the shared profile among the necessary states transmitted from the application program, the fourth step of constructing a message requesting state sharing registration for the unlisted state and transmitting it to the network The method further comprising.
KR1020190177089A 2019-12-27 2019-12-27 Method for quickly processing service-based information query via a network and a device for said method KR102168775B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190177089A KR102168775B1 (en) 2019-12-27 2019-12-27 Method for quickly processing service-based information query via a network and a device for said method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190177089A KR102168775B1 (en) 2019-12-27 2019-12-27 Method for quickly processing service-based information query via a network and a device for said method

Publications (1)

Publication Number Publication Date
KR102168775B1 true KR102168775B1 (en) 2020-10-23

Family

ID=73039429

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190177089A KR102168775B1 (en) 2019-12-27 2019-12-27 Method for quickly processing service-based information query via a network and a device for said method

Country Status (1)

Country Link
KR (1) KR102168775B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220155543A (en) * 2021-05-14 2022-11-23 주식회사에어플러그 Method for changing services to provide the basis for information exchange between devices connected to a network, and an apparatus for said method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170031749A (en) * 2014-07-18 2017-03-21 아브 이니티오 테크놀로지 엘엘시 Managing parameter sets
KR102006634B1 (en) * 2019-03-06 2019-08-02 브이에스아이 주식회사 Method for enabling nodes of hetero-geneous communication protocols to share a single bus by adapting to one of the hetero-geneous communication protocols and devics for said method
KR101981138B1 (en) * 2018-03-22 2019-08-30 아주대학교산학협력단 Device and method for dividing a filed boundary of can trace

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170031749A (en) * 2014-07-18 2017-03-21 아브 이니티오 테크놀로지 엘엘시 Managing parameter sets
KR101981138B1 (en) * 2018-03-22 2019-08-30 아주대학교산학협력단 Device and method for dividing a filed boundary of can trace
KR102006634B1 (en) * 2019-03-06 2019-08-02 브이에스아이 주식회사 Method for enabling nodes of hetero-geneous communication protocols to share a single bus by adapting to one of the hetero-geneous communication protocols and devics for said method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220155543A (en) * 2021-05-14 2022-11-23 주식회사에어플러그 Method for changing services to provide the basis for information exchange between devices connected to a network, and an apparatus for said method
KR102485427B1 (en) * 2021-05-14 2023-01-06 주식회사에어플러그 Method for changing services to provide the basis for information exchange between devices connected to a network, and an apparatus for said method

Similar Documents

Publication Publication Date Title
RU2677970C2 (en) Remote data collection system
US8473898B2 (en) Apparatus and method for building integrated distributed applications for use with a mesh network
US10917298B2 (en) Global device management architecture for IoT devices with regional autonomy
WO2018196655A1 (en) Public network communication method for on-board electronic processing unit system
CN112542888B (en) Method for realizing plug and play of intelligent power distribution and utilization equipment
US11683369B2 (en) System for centralized data collection in a distributed service-oriented system
JPWO2021055952A5 (en)
EP3831038B1 (en) Automated relationship management of service layer entities in a communications network
US11678181B2 (en) Global device management architecture for IoT devices with regional autonomy
US20180152313A1 (en) Box for communication and management of devices
KR20180029900A (en) Management of log data in electronic systems
CN112532671A (en) Acquisition method, configuration method, edge computing cluster and device
US20180191858A1 (en) System for managing data of user devices
KR102168775B1 (en) Method for quickly processing service-based information query via a network and a device for said method
WO2005094193A2 (en) Home network system
CN112084127B (en) Distributed controller and distributed autonomous system
CN117640720A (en) Remote diagnosis channel creation method, vehicle connector and remote diagnosis system
CN113268050A (en) Vehicle diagnosis method and device
KR20180074128A (en) Diagnosis message routing system and method for gateway of vehicle
WO2005115096A2 (en) Home network system
US11438191B2 (en) Interconnection box for user devices
CN110933952B (en) Method for semantic search and rules for distributed data systems
US20210127268A1 (en) Vehicle communication security
US20080221749A1 (en) Diagnostic Interface for Applications on a Service Gateway
KR102485427B1 (en) Method for changing services to provide the basis for information exchange between devices connected to a network, and an apparatus for said method

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant