

El funcionamiento de este circuito es muy simple:
tenemos un sensor de ultrasonidos y un servomotor conectados a un Arduino. Este estará continuamente tomando lecturas del sensor, si detecta algo que este a una distancia menor que la que hayamos fijado como umbral, acción el servo.
Circuito es el siguiente:
Con este código cargado en el Arduino tendriamos el circuito funcionando:
#include<Servo.h> #include<Ultrasonic.h> //declaramos un objeto ultrasonic de la la librería Ultrasonic para referirnos a ella. Ultrasonic ultrasonic(7,A0); //declaramos un objeto miservo de la la libreria Servo para referirnos a ella. Servo miservo; int Distancia; void setup(){ //definimos el pin2 para controlar el servo miservo.attach(3); // coloca el servo en su posición central miservo.write(90); } void loop(){ //leemos el sensor de ultrasonidos y guardamos el valor en una variable Distancia = ultrasonic.Ranging(CM); //si la distancia es menor de 20... if(Distancia <= 20){ //movemos el servo en una dirección miservo.write(0); delay(500); //movemos el servo en dirección opuesta miservo.write(180); delay(500); }else{ //si no hay nada, vamos mirando de frente miservo.write(90); } delay(500); }
Con muy pocas modificaciones del código se puede usar para accionar cualquier cosa, como por ejemplo encender la luz cuando nos acerquemos, hacer saltar una alarma... etc.
La librería Ultrasonic está disponible en nuestra sección de descargas