KR102339131B1 - Cloud server system for managing and analyzing sensing data for each user, and control method - Google Patents

Cloud server system for managing and analyzing sensing data for each user, and control method Download PDF

Info

Publication number
KR102339131B1
KR102339131B1 KR1020210029386A KR20210029386A KR102339131B1 KR 102339131 B1 KR102339131 B1 KR 102339131B1 KR 1020210029386 A KR1020210029386 A KR 1020210029386A KR 20210029386 A KR20210029386 A KR 20210029386A KR 102339131 B1 KR102339131 B1 KR 102339131B1
Authority
KR
South Korea
Prior art keywords
information
server
user
cloud server
server system
Prior art date
Application number
KR1020210029386A
Other languages
Korean (ko)
Inventor
강민석
Original Assignee
강민석
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 강민석 filed Critical 강민석
Priority to KR1020210029386A priority Critical patent/KR102339131B1/en
Application granted granted Critical
Publication of KR102339131B1 publication Critical patent/KR102339131B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1443Transmit or communication errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/06Management of faults, events, alarms or notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support

Abstract

Disclosed is a control method of a cloud server system for communicating with a user device. The control method includes the steps of: generating at least one server matched to user information, when the user information is input through the user device; identifying at least one sensor device matched to sensor information, when the sensor information is input through the user device; setting up a monitoring process for the server based on user input received through the user device; monitoring, by the server, sensing data received from the identified sensor device according to a set monitoring process; and transmitting the monitoring information obtained according to the monitoring of the server to the user device. Accordingly, a user, who operates another specific system, can operate the system without having hardware constituting the entire system.

Description

사용자 별로 센싱 데이터를 관리 및 분석하는 클라우드 서버 시스템, 및 제어 방법 { CLOUD SERVER SYSTEM FOR MANAGING AND ANALYZING SENSING DATA FOR EACH USER, AND CONTROL METHOD }CLOUD SERVER SYSTEM FOR MANAGING AND ANALYZING SENSING DATA FOR EACH USER, AND CONTROL METHOD }

본 개시는 클라우드 서버 시스템에 관한 것으로, 보다 상세하게는, 사용자 별로 등록된 하나 이상의 센서의 센싱 데이터를 관리하기 위하여 사용자 별로 서버를 생성/할당하는 클라우드 서버 시스템에 관한 것이다.The present disclosure relates to a cloud server system, and more particularly, to a cloud server system that creates/allocates a server for each user in order to manage sensing data of one or more sensors registered for each user.

다양한 센서를 통해 정보를 수집하여 서비스를 제공하는 시스템의 필요성이 증대되고 있다. 구체적인 예로, 스마트 팜 시스템, 스마트 팩토리 시스템, 기상 예측 시스템 등 주변 환경/기기에서 수집된 정보를 분석한 결과를 기반으로 새로운 정보를 제공하거나 또는 특정 장비를 제어하는 시스템들이 다양하게 개발되어오고 있다.The need for a system that provides services by collecting information through various sensors is increasing. As a specific example, various systems that provide new information or control specific equipment have been developed based on the results of analyzing information collected from surrounding environments/devices, such as smart farm systems, smart factory systems, and weather prediction systems.

이러한 시스템의 개별적인 구현에 있어, 주변 환경 또는 공정과 관련된 다양한 정보를 수집하는 센서들, 및 센서들과 연동되는 메인 컴퓨터 내지는 서버의 구축이 중요하다.In the individual implementation of such a system, it is important to build sensors that collect various information related to the surrounding environment or process, and a main computer or server interworking with the sensors.

다만, 각 시스템을 구축함에 있어 수많은 센서로부터 실시간으로 수집되는 빅데이터를 처리할 수 있는 성능의 메인 컴퓨터가 필요하다. However, in building each system, a main computer capable of processing big data collected in real time from numerous sensors is required.

특히, 시스템 구축 초기에는 메인 서버와 각 센서와의 통신 네트워크 구축 및 메인 서버의 성능 확보에 큰 비용이 필요하기 때문에, 시스템 운영자의 초기 개발 비용 확보가 쉽지 않다. In particular, in the initial stage of system construction, it is difficult for a system operator to secure initial development costs because a large cost is required to establish a communication network between the main server and each sensor and to secure the performance of the main server.

또한, 시스템 구축 이후에도, 센서 또는 제어 장비 등의 추가로 인해 시스템이 확장되는 경우라면, 센싱 데이터의 원활한 수집 환경 재구축, 통신 네트워크의 재구축, 및 메인 컴퓨터 하드웨어의 추가 확보 등을 위한 추가적인 설비투자가 불가피하다.In addition, even after system construction, if the system is expanded due to the addition of sensors or control equipment, additional facility investment to re-establish a smooth collection environment for sensing data, re-establish a communication network, and additionally secure main computer hardware is inevitable

등록 특허 공보 제10-1727059호(복수개의 서버를 선택적으로 이용하는 클라우드 콘솔 제공 시스템 및 제공 방법)Registered Patent Publication No. 10-1727059 (Cloud console providing system and method that selectively uses a plurality of servers)

상술한 문제점을 해결하기 위하여, 본 개시는, 개별적인 시스템 운영자를 위한 서버를 생성하여 시스템 내 센싱 데이터에 대한 맞춤형 모니터링 내지는 분석을 수행하는 클라우드 서버 시스템의 제어 방법을 제공한다.In order to solve the above problems, the present disclosure provides a control method of a cloud server system that generates a server for an individual system operator and performs customized monitoring or analysis of sensing data in the system.

본 개시의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 개시의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 개시의 실시 예에 의해 보다 분명하게 이해될 것이다. 또한, 본 개시의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.Objects of the present disclosure are not limited to the above-mentioned purposes, and other objects and advantages of the present disclosure that are not mentioned may be understood by the following description, and will be more clearly understood by the embodiments of the present disclosure. Moreover, it will be readily apparent that the objects and advantages of the present disclosure may be realized by the means and combinations thereof indicated in the claims.

본 개시의 일 실시 예에 따라 적어도 하나의 사용자 장치와 통신을 수행하는 클라우드 서버 시스템의 제어 방법은, 상기 사용자 장치를 통해 사용자 정보가 입력되면, 상기 사용자 정보에 매칭되는 적어도 하나의 서버를 생성하는 단계, 상기 사용자 장치를 통해 센서 정보가 입력되면, 상기 센서 정보에 매칭되는 적어도 하나의 센서 장치를 식별하는 단계, 상기 사용자 장치를 통해 수신되는 사용자 입력을 기반으로, 상기 서버의 모니터링 프로세스를 설정하는 단계, 상기 서버가, 상기 식별된 센서 장치로부터 수신되는 센싱 데이터를 상기 설정된 모니터링 프로세스에 따라 모니터링하는 단계, 상기 서버의 모니터링에 따라 획득된 모니터링 정보를 상기 사용자 장치로 전송하는 단계를 포함한다.According to an embodiment of the present disclosure, there is provided a control method of a cloud server system communicating with at least one user device, generating at least one server matching the user information when user information is input through the user device Step, when sensor information is input through the user device, identifying at least one sensor device matching the sensor information, based on the user input received through the user device, setting a monitoring process of the server Step, the server monitoring the sensed data received from the identified sensor device according to the set monitoring process, comprising the step of transmitting the monitoring information obtained according to the monitoring of the server to the user device.

상기 클라우드 서버 시스템의 제어 방법은, 상기 사용자 장치를 통해 추가적인 센서 정보가 입력되면, 상기 추가적인 센서 정보에 매칭되는 다른 센서 장치를 식별하는 단계를 더 포함할 수 있다. 이 경우, 상기 모니터링하는 단계는, 상기 서버를 통해, 상기 식별된 센서 장치 및 상기 식별된 다른 센서 장치 각각에서 수신되는 센싱 데이터를 상기 설정된 모니터링 프로세스에 따라 모니터링할 수 있다.The control method of the cloud server system may further include, when additional sensor information is input through the user device, identifying another sensor device matching the additional sensor information. In this case, the monitoring may include monitoring, through the server, sensing data received from each of the identified sensor device and the other identified sensor device according to the set monitoring process.

또한, 상기 클라우드 서버 시스템의 제어 방법은, 상기 사용자 장치를 통해 제어 정보가 입력되면, 상기 제어 정보에 매칭되는 적어도 하나의 제어 장치를 식별하는 단계, 상기 수신된 센싱 데이터가 상기 제어 정보에 매칭되는 기설정된 조건을 만족하는 경우, 상기 서버가, 상기 제어 정보를 기반으로 상기 제어 장치를 위한 명령을 생성하는 단계, 상기 생성된 명령을 상기 제어 장치로 전송하는 단계를 더 포함할 수도 있다.In addition, the control method of the cloud server system, when control information is input through the user device, identifying at least one control device matching the control information, the received sensing data matching the control information The method may further include, by the server, generating a command for the control device based on the control information when a preset condition is satisfied, and transmitting the generated command to the control device.

또한, 상기 클라우드 서버 시스템의 제어 방법은, 상기 사용자 장치를 통해 수신되는 사용자 입력을 기반으로, 적어도 하나의 인공지능 모델의 훈련 프로세스를 설정하는 단계, 상기 서버가, 상기 설정된 훈련 프로세스에 따라 상기 수신된 센싱 데이터를 적용하여 상기 인공지능 모델을 훈련시키는 단계, 상기 서버가, 상기 인공지능 모델을 이용하여 상기 수신된 센싱 데이터에 대한 분석 정보를 획득하는 단계를 더 포함할 수 있다.In addition, the control method of the cloud server system may include, based on a user input received through the user device, setting a training process for at least one artificial intelligence model, the server receiving the reception according to the set training process Training the artificial intelligence model by applying the sensed data may further include, by the server, obtaining analysis information on the received sensing data using the artificial intelligence model.

또한, 상기 클라우드 서버 시스템의 제어 방법은, 상기 서버의 연산량, 상기 서버의 데이터 사용량, 및 상기 서버의 데이터 통신량 중 적어도 하나에 따른 과금 정책을 기반으로 상기 사용자 장치의 사용자에 대한 과금 정보를 생성하는 단계를 더 포함할 수 있다.In addition, the control method of the cloud server system includes generating billing information for a user of the user device based on a billing policy according to at least one of the amount of computation of the server, the data usage of the server, and the data communication amount of the server. It may include further steps.

이 경우, 상기 클라우드 서버 시스템의 제어 방법은, 상기 서버가, 상기 센서 장치로부터 수신된 센싱 데이터를 분석하여, 상기 센서 장치의 동작 및 상기 센서 장치와 상기 서버 간의 통신 상태를 진단하는 단계, 상기 센서 장치의 동작 또는 상기 통신 상태에 결함이 발생한 경우, 상기 사용자 장치로 상기 결함의 발생을 알리는 정보를 전송하는 단계를 더 포함할 수 있다. 그리고, 상기 과금 정보를 획득하는 단계는, 상기 센서 장치의 동작 및 상기 통신 상태에 결함이 발생하지 않은 시간 구간에 대해서는, 제1 과금 정책을 기반으로 과금 정보를 생성하고, 상기 센서 장치의 동작 및 상기 통신 상태 중 적어도 하나에 결함이 발생한 시간 구간에 대해서는, 상기 제1 과금 정책과 다른 제2 과금 정책을 기반으로 과금 정보를 생성할 수 있다.In this case, the control method of the cloud server system includes, by the server, analyzing the sensed data received from the sensor device to diagnose an operation of the sensor device and a communication state between the sensor device and the server, the sensor The method may further include transmitting information notifying the occurrence of the defect to the user device when a defect occurs in the operation or the communication state of the device. In addition, the acquiring of the charging information includes generating charging information based on a first charging policy for a time period in which a defect does not occur in the operation of the sensor device and the communication state, and the operation of the sensor device and For a time period in which a defect occurs in at least one of the communication states, charging information may be generated based on a second charging policy different from the first charging policy.

한편, 상기 클라우드 서버 시스템의 제어 방법은, 상기 서버에 임계치 이상의 부하가 발생한 경우, 상기 사용자 정보에 매칭되는 적어도 하나의 서버를 추가로 생성하는 단계를 더 포함할 수도 있다.Meanwhile, the control method of the cloud server system may further include the step of additionally generating at least one server matching the user information when a load greater than or equal to a threshold is generated on the server.

한편, 상기 적어도 하나의 서버는, 센싱 데이터를 수집하는 수집 서버, 센싱 데이터를 모니터링하는 모니터링 서버, 센싱 데이터를 기반으로 인공지능 모델을 훈련시키는 훈련 서버, 및 센싱 데이터를 분석하는 분석 서버를 포함할 수 있다.On the other hand, the at least one server, a collection server for collecting sensed data, a monitoring server for monitoring the sensed data, a training server for training an artificial intelligence model based on the sensed data, and an analysis server for analyzing the sensed data. can

본 개시에 따른 클라우드 서버 시스템은, 특정한 다른 시스템을 운영하는 사용자가 해당 시스템 전체를 구성하는 하드웨어를 갖추지 않고도 해당 시스템을 운영할 수 있도록 하는 솔루션, 내지는 시스템 확장에도 유연하게 적용될 수 있는 솔루션을 제공한다.The cloud server system according to the present disclosure provides a solution that allows a user who operates another specific system to operate the system without having hardware constituting the entire system, or a solution that can be flexibly applied to system expansion. .

본 개시에 따른 클라우드 서버 시스템은, 특정한 다른 시스템을 운영하고자 하는 사용자가 측정된 센싱 데이터를 중앙 수집하고 관리하기 위해 직접 서버 장치를 설계하고 개발해야 하는 어려움을 해결할 수 있으며, 특히 테스트 등을 위해 자체적인 소규모 시스템으로부터 대규모로 전환할 때 생길 수 있는 기술적 난제를 해결 할 수 있다.The cloud server system according to the present disclosure can solve the difficulty that a user who wants to operate a specific other system must design and develop a server device directly to centrally collect and manage the measured sensing data, and in particular, for testing, etc. It can solve the technical difficulties that may arise when transitioning from a small-scale system to a large-scale system.

