KR102187336B1 - 수질 모니터링 시스템 - Google Patents

수질 모니터링 시스템 Download PDF

Info

Publication number
KR102187336B1
KR102187336B1 KR1020190157095A KR20190157095A KR102187336B1 KR 102187336 B1 KR102187336 B1 KR 102187336B1 KR 1020190157095 A KR1020190157095 A KR 1020190157095A KR 20190157095 A KR20190157095 A KR 20190157095A KR 102187336 B1 KR102187336 B1 KR 102187336B1
Authority
KR
South Korea
Prior art keywords
water quality
data
unit
monitoring system
information
Prior art date
Application number
KR1020190157095A
Other languages
English (en)
Inventor
이현찬
Original Assignee
이현찬
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 이현찬 filed Critical 이현찬
Priority to KR1020190157095A priority Critical patent/KR102187336B1/ko
Application granted granted Critical
Publication of KR102187336B1 publication Critical patent/KR102187336B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/26Government or public services
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N33/00Investigating or analysing materials by specific methods not covered by groups G01N1/00 - G01N31/00
    • G01N33/18Water
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography
    • G06Q2220/10Usage protection of distributed data files
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02ATECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
    • Y02A20/00Water conservation; Efficient water supply; Efficient water use
    • Y02A20/152Water filtration

