UNIVERSIDADE ANHANGUERA – UNIDERP PROGRAMA DE MESTRADO PROFISSIONAL EM PRODUÇÃO E GESTÃO AGROINDUSTRIAL JIYAN YARI DESENVOLVIMENTO DE MINIPLATAFORMA DE COLETA DE DADOS METEOROLÓGICOS PARA PEQUENOS PRODUTORES RURAIS UTILIZANDO AS TECNOLOGIAS LIVRES ARDUINO E ANDROID CAMPO GRANDE - MS 2013
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
UNIVERSIDADE ANHANGUERA – UNIDERP
PROGRAMA DE MESTRADO PROFISSIONAL EM PRODUÇÃO E GESTÃO
AGROINDUSTRIAL
JIYAN YARI
DESENVOLVIMENTO DE MINIPLATAFORMA DE COLETA DE DADOS
METEOROLÓGICOS PARA PEQUENOS PRODUTORES RURAIS UTILIZANDO
AS TECNOLOGIAS LIVRES ARDUINO E ANDROID
CAMPO GRANDE - MS
2013
JIYAN YARI
DESENVOLVIMENTO DE MINIPLATAFORMA DE COLETA DE DADOS
METEOROLÓGICOS PARA PEQUENOS PRODUTORES UTILIZANDO AS
TECNOLOGIAS LIVRES ARDUINO E ANDROID
Dissertação apresentada ao Programa de
Pós-Graduação em nível de Mestrado
Profissional em Produção e Gestão
Agroindustrial da Universidade Anhanguera -
Uniderp, como parte dos requisitos para a
obtenção do título de Mestre em Produção e
Gestão Agroindustrial.
Comitê de Orientação:
Prof. Dr. Celso Correia de Souza
Prof. Dr. José Antônio Maior Bono
CAMPO GRANDE – MS
2013
ii
DEDICO
Dedico este trabalho com todo amor e
respeito a Deus por ter proporcionado tudo
que tenho em minha vida e muito
especialmente aos meus pais por terem, a
vida toda, me estimulado e motivado a
estudar e a deixar um legado positivo à
humanidade, por terem criado em mim a
percepção de humanidade e de cidadania e
ensinado que o trabalho, o sacrifício, a
honestidade, a integridade e a bondade é
que forjam um ser humano.
iii
AGRADECIMENTOS
Agradeço a Deus, meus queridos e amados pais, que sacrificaram suas
vidas para tudo me darem e tudo me ensinarem, Ghassem Yari e Manijeh Astani,
meus amados irmãos Zargham Yari e Sarvin Yari, meus avôs paternos (Setare
Yari e Rahim Yari – in memorian) e maternos (Rohanieh Say Oskui e Nematollá
Astani - in memorian), minha sogra Maria José Pires (Dona Dedé), que por vezes
cuidou de meus filhos com todo o seu amor e carinho, meu sogro Sr. Ademar do
Prado, minha querida e amada esposa, minha fonte de inspiração e minha força,
Alexandra, meus amados filhos pelos quais tenho verdadeira paixão e minha
razão de viver, Jiyanzinho e Laryssa, os quais muitas vezes tive de sacrificar com
a minha ausência neste período de mestrado (que recompensarei em dobro) e
aos queridos amigos do curso de mestrado com os quais tive momentos de
convivência inesquecíveis, com muitas noites de estudos, viagens e alegrias
compartilhadas em sala de aula e finalmente a nossa secretária do mestrado
Alinne Freitas Signorelli, que ajudou a todos neste período de nosso curso da
melhor forma que pôde, aos professores do mestrado Denise Renata Pedrino,
Francisco de Assis Rolim Pereira, Guilherme Cunha Malafaia, Juliane Ludwig,
Marcos Barbosa Ferreira, Ivo Martins Souza (in memorian), Edison Rubens
Arrabal Arias, Fernando Paim Costa, meu co-orientador José Antonio Maior Bono
e meu orientador, Celso Correia Souza, os quais agradeço profundamente pela
paciência, humanidade e profissionalismo com a qual me trataram; e às bandas
Led Zepellin, AC/DC, Iron Maiden, Def Leppard, Pantera, Scorpions, Metallica,
Gun’s and Roses e outras bandas de rock que me ajudaram nas noites em claro
que passei “codando”, testando sensores e módulos e escrevendo a dissertação.
iv
SUMÁRIO
LISTA DE SÍMBOLOS, ABREVIATURAS E NOMENCLATURAS................... vi
LISTA DE QUADROS....................................................................................... ix
LISTA DE FIGURAS.......................................................................................... x
O Android SDK (Software Development Kit – Pacote de
Desenvolvimento de Software) é um pacote de bibliotecas de API (Application
Programming Interface - Interface de Programação de Aplicativos) e ferramentas
de desenvolvimento necessárias para construir, testar e depurar aplicativos para o
Android. O SDK pode ser encontrado no pacote ADT (Android Developer Tools –
Ferramentas de Desenvolvimento Android), no site Developer Android
(http://developer.android.com/sdk/index.html) para os sistemas operacionais
Windows®, MacOS® e Linux para as suas mais diversas versões (DEVELOPER
ANDROID, 2013).
A Figura 13 apresenta os ícones do SDK e AVD na barra de atalhos
do Eclipse.
Figura 13. SDK e AVD na barra de atalhos do Eclipse
26
REFERÊNCIAS BIBLIOGRÁFICAS ANDROID DEVELOPER. Site oficial do Developer Android SDK. Disponível em: <http://www.developer.android.com>. Acesso em: 26 ago. 2013. ARDUINO MILLIS. Site oficial do Arduino Millis. Disponível em: <http://www.arduino.cc/en/Reference/millis>. Acesso em: 10 abr. 2013. ARDUINO UNO. Site oficial do Arduino UNO. Disponível em: <http://www.arduino.cc/en/Main/ArduinoBoardUno>. Acesso em: 25 nov. 2012. BANZI, M. Primeiros passos com Arduino. São Paulo. Novatec Editora, 2011. 152 p. BMP085 Data Sheet. BMP085 Digital Pressure Sensor. Disponível em: <http://www.adafruit.com/datasheets/BMP085_DataSheet_Rev.1.0_01July2008.pdf>. Acesso em: 23 mar. 2013. CAMARGO, C. G. C.; BRAGA, H.; ALVES, R. Mudanças climáticas atuais e seus impactos no Estado de Santa Catarina. Agropecuária Catarinense, v. 19, n. 3, p. 31-35, nov. 2006. DHT22 Data Sheet. Digital relative humidity & temperature sensor RHT03. Disponível em: <http://dlnmh9ip6v2uc.cloudfront.net/datasheets/Sensors/Weather/RHT03.pdf>. Acesso em: 20 fev. 2013.
27
ECLIPSE. Site oficial do Eclipse. Disponível em: <http://www.eclipse.org/documentation/>. Acesso em: 26 ago. 2013. INEMA - Instituto do Meio Ambiente e Recursos Hídricos da Bahia. O que é uma PCD? Disponível em: <http://www.inema.ba.gov.br/wp-content/uploads/2011/10/O-que-%C3%A9-uma-PCD.pdf>. Acesso em: 01 nov. 2012. JOBSTRAIBIZER, F. Criação de aplicativos para celulares com Google Android. São Paulo: Digerati Books. 2009. 128 p. LECHETA, R. R. Google Android - Aprenda a criar aplicações para dispositivos móveis com o Android SDK. 2ª edição. NovaTec Editora, 2010. 608 p. LIMA, C. B.; VILLAÇA, M. B. M. AVR e Arduino as Técnicas de Projeto. Edição dos Autores. Florianópolis - SC. 2a Edição. 2012. 632 p. MACHADO, P. L. O. A. Agricultura de precisão para o manejo da fertilidade do solo em sistema plantio direto. Rio de Janeiro. Embrapa, 2004. 209 p. MAVI, H. S.; TUPPER, G. J. Agrometeorology – Principles and application of climate studies in agriculture. New York: Food Products Press. 2004. 364 p. McROBERTS, M. Arduino básico. [tradução Rafael Zanolli]. São Paulo: Novatec. Editora. Primeira Edição. Setembro 2011. 456 p. MONTEIRO, J. E. B. A. Agrometeorologia dos Cultivos: O fato meteorológico na produção agrícola. Instituto Nacional de Meteorologia. INMET. 1ª Edição. Brasília – DF, 2009. 530 p. PROCESSING. Site oficial do Processing. Disponível em: <http://www.processing.org>. Acesso em: 25 nov. 2012. SD Card Data Sheet. SD Card Shield. Disponível em: <ftp://imall.iteadstudio.com/IM120417007_Stackable_SDCard_shield/DS_IM120417007_StackableSDCardshield.pdf>. Acesso em: 19 abr. 2013. SILVEIRA, J. A. Experimentos com Arduino. Editora Ensino Profisional. 2ª Edição. 2013. 200 p. TERRA, V. S. S.; JÚNIOR, C. R.; TIMM, L. C.; CARVALHO, F. L. C.; PEREIRA, J. F. M. Análise espacial da temperatura e umidade relativa do ar em um pomar de pessegueiro, no município de Morro Redondo - RS. Agricultura de Precisão – Um Novo Olhar. EMBRAPA, 2011. 334 p.
3 ARTIGO
DESENVOLVIMENTO DE MINIPLATAFORMA DE COLETA DE
DADOS METEOROLÓGICOS PARA PEQUENOS PRODUTORES
RURAIS UTILIZANDO AS TECNOLOGIAS LIVRES ARDUINO E
ANDROID
29
DESENVOLVIMENTO DE MINIPLATAFORMA DE COLETA DE DADOS
METEOROLÓGICOS PARA PEQUENOS PRODUTORES RURAIS UTILIZANDO
AS TECNOLOGIAS LIVRES ARDUINO E ANDROID
RESUMO
A agricultura de precisão está se tornando tendência atual no agronegócio,
principalmente pela demanda mundial crescente por alimentos em contrapartida à
diminuição das terras agricultáveis. Para resolver esta problemática, deve haver
melhora da produtividade com redução de custos, assim, a tecnologia tornou-se
aliada no aumento de produção, possibilitando planejar o processo produtivo,
desde o preparo do solo, a colheita, racionalização do uso de fertilizantes,
insumos e o cuidado com o meio ambiente. Assim, a partir do uso de tecnologias
computacionais livres, pretende-se oferecer aos produtores rurais de pequeno
porte, como agricultura familiar e orgânica, solução para a obtenção de dados
meteorológicos confiáveis para auxílio no ciclo produtivo. O objetivo desta
pesquisa foi criar uma miniplataforma agrometeorológica de baixo custo utilizando
o Arduino, que se trata de um conjunto computacional com sensores e
componentes para coleta de dados e o Android, sistema operacional mais
utilizado em dispositivos móveis na atualidade. Os resultados mostraram a
viabilidade na coleta de dados que servirão como subsídios nas tomadas de
decisão do pequeno produtor quando convertidos em ações de planejamento.
Palavras-chave: Agronegócio; agricultura de precisão; tecnologias
computacionais livres; agricultura familiar e orgânica; tomadas de decisão.
30
DEVELOPMENT OF MINIPLATAFORM OF AGROMETEOROLOGICAL DATA
COLLECTION FOR SMALL RURAL PROCUCERS USING THE FREE
TECHNOLOGIES ARDUINO AND ANDROID
ABSTRACT
Precision agriculture is becoming mainstream in agribusiness, mainly by
increasing global demand for food in contrast to the decrease in arable land. To
solve this problem, there should be improvement in productivity with cost
reduction, thus technology became allied in increasing production, enabling plan
production process, from soil preparation, harvesting, rational use of fertilizers,
inputs and care for the environment. Thus, from free use of computer
technologies, we intend to provide small farmers, like organic and family
agriculture, solution for obtaining reliable weather data to aid in the production
cycle. The objective of this research was to create a agrometeorological
miniplataform low cost using the Arduino, which is a computational conjunction
with sensors and components for data collection and the Android operating system
used in most mobile devices today. The results showed the feasibility of collecting
data that will serve as inputs in decision making of the small producer wh en
O avanço da agricultura de precisão alavanca cada dia mais o
desenvolvimento do agronegócio e tem motivado tecnologias antes destinadas a
outros nichos de mercado a serem cada vez mais aplicadas, como produtos e
serviços, a atender a demanda crescente deste setor produtivo. Tecnologias
como sistemas de automação, monitoramento e sensoriamento remoto tem
alcançado o meio rural, trazendo benefícios e consolidando o uso de técnicas que
permitem a melhoria na qualidade e quantidade de produtos agropecuários dentro
do mesmo espaço, aumentando com isso a competitividade e a produtivicade no
campo.
Para Silva et al. (2012), a agricultura de precisão relaciona conceitos
inovadores e desafiadores que interagem de forma bastante coesa com a
otimização da produtividade em contrapartida a um menor impacto ambiental
possível. Portanto, o diferencial para a adoção da agricultura de precisão deve
estar fundamentada na redução do uso de insumos e de agrotóxicos, refletindo
em uma melhoria na preservação do meio ambiente, ao mesmo tempo em que
propicia um aumento da produtividade com reflexos na melhoria da
competitividade, propiciando maiores ganhos financeiros.
Mantovani et al. (2005) explica que existem três fases distintas que
compõem a agricultura de precisão: coleta dos dados meteorológicos através dos
sensores Data Loggers (coletor/gravador de dados) e GPS (Global Position
System – Sistema Global de Posicionamento), instalados nos equipamentos de
colheita; organização dos dados em mapas, interpretação e diagnóstico e;
interferência no sistema de produção.
Neste contexto, tecnologias livres tais como o Arduino e Android
tornam-se alternativas interessantes ao pequeno produtor uma vez que ambas
têm baixos custos, o que permite o acesso à essas tecnologias em todo ciclo
produtivo rural.
Margolis (2011) descreve que o Arduino foi projetado para ser de
fácil uso aos iniciantes, àqueles que não possuem conhecimento de programação
ou de eletrônica, e que com ele se pode construir objetos que respondam à ação
de luz, som, toque e movimento, sendo utilizado, também, para criar uma
32
infinidade de projetos, incluindo instrumentos musicais, robôs, esculturas de luz,
jogos,roupas interativas, entre outros.
Para realizar a leitura dos dados gravados pela miniplataforma a
partir do Arduino foi criado um software utilizando-se a plataforma Android, e seu
principal ambiente de programação é o IDE Eclipse, que realiza a leitura
diretamente do dispositivo de armazenamento, inserindo-a no equipamento e
retornando os valores na tela do telefone celular, smartphone ou tablet.
Jobstraibizer (2009) define o Android como um sistema operacional
Open Source (Código Aberto) para dispositivos móveis, adquirido pelo Google em
2005, de empresa de mesmo nome que atuava na área, com o objetivo de
abranger seus softwares ao maior número possível de usuários, que tem como
símbolo um pequeno robô de cor verde e é atualmente o sistema operacional
mais utilizado em dispositivos móveis.
O objetivo geral desta pesquisa é o de criar uma miniplataforma de
coleta de dados agrometeorológicos, de baixo custo, utilizando-se tecnologias
computacionais livres. Para tanto tem os seguintes objetivos específicos: realizar
consultas aos Data Sheet (Manuais Técnicos), livros especializados e sites dos
fabricantes dos componentes e dos sensores que foram utilizados no experimento
e no desenvolvimento do equipamento; compreender as tecnologias que foram
adotadas, tanto com relação ao uso adequado do hardware envolvido, como dos
códigos envolvidos para o seu devido funcionamento; conhecer as técnicas de
programação para a formatação dos dados de saída; conhecer o contexto
histórico que problematizou a necessidade da construção de alternativas para a
agricultura de precisão; descrever a modelagem do protótipo da miniplataforma, a
confecção e a programação; realizar testes para observar o funcionamento do
protótipo; apresentar a planilha de custos do protótipo da miniplataforma e;
apresentar planilha sobre as limitações do protótipo como a autonomia de
baterias, alcance, etc.
33
3.2. MATERIAL E MÉTODOS
3.2.1. Material
Foram utilizados diversos materiais no trabalho entre hardwares e
softwares, descritos a seguir.
Hardwares:
- 01 Kit Arduino UNO Rev3 (Arduino e cabo USB conector de dados e energia);
- 01 Protoboard;
- 01 Sensor de temperatura e umidade DHT22;
- 01 Sensor de pressão e altitude BMP085;
- 01 Módulo de Leitura/Escrita Cartão SD;
- 01 Resistor 10 KΩ;
- 08 Fios jumper Premium macho de 20 cm;
- 17 Fios jumper Premium macho de 10 cm;
- 01 conector de energia;
- 01 chave liga/desliga;
- 01 cartão de armazenamento de memória Flash SD;
- 02 baterias de celular Li-ion usadas de 3,7 V e 1000 mAh;
- 01 placa solar 6 V e 400 mA (13 x 13 cm);
- 01 Notebook (Core i3 – QuadCore, 4 GB memória RAM e 500 GB de disco
rígido).
Softwares:
- Sistema operacional: Linux Ubuntu 13.04 ou Microsoft Windows 8®;
- Software Processing Arduino: arduino-1.0.5-linux64 ou arduino-1.0.5-
windows.exe.
- ADT Bundle: adt-bundle-linux-x86_64-20130219 ou ADT-bundle-windows-
x86_64-20131030.zip.
3.2.2. Métodos
A metodologia adotada para o desenvolvimento de uma
miniplataforma de coleta de dados meteorológicos foi o desenvolvimento e o
34
delineamento. O trabalho constitui-se de uma pesquisa experimental e explicativa,
baseado na criação de um hardware e de softwares que regulam e formatam suas
funcionalidades e seus resultados.
3.2.2.1. Implementação do projeto
A implementação deste trabalho se divide nas seguintes etapas:
- Testes no Arduino;
- Sensores e módulo;
- Protótipo;
- Aplicação do Android.
3.2.2.1.1. Testes no Arduino
Esta fase foi determinada pelos testes de funcionamento realizados
na placa Arduino Uno Rev3, tais como:
- ligação dos cabos na placa e no notebook;
- verificação de resposta (via Leds) do fornecimento de energia;
- upload (transferência) de programas-exemplos à placa;
- verificação da resposta a programa-exemplo que utiliza saída de sinal luminoso
via Led e;
- verificação da resposta a programa-exemplo via saída serial do Processing.
3.2.2.1.2. Sensores e módulo
Esta fase consistiu na montagem inicial de todos os sensores e
módulos e códigos de forma individual, de forma a realizar os testes de ligação e
código e, posteriormente, foram realizadas as interconexões com todos os
sensores e o módulo, junção de seus códigos e testes posteriores de coleta de
dados.
O sensor DHT22:
Segundo o DHT22 Data Sheet (2013), o esquema de interligação
segue seguinte determinação:
35
- pino 1: na alimentação de energia de 5 V do Arduino;
- pino 2: ligado a um resistor de 10 KΩ e deste na alimentação de energia de 5 V
do Arduino;
- pino 2: na entrada PWM 5 na placa, e que consta no código a interligação com o
PWM 5 (#define DHT22_PIN 4) na entrada 4 do Arduino, que é um dos pinos de
entrada digital do Arduino, responsável pelo envio dos dados do sensor ao
Arduino;
- pino 3: sem ligação;
- pino 4: ligado ao terra (neutro) via protoboard no GND do Arduino .
A Figura 14 especifica o esquema de ligações do sensor DHT22 ao
Arduino utilizando-se protoboard.
Figura 14. Esquema de ligação do DHT22 ao Arduino Fonte: Mlstatic (2013).
A Figura 15 ilustra as ligações realizadas, havendo apenas a
substituição das cores de alguns dos fios jumper com relação ao esquema devido
à ausência das cores sugeridas, porém obedecidas todas as interligações e
disposições ilustradas.
36
Figura 15. Protótipo ligando o sensor DHT22 ao Arduino Fonte: Imagem de fonte própria.
Realizadas as ligações, o conjunto foi ligado ao notebook via cabo
USB e executados os passos:
- inicialização do ambiente de programação Processing;
- inserção do código;
- importação a biblioteca DHT22.h para o diretório libraries;
- verificação e depuração de erros;
- envio do código ao Arduino;
- execução e verificação dos dados coletados via saída serial.
Sensor BMPO85:
Segundo o BMP085 Data Sheet (2013), o esquema de ligação, que
não utilizou protoboard, seguiu as especificações descritas a seguir:
- pino 1 (VCC): ligado ao Arduino na conexão de alimentação de energia
de 5 V (fio vermelho);
- pino 2 (GND): na conexão terra ou neutro (fio preto);
- pino 5 (SCL - Relógio Serial): ligado à conexão ANALOG IN 5 (fio verde);
- pino 6 (SDA - Dados Serial): ligado na ANALOG IN 4 (fio azul).
O esquema de interligação do BMP085, sem o uso de protoboard,
está ilustrado na Figura 16.
37
Figura 16. Esquema de ligação do sensor BMP085 ao Arduino Fonte: Mlstatic (2013).
A Figura 17 mostra a ligação do BMP085 realizada diretamente na
placa Arduino, havendo a substituição das cores de alguns dos fios jumper com
relação ao esquema da Figura 16 devido à ausência das cores do esquema, no
entanto todas as interligações e disposições foram realizadas corretamente.
Figura 17. Protótipo ligando o sensor BMP085 diretamente ao Arduino
Após a montagem foram realizados os passos:
- inicialização o ambiente de programação Processing;
- inserção do código;
- importação da biblioteca BMP085.h para o diretório libraries;
- verificação e depuração de erros;
- envio do código;
38
- execução e verificação dos dados coletados via saída serial.
Data e hora:
Neste passo foram realizados testes na rotina de registro de data e
hora com o uso da função millis(), com uma função específica para contagem e
tratamento do tempo decorrido, retornando o número de milissegundos desde o
início da execução do código enviado. Para realizar os cálculos utilizaram-se as
variáveis: seg, min, hor, dia, mes e ano que interagindo com a função millis() e o
código incrementam cada uma de forma a avançar sucessivamente registrando
devidamente a hora e a data (ARDUINO MILLIS, 2013).
Para a análise do registro de data/hora foram realizados os passos:
- inicialização o ambiente de programação Processing;
- inserção do código;
- verificação e depuração de erros;
- envio do código;
- execução e verificação dos dados coletados via saída serial.
Nesta fase, utilizando-se o código pode-se inserir uma rotina de
código para definir a periodicidade de escrita no cartão de memória, que se
estabeleceu que fosse de hora em hora.
Módulo SD Card:
O módulo de cartão SD possui 16 pinos, organizados e funcionando
em 8 pares, que são ligadas ao Arduino da seguinte forma (SD CARD DATA
SHEET, 2013):
- pinos 1 e 2 (par 1): terra (neutro) conectado ao GND;
- pino 3 e 4 (par2): + 3,3V - conectado à saída 3,3V;
- pinos 5 e 6 (par 3): + 5v - não conectado;
- pinos 7 e 8 (par 4): SDCS - conectado à entrada digital PWM 7 do Arduino;
- pinos 9 e 10 (par 5): MOSI - conectado à entrada digital PWM 11;
- pinos 11 e 12 (par 6): SCK - conectado à entrada digital PWM 13;
- pinos 13 e 14 (par 7): MISO - conectado à entrada digital PWM 12;
- pinos 15 e 16 (par 8): GND - não conectado.
A Figura 18 mostra a especificação das ligações do Módulo SD Card
ao Arduino diretamente, sem uso de protoboard.
39
Figura 18. Interligação das conexões do Módulo de Cartão SD Fonte: Webtronico (2013).
A Figura 19, por sua vez, ilustra as ligações do módulo SD Card
realizadas utilizando-se o protoboard.
Figura 19. Protótipo da miniplataforma com o módulo de cartão de memória
Após a montagem do módulo procedeu-se utilizando os passos a
seguir:
- inicialização o ambiente de programação Processing;
- inserção do código;
- verificação e depuração de erros;
- envio do código;
- execução e verificação dos dados coletados via saída serial.
40
3.2.2.1.3. Protótipo
Encerrada a fase de montagem, instalação, codificação, depuração
e captação dos dados de cada um dos sensores DHT22, BMP085, da rotina de
Data/Hora e do módulo SD Card separadamente, o passo a seguir consistiu na
integração de todos os sensores e módulos no protótipo e da integração de todos
os códigos, para que a coleta e leitura e retorno (via saída serial) dos dados
pudesse ser feito de forma unificada.
Os passos percorridos foram:
- interligação dos sensores e módulo ao protoboard e ao Arduino;
- inicialização do ambiente de programação Processing;
- inserção do código unificado (DHT22, BMP085, rotina Data/Hora e SD Card);
- verificação e depuração de erros;
- envio do código;
- execução e verificação dos dados coletados via saída serial.
A Figura 20 mostra o protótipo com os sensores DHT22, BMP085 e
o módulo SD Card conectados ao Arduino via protoboard.
Figura 20. Protótipo de miniplataforma com todos os seus componentes
41
3.2.2.1.4. Aplicação Android
Como complementar a coleta de dados pela miniplataforma foi
criada uma aplicação, chamada de DroidReport, que possibilita a leitura dos
dados coletados em loco via Cartão SD, quando retirado do protótipo e inserido
no tablet ou smartphone, realize a leitura dos dados nele armazenados.
O ambiente Eclipse trata-se de uma Interface de Desenvolvimento
Integrado (IDE) para desenvolvimento de aplicações Android. Os arquivos
utilizados para criar o app (aplicativo) foram (ECLIPSE, 2013):
- MainActivity.java: localizado no diretório src/com.droidpoint/, arquivo que define
as funcionalidades Java da aplicação Android;
- R.java: localiza-se no diretório gen/com.droidreport/, este arquivo une os códigos
e funcionalidades do MainActivity.java e activity_main.xml, ou seja, arquivo que
automaticamente vai sendo escrito à medida que códigos são inseridos no
arquivos citados; este arquivo não deve ser alterado, pois o próprio sistema IDE
(Eclipse-ADTBundle) se encarrega de escrevê-lo;
- activity_main.xml: localiza-se no diretório res/layout/, é o arquivo de layout da
tela principal do aplicativo Android;
- AndroidManifest.xml: localiza-se no diretório raíz da aplicação, este arquivo é o
sistema nervoso central da aplicação Android, onde se definem todas as
funcionalidades da aplicação.
3.3. RESULTADOS E DISCUSSÃO
A coleta dos resultados dos testes nos sensores, módulo e códigos
associados foi iniciada com o DHT22 que, montado, depurado e corrigidos os
erros, foi transferido para memória flash do Arduino e executado, que resultou na
saída serial do Processing, que segundo Processing (2013), trata-se da interface
de programação do Arduino. A Figura 21 ilustra o Processing e sua saída serial.
42
Figura 21. Saída serial dos dados coletados pelo sensor DHT22
A seguir, após a montagem do sensor BMP085, inserção e
depuração de seu código, foi realizado o upload (transferência) do programa. Os
resultados são visualizados conforme a Figura 22.
Figura 22. Saída serial dos dados coletados pelo sensor BMP085
43
O passo posterior foi o de realizar os testes de Data/Hora que, após
testes exaustivos de geração de código e resolução dos seus problemas, gerou a
saída desejada, ilustrada na Figura 23.
Figura 23. Saída serial do código de temporização de hora e data
Finalmente se realizou os testes com o módulo de cartão SD Card e
a geração de seus respectivos código, que também demandou de longas
tentativas de acerto até que houvesse a saída desejada conforme a Figura 24.
44
Figura 24. Saída serial do código do Módulo Cartão SD
Após os testes individuais de cada um dos itens descritos houve a
junção de todos os sensores e módulo e também de seus respectivos códigos, de
forma que o resultado fosse a coleta conjunta de dados necessários para que se
configurasse uma miniplataforma.
A interligação dos componentes seguiu os mesmos esquemas de
quando conectados individualmente, iniciando pelo DHT22, passando pelo
BMP085 e finalizando com o módulo de leitura/gravação SD Card.
A seguir houve o trabalho de se reunir os códigos gerados que
foram:
- DHT22;
- BMP085;
- Data/Hora;
- SD Card.
Em todos os passos, tanto nos testes individuais dos códigos,
quanto da sua junção em um programa único, houve a necessidade de testes de
depuração dos erros, ora causados por questões de sintaxe, geralmente
ocasionados por grafia errada de comandos, nomes de variáveis ou chaves sem
45
serem fechadas, os quais foram resolvidos de forma mais simples apenas
fazendo uma releitura do código; ou ora causados por problemas lógicos, que são
mais difíceis de serem detectados e resolvidos, como, por exemplo, erros de
portas lógicas ou digitais, mal declaradas, os quais não impedem que o código
compile e seja executado, mas provocam saídas erradas de dados, necessitando
que seja realizado um teste de depuração minucioso de item por item, já que nem
sempre estes erros são apontados pelo programa depurador (debugger).
Alguns erros de lógica foram causados pelo uso de bibliotecas
(libraries) e funções erradas, já que se constatou, durante a fase de codificação,
haver vários disponíveis para o mesmo sensor, de fabricantes diferentes,
ocasionando assim a impossibilidade de execução (havendo erros de código não
se permite o envio) ou mau funcionamento dos sensores.
As bibliotecas utilizadas no trabalho são:
- DHT22.h
- Adafruit_BMP085.h
- Wire.h - disponível no diretório libraries do Arduino;
- millis() - função disponível no Arduino;
- SD.h - disponível no diretório libraries do Arduino.
A associação dos códigos dos sensores, temporizador e do cartão
SD foi concluído após diversas tentativas, havendo necessidade de se alterar
códigos, testar bibliotecas diferentes, resolver os problemas gerados, testar
formato de saída e realizar os cálculos necessários, como por exemplo, o da
conversão da pressão de Pascal para Atmosfera e o de altitude para altitude real.
Após repetidas tentativas de acerto, obteve-se os resultados
desejados de forma que o protótipo funcionou corretamente, fez leitura e coleta
dos dados e também conseguiu gravar os dados no Cartão SD de forma
totalmente satisfatória conforme ilustra a Figura 25.
46
Figura 25. Saída do código final da miniplataforma
Em seguida, houve a inserção no sistema das baterias para
fornecimento de energia de forma autônoma, já que com a conexão via cabo USB
o sistema era abastecido pela energia gerada pelo notebook.
O Arduino necessita de uma voltagem (ddp – diferença de potencial)
acima de 6 V (entre 6 a 20 V), recomendando-se entre 7 a 12 V. Cada bateria
possui voltagem em torno de 3,7 V por padrão, portanto, abaixo da necessidade
recomendada, logo interligou-se as em série (polo positivo de um ligado ao polo
negativo do outro) para alcançar voltagem acima de 7 V, resultando sua soma
valor aproximado de 8,3 V.
A Figura 26 mostra a voltagem medida, utilizando-se um multímetro
digital, das baterias usadas de telefone celular já ligadas em série, ou seja, o pólo
positivo de um ligado no polo negativo de outro e os outros polos livres para
serem conectados ao protótipo.
47
Figura 26. Baterias ligadas em série e sua voltagem correspondente
Para que o sistema fosse auto carregável, sem interferência humana
constante para troca de pilhas ou baterias, correndo o risco de ficar descarregado,
utilizada placa solar, que converte energia luminosa em energia elétrica, ligando-a
as baterias para que sejam constantemente carregadas.
A conexão do conjunto foi realizada via protoboard, interligando-as
de forma que, enquanto houver luz solar suficiente, possa carregar as baterias,
sempre as deixando com carga suficiente para abastecer o protótipo.
Os testes realizados demonstraram que as baterias estavam sendo
carregadas pela placa solar durante o período do dia, possibilitando, portanto, que
a miniplataforma fosse autossuficiente no que concerne à necessidade de
energia.
A Figura 27 mostra a voltagem medida, utilizando-se um multímetro
digital, do conjunto todo, com sensores, módulo, baterias e placa interligados
formando a miniplataforma.
48
Figura 27. Protótipo montando em funcionamento
O teste de medida de voltagem da Figura 27 foi realizado às 16 h 34
min, ou seja, com o sol em seu pico descendente, resultando em uma medição
aproximada de 8,36 V, podendo este valor ultrapassar os 12 V com picos de
intensidade maior do sol, portanto, mais do que suficiente, mesmo em seu
período de intensidade mais fraca (8,36 V), para carregar as baterias que
fornecem energia ao protótipo e de manter o equipamento funcionando
corretamente.
A Figura 28 mostra o protótipo em sua configuração final com os
seguintes componentes:
- 01 placa Arduino UNO Rev3;
- 01 protoboard;
- 18 fios jumper;
- 01 sensor temperatura e umidade DHT22;
- 01 sensor de pressão barométrica e altitude BMP085;
- 01 módulo de cartão SD;
- 01 cartão SD de 2 GB (dois Giga Bytes);
- 02 baterias de celular usadas ligadas em série;
- 01 placa solar.
49
Figura 28. Protótipo com o Led indicador de energia aceso
A Figura 28 mostra que o conjunto baterias/placa solar está
funcionando de forma autônoma, observado mediante a iluminação do Led
indicador do Arduino, pois quando este está iluminado (HIGH – alto/aceso) há a
indicação de que está recebendo a energia necessária para operar. Em teste de
campo, realizado durante o período do dia e, posteriormente, durante a noite,
verificou-se que houve a coleta e escrita dos dados.
A Figura 29 apresenta o protótipo acomodado em um recipiente
hermético, que possibilita que a miniplataforma seja colocada a campo para seu
funcionamento sem que as intempéries da natureza, como sol e chuva afetem os
circuitos, conexões, sensores e módulos com o passar do tempo.
Figura 29. Miniplataforma em caixa hermética
50
Com relação aos custos, que foram calculados sempre com o
objetivo de se obter o menor valor possível, justificando o uso de tecnologias
livres, de forma a possibilitar a montagem de um conjunto que fosse funcional,
prático, útil e de fácil acesso, inclusive dos softwares criados, a todos os
produtores rurais. O Quadro 4 apresenta o custo dos componentes e dos
softwares utilizados no protótipo.
QUADRO 4. Custo dos componentes e dos softwares utilizados no protótipo
Quantidade Item Valor unitário (R$)*
Valor total (R$)
01 Placa Arduino Uno Rev3 + cabo USB 39,00 39,00
01 Protoboard 10,00 10,00
23 Fio jumper 0,20 4,60
01 Sensor DHT22 20,00 20,00
01 Sensor BMP085 20,00 20,00
01 Módulo SD Card 10,00 10,00
01 Cartão memória SD Card – 2 GB 10,00 10,00
02 Bateria de celular – usado 0,00 0,00
01 Placa Solar 34,00 34,00
01 Conector de energia 1,00 1,00
01 Chave liga/desliga 1,00 1,00
01 Caixa hermética 20,00 20,00
Total geral 170,00
* Os preços pesquisados são referentes à data de 15 de outubro de 2013, portanto, podendo sofrer alterações para maiores ou menores valores.
O Quadro 4 representa os gastos realizados na compra de
hardwares e demais componentes, já que os softwares utilizados são livres (Free
Software), que foram feitos durante o processo de implementação do protótipo,
porém deve ser levado em conta que por ser uma proposta de protótipo, portanto
experimental, poderá ter seus custos significativamente reduzidos em caso de
uma produção em série.
51
A consulta dos preços dos componentes utilizados realizada em
sites de comércio de componentes eletrônicos indica que quando adquiridos em
lotes (atacado), sofrem uma redução de custos de aproximadamente 40%
(quarenta por cento), sendo nestas condições enviados sem a cobrança de taxa
de entrega, que possibilita, portanto, se aproximar dos valores calculado no
Quadro 5.
QUADRO 5. Valor total dos componentes e dos softwares adquiridos no atacado
Valores calculados Porcentagem (%) Valor (R$)
Total geral (Quadro 4) 100 170,00
Redução de custos (compra por atacado) 40 68,00
Total com redução de custos 60 102,00
O valor de R$ 102,00 (cento e dois reais) pode ser considerado
extremamente viável em contrapartida aos enormes benefícios, em termos das
informações fornecidas, que a miniplataforma pode trazer ao produtor rural em
vista de outros equipamentos similares que existem no mercado.
Com relação à confecção de software para o sistema operacional
Android, executando os códigos e mensurando os seus resultados no emulador
AVD, analisando o layout na tela e a forma como os dados serão visualizados
pelo usuário, foi escrito o código, depurados os seus erros e testado à exaustão
até obter êxito na formatação dos dados da forma desejada. A Figura 30 ilustra a
interface do ambiente de programação Eclipse juntamente à máquina virtual AVD
(Dispositivo Virtual Android) emulando a execução da aplicação DroidReport.
52
Figura 30. Tela do Eclipse, a aplicação no emulador AVD e o seu layout
Após a fase de testes no AVD, a aplicação DroidReport.apk, nome
do arquivo de instalação, gerado pelo Eclipse, foi copiada em cartão SD,
transferida aos dispositivos móveis tablet e smartphone visualizadas na Figura 31.
Figura 31. Smartphone fazendo leitura dos dados da Miniplataforma
A Figura 32 mostra a tela do Tablet com a aplicação DroidReport
sendo executada.
53
Figura 32. Tablet fazendo leitura dos dados da miniplataforma
Foi realizado também o upload (transferência) da aplicação,
DroidReport.apk, para site localizado em servidor próprio
(https://www.insecure.net.br/droidreport.html), para que fosse realizado o teste de
seu download (transferência para os aparelhos), o qual foi realizado com sucesso,
tanto a sua transferência como a sua instalação nos dois dispositivos (tablet e
smartphone).
Terminadas as fases de transferência e instalação, o cartão de
memória com os dados meteorológicos coletados e gravados, foi colocado em
ambos os dispositivos móveis (tablet e smartphone) e utilizando-se a aplicação
DroidReport obteve-se a leitura dos resultados gerados diretamente do cartão,
como era esperado e que fora mensurado nos testes realizados anteriormente no
AVD.
Após os testes de funcionamento, coleta de dados, energia,
armazenamento e software foi realizada a colocação da miniplataforma em
campo, no Centro Meteorológico da Universidade para o Desenvolvimento do
Estado e da Região do Pantanal – UNIDERP, junto à Plataforma Vantage Pro2 –
Duo, da empresa Davis Corporation & Co., fabricado no Estados Unidos da
América - EUA para efeito de validação dados e cálculo de possíveis erros do
protótipo em relação ao equipamento certificado.
54
A coleta de testes de validação foi realizada das 8:30 h do dia 20 de
abril de 2014 às 5:50 h do dia 22 de abril de 2014, sendo realizadas coletas de
dados de temperatura (em graus Celsius), de umidade relativa do ar (em
porcentagem) e da pressão (em Bar) realizados de 5 em 5 minutos, por esta ser a
periodicidade de coleta do equipamento certificado.
A Figura 33 mostra a planilha comparativa com data, hora,
temperatura, umidade e pressão do equipamento certificado e da miniplataforma.
Figura 33. Planilha comparativa entre dados do equipamento certificado e da miniplataforma
A Figura 34 ilustra gráfico de linhas comparativo entre as
temperaturas, em graus Celsius (0C), do equipamento certificado e da
miniplataforma.
55
Figura 34. Gráfico comparativo das temperaturas em graus “Celsius” medidas pelo equipamento certificado e da miniplataforma
A Figura 35 ilustra gráfico de linhas comparativo entre as pressões,
em Bar, do equipamento certificado e da miniplataforma.
Figura 35. Gráfico comparativo das pressões “Bar” medidas pelo equipamento certificado e da miniplataforma
56
A Figura 36 ilustra gráfico de linhas comparativo entre as umidades
relativas do ar, em porcentagem (%), do equipamento certificado e da
miniplataforma.
Figura 36. Gráfico comparativo das umidades relativas do ar em porcentagem (%) medidas pelo equipamento certificado e da miniplataforma
Após a coleta dos dados, comparação em planilha e geração de
gráficos, foi realizado o cálculo dos erros dos dados gerados pelo equipamento
certificado e pela miniplataforma, em que foi utilizado o método do erro
quadrático. A Figura 37 ilustra o erro quadrático médio calculado em relação às
temperaturas coletadas que gerou um valor de: 0,01198309, ou seja, um erro
quadrático médio aproximado de 1,2%.
57
Figura 37. Gráfico de erro quadrático médio entre as temperaturas do equipamento certificado e da miniplataforma
A Figura 38 ilustra o erro quadrático médio calculado em relação às
umidades coletadas que gerou um valor de: 0,00034634, ou seja, um erro
quadrático médio aproximado de 0%.
Figura 38. Gráfico de erro quadrático médio entre as umidades medidas pelo equipamento certificado e da miniplataforma
58
A Figura 39 ilustra o erro quadrático médio calculado em relação às
pressões coletadas que gerou um valor de: 9,4085E-05 ou 9,4085x105, ou seja,
um erro quadrático médio aproximado de 0%.
Figura 39. Gráfico de erro quadrático médio entre as pressões medidas pelo equipamento certificado e da miniplataforma
A análise dos erros gerados resulta em erros baixos, em torno de
1,2% para as temperaturas comparadas e de 0% para umidade e pressão,
possibilitando concluir que os erros gerados estão dentro da margem satisfatória
e desejada para que a coleta de dados agrometeorológicos seja confiável com a
miniplataforma construída no projeto com os seus sensores, módulos e códigos
utilizados.
3.4 CONCLUSÃO
A agricultura de precisão pode ser apontada como um dos fatores
que poderá auxiliar significativamente na melhoria de produtividade e de gestão
do agronegócio, de forma a melhorar a competitividade em um mercado cada vez
mais exigente, possibilitando diminuir custos, aumentar a qualidade, melhorar a
quantidade da produção no mesmo espaço e até podendo contribuir com a
59
preservação ambiental, desde que se consiga racionalizar o uso de insumos e
defensivos, largamente utilizados na atualidade.
O protótipo da miniplataforma desenvolvido neste trabalho alcança
suas pretensões e vislumbra ampliações futuras de suas funcionalidades, já que
se trata de projeto modular, permitindo, assim, que se agreguem outros
componentes ao conjunto para coleta e leitura de demais dados
agrometeorológicos que se julgue necessário para determinada cultivar ou que
para alguma necessidade pontual para regiões com climas e relevos específicos.
Dessa forma, o protótipo da miniplataforma desenvolvido neste
trabalho alcança seus objetivos e ainda vislumbra aperfeiçoamentos de futuras
funcionalidades, já que por se tratar de um projeto modular, permite agregar a
coleta e leitura de outros dados agrometeorológicos relevantes como: velocidade
do vento, luminosidade, umidade do solo, sensor de chuva e captação automática
de índice pluviométrico.
Destaca-se que com o protótipo da miniplataforma desenvolvido
nesta pesquisa obteve-se resultados desejados, funcionando corretamente para
um modelo de protótipo, fazendo leituras e coleta dos dados de forma correta e
programada, tudo agregado ao fator custo, que ficou dentro das expectativas
estimadas do projeto.
Portanto, baseada nos resultados obtidos, entre montagem do
protótipo, inserção de sensores, módulos, códigos e dos cálculos dos erros
permite concluir que se trata de proposta bastante viável, principalmente por
possibilitar o seu alcance aos produtores rurais de pequeno porte, agricultura
familiar, orgânica e de subsistência no que tange às tecnologias utilizadas e aos
custos envolvidos.
60
REFERÊNCIAS BIBLIOGRÁFICAS ARDUINO MILLIS. Site oficial do Arduino Millis. Disponível em: <http://www.arduino.cc/en/Reference/millis>. Acesso em: 10 abr. 2013. ARDUINO UNO. Site oficial do Arduino UNO. Disponível em: <http://www.arduino.cc/en/Main/ArduinoBoardUno>. Acesso em: 25 nov. 2012. BMP085 Data Sheet. BMP085 Digital Pressure Sensor. Disponível em: <http://www.adafruit.com/datasheets/BMP085_DataSheet_Rev.1.0_01July2008.pdf>. Acesso em: 23 mar. 2013. DHT22 Data Sheet. Digital relative humidity & temperature sensor RHT03. Disponível em: <http://dlnmh9ip6v2uc.cloudfront.net/datasheets/Sensors/Weather/RHT03.pdf>. Acesso em: 20 fev. 2013. ECLIPSE. Site oficial do Eclipse. Disponível em: <http://www.eclipse.org/documentation/>. Acesso em: 26 ago. 2013. FONSECA, E. G. P.; BEPPU, M. M. Apostila Arduino. Niterói. Universidade Federal Fluminense - UFF. 2010. 23 p. JOBSTRAIBIZER, F. Criação de aplicativos para celulares com Google Android. São Paulo: Digerati Books. 2009. 128 p. MANTOVANI, E. C.; COELHO, A. M.; MATOSO, M. J. Agricultura de Precisão. 2005. Disponível em: <http://www.embrapa.br/imprensa/artigos/2005/ArtigoAgriculturaPrecisao/>. Acesso em: 30 de ago. de 2013. MARGOLIS, M. Arduino Cookbook. USA, Editora O'REILLY. 1ª edição. 2011. 634 p. PROCESSING. Site oficial do Processing. Disponível em: <http://www.processing.org>. Acesso em: 25 nov. 2012. SD Card Data Sheet. SD Card Shield. Disponível em: <ftp://imall.iteadstudio.com/IM120417007_Stackable_SDCard_shield/DS_IM120417007_StackableSDCardshield.pdf>. Acesso em: 19 abr. 2013. SILVA, C. B.; MORETTO, A. C.; RODRIGUES, R. L. Viabilidade econômica da agricultura de precisão: o caso do Paraná. Disponível em: <http://www.sober.org.br/palestra/12/12O499.pdf>. Acesso em: 30 de ago. de 2013.