Escolar Documentos
Profissional Documentos
Cultura Documentos
br
INTERNET
DAS COISAS
Esp. Felippe Fernandes Silva
INICIAR
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 1/36
06/07/2020 Ead.br
introdução
Introdução
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 2/36
06/07/2020 Ead.br
Prototipando com
Microcontroladores
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.
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 3/36
06/07/2020 Ead.br
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.
digitalWrite(13, HIGH);
delay(500);
digitalWrite(13, LOW);
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 4/36
06/07/2020 Ead.br
void setup()
digitalWrite(13, HIGH);
void loop()
{ }
void setup()
void loop()
digitalWrite(13, HIGH);
delay(500);
digitalWrite(13, LOW);
delay(500);
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 5/36
06/07/2020 Ead.br
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.
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.
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 6/36
06/07/2020 Ead.br
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;
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 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:
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 7/36
06/07/2020 Ead.br
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() {
Serial.begin(9600);
delay(500);
pinMode(led2, OUTPUT);
digitalWrite(led2, LOW);
//Intanciando os botoes
digitalWrite(botao1, HIGH);
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 8/36
06/07/2020 Ead.br
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 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*/
{
atual[i] = 0;
}
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 9/36
06/07/2020 Ead.br
valor1 = 0;
valor2 = 0;
void loop() {
if(digitalRead(botao1) == LOW){
torna-se 0... */
delay(300);
}
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 10/36
06/07/2020 Ead.br
valor2 = !valor2;
atual[0] = valor2;
digitalWrite(led2, valor2);
delay(300);
}
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){
reg[i] = atual[i];
}
zera();
delay(500);
}
if(digitalRead(botaoSoma) == LOW){
delay(500);
}
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 11/36
06/07/2020 Ead.br
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 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;
res[i] = 1;
vaiUm = 0;
continue;
}
res[i] = 0;
vaiUm = 1;
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 12/36
06/07/2020 Ead.br
continue;
}
res[i] = 0;
vaiUm = 1;
continue;
}
res[i] = 1;
vaiUm = 1;
continue;
}
res[i] = 0;
continue;
}
res[i] = 1;
continue;
}
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 13/36
06/07/2020 Ead.br
res[i] = 1;
continue;
}
res[i] = 0;
vaiUm = 1;
continue;
}
}
void resultado(){
digitalWrite(led1, res[3]);
valor1 = res[1];
atual[1] = res[1];
digitalWrite(led2, res[0]);
valor2 = res[0];
atual[0] = res[0];
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 14/36
06/07/2020 Ead.br
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 15/36
06/07/2020 Ead.br
atividade
Atividade
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.
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 16/36
06/07/2020 Ead.br
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.
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 17/36
06/07/2020 Ead.br
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:
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, 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.
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 18/36
06/07/2020 Ead.br
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 19/36
06/07/2020 Ead.br
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.
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 20/36
06/07/2020 Ead.br
Por m,o processamento dos dados pode ser auxiliado pelas tecnologias que
sustentam Big Data e essas informações analisadas 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).
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 21/36
06/07/2020 Ead.br
atividade
Atividade
Com base nos estudos, quais das alternativas abaixo contém as três principais
características da Big Data?
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 22/36
06/07/2020 Ead.br
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 23/36
06/07/2020 Ead.br
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.
flit
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 24/36
06/07/2020 Ead.br
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?
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 25/36
06/07/2020 Ead.br
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
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 26/36
06/07/2020 Ead.br
atividade
Atividade
Sobre aprendizagem de máquina e de acordo com o que foi estudado sobre o tema, é
correto a rmar que:
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 27/36
06/07/2020 Ead.br
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 28/36
06/07/2020 Ead.br
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).
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 29/36
06/07/2020 Ead.br
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 30/36
06/07/2020 Ead.br
atividade
Atividade
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.
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 31/36
06/07/2020 Ead.br
indicações
Material
Complementar
LIVRO
Fundação
Isaac Asimov
ISBN: 8576570661
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 32/36
06/07/2020 Ead.br
FILME
Eu, robô
Ano: 2004
TRAILER
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 33/36
06/07/2020 Ead.br
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:
referências
Referências
Bibliográ cas
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 34/36
06/07/2020 Ead.br
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.
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.
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 35/36
06/07/2020 Ead.br
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.
IMPRIMIR
https://unp.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller 36/36