NI Vision Builder nos da la opción de crear máquinas de estados. Con las imágenes del tutorial 5, gracias a la máquina de estados, solo vamos a elegir las imágenes que tengan el bote de jabón completo de una simulación de cinta transportadora y detectar cuando no tiene tapa.
Elegimos la instrucción Simulate Adquisition para importar las imágenes del tutorial 5. La damos nombre y seleccionamos la opción para adquirir todas las imágenes.
Para escoger solo las imágenes que tenga el bote completo, buscamos un patrón. Elegimos la instrucción Match Patern.
Nos aparece una ventana donde elegimos el patrón. Como los botes aparecen por la parte izquierda de la imagen, vamos a elegir un patrón de la parte izquierda del bote.
Aceptamos y se nos cierra la ventana emergente. Podemos delimitar la zona en la que nos busque el patrón editando el cuadrado verde.
La configuración la podemos dejar por defecto. Especificamos el límite de que encuentre 1 coincidencia como mínimo.
Ya tenemos creado el primer globo de la máquina. Para editar y añadir estados, seleccionamos la opción señalada y se nos cambiará la ventana de estados con la de las imágenes:
Con el botón derecho añadimos los estados que vallamos a necesitar. En nuestro caso: el de toma de decisiones que ya tenemos hecho, uno para encontrar la tapa y dos para mostrar un mensaje si encontrásemos o no la tapa.
Para añadir transiciones seleccionamos el estado de partida y con el botón derecho añadimos una nueva transición.
Editamos la transición del primer globo ya que ya tenemos especificadas sus instrucciones, hacemos doble clic sobre la transición. Damos nombre a la transición y tomamos la decisión de que pase si ha encontrado el bote, es decir, si el número de coincidencias de la búsqueda del patrón es 1.
Seleccionamos el siguiente globo, nos aparecerá sin instrucciones y cambiamos la pantalla para introducirlas. En este globo vamos a detectar la tapa, elegimos la instrucción Caliper para medir el ancho de la tapa.
Delimitamos la zona de trabajo.
Podemos modificar la configuración con el fin de que nos aparezcan todos los puntos donde identifica el cambio de intensidad (puntos amarillos). El Gap es para cambiar el número de muestras, el Edge Strenght es para elegir el tono de gris en el que se va a producir el cambio.
Limitamos el rango de error para que nos de fallo el estado de la inspección si la medida obtenida no cumple los requisitos. Comprobamos que en todas las imágenes nos realice la operación correctamente.
Cambiamos la ventana y editamos las transiciones que nos salen de este globo, dejamos que por defecto nos valla al globo de fallo.
Editamos la transición que nos va al globo de acierto, elegimos la instrucción de detectar tapa y especificamos que la distancia obtenida sea mayor de 100 pixeles. También podemos elegir el estado de la instrucción ya que la delimitamos.
Vamos a crear los mensajes de fallo y acierto en sus respectivos globos. Para crear el mensaje elegimos la instrucción Custom Overlay.
Elegimos el indicador booleano, cambiamos su texto: KO para fallo y OK para acierto. Repetimos la operación en el globo de acierto
Finalmente comprobamos su funcionamiento:
No hay comentarios:
Publicar un comentario