도 1은 본 개시에 따른 클라우드 서버 시스템이 사용자 장치와의 통신을 기반으로 적어도 하나의 센서 장치/제어 장치와 함께 별도의 시스템을 구축하는 예를 개략적으로 설명하기 위한 블록도,
도 2는 본 개시의 일 실시 예에 따른 클라우드 서버 시스템의 제어 방법을 설명하기 위한 흐름도,
도 3은 본 개시의 일 실시 예에 따른 클라우드 서버 시스템의 기능적 구성을 설명하기 위한 블록도, 그리고
도 4는 본 개시의 일 실시 예에 따른 클라우드 서버 시스템이 다양한 모니터링 시스템에 개별적으로 기여하는 동작을 설명하기 위한 블록도이다.
1 is a block diagram schematically illustrating an example in which a cloud server system according to the present disclosure builds a separate system together with at least one sensor device/control device based on communication with a user device;
2 is a flowchart illustrating a control method of a cloud server system according to an embodiment of the present disclosure;
3 is a block diagram illustrating a functional configuration of a cloud server system according to an embodiment of the present disclosure; and
4 is a block diagram illustrating an operation of individually contributing to various monitoring systems by a cloud server system according to an embodiment of the present disclosure.

본 개시에 대하여 구체적으로 설명하기에 앞서, 본 명세서 및 도면의 기재 방법에 대하여 설명한다.Prior to describing the present disclosure in detail, a description will be given of the description of the present specification and drawings.

먼저, 본 명세서 및 청구범위에서 사용되는 용어는 본 개시의 다양한 실시 예들에서의 기능을 고려하여 일반적인 용어들을 선택하였다. 하지만, 이러한 용어들은 당해 기술 분야에 종사하는 기술자의 의도나 법률적 또는 기술적 해석 및 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 일부 용어는 출원인이 임의로 선정한 용어도 있다. 이러한 용어에 대해서는 본 명세서에서 정의된 의미로 해석될 수 있으며, 구체적인 용어 정의가 없으면 본 명세서의 전반적인 내용 및 당해 기술 분야의 통상적인 기술 상식을 토대로 해석될 수도 있다. First, terms used in the present specification and claims have been selected in consideration of functions in various embodiments of the present disclosure. However, these terms may vary depending on the intention or legal or technical interpretation of a person skilled in the art, and the emergence of new technology. Also, some terms are arbitrarily selected by the applicant. These terms may be interpreted in the meanings defined herein, and in the absence of specific definitions, they may be interpreted based on the general content of the present specification and common technical common sense in the art.

또한, 본 명세서에 첨부된 각 도면에 기재된 동일한 참조번호 또는 부호는 실질적으로 동일한 기능을 수행하는 부품 또는 구성요소를 나타낸다. 설명 및 이해의 편의를 위해서 서로 다른 실시 예들에서도 동일한 참조번호 또는 부호를 사용하여 설명한다. 즉, 복수의 도면에서 동일한 참조 번호를 가지는 구성요소를 모두 도시되어 있다고 하더라도, 복수의 도면들이 하나의 실시 예를 의미하는 것은 아니다. Also, the same reference numerals or reference numerals in each drawing attached to this specification indicate parts or components that perform substantially the same functions. For convenience of description and understanding, the same reference numbers or reference numerals are used in different embodiments. That is, even though all components having the same reference number are illustrated in a plurality of drawings, the plurality of drawings do not mean one embodiment.

또한, 본 명세서 및 청구범위에서는 구성요소들 간의 구별을 위하여 "제1", "제2" 등과 같이 서수를 포함하는 용어가 사용될 수 있다. 이러한 서수는 동일 또는 유사한 구성요소들을 서로 구별하기 위하여 사용하는 것이며 이러한 서수 사용으로 인하여 용어의 의미가 한정 해석되어서는 안 된다. 일 예로, 이러한 서수와 결합된 구성요소는 그 숫자에 의해 사용 순서나 배치 순서 등이 제한되어서는 안 된다. 필요에 따라서는, 각 서수들은 서로 교체되어 사용될 수도 있다. In addition, in this specification and claims, terms including an ordinal number such as “first” and “second” may be used to distinguish between elements. This ordinal number is used to distinguish the same or similar elements from each other, and the meaning of the term should not be construed as limited due to the use of the ordinal number. As an example, the use order or arrangement order of components combined with such an ordinal number should not be limited by the number. If necessary, each ordinal number may be used interchangeably.

본 명세서에서 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In this specification, the singular expression includes the plural expression unless the context clearly dictates otherwise. In the present application, terms such as "comprises" or "consisting of" are intended to designate that the features, numbers, steps, operations, components, parts, or combinations thereof described in the specification exist, and are intended to indicate that one or more other It should be understood that this does not preclude the possibility of addition or presence of features or numbers, steps, operations, components, parts, or combinations thereof.

본 개시의 실시 예에서 "모듈", "유닛", "부(part)" 등과 같은 용어는 적어도 하나의 기능이나 동작을 수행하는 구성요소를 지칭하기 위한 용어이며, 이러한 구성요소는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 "모듈", "유닛", "부(part)" 등은 각각이 개별적인 특정한 하드웨어로 구현될 필요가 있는 경우를 제외하고는, 적어도 하나의 모듈이나 칩으로 일체화되어 적어도 하나의 프로세서로 구현될 수 있다.In an embodiment of the present disclosure, terms such as “module”, “unit”, “part”, etc. are terms for designating a component that performs at least one function or operation, and such component is hardware or software. It may be implemented or implemented as a combination of hardware and software. In addition, a plurality of "modules", "units", "parts", etc. are integrated into at least one module or chip, except when each needs to be implemented in individual specific hardware, and thus at least one processor. can be implemented as

또한, 본 개시의 실시 예에서, 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 직접적인 연결뿐 아니라, 다른 매체를 통한 간접적인 연결의 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 포함한다는 의미는, 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.In addition, in an embodiment of the present disclosure, when it is said that a certain part is connected to another part, this includes not only a direct connection but also an indirect connection through another medium. In addition, the meaning that a certain part includes a certain component means that other components may be further included, rather than excluding other components, unless otherwise stated.

도 1은 본 개시에 따른 클라우드 서버 시스템이 사용자 장치와의 통신을 기반으로 적어도 하나의 센서 장치/제어 장치와 연동하는 별도의 시스템을 구축하는 예를 개략적으로 설명하기 위한 블록도이다.1 is a block diagram schematically illustrating an example in which a cloud server system according to the present disclosure constructs a separate system that interworks with at least one sensor device/control device based on communication with a user device.

클라우드 서버 시스템(100)은 사용자 별로 적어도 하나의 가상 서버를 제공하기 위한 것으로, 서로 통신 가능한 하나 이상의 컴퓨터 내지는 하나 이상의 서버 장치를 포함할 수 있다.The cloud server system 100 is to provide at least one virtual server for each user, and may include one or more computers or one or more server devices capable of communicating with each other.

클라우드 서버 시스템(100)에 포함된 컴퓨터나 서버 장치 등은 각각 하나 이상의 프로세서 및 하나 이상의 메모리를 포함할 수 있다.Each computer or server device included in the cloud server system 100 may include one or more processors and one or more memories.

클라우드 서버 시스템(100)은 다양한 네트워크를 통해 외부 장치들과 연결될 수 있다.The cloud server system 100 may be connected to external devices through various networks.

네트워크는 영역 또는 규모에 따라 개인 통신망(PAN; Personal Area Network), 근거리 통신망(LAN; Local Area Network), 광역 통신망(WAN; Wide Area Network) 등일 수 있으며, 네트워크의 개방성에 따라 인트라넷(Intranet), 엑스트라넷(Extranet), 또는 인터넷(Internet) 등일 수 있다.The network may be a personal area network (PAN), a local area network (LAN), a wide area network (WAN), etc. depending on the area or size, and depending on the openness of the network, an intranet, It may be an extranet or the Internet.

클라우드 서버 시스템(100)은 LTE(long-term evolution), LTE-A(LTE Advance), 5G(5th Generation) 이동통신, CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), GSM(Global System for Mobile Communications), DMA(Time Division Multiple Access), WiFi(Wi-Fi), WiFi Direct, Bluetooth, NFC(near field communication), Zigbee 등 다양한 무선 통신 방식을 통해 외부 장치들과 연결될 수 있다.Cloud server system 100 is LTE (long-term evolution), LTE-A (LTE Advance), 5G (5th Generation) mobile communication, CDMA (code division multiple access), WCDMA (wideband CDMA), UMTS (universal mobile telecommunications) system), WiBro (Wireless Broadband), GSM (Global System for Mobile Communications), DMA (Time Division Multiple Access), WiFi (Wi-Fi), WiFi Direct, Bluetooth, NFC (near field communication), Zigbee, etc. In this way, it can be connected to external devices.

또한, 클라우드 서버 시스템(100)은 이더넷(Ethernet), 광 네트워크(optical network), USB(Universal Serial Bus), 선더볼트(ThunderBolt) 등의 유선 통신 방식을 통해 외부 장치들과 연결될 수도 있다.Also, the cloud server system 100 may be connected to external devices through a wired communication method such as Ethernet, an optical network, a Universal Serial Bus (USB), or a ThunderBolt.

도 1을 참조하면, 클라우드 서버 시스템(100)은 다양한 사용자 장치(210, 220, …)와 통신을 수행할 수 있다.Referring to FIG. 1 , the cloud server system 100 may communicate with various user devices 210 , 220 , ... .

사용자 장치(210, 220, …)는, 스마트폰, 태블릿 PC, 노트북 PC, 데스크탑 PC, PDA 등의 단말 장치일 수도 있고, 서버 장치에 해당할 수도 있다.The user devices 210 , 220 , ... may be terminal devices such as a smart phone, a tablet PC, a notebook PC, a desktop PC, a PDA, or may correspond to a server device.

클라우드 서버 시스템(100)은 적어도 하나의 웹 페이지 또는 애플리케이션을 통해 사용자 장치(210, 220, …)와 통신을 수행할 수 있다.The cloud server system 100 may communicate with the user devices 210 , 220 , ... through at least one web page or application.

그리고, 일 실시 예로, 클라우드 서버 시스템(100)은 사용자 장치(210)를 통해 수신된 사용자의 요청에 따라 적어도 하나의 (가상의) 서버를 생성할 수 있다. And, according to an embodiment, the cloud server system 100 may create at least one (virtual) server according to a user's request received through the user device 210 .

구체적으로, 클라우드 서버 시스템(100)에 포함되는 적어도 하나의 컴퓨터/프로세서/코어를 사용자 장치(210)에 대하여 할당할 수 있다. 이때, 클라우드 서버 시스템(100)은 생성된 서버의 IP(Internet Protocol) 주소를 사용자 장치(210)와 연동되도록 할당할 수도 있다.Specifically, at least one computer/processor/core included in the cloud server system 100 may be allocated to the user device 210 . In this case, the cloud server system 100 may allocate an Internet Protocol (IP) address of the generated server to work with the user device 210 .

생성된 적어도 하나의 서버는, 서로 다른 역할을 수행하는 복수의 가상 서버로 구성될 수 있다. 구체적인 예로, 모니터링 서버, 수집 서버, 훈련 서버, 분석 서버 등이 각각 할당될 수 있는 바 각 서버의 역할은 도 3을 통해 후술한다.The generated at least one server may be configured with a plurality of virtual servers performing different roles. As a specific example, a monitoring server, a collection server, a training server, an analysis server, etc. may be assigned respectively, and the role of each server will be described later with reference to FIG. 3 .

생성된 적어도 하나의 서버는, 하나의 하드웨어 유닛으로 구성된 컴퓨터/프로세서/코어를 통해 구현되는 것일 수도 있으나, 서로 다른 역할을 수행하는 복수의 하드웨어 유닛들로 구분될 수도 있다.The generated at least one server may be implemented through a computer/processor/core composed of one hardware unit, but may be divided into a plurality of hardware units performing different roles.

예를 들어, 생성된 적어도 하나의 서버가, 인터페이스 서버, 큐 서버, 모니터링 서버, 수집 서버 등으로 역할에 따라 구분되는 경우를 가정한다. 이 경우, 상술한 인터페이스 서버, 큐 서버, 모니터링 서버, 수집 서버 등은 각각 서로 통신 가능한 별도의 컴퓨터/프로세서/코어를 통해 구현될 수도 있다.For example, it is assumed that at least one generated server is classified according to roles into an interface server, a queue server, a monitoring server, a collection server, and the like. In this case, the aforementioned interface server, queue server, monitoring server, collection server, etc. may be implemented through separate computers/processors/cores capable of communicating with each other, respectively.

클라우드 서버 시스템(100)은 사용자 장치(210)를 통해 수신된 사용자 입력에 따라 적어도 하나의 센서 장치 및/또는 제어 장치에 대한 정보를 수신하여 해당 장치들을 (서버에 대하여) 등록할 수 있다.The cloud server system 100 may receive information on at least one sensor device and/or a control device according to a user input received through the user device 210 and register the corresponding devices (with respect to the server).

그리고, 도 1과 같이, 사용자 입력에 따라 등록된 다양한 센서 장치(310, 320, 330, …) 및 다양한 제어 장치(410, 420, …)와 통신을 수행하여 데이터를 주고받을 수 있다.And, as shown in FIG. 1 , data may be exchanged by performing communication with various sensor devices 310, 320, 330, … and various control devices 410, 420, … registered according to a user input.

이때, 사용자 장치(210), 생성된 서버, 센서 장치들(310, 320, 330, …), 제어 장치들(410, 420, …)을 포함하는 시스템은, 사용자 장치(210)의 사용자가 운영하는 하나의 시스템으로서 동작할 수 있다.In this case, the system including the user device 210 , the generated server, the sensor devices 310 , 320 , 330 , ... , and the control devices 410 , 420 , ... is operated by the user of the user device 210 . can operate as a single system.

이렇게 구축된 시스템은, 스마트 팜 시스템, 플랜트 설비 시스템, 스마트 팩토리 시스템, 기상 예측 시스템, IoT(Internet of Things) 시스템 등 다양한 목적/기능을 가지는 시스템에 해당할 수 있다.The system constructed in this way may correspond to a system having various purposes/functions, such as a smart farm system, a plant equipment system, a smart factory system, a weather prediction system, and an Internet of Things (IoT) system.

센서 장치(310, 320, 330, …)는 각각 적어도 하나의 센서를 포함할 수 있으며, 시스템의 목적/기능에 따라 다양한 센싱 데이터를 수집하기 위한 하나 이상의 센서를 포함할 수 있다.The sensor devices 310, 320, 330, ... may each include at least one sensor, and may include one or more sensors for collecting various sensing data according to the purpose/function of the system.

제어 장치(410, 420, …)는 시스템의 목적/기능과 관련된 환경(ex. 온도, 기압, 공정 환경 등)을 제어하기 위한 다양한 장비/설비(ex. 펌프, 전열기, 온풍기, 레일, 밸브 등)를 자동으로 제어/구동하기 위한 다양한 장치에 해당할 수 있다.The control devices 410, 420, … are various equipment/equipments (ex. pumps, electric heaters, hot air fans, rails, valves, etc.) for controlling the environment (ex. temperature, atmospheric pressure, process environment, etc.) related to the purpose/function of the system. ) may correspond to various devices for automatically controlling / driving.

마찬가지로, 클라우드 서버 시스템(100)은 다른 사용자 장치(220)에 대해서도 적어도 하나의 서버를 생성할 수 있다. 이 경우, 역시 사용자 장치(220), 서버, 적어도 하나의 센서 장치 등을 포함하는 시스템이 구축될 수 있다.Similarly, the cloud server system 100 may create at least one server for other user devices 220 . In this case, a system including the user device 220 , a server, and at least one sensor device may also be built.

이렇듯, 본 개시에 따른 클라우드 서버 시스템(100)은, 사용자 별로 서버를 생성하여 다양한 센서 장치의 센싱 데이터를 모니터링 할 수 있으며, 모니터링 결과에 대한 정보를 사용자 장치를 통해 제공할 수 있다.As such, the cloud server system 100 according to the present disclosure may monitor sensing data of various sensor devices by creating a server for each user, and may provide information on the monitoring result through the user device.

그 결과, 사용자는 시스템을 구성하는 메인 컴퓨터 하드웨어를 직접 구축하지 않은 경우에도, 비교적 저렴한 비용으로 클라우드 서비스 형태로 메인 컴퓨터 기능을 이용할 수 있다는 효과가 있다.As a result, even when the user does not directly build the main computer hardware constituting the system, there is an effect that the user can use the main computer function in the form of a cloud service at a relatively low cost.

이하 도면들을 통해, 본 개시에 따른 클라우드 서버 시스템(100)의 동작 및 구성에 대해 보다 상세하게 설명한다.Hereinafter, an operation and configuration of the cloud server system 100 according to the present disclosure will be described in more detail with reference to the drawings.

도 2는 본 개시의 일 실시 예에 따른 클라우드 서버 시스템의 제어 방법을 설명하기 위한 흐름도이다.2 is a flowchart illustrating a control method of a cloud server system according to an embodiment of the present disclosure.

도 2를 참조하면, 클라우드 서버 시스템(100)은, 사용자 장치를 통해 사용자 정보가 입력되면, 사용자 정보에 매칭되는 적어도 하나의 서버를 생성할 수 있다(S210).Referring to FIG. 2 , when user information is input through a user device, the cloud server system 100 may generate at least one server matching the user information ( S210 ).

사용자 정보는, 사용자의 이름, ID, 비밀번호, 개설될 시스템의 이름, 인증 번호 등에 대한 정보를 포함할 수 있으나, 이에 한정되지 않는다.The user information may include, but is not limited to, information about a user's name, ID, password, name of a system to be established, and an authentication number.

일 예로, 클라우드 서버 시스템(100)은 웹 페이지 또는 애플리케이션 등을 통해 회원 가입 서비스를 제공할 수 있으며, 회원 가입된 사용자 정보가 입력되면 해당 사용자에 대한 로그인 서비스(웹 페이지/애플리케이션 등)를 제공할 수 있다.As an example, the cloud server system 100 may provide a membership subscription service through a web page or an application, and when information about a registered user is input, a login service (web page/application, etc.) for the user may be provided. can

이때, 클라우드 서버 시스템(100)은 로그인된 사용자 장치(사용자)의 요청에 따라 적어도 하나의 서버를 생성할 수 있으며, 사용자 장치를 통해 입력된 사용자 정보를 기반으로 서버에 접속하기 위한 인증 번호를 설정할 수 있다.In this case, the cloud server system 100 may create at least one server according to the request of the logged-in user device (user), and set an authentication number for accessing the server based on user information input through the user device. can

이후, 적어도 하나의 사용자 장치가 해당 서버에 접속하고자 하는 경우, 클라우드 서버 시스템(100)은 설정된 인증 번호의 입력이 수행됨을 전제로 접속을 허용할 수 있다.Thereafter, when at least one user device wants to access the corresponding server, the cloud server system 100 may allow access on the premise that the set authentication number is input.

사용자 장치가 서버에 접속되면, 클라우드 서버 시스템(100)은 사용자 장치를 통해 수신된 사용자 입력을 기반으로 서버의 다양한 동작 프로세스(모니터링, 제어, 훈련, 분석 등)에 대한 설정 값을 지정할 수 있는 바, 구체적인 실시 예는 이하 다양한 실시 예들 각각을 통해 후술한다.When the user device is connected to the server, the cloud server system 100 may designate set values for various operation processes (monitoring, control, training, analysis, etc.) of the server based on the user input received through the user device. , specific embodiments will be described later through each of various embodiments below.

클라우드 서버 시스템(100)은, 사용자 장치를 통해 센서 정보가 입력되면, 센서 정보에 매칭되는 적어도 하나의 센서 장치를 식별할 수 있다.When sensor information is input through the user device, the cloud server system 100 may identify at least one sensor device matching the sensor information.

센서 정보는, 센서 장치의 식별 정보, 센서 장치에 구비된 센서의 종류/수, 센서 장치의 위치, 센서 장치의 제조 연월일, 센서 장치의 통신 정보(ex. 센서 장치가 포함된 네트워크의 통신 정보, 센서 장치의 IP 주소, 센서 장치가 연결된 중계 장치의 IP 주소 등) 등 다양한 정보를 포함할 수 있다.The sensor information includes identification information of the sensor device, the type/number of sensors included in the sensor device, the location of the sensor device, the manufacturing date of the sensor device, and communication information of the sensor device (eg, communication information of a network including the sensor device, It may include various information such as the IP address of the sensor device, the IP address of the relay device to which the sensor device is connected, etc.).

구체적으로, 사용자 장치를 통해 수신된 사용자 명령에 따라 적어도 하나의 센서 장치에 대한 센서 정보가 입력되면, 클라우드 서버 시스템(100)은 센서 정보에 따라 식별된 센서 장치와 페어링을 수행할 수 있다.Specifically, when sensor information on at least one sensor device is input according to a user command received through the user device, the cloud server system 100 may perform pairing with the sensor device identified according to the sensor information.

이때, 클라우드 서버 시스템(100)은 센서 장치의 식별 정보 및/또는 통신 정보를 이용하여 센서 장치와 페어링을 수행할 수 있다(통신 연결). 이후, 클라우드 서버 시스템(100)은 센서 장치로부터 센싱 데이터를 수신할 수 있다.In this case, the cloud server system 100 may perform pairing with the sensor device using identification information and/or communication information of the sensor device (communication connection). Thereafter, the cloud server system 100 may receive sensing data from the sensor device.

또는, 클라우드 서버 시스템(100)은 센서 정보 및 센싱 데이터 간의 관계를 기반으로 적어도 하나의 센서 장치와 페어링을 수행할 수 있다.Alternatively, the cloud server system 100 may perform pairing with at least one sensor device based on a relationship between the sensor information and the sensed data.

구체적으로, 클라우드 서버 시스템(100)은, 사용자 장치를 통해 센서 정보(ex. 센서 장치의 ID, 종류, 수, 위치 등)를 수신하는 한편, 적어도 하나의 센서 장치로부터 센싱 데이터를 수신(ex. 센서 장치의 개시 신호)할 수 있다. Specifically, the cloud server system 100 receives sensor information (eg, ID, type, number, location, etc. of a sensor device) through a user device, and receives sensing data from at least one sensor device (ex. initiation signal of the sensor device).

이때, 클라우드 서버 시스템(100)은 센서 장치로부터 센서 장치의 ID 및 센서 장치에서 획득된 센싱 데이터(값, 시간, 위치, 주기 등)를 수신할 수 있다.In this case, the cloud server system 100 may receive an ID of the sensor device and sensing data (value, time, location, period, etc.) acquired from the sensor device from the sensor device.

이 경우, 클라우드 서버 시스템(100)은 센서 정보와 매칭되는 센싱 데이터를 출력하는 적어도 하나의 센서 장치를 식별하고, 식별된 센서 장치와 페어링을 수행할 수 있다(ex. 페어링 요청).In this case, the cloud server system 100 may identify at least one sensor device that outputs sensing data matching sensor information, and perform pairing with the identified sensor device (eg, pairing request).

구체적인 예로, 클라우드 서버 시스템(100)은 센서 장치의 ID에 따라 센서 정보 및 센싱 데이터의 매칭 여부를 결정할 수 있다. 또는, 클라우드 서버 시스템(100)은 센서 장치의 종류/수/위치 등에 대한 센서 정보와 센싱 데이터의 값(종류/단위/위치 등) 간의 연동 여부에 따라 매칭 여부를 결정할 수도 있다.As a specific example, the cloud server system 100 may determine whether the sensor information and the sensing data match according to the ID of the sensor device. Alternatively, the cloud server system 100 may determine whether to match according to whether sensor information on the type/number/position of the sensor device and the value (type/unit/location, etc.) of the sensing data are interlocked.

이 경우, 클라우드 서버 시스템(100)은 각 센서 장치와 유동적으로 페어링을 수행하여 종류 별/위치 별 센싱 데이터를 필요에 따라 적절하게 이용할 수 있다.In this case, the cloud server system 100 may flexibly perform pairing with each sensor device to appropriately use sensing data for each type/position as needed.

클라우드 서버 시스템(100)은, 사용자 장치를 통해 수신되는 사용자 입력을 기반으로, 서버의 모니터링 프로세스를 설정할 수 있다(S230).The cloud server system 100 may set a monitoring process of the server based on a user input received through the user device ( S230 ).

모니터링 프로세스는, 적어도 하나의 센서 장치의 센싱 데이터를 모니터링하기 위한 과정을 의미하는 것으로, 모니터링되는 센서에 대한 정보(센싱 데이터의 종류), 모니터링 주기, 실시간 모니터링 여부, 모니터링을 위한 센서 장치와의 통신 방식 등 모니터링 과정을 위한 다양한 정보를 포함할 수 있다.The monitoring process refers to a process for monitoring sensing data of at least one sensor device, and includes information about the monitored sensor (type of sensing data), a monitoring cycle, whether real-time monitoring, and communication with a sensor device for monitoring. Various information for the monitoring process, such as a method, may be included.

여기서, 서버는, 연결된 센서 장치의 다양한 센싱 데이터 중 모니터링의 대상인 센싱 데이터만을 수신하거나 및/또는 모니터링의 대상인 센싱 데이터만을 메모리 상에 저장할 수 있다.Here, the server may receive only sensing data, which is a target of monitoring, among various sensing data of a connected sensor device, and/or may store only sensing data, which is a target of monitoring, in a memory.

그리고, 클라우드 서버 시스템(100)은, 서버를 통해, 앞서 센서 정보에 따라 식별된 센서 장치의 센싱 데이터를 설정된 모니터링 프로세스에 따라 모니터링할 수 있다(S240).In addition, the cloud server system 100 may monitor the sensing data of the sensor device previously identified according to the sensor information according to a set monitoring process through the server ( S240 ).

이 경우, 클라우드 서버 시스템(100)은, 서버의 모니터링에 따라 획득된 모니터링 정보를 사용자 장치로 전송할 수 있다(S250).In this case, the cloud server system 100 may transmit the monitoring information obtained according to the monitoring of the server to the user device ( S250 ).

모니터링 정보는, 적어도 일부 시간 구간 동안의 센싱 데이터의 값을 포함할 수 있고, 센싱 데이터의 시간 별/종류 별 패턴 내지는 통계 정보를 포함할 수 있으나, 이에 한정되지 않는다.The monitoring information may include values of sensed data for at least some time period, and may include patterns or statistical information for each time/type of the sensed data, but is not limited thereto.

이렇듯, 사용자 장치를 통해 수신되는 사용자 입력에 따라 센서 정보 및 모니터링 프로세스가 설정되기만 하면, 클라우드 서버 시스템(100)은 사용자를 위해 생성된 서버를 통해 센서 장치에 대한 모니터링을 수행할 수 있다. 그 결과, 사용자는 사용자 장치를 통해 직접 모니터링을 수행할 필요가 없어, 하드웨어 구축 비용이 절감될 수 있다.As such, as long as sensor information and a monitoring process are set according to a user input received through the user device, the cloud server system 100 may monitor the sensor device through the server created for the user. As a result, the user does not need to directly perform monitoring through the user device, and the hardware construction cost can be reduced.

한편, 클라우드 서버 시스템(100)은, 이후 사용자 장치를 통해 추가적인 센서 정보가 입력되면, 추가적인 센서 정보에 매칭되는 다른 센서 장치를 추가로 식별할 수 있다.Meanwhile, when additional sensor information is inputted through the user device thereafter, the cloud server system 100 may additionally identify another sensor device matching the additional sensor information.

