• Nenhum resultado encontrado

Deteção de Volume através de Sensores Térmicos

N/A
N/A
Protected

Academic year: 2021

Share "Deteção de Volume através de Sensores Térmicos"

Copied!
120
0
0

Texto

(1)

Francisco Turégano Caetano Morão Lourenço

Licenciado em Ciências da Engenharia Eletrotécnica e de Computadores

Deteção de Volume através de Sensores

Térmicos

Dissertação para obtenção do Grau de Mestre em Engenharia Eletrotécnica e Computadores

Orientadora: Anikó Katalin Horváth da Costa, Professora Auxiliar, Faculdade de Ciências e Tecnologia da Universidade Nova de Lisboa

Júri

Presidente: Prof. Doutor João Francisco Alves Martins, FCT-UNL Arguente: Prof. Doutor Filipe de Carvalho Moutinho, FCT-UNL

(2)
(3)

Deteção de Volume através de Sensores Térmicos

Copyright © Francisco Turégano Caetano Morão Lourenço, Faculdade de Ciências e Tec-nologia, Universidade NOVA de Lisboa.

A Faculdade de Ciências e Tecnologia e a Universidade NOVA de Lisboa têm o direito, perpétuo e sem limites geográficos, de arquivar e publicar esta dissertação através de exemplares impressos reproduzidos em papel ou de forma digital, ou por qualquer outro meio conhecido ou que venha a ser inventado, e de a divulgar através de repositórios científicos e de admitir a sua cópia e distribuição com objetivos educacionais ou de inves-tigação, não comerciais, desde que seja dado crédito ao autor e editor.

Este documento foi gerado utilizando o processador (pdf)LATEX, com base no template “novathesis” [1] desenvolvido no Dep. Informática da FCT-NOVA [2]. [1]https://github.com/joaomlourenco/novathesis [2]http://www.di.fct.unl.pt

(4)
(5)
(6)
(7)

Ag r a d e c i m e n t o s

Em primeiro lugar, um agradecimento à professora Anikó Katalin Horváth da Costa, a orientadora desta dissertação, por toda a disponibilidade demonstrada, assim como todo o empenho e dedicação, e por todo o auxílio prestado, durante o desenvolvimento deste sistema.

Quero agradecer também aos meus pais, que contribuíram sempre para o meu cresci-mento como pessoa, e que me transmitiram os valores pelos quais me guio diariamente, e em quem tenho um especial orgulho, ao meu irmão, que me acompanha desde sempre, e a toda a minha família que me apoiou ao longo desta etapa da minha vida, e em todas as outras.

Por fim, um agradecimento a todos os meus amigos, tanto aqueles que levo desde sempre, como os que conheci a partir do momento em que ingressei na FCT-UNL, e os quais considero também uma família, em especial aqueles que me acompanharam do início ao fim desta etapa e os que conheci noutros momentos, mas que igualmente me marcaram.

(8)
(9)

R e s u m o

O conceito deIoT, Internet of Things, é um novo paradigma tecnológico relacionado com a

existência de uma rede global de dispositivos, em constante comunicação entre si. Sendo esta uma área cada vez mais presente no atual contexto global, existem mais soluções para implementação de sistemas que envolvem uma constante comunicação e transmissão de dados, e cuja utilidade é a melhoria de processos e da qualidade de vida.

Existem aspetos negativos que prejudicam a vida diária urbana e, recorrendo a dis-positivos inseridos no conceito apresentado no parágrafo anterior, poderiam sofrer uma melhoria. Um exemplo é a desorganização verificada, diariamente, em transportes pú-blicos urbanos, sem pré-reserva de ingresso. Durante horas de maior congestionamento, existe uma dificuldade acrescida na movimentação nas entradas/saídas dos meios de transporte, como por exemplo o metro.

Deste modo, considerando os factos expostos, verificou-se a necessidade da existência de um sistema, cuja principal finalidade é a monitorização volumétrica, com recurso a sensores de imagem térmica, em tempo real, em áreas cruciais na mobilização diária de massas populacionais de meios de transporte de carruagens, públicos.

Além do mais, pretende-se também que seja garantido o acesso aos dados recolhidos, a partir de plataformas que permitam a exposição da informação, de forma simples e eficaz. Os dados recolhidos pelo protótipo do sistema devem ser armazenados, de modo que a informação seja posteriormente filtrada, e analisada de acordo com as necessidades dos utilizadores, por exemplo na previsão de eventuais flutuações nos fluxos de mobilização, em certos padrões temporais.

Por fim, o sistema de controlo volumétrico descrito nesta dissertação foi implementado e testado, sendo que os resultados obtidos foram os previstos, com o acréscimo de algumas críticas aos mesmos.

Palavras-chave: Controlo Volumétrico, Raspberry Pi, AMG8833, Python, Firebase Real-time Data-base, Firebase Authentication, Aplicação Móvel Android.

(10)
(11)

A b s t r a c t

The concept ofIoT, Internet of Things, is a new technological paradigm related to the

existence of a global network of devices, in constant communication between each other. Being this an area increasingly present in the actual global context, there are more solu-tion to the implementasolu-tion of systems constant communicasolu-tion and transmission of data, and which goal is to improve processes and the quality of life.

There are negative aspects that harm the daily urban life and, with the resort of devices inserted in the concept presented in the paragraph before, they could suffer an improvement. An example of this is the disorganization verified, day to day, in public urban transport, with no pre-booking of tickets. During the most crowed hours, there is an increase in the difficulty on moving, in the entrances/exists of the public means of transportation, like subway.

That way, considering the exposed facts, it was verified the need of existence of a system, which main goal is the volumetric monotorization, with resource of thermal image sensors, in real time, in crucial areas to the daily mobilization of people masses of the public carriage means of transport.

Furthermore, it’s intended that the access to the gathered data is granted, from plat-forms that can expose the information, simply and effectively. The data gathered by the system’s prototype must be stores, in a way that the information is, posteriorly fil-tered, and analyzed according to the user needs, for example in the prediction of eventual fluctuations in the flow of mobilization, in certain time patterns.

Finally, the volumetric control system, described in this dissertation, has been imple-mented, and properly tested in the following chapters, being that the results obtained were the predicted, with the addiction of some criticism to them.

Keywords: Volumetric Control, Raspberry Pi, AMG8833, Python, Firebase Realtime Databa-se, Firebase Authentication, Android Mobile Application.

(12)
(13)

Í n d i c e

1 Introdução 1 1.1 Motivação . . . 1 1.2 Objetivos . . . 2 1.3 Pergunta de Investigação . . . 2 1.4 Estrutura do Documento . . . 2 2 Estado de Arte 5 2.1 Conceito de Automação . . . 5 2.2 Medição Volumétrica . . . 8

2.3 Câmaras Térmicas e Aquisição de Imagem . . . 11

2.4 Armazenamento e Manipulação de Dados . . . 13

2.4.1 Definição deCloud . . . 13

2.4.2 Implementação de uma Casa Inteligente, com recurso àFirebase . 14 2.5 Protocolos de Comunicação . . . 15

2.5.1 I2C . . . 15

2.5.2 1-Wire . . . 16

2.5.3 WebSocket . . . 17

3 Descrição do Sistema Proposto 19 3.1 Objetivos Propostos . . . 19

3.2 Funcionamento do Sistema . . . 20

3.2.1 Controlador e Respetivos Periféricos . . . 20

3.2.2 Cálculo Volumétrico . . . 22

3.2.3 Armazenamento da Informação . . . 22

3.2.4 Aplicação Móvel. . . 23

3.2.5 Arquitetura Proposta . . . 25

3.2.6 Requisitos não-funcionais . . . 26

3.3 Análise do Sistema Proposto . . . 27

4 Implementação do Sistema 29 4.1 Instalação dos Dispositivos . . . 29

4.1.1 Material Utilizado. . . 30

(14)

4.1.3 Instalação das Bibliotecas Necessárias para a Interação com o Sensor 33

4.1.4 Esquema Elétrico da Montagem . . . 34

4.1.5 Teste Inicial de Funcionamento do Sistema . . . 35

4.2 Programação do Sistema . . . 36

4.2.1 Leitura de Valores de Temperatura e Representação Gráfica . . . . 37

4.2.2 Rotina de Auto Calibração da Câmara Térmica . . . 38

4.2.3 Alcance do Sensor . . . 39

4.2.4 Análise dos Dados Adquiridos e Cálculo da Ocupação . . . 40

4.3 Funcionamento do Sistema de LED’s . . . 46

4.4 Interação com aCloud. . . 47

