Você está na página 1de 62

O que vamos aprender?

Esta semana vamos começar a conhecer o tema Internet das Coisas.

Na primeira aula, vamos começar pela primeira parte:


• O que é Internet?
• Tipos de redes de computadores
• A origem da Internet
• Como a Internet funciona?
Na segunda aula, veremos o que é Internet das Coisas.
Vamos começar?
O que é Internet?

A Internet é o maior e mais desenvolvido sistema de rede capaz de conectar pessoas do


mundo todo.

Por meio da Internet é possível visitar um museu em outro país,


saber da previsão do tempo em outra cidade, enviar o resumo da aula para o colega que
faltou, consultar o título de eleitor, entre outras infinidades de coisas.

Surpreendentemente, a Internet não é uma única rede, mas um conjunto de inúmeras redes
conectadas entre si.
Mas o que seria uma rede de computadores?
O que é uma Rede de Computadores?
Clique para adicionarBookmark this page
A palavra rede serve para descrever um entrelaçamento de coisas que estão conectadas
umas às outras. Pode ser um emaranhado de fios, de estradas ou de computadores.

Uma rede de computadores é, portanto, formada por dois ou mais computadores


conectados entre si, podendo se comunicar uns com os outros e compartilhar arquivos,
programas ou mesmo uma impressora.

Tipos de Redes de Computadores


Clique para adicionarBookmark this page

E você sabia que existem diferentes tipos de redes de computadores espalhadas pelo
mundo?

Vamos ver quais são…


Existem basicamente quatro tipos de redes de computadores:

Vamos entender qual é a diferença entre elas?

Tipos de Redes de Computadores - Rede PAN


Clique para adicionarBookmark this page

A sigla PAN significa Personal Area Network, e ela permite a comunicação dos seus
equipamentos pessoais.
Ela é uma rede conectada por fios ou wireless, com tecnologia para interligar aparelhos com
um alcance de até 10 metros.

Uma rede PAN é centrada em uma pessoa e permite a comunicação dos seus equipamentos
pessoais.
Você usa uma rede PAN quando você conecta por exemplo seu smartphone ao seu
computador para transferir fotos de um para outro.

Tipos de Redes de Computadores - Rede LAN


Clique para adicionarBookmark this page

LAN é uma sigla em inglês que significa “Local Area Network”. Este termo geralmente se
refere a redes de computadores restritas a um local físico como uma casa, um escritório ou
uma empresa.
Por exemplo, uma família que possui três computadores e uma impressora pode conectá-
los em uma rede LAN. Dessa forma, os arquivos musicais da família poderiam ficar numa
pasta compartilhada, para que todos da casa possam usar.
Com os computadores da casa conectados em rede, todos da família podem também
compartilhar textos, fotos, vídeos e podem trabalhar juntos em um mesmo arquivo
compartilhado.

Você já deve ter frequentado uma LAN House, certo?


Uma LAN House é um local caracterizado por possuir diversos computadores conectados em
uma rede de modo a permitir a interação entre seus usuários.
Desta forma, pessoas podem usar os computadores da LAN House para jogar um jogo em
conjunto - um jogo multiplayer.
O termo LAN foi extraído das letras iniciais de Local Area Network, ou seja, rede local. A
palavra House significa casa. Logo podemos traduzir LAN House como uma “casa de jogos
em rede”.

Tipos de Redes de Computadores - Rede MAN


Clique para adicionarBookmark this page

MAN é uma sigla em inglês que significa “Metropolitan Area Network”. Esta rede de
carácter metropolitano liga computadores e utilizadores numa área geográfica maior que a
abrangida por uma LAN.

Uma MAN normalmente resulta da interligação de várias LAN’s, cobrindo uma área
geográfica de média dimensão como, por exemplo, o campus de uma universidade ou uma
cidade inteira.

Tipos de Redes de Computadores - Rede WAN


Clique para adicionarBookmark this page

WAN é uma sigla em inglês que significa “Wide Area Network”, e como o próprio nome
indica é uma rede de telecomunicações que está dispersa por uma grande área geográfica.
A WAN distingue-se de uma MAN pelo seu porte e estrutura de telecomunicações.
As redes WAN são muito importantes, pois empresas com milhares de computadores
precisam de uma rede para trafegar grandes quantidades de informações entre filiais em
diferentes localidades geográficas.
Tipos de Redes de Computadores
Clique para adicionarBookmark this page

As redes de computadores podem ser interconectadas entre si.


Por exemplo, uma rede LAN pode estar conectada à uma outra rede LAN ou a uma rede
MAN.

E quando a rede de computadores é tão ampla que cobre o mundo inteiro, é o que
chamamos de Internet.
Reflita!

E você? Tem uma rede de computadores em sua casa? Como ela é composta?
Você se conecta a outras redes como, por exemplo, a rede de computadores da sua escola
para fazer os trabalhos de casa?
A Internet
Clique para adicionarBookmark this page
No princípio, a Internet conectava apenas dois computadores, em seguida, evoluiu para a
criação da World Wide Web, conectando um grande número de computadores e cobrindo o
mundo todo.

A Internet móvel surgiu ligando dispositivos móveis na Internet. Em seguida, as pessoas


começaram a se juntar na Internet por meio das redes sociais.
Finalmente, ela está se movendo em direção à Internet das Coisas, ligando todos os objetos
do dia a dia com a Internet.

Vamos aprender um pouco sobre a história da Internet?


A Origem da Internet
Clique para adicionarBookmark this page

Você deve estar imaginando que a Internet não tem dono, pois qualquer pessoa pode
conectar um computador ou qualquer outro dispositivo à rede.
Isso mesmo! A Internet não possui uma sede central, nem uma central de serviços. Ela foi
criada pelo governo americano na década de 1950.
Mas como será que ela surgiu? Vamos conhecer melhor essa história?
A Internet surgiu em 1957, durante a Guerra Fria entre os Estados Unidos e a União
Soviética. Um ataque pelo ar era uma ameaça constante para os americanos.
Mas o que toda essa história de guerra tem a ver com a Internet?
Na época da Guerra Fria os americanos criaram a Agência de Projetos Avançados de
Defesa (Advanced Research and Projects Agency - ARPA), cujo objetivo era desenvolver uma
rede de computadores capaz de trocar informações por meio de tecnologias de
comunicação independentes.
Os americanos queriam evitar a perda de informações, caso parte da rede física ficasse
inativa devido a uma destruição parcial, provocada, por exemplo, por um ataque nuclear.
Dessa forma, uma parte da rede danificada não impactaria o funcionamento dos pontos não
atingidos.
Em 1969 surgiu a primeira versão da rede, a Arpanet (Advanced Research Projects Agency
Network) que conectava apenas quatro pontos.
A ideia era criar uma rede tecida como uma teia de aranha (web, em inglês), na qual os
dados se movessem buscando a melhor trajetória possível, podendo “esperar” caso as vias
estivessem obstruídas.
Surgia aí outra ideia básica da Internet: a descentralização. Mas, como isso funciona na
prática?

Como a Internet funciona?


Clique para adicionarBookmark this page

Suponha que você queira acessar o site da Samsung para pesquisar alguns produtos
eletrônicos.
Então você usa um equipamento conectado à Internet, abre o seu navegador predileto e
digita www.samsung.com na barra de endereços e, passados poucos segundos, a página
inicial da Samsung é exibida na sua tela.
Como esse processo todo, aparentemente simples, ocorre?

Todos os computadores possuem um endereço numérico único chamado endereço IP.


Para que você possa acessar a página da Samsung, por exemplo, o seu computador precisa
antes estabelecer uma conexão com o computador onde a página solicitada está
hospedada.

Chamaremos, a partir de agora, o seu computador de cliente e o computador onde a página


da Samsung está armazenada de servidor.
Imagine que o cliente, seu computador, com endereço IP 177.175.79.80 queira iniciar uma
conexão com o servidor de endereço IP 185.187.87.88 para obter a página inicial da
Samsung.

Mas, como o cliente, seu computador, sabe o endereço IP com o qual ele deve se conectar
para obter a página inicial da Samsung se nada disso foi informado?
A única informação passada foi o endereço www.samsung.com na barra de endereços do
navegador.
Quando um computador está conectado à Internet, ele está configurado para acessar um
servidor especial chamado servidor de nomes ou servidor DNS (Domain Name System),
como é mais conhecido.

Este servidor funciona como uma lista de endereços.


Quando você digita o endereço www.samsung.com na barra de endereços, está informando
o endereço URL (Uniform Resource Locator) do site.
Se o navegador não conhecer o endereço IP para este endereço URL, então ele se conecta
com o servidor DNS e pergunta:
“Olá. Tenho a URL www.samsung.com, você pode me informar qual é o endereço IP dela?”
O servidor então responde:
"Tenho sim, o endereço IP desta URL é 185.187.87.88."

Portanto…
O servidor DNS funciona como uma lista de endereços para encontrar o endereço IP da URL
solicitada. É estabelecida uma conexão entre o cliente, seu computador, e o servidor onde
está hospedada a página da Samsung. Através desta conexão ocorre o envio de pacotes.
Digamos que você esteja procurando um aparelho celular no site da Samsung, você vai
clicando e navegando pelo conteúdo das páginas.
Conforme você vai navegando o cliente, seu computador, solicita mais páginas ao servidor
para poder lhe mostrar na tela as informações que você solicitou.
As informações trocadas entre o cliente e o servidor, entre seu computador e o computador
onde estão hospedadas as páginas da Samsung, são divididas em pacotes.
Como a Internet funciona?
Clique para adicionarBookmark this page

E o que são esses pacotes?

São fragmentos menores dos dados que trafegam pela rede. Por exemplo, uma mensagem
de email pode ser dividida em vários pacotes. Cada pacote contém algumas informações
como: o endereço de origem, o endereço de destino e a sequência segundo a qual os
pacotes devem ser reconstruídos ao chegar no seu destino.
Uma característica importante é a garantia de entrega, pois todos os pacotes que saem da
origem possuem a garantia de que chegarão ao seu destino e que serão entregues de forma
ordenada e sem modificações.

Cada pacote pode viajar pela rede por diferentes caminhos, sendo enviado de um
computador para o outro, na direção do seu destino.

Mas quem decide qual é o melhor caminho?

É preciso usar um dispositivo chamado roteador.