구체적인 예로, 적어도 하나의 사용자 장치가 인증 번호의 입력을 전제로 상술한 서버에 접속한 경우, 클라우드 서버 시스템(100)은 해당 사용자 장치로부터 추가적인 센서 정보를 입력 받을 수 있다.As a specific example, when at least one user device accesses the above-described server on the premise that an authentication number is input, the cloud server system 100 may receive additional sensor information from the corresponding user device.

이때, 클라우드 서버 시스템(100)은 추가로 입력된 센서 정보에 따라 적어도 하나의 센서 장치와 (추가적으로) 페어링을 수행할 수 있다.In this case, the cloud server system 100 may perform (additionally) pairing with at least one sensor device according to additionally input sensor information.

이 경우, 클라우드 서버 시스템(100)은, 서버를 통해, 기존에 모니터링되던 센서 장치에 더하여 새롭게 추가된 센서 장치도 함께 모니터링할 수 있다. In this case, the cloud server system 100 may monitor a newly added sensor device in addition to the previously monitored sensor device through the server.

이때, 모니터링 프로세스는 기존에 설정된 모니터링 프로세스와 동일할 수 있으나, (인증된) 사용자 장치를 통해 수신되는 사용자 입력에 따라서 모니터링 프로세스 역시 상시 변경/업데이트될 수 있음은 물론이다.In this case, the monitoring process may be the same as the previously set monitoring process, but it goes without saying that the monitoring process may also be constantly changed/updated according to a user input received through the (authenticated) user device.

한편, 클라우드 서버 시스템(100)은, 사용자 장치를 통해 서버의 제어 정보를 입력 받을 수도 있다.Meanwhile, the cloud server system 100 may receive control information of the server through the user device.

제어 정보는, 모니터링 정보에 따라 적어도 하나의 제어 장치를 제어하기 위한 정보이다. 즉, 제어 정보는, 제어 장치의 식별 정보/통신 정보, 제어 장치의 제어를 받는 제어 장비에 대한 정보, 제어 장비를 제어/구동하기 위한 조건에 대한 정보 등을 포함할 수 있다.The control information is information for controlling at least one control device according to the monitoring information. That is, the control information may include identification information/communication information of the control device, information on control equipment under the control of the control device, information on conditions for controlling/driving the control equipment, and the like.

제어 장치는, 펌프, 전열기, 온풍기, 레일, 밸브 등 적어도 하나의 제어 장비를 제어/구동하기 위한 장치에 해당할 수 있다.The control device may correspond to a device for controlling/driving at least one control device, such as a pump, an electric heater, a hot air fan, a rail, and a valve.

구체적으로, 제어 정보는, 모니터링된 센싱 데이터의 조건(값/범위)에 따라 적어도 하나의 제어 장비를 제어/구동하기 위한 정보에 해당할 수 있다. 또한, 제어 정보는, 후술할 다양한 실시 예에 따라 획득되는 분석 정보에 따라 적어도 하나의 제어 장비를 제어/구동하기 위한 정보에 해당할 수도 있다.Specifically, the control information may correspond to information for controlling/driving at least one control device according to a condition (value/range) of the monitored sensing data. Also, the control information may correspond to information for controlling/driving at least one control device according to analysis information obtained according to various embodiments to be described later.

예를 들어, 스마트 팜 시스템을 구성하는 온도 센서가 서버에 연결된 경우를 가정한다. 여기서, 제어 정보는, 온도가 임계치 미만이 되면 스마트 팜 내 적어도 하나의 전열기 또는 온풍기를 가동시키기 위한 다양한 정보(ex. 가동 시간, 가동 강도, 목표 온도 등)를 포함할 수 있다.For example, it is assumed that a temperature sensor constituting a smart farm system is connected to a server. Here, the control information may include various information (eg, operation time, operation intensity, target temperature, etc.) for operating at least one electric heater or hot air heater in the smart farm when the temperature is less than the threshold value.

일 실시 예로, 사용자 장치를 통해 제어 정보가 입력되면, 클라우드 서버 시스템(100)은 제어 정보에 매칭되는 적어도 하나의 제어 장치를 식별할 수 있다.For example, when control information is input through the user device, the cloud server system 100 may identify at least one control device matching the control information.

이때, 클라우드 서버 시스템(100)은 식별된 제어 장치와 페어링을 수행할 수 있다.In this case, the cloud server system 100 may perform pairing with the identified control device.

그리고, 센서 장치로부터 수신된(모니터링된) 센싱 데이터가 제어 정보에 매칭되는 기설정된 조건을 만족하는 경우, 서버는, 제어 정보를 기반으로 제어 장치를 위한 적어도 하나의 명령을 생성할 수 있다.And, when the sensed data received (monitored) from the sensor device satisfies a preset condition matching the control information, the server may generate at least one command for the control device based on the control information.

또는, 센서 장치로부터 수신된 센싱 데이터에 대하여 획득된 분석 정보가 제어 정보에 매칭되는 기설정된 조건을 만족하는 경우, 서버는, 제어 정보를 기반으로 제어 장치를 위한 적어도 하나의 명령을 생성할 수 있다.Alternatively, when the analysis information obtained with respect to the sensing data received from the sensor device satisfies a preset condition matching the control information, the server may generate at least one command for the control device based on the control information. .

그리고, 클라우드 서버 시스템(100)은 생성된 명령을 제어 장치로 전송할 수 있다. 그 결과, 모니터링되는 센싱 데이터의 값 및/또는 분석 정보에 따라 자동적으로 시스템 환경 제어/조작이 가능해진다.And, the cloud server system 100 may transmit the generated command to the control device. As a result, it is possible to automatically control/manipulate the system environment according to the value and/or analysis information of the monitored sensing data.

한편, 일 실시 예에 따르면, 클라우드 서버 시스템(100)은, 사용자 장치를 통해 수신되는 사용자 입력을 기반으로, 모니터링되는 센싱 데이터의 분석 프로세스를 설정할 수 있다.Meanwhile, according to an embodiment, the cloud server system 100 may set an analysis process of monitored sensing data based on a user input received through the user device.

분석 프로세스는, 센싱 데이터의 전처리 방식, 표본 추출, 평균 추출, 편차 추출, 분류, 패턴 분석, 정규화, 스케일링 등 다양한 분석 과정에 대한 정보를 포함할 수 있다.The analysis process may include information on various analysis processes, such as a preprocessing method of sensing data, sampling, average extraction, deviation extraction, classification, pattern analysis, normalization, and scaling.

또한, 분석 프로세스는, 센싱 데이터의 값의 조건/범위에 따라 적어도 하나의 증상이 매칭되도록 설정될 수도 있다. In addition, the analysis process may be set to match at least one symptom according to a condition/range of the value of the sensed data.

예를 들어, 모니터링의 대상인 센싱 데이터가 임계 시간 이상 동안 수신되지 않는 경우 통신 상태의 결함 증상인 것으로 설정될 수 있으며, 센싱 데이터의 시간 별 편차가 임계 편차 이상인 경우 센서 장치의 결함 증상인 것으로 설정될 수 있다.For example, if the sensing data, which is the object of monitoring, is not received for more than a threshold time, it may be set as a symptom of a communication state defect. can

이 경우, 클라우드 서버 시스템(100)은, 서버를 통해 센싱 데이터를 분석 프로세스에 따라 분석하여 분석 정보를 획득할 수 있다.In this case, the cloud server system 100 may obtain analysis information by analyzing the sensed data according to the analysis process through the server.

분석 정보는, 센싱 데이터의 적어도 일부를 포함할 수 있으며, 그 밖에 센싱 데이터와 관련된 다양한 패턴/통계 관련 정보를 포함할 수 있다.The analysis information may include at least a portion of the sensed data, and other information related to various patterns/statistics related to the sensed data.

또한, 분석 정보는, 적어도 하나의 구성(센서 장치, 제어 장치, 클라우드 서버 시스템 내 일부 구성 등)의 결함에 대한 정보(원인, 증상, 시작 시간 등)를 포함할 수도 있다.In addition, the analysis information may include information (cause, symptom, start time, etc.) about a defect in at least one component (sensor device, control device, some components in the cloud server system, etc.).

클라우드 서버 시스템(100)은 분석 결과에 따라 획득된 분석 정보를 사용자 장치로 전송할 수 있다.The cloud server system 100 may transmit the analysis information obtained according to the analysis result to the user device.

한편, 일 실시 예에 따르면, 클라우드 서버 시스템(100)은, 사용자 장치를 통해 수신되는 사용자 입력을 기반으로, 적어도 하나의 인공지능 모델의 훈련 프로세스를 설정할 수 있다.Meanwhile, according to an embodiment, the cloud server system 100 may set a training process for at least one artificial intelligence model based on a user input received through the user device.

인공지능 모델은, 센서 장치의 고장 여부(결함 유무), 센서 장치와 클라우드 서버 시스템(100) 간의 통신 상태의 결함 여부, 클라우드 시스템(100) 내 결함 발생 여부 등을 판단하기 위한 모델일 수 있다.The artificial intelligence model may be a model for determining whether the sensor device has a failure (whether or not there is a defect), whether a communication state between the sensor device and the cloud server system 100 is defective, or whether a defect has occurred in the cloud system 100 .

또는, 인공지능 모델은, 센싱 데이터를 기반으로 적어도 하나의 예측 정보를 획득하기 위한 모델일 수도 있다. Alternatively, the artificial intelligence model may be a model for acquiring at least one piece of prediction information based on sensing data.

예를 들어, 센싱 데이터가 지역 별 온도, 기압, 습도 등에 대한 센싱 데이터인 경우, 인공지능 모델은 지역 별 기상 예측 정보를 출력하도록 훈련된 것일 수 있다.For example, when the sensed data is sensing data for temperature, air pressure, humidity, etc. for each region, the artificial intelligence model may be trained to output weather prediction information for each region.

인공지능 모델은, 일 예로 딥 러닝 기반 신경망 모델로 구현될 수 있으며, 모델 내 서로 다른 레이어에 속하는 노드 간의 가중치가 모델의 입/출력에 따라 업데이트되는 방식으로 훈련될 수 있다.The artificial intelligence model, for example, may be implemented as a deep learning-based neural network model, and may be trained in such a way that weights between nodes belonging to different layers in the model are updated according to input/output of the model.

훈련 프로세스는, 훈련에 이용될 센싱 데이터에 대한 정보(종류, 데이터량, 시간 구간, 수집 주기), 훈련 주기, 훈련량(데이터량/연산량) 등에 대한 정보를 포함할 수 있다.The training process may include information on sensing data to be used for training (type, data amount, time interval, collection period), training period, training amount (data amount/computational amount), and the like.

또한, 훈련 프로세스는, 신경망 모델의 구체적인 레이어 구성, 훈련 데이터 셋 중 입력/출력에 해당하는 데이터의 정의, 각 배치(batch)에 포함되는 훈련 데이터의 양 등에 대한 정보도 포함할 수 있다.In addition, the training process may include information on a specific layer configuration of the neural network model, definition of data corresponding to input/output among the training data sets, and the amount of training data included in each batch.

클라우드 서버 시스템(100)은, 서버를 통해, 상술한 바와 같이 설정된 훈련 프로세스에 따라 센싱 데이터를 적용하여 인공지능 모델을 훈련시킬 수 있으며, 훈련된 인공지능 모델을 이용하여 센싱 데이터에 대한 분석 정보를 획득할 수 있다.The cloud server system 100 may train an artificial intelligence model by applying the sensing data according to the training process set as described above through the server, and analyze information on the sensed data using the trained artificial intelligence model. can be obtained

한편, 클라우드 서버 시스템(100)은, 사용자 장치의 사용자에 대한 과금 정보를 생성할 수도 있다.Meanwhile, the cloud server system 100 may generate billing information for the user of the user device.

과금 정보는, 사용자 장치가 이용한 클라우드 서비스(서버)의 이용 요금에 대한 정보를 포함할 수 있다.The billing information may include information on a usage fee of a cloud service (server) used by the user device.

구체적으로, 클라우드 서버 시스템(100)은, 서버의 연산량, 서버의 데이터 사용량, 및 서버의 데이터 통신량 중 적어도 하나에 따른 과금 정책을 기반으로 사용자 장치의 사용자에 대한 과금 정보를 생성할 수 있다.Specifically, the cloud server system 100 may generate billing information for the user of the user device based on a billing policy according to at least one of the amount of computation of the server, the amount of data used by the server, and the amount of data communication of the server.

여기서, 클라우드 서버 시스템(100)은 기설정된 복수의 과금 정책 중 사용자 장치를 통해 수신된 사용자 입력에 따라 선택된 과금 정책을 활용할 수 있다.Here, the cloud server system 100 may utilize a billing policy selected according to a user input received through the user device from among a plurality of preset billing policies.

과금 정책의 경우, 서버의 연산량이 많을수록, 데이터 사용량이 많을수록, 데이터 통신량이 많을수록 더 많은 금액이 청구되도록 설정될 수 있다.In the case of the billing policy, the greater the amount of computation of the server, the greater the data use, the greater the data communication amount, the greater the amount may be set to be charged.

클라우드 서버 시스템(100)은 기설정된 주기(ex. 월/분기/반기/년 등)마다 과금 정보를 생성하여 사용자 장치로 과금 정보를 전송할 수 있다. 또는, 클라우드 서버 시스템(100)은 과금 정보에 따라 산정된 금액이 일정 금액에 도달할 때마다 사용자 장치로 과금 정보를 전송할 수 있다. 다만, 과금 정보의 생성/청구 방식은 이 밖에도 다양한 실시 예가 가능하다.The cloud server system 100 may generate billing information every preset period (eg, monthly/quarter/half-year/year, etc.) and transmit the billing information to the user device. Alternatively, the cloud server system 100 may transmit the billing information to the user device whenever the amount calculated according to the billing information reaches a predetermined amount. However, various other embodiments are possible for the method of generating/claiming billing information.

한편, 클라우드 서버 시스템(100)은, 시스템(서버, 센서 장치, 제어 장치 등)이 원활하게 동작하는지 여부에 따라 과금 정책을 달리할 수 있다.Meanwhile, the cloud server system 100 may change the charging policy according to whether the system (server, sensor device, control device, etc.) operates smoothly.

