JAVA
P R O G R A M A Ç Ã O O R I E N T A D A A O B J E T O S
P A R A A R D U I N O U S A N D O J A V A
.INO
A u t o r :
F r a n c i s c o N e w t o n R o c h a G o m e s
O r i e n t a d o r :
P r o f . D r . L e o n a r d o D a n i e l T a v a r e s
M B A E M P R O J E T O D E
A P L I C A Ç Õ E S J A V A
J u n h o - 2 0 1 6
T H E L O G O
JAVA
.INO
JAVA
.INO
C O N T E X T U A L I Z A Ç Ã O
Sistemas embarcados (desenvolvimento e evolução)
Internet das Coisas e objetos inteligentes
Protótipos (plataformas de hardware e software)
Microcontroladores, sensores e atuadores
Programação (paradigmas e metodologias)
P R O B L E M A
A programação utilizada na plataforma Arduino utiliza em sua
essência a metodologia estruturada através de sua linguagem
própria, baseada na linguagem de programação C.
Atualmente os padrões de desenvolvimento utilizados pelas
linguagens de programação mais modernas utilizam a
metodologia de programação orientada a objetos, a qual aplica
uma abordagem de alto nível de abstração proporcionando
várias vantagens de seu uso nos ambientes de desenvolvimento
de programas.
JAVA
.INO
P R O B L E M A
Como aplicar a metodologia de Programação
Orientada a Objetos em alto nível de abstração
para projetos que utilizam a plataforma de
prototipagem Arduino, com a linguagem de
programação Java ?
JAVA
.INO
O B J E T I V O S
O objetivo geral deste trabalho é desenvolver uma plataforma de
software capaz de aplicar a programação orientada a objetos para a
criação de programas na plataforma Arduino, proporcionando uma
evolução na forma de desenvolver projetos que utilizem a abstração de
objetos do mundo real na perspectiva do desenvolvimento de sistemas
embarcados.
Uma arquitetura de componentes foi desenvolvida para alcançar este
objetivo, e assim validar a perspectiva de objetos para programar os
projetos desenvolvidos com a plataforma Arduino.
JAVA
.INO
O B J E T I V O S
E S P E C Í F I C O S
Apresentar a Programação
Orientada a Objetos como
metodologia de construção de
programas nos ambientes atuais
de desenvolvimento;
Apresentar a plataforma Arduino e
sua utilização na construção de
projetos de dispositivos com
controle através de sistema
embarcado;
Projetar e  implementar  a
 programação  dos
 componentes de software que
permitam a criação de soluções
para a plataforma Arduino com
a metodologia Orientada a
Objetos utilizando a linguagem
de programação Java;
Criar uma prova de conceito
para validar os componentes de
software propostos no
desenvolvimento desta pesquisa.
JAVA
.INO
J U S T I F I C A T I V A
P R O G R A M A Ç Ã O O R I E N T A D A A O B J E T O S
O paradigma OO (orientado a objetos) permite a resolução de um problema
com a respectiva escrita do programa de computador, considerando
sempre a definição de um modelo de abstração que especifique os objetos
envolvidos e como estes interagem no sentido de obter a solução do
problema.
A metodologia de programação orientada a objetos, ela considera o
aumento do nível de abstração na construção de programas de
computador aproximando a forma como nós vemos o mundo real e suas
relações e associações através de objetos (concretos ou abstratos) para o
mundo da computação através de formas e técnicas especificas de
modelagem de problemas e sua solução implementada.
JAVA
.INO
J U S T I F I C A T I V A
P R O G R A M A Ç Ã O O R I E N T A D A A O B J E T O S
A POO é uma metodologia de programação ajuda a organizar programas
complexos através do uso de encapsulamento, herança e polimorfismo.
Aplicamos a abordagem OO no desenvolvimento deste trabalho, de tal
forma a proporcionar uma maior abstração e produtividade no
desenvolvimento de programas para a plataforma Arduino.
JAVA
.INO
J U S T I F I C A T I V A
P L A T A F O R M A D E P R O T O T I P A G E M A R D U I N O
Depois que o Arduino começou a se popularizar, ficou notório uma grande
quantidade de experimentadores, "hobbistas” e hackers de todo tipo que
passavam a utilizá-lo na criação de projetos maravilhosos e malucos. O
hardware Arduino foi um sucesso, visto a ampla possibilidade de aplicações.
Banzi (2011)
JAVA
.INO
L I N G U A G E N S D E
P R O G R A M A Ç Ã O
L I N G U A G E N S D E
P R O G R A M A Ç Ã O
M E T O D O L O G I A
Revisão da literatura relativa aos conceitos e tecnologias abordadas na
construção da arquitetura de componentes proposta.
 Conceitos e princípios da metodologia orientada a objetos
 Conceitos de sistemas embarcados e a plataforma Arduino
 Características da linguagem Java e suas aplicações 
Modelagem da solução da arquitetura a ser desenvolvida para atender ao
propósito da pesquisa. Os modelos foram criados através da linguagem
UML, utilizando o diagrama de classes que representa as abstrações de
componentes utilizados nas camadas de software do projeto.
JAVA
.INO
M E T O D O L O G I A
A proposta foi implementada na plataforma Arduino (modelo Arduino Uno),
onde foram analisadas suas características para aplicação na proposta de
arquitetura, e feita uma comparação com outras configurações disponíveis.
A arquitetura de componentes teve sua descrição detalhada textualmente
e na forma de diagramas e desenhos ilustrativos, facilitando a apresentação
dos componentes de hardware e software de forma a sintetizar o
funcionamento esperado do conjunto 
Desenvolver uma PoC (Prova de Conceito) para validação da pesquisa
através da implementação de forma parcial da arquitetura projetada, e a
apresentação de dois projetos simples que utilizaram de forma
experimental a arquitetura implementada na PoC.
JAVA
.INO
O projeto foi batizado como Java.ino (Java
com Arduino) que propõe uma arquitetura
de desenvolvimento em alto nível de
abstração, utilizando os conceitos e
princípios da POO (Programação Orientada
a Objetos) em Java, composta
essencialmente de uma solução de
Software implementada com a linguagem C
(linguagem do Arduino) e a linguagem
Java. 
JAVA
.INO
A N Á L I S E D O S
R E S U L T A D O S
Apresentação da arquitetura composta de
componentes de software em computadores
(pcs ou smartphones) conectados com a
plataforma Arduino através de um meio de
comunicação estabelecido (Serial, Ethernet,
Wifi, Bluetooth), de tal forma que estes
computadores possa comandar instruções
para o controle das portas de comunicação
externas digitais e analógicas do Arduino, as
quais estariam conectadas a circuitos que
controlam a utilização de sensores para
captação de estímulos, bem como de
atuadores para execução de alguma ação
dentro do sistema, seja de natureza lógica
JAVA
.INO
A N Á L I S E D O S
R E S U L T A D O S
E S Q U E M A D E C O M P O N E N T E S E N V O L V I D O S N A
A R Q U I T E T U R A P R O P O S T A
JAVA
.INO
A N Á L I S E D O S
R E S U L T A D O S
A solução implementada utiliza um
protocolo de comunicação, que permite as
operações básicas serem realizadas no
microcontrolador da plataforma Arduino
através das diversas portas de
comunicação da placa (analógicas e
digitais), sendo para leitura e/ou escrita.
JAVA
.INO
A N Á L I S E D O S
R E S U L T A D O S
O protocolo implementado foi denominado
JIP (Java.ino Protocol), que possui um
padrão de comandos definidos por um
analisador léxico que divide uma estrutura
de comando para um formato genérico de
comunicação, possível de ser
implementado através de comunicação
Serial, comunicação de Ethernet,
comunicação Bluetooth ou comunicação
Wifi, sem prejuízo algum ao
reconhecimento da semântica aplicada.
JAVA
.INO
A N Á L I S E D O S
R E S U L T A D O S
M O D E L O D E C O M P O N E N T E S D A
A R Q U I T E T U R A D O P R O J E T O J A V A . I N O
J I P – J A V A . I N O P R O T O C O L
J I P – J A V A . I N O P R O T O C O L
ANÁLISEDOS
RESULTADOS
Implementação utilizando uma única
forma de comunicação (Serial);
Implementação parcial do Protocolo de
Comunicação (JIP);
Solução conectando um computador
pessoal (PC) a uma placa Arduino Uno;
Aplicação da arquitetura proposta para
um Projeto de Led Piscante;
Aplicação da arquitetura proposta para
um Projeto de Semáforo de Trânsito.
JAVA
.INO
E S C O P O D O D E S E N V O L V I M E N T O D A P O C
ANÁLISE DOS
RESULTADOS
JAVA
.INO
ANÁLISE DOS
RESULTADOS
JAVA
.INO
ANÁLISE DOS
RESULTADOS
JAVA
.INO
ANÁLISE DOS
RESULTADOS
JAVA
.INO
JAVA
.INO
I M P L E M E N T A Ç Ã O D A P R O V A D E C O N C E I T O
U T I L I Z A N D O A P L A T A F O R M A
ANÁLISE DOS
RESULTADOS
JAVA
.INO
JAVA
.INO
I M P L E M E N T A Ç Ã O D A P R O V A D E C O N C E I T O
U T I L I Z A N D O A P L A T A F O R M A
ANÁLISE DOS
RESULTADOS
JAVA
.INO
JAVA
.INO
I M P L E M E N T A Ç Ã O D A P R O V A D E C O N C E I T O
U T I L I Z A N D O A P L A T A F O R M A
ANÁLISE DOS
RESULTADOS
JAVA
.INO
JAVA
.INO
I M P L E M E N T A Ç Ã O D A P R O V A D E C O N C E I T O
U T I L I Z A N D O A P L A T A F O R M A
ANÁLISE DOS
RESULTADOS
JAVA
.INO
JAVA
.INO
I M P L E M E N T A Ç Ã O D A P R O V A D E C O N C E I T O
U T I L I Z A N D O A P L A T A F O R M A
ANÁLISE DOS
RESULTADOS
JAVA
.INO
JAVA
.INO
I M P L E M E N T A Ç Ã O D A P R O V A D E C O N C E I T O
U T I L I Z A N D O A P L A T A F O R M A
Maior flexibilidade, escalabilidade e manutenibilidade
oferecida pelo código gerado utilizando POO, em
comparação ao modelo estruturado utilizado pela
linguagem nativa do Arduino.
Aplicação da perspectiva de objetos na modelagem
de soluções na programação de sistemas
embarcados.
Demonstrou-se o poder da abstração quando
aplicamos os conceitos e princípios da orientação a
objetos na programação de soluções de componentes
de software.
CONCLUSÃO
JAVA
.INO
O D E S E N V O L V I M E N T O D O T R A B A L H O R E A L I Z A D O A T R A V É S
D A A R Q U I T E T U R A P R O P O S T A E A P O C A P R E S E N T O U O S
S E G U I N T E S R E S U L T A D O S :
Possibilidade de programar projetos no Arduino
através de uma abstração completa da estrutura de
hardware utilizando um modelo de classes e
componentes.
Criação de operações do microcontrolador e o
controle das portas de comunicação utilizadas para a
conexão de sensores e/ou atuadores, através de
objetos instanciados com comportamento definido
pelos conceitos da orientação a objetos.
CONCLUSÃO
JAVA
.INO
O D E S E N V O L V I M E N T O D O T R A B A L H O R E A L I Z A D O A T R A V É S
D A A R Q U I T E T U R A P R O P O S T A E A P O C A P R E S E N T O U O S
S E G U I N T E S R E S U L T A D O S :
 Permitiu a independência do desenvolvimento e a
divisão de responsabilidades proporcionada pela
abstração do hardware através de um modelo de
classes, otimizando a divisão de tarefas e a alocação
dos recursos em um projeto de sistema embarcado no
Arduino.
No entanto, este trabalho limitou-se à codificação
parcial da proposta de componentes possíveis de
implementação, deixando uma margem de evolução
bastante extensa e aberta para novos trabalhos com
base na estrutura arquitetural definida.
CONCLUSÃO
JAVA
.INO
O D E S E N V O L V I M E N T O D O T R A B A L H O R E A L I Z A D O A T R A V É S
D A A R Q U I T E T U R A P R O P O S T A E A P O C A P R E S E N T O U O S
S E G U I N T E S R E S U L T A D O S :
CONCLUSÃO
JAVA
.INO
A A R Q U I T E T U R A D E S E N V O L V I D A P R O P Õ E U M A
N O V A A L T E R N A T I V A P A R A D E S E N V O L V E R
P R O J E T O S D E D I S P O S I T I V O S E M B A R C A D O S
Q U E S E J A M   P R O T O T I P A D O S A T R A V É S D A
P L A T A F O R M A A R D U I N O , U T I L I Z A N D O
U M A   L I N G U A G E M D E P R O G R A M A Ç Ã O D E
G R A N D E P E N E T R A Ç Ã O N O M E R C A D O E
B A S T A N T E D I F U N D I D A N O S M E I O S
E M P R E S A R I A L E A C A D Ê M I C O .
( L I N G U A G E M D E P R O G R A M A Ç Ã O J A V A )
REFERÊNCIAS
ARDUINO. Site oficial da plataforma Arduino. Disponível em:
<http://www.arduino.cc>. Acesso em: 03/04/2016.
BANZI, Massimo. Getting Started with Arduino - 2 ed. Sebastopol,
CA: O'Reilly, 2011.
BENTES, Leandro Maurício A. Sistema de Segurança Veicular
com uso de GPS baseado em Arduino. Trabalho de Conclusão de
Curso (Graduação em Engenharia de Computação). Manaus:
Universidade do Estado do Amazonas, 2013.
BORATTI, Isaias Camilo. Programação Orientada a Objetos em
Java. Florianópolis: Visual Books, 2007.
CORREIA, Nuno. Internet das Coisas com SAP HANA. Lisboa: Ui5
Community Network.
DEITEL, Paul J.; DEITEL, Harvey M. Java como programar – 8 ed.
São Paulo: Pearson Prentice Hall, 2010. 
GAMMA, Erich; HELM, Richard; JOHNSON, Ralph; VLISSIDES,
John. Padrões de Projeto: Soluções reutilizáveis de software
orientado a objetos. Porto Alegre: Bookman, 2000.
REFERÊNCIAS
JANDL Jr., Peter. Java Guia do Programador - 2 ed. São Paulo:
Novatec Editora, 2013.
LEITE, Mario; RAHAL Jr., Nelson Abu Sanra. Programação
Orientada ao Objeto: uma abordagem didática. Agosto, 2002.
Disponível em:
<http://www.ccuec.unicamp.br/revista/navegacao/infotec.html
>. Acesso em: 04/02/2016. 
McROBERTS, Michael. Arduino Básico. São Paulo: Novatec, 2011.
MONK, Simon. 30 Arduino Projects for the Evil Genius. New York:
McGraw-Hill, 2010.
PRESSMAN, Roger S. Engenharia de Software: Uma abordagem
profissional. 7 ed. Porto Alegre: McGraw-Hill (Bookman), 2011.
SCHILDT, Herbert. Java: A Referência Completa - 8 ed. Rio de
Janeiro: Alta Books, 2014.
REFERÊNCIAS
SILVEIRA, Paulo; SILVEIRA, Guilherme; LOPES, Sérgio; MOREIRA,
Guilherme; STEPPAT, Nico; KUNG, Fabio. Introdução à
Arquitetura e Design de Software: Uma visão sobre a plataforma
Java. Rio de Janeiro: Elsevier, 2012.
SOMMERVILLE, Ian. Engenharia de Software. 9 ed. São Paulo:
Pearson Prentice Hall, 2011.
O B R I G A D O !
F r a n c i s c o N e w t o n R O c h a G o m e s
A n a l i s t a d e S i s t e m a s , M B A .
n e w t o n g o m e s . n e t @ g m a i l . c o m
JAVA
.INO
Interessados em contribuir no
projeto pode contactar-nos.

