Arduino Nano ESP32 - Serial Plotter

Este tutorial fornece instruções sobre como usar o Serial Plotter na Arduino IDE com o Arduino Nano ESP32

Hardware Necessário

1×Arduino Nano ESP32
1×Cabo USB Tipo-A para Tipo-C (para PC com USB-A)
1×Cabo USB Tipo-C para Tipo-C (para PC com USB-C)
1×(Opcional) Conector de Alimentação DC
1×Protoboard
1×Fios Jumper
1×(Recomendado) Placa de Expansão com Bornes de Parafuso para Arduino Nano
1×(Recomendado) Placa de Expansão Breakout para Arduino Nano
1×(Recomendado) Divisor de Alimentação para Arduino Nano ESP32

Or you can buy the following kits:

1×DIYables Sensor Kit (18 sensors/displays)
Divulgação: Alguns dos links desta seção são links de afiliado da Amazon. Podemos receber uma comissão pelas compras feitas por meio desses links, sem custo adicional para você. Agradecemos o seu apoio.

Sobre o Serial Plotter

O Serial Plotter é uma ferramenta da Arduino IDE que pode receber dados do Arduino Nano ESP32 via Serial e plotá-los em um gráfico. O Serial Plotter pode plotar os dados de vários sensores na mesma tela.

Para receber os dados do ESP32, é preciso usar um cabo USB entre o Arduino Nano ESP32 e o PC

O Serial Plotter é composto por dois componentes:

  • uma caixa de seleção: usada para selecionar o baud rate serial
  • um gráfico:: uma tela que mostra os dados visualizados
    • Eixo X: apresenta o tempo. Ele tem 500 pontos. O tempo entre cada ponto é o tempo entre duas chamadas consecutivas da função Serial.println().
    • Eixo Y: apresenta os valores dos dados recebidos do Arduino Nano ESP32. O eixo Y se ajusta automaticamente quando o valor dos dados aumenta ou diminui.

Como Abrir o Serial Plotter

Na Arduino IDE, navegue até Tools Serial Plotter

como abrir o serial plotter

Como plotar uma Única Linha no Gráfico

Para plotar uma única linha no gráfico, só precisamos enviar os dados terminados pelo caractere “\r\n”. Podemos usar a função Serial.println()

Serial.println(variable);

※ Nota:

Serial.println() acrescenta automaticamente os caracteres “\r\n” aos dados.

Código de Exemplo

O código de exemplo do Arduino Nano ESP32 abaixo lê o valor de um pino de entrada analógica e o envia ao Serial Plotter

/* * Este código de Arduino Nano ESP32 foi desenvolvido por pt.newbiely.com * Este código de Arduino Nano ESP32 é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino-nano-esp32/arduino-nano-esp32-serial-plotter */ void setup() { Serial.begin(9600); } void loop() { int variable_1 = analogRead(A0); Serial.println(variable_1); delay(100); }

Passos Rápidos

  • Se esta é a primeira vez que você usa o Arduino Nano ESP32, veja como configurar o ambiente para o Arduino Nano ESP32 na Arduino IDE.
  • Copie o código acima e cole na Arduino IDE.
  • Compile e faça upload do código para a placa Arduino Nano ESP32 clicando no botão Upload na Arduino IDE
  • Abra o Serial Plotter
  • Selecione o baud rate 9600
  • Veja o gráfico no Serial Plotter
exemplo de serial plotter com uma única linha

Como plotar várias linhas no Gráfico

Para plotar várias variáveis, precisamos separar as variáveis umas das outras pelo caractere “\t” ou " ". O último valor DEVE ser terminado pelos caracteres “\r\n”.

Em detalhes:

  • A primeira variável
Serial.print(variable_first);
  • As variáveis do meio
Serial.print("\t"); // or Serial.print(" ") Serial.print(variable_nth);
  • A última variável
Serial.print("\t"); // or Serial.print(" ") Serial.println(variable_last);

Código de Exemplo

O código de exemplo do Arduino Nano ESP32 abaixo lê o valor de 4 pinos de entrada analógica e os envia ao Serial Plotter

/* * Este código de Arduino Nano ESP32 foi desenvolvido por pt.newbiely.com * Este código de Arduino Nano ESP32 é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino-nano-esp32/arduino-nano-esp32-serial-plotter */ void setup() { Serial.begin(9600); } void loop() { int variable_1 = analogRead(A0); int variable_2 = analogRead(A1); int variable_3 = analogRead(A2); int variable_4 = analogRead(A3); Serial.print(variable_1); Serial.print(" "); // a tab '\t' or space ' ' character is printed between the two values. Serial.print(variable_2); Serial.print(" "); // a tab '\t' or space ' ' character is printed between the two values. Serial.print(variable_3); Serial.print(" "); // a tab '\t' or space ' ' character is printed between the two values. Serial.println(variable_4); // the last value is terminated by a carriage return and a newline characters. delay(100); }

O resultado no Serial Plotter:

serial plotter com várias linhas

Exemplo de 3 Formas de Onda Senoidais

O código de exemplo do Arduino Nano ESP32 abaixo imprime o valor de três formas de onda senoidais no Serial Plotter

/* * Este código de Arduino Nano ESP32 foi desenvolvido por pt.newbiely.com * Este código de Arduino Nano ESP32 é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino-nano-esp32/arduino-nano-esp32-serial-plotter */ void setup() { Serial.begin(9600); } void loop() { for (int i = 0; i < 360; i += 5) { float sine_1 = 1 * sin(i * M_PI / 180); float sine_2 = 2 * sin((i + 90) * M_PI / 180); float sine_3 = 5 * sin((i + 180) * M_PI / 180); Serial.print(sine_1); Serial.print("\t"); // a tab '\t' or space ' ' character is printed between the two values. Serial.print(sine_2); Serial.print("\t"); // a tab '\t' or space ' ' character is printed between the two values. Serial.println(sine_3); // the last value is terminated by a carriage return and a newline characters. delay(100); } }

O resultado no Serial Plotter:

serial plotter com onda senoidal

Se você quiser ver este plotter em um celular ou PC, confira o tutorial Arduino Nano ESP32 - Web Plotter.

Vídeo

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!