일 예로, 서버는, 센서 장치로부터 수신된 센싱 데이터를 분석하여, 센서 장치의 동작, 센서 장치와 서버(클라우드 서버 시스템(100)) 간의 통신 상태, 서버의 동작 등을 진단할 수 있다.For example, the server may analyze the sensing data received from the sensor device to diagnose the operation of the sensor device, the communication state between the sensor device and the server (the cloud server system 100 ), the operation of the server, and the like.

만약 센서 장치의 동작 또는 (센서 장치와 서버 간) 통신 상태에 결함이 발생한 경우, 클라우드 서버 시스템(100)은 사용자 장치로 결함의 발생을 알리는 정보를 전송할 수 있다.If a defect occurs in the operation of the sensor device or a communication state (between the sensor device and the server), the cloud server system 100 may transmit information notifying the occurrence of the defect to the user device.

이때, 클라우드 서버 시스템(100)은, 센서 장치의 동작 및 통신 상태에 결함이 발생하지 않은 시간 구간에 대해서는, 제1 과금 정책을 기반으로 과금 정보를 생성하고, 센서 장치의 동작 및 통신 상태 중 적어도 하나에 결함이 발생한 시간 구간에 대해서는, 제1 과금 정책과 다른 제2 과금 정책을 기반으로 과금 정보를 생성할 수 있다.In this case, the cloud server system 100 generates billing information based on the first billing policy for a time period in which a defect does not occur in the operation and communication state of the sensor device, and at least among the operation and communication state of the sensor device. For a time section in which one defect occurs, charging information may be generated based on a second charging policy different from the first charging policy.

일 예로, 센서 장치의 동작 및 통신 상태 중 적어도 하나에 결함이 발생한 경우에는, 사용자가 운영하는 시스템이 원활하게 작동하지 않는 상태이기 때문에, 단위 데이터(데이터 크기) 또는 단위 시간에 대한 과금액수가 상대적으로 감소 조정될 수도 있다.For example, when a defect occurs in at least one of an operation and a communication state of the sensor device, since the system operated by the user does not operate smoothly, the amount of billing for unit data (data size) or unit time is relative may be reduced and adjusted.

또한, 결함이 발생한 곳이 어디인지에 따라 과금 정책이 달라질 수도 있다.Also, the charging policy may vary depending on where the defect occurred.

예를 들어, 결함이 센서 장치 자체의 결함에 해당하는 경우, 클라우드 서버 시스템(100)은 결함이 발생한 시간 구간에 대해서도 결함이 발생하지 않은 시간 구간과 동일한 과금 정책을 적용할 수 있다.For example, when the defect corresponds to a defect of the sensor device itself, the cloud server system 100 may apply the same charging policy as that of the time period in which the defect does not occur even for a time section in which the defect occurs.

또는, 센서 장치 자체의 결함이 발생한 경우, 클라우드 서버 시스템(100)은 사용자 장치에 결함을 알린 시점으로부터 일정 시간이 경과할 때까지는 시간당 과금을 추가하지 않다가, 해당 시간이 경과한 시점부터는 결함의 해소 여부와 무관하게 시간당 과금을 추가할 수도 있다.Alternatively, when a defect in the sensor device itself occurs, the cloud server system 100 does not add hourly billing until a predetermined time elapses from the time when the defect is notified to the user device. Hourly charges can also be added whether or not they are cancelled.

이 경우, 일정 시간의 길이는 사용자가 현실적으로 센서 장치를 복구/교체하는 데에 부족함이 없는 정도로 기설정될 필요가 있다. 또한, 일정 시간의 길이는, 결함이 생긴 센서 장치의 종류/수, 결함의 종류 등에 따라 다르게 기설정될 수도 있다.In this case, the length of the predetermined time needs to be preset to such a degree that the user has no shortage of realistically recovering/replacing the sensor device. In addition, the length of the predetermined time may be differently preset according to the type/number of sensor devices in which the defect has occurred, the type of the defect, and the like.

반면, 결함이 클라우드 서버 시스템(100)의 결함에 해당하는 경우, 클라우드 시스템(100)은 결함이 해소될 때까지 시간당 과금을 추가하지 않을 수 있다. 즉, 클라우드 서버 시스템(100)에 결함이 있는 시간 구간 동안에는 시간당 과금이 산정되지 않을 수 있다.On the other hand, when the defect corresponds to a defect in the cloud server system 100 , the cloud system 100 may not add hourly billing until the defect is resolved. That is, hourly billing may not be calculated during the time period in which the cloud server system 100 has a defect.

한편, 일 실시 예로, 클라우드 서버 시스템(100)은 서버에 임계치 이상의 부하가 발생한 경우, 사용자 정보에 매칭되는 적어도 하나의 서버를 추가로 생성할 수 있다.Meanwhile, as an embodiment, when a load greater than or equal to a threshold is generated on the server, the cloud server system 100 may additionally create at least one server matching user information.

생성된 서버가 서로 다른 동작을 수행하는 복수의 서버를 포함하는 경우를 가정하면, 클라우드 서버 시스템(100)은, 복수의 서버 중 부하가 임계치 이상인 서버를 식별하고, 식별된 서버와 매칭되는 동작을 수행하는 서버를 추가로 생성할 수도 있다.Assuming that the generated server includes a plurality of servers performing different operations, the cloud server system 100 identifies a server having a load equal to or greater than a threshold among the plurality of servers, and performs an operation matching the identified server You can also create additional servers that run.

구체적인 예로, 특정 사용자에 대하여 수집 서버, 모니터링 서버, 훈련 서버, 분석 서버가 각각 할당된 경우를 가정한다. 여기서, 훈련 서버의 부하가 임계치를 초과한 경우, 클라우드 서버 시스템(100)은 훈련 서버를 추가로 생성/할당할 수 있다.As a specific example, it is assumed that a collection server, a monitoring server, a training server, and an analysis server are each allocated to a specific user. Here, when the load of the training server exceeds the threshold, the cloud server system 100 may additionally create/allocate the training server.

이때, 추가되는 서버의 수에 따라 과금 정보가 다르게 생성될 수도 있다. 즉, 서버의 수가 많을수록 과금액이 많아질 수 있다.In this case, charging information may be generated differently according to the number of servers to be added. That is, as the number of servers increases, the billed amount may increase.

한편, 일 실시 예에 따르면, 클라우드 서버 시스템(100)은, 사용자 장치로부터 수신되는 센서 정보(센서의 종류, 수, 위치 등)를 기반으로 사용자 장치의 시스템을 위해 필요한 서버의 수를 예측할 수 있다.Meanwhile, according to an embodiment, the cloud server system 100 may predict the number of servers required for the system of the user device based on sensor information (type, number, location, etc. of sensors) received from the user device. .

그리고, 클라우드 서버 시스템(100)은 예측된 수만큼의 서버를 사용자 장치에 대하여 할당할 수 있다. 여기서, 서버 별 연산량은 기설정되어 있을 수 있으며, 각 서버 별로 일정 수의 컴퓨터 내지는 코어가 할당될 수 있다.In addition, the cloud server system 100 may allocate the predicted number of servers to the user device. Here, the amount of computation for each server may be preset, and a certain number of computers or cores may be allocated to each server.

이를 위해, 클라우드 서버 시스템(100)은 센서 정보에 따라 필요한 서버의 수를 예측하도록 훈련된 적어도 하나의 인공지능 모델을 이용할 수 있다.To this end, the cloud server system 100 may use at least one artificial intelligence model trained to predict the required number of servers according to sensor information.

예를 들어, 클라우드 서버 시스템(100)은 다양한 사용자 장치와 연동되는 시스템들 각각을 위하여 하나 이상의 서버를 제공하면서, 일정 시간 이상 유지된 각 시스템에 대하여 이용되고 있는 서버의 수를 식별할 수 있다.For example, the cloud server system 100 may identify the number of servers used for each system maintained for a predetermined time or longer while providing one or more servers for each of the systems interworking with various user devices.

그리고, 클라우드 서버 시스템(100)은 시스템 별로 매칭되는 센서 정보(센서의 종류, 수, 위치, 센싱 주기 등) 및 시스템 별로 이용되는 서버의 수를 기반으로, 해당 인공지능 모델을 훈련시킬 수 있다.In addition, the cloud server system 100 may train a corresponding artificial intelligence model based on sensor information (type, number, location, sensing period, etc. of sensors) matched for each system and the number of servers used for each system.

이후, 새로운 사용자 장치로부터 사용자 정보 및 센서 정보가 입력되면(ex. S210-S230), 클라우드 서버 시스템(100)은 해당 센서 정보를 훈련된 인공지능 모델에 입력하여, 해당 사용자 장치와 연동되는 시스템에 (향후) 필요한 서버의 수를 예측할 수 있다.Thereafter, when user information and sensor information are input from a new user device (ex. S210-S230), the cloud server system 100 inputs the sensor information into the trained artificial intelligence model, You can predict the number of servers you will need (in the future).

그리고, 클라우드 서버 시스템(100)은 해당 사용자 장치에 대하여 예측된 수만큼의 서버를 생성/할당할 수 있다.한편, 상술한 실시 예의 경우 센서 정보만을 기반으로 인공지능 모델이 훈련되어 필요한 서버 수에 대한 예측이 수행되는 것으로 기술되었으나, 센서 정보 외에 모니터링 프로세스, 분석 프로세스, 훈련 프로세스 중 적어도 하나가 훈련 및 예측에 추가로 이용될 수 있음은 물론이다.And, the cloud server system 100 may create/allocate the predicted number of servers for the corresponding user device. On the other hand, in the case of the above-described embodiment, the artificial intelligence model is trained based on only the sensor information to determine the number of servers required. Although it has been described that prediction is performed, at least one of a monitoring process, an analysis process, and a training process in addition to sensor information may be additionally used for training and prediction.

한편, 일 실시 예로, 사용자 장치는 클라우드 서버 시스템(100)의 서버로부터 수신되는 센싱 데이터/모니터링 정보/분석 정보 등을 연동하여 다양한 서비스를 제공하기 위한 애플리케이션/웹 페이지를 제공할 수도 있다.Meanwhile, according to an embodiment, the user device may provide an application/web page for providing various services by interworking sensing data/monitoring information/analysis information received from the server of the cloud server system 100 .

이를 위해, 사용자 장치는 적어도 하나의 외부 서버를 추가로 이용할 수 있으며, 다양한 고객 단말에 서비스를 제공할 수 있다.To this end, the user device may additionally use at least one external server, and may provide services to various customer terminals.

일 예로, 사용자 장치는 클라우드 서버 시스템(100)의 서버를 통해 획득된 모니터링 정보/분석 정보를 다양한 고객 단말로 제공할 수 있다.For example, the user device may provide monitoring information/analysis information acquired through the server of the cloud server system 100 to various customer terminals.

또한, 사용자 장치는 클라우드 서버 시스템(100)의 서버를 통해 적어도 하나의 제어 장치를 제어하기 위한 명령을 고객 단말로부터 입력 받을 수도 있다.Also, the user device may receive a command for controlling at least one control device from the customer terminal through the server of the cloud server system 100 .

즉, 고객 단말로부터 적어도 하나의 제어 장치에 대한 제어 명령이 수신되면, 사용자 장치는 제어 명령을 클라우드 서버 시스템(100)의 서버로 전송할 수 있으며, 서버는 제어 장치에 해당 제어 명령을 전송할 수 있다. 그 결과, 고객 단말로부터 수신된 제어 명령에 따라 제어 장치가 원격 제어될 수도 있다. 이 경우, 고객 단말은 사용자 장치의 인증을 전제로 간접적으로 시스템 제어에 참여할 수 있다는 장점이 있다. 관련된 구체적인 실시 예는 도 4를 통해 후술한다.That is, when a control command for at least one control device is received from the customer terminal, the user device may transmit the control command to the server of the cloud server system 100 , and the server may transmit the control command to the control device. As a result, the control device may be remotely controlled according to the control command received from the customer terminal. In this case, there is an advantage that the customer terminal can indirectly participate in system control on the premise of authentication of the user device. A related specific embodiment will be described later with reference to FIG. 4 .

한편, 도 3은 본 개시의 일 실시 예에 따른 클라우드 서버 시스템의 기능적 구성을 설명하기 위한 블록도이다.Meanwhile, FIG. 3 is a block diagram illustrating a functional configuration of a cloud server system according to an embodiment of the present disclosure.

도 3을 참조하면, 클라우드 서버 시스템(100)은 분산 처리부(101), 접점 인터페이스부(102), 클러스터링 메시지 처리부(103), 모니터링부(104), 수집부(105), 저장부(106), 훈련부(107), 분석부(108), 과금부(109), 설정부(110) 등으로 구분될 수 있다. 본 구성들은 클라우드 서버 시스템(100) 내에서 소프트웨어 및/또는 하드웨어를 기반으로 구분될 수 있다.Referring to FIG. 3 , the cloud server system 100 includes a distributed processing unit 101 , a contact interface unit 102 , a clustering message processing unit 103 , a monitoring unit 104 , a collection unit 105 , and a storage unit 106 . , a training unit 107 , an analysis unit 108 , a billing unit 109 , a setting unit 110 , and the like. These configurations may be divided based on software and/or hardware within the cloud server system 100 .

분산 처리부(101)는 다양한 장치(사용자 장치, 센서 장치, 제어 장치 등)로부터 수신되는 데이터를 분산 처리하기 위한 구성이다.The distributed processing unit 101 is a configuration for distributed processing of data received from various devices (user device, sensor device, control device, etc.).

분산 처리부(101)는 소규모부터 대규모에 이르기까지 데이터 처리량에 유동적으로 대응하기 위해 복수의 서버(ex. 접점 인터페이스부 내의 각 서버)에 데이터 부하를 분산하여 전달할 수 있다.The distributed processing unit 101 may distribute and transmit a data load to a plurality of servers (eg, each server in the contact interface unit) in order to flexibly respond to data throughput ranging from small to large.

