Envie os dados do microcontrolador para o excel com PLX-DAQ

Font Size

Olá, estimados leitores ! No dia de hoje iremos aprender um dos pontos chave no desenvolvimentos de projetos e de automação como seu microcontrolador. Sinta-se a vontade para aprender junto conosco sobre o PLX-DAQ !

Então, você deve saber que na indústria os equipamentos eletrônicos possuem conexão com computadores, certo ? Assim, estes aparelhos fazem o gerenciamento de todas as atividades exercidas pelas máquinas. Legal, não acha ? Então, isso permite que uma infinidade de funções possam ser realizadas por elas. Deste modo, podemos desfrutar de uma indústria em constante melhoria. Logo,  a agilidade nos processos é maior devido à conexão entre todos os equipamentos envolvidos.

Então, porque não conectarmos nossas boards de desenvolvimento  a um computador  e turbinar nossos projetos ? Assim, podemos e ganhar velocidade na realização de atividades também?

Ok, mas como fazer isso ?

Para fazer a comunicação de seu microcontrolador com o seu desktop você precisará de algumas ferramentas:

Conversor USB-TTL

Para início de conversa, você precisará  de um driver USB-TTL. Na loja Autocore você encontra opções diferentes de conversores, como :

À princípio, 0 módulo usb-ttl é uma maneira econômica de converter o sinal TTL em uma interface USB. Quando você o conecta  a uma porta USB do PC, o módulo é detectado automaticamente. Então, é instalado como uma porta COM nativa. Desta forma, ela é compatível com qualquer aplicativo de comunicação serial existente. 

Protocolo de comunicação UART

É um dos protocolos de comunicação entre dispositivos mais usados atualmente. Sendo assim, o protocolo de comunicação desempenha um papel importantíssimo na organização da comunicação entre os seus dispositivos. Então, ele funciona de diferentes maneiras com base nos requisitos do sistema. Assim, esses protocolos possuem uma regra específica entre os dispositivos para uma comunicação bem-sucedida.

Ainda mais, este tipo de protocolo de comunicação tem a vantagem de necessitar de apenas dois fios para fazer a comunicação. Isso mesmo ! Apenas dois fios ! Chega de protoboards cheias de fios. É perfeito, não acha ?

PLX-DAQ

O PLX-DAQ é uma extensão para excel fornecido livremente pela Parallax. Seu uso é muito simples e necessita de poucas instruções para fazer a aquisição de dados do seu microcontrolador. Deste modo, você aprenderá a usa-lo em um estalar de dedos. Se você quiser aprender mais sobre , acesse esse outro post em nosso blog. Então, prontos para mas uma missão ?

Materiais utilizados:

Passo a passo…

Instalando o PLX-DAQ:

Para começar, acesse a página oficial da Parallax neste link e faça o download do PLX-DAQ em seu computador. Em seguida, abra a pasta compactada baixada. Você pode ver que aparecerão duas pastas compactadas, conforme a imagem abrixo:

Logo após, abra a pasta nomeada “PLX-DAQ.zip”. Em seguida, instale o arquivo executável “plx_daq_install.exe”. Assim, retorne à pasta anterior e abra a pasta compactada “plx-daq-release2b.zip”. Então, será mostrada uma pasta de mesmo nome. Abra também a pasta você verá a seguinte lista de arquivos:

O arquivo “PLX-DAQ_R2.xlsm” será o arquivo do excel que você usará para fazer a comunicação entre a sua board e a planilha do excel.  Em seguida, abra o arquivo e você terá a seguinte visão:

Agora o PLX-DAQ está preparado e pronto para começar a transmissão de dados. Entao, vamos para a etapa seguinte.

Código

O código desenvolvido para esta comunicação é muito simples e não causa dor de cabeça nenhuma a você !

Antes, algumas informações…

O PLX-DAQ usa diretivas para que os comandos recebido possam ser interpretados corretamente.  As strings começam com diretivas, obrigatoriamente. Todas as diretivas devem estar em letra maiúscula e algumas devem ser seguidas por vírgula. Por último, todas as strings devem terminar em um retorno de carro (CR).

Dados os avisos, abra a sua IDE Arduino e use o seguinte código comentado:

