티스토리 뷰
사물인터넷(Internet of things)
발전과정
1990 - 유선 웹(웹서버를 중심으로 웹클라이언트들이 접속)
2000 - 무선 웹(소리바다 같은 P2P 서비스 등장)
2007 - 모바일 웹
2003 - USN, RFID
2007 - 스마트 장치 + 인터넷 = 사물인터넷
서버와 웹브라우저(클라이언트)는 HTTP로 주고 받는다. 그런데 큰 파일을 여러명이 다운 받는 다면, 서버가 부하가 걸린다. P2P 방식은 전체 큰 파일을 블럭을 나눠서 공유 하게 만들어 놓기 때문에 접속한 사람이 많을 수록 빠르다. P2P가 m2m 으로 발전한다. 사람이 기계한테 요청을하면 응답해준다. 물류센터에서 바코드 찍으면 먼가 계산을 해서 준다. 그 후에 등장한 것이 IOT가 등장하고, 앞으로는 IOE(Internet of everything) 로 나아가고 있다.
2000 초에 스마트 폰, TV 등이 네트워크에 연결되지 않았던 사물들이 하나, 둘 인터넷에 연결이 되면서 본격적인 사물 인터넷 시장으로 접어들기 시작한다. 그리고 자동차나 집 뿐만 아니라 구글의 글래스나 애플의 워치 같이 사람의 몸에 부착하는 물건에도 네트워크 연결 기술이 도입되면서 만물이 인터넷에 연결되는 IoE(환경과 사람)의 세상으로 진입하고 있다.
사물인터넷의 목적
유무선 네트워크에 연결된 다양한 사물에서 수집되는 정보들을 수집, 공유 및 활용하면서, 즉 사물인터넷, 클라우드, 빅데이터가 결합하여 새로운 가치와 서비스를 창출한다.
Iot(데이터 생성)
Cloud(데이터 저장) - 앞으로 usb필요없다.
Big data(데이터 분석) - 데이터를 유의미한 정보로 만든다.
Service - 이때 데이터를 기계로 학습시키는 것이 딥러닝
M2M vs IoT
M2M
사람의 개입 없이 장비 간의 통신을 의미한다. 이에 비해 사물 인터넷은 장비에서 취합된 정보가 사람에게 서비스하는 것까지를 포함한다.
통신/네트워크 - 근거리망을 중심으로 한다. 하지만, Mesh로 사용한다.
Mesh통신
각각의 센서들의 망을 겹치게 두면, 연결되어 끝까지 전달한다. (산불 감시)
디파이스 형태 - 센서 중심
디바이스의 서비스 구동수준 - 단순 정보 수집을 하고, 수동적이다.
서비스 플랫폼 - 모니터링 정보 처리
서비스 관리 규모 - 수천만 개의 사물
사물인터넷
통신/네트워크 - 인터넷 중심
티바이스 형태 - 센서와 액츄에이터의 물리적 움직임과 데이터와 프로세스 등을 포함한 Virtual Thing
디바이스의 서비스 구동 수준 - 자율 판단하는 지능 보유/능동적
서비스 플랫폼 - 의미 기반 모니터링 및 자율 제어
서비스 관리 규모 - 수백 억 이상의 사물
사물인터넷의 응용
사물인터넷이 나온지 시간이 지나면서 여러 표준이 생겨나고 있다.
1. oneM2M 표준
- 한국의 대표적인 서비스 플랫폼 표준으로는 스마트시티와 한전의 스마트그리드 등에 이용한다.
- 에너지, 교통, 국방, 공공서비스 등에서 이용
- HTTP에서 사물과 통신할 떄 사용하는 것 뿐만 아니라 MQTT, CoAP 프로토콜들이 있다.
2. OCF 표준 (Open Connectivity Foundatrion)
- HTTP는 웹서비스에만 동작을 하지만, 블루투같은건 힘들다. 그래서 여기서는 Coap을 사용한다.
cf.
집에서 사용할 떄는 CoAP을 이용. 빠르지만 보안 안좋다. 단거리.
원격으로 밖에서 집에 보일러 키려고 사용하려면 MQTT. 장거리 이용
3. IETF(국제인터넷 표준화기구)
- 6LoWPAN을 통해 표준
- 6LoWPAN의 상위 어플리케이션 계층 프로토콜의 표준화를 위해 CoAP를 개발
사물인터넷포준플랫폼
사물인터넷의 좀더 나은 서비스 제공을 위해 특정 서비스에 종속적이지 않으면서 데이터의 수집/제공, 사물 기기의 관리, 연결 기능 등을 제공하는 공통 시스템, 즉 표준 플랫폼 개발이 필요.
ex) 핸드폰에는 안드로이드가 있다.
한국의 사물인터넷표준 플랫폼에는 모비우스 플랫폼이 있다.
이 플랫폼은 표준기반 사물인터넷 오픈소스 연합체인 OCEAN(Open Alliance for IoT Standard)에 오픈소스로 공개되어 있다.
사물인터넷 네트워크의 기술요소
Devices(라즈베리파이)에 Sensors붙여서 데이터를 받아서, 라즈베리파이에서 데이터를 받고 1차 가공을 하고, 특정 게이트로 수집 후에 cloud로 올리고, 그리고 우리가 사용하는 서비스에 받아서 처리한다. 이러한 것들을 전달할 네트워크가 필수다. 네트워크는 장치와 장치를 연결하는 네트워크와, 장치와 서버를 연결하는 네트워크로 구분된다.
디바이스
장치와 장치가 데이터를 주고 받고 가공후 서버에 보내줄 때는 장치와 장치간의 네트워크가 중요하다.
장치와 장치 간의 네트워크
ex) 온도를 측정 하려하는데 건물에 가려서 제대로 측정이 안되거나 이런 경우는 다른 센서로 온도를 가져와야한다.
아두이노는 OS가 안올라가기 떄문에 관련 것들을 사용할 수 없다. 통신을 하려면, 별도 장치를 붙여야 하기 때문에 돈이 많이 든다.
게이트웨이
게이트웨이란 운영체제가 탑재되어 있어 장치들과 인터넷 사이에서 중계를 하는 장치. OS가 구현한다고 생각하자. 보통은 오픈소스로 되어있는 리눅스 기반을 많이 사용한다.
블루투스와 지그비
장치간의 통신을 위한 네트워크 규격으로 가장 널리 사용되는 것은 블루투스와 지그비(ZigBee)이다.
지그비는 저전력으로 센서와 센서 사이에 통신하기 위해 개발이 되어서 근거리 무선통신(NFC Near Field Communication)에 많이 사용한다.
인터넷
장치와 사물인터넷 서비스를 연결하는 네트워크는 인터넷을 이용한다. 주로 3G/5G 또는 LTE 등 무선 모바일 망ㄹ을 이용한다. 네트워크 프로토콜로는 HTTP, Websocket, MQTT 및 CoAP(저전력 프로토콜) 등이 이용한다. 일반적인 장치는 HTTP가 이용된다.
스마트 장치, 네비게이션, 스마트 티비등에 이용한다.
무선 네트워크 기술
블루투스(Bluetooth)
Iot가 나오면서 전력을 낮춘 블루투스 4.2가 등장했다. 그리고 1:1 뿐만아니라 1:N으로도 가능하다. IPv6/6LoWPAN와의 연동을 발표하여 게이트 웨이를 통해 인터넷으로 바로 연결이 가능하다. 현재위치를 파악하는 기술로는 GPS가 있다. GPS는 위성이 보내는 신호를 이용해서 위치를 판단한다. 삼각형으로 위성의 높이와 나의 위치와 위성의 각도를 가지고 현재 나의 위치를 계산이 가능하다. 그러나 GPS의 단점은 콘크리트 벽을 통과를 할 수 없다. 그래서 지하에서는 GPS파악이 불가능하다. 그래서 생긴 것이 Beacon(비콘) 기술이다. 비콘은 블루투스를 이용해서 위치를 알려준다. 이러한 서비스를 이용해서 근처를 이동할 떄 매장근처 지나갈 떄 쿠폰주는 것이 가능하다.
3이전 - 블푸투스
4.x - 블루투스 스마트
모든 버전과 호환되는 장비 - 블루투스 스마트레디
지그비(ZigBee)
목적) 속도를 빠르게 함이 목적이 아니고 산에 센서를 뿌려놨는데, 베터리가 오래 버티는게 중요하다. 저전력이 포인트다
근거리 무선 통신 구격으로 전송속도는 느리지만 전력소모가 와이파이에 비해 적다
지그비는 다양한 네트워크 구성이 가능한데 특히 메시(mesh) 네트워크 방식으로 대량의 센서 네트워크 구성이 가능
단점) 블루투스는 보통 PC나 스마트 폰에 자동으로 연동이 되지만, 지그비는 별도의 전용 수신기가 필요하다. 좀 비싸다.
6LoWPAN(식스로우팬= IPy6 over Low_power Wireless Personal Area Network)
6LoWPAN은 IETF의 인터넷 영역에 대한 워킹 그룹이며 IEEE 802.15기반 네트워크를 사용해 통신을 할 수 있도록 IPv6(IP버전6)패킷을 허용하는 헤더 압출 메커니즘을 못적으로 한다.
사물인터넷 통신 기술
사물인터넷 서비스에서 사용하는 계층별 프로토콜 스택으로 어플리케이션 계층에는 MQTT, CoAP, AMQP, HTTP(TCP기반) 등 다양한 프로토콜이 존재한다. 주로 MQTT(TCP 기반), CoAP(UDP 기반)가 많이 사용된다.
사물인터넷 데이터 포맷
사물인터넷 네트워크를 통해 주고받는 데이터들은 일정한 포맷을 가지고 있다. 가장 대표적으로 많이 이용되는 포맷은 웹에서 주로 가용하고 있는 XML과 JSON이 있다. 같은 데이터를 표현한 정보라도 XML은 HTML처럼 기본 포맷이 있으므로 복잡해서, JSON을 많이 쓴다.
MessagePack
문자데이터 뿐만 아니라 이미지나 바이너리 데이터도 전송 할 필요가 있다. 이런 경우에 미디어 팩을 사용할 수 있다. JSON과 같은 유사한 포맷을 가지면서 데이터 형식을 바이너리 형식으로 구성하는 방식으로 사람이 읽기에는 부적절하지만 컴퓨터에서 처리할 떄는 유용한 방식이다. 바이너리로 전송하기 떄문에 JSON 포맷보다 훨씬 크기가 적으므로 효울적이다. MessagePack 포맷을 지원하는 라이브러리도 다양한 프로그램 개발 언어의 라이브러리로 제공한다. 자바의 Serialize, 루비의 Marshal, 파이썬의 Pickle, C#의 Stream등이 있다.
ex) 유뷰브에 영상올리거나 짤만들어서 주고 받음.
0526_1
'라즈베리파이' 카테고리의 다른 글
[라즈베리파이4 ERROR] pip install scipy failed (0) | 2020.08.08 |
---|---|
컴퓨터의 음성인식 (0) | 2020.07.31 |
라즈베리파이4 시작하기 (0) | 2020.07.26 |
라즈베리파이 관련 홈페이지 (0) | 2020.07.11 |
- Total
- Today
- Yesterday
- django
- next.config.js
- 클라우데라
- logout
- react
- typescript
- nextjs autoFocus
- error:0308010C:digital envelope routines::unsupported
- NextJS
- 자연어처리
- DFS
- useState
- Express
- read_csv
- mongoDB
- Deque
- nodejs
- UserCreationForm
- Queue
- react autoFocus
- login
- JavaScript
- useHistory 안됨
- pandas
- 자료구조
- vuejs
- BFS
- TensorFlow
- Vue
- Python
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |