a revolução já começou

48
Globalcode – Open4education Trilha – Internet das coisas IoT - A Revolução já começou!

Upload: jose-wilker

Post on 09-Aug-2015

336 views

Category:

Technology


1 download

TRANSCRIPT

Globalcode  –  Open4education

Trilha – Internet das coisas IoT - A Revolução já começou!

Globalcode  –  Open4education

José Wilker

Atividades:* CEO/Fundador SMARTAPPS.* Consultor de tecnologia

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

Desenvolvedor, Empreendedor e Pesquisador, com especialidades no desenvolvimento de soluções para a web.

O PALESTRANTE

Globalcode  –  Open4education

Internet das coisasUma breve abordagem

Globalcode  –  Open4education

Uma viagem entre o Passado - Presente - Futuro.

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

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

ONDE ?

"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

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

TÁ! MAS COMO PARTICIPAR DISSO ?

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

DATA:SQL:VIEWSAV - DB

"Views são uma maneira alternativa de observação de dados de uma ou mais entidades (tabelas), que

compõe um banco de dados.”

Devmedia.com.br - Wagner Bianchi

Dados:Persistentes

Globalcode  –  Open4education

AV:DATA:SQL:VIEWS - CRIANDO

USE NOME_DO_BANCO GO CREATE VIEW dbo.NOME_DA_VIEW

(nome, sobrenome, data_nascimento) AS SELECT

nome, sobrenome, CONVERT(char(8), data_nascimento, 2)

FROM usuario AS u

GO

★ TABELA - USUARIOnome, sobrenome, data_nascimento

★ CRIANDO UMA VIEW (SQL ANSII)

Exemplo: Como criar uma view

Globalcode  –  Open4education

• Velocidade de acesso as informações. (uma vez a view compilada, o recordset gerado é armazenado em uma tabela de cache virtual para ser reutilizado sempre que solicitado).

• Simplificar o gerenciamento de acesso aos dados.

• Acesso a informações específicas.

• Economizar tempo com retrabalho.

• Facilitar a compreensão do banco de dados.

• Organizar os dados armazenados.

AV:DATA:SQL:VIEWS - BENEFÍCIOS

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.

É open source (LGPL) e 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

API:REST:SOAP“Simple Object Access Protocol (SOAP) é um protocolo para troca de informações estruturadas em uma plataforma descentralizada e distribuída.” - Wikipedia.org

Humm…

Globalcode  –  Open4education

• ENVELOPE, com SOAP é possível enviar as mensagens em um envelope.

• REGRAS, é possível definir regras para codificação.

• EXTENSÃO, facilita no processo de manutenção e desenvolvimento.

• INDEPENDENTE, SOAP é independente de qualquer coisa (linguagem, transporte, modelo e etc).

AV:API:REST:SOAP - ASPECTOS

Globalcode  –  Open4education

Escalabilidade

Conexão segura

Segurança nos dados

Suporte

Produtividade

Robustez

Manutenção

SOAPRESTFul

Conectividade

AV:API:SOAP VS RESTFul - ANÁLISE

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

:ZMQSMART:RESTFul

DEMONSTRAÇÃO

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

POR QUE SE DEDICAR ?

Globalcode  –  Open4education

Telemedicina Wearable (Dispositivos vestíveis)

CONCLUSÃO

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é WilkerTwitter: @josewilker

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

Linkedin: br.linkedin.com/josewilkerdev

OBRIGADO!