Skip to main content

Lección 4: Codificación del sensor de objetos

En la última lección, aprendió sobre el sensor de objetos y recopiló los porcentajes de reflectividad de discos y cubos. Ahora, usará esos valores para crear un proyecto en VEXcode para detener el transportador de salida cuando el sensor de objetos detecte un disco.

En esta lección, usted:

  • Configurar el sensor de objetos en VEXcode.
  • Aprenda a utilizar operadores de comparación en VEXcode.
  • Cree un proyecto para mover un disco desde el transportador de entrada al transportador de salida utilizando la retroalimentación del sensor de objetos.

Al finalizar esta lección, habrá desarrollado su proyecto de la lección anterior para detener el transportador de salida cuando el sensor de objetos detecta el disco.

Disco verde en el transportador de salida y debajo del sensor de objetos.

Edición del proyecto

Comenzará editando su proyecto de la Actividad de la Lección 2 de la Unidad 4 para prepararse para agregar los comandos relacionados con el Sensor de objetos.

Abra su proyecto de la Unidad, Lección 2, Actividaden VEXcode EXP, o recree el proyecto que se muestra aquí.

Cambiar el nombre del proyectoUnidad 4 Lección 4.

Tres pilas de bloques que son del proyecto de la lección 2 de la Unidad 4. La primera pila dice Cuando se inicia, gira el transportador de entrada 1 hacia adentro, espera 7 segundos y luego detén el transportador de entrada 1. A continuación, gire el transportador 2 hacia adelante, espere 4 segundos y luego detenga el transportador 2. Por último, gire el transportador de salida 4 hacia afuera, espere 2 segundos y luego detenga el transportador de salida 4. La siguiente pila dice Cuando se presionó el parachoques de la torre de señales 6, configure el brazo 10 para controlar la detención. El último proyecto dice Cuando se detuvo el control del brazo 10, configure la torre de señal 6 en verde y apagada y luego configure la torre de señal 6 en rojo y parpadeando. Por último, detenga el transportador de entrada 1, detenga el transportador de transporte 2 y luego detenga el transportador de salida 4.

Configure el sensor de objetos en VEXcode abriendo la ventana Dispositivos y seleccionandoAgregar un dispositivo.

La ventana Dispositivos está abierta y el botón Agregar un dispositivo está resaltado.

Seleccione 3 cablespara abrir la lista de dispositivos de 3 cables.

Opciones del dispositivo en la ventana Dispositivos, con el ícono de 3 cables resaltado en rojo.

A continuación, seleccione el sensor de objeto

3 Opciones del dispositivo de cable en la ventana Dispositivos, con el ícono del sensor de objetos resaltado en rojo.

Seleccione el puerto A, luegoListopara completar la configuración.

Nota:Asegúrese de que el sensor de objetos esté conectado al puerto A del cerebro.

Ventana Dispositivos con el puerto A resaltado para el sensor de objetos.

Eliminar los dos últimos bloques del proyecto. Esto incluye el bloqueEsperay el bloqueParadapara el transportador de salida, como se muestra en este video.

Archivo de vídeo

Añade un bloqueEspera hastaal proyecto.

El bloqueEsperar hastaes un bloque que espera a que una condición booleana se informe como verdadera antes de pasar al siguiente bloque en la pila.

Continuación de una pila EXP de VEXcode con un bloque Esperar hasta vacío agregado al final. La pila dice Cuando se inicia, gira el transportador de entrada 1 hacia adentro, espera 7 segundos y luego detén el transportador de entrada 1. A continuación, gire el transportador 2 hacia adelante, espere 5 segundos y luego detenga el transportador 2. Por último, gira el transportador de salida 4 hacia afuera y luego espera hasta.

Operadores de comparación

Ahora que se agregó el bloqueEsperar hastaal proyecto, es necesario agregar la condición que el bloque debe verificar. 

