45
개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 랫폼 연계를 위한 Device Application Programming Quick Start 김동영 부장 한국IBM 왓슨 사물인터넷 사업부

개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

개발자들이 알아야할

IBM Watson IoT 플랫폼 architecture 및 플랫폼 연계를 위한 Device 및 Application

Programming Quick Start

김동영 부장

한국IBM 왓슨 사물인터넷 사업부

Page 2: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

IBM Watson IoT Platform

• Connect : 디바이스, 네트워크, 게이트웨이 등의 연결 및 관

리 (Ex, MQTT/s, HTTP/s)

• Information Management : 디바이스, 컨텍스트 데

이터의 저장 및 관리 (Ex, NoSQL DB, SQL DB, Message Hub)

• Analytics : 실시간 애널리틱스, 엣지 애널리틱스, 코그니티

브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech,

Speech to Text, Natural Language Processing, Machine

Learning, Textual Analytics, Video/Image Analytics)

• Risk Management : 데이터 및 소프트웨어 등에 대한 확

인 및 신뢰성 제공 (Ex, Blockchain, Firmware Update)

Page 3: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

IoT 솔루션 아키텍처

Your device or gateway

IBM Watson IoT Platform

Your application and analytics

REST & Real-time APl

MQTT / HTTP

MQTT / HTTP

Page 4: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

IBM Watson IoT Platform and IBM Bluemix

Connect

Collect

Manage

APIs

Assemble

IBM Watson IoT Platform은 IBM Bluemix와 연동하여 클라우드 환경에서 Connect,

Collect, Assemble, Manage, Build 등의 IoT 어플리케이션 개발 환경을 제공합니다

Build (DevOps)

IBM Watson IoT Platform IBM Bluemix

Page 5: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

Bluemix에서 IoT Starter 작성을 합니다

Page 6: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32 • 맑은고딕 24

• Arial 24 • Node-RED 애플리케이션 템플릿 제공

• NoSQL DB 제공

• IoT Platform 인스턴스 제공

Page 7: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32 • 맑은고딕 24

• Arial 24

IoT Starter를 사용해 Device 및 Application을

시작할 수 있는 가이드를 제공합니다

Page 8: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32 • 맑은고딕 24

• Arial 24

IoT Starter를 통해 IBM Bluemix에 배포된 애플리케이션 및

서비스 대시보드를 제공합니다

• Node-RED 애플리케이션

• NoSQL DB 인스턴스

• IBM Watson IoT Platform 인스턴스

Page 9: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32

• 맑은고딕 24

• Arial 24

Device 및 Application 개발에 필요한 문서 및

샘플 프로그램을 제공합니다.

Page 10: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

디바이스 프로그램 개발

디바이스 프로그램

IBM Watson IoT Platform

Your application and analytics

REST & Real-time APl

MQTT / HTTP

MQTT / HTTP

Page 11: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

Node RED Node.JS

Cloudant NoSQL DB

Node RED

애플리케이션

NoSQL DB

인스턴스

1

2

3

IoT 디바이스 프로그램을 작성하고 Node RED 애플리케이션으로 데이터를 확인합니다

Page 12: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32 • 맑은고딕 24

• Arial 24

먼저, IoT 인스턴스의 대시보드로 이동하여

디바이스 유형 및 디바이스를 추가합니다

Page 13: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32 • 맑은고딕 24

• Arial 24

대시보드 UI 또는 API를 사용해 디바이스를 추가합니다

Page 14: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32

• 맑은고딕 24

• Arial 24

IoT 인스턴스에 연결할 디바이스의 유형

및 ID 등 필수 정보과 옵션 정보 등을 입력합니다

Page 15: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32

• 맑은고딕 24

• Arial 24

********

디바이스를 IoT에 연결할 때 필요한

디바이스 신임 정보를 확인하고 별도

기록해 둡니다

Page 16: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32 • 맑은고딕 24