Roteadores são dispositivos capazes de realizar a comunicação entre várias redes que
compõem a Internet.
O roteador analisa cada pacote de informação e decide a melhor rota até o seu destino.

Mas o que acontece se uma rota estiver bloqueada?


Como existem vários roteadores conectados na mesma rede, é possível que um pacote
pegue um caminho e outro pacote pegue outro caminho para chegar ao destino. É o mesmo
que acontece quando estamos tentando fugir do trânsito. Podemos entrar em outra via,
passar por outras ruas, mas avançamos na direção do destino.
Quando os pacotes chegam ao seu destino, a informação original é reconstituída.

Finalizando
Clique para adicionarBookmark this page

Nesta aula aprendemos o que é a Internet e como ela funciona.


Na próxima aula, vamos estudar Internet das Coisas.
O que vamos aprender?
Clique para adicionarBookmark this page

Nesta aula vamos aprender:

• O que é Internet das Coisas


• Quais são as “coisas” que podem ser integradas à Internet das Coisas
• Como Internet das Coisas contribui para cidades inteligentes
• Como Internet das Coisas contribui para carros inteligentes

Introdução - a origem
Clique para adicionarBookmark this page

Vamos ver como surgiu Internet das Coisas?


Recentemente, o custo de componentes eletrônicos baixou e ampliou a possibilidade de
instalar tais componentes em diferentes tipos de objetos. Um destes componentes, o
microprocessador, é um circuito integrado que realiza as funções de cálculo e tomada de
decisão de um computador. É o cérebro do computador.
Os primeiros microprocessadores, peças centrais dos computadores modernos, foram
criados na década de 1980. Eles tinham um custo tão elevado que foram instalados apenas
em computadores como estações de trabalho ou computadores pessoais.
Hoje, com o avanço da tecnologia, o custo de produção de componentes eletrônicos baixou
tanto que é possível colocar microprocessadores em diversos objetos onde não era possível
colocar antes, como por exemplo despertadores, medidores de consumo de água, lâmpadas
e brinquedos.
Com isso, podemos criar objetos inteligentes, que percebem informações do ambiente, se
comunicam uns com os outros e tomam decisões.
Vamos aprender o que é Internet das Coisas?

O que é Internet das Coisas?


Clique para adicionarBookmark this page

O termo Internet das Coisas não tem uma definição única. Ele é um termo novo, que não
está no dicionário, e já recebeu algumas definições desde que surgiu. Algumas bem amplas,
outras com viés mais tecnológico ou de negócios.
Para entender melhor o que é a Internet das Coisas, vamos começar com um exemplo.
Imagine a seguinte cena:
Você coloca seu despertador para te acordar às 6h00 para ir para escola e você vai dormir.

Enquanto você está dormindo, o seu despertador acessa a Internet e descobre que haverá
greve de ônibus no dia seguinte até às 8h00 e que o diretor da escola decidiu suspender as
primeiras aulas. Por isso, o seu despertador te deixa dormir mais um pouco, alterando o
horário de despertar para às 9h00.
Como você tinha programado a cafeteira para passar o café às 6h00, o despertador avisa a
cafeteira que você vai tomar café às 9h00. Você levanta às 9h00, toma o seu café quentinho
e a sua mochila inteligente começa a piscar porque ela acessou sua agenda na Internet,
descobriu que você tem aula de química hoje e que o livro não está na mochila. A mochila
então envia uma mensagem para o seu celular te avisando sobre a falta do livro.
É disso que se trata a Internet das Coisas:
É um conceito tecnológico em que objetos da vida cotidiana estão conectados à Internet,
agindo de modo inteligente e sensorial.
E você sabe de onde vem a expressão “Internet das coisas”?
“Internet das Coisas” é uma tradução literal da expressão em inglês “Internet of Things” ou
IoT.

Trata-se da extensão da Internet atual para designar todas as coisas que podem ser
conectadas a uma rede de computadores ou à Internet.
IoT consiste na ideia da fusão do “mundo real” com o “mundo digital”, fazendo com que o
indivíduo possa estar em constante comunicação e interação, seja com outras pessoas ou
objetos.

Com Internet das Coisas objetos podem ser ativados e controlados remotamente por meio
de uma infraestrutura de rede existente criando oportunidades para integração entre o
mundo físico e sistemas de computadores.
E como o próprio nome diz, Internet das Coisas é formada por “coisas”. Um primeiro ponto
que vem em mente é “o que são essas coisas que formam a Internet das coisas”?
Quais são as “coisas” que podem ser integradas à IoT
Clique para adicionarBookmark this page

Para responder a esta pergunta vamos fazer um rápido exercício:

Tente se lembrar dos objetos que você usa no seu dia a dia para se conectar à Internet...
Provavelmente seu pensamento foi:
... um celular
... um tablet
... um computador

… um notebook
Você utiliza pelo menos um desses dispositivos, certo?
Mas existem outros equipamentos que se conectam à Internet, vamos aos exemplos...
Você já deve ter notado que existem várias câmeras espalhadas em bancos, lojas e até
mesmo nas ruas para monitoramento.
Pois é, todas elas poderiam estar conectadas à Internet, enviando dados para uma central
de monitoramento.
Você também pode ter câmeras de segurança para monitorar a sua casa e com isso pode
ver tudo em tempo real no computador ou no celular, em qualquer lugar e momento. Estas
câmeras estão conectadas à Internet.

Quer outro exemplo?

Uma Smart TV.


Com uma Smart TV, você pode assistir filmes na Internet, no Netflix ou no Youtube
diretamente, sem precisar conectar a TV no seu computador, porque a TV está conectada à
Internet.

Então, o que acha? Seria possível conectar eletrodomésticos na Internet?


A resposta é Sim!

Uma geladeira com Internet, por exemplo, poderia avisar quando um determinado produto
estivesse perto de acabar. Isso seria muito útil para uma rede de hotéis, por exemplo. Por
meio de um celular seria possível controlar o estoque do frigobar e repor os produtos que
estiverem acabando. Além disso, diminui o tempo de Checkout no hotel, pois não seria
preciso uma pessoa ir até o quarto conferir os itens consumidos.

Uma geladeira inteligente que avisa quando um determinado produto estiver acabando
pode acessar a Internet, fazer uma pesquisa e indicar os lugares próximos onde aquele item
está em oferta.
Enfim, qualquer objeto como automóveis, peças de vestuário e até eletrodomésticos podem
receber microprocessadores e serem ser classificados como “coisas” ou “objetos
inteligentes” que podem ser integradas à IoT.
Mais adiante veremos como as coisas se conectam à rede.
Como IoT contribui para criar Cidades Inteligentes?
Clique para adicionarBookmark this page

Soluções de IoT estão sendo criadas em todo o mundo.


Já existem cidades, carros e casas inteligentes.
E como será que a IoT pode contribuir para uma cidade inteligente?
“Cidade Inteligente”, também conhecida como “Smart City” ou “Cidade do Futuro”, é um
conceito que classifica a tecnologia como responsável por oferecer melhorias na
infraestrutura urbana visando tornar os centros urbanos mais eficientes, mais econômicos e
melhores para se viver.
Em outras palavras, uma cidade inteligente está apta para gerir seus recursos manuseando
dispositivos inteligentes a fim de garantir eficiência.
O conceito de “Cidade Inteligente” aborda o planejamento e a administração pública
através de automação de serviços de forma criativa e sustentável.
Vamos ver alguns exemplos...
ILUMINAÇÃO URBANA
Um sistema de iluminação pública inteligente, por exemplo, é capaz de indicar quando uma
luminária está queimada e quando está na hora de trocá-la, trazendo mais economia e
segurança para a população.
GERENCIAMENTO INTELIGENTE DE LIXO URBANO
O gerenciamento inteligente de lixo urbano fornece informações úteis para a população
incentivando uma maneira mais fácil e ambientalmente correta de coletar o lixo.
A coleta de lixo pode ser otimizada, por exemplo, em termos da rota a ser realizada,
baseada nos níveis de preenchimento das latas: as que estiverem vazias serão ignoradas; as
que estiverem cheias serão esvaziadas; e as que estiverem quebradas serão consertadas
mais rapidamente.
Vamos ver mais uma aplicação de IoT?

Como IoT contribui para criar Carros Inteligentes?


Clique para adicionarBookmark this page

Imagine controlar todas as funcionalidades do seu carro pelo seu smartphone?


Ter a bordo um computador inteligente que programe todas as suas preferências; sensores
embutidos para alertar assistência mecânica; e até um sistema capaz de dirigir o carro por
você?
Tudo isso já existe!
E é provável que você tenha um desses carros em poucos anos.
Segundo a Gartner, são esperados 150 milhões de automóveis conectados à IoT até 2020.

Há pouco tempo os carros tinham um computador central que recebia e processava dados
de sensores para determinar o nível do óleo do motor, a temperatura da água do radiador,
etc.
Pois bem, o Ford Edge Sport, modelo 2016, já tem 21 computadores espalhados, além de
dezenas de sensores trocando e checando dados para garantir uma operação eficiente e
segura, assim como para efetuar a previsão de reparos ou outras necessidades.
O Ford Edge Sport envia um e-mail com informações sobre o carro para seu proprietário, ou
o proprietário do veículo monitora o estado do carro por meio de um aplicativo instalado no
seu celular.

Assim, o proprietário se comunica com o fabricante para trocar dados sobre o veículo e
possíveis chamadas para revisão.
No caso da fabricante de pneus Continental, por exemplo, foram desenvolvidos produtos
com sistema de sensores embutidos, alertando para os níveis de calibragem e desgaste dos
pneus, transmitidos em tempo real para o motorista.

Já estão sendo desenvolvidos carros autônomos.

A empresa Google por exemplo, desenvolveu um veículo que anda sozinho, sem condutor, e
está em fase de teste, mas já é capaz de reconhecer pedestres, sinais e ciclistas.

É o futuro da IoT, vamos falar dele mais para frente.


Reflita!
Você já deve ter imaginado que existem inúmeras possibilidades de aplicações de Internet
das Coisas espalhadas pela cidade, certo?
Existe uma aplicação de Internet das Coisas atualmente instalada na sua cidade?
Outras Aplicações
Clique para adicionarBookmark this page

Além de casas, carros e cidades inteligentes, IoT está presente em diversas outras situações.
Vamos ver algumas delas...

