SlideShare una empresa de Scribd logo
1 de 74
Descargar para leer sin conexión
EDGE COMPUTING NA PRÁTICA
COM IOT, MACHINE LEARNING E COM GOOGLE CLOUD
Alvaro Viebrantz
aviebrantz.com
@alvaroviebrantz
Alvaro Viebrantz
@alvaroviebrantz
aviebrantz.com
Google Developer Expert for IoT
Product Engineer @ Leverege
Organizador do GDG Cuiabá e DevMT
ON PREMISE
5
Pilares
Disponibilidade Manutenção Escalável
Economia
6
O QUE É 

EDGE COMPUTING ?
QUANDO FAZ SENTIDO ?
TEMPO DE RESPOSTA
USO DE BANDA
FUNCIONAR OFFLINE
PRIVACIDADE
CUSTO
MÃO NA MASSA
VAMOS VER ISSO NA PRÁTICA
USANDO CAMERAS COMO SENSORES
16
Cameras como sensores
Projeto de Edge Computing
• Cameras com Wifi o mais barato possível
• Servidor local processando as imagens
• Detecção de objetos usando Machine Learning
• Enviar dados processados para a nuvem
• Fornecer interface web para ver localmente e remotamente
os dados
17
Arquitetura do Projeto
HARDWARE
19
ESP32 Cam Raspberry Pi 3
10$
FTDI
PROGRAMANDO AS CAMERAS
OBJETIVO
FORNECER AS IMAGENS
NA REDE LOCAL
22
24
ESP-IDF
SDK Oficial para programar micro-controladores da Espressif
• Várias coisas estão sendo lançadas usando essa SDK.
• esp32-camera — Drivers para cameras
• esp-who — Framework de visão computacional
• esp-adf — Trabalhar com audio
• esp-mdf — Redes mesh
25
26
Firmware das cameras
github.com/alvarowolfx/gcloud-iot-edge-tensorflow/tree/master/esp32-camera-firmware
• Conexão com a camera OV2640
• Endpoint HTTP para acesso a foto
• Serviço mDNS
• Para que as cameras possam ser encontradas na rede
local — {INSTANCE_NAME}.local/jpg
• Serviço _camera e protocolo _tcp
27
mDNS
Protocolo de descoberta na rede local
• http://indoor-camera-ec5d.local/jpg
• http://indoor-camera-60d8.local/jpg
DEMO TIME

MAY THE DEMO GODS BE WITH US
SETUP EM NUVEM
RECEBIMENTO DOS DADOS
GERENCIAMENTO DOS DISPOSITIVOS
https:!//cloud.google.com/iot/docs/how-tos/gateways/
COMUNICAÇÃO
AUTENTICAÇÃO E
AUTORIZAÇÃOPROTOCOLOS
MENSAGERIA - FILA DE
PROCESSAMENTO
GATEWAY LOCAL
OBJETIVO
BUSCAR IMAGENS, CLASSIFICAR E
ENVIAR PRA NUVEM
42
PODEMOS PROGRAMAR EM
QUALQUER LINGUAGEM
43
44
@tensorflow/models — npm package
Modelo prontos para serem usados
• Classificação e detecção de objetos
• Estimativa de posição
• Comandos de voz
45
Server local
github.com/alvarowolfx/gcloud-iot-edge-tensorflow/tree/master/edge-server
46
• Busca cameras usando mDNS — DeviceListener
• Detecta objeto nas imagens (Image Classifier)
• Tensorflow e o modelo cocossd
• Envia dados via mqtt para a nuvem (CloudIoTCoreGateway)
• Utiliza o modo Gateway do Cloud IoT Core
• Disponibiliza interface web que sincroniza usando socket.io
Server local
github.com/alvarowolfx/gcloud-iot-edge-tensorflow/tree/master/edge-server
47
48
49
50
51
52
53
PROCESSAMENTO DOS DADOS
PROGRAMAÇÃO
ORIENTADA A EVENTOS
NODEJS
PYTHON (BETA)
GOLANG (BETA)
ARMAZENAMENTO DOS DADOS
DADOS EM FORMA DE ÁRVORE - JSON
SDK PARA VÁRIAS LINGUAGENS
60
61
62
FIREBASE DEPLOY 🔥 🔥 🔥
VISUALIZAR OS DADOS
!64
!65
!66
!67
DEMO TIME

