iot cloud architecture

28
December 18 th , 2014 Cloud Architecture Internet of Everything Meetup Mumbai, India

Upload: machinepulse

Post on 16-Jul-2015

1.176 views

Category:

Documents


2 download

TRANSCRIPT

December 18th, 2014

Cloud ArchitectureInternet of Everything Meetup

Mumbai, India

• Introduction to Internet of Things

• Introduction to the Cloud

• IOT Architecture

• IOT Gateways

• IOT Sensor Interfaces

• IOT Network Interfaces

• Cloud Architecture

• Data Acquisition

• Data Storage and Aggregation

• Data Analytics

• User Interfaces

Contents

Introduction to Internet of Things

Introduction to Internet of Things

Source: Wikipedia

The Internet of Things (IoT) is a scenario in which objects, animals or people are provided with unique

identifiers and the ability to transfer data over a network without requiring human-to-human or human-to-

computer interaction. IoT has evolved from the convergence of wireless technologies, micro-

electromechanical systems and the Internet.

A thing, in the Internet of Things, can be a person with a heart monitor implant, a farm animal with a

biochip transponder, an automobile that has built-in sensors to alert the driver when tire pressure is low -

- or any other natural or man-made object that can be assigned an IP address and provided with the

ability to transfer data over a network. So far, the Internet of Things has been most closely associated

with machine-to-machine (M2M) communication in manufacturing and power, oil and gas utilities.

Products built with M2M communication capabilities are often referred to as being smart.

Introduction to Internet of Things

Introduction to the Cloud

Introduction to the Cloud

Source: Wikipedia

Cloud computing is typically defined as a type of computing that relies on sharing computing

resources rather than having local servers or personal devices to handle applications.

In cloud computing, the word cloud (also phrased as "the cloud") is used as a metaphor for "the

Internet," so the phrase cloud computing means "a type of Internet-based computing," where different

services — such as servers, storage and applications —are delivered to an organization's computers

and devices through the Internet.

Introduction to the Cloud

IoT Architecture

IoT Architecture

Source: Dzone

An IOT platform has basically three building blocks

1. Things

2. Gateway

3. Network and Cloud

IoT Architecture

Source: Intel

IoT Gateway

The heart of a cloud platform could use open source boards like the Raspberry Pi, Beaglebone Black,

Intel Galileo etc. These are usual Linux boards that run different flavours of Linux like Raspbian on the

Raspberry Pi, Angstrom on the Beaglebone etc. These boards interface with devices on the one hand

and the cloud platform on the other.

IoT Gateway

Beaglebone Back Raspberry Pi Intel Galileo

IoT Sensor Interfaces

Let’s take a look at the device interfaces. So for example, devices could interface with the Raspberry

Pi over RS-485, and Xbee. An RS-485 network allows a multi-dropped serial wired network allowing a

host of devices to connect. The Xbee creates a wireless mesh network allowing large number of

wireless devices to connect. These are open source interfaces and allows creation of a large sensor

network. We could also use the GPIO on the Raspberry Pi for physical inputs.

Sensor Interfaces

Xbee Mesh network

Raspberry Pi

RS-485 to Serial

IoT Network Interfaces

The next interface we look at is the cloud interface. This is achieved using a simple WiFi dongle or a GPRS shield. The

WiFi dongle interfaces over USB and the GPRS shield uses the serial interface. Also available is the Ethernet port

which could be used for interface.

Network Interfaces

GPRS shield

Wi-Fi dongle

Raspberry Pi

Cloud Architecture

Cloud Architecture

Source: iotechnology.com

Cloud Architecture

Source: Microsoft

Cloud Architecture

Source: Aeris

Cloud Data Acquisition

Cloud Data Acquisition

Now lets take a look at data acquisition on the Cloud platform. I’d recommend use of a very good open-source

implementation called Ponte, developed by Matteo Collina (@matteocollina). It supports three of the most widely

used protocols for gateway interfaces, namely HTTP, MQTT and COAP. It support multiple databases like

MongoDB, Redis and LevelDB. Also has an inbuilt pub-sub mechanism for publishing and subscribing to other

devices over multiple protocols.

Data Analytics

Data Analytics

User Interfaces

Cloud View

The Cloud view requires connecting to a data store, web server/ framework for handling requests and a robust client-

side library. I’d recommend using the open-source MEAN stack (MongoDB, Expressjs, AngularJS and Node.js)

Thank You.

Anand George

Software Developer,MachinePulse, Mumbai

@anandgeor

@machine_pulse MachinePulse MachinePulse machinepulse.in