Agropecuária
Sensores espalhados em plantações podem dar informações sobre temperatura, umidade
do solo, velocidade do vento e outras informações que combinadas com a previsão do
tempo disponível na Internet permitem a otimização de sistemas de irrigação,
economizando água e melhorando o rendimento do plantio.

Sensores conectados aos animais conseguem ajudar no controle do gado, por exemplo, um
microchip é colocado na orelha do boi para fazer o rastreamento do animal, informando o
seu histórico de vacinas, entre outras informações.
Pets - animais de estimação
Existem coleiras inteligentes para pets, que acompanham funções vitais do animal, como
pressão, batimentos cardíacos e temperatura.
A coleira pode contar ainda com uma câmera contectada à Internet. Com isso o dono
consegue acompanhar os passos do seu bichinho à distância.
Já o GPS permite que se saiba a localização exata do pet.
Saúde
Já é possível colocar sensores nas roupas e monitorar alguns sinais. Um exemplo é uma
roupa que detecta o nível de estresse de uma pessoa monitorando sua transpiração.
Outro exemplo é um sensor “tatuagem”, que pode ser retirado depois do uso ou que pode
ser absorvido pelo corpo. Este sensor coleta dados por meio do contato com a pele e
transmite informações para smartphonese dispositivos de diagnóstico remoto.

Projeto - Casa Inteligente!


Clique para adicionarBookmark this page

Agora é sua vez!


Imagine que você esteja planejando construir sua casa nova com um projeto de Internet das
Coisas: o SEU projeto de Casa Inteligente.

Crie um arquivo e descreva como será sua Casa onde há objetos inteligentes que
contribuem para a segurança, a economia, o conforto e o entretenimento seu e de sua
família.
Crie um nome para seu projeto de Casa Inteligente.

Guarde o arquivo, você vai precisar dele nas próximas aulas.


Finalizando
Clique para adicionarBookmark this page

Nesta aula você aprendeu o que é Internet das Coisas e como essas coisas podem ser
integradas à IoT. Você conheceu alguns exemplos de sistemas de IoT aplicados a cidades
inteligentes e carros inteligentes.
Na próxima aula você vai conhecer um pouco sobre a arquitetura de sistemas de IoT.
Rede de Computadores
Clique para adicionarBookmark this page

O que é uma Rede de Computadores?


Uma rede de computadores é um conjunto de computadores conectados entre si, podendo
se comunicar uns com os outros e compartilhar arquivos, programas ou recursos.
Tipos de rede
Clique para adicionarBookmark this page

Existem quatro tipos de redes de computadores:


• Rede PAN é uma rede centrada em uma pessoa que permite a comunicação de seus
equipamentos pessoais
• Rede LAN é uma rede de equipamentos restrita a um local físico
• Rede MAN é uma rede de caráter metropolitano que liga computadores numa área
geográfica de média dimensão
• Rede WAN é uma rede de telecomunicações que está dispersa por uma grande área
geográfica

Internet
Clique para adicionarBookmark this page

A Internet é o maior e mais desenvolvido sistema de rede capaz de conectar equipamentos


e pessoas do mundo todo.

A Internet não é uma única rede, mas um conjunto de inúmeras redes conectadas entre si.

Como a Internet funciona?


Todos os computadores possuem um endereço numérico único chamado endereço IP. Seu
computador tem um endereço IP. Quando você usa seu navegador para acessar uma página
na Internet, seu computador se conecta ao endereço IP da página que você solicitou. E, para
descobrir este endereço IP, seu computador usa um servidor de nomes ou DNS (Domain
Name System) que funciona como uma lista telefônica.
É estabelecida então uma conexão entre seu computador e o servidor onde está hospedada
a página solicitada. E através desta conexão ocorre o envio de pacotes de informação. Cada
pacote viaja pela rede por um caminho da origem ao destino determinado por roteadores.

Internet, a rede
No princípio, a Internet conectava apenas dois computadores, em seguida, se tornou a rede
mundial que conecta pessoas por meio de um grande número de computadores e cobrindo
o mundo todo.
Hoje a Internet é uma rede que conecta também “coisas”: é a Internet das Coisas.
Internet das coisas
Clique para adicionarBookmark this page

É um conceito tecnológico em que objetos da vida cotidiana estão conectados à Internet,


agindo de modo inteligente e sensorial.
É o conjunto de objetos inteligentes conectados à Internet que percebem informações do
ambiente e se comunicam com outros objetos e com pessoas.
Começando o exercício pontuado
Clique para adicionarBookmark this page

Olá,

Neste teste você deverá responder às perguntas. Leia com atenção cada opção de resposta
antes de responder.
Para enviar suas respostas é necessário clicar em Submeter no final da página de exercícios.
Você deverá finalizar este teste até dia 10/07/2017, 9h de Brasília.

Boa sorte!
Para visualizar sua pontuação, clique em Progresso no menu acima.
O que vamos aprender?
Clique para adicionarBookmark this page

Agora que você já sabe o que é Internet das Coisas, podemos abordar os conceitos
relacionados à arquitetura de sistemas de IoT.
Compreender a arquitetura de sistemas pode não ser uma tarefa muito simples.
Portanto, para facilitar nosso estudo vamos abordar alguns casos de uso e identificar os
elementos da arquitetura de IoT.

Lembrem: IoT (Internet of Things) é o termo em inglês para Internet das Coisas
O que é Arquitetura?
Clique para adicionarBookmark this page

Quando ouvimos a palavra “arquitetura” logo pensamos na construção de casas, edifícios,


etc.

Você pode estar imaginando a arquitetura como uma forma de arte visual, criada por um
arquiteto, em um determinado espaço como, por exemplo, o Palácio do Congresso Nacional
criado pelo arquiteto Oscar Niemeyer.
Mas no nosso caso, a palavra “arquitetura” tem outro significado…
Vamos conhecê-lo...
A palavra “arquitetura” vem da junção das palavras gregas “arché”, que significa "primeiro"
ou "principal", e “tékton”, que possui o significado de "construção". Logo, o termo
arquitetura pode ser definido como “construtor principal”.

Quando esta palavra foi inventada, na Grécia antiga, o ato de construir algo estava
diretamente relacionado à construção de casas e edificações em geral.
No entanto, no dias atuais, o homem constrói muitas coisas além de casas, como por
exemplo: carros, aviões, computadores, videogames, eletrodomésticos, etc.

Quando falamos em arquitetura, estamos nos referindo a uma estrutura ou modelo que
pode ser copiado para originar coisas semelhantes.
Trata-se, portanto, de uma arquitetura de referência, ou seja, um esqueleto de algo que
queremos construir.

Em sistemas de IoT, esse esqueleto define um conjunto de blocos de construção composto


de tecnologias como Internet, computadores e “coisas”.
Uma arquitetura de referência é capaz de facilitar e guiar o desenvolvimento, a
padronização e a evolução dos sistemas de IoT.
A arquitetura que iremos utilizar neste curso é uma das mais gerais definidas para IoT e
engloba três componentes básicos:
Sistemas em IoT possuem partes pertencentes a estes três componentes.
Vamos primeiramente apresentar cada um destes componentes e depois vamos analisar
alguns exemplos de sistemas de IoT e aprender a identificar as suas partes.
Componentes da arquitetura de Internet das Coisas
Clique para adicionarBookmark this page

Componente Percepção / Atuação

O Componente Percepção / Atuação, se refere às partes do sistema de IoT que fazem


interação com o mundo físico.
Normalmente as "coisas" da IoT, ou seja, os objetos inteligentes, fazem parte deste
componente.
Este componente é denominado percepção, pois ele recolhe informações sobre o mundo
real e permite aos sistemas de Internet das Coisas responder a eventos reais, que não estão
apenas no computador.
Além disso, faz parte deste componente dispositivos que fazem mudanças no ambiente, o
que é chamado de atuação.
Componente de Rede

O Componente de Rede é responsável por fazer conexões no sistema de IoT. Estas conexões
podem ser com outros objetos inteligentes ou computadores.
Em Internet das Coisas, como o próprio nome diz, normalmente usamos a Internet para
conectar os objetos inteligentes. Mas mesmo quando usamos a Internet, ainda é necessário
definir como esta conexão poderia ser realizada.

As tecnologias e estratégias para realizar esta conexão à Internet, são definidas no


Componente de Rede da arquitetura.
Componente de Aplicação

O componente de Aplicação é a parte do sistema de Internet das Coisas que entrega


serviços para as pessoas.Ele utiliza os outros dois componentes (percepção e rede) para
fazer algo útil.
Como já vimos anteriormente, algumas áreas nas quais as aplicações podem ser
desenvolvidas são:
• Sistemas de saúde e bem estar
• Cidades inteligentes
• Casas inteligentes
• Indústria 4.0
• Agropecuária inteligente
Aplicando a arquitetura da IoT
Clique para adicionarBookmark this page

Como vimos, a arquitetura é uma referência que serve de modelo para a construção de
sistemas de IoT. Não é obrigatório utilizar uma arquitetura, mas ela facilita a organização de
componentes e a comunicação de um projeto.
Existem várias arquiteturas para a construção de sistemas de IoT. Apresentamos aqui a
arquitetura mais geral [Sethi, P. and Sarangi, S.R., 2017]. E se você ficou interessado e quiser
conhecer outras arquiteturas , sugerimos a leitura deste artigo [Cavalcante, et al., 2015].
Lembre-se, se você achar que um determinado problema esteja sendo difícil de encaixar em
alguma arquitetura, não tem problema, vá em frente e experimente da sua própria maneira,
sem se preocupar em seguir alguma arquitetura.

Exemplos
Vamos ver então alguns exemplos de Internet das Coisas, e como eles se aplicam em cada
componente da arquitetura estudada?
Vamos apresentar três exemplos, já mencionados na aula anterior e entender quais são as
suas partes e como elas se encaixam nos componentes da arquitetura.
O primeiro exemplo será o do sistema de iluminação urbana. O segundo será o do sistema
de gestão inteligente de coleta de lixo urbano. Já o terceiro, apresenta uma geladeira
inteligente.

Exemplo: iluminação urbana


Clique para adicionarBookmark this page

O primeiro exemplo trata de um sistema de iluminação inteligente, no qual os postes de


iluminação detectam sozinhos quando uma lâmpada está queimada e solicitam uma troca
automaticamente.
Dividindo em Componentes
Vamos agora entender quais são os componentes deste sistema? Para isso vamos utilizar os
três tipos de componentes da arquitetura de IoT que apresentamos: Percepção, Rede e
Aplicação.

