Upload
microsoft
View
509
Download
0
Embed Size (px)
Citation preview
Всеобъемлющий взгляд на Интернет вещейАлександр БелоцерковскийТехнологический евангелист, руководитель IoT-направления по CIS в DX, Microsoft
ЧТО ТАКОЕIoT
WINDOWS 10
для IoT
MicrosoftAzure
IoT SuiteУниверсальные приложения
на встраиваемых устройствах
Облако – ключ к
эффективному внедрению IoT
Небольшое введение в
проблематику
Интернет ваших вещей
Интернет вещей начинается с Ваших вещей.• Использовать существующую
инфраструктуру• Добавить дополнительные устройства к
существующим• Получить больше от тех данных, которые
легко можно собрать
• Данные –> информация –> инсайты ($+)• Более эффективное использование ресурсов
(сокращение стоимости, влияние на окр. среду)• Пример: управление питанием в зданиях и ЦОД
• Более совершенное таргетирование продуктов и сервисов (увеличение доходов, влияние на социум)• Пример: превентивное обслуживание, аналитика оптимального
использования
• “Вещи” = быстро-растущий источник сырых материалов для получения инсайтов
Зачем все это?Строить бизнес на основе данных
• IoT – не только данные• Автоматическое и умное удаленное управление• Удаленный контроль = источник эффективности• Новые формы взаимодействия с клиентами
• IoT делает возможным взаимодействие с пользователями с помощью физических объектов
• Взаимодействие с потенциальными клиентами:• Превентивное обслуживание• Рассылка best practices• Проактивные продажи• Удаленное обслуживание
Зачем все это?Реакция на события
Сбор телеметрии
УправлениеЭто просто• Надежный бэкенд• Хранилище• Безопасность• …
Это уже не очень…
• Security• Latency• …
Analyse@ Scale
Big Data
Data in Motion
Ливневка
Occupancy
Energy used
CO2 levels
Amounts of coffee
Water used
Людей в здании
Энергии спортзалом
Number of cars in the parking
Lights
Температура
Toilet usage
Electricity powered by Solar Energy
Например
Опенспейс
Энергии
Уровень CO2
Выпито кофе
Использовано воды
Парковка
Свет
Туалеты ;)
Электричества потреблено
500 миллионов транзакцийежедневно
“At first, all mobile phones were bricks – basically two-way radios. Now, in just a few short years, they have advanced to become a laptop in your hand,” Smith says. “Buildings are still that brick phone. We want to get buildings to where phones are.”Darrell Smith, Director of Facilities and EnergyFacilities engineers like Whitson and Grove think of the buildings they care for as living, breathing things. Just like the human body, buildings have a wealth of indicators that things are going well – or, in some cases, not so well. Also like the human body, small ailments can lead to much larger failures, and an ounce of prevention can lead to many pounds of cure.
Microsoft IoTОт устройств к облаку
IoT-редакции операционной системы Windows20 лет опыта со встраиваемыми устройствамиМного устройств = одна платформа
Подходит как для компаний, так и мейкеровОптимизировано под текущие реалии и сценарииБесплатная редакция IoT Core
Облачные IoT-решенияЛегко разворачивать и управлять
Оплата и масштабирование по мере использованияГлобальное покрытие
Современные меры защиты
Windows, Mbed, Linux, iOS, Android, RTOS
Azure IoT
Windows 10 IoT – ОС для Интернета вещей
Windows 10
Клиентская составляющая:Windows 10
Интернет вещей
Мини-планше
т
Настольный компьютер
Смартфон
ПланшетНоутбук
Универсальные приложения
Windows
Устройства www.windowsondevices.com
ПЛАТА ПРОЦЕССОР ПАМЯТЬ
MinnowBoard Max v1
1.4GHz Single-Core 64-bit Intel Atom
1.0 GB DDR3 RAM
MinnowBoard Max v2
1.33GHz Dual-Core 64-bit Intel Atom
2.0 GB DDR3 RAM
Raspberry Pi 2
900MHz Quad-Core ARM Cortex-A7
1.0 GB RAM
AllJoyn
AllJoyn – решаем проблемы с инкапсуляцией протоколов(IOC/IIC)Thread – решаем проблемы с протоколами
DEMOУправление лампой с Android/Windows Phone с помощью AllJoyn
Cancel
WiFiFirmware
Notifications
AllJoyn-приложен
ие
AllJoyn Device
Control
Consumer (client)Ищет и подключается к продюсеру
Как это работает – роли AllJoyn
Lighting App
Устройство может быть продюсером либо консьюмером либо и тем и другим
Producer (server)Вещь, реализующая интерфейс AllJoyn
Lighting Controller
Lamp Lamp
Lamp
Установить Windows 10 и SDK/ToolsОпределить интерфейсы AllJoynСгенерировать кодРеализовать AllJoynСбилдить под нужную архитектуру
Как начать
Резюме по Windows 10На Windows 10 можно писать приложения, которые будут работать везде (при условии правильной их адаптации к форм-фактору)
К Windows 10 можно писать универсальные драйвера, которые будут работать с многими устройствами
Разработка драйверов стала более простой благодаря Windows Driver Framework (доступный на GitHub)
Windows 10 можно ставить на разные платы
Microsoft Azure как облачная платформа для IoT-решений
Azure IoT
Microsoft Azure IoTИсточники Данные Хранилище Аналитика Потребитель
Event/IoT Hubs
SQL Database
Machine Learning
Azure Websites
Service Bus Table/Blob Storage
Stream Analytics Power BI
Внешние сервисы DocumentDB HDInsight Notification
Hubs
Внешние источники данных
Data Factory Mobile Services
BizTalk Services
{ }
Event Hub
Источники событий
Сервисы в облаке
Хранение и анализ
Своя обработка
Пользовательские интерфейсыПайплайн на другие сервисы
Event Hub
Azure Service BusQueues Topics Event hubs
/azure-sdk-for-python/
/azure-sdk-for-php/
/azure-sdk-for-node/
/azure-sdk-for-java/
/azure-sdk-for-ruby/
HTTP(S)
https://github.com/windowsAzure/
AMQP 1.0
AMQP 1.0
Embedded
Proton-C AMQP 1.0
Stream Analytics (to SQL)SELECT System.TimeStamp as UTCDateTime, device_id as Device_Id, COUNT (*) as CountFROM [iotdemoeventhub] TIMESTAMP BY EventProcessedUtcTimeINTO [alertCounts]WHERE ( CAST(reading AS float) > 115.0 )GROUP BY device_id, SlidingWindow(second, 15)HAVING COUNT(*) > 1
SELECT device_id as Device_Id, reading as Reading, EventProcessedUtcTime as UTCDateTimeFROM [iotdemoeventhub] TIMESTAMP BY EventProcessedUtcTimeINTO [stream2sql]
Например, сообщение в очередь Service Bus на Python
message = Message(base64.b64encode('Hello World'))sbs = ServiceBusService(service_namespace,shared_access_key_name=key_name,shared_access_key_value=key_value)sbs.send_queue_message(queue_name,message)
from azure.servicebus import ServiceBusService, Message, Queuefrom azure.storage import QueueServiceimport base64 service_namespace = '<YOURSERVICENAME>'key_name = 'MyIoTDevices'key_value = '<YOURKEY>' queue_name = 'mytestqueue'
Например, сообщение в Event Hub на Python с Intel Edison
https://github.com/rudx/content/blob/master/IoT/python_event_hub.py
Пример архитектурыИсточники данных INGEST PREPARE ANALYZE PUBLISH CONSUME
Data Catalog: Register, Annotate, Understand, Discover Data Sets
Diagnostic streaming
Event hubsStream Analytics
Stream Analytics
Business apps
Enterprise data sources
Machine Learning
PowerBI
Cortana
Data in motion
Data at rest
Azure Blob
Data Factory: Move Data, Orchestrate, Schedule, and Monitor
HDInsight
HDInsight
Machine Learning
Azure SQL Data Warehouse
Demo Event Hub и Stream Analytics
Event HubStream Analytics
SQL Blob
Website
Excel
Александр БелоцерковскийТехнологический евангелист, [email protected]
@ahriman_rufacebook.com/ahriman42blogs.msdn.com/b/albeГруппа Azure для всех - facebook.com/groups/azurerus/
Всем спасибо! Ваши вопросы
azure.com AzureHub.ru
msftva.ru
©2015 Microsoft Corporation. All rights reserved. Microsoft, Windows, Office, Azure, System Center, Dynamics and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.