Primero debes completar Programando un siguelíneas con PrintBot Evolution antes de ver esta lección

¡A mi PrintBot Evolution le encanta la oscuridad! Si le acerco una linterna, huye de la luz. ¿Quieres que el tuyo haga lo mismo? ¡Vamos!

Usamos los sensores de luz que se encuentran a ambos lados de los sensores infrarrojos que hemos usado para programar nuestro siguelíneas. El sensor de luz es un componente analógico que nos devuelve un valor entre 0 y 500 dependiendo de la cantidad de luz que perciba. Devuelve 0 cuando no percibe nada de luz, y 500 cuando la luminosidad es muy intensa.

Nuestro PrintBot Evolution tiene dos sensores de luz, por lo que puede encontrarse ante cuatro situaciones diferentes, que ambos estén recibiendo luz, que ambos no reciban luz o que solo uno de ellos esté recibiendo luz. ¿Cómo actuará ante cada una de ellas?

 

 Sensor izquierdoSensor derechoAcción
Estado 1LUZLUZ¡RETROCEDE!
Estado 2LUZOSCURO¡GIRA DERECHA!
Estado 3OSCUROLUZ¡GIRA IZQUIERDA!
Estado 4OSCUROOSCURO¡STOP!

 

 ¿Qué componente tenemos que usar para que se mueva o gire?

Como ya hicimos en “Programando un siguelíneas” hay que dar las órdenes a los servos, que son unos pequeños motores que están en cada una de las ruedas y las hacen girar.

1. Acercamos la linterna a la parte delantera de nuestro PrinBot, los dos sensores luz están siendo alumbrados, queremos que retroceda. Le decimos a nuestros servos que se muevan.

2. Acercamos la linterna por la parte izquierda del robot, el sensor de la derecha está en la oscuridad, pero el de la izquierda está recibiendo luz. Tenemos que decirle a nuestro robot que gire hacia la derecha. Le decimos al servo izquierdo que se mueva y al derecho que se detenga.

3. Esta vez acercamos la linterna por el otro lado, el sensor de la izquierda está en la oscuridad, pero el de la derecha recibe luz. Tenemos que decirle a nuestro robot que gire hacia la izquierda. Le decimos al servo derecho que se mueva y al izquierdo que se detenga.

4. Nuestro PrintBot se ha escondido y está en la oscuridad, ninguno de los dos sensores ve la luz. ¡Quiere estar quieto! Ordenamos a los dos servos que se detengan.

 

 Sensor izquierdoSensor derechoAcciónServo izquerdoServo derecho
Estado 1LUZLUZ¡RETROCEDE!MueveMueve
Estado 2LUZOSCURO¡GIRA DERECHA!MuevePara
Estado 3OSCUROLUZ¡GIRA IZQUIERDA!ParaMueve
Estado 4OSCUROOSCURO¡STOP!ParaPara

 

 ¡A programar!

Ya sabes cómo funcionan los sensores de luz y los servos y, qué acciones quieres que tu PrinBot Evolution ejecute en cada uno de los cuatro estados. ¡Vamos a hacerlo en bitbloq!

1. Le decimos a nuestro robot que tiene dos sensores de luz: declaramos las variables “sensor izquierdo” y “sensor derecho”.

Declarar Variables Sensores Infrarrojos

 

2. Ahora, le decimos que estas variables son los sensores de luz y el pin de la placa ZUM al que hemos conectado cada uno.

¡Recuerda! El sensor de luz es un sensor analógico, por tanto, debes de elegir “Pin analógico _ “.

Pines de Sensores de luz

 

3. ¿Qué otros componentes debemos de programar? Sí, los servos de rotación continua, que están conectados a los pines 8 y 9.

Asignar pines servos

 

Le ponemos una pausa de 10 ms, para que descansen durante un pequeño instante.

Una vez tienes estos elementos, construir el programa es ¡facilísimo! El PrintBot puede encontrarse en cuatro estados diferentes, dependiendo de lo que vea cada sensor. ¡Vamos a programar cada uno!

Que nuestro PrintBot actúe de una forma u otra (se detenga, retroceda, gire a la izquierda o a la derecha) depende de una condición, lo que lean los sensores de luz. Por ello, tenemos que usar la función “si… ejecutar…” que se encuentra en “Control”.

Los sensores de luz son sensores analógicos, ¿cómo reconoce el PrintBot Evolution si hay mucha o poca luz? Bien, como ya hemos visto, los sensores devuelven un resultado entre 0 y 500, 0 cuando hay ausencia de luz y 500 cuando la luz es muy intensa. Por tanto, vamos a usar un valor de 300 como punto a partir del cual nuestro robot no soporta la luz.

 Estado 1: ¡Retrocede!

 

Estado 2: ¡Gira a la derecha!

Estado 2 Gira a la derecha

 

 

 

 

 

 

 

 

 

 

Estado 3: ¡Gira a la izquierda!

Estado 3 Gira a la izquierda

Estado 4: ¡Stop!

Estado 4 Stop

¡OJO!: yo he conectado el servo de la rueda izquierda al pin 8 y el servo de la rueda derecha al pin 9.

Uniendo los bloques de los cuatro estados solo nos queda cargar el programa en la ZUM y nuestro robot ya está preparado para correr.

¿Te atreves a hacer un sigueluz? ¡Nos encantaría verlo cuando lo hayas terminado!

Volver a: Introducción a PrintBot Evolution de bq

©2017 Fábrica Digital desde Jerez de la Frontera, España.

717 717 452 (Teléfono y Whatsapp) / hola@fabricadigital.org

De Lunes a Jueves de 09:00 a 18:00. Viernes de 09:00 a 14:00.

Calle del Comercio, 18, 11407 Jerez de la Frontera, Cádiz. - Cómo llegar

Información Legal - Aceptamos

 

Inicia Sesión con tu Usuario y Contraseña

o    

¿Olvidó sus datos?

Create Account