Sistema de inspección de defectos en baldosas
cerámicas implementado en FPGA
Ceramic Tile Defect Inspection System Implemented on FPGA
Tomás Medina
#1
, Martín Vázquez
*2
, Lucas Leiva
*3
#
Departamento de computación y sistemas, UNICEN
Tandil, Bs. As., Argentina
1
tmedina@alumnos.exa.unicen.edu.ar
*
Laboratorio Sistemas Embebidos, INTIA, UNICEN
T
andil, Bs. As., Argentina
Facultad de Ingeniería, Universidad Nacional de Tres de Febrero
Caseros, Buenos Aires, Argentina
{
2
mvazquez,
3
lleiva}@labset.exa.unicen.edu.ar
Resumen La modernización en las fábricas es un factor
clave para la producción y la calidad del producto final. Sin
embargo, esta modernización puede suponer una inversión que
las empresas no pueden asumir, dejándolas fuera de la
adaptación a la Industria 4.0. En la industria de fabricación de
baldosas cerámicas se utilizan inspecciones visuales para
determinar la calidad del producto final. Estas tareas son
realizadas generalmente por operarios expuestos a entornos de
riesgo. Este trabajo presenta una solución de bajo costo para la
inspección automática de baldosas cerámicas. Los defectos
analizados son gotas, defectos de material, esquinas, bordes y
dimensiones. Todos los algoritmos se implementaron en SoC
FPGA (dispositivo Xilinx Zynq) utilizando síntesis de alto
nivel. Los algoritmos se verificaron y validaron en un entorno
controlado construido para evaluar aplicaciones de inspección
visual. Los resultados de utilización de recursos y tiempos de
procesamiento indican que la implementación en una línea de
producción real es factible.
Palabras clave: Síntesis de alto nivel, FPGA, Visión
Computacional, detección de gotas, detección de pinholes,
inspección morfológica.
Abstract Modernization in factories is the key for
production and product quality. However, this modernization
can involve an investment that companies cannot take, leaving
them out of adaptation to Industry 4.0. In the ceramic tile
manufacturing industry visual inspections are used to
determine the quality of the final product. These tasks are
carried out by operators exposed to risky environments. This
work presents a low-cost solution for automatic ceramic tile
inspection. The defects analyzed are blobs, pinholes, corners,
edges and dimensions. All the algorithms were implemented on
SoC FPGA (Xilinx Zynq device) using high level synthesis. The
algorithms were verified and validated in a controlled
environment built to evaluate visual inspection applications.
The results of resource utilization and processing times
indicate that the implementation in a real production line is
feasible.
Keywords: High Level Synthesis, FPGA, Computer Vision,
Blob Detection, Pinhole Detection, Morphological Inspection.
I. INTRODUCCIÓN
El control de calidad es la parte del proceso de
manufactura en la que se asegura que los productos cumplan
con los requerimientos mínimos definidos por la empresa,
tanto en etapas intermedias o finales en la fabricación de un
producto. Esto permite la verificación de su aptitud para ser
comercializado y por esta razón es fundamental en cualquier
proceso de fabricación [1]. Durante la fabricación de
baldosas cerámicas, es necesaria una inspección visual al
final del proceso para detectar si existen defectos
morfológicos o en la superficie de la misma, de manera que
si no cumple con los estándares de calidad del fabricante sea
retirada de su comercialización. En estas industrias, la
mayoría de las etapas de fabricación se encuentran
automatizadas, con excepción de la etapa de inspección
visual [2]. Generalmente esta tarea es realizada por
operarios que se exponen a los peligros de trabajar en un
ambiente hostil para la salud debido a los riesgos físicos de
trabajar entre máquinas, con contaminación acústica.
Además resulta una tarea repetitiva que genera fatiga tras
largas jornadas y subjetiva ya que depende del juicio de
clasificación del operador, y lo que un trabajador considere
que es un defecto a otro puede no parecerle así. Por otra
parte, existen distintos tipos de defectos que pueden estar
presentes en el producto final, como por ejemplo: gotas
(blobs), fallas de material (pinholes), rayones (scratchs),
roturas (cracks) [3].
Existen diferentes soluciones comerciales de sistemas de
inspección visual para automatizar estas tareas, como por
ejemplo las ofrecidas por Cognex [4] o Stemmer Imaging
[5]. Sin embargo, sus altos costos (superando los 100 mil
Euros) hacen difícil su incorporación en las industrias
nacionales. Como alternativa a ello, se encuentra el
desarrollo de una solución ad-hoc mediante el uso de
herramientas que permiten el prototipado rápido y la
configuración o adaptación de sistemas de visión, tales
como Matrox Imaging Library (MIL) y NI Vision Builder.
Recibido: 28/02/22; Aceptado: 04/05/22
Creative Commons License - Attribution-NonCommercial-
NoDerivatives 4.0 International (CC BY-NC-ND 4.0)
https://doi.org/10.37537/rev.elektron.6.1.144.2022
Original Article
Revista elektron, Vol. 6, No. 1, pp. 1-7 (2022)
ISSN 2525-0159
1
Además, también se encuentran disponibles bibliotecas de
código abierto como OpenCV, SimpleCV, Visualization
toolkit (VTK), Darwin, y ROVIS [6].
En cuanto a plataformas de implementación de sistemas
industriales, se destacan los microcontroladores, los DSPs y
los FPGAs. Estos últimos son propicios en estos ambientes
por su alta velocidad, flexibilidad, paralelismo inherente y la
gran variedad de recursos lógicos especializados disponibles
[7]. Con el advenimiento de herramientas más avanzadas
para FPGA, como Vivado HLS y su integración con
OpenCV (a través de la biblioteca xfOpenCV), los
desarrolladores de software pueden generar sistemas de
visión por computadora de tiempo real con más facilidad
[8].
En la literatura se encuentran numerosos trabajos
publicados de soluciones para la inspección visual
automática de baldosas cerámicas. En [9] se presenta un
análisis de la literatura al respecto, describiendo y
comparando los resultados de más de 200 trabajos
relevantes. En el reporte indica que existen una gran
cantidad de trabajos basados en observaciones estadísticas y
métodos basados en filtros, como los presentados en [3].
Este trabajo presenta el desarrollo y evaluación de
algoritmos de: detección de defectos por goteo de pintura,
detección de defectos de material (pinholes), e inspección de
defectos en bordes, esquinas y dimensiones. Los algoritmos
son aptos para la industria de fabricación de baldosas
cerámicas con texturas aleatorias, migrando las soluciones
presentadas en [3] (basado en PC) a soluciones íntegramente
basadas en SoC FPGA. Se pretende que sean implementadas
en la línea de producción de TandilCeram (ex Loimar). Los
algoritmos se describieron utilizando Vivado HLS, y se
validaron sobre un kit de desarrollo Zybo Z7-20 de Digilent,
que posee un SoC FPGA de Xilinx Zynq
XC7Z020-1CLG400C. La captura de las imágenes se
realizó mediante una Pcam 5C de Digilent, que cuenta con
un sensor OV5640 e interfaz de conexión MIPI CSI-2,
configurada con una resolución de 1920x1080 (1080p).
En la sección II del trabajo se presenta la descripción del
entorno. En la sección III se describe el algoritmo de
detección de gotas. En la <