Como Utilizar o Sensor de Turbidez com Arduino UNO

Você já pensou em monitorar a transparência da água e identificar alterações na sua qualidade utilizando um Arduino? Neste projeto, vamos mostrar como utilizar o sensor de turbidez para analisar a quantidade de partículas suspensas na água e transformar essa informação em uma leitura.

O sensor de turbidez pode ser utilizado em diferentes aplicações, como aquários, reservatórios, estações de tratamento de água, sistemas de irrigação e projetos de automação.

A partir da leitura do sensor, você pode desenvolver sistemas capazes de acionar alarmes, bombas, válvulas ou outros dispositivos automaticamente conforme as condições identificadas.

Como funciona o Sensor de Turbidez?

O sensor de turbidez utiliza um sistema óptico para identificar alterações na transparência da água.

Dentro do sensor, temos principalmente dois elementos:

  • LED infravermelho;
  • Fototransistor.

O LED infravermelho emite um feixe de luz através da água, enquanto o fototransistor recebe a luz que consegue atravessar o líquido.

Quando existem partículas suspensas na água, a passagem da luz é alterada. O receptor identifica essa variação e o módulo transforma a informação em um sinal elétrico que pode ser interpretado pelo Arduino.

Quanto maior a quantidade de partículas suspensas, maior será a alteração na intensidade da luz recebida pelo fototransistor.

Conhecendo o módulo de conversão

O sensor é acompanhado por um módulo de conversão responsável por transformar a variação detectada pelo sistema óptico em um sinal que podemos utilizar no microcontrolador.

O módulo possui três pinos:

  • VCC: alimentação;
  • GND: negativo;
  • Dados: saída do sinal.

A alimentação utilizada neste projeto é de 5 V.

A saída de dados do módulo fornece uma tensão variável que será lida pela entrada analógica do Arduino UNO.

Conectando o Sensor de Turbidez ao Arduino

Para realizar a leitura, vamos utilizar o Arduino UNO.

As conexões são:

Módulo de ConversãoArduino UNO
VCC5V
GNDGND
DadosA0

O pino A0 será responsável por receber o sinal analógico enviado pelo módulo.

Esquemático do Projeto

Depois de realizar todas as conexões, o circuito deve ficar conforme o esquemático abaixo.

Antes de alimentar o circuito, confira as conexões entre o módulo e o Arduino UNO para evitar ligações incorretas.

Calibração do Sensor de Turbidez

Antes de utilizar o sensor para obter valores de turbidez, é aconselhável realizar uma calibração prévia utilizando amostras com turbidez conhecida.

Isso é importante porque a relação entre tensão e turbidez pode variar conforme o sensor, as condições de medição e a aplicação.

Neste projeto, vamos converter a tensão medida pelo Arduino para uma estimativa em NTU (Unidades Nefelométricas de Turbidez).

A calibração adequada permite obter resultados mais coerentes para a aplicação desejada.

Programando o Arduino UNO

Para começar, conecte o Arduino UNO ao computador e abra a Arduino IDE.

Selecione:

  • A placa Arduino UNO;
  • A porta COM correspondente ao Arduino.

Depois, cole o código abaixo e faça o upload para a placa.

const int sensorPin = A0;

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

void loop() {

  long soma = 0;

  for (int i = 0; i < 20; i++) {
    soma += analogRead(sensorPin);
    delay(5);
  }

  float leitura = soma / 20.0;
  float tensao = leitura * (5.0 / 1023.0);

  float NTU;

  if (tensao < 2.5) {
    NTU = 3000;
  } else {
    NTU = -1120.4 * sq(tensao) + 5742.3 * tensao - 4352.9;
  }

  Serial.print("Tensao: ");
  Serial.print(tensao, 2);
  Serial.print(" V   NTU: ");
  Serial.println(NTU);

  delay(1000);
}

Como o Código Funciona?

Primeiro, definimos o pino analógico que será utilizado para receber o sinal:

const int sensorPin = A0;

Depois, o Arduino realiza várias leituras consecutivas para diminuir oscilações momentâneas do sinal.

long soma = 0;

for (int i = 0; i < 20; i++) {
  soma += analogRead(sensorPin);
  delay(5);
}

Em seguida, calculamos a média das 20 leituras:

float leitura = soma / 20.0;

O Arduino UNO realiza a leitura analógica em uma faixa de 0 a 1023. Como estamos utilizando uma referência de 5 V, podemos converter esse valor para tensão:

float tensao = leitura * (5.0 / 1023.0);

A partir da tensão obtida, o código realiza uma conversão para uma estimativa de turbidez em NTU.

NTU = -1120.4 * sq(tensao) + 5742.3 * tensao - 4352.9;

Essa fórmula permite transformar a leitura de tensão em um valor aproximado de turbidez.

Visualizando os dados no monitor serial

Depois de enviar o código para o Arduino, abra o Monitor Serial da Arduino IDE e configure a velocidade para 9600 baud.

O sistema deverá apresentar informações semelhantes a:

Tensao: 3.21 V   NTU: 18.42
Tensao: 3.18 V   NTU: 21.15
Tensao: 3.10 V   NTU: 29.76

A cada segundo, o Arduino realiza uma nova leitura e apresenta a tensão medida e o valor estimado em NTU.

Por que a leitura é feita em NTU?

O sinal original do módulo é uma tensão elétrica, portanto o Arduino não recebe diretamente um valor de turbidez.

Primeiro, o microcontrolador realiza a leitura da tensão no pino A0. Depois, o programa utiliza uma equação de conversão para transformar esse valor em uma estimativa expressa em NTU.

É justamente por isso que a calibração é tão importante. Para aplicações que exigem maior precisão, utilize referências conhecidas e faça a calibração de acordo com o sensor e as condições reais de uso.

Aplicações do Sensor de Turbidez

Agora que você sabe como utilizar o sensor de turbidez, pode aplicar o projeto em diferentes sistemas, como:

  • Monitoramento de aquários;
  • Análise de reservatórios;
  • Sistemas de irrigação;
  • Sistemas de tratamento de água.

Você também pode utilizar a leitura do Arduino como condição para acionar outros componentes, como LEDs, buzzers, relés, bombas e válvulas.

Conclusão

Agora você já sabe como utilizar o sensor de turbidez com Arduino UNO para monitorar alterações na transparência da água.

O sensor utiliza um sistema óptico para identificar a quantidade de partículas suspensas e fornece uma saída analógica que o Arduino consegue interpretar. A partir dessa informação, podemos converter a tensão medida em uma estimativa de turbidez em NTU.

Esse projeto também serve como base para aplicações maiores. Com algumas alterações no código e a inclusão de outros componentes, você pode criar sistemas capazes de monitorar a água e acionar automaticamente alarmes, bombas, válvulas ou outros dispositivos de controle.

Post navigation

Deixe um comentário

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Projeto Musical com Arduino Uno: Tutorial Completo 

Detector de batimentos cardíacos com Arduino e Sensor ECG: Tutorial Completo

Arduino na automação de pequenos negócios: aplicações técnicas e exemplos práticos

Casa Inteligente ACEBOTT: automação e IoT na prática