Buscar

Unidade 4 - Bloco 1

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 38 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 38 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 38 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

INTERNETINTERNET
DAS COISASDAS COISAS
Esp. Fel ippe Fernandes Si lva
IN IC IAR
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
1 of 38 09/04/2021 17:53
introdução
Introdução
Nesta unidade você será apresentado a prototipação com microcontroladores,
auxiliado pela construção e desenvolvimento de uma calculadora binária que
realizará a soma de dois números binários. Apresentaremos o software
responsável pela programação e desenvolvimento em Arduino e em seguida,
aprenderá algumas funções e palavras reservadas dessa linguagem e veri�cará
sua proximidade com a linguagem C. Em seguida, no capítulo 2, será veri�cado a
relação entre Internet das Coisas e Big Data. Entenderemos como esses dados
são gerados e como é realizada a coleta, armazenamento e processamento de
informações entre Big Data e IoT. No capítulo seguinte, passaremos uma visão
geral sobre ambientes inteligentes, relacionando aprendizagem de máquina e
inteligência arti�cial no uso da IoT. Por �m, no último capítulo veri�caremos
através de alguns estudos, sobre Internet das Coisas e sua segurança,
analisando a proteção de dispositivos e informações.
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
2 of 38 09/04/2021 17:53
Neste tópico faremos um simulador de uma calculadora binária de dois dígitos.
Para isso utilizaremos alguns conceitos de arduíno e de programação,
mostrando que é possível realizar a prototipação de um microcontrolador e
alguns de seus componentes.
Para que o entendimento seja mais e�caz, explicaremos primeiramente o
arduíno. O Arduíno é uma plataforma de microcontrolador que atraiu a
imaginação dos entusiastas  de eletrônica, pois a sua facilidade de uso e a sua
natureza aberta fazem dele uma ótima opção para qualquer um que deseja
construir um projeto eletrônico. Basicamente, permite que você conecte
circuitos eletrônicos aos seus terminais de modo que ele possa controlar
dispositivos (MONK, 2018).
Sabendo que o Arduíno é a parte física do nosso desenvolvimento, necessitamos
então entender o software que é utilizado juntamente com ele. Esse software
pode ser encontrado no site <www.arduino.cc> e instalado em seu computador.
Prototipando comPrototipando com
MicrocontroladoresMicrocontroladores
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
3 of 38 09/04/2021 17:53
Após �nalizar a instalação do programa já é possível abrir o software e iniciar a
implementação. Ao abrir o programa encontra-se um arquivo vazio, porém, ao
veri�car a sua pasta de instalação, é possível veri�car que existem vários
exemplos já desenvolvidos dentro de uma pasta, com diversos arquivos que
podem ser úteis para o entendimento do programa e seu funcionamento.
De acordo com Monk (2018), o aplicativo do Arduino é composto por sketches,
que nada mais são do que documentos em um editor de texto. Você pode abrí-
los e copiar parte de um programa para o outro. Dessa forma, você terá opções
como abrir, salvar e salvar como no menu File. Como você acabou de criar um
skecth, o mesmo estará vazio e necessita de uma implementação.
Na programação para Arduino, destaca-se que a linguagem utilizada é o C. Da
mesma forma que a programação simples, para se programar em Arduino é
necessário realizar uma série de instruções que serão lidas pelo software. Um
exemplo para isso é o acender e o apagar das luzes de um led que se encontra
na posição 13 do Arduino. Para isso é necessário escrever o seguinte código:
digitalWrite(13, HIGH);
delay(500);
digitalWrite(13, LOW);
O código acima faz a leitura do led posicionado na entrada 13 e o comando
HIGH, indica que o led será aceso. A segunda linha de código propõe um delay
de 500 milisegundos. Esse delay é o tempo de espera em que o Arduino leva
para realizar a instrução seguinte. Na terceira linha de código podemos veri�car
e deduzir que o comando LOW vai apagar o led. Portanto, esse código vai
acender e apagar um led após 500 milisegundos. Vale ressaltar que, como não
há um looping, isso ocorrerá apenas uma vez e não é um pisca-pisca.
Como qualquer linguagem de programação, o software do Arduino possui
algumas peculiaridades particulares. Entre algumas palavras e maneiras de
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
4 of 38 09/04/2021 17:53
programar, existem as funções setup e loop. Essas palavras são funções que são
chamadas sendo iniciadas por um void. Todas essas palavras são chamadas na
forma de função, sendo que, o agrupamento de um bloco de instruções que se
faz referente à determinada função, é delimitada por abre e fecha colchetes.
Dessa forma, temos o início do código abaixo que simpli�ca as funções faladas:
void setup()
{
            digitalWrite(13, HIGH);
}
void loop()
{    }
Ainda sobre algumas palavras reservadas ou funções embutidas temos a função
pinMode. Monk (2018), descreve que essa função de�ne o modo de
funcionamento de um pino, seja ele como entrada ou seja ele como saída.
Portanto, para o processo de acender um led, primeiro de�niremos que o pino
13 deverá ser uma saída e em seguida, fazer com que sua saída acenda o led
novamente.
Para fazer esse pisca-pisca, Monk(2018) utilizou o seguinte código:
void setup()
{
          pinMode(13, OUTPUT);
}
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
5 of 38 09/04/2021 17:53
void loop()
{
         digitalWrite(13, HIGH);
         delay(500);
         digitalWrite(13, LOW);
         delay(500);
}
Como toda ferramenta de desenvolvimento de software, possuímos uma etapa
para declaração de variáveis. Essa etapa ocorre antes da função de chamada do
setup. A forma como uma variável é declarada é bem parecida com as demais
linguagens, como por exemplo, para de�nir que o led está no pino 13, temos
que declará-lo como inteiro (int) e fazê-lo receber o valor 13. Como no exemplo
abaixo:
int led1 = 13;
Para qualquer item que seja programado em Arduino, é necessário fornecer a
taxa de comunicação de bits entre a placa serial. Para isso existe uma função
chamada Serial.begin(9600); Essa função é a responsável por passar a taxa de
comunicação de bits por segundo. Essa taxa, por um padrão de início de
prototipação é mantida em 9600.
Agora que sabemos o básico para a prototipação em microcontroladores,
desenvolveremos uma calculadora binária de 2 dígitos. Para isso, é necessário
saber que o valor mínimo desta calculadora é zero e o valor máximo é três. Essa
atividade consiste em montar uma calculadora binária simples com 2 dígitos e
fará somas que não ultrapassem o valor 3, visto que é o maior valor binário com
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
6 of 38 09/04/2021 17:53
esse número de dígitos (11). O funcionamento desta calculadora é simples,
possuindo 2 leds e 2 botões para controlar os estados das operações, no qual o
LED ligado representa o valor 1, e o LED desligado representa o valor 0. A
atividade será desenvolvida também com botões para o manuseio de
operações.
Para o desenvolvimento dessa atividade utilizaremos alguns materiais
complementares ao Arduino em si. Eles são:
Um Arduino;
Dois LEDS;
Quatro botões tácteis;
Para iniciar esse programa, precisamos realizar as declarações das variáveis.
Como é um exemplo didático, essa calculadora funcionará apenas para número
entre 0 e 3. Por se tratar de uma calculadora binária, os leds serão declarados
com o tipo de dado byte. Podemos ver isso no exemplo a seguir:
byte led1 = 9;
byte led2 = 10;
Isso de�ne que os leds estão serializados nas entradas 9 e 10. Essa inicialização
ocorrerá também para os botões (que são vinculados a cada led). Ao pressionar
um desses botões o led se acenderá. Também serão atribuídos mais três botões,
um deles é responsável por indicar o valor de uma soma e o outro responsável
por armazenar o valor fornecido. Temos então o seguinte:
byte botao1 = 2;
byte botao2 = 3;
byte botaoReg = 6; // Botão RegistradorEad.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
7 of 38 09/04/2021 17:53
byte botaoSoma = 7; // Botão Soma
Como todo programa a ser desenvolvido, é necessário iniciar os valores a serem
enviados para esses botões. Esses valores são inicializados com o valor zero, da
seguinte forma:
byte valor1 = 0;
byte valor2 = 0;
Por �m, �nalizando as declarações, é necessário criar vetores para que seja
possível armazenar os valores. Nesse caso, temos um vetor de dois elementos
que vai nos informar o valor atual de nossa operação e à quais leds eles
correspondem; um vetor para o registro dos dados e por �m um vetor que vai
retornar o resultado das operações. Como a seguir:
char atual[2]; // Valor atual da operação, correspondente com
os leds
char reg[2]; // Valor do Registrador
char res[2]; // Valor do resultado das operações
Após as declarações das variáveis acima, podemos iniciar a parte lógica de nossa
calculadora de soma. Primeiramente, como foi dito anteriormente, é necessário
chamar uma função setup e utilizar a função Serial.begin(9600) que já foi
explicada anteriormente. Feito isso, precisamos instanciar os nossos dois leds,
informando que são dados de saída e que iniciarão apagados. O mesmo será
feito para os quatro botões(Botão led 1, botão led 2, botão soma e botão de
registro). O código dessa parte é representado da seguinte forma:
void setup() {
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
8 of 38 09/04/2021 17:53
 Serial.begin(9600);
delay(500);
    //Instanciando dois leds
    pinMode(led1, OUTPUT); //Definindo led 1, como saida
"OUTPUT"
    digitalWrite(led1, LOW); // Iniciando como desligado
"LOW"    
    pinMode(led2, OUTPUT);
    digitalWrite(led2, LOW);    
    //Intanciando os botoes
    pinMode(botao1, INPUT); //Definindo botao 1, como entrada
"INPUT"
    digitalWrite(botao1, HIGH);    
    pinMode(botao2, INPUT);
    digitalWrite(botao2, HIGH);    
    pinMode(botaoReg, INPUT);
    digitalWrite(botaoReg, HIGH);    
    pinMode(botaoSoma, INPUT);
    digitalWrite(botaoSoma, HIGH);
Ainda dentro da função setup que é nossa função principal, teremos uma função
chamada zera(). Essa função é responsável por zerar todos os valores do dos
vetores de led. Sua chamada é bem simples, realizada após a última linha de
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
9 of 38 09/04/2021 17:53
código acima, por meio do seguinte comando:
zera();
Como dito acima, a função zera() é a responsável por zerar todos os valores dos
leds e dos vetores atuais, apagando seus leds como se estivessem iniciando o
programa novamente. A implementação dessa função é realizada da seguinte
forma:
void zera()  /*Funçao zera o vetor atual, apaga os leds e os valores de cada led*/
{
   for(int i = 0; i < 2; i++)
     {
        atual[i] = 0;
     }
    digitalWrite(led1, LOW);
    digitalWrite(led2, LOW);          
       valor1 = 0;
       valor2 = 0;
}
Agora entraremos no loop dessa implementação e prototipação. Dentro desse
looping conheceremos o comando digitalRead. Esse comando é responsável por
veri�car o valor de um botão quando o mesmo for pressionado. Como o status
inicial dos leds são zero, a função deve alterar esse valor para que seja recebido
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
10 of 38 09/04/2021 17:53
o valor um. Ao receber esse valor o led deverá acender, con�rmando assim sua
alteração. Sua implementação obedece a seguinte forma:
void loop() {
     if(digitalRead(botao1) == LOW){
//Se o botão 1 foi pressionado
  valor1 = !valor1; /* Inverte o valor quando pressionado,
          inicia em 0, pressionado torna-se 1, pressionado
novamente
          torna-se 0... */
       atual[1] = valor1; // vetor atual na última posição
recebe o valor
       digitalWrite(led1, valor1); // led acende conforme o
valor
       delay(300);
     }
     if(digitalRead(botao2) == LOW){ //Se o botão 2 foi
pressionado
       valor2 = !valor2;
       atual[0] = valor2;
       digitalWrite(led2, valor2);
       delay(300);
     }
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
11 of 38 09/04/2021 17:53
Deve-se aplicar o mesmo para os botões que armazenam os valores, como o
botão que registra um valor informado e o botão soma. Dessa forma,
completando a função de loop, temos o seguinte trecho de código:
if(digitalRead(botaoReg) == LOW){
     //Vetor Registrador recebe o vetor atual
      for(int i = 0; i < 2; i++){
        reg[i] = atual[i];
      }
      zera();
      delay(500);
    }
    if(digitalRead(botaoSoma) == LOW){        
      soma(); // Chama a função soma
      resultado(); // Chama a função resultado para exibi-la
em tela
      delay(500);
    }
}
Teremos agora o trecho mais importante de nosso programa, onde toda a lógica
da calculadora pode ser encontrada. A função soma nada mais será do que a
soma de dois valores que resultem no máximo o valor 3. Justi�cando, para que o
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
12 of 38 09/04/2021 17:53
código não se torne repetitivo, escolheu-se esse valor e para que a lógica não
�casse tão complexa. Para a parte lógica dessa soma temos o clássico “vai um”.
Isso se aplica quando a soma de dois valores são maiores que a capacidade de
armazenamento aumentando em uma unidade a soma total de dois valores.
Quando tratamos de números binários deveremos lembrar que a soma de 1+1 é
10. Tratando essa parte lógica então, temos o seguinte código para a função
soma:
void soma(){  
 byte vaiUm = 0;
/*Vai Um, resto da soma binaria, 1+1 = 0 e vaiUm = 1,  1+1+1
= 1 e vaiUm = 1 */
 for(int i = 3; i >= 0; i--){
   
   if((reg[i] == 0) && (atual[i] == 0) && vaiUm == 1){
     res[i] = 1;
     vaiUm = 0;
     continue;
   }
   if((reg[i] == 0) && (atual[i] == 1) && vaiUm == 1){
     res[i] = 0;
     vaiUm = 1;
     continue;
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
13 of 38 09/04/2021 17:53
   }
   if((reg[i] == 1) && (atual[i] == 0) && vaiUm == 1){
     res[i] = 0;
     vaiUm = 1;
     continue;
   }
   if((reg[i] == 1) && (atual[i] == 1) && vaiUm == 1){
     res[i] = 1;
     vaiUm = 1;
     continue;
   }
   
   if((reg[i] == 0) && (atual[i] == 0) && vaiUm == 0){
     res[i] = 0;
     continue;
   }
   if((reg[i] == 0) && (atual[i] == 1) && vaiUm == 0){
     res[i] = 1;
     continue;
   }
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
14 of 38 09/04/2021 17:53
   if((reg[i] == 1) && (atual[i] == 0) && vaiUm == 0){
     res[i] = 1;
     continue;
   }
   if((reg[i] == 1) && (atual[i] == 1) && vaiUm == 0){
     res[i] = 0;
     vaiUm = 1;
     continue;
   }
 }  
}
Para esse caso utilizamos vários conceitos básicos de programação, como as
estruturas condicionais if e for. Por �m, devemos então mostrar os resultados
para o usuário que realizou as operações. O trecho de código �ca da seguinte
forma:
void resultado(){
digitalWrite(led1, res[3]);
  valor1 = res[1];
  atual[1] = res[1];
digitalWrite(led2, res[0]);
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
15 of 38 09/04/2021 17:53
  valor2 = res[0];
  atual[0] = res[0];
}
Com isso temos aqui a nossa primeira prototipação e implementação de
microcontrolador.
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
16 of 38 09/04/2021 17:53
atividadeAtividade
Microcontroladores são pequenos circuitos integrados que possuem um processador,
memória e periféricos de entrada e saída. Com essa informação, podemos a�rmar que
com a sua prototipação é possível desenvolver que tipo de atividades:
a) Calculadora
b) Alarmes de incêndio
c) Alarmes de carro
d) Elevadores
e) Todas as alternativas anteriores.
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...17 of 38 09/04/2021 17:53
Neste tópico entenderemos melhor o que é Big Data e como podemos
relacioná-la com a Internet das Coisas, tratando as suas fontes de geração e
quais seus tipos de dados e falando sobre a visão geral de uma coleta,
armazenamento e processamento de dados.
Fontes de gerações e tipos de dados
Com o constante crescimento da tecnologia, �cou mais comum ao ser humano
armazenar e guardar várias memórias de momentos de sua vida, seja ela por
vídeos ou por fotos. Além disso, a tecnologia pode ser utilizada para �ns de
conhecimentos e aprendizagem ou até mesmo entretenimento. Muitos dados
são armazenados nas memórias computacionais e essa grande quantidade de
informações é chamada hoje de  Big Data.
Na computação utilizamos unidades de medida para controlar o tamanho de
Internet das Coisas e BigInternet das Coisas e Big
DataData
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
18 of 38 09/04/2021 17:53
volumes de informações. Essas escalas variam desde o bit (menor unidade
possível) até o yottabyte (maior unidade utilizável). Dentro dessa escala, a escala
de dados que é utilizado para medir a quantidade de informações armazenadas
é o zettabyte, que é a unidade anterior ao citado yottabyte.. Chamam isto de Big
Data  (Tole, 2013).  Ele explica que o volume aumenta a cada ano pelas seguintes
razões:
O armazenamento de dados hoje é barato (discos rígidos e DVDs) ou
mesmo de graça (serviços de hospedagem free na Web);
As pessoas estão mais familiarizadas com a tecnologia e
consequentemente geram e armazenam mais informações (crianças de
2 anos já sabem usar celulares e computadores e a 3a idade está
menos tecnofóbica);
Guardar e-mails antigos em sua caixa de entrada. Isso acumula muita
informação que nem sempre é útil ao usuário.
Uma expansão das redes sociais, onde é possível publicar informações
relacionadas à você mesmo.
Analisando dessa forma vemos a importância que a IoT tem com a Big Data.
Taurion (2013) a�rma que os imensos amontoados de dados provêm das mais
diversas fontes, pois, além dos dados gerados pelos sistemas transacionais das
empresas, temos a imensidão de dados gerados pelos objetos na Internet das
Coisas, como sensores e câmeras, e os gerados nas mídias sociais via PCs,
smartphones e tablets. Integram o chamado Big Data o conteúdo de 640
milhões de sites, dados de seis bilhões de celulares e os três bilhões de
comentários feitos diariamente no Facebook. Variedade porque estamos
tratando tanto de dados textuais estruturados quanto não estruturados como
fotos, vídeos, e-mails e tuítes. E velocidade, porque muitas vezes precisamos
responder aos eventos quase que em tempo real.  Ou seja, estamos falando de
criação e tratamento de dados em volumes massivos.
Podemos concluir então que Big Data e IoT estão relacionados diretamente
entre si e com o crescimento da quantidade de volume de dados e tecnologia,
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
19 of 38 09/04/2021 17:53
essa quantidade de informações tende a crescer. Dessa forma, a capacidade
massiva de armazenamento de dados deve acompanhar esse crescimento e
obviamente, crescer comitantemente.
Visão geral sobre coleta, armazenamento e
processamento de dados
Para que a Big Data tenha os seus dados coletados e armazenados, é necessário
a utilização de algumas técnicas. Entretanto, é necessário entender que existem
três pilares para a extração das informações. De acordo com McA�e e
Brynjolfsson (2012), a Big Data não é referente apenas ao armazenamento de
dados, ela é diretamente ligada a velocidade e a origem dos dados. Quando se
possui uma relação muito grande de informações, obviamente a velocidade do
processamento desses dados é bem maior. Como por exemplo, para realizar a
busca de um dado especí�co, é necessário consultar toda a base de informações
até encontrar o termo desejado. Além da velocidade também temos a variedade
dos dados. Com o crescimento da tecnologia e da quantidade de informações
disponíveis, existem várias formas de obter informações, como por exemplo
redes sociais e pastas compartilhadas via rede.
Portanto, essas três características fundamentais estão relacionadas a Big Data:
volume, variedade e velocidade.  Essas características são descritas em:
Volume: a Web interativa, a conexão de um número cada vez maior de
dispositivos na rede e o uso mais intenso de redes sociais têm
provocado um aumento exponencial na quantidade de dados que são
gerados diariamente. Todas essas informações, além de outros tipos de
dados como o comportamento de consumidores, os dados �nanceiros,
os relatórios médicos, as conversas realizadas em aplicativos de troca
de mensagens, são armazenados em bases de dados, que gera um
volume extremamente denso de dados (MCAFFE e BRYNJOLFSSON,
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
20 of 38 09/04/2021 17:53
2012);
Velocidade: em suma, os dados gerados �cam disponíveis em
servidores em tempo real. Tal característica permite que o
processamento e as análises dos dados ocorram, simultaneamente, a
criação dos mesmos, possibilitando a tomadas de decisões
instantâneas. Dessa maneira, a velocidade à qual se refere McA�e trata
não apenas da entrada, mas também do �uxo dos dados, em que é
necessário ter velocidade para acompanhar a geração e a demanda das
requisições realizadas (MCAFFE e BRYNJOLFSSON, 2012);
Variedade: o modo em que os dados estão disponíveis na Web
apresenta uma diversidade crescente, onde usuários podem inserir
textos, músicas, hipertextos, vídeos, conteúdos interativos, entre outros
(MCAFFE e BRYNJOLFSSON, 2012).
De acordo com Coneglian et al. (2017), diversas questões são capazes de gerar
problemas durante o processo de análise de dados. Esses problemas podem
causar exclusão e discriminação por não considerarem fatores que in�uenciam
diretamente nos resultados, que como consequência poderá, inevitavelmente,
afetar determinados grupos de indivíduos, em virtude das tomadas de decisões
baseadas nas análises dos dados.
Para se coletar dados referentes a Big Data, é necessário realizar uma análise e
um estudo que nos informará a quantidade do �uxo de dados que é produzida
por uma pessoa e suas respectivas informações. Frank et al (2013), realiza um
estudo comportamental de pessoas na rede social Twitter, por exemplo, que
conclui que os estadunidenses são mais felizes quando estão longe de suas
casas. Por outro lado Goldstein e Winkelmayer (2015), relata que estudos de Big
Data devem ser realizados utilizando os dados de sistemas de saúde. Apontando
como exemplo, caso de Taiwan, onde há um sistema universal de saúde, que
abrange a 99% da população. E assim, ser possível de�nir políticas públicas e
comportamentos de doenças.
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
21 of 38 09/04/2021 17:53
Para complementar a análise realizada, existem alguns aplicativos que auxiliam
a coleta desses dados. Como por exemplo um projeto que trata de um aplicativo
que coleta informações de buracos de ruas da cidade de Boston, EUA por meio
do uso de acelerômetro e GPS, tecnologias presentes apenas em smartphone.
 Os dados que são coletados são enviados ao governo municipal, para que possa