4.4.1 Firebase Realtime Database . . . 47

4.4.2 Integração no Sistema . . . 48

4.4.3 Armazenamento e Estruturação da Informação . . . 50

4.5 Aplicação Móvel do Sistema . . . 51

4.5.1 Configurações Iniciais e Ferramentas Utilizadas. . . 51

4.5.2 Atividades e Fragmentos Implementados . . . 51

5 Testes e Validação 65 5.1 Inicialização . . . 65

5.2 Taxa de Ocupação . . . 66

5.3 Resultados em Tempo Real . . . 67

5.4 Histórico da Informação . . . 69

5.5 Área Gráfica da Aplicação Móvel . . . 69

5.6 Alteração de Definições do Sistema . . . 70

5.7 Login e Registo . . . 71

5.8 Alteração de Parâmetros do Perfil Associado . . . 73

6 Conclusão 75 6.1 Crítica. . . 76

6.2 Resposta à Pergunta de Investigação . . . 76

6.3 Trabalho Futuro . . . 77

Bibliografia 79

Anexos 81

I Manual de Utilização da Aplicação Móvel 81

II Ficheiro JSON associado à FRD 89

(15)

L i s ta d e F i g u r a s

2.1 Exemplo da variedade de sistemas de automação que são concebíveis para

uma habitação . . . 6

2.2 Arquitetura do sistema de automação, de uma habitação, adaptado de [4]. . . 7

2.3 Sistema de visão, adaptado de [5] . . . 9

2.4 Progressão do tratamento de imagem [5] . . . 10

2.5 Exemplo representativo da imagem apresentada por uma câmara térmica [6] 11 2.6 Zona de relevância para o sistema apresentado [7] . . . 12

2.7 Diagrama da Arquitetura deste sistema[9] . . . 14

2.8 Exemplo de possível arquitectura do protocolo de comunicação I2C . . . 16

2.9 Exemplo de possível arquitectura do protocolo de comunicação 1-Wire [11] . 17 2.10 Arquitetura da comunicaçãoWebSocket . . . 18

3.1 Objetivo para a componente física do sistema . . . 21

3.2 Diagrama de entradas e saídas projetado para o controlador . . . 21

3.3 Diagrama de entradas e saídas projetado para a base de dadosonline . . . 23

3.4 Diagrama de entradas e saídas projetado para a AM, de um utilizador classifi-cado como administrador. . . 25

3.5 Diagrama de entradas e saídas projetado para a AM, de um utilizador classifi-cado como normal . . . 25

3.6 Arquitetura Proposta para o Sistema . . . 26

3.7 Rotina de Segurança dos Utilizadores . . . 27

4.1 Configuração da cabeça de pinos de entrada e saída do Raspberry Pi 3 Modelo B+ [15] . . . 31

4.2 SensorAMG8833 [16] . . . 32

4.3 Esquema de ligação física dos periféricos de aquisição de informação, ao Rasp-berry Pi [16] . . . 34

4.4 Esquema de ligação física dos periféricos de exposição da informação, ao con-trolador . . . 35

4.5 Diagrama de procedimento para a realização do teste inicial de funcionamento do sistema . . . 36

(16)

4.7 Exemplos de atividade da câmara, no mesmo contexto, alterando os

parâme-tros do algoritmo de calibração . . . 38

4.8 Campo de visão do sensor . . . 40

4.9 Algoritmo desenvolvido, para este método . . . 41

4.10 Sequência de eventos realizados durante a implementação deste método de análise de imagem . . . 42

4.11 Esquema de Comunicação da Informação . . . 47

4.12 Regras de segurança, da base de dados . . . 48

4.13 Nodes de parametrização do sistema (a vermelho a periodicidade das leituras, e a verde o modo de análise da infor-mação) . . . 49

4.14 Árvore JSON e os respetivosnodes, para este sistema . . . 50

4.15 Modelo BPMN de interações com a AM . . . 52

4.16 Imagem ilustrativa do tratamento da informação dos utilizadores, ao nível da Firebase Authentication . . . 53

4.17 View da atividade principal, e respetivo menu . . . 54

4.18 View da atividade de demonstração dos resultados, em tempo real . . . 55

4.19 Esquema de comunicação da atividade, com aFirebase . . . 55

4.20 View da atividade que contém o gráfico comparativo do histórico total . . . . 57

4.21 View do gráfico que contém os totais, por ano . . . 58

4.22 Percentagem de cada resultado, por mês . . . 59

4.23 View da atividade correspondente aos tops dos dias, para cada caso. . . 60

4.24 Esquema de comunicação, no que diz respeito ao parâmetro de análise de informação . . . 61

4.25 Esquema de alteração do papel, no sistema, para um utilizador . . . 62

4.26 View da atividade de visualização e alteração de dados associados ao perfil . 63 5.1 Inicialização do Dispositivo . . . 65

5.2 Imagem captada e confirmações da base de dados, para o caso de "vazio" . . 66

5.3 Imagem captada e confirmações da base de dados, para o caso 2 . . . 67

5.4 View apresentada na AM, para o caso 1 . . . 67

5.5 Representação do estado de "vazio", através dos LED’s do sistema . . . 68

5.6 View apresentada na AM, para este ciclo do sistema. . . 68

5.7 Representação física do resultado, para este caso . . . 69

5.8 Apresentação de todo o histórico presente na FRD, respetivamente filtrada . 69 5.9 Atividades gráficas que compõe a AM. . . 70

5.10 Confirmação de alteração de parâmetros do sistema . . . 71

5.11 Ciclo de confirmação dos dados de utilizador . . . 72

5.12 Node gerado na FRD, para este exemplo de registo . . . 73

5.13 Alteração de parâmetros do utilizador associado aos testes realizados, neste capítulo . . . 73

(17)

L i s t a d e F i g u r a s

5.14 Teste ao processo de alteração dapassword, por um utilizador . . . 74

I.1 Inicialização da AM, a partir de um dispositivo móvel . . . 81

I.2 Criação de um utilizador, elogin com as respetivas credenciais . . . 82

I.3 Visualização de resultados, em tempo real . . . 82

I.4 Interação de acesso à área gráfica . . . 83

I.5 Histórico do total de resultados . . . 83

I.6 Atividade que contém o gráfico das contagens, por ano . . . 84

I.7 Pentagem mensal, por ano, para cada tipo de resultado . . . 84

I.8 Top dos dias da semana em que se verificoucou cada resultado . . . 85

I.9 Histórico presente na base de dados . . . 85

I.10 Procedimento de acesso às definições do sistema . . . 86

I.11 Alteração do processo de análise de das leituras . . . 86

I.12 Verificação da exposição do valor atual, e respetiva mudança de valor . . . . 87

I.13 Processo de atribuição de privilégios de administração a um utilizador . . . 87

(18)
(19)

L i s ta d e Ta b e l a s

2.1 Definição das variáveis, das equações 2.1 e 2.2 . . . 11

3.1 Procedimento de implementação do sistema . . . 20

3.2 Tabela com as views a implementar, ao nível da aplicação móvel . . . 24

4.1 Descrição das principais caraterísticas doRaspberry Pi . . . 30

4.2 Legenda dos pinos do sensor AMG8833 [16] . . . 32

4.3 Tabela do material utilizado durante o desenvolvimento . . . 33

4.4 Tabela comparativa dos métodos, para temperatura de 28º e altura de 2,02m 43 4.5 Tabela comparativa dos métodos, para temperatura de 28,5º e altura de 2,02m 44 4.6 Tabela comparativa dos métodos, para temperatura de 28,75º e altura de 2,02m 44 4.7 Tabela comparativa dos métodos, para temperatura de 24,5º e altura de 2,02m 44 4.8 Tabela comparativa dos métodos, para temperatura de 26,5º e altura de 2,10m 44 4.9 Tabela das condições de preenchimento da barra de progresso. . . 56

(20)
(21)

L i s ta g e n s

II.1 Node que contém as taxas de ocupação volumétrica, em tempo real . . . . 89

II.2 Node com o histórico guardado (apenas estão representados alguns nodes

exemplificativos). . . 89

II.3 Configuração do método de análise de dados . . . 90

II.4 Parâmetro que define o tempo de execução, entre ciclos . . . 90

II.5 Node que contém a informação acerca dos privilégios de cada utilizador,

no sistema . . . 90

III.1 Bibliotecas a importar, para o controlador e periféricos . . . 91

III.2 Funções e configurações associadas ao Termómetro Digital e aos LED’s. . 91

III.3 Inicialização do AMG8833, da FRD e definição dos parâmetros de operação

do sensor de imagem térmica . . . 92