Poste de Iluminação
Inteligente

Comunicação com
fios / Internet

Gerenciador da
infraestrutura de
iluminação
O elemento de Percepção do sistema é o Poste de Iluminação Inteligente. Ele mede a
luminosidade sob o poste, que é uma informação do mundo físico. Quando é esperado que
a lâmpada esteja acesa mas o sensor de luminosidade informa que não há iluminação,
indica que a lâmpada deve estar com defeito.
Mas não basta ter o Poste de Iluminação Inteligente para que a solicitação de troca de
lâmpadas seja feita automaticamente. Uma vez que uma lâmpada com defeito seja
identificada, é necessário fazer uma requisição de troca. Para isso, é necessário que o Poste
tenha conectividade para enviar esta informação para os interessados e que tenha um
serviço que informe para os responsáveis pela manutenção dos Postes de Iluminação qual a
localização do poste que deve ser visitado.

Esta conectividade é que é definida no Componente Rede. No nosso exemplo vamos utilizar
a Internet com conexão por cabo.
Já o serviço que requisita a manutenção, fica no Componente Aplicação. Ele é o
Gerenciador de Iluminação Urbana, que solicita a troca da lâmpada e indica a localização de
Postes de Iluminação que estão com defeito.

Essa aplicação facilitaria a manutenção do Sistema de Iluminação Urbana, diminuindo riscos


para a população e os custos com inspeções desnecessárias.
Exemplo: coleta de lixo urbano
Clique para adicionarBookmark this page

Neste exemplo, temos latas de lixo inteligentes, que avisam uma central municipal quando
estão cheias, ou prontas para serem esvaziadas. Dessa forma, o motorista de um caminhão
de lixo poderia saber exatamente quais ruas contém mais lixeiras cheias e quais ainda não
acumularam tanto lixo. Com essa informação, ele poderia definir as rotas de coleta de lixo,
priorizando ruas com lixeiras cheias. Esse tipo de otimização permitiria uma coleta que
economiza combustível, além de deixar a cidade mais limpa com maior rapidez.

lixeiras cheias

lixeiras não cheias


Dividindo em componentes
Vamos analisar cada parte do sistema da lixeira inteligente, de acordo com a nossa
arquitetura de 3 componentes:

Lixeira
Comunicação sem
fios / Internet

Monitor do Nível de
Preenchimento de Lixeiras /

Sistema de geração de rotas


de recolhimento de lixo
No Componente Percepção temos a Lixeira Inteligente, que detecta (percebe) o seu nível de
preenchimento. Ela faz parte deste componente pois está extraindo informações do mundo
real, que neste caso seria quantidade de lixo dentro dela.
Agora, para que a Lixeira possa enviar os dados para uma central municipal, é necessário ter
algum tipo de comunicação. Nesse caso, vamos considerar que a Lixeira Inteligente tenha
conexão sem fios à Internet -- o que compreende o Componente Rede da nossa arquitetura.
Por fim, no Componente Aplicação, teremos duas aplicações:

• o Monitor do Nível de Preenchimento de Lixeiras, que oferece o serviço de indicar o nível


de preenchimento das lixeiras e a localização delas em um mapa;
• e o Sistema de Geração de Rotas de Recolhimento de Lixo, que oferece o serviço de gerar
as rotas de recolhimento de lixo priorizando as lixeiras mais cheias e otimizando os
percursos do caminhão.
Exemplo: geladeira inteligente
Clique para adicionarBookmark this page
Neste exemplo, apresentado com mais detalhes no vídeo desta aula, vamos analisar uma
Geladeira Inteligente. Esta geladeira detecta os alimentos que estão em seu interior e gera
uma lista de compras. Esta lista de compras pode ser acessada pelo dono da geladeira
remotamente, pela Internet. Além disso, a Geladeira Inteligente é capaz de fazer compras
automaticamente pela Internet, adquirindo os produtos faltantes de um supermercado
online. A Geladeira Inteligente permite ainda a participação da família em programas de
Saúde Alimentar, enviando os dados sobre os produtos consumidos para instituições de
pesquisas.
Dividindo em componentes

Geladeira que
detecta alimentos

Comunicação sem
fios / Internet
Gerenciador de
produtos / Análise de
hábitos alimentares
A Geladeira Inteligente integra o Componente Percepção. Ela detecta quais são os
alimentos que estão no seu interior, ou seja, ela está extraindo informações do mundo real.
Já no Componente Rede vamos considerar a Internet acessada por conexão sem fios. Desta
forma, a Geladeira Inteligente pode se comunicar tanto com o celular de seu dono, como
com o supermercado online.
Neste exemplo também temos dois componentes de aplicação:
• O Gerenciador de produtos, que oferece o serviço de verificar a quantidade de produtos
dentro da geladeira e que faz compras dos produtos que estão faltando automaticamente
pela Internet.
• Análise de hábitos alimentares, que oferece o serviço de conferir a quantidade de produtos
que estão sendo consumidos em grande quantidade e enviar dados para instituições de
pesquisa de saúde alimentar.
Próximas aulas
Clique para adicionarBookmark this page

Nas próximas aulas vamos abrir algumas caixas pretas:


• Vamos aprender o que é hardware e software
• Vamos aprender onde há elementos de hardware e software nas arquiteturas de Internet
das Coisas e revisitar os exemplos de hoje: a geladeira, os postes de iluminação e as lixeiras
inteligentes, apresentando o hardware e o software que estão por trás deles.
O que vamos aprender?
Clique para adicionarBookmark this page

Nesta aula vamos aprender o que é hardware.


Também vamos descobrir onde está o hardware no contexto da Internet das Coisas.
Vamos aprender como é o hardware de um objeto inteligente.
Veremos também o que são sensores e atuadores, além de conhecer alguns exemplos.
Assim, poderemos imaginar quais sensores e atuadores poderemos utilizar em um projeto
de Internet das Coisas.
Além disso, vamos aprender quais são os compromissos em projetos de hardware para IoT.
Vamos começar?
O que é hardware?
Clique para adicionarBookmark this page

Hardware é uma palavra da língua inglesa. A primeira metade da palavra, hard, significa
duro ou rígido.
Por isso, quando falamos em hardware estamos falando das partes rígidas e tangíveis dos
computadores, ou seja, tudo aquilo que podemos tocar, como por exemplo: o monitor, o
teclado, o mouse, a placa mãe, o processador, etc.
Assim, podemos definir hardware como “toda parte física, composta de um conjunto de
componentes eletrônicos e peças que fazem o equipamento funcionar”.
Portanto, qualquer dispositivo eletrônico, como computador, smartphone, tablet,
smartwatch, entre outros, possui hardware.
Além do hardware, também temos o software, que o complementa. O software tem a
função de fornecer instruções ao hardware, possibilitando a realização das operações de um
equipamento. Falaremos de software na próxima aula.
Agora vamos falar de hardware no contexto da Internet das Coisas.
Hardware em IoT
Clique para adicionarBookmark this page

Em IoT, como já vimos, existem objetos inteligentes ou “coisas” que captam informações do
ambiente, podem se conectar à Internet e realizar algumas tarefas. Para que isso seja
possível, esses objetos precisam de um hardware que torne estes objetos capazes de
desempenhar todas estas funções.
Vamos conhecer as partes que compõem um objeto inteligente em IoT.

Em geral, um objeto inteligente é composto por quatro unidades básicas:


• Processamento e memória
• Comunicação
• Energia
• Sensores e atuadores
Vamos conhecer um pouco cada uma destas unidades.
Processamento e memória
Clique para adicionarBookmark this page
A unidade de processamento e memória tem a função de armazenar dados e de executar a
sequência lógica de instruções que torna o objeto inteligente.

Esta unidade é composta de uma memória interna para armazenamento de dados, de um


microcontrolador que executa a sequência de instruções, e de um conversor analógico-
digital para receber sinais dos sensores.
Frequentemente existe uma memória externa adicional do tipo flash, que serve como
memória secundária, que é utilizada por exemplo para manter um conjunto de dados (ou
log).
As características desejáveis para estas unidades são o tamanho reduzido e o baixo
consumo de energia.

Comunicação
Clique para adicionarBookmark this page
A unidade de comunicação é responsável pela comunicação do objeto inteligente com a
Internet ou com outros objetos inteligentes.

Existem várias tecnologias de comunicação, elas podem ser com ou sem fio. Cada tecnologia
tem características diferentes. As características mais relevantes de um sistema de
comunicação são: a taxa de transmissão de dados e o alcance.
A taxa de transmissão de dados é a velocidade do envio de uma informação. Podemos
considerar como exemplo a transmissão de uma fotografia de um celular para a Internet.
Caso a conexão deste celular utilize uma tecnologia de comunicação com alta taxa de
transmissão de dados, a fotografia será enviada rapidamente, caso seja utilizada uma
tecnologia com transmissão de dados menor, demorará mais para fazer este envio. A
unidade que usamos para medir a velocidade de transmissão de dados é bit por segundo,
que é representado por bps.
E você pode estar se perguntando: o que é kbps, Mbps e Gbps? São apenas modos mais
curtos de escrever a quantidade para números muito grandes. A unidade kbps representa
1.000 bits por segundo, a unidade Mbps representa 1.000.000 bits por segundo e a unidade
Gbps representa 1.000.000.000 bits por segundo. Assim, quando dizemos 32Gbps, na
verdade queremos dizer que 32 bilhões de bits são transmitidos por segundo. Por outro
lado, quando dizemos 1Mbps, queremos dizer que 1 milhão de bits são transmitidos a cada
segundo.
Já o alcance de sistemas de comunicação refere-se a qual a distância que os dados podem
ser transmitidos. Por exemplo, vamos considerar um caso em que uma menina, chamada
Sofia, tem uma fotografia de seu gato em um tablet e ela quer transmitir esta fotografia
para o tablet de seu irmão, Pedro. Se eles estão em um mesmo quarto, podemos utilizar
uma tecnologia de alcance curto, com a qual os dados são transmitidos apenas por alguns
passos. Agora se a Sofia e o Pedro estiverem em um campo de futebol, cada um de um lado
do campo, a tecnologia de comunicação precisa ter um alcance maior, capaz de enviar os
dados por vários metros.
As principais tecnologias de comunicação utilizadas em IoT são:
Ethernet (IEEE 802.3): ele é bastante utilizado para ligar computadores desktop à Internet.
O Ethernet utiliza cabos e possui alta taxa de transmissão de dados e grande alcance. Possui
taxa de transmissão de dados de até 1Gbps e 100 metros de alcance. Mas pode chegar a
transmitir 10Gbps com alcance de até 2 quilômetros quando utilizando fibra óptica. Como
utiliza cabos, esta tecnologia não seria aplicável para qualquer tipo de objeto inteligente,
como para um guarda-chuva inteligente, por exemplo, já que dificulta a mobilidade. Mas,
por outro lado, poderia ser utilizado em uma geladeira inteligente.

