Pic
shadow

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:

  • Protoboard Ampliar
    Esquema Ampliar

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