III.4 Leitura da informação, construção da imagem térmica e cálculo da taxa de

ocupação volumétrica, com exposição de ambos os métodos implementados 93

III.5 Ciclo de funcionamento dos LED’s . . . 95

III.6 Envio da informação, para a base de dados, e definição do período de

(22)
(23)

S i g l a s

AM Aplicação Móvel B/W Black and White

BPMN Business Process Model and Notation

CPU Central Process Unit

CSI Camera Serial Interface

DSI Display Serial Interface

FA Firebase Authentication

FRD Firebase Realtime Database

GPIO General Purpose Input/Output

HSV Hue Saturation Value

HTTP Hypertext Transfer Protocol

I/O Input/Output

IoT Internet of Things

IR Infravermelhos

JSON JavaScript Object Notation

LDR Light Dependent Resistor

LED Light-Emitting Diode

(24)

RAM Random Acess Memory

RGB Red Green Blue

ROI Region of Interest

SCL Serial Clock Line

SD Secure Digital

SDA Serial Data Line

UI User Interface

XML Extensible Markup Language

(25)

C

a

p

í

t

u

l

o

1

I n t r o d u ç ã o

Ao longo deste capítulo, é apresentada a motivação associada à realização desta disserta-ção, assim como é colocada uma pergunta de investigadisserta-ção, para a qual é formulada uma hipótese para uma possível solução. A última secção deste capítulo apresenta uma sucinta explicação da organização estrutural desta dissertação, isto é, a temática abordada em cada um dos capítulos.

1.1

Motivação

Atualmente, denota-se uma crescente dificuldade na mobilização das massas populacio-nais. Por exemplo, em transportes públicos em que não exista a pré-reserva de um lugar fixo ao comprador, existe uma sobrelotação de certos espaços, em detrimento de outros, verificando-se assim uma completa desorganização populacional.

Além do mais, com as possibilidades já existentes para a criação de sistemas eficazes e económicos, a monitorização constante do volume ocupado desses mesmos meios de transporte permite efetuar uma previsão, o que pode ser útil na escolha, por exemplo, do número de carruagens a utilizar num meio de transporte como o metro, num certo dia, a uma determinada hora.

Deste modo, e na perspetiva de finalista do Mestrado Integrado em Engenharia Ele-trotécnica e de Computadores, surgiu uma oportunidade de criar um sistema autónomo e eficaz, para a deteção e monitorização volumétrica, que pode contribuir para uma melhor organização populacional.

(26)

1.2

Objetivos

O grande objetivo desta dissertação é a criação de um dispositivo auxiliar, no que diz respeito à medição volumétrica de espaços, que possa contribuir, em diversos contextos, para o conhecimento do estado ocupacional. Deste modo, e como já foi mencionado anteriormente, pode tornar-se num contributo para que exista uma maior organização do espaço que envolve grandes massas populacionais.

Deve ainda ser considerado o problema da proteção de dados, protegendo qualquer informação sensível acerca dos utentes do espaço.

1.3

Pergunta de Investigação

Considerando os objetivos propostos, foi então desenvolvida uma pergunta de investiga-ção, para a qual é formulada uma hipótese, que cumpra os requisitos para a captação da ocupação e da exposição para a informação: "Como é possível obter informação sobre a ocupação de um espaço, sem infringir a lei de privacidade, e expô-la instantaneamente?" Portanto, pretende-se o conhecimento da ocupação, através de sensores que não com-prometam informação dos utilizadores do espaço onde a ocupação é efetivamente medida. Uma hipótese, estudada ao longo desta dissertação para esta problemática é a seguinte:

Hipótese:

Análise de imagens construídas a partir da informação recolhida por sensores térmi-cos, e posterior exposição numa aplicação móvel desenvolvida emAndroid Studio.

1.4

Estrutura do Documento

A presente dissertação está organizada de modo a que possa ser acessivelmente compre-endida e interpretada, pelo respetivo leitor. Assim sendo, em seguida são apresentados os capítulos (e o seu objetivo) que compõe a estrutura deste documento:

• Estado de Arte - Neste capítulo é apresentada uma pesquisa bibliográfica, que visa o estudo das tecnologias utilizadas em sistemas semelhantes ao exposto nesta dis-sertação., e uma abordagem aos protocolos de comunicação envolvidos, no sistema; • Descrição do Sistema Proposto - Descrição acerca do sistema que se pretende

im-plementar, e requisitos a cumprir;

• Implementação do Sistema - Descrição detalhada do procedimento realizado para a implementação, bem como materiais utilizados e as opções tomadas;

• Testes e Validação - Cenários de utilização do sistema, que confirmam o seu funci-onamento e interações com a interface de utilizador;

(27)

1 . 4 . E S T R U T U R A D O D O C U M E N T O

• Conclusão - Conclusões retiradas pela análise do sistema, já totalmente finalizado, e sugestões de melhoria;

• Bibliografia - Referenciação dos documentos e artigos auxiliares, durante a realiza-ção desta dissertarealiza-ção;

• Anexos - Guia de utilização do protótipo implementado e anexos com detalhes relacionados com a implementação do sistema.

(28)
(29)

C

a

p

í

t

u

l

o

2

E s ta d o d e A rt e

Neste capítulo, são descritas, em detalhe, tecnologias já existentes, assim como conceitos e projetos semelhantes.

Assim sendo, foi realizada uma pesquisa, essencialmente na área que envolve o projeto proposto, cujo objetivo é a obtenção de conhecimento auxiliar ao desenvolvimento do sistema.

2.1

Conceito de Automação

Pode definir-se automação como uma técnica, método, ou sistema de operação, com re-curso a dispositivos eletrónicos, cujo objetivo é reduzir a intervenção humana e, em muitos casos, aumentar o desempenho e rentabilidade [1].

Ao longo dos anos, tem-se verificado um crescimento exponencial na necessidade de integrar sistemas de automação, em fábricas, escritórios, e até em habitações domésticas. Cada vez mais os investigadores e os industrialistas procuram construir sistemas eficien-tes, automáticos, e com um custo cada vez mais “aceitável”, para que se possam controlar e monitorizar diferentes segmentos, como temperaturas ambiente, sistemas de luminárias, entre muitos outros.

Além do mais, a automação permite que seja, não só mais eficiente, como mais eco-nómica a utilização de recursos como a eletricidade, água e gás, reduzindo assim os desperdícios [1].

(30)

Figura 2.1: Exemplo da variedade de sistemas de automação que são concebíveis para uma habitação

Atualmente, é cada vez mais comum a existência de sistemas, não só a nível industrial, como a nível habitacional recorrendo muitas vezes a soluções que permitam uma imple-mentação facilitada (Figura 2.1). A utilização de plataformas eletrónicas open-source1, como é oArduino2, cuja placa permite a leitura de entradas, como temperaturas, humi-dade, entre muitos outros exemplos, e respetiva transformação em saídas, executando instruções para o microcontrolador que está presente na referida placa.

Para um melhor entendimento do tipo de sistema abordado, em seguida é apresentado um exemplo de um sistema de automação, projetado para uma habitação, recorrendo ao

Arduino (Figura2.2):

1Software para o qual o código-fonte é disponibilizado gratuitamente, e que pode ser redistribuído e

modificado [2].

2O Arduino é uma plataforma eletrónica open-source, que é baseada numa placa, e no seu software, e que

é caracterizada pela sua fácil interação. A referida placa é capaz de ler inputs, e respetivamente transformá-lo numa saída [3].

(31)

2 . 1 . C O N C E I T O D E AU T O M AÇ ÃO

Figura 2.2: Arquitetura do sistema de automação, de uma habitação, adaptado de [4].

A Figura2.2demonstra como todos os dispositivos comunicam, não só com o contro-lador, mas também entre si, e quais os módulos utilizados de leitura dos dados.

Em primeiro lugar, existe um microcontrolador, responsável por obter as medições físicas relevantes, para este caso, através dos sensores que a ele estão conectados. A ativa-ção da luz depende da presença e da necessidade de utilizaativa-ção, numa dada divisão, assim como da intensidade da luz irradiada pelo sol, o que é determinado recorrendo a um LDR3(Light Dependent Resistor). Finalmente, ainda foi integrado um sensor de

infraver-melhos passivo (PIR,Passive Infrared)4, que deteta movimentação dentro de casa, quando o sistema de segurança está ativo. O intuito do relé, onde estão ligados os quatro dispo-sitivos é enviar sinais de controlo, do microcontrolador, para os dispodispo-sitivos eletrónicos responsáveis por ativar ou desativar algum dos dispositivos, do sistema.