Wi-fi (IEEE 802.11): se refere a uma tecnologia de comunicação sem fio com alcance
adequado para redes locais, cerca de 50 metros, e taxa de transmissão de dados adequada
para assistir vídeos, até 1.300Mbps na sua versão mais recente, IEEE 802.11ac. Esta
tecnologia é a tecnologia de comunicação sem fio que é mais utilizada e, portanto, está
presente em praticamente todos os lugares (escritórios, indústrias e em espaços públicos).
ZigBee: esta é uma tecnologia de comunicação sem fio que possui menor alcance, cerca de
30 metros, e menor taxa de transmissão de dados do que o Wi-fi, em torno de 250Kbps,
mas que foi desenvolvida para consumir menos bateria. O ZigBee é adotado em vários
produtos de IoT.
Bluetooth Low Energy: o Bluetooth é uma tecnologia de comunicação sem fio que foi
desenvolvida para ser intermediária entre o Zigbee e o Wifi, em termos de taxa de
transmissão de dados, alcance e consumo de bateria. Mas a sua versão mais recente, o
Bluetooth Low Energy, é capaz de transmitir 1Mbps com alcance de até 80m, com baixo
consumo de energia. Esta tecnologia foi adotada em muitos smartphones e tablets.
3G/4G: tecnologia para comunicação sem fio capaz de alcançar grandes distâncias. No
entanto, o consumo de energia é alto em comparação com outras tecnologias. A sua
utilização em locais afastados e a alta mobilidade podem compensar esse gasto. A vazão
alcançada no padrão 3G é de cerca de 1Mbps e no padrão 4G é de até 10Mbps. É utilizada
para comunicação por celulares com a operadora.
A tabela abaixo resume as tecnologias de comunicação apresentadas:
Protocolo Alcance Vazão
Ethernet 100/2.000m 10Gbps
Wi-fi 50m 1.300Mbps
Bluetooth 80m 1Mbps
ZigBee 100m 250Kbps
3G/4G 35/200 Km 1/10Mbps

Fonte de energia
Clique para adicionarBookmark this page

A unidade de fonte de energia é responsável por alimentar de energia os componentes do


objeto inteligente. Essa energia pode vir de uma tomada ou de uma bateria.

Esse componente é um fator crítico, pois uma grande quantidade de energia, que é um
recurso limitado, é empregada para realizar a comunicação dos objetos inteligentes.
As baterias são as fontes de alimentação mais utilizadas em sistemas de IoT, embora não
sejam as mais adequadas, pois quando estão embutidas em dispositivos tornam-se difíceis
de serem manipuladas numa necessidade de troca.
Uma estratégia para minimizar este problema é fazer uso da técnica da colheita de energia
(Energy Harvesting) que consiste em extrair energia de fontes externas ao dispositivo como
energia solar, térmica, eólica ou cinética.
A energia colhida é armazenada e supre as necessidades dos objetos como comunicação e
processamento. No entanto, possui alguns desafios como por exemplo, de que forma é
possível gastar a energia e garantir a execução contínua das atividades do objeto
inteligente.
Para compreender melhor, vamos analisar o seguinte exemplo:
Imagine que um dispositivo inteligente deve realizar tarefas durante as 24 horas do dia,
porém somente quando há luz do sol é possível captar energia do ambiente. Além disso,
sabe-se que a carga da bateria não suporta 24 horas com o dispositivo em operação
constantemente. Sendo assim, o dispositivo precisará operar em janelas de tempo: por
exemplo, fica ligado por 1 minuto, e entra em espera pelos próximos 2 minutos, depois liga
de novo por mais 1 minuto e assim por diante. Dessa forma, economiza-se energia e o
dispositivo continua funcionando o dia todo.

Compromissos
Clique para adicionarBookmark this page

Como vimos nesta aula, existe um compromisso entre a capacidade de comunicação


(distância e quantidade de dados) e o consumo de energia. Quanto maior for a capacidade
de comunicação de um dispositivo, maior será o seu consumo de energia.
No caso de dispositivos que usam baterias, quanto maior o consumo de energia do
dispositivo, as baterias precisam ser maiores ou vão terminar mais rapidamente, precisando
ser recarregadas mais frequentemente.
Este compromisso também vale para a unidade de processamento, quanto maior a
capacidade de processamento do hardware, maior é o consumo de energia.

Reflita!
Clique para adicionarBookmark this page

Sensores e atuadores estão em toda parte!


Ao assistir esse curso, você está tendo contato com pelo menos dois tipos de atuadores:
uma tela (atuador luminoso) e um alto-falante ou fone de ouvido (atuador sonoro).
Quais outros sensores e atuadores você já viu em ação, ou mesmo utilizou, na última
semana?

Sensores e atuadores
Clique para adicionarBookmark this page

Unidades de sensores e atuadores realizam interações com o ambiente em que o objeto


inteligente está imerso.

Os sensores são responsáveis por captar (sentir) informações do ambiente tais como
temperatura, umidade, luz, pressão, presença, etc.
Os atuadores são dispositivos capazes de atuar no ambiente, modificando-o. Por exemplo,
ligando um motor, aumentando a temperatura, emitindo um som, entre outros.
Sensores
Sensores são muito importantes em IoT, pois são necessários em qualquer sistema de
aquisição de dados.

Lembra do caso do Poste de Iluminação Inteligente, que mencionamos na aula anterior? Ele
verificava se a região próxima ao poste estava iluminada para verificar se a lâmpada estava
funcionando. Para fazer esta verificação, é utilizado um sensor. Este sensor capta a
luminosidade do ambiente e a converte em um sinal que um computador consegue
entender, que é um sinal elétrico. Como o Poste Inteligente tem um computador dentro
dele, usando um sensor ele consegue descobrir se a luz está queimada ou não!
O sensor é um componente que recebe um estímulo de entrada e responde com um sinal
elétrico compatível com os circuitos eletrônicos que estão na sua saída.

Os sensores são usados para converter grandezas físicas, como por exemplo temperatura,
movimento ou umidade, em uma grandeza passível de processamento, ou seja, sinais
digitais (dados).
Logo, um sensor recebe como entrada (input) qualquer tipo de estímulo e gera como saída
(output) sinais elétricos.

Atuadores
Um atuador, assim como um sensor, transforma uma informação em outra. Porém, ele faz o
caminho reverso: ele transforma um sinal elétrico em uma resposta física, como por
exemplo movimento, som ou luz.
Atuadores também são muito importantes em IoT, pois são necessários em qualquer
sistema que atue no ambiente, ou seja, que gere ações no ambiente. Vamos considerar o
caso de uma Janela Inteligente, que possa ser controlada pelo celular, por exemplo. Quem
faz a janela abrir ou fechar é um atuador. O atuador sabe se ele precisa abrir ou fechar a
janela recebendo comandos por sinais elétricos.
Os atuadores são usados para converter sinais elétricos, que podem ser gerados por
computadores, em grandezas físicas, como por exemplo temperatura, movimento ou
luminosidade.
Logo, um atuador recebe como entrada (input) um sinal elétrico e gera saídas (output) de
qualquer tipo.

Exemplo
Um exemplo muito presente nas nossas vidas é o smartphone que possui sensores e
atuadores.
Dentre os sensores de um smartphone, podemos citar: o microfone, a tela sensível ao
toque, o giroscópio e o acelerômetro. Sabemos que os sensores captam informações do
ambiente. O microfone capta o som do ambiente, a tela capta o toque dos dedos, o
giroscópio detecta a direção na qual o celular está apontando e o aceleterômetro detecta o
movimento do aparelho.
Já atuadores de um smartphone são por exemplo: o alto-falante, a tela e o vibracall.
Aprendemos que atuadores atuam no ambiente. O alto-falante emite sons, a tela apresenta
informações solicitadas e o vibracall faz o celular vibrar.
Agora vamos ver alguns exemplos de sensores e atuadores.
Tipos de Sensores
Clique para adicionarBookmark this page

Como vimos, há vários tipos de sensores. Vamos conhecer alguns deles e aprender sobre o
seu funcionamento.

Posição (Potenciômetro)
Você já ajustou a temperatura de um ferro de passar? Ou regulou o volume de uma caixa de
som? Estes dois ajustes têm uma coisa em comum: eles são construídos usando
potenciômetros.
O potenciômetro é um sensor que capta a posição do cursor do pino central dos botões de
giro.
Distância (Ultrassom)
Um sensor muito utilizado para medição de distância é o Sensor de Ultrassom. Um
ultrassom é apenas um som de altíssima frequência, muito acima do que os nossos ouvidos
são capazes de perceber.

O sensor ultrassônico é composto de um emissor e um receptor de ondas sonoras. Podemos


compará-los a um alto-falante e um microfone trabalhando em conjunto.

O sinal emitido, ao colidir com qualquer objeto, é refletido de volta na direção do sensor. O
sensor calcula a distância até o obstáculo medindo o tempo que o sinal levou para ir até o
obstáculo e voltar.
Um exemplo de uso do sensor de distância por ultrassom é no equipamento conhecido
como sensor de estacionamento, presente em alguns carros. Funciona da seguinte forma:
na hora de estacionar, o sensor de ultrassom detecta quando o carro se aproxima de um
obstáculo e então um som de alerta é emitido.
Temperatura
Como o nome sugere, estes sensores captam a temperatura do ambiente e a transformam
em um sinal elétrico. Depois que a temperatura é convertida em sinal elétrico, ela pode por
exemplo, ser enviada para um smartphone por meio da Internet.
Umidade
Este sensor é semelhante ao sensor de temperatura, mas mede a umidade. Alguns desses
sensores são em formato de hastes e podem ser inseridas no solo para medir sua umidade.
A partir desta informação e se a umidade for baixa, um sistema de irrigação pode ser
ativado automaticamente ou uma mensagem pode ser enviada para o celular do
responsável.

