42
Globalcode – Open4education M2M/IoT - A Revolução já começou! Por, José Wilker Porto Alegre / RS

Internet das coisas - A Revolução já começou

Embed Size (px)

Citation preview

Globalcode  –  Open4education

M2M/IoT - A Revolução já começou! Por, José Wilker

Porto Alegre / RS

Globalcode  –  Open4education

José Wilker

Atividade atual:* CTO/Fundador SMARTAPPS.* Consultor

Especialidades:* PHP / C / JS / NODEJS / BASH / SQL * Code Igniter / Zend Framework / Socket.io / ExpressJS / ZMQ* HTML / CSS

Desenvolvedor Web e Maker, Se envolve com tecnologia desde 1999 e com a comunidade de PHP desde 2004, atuando em setores como Educação, Saúde, Agronegócio, Telecomunicações e Recursos Humanos, com ênfase em melhoria de processos e desenvolvimento soluções para a web.

O PALESTRANTE

Globalcode  –  Open4education

Uma breve abordagem

Internet das coisas / M2M ?

Globalcode  –  Open4education

O CONCEITO

Internet das coisas é o conceito aplicado quando um objeto eletrônico equipado com, softwares, sensores e conectividade, possui acesso a internet.

Globalcode  –  Open4education

O OBJETIVO

Conectar tudo que está Desconectado para coletar informações que possam auxiliar em uma

tomada de decisão.

Globalcode  –  Open4education

O Pai da internet das

coisas.“in retrospect it looks like the

rapid growth of the World Wide Web may have been just the trigger charge that is now setting off the real explosion,

as things start to use the Net.”

Kevin Ashton (1999)

Globalcode  –  Open4education

"Se disséssemos que neste momento há uma pessoa

morrendo na sala ao lado, todos se levantariam

imediatamente para ajudá-la."

Bill Gates

Globalcode  –  Open4education

ONDE ?

Globalcode  –  Open4education

A Internet of Things tem o potencial para transformar todas as indústrias, alterando a forma como vivemos e trabalhamos, local e globalmente. Abaixo segue algumas áreas específicas:

• Monitoramento ambiental • Gerenciamento de infra-estrutura • Fabricação de produtos. • Construção e automação residencial. • Transportee etc…

O POTENCIAL

Globalcode  –  Open4education

"O que pode de ser medido, pode ser

melhorado."

Peter Drucker

Globalcode  –  Open4education

Internet das coisasEntendendo as coisas

Globalcode  –  Open4education

Globalcode  –  Open4education

That’s it!

Globalcode  –  Open4education

Separando o joio do trigo

Globalcode  –  Open4education

Físicos • Eletrônicos Básicos

(Resistores, Transistores, Capacitores)

• Componentes de conectividade (Ethernet, WiFi e etc)

• Componentes de medição e atuação. (Sensores, Relés e etc)

• Alimentação(Energia elétrica, Baterias e etc)

IOT - ASPECTOS ENVOLVIDOS

Virtuais

• Software

Comunicação

• WiFi

• Rádio Frequência

• 2G/3G/4G

• Bluetooth

Globalcode  –  Open4education

IOT - INTERAÇÕES

B = Físicos

A - Conectividade

C = Virtuais

IoT

AB

C

Globalcode  –  Open4education

São muitas profissões envolvidas em todos os aspectos da Internet das Coisas.

IOT - PROFISSÕES

Globalcode  –  Open4education

A magia por trás de tudo.

Globalcode  –  Open4education

Internet das coisasA inteligência

Globalcode  –  Open4education

O aspecto virtual é um dos principais pontos na subdivisão da Internet das coisas fornecendo

inteligência para todo o cenário.

ASPECTOVIRTUAL

DB Services Integration

Este aspecto pode ser divido em várias sub camadas, dividimos em 3, como o esquema abaixo:

Globalcode  –  Open4education

• Data • SQL

• VIEWS

• FILES

• NOSQL

AV - CAMADAS

• Data Service • Servidor WEB • Frameworks

• ZEROMQ • Linguagens

• PHP/NODEJS

• ShellScript/C • Tipos de dados

• JSON • CSV

• API • REST

• RESTFul • SOAP

• Socket • TCP • WEB • MQTT • Jabber • XMPP

Persistente & Não persistente

Globalcode  –  Open4education

SOCKET:ZEROMQ

AV - SOCKETS

“(0MQ, ZMQ ou ZEROMQ) é uma camada inteligente para transporte de informações em aplicações distribuídas.”

zeromq.org

Dados:Não persistentes

Is the answer!

Globalcode  –  Open4education

• CONECTAR novas peças possui um custo muito alto em aplicações já desenvolvidas.

