KR102087272B1 - 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
KR102087272B1
KR102087272B1 KR1020180033767A KR20180033767A KR102087272B1 KR 102087272 B1 KR102087272 B1 KR 102087272B1 KR 1020180033767 A KR1020180033767 A KR 1020180033767A KR 20180033767 A KR20180033767 A KR 20180033767A KR 102087272 B1 KR102087272 B1 KR 102087272B1
Authority
KR
South Korea
Prior art keywords
data
metamodel
packet
key table
meta
Prior art date
Application number
KR1020180033767A
Other languages
Korean (ko)
Other versions
KR20180108505A (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 comprises the steps of generating energy sensing data; Receiving, by a client, the energy sensing data and converting the energy sensed data into metamodel data including a metamodel and metadata; Partitioning and compressing the metamodel data to generate packet metamodel data; Transmitting the packet metamodel data to a server through an IoT network; And outputting the metamodel data by parsing the packet metamodel data by the server, and 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. It is about.

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}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}

본 발명은, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법 및 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템에 관한 것이다.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 the generation data of renewable energy, it is necessary to communicate with the inverter, junction box, and sensor device in each power plant to check the real-time generation information. After collecting the information of each inverter, the client sends data to the server. In this case, each inverter is not the same inverter, so you have to use different communication method. The client also collects each inverter data and passes it to the integration server. In order to integrate this heterogeneous data, data is transmitted to meta model.

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

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

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

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

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

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

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

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

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

여기서, 상기 키테이블은, 아이디 필드, 키필드, 클래스네임 필드, 네임 필드 프로퍼티 필드, 사이즈 필드, 페어런츠 필드 및 차이들 필드를 포함할 수 있다.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 parent field, and a difference field.

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

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

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

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

여기서, 상기 헤더 패킷은, 데이터 타입 정보와, 데이터 크기 정보를 포함하고, 상기 데이터 타입 정보는 라벨링 정보일 수 있다.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) 형인지를 확인하는 단계; 속성 정보가 원시형인 경우, 상기 헤더 패킷에 압축 데이터 바이트를 추가한 후, 상기 메타 데이터의 바디를 상기 데이터 패킷에 추가하는 단계를 포함할 수 있다.Here, the step of splitting and compressing the metamodel data to generate packet metamodel data may include: checking key of the metamodel data and adding key data to the header packet if there is no tag; Checking the attribute information of the metamodel data to determine whether the attribute information is a primitive type if there is attribute information; If the attribute information is a primitive type, adding a compressed data byte to the header packet, and then adding the body of the metadata to the data packet.

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

여기서, 상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 단계는, 상기 메타 모델 데이터의 태그를 확인하고, 태그가 있으면, 상기 메타 모델 데이터를 분해하고, 분해된 데이터 패킷을 구분하기 위한 구분자를 추가하는 단계를 포함할 수 있다.Here, the step of splitting and compressing the metamodel data to generate packet metamodel data may include: checking a tag of the metamodel data, decomposing the metamodel data if there is a tag, and classifying the decomposed data packet. It may include adding a separator.

여기서, 상기 메타 데이터의 태그의 키가 있는 경우, 상기 메타 모델 데이터를 분해하고, 분해된 데이터 패킷을 구분하기 위한 구분자를 추가하는 단계는, 상기 사물인터넷 망의 최대 데이터 패킷 크기에 맞게 사기 메타 모델 데이터를 분해하는 단계를 포함할 수 있다.Here, when there is a key of the tag of the meta data, decomposing the meta model data and adding a delimiter for dividing the decomposed data packets may include a fraud metamodel in accordance with the maximum data packet size of the IoT network. Decomposing the data.

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

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

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

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

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

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

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

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

여기서, 상기 클라이언트는, 상기 데이터베이스로부터 키테이블을 수신받고, 이를 이용하여 상기 메타 모델 데이터를 분할 압축하여 상기 패킷 메타 모델 데이터를 생성하는, 데이터 패킷 크리에이터를 포함할 수 있다.Here, the client may include a data packet creator that receives the key table from the database, and splits and compresses the metamodel data using the data table to generate the packet metamodel data.

