Medição de tensão com o Arduino

Measuring Voltage with the Arduino

O Arduino é um microcontrolador versátil capaz de medir a tensão usando seu conversor analógico-digital interno (ADC). Esse recurso é essencial para aplicações como monitorar os níveis de bateria, detectar sinais de entrada e medir saídas do sensor. Este tutorial o guiará através do processo de medição de tensão com um Arduino.


O que você precisará

  1. Conselho de Arduino (por exemplo, Uno, Mega, Nano)
  2. Divisor de tensão (se medir a tensão superior a 5V)
  3. Fios de pão e jumper
  4. Fonte de tensão para medir (por exemplo, bateria, sensor ou fonte de alimentação ajustável)
  5. Um computador com o Arduino IDE instalado

Etapa 1: Entendendo a medição de tensão no Arduino

O ADC do Arduino converte tensões analógicas (0V a 5V na maioria das placas) em um valor digital de 10 bits. Isso significa que o ADC fornece um valor entre 0 e 1023, onde 0 corresponde a 0V e 1023 corresponde a 5V (ou a tensão de referência).

Fórmula -chave

Para calcular a tensão de entrada:

Voltage = (ADC_Value / 1023.0) * Reference_Voltage

Observação: Para a maioria das placas do Arduino, a tensão de referência padrão é 5V. Se estiver usando a variante 3.3V, ajuste a fórmula de acordo.


Etapa 2: Medição de tensão direta

Para tensões até 5V, você pode conectar a fonte de tensão diretamente a um pino analógico.

Fiação

Componente Pino Arduino
Fonte de tensão (+) A0
Fonte de tensão (-) Gnd

Código de exemplo

#define analogPin A0

void setup() {
  Serial.begin(9600);
}

void loop() {
  int adcValue = analogRead(analogPin); // Read ADC value
  float voltage = (adcValue / 1023.0) * 5.0; // Convert to voltage

  Serial.print("Voltage: ");
  Serial.print(voltage, 2); // Print voltage with 2 decimal places
  Serial.println(" V");

  delay(1000); // Update every second
}

Etapa 3: Medindo tensões mais altas com um divisor de tensão

Para medir tensões superiores a 5V, use um divisor de tensão Para diminuir a tensão de entrada.

Fórmula do divisor de tensão

O divisor de tensão escala a tensão de entrada usando dois resistores:

Vout = Vin * (R2 / (R1 + R2))

Por exemplo, para medir até 12v:

  • R1 = 10k ohms
  • R2 = 10k ohms
  • Fator de escala = 0,5 (VOUT = VIN / 2)

Fiação

Componente Conexão
Fonte de tensão (+) Entrada de divisor de tensão R1
Junção de divisor de tensão R1/R2 Arduino A0
Fonte de tensão (-) Gnd

Código de exemplo

#define analogPin A0
const float R1 = 10000.0; // Resistor R1 value in ohms
const float R2 = 10000.0; // Resistor R2 value in ohms

void setup() {
  Serial.begin(9600);
}

void loop() {
  int adcValue = analogRead(analogPin); // Read ADC value
  float voltage = (adcValue / 1023.0) * 5.0; // Voltage at A0

  // Scale up to actual input voltage
  float inputVoltage = voltage * ((R1 + R2) / R2);

  Serial.print("Input Voltage: ");
  Serial.print(inputVoltage, 2); // Print with 2 decimal places
  Serial.println(" V");

  delay(1000); // Update every second
}

Etapa 4: Usando uma tensão de referência externa

Para medições mais precisas, você pode usar uma tensão de referência externa conectando -a ao pino AREF.

Etapas para definir referência externa

  1. Conecte uma tensão de referência estável (por exemplo, 3.3V) ao pino AREF.
  2. No código, defina a tensão de referência:
analogReference(EXTERNAL);
  1. Ajuste os cálculos no código para a nova tensão de referência.

Etapa 5: práticas recomendadas para medições precisas

  1. Evite ruído: Use fios curtos e aterramento adequado para reduzir o ruído elétrico.
  2. Calibre sua configuração: Verifique as leituras com um multímetro para garantir a precisão.
  3. Proteja o Arduino: Use resistores ou diodos para proteger o pino de entrada analógico da sobretensão.
  4. Filtrar sinais barulhentos: Adicione um capacitor na entrada para suavizar as flutuações de tensão.

Aplicações da medição de tensão

  1. Monitorando os níveis de bateria
  2. Sentindo sinais analógicos de sensores
  3. Medição de tensões da fonte de alimentação
  4. Projetos de multímetro DIY

Solução de problemas

  1. Leituras incorretas:

    • Verifique a fiação e garanta os valores corretos do resistor para o divisor de tensão.
    • Verifique a tensão de referência nos cálculos.
  2. Valores flutuantes:

    • Adicione um capacitor (10µF ou 100 µF) na entrada.
  3. Proteção de sobretensão:

    • Verifique se a tensão de entrada não excede os limites calculados do divisor de tensão.

Conclusão

A tensão de medição com um Arduino é direta e altamente útil para muitos projetos eletrônicos. Esteja você monitorando os níveis de bateria ou a interface com os sensores, a compreensão da medição de tensão abre uma ampla gama de possibilidades. Experimente diferentes configurações e integra a medição de tensão em seus projetos!

Deixe um comentário

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.