Para confirmar a identidade de um habitante, foi concebido um portalweb, com um

nome de utilizador e respetiva palavra-chave associada. Este portal interage em dois sen-tidos, tanto como entrada, como saída, sendo que no primeiro caso serve de controlo a qualquer comando enviado pelo utilizador, e no segundo como auxiliar para represen-tação das leituras, assim como o estado de ativação dos dispositivos, o que se verifica, também, na aplicação desenvolvida parasmartphone [4].

Assim sendo, concluímos que é possível o desenvolvimento de sistemas, recorrendo a componentes mais económicos, e com duas componentes, dehardware e software.

3Resistência que depende de luz

(32)

2.2

Medição Volumétrica

A medição volumétrica é um dado que pode ser muito relevante em sistemas em que exista a necessidade de conhecermos o estado de ocupação, de um determinado espaço.

Para a obtermos a taxa de ocupação volumétrica, existem vários métodos que, enqua-drando no contexto da automação, recorrem a sensores e a outras fontes de informação. Dada a existência de variados tipos de sensores para efetuar este tipo de medição, será apresentado um método, através dos qual é possível obter o volume, através da captação de imagens.

Sistema de Visão para Controlo Volumétrico

Neste exemplo, é apresentado um sistema que utiliza um sensor de imagem e um microcontrolador programável daMitsubishi, para a medição volumétrica.

O grande objetivo deste sistema sensorial é a computação automática da área superfi-cial e do volume de produtos agrícolas, assimétricos.

No caso deste sistema, a obtenção destes dados é realizada por aproximação, como uma soma de troncos cónicos. Para o cálculo da área, existe, por exemplo, um método designado deTape Method5[5]. Neste procedimento, a fita é dividida em pequenos troços, por forma a que cubra completamente a superfície do objeto. Ao serem retirados os invólucros, pode então ser calculada a área total.

No entanto, a eficácia deste método está totalmente dependente de como são utiliza-dos os pedaços de fita, manualmente. Posteriormente, ainda é necessária a conversão de unidade de área, sendo este método muito dispendioso a nível temporal, além da proba-bilidade intrínseca de ocorrência de erros humanos. Existe ainda um outro método para o cálculo da área, que a relaciona com a massa do objeto.

Quanto ao volume, em alguns casos, é usado o método do deslocamento de água. O produto seria completamente submerso em água, o que impossibilita o recurso a este procedimento, em diverso tipos de exemplos.

Pelo exposto, e depois inúmeros estudos acerca da utilização de imagem na agricultura, concluiu-se que este método, que recorre à imagem, é eficaz, económico e fiável.

Então, em seguida (Figura2.3) é apresentado o protótipo para a arquitetura do sistema implementado:

(33)

2 . 2 . M E D I Ç ÃO V O LU M É T R I C A

Figura 2.3: Sistema de visão, adaptado de [5]

Aquisição de Imagem

Para efetuar a aquisição da imagem, é utilizado um sensor de imagem, oOmniVision OV7620 CMOS 1/3”, que é controlado por um microcontrolador programável, Mitsubishi MSA0654MEAUST M16C. A imagem é capturada em modo B/W (Black and White) e, em

seguida guardada numa memória externa, conectada ao microcontrolador.

Para evitar a interferência da luz ambiente no momento da captação da imagem, o dispositivo foi colocado numa caixa, iluminada controladamente através de uma lâmpada de 100W. Além do mais, para precaver qualquer problema que possa surgir na aquisição da imagem, o fundo da caixa protetora é negro, o que causa contraste com o produto e com a sua sombra [5].

Processamento de Imagem

Em primeiro lugar, a imagem foi alisada, recorrendo ao filtroSigma, de dimensão 5x5,

com umsigma igual a 2, cuja finalidade é a remoção de qualquer ruído existente. Além do

mais, com o método do gradiente, as arestas foram também detetadas. Dada a resolução de intensidade, 8-bit, existem 256 níveis de brilho.

Depois de alisada, a imagem é também diferenciada, com a aplicação de um filtroSobel,

com operador de dimensão 3x3. Para a deteção dos contornos, é definido um threshold de 90. Deste modo, apenas os píxeis localizados nos contornos são brancos, e os restantes pretos.

Por fim, o contorno que é obtido é utilizado na calibração dimensional, assim como na computação do volume, e da área [5].

Os resultados dos dois processos mencionados estão expostos nas seguintes imagens, onde, em cada uma, é demonstrado o resultado da aplicação das operações, tanto da

(34)

imagem capturada, como após o seu alisamento e deteção dos respetivos contornos:

Figura 2.4: Progressão do tratamento de imagem [5]

Na imagem (a) da Figura2.4está representada a imagem inicialmente capturada, pelo sensor de imagem, e em modoB/W . Após a aplicação do filtro Sigma, resulta a imagem

identificada pela letra (b).

A imagem representada pela letra (c) diz respeito à aplicação do filtroSobel e, por fim,

a imagem (d) demonstra o contorno exterior da imagem, que foi utilizado para calibrações, e também para a computação do volume e da área.

Relativamente ao cálculo da área superficial e do volume, através da calibração dimen-sional é possível converter o número de píxeis, no contorno da imagem, para uma unidade de distância correspondente. Deste modo, as fórmulas que foram utilizadas, para o cál-culo baseiam-se em algumas variáveis, que dependem da forma do objeto. Quanto aos eixos, o de maior dimensão corresponde, sempre, ao eixo z, e todos os cortes transversais de relevância, consequentemente ao plano x-y.

Assim sendo, os objetos são modelados sob a forma de troncos cónicos6, cujo volume e área podem ser obtidos recorrendo às fórmulas matemáticas representadas pelas equações 2.1 e 2.2 respetivamente e, para tal, é necessário conhecer, tanto os diâmetros inferior e

(35)

2 . 3 . C Â M A R A S T É R M I C A S E AQ U I S I Ç ÃO D E I M AG E M

superior, como a altura do tronco (a Tabela2.1indica o significado representado por cada variável utilizada nas equações 2.1 e 2.2) [5]:

Vi= (π ∗ h) 12 ∗(Db 2 i + DbiDt i+ Dt2i) (2.1) Ai= π 2 ∗(Dbi+ Dt i) ∗ r h2+ (Dbi 2 − Dt i 2 ) 2 (2.2) Onde:

Tabela 2.1: Definição das variáveis, das equações 2.1 e 2.2 Vi Volume de um tronco cónico, de índex i

Ai Área superficial, de índex i h Altura do tronco

Dbi Diâmetro da base de um tronco, de índex i Dti Diâmetro do topo, de índex i

2.3

Câmaras Térmicas e Aquisição de Imagem

Uma câmara de infravermelhos é um dispositivo que converte, num sinal eletrónico, a radiação infravermelha, com o objetivo de gerar uma imagem térmica. A temperatura que é capturada por este tipo de câmara pode ser quantificada, para que seja possível observar o comportamento térmico de um corpo.

Em condições normais, no que diz respeito ao fundo da imagem capturada, quando o objetivo é obter o comportamento térmico de um corpo, o fundo desta mesma imagem pode ser desprezado, em virtude da temperatura do corpo ser representada numa área térmica reduzida. Na seguinte figura, podemos verificar o comportamento deste tipo de câmara, na atividade de captação de um corpo humano [7]:

(36)

Pela observação da Figura2.5, é possível verificar que as áreas respeitantes às mãos e à cabeça estão claramente diferenciadas do fundo da imagem [7].

Em seguida, é apresentado um exemplo da aplicabilidade do mapeamento térmico, num sistema de deteção.

Sistema de Identificação do Estado Afetivo com Câmaras Térmicas

Para obter a informação acerca do estado de espírito de alguns utilizadores de com-putadores, foi então desenvolvida uma tecnologia, que se baseia na informação obtida da gravação contínua de uma imagem térmica da face, desses mesmos usuários.

Os criadores deste sistema descobriram que o estado destress, de um determinado

utilizador, está relacionado com o incremento do fluxo sanguíneo, numa zona específica da cabeça:

Figura 2.6: Zona de relevância para o sistema apresentado [7]

Foi então conectada uma câmara térmica de infravermelhos ao computador, como um periférico, com o objetivo de monitorizar a zona da face mais adequada para retirar qualquer tipo de conclusão, por ser constituída por uma camada de pele mais fina, o que permite a obtenção de uma imagem de melhor qualidade.

Sendo o foco deste sistema a identificação do estado destress, apenas as zonas cerebrais

associadas a este estado de espírito serão relevantes para o estudo.

Na zona da cabeça identificada na Figura2.6, quando o utilizador é um submetido a algo que suscite o estado de espírito mencionado, existe um crescimento do fluxo da corrente sanguínea, o que resulta num aumento da temperatura (dissipação de calor convectivo, mensurável), que é registado pela câmara. Assim sendo, o algoritmo desenvol-vido para a determinação dos níveis destress é apenas baseado nesse dado de temperatura

medido, assim como nos níveis de perfusão na vasculatura frontal da cabeça.

Na realidade, para cada sujeito ao estudo realizado, foi selecionada uma Região de Interesse (ROI,Region of Interest) que inclui os vasos frontais, e um algoritmo de

rastrea-mento regista esta região, sendo que a computação apenas regista 10% dos "píxeis mais quentes".

(37)

2 . 4 . A R M A Z E N A M E N T O E M A N I P U L AÇ ÃO D E DA D O S

Assim, para cadaframe7da gravação térmica é computada a temperatura mediana de 10% dos "píxeis mais quentes"da ROI [7] e, finalmente, foi usado um modelo já existente para tratar a computação da corrente sanguínea nos vasos frontais, baseado na entrada dinâmica de calor.

2.4

Armazenamento e Manipulação de Dados

2.4.1 Definição de Cloud

Uma cloud pode ser definida como uma metáfora para descrever uma rede global de

servidores, cada um com uma função específica, isto é, trata-se de vasta rede de servidores remotos, a uma escala global, interligados, que devem funcionar como um ecossistema único [8].

Os mencionados servidores foram concebidos para o armazenamento e gestão de informação, mas também para a execução de aplicações, ou mesmo para o fornecimento de conteúdos ou serviços.

O grande objetivo do conceito abordado é possibilidade de acesso a ficheirosonline,

tornando a informação disponível em qualquer local, em vez de estar limitada ao acesso exclusivo a partir de um computador, ou outro qualquer dispositivo de armazenamento [8]. Atualmente, diversas empresas já armazenam seguramente a sua informaçãoonline,

sendo que existe uma diversidade de funcionalidades e interações entre as mencionadas opções. Alguns exemplos já existentes são a Amazon Cloud8, a Apple iCloud Drive9, ou aDropbox10, e cada um oferece ao seu utilizador um número de gigabytes diferente de armazenamento, e inúmeras possibilidades de interação.

AFirebase11, no âmbito dasclouds, é uma tecnologia que permite o desenvolvimento

de aplicaçõesweb, que não requer qualquer tipo de programação, do lado do servidor, o

que facilita e acelera o desenvolvimento, por parte do utilizador. Com o recurso a esta tecnologia, é possível verificar utilizadores, armazenar dados (através da base de dados própria, e gratuita caso as regras de escrita e leitura sejam definidas como públicas), implementar regras de acesso, entre muitas outras opções [9].

No que diz respeito à relação entre este tipo de rede de armazenamento de informação e a automação, em vários tipos de sistema existe a necessidade do armazenamento de informação online. O exemplo apresentado em seguida, demonstra a importância do

armazenamento da informaçãoonline, num sistema de uma casa inteligente.

7Imagem fixa de uma gravação audiovisual

8Armazenamento em "nuvem", criado pela empresa Amazon, em 2011, e que permite o armazenamento

de ficheiros, de uma forma segura, além de permitir outro tipo de interações também

9Cloud fundada pela empresa Apple, e que permite o acesso a documentos, a partir de diversos

disposi-tivos, não só da empresa fundadora do serviço

10Serviço de armazenamento e de partilha de ficheiros, fundada em 2007 e, posteriormente lançada ao

público em 2008

11É uma plataforma online e móvel de desenvolvimento, fundado pela empresa Firebase, em 2011, e

posteriormente adquirida pela Google. Além do desenvolvimento, também tem uma nuvem, que permite realizar operações na cloud

(38)

2.4.2 Implementação de uma Casa Inteligente, com recurso à Firebase

O seguinte exemplo expõe um sistema de uma casa inteligente, energeticamente eficiente, com base numa rede de sensores sem fios. Para tal, foi usada aFirebase Realtime Database

como base de dados, o que torna possível o acesso ao sistema da casa, a partir de qualquer local. A Figura2.7ilustra o diagrama da arquitetura do sistema:

Figura 2.7: Diagrama da Arquitetura deste sistema[9]

Como está implícito no diagrama da figura anterior, este projeto necessita de uma aplicação móvel, que permita ao utilizador interagir com o sistema da sua habitação.

No momento em que se executa algum tipo de interação com a aplicação, a informação é transmitida à Firebase, que regista, e modifica os valores lógicos da ação. Depois das

mudanças em relação à base de dados, existe um sistemaonline que, sempre que existe

qualquer alteração, corre umnode.js12, que permite um códigoJavaScript, no servidor. A

este sistema está ligado umArduino, que regula os LED’s(Light-Emitting Diode) e a

venti-lação da casa. A foto resistência e o sensor de temperatura conectados aoArduino obtêm

informação acerca das condições meteorológicas exteriores, sendo ainda responsáveis por manter a casa em condições adequadas.

Além do mais, a aplicação móvel ainda está ligada a outra aplicação, esta de previsão meteorológica, que automaticamente efetua alterações, baseadas nestas informações.

Por fim, os dados da foto resistência e do sensor de temperatura são também armaze-nados na base de dados. Dadas as imensas possibilidades de bases de dados a utilizar, a

(39)

2 . 5 . P R O T O C O L O S D E C O M U N I C AÇ ÃO

selecionada para este sistema foi a daFirebase e esta escolha deve-se a vantagens

intrínse-cas a esta base de dados, comparativamente a outras: • Reduz o tempo de desenvolvimento;

• É possível assumir que aFirebase vai tratar de cada uma das informações;

• Os dados são armazenados como JSON (JavaScript Object Notation)13nativo; • Os dados estão protegidos, graças ao tipo de encriptação desta base de dados; • Têm uma boa coordenação com sistemas como o Angular JS14[9].

2.5

Protocolos de Comunicação

A comunicação entre os componentes de um sistema deste tipo é fulcral para o bom fun-cionamento em todas as etapas do processo. Assim sendo, nesta secção serão abordados os protocolos responsáveis pela mencionada comunicação, e explicitado o seu funciona-mento, em cada caso.

2.5.1 I2C

O protocolo I2C admite múltiplosmasters e slaves, o que permite a existência de diversos

controladores, num sistema. É composto por um barramento de 2 linhas bidirecionais e umground, tratando-se de um protocolo simples e eficiente, no que diz respeito à troca

de informação (Figura2.8).

Além do mais, cada dispositivo conectado através deste protocolo de comunicação possui um endereço único, independentemente da função (master, ou slave) e pode operar,

tanto como transmissor, como receptor.

Deste modo, este protocolo tornou-se fulcral em muitos tipos de sistemas (como de vigilância, ou de monitorização de fatores, entre outros), incluindo os que envolvem a utilização de um controlador como o Raspberry Pi. Muitos sensores compatíveis com

este mini-computador comunicam com ele através deste protocolo, utilizando os pinos disponíveis (SDA,Serial Data Line e SCL, Serial Clock Line)[10].

13Linguagem de programação utilizada na troca de dados, de uma forma rápida, e simples 14Framework JavaScript, que ajuda na geração de aplicações single-page

(40)

Figura 2.8: Exemplo de possível arquitectura do protocolo de comunicação I2C

2.5.2 1-Wire

O sistema de comunicação1-Wire foi concebido com o intuito de comunicar com sensores

simples ou dispositivos de apenas umainterface de uma linha e, portanto, que consumam

pouca velocidade e energia [11].

Uma das características importantes deste protocolo é a possibilidade de transferên-cia de informação, entre um dispositivo e o master do sistema, enquanto que os outros

conectados por este tipo de comunicação estão em "repouso"("idle state").

Por fim, existem dois tipos de alimentação possíveis de aplicação, aosslaves de um

protocolo deste tipo:

• Energia externa: Oslave possui um pino de energia, utilizado para a sua

alimenta-ção, no barramento;

• Energia "Parasita": Oslave é alimentado com recurso à energia fornecida pelo

bar-ramento de dados (Figura 2.9), e armazenada pelos condensadores internos dos dispositivos deste tipo.

(41)

2 . 5 . P R O T O C O L O S D E C O M U N I C AÇ ÃO

Figura 2.9: Exemplo de possível arquitectura do protocolo de comunicação 1-Wire [11]

2.5.3 WebSocket

A comunicaçãoWebSocket é uma comunicação de socket único, full-duplex e, por isso,