MAY THE DEMO GODS BE WITH US
TRABALHOS FUTURO
Estimar posição
Modelo Posenet
Treinar modelo customizado
Detectar pessoas especificas ou diferenciar meus gatos
Treinar modelo customizado
Detectar pessoas especificas ou diferenciar meus gatos
Enviar alertas
Definir regras para mandar mensagens — se uma classe for vista em um cômodo
OBRIGADO
Alvaro Viebrantz
aviebrantz.com
@alvaroviebrantz

Más contenido relacionado

Similar a Edge computing na prática com IoT, Machine Learning e Google Cloud

Arquitetura de IoT na prática com Google Cloud - Join Community 2018
Arquitetura de IoT na prática com Google Cloud - Join Community 2018Arquitetura de IoT na prática com Google Cloud - Join Community 2018
Arquitetura de IoT na prática com Google Cloud - Join Community 2018Alvaro Viebrantz
 
Internet das coisas, machine learnign e maquinas de doces
Internet das coisas, machine learnign e maquinas de doces Internet das coisas, machine learnign e maquinas de doces
Internet das coisas, machine learnign e maquinas de doces Alvaro Viebrantz
 
Arquitetura de Internet das Coisas usando Google Cloud
Arquitetura de Internet das Coisas usando Google CloudArquitetura de Internet das Coisas usando Google Cloud
Arquitetura de Internet das Coisas usando Google CloudAlvaro Viebrantz
 
ASP.NET vNext no MAC OS
ASP.NET vNext no MAC OSASP.NET vNext no MAC OS
ASP.NET vNext no MAC OSJorge Maia
 
Soluções de IoT usando Google Cloud e Firebase
Soluções de IoT usando Google Cloud e FirebaseSoluções de IoT usando Google Cloud e Firebase
Soluções de IoT usando Google Cloud e FirebaseAlvaro Viebrantz
 
Desenvolvendo Produtos para Internet das Coisas
Desenvolvendo Produtos para Internet das CoisasDesenvolvendo Produtos para Internet das Coisas
Desenvolvendo Produtos para Internet das CoisasMarco Antonio Maciel
 
IoT Usando Azure Como Backend
IoT Usando Azure Como BackendIoT Usando Azure Como Backend
IoT Usando Azure Como BackendJorge Maia
 
Integração: IoT Central + CosmosDB + Power BI - Dicas, desafios e boas práticas.
Integração: IoT Central + CosmosDB + Power BI - Dicas, desafios e boas práticas.Integração: IoT Central + CosmosDB + Power BI - Dicas, desafios e boas práticas.
Integração: IoT Central + CosmosDB + Power BI - Dicas, desafios e boas práticas.Walter Coan
 
Contribuições do projeto Azure Sphere para evolução dos padrões de segurança ...
Contribuições do projeto Azure Sphere para evolução dos padrões de segurança ...Contribuições do projeto Azure Sphere para evolução dos padrões de segurança ...
Contribuições do projeto Azure Sphere para evolução dos padrões de segurança ...Walter Coan
 
Douglasesteves meetupzabbix
Douglasesteves meetupzabbixDouglasesteves meetupzabbix
Douglasesteves meetupzabbixDouglas Esteves
 
ZABBIX Proxy com Raspberry PI - 2º ZABBIX MEETUP DO INTERIOR-SP
ZABBIX Proxy com Raspberry PI - 2º ZABBIX MEETUP DO INTERIOR-SPZABBIX Proxy com Raspberry PI - 2º ZABBIX MEETUP DO INTERIOR-SP
ZABBIX Proxy com Raspberry PI - 2º ZABBIX MEETUP DO INTERIOR-SPZabbix BR
 
Descomplicando o Android
Descomplicando o AndroidDescomplicando o Android
Descomplicando o AndroidHeider Lopes
 