Anteriormente, aprendió sobre el porcentaje de reflectividad informado por el sensor de objetos y registró esos valores en su cuaderno de ingeniería. En este proyecto, es necesario que el transportador de salida funcionea, cuando ese valor sea superior a un umbral determinado . Un umbral es algo que se utiliza para determinar si un valor está por encima, por debajo o dentro de un rango aceptable. Los operadores de comparación se pueden utilizar para comprobar si la reflectividad está por encima de un valor determinado o de ese umbral.

Añade un bloque mayor queal espacio hexagonal delEspera hasta.

El bloque Esperar hasta que se acaba de agregar, con un nuevo parámetro booleano de 0 mayor que 50.

Añade un bloque de reflectividaden la primera apertura del bloqueMayor que.

El bloque Esperar hasta ahora tiene un bloque de Reflectividad del sensor de objeto agregado al bloque mayor que. Todo el bloque en conjunto ahora dice Esperar hasta que la reflectividad del sensor de objeto A en % sea mayor a 50.

El bloqueMayor quecompara el primer valor con el segundo. El bloque Mayor queactualmente en el proyecto está comparando el porcentaje de reflectividad informado por el sensor de objetos con el parámetro '50' antes de declarar el valor booleano comoVerdaderooFalso

El bloque Esperar hasta con el valor Mayor que resaltado. Todo el bloque en conjunto ahora dice Esperar hasta que la reflectividad del sensor de objeto A en % sea mayor a 50.

Piense en los objetivos de este proyecto. El transportador de salida debe girar hasta que el sensor de objetos detecte un objeto; luego, el transportador debe detenerse. Los valores recopilados en la lección anterior se pueden usar con este bloqueMayor quepara determinar el umbral que debe superarse antes de que el proyecto pase al siguiente bloque de la pila.

Cambie el segundo parámetro del bloqueMayor quea '9'. 

Este número se basa en los valores recopilados en la actividad de la lección anterior. La reflectividad se informó como 10% cuando el disco verde estaba debajo del sensor de objetos, por lo que cualquier valor mayor que9% debe informarse comoVerdadero.

El bloque Esperar hasta con el valor Mayor que resaltado y cambiado de 50 a 9. Todo el bloque en conjunto ahora dice Esperar hasta que la reflectividad del sensor de objeto A en % sea mayor a 9.

Añade un bloqueStopal final del proyecto. Asegúrese de que el parámetro esté configurado en 'ExitConveyor4'.

Continuación de la pila EXP de VEXcode con un botón Detener motor agregado al final que dice Detener transportador de salida 4. La pila dice Cuando se inicia, gira el transportador de entrada 1 hacia adentro, espera 7 segundos y luego detén el transportador de entrada 1. A continuación, gire el transportador 2 hacia adelante, espere 5 segundos y luego detenga el transportador 2. Por último, haga girar el transportador de salida 4 hacia adentro, espere hasta que la reflectividad del sensor de objeto A en % sea mayor a 9 y luego detenga el transportador de salida 4.

Asegúrese de que el cerebro esté conectado a VEXcode y descargue el proyecto.

Barra de herramientas VEXcode EXP con el ícono de descarga resaltado en un cuadro rojo, entre los íconos Cerebro y Ejecutar.

Lea el código y prediga lo que harán los transportadores cuando se ejecute el proyecto. 

Registra tu predicción en tu cuaderno de ingeniería.

La pila EXP de VEXcode a la que se acaba de agregar el bloque Detener motor. Toda la pila lee Cuando se inicia, gira el transportador de entrada 1 hacia adentro, espera 7 segundos y luego detiene el transportador de entrada 1. A continuación, gire el transportador 2 hacia adelante, espere 5 segundos y luego detenga el transportador 2. Por último, haga girar el transportador de salida 4 hacia afuera, espere hasta que la reflectividad del sensor de objeto A en % sea mayor a 9 y luego detenga el transportador de salida 4.

