Wrapping your head around a "complete" IoT project can be tough. The pipeline can be complex, made up of a number of services and just a bunch of moving parts. Getting started with this can be imitating.
Gandhali Samant felt this too and so wrote the great end-to-end post below that walks you though all the parts and pieces…
IOT or Internet of things is taking over the world and we are encountering more and more of it in our daily lives. But when we come to think of it what does the word IOT actually mean? What are these IOT solutions and how do we start building them?
To answer these questions, lets first start with defining what is IOT? There is no standard definition for IOT but moreover it is any solution that essentially has following four components.
- Things – Things can be anything that can send some kind of useful data. It can be a simple phone or a complex array of sensors sending the data.
- Connectivity – These things need a way to communicate with each other and with internet and for that they need connectivity and protocols.
- Data- The data can be a simple telemetry data, an image or even a video feed.
- Analytics- The data that is gathered needs to be analyzed to derive insights from it. These analytics can be real time analytics such as sending an alert or taking an action or a long term analytics where you might use machine learning on historical data to detect a pattern or predict an outcome.
How Azure fits into the picture ?
Microsoft Azure services give you a way to create your entire IOT solution with the use of many different components. Its not a one way solutions but rather a platform consisting of different services from which you can choose the services best fitted for your own scenario. Here is just a glimpse of the all the available services that can be used in your IOT Scenarios.
Let’s build a scenario, shall we?
We will create a simple IOT scenario, where we will gather data from different devices and ingest it in cloud. Once it is ingested, we will analyze the data to detect an anomaly and then raise an alert. We will use following Azure services in this scenario.
We created a simple scenario where we simulated a device sending telemetry information. Then we used IOT Hub to ingest the data from the device and Stream analytics job to process the data in real time. The stream analytics query, checked if the temperature is going above a threshold and when it did it sent that event to an Event hub.
We then created an Azure function which will get triggered as soon as there is a new event on the Event hub and will send the Event data to a Logic App using HTTP Request Endpoint. On the Logic App trigger, we created a Twilio connector which will read the temperature from the payload and send the Alert.