Mas tu nao estas interessado em aumentar o uso do Arduino... apenas fazer com que as pessoas possam programar algo em Java que acende luzinhas e reles.
R-> É claro que o objetivo do projeto está voltado ao uso do Arduino, pois sua implementação envolve em toda parte a plataforma Arduino com aplicações e funcionalidades. Isto está claro na definição do projeto.
Mas o teu projecto e o preciso oposto de coisas inteligentes... um computador a correr Java ligado a um Arduino nao e a definicao de coisas inteligentes.
R-> Para rodar java não é necessário um Computador obrigatoriamente. Android roda Java, SmartTV roda java, Raspberry roda Java, Browser/Internet roda Java, entre muitos outros dispositivos disponíveis que possui JVM.
Eu não sou importante o suficiente para definir o que e um dispositivo embarcado... o que referi la em cima e precisamente o que toda a gente define como dispositivo embarcado.
Mais uma vez, o teu projecto nao criou nada de inteligente... apenas reduziu a aplicabilidade dum Arduino como dispositivo embarcado pois necessita dum computador de atrelado.
R-> A questão aqui não envolve importância, mas leitura de fontes de referência e profundidade no assunto. O Projeto não necessita necessariamente de um computador, mas uma conexão (Ethernet, Serial, Bluetooth, etc.) com um dispositivo que rode JVM. Se não houver necessidade deste requisito, não será aplicável a proposta aqui apresentada. Não é nosso propósito substituir toda aplicação do Arduino por esta proposta (isso você precisa entender), e sim determinados projetos com requisitos específicos, especialmente a codificação Java para comandar o Arduino.
E onde e que diz aqui para atrelar um computador a correr Java para fazer a parte inteligente em vez de correr a parte inteligente no dispositivo embutido?
R-> Java faz parte do Sistema na configuração proposta. Não significa um computador apenas. Mesmo que seja, o computador faria a interface externa com o circuito implementado no Arduino. A internet poderia ser usada como interação lógica do objeto inteligente implementado no Arduino.
No teu exemplo, o processamento nao e executado de forma colaborativa. O arduino nao processa nada, apenas responde a comandos.
O custo do projecto e a parte mais importante sempre. Desde que cumpra o proposito, o projecto sera sempre regido pelo custo. E inocencia a mais pensar o contrario. No entanto, e falando do exemplo em questao um computador SBC como os referidos sao uma solucao melhor e mais barata do que atrelar um computador a um Arduino e chamar a isso tudo o que estas a chamar.
R-> O arduino processa as informações recebidas pelos sensores e pode realizar operações nos atuadores, seja de forma autônoma ou sob comando da camada de lógica externa do Sistema. Estes sinais recebidos são transferidos para a interface externa que possui a abstração necessária para realizar o processamento requerido no dispositivo desejado, ou até no próprio arduino de forma comandada.
Os resultados do projecto nao foram apresentados em lado algum.
R-> Podes comprovar nos posts anteriores
Qual e o delay que eu posso esperar desde dar um comando para ligar um LED e o led efectivamente ligar? Qual e a variacao nesse tempo de resposta?
R-> O delay irá depender do meio de transferência utilizado. Por exemplo, em testes realizados na interface Serial, o delay foi mínimo e os comando processados quase instantaneamente, com possibilidades de otimização de comandos para melhorias do projeto. Ao receber o comando na Serial, o arduino processa e executa a operação imediatamente, que pode ser o acionamento de uma porta (Digital ou Analógica) ou uma operação complexa como realizar operações em impressoras 3D, comandar robôs, realizar operações em domótica, ou qualquer operação que esteja disponível no protocolo de comunicação.
Qual e a influencia do Sistema Operativo nessa resposta?
R-> Nenhuma. O meio de comunicação é único fator relevante na troca de mensagens.
Onde respondeste a estas questoes? E como podes falar de sistemas embebidos sem sequer pensares em algo deste genero?
R-> Estamos em prospecção tecnológica.
Espero ter contribuído com o melhor entendimento. Não propomos substituir todos os programas e projetos de Arduino pela proposta aqui apresentada, mas apenas programar o Arduino com a linguagem Java e a programação orientada a objetos, quando isso for requisito.
Como exemplo, citamos a utilização deste projeto para ensino de abstração e programação, onde o plataforma Arduino poderia ser um componente pedagógico no ensino da programação de componentes eletrônicos e abstração de objetos em Java.
Outro exemplo pode ser aplicado em laboratórios de protótipos de circuitos eletrônicos comandados em Java.
Logo, encerro com o seguinte questionamento ao leitor interessado:
Queres programar o Arduino com Java ? Podes encontrar uma alternativa no Projeto Java.ino
Valeu. Desejo um bom trabalho a todos.