ser realizado, futuramente, o conserto das ruas que apresentam buracos (Street
Bump, 2015).
Sobre o armazenamento de dados, Taurion (2013) a�rma que o volume chama
atenção, mas é uma variável bem subjetiva, pois os limites de armazenamento e
tratamento de dados aumentam com a rápida evolução tecnológica. Grandes
corporações armazenam múltiplos petabytes e mesmo pequenas e médias
empresas trabalham com dezenas de terabytes de dados. Com esse volume
absurdo de dados, as informações que encontramos armazenadas em vários
lugares do mundo (incluindo empresas, páginas pessoais e etc) tendem a
aumentar exponencialmente.  
Por �m,o processamento dos dados pode ser auxiliado pelas tecnologias que
sustentam Big Data e essas informaçõesanalisadas sob duas óticas: as
envolvidas com analytics, tendo Hadoop e MapReduce como nomes principais e
as tecnologias de infraestrutura, que armazenam e processam os petabytes de
dados. Neste aspecto, destacam-se os bancos de dados NoSQL (not only SQL).
Essas tecnologias são utilizadas pois Big Data é a simples constatação prática de
que o imenso volume de dados gerados a cada dia excede a capacidade das
tecnologias atuais de os tratarem adequadamente (TAURION, 2013).
O Apache Hadoop é um framework MapReduce que facilita o
desenvolvimento de aplicações para o processamento de grande
volume de dados de forma distribuída, paralela, e com tolerância a
falhas. A ideia principal para o desenvolvimento de um processamento
do tipo (Job) MapReduce envolve o particionamento dos dados em
partes independentes. Estas partes são processadas por uma função de
mapeamento de forma totalmente paralela em cada nó do cluster de
computadores. Este framework ordena as saídas das funções de
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
22 of 38 09/04/2021 17:53
mapeamento e que servem de entrada para as funções de redução. Na
maioria dos casos, as entradas e saídas desse processo são
armazenadas no sistema de arquivos HDFS. O Apache Hadoop
também pode organizar a ordem de execução dos processos, e
monitoramento e re-execução em caso de falhas nas tarefas (VIEIRA ET
AL., 2012, p. 16-17).
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
23 of 38 09/04/2021 17:53
atividadeAtividade
Com base nos estudos, quais das alternativas abaixo contém as três principais
características da Big Data?
a) Volume, Variedade e Velocidade.
b) Volume, Hadoop e MapReduce.
c) Hadoop, Arduino e MapReduce.
d) Shield, Led e Velocidade.
e) Hardware, Software e Apache.
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
24 of 38 09/04/2021 17:53
Desde que os computadores foram inventados, sempre nos perguntamos se
eles poderiam ser feitos para aprender. Se pudéssemos compreender como
programá-los para aprender e melhorar automaticamente com experiência, o
impacto seria dramático (LOPEZ, 2010).
Um conceito simples de aprendizado de máquina pode ser explicado quando
um ambiente fornece alguma informação ao elemento de aprendizagem. Esse
elemento de aprendizagem utiliza esta informação para melhorar em um base
de conhecimentos e �nalmente este processo vai melhorando seu desempenho
perfeitamente até encontrar uma solução melhor do que a proposta (Haykin,
2001). Basicamente, há uma relação entre ambiente, elemento de aprendizado,
base de conhecimentos e performance.
Por outro lado, além da aprendizagem de máquina é necessário explicar
também a inteligência arti�cial. Teixeira (2014) explica que a inteligência arti�cial
é uma tecnologia que se encontra entre a ciência e a arte. Seu objetivo é
Internet das Coisas,Internet das Coisas,
Inteligência arti�cial  eInteligência arti�cial  e
Aprendizagem de MáquinaAprendizagem de Máquina
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
25 of 38 09/04/2021 17:53
construir máquinas que, ao resolver problemas, consigam também  pensar. Um
bom exemplo disso é a máquina de jogar xadrez. Nesse contexto, existem três
formas de construir um dispositivo que jogue xadrez: fazer com que o ser
humano imite uma máquina;  construir uma máquina que imite um ser humano
ou conseguir que uma máquina ultrapasse a mente humana.
Uma “learning machine” aprende com dados e quanto mais dados ele tiver, mais
o algoritmo aprende. Cria-se, portanto, um círculo virtuoso. Big Data é um passo
signi�cativo em busca da computação cognitiva. O exemplo do Watson da IBM é
emblemático dessa tendência (Taurion, 2013).
De acordo com Taurion (2013), com Big Data as fontes de informação se
ampliam consideravelmente.  Com essas informações fornecidas, podemos
alcançar o próprio usuário que compartilhou seus dados. Esses dados podem
ser obtidos, desde a exposição dos dados via rede social, até cliques e visitas a
determinadas páginas da web. É possível coletar dados e informações
armazenadas pelo próprio navegador utilizado e por meio dele identi�car
preferências de compra e hábitos comuns do usuário.  Como por exemplo a
 Amazon. Ela, com seu leitor eletrônico Kindle, consegue obter informações
