KR20180108505A - Method for transforming data for low volume transmission of meta model base protocol, and data transmitting system for low volume transmission of meta model base protocol - Google Patents

Method for transforming data for low volume transmission of meta model base protocol, and data transmitting system for low volume transmission of meta model base protocol Download PDF

Info

Publication number
KR20180108505A
KR20180108505A KR1020180033767A KR20180033767A KR20180108505A KR 20180108505 A KR20180108505 A KR 20180108505A KR 1020180033767 A KR1020180033767 A KR 1020180033767A KR 20180033767 A KR20180033767 A KR 20180033767A KR 20180108505 A KR20180108505 A KR 20180108505A
Authority
KR
South Korea
Prior art keywords
data
packet
metamodel
meta model
key table
Prior art date
Application number
KR1020180033767A
Other languages
Korean (ko)
Other versions
KR102087272B1 (en
Inventor
손현승
박보경
장우성
김로버트영철
Original Assignee
홍익대학교세종캠퍼스산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 홍익대학교세종캠퍼스산학협력단 filed Critical 홍익대학교세종캠퍼스산학협력단
Publication of KR20180108505A publication Critical patent/KR20180108505A/en
Application granted granted Critical
Publication of KR102087272B1 publication Critical patent/KR102087272B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • H04L67/2804
    • 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/56Provisioning of proxy services
    • H04L67/561Adding application-functional data or data for application control, e.g. adding metadata

Abstract

The present invention provides a method for transforming data for the low volume transmission of a meta model base protocol, and a data transmitting system for the low volume transmission of a meta model base protocol. The method includes: a step of generating energy sensing data; a step of allowing a client to receive the energy sensing data and converting it into meta model data including a meta model and meta data; a step of generating packet meta model data by dividing the meta model data; a step of transmitting the packet meta model data to a server through an IoT communication network; and a step of allowing the server to parse the packet meta model data to output the meta model data. It is possible to perform data transmission/reception using the IoT communication network.

Description

메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법 및 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템{METHOD FOR TRANSFORMING DATA FOR LOW VOLUME TRANSMISSION OF META MODEL BASE PROTOCOL, AND DATA TRANSMITTING SYSTEM FOR LOW VOLUME TRANSMISSION OF META MODEL BASE PROTOCOL}TECHNICAL FIELD [0001] The present invention relates to a data transformation method for a low-capacity transmission of a metamodel-based protocol and a data transmission system for a low-capacity transmission of a metamodel-based protocol. BACKGROUND ART [0002] MODEL BASE PROTOCOL}

본 발명은, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법 및 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템에 관한 것이다.The present invention relates to a data transformation method for low capacity transmission of a metamodel based protocol and a data transmission system for low capacity transmission of a metamodel based protocol.

신재생에너지의 발전량 데이터를 모니터링하기 위해서는 각각 발전소 내 인버터, 접속함, 센서 장치와 통신하여 실시간 발전량 정보들을 확인할 수 있어야 한다. 각 인버터들의 정보를 수집한 클라이언트는 서버로 데이터를 전송한다. 이 때 각각의 인버터들은 모두 같은 인버터가 아니여서 다른 통신 방법을 사용해야 한다. 또한 클라이언트는 각각의 인버터 데이터를 수집해 통합 서버에게 전달한다. 이러한 이종의 데이터를 통합하기 위해서 메타 모델로 데이터를 전송해 보낸다. In order to monitor generation data of new and renewable energy, it is necessary to be able to confirm the real-time generation amount information by communicating with inverters, connection boxes and sensor devices in each power plant. The client that collects the information of each inverter transmits data to the server. At this time, each inverter is not the same inverter and different communication method should be used. The client also collects each inverter data and delivers it to the integration server. In order to integrate these heterogeneous data, we send the data to the metamodel.

수많은 인버터의 데이터들이 전송되는데 모두 메타 모델로 변환되어 로컬 서버에서 통합 서버로 전송된다. 이러한 메타 모델 데이터들은 각각의 인버터에서 10초에 한 번씩 생성되고, 웹에 접속되면 10초마다 데이터를 수신 받아 실시간 정보를 제공한다. 그러나 TCP/IP 전용회선이나 LTE 무선 통신망으로 모니터링하는 경우 월 2-3만원 정보의 비용이 발생하게 된다. Numerous inverter data is transmitted, all of which are converted to a metamodel and transferred from the local server to the consolidation server. These metamodel data are generated every 10 seconds in each inverter, and when they are connected to the web, they receive data every 10 seconds and provide real time information. However, when monitoring over a TCP / IP leased line or an LTE wireless communication network, costs of 2-3,000 won / month information will be incurred.

한편, IoT 망은 월 사용료가 200~2200원으로 상대적으로 가격이 저렴하다. 그러나 IoT 망의 전송속도가 상대적으로 느려서, 메타 모델 데이터를 전송함에 있어 많은 에러가 발생하게 되는 문제점이 있다.On the other hand, IoT network costs 200-2200 won per month, which is relatively inexpensive. However, since the transmission speed of the IoT network is relatively slow, there is a problem that many errors occur in transmitting the metamodel data.

본 발명은 이종의 데이터를 통합한 메타 모델 데이터가 손실되지 않으면서, 상대적으로 적은 용량과 전송속도를 가지는 사물인터넷 통신망 (IoT 통신망)을 사용하여 데이터 송수신이 가능하도록 하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법 및 그 시스템을 제공하기 위한 것이다. The present invention relates to a method and apparatus for transmitting and receiving data by using a low-capacity internet protocol (IoT communication network) having a relatively small capacity and a transmission rate without losing metamodel data incorporating heterogeneous data, And a system for transforming data for transmission.

상술한 과제를 해결하기 위하여 안출된 본 발명의 일실시예인 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법은, 에너지 감지 데이터를 생성하는 단계; 클라이언트가 상기 에너지 감지데이터를 수신하여 이를 메타 모델과 메타 데이터를 포함하는 메타 모델 데이터로 변환하는 단계; 상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 단계; 상기 패킷 메타 모델 데이터를 사물인터넷 통신망을 통해 서버로 전송되는 단계; 및 상기 서버가 상기 패킷 메타 모델 데이터를 파싱하여 상기 메타 모델 데이터를 출력하는 단계를 포함할 수 있다.According to an aspect of the present invention, there is provided a method of transforming data for low capacity transmission of a metamodel-based protocol, the method comprising: generating energy sensing data; The client receiving the energy sensing data and converting it into metamodel data including a metamodel and meta data; Compressing the meta model data to generate packet meta model data; Transmitting the packet meta model data to a server through an object internet communication network; And parsing the packet meta model data by the server to output the meta model data.

여기서, 상기 사물 인터넷 통신망은, LoRa 망일 수 있다.Here, the object Internet communication network may be a LoRa network.

여기서, 상기 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법은, 키테이블 크리에이터를 통해 키테이블을 생성하여 데이터베이스에 저장하는 단계;를 더 포함하고, 상기 메타 모델 데이터를 분할하여 패킷 메타 모델 데이터를 생성하는 단계는, 데이터 패킷 크리에이터가 상기 키테이블을 이용하여 상기 메타 모델 데이터를 분할하여 상기 패킷 메타 모델 데이터를 생성하는 단계를 포함할 수 있다.The data transformation method for low-capacity transmission of the metamodel-based protocol may further include generating a key table through a key table creator and storing the generated key table in a database, and dividing the metamodel data into packet metamodel data The creating step may include a step in which the data packet creator divides the meta model data using the key table to generate the packet meta model data.

여기서, 상기 서버가 상기 패킷 메타 모델 데이터를 파싱하여 상기 메타 모델 데이터를 출력하는 단계는, 데이터 패킷 파서가 상기 키테이블을 이용하여 상기 패킷 메타 모델 데이터를 파싱하는 단계를 포함할 수 있다.Here, the server parsing the packet meta model data and outputting the meta model data may include parsing the packet meta model data using the key table.

여기서, 상기 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법은, 상기 사물 인터넷 통신망의 전송속도 정보를 획득하는 단계를 더 포함하고, 상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 단계는, 상기 전송속도 정보에 기초하여 상기 패킷 메타 모델 데이터의 기준 크기를 정하는 단계; 및 상기 기준 크기에 기초하여 상기 메타 모델 데이터를 분할하는 단계를 포함할 수 있다.The data transformation method for low-capacity transmission of the metamodel-based protocol may further include acquiring transmission rate information of the object Internet communication network, and generating packet metamodel data by dividing the metamodel data Determining a reference size of the packet meta model data based on the transmission rate information; And dividing the meta model data based on the reference size.

여기서, 상기 키테이블 크리에이터를 통해 키테이블을 생성하여 데이터베이스에 저장하는 단계는, 상기 메타 모델의 속성 정보를 이용하여 상기 키테이블을 생성하는 단계를 포함할 수 있다.The step of generating the key table through the key table creator and storing the key table in the database may include generating the key table using the attribute information of the meta model.

여기서, 상기 키테이블은, 아이디 필드, 키필드, 클래스네임 필드, 네임 필드 프로퍼티 필드, 사이즈 필드, 페어런츠 필드 및 차이들 필드를 포함할 수 있다.Here, the key table may include an ID field, a key field, a class name field, a name field property field, a size field, a parental field, and a difference field.

여기서, 상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 단계는, 상기 키테이블에 인서트쿼리문을 이용하여 상기 메타 데이터를 입력시켜서, 상기 메타 모델 데이터를 압축하여, 압축 데이터를 생성하는 단계; 및 상기 압축 데이터를 분할하여 다수의 패킷 메타 모델 데이터를 생성하는 단계를 포함할 수 있다.The generating of the packet meta model data by dividing the meta model data may include inputting the meta data using an insert query statement in the key table and compressing the meta model data to generate compressed data step; And dividing the compressed data to generate a plurality of packet meta model data.

여기서, 상기 메타 모델의 속성 정보를 이용하여 상기 키테이블을 생성하는 단계는, 상기 메타 모델의 최상위 모델인 Epackage 정보를 로딩하는 단계; 상기 Epackage 정보와 종속관계가 있는 eClassifires를 확인하는 단계; 상기 eClassifires가 확인되면, 키를 저장한 후 EClass name 속성 정보를 상기 키에 저장하는 단계; 상기 EClass name 속성 정보 저장후 StructualFeature를 확인하는 단계; 상기 StructualFeature가 확인되면, EAttribute를 확인하는 단계; 상기 EAttribute가 확인되면, name 정보 및 타입 속성 정보를 property와 Size 필드에 저장하고, 상기 EAttribute가 확인되지 않으면, EReference로 판단하여, 이의 네임 속성 정보를 child 필드에 저장하는 단계; 및 상기 저장된 데이터를 기반으로 레코드를 입력하는 단계;를 포함할 수 있다.Here, the step of generating the key table using the meta model attribute information may include loading Epkage information, which is a top model of the meta model, Identifying eClassifires that are dependent on the Epackage information; Storing the EClass name attribute information in the key after storing the key if the eClassifires are confirmed; Confirming StructualFeature after storing the EClass name attribute information; Confirming the EAttribute when the StructualFeature is confirmed; Storing the name information and the type attribute information in the property and size fields if the EAttribute is confirmed, determining EReference if the EAttribute is not confirmed, and storing the name attribute information in the child field; And inputting a record based on the stored data.

여기서, 상기 메타 모델의 속성 정보를 이용하여 상기 키테이블을 생성하는 단계는, 페어런츠 필드에 이전 클래스네임 데이터를 저장하는 단계를 더 포함할 수 있다.The step of generating the key table using the attribute information of the meta model may further include storing previous class name data in the parentel field.

여기서, 상기 패킷 메타 모델 데이터는, 전체 데이터 구조를 나타내는 헤더 패킷과, 상기 메타 데이터를 나타내는 바디 패킷으로 구성되는 바디 패킷을 포함할 수 있다.Here, the packet meta model data may include a header packet indicating an entire data structure, and a body packet composed of body packets indicating the metadata.

여기서, 상기 헤더 패킷은, 데이터 타입 정보와, 데이터 크기 정보를 포함하고, 상기 데이터 타입 정보는 라벨링 정보일 수 있다.Here, the header packet may include data type information and data size information, and the data type information may be labeling information.