여기서, 상기 서버는, 상기 데이터베이스로부터 키테이블을 수신받고, 이를 이용하여 상기 패킷 메타 모델 데이터를 파싱하여 복원하는 데이터 패킷 파서를 포함할 수 있다.The server may include a data packet parser that receives a key table from the database and parses and restores the packet metamodel data using the 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 amount of meta-model data in real time enough even through the IoT network having a relatively small capacity and transmission rate.

도 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 illustrating an example of energy sensing data in a power generation facility among energy sensing data related to the present invention.
4 is a diagram illustrating an example of energy sensing data in a junction box among energy sensing data related to the present invention.
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.
6 is a diagram illustrating a relationship between a metamodel and data of a keytable 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 one embodiment of the present invention;
8 is a flow chart for explaining the operation in the key table creator according to an embodiment of the present invention.
9 is a diagram illustrating the automatic generation of a meta-model based insert query statement according to an 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.
12 illustrates a process of constructing a data packet based on metamodel data according to an embodiment of the present invention.
13 illustrates a data packet decomposition result in accordance with an embodiment of the present invention.
14 is a flowchart illustrating an operation in a packet creator according to an embodiment of the present invention.
FIG. 15 illustrates a Con tag value having a value of an actual transmitted packet extracted according to an embodiment of the present invention. FIG.
16 is an exemplary view illustrating a process of integrating extracted content values into one data packet according to an embodiment of the present invention.
FIG. 17 is a diagram illustrating a process of restoring metadata in a divided data packet according to an embodiment of the present invention. FIG.
18 is a flowchart illustrating an operation in a packet parser according to an embodiment of the present invention.

이하, 본 발명의 일실시예인 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법 및 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템에 대하여 도면을 참조하여 보다 상세하게 설명한다. 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 according to an embodiment of the present invention will be described in detail with reference to the accompanying 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. As shown in FIG. 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: Laura device), and an IOT backbone network (3: LoRa). Backbone network) and server 4.

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

이와 같이 신재생 에너지 발전 설비중 하나로, 본 발명에서는 태양광 발전설비(5)를 도 1에서 예시하고 있다. 이와 같이 에너지 감지데이터가 발전 설비에서 생성되면, 이를 클라이언트(1)가 수신하게 된다. 에너지 감지 데이터로는, 접속함(52)에서의 다양한 전압, 전류 관련 데이터, 또는 인버터(53)에서의 전압 전류 관련 데이터가 될 수 있다. As described above, as one of the renewable energy generation facilities, the solar power generation facility 5 is illustrated in FIG. 1 in the present invention. As such, when the energy sensing data is generated in the power generation facility, the client 1 receives it. The energy sense data may be various voltage, current related data in the junction box 52, 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 the energy sensing data into meta model data including meta model data and meta data as described above, and converts the meta model data into packet meta model data in consideration of the communication speed of the IoT network. Will be divided. The divided packet meta-model data is transmitted to the IOT backbone network (3: the Internet of Things internet communication network) in parallel through a plurality of Lora devices (2: Internet of Things communication device), and through this IOT backbone network 3, the communication server transmits packets Upon receiving the meta model data, the server 4 parses and merges the packet meta model data to restore the original meta model data again.

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

이에 본원 발명에서는 원시 데이터인 에너지 감지 데이터 자체를 줄여서 전송 효율을 향상시키게 된다. 이점에 대해서는 뒤에서 상세하게 설명하도록 한다.Accordingly, in the present invention, the transmission efficiency is improved by reducing energy sensing data itself, which is raw data. This will be described 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 minimize data capacity, convert the information sent in the base string to bytes. It uses less bytes to reduce capacity.

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

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

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

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

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

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

먼저 데이터 타입의 길이를 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, data types appearing in the metamodel information are labeled in alphabetical order. For example, as shown in FIG. 3, when there is a metamodel called PlantDisplay and corresponding data exists, 12 bytes should be used because the PlantDisplay should be sent as a string if it is sent in a conventional manner. We have meta-model information on both the sending and receiving sides, so if we apply labeling to the data types, this PlantDisplay can be represented as "a". Since PlantDisplay is labeled in alphabetical order, the expression 'a' indicates that PlantDisplay is the first model in the metamodel data. Six properties were used as properties of PlantDisplay: current, days, yesterday, month_power, last_month_power, and total. In the past, all this information must be sent, but the metamodel does not send the name information of the attribute by ordering the data in the order in which it is stored. If the size is not variable and fixed, such as EFloat and EDouble defined in the metamodel, no size information is sent. Therefore, in this example, only 'a' is sent when the header is sent. You can retrieve the original data by referring to the metamodel using only the alphabetic information of 'a'. For this process, it is necessary to make a connection between meta model information and alphabet information in advance. We construct a database table that stores this connection data, which we call the Key Table Creator. This will be described later in more detail.

