Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Grupo 02 - Sensor Ultrassônico #1

Open
GildembergBarbosa opened this issue Oct 11, 2023 · 0 comments
Open

Grupo 02 - Sensor Ultrassônico #1

GildembergBarbosa opened this issue Oct 11, 2023 · 0 comments

Comments

@GildembergBarbosa
Copy link
Contributor

GildembergBarbosa commented Oct 11, 2023

Teste do sensor ultrassônico HC-SR04 com Arduino sem biblioteca. Codígo abaixo:

int PinTrigger = 2; // Pino usado para disparar os pulsos do sensor
int PinEcho = 3; // pino usado para ler a saida do sensor
float TempEcho = 0;
const float VelocidadeSom_mpors = 340; // em metros por segundo
const float VelocidadeSom_mporus = 0.000340; // em metros por microsegundo
void setup(){
  // Configura pino de Trigger como saída e inicializa com nível baixo
  pinMode(PinTrigger, OUTPUT);
  digitalWrite(PinTrigger, LOW);
  pinMode(PinEcho, INPUT); // configura pino ECHO como entrada
  // Inicializa a porta serial
  Serial.begin(9600);
}
void loop(){
  // Envia pulso para o disparar o sensor
  DisparaPulsoUltrassonico();
  // Mede o tempo de duração do sinal no pino de leitura(us)
  TempEcho = pulseIn(PinEcho, HIGH);
  //Serial.println("Distancia em metros: ");
  //Serial.println(CalculaDistancia(TempEcho));
  //Serial.println("Distancia em centimetros: ");
  Serial.println(CalculaDistancia(TempEcho)*100);
}
// Funçao para enviar o pulso de trigger
void DisparaPulsoUltrassonico(){
  // Para fazer o HC-SR04 enviar um pulso ultrassonico, nos temos
  // que enviar para o pino de trigger um sinal de nivel alto
  // com pelo menos 10us de duraçao
  digitalWrite(PinTrigger, HIGH);
  delayMicroseconds(10);
  digitalWrite(PinTrigger, LOW);
  
}
// Função para calcular a distancia em metros
float CalculaDistancia(float tempo_us){
  return((tempo_us*VelocidadeSom_mporus)/2);
}

Code
Testar depois com a ESP32 e filtrar as leituras.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant