-
Notifications
You must be signed in to change notification settings - Fork 0
/
thesis-roliveira.toc
109 lines (109 loc) · 9.87 KB
/
thesis-roliveira.toc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
\select@language {portuguese}
\contentsline {chapter}{Lista de Figuras}{v}{chapter*.1}
\contentsline {chapter}{Lista de Tabelas}{ix}{chapter*.2}
\contentsline {chapter}{Acr\IeC {\'o}nimos}{xi}{section*.10}
\contentsline {chapter}{\numberline {1}Introdu\IeC {\c c}\IeC {\~a}o}{1}{chapter.1}
\contentsline {section}{\numberline {1.1}Motiva\IeC {\c c}\IeC {\~a}o}{2}{section.1.1}
\contentsline {section}{\numberline {1.2}Objetivos}{2}{section.1.2}
\contentsline {section}{\numberline {1.3}Metodologia de trabalho}{3}{section.1.3}
\contentsline {section}{\numberline {1.4}Organiza\IeC {\c c}\IeC {\~a}o do documento}{4}{section.1.4}
\contentsline {chapter}{\numberline {2}O \acl {IoT} no cultivo da Salic\IeC {\'o}rnia}{7}{chapter.2}
\contentsline {section}{\numberline {2.1}Caracter\IeC {\'\i }sticas da planta}{7}{section.2.1}
\contentsline {section}{\numberline {2.2}Condi\IeC {\c c}\IeC {\~o}es ideais de cultivo da Salic\IeC {\'o}rnia}{8}{section.2.2}
\contentsline {section}{\numberline {2.3}Import\IeC {\^a}ncia da planta}{9}{section.2.3}
\contentsline {section}{\numberline {2.4}Evolu\IeC {\c c}\IeC {\~a}o tecnol\IeC {\'o}gica: o \acl {IoT}}{9}{section.2.4}
\contentsline {section}{\numberline {2.5}Considera\IeC {\c c}\IeC {\~o}es finais}{12}{section.2.5}
\contentsline {chapter}{\numberline {3}Estado da arte}{13}{chapter.3}
\contentsline {section}{\numberline {3.1}Conceitos tecnol\IeC {\'o}gicos}{13}{section.3.1}
\contentsline {section}{\numberline {3.2}\acl {SGBD}}{14}{section.3.2}
\contentsline {subsection}{\numberline {3.2.1}MySQL}{14}{subsection.3.2.1}
\contentsline {subsection}{\numberline {3.2.2}SQL Server}{14}{subsection.3.2.2}
\contentsline {subsection}{\numberline {3.2.3}PostgreSQL}{14}{subsection.3.2.3}
\contentsline {subsection}{\numberline {3.2.4}Compara\IeC {\c c}\IeC {\~a}o e solu\IeC {\c c}\IeC {\~a}o adotada}{14}{subsection.3.2.4}
\contentsline {section}{\numberline {3.3}Desenvolvimento \textit {web}}{15}{section.3.3}
\contentsline {subsection}{\numberline {3.3.1}ASP.net}{16}{subsection.3.3.1}
\contentsline {subsection}{\numberline {3.3.2}Flask}{16}{subsection.3.3.2}
\contentsline {subsection}{\numberline {3.3.3}Django}{17}{subsection.3.3.3}
\contentsline {subsection}{\numberline {3.3.4}Conclus\IeC {\~o}es e solu\IeC {\c c}\IeC {\~a}o adotada}{18}{subsection.3.3.4}
\contentsline {section}{\numberline {3.4}Desenvolvimento \textit {mobile}}{18}{section.3.4}
\contentsline {subsection}{\numberline {3.4.1}Plataformas nativas}{18}{subsection.3.4.1}
\contentsline {subsection}{\numberline {3.4.2}Multi-plataforma}{19}{subsection.3.4.2}
\contentsline {subsection}{\numberline {3.4.3}Conclus\IeC {\~o}es e solu\IeC {\c c}\IeC {\~a}o adotada}{20}{subsection.3.4.3}
\contentsline {section}{\numberline {3.5}REST \textit {Frameworks}}{20}{section.3.5}
\contentsline {subsection}{\numberline {3.5.1}Django Rest Framework}{20}{subsection.3.5.1}
\contentsline {subsection}{\numberline {3.5.2}Restlet}{21}{subsection.3.5.2}
\contentsline {subsection}{\numberline {3.5.3}Flask-RESTful}{21}{subsection.3.5.3}
\contentsline {subsection}{\numberline {3.5.4}Conclus\IeC {\~o}es e solu\IeC {\c c}\IeC {\~a}o adotada}{21}{subsection.3.5.4}
\contentsline {section}{\numberline {3.6}Microcontroladores}{22}{section.3.6}
\contentsline {subsection}{\numberline {3.6.1}Arduino Nano}{22}{subsection.3.6.1}
\contentsline {subsection}{\numberline {3.6.2}Raspberry Pi 3}{23}{subsection.3.6.2}
\contentsline {section}{\numberline {3.7}Sensores}{24}{section.3.7}
\contentsline {subsection}{\numberline {3.7.1}Sensor de temperatura }{25}{subsection.3.7.1}
\contentsline {subsection}{\numberline {3.7.2}Sensor de luminosidade }{25}{subsection.3.7.2}
\contentsline {subsection}{\numberline {3.7.3}Sensor de salinidade}{26}{subsection.3.7.3}
\contentsline {section}{\numberline {3.8}Tecnologias de comunica\IeC {\c c}\IeC {\~a}o}{26}{section.3.8}
\contentsline {subsection}{\numberline {3.8.1}Bluetooth}{27}{subsection.3.8.1}
\contentsline {subsection}{\numberline {3.8.2}Wi-Fi}{27}{subsection.3.8.2}
\contentsline {subsection}{\numberline {3.8.3}Zigbee}{27}{subsection.3.8.3}
\contentsline {subsection}{\numberline {3.8.4}LoRa}{27}{subsection.3.8.4}
\contentsline {subsection}{\numberline {3.8.5}Sigfox}{28}{subsection.3.8.5}
\contentsline {subsection}{\numberline {3.8.6}Compara\IeC {\c c}\IeC {\~a}o entre tecnologias de comunica\IeC {\c c}\IeC {\~a}o}{28}{subsection.3.8.6}
\contentsline {chapter}{\numberline {4}Sistema de controlo e monitoriza\IeC {\c c}\IeC {\~a}o: arquitetura e modela\IeC {\c c}\IeC {\~a}o}{29}{chapter.4}
\contentsline {section}{\numberline {4.1}An\IeC {\'a}lise de requisitos}{30}{section.4.1}
\contentsline {subsection}{\numberline {4.1.1}Requisitos funcionais}{30}{subsection.4.1.1}
\contentsline {subsection}{\numberline {4.1.2}Requisitos n\IeC {\~a}o funcionais}{32}{subsection.4.1.2}
\contentsline {section}{\numberline {4.2}Descri\IeC {\c c}\IeC {\~a}o global do sistema}{32}{section.4.2}
\contentsline {subsection}{\numberline {4.2.1}Componentes}{33}{subsection.4.2.1}
\contentsline {subsubsection}{\acl {SM}}{34}{section*.64}
\contentsline {subsubsection}{\acl {CM}}{35}{section*.68}
\contentsline {section}{\numberline {4.3}Modela\IeC {\c c}\IeC {\~a}o}{35}{section.4.3}
\contentsline {subsection}{\numberline {4.3.1}Entidades envolvidas}{35}{subsection.4.3.1}
\contentsline {subsection}{\numberline {4.3.2}Casos de uso}{36}{subsection.4.3.2}
\contentsline {subsection}{\numberline {4.3.3}Modelo de dados}{40}{subsection.4.3.3}
\contentsline {section}{\numberline {4.4}Arquitetura l\IeC {\'o}gica}{43}{section.4.4}
\contentsline {section}{\numberline {4.5}Arquitetura f\IeC {\'\i }sica}{44}{section.4.5}
\contentsline {subsection}{\numberline {4.5.1}Sistema de informa\IeC {\c c}\IeC {\~a}o}{45}{subsection.4.5.1}
\contentsline {subsection}{\numberline {4.5.2}Aplica\IeC {\c c}\IeC {\~a}o \textit {web}}{45}{subsection.4.5.2}
\contentsline {subsection}{\numberline {4.5.3}\acs {API} \acs {REST}}{46}{subsection.4.5.3}
\contentsline {subsection}{\numberline {4.5.4}Documenta\IeC {\c c}\IeC {\~a}o interativa}{48}{subsection.4.5.4}
\contentsline {subsection}{\numberline {4.5.5}Implementa\IeC {\c c}\IeC {\~a}o do sistema}{49}{subsection.4.5.5}
\contentsline {subsection}{\numberline {4.5.6}Aplica\IeC {\c c}\IeC {\~a}o mobile}{49}{subsection.4.5.6}
\contentsline {subsection}{\numberline {4.5.7}Simula\IeC {\c c}\IeC {\~a}o em \textit {hardware}}{51}{subsection.4.5.7}
\contentsline {subsubsection}{Sensores utilizados}{51}{section*.84}
\contentsline {subsubsection}{Comunica\IeC {\c c}\IeC {\~a}o}{53}{section*.92}
\contentsline {subsection}{\numberline {4.5.8}Sistema de videovigil\IeC {\^a}ncia }{55}{subsection.4.5.8}
\contentsline {subsubsection}{Biblioteca para processamento de imagem: OpenCV}{57}{section*.101}
\contentsline {subsubsection}{\textit {Streaming} de v\IeC {\'\i }deo: Youtube Live}{57}{section*.102}
\contentsline {section}{\numberline {4.6}Diagrama de componentes}{57}{section.4.6}
\contentsline {section}{\numberline {4.7}Considera\IeC {\c c}\IeC {\~o}es finais}{58}{section.4.7}
\contentsline {chapter}{\numberline {5}Implementa\IeC {\c c}\IeC {\~a}o}{59}{chapter.5}
\contentsline {section}{\numberline {5.1}Sistema de informa\IeC {\c c}\IeC {\~a}o}{59}{section.5.1}
\contentsline {subsection}{\numberline {5.1.1}Sistema de registo e autentica\IeC {\c c}\IeC {\~a}o}{60}{subsection.5.1.1}
\contentsline {subsection}{\numberline {5.1.2}Gera\IeC {\c c}\IeC {\~a}o de alarmes}{62}{subsection.5.1.2}
\contentsline {subsection}{\numberline {5.1.3}Visualiza\IeC {\c c}\IeC {\~a}o dos dados e c\IeC {\'a}lculos estat\IeC {\'\i }sticos}{63}{subsection.5.1.3}
\contentsline {subsection}{\numberline {5.1.4}API}{64}{subsection.5.1.4}
\contentsline {subsection}{\numberline {5.1.5}Documenta\IeC {\c c}\IeC {\~a}o da API}{65}{subsection.5.1.5}
\contentsline {subsection}{\numberline {5.1.6}Aplica\IeC {\c c}\IeC {\~a}o \textit {web}}{66}{subsection.5.1.6}
\contentsline {subsection}{\numberline {5.1.7}\textit {Deploy} do projecto}{67}{subsection.5.1.7}
\contentsline {section}{\numberline {5.2}Simula\IeC {\c c}\IeC {\~a}o em \textit {hardware}}{69}{section.5.2}
\contentsline {subsection}{\numberline {5.2.1}Arduino Nano}{69}{subsection.5.2.1}
\contentsline {subsection}{\numberline {5.2.2}Raspberry Pi 3}{70}{subsection.5.2.2}
\contentsline {section}{\numberline {5.3}Sistema de videovigil\IeC {\^a}ncia}{72}{section.5.3}
\contentsline {subsection}{\numberline {5.3.1}Utiliza\IeC {\c c}\IeC {\~a}o do algoritmo de dete\IeC {\c c}\IeC {\~a}o de intrusos}{72}{subsection.5.3.1}
\contentsline {section}{\numberline {5.4}Considera\IeC {\c c}\IeC {\~o}es finais}{74}{section.5.4}
\contentsline {chapter}{\numberline {6}Testes e resultados}{77}{chapter.6}
\contentsline {section}{\numberline {6.1}Testes funcionais}{77}{section.6.1}
\contentsline {subsection}{\numberline {6.1.1}API REST}{77}{subsection.6.1.1}
\contentsline {subsection}{\numberline {6.1.2}Comunica\IeC {\c c}\IeC {\~a}o via Bluetooth }{78}{subsection.6.1.2}
\contentsline {subsection}{\numberline {6.1.3}Dete\IeC {\c c}\IeC {\~a}o de intrusos}{79}{subsection.6.1.3}
\contentsline {section}{\numberline {6.2}Resultados}{80}{section.6.2}
\contentsline {section}{\numberline {6.3}Considera\IeC {\c c}\IeC {\~o}es finais}{87}{section.6.3}
\contentsline {chapter}{\numberline {7}Conclus\IeC {\~o}es e trabalho futuro}{89}{chapter.7}
\contentsline {section}{\numberline {7.1}Conclus\IeC {\~o}es}{89}{section.7.1}
\contentsline {section}{\numberline {7.2}Problemas encontrados}{90}{section.7.2}
\contentsline {section}{\numberline {7.3}Trabalho futuro}{90}{section.7.3}
\contentsline {chapter}{\numberline {A}\textit {Mockup} da aplica\IeC {\c c}\IeC {\~a}o \textit {mobile}}{101}{appendix.A}
\contentsline {chapter}{\numberline {B}Implementa\IeC {\c c}\IeC {\~a}o do \textit {trigger} \acs {SQL} }{103}{appendix.B}
\contentsline {chapter}{\numberline {C}\acl {API} \acs {REST}}{105}{appendix.C}
\contentsline {chapter}{\numberline {D}\textit {Packages} utilizados}{109}{appendix.D}
\contentsline {chapter}{\numberline {E}Interliga\IeC {\c c}\IeC {\~a}o de componentes}{111}{appendix.E}