MQTT 기반 스마트 디바이스의 IoT 서비스 구성

2018.10.26

2018.10.04

  • 상현
    <작성한 서비스 선택, 설치 구현>
    디바이스 에서 작동되는 서비스는 node-red dashboard에서 구현(예시)
      
    node-red의 각 flow는 JSON 파일로 추출이 가능
        

    사전에 클라우드에서 작성된 서비스(.JSON 파일)는 사용자가 클라우드 내 웹 인터페이스(드롭다운)을 통해  선택 가능


    위 동작 시 클라우드는 node-red-sftp 노드를 통해 디바이스 내 node-red 라이브러리 디렉토리에 전송

2018.10.02

  • 다현

    <To Do>
    – 서론 자료 수집, 서론 작성
    – 이론적 배경 Node-RED 문장 정리- 구성도 문장 수정 및 시나리오 그림 삽입
    – 구현 및 테스트, 결론 작성
    – 영문 초록 작성

2018.09.27

  • 다현
    논문 구성
    1. 서론
    2. 이론적 배경
    2-1. MQTT
    2-2. Node-RED
    3. MQTT 기반 스마트 디바이스의 IoT 서비스 구성
    3-1. 시스템 구성도
    3-2. 시나리오
    4. 구현
    초기화 ~ 서비스 구성, 액추에이터 시뮬레이션
    5. 결론

2018.09.21

  • 상현
    • Node.JS
      • 서비스는 디바이스 웹 인터페이스에서 제공
    • 가용 서비스
      • 센서 값 모니터링 -> 게이지, 차트 등
      • 액추에이터 상태 모니터링 -> 액추에이터도 센서와 마찬가지로 지속적으로 상태 전송 예) open/closed
    • IoT 플랫폼
      • 각 서비스는 디바이스 내 에서 다운로드 가능한 파일로 제공
  • 다현
    <<전체 구성도>>

    각 요소의 비중을 고려
    MQTT Message Queue의 요소 제거 및 단순화
    Device를 Smart Device 중심으로 변경, Device Agent의 역할을 세분화
    – initalizer : 디바이스의 초기화를 담당
    – Auto Service : 초기화 후 공통적으로 제공되는 서비스들을 자동으로 실행
    – Service Constitutor : 사용자가 선택한 서비스들을 IoT Platform에서 다운받아주는 구성자
    <<초기화 시나리오 그림>>

    이전의 Usecase Diagram을 요약
    actuator와 Smart Device 간의 데이터 전송을 양방향으로 표시,
    Smart Device -> Actuator : 제어 명령 전달
    Actuator -> Smart Device : Actuator의 상태 전달

2018.09.14(면담 전)

  • 상현
    • 디바이스 웹 인터페이스 구상(Node-Red 대시보드)
      • 로그인, 회원가입
        -Elastic Search 내 회원 정보 조회 매치 시 서비스 페이지 이동
        -웹 인터페이스 내 사용자 입력에 따라 Elastic Search내  회원 정보 생성

 

 

2018.09.06 (면담 후)

  • 다현
    참고 논문 : 

    주제 : MQTT를 사용 -> 사용자 개입X
    사용자가 원하는 서비스를 구성
    초기화 :
    >Message Flow Chart<
    서비스 :
    – 자동 서비스 : 초기화 후 데이터 수집 및 제어 명령 실행
    – 관리자 서비스 : 디바이스 상태 모니터링, 디바이스 조작
    – 일반 서비스 : 서비스 구성, 센서 모니터링, 액추에이터 제어 명령
    >Class Diagram<
    >Usecase Diagram<
    구현 :
    – 웹 : 디바이스 및 사용자 등록, 서비스 선택 페이지, 센서 모니터링 및 액추에이터 제어 페이지
    – 스마트 디바이스 : Class Diagram을 기반으로 Device Agent에 존재하는 함수들을 구현
    Service의 함수들은 IoT Platform에서 Smart Device로 다운받아 사용하도록 구현