여기서, 상기 헤더 패킷은, 가변 크기 정보를 더 포함할 수 있다.Here, the header packet may further include variable size information.

여기서, 상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 단계는, 상기 메타 모델 데이터의 태그를 확인하여 태그가 없으면 상기 해더 패킷에 키데이터를 추가하는 단계; 상기 메타 모델 데이터의 속성 정보를 확인하여, 속성정보가 있으면, 속성 정보가 원시형(Primitive) 형인지를 확인하는 단계; 속성 정보가 원시형인 경우, 상기 헤더 패킷에 압축 데이터 바이트를 추가한 후, 상기 메타 데이터의 바디를 상기 데이터 패킷에 추가하는 단계를 포함할 수 있다.The step of dividing the meta model data to generate packet meta model data may include the steps of: checking a tag of the meta model data and adding key data to the header packet if the tag is absent; Confirming attribute information of the meta model data and confirming whether the attribute information is a primitive type if the attribute information is present; And adding the compressed data byte to the header packet and adding the body of the metadata to the data packet if the attribute information is a primitive type.

여기서, 상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 단계는, 상기 속성 정보가 원시형이 아닌 경우, 상기 헤더 패킷에 데이터 크기를 추가하고, 상기 데이터 패킷에 상기 메타 데이터의 바디를 상기 데이터 패킷에 추가하는 단계를 포함할 수 있다.The step of dividing the meta model data to generate packet meta model data may include adding a data size to the header packet when the attribute information is not a primitive type and adding the size of the metadata to the data packet, And adding the data packet to the data packet.

여기서, 상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 단계는, 상기 메타 모델 데이터의 태그를 확인하고, 태그가 있으면, 상기 메타 모델 데이터를 분해하고, 분해된 데이터 패킷을 구분하기 위한 구분자를 추가하는 단계를 포함할 수 있다.The generating of the packet metamodel data by dividing the metamodel data may comprise: identifying a tag of the metamodel data; decomposing the metamodel data if the tag is present; And adding a delimiter.

여기서, 상기 메타 데이터의 태그의 키가 있는 경우, 상기 메타 모델 데이터를 분해하고, 분해된 데이터 패킷을 구분하기 위한 구분자를 추가하는 단계는, 상기 사물인터넷 망의 최대 데이터 패킷 크기에 맞게 사기 메타 모델 데이터를 분해하는 단계를 포함할 수 있다.The step of decomposing the meta model data and adding a delimiter for identifying the decomposed data packet when the key of the tag of the meta is present comprises the steps of: And decomposing the data.

여기서, 상기 사물 인터넷 통신망이 복수의 서브 통신망으로 구성되고, 상기 패킷 메타 모델 데이터를 사물인터넷 통신망을 통해 서버로 전송되는 단계는, 상기 복수의 서브 통신망을 통해 분할된 복수의 상기 패킷 모델 데이터가 각각 상기 서버로 전송되는 단계를 포함할 수 있다.In this case, the object Internet communication network is composed of a plurality of sub-communication networks, and the packet meta model data is transmitted to the server through the object internet communication network, the plurality of packet model data divided through the plurality of sub- To the server.

여기서, 상기 서버가 상기 패킷 메타 모델 데이터를 파싱하여 상기 메타 모델 데이터를 출력하는 단계는, 상기 패킷 모델 데이터에 대하여, 상기 서브 통신망 아이디 정보 및 수신 시간 정보을 포함하는 파일명으로 저장하는 단계를 포함할 수 있다.Here, the step of the server parsing the packet meta model data and outputting the meta model data may include storing the packet model data as a file name including the sub network ID information and the reception time information have.

여기서, 상기 서버가 상기 패킷 메타 모델 데이터를 파싱하여 상기 메타 모델 데이터를 출력하는 단계는, 상기 수신된 상기 패킷 모델 데이터를 누적 저장하는 단계를 포함할 수 있다.Here, the step of the server parsing the packet meta model data and outputting the meta model data may include accumulating the received packet model data.

여기서, 상기 서버가 상기 패킷 메타 모델 데이터를 파싱하여 상기 메타 모델 데이터를 출력하는 단계는, 상기 패킷 모델 데이터를 저장할 때마다 con 태그를 검사하는 단계; 상기 con 태그의 검사 결과에 따라, 상기 패킷 메타 모델 데이터가 상기 메타 모델 데이터의 마지막 데이터 내용을 가지고 있다고 판단되면, 그동안 누적된 패킷 모델 데이터를 하나의 패킷으로 통합하여 통합 패킷 데이터를 생성하는 단계; 및 상기 통합 패킷 데이터를 상기 키테이블을 이용하여 상기 메타 모델 데이터로 복원하는 단계를 포함할 수 있다.Herein, the server parsing the packet meta model data and outputting the meta model data comprises: checking the con tag every time the packet model data is stored; Generating aggregated packet data by integrating accumulated packet model data into one packet when it is determined that the packet meta model data includes the last data content of the meta model data according to a result of inspection of the con tag; And reconstructing the integrated packet data into the meta model data using the key table.

여기서, 상기 서버가 상기 패킷 메타 모델 데이터를 파싱하여 상기 메타 모델 데이터를 출력하는 단계는, 상기 패킷 모델 데이터의 누적 저장 횟수를 카운팅하는 단계; 및 상기 누적 저장 획수와, 상기 패킷 모델 데이터의 헤더 패킷에 저장된 분할 패킷 수 정보와 비교하여 매칭되면, 누적 저장된 패킷 모델 데이터를 하나의 패킷으로 통합하여 통합 패킷 데이터를 생성하는 단계를 포함할 수 있다.The step of the server parsing the packet meta model data and outputting the meta model data includes: counting the cumulative number of times of storing the packet model data; And a step of generating integrated packet data by integrating cumulatively stored packet model data into one packet when the accumulated number of storage strokes is matched with the divided packet number information stored in a header packet of the packet model data, .

여기서, 상기 에너지 감지 데이터를 생성하는 단계는, 발전설비로부터 획득되는 오리지널 에너지 감지 데이터를 생성하는 단계, 상기 오리지널 에너지 감지 데이터는, 오리지널 메타 모델과, 오리지널 메타 모델 데이터를 포함함; 데이터베이스 생성기를 통해 상기 오리지널 메타 모델을 이용하여 데이터베이스를 생성하는 단계; 및 상기 오리지널 메타 모델 데이터를 데이터베이스 삽입기를 통해 상기 데이터베이스에 삽입하여 상기 에너지 감지 데이터를 생성하는 단계를 포함할 수 있다.Here, the generating of the energy sensing data may include generating original energy sensing data obtained from a power generation facility, the original energy sensing data including an original metamodel and original metamodel data; Generating a database using the original meta-model through a database generator; And generating the energy sensing data by inserting the original metamodel data into the database through a database inserter.

본 발명의 다른 실시예인 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템은, 키테이블을 생성하는 키테이블 크리에이터 및 상기 키테이블을 저장하는 디비 메모리를 포함하는 데이터베이스; 신재생 에너지 생산 설비로부터 에너지 감지데이터를 수신하고, 이를 메타 모델과 메타데이터를 포함하는 메타 모델 데이터로 변환하고, 상기 키테이블을 이용하여 상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 클라이언트; 및 상기 클레이언트로부터 패킷 메타 모델 데이터를 사물인터넷 통신망을 통해 수신하고 상기 패킷 메타 모델 데이터를 파싱하여 상기 메타 모델 데이터로 복원하여 출력하는 서버를 포함할 수 있다.According to another embodiment of the present invention, a data transmission system for low-capacity transmission of a metamodel-based protocol includes a database including a key table creator for generating a key table and a database memory for storing the key table; Receives energy sensing data from a renewable energy production facility, converts the energy sensing data into metamodel data including a metamodel and meta data, divides and compresses the metamodel data using the key table to generate packet metamodel data Client; And a server for receiving the packet meta model data from the client through the object internet communication network, parsing the packet meta model data, and restoring the meta model data into the meta model data.

여기서, 상기 사물 인터넷 통신망은, LoRa 망일 수 있다.Here, the object Internet communication network may be a LoRa network.

여기서, 상기 클라이언트는, 상기 데이터베이스로부터 키테이블을 수신받고, 이를 이용하여 상기 메타 모델 데이터를 분할 압축하여 상기 패킷 메타 모델 데이터를 생성하는, 데이터 패킷 크리에이터를 포함할 수 있다.The client may include a data packet creator for receiving the key table from the database and generating the packet meta model data by dividing the meta model data using the key table.

여기서, 상기 서버는, 상기 데이터베이스로부터 키테이블을 수신받고, 이를 이용하여 상기 패킷 메타 모델 데이터를 파싱하여 복원하는 데이터 패킷 파서를 포함할 수 있다.Here, the server may include a data packet parser that receives the key table from the database and parses and restores the packet meta model data using the received key table.

여기서, 상기 데이터베이스는, 상기 메타 모델 데이터를 이용하여 키테이블을 생성하는 키테이블 크리에이터를 포함할 수 있다.Here, the database may include a key table creator for generating a key table using the meta model data.

상술한 구성을 가진 본 발명의 일실시예에 따르면, 상대적으로 적은 용량과 전송속도를 가지는 사물인터넷 통신망을 통해서도 충분히 실시간으로 대용량의 메타 모델 데이터를 전송할 수 있게 된다. According to an embodiment of the present invention having the above-described configuration, it is possible to transmit a large-capacity metamodel data in a sufficiently long time in a real-time through an object internet communication network having a relatively small capacity and a transmission speed.

도 1은 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템을 설명하기 위한 블록 구성도.
도 2는 본 발명의 일실시예에 따른 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법에 의해 생성되는 헤더 패킷을 예시하는 도면.
도 3은, 본 발명과 관련된 에너지 감지 데이터 중 발전 설비에서의 에너지 감지 데이터의 예를 나타내는 도면.
도 4는 본 발명과 관련된 에너지 감지 데이터 중 접속함에서의 에너지 감지 데이터의 예를 나타내는 도면.
도 5는, 본 발명의 일실시예에 따른 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법에서의 저용량 전송을 위한 구조를 나타내는 도면.
도 6은 본 발명의 일실시예에 따른 메타 모델과 키테이블의 데이터간 관계를 예시하는 도면.
도 7은, 본 발명의 일실시예에 따라 키테이블에서 생성되는 레코드의 예를 나타내는 도면.
도 8은 본 발명의 일실시예에 따른 키테이블 크리에이터에서의 동작을 설명하기 위한 순서도.
도 9는 본 발명의 일실시예에 따라 메타 모델 기반의 인서트 쿼리문의 자동생성을 예시하는 도면.
도 10은 본 발명의 일실시예에 따른 키테이블의 구조를 예시하는 도면.
도 11은 본 발명의 일실시예에 따른 메타 모델 데이터, 키테이블, 헤더 패킷의 구성을 예시하는 도면.
도 12는, 본 발명의 일실시예에 따라 메타 모델 데이터를 기반으로 데이터 패킷을 구성하는 과정을 예시하는 도면.
도 13은 본 발명의 일실시예에 따른 데이터 패킷 분해 결과를 예시하는 도면.
도 14는 본 발명의 일실시예에 따른 패킷 크리에이터에서의 동작을 설명하기 위한 순서도.
도 15는 본 발명의 일실시예에 따라 추출된 실제 전송되는 패킷의 값을 갖는 Con 태그값을 예시하는 도면.
도 16은 본 발명의 일실시예에 따라 추출된 콘테그 값들을 하나의 데이터 패킷으로 통합하는 과정을 설명하는 예시도.
도 17은 본 발명의 일실시예에 따라 분할된 데이터 패킷에서 메타 데이터를 복원하는 과정을 예시하는 도면.
도 18은 본 발명의 일실시예에 따른 패킷 파서에서의 동작을 설명하기 위한 순서도.
1 is a block diagram illustrating a data transmission system for low capacity transmission of a metamodel-based protocol.
2 is a diagram illustrating a header packet generated by a data transformation method for low capacity transmission of a metamodel-based protocol according to an embodiment of the present invention;
3 is a diagram showing an example of energy sensing data in a power generation facility among energy sensing data related to the present invention;
4 is a diagram showing an example of energy sensing data in a connection box among energy sensing data related to the present invention;
5 illustrates a structure for low capacity transmission in a data transformation method for low capacity transmission of a metamodel based protocol according to an embodiment of the present invention;
6 is a diagram illustrating a relationship between meta-models and data in a key table according to an embodiment of the present invention;
7 is a diagram showing an example of a record generated in a key table according to an embodiment of the present invention;
FIG. 8 is a flowchart for explaining operations in a key table creator according to an embodiment of the present invention; FIG.
9 illustrates automatic generation of a metamodel-based insert query statement in accordance with one embodiment of the present invention.
10 is a diagram illustrating a structure of a key table according to an embodiment of the present invention;
11 is a diagram illustrating a configuration of metamodel data, a key table, and a header packet according to an embodiment of the present invention.
FIG. 12 illustrates a process of constructing a data packet based on meta model data according to an embodiment of the present invention. FIG.
13 illustrates data packet decomposition results in accordance with an embodiment of the present invention.
FIG. 14 is a flowchart for explaining operations in a packet creator according to an embodiment of the present invention; FIG.
15 is a diagram illustrating a Con tag value having a value of an actually transmitted packet extracted according to an embodiment of the present invention;
16 is a diagram illustrating a process of integrating extracted content values into one data packet according to an embodiment of the present invention.
17 illustrates a process of recovering metadata in a segmented data packet according to an embodiment of the present invention.
FIG. 18 is a flowchart for explaining operations in a packet parser according to an embodiment of the present invention; FIG.