다만, 기존의 서버 전체에 부하가 발생되는 경우, 분산 처리부(101)는 추가 적으로 서버를 생성할 수 있다(Scale-Out).However, when a load is generated on the entire existing server, the distributed processing unit 101 may additionally create a server (Scale-Out).

접점 인터페이스부(102)는 사용자와의 인터페이스를 제공하는 구성으로, 적어도 하나의 웹 페이지/애플리케이션을 통해 센서 장치, 제어 장치, 사용자 장치 등과 연동될 수 있다.The contact interface unit 102 is configured to provide an interface with a user, and may be linked to a sensor device, a control device, a user device, etc. through at least one web page/application.

일 예로, 접점 인터페이스부(102)는 사용자 장치의 회원가입/로그인을 위한 웹 페이지 내지는 애플리케이션의 적어도 일부를 제공할 수 있으며, 그 밖에 사용자 장치로부터 센서 정보, 제어 정보, 모니터링/훈련/분석 프로세스를 입력 받을 수 있다.For example, the contact interface unit 102 may provide at least a part of a web page or application for membership registration/login of the user device, and other sensor information, control information, and monitoring/training/analysis processes from the user device. can be input.

또한, 접점 인터페이스부(102)는 인증번호를 설정하는 한편, 사용자 장치를 통해 인증 번호가 입력됨을 전제로 서버를 제어하기 위한 적어도 하나의 사용자 인터페이스를 사용자 장치를 통해 제공할 수 있다.Also, the contact interface unit 102 may provide at least one user interface for controlling the server through the user device on the premise that the authentication number is set while the authentication number is input through the user device.

또한, 접점 인터페이스부(102)는 사용자 장치를 통해 모니터링 정보, 분석 정보 등을 요청하는 사용자 명령이 수신되면, 모니터링부(104), 저장부(106), 분석부(108) 등으로부터 모니터링 정보, 분석 정보 등을 획득하여 사용자 장치로 전송할 수 있다.In addition, the contact interface unit 102 receives a user command requesting monitoring information, analysis information, etc. through the user device, monitoring information from the monitoring unit 104, the storage unit 106, the analysis unit 108, etc.; The analysis information may be acquired and transmitted to the user device.

접점 인터페이스부(102)는, 사용자 별로 생성된 인터페이스 서버를 통해 데이터를 송수신할 수도 있다.The contact interface unit 102 may transmit/receive data through an interface server created for each user.

클러스터링 메시지 처리부(103)는 모니터링의 대상인 센싱 데이터를 분류하고, 사용자 장치에 전송될 메시지를 관리하기 위한 구성이다.The clustering message processing unit 103 is configured to classify sensing data, which is a monitoring target, and manage messages to be transmitted to the user device.

클러스터링 메시지 처리부(103)는 수신되는 센싱 데이터를 각 저장 형태에 맞게 사용되도록 분류할 수 있으며, 센싱 데이터를 모니터링부(104) 또는 수집부(105) 등으로 전송할 수 있다.The clustering message processing unit 103 may classify the received sensing data to be used according to each storage type, and may transmit the sensing data to the monitoring unit 104 or the collecting unit 105 .

클러스터링 메시지 처리부(103)는 사용자 별로 생성된 큐 서버를 통해 데이터를 분류할 수 있으며, 클러스터링 메시지 처리부(103)는 센싱 데이터를 FIFO(First In First Out) 방식으로 모니터링부(104), 수집부(105) 등으로 출력할 수 있다. 이 경우, 시간의 흐름에 따른 센싱 데이터의 실시간 모니터링이 가능하다.The clustering message processing unit 103 may classify data through a queue server created for each user, and the clustering message processing unit 103 collects the sensing data in a FIFO (First In First Out) method. 105), etc. In this case, real-time monitoring of the sensed data according to the passage of time is possible.

그리고, 큐 서버에 임계치 이상의 부하가 발생할 경우, 큐 서버가 추가로 생성되어 이용될 수 있다.And, when a load greater than a threshold is generated on the queue server, a queue server may be additionally created and used.

또한, 클러스터링 메시지 처리부(103)는 모니터링 정보 또는 분석 정보를 기반으로 적어도 하나의 알림 메시지 또는 제어 명령을 획득할 수 있다. 이 경우, 클러스터링 메시지 처리부(103)는 알림 메시지를 사용자 장치로 전송하거나 제어 명령을 제어 장치로 전송할 수 있다.Also, the clustering message processing unit 103 may acquire at least one notification message or a control command based on monitoring information or analysis information. In this case, the clustering message processing unit 103 may transmit a notification message to the user device or a control command to the control device.

모니터링부(104)는 센싱 데이터를 모니터링하기 위한 구성이다.The monitoring unit 104 is configured to monitor the sensed data.

모니터링부(104)는 사용자 별로 생성된 서버를 통해 모니터링을 수행할 수 있다.The monitoring unit 104 may perform monitoring through a server created for each user.

모니터링부(104)는 클러스터링 메시지 처리부(103)로부터 수신된 센싱 데이터를 모니터링하는 한편, 센싱 데이터가 기설정된 조건을 만족하는 경우, 센싱 데이터가 기설정된 조건을 만족함을 알리는 신호를 클러스터링 메시지 처리부(103)로 전송할 수 있다.The monitoring unit 104 monitors the sensed data received from the clustering message processing unit 103, and when the sensed data satisfies a preset condition, sends a signal indicating that the sensed data satisfies the preset condition, the clustering message processing unit 103 ) can be transmitted.

이 경우, 클러스터링 메시지 처리부(103) 및 접점 인터페이스부(102)를 통해 적어도 하나의 알림 또는 제어 명령이 사용자 장치 또는 제어 장치로 전송될 수 있다.In this case, at least one notification or control command may be transmitted to the user device or the control device through the clustering message processing unit 103 and the contact interface unit 102 .

수집부(105)는 센싱 데이터를 수집하여 유동적으로 관리하기 위한 구성이다. 수집부(105)는 사용자 별로 생성된 서버를 통해 데이터의 수집/저장을 관리할 수 있다.The collection unit 105 is configured to collect and flexibly manage sensing data. The collection unit 105 may manage the collection/storage of data through a server created for each user.

수집부(105)는 센싱 데이터를 다양한 형태/방식으로 저장부(106) 상에 저장할 수 있다. 예를 들어, 수집부(105)는 수집된 센싱 데이터가 일정 기간 동안 저장부(106)에 저장되었다가, 해당 기간이 도과하면 삭제되도록 제어할 수 있다.The collection unit 105 may store the sensed data on the storage unit 106 in various forms/methods. For example, the collection unit 105 may control the collected sensing data to be stored in the storage unit 106 for a certain period of time and then deleted when the corresponding period has elapsed.

저장부(106)는 다양한 센싱 데이터, 모니터링 정보, 분석 정보, 인공지능 모델 등을 저장하기 위한 구성으로, 사용자 별로 별도의 저장 공간을 확보하여 상술한 데이터를 저장할 수 있다.The storage unit 106 is configured to store various sensing data, monitoring information, analysis information, artificial intelligence model, and the like, and may store the above-described data by securing a separate storage space for each user.

저장부(106)는 관계형 분산 스토리지, 타임시리즈 스토리지, 비정형 스토리지, 기타 데이터형 스토리지 등 다양한 형태의 스토리지를 포함할 수 있다.The storage unit 106 may include various types of storage such as relational distributed storage, time series storage, unstructured storage, and other data type storage.

훈련부(107)는 수집된 센싱 데이터를 이용하여 인공지능 모델을 훈련시키기 위한 구성이다.The training unit 107 is configured to train an artificial intelligence model using the collected sensing data.

훈련부(107)는 사용자 입력에 따라 적어도 하나의 인공지능 모델의 입력 및 출력을 정의할 수 있으며, 사용자 입력에 따라 센싱 데이터 중 적어도 일부를 훈련 데이터로 지정할 수 있다.The training unit 107 may define inputs and outputs of at least one artificial intelligence model according to a user input, and may designate at least a portion of the sensed data as training data according to the user input.

훈련부(107)는 사용자 별로 생성된 훈련 서버를 이용할 수 있으며, 적어도 하나의 인공지능 전용 프로세서를 이용할 수 있다.The training unit 107 may use a training server created for each user, and may use at least one AI-only processor.

분석부(108)는 센싱 데이터, 모니터링 정보 등을 분석하여 분석 정보를 획득하기 위한 구성이다.The analysis unit 108 is configured to obtain analysis information by analyzing sensing data, monitoring information, and the like.

분석부(108)는 저장된 센싱 데이터, 모니터링 정보, 훈련된 인공지능 모델 등을 이용하여 센싱 데이터를 분석할 수 있다.The analysis unit 108 may analyze the sensed data using the stored sensing data, monitoring information, a trained artificial intelligence model, and the like.

구체적으로, 분석부(108)는 센서 장치의 결함/고장, 클라우드 서버 시스템(100)의 결함/고장, 제어 장치 또는 제어 장비의 결함/고장, 센서 장치와 클라우드 서버 시스템(100) 간 통신 상태 등의 결함/고장 등을 판단할 수 있다.Specifically, the analysis unit 108 is a defect/failure of the sensor device, a defect/failure of the cloud server system 100, a defect/failure of a control device or control equipment, a communication state between the sensor device and the cloud server system 100, etc. Defects/failures can be determined.

또한, 분석부(108)는 센싱 데이터 내지는 모니터링 정보와 관련된 다양한 통계 분석 데이터를 획득할 수 있다.Also, the analysis unit 108 may acquire various statistical analysis data related to sensing data or monitoring information.

과금부(109)는 상술한 다양한 구성들을 통해 수행된 연산량, 트래픽량, 부하량 등을 사용자 별로 산정하여, 과금 정보를 생성하기 위한 구성이다.The billing unit 109 is a configuration for generating billing information by calculating for each user the amount of computation, traffic, and load performed through the various configurations described above.

접점 인터페이스부(102)는 과금부(109)를 통해 생성된 과금 정보를 웹 페이지/애플리케이션을 통해 사용자 장치로 제공할 수 있다.The contact interface unit 102 may provide the charging information generated through the charging unit 109 to the user device through a web page/application.

과금부(109)는 적어도 하나의 과금 서버를 생성/할당하여 이용할 수 있는 바, 과금 서버는 사용자 별로 생성될 수도 있고, 복수의 사용자에 대하여 하나의 과금 서버가 이용될 수도 있다.The billing unit 109 may generate/allocate and use at least one billing server, and the billing server may be created for each user or one billing server may be used for a plurality of users.

설정부(110)는 데이터 통신, 데이터 수집, 데이터 가공, 데이터 분석, 데이터 제공과 관련된 다양한 설정을 관리하기 위한 구성이다.The setting unit 110 is a configuration for managing various settings related to data communication, data collection, data processing, data analysis, and data provision.

구체적으로, 설정부(110)는 사용자 장치를 통해 수신되는 사용자 입력을 기반으로 모니터링 프로세스, 분석 프로세스, 훈련 프로세스 등을 설정할 수 있다. 이때, 사용자 입력은 적어도 하나의 인스트럭션 내지는 명령어의 형태로 수신될 수 있으나 이에 한정되지 않는다.Specifically, the setting unit 110 may set a monitoring process, an analysis process, a training process, etc. based on a user input received through the user device. In this case, the user input may be received in the form of at least one instruction or a command, but is not limited thereto.

또한, 설정부(110)는 센서 장치/제어 장치와 통신을 수행하기 위한 프로토콜, 센싱 데이터 저장 방식, 통계 및 인사이트 정보 등 다양한 항목을 설정할 수 있다.In addition, the setting unit 110 may set various items such as a protocol for performing communication with the sensor device/control device, a sensing data storage method, and statistics and insight information.

또한, 설정부(110)는 사용자에게 모니터링 정보/분석 정보가 제공되는 방식(ex. 웹 페이지, 제공 주기 등에 대한 정보)을 설정할 수도 있다.Also, the setting unit 110 may set a method in which monitoring information/analysis information is provided to a user (eg, information on a web page, a provision period, etc.).

설정부(110)는 적어도 하나의 설정 서버를 생성/할당하여 이용할 수 있는 바, 설정 서버는 사용자 별로 생성될 수도 있고, 복수의 사용자에 대하여 하나의 설정 서버가 이용될 수도 있다.The setting unit 110 may generate/allocate and use at least one setting server, and the setting server may be created for each user or one setting server may be used for a plurality of users.

한편, 도 4는 본 개시의 일 실시 예에 따른 클라우드 서버 시스템이 다양한 모니터링 시스템에 개별적으로 기여하는 동작을 설명하기 위한 블록도이다.Meanwhile, FIG. 4 is a block diagram illustrating an operation of individually contributing to various monitoring systems by the cloud server system according to an embodiment of the present disclosure.

