Marble Run en LabVIEW

Ya hemos visto en un artículo anterior una implementación de máquina de estados que nos permitía hacer un sigue líneas. Ahora vamos a utilizar el Template de máquina de estados que viene con LabVIEW para un poner en marcha nuestra marble run en LabVIEW. Este diseño se basa en el trabajo de Erling (Posibilidades del Datalog), aunque en este caso hemos utilizado un sensor de luminosidad para detectar la presencia de la bola y diferenciar el valor.

Vamos a estudiar primero los estados que tiene nuestro sistema, luego veremos cómo lo implementamos en LabVIEW.

1. Estado Inicial
2. Estado Color :

  • 2.1 – Estado Azul
  • 2.2 – Estado Rojo
    3. Estado MotorEl siguiente es un diagrama de estados simplificado. Las condiciones para saltar entre estados están especificadas en el VI.

    diagrama

    Nótese que hemos utilizado la nomenclatura Estado Color y 2.1, 2.2 en lugar de 2 y 3 para los estados Azul y Rojo. Esto es porque el estado Inicial necesariamente irá a uno y sólo a uno de los estados posibles de color.

    Lo primero que tendremos que hacer es abrir el Template de Máquinas de Estado, y nos encontraremos algo como esto.

    Estados

    Abrimos Type Def y añadimos los estados que nos interesan.

    Este es el resultado de cada uno de los estados de nuestro sistema.

    Estado inicial

    Ini

    Lo primero que hacemos es medir la luminosidad inicial, usaremos este valor para saber cuando hay una bola en la pala, además de usar las constantes numéricas para ajustar la diferencia entre este luz inicial y los distintos colores de las bolas.

    La parte más compleja de esta máquina de estados es que el siguiente estado al inicial es variable, en función del color de la bola.

    Ini_lupa

    Estado Azul

    Azul

    Contador Azul +1

    Estado Rojo

    Rojo

    Contador Rojo +1

    Estado Motor

    Motor

    Hacemos los movimientos de los motores que nos permiten subir/bajar la pala de recepción de bolas y la barrera.

    Este es nuestro panel frontal, donde presentamos la información sobre el número de bolas que han recorrido el circuito, la luminosidad y el interruptor de salida.

    Panel

    Aquí tenéis un vídeo de muestra

Comments are closed.