sobre os hábitos de cada usuário. Ao ligá-lo ele envia para Amazon, entre outras
informações, o livro que está sendo lido, quantas páginas foram lidas, o tempo
consumido nesta leitura e os parágrafos sublinhados.
De um modo geral, podemos entender que nossos dispositivos IoT conseguem
captar um grande volume de dados e, por meio dessa coleta de dados, é
possível realizar uma �ltragem e começar a utilizar as informações coletadas a
nosso favor. Como por exemplo, quando você busca uma passagem aérea em
uma companhia de vôo. Ao �nalizar essa simples busca, seu navegador entende
que você está a procura de passagens e, dessa forma, começará a indicar
propagandas com descontos e promoções de passagem. Da mesma forma,
como citado acima, a Amazon utiliza de seu Kindle para entender as
preferências de leitura de seus usuários e, a partir disso, relacionar tipo de
leitura parecidos. Isso pode ser vinculado com o e-mail do usuário e ao revelar
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
26 of 38 09/04/2021 17:53
uma promoção, indicar gêneros parecidos para melhorar sua venda. Podemos
veri�car também que, isso auxilia no processo de vendas de uma empresa,
portanto, é um ramo crescente na tecnologia da informação e inclusive no
marketing digital.
Analisando ambientes inteligentes, temos alguns casos de Inteligência arti�cial e
aprendizagem de máquina bem sucedidos. Taurion (2013), diz que o uso
potencial no controle de doenças é veri�cado na inteligência arti�cial,
aumentando a vigilância sobre possíveis surtos como, por exemplo, descobrindo
em que áreas elas foram detectadas e de forma preditiva alertar e preparar os
hospitais e centros de emergência regionais para uma possível epidemia.
Pesquisas demonstram que isso é factível já havendo casos bem interessantes
de uso de Big Data neste contexto, onde identi�cam-se tendências em um
oceano de dados padrões de conexões e interdependências que não
conseguíamos observar quando usando amostragens bem 47 menores . Um
deles é o Flu Trends do Google. Baseado na imensa quantidade de dados que
obtém a cada minuto no seu buscador e que estão relacionados com as
reflita
Re�ita
Você já pensou no poder que a inteligência arti�cial e a
aprendizagem de máquina chegaram? As pesquisas realizadas
para essa área da tecnologia estão crescentes e, muitas vezes
faz o que antes era visto apenas em �lmes, tornar-se real. Alguns
robôs já são capazes de simular sentimentos com base na
tonalidade de voz ou descobrir o seu humor por meio das
características físicas (principalmente faciais) de um ser humano.
Convido-lhe a re�etir sobre o seguinte tema: Um dia, os robôs
imitarão os humanos em uma sociedade?
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
27 of 38 09/04/2021 17:53
necessidades das pessoas, o Google desenvolveu um projeto onde,
extrapolando-se a tendência de buscas, conseguiu-se identi�car indícios de
propagação de gripe antes dos números o�ciais re�etirem a situação.
saiba mais
Saiba mais
Você sabia que o escritor Issac Asimov criou
para a literatura de �cção cientí�ca três leis da
robótica que se aplicam a inteligência arti�cial
e, essa criação foi tão genial que ela se aplica
ao mundo real? Essas três leis são: 1 - Um robô
não pode ferir um humano ou permitir que um
humano sofra algum mal;  2 - os robôs devem
obedecer às ordens dos humanos, exceto nos
casos em que tais ordens entrem em con�ito
com a primeira lei e; 3 - Um robô deve
proteger sua própria existência, desde que não
entre em con�ito com as leis anteriores.
ACESSAR
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...28 of 38 09/04/2021 17:53
atividadeAtividade
Sobre aprendizagem de máquina e de acordo com o que foi estudado sobre o tema, é
correto a�rmar que:
a) Quanto menos dados tiver, melhor será o resultado.
b) Não existem estudos que comprovem sua e�cácia.
c) Algumas vezes pode não encontrar a melhor solução.
d) Sempre encontrará a melhor solução.
e) O desenvolvimento dessa aprendizagem está distante da realidade.
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
29 of 38 09/04/2021 17:53
Com esse crescimento da tecnologia, é praticamente impossível veri�car o
quanto estamos expostos com nossos dados e nossa vida pessoal. Como por
exemplo a postagem de fotos de uma determinada viagem, que pode nos
mostrar que não estamos no nosso país de origem. Ou até mesmo ao conectar-
se à um grupo de conversas e expor nosso dispositivo IoT, juntamente com fotos
e informações pessoais, fazendo com que qualquer pessoa que esteja nesse
respectivo grupo tenha acesso a nossas informações e vida particular. Nesse
contexto, analisamos que a proteção para esses dispositivos e para esses dados
é fundamental.
Proteção de dispositivos e dados
Para Batista e Kaminski (2017), O �uxo de informação em uma cidade inteligente
com dispositivos pertencentes à IoT consiste na coleta de dados pelos sensores,
processamento desses dados em ambientes distribuídos e envio de decisões
Internet das Coisas eInternet das Coisas e
segurançasegurança
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
30 of 38 09/04/2021 17:53
para atuadores. A expectativa por uma grande quantidade de sensores em uma
cidade inteligente traz como consequência um alto volume de dados trafegado
na rede. Ataques de segurança em um ambiente como esse podem trazer sérios
problemas para a população, já que agora o ambiente computacional não se
restringe a uma empresa de TI ou ao computador pessoal de um usuário, mas,
sim, à cidade como um todo.
Muitas das soluções que vêm sendo desenvolvidas para melhorar o
desempenho dos atuais sistemas de segurança para cenários como a IoT
baseiam-se em sistemas de processamento por �uxos para grandes massas de
dados. Além do monitoramento de dados das camadas de rede e de transporte
na IoT, existem propostas que buscam antecipar ataques por meio de dados não
estruturados como aqueles divulgados por seres humanos em redes sociais
online . Nesse caso, o monitoramento é feito diretamente na camada de
aplicação. A justi�cativa para utilizar redes sociais online em sistemas de
segurança vem principalmente do fato de que, nesses ambientes, usuários
tendem a propagar mensagens consideradas relevantes, além de serem
in�uenciados por outros usuários com muitos seguidores (Batista e Kaminski,
2017).
Apesar do avanço que vem sendo realizado em segurança da informação para
IoT, diversos desa�os de pesquisa ainda precisam ser resolvidos, como a
redução de falsos positivos gerados pelos sistemas de alerta, a busca pelos
melhores algoritmos de aprendizado de máquina para detecção de novos
ataques e o desenvolvimento de técnicas mais e�cientes para a correlação de
dados heterogêneos (Batista e Kaminski, 2017).
É necessário também veri�car o lado do desenvolvedor. Nesse contexto, espera-
se que os programadores assegurem que ataques a sistemas IoT sejam
interceptados, dados trocados sejam autenticados, os acessos sejam
controlados e a privacidade seja garantida. Para isso, sistemas customizados de
seguranças precisam ser desenvolvidos e ter o funcionamento certi�cado. Um
caso em especial que merece destaque e a segurança de sistemas IoT
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
31 of 38 09/04/2021 17:53
conectados a dispositivos móveis. Esse tipo de aplicação é alvo de muito
interesse uma vez que, como já citado, os aparelhos smartphones estão se
popularizando cada vez mais. Visto que sistemas de pagamento on-line em geral
(compras e serviços) estão cada vez mais comuns, a sua integração com
sistemas IoT logo ganhará espaço no mercado, quando  poderemos ir ao
cinema, ao supermercado ou sair para almoçar sem nem mesmo levar a carteira
(Egídio e Ukei, 2015).
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
32 of 38 09/04/2021 17:53
atividadeAtividade
Como o mundo está conectado, �ca difícil dizer que não ocorrerá uma exposição de
dados pela rede. São técnicas utilizadas para obter informações de um usuário na web,
exceto:
a) Phishing.
b) Rollback.
c) Ataque DDOS.
d) Ransomware.
e) Cavalo de Troia.
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
33 of 38 09/04/2021 17:53
indicações
Material
Complementar
LIVRO
Fundação
Isaac Asimov
Editora: Editora Aleph; Edição: 1ª
ISBN: 8576570661
Comentário: Recomenda-se esse livro em uma visão da
literatura da �cção cientí�ca. Esse livro é indicado em
várias fontes de conhecimento para que seja criada uma
visão abrangente e ampla de inteligência arti�cial,
estimulando o pensamento futurístico de onde as
máquinas podem chegar. Essa re�exão exposta no livro,
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
34 of 38 09/04/2021 17:53
faz com que máquinas e humanos vivam em uma única
sociedade, perguntando-se, até quando as máquinas
seguirão obedientes aos humanos?
FILME
Eu, robô
Ano: 2004
Comentário: O �lme indicado se chama “Eu, robô” e
conta com o renomado ator Will Smith. Esse �lme se
passa em 2035 e pode-se veri�car que robôs e humanos
vivem em uma sociedade onde robôs são subordinados
as ordens humanas. Uma das leis da robótica descrita
pelo �lme é que os robôs são impedidos de fazer mal à
um humano. Eis que essa lei é quebrada por um robô e a
investigação começa a ocorrer. O �lme foi indicado em
2005 para o Oscar de Melhores Efeitos Visuais.
Para conhecer mais sobre o �lme, acesse o trailer
disponível.
TRA ILER
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
35 of 38 09/04/2021 17:53
conclusão
Conclusão
Concluímos então o conteúdo de Internet das Coisas. Nessa unidade veri�camos
algumas práticas de programação e analisamos o potencial da Big Data e sua
utilização na aprendizagem de máquina e na Inteligência Arti�cial. Neste capítulo
você teve a oportunidade de:
Aprender a desenvolver um protótipo com microcontroladores;
Estimular o raciocínio do desenvolvimento de programação para
Dispositivos móveis;
O signi�cado de Big Data e sua importância nos dias atuais;
Que tipo de fontes são usadas para a geração de dados na Big Data;
Obtivemos uma visão geral sobre coleta, armazenamento e
processamento de dados;
Aprendemos o signi�cado de aprendizagem de máquina e inteligência
arti�cial;
Uma visão geral de ambientes inteligentes;
Por �m, a segurança dos dispositivos e dos dados da IoT.
referências
Referências
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
36 of 38 09/04/2021 17:53
Bibliográ�cas
BATISTA, Daniel; KAMINSKI, Carlos Alberto. Segurança. Computação, p. 21.
CONEGLIAN, Caio Saraiva; SEGUNDO, José Eduardo Santarem; SANT'ANA,
Ricardo César Gonçalves. Big Data:  fatores potencialmente discriminatórios
em análise de dados. Em Questão, v. 23, n. 1, p. 62-86, 2017.
EGIDIO, Lucas; UKEI, T. Internet das Coisas (IoT): Uma análise de
aplicabilidade. In: 1º WSEE-Workshop de Sistemas Embarcados da ES670. 2015.
FRANK, Morgan R. et al. Happiness and the patterns of life: A study of
geolocated tweets. Scienti�c reports, London, v. 3, Set. 2013.
GOLDSTEIN, Benjamin A.; WINKELMAYER, Wolfgang C. Comparative health
services research across populations: the unused opportunities in big data.
Kidney International, Bruxelas, v. 87, n. 6, p. 1094-1096, Jun. 2015.
HAYKIN, Simon. Redes Neurais: Princípios e prática. Porto Alegre RS:Bookman,
2001.
LOPEZ, Alvaro Gustavo Talavera. Controle Preditivo com Aprendizado por
Reforço para Produção de Óleo em Poços Inteligentes. 2010. Tese de
Doutorado.PUC-Rio.
MACAFFE E Brynjolfsson: MCAFEE, Andrew; BRYNJOLFSSON, Erik. Big Data: the
management revolution. Harvard Business Review, Brighton, v. 90, n. 10, p.
61-67, oct. 2012.
Monk, Simon. Programação com Arduino: Começando com Sketches.
Bookman. 2018.
STREET BUMP. About street bump. Boston, 2015. Disponível em:
<http://www.streetbump.org/about>. Acesso em: 24 abr. 2019.
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
37 of 38 09/04/2021 17:53
SWANSON, Don R.; SMALHEISER, N. R. An interactive system for �nding
complementary literatures: a stimulus to scienti�c discovery. Arti�cial
Intelligence, Amsterdam, v.91, n.2, p.183-203, Apr. 1997.  
TAURION, Cezar. Big data. Rio de Janeiro: Brasport, 2013.
TEIXEIRA, João F. Inteligência arti�cial. Pia Sociedade de São Paulo-Editora
Paulus, 2014.
TOLE, A. A. Big Data Challenges. Database Systems Journal, v. IV, n. 3, 2013,
p.31-40.
VIEIRA, Marcos Rodrigues et al. Bancos de Dados NoSQL: conceitos,
ferramentas,  linguagens e estudos de casos no contexto de Big Data.
Simpósio Brasileiro de Bancos de Dados, 2012.
IMPRIMIR
Ead.br https://uniritter.blackboard.com/bbcswebdav/institution/laureate/conteud...
38 of 38 09/04/2021 17:53

Continue navegando