Luminosidade
Um sensor de luminosidade detecta a intensidade da luz emitida sobre ele. Este tipo de
sensor já é utilizado em postes de iluminação pública automatizados, que acionam-se
sozinhos ao detectar que está anoitecendo (ou seja, o sensor detecta que há pouca
luminosidade e o sistema ativa a iluminação dos postes).

Tipos de Atuadores
Clique para adicionarBookmark this page

Assim como no caso dos sensores, também existem vários tipos de atuadores. Vamos
conhecer alguns.
Movimento (motores)
Os atuadores mais fáceis de identificar são os atuadores de movimento, pois eles causam
mudanças tangíveis no mundo físico. Por exemplo, o motor de um carro permite que ele se
desloque sobre uma superfície, o motor em um braço robótico faz com que o braço se
movimente e o motor de um ventilador movimenta suas pás.
Som (Alto-falante)
Atuadores de som são nada mais do que alto-falantes ou caixas de som -- itens estes que
você já deve conhecer. Existem atuadores de som nos celulares, nas TVs, em carros, em
alarmes, em fones de ouvido, etc.
Como todo atuador, eles recebem impulsos elétricos e causam alguma alteração no mundo
físico. Nesse caso, as alterações são vibrações sonoras que se propagam no ambiente.

Luminosidade (LED)
Os atuadores de luminosidade emitem raios de luz. São basicamente lâmpadas, LEDs de luz
visível ou infravermelho por exemplo. Apesar de parecer bastante simples à primeira vista, a
emissão de luz causa uma mudança no mundo físico: a mudança de luminosidade e,
portanto configura um atuador.

Unidade de Processamento e Hardware Livre


Clique para adicionarBookmark this page

Como vimos nesta aula, para projetar e implementar uma aplicação de Internet das Coisas,
você vai precisar de um conjunto de elementos de hardware: uma unidade de
processamento e memória, uma unidade de comunicação, uma fonte de energia, sensores
e atuadores.
É possível utilizar uma unidade de processamento disponibilizada sob uma licença de
hardware livre. Mas o que é hardware livre?

Hardware livre (em inglês, Open Source Hardware) é um elemento de hardware


disponiblizado para uso livre, da mesma maneira que um software pode ser distribuído
como software livre, ou seja pode ser usado sem a necessidade de pagar uma licença para
seu uso.
São circuitos eletrônicos que podem ser copiados livremente, já que o próprio
desenvolvedor disponibiliza todas as informações necessárias para reproduzir o circuito: o
diagrama esquemático, o layout de placa, a lista de componentes e outras informações
relacionadas ao hardware em questão.
Vamos conhecer algumas unidades de processamento distribuídas sob licença de hardware
livre.

Hardware Livre - Arduino


Clique para adicionarBookmark this page
O Arduino é uma placa de circuito com um microcontrolador embutido que pode ser usada
para a criação de inúmeros projetos eletrônicos de maneira fácil.
A placa dispõe de pinos de entrada e saída para conectar-se a dispositivos, tais como
sensores e atuadores.
A plataforma Arduino tem se popularizado em uma infinidade de aplicações, possibilitando
que pessoas não especialistas possam colocar em prática suas ideias de interação com
objetos e ambientes, fazendo uso de recursos de eletrônica e programação.
Nos próximos cursos do CodeIoT, você aprenderá a desenvolver seu projeto utilizando esta
plataforma.
O Arduino têm se popularizado em pesquisas e no desenvolvimento de diversas aplicações,
pois:
• demanda uma pequena margem de aprendizado, possuindo fácil programação;
• existe uma grande variedade de informações disponíveis para diversos tipos de aplicações;
• possui baixo custo em relação a outros dispositivos.

De modo geral, o Arduino é caracterizado como hardware livre, no qual a documentação


para elaboração de projetos é disponibilizada para os usuários no site da plataforma.
Hardware Livre - Raspberry Pi
Clique para adicionarBookmark this page
A placa Raspberry Pi é um computador completo de baixo custo, que possui um
microprocessador no lugar do microcontrolador, memória e pinos de entrada e saída.
Mesmo sendo do tamanho de um cartão de crédito, pode ser conectada a um monitor,
teclado e mouse e fazer tudo o que se espera de um computador comum.
É possível por exemplo, acessar a Internet, reproduzir vídeos de alta definição ou executar
jogos.
A Raspberry Pi, assim como o Arduíno, tem a capacidade de interagir com o mundo físico,
por meio de sensores e atuadores podendo ser usada na implementação de vários projetos.
Projetos desenvolvidos com uma Raspberry Pi têm uma capacidade além daqueles
desenvolvidos com outras placas de prototipagem, pois o fato de possuir mais memória e a
capacidade de ter um Sistema Operacional carregado, ampliam os recursos de
desenvolvimento de aplicações.
É possível por exemplo, construir um termostato de uma maneira simples usando uma placa
Arduino. Porém, com a Raspberry Pi o termostato poderia permitir acesso remoto e
download de histórico de temperaturas.
O fato de ser um computador totalmente funcional torna a plataforma interessante para
projetos mais robustos, caso haja necessidade de um Sistema Operacional e de memória
RAM.
Finalizando
Clique para adicionarBookmark this page

Nesta aula aprendemos o que é hardware e onde há hardware em aplicações de IoT. Vimos
o que são sensores e atuadores e conhecemos alguns exemplos. Também vimos algumas
plataformas de hardware de uso livre, como o Arduíno, que iremos usar para construir
projetos de IoT.

Na próxima aula vamos estudar o software por trás da IoT.

Arquitetura em aplicações de IoT


Clique para adicionarBookmark this page

Em sistemas de IoT, uma arquitetura é um modelo que pode ser utilizado para originar
aplicações semelhantes. É um conjunto de blocos de construção composto por tecnologias.
Uma arquitetura de referência facilita e guia o desenvolvimento, a padronização e a
evolução dos sistemas de IoT.
A arquitetura que iremos utilizar neste curso engloba três componentes básicos:
percepção/atuação, rede, aplicação.
Sistemas em IoT possuem partes pertencentes a estes três componentes.
Componentes da arquitetura de Internet das Coisas
Clique para adicionarBookmark this page

PERCEPÇÃO/ATUAÇÃO

O componente de percepção/atuação, se refere às partes do sistema de IoT que fazem


interação com o mundo físico: recolhendo informações do mundo real e fazendo mudanças
no ambiente. As coisas do termo Internet das Coisas normalmente fazem parte deste
componente.

REDE
O componente de rede é responsável por fazer conexões no sistema de IoT, por conectar os
objetos inteligentes que normalmente é feita pela Internet. Tecnologias e estratégias para
esta conexão à Internet, são definidas no componente de rede.

APLICAÇÃO
O componente de aplicação é a parte do sistema de Internet das Coisas que entrega
serviços para as pessoas. Ele utiliza os outros dois componentes (percepção/atuação e rede)
para fazer algo útil.
O hardware por trás de IoT
Clique para adicionarBookmark this page

Em geral, um objeto inteligente é composto por quatro unidades básicas de hardware:


processamento e memória, comunicação, energia, sensores e atuadores.
Processamento e memória têm a função de armazenar dados e a sequência lógica de
instruções que torna o objeto inteligente.
Comunicação é responsável pela comunicação do objeto inteligente com a Internet ou com
outros objetos inteligentes.
Energia é responsável por alimentar os componentes do objeto inteligente.

Sensores e atuadores realizam interações com o ambiente em que o objeto inteligente está
imerso.
Unidade de processamento, hardware livre e Arduino
Clique para adicionarBookmark this page

Nos próximos cursos do CodeIoT, utilizaremos uma unidade de processamento


disponibilizada sob uma licença de hardware livre: o Arduino.
Arduino é uma placa de circuito com um microcontrolador embutido que pode ser usada
para a criação de projetos de maneira fácil. A placa dispõe de pinos de entrada e saída para
conectar-se a dispositivos, tais como sensores e atuadores.

O que é software?
Clique para adicionarBookmark this page
Software é um conjunto de instruções que controlam o funcionamento de um computador.
Software é uma palavra da língua inglesa e é utilizada em oposição a hardware. Lembre que
mencionamos na aula anterior que a palavra em Inglês "hard" significava algo rígido? Então,
a palavra em Inglês "soft" significa o oposto de "hard”, algo que não é rígido.
O Software, ao contrário do Hardware, é a parte do computador que nós não podemos
tocar. São os programas e aplicativos que executam no computador, nos smartphones,
tablets, etc.

Agora vamos falar um pouco sobre como criar um software.


Como fazer um software?
Clique para adicionarBookmark this page

Como o software é um conjunto de instruções, "fazer um software" consiste em escrever


instruções para que um computador as execute.
Este site do CodeIoT, por exemplo, foi programado com instruções de computador. Quando
você clica em "Próximo", ele vai para a próxima página do curso. Isso acontece porque
alguém escreveu instruções para que o site fizesse isso.
Mas e quem foi esse "alguém que escreveu instruções"?
As pessoas que escrevem as instruções de software são chamados programadores ou
programadoras, eles criam os programas.
Agora, vamos pensar um pouco sobre como esse programador poderia dar instruções ao
computador. Antes de mais nada, o programador precisa se comunicar com o computador.
Para se comunicar, ele precisa usar algum tipo de linguagem -- assim como nós humanos
usamos línguas faladas ou de sinais para nos comunicar. Bom, mas já que o programador
precisa se comunicar com o computador, ele utiliza uma linguagem de programação.
Então é isso, uma linguagem de programação não é nada mais do que uma ferramenta que
permite que o programador escreva programas. O botão de "Próximo" desta página, por
exemplo, foi programado usando uma linguagem de programação chamada "Javascript". No
curso "Aprendendo a Programar" da plataforma CodeIoT você vai aprender como usar a
linguagem de programação "Scratch" para programar o computador.
Agora que você já sabe que para fazer um software você só precisa usar alguma linguagem
de programação para instruir o computador, vamos aprender um pouco sobre a história da
programação.
Para que servem as linguagens de programação?
Clique para adicionarBookmark this page

Você já ouviu a expressão: “o computador é burro”? Essa expressão não é totalmente


