Como enviar dados para o Excel com o Arduíno.

Olá, meus queridos caiçaras tudo bem?! No post de hoje, vamos falar sobre o envio de dados do Arduíno para o Excel. Vamos explorar uma ferramenta muito interessante, que permite essa comunicação e, é claro, mostrar uma aplicação simples e funcional.

Afinal, por que utilizar o Excel?

Antes de tudo, é importante deixar claro que o Excel é uma das infinitas ferramentas, que podem conversar com o Arduíno. Mas, escolhi esse software por um motivo: Ele é simples, objetivo e muito aplicado para trabalhar com dados através de planilhas, exibição de gráficos etc.

Por conta disso, saber trabalhar com esse software é, praticamente, uma obrigação de qualquer Engenheiro. Afinal, independente da sua área de atuação, você lidará com planilhas, muitas planilhas…

O que devo fazer?

Parece coisa de outro mundo, mas não é! Para fazer o Arduino conversar com o Excel, de maneira simples, vamos utilizar um software já existente, o Parallax Data Acquisition tool (PLX-DAQ). Ele permite enviar dados para o Excel, com algumas características:

  • Permite plotar gráficos, utilizando o Excel em tempo real (vamos chegar lá);
  • Envia dados até 26 colunas;
  • Lê / Escreve qualquer célula no Excel;
  • Suporta porta COM 1 a 15;
  • Entre outras funcionalidades descritas no site.
Obs.: Esse software pode sofrer instabilidade com o sistema operacional Windows 10, podendo não funcionar 100%.

Bom, após baixar e instalar o software, haverá uma planilha exemplo, geralmente, nomeada com PLX-DAQ Spreadsheet.xls. Deixe esse arquivo em um diretório de fácil acesso no seu computador, pois ele será utilizado para plotar as informações.

Preparando o Hardware…

Para o projeto deste artigo, vamos utilizar um LDR (Light Dependent Resistor), para leitura de luminosidade, e um LED que será acionado, quando a luminosidade atingir um valor (definido no algoritmo). Para montagem, precisaremos dos seguinte componentes:

1 – Arduino Uno;

1 – LDR (Light Dependent Resistor);

1 – Resistor 10kΩ;

1 – Resistor 220Ω;

E fios jumpers.

A montagem do hardware ficará conforme a figura abaixo:

Obs.: O resistor de 10kΩ, entre o LDR e +VCC, fará com que a leitura do mesmo seja da seguinte maneira:

“Quanto maior a incidência de luminosidade, menor será o valor lido. Isto é, em um ambiente escuro, o valor lido será alto.”

Vamos ao sketch…

Com a IDE aberta, digite ou cole o seguinte código fonte:

Após finalizar montagem, plugue o USB no Arduíno, no computador e clique em Verificar para checar se há algum erro. Após essa verificação, clique em Carregar, passando o código fonte para a placa.

Vamos compreender o sketch, que acabamos digitar.

  • definições de hardware/variáveis: Define-se o pino A0 para o LDR, e o pino 9 para o led. Cria-se varáveis para leitura do estado lógico do led, para leitura da luminosidade do LDR e para identificar a linha no Excel.
  • setup(): Inicia a comunicação serial com baud-rate 9600, define o LDR como uma entrada e o led como uma saída. Envia pelo comando Serial.print (“CLEARDATA”), para garantir que a planilha comece sem valor algum, por fim, identifica-se as colunas utilizadas, separando por “,”;
  • loop(): Realiza-se a leitura analógica do LDR, cria-se uma condição para acionamento do led. Por fim, envia os dados pela Serial, separando por “,” e verifica o valor de x limitando a 50, pois utilizaremos apenas 50 linhas no Excel.

Compreenda como os dados são enviados…

Mesmo com o sketch explicado de maneira geral, é importante compreender as seguintes informações.