Netduino e .NET Micro Framework
Netduino e .NET Micro FrameworkNetduino e .NET Micro Framework
Netduino e .NET Micro FrameworkIgor Kondrasovas
 
Docker | Minicurso Gratuito - Azure na Prática
Docker | Minicurso Gratuito - Azure na PráticaDocker | Minicurso Gratuito - Azure na Prática
Docker | Minicurso Gratuito - Azure na PráticaRenato Groff
 
A Revolução já começou
A Revolução já começouA Revolução já começou
A Revolução já começouJose Wilker
 
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWS
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWSAcelerando a entrega de software com as ferramentas de desenvolvimento da AWS
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWSAmazon Web Services LATAM
 
Internet das coisas - A revolução já começou
Internet das coisas - A revolução já começouInternet das coisas - A revolução já começou
Internet das coisas - A revolução já começouJose Wilker
 

Similar a Edge computing na prática com IoT, Machine Learning e Google Cloud (20)

Arquitetura de IoT na prática com Google Cloud - Join Community 2018
Arquitetura de IoT na prática com Google Cloud - Join Community 2018Arquitetura de IoT na prática com Google Cloud - Join Community 2018
Arquitetura de IoT na prática com Google Cloud - Join Community 2018
 
Internet das coisas, machine learnign e maquinas de doces
Internet das coisas, machine learnign e maquinas de doces Internet das coisas, machine learnign e maquinas de doces
Internet das coisas, machine learnign e maquinas de doces
 
Arquitetura de Internet das Coisas usando Google Cloud
Arquitetura de Internet das Coisas usando Google CloudArquitetura de Internet das Coisas usando Google Cloud
Arquitetura de Internet das Coisas usando Google Cloud
 
ASP.NET vNext no MAC OS
ASP.NET vNext no MAC OSASP.NET vNext no MAC OS
ASP.NET vNext no MAC OS
 
Soluções de IoT usando Google Cloud e Firebase
Soluções de IoT usando Google Cloud e FirebaseSoluções de IoT usando Google Cloud e Firebase
Soluções de IoT usando Google Cloud e Firebase
 
Desenvolvendo Produtos para Internet das Coisas
Desenvolvendo Produtos para Internet das CoisasDesenvolvendo Produtos para Internet das Coisas
Desenvolvendo Produtos para Internet das Coisas
 
IoT Usando Azure Como Backend
IoT Usando Azure Como BackendIoT Usando Azure Como Backend
IoT Usando Azure Como Backend
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Android forensics the hard work
Android forensics   the hard workAndroid forensics   the hard work
Android forensics the hard work
 
Integração: IoT Central + CosmosDB + Power BI - Dicas, desafios e boas práticas.
Integração: IoT Central + CosmosDB + Power BI - Dicas, desafios e boas práticas.Integração: IoT Central + CosmosDB + Power BI - Dicas, desafios e boas práticas.
Integração: IoT Central + CosmosDB + Power BI - Dicas, desafios e boas práticas.
 
Contribuições do projeto Azure Sphere para evolução dos padrões de segurança ...
Contribuições do projeto Azure Sphere para evolução dos padrões de segurança ...Contribuições do projeto Azure Sphere para evolução dos padrões de segurança ...
Contribuições do projeto Azure Sphere para evolução dos padrões de segurança ...
 
Douglasesteves meetupzabbix
Douglasesteves meetupzabbixDouglasesteves meetupzabbix
Douglasesteves meetupzabbix
 
ZABBIX Proxy com Raspberry PI - 2º ZABBIX MEETUP DO INTERIOR-SP
ZABBIX Proxy com Raspberry PI - 2º ZABBIX MEETUP DO INTERIOR-SPZABBIX Proxy com Raspberry PI - 2º ZABBIX MEETUP DO INTERIOR-SP
ZABBIX Proxy com Raspberry PI - 2º ZABBIX MEETUP DO INTERIOR-SP
 
Intel Perceptual Computing SDK
Intel Perceptual Computing SDKIntel Perceptual Computing SDK
Intel Perceptual Computing SDK
 