도 4를 참조하면, 클라우드 서버 시스템(100)은, 사용자 장치(411)의 환경 연구 시스템(410)에는 서버(410')를 할당하고, 사용자 장치(421)의 스마트 팜 시스템(420)에는 서버(420')를 할당할 수 있다.Referring to FIG. 4 , the cloud server system 100 allocates a server 410 ′ to the environment research system 410 of the user device 411 , and a server to the smart farm system 420 of the user device 421 . (420') may be assigned.

구체적인 예로, 사용자 장치(411)가 전국 각지의 미세먼지 연구를 수행하는 환경 관련 연구소의 서버/단말인 경우를 가정한다. As a specific example, it is assumed that the user device 411 is a server/terminal of an environment-related research institute that conducts fine dust research across the country.

그리고, 도 4의 센서 장치들(412, 413, …)은 본 연구소가 전국 각지에 설치한 미세먼지 센서 장치로서 범용 프로토콜로 연동이 가능한 장치들에 해당할 수 있다.And, the sensor devices 412, 413, ... of FIG. 4 are fine dust sensor devices installed in various parts of the country by the Institute, and may correspond to devices capable of interworking with a universal protocol.

이 경우, 사용자 장치(411)는 본 개시에 따른 클라우드 서버 시스템(100)에 시스템에 접속하여 계정 생성(회원가입)을 하고, 프로젝트 그룹(: 환경 연구 시스템)을 생성할 수 있다.In this case, the user device 411 may access the system to the cloud server system 100 according to the present disclosure, create an account (member registration), and create a project group (: environment research system).

그 결과, 클라우드 서버 시스템(100)은 해당 프로젝트에 매칭되는 적어도 하나의 서버를 생성할 수 있다.As a result, the cloud server system 100 may generate at least one server matching the corresponding project.

그리고, 클라우드 서버 시스템(100)과 연동된 사용자 장치(411)는 미세먼지 센서들(412, 413)의 식별 정보/통신 정보 등록과 함께 수집 주기, 저장 기간, 훈련 프로세스, 수집 통계 등을 설정할 수 있다. And, the user device 411 interlocked with the cloud server system 100 can set the collection period, storage period, training process, collection statistics, etc. along with registration of identification information/communication information of the fine dust sensors 412 and 413 . have.

또한, 사용자 장치(411)는 서버에 접속이 가능한 인증 번호를 설정하거나 또는 클라우드 서버 시스템(100)으로부터 인증 번호(코드)를 제공받을 수 있다.Also, the user device 411 may set an authentication number that allows access to the server or may receive an authentication number (code) from the cloud server system 100 .

다만, 일 예로, 해당 연구소는 분 단위로 정시 데이터를 통해 미세먼지에 대한 영향도를 평가하기 원하지만, 현장 데이터를 살펴보니 계측 시점이 미묘하게 어긋나는 경우가 발생할 수 있다.However, as an example, the research institute wants to evaluate the degree of impact on fine dust through on-time data on a minute-by-minute basis.

이 경우, 사용자 입력을 바탕으로, 사용자 장치(411)는 서버(410')가 분석 전에 센싱 데이터에 대한 전처리(ex. 모니터링 시점 조정)를 수행하도록 설정할 수 있다.In this case, based on the user input, the user device 411 may set the server 410 ′ to perform pre-processing (eg, monitoring timing adjustment) on the sensed data before analysis.

또한, 클라우드 서버 시스템(100)은 서버(410')를 통해 모니터링되는 센싱 데이터 내지는 모니터링 정보를 실시간으로 사용자 장치(411)에 제공할 수 있다. 이 경우, 해당 연구소 측은 센싱 데이터가 서버(410') 상에서 원활하게 수집되고 있는지 확인할 수 있다.Also, the cloud server system 100 may provide sensing data or monitoring information monitored through the server 410 ′ to the user device 411 in real time. In this case, the laboratory side may check whether the sensing data is being smoothly collected on the server 410 ′.

만약, 수집 주기, 통계 정보 등에 이상이 발견되는 경우, 연구소 측은 사용자 장치(411)를 통해 서버(410')에 접속하여 네트워크 방식을 변경하는 등의 설정을 수행할 수도 있다.If an abnormality is found in the collection period, statistical information, etc., the laboratory may access the server 410 ′ through the user device 411 to perform settings such as changing the network method.

한편, 사용자 장치(411)는 서버(410')로부터 수신되는 모니터링 정보 또는 분석 정보를 추가적으로 분석할 수도 있다.Meanwhile, the user device 411 may additionally analyze monitoring information or analysis information received from the server 410 ′.

이때, 사용자 장치(411)는 서버(410')로부터 수신되는 모니터링 정보/분석 정보에 대한 추가 분석을 적어도 하나의 애플리케이션을 통해 수행할 수도 있으며, 해당 애플리케이션을 통해 추가 분석 정보를 다양한 고객 단말로 제공할 수도 있다. 이때, 사용자 장치(411)는 적어도 하나의 추가적인 외부 서버를 이용할 수도 있다.In this case, the user device 411 may perform additional analysis on the monitoring information/analysis information received from the server 410 ′ through at least one application, and provides additional analysis information to various customer terminals through the application. You may. In this case, the user device 411 may use at least one additional external server.

이렇듯, 클라우드 서버 시스템(100)의 서버(410')가 이용되는 경우, 향후 센서 장치 내지는 제어 장치가 추가되더라도 사용자 측의 설비 확장에 부담이 크지 않다는 장점이 있고, 적어도 하나의 애플리케이션을 추가로 연동하여 데이터를 이용할 수 있다는 장점도 있다.As such, when the server 410' of the cloud server system 100 is used, even if a sensor device or a control device is added in the future, there is an advantage that the user's facility expansion is not burdensome, and at least one application is additionally interlocked. It also has the advantage of being able to use the data.

또한, 구체적인 예로, 사용자 장치(421)가 스마트 팜의 관리자 또는 운영자의 서버/단말인 경우를 가정한다.Also, as a specific example, it is assumed that the user device 421 is a server/terminal of an administrator or operator of a smart farm.

본 관리자/운영자는, 스마트 팜 서비스를 제공하는 사업자일 수 있다.The manager/operator may be an operator that provides a smart farm service.

구체적으로, 본 관리자/운영자는, 밭과 비닐하우스 등의 온도나 토양 품질을 측정하기 위한 센서 장치들(422, 423, …)을 설치 및 관리할 수 있다. 또한, 본 관리자/운영자는, 자동 급수 장치, 온풍기, 팬 등 농업 환경을 제어하기 위한 다양한 제어 장치(424)를 설치 및 관리할 수 있다.Specifically, the manager/operator may install and manage the sensor devices 422, 423, ... for measuring the temperature or soil quality of fields and plastic houses. In addition, the manager/operator may install and manage various control devices 424 for controlling the agricultural environment, such as an automatic water supply device, a hot air fan, and a fan.

이 경우, 사용자 장치(421)는, 사용자 입력을 기반으로 클라우드 서버 시스템(100)에 접속하여 계정 생성을 하고, 프로젝트 그룹(스마트 팜 시스템(420))을 생성할 수 있다. 그 결과, 클라우드 서버 시스템(100)은 사용자 장치(421)를 위한 적어도 하나의 서버(420')를 생성/할당할 수 있다.In this case, the user device 421 may access the cloud server system 100 based on a user input to create an account and create a project group (smart farm system 420 ). As a result, the cloud server system 100 may create/allocate at least one server 420 ′ for the user device 421 .

그리고, 사용자 장치(421)는 사용자 입력을 기반으로 센서 장치들(422, 423, …) 및 제어 장치들(424, …)의 식별 정보/통신 정보를 등록할 수 있다.In addition, the user device 421 may register identification information/communication information of the sensor devices 422 , 423 , ... and the control devices 424 , ... based on a user input.

또한, 사용자 장치(421)는 서버(420')에 대한 접속을 위한 인증 번호를 설정하거나 또는 클라우드 서버 시스템(100)으로부터 인증 번호(코드)를 제공받을 수도 있다.Also, the user device 421 may set an authentication number for access to the server 420 ′ or may receive an authentication number (code) from the cloud server system 100 .

사용자 장치(421)는 사용자 입력을 기반으로 서버(420')의 동작과 관련된 다양한 설정을 클라우드 서버 시스템(100) 상에 등록할 수 있다. The user device 421 may register various settings related to the operation of the server 420 ′ on the cloud server system 100 based on a user input.

구체적으로, 사용자 장치(421)는 서버(420')의 센싱 데이터 수집 주기, 저장 기간, 훈련 프로세스, 고장 유무 판별, 분석을 통한 제어 지원 기능 등을 선택하여 활성화시킬 수 있다.Specifically, the user device 421 may select and activate the sensing data collection period, storage period, training process, failure determination, and control support function through analysis of the server 420 ′.

이 경우, 스마트 팜 시스템(420)의 관리자(: 사용자 장치(421)의 사용자)는, 별도 서버의 구축 없이도, 센싱 데이터의 모니터링 결과에 따라 제어 장치(424)의 자동 제어 서비스를 제공할 수 있는 스마트 팜 서비스를 제공할 수 있다.In this case, the manager of the smart farm system 420 (: the user of the user device 421) can provide an automatic control service of the control device 424 according to the monitoring result of the sensing data without establishing a separate server. Smart farm services can be provided.

또한, 스마트 팜 시스템(420)은 서버(420')에서 제공되는 센싱 데이터, 모니터링 정보, 분석 정보와 연동된 사용자용 홈페이지(또는 애플리케이션)를 구성하여 다양한 고객 단말(ex. 스마트 팜 서비스를 제공받는 농업 종사자)에 제공할 수 있다.In addition, the smart farm system 420 configures a user homepage (or application) linked with the sensing data, monitoring information, and analysis information provided by the server 420 ′ to receive various customer terminals (eg, smart farm services provided). agricultural workers).

여기서, 사용자 장치(421)는 웹 페이지/애플리케이션을 통해 제어 장치(424)의 조작을 위한 다양한 UI(User Interface)를 고객 단말로 제공할 수 있으며, 해당 UI를 통해 수신되는 고객 단말(고객)의 명령을 서버(420')로 전송할 수 있다. 그 결과, 서버(420')의 제어를 받는 제어 장치(424)는 고객 단말로부터 수신되는 명령에 따라 동작할 수 있다.Here, the user device 421 may provide various UI (User Interface) for operation of the control device 424 to the customer terminal through a web page/application, and the customer terminal (customer) received through the UI The command may be sent to the server 420'. As a result, the control device 424 under the control of the server 420 ′ may operate according to a command received from the customer terminal.

이 경우, 사용자 장치(421)의 사용자(: 스마트 팜 서비스를 제공하는 관리자) 뿐 아니라, 고객 역시, 고객 단말을 통해 사용자 장치(421)가 제공하는 웹 페이지에 접속함으로써 서버(420')와 연동되어 제어 장치(424)를 제어할 수 있다는 장점이 있다.In this case, not only the user of the user device 421 (the administrator who provides the smart farm service) but also the customer accesses the web page provided by the user device 421 through the customer terminal, thereby interworking with the server 420 ′. There is an advantage of being able to control the control device 424 .

한편, 비록 도 4에서는 각 서버(410', 420')가 별도의 시스템들(410, 420)에 독립적으로 적용되는 실시 예만을 기재하였으나, 각 서버(410', 420')의 동작이 각각 하나의 시스템 내에만 한정되어야 하는 것은 아니다. 즉, 각 서버(410', 420')로서 동작하는 컴퓨터/프로세서/코어의 동작이 하나의 시스템 내에만 한정되어야 하는 것은 아니다.Meanwhile, although only an embodiment in which each server 410', 420' is independently applied to separate systems 410 and 420 is described in FIG. 4, each of the servers 410' and 420' performs one operation. It does not have to be limited only within the system of That is, the operation of the computer/processor/core operating as each of the servers 410' and 420' is not limited to one system.

예를 들어, 사용자 장치(411)가 환경 연구 시스템(410)에 대하여 초기 설정한 서버(410')의 사용량이 크지 않은 경우(일정치 미만), 서버(410')를 구성하는 적어도 하나의 컴퓨터/프로세서/코어 등은 유동적으로 다른 시스템(ex. 스마트 팜 시스템(420))의 센싱 데이터에 대한 모니터링/분석을 수행하도록 할당될 수도 있다.For example, when the amount of use of the server 410 ′ initially set by the user device 411 for the environmental research system 410 is not large (less than a predetermined value), at least one computer constituting the server 410 ′. The /processor/core may be flexibly assigned to perform monitoring/analysis of sensing data of another system (eg, the smart farm system 420 ).

한편, 이상에서 환경 연구 시스템(410), 스마트 팜 시스템(420)으로 각각 예를 들어 설명한 다양한 실시 예들은, 반드시 환경 연구 내지는 스마트 팜 용도의 시스템에만 한정적으로 적용되는 것이 아니라, 이 밖에도 다양한 용도의 시스템 및 사용자에 대해 적용될 수 있음은 물론인 바, 본 개시에 따른 실시 예가 시스템의 특정 용도로 한정되는 것으로 해석되어서는 안 된다.On the other hand, the various embodiments described above as examples of the environmental research system 410 and the smart farm system 420 are not necessarily applied only to systems for environmental research or smart farm use, but also for various other uses. Of course, it can be applied to a system and a user, and the embodiment according to the present disclosure should not be construed as being limited to a specific use of the system.

한편, 이상에서 설명된 다양한 실시 예들은 서로 저촉되거나 모순되지 않는 한, 두 개 이상이 실시 예가 결합되어 구현될 수 있다.Meanwhile, the various embodiments described above may be implemented by combining two or more embodiments as long as they do not conflict with or contradict each other.

한편, 이상에서 설명된 다양한 실시 예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합된 것을 이용하여 컴퓨터(computer) 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다.Meanwhile, the various embodiments described above may be implemented in a recording medium readable by a computer or a similar device using software, hardware, or a combination thereof.

하드웨어적인 구현에 의하면, 본 개시에서 설명되는 실시 예들은 ASICs(Application Specific Integrated Circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서(processors), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적인 유닛(unit) 중 적어도 하나를 이용하여 구현될 수 있다. According to the hardware implementation, the embodiments described in the present disclosure are ASICs (Application Specific Integrated Circuits), DSPs (digital signal processors), DSPDs (digital signal processing devices), PLDs (programmable logic devices), FPGAs (field programmable gate arrays) ), processors, controllers, micro-controllers, microprocessors, and other electrical units for performing other functions may be implemented using at least one.

일부의 경우에 본 명세서에서 설명되는 실시 예들이 프로세서 자체로 구현될 수 있다. 소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시 예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 상술한 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 작동을 수행할 수 있다.In some cases, the embodiments described herein may be implemented by the processor itself. According to the software implementation, embodiments such as procedures and functions described in this specification may be implemented as separate software modules. Each of the software modules described above may perform one or more functions and operations described herein.

한편, 상술한 본 개시의 다양한 실시 예들에 따른 시스템(100) 내 적어도 하나의 전자 장치에서의 처리동작을 수행하기 위한 컴퓨터 명령어(computer instructions) 또는 컴퓨터 프로그램은 비일시적 컴퓨터 판독 가능 매체(non-transitory computer-readable medium)에 저장될 수 있다. 이러한 비일시적 컴퓨터 판독 가능 매체에 저장된 컴퓨터 명령어 또는 컴퓨터 프로그램은 특정 기기의 프로세서에 의해 실행되었을 때 상술한 다양한 실시 예에 따른 각 장치/시스템에서의 처리 동작을 상술한 특정 기기가 수행하도록 한다. Meanwhile, computer instructions or computer programs for performing processing operations in at least one electronic device in the system 100 according to various embodiments of the present disclosure described above are non-transitory computer readable media (non-transitory). may be stored in a computer-readable medium). When the computer instructions or computer program stored in such a non-transitory computer-readable medium are executed by the processor of the specific device, the specific device performs the processing operation in each device/system according to the various embodiments described above.

비일시적 컴퓨터 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 비일시적 컴퓨터 판독 가능 매체의 구체적인 예로는, CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등이 있을 수 있다.The non-transitory computer-readable medium refers to a medium that stores data semi-permanently, not a medium that stores data for a short moment, such as a register, cache, memory, etc., and can be read by a device. Specific examples of the non-transitory computer-readable medium may include a CD, DVD, hard disk, Blu-ray disk, USB, memory card, ROM, and the like.

이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시에 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.In the above, preferred embodiments of the present disclosure have been illustrated and described, but the present disclosure is not limited to the specific embodiments described above, and it is common in the technical field pertaining to the present disclosure without departing from the gist of the present disclosure as claimed in the claims. Various modifications may be made by those having the knowledge of

100: 클라우드 서버 시스템100: cloud server system

Claims (8)

적어도 하나의 사용자 장치와 통신을 수행하는 클라우드 서버 시스템의 제어 방법에 있어서,
상기 사용자 장치를 통해 사용자 정보가 입력되면, 상기 사용자 정보에 매칭되는 적어도 하나의 서버를 생성하는 단계;
상기 사용자 장치를 통해 센서 정보가 입력되면, 상기 센서 정보에 매칭되는 적어도 하나의 센서 장치를 식별하는 단계;
상기 사용자 장치를 통해 수신되는 사용자 입력을 기반으로, 상기 서버의 모니터링 프로세스를 설정하는 단계;
상기 서버가, 상기 식별된 센서 장치로부터 수신되는 센싱 데이터를 상기 설정된 모니터링 프로세스에 따라 모니터링하는 단계; 및
상기 서버의 모니터링에 따라 획득된 모니터링 정보를 상기 사용자 장치로 전송하는 단계;를 포함하고,
상기 클라우드 서버 시스템의 제어 방법은,
상기 서버의 연산량, 상기 서버의 데이터 사용량, 및 상기 서버의 데이터 통신량 중 적어도 하나에 따른 과금 정책을 기반으로 상기 사용자 장치의 사용자에 대한 과금 정보를 생성하는 단계;
상기 서버가, 상기 센서 장치로부터 수신된 센싱 데이터를 분석하여, 상기 센서 장치의 동작 및 상기 센서 장치와 상기 서버 간의 통신 상태를 진단하는 단계; 및
상기 센서 장치의 동작 또는 상기 통신 상태에 결함이 발생한 경우, 상기 사용자 장치로 상기 결함의 발생을 알리는 정보를 전송하는 단계;를 더 포함하고,
상기 과금 정보를 획득하는 단계는,
상기 센서 장치의 동작 및 상기 통신 상태에 결함이 발생하지 않은 시간 구간에 대해서는, 제1 과금 정책을 기반으로 과금 정보를 생성하고,
상기 센서 장치의 동작 및 상기 통신 상태 중 적어도 하나에 결함이 발생한 시간 구간에 대해서는, 상기 제1 과금 정책과 다른 제2 과금 정책을 기반으로 과금 정보를 생성하고,
상기 센서 장치의 동작에 결함이 발생하여 상기 결함의 발생을 알리는 정보가 상기 사용자 장치로 전송된 이후 일정 시간이 경과하면, 상기 제1 과금 정책을 기반으로 과금 정보를 생성하고,
상기 일정 시간은,
발생한 결함의 종류, 결함이 발생한 센서 장치의 종류, 및 결함이 발생한 센서 장치의 수에 따라 설정되는, 클라우드 서버 시스템의 제어 방법.
In the control method of a cloud server system for performing communication with at least one user device,
generating at least one server matching the user information when user information is input through the user device;
identifying at least one sensor device matching the sensor information when sensor information is input through the user device;
setting a monitoring process of the server based on a user input received through the user device;
monitoring, by the server, sensing data received from the identified sensor device according to the set monitoring process; and
Transmitting the monitoring information obtained according to the monitoring of the server to the user device; including,
The control method of the cloud server system,
generating billing information for a user of the user device based on a billing policy according to at least one of the amount of computation of the server, the amount of data used by the server, and the amount of data communication of the server;
analyzing, by the server, the sensed data received from the sensor device, diagnosing an operation of the sensor device and a communication state between the sensor device and the server; and
When a defect occurs in the operation or the communication state of the sensor device, transmitting information notifying the occurrence of the defect to the user device; further comprising,
The step of obtaining the charging information includes:
For a time period in which a defect does not occur in the operation of the sensor device and the communication state, billing information is generated based on the first billing policy,
For a time period in which a defect occurs in at least one of the operation of the sensor device and the communication state, generating billing information based on a second billing policy different from the first billing policy,
When a predetermined time elapses after information indicating the occurrence of the defect is transmitted to the user device due to a defect in the operation of the sensor device, generating billing information based on the first billing policy,
The predetermined time is
A control method of a cloud server system, which is set according to a type of a defect that has occurred, a type of a sensor device in which the defect has occurred, and the number of sensor devices in which a defect has occurred.
제1항에 있어서,
상기 클라우드 서버 시스템의 제어 방법은,
상기 사용자 장치를 통해 추가적인 센서 정보가 입력되면, 상기 추가적인 센서 정보에 매칭되는 다른 센서 장치를 식별하는 단계;를 더 포함하고,
상기 모니터링하는 단계는,
상기 서버를 통해, 상기 식별된 센서 장치 및 상기 식별된 다른 센서 장치 각각에서 수신되는 센싱 데이터를 상기 설정된 모니터링 프로세스에 따라 모니터링하는, 클라우드 서버 시스템의 제어 방법.
According to claim 1,
The control method of the cloud server system,
When additional sensor information is input through the user device, identifying another sensor device matching the additional sensor information; further comprising,
The monitoring step is
A control method of a cloud server system for monitoring, through the server, sensing data received from each of the identified sensor device and the other identified sensor device according to the set monitoring process.
제1항에 있어서,
상기 클라우드 서버 시스템의 제어 방법은,
상기 사용자 장치를 통해 제어 정보가 입력되면, 상기 제어 정보에 매칭되는 적어도 하나의 제어 장치를 식별하는 단계;
상기 수신된 센싱 데이터가 상기 제어 정보에 매칭되는 기설정된 조건을 만족하는 경우, 상기 서버가, 상기 제어 정보를 기반으로 상기 제어 장치를 위한 명령을 생성하는 단계; 및
상기 생성된 명령을 상기 제어 장치로 전송하는 단계;를 더 포함하는, 클라우드 서버 시스템의 제어 방법.
According to claim 1,
The control method of the cloud server system,
when control information is input through the user device, identifying at least one control device matching the control information;
generating, by the server, a command for the control device based on the control information when the received sensing data satisfies a preset condition matching the control information; and
Transmitting the generated command to the control device; further comprising a control method of the cloud server system.
제1항에 있어서,
상기 클라우드 서버 시스템의 제어 방법은,
상기 사용자 장치를 통해 수신되는 사용자 입력을 기반으로, 적어도 하나의 인공지능 모델의 훈련 프로세스를 설정하는 단계;
상기 서버가, 상기 설정된 훈련 프로세스에 따라 상기 수신된 센싱 데이터를 적용하여 상기 인공지능 모델을 훈련시키는 단계; 및
상기 서버가, 상기 인공지능 모델을 이용하여 상기 수신된 센싱 데이터에 대한 분석 정보를 획득하는 단계;를 더 포함하는, 클라우드 서버 시스템의 제어 방법.
According to claim 1,
The control method of the cloud server system,
setting a training process for at least one artificial intelligence model based on a user input received through the user device;
training, by the server, the artificial intelligence model by applying the received sensing data according to the set training process; and
Obtaining, by the server, analysis information on the received sensing data using the artificial intelligence model; further comprising, a control method of a cloud server system.
삭제delete 삭제delete 제1항에 있어서,
상기 클라우드 서버 시스템의 제어 방법은,
상기 서버에 임계치 이상의 부하가 발생한 경우, 상기 사용자 정보에 매칭되는 적어도 하나의 서버를 추가로 생성하는 단계;를 더 포함하는, 클라우드 서버 시스템의 제어 방법.
According to claim 1,
The control method of the cloud server system,
When a load greater than a threshold is generated on the server, additionally generating at least one server matching the user information; further comprising, a control method of a cloud server system.
제1항에 있어서,
상기 적어도 하나의 서버는,
센싱 데이터를 수집하는 수집 서버;
센싱 데이터를 모니터링하는 모니터링 서버;
센싱 데이터를 기반으로 인공지능 모델을 훈련시키는 훈련 서버; 및
센싱 데이터를 분석하는 분석 서버;를 포함하는, 클라우드 서버 시스템의 제어 방법.
According to claim 1,
The at least one server,
a collection server for collecting sensing data;
Monitoring server for monitoring the sensed data;
a training server that trains an artificial intelligence model based on the sensed data; and
A control method of a cloud server system, including; an analysis server that analyzes the sensed data.
KR1020210029386A 2021-03-05 2021-03-05 Cloud server system for managing and analyzing sensing data for each user, and control method KR102339131B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210029386A KR102339131B1 (en) 2021-03-05 2021-03-05 Cloud server system for managing and analyzing sensing data for each user, and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210029386A KR102339131B1 (en) 2021-03-05 2021-03-05 Cloud server system for managing and analyzing sensing data for each user, and control method

Publications (1)

Publication Number Publication Date
KR102339131B1 true KR102339131B1 (en) 2021-12-15

Family

ID=78865773

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210029386A KR102339131B1 (en) 2021-03-05 2021-03-05 Cloud server system for managing and analyzing sensing data for each user, and control method

Country Status (1)

Country Link
KR (1) KR102339131B1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160019715A (en) * 2014-08-12 2016-02-22 전자부품연구원 Cloud Server and the Management Method of Data Flow
JP2016139339A (en) * 2015-01-28 2016-08-04 富士通株式会社 Accounting device, accounting method, and accounting program
KR101727059B1 (en) 2016-08-17 2017-04-14 맹상영 System and method for providing cloud console selectively using a plurality of server
KR20200037816A (en) * 2017-08-02 2020-04-09 스트롱 포스 아이오티 포트폴리오 2016, 엘엘씨 Methods and systems for detection in an industrial Internet of Things data collection environment with large data sets
KR20200091524A (en) * 2019-01-22 2020-07-31 선문대학교 산학협력단 Crop management system
KR20200120980A (en) * 2019-04-08 2020-10-23 주식회사 컴퓨터메이트 Smart factory operation system and method thereof

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160019715A (en) * 2014-08-12 2016-02-22 전자부품연구원 Cloud Server and the Management Method of Data Flow
JP2016139339A (en) * 2015-01-28 2016-08-04 富士通株式会社 Accounting device, accounting method, and accounting program
KR101727059B1 (en) 2016-08-17 2017-04-14 맹상영 System and method for providing cloud console selectively using a plurality of server
KR20200037816A (en) * 2017-08-02 2020-04-09 스트롱 포스 아이오티 포트폴리오 2016, 엘엘씨 Methods and systems for detection in an industrial Internet of Things data collection environment with large data sets
KR20200091524A (en) * 2019-01-22 2020-07-31 선문대학교 산학협력단 Crop management system
KR20200120980A (en) * 2019-04-08 2020-10-23 주식회사 컴퓨터메이트 Smart factory operation system and method thereof

Similar Documents

Publication Publication Date Title
US10630565B2 (en) Overload management for internet of things (IoT) gateways
US11163275B2 (en) Collaborative adjustment of resources within a managed environment
US8880925B2 (en) Techniques for utilizing energy usage information
US10305773B2 (en) Device identity augmentation
Rafsanjani et al. iSEA: IoT-based smartphone energy assistant for prompting energy-aware behaviors in commercial buildings
US20200241516A1 (en) Devices, methods, and systems for a distributed rule based automated fault detection
CN106403188A (en) Air-conditioner maintenance method and device
CN112926791A (en) Computer room temperature distribution prediction method and system
US10591944B2 (en) Open automated demand response (OpenADR) server
Luján et al. Cloud computing for smart energy management (CC-SEM project)
KR102339131B1 (en) Cloud server system for managing and analyzing sensing data for each user, and control method
Vuppala et al. A scalable WSN based data center monitoring solution with probabilistic event prediction
Saari et al. Embedded Linux controlled sensor network
WO2016147298A1 (en) Recommendation device, recommendation method, and computer program
CN108122036B (en) Substation live operation and inspection auxiliary analysis method
US20190190743A1 (en) Technologies for monitoring the performance of home appliances
KR102338425B1 (en) Method, device and system for automatically setting up and monitoring application of monitoring target server based on artificial intelligence
CN102346706A (en) Server management system and method
Lim et al. A Preliminary Review of Building Informatics for Sustainable Energy Management
Phang et al. Internet of Things based architecture for additive manufacturing interface
KR101686703B1 (en) Personalized smart energy saving system using network flow monitoring
US20210216934A1 (en) Managing flexible grid resources
US20220344937A1 (en) Building load modification responsive to utility grid events using robotic process automation
CA3070670C (en) A method and system for automatic detection of inefficient household thermal insulation
CN110268339B (en) Apparatus, system, and method for model-centric data storage

Legal Events

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