La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Clase II: Sensores de Línea y Lógica Proposicional

Presentaciones similares


Presentación del tema: "Clase II: Sensores de Línea y Lógica Proposicional"— Transcripción de la presentación:

1 Clase II: Sensores de Línea y Lógica Proposicional
Robótica Educativa Clase II: Sensores de Línea y Lógica Proposicional

2 ¿Qué es un Sensor de Línea?

3 ¿Qué es un sensor? Un sensor es un dispositivo diseñado para captar determinada información; una magnitud del exterior y transformarla en otra magnitud, que seamos capaces de cuantificar y manipular. Jennifer

4 Tipos de Sensores Luz visible. Campo eléctrico. Luz infrarroja.
Campo magnético Sonido audible. Humedad Ultra sonido. PH Temperatura. Presión. Velocidad. Jennifer

5 Sensor de Línea Un sensor de línea o sensor réflex, es un sensor con la posibilidad de detectar la capacidad que tiene un objeto de reflejar luz o no.

6 Sensor de Línea Este sensor está compuesto de un DIODO EMISOR INFRARROJO y un FOTOTRANSISTOR.

7 Ensamble de Sensores Usar los tornillos #40. pasarlos por el orificio del Sensor de línea (LS), por el Separador Circular (CS), por el Poste #25 (P25). insértalos en la Plataforma (PF) en los orificios que muestra la figura, realizar la sujeción con las tuercas T3.

8 Ensamble de Sensores Colocar la segunda Plataforma (PF)

9 Ensamble de Sensores Ajustar la Plataforma (PF) por medio de las tuercas T3 y los tornillos #6.

10 Prueba de sensores Vamos a probar los sensores de línea, para esto cargaremos un ejemplo muy sencillo desde la interfaz de programación Innobot IDE. Ruta: Archivo>Innobo>LineSensor>LineTest2