Java.ino - Plataforma de Programação para Arduino com Java

  • 1.
    JAVA P R OG R A M A Ç Ã O O R I E N T A D A A O B J E T O S P A R A A R D U I N O U S A N D O J A V A .INO A u t o r : F r a n c i s c o N e w t o n R o c h a G o m e s O r i e n t a d o r : P r o f . D r . L e o n a r d o D a n i e l T a v a r e s M B A E M P R O J E T O D E A P L I C A Ç Õ E S J A V A J u n h o - 2 0 1 6
  • 2.
    T H EL O G O JAVA .INO
  • 3.
    JAVA .INO C O NT E X T U A L I Z A Ç Ã O Sistemas embarcados (desenvolvimento e evolução) Internet das Coisas e objetos inteligentes Protótipos (plataformas de hardware e software) Microcontroladores, sensores e atuadores Programação (paradigmas e metodologias)
  • 4.
    P R OB L E M A A programação utilizada na plataforma Arduino utiliza em sua essência a metodologia estruturada através de sua linguagem própria, baseada na linguagem de programação C. Atualmente os padrões de desenvolvimento utilizados pelas linguagens de programação mais modernas utilizam a metodologia de programação orientada a objetos, a qual aplica uma abordagem de alto nível de abstração proporcionando várias vantagens de seu uso nos ambientes de desenvolvimento de programas. JAVA .INO
  • 5.
    P R OB L E M A Como aplicar a metodologia de Programação Orientada a Objetos em alto nível de abstração para projetos que utilizam a plataforma de prototipagem Arduino, com a linguagem de programação Java ? JAVA .INO
  • 6.
    O B JE T I V O S O objetivo geral deste trabalho é desenvolver uma plataforma de software capaz de aplicar a programação orientada a objetos para a criação de programas na plataforma Arduino, proporcionando uma evolução na forma de desenvolver projetos que utilizem a abstração de objetos do mundo real na perspectiva do desenvolvimento de sistemas embarcados. Uma arquitetura de componentes foi desenvolvida para alcançar este objetivo, e assim validar a perspectiva de objetos para programar os projetos desenvolvidos com a plataforma Arduino. JAVA .INO
  • 7.
    O B JE T I V O S E S P E C Í F I C O S Apresentar a Programação Orientada a Objetos como metodologia de construção de programas nos ambientes atuais de desenvolvimento; Apresentar a plataforma Arduino e sua utilização na construção de projetos de dispositivos com controle através de sistema embarcado; Projetar e  implementar  a  programação  dos  componentes de software que permitam a criação de soluções para a plataforma Arduino com a metodologia Orientada a Objetos utilizando a linguagem de programação Java; Criar uma prova de conceito para validar os componentes de software propostos no desenvolvimento desta pesquisa. JAVA .INO
  • 8.
    J U ST I F I C A T I V A P R O G R A M A Ç Ã O O R I E N T A D A A O B J E T O S O paradigma OO (orientado a objetos) permite a resolução de um problema com a respectiva escrita do programa de computador, considerando sempre a definição de um modelo de abstração que especifique os objetos envolvidos e como estes interagem no sentido de obter a solução do problema. A metodologia de programação orientada a objetos, ela considera o aumento do nível de abstração na construção de programas de computador aproximando a forma como nós vemos o mundo real e suas relações e associações através de objetos (concretos ou abstratos) para o mundo da computação através de formas e técnicas especificas de modelagem de problemas e sua solução implementada. JAVA .INO
  • 9.
    J U ST I F I C A T I V A P R O G R A M A Ç Ã O O R I E N T A D A A O B J E T O S A POO é uma metodologia de programação ajuda a organizar programas complexos através do uso de encapsulamento, herança e polimorfismo. Aplicamos a abordagem OO no desenvolvimento deste trabalho, de tal forma a proporcionar uma maior abstração e produtividade no desenvolvimento de programas para a plataforma Arduino. JAVA .INO
  • 10.
    J U ST I F I C A T I V A P L A T A F O R M A D E P R O T O T I P A G E M A R D U I N O Depois que o Arduino começou a se popularizar, ficou notório uma grande quantidade de experimentadores, "hobbistas” e hackers de todo tipo que passavam a utilizá-lo na criação de projetos maravilhosos e malucos. O hardware Arduino foi um sucesso, visto a ampla possibilidade de aplicações. Banzi (2011) JAVA .INO
  • 11.
    L I NG U A G E N S D E P R O G R A M A Ç Ã O
  • 12.
    L I NG U A G E N S D E P R O G R A M A Ç Ã O
  • 13.
    M E TO D O L O G I A Revisão da literatura relativa aos conceitos e tecnologias abordadas na construção da arquitetura de componentes proposta.  Conceitos e princípios da metodologia orientada a objetos  Conceitos de sistemas embarcados e a plataforma Arduino  Características da linguagem Java e suas aplicações  Modelagem da solução da arquitetura a ser desenvolvida para atender ao propósito da pesquisa. Os modelos foram criados através da linguagem UML, utilizando o diagrama de classes que representa as abstrações de componentes utilizados nas camadas de software do projeto. JAVA .INO
  • 14.
    M E TO D O L O G I A A proposta foi implementada na plataforma Arduino (modelo Arduino Uno), onde foram analisadas suas características para aplicação na proposta de arquitetura, e feita uma comparação com outras configurações disponíveis. A arquitetura de componentes teve sua descrição detalhada textualmente e na forma de diagramas e desenhos ilustrativos, facilitando a apresentação dos componentes de hardware e software de forma a sintetizar o funcionamento esperado do conjunto  Desenvolver uma PoC (Prova de Conceito) para validação da pesquisa através da implementação de forma parcial da arquitetura projetada, e a apresentação de dois projetos simples que utilizaram de forma experimental a arquitetura implementada na PoC. JAVA .INO
  • 15.
    O projeto foibatizado como Java.ino (Java com Arduino) que propõe uma arquitetura de desenvolvimento em alto nível de abstração, utilizando os conceitos e princípios da POO (Programação Orientada a Objetos) em Java, composta essencialmente de uma solução de Software implementada com a linguagem C (linguagem do Arduino) e a linguagem Java.  JAVA .INO A N Á L I S E D O S R E S U L T A D O S
  • 16.
    Apresentação da arquiteturacomposta de componentes de software em computadores (pcs ou smartphones) conectados com a plataforma Arduino através de um meio de comunicação estabelecido (Serial, Ethernet, Wifi, Bluetooth), de tal forma que estes computadores possa comandar instruções para o controle das portas de comunicação externas digitais e analógicas do Arduino, as quais estariam conectadas a circuitos que controlam a utilização de sensores para captação de estímulos, bem como de atuadores para execução de alguma ação dentro do sistema, seja de natureza lógica JAVA .INO A N Á L I S E D O S R E S U L T A D O S
  • 17.
    E S QU E M A D E C O M P O N E N T E S E N V O L V I D O S N A A R Q U I T E T U R A P R O P O S T A JAVA .INO A N Á L I S E D O S R E S U L T A D O S
  • 18.
    A solução implementadautiliza um protocolo de comunicação, que permite as operações básicas serem realizadas no microcontrolador da plataforma Arduino através das diversas portas de comunicação da placa (analógicas e digitais), sendo para leitura e/ou escrita. JAVA .INO A N Á L I S E D O S R E S U L T A D O S
  • 19.
    O protocolo implementadofoi denominado JIP (Java.ino Protocol), que possui um padrão de comandos definidos por um analisador léxico que divide uma estrutura de comando para um formato genérico de comunicação, possível de ser implementado através de comunicação Serial, comunicação de Ethernet, comunicação Bluetooth ou comunicação Wifi, sem prejuízo algum ao reconhecimento da semântica aplicada. JAVA .INO A N Á L I S E D O S R E S U L T A D O S
  • 20.
    M O DE L O D E C O M P O N E N T E S D A A R Q U I T E T U R A D O P R O J E T O J A V A . I N O
  • 21.
    J I P– J A V A . I N O P R O T O C O L
  • 22.
    J I P– J A V A . I N O P R O T O C O L
  • 23.
    ANÁLISEDOS RESULTADOS Implementação utilizando umaúnica forma de comunicação (Serial); Implementação parcial do Protocolo de Comunicação (JIP); Solução conectando um computador pessoal (PC) a uma placa Arduino Uno; Aplicação da arquitetura proposta para um Projeto de Led Piscante; Aplicação da arquitetura proposta para um Projeto de Semáforo de Trânsito. JAVA .INO E S C O P O D O D E S E N V O L V I M E N T O D A P O C
  • 24.
  • 25.
  • 26.
  • 27.
    ANÁLISE DOS RESULTADOS JAVA .INO JAVA .INO I MP L E M E N T A Ç Ã O D A P R O V A D E C O N C E I T O U T I L I Z A N D O A P L A T A F O R M A
  • 28.
    ANÁLISE DOS RESULTADOS JAVA .INO JAVA .INO I MP L E M E N T A Ç Ã O D A P R O V A D E C O N C E I T O U T I L I Z A N D O A P L A T A F O R M A
  • 29.
    ANÁLISE DOS RESULTADOS JAVA .INO JAVA .INO I MP L E M E N T A Ç Ã O D A P R O V A D E C O N C E I T O U T I L I Z A N D O A P L A T A F O R M A
  • 30.
    ANÁLISE DOS RESULTADOS JAVA .INO JAVA .INO I MP L E M E N T A Ç Ã O D A P R O V A D E C O N C E I T O U T I L I Z A N D O A P L A T A F O R M A
  • 31.
    ANÁLISE DOS RESULTADOS JAVA .INO JAVA .INO I MP L E M E N T A Ç Ã O D A P R O V A D E C O N C E I T O U T I L I Z A N D O A P L A T A F O R M A
  • 32.
    ANÁLISE DOS RESULTADOS JAVA .INO JAVA .INO I MP L E M E N T A Ç Ã O D A P R O V A D E C O N C E I T O U T I L I Z A N D O A P L A T A F O R M A
  • 33.
    Maior flexibilidade, escalabilidadee manutenibilidade oferecida pelo código gerado utilizando POO, em comparação ao modelo estruturado utilizado pela linguagem nativa do Arduino. Aplicação da perspectiva de objetos na modelagem de soluções na programação de sistemas embarcados. Demonstrou-se o poder da abstração quando aplicamos os conceitos e princípios da orientação a objetos na programação de soluções de componentes de software. CONCLUSÃO JAVA .INO O D E S E N V O L V I M E N T O D O T R A B A L H O R E A L I Z A D O A T R A V É S D A A R Q U I T E T U R A P R O P O S T A E A P O C A P R E S E N T O U O S S E G U I N T E S R E S U L T A D O S :
  • 34.
    Possibilidade de programarprojetos no Arduino através de uma abstração completa da estrutura de hardware utilizando um modelo de classes e componentes. Criação de operações do microcontrolador e o controle das portas de comunicação utilizadas para a conexão de sensores e/ou atuadores, através de objetos instanciados com comportamento definido pelos conceitos da orientação a objetos. CONCLUSÃO JAVA .INO O D E S E N V O L V I M E N T O D O T R A B A L H O R E A L I Z A D O A T R A V É S D A A R Q U I T E T U R A P R O P O S T A E A P O C A P R E S E N T O U O S S E G U I N T E S R E S U L T A D O S :
  • 35.
     Permitiu a independênciado desenvolvimento e a divisão de responsabilidades proporcionada pela abstração do hardware através de um modelo de classes, otimizando a divisão de tarefas e a alocação dos recursos em um projeto de sistema embarcado no Arduino. No entanto, este trabalho limitou-se à codificação parcial da proposta de componentes possíveis de implementação, deixando uma margem de evolução bastante extensa e aberta para novos trabalhos com base na estrutura arquitetural definida. CONCLUSÃO JAVA .INO O D E S E N V O L V I M E N T O D O T R A B A L H O R E A L I Z A D O A T R A V É S D A A R Q U I T E T U R A P R O P O S T A E A P O C A P R E S E N T O U O S S E G U I N T E S R E S U L T A D O S :
  • 36.
    CONCLUSÃO JAVA .INO A A RQ U I T E T U R A D E S E N V O L V I D A P R O P Õ E U M A N O V A A L T E R N A T I V A P A R A D E S E N V O L V E R P R O J E T O S D E D I S P O S I T I V O S E M B A R C A D O S Q U E S E J A M   P R O T O T I P A D O S A T R A V É S D A P L A T A F O R M A A R D U I N O , U T I L I Z A N D O U M A   L I N G U A G E M D E P R O G R A M A Ç Ã O D E G R A N D E P E N E T R A Ç Ã O N O M E R C A D O E B A S T A N T E D I F U N D I D A N O S M E I O S E M P R E S A R I A L E A C A D Ê M I C O . ( L I N G U A G E M D E P R O G R A M A Ç Ã O J A V A )
  • 37.
    REFERÊNCIAS ARDUINO. Site oficialda plataforma Arduino. Disponível em: <http://www.arduino.cc>. Acesso em: 03/04/2016. BANZI, Massimo. Getting Started with Arduino - 2 ed. Sebastopol, CA: O'Reilly, 2011. BENTES, Leandro Maurício A. Sistema de Segurança Veicular com uso de GPS baseado em Arduino. Trabalho de Conclusão de Curso (Graduação em Engenharia de Computação). Manaus: Universidade do Estado do Amazonas, 2013. BORATTI, Isaias Camilo. Programação Orientada a Objetos em Java. Florianópolis: Visual Books, 2007. CORREIA, Nuno. Internet das Coisas com SAP HANA. Lisboa: Ui5 Community Network. DEITEL, Paul J.; DEITEL, Harvey M. Java como programar – 8 ed. São Paulo: Pearson Prentice Hall, 2010.  GAMMA, Erich; HELM, Richard; JOHNSON, Ralph; VLISSIDES, John. Padrões de Projeto: Soluções reutilizáveis de software orientado a objetos. Porto Alegre: Bookman, 2000.
  • 38.
    REFERÊNCIAS JANDL Jr., Peter.Java Guia do Programador - 2 ed. São Paulo: Novatec Editora, 2013. LEITE, Mario; RAHAL Jr., Nelson Abu Sanra. Programação Orientada ao Objeto: uma abordagem didática. Agosto, 2002. Disponível em: <http://www.ccuec.unicamp.br/revista/navegacao/infotec.html >. Acesso em: 04/02/2016.  McROBERTS, Michael. Arduino Básico. São Paulo: Novatec, 2011. MONK, Simon. 30 Arduino Projects for the Evil Genius. New York: McGraw-Hill, 2010. PRESSMAN, Roger S. Engenharia de Software: Uma abordagem profissional. 7 ed. Porto Alegre: McGraw-Hill (Bookman), 2011. SCHILDT, Herbert. Java: A Referência Completa - 8 ed. Rio de Janeiro: Alta Books, 2014.
  • 39.
    REFERÊNCIAS SILVEIRA, Paulo; SILVEIRA,Guilherme; LOPES, Sérgio; MOREIRA, Guilherme; STEPPAT, Nico; KUNG, Fabio. Introdução à Arquitetura e Design de Software: Uma visão sobre a plataforma Java. Rio de Janeiro: Elsevier, 2012. SOMMERVILLE, Ian. Engenharia de Software. 9 ed. São Paulo: Pearson Prentice Hall, 2011.
  • 40.
    O B RI G A D O ! F r a n c i s c o N e w t o n R O c h a G o m e s A n a l i s t a d e S i s t e m a s , M B A . n e w t o n g o m e s . n e t @ g m a i l . c o m JAVA .INO Interessados em contribuir no projeto pode contactar-nos.