Pic
shadow

Si los servomotores son un elemento básico en electronica y especialmente en robótica esta claro que tenemos que aprender a utilizarlos con nuestro Pinguino.

Para controlar un servomotor necesitamos aplicarle un pulso con un ancho proporcional a la posición a la que queremos moverlo (o la velocidad a la que queremos que gire si se trata de un servo de rotación continua.) Para poder crear pulsos del ancho que queramos necesitamos uno de los pines PWM de pinguino. A parte de eso unicamente necesitamos alimentar el servo con 5V, por lo que el circuito será simplemente esto:

  • Protoboard Ampliar
    Esquema Ampliar

Para controlarlo contamos con una librería que nos simplificará mucho el trabajo, ya que unicamente tenemos que indicar el pin en que tenemos conectado el servo y la posición a la que queremos moverla.

	uchar position=1;
	int i;
	
	void setup(void){
		servo.attach(0);
	}
						 
	void loop(void){
		//En la variable posicion definimos el a  donde queremos mover el servo

		//Lo centramos
		posicion = 90;
		servo.write(0,position);
		delay(100);
						
		//Lo llevamos a un extremo:
		posicion = 180;
		servo.write(0,position);
		delay(100);

		//Lo movemos al extremo opuesto
		posicion = 0;
		servo.write(0,position);
		delay(100);

	}
	

Los delay unicamente son para darle tiempo al servo a llegara su posición

Ya podemos incluir servomotores en nuestros proyectos con Pinguino!