Basicamente neste comando, são definidos os títulos das colunas após a vírgula LABEL. Em nosso caso, serão Hora, Luminosidade, Saída (LED), linha. Infelizmente, não há como detalhar como isso funciona, mas a macro, por trás da planilha, provavelmente deve ter uma validação após LABEL, e separar os valores por vírgulas, como em um arquivo .csv.

Os detalhes do algoritmo, por trás do PLX_DAQ, não há como detalhar. Além disso, não é o foco da postagem.

Além deste trecho, é importante compreender, o pequeno trecho a seguir no loop():

Este trecho envia pela serial os dados de hora, luminosidade, o estado do led e o valor referente à variável x, que corresponde à linha. Novamente, utiliza-se a vírgula, como mencionado acima. Com certeza, a separação por vírgulas é verificada pelo PLX_DAQ.

Vamos ao Excel

Após passar o código para a placa, vamos ao Excel. Para isso, antes de tudo, você deve deixar habilitada a aba “desenvolvedor”, que o possibilita trabalhar com macros. Acesse as configurações do Excel, conforme a sua versão e deixe habilitado. Caso tenha dúvidas, de uma conferida no artigo “Excel na prática – O que são macros e como utilizar”. Depois disso, abra o arquivo Excel do PLX_DAQ e, provavelmente, aparecerá um aviso de segurança do próprio programa, informando que as macros estão desabilitadas. Clique nessa mensagem e habilite a macro, conforme imagem a seguir:

Após isso, aparecerá uma caixa, onde você deverá selecionar a porta COM (a IDE do Arduino mostra em qual COM seu arduino está conectado) e a velocidade de Baud-rate (no caso 9600), e, por fim, clicar em Connect.

Depois de confirmar, os dados serão preenchidos com atualização a cada 3s, ou o tempo que você definir no sketch:

Perceba que, quando o valor da luminosidade é maior que 700, no Excel o valor de led é 1, ou seja, mostrando que o estado lógico nesse caso é HIGH.

O que posso fazer com esses dados?

Bom, até agora, você simplesmente enviou os dados via Serial para o Excel, através de um software. E o que fazer com isso? Bom, aí que vem o porquê do Excel… Você pode fazer um gráfico, atualizando em tempo real, suas medições. Os gostos para criação de gráficos são infinitos! Mas vou deixar uma dica para você: Utilize o “Dispersão X,Y”, que ficará algo muito bacana! Veja como ficou o meu exemplo:

Leitura de luminosidade e acionamento de saída (LED)

Além disso, vou deixar o modelo da planilha que montei, junto ao gráfico para download para você, caso tenha qualquer dúvida, em relação à criação de gráficos no Excel. Vale ressaltar que, para funcionar, o PLX_DAQ deve estar instalado =).

Outras possibilidades e ferramentas…

Como disse, existem inúmeras maneiras de comunicar o Arduino com o Excel. Escolhi usar o PLX_DAQ, por sua facilidade de uso e fácil compreensão. Mas, existe também o software Arduino – Excel, que possibilita essa comunicação de forma simples. Veja como baixar: http://www.robertovalgolio.com/sistemi-programmi/arduino-excel.

Se você não quer trabalhar com softwares de terceiros e deseja ver como se aciona as saídas digitais do Arduíno por VBA, recomendo a leitura deste artigo do Embarcados… Ele é um dos mais completos e explicados de como fazer isso! Acesse através de: https://www.embarcados.com.br/acionamento-arduino-utilizando-vba-excel/.

São materiais que vale a pena dar uma conferida :).

Para finalizar…

Bom galera, eu espero que tenham gostado! Como mencionei acima, o Excel é muito utilizado e, por conta disso, não me aprofundei em como manipular o mesmo. De qualquer maneira, deixo para você o download da planilha e, caso tenha dúvidas, pode deixar um comentário, que terei o prazer de lhe responder.

Gostou? Compartilhe e de seu feedback! Isso é fundamental para melhorarmos nosso conteúdo e produzir, ainda mais, artigos para ajudar mais e mais pessoas.

Muito obrigado e até a próxima!

Yhan Christian

 

0 Comentários

Deixe seu comentário.

SiteLock