• Arial 24

디바이스가 추가되었음을 확인합니다

Page 17: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

나중에, 디바이스 정보 창을 통해 해당 디바이스로 부터 받은 이벤트 정보 및 히스토리를 파악할

수 있습니다

Page 18: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32

• 맑은고딕 24

• Arial 24

Java, C, C#, Node.js, Python 등 다양한 디바이스

개발용 라이브러리(GitHub), 샘플(GitHub) 및 도움말을 제공합니다

Page 19: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32

• 맑은고딕 24

• Arial 24

도움말에서 제공하는 내용은 샘플(GitHub)를 사용해 테스트할 수 있습니다

Page 20: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

디바이스 개발 샘플(GitHub)를 사용해 이벤트 발송

및 커맨드 수신 등을 실행할 수 있습니다

Page 21: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32

• 맑은고딕 24

• Arial 24 ********

Java 디바이스 샘플(GitHub)를 사용해 이벤트 발송하는 프로그램 일부분

– 디바이스 신임 정보 및 발송할 이벤트 데이터 등을 정의해야 함

NodeRED 샘플에서 필요한 데이터 포맷으로 발송하기 위해 실행시

필요한 옵션:

-Dcom.ibm.iotf.enableCustomFormat=false

이벤트를 제대로 발송했는 지 확인함

Page 22: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32

• 맑은고딕 24

• Arial 24

Node RED Node.JS

Cloudant NoSQL DB

2

1

3

Node RED 애플리케이션으로 디바이스가 발송한 데이터를 확인합니다

Node RED

애플리케이션

NoSQL DB

인스턴스

Page 23: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32

• 맑은고딕 24

• Arial 24

Node RED 애플리케이션에서 “ibmiot”

Input Node인 “IBM IoT App In”의

properties를 받고자 하는 등록된 디바이스 ID로 설정합니다

Page 24: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32

• 맑은고딕 24

• Arial 24

디바이스 프로그램을 실행하여 IoT로 이벤트 데이터를 발송하게

하고, IoT로 부터 Node RED 애플리케이션이 이벤트 데이터를 수신할 수 있음을 확인합니다

이벤트를 제대로 수신했는

지 확인함

Page 25: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

애플리케이션 프로그램 개발

디바이스 프로그램

IBM Watson IoT Platform

애플리케이션 프로그램

REST & Real-time APl

MQTT / HTTP

MQTT / HTTP

Page 26: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32

• 맑은고딕 24

• Arial 24

Node RED Node.JS

Cloudant NoSQL DB

2

1

3

Node RED

애플리케이션

NoSQL DB

인스턴스

Node RED 애플리케이션 외에 추가로 이벤트 데이터를 수신할

애플리케이션을 작성합니다

Page 27: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32 • 맑은고딕 24

• Arial 24

Java, C#, Node.js, Python 등 다양한 디바이스 개발용 라이브러리(GitHub), 샘플(GitHub) 및 도움말을 제공합니다

Page 28: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32 • 맑은고딕 24

• Arial 24

도움말에서 제공하는 내용은 샘플(GitHub)를 사용해 테스트할 수 있습니다

Page 29: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

애플리케이션 개발 샘플(GitHub)를 사용해 이벤트

수신 및 커맨드 발송 등을 실행할 수 있습니다

Page 30: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32 • 맑은고딕 24

• Arial 24

******** ********

애플리케이션 개발시 필요한 신임 정보를 IoT 인스턴스 환경 변수에서 획득합니다

Page 31: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

• 맑은고딕 24

• Arial 24 ********

********

Java 애플리케이션 샘플(GitHub)를

사용해 이벤트 수신하는 프로그램 일부분 – 애플리케이션 신임 정보 처리

부분

이벤트를 제대로 수신했는 지 확인함

Page 32: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

맑은고딕 32, Arial 32

• 맑은고딕 24

• Arial 24 Java 애플리케이션 샘플(GitHub)를

사용해 이벤트 수신하는 프로그램 일부분 – 이벤트 수신 처리 부분

Page 33: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

Node RED Node.JS

Cloudant NoSQL DB

IoT 디바이스 프로그램 및 IoT 애플리케이션 프로그램

다양한 Watson 코그너티브 API 포함 다양한 서비스를 제공합니다

Page 34: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

Watson 코그너티브 API 등을 활용한 스마트 스피커 Use Case

Watson IoT

Platform

Text To

Speech

Speech

To Text

Insights for

Weather

Natural Lang

Classifier

Relationship

Extraction

Page 35: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

IoT 디바이스 및 애플리케이션 개발 Summary

디바이스 프로그램

IBM Watson IoT Platform

애플리케이션 프로그램

REST & Real-time APl

MQTT / HTTP

MQTT / HTTP

Page 36: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

IOT in Home

사물인터넷(IOT) 활용기

Yoonseok Hur, PhD

PureApplication Tech Sales Leader/IBM Asia Pacific

Page 37: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

My Home IOT Network

Apps

(and services) IBM IoT Foundation

Home Router

Access Point & OpenVPN Server

IOT Gateway

Living Room Home Office

Apple TV

Home Device Control • MQTT • HDMI CEC • Infra Red(IR Remote)

Raspberry Gateway • IOT Gateway(Nodered) • OpenHAB Server • TV PVR(Kodi)

Amazon Echo

Kindle Photo Frame

Page 38: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

ESP8266 Weekend Project

Devices

IBM IoT Foundation Apps

(and services) Amazon Alexa Services

Alexa Service

Skill API Voicie Interface : Utterance Intent Slot

Page 39: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

ESP8266 Watson IOT Development

ES8266

Arduino

Sketch

IBM IoT Foundation

REGISTER devices

GENERATE API keys

HTTP HTTP

Bluemix

NodeRed https://circuits.io

Page 40: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

Alexa Skill Application Architecture

Alexa, what’s the weather like in

Seoul Korea

Alexa Service

Skill API Voicie Interface : Utterance Intent Slot

Skill Developer

Skill Program AWS Lambda or Developer’s Cloud

https://www.youtube.com/watch?v=e1bBjQmiQfM

Page 41: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

Watson Speech for Alexa

Devices

IBM IoT Foundation Apps

(and services) Raspberry Pi USB mic Watson Speech to Text

Page 42: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

Smarter Planet : Internet Of Things

Our world is becoming

INSTRUMENTED

Our world is becoming

INTERCONNECTED

Virtually all things, processes and ways

of working are becoming

INTELLIGENT

Page 43: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

Useful Links

Watson IOT Sample Codes https://github.com/ibm-watson-iot

Building Alexa Skills for IBM Bluemix https://www.youtube.com/watch?v=e1bBjQmiQfM Building Amazon Echo with Watson Speech https://www.losant.com/blog/how-to-build-an-amazon-echo-clone-with-ibm-watson-and-intel-edison

Online PCB Design Tool https://circuits.io

Programming the bare ESP8266 directly http://hackaday.com/2015/03/18/how-to-directly-program-an-inexpensive-esp8266-wifi-module/

Open Home Automation Bus http://www.openhab.org

Page 44: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

Home IOT Project Artifacts

My IOT Circuit Board Design https://circuits.io/circuits/2825404-yhur_dht_relay2-2

ESP8266 Socket 3D Print Design http://www.thingiverse.com/thing:1786349

ESP8266 Testing Circuits https://circuits.io/circuits/2694992-esp8266-test-board-1-1

ESP8266 Flasher https://github.com/nodemcu/nodemcu-flasher

Page 45: 개발자들이 알아야할 IBM Watson IoT 플랫폼 architecture 및 플 … · 브 애널리틱스 등을 활용한 데이터 분석 (Ex, Text to Speech, Speech to Text, Natural

Thank you