한편, 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로 계산해 헤더에 입력하게 된다.Meanwhile, size information is sent only to the EString type, the EDate type, and the Enum type. 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 check the actual data to determine its size. In the case of Figure 4, when the JunctionBox is labeled 'b', the size of the data is checked to create a header '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 of the second and third data is variable as 'EString' because the size information is not described in the header. The size of the actual data "0; 0; 0; 0; 0; 0;" is calculated in bytes and input into the header.

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

또한, 아래의 표 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 in the metamodel. In the case of the previous plantdisplay, there are six attributes, 6 x 2 bits = 12 bits (12/8 = 2 bytes (rounded up)). And junctionbox has one attribute, 1 x 2bit = 2/8 = 1byte (rounded up).

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

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. The final size is specified by reading a value from the body data to be sent. For example, 0 reads 1 byte when reading from the body with a value of 00 in 2 bits of the key.

값의 범위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 to 32,768 2byte2 bytes 0101 -2,147,483,638~2,147,483,638-2,147,483,638 ~ 2,147,483,638 4byte4 bytes 1010 그외etc 8byte8byte 1111

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

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

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

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

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

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

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

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

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

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

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 the metamodel based protocol according to the present invention according to this principle will be described with reference to FIG. 5.

도 5는, 본 발명의 일실시예에 따른 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법에서의 저용량 전송을 위한 구조를 나타내는 도면이다. 도 5에 도시된 바와 같이, 본 발명에 따른 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템은 데이터베이스(6), 클라이언트(1) 그리고 서버(4)를 포함하여 구성된다. 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, the data transmission system for low capacity transmission of the 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 stores a key table as shown. The key table creator 61 of the database 6 generates a key table that stores the data labeled on the models constituting the metamodel data and the size of each data. The data packet creator 11 included in the client 1 receives a key table generated in the database 6 and then refers to it and sends data (meta model data in XMI form, that is, an aspect). Optical bar) to generate a packet whose data size is reduced in binary form, and generate the packet metadata by dividing the reduced packet based on the transmission speed of the IoT network, and the divided packet meta Data is sequentially transmitted to the server via a LoRa network 3 including a plurality of LoRa devices 2. The server 4 having received the divided packet metadata has a data packet parser 41, receives a key table generated by the key table creator 61 of the database 6, and receives the data. The packet parser 41 reverses the process of generating packet metamodel data with reference to the key table to restore the original XMI data that the client 1 wanted to send.

이하에서는, 도 6 내지 도 10을 참조하여 데이터베이스의 구성요소인 키테이이블 크리에이터의 동작에 대하여 보다 상세하게 설명하도록 한다. Hereinafter, an 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.