Descomplicando o Android
Descomplicando o AndroidDescomplicando o Android
Descomplicando o Android
 
Netduino e .NET Micro Framework
Netduino e .NET Micro FrameworkNetduino e .NET Micro Framework
Netduino e .NET Micro Framework
 
Docker | Minicurso Gratuito - Azure na Prática
Docker | Minicurso Gratuito - Azure na PráticaDocker | Minicurso Gratuito - Azure na Prática
Docker | Minicurso Gratuito - Azure na Prática
 
A Revolução já começou
A Revolução já começouA Revolução já começou
A Revolução já começou
 
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWS
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWSAcelerando a entrega de software com as ferramentas de desenvolvimento da AWS
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWS
 
Internet das coisas - A revolução já começou
Internet das coisas - A revolução já começouInternet das coisas - A revolução já começou
Internet das coisas - A revolução já começou
 

Más de Alvaro Viebrantz

BigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIBigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIAlvaro Viebrantz
 
End to End IoT projects with Zephyr.pdf
End to End IoT projects with Zephyr.pdfEnd to End IoT projects with Zephyr.pdf
End to End IoT projects with Zephyr.pdfAlvaro Viebrantz
 
Carreira de Desenvolvimento
Carreira de DesenvolvimentoCarreira de Desenvolvimento
Carreira de DesenvolvimentoAlvaro Viebrantz
 
Construindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoConstruindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoAlvaro Viebrantz
 
Prototipação em hackathons
Prototipação em hackathonsPrototipação em hackathons
Prototipação em hackathonsAlvaro Viebrantz
 
Building REST APIs using gRPC and Go
Building REST APIs using gRPC and GoBuilding REST APIs using gRPC and Go
Building REST APIs using gRPC and GoAlvaro Viebrantz
 
O que projetos de IoT precisam ?
O que projetos de IoT precisam ?O que projetos de IoT precisam ?
O que projetos de IoT precisam ?Alvaro Viebrantz
 
Ambiente de CI/CD com Google Cloud
Ambiente de CI/CD com Google CloudAmbiente de CI/CD com Google Cloud
Ambiente de CI/CD com Google CloudAlvaro Viebrantz
 
Big Query - Escalabilidade Infinita para os seus Dados
Big Query  - Escalabilidade Infinita para os seus DadosBig Query  - Escalabilidade Infinita para os seus Dados
Big Query - Escalabilidade Infinita para os seus DadosAlvaro Viebrantz
 
Edge computing in practice using IoT, Tensorflow and Google Cloud
Edge computing in practice using IoT, Tensorflow and Google CloudEdge computing in practice using IoT, Tensorflow and Google Cloud
Edge computing in practice using IoT, Tensorflow and Google CloudAlvaro Viebrantz
 
Construindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
Construindo projetos para o Google Assistant - I/O 2019 Recap São PauloConstruindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
Construindo projetos para o Google Assistant - I/O 2019 Recap São PauloAlvaro Viebrantz
 
Construindo projetos com Google Assistant e IoT
Construindo projetos com Google Assistant e IoTConstruindo projetos com Google Assistant e IoT
Construindo projetos com Google Assistant e IoTAlvaro Viebrantz
 
Explorando Go em Ambiente Embarcado
Explorando Go em Ambiente EmbarcadoExplorando Go em Ambiente Embarcado
Explorando Go em Ambiente EmbarcadoAlvaro Viebrantz
 
Soluções de IoT usando Arduino e Google Cloud
Soluções de IoT usando Arduino e Google CloudSoluções de IoT usando Arduino e Google Cloud
Soluções de IoT usando Arduino e Google CloudAlvaro Viebrantz
 
Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...
Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...
Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...Alvaro Viebrantz
 
Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018
Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018
Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018Alvaro Viebrantz
 
Internet das coisas - Conectando seus dispositivos à nuvem de forma inteligente
Internet das coisas - Conectando seus dispositivos à nuvem de forma inteligenteInternet das coisas - Conectando seus dispositivos à nuvem de forma inteligente
Internet das coisas - Conectando seus dispositivos à nuvem de forma inteligenteAlvaro Viebrantz
 