mentira, pois um computador não é capaz de tomar decisões, ele apenas executa comandos
fornecidos por pessoas que são programadores. O computador entende o que chamamos
de linguagem de máquina: uma sequência de números 1 ou 0.
Todas as instruções dadas a um computador são essencialmente sequências numéricas
compostas por 0 e 1 (Ex: 01101100).
Você já parou pra pensar no trabalho que dá escrever um programa inteiro usando
instruções compostas por combinações de 0 e 1?

É pra isso que existem as linguagens de programação: para facilitar a comunicação entre
pessoas e computadores, entre programadores e o hardware do computador.

O programador escreve instruções em uma linguagem bem próxima da que as pessoas usam
para se comunicar. Em seguida um segundo programa, um compilador, traduz o que o
programador escreveu para a linguaguem de máquina, sequências compostas por 0 e 1. Esta
linguagem o computador entende e consegue executar.

Há ainda uma outra situação. O programador escreve instruções em uma linguagem


próxima da língua falada e um outro programa, um interpretador, traduz cada instrução e o
computador a executa.
Mas quando precisamos de um compilador e quando precisamos de um interpretador? Isso
depende da linguagem que utilizamos. Existem linguagens que necessitam de um
compilador e outras de um interpretador. São linguagens compiladas ou interpretadas.
Agora vamos responder à pergunta inicial: Para que servem as linguagens de programação?
As linguagens de programação servem para programadores se comunicarem com
computadores passando instruções com uma linguagem próxima da língua que as pessoas
usam para se comunicar.
Onde tudo começou?
Clique para adicionarBookmark this page

Você sabia que apesar de atualmente as mulheres serem minoria na Computação, foi uma
mulher a primeira pessoa a desenvolver um conjunto de instruções para um computador?
O primeiro programa de computador foi criado em 1843 por Augusta Ada Byron, Condessa
de Lovelace, nascida em 1815, conhecida como Ada Lovelace.

O computador para qual a Ada desenvolveu seu algoritmo ficou conhecido como a Máquina
Analítica de Babbage, que é considerado o primeiro computador mecânico da história. O
inventor da Máquina Analítica foi Charles Babbage, que era professor de matemática em
Cambridge. Como em 1830, a taxa de erros humanos em cálculos matemáticos era
gigantesca, Babbage se empenhou na criação de uma máquina que fizesse cálculos, para
acabar com esse problema. Ada ajudou Charles no desenvolvimento da Máquina Analítica e
escreveu um artigo com um método passo a passo para calcular a sequência de Bernouilli,
conhecida também como a Lei dos Grandes Números, na máquina de Babbage.

A Máquina Analítica de Babbage era movida a vapor, executava até 60 cálculos por minuto e
utilizava cartões perfurados para fazer a sua programação. Os cartões perfurados foram
utilizados como forma de programar os primeiros computadores, já que eles não tinham
ainda monitor e teclado.
Mas a ideia de utilizar cartões perfurados veio da área têxtil! Algumas décadas antes da
criação da Máquina Analítica de Babbage e da Ada escrever o seu algoritmo, ainda em 1804,
Joseph-Marie Jacquard inventou o Tear Mecânico.

Naquela época, os tecelões de seda franceses tinham que ficar trocando os fios e as linhas a
cada passagem da máquina laçadeira. Isso era uma tarefa manual e muito repetitiva para os
tecelões. Jacquard percebeu que as mudanças dos fios seguiam uma certa lógica e inventou
um processo de cartões perfurados que definiam padrões nas laçadeiras e podiam fazer
desenhos complexos. Assim, o trabalho do tecelão poderia ser trocado para algo
automatizado.

O Tear funcionava da seguinte forma: um conjunto de cartões avançavam sobre uma folha
giratória. Onde havia um orifício, a agulha conseguia passar, caso contrário, a agulha não
passava. Dessa forma, somente trabalhavam as agulhas coincidentes com os furos. Trata-se
portanto de um sistema binário. Estes padrões em cartão perfurado podem ser
considerados programas.
Os primeiros computadores foram inspirados pelo tear mecânico e utilizaram esta mesma
estratégia. Eles tinham uma interface que recebia programas em cartões perfurados para
computar informações. Há quem considere que a Máquina de Tear seja a mais antiga forma
de programação criada por Jaquard em 1804, na França.
Curiosidades
Clique para adicionarBookmark this page

Vale a pena saber...


Em 1953, a Máquina de Babbage foi redescoberta e o algoritmo que Ada propôs foi
implementado. Os dois entraram para a História como o primeiro computador e o primeiro
software, respectivamente.
E, em homenagem a Ada Lovelace, a primeira programadora da história, o Departamento de
Defesa dos Estados Unidos registrou em 1980, a linguagem de programação ADA.

Evolução das Linguagens de Programação


Clique para adicionarBookmark this page

Quando os computadores surgiram, a sua programação não era nada fácil. As primeiras
linguagens de programação que surgiram demandavam muitos detalhes. Para poder
escrever instruções para o computador, o programador precisava entender como ele foi
projetado, quais módulos ele tinha e como eram suas memórias. Em outras palavras, ele
precisava utilizar linguagens de programação que exigiam muito detalhamento. Essas
linguagens são chamadas linguagens de baixo nível.
O Assembly, por exemplo, é uma linguagem de baixo nível, que requer muito tempo para
criar um programa.
Com o tempo, as linguagens de programação evoluiram, surgiram as linguagens de
programação de alto nível, que estão mais próximas à linguagem humana. Nelas, os
programadores não precisam conhecer os detalhes de hardware do computador,
concentrando-se mais no funcionamento do programa e menos em como ele será
executado.
Linguagens como Pascal, Python, Java por exemplo, reúnem e simplificam a linguagem de
máquina e fazem determinadas ações só por comandos que geralmente são palavras em
inglês. Um exemplo é o comando ´print´ da linguagem Python, que é usado para exibir uma
mensagem na tela do usuário.
Neste exemplo, o comando ´print´ é utilizado para exibir a frase ´Hello World´ na tela do
usuário.
Atualmente existem linguagens de programação visual, onde ao invés de usar comandos de
textos em inglês, imagens e elementos gráficos são utilizados. Eles podem ser arrastados e
montados em blocos que se encaixam.
Scratch é um exemplo de linguagem de programação visual. Você vai conhecer e aprender a
usar esta linguagem no próximo curso do CodeIoT.
Não há dúvidas que o hardware que usamos é extremamente útil e isso graças à
programação, ao processo de criação do software, que dá utilidade aos aparelhos que
usamos.

Por isso, quando for usar algum software para resolver algum problema ou simplesmente
quando você jogar algum game, não esqueça de agradecer aos mestres (Ada Lovelace e
Jacquard), pois foram eles que geraram a ideia que serviu de base para a programação
atual.

Finalizando
Clique para adicionarBookmark this page

Nesta aula você aprendeu um pouco sobre a história do software e conheceu a primeira
programadora da história, Ada Lovelace.
Você também aprendeu que as linguagens de programação foram criadas para facilitar a
comunicação do programador com o computador e que é por meio delas que podemos
construir software.
Quando você criar uma aplicação de Internet das Coisas com objetos inteligentes
conectados, você vai precisar projetar e implementar um hardware que será embutido nos
seus objetos, e programar um softwareque terá as instruções para seu hardware e onde
haverá a lógica da inteligência de seus objetos.
Como queremos desenvolver objetos inteligentes contectados, na próxima aula você irá
aprender sobre a comunicação entre computadores, mas especificamente sobre Clientes e
Serviços.
O que vamos aprender?
Clique para adicionarBookmark this page

Na aula passada, aprendemos o que é software e vimos que para criar uma aplicação de
Internet das Coisas com objetos inteligentes contectados, você vai precisar projetar e
implementar um hardware que será embutido nos seus objetos e programar um software
que terá as instruções para seu hardware e a lógica da inteligência de seus objetos.
E quando seu objeto precisar se conectar a outro objeto? E se este outro objeto estiver
distante do seu?

Nesta aula vamos aprender sobre isso, vamos ver o que é uma arquitetura cliente-servidor,
como funcionam os serviços Web e vamos conhecer publish/subscribe, uma arquitetura
alternativa ao modelo cliente-servidor. Vamos entender também o que é o protocolo HTTP
e por que precisamos deste protocolo.

Prontos para começar?


Arquitetura Cliente-Servidor
Clique para adicionarBookmark this page
Para um computador se comunicar com outro ou um objeto inteligente trocar informações
com outro, precisaremos utilizar uma arquitetura. Lembrando que uma arquitetura é um
modelo que auxilia o desenvolvimento de um projeto e facilita sua implementação.

Começaremos com a arquitetura cliente-servidor. Vamos entender melhor seus conceitos e


funcionamento.
A arquitetura cliente-servidor é um modelo que distribui tarefas entre fornecedores de um
recurso ou serviço, denominados servidores, e os requerentes dos serviços, chamados de
clientes.
Servidores e clientes são computadores ou equipamentos de hardware. Servidores prestam
serviços para muitos clientes.
A arquitetura cliente-servidor parte do princípio que um cliente inicia um pedido enviando
uma solicitação para um servidor que a processa e retorna com os dados solicitados. Com
base nesta resposta, o cliente pode fazer novas requisições.
Um cliente pode ser um celular, um tablet ou um computador.
Um servidor é um computador com grande capacidade de processamento.

Geralmente um servidor oferece vários serviços, pois isso elimina a necessidade de


aquisição de vários servidores, já que esses computadores são especiais e portanto, custam
caro. Por isso, quando o cliente faz uma requisição ao servidor, ele indica uma determinada
porta. Cada porta responde a um serviço.

Quando o cliente e o servidor se comunicam por meio da Internet chamamos estes serviços
de serviços Web. Um dos serviços Web é o fornecimento de páginas de Internet -- ou,
resumindo, sites --, as quais são acessadas por meio dos navegadores. O funcionamento é
bem simples. Vamos entender por meio de um exemplo.

Um usuário acessa o endereço de uma página por meio do seu navegador web. Então seu
computador, o cliente, envia uma requisição para o endereço da página que ele quer
carregar. O servidor, ao receber a requisição, irá processá-la e retornar a página que o
usuário quer visualizar. O usuário pode interagir com essa página, clicando em links por
exemplo, enviando assim uma nova requisição ao servidor, iniciando todo o processo
novamente.
É fácil notar no exemplo que o cliente e o servidor não estão no mesmo computador. O
servidor pode estar em outra cidade ou outro continente. Por isso a comunicação entre eles
é feita através de uma rede, neste caso: a Internet.

