E dição
FCA – Editora de Informática
EDIÇÃO
FCA – Editora de Informática, Lda. Av. Praia da Vitória, 14 A – 1000-247 Lisboa Tel: +351 213 511 448 fca@fca.pt www.fca.pt
Av. Praia da Vitória, 14 A – 1000-247 LISBOA Tel: +351 213 511 448 fca@fca.pt www.fca.pt
d istribuição
DISTRIBUIÇÃO
Lidel – Edições Técnicas, Lda. R. D. Estefânia, 183, R/C Dto. – 1049-057 LISBOA Tel: +351 213 511 448 lidel@lidel.pt www.lidel.pt
Lidel – Edições Técnicas, Lda. Rua D. Estefânia, 183, R/C Dto. – 1049-057 LISBOA Tel: +351 213 511 448 lidel@lidel.pt www.lidel.pt
L ivraria
LIVRARIA
Av. Praia da Vitória, 14 A – 1000-247 LISBOA Tel: +351 213 541 418 livraria@lidel.pt
Av. Praia da Vitória, 14 – 1000-247 LISBOA Tel: +351 213 511 448 * Fax: +351 213 173 259 livraria@lidel.pt
Copyright © abril 2016, FCA – Editora de Informática, Lda. ISBN: 978-972-722-830-0
Copyright © 2022, FCA – Editora de Informática
® Marca registada da FCA PACTOR Editores, Lda
ISBN edição impressa: 978-972-722-926-0
1.ª edição impressa: abril 2016
1.ª edição impressa: outubro de 2022
Paginação: Alice Simões
Paginação: Carlos Mendes
Impressão e acabamento: A definir Depósito Legal N.º Aguardar Capa: José Manuel Reis Ilustração da capa: Miguel Montenegro
Impressão e acabamento: Tipografia Lousanense, Lda. – Lousã Depósito Legal n.º 505792/22
Capa: José M. Ferrão – Look-Ahead
Marcas Registadas de FCA – Editora de Informática,
Marcas registadas de FCA – Editora de Informática, Lda. –
FCA®
Todos os nossos livros passam por um rigoroso controlo de qualidade, no entanto, aconselhamos a consulta periódica do nosso site (www.fca.pt) para fazer o download de eventuais correções.
Todos os nossos livros passam por um rigoroso controlo de qualidade, no entanto aconselhamos a consulta periódica do nosso site (www.fca.pt) para fazer o download de eventuais correções.
Não nos responsabilizamos por desatualizações das hiperligações presentes nesta obra, que foram verificadas à data de publicação da mesma.
Não nos responsabilizamos por desatualizações das hiperligações presentes nesta obra, que foram verificadas à data de publicação da mesma.
Os nomes comerciais referenciados neste livro têm patente registada.
Os nomes comerciais referenciados neste livro têm patente registada.
Reservados todos os direitos. Esta publicação não pode ser reproduzida, nem transmitida, no todo ou em parte, por qualquer processo eletrónico, mecânico, fotocópia, digitalização, gravação, sistema de armazenamento e disponibilização de informação, sítio Web, blogue ou outros, sem prévia autorização escrita da Editora, exceto o permitido pelo CDADC, em termos de cópia privada pela AGECOP – Associação para a Gestão da Cópia Privada, através do pagamento das respetivas taxas.
Reservados todos os direitos. Esta publicação não pode ser reproduzida, nem transmitida, no todo ou em parte, por qualquer processo eletrónico, mecânico, fotocópia, digitalização, gravação, sistema de armazenamento e disponibilização de informação, sítio Web, blogue ou outros, sem prévia autorização escrita da Editora, exceto o permitido pelo CDADC, em termos de cópia privada pela AGECOP –– Associação para a Gestão da Cópia Privada, através do pagamento das respetivas taxas.
ÍNDICE
O Autor VII
Sobre o Livro XV
1. Internet das Coisas: Tecnologia e Conceitos 1
1.1. O que é a IoT? 2
1.2. Introdução Histórica 8
1.3. Presente e Futuro 14
1.4. Arquitetura de Sistemas IoT 20
1.5. Sistemas Remotos 24
1.6. Protocolos 25
1.7. Software/Sistemas Centrais e Cloud 29
1.8. Dados/Data Brokers 32
1.9. Machine Learning 33
2. Tecnologias de Comunicação: IoT e 5G 37
2.1. Conectividade 38
2.2. Comunicações Móveis Tradicionais 41
2.3. Tecnologias Rádio IoT 46
2.4. Outras Tecnologias 49
2.5. Operadores IoT 51
2.5.1. Sigfox 52 2.5.2. Ingenu 52
2.6. IoT @ HOME 53
2.7. 5G 58
© FCA
3. Casos de Uso 63
3.1. Domótica/Casas e Edifícios Inteligentes 64
3.1.1. Estação Meteorológica Doméstica 66 3.1.2. Segurança Doméstica: Videovigilância e Alarmística 67
3.1.3. Regar Plantas e Jardins 69
3.1.4. Controlo do Aquecimento Central 70
3.1.5. Controlo do Portão da Garagem 72
3.1.6. Controlo da Iluminação 73
3.1.7. Controlo dos Eletrodomésticos 74
3.1.8. Controlo de Acessos 75
3.2. Televisão Inteligente (Smart TV) 76
3.3. Cidades Inteligentes (Smart Cities) 77
3.4. Redes Inteligentes (Smart Grids) 79
3.5. Roupas Inteligentes e Wearables 80
3.6. Veículos Inteligentes 82
3.7. Aviões Inteligentes e Drones 83
3.8. Medicina e Saúde 84 3.9. Fitness 86
3.10. Indústria Bélica 87
3.11. Indústria 88 3.12. Retalho e Logística 89 3.13. Agricultura e Floresta 90 3.14. Ambiente 91
3.15. Tracking/Localização 92 3.16. Gestão de Ativos 93
3.17. Interação com Media 94
3.18. Cobertura de Eventos 95
3.19. Experiências Imersivas 96 3.20. Turismo 97
3.21. Internet of Everything 98
4. Plataforma de Testes: Prototipando os Casos de Uso 101
4.1. Raspberry Pi 102
4.2. Montagem 105
5G e Internet das CoisasX
4.3. Configuração 107
4.4. Ambiente de Desenvolvimento 125
4.5. GPIO e Controlo de Pinos 128
4.5.1. Numeração dos Pinos 132
4.5.2. Entradas e Saídas 133
4.5.3. Configuração de Pinos 136
4.5.3.1. Provisionamento de Pinos 137 4.5.3.2. Controlo do Estado dos Pinos 138
4.5.3.3. Leitura do Estado dos Pinos 138
4.5.3.4. Esperar por Alteração do Estado dos Pinos 138 4.5.3.5. Saída do Programa 139
4.6. Interações com Bases de Dados 139
4.7. Exemplo Prático: Termómetro 144
5. Casas Inteligentes: Implementando os Casos de Uso 151
5.1. Casos de Uso Doméstico 152
5.2. Sensor de Luz e Despertador 152
5.3. Vigilância com Sensor de Movimento 159
5.4. Fechadura Digital 170
5.5. Termómetro e Higrómetro 177
5.6. Controlo de Portão de Garagem 190
5.7. Dos Protótipos aos Produtos 196
6. Agricultura e Indústria: Implementando os Casos de Uso 199
6.1. Interface de Sensorização do Raspberry Pi 200
6.2. Controlo de Rega 203
6.3. Prevenção de Inundações 207
6.4. Qualidade do Ar 210
6.5. Monitorização de Parâmetros Industriais 218
7. Media e Entretenimento: Implementando os Casos de Uso 223
7.1. Contexto Media em IoT 224
7.2. Video Streaming 224
7.3. Videoconferência 228
7.4. Acesso Controlado a Conteúdos 234
Índice XI
© FCA
7.5. Media Box 240
8. Smart Cities e Mobilidade: Implementando os Casos de Uso 249
8.1. Explorando os Casos de Uso de Smart Cities e Mobilidade 250
8.2. Carro Inteligente 250
8.3. Semáforos Inteligentes 256
8.4. Controlo de Iluminação 264
9. Data Analytics: Gerindo os Dados da IoT 271
9.1. Data Analytics 272
9.2. Big Data 277
9.3. Big Data e IoT 285
9.4. Coletando e Gerindo Dados IoT 286 9.5. Exemplo Prático 298
10. Segurança IoT 313
10.1. Riscos 314 10.2. Tecnologias 316 10.3. Boas-Práticas e Técnicas de Mitigação 320 10.3.1. Segurança por Desenho 320 10.3.2. Hardening de Todos os Componentes 321 10.3.3. Updates de Todos os Componentes 322 10.3.4. Inventário de Dispositivos na Rede 322 10.3.5. Mapear a Rede 324 10.3.6. Usar Device Authentication 324 10.3.7. Usar Segurança de Rede 324 10.3.8. Documentar Todos os Acessos Remotos 325 10.3.9. Controlar Todos os Acessos Remotos 325 10.3.10. Logs e Auditoria 325 10.3.11. Evitar Transmissão de Dados Sensíveis 325 10.3.12. Utilizar Encriptação 326 10.3.13. Isolar Dados dos Sistemas 326 10.3.14. Metodologia OWASP 326 10.3.15. Testes de Intrusão Antes da Entrada em Produção 327
5G e Internet das CoisasXII
10.3.16. Separação de Redes – Não Expor SCADA ou Atuadores Críticos na Internet 328 10.3.17. Atenção às Redes de Gestão 328 10.3.18. Análise Heurística 328 10.3.19. Auditorias Regulares 329
10.4. Analisando a Segurança: Exemplo Prático 330
Glossário de Termos 335 Índice Remissivo 341
Índice XIII
© FCA
SOBRE O LIVRO
O 5G chegou a Portugal e junta o presente e o futuro ao per mitir a ligação de milhares de dispositivos em tempo real e a velocidades nunca vistas.
A introdução da tecnologia 5G traz consigo um conjunto de vantagens inovadoras, que suportam com total abrangência as necessidades dos dispositivos IoT (Internet of Things).
O presente livro, que sucede a outro livro do mesmo autor, Internet das Coisas: Introdução Prática, pretende abranger igualmente o tema da IoT (que é um conceito vasto e para muitas pessoas difuso) com uma perspetiva muito prática, e imprescindível num contexto de comunicações 5G como o que vivemos nos dias de hoje, abordando os vários as petos tecnológicos e funcionais e como estes se podem implementar em pequenos e grandes projetos, de utilização pessoal e empresarial, para que computadores, máquinas, pessoas, animais ou objetos possam comunicar entre si sem qualquer intervenção humana.
A sua vertente prática é ilustrada por meio de exemplos que mostram como pode ser utilizada tecnologia de hardware e software disponível, e ao alcance de todos, para que pos sam ser, com facilidade, implementados pequenos projetos IoT pelo leitor.
Estes exemplos práticos de protótipos, orientados para di versos casos de uso setoriais (indústria, agricultura, media, entretenimento, entre outros) e fáceis de montar em casa, são explicados passo a passo, desafiando os leitores, com mais ou menos experiência de Desenvolvimento, Internet e
© FCA
Sistemas, a incorporar hardware e a controlar a comunica ção de peças remotas em utilizações pessoais ou empresa riais.
No estado atual da tecnologia, e com os pacotes de soft ware e hardware que existem disponíveis no mercado, a verdade é que qualquer pessoa pode fazer protótipos e pôr “coisas” a funcionar na Internet das Coisas, incorporando hardware nos seus projetos e controlando a comunicação dessas peças remotas por parte de pequenos programas que se podem produzir com facilidade, abrindo assim todo um mundo novo de oportunidades e de desafios.
No entanto, são feitas as devidas ressalvas para os pontos que devem ser tidos em conta em projetos e utilizações pro fissionais, nomeadamente sendo fundamental considerar os aspetos da segurança e da fiabilidade dos sistemas.
Apesar de todos os riscos, incertezas, e indefinições, a IoT é sobretudo uma grande oportunidade. É uma das tecnologias que mais irá crescer nas próximas décadas, em particular com o poder de comunicação que o 5G lhe oferece. E o leitor faz bem em apostar nela!
Notas importantes
1. Software open source Fritzing
Nas figuras com diagramas esquemáticos de eletrónica ao longo do livro houve recur so ao software open source Fritzing (https://fritzing.org).
2. Complementos ao livro em www.fca.pt
A fim de facilitar a aprendizagem através da prática, o leitor encontra no site da FCA o código-fonte dos exemplos.
5G e Internet das CoisasXVI
INTRODUÇÃO
INTERNET DAS COISAS: TECNOLOGIA E CONCEITOS
A vontade de implementar soluções de monitorização, controlo e automação com dispositivos inteligentes é mais antiga do que muitos imaginam. Seja por necessidade, comodidade ou simples vontade de inovar, há bastantes anos que se imaginam e implementam soluções baseadas nos conceitos de dispositivos inteligentes em rede. Com efeito, foi o enorme desenvolvimento da Internet e das tecnologias de conectividade que a suportam que permitiu transformar um conceito numa realidade em concretização, com muitos meios, pessoas e ideias envolvidas: a Internet das Coisas é, hoje, uma realidade que tudo influencia e à qual não podemos ser indiferentes.
1
1.1. O QUE É A IoT?
O conceito de dispositivo inteligente, um dispositivo eletrónico capaz de interagir com utilizadores ou outros sistemas, é anterior à utilização da própria Internet. Há histórias de protótipos de dispositivos inteligentes tão antigos como 1982, quase duas décadas antes de surgir o conceito e a designação Internet of Things (IoT), ou “Internet das Coisas”.
Há definições diversas para a IoT, mas que correspondem ao mesmo conceito. Pode de finir-se a IoT como um sistema que interliga dispositivos de computação, sejam eles com putadores, máquinas, pessoas, animais ou objetos, e no âmbito do qual estes podem comunicar e transferir dados sem qualquer intervenção humana.
Ou seja: pressupõe a ligação à Internet de todo o tipo de objetos, que comunicam com serviços e aplicações remotas.
A Internet foi concebida, inicialmente, como um meio de interligar computadores, através da transmissão de mensagens entre eles. No início do século XXI, a Internet evoluiu da World Wide Web para utilizações cada vez mais diversificadas, como o transporte de voz e vídeo, a colaboração em rede, e a interligação de dispositivos diversos (não só compu tadores) com a rede.
A utilização cada vez maior da Internet, e para fins cada vez mais diversos, levou a um crescimento muito significativo dos dispositivos nela conectados. Numa fase inicial, o crescimento das entidades conectadas fazia-se pelo aumento da utilização (mais hu manos conectados resulta em mais computadores, logo, em mais servidores).
A revolução dos dispositivos móveis (smartphones e tablets) veio trazer um fator de cres cimento adicional do número de dispositivos, nomeadamente porque possibilitou cresci mento também entre os utilizadores que já usavam a Internet nos computadores, ligando novos dispositivos.
Seguiu-se a revolução da IoT, a ligação de todo o tipo de objetos na rede, e o consequen te aumento exponencial dos objetos conectados (Figura 1.1).
Há bastantes anos que se antevê a possibilidade de os dispositivos (não só os computa dores) se poderem ligar à Internet e comunicarem em rede.
Nos anos 90 do século XX, a tecnologia Java surgiu como promessa de um mundo de dispositivos diversos ligados em rede, a correr versões próprias daquela tecnologia, e a comunicar com servidores ou com pessoas.
5G e Internet das Coisas2
INTRODUÇÃO
TECNOLOGIAS DE COMUNICAÇÃO: IOT E 5G
Na IoT, as coisas têm de estar conectadas. Esta é uma premissa básica em que todos os conceitos da IoT se baseiam e que se traduz num verdadeiro desafio em muitas situações. Este capítulo, que desenvolve os temas brevemente mencionados no Capítulo 1 – “Internet das Coisas: Tecnologia e Conceitos”, cobre algumas das várias soluções que estão disponíveis para interligar dispositivos, em particular, as soluções desenhadas para dar resposta aos requisitos específicos que os dispositivos remotos típicos IoT têm.
2
2.1. CONECTIVIDADE
Estamos cada vez mais habituados a estar sempre ligados a um conjunto de serviços online, através dos meios mais diversos. Em muitos casos, essa ligação já é vista como transparente, quando o nosso smartphone se liga às redes wi-fi que conhece e à rede móvel 3G/4G/LTE/5G do nosso operador, ou de um outro operador em roaming.
Se o nível de conectividade que experimentamos no nosso dia a dia estivesse disponível de forma direta para uso pelos nossos dispositivos remotos IoT, provavelmente este ca pítulo nem se justificaria, mas não é bem assim. Em muitos casos de uso, os sensores e dispositivos remotos IoT têm um conjunto de restrições que derivam da sua natureza, e das quais se destacam:
• Bateria – manter um dispositivo ligado a uma rede de comunicações requer bateria ou uma ligação permanente à corrente. Se a comunicação for frequente, a capacidade necessária e a frequência com que esta tem de ser mudada podem tornar inviável a operação;
• Custo – se o custo de manter um dispositivo ligado à rede for elevado, torna-se inviável financeiramente ligar muitos dispositivos para um determinado fim. Manter centenas de milhar ou milhões de sensores ligados a uma rede pode tornar-se inviável por razões de custo, porque, como em qualquer racional de negócio, o benefício tem de suplantar o custo;
• Cobertura – frequentemente, os sensores IoT podem ser utilizados em situações em que a cobertura da rede (quando se usam comunicações rádio, incluindo celulares) não é perfeita ou, no mínimo, em situações distintas de cobertura. Noutras situações, os casos de uso implicam a disponibilidade de recursos de rede mais significativos, sob pena de a utilização nem sequer fazer sentido:
• Latência – ter baixas latências pode ser requerido para ter boa experiência de utiliza ção (por exemplo no gaming) ou por questões de funcionalidade e segurança essen ciais (como por exemplo no controlo remoto de veículos ou condução autónoma);
• Largura de banda – enviar volumes elevados de dados através da rede em curtos espaços de tempo pode ser muito importante em aplicações de videovigilância, moni torização ou em casos em que se pretenda combinar IoT e streaming;
• Fiabilidade – a utilização de tecnologia de comunicação em casos de criticidade ele vada requer que a probabilidade de perda de comunicação ou de menor eficiência da mesma seja muito baixa. Em sistemas mission critical a fiabilidade da comunicação pode ser absolutamente obrigatória.
5G e Internet das Coisas38
INTRODUÇÃO
CASOS DE USO
Temos até aqui descrito a IoT de um ponto de vista mais técnico, focando, especialmente, as tecnologias que estão disponíveis e como se podem utilizar. Mas antes de pensarmos em criar e implementar projetos, convém definirmos quais as funcionalidades que fará sentido implementar e de que forma a IoT pode dar resposta a diversas necessidades funcionais nos vários setores de atividade. Este capítulo aborda, precisamente, a vertente funcional da IoT, procurando analisar quais as áreas de atividade, e que projetos e funcionalidades pode ser interessante implementar – os chamados casos de uso. São, igualmente, destacados alguns casos de uso para os quais o 5G é mais adequado. Como é evidente, nada disto é, nem poderia ser, uma lista exaustiva.
3
3.1. DOMÓTICA/CASAS E EDIFÍCIOS INTELIGENTES
O conceito de casas inteligentes não é novo. Na verdade, há várias décadas que se fala em automação de dispositivos domésticos, como luzes, aquecimento e controlo desses dispositivos. Começou por um conceito de automação doméstica, ou seja, transformar uma tarefa doméstica manual num procedimento automático, por exemplo, ligar o aque cimento central quando a temperatura baixa de um certo valor. Estas funções podem ser feitas por dispositivos elétricos ou eletrónicos simples, mas rapidamente se evoluiu para a implementação de cenários mais complexos, fazendo depender as ações a realizar de outros fatores, ou tornando a respetiva atuação remota. Por exemplo, o aquecimento central ser ligado somente se a previsão meteorológica de temperatura para as próximas horas ultrapassar um determinado limite mínimo, ou se o dono da casa estiver a caminho. Este tipo de necessidades levou à introdução de sistemas de comando e controlo com mais inteligência.
Além da apetência do público por este tipo de soluções, a evolução da eletrónica de consumo e o aparecimento de empresas especificamente focadas no desenvolvimento de produtos nesta área tornaram possível a existência de funcionalidades até há alguns anos inimagináveis. Para além das soluções existentes, há hoje um conjunto alargado de formas de interagir com estas, através de ecrãs táteis, telefones inteligentes, ou disposi tivos específicos, tudo isto potencialmente à distância, através da Internet.
Em casa, não existem os problemas de conectividade e de dificuldade na obtenção de energia que potencialmente existem em outras soluções IoT. Na verdade, utilizando uma das soluções de conectividade que vimos no Capítulo 2 – “Tecnologias de Comunicação: IoT e 5G”, é simples implementar um sistema de suporte a uma aplicação IoT, com capa cidade de sensorização e atuação. Tudo o que se possa ligar em casa a uma tomada de energia pode ser alvo de automação, pelo que as possibilidades são infinitas.
As pessoas aderem a este tipo de soluções por vários motivos. Os principais são o co modismo e a conveniência que existem na possibilidade de controlar funções domésticas ou em saber o que se passa em casa, através do smartphone, não nos preocuparmos com algumas funções que possam ser executadas de forma automática (por exemplo, ligar/desligar o aquecimento, ou ligar a máquina de lavar dentro do horário económico do bi-horário).
Segue-se a segurança, um motivo igualmente importante. Podermos saber em primeira mão que algo de errado se passa em casa tem um valor muito grande para a maioria das pessoas e leva-as a investir em sistemas deste tipo.
Finalmente, não se deve descartar como fator motivador deste tipo de sistemas a sim ples evolução das funcionalidades dos próprios produtos de eletrónica doméstica, que, crescentemente, irão evoluir na direção de serem dispositivos conectados. Não sabemos
5G e Internet das Coisas64
INTRODUÇÃO
PLATAFORMA DE TESTES: PROTOTIPANDO OS CASOS DE USO
Ao longo dos primeiros capítulos do livro, focámos, variadas vezes, o tema das plataformas de prototipagem, e a forma como podem ser utilizadas para fazer, com grande facilidade, projetos de hardware e software, sendo, por isso, ideais para construir protótipos de sistemas IoT. Neste capítulo, vamos introduzir o Raspberry Pi, uma das plataformas deste tipo que se encontram disponíveis, e descrever como pode ser utilizado para ser programado e integrado com os sensores e atuadores que lhe podemos ligar.
4
4.1. RASPBERRY PI
O Raspberry Pi é um pequeno computador miniaturizado, que já existe há alguns anos, e que contém, num hardware de baixo custo, todas as funções que estamos habituados a ver num computador.
A Figura 4.1 mostra um exemplar (neste caso, um Raspberry Pi 4 modelo B), um disposi tivo com wi-fi e Bluetooth integrados, que disponibilizam boa conectividade com o que o leitor necessitar e são baixo custo (45 a 90 euros é o intervalo que corresponde ao valor indicativo para configurações deste dispositivo em 2022).
O Raspberry Pi vem com um processador Quad Core de 1.5 GHz (visível na figura com um dissipador por cima, uma vez que aquece) e entre 2 e 6 GB de RAM. O dispositivo tem um conjunto de portas de ligação (Figura 4.2), às quais podemos ligar diversos dis positivos e equipamentos externos, nomeadamente:
• Quatro portas Universal Serial Bus (USB), das quais duas USB 3.0 para ligação de dispositivos USB, por exemplo, uma pen wi-fi, discos ou pens de dados, mas também teclado e rato;
• Uma porta Gigabit Ethernet/LAN (Local Area Network) para ligação física à rede;
• Duas portas High-Definition Multimedia Interface (HDMI) para ligação a monitores ou a televisão (até 4 K);
Figura 4.1 Raspberry Pi
5G e Internet das Coisas102
INTRODUÇÃO
CASAS INTELIGENTES: IMPLEMENTANDO OS CASOS DE USO
Após termos analisado em abstrato uma variedade de casos de uso IoT e visto como testar os nossos protótipos com recurso a uma plataforma como o Raspberry Pi, estamos agora em condições de explorar como implementar na prática os nossos casos de uso. Neste capítulo, focaremos a implementação de um conjunto de exemplos de domótica e de dispositivos inteligentes em contexto doméstico.
5
5.1. CASOS DE USO DOMÉSTICO
As aplicações de IoT em contexto doméstico abrangem uma panóplia de cenários, ti picamente ligados à automação, à vigilância e ao controlo remoto. Vimos no Capítulo
4 – “Plataforma de Testes: Prototipando os Casos de Uso” um conjunto significativo de casos, mas nada melhor do que passar alguns destes à prática com recurso a uma pla taforma de prototipagem.
Na verdade, a criação e utilização de aplicações IoT em casa é favorecida por condições de energia e de conectividade tipicamente boas, podendo o leitor utilizar um acesso de banda larga sem dificuldade, embora, naturalmente, tenha sempre a opção de recorrer ao 5G.
Existem sensores facilmente disponíveis que cobrem a maioria das aplicações de que o leitor se possa lembrar de medir, pelo que a construção de sistemas IoT só está limitada pela imaginação, assim que se dominar a forma fácil como pode controlar os pinos da plataforma Raspberry Pi para ler e atuar sobre um conjunto diversificado de sensores e atuadores.
Vamos cobrir cinco casos diferentes, com o objetivo de demonstrar a utilização da pla taforma e dos sensores em contextos também eles distintos. O objetivo é implementar exemplos úteis e cuja utilização seja interessante, mas que também possam servir de base para que o leitor os possa usar para fazer o que quiser no contexto da IoT domés tica.
5.2. SENSOR DE LUZ E DESPERTADOR
Começamos com um dos exemplos mais simples que podemos implementar com recur so ao Raspberry Pi: um sensor de luz que pode funcionar como despertador. A finalidade é: detetar o nível de iluminação ambiente e, caso esta esteja acima de um determinado limite, tocar um alarme de aviso.
Para o fazer, precisamos de um conjunto de componentes, para além do nosso Raspber ry Pi com o T-Cobbler:
• Duas resistências de 1 kΩ;
• Um condensador de 330 nF;
• Uma fotorresistência;
• Um buzzer (campainha) TMB12A05;
• Fios de ligação.
5G e Internet das Coisas152
INTRODUÇÃO
AGRICULTURA E INDÚSTRIA: IMPLEMENTANDO OS CASOS DE USO
Neste capítulo, vamos focar a nossa atenção num conjunto de casos de uso ligados a uma utilização mais agrícola e também industrial. Nestes exemplos, vamos ter uma forte presença de sensores, de diversos tipos, e ver como montar sistemas que ajudem os gestores de unidades agrícolas ou industriais a monitorizar um conjunto de parâmetros distintos, bem como a atuar sobre os mesmos.
6
6.1. INTERFACE DE SENSORIZAÇÃO DO RASPBERRY PI
Vimos já múltiplos casos de uso e exemplos de utilização de hardware em comunicação com o Raspberry Pi, utilizando os pinos do GPIO e diversos componentes. No entanto, o nosso dispositivo de prototipagem foi desenhado para interagir com componentes através de interfaces digitais (níveis de sinal 0 ou 3.3 V – 0 ou 1) e não para interagir com dispositivos analógicos.
Sucede que muitos dos sensores que podem ser úteis para os casos de uso da indústria e da agricultura são de saída analógica, portanto, a sua utilização só é possível com re curso a tecnologia de conversão analógico/digital.
A interação deste tipo de sistemas (tipicamente, circuitos integrados) com o Raspberry Pi faz-se utilizando um protocolo de comunicação série. O Raspberry Pi disponibiliza dois protocolos possíveis para estabelecer este tipo de comunicação: o Inter-Integrated Circuit (I2C) e o Serial Peripheral Interface (SPI).
O I2C é um protocolo de comunicação série que funciona apenas com dois fios, um reló gio (Serial Clock – SCL) e um fio de dados (Serial Data – SDA), que contém o valor a ser enviado ou recebido durante as transições do relógio. O relógio pulsa entre os valores 0 e 3.3 V, com uma frequência que é configurável e que estará, tipicamente, nos 100 KHz. Podemos ter múltiplos dispositivos conectados aos mesmos fios SCL e SDA, sendo atri buído um endereço diferente a cada dispositivo.
O I2C é perfeito para interação com dispositivos eletrónicos que enviem um baixo débito de dados, como é o caso dos sensores, mas será inadequado se se pretender utilizar um dispositivo que tenha um débito mais elevado, como é o caso de um ecrã tátil, por exemplo.
O SPI é um protocolo mais complexo, com o mesmo objetivo, a comunicação série de dados. A principal diferença é que o SPI utiliza mais fios para estabelecer a comunicação. Existe um relógio (SCK), como no I2C, mas há três a quatro fios para envio e saída de dados. O MOSI é utilizado preferencialmente para saída de dados, o Main Input, Secon dary Output (MISO) para entrada e o chip select (CS) para indicar se os pinos MOSI e MISO devem ser considerados ou não.
O SPI possibilita transferências de dados a ritmos que atingem as centenas de MHz, pelo que é o protocolo adequado para, por exemplo, interagir com dispositivos de visualiza ção TFT (Thin-Film Transistor liquid-crystal displays).
Os nossos exemplos utilizarão uma destas tecnologias para estabelecer a comunicação entre o Raspberry Pi e os sensores e outros dispositivos, pelo que, caso pretenda testar o leitor, deverá ativar estes protocolos no seu dispositivo.
5G e Internet das Coisas200
INTRODUÇÃO
MEDIA E ENTRETENIMENTO: IMPLEMENTANDO OS CASOS DE USO
Neste capítulo, vamos olhar para casos de uso ligados a media e a entretenimento. Se, de uma forma geral, os dispositivos eletrónicos portáteis com interface de rede (pelo menos wi-fi) abundam e permitem uma panóplia de serviços envolvendo multimédia e se, por outro lado, os telefones inteligentes potenciam uma miríade de serviços de comunicação de media, existe procura por serviços que integrem multimédia em redes IoT, realidade potenciada ainda mais pelo 5G.
7
7.1. CONTEXTO MEDIA EM IOT
Com recurso a dispositivos móveis, podemos, hoje em dia, efetuar as mais variadas ope rações de comunicação envolvendo multimédia:
• Videoconferências;
• Video streaming;
• Acesso a conteúdos multimédia;
• Gravação de conteúdos na nuvem;
• Visualização remota de fontes de vídeo.
Estas são absolutamente comuns e simples de efetuar, através de smartphones e apli cações disponíveis nas app stores. Mas como implementar soluções deste tipo com/ /em contexto IoT, quando se pretendem utilizar dispositivos em modo de funcionamento automático, programático ou para uso massivo?
Continuando a utilizar as soluções baseadas em dispositivos de tipo Raspberry Pi, vamos analisar quatro casos de uso em que utilizamos este tipo de dispositivos para implemen tar funcionalidades envolvendo algumas destas temáticas.
Os referidos dispositivos podem ser utilizados no terreno recorrendo a alimentação por baterias (como os telefones móveis), podendo funcionar durante bastante tempo antes de uma ligação à rede elétrica. A ligação à Internet pode ser efetuada por meio de mo dems 5G USB ou de hotspots wi-fi com ligação 5G (qualquer uma das soluções é sim ples de implementar). Com efeito, recorrendo ao 5G, a comunicação de vídeo faz-se de uma forma bastante eficiente.
7.2. VIDEO STREAMING
O primeiro exemplo que vamos implementar é o de video streaming com recurso ao nosso Raspberry Pi. Para tal, necessitamos unicamente de uma webcam USB vulgar, que ligamos ao dispositivo.
Começamos por instalar o software necessário para efetuarmos o video streaming, inter agindo com a câmara, através do seguinte comando: sudo apt-get install motion
Após o que podemos verificar se a câmara está a ser reconhecida (Figura 7.1) com re curso ao seguinte comando: lsusb
5G e Internet das Coisas224
INTRODUÇÃO
Smart Cities e Mobilidade: Implementando os Casos de Uso
Um dos casos de uso de IoT mais importantes é o das cidades inteligentes e da mobilidade. De entre os múltiplos casos de uso possíveis que hoje vemos a funcionar nas nossas cidades e nos nossos veículos, vamos ver neste capítulo três protótipos simples de demonstração de conceitos que se inserem nessa categoria.
8
8.1. EXPLORANDO OS CASOS DE USO DE SMART CITIES E MOBILIDADE
Embora os conceitos das smart cities e mobilidade sejam normalmente implementa dos com recurso a integração de sistemas, é possível serem implementados através de plataformas de prototipagem como Raspberry Pi e Arduino. Há, na verdade, múltiplos casos de implementação de serviços de controlo de trânsito, controlo de acessos ou de serviços urbanos diversos que recorrem a este tipo de dispositivos, sejam soluções construídas para o efeito, sejam projetos de investigação realizados nas universidades com este propósito.
Os exemplos que se seguem consistem na utilização de kits e vários componentes para simular situações de mobilidade e de sistemas de controlo públicos. Trata-se de simples demonstrações (protótipos), mas dão uma boa ideia do que é possível fazer neste domínio.
8.2. CARRO INTELIGENTE
Os carros inteligentes já circulam nas nossas estradas. Condução autónoma e veículos controlados remotamente são dois exemplos, mas há diversas funcionalidades de con trolo remoto, a partir de aplicações móveis, que os veículos incorporam hoje e que se podem, de facto, classificar como inteligentes. A possibilidade de trancar portas, levantar vidros, acender luzes ou simplesmente interagir com o sistema de navegação ou de en tretenimento do veículo são funções já habituais na maioria dos veículos modernos. Mas o que fará com que um carro seja verdadeiramente inteligente?
Neste exemplo, vamos experimentar um kit de um carro remotamente controlado – um kit da Freenove de um veículo de 30 cm embebido e controlado por um Raspberry Pi. O veí culo em questão é representado na Figura 8.1 e funciona com base na conectividade que utilizarmos para o Raspberry Pi (neste exemplo, wi-fi, mas podemos facilmente utilizar 5G).
Figura 8.1 Veículo inteligente (kit da Freenove)
5G e Internet das Coisas250
DATA ANALYTICS: GERINDO OS DADOS DA IoT9
INTRODUÇÃO
A IoT produz muitos dados, resultantes de informações que chegam dos múltiplos dispositivos que a ela ligamos. O aproveitamento dos enormes volumes de dados gerados pelas aplicações e dispositivos IoT requer sistemas analíticos eficientes e capacidades de processamento elevadas. O conceito de Big Data, embora nascido de forma independente da IoT, adapta-se com grande precisão às necessidades de processamento analítico que a IoT veio trazer, razão pela qual é difícil pensar num sistema profissional de IoT que não utilize também o conceito de Big Data.
9.1. DATA ANALYTICS
Num determinado processo de negócio, produzem-se dados que, uma vez analisados, podem servir para guiar as decisões de negócio de uma forma bastante efetiva (Figura 9.1).
Decidir com base em dados, em vez de feelings pode ser a diferença entre o sucesso e o insucesso. O mercado está repleto de exemplos.
Imagine que o leitor tem uma gelataria e que, como qualquer negócio, tem necessidade de gerir custos e proveitos, definir preços e lutar pela sua quota de mercado na zona, em concorrência com outras gelatarias. As suas decisões de negócio vão influenciar decisivamente o sucesso do mesmo, como o número e a qualidade de funcionários que terá, a qualidade dos produtos que irá vender, os preços que fixar, os investimentos em marketing que realizará, entre muitas outras.
Para tomar as duas decisões iniciais de negócio, pode basear-se em feeling (os gelados naquela zona vendem-se normalmente a um preço X e o leitor acha que com um co laborador e produtos standard conseguirá vingar) ou pode partir de alguns estudos de mercado e de um business plan. Mas, depois de lançar o negócio, se não tomar decisões baseadas em dados, irá arrepender-se. Qual o alvo de vendas num determinado mês e qual o resultado real? O que está a vender mais, morango ou baunilha? Que tipo de clientes estão a vir à minha loja? Porque é que quando o funcionário A está de turno eu vendo X e com o funcionário B vendo Y? E, naturalmente, como está o negócio a correr financeiramente? Que margem tenho? Qual a minha quota de mercado aqui no bairro?
Num negócio, há, essencialmente, dois tipos de decisões que têm de ser tomadas, e ambos são sustentados por sistemas de suporte à decisão:
• Decisões operacionais – vocacionadas para uma vertente mais tática, relacionada com a operação do dia a dia. Subir o preço dos gelados de chocolate porque o preço
Figura 9.1 Fluxo de um modelo BIDM (Fonte: Marco Spruit & Catalina Sacu, 2010)
5G e Internet das Coisas272
INTRODUÇÃO
SEGURANÇA IoT
Como qualquer tecnologia conectada, a IoT coloca um conjunto de desafios motivados pelos riscos de segurança. Se para sistemas lógicos as consequências de atos maliciosos, intrusões ou roubos de dados podem ser muito graves, no caso da IoT estamos a falar do controlo de objetos físicos, pelo que estes tipos de eventos podem ser catastróficos. Ao longo deste capítulo, vamos focar o tema da segurança IoT, aflorando os pontos que devem ser tidos em conta, descrevendo as boas-práticas, mas, sobretudo, lembrando o leitor de que este tema tem de ser considerado em qualquer projeto que envolva a tecnologia IoT.
10
10.1. RISCOS
Existem vários riscos inerentes à utilização de tecnologia IoT, sendo que o mais grave é consequência direta de algo que também é uma das funcionalidades mais poderosas da tecnologia: a capacidade de controlar, ou influenciar diretamente, objetos físicos. Como o leitor facilmente compreenderá, ter a capacidade de controlar remotamente sistemas industriais ou centrais elétricas através de sistemas Supervisory Control and Data Acqui sition (SCADA), ou de controlar componentes de veículos ou aeronaves, apresenta riscos óbvios, até porque algo tão simples como o controlo de um portão de garagem pode trazer riscos físicos para pessoas e bens.
Por outro lado, a colocação de sistemas acessíveis remotamente na Internet abre a porta a potenciais intrusões, atividades de roubo de dados de diversos tipos, acesso indevido a imagens e vídeos, credenciais, dados bancários, etc.
O sucesso da IoT e o número crescente de dispositivos que todos os dias se ligam à rede atraíram também, de facto, as atenções de hackers e cibercriminosos, que têm um vasto terreno para explorar.
Há um conjunto de riscos diferentes associados ao uso da IoT, entre os quais se incluem os seguintes:
• Acesso indevido ao controlo de objetos, incluindo sensores e atuadores, causando ações não pretendidas pelos proprietários do sistema;
• Intrusão em redes internas (domésticas ou empresariais) e, a partir daí, roubo de iden tidade ou de dados privados;
• Acesso a sistemas internos críticos, a partir de uma rede IoT comprometida;
• Acesso a dados pessoais ou corporativos não autorizados, comprometendo a privaci dade e, eventualmente, segredos industriais;
• Alteração ou eliminação de dados;
• Ligação indevida de dispositivos não autorizados à rede;
• Inibição do funcionamento do sistema.
Tipicamente, estas ações causam impactos, que podem ser bastante graves:
• Danos físicos ou estragos materiais, incluindo ferimentos e morte – havendo acesso não previsto a sistemas físicos, abre-se o caminho para que, intencionalmente, ou como efeito colateral, haja ações não convenientes que gerem falhas de controlo e comando de sistemas críticos, ou mesmo danos deliberados;
5G e Internet das Coisas314
GLOSSÁRIO DE TERMOS
Inclui-se um glossário de termos técnicos com as principais siglas e expressões utilizadas ao longo do livro.
Termo Significado
1xRTT
Tecnologia CDMA de baixos débitos.
3.5G Designação por vezes encontrada para o HSPA (High Speed Packet Access).
3G Terceira geração móvel, UMTS.
3GPP
3rd Generation Partnership Project – Organismo internacional que gere os standards de comunicações móveis.
4G Quarta geração móvel; designa o LTE.
Accellus Empresa americana e holandesa que disponibiliza serviços LPWAN.
Arduino
Arkessa
Plataforma de prototipagem eletrónica com um microprocessador Atmel AVR, pro gramável em C / C++. Suporta extensões de várias linguagens, incluindo scripting e Java.
Companhia inglesa que possibilita a operação e monitorização de sistemas remotos, como se estivessem ligados diretamente ao seu computador.
Avro Apache Avro – Sistema de serialização de dados.
Axeda
Backend
Beaglebone Black
Big Data
Plataforma machine cloud, vocacionada para a gestão de dispositivos conectados e para a construção de aplicações web Cloud
Camada de acesso a dados numa arquitetura de Sistemas de Informação.
Plataforma de prototipagem com processador ARM, correndo Linux, Android ou ou tros.
Tecnologia de processamento de dados orientada para grandes volumes de dados e para dados estruturados e não estruturados.
Cassandra Base de dados NoSQL resiliente.
CCITT
CDMA
Chukwa
CoAP
Antiga designação do ITU.
Code Division Multiple Access – Tecnologia de acesso rádio, desenhada para possi bilitar que múltiplas pessoas utilizem, de forma partilhada, um meio de comunicação rádio.
Apache Chukwa – Recolha de dados para gestão de sistemas distribuídos.
Constrained Application Protocol – Protocolo criado como standard aberto, dese nhado para situações em que há restrições de comunicação.
© FCA
Acompanhe a FCA de perto e conheça as Nossas Coleções
Nova coleção sobre os grandes temas da Ciência dos Dados: Data Science, Big Data, Analytics e Internet das Coisas. Com uma abordagem muito prática e demonstração de exemplos e projetos, estes são os livros essenciais aos profissionais do futuro!
Dedicada a todos os envolvidos com as Tecnologias de Informação, é indispensável para todos aqueles que pretendam desenvolver as suas aplicações de acordo com as tecnologias mais recentes
Nova coleção que serve os referenciais dos cursos de educação e formação profissional da indústria metalomecânica. Com livros profusamente ilustrados, escrita simples e exercícios para autoaprendizagem
Coleção sobre um tema bastante importante no panorama atual, onde apresentamos livros dedicados aos utilizadores, aos profissionais e aos estudantes
A coleção da FCA para os estudantes do Ensino Superior. Aborda as principais temáticas de um curso TI. Útil também para profissionais que pretendam atualizar os seus conhecimentos
Dedicada não só aos profissionais de Sistemas de Informação, mas também a Gestores e outros profissionais de Informática, assim como aos estudantes de licenciaturas e mestrados
Destinada aos alunos dos diversos Cursos de Educação e Formação para Jovens (3.º Ciclo do EB e cursos profissionais do ES) e para Adultos, de acordo com os respetivos programas. Útil também para autoformação
Esta coleção, única em Portugal, é dedicada à Gestão de Projetos segundo as melhores e mais atuais práticas
Dedicada aos amantes do digital, coloca à disposição de amadores e profissionais conhecimentos anteriormente apenas acessíveis através de obras estrangeiras
Concebida para iniciação e prática, esta coleção permite-lhe aprender a matéria através de exercícios práticos, resolvidos passo a passo
Esta coleção mostra-lhe, com uma liguagem simples e acessível, como tirar partido das últimas versões dos programas para utilizadores e sistemas operativos mais utilizados, através de exemplos e exercícios resolvidos para praticar
Os livros desta coleção, simples e objetivos, profusamente ilustrados com exemplos passo a passo, levam-no a dominar com rapidez e facilidade as matérias apresentadas
Novo!
Novo!
www.fca.pt