Tengo problemas con la libreria EasyBuzzer y Servo

Estoy haciendo un proyecto que detecta proximidad a 3cm con un sensor de ultra sonido hcsr04 y la libreria NewPing, cuando detecta la proximidad, mueve un servo mg90s de 0 a 180°. hasta ahi todo bien!!
Le intente agregar un buzzer para que emita un simple beep cuando detecte la proximidad con la libreria EasyBuzzer y me tira error de compilacion! les agradesco desde ya su ayuda!!
falla arduino|690x174

el codigo es el siguiente:

#include <NewPing.h>                               //agrego la libreria del ultra sonido
  int pinEcho = 10;   
  int pinTrig = 11; 
  int max_distance = 200;                         // Distancia máxima a detectar en cm newPing sonar(pinTrig, pinEcho, max_distance)

NewPing sonar(pinTrig, pinEcho, max_distance);    //le envío a la librería NewPing los nombres de las variables 

#include <Servo.h>             //agrego la librería del servo
  Servo servo1;                //creo un objeto Servo1
    int pinservo=9;            //le asigno el pin de salida del servo
    int pulsomin=1500;         //genero la constante de 1micseg para los 0°
    int pulsomax=2000;         //genero la constante de 2micseg para los 90° 

#include <EasyBuzzer.h>        //agrego la libreria para el buzzer

//int NOTA = 1047;               //nota para el buzzer
//int buzzer = 2;                //buzzer
int pinledr = 3;               //led rojo
int pinledv = 4;               //led verde

int grados;                    //variable de captura de grados del eje del servo
int distance;                  //variable de conversion a cm del sonar

void setup() {
  Serial.begin(9600);                         //inicio la consola
  
  servo1.attach(pinservo,pulsomin,pulsomax);  //inicializo el servo con los parámetros
 
  EasyBuzzer.setPin(5);                       //pin de salida del Buzzer
  EasyBuzzer.beep(2300,150,50,1,100,1);       //configuracion del sonido del Buzzer
}
 
void loop() { 
  
  digitalWrite(pinledv, HIGH);          //Led verde encendido
  distance = sonar.ping_cm();           //la variable distance toma el valor de sonar.ping_cm
  
  if(distance > 0 && distance < 4) {    //si la distancia es mayor a 0 y menor a 4 cm
    
    Serial.print("Distancia ");         //imprimo en la consola la distancia en cm
    Serial.print(distance); 
    Serial.println(" cm");
    EasyBuzzer.update();                //Ejecuto el Beep en el Buzzer
    
    
    servo1.attach(9);                   //enciendo el servo
    Serial.println("servo encendido");
    grados=servo1.read();               //leo los grados del eje del servo y los guardo en la verible grados
    if (grados == 0){                   //si el angulo del eje es igual a 0°

      Serial.println("Eje en 0 grados");
      digitalWrite(pinledr, HIGH);      //Led rojo encendido
      digitalWrite(pinledv, LOW);       //Led verde apagado
      servo1.attached();                //enciendo el servo
      servo1.write(180);                //Eje del servo a 180°
       
      
      delay(1000);
      Serial.println("Eje en 180 grados");
      
      servo1.write(0);                  //Eje del servo a 0°

      delay(1000);
     
      
      digitalWrite(pinledv, HIGH);      //Led verde apagado
      digitalWrite(pinledr, LOW);       //Led rojo encendido
          
    }
    else {                              //si el angulo del eje es diferente a 0°

      Serial.println("el eje no esta en 0");
      servo1.write(0);                  //Eje del servo a 0°
      
      delay(1000);
      Serial.println("eje puesto a 0");
    }
    }
    servo1.detach();                  //desconecto el servo
    Serial.println("servo apagado");
    }

Su publicacion se MUEVE a su ubicacion actual ya que es mas adecuada.

Moderador:
Por favor, lee las Normas del foro y edita tu código usando etiquetas de código.
Ve a edición, luego selecciona todo el código que has publicado, lo cortas y click en </>


También ten mas cuidado donde posteas. Si lo haces en el foro en inglés usa ese idioma y si usas español tienes que postear en el foro Internacional => Español.

Hola @martindutroc

Existe un conflicto entre la biblioteca NewPing.h y el
Biblioteca EasyBuzzer.
Elimina EasyBuzzer y la línea que lo usa y pruébalo y verás que se compila correctamente.

RV mineirin

disculpen soy nuevo y es mi primer foro!!!

Si gracias compañero! ya lo habia notado, pero pense q me estaba equivocando yo en algo del codigo q no podia ver.
Necesito buscar una solucion para ponerle algun ruidito a este proyecto, tambien probe ponerlo sin la libreria, directamente con el buzzer o utilizando tone y me tira error.
Alguna idea de como solucionarlo???

Pon un buzzer activo (o zumbador) que ya trae un oscilador incorporado, lo conectas entre el pin y masa, pones HIGH cuando quieres que suene y LOW para silenciarlo.
Es lo más sencillo y no es mucho mas costoso que un buzzer pasivo como el que tienes.

Saludos

ok, muchas gracias!!!

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.