Sensor de refletância - HenriqueEduardo1/The-Guider GitHub Wiki

Como usar o sensor de refletância

Para se utilizar os sensores de refletância com a biblioteca é necessário utilizar as funções:

float lerSensorLinhaEsq()
float lerSensorLinhaDir()

Com as funções acima pode-se obter o valor de refletância. Os valores retornados pelas funções podem variar de 0.0 até 100.0 . Quanto mais próximo de 100 maior é o valor refletido e mais próximo do branco a superfície está. Quanto menor o valor refletido, ou seja, quanto mais próximo de 0, mais próxima do preto é a superfície.

#include <robo_hardware.h>
#include <Servo.h>

#define LED 13
#define SEPARACAO_BRANCO_PRETO 45

void setup(){
  robo.configuracao(false);
}

void loop(){

  if(robo.lerSensorLinhaEsq() > SEPARACAO_BRANCO_PRETO){
    digitalWrite(LED, HIGH);
  }
  else{
    digitalWrite(LED, LOW);
  }
}

Nas duas primeiras linhas do código são adicionadas duas bibliotecas robo_hardware.h e Servo.h estas duas bibliotecas são utilizadas pelo objeto robo, e logo a baixo são definidas duas constantes LED 13 e SEPARACAO_BRANCO_PRETO 45. Nas linhas seguintes, dentro da função setup, está o comando robo.configurar(false) que faz as configurações iniciais do objeto robo. Dentro da função loop existe um if que compara o retorno de robo.lerSensorLinhaEsq() com a constante SEPARACAO_BRANCO_PRETO. Se o retorno for maior que a constante significa que o sensor está vendo branco e por causa disso o led é ligado. Se não, significa que o sensor está vendo preto e, portanto, o led deve ser desligado.

⚠️ **GitHub.com Fallback** ⚠️