19
Glenn Vassallo Texas Instruments IoT MVP Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack End to End IoT Proof of Concept

Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

Embed Size (px)

Citation preview

Page 1: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

Glenn VassalloTexas Instruments IoT MVP

Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi

BoosterPackEnd to End IoT Proof of Concept

Page 2: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

Agenda• Introduction• Texas Instruments Devices

– MSP432– CC3100

• Microsoft Azure Cloud – Event Hub

– Streaming Analytics– SQL Database and Web Apps– Machine Learning

• Solution Architecture– IoT End to End Architecture– Solution Architecture Details

• ResourcesThe MSP432 LaunchPad

Page 3: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

Introduction

What Does This Proof of Concept Demonstrate?

Page 4: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

Overview

• Demonstrates an end to end IoT system utilising Microsoft Azure Cloud Technology and the Texas Instruments MSP432 LaunchPad and CC3100 Wi-Fi BoosterPack

• Included are all the components you would expect in a typical telemetry based sensor scenario that is utilising affordable embedded microcontrollers connected to various sensors. For example a wireless sensor network utilised in machine health monitoring

• The architecture allows for a hyper-scaled ingestion system (millions of messages/second), near real-time streaming analytics and machine learning capabilities

Page 5: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

Texas Instruments Devices

What TI Devices Do I Need?

Page 6: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

MSP432 LaunchPad

• LaunchPad development platform for the MSP432 microcontroller

• The MSP432 offers both high performance and low power.

• Built on a 48MHz ARM Cortex M4F core and offering advanced peripheral selection

• 256 KB Flash and 64 KB of SRAMMSP432 Functional Block Diagram

Page 7: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

CC3100 BoosterPack

• Plugs directly into the 40 pin headers available on most LaunchPads

• Add Wi-Fi connectivity to LaunchPads

• Turns a standard LaunchPad into a connected LaunchPad ready to develop IoT (Internet of Things) applications

• TCP/IP & TLS/SSL StackCC3100 Functional Block Diagram

Page 8: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

Microsoft Azure Cloud

What Is Microsoft Azure Cloud?

Page 9: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

• A public cloud service by Microsoft that has number data centers all around the world

• Offers both IaaS (Infrastructure as a Service) and PaaS (Platform as a Service)

• Is made up of many services which can be used to develop all kinds of applications including IoT (Internet of Things) applications

• The end to end IoT proof of concept utilizes many of the PaaS components available with Azure

The Azure Cloud

Web App

Stream Analytics

Machine Learning

HDInsight

Event Hub

SQL Database

Page 10: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

• Event Hubs is a highly scalable publish-subscribe ingestor that can intake millions of events per second

• Enable applications to process events with variable load profiles

• Provides the capacity to ingest events from millions of devices while preserving event order on a per device basis.

Azure Event Hub

Azure Event Hubs Ingestion and Partition Model

Page 11: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

• Stream Analytics integrates with Event Hubs to ingest and process millions of events per second

• Can compare multiple real-time streams or compare real-time streams together with historical values and predictive models.

• Enables the detection of anomalies, the ability to trigger and display data on real-time dashboards

• Process data and insert into long term storage

Azure Stream Analytics

Outputs

Inputs

Stream Analytics

Event HubsBlob Storage

Event HubsBlob StorageTable StorageSQL Database

Power Bi

Page 12: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

• Cloud versions of SQL Database and a Web Server

• These are fully managed PaaS versions, which means you do not need install or provide security updates or any usually administrative over head

• Supports elastic scaling to meet any load.

• Integration with other Azure services and support for multiple web programming languages

Azure SQL Database and Web Apps

Azure Portal

Page 13: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

• You can develop models using Azure Machine Learning Studio from within a web browser (see the image on the right)

• You can publish models to a web service which can the be queried using REST API or by Stream Analytics in near real-time

• Turn all the telemetry that has been stored into a intelligence to predict and categorise events

Azure Machine Learning

Azure Machine Learning Studio

Page 14: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

Solution Architecture

How does it all work together?

Page 15: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

IoT End to End ArchitectureColor Code: Much of the solutions code is available on Github, this includes detailed setup steps.

Blue - Code and Steps Included   

Orange - Please Contact For Details   

Grey - External Components

Page 16: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

Solution Architecture Details (Step 1)

• The Texas Instruments LaunchPad sends telemetry including simulated temperature and humidity readings to Azure Event Hub using its REST API

• Alternatively telemetry can be produced via an Azure Web Site webpage using a fake telemetry generator. The telemetry is then ingested by Azure Event Hub

• In a real world system the MSP432 would be using its peripheral which would be attached to sensors

Page 17: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

Solution Architecture Details (Step 2)

• The telemetry that has been ingested by Azure Event Hub is then processed by Azure Stream Analytics in near real time

• Azure Stream Analytics performs a number of queries to process the telemetry in a number of ways.

• These queries prepare the data to be used in various ways

Page 18: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

Solution Architecture Details (Step 3)• Processed telemetry is stored in an Azure SQL Server Table with

individual telemetry and averaged temperature and humidity data 5 minute tumbling window

• Alerts can be generated by comparing values set in an SQL Database Table and can be sent as an SMS, email or phone alert using an Azure API App and an External System like Twilio

• Notification can be sent to Mobile Apps and be viewed as a Smart Watch Alert

• Live data can be viewed in a moving graph using Power BI

• Newly stored processed telemetry can also be viewed as it arrives via an Azure Web App webpage

• Additionally a predictive model can be queried via the Azure Machine Learning Web Service and hence provide near real-time predictions for many different scenarios

Page 19: Microsoft Azure & Texas Instruments MSP432 LaunchPad & CC3100 Wi-Fi BoosterPack

ResourcesEnd to End Proof of Concept

Websites

Wi-Fi (CC3200/CC3100) http://www.azurelaunchpad.net

BLE, 6LoWPAN, ZigBee

http://www.azuresensortag.net

Github Resources

Code Repositoryhttps://github.com/remixed123/IoT

Setup Instructionshttps://github.com/remixed123/IoT/wiki

Glenn VassalloIoT Solutions Architect / Full Stack IoT Developer

https://www.linkedin.com/in/glennvassallo

Azure Resources

The Azure Cloud

http://azure.microsoft.com/en-us/

Event Hub

http://azure.microsoft.com/en-us/services/event-hubs/

Streaming Analyticshttp://azure.microsoft.com/en-us/services/stream-analytics/