WebUSB e WebBluetooth - Conectando seu Hardware a Web
WebUSB e WebBluetooth - Conectando seu Hardware a WebWebUSB e WebBluetooth - Conectando seu Hardware a Web
WebUSB e WebBluetooth - Conectando seu Hardware a WebAlvaro Viebrantz
 
Codelab - Actions on Google
Codelab - Actions on GoogleCodelab - Actions on Google
Codelab - Actions on GoogleAlvaro Viebrantz
 
From Zero to App - Usando React e Firebase
From Zero to App  - Usando React e Firebase From Zero to App  - Usando React e Firebase
From Zero to App - Usando React e Firebase Alvaro Viebrantz
 

Más de Alvaro Viebrantz (20)

BigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIBigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage API
 
End to End IoT projects with Zephyr.pdf
End to End IoT projects with Zephyr.pdfEnd to End IoT projects with Zephyr.pdf
End to End IoT projects with Zephyr.pdf
 
Carreira de Desenvolvimento
Carreira de DesenvolvimentoCarreira de Desenvolvimento
Carreira de Desenvolvimento
 
Construindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoConstruindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em Go
 
Prototipação em hackathons
Prototipação em hackathonsPrototipação em hackathons
Prototipação em hackathons
 
Building REST APIs using gRPC and Go
Building REST APIs using gRPC and GoBuilding REST APIs using gRPC and Go
Building REST APIs using gRPC and Go
 
O que projetos de IoT precisam ?
O que projetos de IoT precisam ?O que projetos de IoT precisam ?
O que projetos de IoT precisam ?
 
Ambiente de CI/CD com Google Cloud
Ambiente de CI/CD com Google CloudAmbiente de CI/CD com Google Cloud
Ambiente de CI/CD com Google Cloud
 
Big Query - Escalabilidade Infinita para os seus Dados
Big Query  - Escalabilidade Infinita para os seus DadosBig Query  - Escalabilidade Infinita para os seus Dados
Big Query - Escalabilidade Infinita para os seus Dados
 
Edge computing in practice using IoT, Tensorflow and Google Cloud
Edge computing in practice using IoT, Tensorflow and Google CloudEdge computing in practice using IoT, Tensorflow and Google Cloud
Edge computing in practice using IoT, Tensorflow and Google Cloud
 
Construindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
Construindo projetos para o Google Assistant - I/O 2019 Recap São PauloConstruindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
Construindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
 
Construindo projetos com Google Assistant e IoT
Construindo projetos com Google Assistant e IoTConstruindo projetos com Google Assistant e IoT
Construindo projetos com Google Assistant e IoT
 
Explorando Go em Ambiente Embarcado
Explorando Go em Ambiente EmbarcadoExplorando Go em Ambiente Embarcado
Explorando Go em Ambiente Embarcado
 
Soluções de IoT usando Arduino e Google Cloud
Soluções de IoT usando Arduino e Google CloudSoluções de IoT usando Arduino e Google Cloud
Soluções de IoT usando Arduino e Google Cloud
 
Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...
Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...
Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...
 
Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018
Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018
Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018
 
Internet das coisas - Conectando seus dispositivos à nuvem de forma inteligente
Internet das coisas - Conectando seus dispositivos à nuvem de forma inteligenteInternet das coisas - Conectando seus dispositivos à nuvem de forma inteligente
Internet das coisas - Conectando seus dispositivos à nuvem de forma inteligente
 
WebUSB e WebBluetooth - Conectando seu Hardware a Web
WebUSB e WebBluetooth - Conectando seu Hardware a WebWebUSB e WebBluetooth - Conectando seu Hardware a Web
WebUSB e WebBluetooth - Conectando seu Hardware a Web
 
Codelab - Actions on Google
Codelab - Actions on GoogleCodelab - Actions on Google
Codelab - Actions on Google
 
From Zero to App - Usando React e Firebase
From Zero to App  - Usando React e Firebase From Zero to App  - Usando React e Firebase
From Zero to App - Usando React e Firebase
 

Edge computing na prática com IoT, Machine Learning e Google Cloud