• AGREGAR novas peças garante um conhecimento distribuído e dinâmico.

• ISOLAR problemas facilita no processo de manutenção e desenvolvimento.

• DISTRIBUIR os processos.

AV:SOCKET:ZMQ - POR QUE USAR ?

É realmente rápido e simples de usar!

Muito pequena, < 40k linhas!

Globalcode  –  Open4education

AV:SOCKET:ZMQ - COMO FUNCIONA ?

ZMQ é realmente uma camada de transporte de mensagens inteligentes.

Globalcode  –  Open4education

AV:SOCKET:ZMQ - CASO DE USO

Tema: Fábrica de suco natural de laranjaProcesso: Realizar controle de acidez no processo de seleção de laranjas para fornecer suco natural com o melhor sabor e qualidade.

Sensor 1Sensor 2 Sensor 3

Sensor 4

Esquemático: Seleção de laranjas para suco tipo A.

Globalcode  –  Open4education

AV:SOCKET:ZMQ - CASO DE USO

Globalcode  –  Open4education

• Central LógicaResponsável por realizar toda a comunicação com a web e manter a integridade dos dados para armazenamento persistente.

• Sensor 1, coleta informações sobre a quantidade de laranjas que serão despejadas para seleção.

• Sensor 2, vários sensores com o objetivo de executar o processo para verificação dos níveis de ácido na laranja.

• Sensor 3, executa o processo de remoção da laranja com alto nível de acidez.

• Sensor 4, verifica o peso da laranja para identificar a quantidade de suco existente.

AV:SOCKET:ZMQ - CASO DE USO

Globalcode  –  Open4education

AV:SOCKET:ZMQ - REQUISIÇÕES

Queue (Fila) Pipe line Pub/Sub

Esb (Barramento)async Gateway

Request/Response

Globalcode  –  Open4education

AV:SOCKET:ZMQ - NA PRÁTICA

Server Client

Simples assim.

Globalcode  –  Open4education

AV:SOCKET:ZMQ - NA PRÁTICA

BASIC SERVER

Request Response

Globalcode  –  Open4education

BASIC CLIENT

Request Response

AV:SOCKET:ZMQ - NA PRÁTICA

Globalcode  –  Open4education

AV:SOCKET:ZMQ - POR QUE USAR ?

• Patterns, É possível aplicar diferentes tipos de padrões para trabalhar as mensagens.

• Multithread, É possível trabalhar com muitas conexões simultâneas..

• Support, É multi plataforma e possui uma boa documentação.

Tem uma comunidade ampla.

Globalcode  –  Open4education

API:RESTFULL

AV:API

"Representational State Transfer (REST) é um estilo de arquitetura de software que consiste em orientações e melhores

práticas para a criação de aplicações web escaláveis.”- Wikipedia.org

can help!

Globalcode  –  Open4education

• Client-Server, Interface uniforme separando cliente e servidor. • Base URI, http://www.smartapps.com.br/api • Query String Access, ?arg=1 • Cacheable, As respostas podem ser armazenadas em cache. • Stateless, Cada requisição é processada de forma independente. • Internet media type,

• JSON • CSV • XML • Microformats (hCard, hCalendar, hAtom) • images

• Standard HTTP methods • GET • PUT • POST • DELETE.

AV:API:RESTFUL - ASPECTOS PARA IOT

“RESTful está geralmente presente em aplicações com o

protocolo HTTP.”

Globalcode  –  Open4education

O aspecto físico é um dos aspectos fundamentais para o sucesso da internet das coisas, pois estamos falando dos Hardwares e as

redes de conectividade que envolvem todo o processo.

ASPECTOFÍSICO

HW Telecom WEB

Globalcode  –  Open4education

A.T.H.E.N.A Advanced Tiny Hyper and Endless Node of Actions.

DEMONSTRAÇÃO

a virtual finite machine state to do actions

Globalcode  –  Open4education

IoT (HOJE)

Globalcode  –  Open4education

1. Distribua os processos para otimizar o desempenho.

2. Sempre pense na possibilidade de controlar a execução dos processos.

3. Sempre pense em módulos.

4. Cache é essencial e só resolve parte dos problemas.

DICAS/TIPS

Globalcode  –  Open4education

INFOGRÁFICO

Globalcode  –  Open4education

Globalcode  –  Open4education

REFERÊNCIAS www.zeromq.org www.w3c.org www.nichol.as www.devmedia.com.br www.smartapps.com.br images.google.com Restful WebServices - O'Reilly

CONTATO

José Wilker Twitter: @josewilker

E-mail: [email protected],[email protected]

Linkedin: br.linkedin.com/josewilkerdev

OBRIGADO!

Globalcode  –  Open4education