이하, 본 발명의 일실시예인 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법 및 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템에 대하여 도면을 참조하여 보다 상세하게 설명한다. Hereinafter, a data transformation method for low capacity transmission of a metamodel-based protocol and a data transmission system for low capacity transmission of a metamodel-based protocol, which are one embodiment of the present invention, will be described in detail with reference to the drawings.

도 1은 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템을 설명하기 위한 블록 구성도이다. 도 1에 도시된 바와 같이, 본 발명의 일실시예인 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템은, 크게, 클라이언트(1), LoRA 장치(2: 로라 장치), IOT 기간망(3:LoRa 기간망), 그리고 서버(4)를 포함하여 구성될 수 있다. 1 is a block diagram illustrating a data transmission system for low-capacity transmission of a metamodel-based protocol. 1, a data transmission system for low-capacity transmission of a metamodel-based protocol, which is an embodiment of the present invention, includes a client 1, a LoRA device 2 (a Laura device), an IOT backbone network 3 A backbone network), and a server 4.

신재생 에너지 발전 설비(5)에는 다양한 종류의 오리지널 에너지 감지 데이터를 생성할 수 있다. 동일 에너지 발전 설비, 예컨대, 도시된 바와 같은 태양광 발전 설비(5)에서도, 전지 모듈(51)에서의 감지데이터,접속함(52)에서의 감지 데이터, 인버터(53)에서의 감지 데이터가 생성될 수 있다. 이와 같은 오리지널 감지 데이터는, 클라이언트(1)로 전송된다. 이 오리지널 감지데이터는 오리지널 메타 모델과, 오리지널 메타 모델 데이터를 포함하며, 데이터베이스 생성기를 통해 상기 오리지널 메타 모델을 이용하여 데이터베이스를 생성하고, 상기 오리지널 메타 모델 데이터를 데이터베이스 삽입기를 통해 상기 데이터베이스에 삽입하여 후술하는 에너지 감지 데이터(통합된 형태의 메타 모델 데이터)를 생성함으로써, 다양한 종류의 오리지널 에너지 감지 데이터를 하나의 통합된 프로토콜 형태로 변환시켜서 클라이언트에 전송하게 된다. 이에 따라, 이종의 신재생 에너지 발전 설비가 추가되더라도 전체적인 시스템 개조 없이 간단하게 오리지널 에너지 감지 데이터를 에너지 감지데이터로 변환할 수 있어서, 경제성을 높일 수 있게 된다.Various kinds of original energy detection data can be generated in the renewable energy generation facility 5. [ The detection data in the battery module 51, the detection data in the connection box 52, and the detection data in the inverter 53 are generated in the same energy generation facility, for example, the solar power generation facility 5 as shown . Such original detection data is transmitted to the client 1. The original sensed data includes an original metamodel and original metamodel data, a database is created using the original metamodel via a database generator, the original metamodel data is inserted into the database through a database inserter, (Integrated metamodel data), thereby converting various types of original energy sensing data into a single integrated protocol type and transmitting them to the client. Accordingly, even if a new type of renewable energy generation facility is added, the original energy sensing data can be easily converted into the energy sensing data without the entire system modification, thereby improving the economical efficiency.

이와 같이 신재생 에너지 발전 설비중 하나로, 본 발명에서는 태양광 발전설비(5)를 도 1에서 예시하고 있다. 이와 같이 에너지 감지데이터가 발전 설비에서 생성되면, 이를 클라이언트(1)가 수신하게 된다. 에너지 감지 데이터로는, 접속함(52)에서의 다양한 전압, 전류 관련 데이터, 또는 인버터(53)에서의 전압 전류 관련 데이터가 될 수 있다. As described above, the solar power generation facility 5 is one example of a renewable energy generation facility in the present invention, as illustrated in FIG. When the energy sensing data is generated in the power generating facility, the client 1 receives the energy sensing data. The energy sensing data may be various voltages in the connection box 52, current related data, or voltage current related data in the inverter 53.

클라이언트(1)에서는 상기 에너지 감지데이터를 수신하여 상술한 바와 같이 메타 모델 데이터와 메타 데이터를 포함하는 메타 모델 데이터로 변환하고, 메타 모델 데이터를 사물 인터넷 통신망의 통신속도를 고려하여 패킷 메타 모델 데이터로 분할하게 된다. 그리고 분할된 패킷 메타 모델 데이터는 다수의 로라 장치(2:사물 인터넷 통신 장치)를 통해 병렬로 IOT 기간망(3:사물인터넷 통신망)으로 전송되게 되고, 이 IOT 기간망(3)을 통해 통신 서버는 패킷 메타 모델 데이터를 수신하고, 서버(4)에서는 패킷 메타 모델 데이터를 파싱하고 통합하여서 다시 최초의 메타 모델 데이터 복원하게 된다. The client 1 receives the energy sensing data and converts it into metamodel data including the metamodel data and the meta data as described above. The metamodel data is converted into packet metamodel data in consideration of the communication speed of the object Internet communication network . The divided packet metamodel data is transmitted to the IOT backbone network 3 (object Internet communication network) in parallel through a plurality of lauler apparatuses 2 (object Internet communication apparatuses). Through the IOT backbone network 3, The server 4 receives the metamodel data, parses and integrates the packet metamodel data, and restores the original metamodel data again.

여기서 IOT 사물인터넷 통신망으로서 LoRa망이 이용될 수 있는데 LoRa망은 저용량 통신을 지원한다. 이론적으로는 무선 수신율에 따라 최소 65byte에서 최대 242 byte를 지원하게 된다. 그런데, 기존의 태양광 발전에서 획득되는 에너지 감지 데이터는 약 1kbyte정도이므로, 이를 그대로 분할하는 경우, 최소 15개 이상으로 분할하여야 하고, 이와 같이 구성하게 되면, 1개의 감지데이터를 전송하는데 15*10초(데이터 한번 보낼때 걸리는 시간이 10초임) = 150초 정도 소모되는 문제가 발생한다. Here, LoRa network can be used as IOT Internet communication network, and LoRa network supports low capacity communication. Theoretically, it supports a minimum of 65 bytes and a maximum of 242 bytes depending on the radio reception rate. However, since the energy detection data obtained from the existing solar power generation is about 1 kbyte, if it is divided as it is, it should be divided into at least 15 or more. In such a configuration, 15 * 10 (The time taken to send the data is 10 seconds) = 150 seconds.

이에 본원 발명에서는 원시 데이터인 에너지 감지 데이터 자체를 줄여서 전송 효율을 향상시키게 된다. 이점에 대해서는 뒤에서 상세하게 설명하도록 한다.Therefore, in the present invention, the energy sensing data, which is the raw data, is reduced, thereby improving the transmission efficiency. This will be explained in detail later.

도 2는 본 발명의 일실시예에 따른 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법에 의해 생성되는 헤더 패킷을 예시하는 도면이다. 데이터 용량을 최대한 줄이기 위해서는 기본 문자열로 보내는 정보를 바이트로 변환한다. 그리고 최소한의 바이트를 사용하여 용량을 줄인다.2 is a diagram illustrating a header packet generated by a data transformation method for low-capacity transmission of a metamodel-based protocol according to an embodiment of the present invention. To reduce the amount of data as much as possible, convert the information sent in the default string to bytes. And use a minimum of bytes to reduce capacity.

데이터 패킷은 헤더와 바디 패킷으로 구성되는데, 헤더에는 기존에 보내고자하는 메타 모델 데이터의 구조 정보가 저장되고, 바디에는 실제 데이터값이 나누어져 전송된다. 그러므로, 헤더는 한번에 전송하고, 바디는 용량에 따라 n개로 나누어 전송되게 된다. The data packet consists of a header and a body packet. The header stores the structure information of the metamodel data to be transmitted, and the actual data value is transmitted to the body. Therefore, the header is transmitted at one time, and the body is divided into n pieces according to the capacity.

헤더 패킷은 데이터의 타입과 크기 정보가 저장된다. 즉, 도 2와 같이 연속적인 형태가 된다. 여기서 우리는 3가지 경우를 고려한다.The header packet stores the type and size information of the data. That is, as shown in Fig. Here we consider three cases.

1. 하나의 타입에 하나의 크기 정보가 있는 경우(타입, 크기는 1byte로 제한) = 총 2byte1. When there is one size information in one type (type and size are limited to 1 byte) = total 2 bytes

2. 하나의 타입에 여러 개의 크기 정보(N개)가 있는 경우 = 총 1+N byte2. When there are several size information (N) in one type = total 1 + N byte

3. 하나의 타입에 크기가 없는 경우 = 총 1byte3. If there is no size in one type = 1 byte in total

그러므로 헤더는 먼저 데이터 타입이 오고 크기가 없거나 있거나 여러 개인 경우라는 것이다. 이렇게 크기의 개수가 가변적일 때는 일반적으로 데이터를 해석할 때 가변적인 데이터를 앞에 붙여줘야 한다. 우리는 이 정보를 줄이기 위해서 데이터의 스키마인 메타 모델의 정보를 활용해 헤더를 만들게 된다. Therefore, the header is that the data type comes first, there is no size, or there are multiple sizes. When the number of sizes is variable, generally, the data must be prefixed with variable data when interpreting the data. To reduce this information, we use the information in the metamodel, which is the schema of the data, to create a header.

먼저 데이터 타입의 길이를 1byte로 한정하기 위해서 메타 모델의 정보에서 나타나는 데이터 타입들을 알파벳 순서대로 라벨링하게 된다. 예를 들어 도 3에 도시된 바와 같이, PlantDisplay라는 메타 모델이 있고 이에 상응하는 데이터가 있을 때, 기존 방식대로 보내게 되면 문자열로 PlantDisplay를 보내야하기 때문에 12byte를 사용해야 한다. 우리는 보내는 쪽이나 받는 쪽 모두 메타 모델 정보를 가지고 있기 때문에 데이터 타입들에 라벨링을 적용해 두면 이 PlantDisplay가 ‘a’로 표현될 수 있다. 알파벳 순서대로 라벨링 되기 때문에 PlantDisplay가 ‘a’로 표현되는 것은 메타 모델 데이터에서 첫 번째 모델이라는 것을 의미한다. PlantDisplay의 속성으로 current, days, yesterday, month_power, last_month_power, total 총 6개가 사용되었다. 기존에는 이 정보를 모두 보내야 하지만 메타 모델에서는 저장된 순서대로 데이터를 순서화해 속성의 이름정보를 보내지 않는다. 그리고 메타 모델에 정의된 EFloat, EDouble과 같이 크기가 가변적이지 않고 고정된 경우는 크기 정보도 보내지 않는다. 그러므로 이 예제에서 헤더를 보낼 때는 단지 ‘a’만 보내게 된다. ‘a’라는 알파벳 정보만 가지고 메타 모델을 참조해 원래의 데이터를 복구해 낼 수 있다. 이 과정을 위해서는 메타 모델의 정보와 알파벳 정보의 연결 관계를 미리 만들어 줄 필요가 있다. 이 연결 관계 데이터가 저장된 데이터베이스 테이블을 구성하는데 이것을 우리는 키테이블크리에이터(Key Table Creator)라고 부른다. 이에 대해서는 뒤에 보다 상세하게 설명하도록 한다. First, in order to limit the length of the data type to 1 byte, the data types appearing in the metamodel information are labeled in alphabetical order. For example, as shown in FIG. 3, when there is a meta model called PlantDisplay and corresponding data is transmitted in the conventional manner, 12 bytes are required because PlantDisplay is sent as a string. Since we have metamodel information for both sender and receiver, this PlantDisplay can be represented by 'a' if we apply labeling to the data types. Because they are labeled in alphabetical order, the representation of PlantDisplay as 'a' means that it is the first model in the metamodel data. The attributes of PlantDisplay were current, days, yesterday, month_power, last_month_power, total 6. In the past, all of this information has to be sent, but the metamodel does not send the name information of the property by ordering the data in the order in which they are stored. Also, if the size is not fixed, such as EFloat or EDouble defined in the metamodel, size information is not sent. So, in this example, when you send the header, you just send 'a'. The original data can be restored by referring to the metamodel only with the alphabet information 'a'. For this process, it is necessary to make a connection relation between the information of the meta model and the alphabet information in advance. We construct a database table in which this connection relationship data is stored. This is called a key table creator. This will be described in more detail later.

한편, EString 타입, EDate 타입, Enum 타입 등에만 크기 정보를 보내게 된다. 도 4에는 접속함(JunctionBox)의 메타 모델데이터를 예시하고 있다. 도 4에 도시된 바와 같이 JunctionBox는 EString 타입을 가진다. 이런 경우에는 실제로 생성되는 데이터를 확인해 그 크기를 결정해야 한다. 도 4의 경우, JunctionBox를 ‘b’라고 라벨링 했을 때, 데이터의 크기를 확인하여 ‘b 12 12’ 라고 헤더를 만들게 된다. 첫 번째 데이터인 ‘num’의 데이터 타입은 ‘EInt’로 크기가 4byte로 고정되어 있기 때문에 크기 정보를 헤더에 기술하지 않고 두 번째와 세 번째 데이터의 데이터 타입이 ‘EString’으로 크기가 가변적이기 때문에 실제 데이터 "0;0;0;0;0;0;"의 크기를 byte로 계산해 헤더에 입력하게 된다.On the other hand, size information is sent only to EString type, EDate type, Enum type and so on. FIG. 4 illustrates metamodel data of a junction box. As shown in FIG. 4, the JunctionBox has an EString type. In this case, you need to determine the size of the data that is actually generated. In the case of FIG. 4, when the JunctionBox is labeled 'b', the size of the data is checked to make a header of 'b 12 12'. Since the data type of the first data 'num' is 'EInt' and the size is fixed to 4 bytes, the size information is not described in the header, and the data type of the second and third data is variable in size to 'EString' The size of the actual data "0; 0; 0; 0; 0; 0;

바디에서 데이터를 보낼 과정에서 고정형 크기를 가지는 Primitive Type(EInt, EFloat, EDouble 등)은 적은 숫자를 보낼 때 데이터의 낭비를 초래한다. 예를 들어 EInt(4byte)로 정의된 경우 4byte로 고정되어 있기 때문에 0의 값이라도 0x00000000으로 4byte로 전송한다. 1인 경우에도 0x00000001으로 4byte를 무조건 사용해야한다. 1byte로 표현 가능하지만 3byte가 낭비된다. 그래서 헤더의 key 값과 크기 값 사이에 데이터의 값에 의해 사이즈를 가변할 수 있는 정보를 추가로 넣는다(가변 크기 정보). 이렇게 바디에 입력될 크기가 중요한 이유는 데이터 자체가 형식이 없는 바이너리 데이터이기 때문이다. 헤더의 크기 정보가 잘못되어 있으면 엉뚱한 값을 읽을 수 있다. 그러므로 헤더에는 데이터의 크기 정보를 잘 보관해야 한다.Primitive types (EInt, EFloat, EDouble, etc.) with a fixed size in the process of sending data in the body cause waste of data when sending a small number. For example, if it is defined as EInt (4 bytes), it is fixed to 4 bytes, so even if it is 0, it is transmitted in 4 bytes with 0x00000000. 1, 0x00000001 and 4 bytes should be used unconditionally. It can be expressed in 1 byte, but 3 bytes is wasted. Therefore, information that can change the size by the value of the data is added between the key value and the size value of the header (variable size information). The size to be entered into the body is important because the data itself is untyped binary data. If the size information of the header is wrong, the wrong value can be read. Therefore, the size information of the data should be kept in the header.

또한, 아래의 표 1과 같이, 이 가변크기는 2bit를 가변 데이터 공간으로 사용한다. 이 공간의 사용은 메타 모델의 속성의 개수에 의해 결정된다. 앞의 plantdisplay와 같은 경우에는 속성이 6개로 6 x 2bit = 12bit (12/8 = 2byte(올림))으로 크기가 결정된다. 그리고 junctionbox는 속성이 1개로 1 x 2bit = 2/8 = 1byte(올림)이다. In addition, as shown in Table 1 below, this variable size uses 2 bits as a variable data space. The use of this space is determined by the number of attributes of the metamodel. In the case of the above plantdisplay, the size is determined by 6 attributes, 6 x 2 bits = 12 bits (12/8 = 2 bytes (rounded up)). And the junctionbox has one property, 1 x 2bit = 2/8 = 1byte (raised).

즉, N(속성의 개수) x 2bit = M/8bit = T(올림) 으로 크기를 결정한다.That is, the size is determined by N (number of attributes) x 2 bits = M / 8 bits = T (increasing).

88 77 66 55 44 33 22 1One 00 00 00 00 00 00 00 00

데이터값의 범위는 아래의 [표 2]와 같다. 보내려고 하는 바디 데이터에서 값을 읽어서 최종크기를 특정한다. 를 들어 0은 key의 2bit에 00의 값을 가지고 바디에서 읽을 때 1byte만 읽게 된다.The range of data values is shown in [Table 2] below. Read the value from the body data you want to send to determine the final size. For example, 0 is a value of 00 for 2 bits of the key, and only 1 byte is read when reading from the body.

값의 범위Range of values 크기(byte)Size (byte) 키의 bit 표현A bit representation of the key -128~127-128 to 127 1byte1 byte 0000 -32,768~32,768-32,768 ~ 32,768 2byte2byte 0101 -2,147,483,638~2,147,483,638-2,147,483,638 ~ 2,147,483,638 4byte4byte 1010 그외etc 8byte8byte 1111

여기서 어떠한 구분도 없는 헤더 정보에서 타입, 가변크기, 크기를 구분하는 것이 중요한데, 이것은 메타 모델 정보를 테이블로 변환한 키테이블(Key Table)의 참조로 가능하다. 다음은 이것을 처리하기 위한 개략적인 알고리즘이다.Here, it is important to distinguish type, variable size, and size from header information without any division. This can be done by referring to a key table that converts metamodel information into a table. The following is a schematic algorithm for processing this.

(1) 타입을 읽어 Key Table에서 Primitive Type의 속성(EInt, EFloat, EDouble 등)의 개수 P와 그 외의 속성 값(EString, EDate, Enum 등)의 개수 V를 가져온다. (1) Read the type to get the number P of primitive type attributes (EInt, EFloat, EDouble, etc.) and the number of other attribute values (EString, EDate, Enum, etc.) in the Key Table.

(2) P를 2bit로 곱해서 가변크기 값을 알아낸다. (2) Multiply P by 2 bits to find the variable size value.

(3) 헤더에서 가변크기 만큼 byte를 읽어 낸다.(3) Read bytes of variable size from the header.

(4) V의 값 만큼의 byte를 읽어 낸다.(4) Read as many bytes as the value of V.

이렇게 처리하면 헤더에서 타입, 가변크기, 크기를 구분해 처리할 수 있게 된다.This will allow you to handle type, variable size, and size in the header.

바디는 보내고자 하는 모든 데이터를 헤더의 구조에 맞게 순서화한다. 그리고 보낼 수 있는 최대 패킷의 크기로 나눠서 보낸다. 예를 들어 보내고자 하는 데이터의 총 크기가, 즉 압축된 패킷 메타 모델 데이터의 크기가 400byte라 하고 최대 패킷의 크기가 65byte일 때 데이터 패킷의 순서를 기록하는 2byte를 뺀 63byte(즉, 분할된 패킷 메타 모델 데이터의 크기)로 나눈다. 여기서 최대 패킷의 크기는 사물 인터넷 통신망의 전송속도에 기초한다. 즉, 사물인터넷의 전송 속도 정보를 획득하면, 그 전송속도에 따라 패킷 메타 모델 데이터의 기준 크기를 나누게 되는 것이다. The body orders all the data to be sent according to the structure of the header. And the size of the largest packet that can be sent. For example, when the total size of data to be transmitted, that is, the compressed packet metamodel data size is 400 bytes and the maximum packet size is 65 bytes, 63 bytes minus 2 bytes for recording the order of data packets (i.e., Size of metamodel data). Here, the maximum packet size is based on the transmission rate of the object Internet communication network. That is, when the transmission speed information of the object Internet is obtained, the reference size of the packet meta-model data is divided according to the transmission speed.

400byte / 63byte = 6으로 나누어지고 나머지가 22 byte가 되어 총 7회로 나누어 보낸다. 순서를 기록하는 2byte를 제외하고 최대 패킷 크기인 63byte의 6개의 바디 패킷이 전송되고 마지막으로 22byte의 바디 패킷을 전송한다. 400byte / 63byte = 6, and the remainder is divided into 22 bytes. 6 body packets of 63 bytes, which is the maximum packet size, except for 2 bytes for recording the order, are transmitted, and finally, a body packet of 22 bytes is transmitted.

데이터를 보낼 때 최대 패킷의 크기에 맞게 분해된 패킷들의 순서를 확인하기 위해서 앞 1byte는 보내고자 하는 총 데이터 패킷의 개수, 두 번째 1byte는 현재 데이터 패킷의 순서를 입력하고 이 2개의 바이트를 제외한 63byte에 분해된 데이터들을 입력하여 총 7번 전송하게 된다.In order to check the order of packets decomposed according to the maximum packet size when sending data, the first 1 byte is the total number of data packets to be sent, the second 1 byte is the order of the current data packet, and 63 bytes And transmits the data 7 times in total.

[표 3]은 실제 보낼 때 사용되는 헤더와 바디 패킷의 예시이다. 헤더에 위 칸은 byte를 16진수로 표현한 것이고 아래 칸은 이것의 실제 의미이다. 첫 번째에는 데이터 타입을 의미하는 알파벳이 오고 두 번째에는 숫자가 올수도, 오지 않을 수도, 여러 개가 올 수도 있다. 이러한 내용은 단지 현재 보낸 헤더만으로 그 의미를 해석할 수 없고 키테이블 크리에이터(Key Table Creator)에서 만들어진 참조 테이블을 참고해야 한다. 그리고 바디는 헤더의 데이터 구조에 맞게 보내고자 하는 데이터를 구성하여 보내게 된다.[Table 3] is an example of header and body packets used in actual transmission. The header in the header is a hex representation of the byte, and the space below is the actual meaning of it. The first is an alphabetical data type, the second is a number, it may or may not be a number. This information can not be interpreted only by the header that is currently sent, and it should refer to the reference table created by the Key Table Creator. Then, the body composes the data to be sent according to the data structure of the header and sends it.

typetype Binary DataBinary Data 헤더
Header
6c 07 1c 07 61 68 6b 6a 65 67 66 40 406c 07 1c 07 61 68 6b 6a 65 67 66 40 40
l 7 28 7 a h k j e g f 64 64l 7 28 7 a h k j e g f 64 64 바디body 0x0601303031...(생략)...
0x0602000000...(생략)...
0x0603000000...(생략)...
0x060401303b...(생략)...
0x0605303b30...(생략)...
0x06063b303b
0x0601303031 ... (omitted) ...
0x0602000000 ... (omitted) ...
0x0603000000 ... (omitted) ...
0x060401303b ... (omitted) ...
0x0605303b30 ... (omitted) ...
0x06063b303b

이러한 원리에 따른 본 발명에 따른 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법을 도 5를 참조하여 설명하도록 한다. A data transformation method for low-capacity transmission of a metamodel-based protocol according to the present invention will be described with reference to FIG.

도 5는, 본 발명의 일실시예에 따른 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법에서의 저용량 전송을 위한 구조를 나타내는 도면이다. 도 5에 도시된 바와 같이, 본 발명에 따른 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템은 데이터베이스(6), 클라이언트(1) 그리고 서버(4)를 포함하여 구성된다. FIG. 5 is a diagram illustrating a structure for low capacity transmission in a data transformation method for low capacity transmission of a metamodel-based protocol according to an embodiment of the present invention. As shown in FIG. 5, a data transmission system for low-capacity transmission of a metamodel-based protocol according to the present invention includes a database 6, a client 1, and a server 4.

데이터베이스(6)에는 도시된 바와 같이 키테이블 크리에이터(61)와 키테이블을 저장하는 데이터베이스인 DB 메모리(62)를 포함하여 구성될 수 있다. 데이터베이스(6)의 key Table Creator(61)는 메타 모델 데이터를 구성하는 모델들에 라벨링한 데이터와 각 데이터들의 크기를 저장하는 키테이블을 생성한다. 클라이언트(1)에 포함된 데이터 패킷 크리에이터(11:Data Packet Creator)는 데이터베이스(6)에서 생성된 Key Table를 수신한 후, 이를 참조하여 보내고자 하는 데이터(XMI형태의 메타 모델 데이터, 즉, 태양광 바)를 입력 받아 바이너리 형태로 데이터 크기가 축소된 패킷을 생성하고, 이 축소된 패킷을 사물인터넷 통신망의 전송속도를 기준으로 상기 패킷을 분할한 패킷 메타 데이터를 생성하고, 이 분할된 패킷 메타 데이터는 다수의 LoRa 장치(2)를 포함하는 LoRa 망(3)을 통해 순차적으로 서버에 전송된다. 분할된 패킷 메타 데이터를 수신한 서버(4)는 데이터 패킷 파서(41:Data Packet Parser)를 구비하며, 상기 데이터베이스(6)의 키테이블 크리에이터(61)에 의해 생성된 키테이블을 수신하며, 데이터 패킷 파서(41)는 상기 키테이블을 참조하여 패킷 메타 모델 데이터를 만들어낸 과정을 역으로 수행하여 클라이언트(1)가 보내고자 했던 원본 XMI 데이터를 복원하게 된다.The database 6 may include a key table creator 61 and a DB memory 62, which is a database for storing key tables. The key table creator 61 of the database 6 generates a key table for storing data labeled in the models constituting the metamodel data and sizes of the respective data. The data packet creator 11 included in the client 1 receives the key table generated in the database 6 and refers to the data to transmit the data (XMI type metamodel data, The optical packet is generated in the form of binary packets, and packet metadata is generated by dividing the reduced packets based on the transmission speed of the object Internet communication network, The data is sequentially transmitted to the server via the LoRa network 3 including a plurality of LoRa devices 2. The server 4 having received the divided packet meta data has a data packet parser 41 and receives the key table generated by the key table creator 61 of the database 6, The packet parser 41 refers to the key table and performs a reverse process of generating the packet meta model data to restore the original XMI data that the client 1 desires to send.

이하에서는, 도 6 내지 도 10을 참조하여 데이터베이스의 구성요소인 키테이이블 크리에이터의 동작에 대하여 보다 상세하게 설명하도록 한다. Hereinafter, the operation of the key table creator, which is a component of the database, will be described in more detail with reference to FIGS. 6 to 10. FIG.

도 6은 본 발명의 일실시예에 따른 메타 모델과 키테이블의 데이터간 관계를 예시하는 도면이고, 도 7은, 본 발명의 일실시예에 따라 키테이블에서 생성되는 레코드의 예를 나타내는 도면이며, 도 8은 본 발명의 일실시예에 따른 키테이블 크리에이터에서의 동작을 설명하기 위한 순서도이고, 도 9는 본 발명의 일실시예에 따라 메타 모델 기반의 인서트 쿼리문의 자동생성을 예시하는 도면이고, 도 10은 본 발명의 일실시예에 따른 키테이블의 구조를 예시하는 도면이다. 도 6에 도시된 바와 같이, 메타 모델에는 각각 데이터 타입의 이름(className, name), 라벨링(key) 정보와 데이터에 포함되는 속성들의 이름(property), 크기(size) 정보가 포함된다. 키테이블 크리에이이터(61:Key Table Creator)에서는 메타 모델로부터 각 데이터 타입의 이름(className, name), 라벨링(key) 정보와 데이터에 포함되는 속성들의 이름(property), 크기(size) 정보가 저장된 테이블을 생성한다. 또한, 메타 모델 구조를 확인하기 위해서 종속 관계를 나타내는 부모(parent)와 자식(child) 데이터를 저장한다. 다음은 메타 모델과 키테이블의 데이터 간의 관계를 나타낸다.FIG. 6 is a diagram illustrating a relationship between meta-models and data of a key table according to an embodiment of the present invention, FIG. 7 is a diagram illustrating an example of a record generated in a key table according to an embodiment of the present invention FIG. 8 is a flow chart for explaining operations in a key table creator according to an embodiment of the present invention, FIG. 9 is a diagram illustrating automatic generation of a metamodel-based insert query according to an embodiment of the present invention And FIG. 10 is a diagram illustrating a structure of a key table according to an embodiment of the present invention. As shown in FIG. 6, the metamodel includes a data type name (className, name), labeling information, and property names and size information of attributes included in the data. In the key table creator 61, the name of each data type (className, name), labeling information (key), the name of property included in the data, and size information Create a stored table. In addition, the parent and child data representing the dependency relation are stored to confirm the metamodel structure. The following shows the relationship between metamodel and key table data.

메타 모델에서 각 KeyEClass를 Table의 하나의 레코드로 저장한다. 도 6에서 도시된 바와 같이, EClass ‘Inverter’와 Key Table 데이터 간의 관계를 선으로 나타낸다. Key Table의 필드는 id, key, className, name, property, size, parent, child로 구분된다. id는 메타 모델 데이터와 관계없이 입력되는 레코드 순서대로 1부터 숫자를 입력하고 이 필드를 기본 키(Primary Key)로 설정한다. key 필드도 실제 데이터와 상관없이 레코드 순서대로 ‘a’,‘b’,‘c’..를 입력한다. 이 필드가 메타 모델 데이터 전송 시에 라벨링으로 사용된다. className은 메타 모델에서 EClass의 name 속성을 저장한다. name 필드는 메타 모델 데이터에서 EClass의 이름을 소문자로 사용하기 때문에 className 필드 값을 모두 소문자로 변환하여 저장한다. property에서는 현재 EClass에 포함되는 EAttribute의 name 속성을 저장한다. 여러 개의 EAttribute로 구성되기 때문에 각 name들은 ‘;’으로 구분한다. size 필드에는 각 EAttribute의 type 속성을 저장한다. property 필드와 마찬가지로 각 type들을 ‘;’으로 구분한다. parent 필드는 해당 EClass의 상위 클래스를 입력하고 child 필드에는 해당 EClass의 하위 클래스를 입력한다. 현재 메타 모델에서 EClass ‘Inverters’가 EReference로 EClass ‘Inverter’를 하위 클래스로 포함하고 있으므로 ‘Inverter’의 parent 필드에는 ‘inverters’를 입력하고 하위 클래스에는 EClass 'warning'을 EReference 속성으로 포함하기 때문에 child 필드에는 'warning' 을 입력한다. 이와 같은 과정을 통해 ‘Inverter’라는 EClass를 저장하면 도 7과 같은 레코드가 생성된다.In the meta model, each KeyEClass is stored as one record in the table. As shown in FIG. 6, the relationship between the EClass 'Inverter' and the Key Table data is shown in a line. The fields of the Key Table are separated by id, key, className, name, property, size, parent, and child. id is a numeric value from 1 in the order of input records regardless of the metamodel data, and sets this field as a primary key. In the key field, enter 'a', 'b', 'c' .. in the order of the records, regardless of the actual data. This field is used for labeling when transmitting metamodel data. className stores the name attribute of the EClass in the meta model. Since the name field uses the name of the EClass in lower case in the metamodel data, the value of the className field is converted to lower case and stored. property stores the name attribute of the EAttribute that is included in the current EClass. Because it consists of several EAttribute, each name is separated by ';'. The size field stores the type attribute of each EAttribute. Like the property field, each type is separated by ';'. In the parent field, enter the parent class of the corresponding EClass, and in the child field, enter the subclass of the corresponding EClass. Because the EClass 'Inverters' in the current meta model contains EClass 'Inverter' as an EReference, 'inverters' are entered in the 'Inverter' parent field and EClass 'warning' is included as an EReference attribute in the subclass Enter 'warning' in the field. When the EClass called 'Inverter' is stored through the above process, a record as shown in FIG. 7 is generated.

이와 같은 과정을 수행하는 키테이블 크리에이터의 동작은 도 8과 같다. 도 8에 도시된 바와 같이, 우선 키테이블 크리에이터는 키테이블을 저장하는 데이터베이스와 연동하고, 한편, 메타 모델을 로드한다(S11,S12). 그리고 메타 모델의 속성 정보를 이용하여 상기 키테이블을 생성하는데, 메타 모델의 최상위 모델인 Epackage 정보를 로딩하고, 상기 Epackage 정보와 종속관계가 있는 eClassifires를 확인하고, 상기 eClassifires가 확인되면, 키를 저장한 후 EClass name 속성 정보를 상기 키에 저장하고, 상기 EClass name 속성 정보 저장 후 StructualFeature를 확인하고, 상기 StructualFeature가 확인되면, EAttribute를 확인하며, 상기 EAttribute가 확인되면, name 정보 및 타입 속성 정보를 property와 Size 필드에 저장하고, 상기 EAttribute가 확인되지 않으면, EReference로 판단하여, 이것의 네임 속성 정보를 child 필드에 저장하고, 상기 저장된 데이터를 기반으로 레코드를 입력하게 된다(S13~S20). The operation of the key table creator performing such a process is shown in FIG. As shown in FIG. 8, the key table creator interlocks with the database storing the key table, and loads the meta model (S11, S12). Then, the key table is generated by using the meta model attribute information. The epackage information, which is the highest model of the meta model, is loaded, eClassifires having a dependency relation with the epackage information are confirmed, and when the eClassifires are confirmed, And stores EClass name attribute information in the key, identifies StructualFeature after storing EClass name attribute information, confirms EAttribute when the StructualFeature is confirmed, and confirms name information and type property information when the EAttribute is confirmed If the EAttribute is not confirmed, it is determined to be EReference, the name attribute information of the ERA is stored in the child field, and the record is input based on the stored data (S13 to S20).

다시 설명하면, 메타 모델의 제일 상위 모델인 EPackage를 로드하고 이와 종속 관계를 갖는 EClassifiers를 로드한다. EClassifiers는 여러 개의 EClass로 구성되므로 Iterator를 통해 각각의 EClass를 로드한다. 로드된 EClass의 name 속성을 저장한다. 이 값은 테이블에서 className 필드에 저장된다. EClass 또한 여러 개의 EAttribute와 EReference로 구성되므로 Iterator를 통해 각각을 로드하고 type을 구분한다. EAttribute인 경우 name과 type 속성을 저장한다. 이 값들은 테이블에서 property와 size 필드에 저장된다. EReference인 경우 name 속성을 저장한다. 이 값은 테이블에서 child 필드에 저장된다. 저장된 데이터들을 기반으로 레코드를 입력한다. 마지막으로 현재의 className 데이터를 다음 EClass에 전달하여 parent 필드에 저장한다. 이 과정에서 메타 모델을 기반으로 인서트 쿼리문(Insert query)을 자동으로 생성하게 되게 된다. 그 결과가 도 9와 같다. 전술한 바와 같이, 각각의 데이터를 기반으로 인서트 쿼리 문이 자동으로 생성된다. key 필드의 값은 메타 모델 데이터와 상관없이 알파벳 순서대로 입력되고 name 필드는 className 필드의 데이터를 모두 소문자로 변경하여 입력한다. 위와 같이 자동 생성된 Insert 쿼리 문을 통해서 그 결과로 생성된 Key 테이블의 구조 중 일부는 도 10과 같다. 여기서, "id"는 각 레코드를 구분하기 위한 기본키(Primary Key)로 사용되며, "key"는 XMI를 데이터 패킷으로 변환할 때, 태그 이름을 해당 알파벳으로 변환된 것이며, "className"는 실제 메타 모델 내에서 선언된 클래스의 이름이며, "name"은 XMI 파일 내에 선언되는 태그의 이름이며, "property"는 해당 태그에서 사용되는 속성 이름의 리스트이고, "size"는 해당 속성들의 byte크기를 나타내는 자료형의 리스트이며, "parent"는 해당 태그의 부모 태그이고, "child"는 해당 태그의 자식 태그들이다.Again, we load EPackage, the top model of the metamodel, and load the EClassifiers that have dependencies on it. Since EClassifiers consist of several EClass, we load each EClass via Iterator. Stores the name attribute of the loaded EClass. This value is stored in the className field of the table. Since EClass is composed of several EAttribute and EReference, Iterator loads each one and distinguishes type. For EAttribute, store the name and type attributes. These values are stored in the property and size fields of the table. If EReference, store the name attribute. This value is stored in the child field of the table. Enter records based on stored data. Finally, the current className data is passed to the next EClass and stored in the parent field. In this process, an insert query is automatically generated based on the meta model. The result is shown in Fig. As described above, an insert query statement is automatically generated based on each data. The value of the key field is entered in alphabetical order regardless of the metamodel data, and the name field is changed to all lowercase letters of the data in the className field. A part of the structure of the key table generated as a result of the above-mentioned automatically generated Insert query statement is shown in FIG. Here, "id" is used as a primary key for distinguishing each record, "key" is a tag name converted to a corresponding alphabet when converting XMI to a data packet, and "className" Where "name" is the name of the tag declared in the XMI file, "property" is the list of attribute names used in the tag, "size" is the byte size of the attributes "Parent" is the parent tag of the tag, and "child" is the child tag of the tag.

이하에서는, 클라이언트(1)에 포함되는 데이터 패킷 크리에이터(11)의 동작들에 대하여 도 11내지 도 14를 참조하여 설명하도록 한다.Hereinafter, operations of the data packet creator 11 included in the client 1 will be described with reference to Figs. 11 to 14. Fig.

도 11은 본 발명의 일실시예에 따른 메타 모델 데이터, 키테이블, 헤더 패킷의 구성을 예시하는 도면이고, 도 12는, 본 발명의 일실시예에 따라 메타 모델 데이터를 기반으로 데이터 패킷을 구성하는 과정을 예시하는 도면이며, 도 13은 본 발명의 일실시예에 따른 데이터 패킷 분해 결과를 예시하는 도면이고, 도 14는 본 발명의 일실시예에 따른 패킷 크리에이터에서의 동작을 설명하기 위한 순서도이다. 11 is a diagram illustrating a configuration of metamodel data, a key table, and a header packet according to an embodiment of the present invention. FIG. 12 is a diagram illustrating a configuration of a data packet based on metamodel data according to an embodiment of the present invention. FIG. 13 is a diagram illustrating a result of data packet decomposition according to an embodiment of the present invention, and FIG. 14 is a flowchart illustrating an operation in a packet creator according to an embodiment of the present invention to be.

클라이언트(1)의 구성요소인 데이터 패킷 크리에이터(11:Data Packet Creator)는 데이터베이스(6)의 키테이블 크리에어터(61)에서 자동 생성한 키테이블을 참고하여 발전 설비에서 획득된 메타 모델 데이터를 압축 분할된 형태의 패킷 메타 모델 데이터를 생성한다. 상기 분할된 패킷 메타 모델 데이터는 하나의 데이터가 여러 개의 데이터 패킷으로 분해된 형태이므로, 전체 데이터의 구조를 나타내는 헤더 패킷과 실제 데이터를 나타내는 바디 패킷를 포함하여 구성될 수 있다. 그리고 바디 패킷의 순서를 구분하기 위해서 2byte는 전체 바디 패킷의 개수(1byte)와 현재 바디 패킷의 순서(1byte)를 나타내는 데이터로 사용한다. 도 11에서는, 실제 메타 모델 데이터, 키테이블, 헤더 패킷 간의 관계가 도시되어 있다. 도 11에서는 메타 모델 데이터를 기반으로 헤더 패킷을 구성하는 과정을 나타낸다. 메타 모델 데이터의 각 태그들을 로드하고 태그의 이름과 키테이블에 name 속성이 동일한 레코드를 조회한다. 해당 레코드의 key 값을 헤더에 입력하고 모든 property를 확인한다. Primitive Type의 경우, 데이터의 크기를 확인하여 바이트에 따라서 2 비트의 데이터를 헤더 패킷에 추가한다. 1바이트는 00, 2바이트는 01, 3바이트는 10, 4바이트는 11로 나타낸다. UnPrimitive Type의 경우, 실제 데이터의 길이를 확인하고 헤더 패킷에 추가한다. 첫 번째 태그인 ‘hsSolarEnergy’의 key 필드 ‘l’을 추가하고 해당 레코드에 property를 확인한다. 해당 레코드에는 property가 ‘plant_id’, ‘time’, ‘mode’ 세 가지가 있다. 이 세 개의 속성들은 모두 UnPrimitive Type이므로 실제 데이터의 크기를 메타 모델 데이터에서 확인한다. ‘plant_id’의 데이터는 7, ‘time’ 데이터는 28의 크기를 갖는다. ‘mode’는 데이터가 존재하지 않으므로 크기 확인이 필요하지 않다. 가변적인 데이터의 실제 크기인 7과 28을 입력한다. 다음 태그인 ‘plantdisplay’의 key 필드인 ‘a’를 추가하고 모든 property를 확인한다. 포함되는 모든 property가 Primitive Type 이므로 실제 데이터의 크기를 확인한다. current 속성은 float 형이므로 4바이트의 크기를 갖지만 실제 데이터의 범위가 작기 때문에 1바이트의 데이터로 축소할 수 있다. 따라서 1바이트를 의미하는 ‘00’ 비트가 헤더 패킷에 입력된다. 데이터 패킷은 헤더 패킷을 구성하는 과정에서 모든 속성들의 실제 데이터를 바이트 형태로 변환하여 구성한다. 도 12에서는 바이트 데이터를 조금 더 간략화 하여 나타내기 위해 16진수로 표현한 예가 도시되어 있다.The data packet creator 11 which is a component of the client 1 refers to the key table automatically generated by the key table creator 61 of the database 6 to generate meta model data And generates packet metamodel data in a compression divided form. Since the divided packet metamodel data is a form in which one data is decomposed into a plurality of data packets, the divided packet metamodel data may include a header packet indicating the structure of the entire data and a body packet indicating actual data. In order to distinguish the sequence of body packets, 2 bytes are used as data indicating the number of whole body packets (1 byte) and the order of current body packets (1 byte). In Fig. 11, the relationship between the actual meta model data, the key table, and the header packet is shown. FIG. 11 shows a process of constructing a header packet based on meta model data. Load each tag in the metamodel data and look up the record with the same name attribute in the tag name and key table. Enter the key value of the record in the header and check all properties. In the case of the primitive type, the size of the data is checked, and 2-bit data is added to the header packet according to the byte. 1 byte is represented by 00, 2 bytes by 01, 3 bytes by 10, and 4 bytes by 11. In case of UnPrimitive Type, check length of actual data and add to header packet. Add the key field 'l' in the first tag 'hsSolarEnergy' and check the property for that record. The record has three properties: 'plant_id', 'time', and 'mode'. Since these three attributes are all UnPrimitive types, the actual data size is checked in the metamodel data. The data of 'plant_id' is 7 and the data of 'time' is 28. 'Mode' does not have data, so size checking is not necessary. Enter the actual sizes 7 and 28 of the variable data. Add the key 'a' in the following tag 'plantdisplay' and check all the properties. Since all the properties included are Primitive Type, check the size of actual data. Since the current property is of type float, it is 4 bytes in size. However, since the range of actual data is small, it can be reduced to 1 byte of data. Therefore, a '00' bit, which means one byte, is input to the header packet. The data packet is formed by converting the actual data of all the attributes into the byte format in the process of forming the header packet. In Fig. 12, an example in which the byte data is expressed in hexadecimal in order to simplify the byte data is shown.

이렇게 구성된 전체 데이터 패킷은 LoRa망에서의 최대 패킷 크기에 맞게 분해하여 전송해야 한다. 최대 패킷은 LoRa망의 전송속도를 고려하여 65byte로 하는데, 분해된 바디 패킷들의 리스트를 구분하기 위해서 2byte는 전체 패킷의 개수와 현재 패킷의 순서를 저장한다. 2byte(헤더)를 제외한 63byte(바디)는 실제 데이터를 저장한다. 따라서 데이터 패킷을 분해하여 여러 개의 바디 패킷들로 구성하면 도 13과 같다. 도 13에서도 바이트 형태를 간략화하여 16진수로 나타낸다.The entire data packet thus constructed should be decomposed and transmitted according to the maximum packet size in the LoRa network. The maximum packet is 65 bytes in consideration of the transmission speed of the LoRa network. To distinguish the list of decomposed body packets, 2 bytes stores the total number of packets and the order of the current packet. 63 bytes (body) excluding 2 bytes (header) stores actual data. Therefore, if the data packet is decomposed into a plurality of body packets, it is as shown in FIG. In Fig. 13, the byte format is simplified and expressed in hexadecimal.

이와 같은 과정을 수행하는 데이터 패킷 크리에이터의 동작을 도 14를 통해 보다 상세하게 설명하도록 한다. 간단하게 설명하면, 패킷 크리에이터는 데이터베이스와 연동하여 메타 데이터를 로드한 후, 메타 모델 데이터의 태그를 확인하여 태그가 없으면 상기 해더 패킷에 키데이터를 추가하고, 상기 메타 모델 데이터를 분해하고, 분해된 데이터 패킷을 구분하기 위한 구분자를 추가한다(S21~S24). 상기 메타 모델 데이터의 속성 정보를 확인하여, 속성정보가 있으면, 속성 정보가 원시형(Primitive) 형인지를 확인한 후(S25~S26), 속성 정보가 원시형인 경우, 상기 헤더 패킷에 압축 데이터 바이트를 추가하고(S27), 속성정보가 비원시형인 경우, 상기 헤더 패킷에 데이터 크기를 추가하도록 동작한다(S28,S29). 보다 상세하게 설명하면, 클라이언트의 구성요소인 데이터 패킷 크리에이터는, 데이터베이스의 정보를 입력받아 연동하여 키테이블을 획득한다. 그리고 메타 모델 데이터를 입력받는다. 메타 모델 데이터의 태그들을 하나씩 로드하고 데이터베이스로부터 수신한 Key테이블에서 현재 태그의 key를 확인하여 그 값을 헤더 패킷에 추가한다. 태그에 포함되어 있는 모든 속성들을 하나씩 로드하여 Key 테이블에서 현재 속성의 자료형을 확인한다. 자료형이 Primitive Type인 경우는 실제 데이터를 압축한 데이터의 바이트를 헤더에 추가하고 UnPrimitive Type의 경우에는 실제 데이터의 크기를 헤더 패킷에 추가한다. 그 후에는 실제 데이터들을 바이트로 변환하여 데이터 패킷에 추가한다. 모든 태그들의 헤더 패킷과 데이터 패킷을 구성한 후 데이터 패킷을 LoRa망의 최대 데이터 패킷 크기에 맞게 분해한다. 분해된 데이터 패킷들을 구분하기 위해서 데이터 패킷의 처음 두 바이트는 모든 데이터 패킷의 개수를 입력하고 다음 두 바이트는 현재 데이터 패킷의 순번을 입력한 후 실제 데이터를 추가한다(S30). The operation of the data packet creator performing such a process will be described in more detail with reference to FIG. Briefly, the packet creator loads the meta data in cooperation with the database, checks the tag of the meta model data, adds the key data to the header packet if there is no tag, decomposes the meta model data, A delimiter for identifying the data packet is added (S21 to S24). (S25 to S26). If the attribute information is a primitive type, compressed data bytes are added to the header packet. If the attribute information is a primitive type, (S27). When the attribute information is a non-resource type, the data size is added to the header packet (S28, S29). In more detail, the data packet creator, which is a component of the client, receives the information of the database and interlocks with it to acquire the key table. And receives metamodel data. Load the tags of the meta model data one by one, check the key of the current tag in the key table received from the database, and add the value to the header packet. Load all the attributes contained in the tag one by one to check the data type of the current attribute in the Key table. If the data type is a primitive type, the bytes of the compressed data are added to the header. In case of UnPrimitive Type, the size of the actual data is added to the header packet. After that, the actual data is converted into bytes and added to the data packet. After constructing the header packet and the data packet of all the tags, the data packet is decomposed according to the maximum data packet size of the LoRa network. In order to distinguish the disassembled data packets, the first two bytes of the data packet input the number of all data packets, the next two bytes input the sequence number of the current data packet, and add the actual data (S30).

이하에서는, 서버의 구성요소인 데이터 패킷 파서의 구성 및 동작에 대하여 도 15 내지 도 18을 참조하여 보다 상세하게 설명하도록 한다. Hereinafter, the configuration and operation of the data packet parser, which is a component of the server, will be described in more detail with reference to FIG. 15 to FIG.

데이터 패킷 파서(41:Data Packet Parser)는 데이터 패킷 크리에이터(11: Data Packet Creator)가 보낸 데이터를 LoRa망을 통해 받는다. LoRa망은 전송받은 데이터를 특정 웹페이지에게 전달한다. 웹페이지는 각 LoRa 모듈 당 하나씩 다르게 배정된다. 예를 들어, A모듈로부터 전달받은 데이터를 http://***.com/A1.php 로 전달하도록 LoRa망에서 설정해놓으면, LoRa망은 전송받은 A모듈의 데이터를 http://***.com/A1.php에게 전달한다. 전달되는 데이터는 메타 모델 데이터인 XML 파일 데이터이다. XML 파일은 통합서버 내에 시간 별로 누적되어 저장된다. 파일명은 '[모듈ID_현재시간(초단위)].xml’으로 저장된다. XML 파일 내에는 전송날짜, LoRa모듈ID 등의 정보가 저장된다, LoRa모듈이 전송한 데이터는 con 태그 내에 저장된다. 즉, 복수의 서브 통신망으로 구성된 LoRa 망을 통해 패킷 메타 모델 데이터가 각각 서버로 전송되며, 이 서버는 각각의 패킷 메타 모델 데이터를 모듈 아이디와 수신 시간명으로 누적 저장하게 된다. A data packet parser 41 (Data Packet Parser) receives data sent from a data packet creator 11 through a LoRa network. The LoRa network transmits the received data to a specific web page. Web pages are assigned differently, one for each LoRa module. For example, if you set the LoRa network to forward data from A module to http: //***.com/A1.php, the LoRa network will send the data of the received A module to http: // *** .com / A1.php. The transmitted data is XML file data, which is metamodel data. The XML files are accumulated and stored in the integration server on a time-by-time basis. The file name is stored as '[module ID_ current time (in seconds)] .xml'. In the XML file, information such as the transmission date and the LoRa module ID is stored. The data transmitted by the LoRa module is stored in the con tag. That is, packet metamodel data is transmitted to the server via a LoRa network composed of a plurality of sub-networks, and the server cumulatively stores each packet metamodel data with a module ID and a reception time name.

서버는 분할된 패킷 메타 모델 데이터인 XML 파일을 저장할 때마다 파일의 내용을 검사한다. 검사하는 내용은 파일 내 con 태그의 내용이다. 파일 내 con의 위치는 도 15과 같다. con 태그는 실제 전송되는 패킷의 내용이다.The server checks the contents of the file every time it saves the XML file, which is the fragmented packet metamodel data. The content of the con tag is in the file. The location of con in the file is shown in FIG. The con tag is the contents of the actual packet being transmitted.

저장된 XML 파일이 마지막 패킷 내용을 가지고 있다면, 도 16과 같이 이전에 저장된 모든 XML 파일을 읽어 들여 con 태그 내의 실제 데이터들을 하나의 패킷으로 통합한다. 즉 누적 저장된 패킷 모델 데이터를 하나의 패킷으로 통합하여 통합 패킷 데이터를 생성한다. If the stored XML file has the contents of the last packet, all the previously stored XML files are read as shown in FIG. 16, and the actual data in the con tag is integrated into one packet. I.e., cumulatively stored packet model data into one packet to generate integrated packet data.

결합된 데이터 패킷은 도 17과 같은 과정을 거쳐 메타 데이터로 복원된다. 복원 과정은 세 가지의 단계를 거친다. 첫 번째로 데이터 패킷을 논리값으로 변환한다. 예를 들어, 16진수 ‘6C’를 ASCII로 변경하면, 알파벳 ‘l'이 된다. 6진수 ‘6C’를 ASCII로 변경하면, 알파벳 ‘l'이 된다. 16진수 '37'을 ASCII로 변경하면, 숫자 ‘7’이 된다. 이와 같은 방식으로 모든 데이터 패킷은 논리 값으로 변환된다.The combined data packet is restored into the metadata through the process shown in FIG. The restoration process takes three steps. First, the data packet is converted to a logical value. For example, changing hexadecimal '6C' to ASCII results in the letter 'l'. If hexadecimal '6C' is changed to ASCII, it becomes 'l'. If hexadecimal '37' is changed to ASCII, the number is '7'. In this way all data packets are converted to logical values.

두 번째로 변경된 논리값을 키테이블과 매치한다. 예를 들어, 'l 7 28'로 구성된 논리값에서 ‘l'은 ’hsSolarEnergy'를 의미하고, 다음의 ‘7’ 과 ‘28’은 plant_id 속성의 크기가 7byte String, time속성의 크기가 28byte String, mode 속성의 크기가 0byte String임을 의미한다. 매치 방법은 메타 모델 데이터를 기반으로 데이터 패킷을 구성하는 과정의 역순이다.Match the second changed logical value with the key table. For example, 'l' means 'hsSolarEnergy' in the logical value composed of 'l 7 28', next '7' and '28' means that the size of the plant_id property is 7byte String, the size of the time property is 28byte String , and the size of the mode attribute is 0 byte String. The matching method is a reverse order of the process of constructing the data packet based on the metamodel data.

세 번째로 매치가 완료된 데이터를 복원한다. 복원된 데이터는 XML 형태를 가진다. 첫 번째 패킷에서 태그명과 태그의 속성 정보를 복원한다. 두 번째부터 마지막 패킷에서 속성들의 값을 복원한다.Third, restore the data that has been matched. The restored data has an XML form. In the first packet, the tag name and attribute information of the tag are restored. Restores the values of the attributes in the last packet from the second.

이하에서는 도 18을 참조하여 서버의 구성요소인 데이터 패킷 파서의 동작을 상세하게 설명하도록 한다. Hereinafter, the operation of the data packet parser, which is a component of the server, will be described in detail with reference to FIG.

도 18에 도시된 바와 같이, 우선 Data Packet Parser는 앞서 언급한 웹페이지의 데이터 처리 과정을 진행한다. 즉, 사물 인터넷망을 통해 수신되는 분할된 패킷 모델 데이터의 헤더에 저장된 데이터를 판독하고, 이들 데이터를 로라 아이디(LoRa ID)와 수신 시간명으로 저장한후 패킷 모델 데이터를 로드하여 LoRa망이 전송하는 XML 파일을 계속 저장하고, XML 파일의 con 태그를 읽는다. 계속 con 태그 내에 저장된 데이터 판독하다가, con 태그가 없으면, 첫 번째 파일이 헤더 패킷이 아니라는 것을 확인하게 되며, 모든 파일이 정상인 경우, 로드된 파일들을 변수 v에 저장하게 된다(S31~S36). As shown in FIG. 18, the Data Packet Parser first proceeds with the process of data processing of the web page mentioned above. That is, the data stored in the header of the divided packet model data received through the object Internet network is read, and these data are stored as a LoRa ID and a receiving time name, and then the packet model data is loaded and transmitted by the LoRa network Continue to save the XML file and read the con tag in the XML file. If the con tag is not found, it is confirmed that the first file is not a header packet. If all the files are normal, the loaded files are stored in the variable v (S31 to S36).

con 태그가 있으면, 현재 읽은 파일이 몇번째 파일인지 체크하고, XML의 마지막 파일이 맞으면, 이전에 저장한 파일들을 한번에 읽어들이고 합쳐서 하나의 변수 v에 저장한다(S351~S354). 그 다음 기존의 XML파일들을 삭제한다(S37). If there is a con tag, it is checked how many files are currently read, and if the last file of the XML is correct, the previously stored files are read at once, merged, and stored in a variable v (S351 to S354). Then, the existing XML files are deleted (S37).

한편, 변수 v에 저장된 데이터의 생성이 완료되면, 변수 v로 저장된 데이터는 데이터베이스의 키테이블과 매치되어 원본 XMI 파일로 복구되고, 복구된 XMI 파일로 저장한다(S38~S40). 즉 데이터베이스로부터 키테이블을 로드한 후, 키테이블과 매치되어 원본 XMI 파일로 복구된다. 복구 과정은 실제 패킷을 만드는 과정의 역순으로 진행된다. 복구 과정에서 아스키 코드를 10진수로 변환하는 과정이 필요하다. con 태그는 모든 데이터를 16진수로 표시하고, 이를 아스키코드로 표시한다. 만약 LoRa 모듈이 1byte의 데이터 공간에 10을 넣어 전송했다면, con 태그를 읽으면 '0''A'라는 값이 읽힌다. 그렇기 때문에 우선 아스키코드를 16진수 데이터로 바꾸고, 16진수 데이터를 10진수로 변환하는 과정이 필요하다. 즉, 1byte 당 두 개의 문자열을 읽어들여 해석해야 한다. 만약 1byte의 데이터 공간에 'S'(=0x53)를 넣어 전송했다면, con 태그를 읽으면 ‘5’‘3’이라는 문자열을 읽게 된다.On the other hand, when the generation of the data stored in the variable v is completed, the data stored in the variable v is matched with the key table of the database, restored to the original XMI file, and stored in the recovered XMI file (S38 to S40). That is, after loading the key table from the database, it is matched with the key table and restored to the original XMI file. The restoration process proceeds in the reverse order of creating the actual packet. During the restoration process, it is necessary to convert ASCII codes to decimal numbers. The con tag displays all data in hexadecimal and displays it in ASCII code. If the LoRa module transmits 10 bytes in 1 byte of data space, the value of '0' 'A' is read when the con tag is read. Therefore, we need to convert ASCII code to hexadecimal data and convert hexadecimal data to decimal. In other words, two strings per byte must be read and interpreted. If you send 'S' (= 0x53) to 1 byte of data space, you read '5' and '3' when you read con tag.

상술한 구성을 가진 본 발명의 일실시예에 따르면, 상대적으로 적은 용량과 전송속도를 가지는 사물인터넷 통신망을 통해서도 충분히 실시간으로 대용량의 메타 모델 데이터를 전송할 수 있게 된다. According to an embodiment of the present invention having the above-described configuration, it is possible to transmit a large-capacity metamodel data in a sufficiently long time in a real-time through an object internet communication network having a relatively small capacity and a transmission speed.

상기와 같이 설명된 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법 및 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템은 상기 설명된 실시 예들의 구성과 방법이 한정되어 적용될 수 있는 것이 아니라, 상기 실시 예들의 다양한 변형이 이루어질 수 있도록 각 실시 예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.The data transmission method for low capacity transmission of the metamodel-based protocol and the data transmission system for low capacity transmission of the metamodel-based protocol described above are not limited to the configuration and method of the above-described embodiments, All or some of the embodiments may be selectively combined so that various modifications of the embodiments may be made.

Claims (14)

에너지 감지 데이터를 생성하는 단계;
클라이언트가 상기 에너지 감지데이터를 수신하여 이를 메타 모델과 메타 데이터를 포함하는 메타 모델 데이터로 변환하는 단계;
상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 단계;
사물 인터넷 통신망의 전송속도 정보를 획득하는 단계;
상기 패킷 메타 모델 데이터를 상기 사물인터넷 통신망을 통해 서버로 전송하는 단계; 및
상기 서버가 상기 패킷 메타 모델 데이터를 파싱하여 상기 메타 모델 데이터를 출력하는 단계를 포함하고,
상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 단계는,
상기 전송속도 정보에 기초하여 상기 패킷 메타 모델 데이터의 기준 크기를 정하는 단계; 및
상기 기준 크기에 기초하여 상기 메타 모델 데이터를 분할하는 단계를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
Generating energy sensing data;
The client receiving the energy sensing data and converting it into metamodel data including a metamodel and meta data;
Compressing the meta model data to generate packet meta model data;
Obtaining transmission rate information of the object Internet communication network;
Transmitting the packet meta model data to a server through the Internet service network; And
The server parsing the packet meta model data to output the meta model data,
Wherein the step of generating the packet meta model data by dividing the meta model data comprises:
Determining a reference size of the packet meta model data based on the transmission rate information; And
And dividing the metamodel data based on the reference size. ≪ Desc / Clms Page number 19 >
제 1 항에 있어서,
상기 사물 인터넷 통신망은, LoRa 망인, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method according to claim 1,
Wherein the object Internet communication network is a LoRa network, the data transformation method for low capacity transmission of a metamodel-based protocol.
제 1 항에 있어서,
키테이블 크리에이터를 통해 키테이블을 생성하여 데이터베이스에 저장하는 단계;를 더 포함하고,
상기 메타 모델 데이터를 분할하여 패킷 메타 모델 데이터를 생성하는 단계는,
데이터 패킷 크리에이터가 상기 키테이블을 이용하여 상기 메타 모델 데이터를 분할하여 상기 패킷 메타 모델 데이터를 생성하는 단계를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method according to claim 1,
Generating a key table through a key table creator and storing the key table in a database,
Dividing the meta model data to generate packet meta model data,
Wherein the data packet creator divides the meta model data using the key table to generate the packet meta model data.
제 3 항에 있어서,
상기 키테이블은,
아이디 필드, 키필드, 클래스네임 필드, 네임 필드 프로퍼티 필드, 사이즈 필드, 페어런츠 필드 및 차이들 필드를 포함하는,메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method of claim 3,
The key table includes:
A method of transforming data for a low capacity transmission of a metamodel based protocol, comprising: an identity field, a key field, a class name field, a name field property field, a size field, a parental field and a difference field.
제 4 항에 있어서,
상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 단계는,
상기 키테이블에 인서트쿼리문을 이용하여 상기 메타 데이터를 입력시켜서, 상기 메타 모델 데이터를 압축하여, 압축 데이터를 생성하는 단계;
상기 압축 데이터를 분할하여 다수의 패킷 메타 모델 데이터를 생성하는 단계를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
5. The method of claim 4,
Wherein the step of generating the packet meta model data by dividing the meta model data comprises:
Inputting the meta data by using an insert query statement in the key table, and compressing the meta model data to generate compressed data;
And dividing the compressed data to produce a plurality of packet metamodel data. ≪ Desc / Clms Page number 19 >
제 3 항에 있어서
상기 패킷 메타 모델 데이터는,
전체 데이터 구조를 나타내는 헤더 패킷과, 상기 메타 데이터를 나타내는 바디 패킷으로 구성되는 바디 패킷을 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method of claim 3, wherein
The packet meta-model data includes:
And a body packet composed of a header packet representing the entire data structure and a body packet representing the meta data.
제 6 항에 있어서,
상기 헤더 패킷은,
데이터 타입 정보와, 데이터 크기 정보를 포함하고,
상기 데이터 타입 정보는 라벨링 정보인, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method according to claim 6,
The header packet includes:
Data type information, and data size information,
Wherein the data type information is labeling information for a low capacity transmission of a metamodel based protocol.
제 6 항에 있어서,
상기 헤더 패킷은,
가변 크기 정보를 더 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method according to claim 6,
The header packet includes:
A method of transforming data for low capacity transmission of a metamodel based protocol, further comprising variable size information.
제 1 항에 있어서,
상기 사물 인터넷 통신망이 복수의 서브 통신망으로 구성되고,
상기 패킷 메타 모델 데이터를 사물인터넷 통신망을 통해 서버로 전송되는 단계는,
상기 복수의 서브 통신망을 통해 분할된 복수의 상기 패킷 모델 데이터가 각각 상기 서버로 전송되는 단계를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method according to claim 1,
Wherein the object Internet communication network comprises a plurality of sub communication networks,
Wherein the step of transmitting the packet meta model data to the server through the object internet communication network comprises:
And transmitting a plurality of said packet model data divided through said plurality of sub-networks to said server, respectively.
제 1 항에 있어서,
상기 에너지 감지 데이터를 생성하는 단계는,
발전설비로부터 획득되는 오리지널 에너지 감지 데이터를 생성하는 단계, 상기 오리지널 에너지 감지 데이터는, 오리지널 메타 모델과, 오리지널 메타 모델 데이터를 포함함;
데이터베이스 생성기를 통해 상기 오리지널 메타 모델을 이용하여 데이터베이스를 생성하는 단계; 및
상기 오리지널 메타 모델 데이터를 데이터베이스 삽입기를 통해 상기 데이터베이스에 삽입하여 상기 에너지 감지 데이터를 생성하는 단계를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method according to claim 1,
Wherein the generating the energy sensing data comprises:
Generating original energy sensing data obtained from a power generation facility, the original energy sensing data including an original metamodel and original metamodel data;
Generating a database using the original meta-model through a database generator; And
Inserting the original metamodel data into the database through a database inserter to generate the energy sensing data. ≪ Desc / Clms Page number 20 >
키테이블을 생성하는 키테이블 크리에이터 및 상기 키테이블을 저장하는 디비 메모리를 포함하는 데이터베이스;
신재생 에너지 생산 설비로부터 에너지 감지데이터를 수신하고, 이를 메타 모델과 메타데이터를 포함하는 메타 모델 데이터로 변환하고, 사물 인터넷 통신망의 전송속도 정보를 획득하고, 상기 키테이블을 이용하여 상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 클라이언트, 상기 클라이언트는, 상기 전송속도 정보에 기초하여 상기 패킷 메타 모델 데이터의 기준 크기를 정하고 상기 기준 크기에 기초하여 상기 메타 모델 데이터를 분할함; 및
상기 클레이언트로부터 패킷 메타 모델 데이터를 사물인터넷 통신망을 통해 수신하고 상기 패킷 메타 모델 데이터를 파싱하여 상기 메타 모델 데이터로 복원하여 출력하는 서버를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템.
A database including a key table creator for generating a key table and a database memory for storing the key table;
Receives energy sensing data from a renewable energy production facility, converts the energy sensing data into metamodel data including a metamodel and meta data, acquires transmission speed information of the object Internet communication network, Wherein the client determines a reference size of the packet meta model data based on the transmission rate information and divides the meta model data based on the reference size; And
And a server for receiving the packet metamodel data from the client through the object internet communication network and parsing the packet metamodel data and restoring the metamodel data into the metamodel data and outputting the metamodel data, .
제 11 항에 있어서,
상기 클라이언트는, 상기 데이터베이스로부터 키테이블을 수신받고, 이를 이용하여 상기 메타 모델 데이터를 분할 압축하여 상기 패킷 메타 모델 데이터를 생성하는, 데이터 패킷 크리에이터를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템.
12. The method of claim 11,
Wherein the client comprises a data packet creator for receiving the key table from the database and using the metamodel data to divide and compress the metamodel data to generate the packet metamodel data, Transmission system.
제 11 항에 있어서,
상기 서버는,
상기 데이터베이스로부터 키테이블을 수신받고, 이를 이용하여 상기 패킷 메타 모델 데이터를 파싱하여 복원하는 데이터 패킷 파서를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템.
12. The method of claim 11,
The server comprises:
And a data packet parser for receiving the key table from the database and parsing and restoring the packet meta model data using the key table.
제 11 항에 있어서,
상기 데이터베이스는,
상기 메타 모델 데이터를 이용하여 키테이블을 생성하는 키테이블 크리에이터를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템.
12. The method of claim 11,
The database includes:
And a key table creator for generating a key table using the meta model data.
KR1020180033767A 2017-03-23 2018-03-23 Method for transforming data for low volume transmission of meta model base protocol, and data transmitting system for low volume transmission of meta model base protocol KR102087272B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170036813 2017-03-23
KR20170036813 2017-03-23

Publications (2)

Publication Number Publication Date
KR20180108505A true KR20180108505A (en) 2018-10-04
KR102087272B1 KR102087272B1 (en) 2020-03-10

Family

ID=63863014

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180033767A KR102087272B1 (en) 2017-03-23 2018-03-23 Method for transforming data for low volume transmission of meta model base protocol, and data transmitting system for low volume transmission of meta model base protocol

Country Status (1)

Country Link
KR (1) KR102087272B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102108651B1 (en) * 2018-11-23 2020-05-07 전자부품연구원 Method for interlocking M2M platform using LoRa communication and system using the same

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102486889B1 (en) * 2021-10-18 2023-01-10 (주)다인시스 Collected data transmission system based timeline in heterogeneous networks

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110072645A (en) * 2009-12-23 2011-06-29 주식회사 휴먼앤소프트웨어 A transmission system for compression and division of xml and json data
KR20170014184A (en) * 2015-07-29 2017-02-08 조선대학교산학협력단 System for collecting and analyzing environment information data associated with regional industry and method thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110072645A (en) * 2009-12-23 2011-06-29 주식회사 휴먼앤소프트웨어 A transmission system for compression and division of xml and json data
KR20170014184A (en) * 2015-07-29 2017-02-08 조선대학교산학협력단 System for collecting and analyzing environment information data associated with regional industry and method thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102108651B1 (en) * 2018-11-23 2020-05-07 전자부품연구원 Method for interlocking M2M platform using LoRa communication and system using the same
WO2020105765A1 (en) * 2018-11-23 2020-05-28 전자부품연구원 Method and system for linking to m2m platform using lora communication

Also Published As

Publication number Publication date
KR102087272B1 (en) 2020-03-10

Similar Documents

Publication Publication Date Title
US9300764B2 (en) High efficiency binary encoding
EP1122655A2 (en) Data compression apparatus, database system, data communication system, data compression method, storage medium and program transmission apparatus
CN109768970B (en) Configurable universal protocol generation method
CN111683066B (en) Heterogeneous system integration method, heterogeneous system integration device, computer equipment and storage medium
CN109670081B (en) Method and device for processing service request
JP4653381B2 (en) Structured document compression / decompression method
CN103379136A (en) Compression method and decompression method of log acquisition data, compression apparatus and decompression apparatus of log acquisition data
CN101178709A (en) Diary record system and method
US7530017B2 (en) Document transformation system
EP2618268A1 (en) Method and device for data storage
CN111552838A (en) Data processing method and device, computer equipment and storage medium
US20080313291A1 (en) Method and apparatus for encoding data
KR102087272B1 (en) Method for transforming data for low volume transmission of meta model base protocol, and data transmitting system for low volume transmission of meta model base protocol
JP4231261B2 (en) Identity determination device
KR102035706B1 (en) Method for transforming data for low volume transmission of meta model base protocol which monitors power amount data of new recycle energy, and data transmitting system for low volume transmission of meta model base protocol which monitors power amount data of new recycle energy
CN101997643A (en) Method and system for packing electronic files
CN114385146A (en) Simple object transmission serialization method and device
CN103646015B (en) Transmission, the method and system for receiving and transmitting XML message
CN104717082A (en) Service model adaptation method and system
EP2640018A1 (en) Protocol modeling & engineering system
US20050216896A1 (en) Data communication via tanslation map exchange
US20050091405A1 (en) Method and system for using multiple data type representations to deliver data objects to components in a distributed system
KR100968083B1 (en) Method and devices for encoding/decoding structured documents, especially xml documents
Ali et al. A metadata encoding for memory-constrained devices
CN114666406B (en) Electric power Internet of things data compression method and device based on object model

Legal Events

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