bidi-recional (Figura2.10). Através deste tipo de comunicação, o pedido HTTP (Hyper Transfer Protocol) torna-se num pedido único para a abertura de uma conexão WebSocket, e vai

reutilizando esta mesma conexão para as comunicações, em ambas as direções (servidor -> cliente, cliente -> servidor).

Deste modo, a latência é significativamente reduzida, dado que, assim que é estabele-cida uma conexão, o servidor pode enviar mensagens, logo que estas estejam disponíveis [12].

Em síntese, o protocoloWebSocket é composto por duas partes, sendo que a primeira é

denominada porhandshake, que consiste na mensagem do cliente e a resposta do servidor.

A segunda parte do processo é a transferência de dados [13]. Vantagens

1. Comunicação em tempo real mais eficiente - Em comparação aos pedidos HTTP, o

WebSocket poupa largura de banda, energia do CPU (Central Process Unit) e latência;

2. Maior simplicidade - As técnicas para a notificação, em tempo real, através de HTTP são de maior complexidade;

3. Permite a implementação de outros protocolos, por cima do WebSocket - Suporte à aplicação de protocolos de nível mais elevado, o que incentiva o desenvolvimento baseado em componentes reutilizáveis [13].

(42)

Pelo exposto, conclui-se que o protocolo HTTP não é o mais indicado para o desenvol-vimento de aplicações, e tempo real, contrariamente aoWebSocket. Os padrões assíncronos,

e de comunicação bidirecional, garantem a flexibilidade concedida pelos protocolos de transporte de camadas, naInternet [13].

(43)

C

a

p

í

t

u

l

o

3

D e s c r i ç ã o d o S i s t e m a P r o p o s t o

No presente capítulo é apresentada uma descrição dos requisitos e funcionalidades, que são propostos para este sistema de monitorização volumétrica, recorrendo a sensores tér-micos, bem como a enumeração das etapas a realizar para atingir os objetivos delineados. Deste modo, serão abordados todos os componentes constituintes do sistema, como se conectarão entre si, como se processarão os dados ao nível da base de dados, e todas as funcionalidades disponibilizadas na aplicação móvel.

3.1

Objetivos Propostos

Tal como já foi mencionado anteriormente, atualmente existe um problema de mobiliza-ção de grandes massas populacionais, existindo uma necessidade de monitorizar infor-mação auxiliar, num possível planeamento antecipado.

A rápida proliferação do conceito de IoT, no contexto atual, é um fator chave na aquisição deste tipo de dados e, com as ferramentas necessárias, é possível construir um sistema que adquira os dados necessários, e que posteriormente os coloque disponíveis a acesso remoto, para que possam finalmente ser interpretados e representados.

No caso em questão, dos transportes públicos sem lugar definido, existe uma sobrelo-tação diária dos recursos, em certos períodos do dia, ou em certas alturas, sendo que não existem ainda soluções que permitam uma previsão ou controlo das necessidades.

Pelo exposto, pretende-se implementar um sistema que adquira dados que possam verificar o preenchimento diário, numa região de interesse (neste caso, próximo das portas, como será mais detalhado, em seguida). Para a deteção da presença, isto é, ocupação, é utilizada um sensor de imagem térmica. Este está conectado a um controlador, que por sua vez está ligado a umacloud que, em seguida, envia a informação em tempo real, para

(44)

No que diz respeito às funcionalidades da aplicação móvel, esta permitirá visualizar a informação em tempo real, assim como histórico armazenado, representações gráficas desse mesmo histórico e organizadas de acordo com relevância da informação. Além das interações relacionadas com os dados, também é possível parametrizar o sistema, conforme as necessidades.

Por fim, neste sistema, também é proposta a visualização física do estado atual de preenchimento da zona em torno de uma porta, pela representação sob a forma deLED’s.

A tabela seguinte demonstra, em síntese, as etapas que são propostas, e as secções seguintes deste capítulo permitem um conhecimento mais detalhado, acerca do funcio-namento do sistema e dos objetivos do mesmo.

Tabela 3.1: Procedimento de implementação do sistema

Etapas a Realizar Ferramentas Auxiliares

Aquisição de Dados Sensor Térmico e Sensor de Temperatura Envio da Informação e Controlo dos Periféricos Controlador do Sistema

Armazenamento Cloud

Representação Gráfica Aplicação Móvel eLED’s

3.2

Funcionamento do Sistema

3.2.1 Controlador e Respetivos Periféricos

Considerando os objetivos propostos, e sintetizados na Tabela3.1, pretende-se que o sis-tema esteja habilitado a recolher informação, e que a torne disponível,instantaneamente, na base de dadosonline.

Recorrendo às capacidades do controlador do sistema, é possível o envio da informa-ção diretamente para umacloud, recorrendo às bibliotecas existentes para bases de dados,

e compatíveis com grande parte dos dispositivos que podem atuar como controladores, recorrendo a diversos exemplos de linguagens de programação.

Assim sendo, no que diz respeito aos componentes que fazem parte desta fase de im-plementação do sistema, o que se pretende é a eficaz leitura, e posterior envio dos dados térmicos recolhidos, tornando possível o conhecimento do estado de ocupação volumé-trico, de uma certa área, num ambiente onde as condições de temperatura e humidade são controladas. No entanto, o controlo total do ambiente do espaço recomendado (car-ruagens de um comboio) pode ser de elevada dificuldade, podendo verificar-se pequenas flutuações que podem influenciar o bom funcionamento do sensor de imagem térmica. Para precaver este problema, é necessária a integração de um periférico habilitado ao controlo das condições de temperatura.

(45)

3 . 2 . F U N C I O N A M E N T O D O S I S T E M A

Figura 3.1: Objetivo para a componente física do sistema

A Figura 3.1 representa um possível contexto de utilização para o sistema que se pretende implementar, mais concretamente para a componente que adquire a informação, e que posteriormente a envia para a base de dadosonline. Tal como foi mencionado, as

capacidades do controlador permitem que a sua comunicação seja bidirecional, recebendo e enviando a informação.Então, a Figura3.2, esquematiza osinputs e outputs envolvidos,

no controlador, durante a realização de um ciclo do sistema:

Figura 3.2: Diagrama de entradas e saídas projetado para o controlador

Pela inspeção da Figura3.2, verificamos que existem duas entradas fulcrais ao bom funcionamento do sistema. A primeira, "Temperatura Inicial de Calibração", é a efetuada pelo periférico auxiliar na calibração e cuja função é a indicar ao sensor de imagem térmica em que intervalo de temperaturas deve operar. Com a disponibilidade deste dado, então é possível obter o segundo input, que são as temperaturas efetivamente no espaço de

operação do sensor.

Por fim, a saída do sistema, o estado de preenchimento, é enviada para a base de dados que trata de armazenar a informação, nos locais indicados para tal. De salientar que toda a

(46)

aritmética relacionada com o cálculo percentual deve ser efetuada ao nível do controlador, para uma melhor eficiência do sistema, evitando a redução do desempenho dos módulos seguintes a esta etapa do processo, e permitindo a interação com os LED’s do sistema.

3.2.2 Cálculo Volumétrico

O capítulo anterior abordou alguns conceitos relacionados com o funcionamento de câ-maras térmicas e cálculo volumétrico, baseado em captação de imagem, sendo um dos principais objetivos desta dissertação a verificação de uma relação entre ambos.

Na realidade, a ocupação, no raio de acção do sensor de imagem térmica, pode ser de-terminado com base na imagem térmica adquirida, dado que a presença de um corpo será imediatamente captada, surgindo uma cor característica e identificativa da temperatura atual do corpo.

Considerando que o sensor aplicado neste sistema é composto por uma matriz de infravermelhos (mais detalhado no capítulo seguinte), a ausência de um corpo não irá concretizar alterações na imagem, visto que não existe reflexão aos IR (Infravermelhos)

emanados pelo sensor.

Assim sendo, esta característica das câmaras térmica pode ser explorada como um método auxiliar de conhecimento da ocupação volumétrica. Através das capacidades de análise de imagem associados ao controlador do sistema, e às suas inúmeras bibliotecas, é possível identificar as diferenças na imagem, com base na identificação de cor do que é captado. Outro método alternativo será recorrer apenas aos valores de temperatura captados pelo sensor, pois é através destes que é construída a imagem térmica, baseado neles, algo que será detalhado no capítulo seguinte.

3.2.3 Armazenamento da Informação

A disponibilidade da informação é uma etapa essencial para o bom funcionamento deste sistema, em virtude da plataforma disponível para o acesso aos dados ser dependente da base de dados.

