Diferencia entre revisiones de «Papelera automatizada»

De fabwiki
Ir a la navegación Ir a la búsqueda
Línea 1: Línea 1:
=Código=
=Código=
<pre>
<syntaxhighlight lang="c++" line copy>
#include <Servo.h>
#include <Servo.h>
const int Trigger = 2;  //Pin digital 2 para el Trigger del sensor
const int Trigger = 2;  //Pin digital 2 para el Trigger del sensor
Línea 59: Línea 59:


   delay(1000);          //Hacemos una pausa de 100ms*/
   delay(1000);          //Hacemos una pausa de 100ms*/
</syntaxhighlight>

Revisión del 00:55 27 ago 2026

Código

#include <Servo.h>
const int Trigger = 2;   //Pin digital 2 para el Trigger del sensor
const int Echo = 3;   //Pin digital 3 para el Echo del sensor

Servo servoMotor;

void setup() {
Serial.begin(9600);
servoMotor.attach(9);

//sensor ultrasonido
Serial.begin(9600);//iniciailzamos la comunicación
  pinMode(Trigger, OUTPUT); //pin como salida
  pinMode(Echo, INPUT);  //pin como entrada
  digitalWrite(Trigger, LOW);//Inicializamos el pin con 0
  
 
}

void loop() {
 long t; //tiempo que demora en llegar el eco
  long d; //distancia en centimetros

  digitalWrite(Trigger, HIGH);

  delayMicroseconds(5);          //Enviamos un pulso de 10us

  digitalWrite(Trigger, LOW);

  t = pulseIn(Echo, HIGH); //obtenemos el ancho del pulso

  d = t/59;             //escalamos el tiempo a una distancia en cm


  if (d<10){
    for(int pos=90; pos<180; pos++){
       servoMotor.write(pos);
       delay(30
       );
    }
    for(int pos=180; pos<90; pos++){
      servoMotor.write(pos);
      delay(30);
    }
  }
delay(1000);

}
  
  /*Serial.print("Distancia: ");

  Serial.print(d);      //Enviamos serialmente el valor de la distancia

  Serial.print("cm");

  Serial.println();

  delay(1000);          //Hacemos una pausa de 100ms*/