Hola a todos en esta
práctica vamos a realizar un proceso mediante estados. Lo que haremos será
utilizar concretamente el programa de visión basado en la captación de una
tapa, de tal manera que nos dirá que está bien cuando los botes que vayan
pasando por la cinta estén bien cuando tengan tapa, y si no la tienen, nos dirá
que está mal.
Esto saldrá cuando esté bien:
Y esto cuando esté mal:
En definitva lo que es el programa, va a ser exactamente al
que hemos hecho en la entrada de “detector de tapa” solo que esta vez haremos
cada parte en un estado.
Este sería el diagrama de los estados.
Como veis, comenzamos en el Start, después lo que hacemos es
un chequeado de pieza, posteriormente en función de si tiene o no tapa, pasará
a un estado en que hay un overlay que marcará un “bien” o un “fail” en función
de si encuentra o no la placa.
En esta explicación me extenderé tanto puesto que cada
apartado está mejor explicado en la entrada de “detector de tapa” así que si
encontráis insuficiente esta información, echad un vistazo a la otra entrada,
por favor.
Ahora lo que haré será ir cada estado explicando un poco el
procedimiento. En primer lugar lo que vamos a ir haciendo será crear el
diagrama, es decir, cada estado, cada transición y demás. Al principio el
programa solo tiene un “inspect”, en él vamos
a meter la primera parte.
Primero daremos a este icono para meternos al entorno de los
estados.
Entonces nos meterá en el entorno de estados. Después será
el momento de meternos en el “inspect “ y poner estas dos funciones.
En primer lugar meteremos la secuencia de imágenes. Porque
estamos usando las imágenes de tutorial que nos vienen de visión, y después
metemos un match pattern.
Es prácticamente el mismo que el que hago en la
anterior entrada, así que echadle un vistazo. Sin embargo, os aconsejo que
metáis una template nueva, que es la que os enseño a continuación.
De tal manera que cuando el bote se encuentre en el centro,
nos capte, porque si solo cogemos el patrón de un lado, cuando esté rozando el
otro borde, no se verá. Lo demás como en la anterior práctica.
En segundo lugar crearemos otro estado nuevo, para eso,
desde el entorno de estados vamos a dar botón derecho .
Y nos aparecerá otro estado, cogeremos el “default “ del
anterior estado y lo uniremos a este nuevo estado, para que sea una transición.
En el siguiente estado pondremos lo siguiente.
Esta función se denomina “caliper”, con ella vamos a
chequear el bote para ver si tiene o no la tapa. En esta foto os muestro la
región que debéis coger y cómo debéis tener configurado las settings.
Importante en los limites ponemos un mínimo de 138 pixeles y
un máximo de 160.
Ya con esto tendríamos la función que chequea si hay tapa o
no. Ahora solo nos quedará poner los dos estados, el de “bien “ y “fail”, en el
que tan solo en su interior se encontrará un overlay con las siguientes
características.
En este caso me he metido en el overlay de “fail” pero el de
“viene s exactamente igual, solo que cambia el texto y su color. Tan solo
ponemos el nombre del texto y el lugar donde queremos visualizarlo. Obviamente
añadiendo primero la función del overlay.
Haremos lo mismo con el de bien, y uniremos ambos estados al
stop, con esto ya tendremos nuestro proceso de chequeo de tapas por estados
finalizado.
Esto sería el vídeo explicativo de su funcionamiento.
Espero que os halla gustado un saludo!
Descargar
No hay comentarios:
Publicar un comentario