Landscapes

  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Chemical & Material Sciences (AREA)
  • Marketing (AREA)
  • Theoretical Computer Science (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Food Science & Technology (AREA)
  • Medicinal Chemistry (AREA)
  • Analytical Chemistry (AREA)
  • Biochemistry (AREA)
  • Immunology (AREA)
  • Pathology (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)

Abstract

본 발명은 적어도 하나의 센서, 정보수집부, 정보처리부, 통신부, 수질 정보 수집 서버로 구성되는 수질 모니터링 시스템을 제공한다. 상기 수질 모니터링 시스템은, 수온, 실제전도도, 특정 전도도, 염분도, pH, pH(mV), ORP, 용존산소농도, 산소포화도, 산소분압, 대기압, 압력, 수위로 구성되는 데이터 중 적어도 하나의 데이터를 감지하는 적어도 하나의 센서, 상기 적어도 하나의 센서로부터 감지된 데이터를 수집하는 적어도 하나의 정보수집부, 상기 적어도 하나의 정보수집부가 수집한 데이터를 분석하는 적어도 하나의 정보처리부, 상기 적어도 하나의 정보처리부에 의해서 분석된 데이터를 암호화하기 위한 블록들을 생성하는 블록체인관리부, 상기 블록체인관리부로부터 암호화된 데이터 블록들을 통신망을 통해 수질정보수집 서버로 전송하는 통신부 및 상기 통신부로부터 전송 받은 암호화된 수질정보 데이터 블록들을 해독하여 저장하고 표시장치에 표시하는 수질정보수집 서버를 포함한다.

Description

수질 모니터링 시스템 {SYSTEM FOR WATER QUALITY MONITERING}
[0001] 본 발명은 수질 모니터링을 위한 시스템에 관한 것으로, 더욱 상세하게는, IoT(Internet of Things) 기반의 수질모니터링 시스템에서 수질 센서 값 수집 RTU(Remote Terminal Unit)의 도난에 의한 프로토콜 해킹을 방지하기 위하여 블록체인을 적용으로 보안 기능을 강화하고, 외부환경의 영향으로 인한 통신 두절의 경우에도 대비하며, 통신의 안전성을 강화와 저비용 모니터링 시스템 구축을 위해 분산 시스템을 적용한 IoT 기반의 저비용 수질모니터링 시스템에 관한 것이다.
[0002] 수질관리가 필요한 장소는 여러 지역에 산재한 여러 하천, 취수장, 하수도, 배수장 등 다양하다. 일반적으로 여러 곳에 분포한 수질 관리지역에서의 수질관리는 수질 관리 책임자가 직접 현장을 방문하여 수질 측정 장비로 수질을 측정하고 기록하는 방식으로 수행되어 왔다.
[0003] 이와 같은 수질관리 방식은 정보의 정확도 및 신뢰도가 매우 낮으며, 많은 인력과 시간이 소요되는 원시적인 방법일 뿐만 아니라, 하천의 유속 및 다양한 하천 정보 역시 수질 관리 책임자의 개인적인 측정 방법의 차이로 수질관리의 정확성에 문제가 많았다.
[0004] 최근 IT 기술의 발달과 함께 IoT 기반 기술의 발전은 다양한 분야에 도입이 시도되고 있는바, IoT 기반 기술의 체계적인 도입을 통해 수질 관리지역에서의 수질관리업무 체계에도 적용하려는 노력이 이루어지고 있으며, 이러한 IoT 기반 기술은, 특히 원격지에 배치된 다수의 수질 센서들에서 측정되는 수질 데이터를 중앙 서버에서 집중 관리하는 것을 가능하게 해 주었다.
[0005] 원격지에 배치된 다수의 수질 센서들에서 측정되는 수질 데이터를 IoT 기반 기술에 의해서 중앙 서버에서 집중 관리하는 것은 대규모의 수질 모니터링 시스템에서는 여러 측면에서 편리한 점과 바람직한 측면이 많이 있지만, 소규모의 수질 모니터링 시스템을 구축하려 할 때, 대규모 수질 모니터링 시스템에서 사용되는 서버는 고가의 하드웨어 장비 비용과 SW 라이선스 비용 때문에 이를 그 대로 소규모 수질 모니터링 시스템에 적용할 때 불필요한 비용이 증가되는 문제가 있었다.
[0006] 또한, IoT 적용이 필요한 수질 모니터링 현장에서, 고가의 서버 장비와 SW를 구매하여 IoT를 적용한 수질 모니터링 시스템을 구축하기에는 부담이 많았고, 따라서, 소규모의 수질 모니터링 시스템 구축을 위한 저 비용의 시스템 구성이 요망되었다.
[0007] 또한, 종래 수질 모니터링 시스템의 중앙 집중 방식의 수질 모니터링 시스템은 보안에 취약하여, 원격지에 배치된 수질 센서로부터 수질 데이터를 수집하는 RTU(Remote Terminal Unit)에 대한 도난 사고나, RTU로부터 서버로 정보 전송 중 해킹에 의해서 수질 모니터링 정보가 누출되는 문제들이 발생하여 수질 모니터링 시스템의 수질 정보 전송 과정에서의 보안문제가 심각하게 제기 되었다.
[0008] 또한, 종래 수질 모니터링 시스템에서는, 수질 센서와 RTU는 원격지에 산재해 있기 때문에, RTU 주위에 RTU와 서버간의 통신을 방해하는 외부적 여러 요인으로 인하여 통신이 두절되는 경우가 발생하여, 서버에서 관리해야 하는 원격지의 모든 수질 센서로부터 정확한 수질 정보를 제공받지 못하는 경우가 있고, 이로 인하여 수질 모니터링에 어려움이 많았다.
[0009] 또한, 종래 기술에서는, 원격지에 배치된 수질 모니터링 시스템의 RTU 도난, 수질정보의 해킹, 또는 수질 센서와 서버간의 통신 두절 등의 문제가 발생하는 경우, 그 때 그 때 상황에 따라 수질 모니터링 시스템을 재설계하거나, 하드웨어 장비 및 SW를 재점검하거나, 또는 수질 모니터링 시스템을 재 구성하여야 했기 때문에 그에 따른 많은 불편함과 시간과 노력이 소요되는 문제가 있었다.
[0010]본원 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위한 수질 모니터링을 위한 시스템에 관한 것으로, 더욱 상세하게는, IoT(Internet of Things) 기반의 수질모니터링 시스템에서 RTU(Remote Terminal Unit)의 도난 또는 수질 센서 값의 해킹으로부터 수질 센서 값을 보호하는 보안 기능이 블록체인 적용으로 강화되고, 외부환경의 영향으로 인한 RTU와 서버 간의 통신 두절로 인한 수질 센서 값의 수집 불능의 경우에도 통신의 안전성이 확보된 저비용 IoT 기반의 분산형 수질모니터링 시스템에 관한 것이다.
[0011]본 발명이 이루고자 하는 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
[0012] 본 발명의 일 실시 예에서, 적어도 하나의 센서, 정보수집부, 정보처리부, 통신부, 수질 정보 수집 서버로 구성되는 수질 모니터링 시스템이 제공되고, 상기 수질 모니터링 시스템은, 수온, 실제전도도, 특정 전도도, 염분도, pH, pH(mV), ORP, 용존산소농도, 산소포화도, 산소분압, 대기압, 압력, 수위로 구성되는 데이터 중 적어도 하나의 데이터를 감지하는 적어도 하나의 센서(31~33), 상기 적어도 하나의 센서로부터 감지된 데이터를 수집하는 적어도 하나의 정보수집부(41~43), 상기 적어도 하나의 정보수집부가 수집한 데이터를 분석하는 적어도 하나의 정보처리부(51~53), 상기 적어도 하나의 정보처리부(51~53)에 의해서 분석된 데이터를 암호화하기 위한 블록들을 생성하는 블록체인관리부(71), 상기 블록체인관리부(71)로부터 암호화된 데이터 블록들을 통신망(20)을 통해 수질정보수집 서버(10)로 전송하는 통신부(61~63) 및 상기 통신부(61~63)로부터 전송 받은 암호화된 수질정보 데이터 블록들을 해독하여 저장하고 표시장치에 표시하는 수질정보수집 서버(10)를 포함한다.
[0013] 본 발명의 다른 실시 예에서, 상기 적어도 하나의 정보처리부(51~53)는 상기 적어도 하나의 정보수집부(41~43)가 수집한 데이터가 있는지 확인하여, 만일 상기 수집한 데이터가 오류 정보, 예를 들어, 센서오류/데이터오류/배터리오류 등의 정보를 포함하고 있지 않으면, 상기 수집한 데이터를 상기 정보처리부 내의 표시부(51-3) 및 상기 블록체인관리부(71)로 전송하고, 만일 상기 수집한 데이터가 오류 정보, 예를 들어, 센서오류/데이터오류/배터리오류 등의 정보를 포함하고 있으면, 오류정보를 포함한 상기 데이터를 상기 정보처리부 내의 표시부(51-3)로 전송하여 오류를 표시하게 하고, 또한 오류정보를 포함한 상기 데이터를 상기 블록체인관리부(71)로도 전송한다.
[0014] 본 발명의 또 다른 실시 예에서, 상기 블록체인관리부(71)는, 상기 적어도 하나의 정보수집부가 수집한 데이터 각각에 해시함수를 적용하여 복수의 블록들로 구성하고, 상기 복수의 블록들을 연결하여 블록체인을 생성하여 상기 데이터 각각을 암호화 한다.
[0015] 본 발명의 또 다른 실시 예에서, 상기 복수의 블록들은 패킷 식별자(Packet ID) 및 데이터 값(value) 바이트들의 조합으로 구성된다.
[0016] 본 발명의 또 다른 실시 예에서, 상기 통신부(61~63)는 상기 블록체인관리부(71)가 생성한 블록체인에 포함된 블록들이 상기 수질정보수집 서버(10)에서도 동일하게 유지되도록 상기 수질정보수집 서버(10)에 전송하고, 상기 수질정보수집 서버(10)와 동기를 유지한다.
[0017] 본 발명의 또 다른 실시 예에서, 상기 수질정보수집 서버(10)가 상기 통신부로부터 전송된 블록들이 동기화 되어 있지 않다고 판단하면, 상기 동기화 되지 않은 블록들에는 비인가 패킷 식별자를 포함하는 것으로 판단하고, 알람 처리한다.
[0018] 본 발명의 또 다른 실시 예에서, 상기 수질 모니터링 시스템은, 수온, 실제전도도, 특정 전도도, 염분도, pH, pH(mV), ORP, 용존산소농도, 산소포화도, 산소분압, 대기압, 압력, 수위로 구성되는 데이터 중 적어도 하나의 데이터를 감지하는 적어도 하나의 센서(31~33), 상기 적어도 하나의 센서로부터 감지된 데이터를 수집하는 적어도 하나의 정보수집부(41~43), 상기 적어도 하나의 정보수집부가 수집한 데이터를 분석하는 적어도 하나의 정보처리부(51~53), 상기 적어도 하나의 정보처리부에 의해서 분석된 데이터를 암호화하기 위해 블록들을 생성하는 블록체인관리부(71), 상기 블록체인관리부로부터 암호화된 데이터 블록들을 통신망을 통해 적어도 2 이상의 분산 수질정보수집 서버(S, DS1, DS2, DS3)로 전송하는 통신부(61~63) 및 상기 통신부로부터 전송 받은 암호화된 수질정보 데이터 블록들을 해독하여 저장하고 표시장치에 표시하는 적어도 2이상의 수질정보수집 서버 (S, DS1, DS2, DS3)를 포함한다.
[0019] 본 발명의 또 다른 실시 예에서, 상기 블록체인관리부(71)는, 상기 적어도 하나의 정보수집부가 수집한 데이터 각각에 해시함수를 적용하여 복수의 블록들로 구성하고, 상기 복수의 블록들을 연결하여 블록체인을 생성한다.
[0020] 본 발명의 또 다른 실시 예에서, 상기 통신부(61~63)는 상기 블록체인관리부가 생성한 블록체인에 포함된 블록들이 상기 수질정보수집 서버 (S, DS1, DS2, DS3)에서도 동일하게 유지되도록 상기 적어도 2이상의 수질정보수집 서버(S, DS1, DS2, DS3)에 전송하고, 상기 수질정보수집 서버(S, DS1, DS2, DS3)와 동기를 유지한다.
[0021] 본 발명의 또 다른 실시 예에서, 상기 상기 적어도 2이상의 수질정보수집서버(S, DS1, DS2, DS3)가 상기 통신부로부터 전송된 블록들이 동기화 되어 있지 않다고 판단하면, 상기 동기화 되지 않은 블록들에는 비인가 패킷 식별자를 포함하는 것으로 판단하고, 알람 처리한다.
[0022] 본 발명에 의해서, 소규모의 수질 모니터링 시스템에서 고가의 장비 및 SW 라이센스 비용 지출이 없는 저비용의 임베디드용 메인보드를 활용할 수 있는 효율적인 시스템 구축이 가능하게 된다. 또한 통신 장비의 도난이나 해킹으로 인한 수질정보의 유출을 막고, 여러 외부적인 통신 장애로 인한 수질정보의 수집문제를 해결할 수 있다.
[0023] 또한, 적은 비용으로 효과적인 소규모 IoT기반 기술을 활용한 수질 모니터링 시스템 구축 후, 필요에 따라 보안과 통신 안전이 확보된 대규모 수질 모니터링 시스템으로 확장이 용이하다.
[0024] 또한 본 발명은 그룹을 추가하는 방법으로 분산시스템을 생성함으로써, 수질 모니터링 센서를 하나의 노드로 하는 그룹의 구성이 가능하고, 이를 통해서 수질 모니터링 시스템 전체 구성을 분산시스템으로 구성하여, 각 노드를 블록체인 방식으로 망을 연결함으로써, 그룹을 구성하는 노드들을 그룹별로 루트(ROOT) 역할을 하는 그룹 분산서버가 센서 값들을 수집하여 분산서버의 로컬DB에 저장하고, 저장된 데이터는 중앙서버에서 구성한 각 블록의 공유 절차에 따라, 직접 또는 우회로를 통해서 중앙서버 전송할 수 있게 되어 각각의 노드와 분산서버에서 적절한 부하를 분담할 수 있고, 필요한 수준의 암호화가 가능하다.
[0025] 따라서, 수질 모니터링 시스템의 분산된 각 그룹들이 보안을 위해 블록체인을 사용하면서도, 모든 노드에서 센서데이터를 공유할 경우 부하가 너무 발생할 경우를 대비하여 중앙서버가 아닌 곳에 꼭 공유가 필요한 경우에만 블록체인을 공유하도록 하여 불필요한 부하를 줄이면서, 수질 모니터링 정보의 암호화 통신의 안전을 높일 수 있다.
[0026] 본 발명의 효과는 상기한 효과로 한정되는 것은 아니며, 본 발명의 상세한 설명 또는 특허청구범위에 기재된 발명의 구성으로부터 추론 가능한 모든 효과를 포함하는 것으로 이해되어야 한다.
[0027] 본 발명의 바람직한 실시 예들이 첨부 된 도면들을 참조하여, 오직 예로서, 설명된다.
[0028] 도 1은 수질 센서, RTU, 통신망, 및 서버로 구성된 수질 모니터링 시스템의 구성의 일 예를 도시한다.
[0029] 도 2는 도 1의 수질 모니터링 시스템에서, RTU가 정보수집부, 정보처리부 및 통신부를 포함하는 것을 보여주는 수질 모니터링 시스템의 구성의 일 예를 도시한다.
[0030] 도 3은 도 1의 수질 모니터링 시스템에서, 수질 센서들의 종류와 그러한 수질 센서들이 측정하는 수질 데이터 정보들의 일 예를 도시한다.
[0031] 도 4는 도 2의 수질 모니터링 시스템에서, RTU가 정보수집부, 정보처리부 및 통신부외에 전송될 수질 데이터 정보를 블록체인 암호화 하기 위한 블록체인관리부를 더 포함하는 것을 보여주는 수질 모니터링 시스템의 구성의 일 예를 도시한다.
[0032] 도 5는 도 4의 수질 모니터링 시스템에서, 정보처리부의 상세한 구성의 일 예를 도시한다.
[0033] 도 6은 도 4의 수질 모니터링 시스템에서, 수질 데이터 정보를 블록체인 암호화 하기 위한 블록체인관리부가, 수질 센서로부터 측정되는 각종 수질 정보 데이터를 머클트리 방식으로 암호화하는 과정의 일 예를 도시한다.
[0034] 도 7은 도 6의 블록체인 머클트리의 레벨0에서 암호화 되는 수질센서의 데이터 항목들을 해쉬 함수를 적용하여 하나의 블록형태로 구성을 하는 것의 일 예를 도시한다.
[0035] 도 8은 도 4의 수질 모니터링 시스템의 통신부에서, 블록체인관리부가 생성한 블록의 패킷 데이터(Packet ID 포함)를 서버로 전송하기 위한 순서도의 일 예를 도시한다.
[0036] 도 9는 도 4의 수질 모니터링 시스템에서, RTU와 서버 사이의 데이터 통신하는 과정의 일 예를 도시한다.
[0037] 도 10은 3개의 분산 서버와 하나의 중앙 서버로 구성된 도 4의 수질 모니터링 시스템의 일 예를 도시한다.
[0038] 도 11은 도 6의 블록체인 머클트리의 각 블록들의 공유 참조 값을 공유 참조 테이블을 통해 설정하는 예를 도시한다.
[0039] 도 12는 본 발명의 수질 모니터링 시스템의 블록체인 네트워크에서, 수질 데이터 공유의 일 예를 도시한다.
[0040] 도 39는 본 발명의 수질 모니터링 시스템의 블록체인 네트워크에서, 중앙 서버에서 구성하여 중앙 서버 DB에 저장한 블록체인 구성을 분산서버 및 하부 노드로 전달하는 과정을 도시한다.
[0041] 도 14a, 14b 및 14c는 도12의 수질 모니터링 시스템의 블록체인 네트워크에서 데이터 공유의 다른 실시 예들을 도시한다.
[0042] 도 15는 도 12의 수질 모니터링 시스템의 블록체인 네트워크에서, 중앙 서버와 분산 서버, 또는 분산 서버들 사이에서 일어 날 수 있는 통신 장애의 예를 도시한다.
[0043] 도 16은 본 발명의 수질 모니터링 시스템의 일 실시 예에서 채용될 수 있는 노드로부터 분산서버 및 중앙서버로 전송되는 데이터 패킷 구성의 일 예를 도시한다.
[0044] 도 17은 본 발명의 수질 모니터링 시스템의 일 실시 예에서 채용될 수 있는 중앙서버, 저장매체 및 DBMS의 일 예를 도시한다.
[0045] 이하에서는 첨부한 도면을 참조하여 본 발명을 설명하기로 한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며, 따라서 여기에서 설명하는 실시 예로 한정되는 것은 아니다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
[0046]명세서 전체에서, 어떤 부분이 다른 부분과 "연결(접속, 접촉, 결합)"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 부재를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 구비할 수 있다는 것을 의미한다.
[0047] 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
[0048] 이하 첨부된 도면을 참고하여 본 발명에 대하여 상세히 설명하기로 한다.
[0049] 도 1은 수질 센서, RTU, 통신망, 및 서버로 구성된 수질 모니터링 시스템의 구성의 일 예를 도시하고, 도 2는 도 1의 수질 모니터링 시스템에서, RTU가 정보수집부, 정보처리부 및 통신부를 포함하는 것을 보여주는 수질 모니터링 시스템의 구성의 일 예를 도시하며, 도 3은 도 1의 수질 모니터링 시스템에서, 수질 센서들의 종류와 그러한 수질 센서들이 측정하는 수질 데이터 정보들의 일 예를 도시한다.
[0050] 도 1의 수질 센서(31, 32, 33)와 RTU(30)(정보수집부, 정보처리부, 통신부)는 수질을 모니터링 해야 하는 하천, 취수장 등에 산재한다(도13 참조). 수질 센서(31,32,33)으로부터 감지된 수질에 관련된 정보(수온, 실제 전도도, 특정전도도, 염분도, 용존 고형물, 밀도, 저항율, pH, pH(mV), ORP, 용존산소 농도, 산소포화도, 산소분압, 대기압, 압력, 수위)는 도 3에서 보는 바와 같이, 다양한 수질 센서들(수온, Conductivity류, pH, ORP류, DO센서류, 압력 센서류)을 통해서 감지된다. 상기 수질 센서들(31, 32, 33)에 의해서 감지된 수질 정보 데이터는, 도 2에서 보는 바와 같이, RTU(30)의 정보수집부(41, 42, 43)에 입력되고, 정보수집부(41, 42, 43)에 입력된 수질 정보 데이터는 정보처리부(51, 52, 53)로 보내어 져서 처리된다. 그 후 처리된 수질 정보 데이터는 정보처리부 내의 표시부에서 표시됨과 동시에 통신부(61, 62, 63)로 보내어 져서, 통신망(20)을 통해 서버(10)(중앙서버 S, 또는 분산 서버 G1, G2, G3)로 전송된다. 서버(10)으로 전송된 수질 정보 데이터는 서버의 DB에 저장되고, 표시부에 표시되며, 서버의 각종 제어에 활용된다.
[0051] 도 4는 도 2의 정보처리부(51,52,53) 다음 단에 정보처리부로부터 처리되어 통신부(61, 62, 63)으로 전달될 수질 정보 데이터를 블록체인 암호화 하기 위한 블록체인관리부를 더 포함하는 구성으로서 본 발명의 일 실시 예를 도시한다.
[0051] 이 하에서 도 5, 도 6, 도 7, 도 8 및 도 9를 참조하여, 본 발명의 수질 모니터링 시스템의 일 실시 예를 상세하게 설명한다.
[0052] 도 5는 도 4의 정보처리부(51)을 좀 더 상세하게 도시한 것이다. 도 4의 정보처리부(51)는 에러처리기(51-1), 데이터 처리기(51-2), 표시부(51-3), 알람 프로세서(51-4) 및 정상 프로세서(51-5)로 구성되어, 정보수집부(41)를 통해 각 항목의 수질 정보 데이터 (수질센서값들)에 대한 정보를 분석하고, 분석 처리한 정보 데이터를 정보처리부(51) 내의 표시부에 표시하고, 이를 블록체인관리부(71)로 전송하여 블록체인 처리 후 통신부(61)를 통하여 서버(10)로 전송하게 한다.
[0053] 도 5에서 정보처리부(51)을 보다 상세하게 설명하면 다음과 같다. 에러처리기(51-1)은 정보수집부(41)에서 전송된 수질 정보 데이터의 오류를 판별하여 설정된 기준값 이상 또는 이하의 값이 입력되면 이를 에러라고 판정하고 그 값을 표시부(51-3)으로 전송하여 표시부(51-3)에 에러 값을 표시한다. 특히 서버(10)에 신속하게 전송해야 할 이상 상태라고 판단하면 알람 신호를 알람 프로세서(51-4)를 통해서 블록체인관리부(71)로 전송하여 알람 신호가 통신부(61)를 거쳐 통신망(20)을 통해서 서버(10)에 전송되고, 서버(10)은 알람 신호를 서버에서 표시하고, 필요한 조치를 취할 수 있게 한다.
[0054] 일 예에서, 정상 수질 정보 데이터는 정보처리부(51)의 데이터 처리기(51-2)에 의해서 1분 정도의 간격으로 정상 수질 정보 데이터를 블록체인관리부(71)로 송출하지만, 수질센서에서 에러 신호를 감지하였다고 에러 처리기(51-1)이 판정하면, 알람 신호를 서버(10)으로 신속히 송출하기 위해 정상 수질 정보 데이터는 송출을 중단하고, 대신에 알람 신호의 송출 주기는 10초 주기로 신속하게 처리한다.
[0055] 도 5에서 에러처리기(51-1)는 센서오류, 데이터오류, 통신오류, 배터리오류 등도 체크하여 관련 에러 내용을 표시부(51-3)에 출력시키고 데이터처리기(51-2)를 통해 관련 정보 데이터를 패킷으로 구성하여, 블록체인관리부(71), 통신부(61), 통신망(20)을 통해서 서버(10)전송하게 한다 (통신오류는 통신부에서 에러처리기로 관련내용 전달).
[0056] 또한, 도 5에서, 데이터처리기(51-2)는 수질 정보 데이터(센서 값)에 대한 임계 범위를 관리하고 알람 상태를 파악하며, 알람 발생 시는 기존의 정상 수질 정보 데이터 패킷 처리를 위한 메시지 큐를 일시적으로 삭제하여 알람이 신속하게 서버(10)으로 전송되도록 처리하고 알람 내용을 화면에 출력되게 한다.
[0057] 도 6은 도 4의 수질 모니터링 시스템에서, 수질 데이터 정보를 블록체인 암호화 하기 위한 블록체인관리부가, 수질 센서로부터 측정되는 각종 수질 정보 데이터를 머클트리 방식으로 암호화하는 과정의 일 예를 도시한다.
[0058] 도 6에서, 블록체인관리부(71)는 수질센서(31)에 의해서 감지된 여러 항목의 수질 정보 데이터를 해쉬 함수를 적용하여 하나의 블록형태로 구성하고, 이 블록들을 이전 블록들과 연결하여 블록체인을 구성하며, 이 때의 블록들은 Packet ID라는 바이트들의 조합으로 구성이 된다.
[0059] 본 발명의 일 실시 예에서, 도 6의 블록체인 머클트리는 다음과 같이 형성된다.
● Level 0: 각 수질센서 값은 수질센서 ID 2바이트와 센서 값 4바이트의 float 형으로 구성된다.
● Level 1: 각 수질센서 값에 대해 Hash 함수를 적용하여 Hash값 H1, H2, H3, H4를 생성한다.
● Level 2: H1과 H2를 묶어 Hash 함수를 적용하여 H12, H3과 H4를 묶어 Hash 함수를 적용하여 H34를 생성한다.
● Level 3: H12와 H34를 묶어 Packet ID를 생성한다.
[0060] 도 7은 도 6의 블록체인 머클트리의 레벨0에서 암호화 되는 수질센서의 데이터 항목들을 해쉬 함수를 적용하여 하나의 블록형태로 구성을 하는 것의 일 예를 도시한다.
[0061] 도 4의 블록체인관리부(71)에서,
- 레벨0은 수질센서 항목들을 해쉬 함수를 적용하여 하나의 블록형태로 구성을 하는 부분이다. 이 블록들은 이전 블록들과 연결되어 블록체인을 구성한다. 이 때의 블록을 Packet ID라는 바이트들의 조합으로 구성이 된다.
- Level 1에서는 Level 0에서의 항목에 Hash 함수를 적용하여 Hash 처리된 결과값만으로는 원래의 내용을 유추할 수 없고, 디지털 서명의 복호화에 의해서만 확인이 가능하다. 도 6에서 Hash 처리에 의해 H1, H2, H3, H4가 생성이 된다.
- Level 2에서는 Level 1에서 Hash 처리된 값들을 두 개씩 묶어 다시 Hash 함수를 적용하고, 이로 인해 H12, H34가 생성이 된다. 이러한 과정은 2진 조합에 의해 마지막 1개가 생성될 때까지 반복이 되며 이 최종 결과물이 Packet ID가 된다. 이 Packet ID는 나중에 통신부에서 전송처리 할 때 Packet Header와 연결이 되어 서버로 전송이 된다.
[0061] 도 8은 도 4의 수질 모니터링 시스템의 통신부에서, 블록체인관리부가 생성한 블록의 패킷 데이터(Packet ID 포함)를 서버로 전송하기 위한 순서도의 일 예를 도시한다.
[0062] 도 4의 통신부(61)는 블록체인관리부(71)에서 생성한 Packet ID를 서버(10)로 전송하기 위한 곳으로 블록체인관리부(71)에서 생성한 블록체인이 서버(10)에서도 똑같이 유지되도록 패킷을 빠짐없이 전송한다. 서버(10)에서 어떤 특별한 사유로 인해 블록체인을 초기화하지 않는 한 이 블록체인은 기존에 처리한 블록들과 조합하여 계속 새로운 블록을 생성하게 되고 서버와 계속해서 동기를 유지하게 해 주어야 한다. 만일 이 동기가 이루어지지 않는다면 서버(10)는 전송된 패킷을 비인가된 패킷으로 판단을 하고, 이를 알람처리를 통해 관리자에게 통보한다.
[0063] 도 8의 순서도는 통신부(61)에서 이를 위한 처리 과정을 나타내는 것으로, 블록체인관리부(71)에서 Packet ID를 생성하면 헤더를 추가하여 패킷을 생성하고 이를 서버(10)에 전송을 한다. 다만, 패킷을 서버(10)에 전송하는 것이 실패하면, 미 전송된 패킷은 백업해 두었다가 나중에 패킷 전송 시 함께 전송하게 된다
[0064] 도 9는 도 4의 수질 모니터링 시스템에서, RTU와 서버 사이의 데이터 통신하는 과정의 일 예를 도시한다.
[0065] 도 4의 통신부(61)에서 패킷을 정상적으로 서버(10)에 전송했을 경우에 서버(10)에서는 패킷을 수신한 후에 패킷을 파싱하고 Packet ID를 추출해 낸다. 그리고 서버(10)에서 복호화 과정이 정상적으로 처리되면 서버(10)는 각 수질센서 항목을 추출하여 수질 정보 데이터를 서버(10)의 DB에 저장한다. 그리고 이와 동시에 서버(10)는 RTU(30)로 OK 메시지를 전송하여서 성공적으로 서버(10)에서 패킷을 전송 받아서 정상적으로 처리했음을 알려준다.
[0066] 만일 RTU(30)의 통신부(61)에서 전송한 파일이 손실이 되어 서버(10)에서 패킷을 전송받지 못하게 되면, RTU(30)의 통신부(61)는 패킷이 손실된 내용을 인지한 후 패킷을 재전송을 하게 된다. 만일 통신상태가 좋지 않아서 계속 패킷 전송 손실이 발생하면 통신부(61)는 통신이 정상화 될 때까지 계속해서 패킷을 백업한다.
[0067]만일 통신 과정에서 통신망에서 해킹이 발생하여 비인가된 패킷이 서버(10)로 전송이 된다면, 기존의 패킷과의 Hash값이 맞지 않아서 서버(10)는 전송된 패킷을 복호화를 할 수 없게 됨에 따라, 서버(10)는 전송된 패킷을 비인가 패킷으로 판단을 하게 된다.
[0068] 도 10은 3개의 분산 서버와 하나의 중앙 서버로 구성된 도 4의 수질 모니터링 시스템의 일 예를 도시한다.
[0069] 도 10에서와 같은 분산서버 수질 모니터링 시스템은 중앙서버(S), 분산서버 그룹(DS1, DS2, DS3), 그룹(G1, G2, G3), 그룹별 노드(N11, N12, N13, N21, N22, N23, N31, N32, N33) 등으로 구성되며, 이 분산서버 수질 모니터링 시스템은 수질 모니터링 그룹이 두 개 이상 존재할 때 적용될 수 있다.
[0070] 도 11은 도 6의 블록체인 머클트리의 각 블록들의 공유 참조 값을 공유 참조 테이블을 통해 설정하는 예를 도시한다.
[0071] 분산처리 수질 모니터링 시스템의 블록체인 네트워크에서 데이터 공유는 다음과 같다.
- 중앙서버(S), 그룹 분산서버(DS1, DS2, DS3), 그룹(G1, G2, G3), 그룹별 노드들(N11, N12, N13, N21, N22, N23, N31, N32, N33) 등으로 구성됨
- 각 그룹의 분산서버(G1, G2, G3)는 그룹별 노드들(N11, N12, N13, N21, N22, N23, N31, N32, N33)로부터 데이터를 수집하여 자체 DB에 저장
- 그룹 분산서버(DS1, DS2, DS3)는 데이터를 블록체인에 포함시키고 중앙서버(S)와 이를 공유한다.
- 중앙서버(S), 그룹 분산서버(DS1, DS2, DS3), 그룹(G1, G2, G3) 및 그룹별 노드EMF((N11, N12, N13, N21, N22, N23, N31, N32, N33)은 어떤 공유 참조 값으로 서로 연결이 되는지를 사전에 설정하고 이를 중앙서버(S)가 관리한다.
- 중앙서버(S), 그룹 분산서버(DS1, DS2, DS3), 그룹 (G1, G2, G3) 및 그룹별 노드들(N11, N12, N13, N21, N22, N23, N31, N32, N33)은 공유 참조 값을 참고하여 데이터를 전송해야 하는 객체로 블록체인을 공유한다.
- 반대로 공유 참조 값에 포함이 되지 않는 객체에는 블록체인을 공유하지 않게 하여 각 객체 별 부하를 줄인다.
[0072] 도 11에서, 사용된 용어의 정의는 다음과 같다.
Figure 112019123619309-pat00001
중앙서버(S): 가장 상위에 존재하는 루트가 되는 서버
Figure 112019123619309-pat00002
그룹 분산서버(DS1, DS2, DS3): 중앙서버(S)의 부하를 분산시키기 위해 그룹별로 위치하는 하위 서버
Figure 112019123619309-pat00003
그룹(G1, G2, G3): 그룹 분산서버와 노드들이 연결된 집합
Figure 112019123619309-pat00004
그룹별 노드들(N11, N12, N13, N21, N22, N23, N31, N32, N33): 그룹 분산서버와 연결된 RTU(Remote Terminal Unit)
Figure 112019123619309-pat00005
Free Pass: 제약 없이 관련 모든 블록체인에 포함된 데이터를 받을 수 있음
Figure 112019123619309-pat00006
그룹 공유: 특정 그룹의 블록체인에 포함된 데이터를 받을 수 있음
Figure 112019123619309-pat00007
노드 공유: 특정 노드의 데이터만 받을 수 있음
Figure 112019123619309-pat00008
공유 없음: 특정 노드나 그룹의 블록체인에 포함된 데이터를 공유하지 않음
Figure 112019123619309-pat00009
Object Type: 공유 제약조건을 설정할 객체
Figure 112019123619309-pat00010
Start Type: 제약조건 설정을 위한 객체의 유형
Figure 112019123619309-pat00011
Start ID: 제약조건을 설정하기 위한 객체의 ID
Figure 112019123619309-pat00012
End Type: 제약조건 설정을 위한 객체가 연결될 객체 유형
Figure 112019123619309-pat00013
Start ID: 제약조건 설정을 위한 객체가 연결될 객체의 ID
[0073] 도 12는 본 발명의 수질 모니터링 시스템의 블록체인 네트워크에서, 수질 데이터 공유의 일 예를 도시하며, 공유 내용은 다음과 같다.
Figure 112019123619309-pat00014
G1은 DS1이 각 노드들의 블록 데이터를 수집하여 중앙서버와 공유한다.
Figure 112019123619309-pat00015
G2는 DS2는 각 노드들의 블록 데이터를 수집하여 중앙서버와 공유한다. 또, G3에도 공유한다. 이는 G2에서 중앙서버인 S로 통신이 단절이 될 경우를 대비해서 G3에 블록을 공유하여 G3에서 S로 대신 블록체인을 공유하기 위함이다.
Figure 112019123619309-pat00016
DS3는 각 노드들의 블록 데이터를 수집하여 중앙서버와 공유한다. 또, 중앙서버인 S의 요청이 있을 경우 G2의 블록체인을 S에게 공유한다.
[0074] 도 39는 본 발명의 수질 모니터링 시스템의 블록체인 네트워크에서, 중앙 서버에서 구성하여 중앙 서버 DB에 저장한 블록체인 구성을 분산서버 및 하부 노드로 전달하는 과정을 도시한다.
[0075] 본 발명의 일 실시 예인 분산처리 수질 모니터링 시스템의 블록체인 네트워크 구성은 다음의 예에 따라 진행될 수 있다.
- 분산처리 수질 모니터링 시스템의 블록체인 네트워크를 구성하기 위해 중앙서버(S)에서 그룹 분산서버(DS1, DS2, DS3) 및 그룹 노드들(N11, N12, N13, N21, N22, N23, N31, N32, N33)에 대한 환경설정을 한다.
- 이를 위해서 필요한 노드와 분산서버에 대한 정보를 중앙서버(S)에서 우선 입력한다.
- 그리고 각 노드와 분산서버에 대한 설정 값을 도 11에서 제공한 값을 사용하여 설정을 한다.
- 설정이 완료되면 각 설정 값을 그룹 분산서버에 전송해서 설정 값으로 초기화하도록 한다.
- 그룹 분산서버에서는 필요한 경우 특정 노드에 대해서도 마찬가지로 설정 값을 전송하여 초기화시킨다.
[0076] 본 발명의 일 실시 예인 분산처리 수질 모니터링 시스템의 블록체인 네트워크 구성의 순서는 다음과 같다.
1. 중앙서버에서 UI 상에 각 그룹 분산서버와 노드에 대한 구성을 한다.
2. 설정 값들이 DB에 저장이 되고 이 설정 값을 그룹 분산서버로 전송한다.
3. 각 그룹 분산서버는 설정 값으로 블록체인 공유설정을 하고, 노드 관련 정보는 각 노드로 전송한다.
4. 각 노드는 설정 값으로 블록체인 공유설정을 하고, 수질 센서로부터 센서 값을 수집하여 그룹 분산서버로 전송한다.
[0077] 도 14a, 14b 및 14c는 도12의 수질 모니터링 시스템의 블록체인 네트워크에서 데이터 공유의 다른 실시 예들을 도시한다.
[0078] 도 14a, 14b 및 14c를 참조하면, 분산처리 수질 모니터링 시스템의 블록체인 네트워크 예들에서 부하 조정은 다음과 같이 이루어 질 수 있다.
Figure 112019123619309-pat00017
분산처리 수질 모니터링 시스템에서 데이터의 분산처리 시 블록체인을 적용하면 도 14a와 같이 모든 노드에서 각각의 블록들을 공유한다. 따라서 모든 노드와 분산서버 및 중앙서버는 모두 9개씩의 노드별 센서값을 저장하게 된다. 따라서 각 노드는 전송 시 마다 900Byte의 저장을 하게 된다.
Figure 112019123619309-pat00018
각 노드는 매 전송마다 900바이트 씩을 노드별로 저장하기 위해 저장공간 및 이를 동시 처리하기 위한 성능을 확보하여야 한다.
Figure 112019123619309-pat00019
각 노드들은 이런 용도의 시스템 구축비용을 줄이기 위해서 각 그룹별로 노드들은 도 14b와 같이 모든 블록체인을 공유하지 않을 수 있다.
Figure 112019123619309-pat00020
도 14b의 그룹 G2에서 분산서버인 DS2는 자신의 그룹인 G2의 노드에서 생성된 센서 값만을 저장한다. 그리고 이를 중앙서버(S)와 그룹 G3의 분산서버인 DS3와 공유할 수 있다.
Figure 112019123619309-pat00021
도 14b의그룹 G3에서 분산서버 DS3는 중앙서버에 G3에서의 센서 값만을 공유하다가 필요 시 G2의 센서 값을 공유 할 수 있다. 이는 G2의 통신상태가 단절되었을 때 서버의 요청에 의해 진행될 수 있다.
Figure 112019123619309-pat00022
이러한 방법은 블록체인의 보안을 더 약화시킬 수 있지만 각 그룹의 노드에 강력한 보안이 필요하지 않을 때 사용할 수 있다.
Figure 112019123619309-pat00023
도 14c는 각 분산서버와의 보안을 강화하기 위해 중앙서버와 분산서버인 DS1,DS2,DS3들 사이에서 블록들을 공유할 수 있다.
Figure 112019123619309-pat00024
그 결과, 중앙서버(S)와 각 분산서버는 모든 그룹의 노드들의 합인 9개의 센서 값을 저장할 수 있다.
Figure 112019123619309-pat00025
이를 통해 중앙서버(S)는 분산서버와의 블록체인 함수인 해쉬에 의한 보안을 높일 수 있고, 한 분산서버로 통신이 단절된 다른 두 곳의 센서 값을 제공 받을 수 있다.
Figure 112019123619309-pat00026
이와 같이 상황에 맞추어 블록체인의 보안 강도를 그룹 및 노드별로 구성할 수 있다.
[0079] 도 15는 도 12의 수질 모니터링 시스템의 블록체인 네트워크에서, 중앙 서버와 분산 서버, 또는 분산 서버들 사이에서 일어 날 수 있는 통신 장애의 예를 도시한다.
[0080] 도 15에서 예시한 통신 장애를 극복하기 위해 본 발명의 일 실시 예에서, 서버는 다음의 원칙에 따라 분산될 수 있다.
1. 모든 노드들이 무선신호 범위 내에 있고, 노드들 사이에 큰 건물이나 무선신호에 지장을 줄 수 있는 환경요소가 없다면 서버를 분산하지 않는다.
2. 무선신호에 지장을 줄 수 있는 요소가 없더라도 신호의 안정적인 전달을 위해 서버를 분산할 수 있다.
3. 노드들의 영역이 넓은 경우에는 무선신호가 도달할 수 있는 범위 내로 서버를 분산한다.
4. 노드들이 가까이 있지만 무선신호를 차단할 수 있는 빌딩이나 장벽 및 산과 같은 차단환경이 있다면 이를 기준으로 서버를 분산한다.
5. 노드들이 가까이 있고 노드들 사이에 구조물이나 환경적인 차단환경이 없으나 특정 시점에 주변 요인으로 무선신호가 손실될 가능성이 있다면 주변의 분산서버와 블록체인을 구성하여 서버로의 통신이 차단될 경우에는 주변의 분산서버에서 서버로 전송하게 한다.
[0081] 도 15에서 예시한 통신 장애를 극복하기 위해 본 발명의 일 실시 예에서, 서버 분산의 구체적인 다음과 같다.
1. 도 15의 그룹 G1의 예와 같이, 가까이 있는 노드들을 연결한다.
2. 도 15의 그룹 G2의 예와 같이, G1과 거리가 가까우나 장벽이 있어 서버를 분산한다.
3. 도 15의 그룹 G3의 예와 같이, G2와 거리는 멀지만 G2가 중앙서버와 전송 시 통신이 단절될 가능성이 있어 DS2의 데이터를 공유하여 중앙서버의 요청이 있을 시에 DS2의 데이터를 중앙서버에 전송한다. DS2는 중앙서버와 가장 가까이 있어 무선신호 전송이 가장 양호하지만 일시적인 통신단절이 발생하면 DS3를 통해 이를 보완한다.
[0082] 도 16은 본 발명의 수질 모니터링 시스템의 일 실시 예에서 채용될 수 있는 노드로부터 그룹 분산서버 및 중앙서버(S)로 전송되는 데이터 패킷 구성의 일 예를 도시한다.
[0083] 도 16의 예에서, 객체(노드, 분산서버) 별로 전송되는 데이터 패킷의 구성은 다음과 같다.
- 패킷은 Header, Payload, Footer 등으로 구성이 된다.
- Header는 전송할 객체 및 센서값들에 대한 정보를 포함한다.
- NODE ID는 객체의 ID이다.
- GROUP ID는 객체가 속한 그룹의 ID이다.
- REGION ID는 그룹을 지역별로 묶은 단위이다.
- SERVICE ID는 프로젝트별 구분 ID이다.
- COMMAND CODE는 전송하는 패킷의 용도를 나타낸다.
- Payload는 블록체인의 Hash로 처리된 센서값들을 포함한다.
- Footer는 오류처리를 위한 CRC를 포함한다.
[0084] 도 17은 본 발명의 수질 모니터링 시스템의 일 실시 예에서 채용될 수 있는 중앙서버, 저장매체 및 DBMS의 일 예를 도시한다.
[0085] 본 발명의 일 실시 예에서 저비용 서버구성 컨셉으로 구성할 경우, 셀러론급 저사양 보드에 M.2 SSD를 사용하여 모니터링 소프트웨어를 운영하기에 충분한 성능 마련 할 수 있었고, 임베디드용 DB인 SQLite를 통해 DBMS를 운영함으로써 부하를 최소화 할 수 있었다. 또한, 모니터링 소프트웨어를 최대한 가볍게 포팅하여 저사양 PC에 최적화 함으로써, 소요비용을 최저로 하여 저비용 고성능의 수질 모니터링 시스템을 구현 할 수 있었다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다.
그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다. 본 발명의 범위는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구 범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
10…서버(중앙 서버 S, 그룹 분산 서버 DS1, DS2, DS3, 그룹 G1, G2, G3)
20…통신망
30…RTU(정보수집부, 정보처리부)
31~33…수질 센서, 31-1, 31-2, 31-3, 31-4(여러 종류의 수질 센서들)
41~43…정보수집부,
51~53…정보처리부, 51-1(에러처리기), 51-2(데이터 처리기), 51-3(표시부), 51-4(알람 처리 프로세서), 51-5(정상 처리 프로세서),
61~63… 통신부
71…블록체인관리부
S…중앙 서버,
DS1, DS2, DS3 …그룹 분산 서버
G1, G2, G3 …그룹
N11, N12, N13…G1에 속한 노드들
N21, N22, N23…G2에 속한 노드들
N31, N32, N33…G3에 속한 노드들

Claims (12)

  1. 적어도 하나의 센서, 정보수집부, 정보처리부, 통신부, 수질 정보 수집 서버로 구성되는 수질 모니터링 시스템에 있어서,
    수온, 실제전도도, 특정 전도도, 염분도, pH, pH(mV), ORP, 용존산소농도, 산소포화도, 산소분압, 대기압, 압력, 수위로 구성되는 데이터 중 적어도 하나의 데이터를 감지하는 적어도 하나의 센서(31~33);
    상기 적어도 하나의 센서로부터 감지된 데이터를 수집하는 적어도 하나의 정보수집부(41~43);
    상기 적어도 하나의 정보수집부가 수집한 데이터를 분석하는 적어도 하나의 정보처리부(51~53);
    상기 적어도 하나의 정보처리부에 의해서 분석된 데이터를 암호화하기 위한 블록들을 생성하는 블록체인관리부(71);
    상기 블록체인관리부(71)로부터 암호화된 데이터 블록들을 통신망을 통해 수질정보수집 서버(10)로 전송하는 통신부(61~63) 및
    상기 통신부로부터 전송 받은 암호화된 수질정보 데이터 블록들을 해독하여 저장하고 표시장치에 표시하는 수질정보수집 서버(10)를 포함하는
    수질 모니터링 시스템.
  2. 제1항에 있어서, 상기 적어도 하나의 정보처리부(51~53)는 상기 적어도 하나의 정보수집부(41~43)가 수집한 데이터가 있는지 확인하여, 만일 상기 수집한 데이터가 오류 정보를 포함하고 있지 않으면, 상기 수집한 데이터를 상기 정보처리부 내의 표시부(51-3) 및 상기 블록체인관리부(71)로 전송하고, 만일 상기 수집한 데이터가 오류 정보를 포함하고 있으면, 오류정보를 포함한 상기 데이터를 상기 정보처리부 내의 표시부(51-3)로 전송하여 오류를 표시하게 하고, 또한 오류정보를 포함한 상기 데이터를 상기 블록체인관리부(71)로도 전송하는
    수질 모니터링 시스템.
  3. 제1항에 있어서, 상기 블록체인관리부(71)는, 상기 적어도 하나의 정보수집부(51~53)가 수집한 데이터 각각에 해시함수를 적용하여 복수의 블록들로 구성하고, 상기 복수의 블록들을 연결하여 블록체인을 생성하는
    수질 모니터링 시스템.
  4. 제3항에 있어서, 상기 복수의 블록들은 패킷 식별자(Packet ID) 및 데이터 값(value) 바이트들의 조합으로 구성되는
    수질 모니터링 시스템.
  5. 제1항에 있어서, 상기 통신부(61~63)는 상기 블록체인관리부(71)가 생성한 블록체인에 포함된 블록들이 상기 수질정보수집 서버(10)에서도 동일하게 유지되도록 상기 수질정보수집 서버(10)에 전송하고, 상기 수질정보수집 서버(10)와 동기를 유지하는
    수질 모니터링 시스템.
  6. 제5항에 있어서, 상기 수질정보수집 서버(10)가 상기 통신부(61~63)로부터 전송된 블록들이 동기화 되어 있지 않다고 판단하면, 상기 동기화 되지 않은 블록들에는 비인가 패킷 식별자를 포함하는 것으로 판단하고, 알람 처리 하는
    수질 모니터링 시스템.
  7. 적어도 하나의 센서, 정보수집부, 정보처리부, 통신부, 수질 정보 수집 서버로 구성되는 수질 모니터링 시스템에 있어서,
    수온, 실제전도도, 특정 전도도, 염분도, pH, pH(mV), ORP, 용존산소농도, 산소포화도, 산소분압, 대기압, 압력, 수위로 구성되는 데이터 중 적어도 하나의 데이터를 감지하는 적어도 하나의 센서(31~33);
    상기 적어도 하나의 센서로부터 감지된 데이터를 수집하는 적어도 하나의 정보수집부(41~43);
    상기 적어도 하나의 정보수집부가 수집한 데이터를 분석하는 적어도 하나의 정보처리부(51~53);
    상기 적어도 하나의 정보처리부(51~53)에 의해서 분석된 데이터를 암호화하기 위해 블록들을 생성하는 블록체인관리부(71);
    상기 블록체인관리부로부터 암호화된 데이터 블록들을 통신망을 통해 적어도 2 이상의 분산 수질정보수집 서버(S, DS1~DS3)로 전송하는 통신부(61~63) 및
    상기 통신부로부터 전송 받은 암호화된 수질정보 데이터 블록들을 해독하여 저장하고 표시장치에 표시하는 적어도 2이상의 수질정보수집 서버(S, DS1~DS3)를 포함하는
    수질 모니터링 시스템.
  8. 제7항에 있어서, 상기 적어도 하나의 정보처리부(51~53)는 상기 적어도 하나의 정보수집부(41~43)가 수집한 데이터가 있는지 확인하여, 만일 상기 수집한 데이터가 오류 정보를 포함하고 있지 않으면, 상기 수집한 데이터를 상기 정보처리부 내의 표시부(51-3) 및 상기 블록체인관리부(71)로 전송하고, 만일 상기 수집한 데이터가 오류 정보를 포함하고 있으면, 오류정보를 포함한 상기 데이터를 상기 정보처리부 내의 표시부(51-3)로 전송하여 오류를 표시하게 하고, 또한 오류정보를 포함한 상기 데이터를 상기 블록체인관리부(71)로도 전송하는
    수질 모니터링 시스템.
  9. 제7항에 있어서, 상기 블록체인관리부(71)는, 상기 적어도 하나의 정보수집부(41~43)가 수집한 데이터 각각에 해시함수를 적용하여 복수의 블록들로 구성하고, 상기 복수의 블록들을 연결하여 블록체인을 생성하는
    수질 모니터링 시스템.
  10. 제9항에 있어서, 상기 복수의 블록들은 패킷 식별자(Packet ID) 및 데이터 값(value) 바이트들의 조합으로 구성되는
    수질 모니터링 시스템.
  11. 제7항에 있어서, 상기 통신부(61~63)는 상기 블록체인관리부(71)가 생성한 블록체인에 포함된 블록들이 상기 수질정보수집 서버(S, DS1, DS2, DS3)에서도 동일하게 유지되도록 상기 적어도 2이상의 수질정보수집 서버(S, DS1, DS2, DS3)에 전송하고, 상기 수질정보수집 서버(S, DS1, DS2, DS3)와 동기를 유지하는
    수질 모니터링 시스템.
  12. 제11항에 있어서, 상기 상기 적어도 2이상의 수질정보수집 서버(S, DS1, DS2, DS3)가 상기 통신부(61~63)로부터 전송된 블록들이 동기화 되어 있지 않다고 판단하면, 상기 동기화 되지 않은 블록들에는 비인가 패킷 식별자를 포함하는 것으로 판단하고, 알람 처리 하는
    수질 모니터링 시스템.
KR1020190157095A 2019-11-29 2019-11-29 수질 모니터링 시스템 KR102187336B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190157095A KR102187336B1 (ko) 2019-11-29 2019-11-29 수질 모니터링 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190157095A KR102187336B1 (ko) 2019-11-29 2019-11-29 수질 모니터링 시스템

Publications (1)

Publication Number Publication Date
KR102187336B1 true KR102187336B1 (ko) 2020-12-07

Family

ID=73791237

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190157095A KR102187336B1 (ko) 2019-11-29 2019-11-29 수질 모니터링 시스템

Country Status (1)

Country Link
KR (1) KR102187336B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023211277A1 (en) * 2022-04-29 2023-11-02 Easymeasure Developments B.V. Network and method for the monitoring of soil and/or surface water quality
NL1044306B1 (en) * 2022-04-29 2023-11-13 Easymeasure B V Method and network of devices for the monitoring of surface water quality
CN117541451A (zh) * 2023-11-13 2024-02-09 西藏自治区农牧科学院农业资源与环境研究所 一种流域农业面源污染在线监测方法及系统
KR102638647B1 (ko) * 2023-07-13 2024-02-20 전상동 녹조 또는 적조 발견 및 제거 시스템

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110085470A (ko) * 2010-01-20 2011-07-27 대윤계기산업 주식회사 발전용수 수질측정의 제어 및 감시용 컨트롤러를 이용한 통합형 수질측정 시스템
KR20190130879A (ko) * 2018-05-15 2019-11-25 주식회사 프리모 수질 개선용 필터의 딥러닝 기반 수명 확인 장치
KR20190130881A (ko) * 2018-05-15 2019-11-25 주식회사 프리모 수질 개선용 필터의 인공지능형 수명 확인 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110085470A (ko) * 2010-01-20 2011-07-27 대윤계기산업 주식회사 발전용수 수질측정의 제어 및 감시용 컨트롤러를 이용한 통합형 수질측정 시스템
KR20190130879A (ko) * 2018-05-15 2019-11-25 주식회사 프리모 수질 개선용 필터의 딥러닝 기반 수명 확인 장치
KR20190130881A (ko) * 2018-05-15 2019-11-25 주식회사 프리모 수질 개선용 필터의 인공지능형 수명 확인 장치

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023211277A1 (en) * 2022-04-29 2023-11-02 Easymeasure Developments B.V. Network and method for the monitoring of soil and/or surface water quality
NL1044306B1 (en) * 2022-04-29 2023-11-13 Easymeasure B V Method and network of devices for the monitoring of surface water quality
KR102638647B1 (ko) * 2023-07-13 2024-02-20 전상동 녹조 또는 적조 발견 및 제거 시스템
CN117541451A (zh) * 2023-11-13 2024-02-09 西藏自治区农牧科学院农业资源与环境研究所 一种流域农业面源污染在线监测方法及系统
CN117541451B (zh) * 2023-11-13 2024-05-07 西藏自治区农牧科学院农业资源与环境研究所 一种流域农业面源污染在线监测方法及系统

Similar Documents

Publication Publication Date Title
KR102187336B1 (ko) 수질 모니터링 시스템
US8705348B2 (en) Use of metadata for time based anti-replay
Fan et al. Security analysis of zigbee
US7609838B2 (en) Method of transmitting data in a network
CN107438025B (zh) 通信网关、无人机通信装置、无人机地面监控系统和方法
US20100293379A1 (en) method for secure data transmission in wireless sensor network
US20080005558A1 (en) Methods and apparatuses for authentication and validation of computer-processable communications
WO2016090249A1 (en) Protecting the integrity of log entries in a distributed system
US10999073B2 (en) Secure network communication method
WO2022179304A1 (zh) 一种用于dc互联的安全通信方法、装置及系统
TW201628379A (zh) 封包傳送裝置、封包接收裝置、封包傳送程式產品以及封包接收程式產品
Tiloca et al. GREP: A group rekeying protocol based on member join history
Epishkina et al. Covert channels parameters evaluation using the information theory statements
Epishkina et al. A random traffic padding to limit packet size covert channels
US10756923B2 (en) Method and apparatus for providing a high security mode in a network
US11019042B1 (en) Data assisted key switching in hybrid cryptography
Abraham et al. An efficient protocol for authentication and initial shared key establishment in clustered wireless sensor networks
CN115664511A (zh) 卫星数据传输方法、装置、电子设备及存储介质
CN113676315B (zh) 一种星地一体量子网络的切片化应用方法
AU2019261211A1 (en) System and method for establishing secure communication
CN109194650A (zh) 基于文件远距离加密传输系统的加密传输方法
CN101834863A (zh) 一种局域网节点间安全连接建立方法及系统
US8687808B2 (en) Method and system for self synchronizing cryptographic parameters
CN101834862A (zh) 一种节点间安全连接建立方法及系统
CN110012099A (zh) 信息监控系统和方法

Legal Events

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