Para a implementação de uma aplicação de análise de dados, é fulcral a existência de uma base de dados que permita o acesso e, inclusive manipulação da informação, a partir de qualquer local, pelo que a solução passa pela utilização de umacloud, tal como já foi

mencionado anteriormente.

Como é exposto na Figura 3.1, deverá existir um envio direto da informação, com recurso ao controlador. Tal como foi efetuado na subsecção anterior, o diagrama seguinte (Figura3.3) expõe, tanto as entradas, como as saídas, neste caso para a base de dados do sistema.

(47)

3 . 2 . F U N C I O N A M E N T O D O S I S T E M A

Figura 3.3: Diagrama de entradas e saídas projetado para a base de dadosonline

Além da informação volumétrica, também será necessário enviar os dados temporais, relativos à recolha da informação, de modo a que sejam organizados e selecionados, de acordo com as necessidades dos utilizadores. Os dados mencionados são armazenados sob a forma de uma árvore JSON, sendo acessíveis remotamente.

Como será mais detalhado nos capítulos seguintes, de acordo com o bom funciona-mento deste tipo de sistemas de recolha de informação, deverão existir tipos de utilizado-res, distinguidos pelos seus privilégios na aplicação e na manipulação da base de dados, para que a informação seja filtrada consoante necessidade de cada utilizador (adminis-trador e utilizador regular), o que deverá ser verificado numa interação entre acloud e a

aplicação móvel.

3.2.4 Aplicação Móvel

O grande objetivo da criação da aplicação móvel, para este sistema é a visualização, em tempo real, da informação recolhida pelo sensor térmico, assim como o histórico desta, organizado de acordo com as necessidades, existindo rotinas que filtram a informação, pela sua relevância.

Uma aplicação móvel deve ser caracterizada pela sua simplicidade na interação com os utilizadores, bem como na sua implementação, para que o seu desempenho seja o mais eficiente possível e a exposição dos dados recolhidos deve facilitar a observação e a obtenção de conclusões.

Na realidade, no desenvolvimento de uma AM (Aplicação Móvel), devem ser conside-radas duas componentes essenciais,frontend e backend. Neste caso, a primeira diz respeito

ao que é visualizado pelo utilizador (views) e a segunda às operações que envolvem o

processamento da aplicação ou qualquer interação realizada.

O histórico do informação deve estar organizado, de acordo com a data em que os dados foram recolhidos, assim como deve ser possível filtrar a informação, para a data que se pretende visualizar. Além do mais, a exposição da informação deve ser também de fácil e rápida visualização, tal como deve acontecer no histórico estatístico dos dados e, pelo exposto, a estatística associada ao sistema deve ser apresentada sob a forma de gráficos, imagens, isto é, componentes que simplifiquem a visualização do utilizador.

(48)

Assim sendo, a Tabela 3.2 contém as views da AM a implementar, de acordo com o tipo de usuário, bem como uma sucinta explicação das funções que cada uma deve desempenhar:

Tabela 3.2: Tabela com as views a implementar, ao nível da aplicação móvel

View Função Utilizador

Regular Administrador Registo de

Utilizador

Registo de cada utilizador, onde será necessário fornecer um en-dereço eletrónico válido, e uma palavra-passe

X X

Login

Atividade de login, onde é efetuada uma comunicação com a base de da-dos para confirmação das credenci-ais introduzidas

X X

Ecrã Principal

Página principal da aplicação, onde podem ser visualizados os dados re-ferentes a cada comboio do sistema. Contém barra auxiliar para o acesso às restantes Views

X X

Histórico

Composta por uma lista com todos os dados recolhidos pelo sensor e por um campo de pesquisa, editável pelo utilizador

X X

Área Gráfica

Contém uma View, em grelha, com várias opções gráficas, com informa-ção filtrada, de acordo com a sua re-levância

X X

Ecrã de Iniciação É constituído apenas por um ícone

identificativo da aplicação X X

Definições Configuração de parâmetros do

sis-tema X X

Detalhes do Utilizador Alteração de parâmetros associados

à conta de utilizador X X

Asviews expostas na Tabela3.2irão requer a constante comunicação com a base de dados, visto que a atualização da informação é constante. Deste modo, e tendo em conta que a AM apenas irá comunicar, diretamente, com acloud (as parametrizações efetuadas

com recurso à aplicação envolvem a base de dados), os seguintes diagramas ilustram as entradas e saídas que envolvem este componente do sistema, em primeiro lugar, para um utilizador definido como administrador do sistema e, depois, para um utilizador comum da aplicação:

(49)

3 . 2 . F U N C I O N A M E N T O D O S I S T E M A

Figura 3.4: Diagrama de entradas e saídas projetado para a AM, de um utilizador classifi-cado como administrador

Pela observação do diagrama da Figura3.4, deve ser possível, para um administrador, configurar parâmetros do sistema e dados e dados associados à sua conta remotamente. Apenas a segunda opção é possível também para um utilizador regular, tal como acontece relativamente ao seu acesso aos dados do histórico da informação e gráficos associados.

Assim sendo, em seguida é apresentado o mesmo diagrama (Figura3.5) , para um utilizador classificado como normal:

Figura 3.5: Diagrama de entradas e saídas projetado para a AM, de um utilizador classifi-cado como normal

3.2.5 Arquitetura Proposta

Nas secções anteriores, foram apresentados, e sucintamente detalhados, os diversos mó-dulos constituintes do sistema, a sua função, o objetivo pretendido para cada, e é então de relevância mencionar como todos estes blocos se interligam entre si, e qual a comunicação que estabelecem.

Assim sendo, a arquitetura projetada para este sistema de controlo volumétrico é a apresentada na Figura3.6(inclui todos os componentes):

(50)

Figura 3.6: Arquitetura Proposta para o Sistema

Os componentes centrais das comunicações existentes, durante qualquer tipo de inte-ração do sistema, são o controlador, acloud e a AM. Todos estes componentes comunicam

em ambos os sentidos (bidirecional) entre eles, sendo a base de dados o elemento que conecta a aplicação móvel e o controlador. Mesmo ao nível dos parâmetros do sistema, qualquer alteração efetuada envolverá uma comunicação com a base de dados, que tratará de fornecer essa informação ao controlador, que a tratará da devida maneira, excepto no que diz respeito ao módulos de LED’s.

3.2.6 Requisitos não-funcionais

Durante o desenvolvimento e implementação de um sistema deste tipo, pretende-se que o protótipo arquitetado seja funcional e eficaz, pelo que se pretende que a sua instalação seja acessível, e que seja o mais adaptável possível ao meio para o qual foi concebido. Além do mais, apesar do controlo do ambiente do meio, o dispositivo deve ter a capacidade de se adaptar a pequenas variações que possam eventualmente surgir.

No que diz respeito às aplicações digitais constituintes do sistema, deve ter-se em consideração o tipo de público a que se destinam. Neste caso, sendo um público geral, com variadas faixas etárias, as aplicações devem ser simples e concretas, para que a visu-alização da informação seja o mais abrangente possível.

A aplicação desenvolvida também deve ser concisa nos dados a filtrar, tornando a pesquisa de histórico também precisa. Uma boa acessibilidade à informação permitirá uma rápida procura de soluções e correção de eventuais necessidades verificadas.

Por fim, além dos requisitos relacionados com a informação a apresentar, devem tam-bém ser implementadas rotinas relacionadas com a segurança da aplicação móvel (registo de utilizadores,login, alteração de parâmetros de registo). Como já foi mencionado,

(51)

3 . 3 . A N Á L I S E D O S I S T E M A P R O P O S T O

terão associados dados introduzidos, durante o processo de registo. Assim, devem ser im-plementadas rotinas para a alteração de qualquer parâmetro associado a este registo, para precaver qualquer necessidade do utilizador, especialmente relacionadas com a palavra-passe de segurança, também esta definida pelo utilizador, que deve ser possível alterar, seguramente. O esquema seguinte (Figura3.7) explícita como deve ser tratado o processo de arranque da aplicação, com as rotinas descritas ao longo deste parágrafo:

Figura 3.7: Rotina de Segurança dos Utilizadores

3.3

Análise do Sistema Proposto

Em síntese, após a análise das secções anteriores, conclui-se que o sistema implemen-tado se encontra dividido em três componentes principais: o controlador (com os seus periféricos), a base de dadosonline e as aplicações de exposição da informação.

Desta forma, o controlador é o responsável por controlar os dispositivos envolvidos na aquisição da informação, e pelo tratamento desta, sendo possível a sua interligação com um sistema de armazenamento exterior. É também o controlador que trata da ativação dosLED’s, pelo que, para tal, não é necessária nenhuma instrução exterior, proveniente da

