6-NI Vision Builder comprobación pines

En esta entrada vamos a realizar la comprobación de la distancia entre los pines de un chip con las imágenes que nos facilita NI Vision Builder en el ejemplo 6.

Como en alguna de las anteriores entradas, vamos a repartir las funciones en diferentes estados.
Despues del Start iremos al estado “Inspect”.




Dentro de este estado vamos a adquirir las imágenes como hemos hecho hasta ahora con “Simulate Acquisition” del directorio:” C:\Program Files (x86)\National Instruments\Vision Builder AI 2010\DemoImg\Tutorial 6”.





Pasamos seguidamente a buscar los pines con “Find Edges”, esta función buscará los pines mediante flancos de contraste.




Nos situamos en la pestaña “Main” y trazamos una línea en la imagen a través de la zona donde van a estar los pines en todas las imágenes.




Como vemos en la línea nos marca 7 puntos, cada uno de esos puntos es un flanco, en caso de que no nos aparezcan o aparezcan más de la cuenta lo configuraremos en la pestaña “Settings”.




En esta pestaña configuramos “Bright to Dark” es decir de claro a oscuro dado que la imagen empieza en claro y los pines que va a ir encontrando son oscuros.


También configuramos qué valor va a tomar como flanco “Minimum Edge Strengt”, con 60 funcionará correctamente.

Podemos dejar lo demás por defecto.




En la pestaña “Advanced” nos mostrará los flancos que ha encontrado con sus datos.




En “Limits” configuramos el máximo y mínimo de flancos en 7.




La última función de este estado “Inspect” va a ser inicializar una variable “CONTADOR” a el valor 1 con la función “Set Variable”.

Esta variable nos va a servir más adelante para irnos posicionando en cada uno de los pines.




Ahora desde “Inspect”, si la búsqueda de los 7 pines ha sido fallida pasaremos al estado “FALLO”.



Si la función “BUSCA N PINES” es distinta de 7 pasa al estado “FALLO”.






En este estado simplemente ponemos un “Custom Overlay” que nos muestre un mensaje “FALSE” en pantalla.









En caso de encontrar los 7 pines pasará por defecto desde “Inspect” hasta “CHEQUEO PINES”.



La primera función va a ser “Index Measurement”.




Lo configuramos para irse posicionando en cada uno de los flancos encontrados anteriormente en función del valor de la variable “CONTADOR”.




La siguiente función va a ser “Set Coordinate System”.




Su utilidad va a ser encontrar un punto de referencia desde el cual en la siguiente función tomaremos un área de referencia para medir la distancia que hay entre los dos pines que corresponda.





Ahora usamos “Caliper Setup” que, basándose en el punto de referencia obtenido en la función anterior, buscará la distancia entre los pines en una zona de referencia.






La búsqueda se realizará de forma horizontal, el “Gap” cuanto mayor sea menos líneas de medición tendremos, en este caso con 5 es mucho más que de sobra.

“Edge Strength” es el valor que va a admitir como flanco, con 40 funciona correctamente.




En “Limits” es donde fijaremos que valores admitimos como distancia correcta entre pines, el mínimo aquí es 30 pixeles y el máximo 46 pixeles, todos los valores comprendidos entre estos dos límites serán correctos, si hubiéramos acotado más habríamos desechado mas chips.




Finalmente incrementamos la variable  “CONTADOR” para posicionarnos en el siguiente flanco o pin.






Si la variable “CONTADOR” llega a 7 significará que ha pasado correctamente por todos los pines, de los contrario habría ido al estado “FALLO” antes de llegar a 7, esto lo utilizaremos como condición para la transición al estado “PASO”.






Llegamos al estado “PASO”.



Dentro de este estado simplemente colocamos un “Custom Overlay” que nos indique en pantalla que el chip es correcto.







Como dije antes, si la medición de distancia entre pines falla, la variable “CONTADOR” no llegará nunca a vale 7 porque antes habrá pasado al estado “FALLO”.






Finalmente, los estados “PASO” o “FALLO” pasarán por defecto a “End” donde termina.








                                                  VÍDEO