Asegúrese de que haya un disco verde colocado en el transportador de entrada. Presione el botón Check en el cerebro para ejecutar el proyecto y probarlo.

Observe el comportamiento de los transportadores a medida que se ejecuta el proyecto.

EXP Cerebro con el botón de verificación de diamante resaltado en un cuadro rojo para iniciar el proyecto de la Lección 4 de la Unidad 4.

Presione el botón X en el cerebro para detener el proyecto cuando las cintas transportadoras hayan terminado de moverse. Registra tus observaciones en tu cuaderno de ingeniería.

¿Los transportadores se movieron como usted predijo? ¿El disco verde se movió al transportador de salida como estaba previsto? ¿Por qué o por qué no?

EXP Cerebro con el botón de diamante X llamado en un cuadro rojo para finalizar el proyecto.

Revisión del proyecto

Repasemos el flujo del proyecto en este proyecto que detuvo el transportador de salida cuando el sensor de objetos detectó el disco verde. El bloqueEsperar hastadetuvo el avance del proyecto hasta que la condición dentro del mismo se informara como VERDADERA. 

Diagrama que visualiza el flujo de la lógica en el proyecto VEXcode EXP. Una flecha indica que el bloque Esperar hasta que se inicie, y luego una flecha cíclica indica que el bloque espera hasta que su condición sea verdadera. Solo cuando la reflectividad del sensor de objeto A en % sea mayor a 9 se ejecutará el siguiente bloque.

Debido a que el bloqueSpines un bloque sin espera, permite que la celda de trabajo CTE siga girando el motor del transportador mientras verifica los valores del sensor de objetos y la condición de que la reflectividad sea mayor al 9 %. Después de que la condición en el bloqueEsperar hastase informa comoVERDADERO, el proyecto se mueve al siguiente bloque en la pila, deteniendo el motor del transportador de salida.

Para tu información

Se puede utilizar otra combinación de bloques en un proyecto para detener el transportador de salida cuando un objeto está debajo del sensor de objetos. El bloqueEstablecer umbral de detecciónse puede utilizar al comienzo de un proyecto para establecer el umbral, tal como lo hizo el bloqueMayor queen el proyecto que se creó anteriormente. 

Bloque de umbral de detección EXP de VEXcode que dice 'Establecer el umbral de detección del sensor de objeto A al 50 %.

Una vez establecido el umbral, el bloque booleanoDetecta objetose puede utilizar en cualquier bloque con espacios hexagonales. Este bloque informará VERDADERO cuando se cumpla el umbral de detección definido por el bloqueumbral de detección, o FALSO cuando el porcentaje de reflectividad esté por debajo de ese umbral.

VEXcode EXP Detecta bloque de objeto que dice '¿El sensor de objeto A detecta un objeto?'.

Debido a que el bloqueDetecta objetoes un bloque booleano, puede encajar directamente en el bloqueEsperar hasta.

Versión alternativa de la pila EXP de VEXcode, con el bloque booleano Esperar hasta cambiado a un sistema de Umbral de detección. Toda la pila ahora dice Al iniciar, establezca el umbral de detección del sensor de objeto A al 9%. A continuación, gire el transportador de entrada 1 hacia adentro, espere 7 segundos y luego detenga el transportador de entrada 1. A continuación, gire el transportador 2 hacia adelante, espere 5 segundos y luego detenga el transportador 2. A continuación, gire el transportador de salida 4 hacia adentro, espere hasta que el sensor de objetos A detecte el objeto y luego detenga el transportador de salida 4.

Comprueba tu comprensión

Antes de pasar a la siguiente lección, asegúrese de comprender los conceptos de esta lección respondiendo las siguientes preguntas en su cuaderno de ingeniería.

Comprueba tus preguntas de comprensión > (Google Doc / .docx / .pdf )


Seleccione Siguiente > para pasar a la actividad Ponerlo todo junto.