11 Prueba de Sensores void setup() { Serial.begin(9600); } void setup (){
void setup() { Serial.begin(9600); } void setup (){ int sensorValue = sensorRead(J1); Serial.println (sensorValue); delay (1);

12 Función sensorRead() Descripción
Hará la lectura del valor del sensor que deseemos Sintaxis SensorRead (PORT); Parámetros PORT: indica el puerto del cual se quiere obtener su valor, los valores posibles J1, J2, J3, J4, J5, J6 Devuelve Un valor entero, que será el valor que el sensor le enviara a la tarjeta

13 Monitor Serie

14 Lógica Proposicional

15 Qué es una proposición? Una proposición es una frase declarativa y que, como tal, es una afirmación sobre algo que puede o no ser verdad. Esta no puede ser verdadera y falsa al mismo tiempo.

16 Clases de proposición Proposiciones Simples Proposiciones Compuestas
Son aquellas que solo realiza una afirmación, es decir, aquellas que no tienen ningún conector. Ejemplo: Juan tiene 20 años Manuela es una niña Proposiciones Compuestas Son aquellas que tiene dos o más afirmaciones, es decir tiene uno o más conectores en ellas. Ejemplo: Juan tiene 20 años Y es hombre. A Manuela le gusta jugar con muñecas O jugar con los carros.

17 Proposiciones y Condicionales
Si Juana hace sus deberes entonces obtiene buenas notas Si no entonces tendrá que reforzar.

18 Condicionales: Sentencia if - else
En nuestro lenguaje En C++ Si Entreno duro Entonces Gano la competencia Si no Entonces Perderé la competencia if(acción==entrenar duro){ Ganare la competencia; } else { Perderé la competencia; Si _________________ if(______________){ _________________; else{

19 Cuantificadores < Menor que
Menor que Este símbolo se utiliza para preguntar si hay un valor menor que otro. Siempre de la siguiente manera A<B (A menor que B), B<C (B menor que C) Mayor que Este símbolo se utiliza para preguntar si hay un valor mayor que otro. Siempre de la siguiente manera C>D (C mayor que D), D>F (D mayor que F). <= Menor igual que Este símbolo se utiliza para preguntar si hay un valor menor O igual que otro. Siempre de la siguiente manera A<=B (A menor O igual que B), B<=C (B menor O igual que C). >= Mayor igual que Este símbolo se utiliza para preguntar si hay un valor mayor O igual que otro. Siempre de la siguiente manera C>=D (C mayor O igual que D), D>=F (D mayor O igual que F)

20 Reto Utiliza los conceptos aprendidos para hacer un programa que permita convertir el robot en un detector de borde. Para esto puedes utilizar la función sensorRead() y la sentencia if – else.

21 Operadores Lógicos Símbolo Nombre Función && Y (Conjunción)
Con Y le damos prioridad a el cumplimiento de dos o más sentencias a la vez. || O (Disyunción) Con O solo se debe cumplir una sentencia para adquirir un verdadero. ! Negación Este se utilizara para realizar la negación de algo, es decir si una sentencia es verdadera, pero se antecede de este símbolo, esta sentencia pasara a ser falsa.

22 Calibrar Sensores

23 lineCompare() Descripción
Asignara el valor de referencia como el leído para una superficie blanca y asignara un rango de valores para negro. Sintaxis lineCompare (PORT, valor_de_referencia); Parámetros PORT: indica el puerto del cual se quiere obtener su valor, los valores posibles J1, J2, J3, J4, J5, J6 valor_de_referencia: este será el valor en la que mediante el test de monitor serial se lee mientras esta en una superficie blanca. Devuelve N/A: Esta función no me devuelve ningún valor.

24 Calibrar Sensores void setup(){
lineCompare (J1, valor_de_referenciaJ1); lineCompare (J2, valor_de_referenciaJ2); } void loop(){

25 Función lineRead() Descripción
Detecta si hay una superficie negra o blanca, se utiliza para que nuestro robot siga una línea negra o blanca. Sintaxis lineRead(PORT); Parámetros PORT: indica el puerto del cual se quiere obtener su valor, los valores posibles J1, J2, J3, J4, J5, J6 Devuelve WHITE (1) - Si la superficie es Blanca. WHITE>valor_de_referencia BLACK (0) - Si la superficie es negra. 50 <BLACK<valor_de_referencia VOID (3) - Si la superficie no devuelve un valor de negro o blanco. VOID<50

26 Reto Reescribe el código de detector de borde y utiliza la función lineRead() en vez de sensorRead(), calibra los sensores!!.

27 Seguidor de Línea Actividad: Utiliza todos los conocimientos hasta acá aprendidos para seguir correctamente la pista.

28

29

30

31 Y el cuarto caso.. if(lineRead(J5)== BLACK &&.lineRead(J1) == BLACK){
motorOff(M2,M1); }

32 Reto Completa los ejemplos anteriores y basados en ellos y en toda la experiencia que has adquirido haz que el Innobot siga la pista correctamente.

33 Intersecciones Ya sabes como seguir una línea, ahora debes aprender a sortear el primer obstáculo. Intersecciones!

34 ¿Cómo girar en una intersección?

35 Retomemos el código anterior
if(lineRead(J5) == BLACK && lineRead(J1) == BLACK){ motorOff(M2); motorOff(M1); } ¡Nuestro Robot debería hacer algo además de parar! Veamos

36 Completa y Analiza //Paramos un momento ________(M1); ________(__);
delay(___); //Garantizamos que el robot salga de la intersección motorOn(__,_______); _____(____); //Garantizamos que el robot salga de la pista girando un poco //Utilizamos la función mientras - while while(lineRead(__) == WHITE){ //Girar }

37 Reto Completa el ejemplo e intégralo a tu código principal, líbrate de esa molesta intersección!!

38 Próxima Clase Aprenderemos como comenzar a Programar nuestro Innobot, es decir, vamos a darle instrucciones para que realice lo que deseamos. Luego nos introduciremos al maravilloso mundo de los sensores.


Descargar ppt "Clase II: Sensores de Línea y Lógica Proposicional"

Presentaciones similares


Anuncios Google