base de dados (sistema independente, pois em caso de alguma eventualidade que envolva acloud, o sistema físico pode continuar em operação).

Em segundo lugar, a informação relevante é enviada para a base de dados, que a tor-nará acessível para todas as aplicações que pertencem ao sistema. Nacloud, a informação

estará organizada de forma acessível, com o objetivo de facilitar a implementação da ex-posição dos dados. A comunicação estabelecida entre a base de dados e a aplicação móvel é bidirecional, permitindo a alteração de parâmetros de funcionamento, restritamente, e dados associados aos utilizadores.

Finalmente, a aplicação móvel permite a visualização imediata da informação, pelos utentes registados, e o auxílio na demonstração de padrões de utilização, pela análise estatística implementada.

(52)
(53)

C

a

p

í

t

u

l

o

4

I m p l e m e n ta ç ã o d o S i s t e m a

O objetivo do presente capítulo é descrever o procedimento efetuado para a implementa-ção do sistema, mais especificamente para a elaboraimplementa-ção do protótipo projetado e posterior interface de utilizador, para a sua utilização em transportes públicos de carruagens, como auxuliar no controlo da ocupação das entradas / saídas.

Deste modo, serão abordadas todas as tecnologias utilizadas, assim como técnicas de auxílio à implementação, algoritmos gerados e linguagens de programação utilizadas.

Em síntese, este capítulo aborda todos os aspetos relacionados com o controlador, com o respetivo sensor térmico e os restantes periféricos, a base de dados associada e a respetiva aplicação móvel, baseada nos dados enviados pelo controlador e diretamente conectada à base de dados. Além do mais, e com o intuito de demonstrar o princípio de funcionamento do sistema, foram ainda realizados alguns testes, pelo que são também apresentados neste capítulo.

4.1

Instalação dos Dispositivos

Nesta secção, são descritos, pormenorizadamente, dois componentes fulcrais do sistema, o dispositivo utilizado como controlador, oRaspberry Pi 3 Model B+ e o sensor AMG8833,

fabricado pelaPanasonic. Também serão abordados os restantes periféricos constituintes

do sistema, o sensor de temperatura auxiliar e os LED’s.

A utilização destas tecnologias deve-se essencialmente ao facto de ambas estarem disponíveis a um preço acessível, além da qualidade demonstrada na aquisição dos dados, e da possibilidade de interação entre os periféricos e o controlador, e entre este e a base de dadosonline.

Pelo exposto, esta secção está estruturada, em primeiro lugar, pela exposição do ma-terial utilizado, seguida do esquema de montagem e ligação de ambos os componentes

(54)

referidos. Por fim, é efetuada a descrição dos algoritmos utilizados para a implementação do controlador e respetiva interligação com os restantes módulos do sistema.

4.1.1 Material Utilizado

Controlador do Sistema

O controlador deste sistema, oRaspberry Pi 3 Model B+, é um computador de dimensão

reduzida, como o seu custo, que foi desenvolvido pela fundaçãoRaspberry Pi . O grande

objetivo associado à sua criação foi a possibilidade de oferecer uma ferramenta de teste de capacidades computacionais, permitindo que os seus utilizadores melhorem as suas capacidades de desenvolvimento em linguagens de programação, como por exemplo o

Python [14].

Assim, para uma melhor compreensão das características associadas a este controla-dor, em seguida está exposta a Tabela4.1, onde são enunciadas as mais relevantes deste computador:

Tabela 4.1: Descrição das principais caraterísticas doRaspberry Pi

Componente Características

Processador Broadcom BCM2837B0,

com 4 núcleos e opera a 1,4 GHz Periféricos de Comunicação Gigabit Ethernet (Via USB, Gigabit/s),

Dual-Band Wi-Fi LAN (transita entre 2,4 GHz e 5GHz)

RAM RAM & 1GB LPDDR2 SDRAM

Bluetooth Bluetooth 4.2 e BLE (Bluetooth Low Energy)

Armazenamento Micro SD

GPIO 40 portas programáveis de entrada e saída de dados Portas

HDMI, conector video-audio analógico de 3,5mm, 4 entradas USB 2.0, CSI (Camera Serial Interface)

e DSI (Display Serial Interface)

De salientar que a dimensão deste dispositivo confere inúmeras vantagens, como a sua portabilidade, ocupando 82mm de comprimento, 56mm de largura e 19,5mm de altura, associados a um peso de 50g.

Outro aspeto a realçar é a configuração da cabeça de 40 pinos que compõe oRaspberry Pi 3 Modelo B+ e que está ilustrada na figura que se segue (Figura4.1) :

(55)

4 . 1 . I N S TA L AÇ ÃO D O S D I S P O S I T I V O S

Figura 4.1: Configuração da cabeça de pinos de entrada e saída do Raspberry Pi 3 Modelo B+ [15]

AMG8833

No que diz respeito ao sensor, oAMG8833 é um sensor térmico, composto por uma

matriz 8x8 de sensores térmicos de infravermelhos. Quando ligado aoRaspberry Pi, este

sensor retorna 64 leituras de temperatura, via I2C (Inter-Integrated Circuit). É capaz de

efetuar leituras entre os 0ºC e os 80ºC, com uma incerteza associada de (+/-) 2,5ºC. Nas condições ideais de luminosidade, é capaz de detetar um ser humano a cerca de 7m e regista/processa imagens a uma frequência de 10Hz.

Para efetuar a comunicação necessária entre o sensor e o controlador, foi utilizada a linguagem de programação Python. Numa perspetiva de auxílio no processamento de

imagem, foi utilizada a bibliotecaSciPi, do Python (biblioteca open-source, cuja biblioteca

(56)

Figura 4.2: SensorAMG8833 [16]

O sensor é composto por doze pinos, seis na sua parte superior e seis na inferior, como pode ser verificado na Figura4.2. Os pinos superiores apenas conferem uma maior estabilidade mecânica ao sensor e apenas a fileira inferior é conectada ao controlador. Nesta sequência de pinos, apenas três são lógicos, sendo os restantes de carácter eletrónico [16].

Na Tabela4.2está uma sucinta explicação da função de cada um dos pinos da fileira inferior do sensor:

Tabela 4.2: Legenda dos pinos do sensor AMG8833 [16] Carácter Nomenclatura Função

Eletrónico

Vin

Pino de energia. Sendo que o sensor utiliza 3.3V, a placa do sensor contém um regulador de tensão que recebe entre

3-5V de tensão contínua e converte-os 3Vo A saída de 3.3V do regular de tensão

GND Terra

Lógico

SCL Pino de clock do barramento I2C SDA Pino de dados do barramento I2C

INT Pino utilizado para detetar movimentos e alterações, no campo de visão do sensor

DS18B20

Este sensor de temperatura mede temperaturas (9-bit a 12-bit) e comunica através do protocolo de comunicação 1-Wire que, como o próprio nome indica, requer apenas

uma linha de dados e umground para a comunicação com o microprocessador. Além das

caraterísticas de transmissão de dados, este sensor é alimentado através do barramento de dados, eliminando a necessidade de alimentação externa (conceito de "energia parasita")

Referências

Documentos relacionados

Os maiores coeficientes da razão área/perímetro são das edificações Kanimbambo (12,75) e Barão do Rio Branco (10,22) ou seja possuem uma maior área por unidade de

insights into the effects of small obstacles on riverine habitat and fish community structure of two Iberian streams with different levels of impact from the

Neste estudo foram estipulados os seguintes objec- tivos: (a) identifi car as dimensões do desenvolvimento vocacional (convicção vocacional, cooperação vocacio- nal,

Estudar o efeito da plastificação do ATp com glicerol nas características físico-químicas da blenda PLA/ATp; Analisar a mudança na cristalinidade dos laminados submetidos a

Em relação aos conhecimentos de saúde oral constatou-se que pais/encarregados de educação e crianças estão informados sobre a presença, ou não, de dentes cariados, bem como,

Apesar da longa distância dos grandes centros urbanos do país, Bonito destaca- se, regionalmente, como uma área promissora dentro do Estado de Mato Grosso do Sul. Bonito,

c.4) Não ocorrerá o cancelamento do contrato de seguro cujo prêmio tenha sido pago a vista, mediante financiamento obtido junto a instituições financeiras, no

A Lei nº 2/2007 de 15 de janeiro, na alínea c) do Artigo 10º e Artigo 15º consagram que constitui receita do Município o produto da cobrança das taxas