도 6은 본 발명의 일실시예에 따른 메타 모델과 키테이블의 데이터간 관계를 예시하는 도면이고, 도 7은, 본 발명의 일실시예에 따라 키테이블에서 생성되는 레코드의 예를 나타내는 도면이며, 도 8은 본 발명의 일실시예에 따른 키테이블 크리에이터에서의 동작을 설명하기 위한 순서도이고, 도 9는 본 발명의 일실시예에 따라 메타 모델 기반의 인서트 쿼리문의 자동생성을 예시하는 도면이고, 도 10은 본 발명의 일실시예에 따른 키테이블의 구조를 예시하는 도면이다. 도 6에 도시된 바와 같이, 메타 모델에는 각각 데이터 타입의 이름(className, name), 라벨링(key) 정보와 데이터에 포함되는 속성들의 이름(property), 크기(size) 정보가 포함된다. 키테이블 크리에이이터(61:Key Table Creator)에서는 메타 모델로부터 각 데이터 타입의 이름(className, name), 라벨링(key) 정보와 데이터에 포함되는 속성들의 이름(property), 크기(size) 정보가 저장된 테이블을 생성한다. 또한, 메타 모델 구조를 확인하기 위해서 종속 관계를 나타내는 부모(parent)와 자식(child) 데이터를 저장한다. 다음은 메타 모델과 키테이블의 데이터 간의 관계를 나타낸다.6 is a diagram illustrating a relationship between a metamodel and data of a key table according to an embodiment of the present invention, and FIG. 7 is a diagram illustrating an example of a record generated in a key table according to an embodiment of the present invention. 8 is a flowchart illustrating an operation in a key table creator according to an embodiment of the present invention, and FIG. 9 is a diagram illustrating automatic generation of a meta-model based insert query statement according to an embodiment of the present invention. 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 name of a data type (className, name), labeling information, and property name and size information of attributes included in the data. In the Key Table Creator (61), the name (className, name), labeling information of each data type and property and size information of properties included in the data are provided from the metamodel. Create a stored table. In addition, to check the metamodel structure, parent and child data representing a dependency relationship are stored. The following shows the relationship between the metamodel and the keytable 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과 같은 레코드가 생성된다.Store each KeyEClass as a record in the table in the metamodel. As shown in FIG. 6, the relationship between the EClass 'Inverter' and the Key Table data is represented by a line. The fields of the key table are divided into id, key, className, name, property, size, parent, and child. id enters a number from 1 in the order of record input, regardless of metamodel data, and sets this field as the primary key. In the key field, enter 'a', 'b' and '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 metamodel. Because the name field uses the lowercase name of the EClass in metamodel data, the className field value is converted to all lowercase letters and stored. property stores the name attribute of the EAttribute included in the current EClass. Each name is separated by ';' because it consists of several EAttributes. The size field stores the type attribute of each EAttribute. Like the property field, each type is separated by ';'. Enter the parent class of the corresponding EClass in the parent field and the subclass of the corresponding EClass in the child field. In the current metamodel, since EClass 'Inverters' subclasses EClass 'Inverter' as an EReference, enter 'inverters' in the parent field of 'Inverter' and EClass 'warning' in the subclass as child. Enter 'warning' in the field. In this manner, when an EClass called 'Inverter' is stored, 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 the above process is illustrated in FIG. 8. As shown in FIG. 8, first, the key table creator interworks with a database storing the key table, and loads a metamodel (S11, S12). The key table is generated using the property information of the metamodel. The Etableage information, which is the highest model of the metamodel, is loaded, the eClassifires that are dependent on the Epackage information are identified, and when the eClassifires is confirmed, the key is stored. Store the EClass name attribute information in the key, check the StructualFeature after storing the EClass name attribute information, check the EAttribute if the StructualFeature is confirmed, and check the EAttribute if the EAttribute is verified, and name information and type attribute information. If the EAttribute is not confirmed, the EAttribute is determined as EReference, and the name attribute information is stored in the child field, and a 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"는 해당 태그의 자식 태그들이다.In other words, it loads EPackage, the parent model of the metamodel, and EClassifiers that depend on it. Because EClassifiers consist of multiple EClasses, you load each EClass through an Iterator. Save the name attribute of the loaded EClass. This value is stored in the className field in the table. EClass also consists of several EAttributes and EReferences, so it loads each one through an Iterator and distinguishes between types. In the case of EAttribute, the name and type attributes are stored. These values are stored in the property and size fields of the table. In case of EReference, the name property is saved. This value is stored in the child field of the table. Enter a record based on the stored data. Finally, we pass the current className data to the next EClass and store it in the parent field. In this process, Insert query is automatically generated based on the metamodel. The result is shown in FIG. As described above, an insert query statement is automatically generated based on the respective data. The value of the key field is entered alphabetically regardless of metamodel data, and the name field is entered with all data in the className field changed to lowercase. As shown in FIG. 10, a part of the structure of the key table generated as a result through the automatically generated Insert query statement as above. Here, "id" is used as a primary key to distinguish each record, and "key" is a tag name converted to the corresponding alphabet when XMI is converted into a data packet, and "className" is actually used. The name of the class declared in the metamodel, "name" is the name of the tag declared in the XMI file, "property" is a list of property names used in the tag, and "size" is the byte size of the property. List of data types to represent, where "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.