Um servidor pode também fazer uma requisição a outro servidor, atuando neste caso como
cliente. Mas como isso é possível? Vamos ver um exemplo.
Imagine que uma pessoa está usando o Google. Ela digita "previsão do tempo", e aperta a
tecla 'Enter'. O computador dessa pessoa irá atuar como cliente e enviar uma requisição
para o serviço Web no servidor do Google. Este serviço, por sua vez, irá agir como um
cliente e pesquisar na Internet por sites de meteorologia. Eventualmente ele irá descobrir
quais websites são relevantes e devolver uma lista com estes sites para o cliente que fez o
pedido.
É importante notar nesse exemplo, que a busca nos sites é realmente executada pelo
serviço Web do Google, sem interface de usuário, ou seja, é um serviço se comunicando
com outro serviço. Do ponto de vista da pessoa que digitou e apertou 'Enter', vai parecer
que o seu computador cliente fez a mágica de encontrar os sites, porém a verdade é que
essa mágica aconteceu nos servidores do Google, que se comunicaram com outros
servidores por meio da Internet.

Mas como os clientes e os servidores se comunicam? Eles utilizam uma língua como
português ou inglês? Ou eles usam linguagens de programação como aprendemos na aula
passada? Os clientes e os servidores se comunicam fazendo uso de protocolos de
comunicação, especificamente o protocolo TCP/IP (Transmission Control Protocol/ Internet
Protocol).
Em resumo:
- pessoas se comunicam entre si usando línguas como português ou inglês;
- pessoas comunicam instruções a computadores usando linguagens de programação como
Pascal ou Python;
- clientes e servidores se comunicam usando o protocolo TCP/IP.
Vamos nos aprofundar um pouco mais no protocolo de comunicação TCP/IP?
Protocolo TCP/IP
Clique para adicionarBookmark this page

Vamos entender melhor o protocolo TCP/IP.


TCP/IP é a forma de comunicação entre computadores conectados à Internet. Vamos ver os
detalhes relembrando alguns conceitos que trabalhamos na primeira semana deste curso.
Todos os computadores possuem um endereço numérico único chamado endereço IP e
além deste endereço, possuem também inúmeras portas onde as aplicações e os processos
se comunicam.
Imagine que o cliente, com endereço IP 177.175.79.80 queira, através da porta 65, iniciar
uma conexão com o servidor de endereço IP 185.187.87.88 na porta 80 para obter a página
inicial do Facebook.

Como será que o computador cliente sabe o endereço IP e a porta de serviço que deve se
conectar no computador servidor para obter a página inicial do Facebook se nada disso foi
informado?

A única informação passada foi o endereço do Facebook na barra de endereços do


navegador, ou seja, www.facebook.com
Acontece o seguinte: quando um computador está conectado à Internet, ele está
configurado para acessar um servidor especial chamado servidor de nomes ou servidor DNS
(Domain Name System), como é mais conhecido. Este servidor funciona como uma lista de
endereços.
Quando digitamos o endereço www.facebook.com na barra de endereços, estamos
informando o endereço URL (Uniform Resource Locator) do site.

Se o navegador não conhecer o endereço IP para esta URL, então ele se conecta com o
servidor DNS e pergunta:
“Olá. Tenho a URL www.facebook.com, você pode me informar qual é o endereço IP dela?”
O servidor então responde:
"Tenho sim, o endereço IP desta URL é 185.187.87.88."
Portanto, o servidor DNS pega o endereço URL e converte em um endereço IP para
descobrir em qual computador essa página está armazenada.
Mas e a porta? Como o cliente sabe em qual porta deve se conectar?
Para responder essa pergunta, imagine o seguinte cenário:
Uma pessoa passa pelo seu bairro e te pergunta: “Onde fica o metrô?”. E você prontamente
responde: “O metrô fica no final desta rua.”. Isso é automático para você, pois o metrô
sempre esteve no mesmo lugar desde quando você era criança e dificilmente vai mudar de
lugar. E se isso acontecer, os interessados são sempre informados.
O mesmo ocorre com as portas disponíveis no computador. Elas são conhecidas de acordo
com o serviço que oferecem.
Veja alguns exemplos:
- Se precisar de um serviço de transferência de arquivos, ele pode ser encontrado na porta
21.
- Se precisar de um serviço de entrega de e-mail, ele estará na porta 25.
- Se precisar de um serviço de entrega de páginas Internet, ele estará na porta 80.
E por aí vai...
Agora que o computador do cliente já conhece o endereço IP do destino e a porta na qual
ele deseja se conectar, o cliente precisa estabelecer uma conexão com o servidor.

A conexão é estabelecida da seguinte forma:


Cliente: Olá 185.186.87.88, desejo estabelecer uma conexão na porta 80.
Servidor: Olá 177.178.79.80. Pode realizar a conexão.
Cliente: Ok, iniciarei a conexão.

Depois de estabelecer uma conexão entre cliente e servidor, eles trocam mensagens. As
mensagens trocadas ocorrem por meio de pacotes. Os pacotes são fragmentos menores
dos dados que trafegam na rede. Por exemplo, uma mensagem de email pode ser dividida
em vários pacotes. Cada pacote contém informações como o endereço de origem, o
endereço de destino e a sequência que os pacotes devem ser reconstruídos ao chegar no
seu destino.
Uma característica importante é a garantia de entrega, graças ao protocolo TCP/IP, pois
todos os pacotes que saem da origem possuem a garantia de que chegarão ao seu destino e
que serão entregues de forma ordenada e sem modificações.
Cada pacote pode viajar pela rede por diferentes caminhos, sendo enviados de um
computador para o outro, mais ou menos na direção do seu destino.

Mas quem decide qual é o melhor caminho? Os roteadores. São dispositivos capazes de
realizar a comunicação entre várias redes que compõem a Internet. O roteador analisa cada
pacote de informação e decide a melhor rota até o seu destino. Quando os pacotes chegam
ao seu destino, a informação original é reconstituída.

O TCP/IP, portanto, é um protocolo de rede que permite a comunicação entre


computadores. Uma conexão deve ser estabelecida antes do início do envio de pacotes.
Trata-se de um protocolo ponto-a-ponto, possui garantia de entrega de pacotes de forma
ordenada e sem modificações e possui controle de fluxo.
Vamos agora falar de servidores Web.
Servidor Web
Clique para adicionarBookmark this page

Existe um serviço conhecido como Servidor Web (também conhecido como servidores
HTTP) que recebe e manipula todos os pacotes que vem pela porta 80, ou seja, são
responsáveis pela troca de solicitações de páginas de Internet entre usuário e servidor.
Servidores Web permitem armazenar um conjunto de páginas Web. É por meio destes
servidores que sites são disponibilizados para os usuários que os acessam.
Em outras palavras, o Servidor Web é o responsável por disponibilizar as páginas Web de
cada site.

Funciona de forma bem simples. Vamos entender com um exemplo.


Quando um usuário abre um navegador, digita o endereço de uma página Web e pressiona
uma tecla para carregá-la, o navegador envia uma requisição HTTP para o endereço
digitado. O Website hospedado no servidor recebe a requisição HTTP e responde com a
página solicitada. Essa página é o conteúdo de um arquivo de extensão .html ou .php que é
interpretada pelo navegador e exibida na tela do usuário.
Geralmente um Servidor Web é implementado com diferentes tecnologias como PHP
(Hypertext PreProcessor) ou servidores ASP (Active Server Pages) que permitem criar
aplicações com conteúdo dinâmico, juntamente com um servidor de Banco de Dados (como
MySQL ou Oracle) responsável pelo armazenamento de informações. Se o servidor Web
fosse implementado sozinho ele seria capaz apenas de exibir páginas HTML estáticas.

Vamos ver agora o que é a arquitetura Publish/Subscribe.


Publish/Subscribe
Clique para adicionarBookmark this page

Como vimos, na arquitetura cliente/servidor tradicional o cliente é o responsável por fazer


uma requisição e aguardar a resposta do servidor. Já na arquitetura Publish/Subscribe, o
conceito é outro. Vamos entender como funciona.
A arquitetura Publish/Subscribe é um modelo de comunicação entre computadores. Neste
modelo consumidores (subscribers – assinantes) expressam seu interesse em um ou mais
serviços, para que possam vir a ser notificados quando informações geradas nesses serviços
por um produtor (publisher – publicador) combinam com as informações de seu interesse.
Podemos dizer que a arquitetura Publish/Subscribe inverte o modelo tradicional do cliente
solicitando um serviço. Neste modelo é o servidor que inicia a comunicação e envia dados
aos clientes que assinaram o serviço. Neste modelo, é o servidor que empurra os dados para
os clientes, utilizando uma arquitetura padrão chamada Publish/Subscribe.

Vamos ver um exemplo. Produtores de informações como sensores são os publishers e


publicam suas leituras em um Banco de Dados. As leituras são enviadas do Banco de Dados
para um gerenciador de eventos localizado no servidor. Consumidores de informações
interessados assinam esse gerenciador indicando para quais sensores desejam receber
leituras. E desta forma, se tornam assinantes ou subscribers. O gerenciador de eventos
recebe as leituras dos sensores e as envia para seus respectivos clientes assinantes.
O uso de um gerenciador de eventos como mediador proporciona um desacoplamento
entre produtores (publishers) e assinantes (subscribers). Esse desacoplamento elimina
qualquer dependência entre eles, aumenta a escalabilidade (a adição ou remoção de
produtores ou assinantes é independente da interação) e o ambiente dinâmico resultante
se adapta bem em redes móveis onde há frequentes conexões e desconexões.
Finalizando
Clique para adicionarBookmark this page

Nesta aula você aprendeu conceitos relacionados à arquitetura cliente-servidor. Vimos que
o protocolo TCP/IP é o responsável pela comunicação e troca de pacotes entre
computadores cliente e servidor. Falamos também sobre servidores Web responsáveis por
armazenar e disponibilizar o acesso às páginas Web. Por último, você aprendeu um pouco
sobre a arquitetura publish/subscribe que traz um modelo de comunicação onde o detentor
da informação (publisher) inicia a comunicação com os assinantes (subscribers).
Quando você for criar sua aplicação de Internet das Coisas com objetos inteligentes, você
vai precisar utilizar arquiteturas e modelos de comunicação para implementar objetos
inteligentes conectados.

Nas próximas aulas vamos falar mais profundamente do hardware e software integrados em
sistemas de IoT.