KR20220124589A - IoT 기기와 플랫폼 연결을 위한 SDK 생성방법 및 장치 - Google Patents

IoT 기기와 플랫폼 연결을 위한 SDK 생성방법 및 장치 Download PDF

Info

Publication number
KR20220124589A
KR20220124589A KR1020210028452A KR20210028452A KR20220124589A KR 20220124589 A KR20220124589 A KR 20220124589A KR 1020210028452 A KR1020210028452 A KR 1020210028452A KR 20210028452 A KR20210028452 A KR 20210028452A KR 20220124589 A KR20220124589 A KR 20220124589A
Authority
KR
South Korea
Prior art keywords
sdk
iot
platform
iot device
received
Prior art date
Application number
KR1020210028452A
Other languages
English (en)
Inventor
김준영
강성학
Original Assignee
주식회사 업링크
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 업링크 filed Critical 주식회사 업링크
Priority to KR1020210028452A priority Critical patent/KR20220124589A/ko
Publication of KR20220124589A publication Critical patent/KR20220124589A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/37Compiler construction; Parser generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/024Standardisation; Integration using relational databases for representation of network management data, e.g. managing via structured query language [SQL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/18Protocol analysers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Communication Control (AREA)

Abstract

IoT 기기와 플랫폼 연결을 위한 SDK 생성방법 및 장치가 개시된다. 본 발명의 실시예에 따르면, IoT(Internet of Things) 기기와 IoT 기기와 통신을 수행하는 IoT 플랫폼 연결을 위한 SDK(Software Development Kit)를 생성하는 SDK 생성장치로, IoT 기기의 사용자로부터 수신된 샘플데이터를 분석하여 IoT 기기와 IoT 플랫폼 간 통신을 위한 프로토콜(protocol)을 파악하는 프로토콜 분석부와, IoT 기기의 사용자에게 IoT 기기와 통신을 수행하는 IoT 플랫폼의 선택을 요청하여 수신된 IoT 플랫폼의 정보, 상기 파악된 프로토콜 및 상기 IoT 기기의 사용자에게 SDK 언어의 선택을 요청하여 수신된 SDK 언어를 이용하여 SDK를 생성하는 SDK 생성부를 포함한다.

Description

IoT 기기와 플랫폼 연결을 위한 SDK 생성방법 및 장치{SDK GENERATION METHOD AND APPARATUS FOR CONNECTING IoT DEVICE AND PLATFORM}
본 발명은 IoT(Internet of Things) 기기와 플랫폼(Platform) 연결을 위한 SDK(Software Development Kit) 생성방법 및 장치에 관한 것으로, 더욱 자세하게는 IoT 기기와 통신을 통해서 데이터를 수집하여 보관 및 처리(분석) 등을 수행하는 플랫폼과 IoT 기기 간의 연결에 필요한 SDK를 생성하는 기술에 관한 것이다.
사물 인터넷(IoT)은 인터넷 인프라구조 내에서 고유하게 식별가능한 임베딩된 디바이스들의 상호연결을 지칭한다. 궁극적으로 IoT는 사실상 임의의 타입의 물리적인 물건이 그 자체 또는 그의 주변들에 대한 정보를 제공할 수 있고 그리고/또는 인터넷을 통하여 클라이언트 디바이스들을 통해 원격으로 제어될 수 있는 새로운 광범위한 타입들의 애플리케이션들을 초래할 수 있으로 예상된다.
이러한 특징 때문에 IoT 디바이스, 예를 들어 공기청정기, 에스프레소 머신, 공기질 측정기 등은 소형화, 저전력으로 운영되는 구조를 가지기 때문에 스스로 데이터를 보관 및 처리(분석)하는데 효율적이지 않다. 따라서 IoT 디바이스에서 수집된 데이터는 IoT 디바이스의 외부에서 보관되거나 처리되는게 더 효율적일 수 있다. 이를 위해서 다수의 IoT 플랫폼들이 운영되고 있다. 이러한 IoT 플랫폼들에는 KT IoT 플랫폼, 구글 IoT 플랫폼, 아마존 IoT 플랫폼 등이 있다.
한편 IoT 디바이스는 무인으로 운영되므로 특정 명령을 수신하고 실행하기 위해 플랫폼으로부터 데이터를 수신하여야 한다.
즉 이와 같이 IoT 디바이스는 수집한 데이터를 플랫폼으로 전송하고 플랫폼으로부터 특정 명령을 수신하기 위해서 플랫폼과의 연결고리를 필요로 한다. 이 연결고리는 IoT 디바이스의 펌웨어(FirmWare)에 적용된 SDK이다.
IoT 플랫폼은 미리 제작된 SDK를 배포하고, IoT 디바이스가 IoT 플랫폼에 연결되도록 하기 위해서는 개발자 등이 IoT 플랫폼의 SDK를 참조하여 IoT 디바이스의 펌웨어를 직접 코딩/수정하여야 했다.
이러한 과정을 위해서 개발자 등이 IoT 플랫폼의 SDK 등을 이해 및 파악하여야 함은 물론 IoT 디바이스의 특성을 파악하여 IoT 디바이스의 펌웨어를 구현하여야 한다. 이로 인하여 IoT 플랫폼과 연결하기 위한 IoT 디바이스의 펌웨어 구현에 많은 시간과 비용이 소요되는 문제점이 발생한다.
본 발명과 관련된 선행문헌으로는 대한민국 공개특허 제10-2017-0088904호(공개일자: 2017년 08월 02일)가 있다.
IoT 기기와 통신을 통해서 데이터를 수집하여 보관 및 처리(분석) 등을 수행하는 플랫폼과 IoT 기기 간의 연결에 필요한 SDK를 생성하는 SDK 생성방법 및 장치가 제안된다.
본 발명의 해결 과제는 이상에서 언급한 해결 과제로 제한되지 않으며, 언급되지 않은 또 다른 해결 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 양상에 따른 IoT(Internet of Things) 기기와 IoT 기기와 통신을 수행하는 IoT 플랫폼 연결을 위한 SDK(Software Development Kit) 생성장치가 수행하는 SDK 생성방법으로, IoT 기기의 사용자에게 IoT 기기와 통신을 수행하는 IoT 플랫폼의 선택을 요청하여 수신하는 단계; IoT 기기의 사용자로부터 수신된 샘플데이터를 분석하여 IoT 기기와 IoT 플랫폼 간 통신을 위한 프로토콜(protocol)을 파악하는 단계; 상기 IoT 기기의 사용자에게 SDK 언어의 선택을 요청하여 수신하는 단계; 및 상기 수신된 IoT 플랫폼의 정보, 상기 파악된 프로토콜 및 상기 수신된 SDK 언어를 이용하여 SDK를 생성하는 단계를 포함한다.
상기 프로토콜을 파악하는 단계는, 상기 샘플데이터가 수신되는 상기 SDK 생성장치의 접속포트번호 또는 상기 샘플데이터에 포함된 프로토콜을 이용하여 상기 프로토콜을 파악할 수 있다.
상기 SDK를 생성하는 단계는, SDK 언어별로 미리 생성된 SDK 모듈들 중 상기 수신된 SDK 언어에 해당되는 SDK 모듈을 확인하는 단계; 와 상기 파악된 프로토콜과 상기 수신된 IoT 플랫폼의 정보를 상기 확인된 SDK 모듈에 포함시켜 상기 SDK를 생성하는 단계를 포함할 수 있다.
상기 샘플데이터를 분석하여 데이터베이스 템플릿을 생성하는 단계를 더 포함할 수 있다. 상기 데이터베이스 템플릿은, 상기 샘플데이터에 포함된 데이터 명칭들을 각각 열(column)로 매핑하여 생성될 수 있다.
상기 데이터베이스 템플릿을 생성하는 단계는, 상기 샘플데이터에 데이터 명칭들이 포함되어 있지 않은 경우 IoT 기기의 사용자에게 상기 데이터베이스 템플릿의 열(column)들 각각에 대한 데이터 명칭을 요청하는 단계; 와 상기 IoT 기기의 사용자로부터 수신된 데이터 명칭들을 데이터베이스 템플릿의 열들로 매핑하는 단계를 포함할 수 있다.
상기 데이터베이스 템플릿을 상기 수신된 IoT 플랫폼의 정보에 해당되는 IoT 플랫폼으로 전송하는 단계를 더 포함할 수 있다.
상기 생성된 SDK를 컴파일링하여 IoT 기기로 전송하거나 또는 상기 생성된 SDK 자체를 IoT 기기의 사용자에게 전송하는 단계를 더 포함할 수 있다.
본 발명의 다른 양상에 따르면, IoT(Internet of Things) 기기와 IoT 기기와 통신을 수행하는 IoT 플랫폼 연결을 위한 SDK(Software Development Kit)를 생성하는 SDK 생성장치로, IoT 기기의 사용자로부터 수신된 샘플데이터를 분석하여 IoT 기기와 IoT 플랫폼 간 통신을 위한 프로토콜(protocol)을 파악하는 프로토콜 분석부; 와 IoT 기기의 사용자에게 IoT 기기와 통신을 수행하는 IoT 플랫폼의 선택을 요청하여 수신된 IoT 플랫폼의 정보, 상기 파악된 프로토콜 및 상기 IoT 기기의 사용자에게 SDK 언어의 선택을 요청하여 수신된 SDK 언어를 이용하여 SDK를 생성하는 SDK 생성부를 포함한다.
상기 SDK 생성부는, SDK 언어별로 미리 생성된 SDK 모듈들 중 상기 선택된 SDK 언어에 해당되는 SDK 모듈을 확인하고, 상기 파악된 프로토콜과 상기 수신된 IoT 플랫폼의 정보를 상기 확인된 SDK 모듈에 포함시켜 상기 SDK를 생성할 수 있다.
상기 샘플데이터를 분석하여 데이터베이스 템플릿을 생성하는 데이터베이스 구성형식 생성부를 더 포할 수 있다.
본 발명의 실시예에 따른 IoT 기기와 플랫폼 연결을 위한 SDK 생성방법 및 장치에 따르면, IoT 기기와 통신을 통해서 데이터를 수집하여 보관 및 처리(분석) 등을 수행하는 플랫폼과 IoT 기기 간의 연결에 필요한 SDK를 생성함으로써, 개발자 등이 IoT 플랫폼의 SDK 등을 이해 및 파악하여야 함은 물론 IoT 디바이스의 특성을 파악해서 IoT 플랫폼과의 통신을 위한 IoT 디바이스의 펌웨어를 구현해야 하는 불편함을 해결할 수 있다.
도 1은 본 발명의 실시예에 따른 SDK 생성장치의 구성을 예시한 도면이다.
도 2는 샘플데이터를 이용하여 프로토콜을 파악하는 과정을 예시한 도면이다.
도 3는 SDK 생성부의 SDK 생성과정을 예시한 도면이다.
도 4는 샘플데이터에 데이터명칭이 포함된 경우 데이터베이스 템플릿의 생성과정을 예시한 도면이다.
도 5는 샘플데이터에 데이터명칭이 포함되지 않은 경우 데이터베이스 템플릿의 생성과정을 예시한 도면이다.
도 6은 본 발명의 실시예에 따른 SDK 생성방법에 대한 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 
본 발명의 실시예들은 당해 기술 분야에서 통상의 지식을 가진 자에게 본 발명을 더욱 완전하게 설명하기 위하여 제공되는 것이며, 아래의 실시예들은 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 아래의 실시예들로 한정되는 것은 아니다. 오히려, 이들 실시예는 본 개시를 더욱 충실하고 완전하게 하며 당업자에게 본 발명의 사상을 완전하게 전달하기 위하여 제공되는 것이다. 
본 명세서에서 사용된 용어는 특정 실시예를 설명하기 위하여 사용되며, 본 발명을 제한하기 위한 것이 아니다. 본 명세서에서 사용된 바와 같이 단수 형태는 문맥상 다른 경우를 분명히 지적하는 것이 아니라면, 복수의 형태를 포함할 수 있다. 또한, 본 명세서에서 사용되는 경우 "포함한다(comprise)" 및/또는"포함하는(comprising)"은 언급한 형상들, 숫자, 단계, 동작, 부재, 요소 및/또는 이들 그룹의 존재를 특정하는 것이며, 하나 이상의 다른 형상, 숫자, 동작, 부재, 요소 및/또는 그룹들의 존재 또는 부가를 배제하는 것이 아니다. 본 명세서에서 사용된 바와 같이, 용어 "및/또는"은 해당 열거된 항목 중 어느 하나 및 하나 이상의 모든 조합을 포함한다. 
본 명세서에서 제1, 제2 등의 용어가 다양한 부재, 영역 및/또는 부위들을 설명하기 위하여 사용되지만, 이들 부재, 부품, 영역, 층들 및/또는 부위들은 이들 용어에 의해 한정되어서는 안됨은 자명하다. 이들 용어는 특정 순서나 상하, 또는 우열을 의미하지 않으며, 하나의 부재, 영역 또는 부위를 다른 부재, 영역 또는 부위와 구별하기 위하여만 사용된다. 따라서, 이하 상술할 제1 부재, 영역 또는 부위는 본 발명의 가르침으로부터 벗어나지 않고서도 제2 부재, 영역 또는 부위를 지칭할 수 있다.
이하, 본 발명의 실시예들은 본 발명의 실시예들을 개략적으로 도시하는 도면들을 참조하여 설명한다. 도면들에 있어서, 예를 들면, 제조 기술 및/또는 공차에 따라, 도시된 형상의 변형들이 예상될 수 있다. 따라서, 본 발명의 실시예는 본 명세서에 도시된 영역의 특정 형상에 제한된 것으로 해석되어서는 아니 되며, 예를 들면 제조상 초래되는 형상의 변화를 포함하여야 한다.
도 1은 본 발명의 실시예에 따른 SDK 생성장치의 구성을 나타낸 도면이다.
도 1을 참조하면, 본 발명의 실시예에 따른 SDK 생성장치(100)는 IoT(Internet of Things) 기기(200)와 IoT 기기(100)와 통신을 수행하는 IoT 플랫폼(300) 연결을 위한 SDK(Software Development Kit)를 생성하는 역할을 수행한다.
이러한 SDK 생성장치(100)는 프로토콜 분석부(10), SDK 생성부(20) 및 DB 구성형식 생성부(30)를 포함한다.
SDK 생성장치(100)는 IoT 기기(200)와 IoT 플랫폼(300) 간 연결을 위해 필요한 SDK를 생성하기 위해서 IoT 기기(200)의 사용자(400)에게 샘플데이터의 전송과 IoT 플랫폼의 선택을 요청할 수 있다. 이는 SDK 생성장치(100)의 프로토콜 분석부(10)에 의해서 수행될 수 있으나, 이에 한정되지 않는다. 샘플데이터의 전송 요청 및 IoT 플랫폼의 선택 요청은 동시에 또는 순서를 달리하여 이루어질 수 있다.
이때 샘플데이터는 IoT 기기(200)로부터 IoT 플랫폼(300)으로 전송되는 데이터와 동일한 형식을 가질 수 있다.
IoT 기기(200)는 무인 운영방식으로 동작하며 네트워크를 통해서 스스로 수집한 데이터 등을 IoT 플랫폼(300)으로 전송할 수 있는 능력을 가진다. IoT 플랫폼(300)은 IoT 기기(200)로부터 수신되는 데이터들을 보관 및 처리(분석)하는 역할을 담당한다. 이러한 IoT 플랫폼(300)에는 KT IoT 플랫폼, 구글 IoT 플랫폼, 아마존 IoT 플랫폼 등이 있다.
SDK 생성장치(100)의 프로토콜 분석부(10)는 IoT 기기(200)의 사용자(400)로부터 수신된 샘플데이터를 분석하여 IoT 기기(200)와 IoT 플랫폼 간 통신을 위한 프로토콜(protocol)을 파악한다. IoT 기기(200)는 IoT 플랫폼(300)과 통신을 수행하기 위해서 경량 메시지 프로토콜, 예를 들어 MQTT, CoAT, AQMP, TCP/IP 등을 이용하여 데이터 전송 및 수신기능을 갖는 네트워크 모듈(미도시)을 포함할 수 있다.
프로토콜 분석부(10)는 샘플데이터가 수신되는 SDK 생성장치(100)의 접속포트번호 또는 샘플데이터의 헤더를 이용하여 IoT 기기(200)와 IoT 플랫폼(300) 간 통신을 위한 프로토콜을 파악할 수 있다. 접속포트번호에 대한 예시로 http:80, https:443, mqtt/ssl: 8883 등을 들 수 있다. 그리고 샘플데이터의 프로토콜을 이용하여 프로토콜을 파악하는 방법은, 프로토콜마다 헤더가 다른 구조를 갖는 것에 착안한 것이다. 구체적으로 도 2에 도시된 바와 같이 샘플데이터를 각 프로토콜 채널을 통과시켜 샘플데이터의 프로토콜을 파악하는 방법이다. 즉 샘플데이터는 자신의 프로토콜과 동일한 프로토콜 채널 루트를 통과한다. 이 방법을 통하여 샘플데이터의 프로토콜을 확인할 수 있는 것이다. 예를 들어, 샘플데이터가 MQTT 프로토콜을 이용하는 경우, 샘플데이터는 MQTT 채널을 통과하게 된다. 이를 통하여 샘플데이터의 프로토콜이 MQTT 프로토콜임을 확인할 수 있다.
SDK 생성부(20)는 IoT 기기(200)의 사용자(400)에게 SDK 언어의 선택을 요청하여 수신한다. 이 SDK 언어의 선택 요청은 SDK 생성부(20)에 의해서 수행되거나 또는 프로토콜 분석부(10)에 의해서도 수행될 수 있다.
SDK 생성부(20)는 IoT 기기와 통신을 수행하는 IoT 기기(200)의 사용자가 선택한 IoT 플랫폼의 정보, 상기 파악된 프로토콜 및 상기 수신된 SDK 언어를 이용하여 SDK를 생성한다.
일 실시예로, SDK 생성부(20)는 도 3에 도시된 바와 같이 SDK 언어별로 미리 생성된 SDK 모듈들 중 상기 수신된 SDK 언어에 해당되는 SDK 모듈을 확인한다.
이후 상기 파악된 프로토콜과 상기 수신된 IoT 플랫폼의 정보를 상기 확인된 SDK 모듈에 포함시켜 SDK를 생성한다.
도 3의 실시예에서, SDK 생성부(20)는 SDK 언어별 SDK 모듈을 구비하고 있다. 즉 C언어 SDK 모듈, Python SDK 모듈, C++ SDK 모듈을 구비하고 있다. 3 종류의 SDK 모듈을 구비하고 있는 것으로 예시되었으나 이에 한정되지 않는다.
각 SDK 모듈은 SDK 프로토콜(Protocol), SDK 플랫폼(Platform) 및 SDK 코어(Core)를 포함한다. SDK 프로토콜은 IoT 기기와 IoT 플랫폼의 연결에 있어 변경되지 않는 기본기능들이 정의되어 있는 그룹으로, 샘플데이터의 분석을 통해서 파악된 프로토콜으로 결정될 수 있다. SDK 플랫폼은 IoT 기기에서 수집된 데이터를 보관 및 처리(분석)하고 IoT 기기를 제어하기 위한 것으로, IoT 기기의 사용자의 선택에 의해서 결정될 수 있다. SDK 코어에는 IoT 플랫폼과 IoT 기기 간 연결을 위한(데이터를 주고 받기 위한) 기본 기능(함수)들이 정의되어 있다.
예를 들어 SDK 언어별 SDK 모듈들 중 IoT 기기의 사용자가 선택한 SDK 언어가 Python인 경우 Python SDK 모듈이 선택된다. 이렇게 선택된 Python SDK 모듈에 샘플데이터의 분석을 통한 프로토콜 MQTT, IoT 기기의 사용자가 선택한 플랫폼 AWS를 포함시켜 Python SDK를 생성한다.
이와 같이 SDK가 생성되면 SDK 생성부(20)는 생성된 SDK를 컴파일링하여 IoT 기기(200)로 전송하거나 또는 상기 생성된 SDK 자체를 IoT 기기의 사용자(400)에게 전송할 수 있다. 상기 생성된 SDK를 컴파일링하여 IoT 기기(200)로 전송하는 경우 IoT 기기(200)에 바로 상기 생성된 SDK가 적용될 수 있다. 상기 생성된 SDK 자체를 IoT 기기의 사용자(400)에게 전송하는 경우는, IoT 기기의 사용자(400)에서 다시 컴파일링을 하여 이를 IoT 기기(200)에 적용하는 경우이다.
데이터베이스 구성형식 생성부(30)는 샘플데이터를 분석하여 데이터베이스 템플릿을 생성한다. 이 데이터베이스 템플릿은, 상기 샘플데이터에 포함된 데이터 명칭들을 각각 열(column)로 매핑하여 생성될 수 있다.
실시예로 데이터베이스 구성형식 생성부(30)는 샘플데이터를 분석한 결과, 데이터 명칭들이 포함된 경우 도 4에 도시된 바와 같이 데이터 명칭을 열(Column)로 매핑한 후 데이터베이스 템플릿을 생성한다. 도 4의 경우 샘플데이터는 Time, PM2.5, VOCs, Active의 데이터 명칭을 포함하고 있다. 따라서 데이터베이스 구성형식 생성부(30)는 Time, PM2.5, VOCs, Active의 데이터 명칭을 열(Column)로 매핑한 데이터베이스 템플릿을 생성한다.
반면 샘플데이터를 분석한 결과, 샘플데이터에 데이터 명칭들이 포함되어 있지 않은 경우 도 5에 도시된 바와 같이 데이터 명칭의 입력을 IoT 기기의 사용자(400)에게 요청하고 수신된 데이터 명칭을 열(Column)로 매핑하여 데이터베이스 템플릿을 생성한다. 도 5의 경우 샘플데이터는 "2020-12-02";"3.2";"125";"Y"와 같이 데이터를 포함하고 있지만, 이들 각각에 대한 데이터 명칭을 포함하고 있지 않다. 따라서 데이터베이스 구성형식 생성부(30)는 이들 각각에 대한 데이터명칭의 입력을 IoT 기기의 사용자(400)에게 요청한다. 이후 IoT 기기의 사용자(400)로부터 수신된 데이터명칭들을 열(Column)로 매핑하여서 데이터베이스 템플릿을 생성한다.
이후, 데이터베이스 구성형식 생성부(30)는 생성된 데이터베이스 템플릿을 IoT 플랫폼(300)으로 전송할 수 있다. 이는 향후 IoT 기기(200)에서 수집된 데이터가 IoT 플랫폼(300)에 전송되는 경우, IoT 플랫폼(300)은 IoT 기기(200)로부터 전송된 데이터를 분류하여 데이터베이스 플랫폼에 저장할 수 있다.
이제 SDK 생성장치(100)의 SDK 생성 방법에 대해서 살펴보기로 한다.
IoT 기기의 사용자에게 IoT 기기와 통신을 수행하는 IoT 플랫폼의 선택을 요청하여 수신한다(S10).
IoT 기기의 사용자로부터 수신된 샘플데이터를 분석하여 IoT 기기와 IoT 플랫폼 간 통신을 위한 프로토콜(protocol)을 파악한다(S20). 이때, 상기 샘플데이터가 수신되는 상기 SDK 생성장치의 접속포트번호 또는 상기 샘플데이터에 포함된 프로토콜을 이용하여 상기 프로토콜을 파악할 수 있다.
상기 IoT 기기의 사용자에게 SDK 언어의 선택을 요청하여 수신한다(S30).
여기서, 단계 S10 내지 S30은 동시에 발생할 수 있거나 또는 일정 순서를 거쳐서 이루어질 수 있다. 즉 S10, S20, S30은 흐름의 순서를 나타내는 것이 아님을 유의하여야 한다.
단계 S10 내지 S30이 모두 수행된 후, SDK 생성장치(100)는 상기 수신된 IoT 플랫폼의 정보, 상기 파악된 프로토콜 및 상기 수신된 SDK 언어를 이용하여 SDK를 생성한다(S40).
실시예로, SDK 생성장치(100)는 SDK 언어별로 미리 생성된 SDK 모듈들 중 상기 수신된 SDK 언어에 해당되는 SDK 모듈을 확인한다. 이후 상기 파악된 프로토콜과 상기 수신된 IoT 플랫폼의 정보를 상기 확인된 SDK 모듈에 포함시켜 SDK를 생성한다.
이후 SDK 생성장치(100)는 이렇게 생성된 SDK를 IoT 기기의 사용자(400)에게 전송하거나 또는 생성된 SDK를 컴파일링하여 IoT 기기(200)에 적용할 수 있다.
SDK 생성장치(100)는 상기 샘플데이터를 분석하여 데이터베이스 템플릿을 생성할 수 있다. 이때, 상기 데이터베이스 템플릿은, 상기 샘플데이터에 포함된 데이터 명칭들을 각각 열(column)로 매핑하여 생성될 수 있다. SDK 생성장치(100)는 상기 샘플데이터에 데이터 명칭들이 포함되어 있지 않은 경우 IoT 기기의 사용자에게 상기 데이터베이스 템플릿의 열(column)들 각각에 대한 데이터 명칭을 요청한다. 상기 IoT 기기의 사용자로부터 수신된 데이터 명칭들을 데이터베이스 템플릿의 열들로 매핑함으로써 데이터베이스 템플릿을 생성할 수 있다.
이후 SDK 생성장치(100)는 상기 데이터베이스 템플릿을 상기 수신된 IoT 플랫폼의 정보에 해당되는 IoT 플랫폼으로 전송할 수 있다.
이제까지 본 발명에 대하여 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 따라서 본 발명의 범위는 전술한 실시예에 한정되지 않고 특허청구범위에 기재된 내용 및 그와 동등한 범위 내에 있는 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.

Claims (10)

  1. IoT(Internet of Things) 기기와 IoT 기기와 통신을 수행하는 IoT 플랫폼 연결을 위한 SDK(Software Development Kit) 생성장치가 수행하는 SDK 생성방법으로,
    IoT 기기의 사용자에게 IoT 기기와 통신을 수행하는 IoT 플랫폼의 선택을 요청하여 수신하는 단계;
    IoT 기기의 사용자로부터 수신된 샘플데이터를 분석하여 IoT 기기와 IoT 플랫폼 간 통신을 위한 프로토콜(protocol)을 파악하는 단계;
    상기 IoT 기기의 사용자에게 SDK 언어의 선택을 요청하여 수신하는 단계; 및
    상기 수신된 IoT 플랫폼의 정보, 상기 파악된 프로토콜 및 상기 수신된 SDK 언어를 이용하여 SDK를 생성하는 단계를 포함하는 SDK 생성방법.
  2. 청구항 1에 있어서,
    상기 프로토콜을 파악하는 단계는,
    상기 샘플데이터가 수신되는 상기 SDK 생성장치의 접속포트번호 또는 상기 샘플데이터에 포함된 프로토콜을 이용하여 상기 프로토콜을 파악하는 것을 특징으로 하는 SDK 생성방법.
  3. 청구항 1에 있어서,
    상기 SDK를 생성하는 단계는,
    SDK 언어별로 미리 생성된 SDK 모듈들 중 상기 수신된 SDK 언어에 해당되는 SDK 모듈을 확인하는 단계; 와
    상기 파악된 프로토콜과 상기 수신된 IoT 플랫폼의 정보를 상기 확인된 SDK 모듈에 포함시켜 상기 SDK를 생성하는 단계를 포함하는 SDK 생성방법.
  4. 청구항 1에 있어서,
    상기 샘플데이터를 분석하여 데이터베이스 템플릿을 생성하는 단계를 더 포함하며,
    상기 데이터베이스 템플릿은, 상기 샘플데이터에 포함된 데이터 명칭들을 각각 열(column)로 매핑하여 생성되는 것을 특징으로 하는 SDK 생성방법.
  5. 청구항 4에 있어서,
    상기 데이터베이스 템플릿을 생성하는 단계는,
    상기 샘플데이터에 데이터 명칭들이 포함되어 있지 않은 경우 IoT 기기의 사용자에게 상기 데이터베이스 템플릿의 열(column)들 각각에 대한 데이터 명칭을 요청하는 단계; 와
    상기 IoT 기기의 사용자로부터 수신된 데이터 명칭들을 데이터베이스 템플릿의 열들로 매핑하는 단계를 포함하는 SDK 생성방법.
  6. 청구항 4에 있어서,
    상기 데이터베이스 템플릿을 상기 수신된 IoT 플랫폼의 정보에 해당되는 IoT 플랫폼으로 전송하는 단계를 더 포함하는 SDK 생성방법.
  7. 청구항 1에 있어서,
    상기 생성된 SDK를 컴파일링하여 IoT 기기로 전송하거나 또는 상기 생성된 SDK 자체를 IoT 기기의 사용자에게 전송하는 단계를 더 포함하는 SDK 생성방법.
  8. IoT(Internet of Things) 기기와 IoT 기기와 통신을 수행하는 IoT 플랫폼 연결을 위한 SDK(Software Development Kit)를 생성하는 SDK 생성장치로,
    IoT 기기의 사용자로부터 수신된 샘플데이터를 분석하여 IoT 기기와 IoT 플랫폼 간 통신을 위한 프로토콜(protocol)을 파악하는 프로토콜 분석부; 와
    IoT 기기의 사용자에게 IoT 기기와 통신을 수행하는 IoT 플랫폼의 선택을 요청하여 수신된 IoT 플랫폼의 정보, 상기 파악된 프로토콜 및 상기 IoT 기기의 사용자에게 SDK 언어의 선택을 요청하여 수신된 SDK 언어를 이용하여 SDK를 생성하는 SDK 생성부를 포함하는 SDK 생성장치.
  9. 청구항 8에 있어서,
    상기 SDK 생성부는,
    SDK 언어별로 미리 생성된 SDK 모듈들 중 상기 선택된 SDK 언어에 해당되는 SDK 모듈을 확인하고, 상기 파악된 프로토콜과 상기 수신된 IoT 플랫폼의 정보를 상기 확인된 SDK 모듈에 포함시켜 상기 SDK를 생성하는 것을 특징으로 하는 SDK 생성장치.
  10. 청구항 8에 있어서,
    상기 샘플데이터를 분석하여 데이터베이스 템플릿을 생성하는 데이터베이스 구성형식 생성부를 더 포함하며,
    상기 데이터베이스 템플릿은, 상기 샘플데이터에 포함된 데이터 명칭들을 각각 열(column)로 매핑하여 생성되는 것을 특징으로 하는 SDK 생성장치.
KR1020210028452A 2021-03-03 2021-03-03 IoT 기기와 플랫폼 연결을 위한 SDK 생성방법 및 장치 KR20220124589A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210028452A KR20220124589A (ko) 2021-03-03 2021-03-03 IoT 기기와 플랫폼 연결을 위한 SDK 생성방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210028452A KR20220124589A (ko) 2021-03-03 2021-03-03 IoT 기기와 플랫폼 연결을 위한 SDK 생성방법 및 장치

Publications (1)

Publication Number Publication Date
KR20220124589A true KR20220124589A (ko) 2022-09-14

Family

ID=83279532

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210028452A KR20220124589A (ko) 2021-03-03 2021-03-03 IoT 기기와 플랫폼 연결을 위한 SDK 생성방법 및 장치

Country Status (1)

Country Link
KR (1) KR20220124589A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170088904A (ko) 2014-11-21 2017-08-02 어페로, 인크. 사물 인터넷 플랫폼들, 장치들, 및 방법들

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170088904A (ko) 2014-11-21 2017-08-02 어페로, 인크. 사물 인터넷 플랫폼들, 장치들, 및 방법들

Similar Documents

Publication Publication Date Title
US7117411B2 (en) Methods and systems for testing communications network components
KR101957771B1 (ko) IoT 기반의 공장 통합 관리 장치에 의한 웹 서비스 방법
JP2004086904A (ja) ネットワーク上の試験装置を遠隔制御するシステム及び方法
JP2022510569A (ja) 分散型コンピューティングのためのメッシュベースのイベントブローカー
CN106936932B (zh) 一种通过云服务协议访问机器人软件包的方法
CN101316196B (zh) 一种对分布式平台上的业务进行仿真测试的实现方法与装置
CN103246606B (zh) Esb平台的性能测试方法和系统
CN107291608B (zh) 测试脚本的生成方法、接口的订阅/注册方法及装置
CN109639809A (zh) 一种业务数据请求链路监控的方法及装置
Theiss et al. Software agents in industry: A customized framework in theory and praxis
CN110413329A (zh) Iot设备远程调试方法、装置及系统
Müller et al. 5G as key technology for networked factories: Application of vertical-specific network services for enabling flexible smart manufacturing
CN110011875A (zh) 拨测方法、装置、设备及计算机可读存储介质
CN115794106A (zh) 一种轨道交通二进制协议数据配置式解析的方法及系统
KR20210072252A (ko) 현장 근로자 주도 스마트팩토리 서비스 개발도구 및 그 방법
CN117130318B (zh) 工业数据采集方法、装置、系统和可读存储介质
WO2014061516A1 (ja) 異なるタイプのロボットミドルウェア間を連携する変換モジュールの生成方法及び装置
KR20220124589A (ko) IoT 기기와 플랫폼 연결을 위한 SDK 생성방법 및 장치
WO2020261218A9 (en) Interactive field device interface for monitoring and controlling an industrial process by industrial automation system
Jani Technological advances in automation testing: Enhancing software development efficiency and quality
CN100429887C (zh) 刻蚀机集群控制器与工艺模块控制器通讯系统及方法
US10289462B1 (en) Systems and methods for integration of websphere optimized local adapters with the spring framework
CN108173957A (zh) 一种Http接口快速配置联调平台
US10489867B2 (en) Apparatus and method for deploying analytics
Sciullo et al. WoT on The Extreme Edge (WoTTEE): Enabling W3C Web of Things for Micro-controllers

Legal Events

Date Code Title Description
E601 Decision to refuse application