도 11은 본 발명의 일실시예에 따른 메타 모델 데이터, 키테이블, 헤더 패킷의 구성을 예시하는 도면이고, 도 12는, 본 발명의 일실시예에 따라 메타 모델 데이터를 기반으로 데이터 패킷을 구성하는 과정을 예시하는 도면이며, 도 13은 본 발명의 일실시예에 따른 데이터 패킷 분해 결과를 예시하는 도면이고, 도 14는 본 발명의 일실시예에 따른 패킷 크리에이터에서의 동작을 설명하기 위한 순서도이다. FIG. 11 is a diagram illustrating a configuration of meta model data, a key table, and a header packet according to an embodiment of the present invention, and FIG. 12 illustrates a data packet based on meta model data according to an embodiment of the present invention. 13 is a diagram illustrating a data packet decomposition result 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 a key table automatically generated by the key table creator 61 of the database 6, and uses the meta model data obtained from the power generation facility. Generates packet metamodel data in a compressed partitioned form. Since the divided packet metamodel data is in a form in which one data is decomposed into several data packets, the divided packet metamodel data may include a header packet representing the structure of the entire data and a body packet representing the actual data. To distinguish the order of the body packets, 2 bytes are used as data representing the total number of body packets (1 byte) and the order of current body packets (1 byte). In Fig. 11, the relationship between the actual metamodel data, the key table and the header packet is shown. 11 illustrates a process of configuring a header packet based on metamodel data. It loads each tag of metamodel data and retrieves records with the same name attribute in tag name and key table. Enter the key value of the record in the header and check all properties. In the case of Primitive Type, the data size is checked and 2 bits of data are added to the header packet according to the byte. One byte represents 00, two bytes 01, three bytes 10, and four bytes 11. In case of UnPrimitive Type, check the actual data length and add it to the header packet. Add the key field "l" for the first tag, "hsSolarEnergy," and check the property for that record. There are three properties in the record: plant_id, time, and mode. Since these three properties are all UnPrimitive Types, the actual data size is checked in the metamodel data. The data of 'plant_id' is 7 and the time of 'time' data is 28. "Mode" does not require size checking because no data exists. Enter 7 and 28, the actual size of the variable data. Add the 'a' key field of the next tag 'plantdisplay' and check all properties. Since all properties included are Primitive Types, check the actual data size. Since the current property is a float, it has a size of 4 bytes, but since the actual data is small, it can be reduced to 1 byte of data. Thus, a '00' bit, meaning 1 byte, is input into the header packet. The data packet is configured by converting the actual data of all the attributes into a byte form in the process of constructing the header packet. In FIG. 12, an example of hexadecimal numbers is shown to simplify the byte data.

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

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

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