// Definição das variáveis:
int botao = 0;   // Cria a variável para a leitura do botão
int amostragem = 0;   // Cria uma variável int chamada "amostragem"
int start = 0;   // Cria uma variável que dará inicio à sequência de leituras
// Execução da rotina de configuração:
void setup() {
  // Iniciando a comunicação em 9600 Hz
  Serial.begin(9600);
  pinMode(PC13, OUTPUT);   //Define a porta C13 como saída
  pinMode(PB7, INPUT);    // Define a porta B7 como entrada
}
// Iniciando o loop infinito:
void loop() {
  botao = digitalRead(PB7);   // Verifica o botão
  if (amostragem == 0) {   // amostragem = 0 indica que o loop de leituras ADC está aguardando o acionamento do botão para iniciar
    if (botao == HIGH) {   // Verifica se o botão foi pressionado
      start = 1;   // Atribui valor 1 à variável start, dando inicio à sequência de leituras ADC
    }
  } 
  if (amostragem == 100) {   // Indica que 100 coletas de dados já foram feitas
    start = 0;   // Finaliza o ciclo de coletas
    amostragem = 0;   // Reseta o contador e o prepara para a próxima sequencia de leituras
  }
  if (start == 1) {
  amostragem++; // Incrementa a variável em +1
  // Fazendo a leitura analógica no pino A0:
  int sensorValue = analogRead(A0);
  delay(100);   // Delay para aumentar a estabilidade da leitura
  // Iniciando as diretivas de comunicação com o PLX-DAQ:
  Serial.print("DATA");   //Inicia com a diretiva para o envio dos dados pelo PLX-DAQ
  Serial.print(",");     // Separa o dado seguinte do dado anterior
  Serial.print("TIME");    //Envia para a planilha os dados de horário da leitura
  Serial.print(",");
  Serial.print("COLETA ");   // Juntamente com o comando da proxima linha,  imprime "Coleta x" na planilha do excel
  Serial.print(amostragem);
  Serial.print(",");
  Serial.println(sensorValue);    // Envia os dados da leitura em A0, terminando a string com retorno de carro (CR)
  
  digitalWrite(PC13, HIGH);   // Acende o led da placa
  delay(500);
  digitalWrite(PC13, LOW);   //Apaga o led
  delay(500);
  }
}

O nosso código fará a seguinte função:

Pressionando o botão conectado à placa,na uma leitura  da  porta analógica definida iniciará (no meu caso, a porta B7 de um STM32F030C8T6). Então, o microcontrolador faz 100 leituras consecutivas e, após cada leitura, os dados são enviados via UART. Após isto, são então organizados na planilha do Excel.

Assim, após as 100 leituras analógicas, o microcontrolador aguarda um novo clique no botão para iniciar mais 100 leituras. O led piscante escrito no código indica aquelas que a placa está funcionando e não tem outra utilidade. Então, faça as modificações necessárias para a sua placa de desenvolvimento, escolhendo as postas que você achar melhor.

Então, carregue o código para o seu microcontrolador .

Fazendo tudo funcionar

Neste momento, conecte a sua placa de desenvolvimento ao seu computador usando o conversor serial USB-TTL. Verifique no painel de dispositivos de seu computador a posta COM que está sendo utilizada pelo conversor. Então, voltando à interface do PLX-DAQ, após selecionar a porta correta, clique em “Conectar”.

Agora, a sua placa estará esperando apena um clique seu para iniciar uma sequencia de 100 leituras da porta analógica.

Clique no botão usado como entrada e acompanhe a aquisição de dados sendo feita em seu excel como mostra o pequeno vídeo a seguir:

Resultado final:

Conclusões

Neste projeto, você viu como é simples fazer a conexão de sua placa de desenvolvimento com o computador. Isto é possível devido à alta disponibilidade de ferramentas, o que permite uma gama de opções. Assim, a tecnologia tem chegado até à sua casa e permitido ter tecnologias inacessíveis ao consumidor comum a alguns anos atrás.

Então, até a próxima !

Posts relacionados

Conhecendo sobre o NodeMCU ESP32

por Danilo Nogueira
4 anos ago

Configurando drivers para placas Arduino

por autocore
8 anos ago

Aprendendo a utilizar o sensor de som com Arduino

por autocore
8 anos ago
Sair da versão mobile