데이터 패킷 파서(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 망을 통해 패킷 메타 모델 데이터가 각각 서버로 전송되며, 이 서버는 각각의 패킷 메타 모델 데이터를 모듈 아이디와 수신 시간명으로 누적 저장하게 된다. The data packet parser 41 receives data sent by the data packet creator 11 through the LoRa network. LoRa network delivers the received data to a specific web page. Web pages are assigned differently, one for each LoRa module. For example, if you set up LoRa to send the data from A module to http: //***.com/A1.php, LoRa will send the data of A module to http: // ***. Pass it to .com / A1.php. The data delivered is XML file data, which is metamodel data. XML files are accumulated and stored by time in the integrated server. The file name is saved as '[module ID_current time (seconds)]. Xml'. Information such as the transmission date and LoRa module ID is stored in the XML file. Data transmitted by the LoRa module is stored in the con tag. That is, packet metamodel data is transmitted to a server through a LoRa network composed of a plurality of sub communication networks, and the server accumulates and stores each packet metamodel data under a module ID and a reception time name.

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

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

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

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

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

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

도 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 performs a data processing process of the aforementioned web page. That is, the data stored in the header of the divided packet model data received through the IoT network is read, the data is stored in the LoRa ID and the reception time name, and the packet model data is loaded to be transmitted by the LoRa network. Continue saving the XML file and read the con tag in the XML file. While reading the data stored in the con tag, if there is no con tag, 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 variables v (S31 to S36).

con 태그가 있으면, 현재 읽은 파일이 몇번째 파일인지 체크하고, XML의 마지막 파일이 맞으면, 이전에 저장한 파일들을 한번에 읽어들이고 합쳐서 하나의 변수 v에 저장한다(S351~S354). 그 다음 기존의 XML파일들을 삭제한다(S37). If there is a con tag, it checks how many files are currently read, and if the last file of XML is correct, the previously saved files are read at once, merged and stored in one variable v (S351 to S354). Next, delete the existing XML files (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 is restored to the original XMI file, and stored as the recovered XMI file (S38 ~ S40). That is, after loading the keytable from the database, it is matched with the keytable and restored to the original XMI file. The recovery process is the reverse of the process of creating the actual packet. The recovery process requires converting ASCII code to decimal. The con tag displays all data in hexadecimal notation and displays it in ASCII code. If LoRa module transmits 10 in 1byte data space, reading con tag reads '0'A'. Therefore, it is necessary to first 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) in 1 byte of data space, if you read the con tag, the string '5' '3' will be read.

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

상기와 같이 설명된 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법 및 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템은 상기 설명된 실시 예들의 구성과 방법이 한정되어 적용될 수 있는 것이 아니라, 상기 실시 예들의 다양한 변형이 이루어질 수 있도록 각 실시 예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.The data transformation 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 to allow various modifications to the embodiments.

Claims (14)

신재생 에너지 생산 설비가 에너지 감지 데이터를 생성하는 단계;
데이터베이스가 키테이블 크리에이터를 통해 키테이블을 생성하여 저장하는 단계;
클라이언트가 상기 에너지 감지데이터를 수신하여 이를 메타 모델과 메타 데이터를 포함하는 메타 모델 데이터로 변환하는 단계;
상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 단계;
사물 인터넷 통신망의 전송속도 정보를 획득하는 단계
상기 패킷 메타 모델 데이터를 상기 사물인터넷 통신망을 통해 서버로 전송하는 단계; 및
상기 서버가 상기 패킷 메타 모델 데이터를 파싱하여 상기 메타 모델 데이터를 출력하는 단계를 포함하고,
상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 단계는,
상기 전송속도 정보에 기초하여 상기 패킷 메타 모델 데이터의 기준 크기를 정하는 단계; 및
상기 기준 크기에 기초하여 상기 메타 모델 데이터를 분할하는 단계를 포함하고,
상기 메타 모델 데이터를 분할하여 패킷 메타 모델 데이터를 생성하는 단계는,
데이터 패킷 크리에이터가 상기 키테이블을 이용하여 상기 메타 모델 데이터를 분할하여 상기 패킷 메타 모델 데이터를 생성하는 단계를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
Generating, by the renewable energy production facility, energy sensing data;
A database generating and storing a key table through the key table creator;
Receiving, by a client, the energy sensing data and converting the energy sensed data into metamodel data including a metamodel and metadata;
Partitioning and compressing the metamodel data to generate packet metamodel data;
Acquiring transmission speed information of IoT network
Transmitting the packet metamodel data to a server through the IoT network; And
The server parsing the packet metamodel data to output the metamodel data;
Partially compressing the metamodel data to generate packet metamodel data includes:
Determining a reference size of the packet metamodel data based on the transmission rate information; And
Dividing the metamodel data based on the reference size;
Splitting the meta model data to generate packet meta model data,
And generating, by the data packet creator, the meta model data by using the key table to generate the packet meta model data.
제 1 항에 있어서,
상기 사물 인터넷 통신망은, LoRa 망인, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method of claim 1,
The IoT communication network is a LoRa network, data transformation method for low capacity transmission of the meta-model based protocol.
삭제delete 제 1 항에 있어서,
상기 키테이블은,
아이디 필드, 키필드, 클래스네임 필드, 네임 필드 프로퍼티 필드, 사이즈 필드, 페어런츠 필드 및 차이들 필드를 포함하는,메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method of claim 1,
The key table,
A data transformation method for 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 parent field and a difference field.
제 4 항에 있어서,
상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 단계는,
상기 키테이블에 인서트쿼리문을 이용하여 상기 메타 데이터를 입력시켜서, 상기 메타 모델 데이터를 압축하여, 압축 데이터를 생성하는 단계;
상기 압축 데이터를 분할하여 다수의 패킷 메타 모델 데이터를 생성하는 단계를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method of claim 4, wherein
Partially compressing the metamodel data to generate packet metamodel data includes:
Generating compressed data by compressing the metamodel data by inputting the meta data using an insert query statement to the key table;
Dividing the compressed data to generate a plurality of packet metamodel data.
제 1 항에 있어서
상기 패킷 메타 모델 데이터는,
전체 데이터 구조를 나타내는 헤더 패킷과, 상기 메타 데이터를 나타내는 바디 패킷으로 구성되는 바디 패킷을 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method of claim 1
The packet metamodel data is
And a body packet comprising a header packet representing an entire data structure and a body packet representing the meta data.
제 6 항에 있어서,
상기 헤더 패킷은,
데이터 타입 정보와, 데이터 크기 정보를 포함하고,
상기 데이터 타입 정보는 라벨링 정보인, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method of claim 6,
The header packet is
Including data type information and data size information,
The data type information is labeling information, data transformation method for low capacity transmission of the meta-model based protocol.
제 6 항에 있어서,
상기 헤더 패킷은,
가변 크기 정보를 더 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method of claim 6,
The header packet is
The data transformation method for low-capacity transmission of the meta-model based protocol further comprising variable size information.
제 1 항에 있어서,
상기 사물 인터넷 통신망이 복수의 서브 통신망으로 구성되고,
상기 패킷 메타 모델 데이터를 사물인터넷 통신망을 통해 서버로 전송되는 단계는,
상기 복수의 서브 통신망을 통해 분할된 복수의 상기 패킷 메타 모델 데이터가 각각 상기 서버로 전송되는 단계를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method of claim 1,
The IoT communication network is composed of a plurality of sub communication networks,
The step of transmitting the packet metamodel data to the server through the IoT network,
And transmitting the plurality of packet metamodel data divided through the plurality of sub-communication networks to the server, respectively.
제 1 항에 있어서,
상기 에너지 감지 데이터를 생성하는 단계는,
발전설비로부터 획득되는 오리지널 에너지 감지 데이터를 생성하는 단계, 상기 오리지널 에너지 감지 데이터는, 오리지널 메타 모델과, 오리지널 메타 모델 데이터를 포함함;
데이터베이스 생성기를 통해 상기 오리지널 메타 모델을 이용하여 데이터베이스를 생성하는 단계; 및
상기 오리지널 메타 모델 데이터를 데이터베이스 삽입기를 통해 상기 데이터베이스에 삽입하여 상기 에너지 감지 데이터를 생성하는 단계를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 변형 방법.
The method of claim 1,
Generating the energy sensing data,
Generating original energy sensing data obtained from a power plant, wherein the original energy sensing data includes an original metamodel and original metamodel data;
Generating a database using the original metamodel through a database generator; And
And inserting the original metamodel data into the database through a database inserter to generate the energy sensing data.
키테이블을 생성하는 키테이블 크리에이터 및 상기 키테이블을 저장하는 디비 메모리를 포함하는 데이터베이스;
신재생 에너지 생산 설비로부터 에너지 감지데이터를 수신하고, 이를 메타 모델과 메타데이터를 포함하는 메타 모델 데이터로 변환하고, 사물 인터넷 통신망의 전송속도 정보를 획득하고, 상기 키테이블을 이용하여 상기 메타 모델 데이터를 분할 압축하여 패킷 메타 모델 데이터를 생성하는 클라이언트, 상기 클라이언트는, 상기 전송속도 정보에 기초하여 상기 패킷 메타 모델 데이터의 기준 크기를 정하고 상기 기준 크기에 기초하여 상기 메타 모델 데이터를 분할함; 및
상기 클라이언트로부터 패킷 메타 모델 데이터를 사물인터넷 통신망을 통해 수신하고 상기 패킷 메타 모델 데이터를 파싱하여 상기 메타 모델 데이터로 복원하여 출력하는 서버를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템.
A database including a key table creator for generating a key table and a db memory for storing the key table;
Receive energy sensing data from a renewable energy production facility, convert it into metamodel data including a metamodel and metadata, obtain transmission speed information of the IoT network, and use the keytable to generate the metamodel data Splitting and compressing to generate packet metamodel data, wherein the client is configured to: determine a reference size of the packet metamodel data based on the transmission rate information and divide the metamodel data based on the reference size; And
And a server configured to receive packet metamodel data from the client through an IoT network, parse the packet metamodel data, and restore and output the packet metamodel data to the metamodel data.
제 11 항에 있어서,
상기 클라이언트는, 상기 데이터베이스로부터 키테이블을 수신받고, 이를 이용하여 상기 메타 모델 데이터를 분할 압축하여 상기 패킷 메타 모델 데이터를 생성하는, 데이터 패킷 크리에이터를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템.
The method of claim 11,
The client receives a key table from the database, and uses the data packet creator to generate the packet metamodel data by splitting and compressing the metamodel data using the data table. Transmission system.
제 11 항에 있어서,
상기 서버는,
상기 데이터베이스로부터 키테이블을 수신받고, 이를 이용하여 상기 패킷 메타 모델 데이터를 파싱하여 복원하는 데이터 패킷 파서를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템.
The method of claim 11,
The server,
And a data packet parser for receiving a key table from the database and parsing and restoring the packet metamodel data using the data table.
제 11 항에 있어서,
상기 데이터베이스는,
상기 메타 모델 데이터를 이용하여 키테이블을 생성하는 키테이블 크리에이터를 포함하는, 메타 모델 기반 프로토콜의 저용량 전송을 위한 데이터 전송 시스템.
The method of claim 11,
The database,
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 KR20180108505A (en) 2018-10-04
KR102087272B1 true 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
KR102486889B1 (en) * 2021-10-18 2023-01-10 (주)다인시스 Collected data transmission system based timeline in heterogeneous networks

Families Citing this family (1)

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

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101066610B1 (en) * 2009-12-23 2011-09-21 주식회사 휴먼앤소프트웨어 A transmission system for compression and division of xml and json data
KR101713625B1 (en) * 2015-07-29 2017-03-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
KR102486889B1 (en) * 2021-10-18 2023-01-10 (주)다인시스 Collected data transmission system based timeline in heterogeneous networks
WO2023068483A1 (en) * 2021-10-18 2023-04-27 (주)다인시스 System for transmitting collected data based on timeline in heterogeneous communication network

Also Published As

Publication number Publication date
KR20180108505A (en) 2018-10-04

Similar Documents

Publication Publication Date Title
EP1122655A2 (en) Data compression apparatus, database system, data communication system, data compression method, storage medium and program transmission apparatus
CN109670081B (en) Method and device for processing service request
US8015218B2 (en) Method for compressing/decompressing structure documents
US20150312379A1 (en) High efficiency binary encoding
CN101178709A (en) Diary record system and method
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
CN103294652A (en) Data conversion method and system
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
US7530017B2 (en) Document transformation system
CN104852813B (en) The on-demand loading method and system of TR069 Parameter nodes in family gateway equipment
CN101997643B (en) Method and system for packing electronic files
US20040049495A1 (en) System and method for automatically generating general queries
CN103646015B (en) Transmission, the method and system for receiving and transmitting XML message
KR100500245B1 (en) Storage Medium Having Object-Oriented Program
CN113239039B (en) Dynamic data storage method, query method, management method and management system
Korman et al. Labeling schemes for weighted dynamic trees
US20050091405A1 (en) Method and system for using multiple data type representations to deliver data objects to components in a distributed system
US20050216896A1 (en) Data communication via tanslation map exchange
CN113641352B (en) Method and system for automatically generating SNMP (simple network management protocol) codes
CN117076757B (en) Knowledge service retrieval and management system based on large model
KR20030083904A (en) Processing method for structure information of xml document
CN117170908A (en) Data exchange method, system and device based on heterogeneous data of network system
CN113407539A (en) Area coding query method and system based on prefix tree and application thereof
CN107342881B (en) Northbound interface data processing method and device for operation and maintenance center
CN115617348A (en) Relational time sequence data processing method, device, equipment and storage medium

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