DOCUMENTACIÓN CON IA
¿Qué desea saber?
Medición (Inspección Dimensional)
El bloque de Medición convierte el OV80i de un detector de defectos en una estación de inspección dimensional. En lugar de preguntar "¿esta pieza es buena o mala?", pregunta "¿cuál es el diámetro, la separación o el ángulo de esta pieza, en milímetros?" — y le proporciona un número con el cual puede aprobar/rechazar contra una tolerancia.
No ejecute una receta de Medición con una lente estándar (entocéntrica) de montura C. Las lentes estándar introducen distorsión de perspectiva y cambios de magnificación con la distancia de trabajo — una pieza que se encuentra 1 mm más cerca de la cámara se mide notablemente más grande, y las características cerca de los bordes del cuadro se miden de manera diferente a las características en el centro. Los números que obtendrá serán incorrectos por cantidades mayores que las tolerancias típicas, y no hay un paso de calibración que corrija esto.
Una lente telecéntrica mantiene la magnificación constante en todo el campo de visión y en pequeñas variaciones de la distancia de trabajo. Es la única pieza de hardware que hace que la inspección dimensional sea realmente precisa.
Si su instalación no cuenta con una lente telecéntrica, deténgase aquí — cambie a Clasificación o Segmentación para un estilo de inspección aprobado/rechazado, o comuníquese con support@overview.ai para especificar la óptica correcta antes de continuar.
Internamente, un modelo de deep learning encuentra características primitivas en la imagen (bordes, círculos, segmentos de línea, arcos) y luego calcula mediciones entre o sobre esas primitivas (radio de un orificio, distancia entre dos bordes, ángulo entre dos líneas). Debido a que la cámara está calibrada en px/mm, cada resultado se entrega en unidades del mundo real.

Objetivos de aprendizaje
Al final de esta página podrá:
- Decidir cuándo Medición es el bloque correcto (vs Clasificación o Segmentación)
- Calibrar la cámara para que un píxel se asigne a un valor conocido en milímetros
- Dibujar primitivas (círculos, líneas, puntos, arcos) sobre la pieza y convertirlas en mediciones (radio, distancia, ángulo)
- Capturar y etiquetar imágenes de entrenamiento para que el modelo de Medición aprenda a encontrar primitivas de manera confiable
- Entrenar, probar e implementar un modelo de Medición
- Conectar resultados con lógica de aprobado/rechazado y leerlos en el panel de operador en pantalla de la cámara (la HMI, abreviatura de Human-Machine Interface)
Cuándo usar Medición
| Caso de uso | Bloque correcto |
|---|---|
| ¿El diámetro del orificio está dentro de 9.0 ± 0.1 mm? | Medición |
| ¿La separación entre dos piezas es menor a 0.5 mm? | Medición |
| ¿En qué ángulo está doblada esta ménsula? | Medición |
| ¿La etiqueta está presente o ausente? | Clasificación |
| ¿Hay un rayón en la superficie? | Segmentación |
| ¿Qué dice el texto en la pieza? | OCR |
Medición es la herramienta correcta siempre que un sistema posterior necesite un número en unidades físicas en lugar de una etiqueta de clase. Si su hoja de especificaciones tiene una tolerancia escrita, lo que necesita es Medición.
La segmentación puede darle el área de una característica en píxeles, pero no se ajusta a los bordes con precisión subpíxel y no proporciona primitivas geométricas. Si solo necesita "¿la mancha es más grande que X cm²?", la segmentación puede ser suficiente. Si necesita "el radio de este orificio es 4.31 mm", use Medición.
Cómo funciona la Medición
El pipeline de Medición consta de cuatro etapas, en orden:
- Capturar y alinear. La cámara se activa, captura un cuadro y ejecuta el alineador para fijar la pieza a la orientación de la plantilla. Cada medición se calcula en el cuadro alineado, por lo que una pieza rotada 10° aún mide lo mismo.
- Detectar primitivas. El modelo de Medición entrenado examina dentro de cada ROI (Region of Interest — el rectángulo que dibuja en la imagen para indicarle a la cámara "mire aquí") y genera primitivas geométricas: un segmento de borde, un arco/círculo, o una línea. Cada receta tiene una ROI Principal más ROIs Secundarias opcionales para acercarse a características específicas.
- Calcular mediciones. Cada medición que defina (por ejemplo, "Radio del Círculo 1", "Distancia de la Línea A a la Línea B") se evalúa contra las primitivas detectadas. Los resultados se reportan en milímetros (o la unidad que elija) gracias a la calibración de píxeles a mm.
- Aprobado/rechazado y salida. Los valores se envían al bloque de lógica de IO, donde una función de Node-RED decide PASS o FAIL en función de sus tolerancias, y el resultado se envía al HMI, al PLC (el controlador de planta), a MQTT y a cualquier otro sistema conectado.
Si su imagen es inestable, la alineación se desvía. Si la alineación se desvía, el modelo ve la primitiva en un lugar diferente cada vez. Si la detección de primitivas es inestable, las mediciones son ruidosas. Corrija los problemas en la etapa más temprana en la que aparezcan. Reajustar los umbrales de aprobado/rechazado no corregirá una mala alineación, y reentrenar el modelo no corregirá una mala adquisición de imagen.
Paso 1: Crear una receta de Medición
- Abra la interfaz web del OV80i en un navegador (
http://<camera-ip>). La barra lateral izquierda muestra All Recipes, Recipe Editor, HMI, etc. - Haga clic en All Recipes en la barra lateral izquierda.
- Haga clic en + New en la esquina superior derecha. Se abre una ventana modal titulada Add A New Recipe.
- Ingrese un Name (por ejemplo,
Hole_Diameter_Check) y una descripción opcional, luego haga clic en OK. - La nueva receta aparece en la lista. Haga clic en Activar en su fila, luego elija Activate and go to editor en el cuadro de diálogo de confirmación.
- Se abre el editor de recetas. En la barra superior, junto al nombre de la receta, encuentre el combobox de tipo de receta (por defecto es Classification). Haga clic en él y seleccione Measurement. La fila de Bloques AI en el editor ahora resalta el bloque Measurement listo para configurarse.

Cada receta contiene exactamente un modelo de Medición, pero ese modelo puede llevar muchas primitivas y muchas mediciones a través de múltiples ROIs Secundarias. No cree una receta separada por dimensión — agrupe todas las dimensiones de una pieza en un modelo de Medición para que compartan la misma adquisición de imagen y alineación.
Paso 2: Configuración de imagen
Haga clic en Configure Imaging en el editor para abrir la configuración de imagen. Este es el mismo panel de imagen utilizado por todas las recetas — consulte Fundamentos de la Configuración de Imagen — con una responsabilidad adicional para Medición: la pieza debe estar en enfoque nítido, sin desenfoque por movimiento, en cada ciclo. La precisión de borde a nivel subpíxel depende de ello.

Configuraciones que más importan para Medición:
- Exposición. Configure la pieza bien expuesta pero sin sobreexponerse. Las altas luces saturadas destruyen el detalle de los bordes.
- Ganancia. Mantenga la ganancia en 1 si es posible. Una ganancia más alta agrega ruido, y el ruido desplaza los bordes medio píxel a la vez.
- Gamma. El valor predeterminado de 50 es adecuado para la mayoría de las piezas. Auméntelo si los bordes oscuros son difíciles de ver.
- Rotación de imagen. Deje en "No Rotation" a menos que su fijación obligue a un montaje lateral de la cámara.
- Configuración del disparador. El disparador manual del HMI es adecuado para la configuración. Cambie a un sensor digital o disparador del PLC para producción.
Exposición larga + banda transportadora en movimiento = bordes desenfocados. Un desenfoque de 2 píxeles en una calibración de 17 px/mm es un error de ±0.06 mm antes de siquiera comenzar. Ya sea congele la pieza con un estroboscopio o reduzca la exposición lo suficiente para que el movimiento en un cuadro sea menor a 1 píxel.
Haga clic en Save Imaging Settings cuando termine.
Paso 3: Calibrar píxeles a milímetros
Este es el paso que distingue a Medición de cualquier otro bloque. Sin calibración, la cámara solo conoce píxeles — y un píxel tiene un tamaño diferente en cada instalación. La calibración le enseña a la cámara "esta cantidad de píxeles en el sensor equivale a esta cantidad de milímetros en el mundo real."
- En configuración de imagen, haga clic en Calibración de Imagen de Referencia (parte inferior del panel derecho).
- Capture o cargue una imagen de referencia que contenga una dimensión conocida — típicamente un objetivo de calibración, una característica mecanizada con precisión en el fixture, o una pieza buena conocida donde haya medido una dimensión con calibradores.
- Abra la sección Calibración de Medición. Confirme la unidad (predeterminada
mm). - Haga clic en Medir en Imagen. Haga clic en dos puntos de la imagen que abarquen una distancia conocida (por ejemplo, la distancia de centro a centro entre dos pines, o el diámetro de un pin calibrador).
- La cámara reporta la distancia en píxeles medida (por ejemplo, "Medido: 159 px"). Escriba el valor del mundo real en milímetros (por ejemplo,
9.0) y haga clic en Finalizar. - El valor de px/mm se completa automáticamente — para esta receta en las capturas de pantalla a continuación, la calibración resultó en 17.621 px/mm, lo que significa que un milímetro de la pieza ocupa ~17.6 píxeles del sensor.


El número px/mm está vinculado al lente, la distancia de trabajo y el sensor. Si cambia el lente, reenfoca, mueve la cámara o intercambia fixtures, recalibre. Una calibración que está 1% desviada se convierte en una medición que está 1% desviada — en una dimensión de 10 mm, eso es 0.1 mm de error sistemático puro, frecuentemente más que su tolerancia.
Calibrar con una característica de 2 mm multiplica cualquier error de apuntado por 5x en comparación con calibrar con una característica de 10 mm. Siempre calibre contra la dimensión conocida más larga que quepa limpiamente en el cuadro.
Paso 4: Imagen de Plantilla y Alineación
La medición requiere alineación. El modelo se entrena contra primitivas en posiciones fijas en la pieza; si la pieza se desplaza o rota, el alineador tiene que compensar para que el modelo aún vea las primitivas en las mismas coordenadas de la imagen.
- Desde el editor de recetas, haga clic en Imagen de Plantilla y Alineación bajo "Alineación de Imagen y Configuración de Inspección".
- Capture una imagen de referencia limpia con la pieza bien posicionada, luego dibuje el Área de Búsqueda (cuadro cian) alrededor del área de la imagen donde puede aparecer la pieza, y la región de plantilla (cuadro amarillo) ajustada estrechamente alrededor de la pieza misma.
- Elija un Tipo de Alineador: Classical para piezas ricas en bordes, Deep Learning para piezas texturizadas — vea AI Aligner (Deep Learning) para la matriz de decisión.
- Ajuste rango de rotación, Sensibilidad y (para Classical) las regiones a ignorar hasta que la alineación sea estable a través de las capturas.

La opción "Scale Invariant" del AI Aligner permite que el emparejador tolere piezas que están ligeramente más cerca o más lejos de la cámara. No la habilite en una receta de Medición. La invariante de escala reescala silenciosamente el cuadro para que coincida con la plantilla, lo que significa que una pieza que está 1% más lejos de la cámara mide lo mismo que una pieza a la distancia correcta — y su calibración px/mm de repente está incorrecta. Mantenga Scale Invariant desactivado y controle la distancia de trabajo con fixturing mecánico en su lugar.
El interruptor "Omitir Alineador" está bien para recetas de Segmentación o Clasificación que examinan toda la imagen, pero una receta de Medición sin alineador producirá resultados sin sentido en el momento en que una pieza se desplace un milímetro. Siempre configure la alineación para Medición.
Paso 5: Configuración de Inspección — ROI Principal y ROIs Secundarios
La pantalla de Configuración de Inspección define dónde en la imagen alineada debe buscar el modelo de Medición. Existe un ROI Principal (cubre toda la región de interés) y, opcionalmente, uno o más ROIs Secundarios (acercan a características específicas).

- El cuadro del ROI Principal ya existe cuando se agrega el bloque de Medición — arrastre sus esquinas hasta que cubra el área que desea medir. La mayoría de las recetas utilizan un solo ROI Principal que cubre toda la pieza.
- Para inspeccionar múltiples características discretas (dos agujeros en lados opuestos de un soporte, por ejemplo), haga clic en Agregar ROI Secundario para cada una y colóquelo ajustadamente alrededor de la característica.
- Cada ROI obtiene su propia copia de las predicciones primitivas del modelo. Un ROI Principal con cinco ROIs Secundarios significa que el modelo se ejecuta seis veces por captura.
Un ROI Secundario ajustado alrededor de un solo agujero le da al modelo una vista limpia de una característica, hace que el etiquetado sea inequívoco y mantiene la inferencia rápida. Un ROI Principal gigante que cubre diez agujeros significa que el etiquetador tiene que desambiguar diez primitivas en cada imagen, y el modelo tiene más ruido visual que ignorar.
La barra sobre el lienzo tiene entradas H / W / X / Y / ∠ para la colocación precisa del ROI, botones de Alinear y Distribuir para disponer los ROIs uniformemente, y un interruptor de Bounding Boxes + Etiquetas de ROI para limpiar la superposición mientras trabaja. Haga clic derecho en cualquier ROI para ver un menú contextual (copiar, pegar, bloquear, eliminar).
Paso 6: Definir primitivas
Abra el Editor de Primitivas haciendo clic en Editar ROI Principal (o Editar en cualquier ROI Secundario). Aquí es donde dibuja las formas geométricas que el modelo aprenderá a encontrar. Cada ROI comienza con cuatro primitivas de Sistema bloqueadas — borde Superior / Inferior / Izquierdo / Derecho del propio ROI — que puede usar como geometría de referencia para mediciones de distancia sin dibujar nada nuevo.

Tipos de primitivas disponibles (barra de herramientas izquierda):
| Icono de herramienta | Tipo de primitiva | Qué captura | Dónde aparece |
|---|---|---|---|
| Línea | Segmento | Un borde recto | Bordes de piezas, ranuras, referencias |
| Arco / Radio | Círculo | Un radio + centro | Agujeros, pines, filetes, características curvas |
Pase el cursor sobre cualquier icono de herramienta para ver su nombre; la barra de estado en la parte inferior del editor muestra la herramienta activa — por ejemplo "Herramienta: Arco — Haga clic para colocar el primer punto".
Para dibujar una primitiva:
- Haga clic en el icono de la herramienta en la barra de herramientas izquierda (por ejemplo, Línea o la herramienta de radio/arco). La barra de estado muestra el nombre de la herramienta activa.
- Haga clic en la imagen en los puntos que la herramienta necesita. Para un círculo/arco, haga clic en tres puntos alrededor del borde de la característica. Para una línea, haga clic en dos puntos finales.
- La primitiva aparece en el Panel de Datos a la derecha, bajo la sección Primitivas.
- Renómbrela a algo significativo (
Hole_A,Top_Edge_of_Slot) haciendo clic en el icono del lápiz junto a su nombre. Los buenos nombres hacen que las mediciones sean legibles más adelante.
La fila de interruptores sobre el lienzo (Líneas de Construcción, Primitivas, Mediciones, Etiquetas, Cuadrícula de Píxeles) controla lo que se dibuja sobre la imagen — desactívelos para despejar mientras dibuja, vuelva a activarlos para verificar.
Pase el cursor sobre el lienzo mientras dibuja y aparecerá una lupa de 4x en la esquina. La colocación de bordes a nivel subpíxel importa: una primitiva colocada un píxel desplazado, multiplicado a lo largo de 1000 ciclos, es lo que separa una medición utilizable de una ruidosa.
La herramienta de arco ajusta un círculo a través de tres puntos en el borde de la característica. Coloque esos tres puntos bien separados alrededor del borde, no agrupados en la parte superior. Un trío agrupado da un ajuste tembloroso que el modelo heredará.
Paso 7: Definir mediciones
Las primitivas son la geometría sin procesar; las mediciones son los números que realmente le importan. Cada medición referencia una o dos primitivas y calcula un valor a partir de ellas.
Tipos de medición disponibles:
| Medición | Entradas | Salida |
|---|---|---|
| Radio | Un círculo/arco | Radio del círculo en mm |
| Distancia | Dos primitivas (punto a punto, punto a línea, línea a línea) | Distancia más corta en mm |
| Longitud | Un segmento de línea | Longitud del segmento en mm |
| Ángulo | Dos líneas | Ángulo entre ellas en grados |
| Posición X / Y | Un punto | Coordenada del punto en el marco alineado |
Para definir una medición:
- En el Panel de Datos del lado derecho del Editor de Primitivas, expanda la sección Mediciones.
- Haga clic en el botón + / Agregar medición en la parte superior de la sección Mediciones. Se abrirá un pequeño formulario.
- Elija el tipo de medición (Radio / Distancia / Ángulo / Longitud / etc.) desde el menú desplegable.
- Seleccione la(s) primitiva(s) que debe referenciar. Una medición de Radio toma un círculo; una Distancia toma dos primitivas.
- Nombre la medición de forma descriptiva (
Hole_A_Diameter,Slot_Gap). Este nombre aparece en la HMI y es la clave que su Función de Node-RED utiliza para leer el valor, así que manténgalo estable. - Haga clic fuera del formulario o presione Enter para guardar. La nueva medición aparece en la tabla de Mediciones con su valor en vivo calculado a partir de la imagen de plantilla.
Puede combinar: una sola ROI puede contener cinco primitivas y diez mediciones derivadas de ellas. La captura de pantalla anterior muestra una primitiva Circle 1 con una medición Radius Circle 1 que reporta 4.306 mm.
Las primitivas bloqueadas de Borde Superior / Inferior / Izquierdo / Derecho que vienen con cada ROI son entradas de medición válidas. Si necesita la "distancia desde la parte inferior de la ranura hasta la parte inferior de la ROI", no necesita dibujar una nueva línea — haga referencia directamente al Borde Inferior del sistema.
Paso 8: Etiquetar imágenes de entrenamiento
Dibujar primitivas en la plantilla le da al modelo un ejemplo. La producción necesita al menos 10–20 ejemplos para que el modelo aprenda a encontrar las primitivas bajo variaciones del mundo real (variación de iluminación, rayones en la superficie, lotes de color).
- En el editor de recetas, haga clic en Measurement Block desde la navegación superior, o Medición bajo AI Blocks.
- Haga clic en Captura para tomar un nuevo cuadro, o Importar Captura para traer uno desde la Biblioteca.
- Para cada captura, dibuje las mismas primitivas que definió en la plantilla — en las mismas ubicaciones en cada nueva imagen de la pieza.
- Haga clic en Guardar Anotaciones cuando cada captura esté etiquetada.
- Navegue con Anterior / Siguiente para recorrer cada captura.

Veinte capturas de la misma pieza en la misma posición le enseñan muy poco al modelo. Diez capturas con un rango de rotaciones de la pieza, ligeros desplazamientos de posición, variaciones de iluminación y condiciones de superficie le enseñan todo lo que necesita. Varíe deliberadamente.
Si "Circle 1" es el orificio superior izquierdo en la captura 1, tiene que ser el orificio superior izquierdo en la captura 2. Confundir a qué característica física apunta una primitiva nombrada le enseña contradicciones al modelo, y las contradicciones aparecen como predicciones 10 veces más ruidosas en producción.
Paso 9: Entrenar el modelo
- Desde la vista del Measurement Block o el editor de recetas, abra la pestaña Entrenar.
- Encuentre la fila de measurement. Confirme el Modo de entrenamiento — para Measurement, Accurate es el predeterminado y recomendado. Existen modos más rápidos para iteración rápida, pero sacrifican precisión.
- Haga clic en Entrenar en la fila (o Entrenar todos para entrenar todos los bloques de la receta).
- El modal de Entrenamiento del modelo de AI muestra el progreso en vivo: Mean IoU (azul, subiendo), Loss (rojo, bajando) y el contador de iteraciones (p. ej. 200/200).


Qué buscar:
- IoU sube y Loss baja a medida que aumentan las iteraciones. Si ambos están planos al inicio, se necesitan más imágenes o mejores etiquetas.
- La cuadrícula de miniaturas a la derecha muestra los recortes de entrenamiento con primitivas predichas dibujadas (True Positive en verde, False Positive en rojo, False Negative en azul). Revísela — si un recorte está en la leyenda roja/azul, examine sus etiquetas.
- La Calidad del modelo (IoU) se reporta cuando termina el entrenamiento. Para Measurement, cualquier valor por encima del 70% es utilizable; por encima del 85% es excelente.
No apunte a un modelo perfecto en el primer intento. Entrene con 10 capturas, ejecute Vista Previa en Vivo con una pieza nueva, vea dónde se desvían las predicciones y luego agregue 5 capturas más dirigidas al modo de falla y vuelva a entrenar. Tres iteraciones cortas superan a una larga.

Paso 10: Probar y verificar
- De vuelta en la vista del Measurement Block, active el Modo de Vista Previa en Vivo.
- Active capturas con el botón Probar (o Captura en el HMI) y observe cómo las primitivas predichas se superponen sobre los cuadros en vivo.
- Compare las dimensiones predichas con las mediciones de calibrador en la misma pieza física. Ambas deben coincidir dentro de su presupuesto de tolerancia.
- Mueva la pieza (dentro de los límites de alineación) y confirme que el valor de medición se mantenga estable entre capturas.
La cámara le indica 4.306 mm. Tome la pieza, mídala con calibradores y vea si también lee 4.3 mm. Si la cámara y los calibradores difieren por más que su tolerancia, el problema casi siempre es de calibración (paso 3) — recalibre contra la dimensión más larga del fixture e intente de nuevo.
Paso 11: Conectar la lógica de aprobado/rechazado
El modelo produce números; el bloque de lógica de IO convierte esos números en un PASS o FAIL.
- Desde el editor de recetas, haga clic en Configurar IO (o en la pestaña IO Logic).
- Arrastre un nodo All Block Outputs, un nodo Function y un nodo Final Pass/Fail. Conéctelos entre sí.
- Haga doble clic en el nodo Function y escriba la verificación de tolerancia. A continuación se muestra la forma de la lógica — los resultados de measurement llegan bajo la porción del Measurement block de
msg.payload, indexados por los nombres que estableció en el Primitive Editor. La estructura exacta del payload puede cambiar entre versiones de firmware, por lo que conecte un nodo Debug una vez e inspeccione elmsgen vivo para confirmar los nombres de los campos antes de depender de ellos.
// PASS if hole radius is within 4.30 ± 0.10 mm
// Adjust the path below to match the payload from your camera's
// Debug node — the Measurement block emits an array of measurement objects
// each with a name and a numeric value in mm.
const measurements = msg.payload.measurement?.measurements ?? [];
const radius = measurements.find(m => m.name === 'Radius Circle 1');
if (!radius) {
msg.payload = false; // no result = fail
return msg;
}
const value = radius.value; // value in mm
const target = 4.30;
const tolerance = 0.10;
msg.payload = Math.abs(value - target) <= tolerance;
return msg;
- Haga clic en Desplegar para poner el flujo en producción.
El nodo Function busca las mediciones por los nombres que asignó en el Primitive Editor. Si renombra una medición, el flujo se rompe hasta que actualice el nodo. Mantenga los nombres estables una vez que la producción esté en marcha.
Para piezas con varias dimensiones a verificar, construya un Array.every(...) sobre una lista de objetos {name, target, tolerance}. Un solo nodo Function puede validar todas las dimensiones de la pieza, y una sola falla cortocircuita toda la inspección a FAIL.
Lectura de resultados en el HMI
Después de desplegar, cambie a la pestaña HMI. Active una captura y la vista en vivo anotará la imagen con las primitivas predichas, el indicador de aprobado/rechazado cambiará a PASS o FAIL, y la tabla de mediciones a continuación mostrará cada dimensión con:
- Avg — el valor agregado a través de todas las Child ROIs (útil cuando la misma medición se ejecuta en múltiples ROIs)
- Inspection Region — Main ROI o qué Child ROI produjo el valor
- Search Area — a qué Search Area del alineador pertenece el valor
- Value — la medición en mm (o su unidad)
- Primitives — de cuál(es) primitiva(s) se calculó la medición

Active o desactive las superposiciones según sea necesario:
- Labels — muestra los nombres de las primitivas en la imagen
- Blob Stats — muestra los puntajes de detección
- Heatmap — superpone el mapa de calor de confianza del modelo (útil para depurar "¿por qué eligió ese punto?")
Ejemplos prácticos
Verificación del diámetro de un orificio
- Primitiva: un Circle en una Child ROI ajustada alrededor del orificio
- Medición: Radius (el resultado se reporta como radio; multiplique por 2 en el nodo Function si necesita el diámetro)
- Aprobado/rechazado:
Math.abs(radius - target) <= tolerance
Espacio entre dos piezas
- Primitivas: dos primitivas Line/Segment paralelas a lo largo de los bordes enfrentados
- Medición: Distance, Line-to-Line
- Aprobado/rechazado:
gap >= min_gap && gap <= max_gap
Distancia entre orificios
- Primitivas: dos primitivas Circle, una en cada orificio
- Medición: Distance, Point-to-Point (entre los centros)
- Aprobado/rechazado:
Math.abs(spacing - target) <= tolerance
Ángulo de doblez de un soporte
- Primitivas: dos primitivas Line, una a lo largo de cada brazo del soporte
- Medición: Angle, Line-to-Line
- Aprobado/rechazado:
Math.abs(angle - target_degrees) <= angle_tolerance
Consejos y trucos
Una vez que la calibración esté ajustada, fije físicamente la cámara, el lente y el dispositivo de sujeción de la pieza. Cualquier movimiento invalida el valor de px/mm silenciosamente. Una cinta de torque en el anillo de enfoque y fijador de roscas en la montura del lente no son excesivos en una instalación de producción.
La lupa 4x del Primitive Editor muestra los píxeles en los que está haciendo clic. La precisión de los bordes en las etiquetas es el límite superior para la precisión de los bordes en producción. No haga clic "cerca" del borde — haga clic sobre el borde, con zoom.
Antes de desplegar, capture más de 30 cuadros que cubran casos de aprobado y rechazado, y pase los a través de Recipe Backtesting. Ejecuta toda la receta contra el conjunto de prueba en segundos y reporta mediciones por cuadro, para que pueda confirmar que la tolerancia que estableció en el nodo Function realmente separa las piezas buenas de las malas sin falsos positivos.
Repitiendo la advertencia del inicio de la página: los lentes estándar de montura C introducen distorsión de perspectiva que empeora cerca de los bordes de la imagen y se desplaza con la distancia de trabajo. Un lente telecéntrico es el único componente de hardware que hace que la inspección dimensional sea precisa. Si su instalación no tiene uno, no utilice el bloque de Medición.
La vista del Measurement Block no guarda automáticamente. Haga clic en Save Annotations después de cada una o dos capturas — al cerrar la pestaña se perderán las etiquetas no guardadas.
Errores comunes y solución de problemas
| Síntoma | Causa probable | Solución |
|---|---|---|
| La cámara lee 4.3 mm, los calibradores leen 4.5 mm | La calibración está desviada | Recalibre contra una dimensión de referencia más larga; verifique que el valor de px/mm no haya cambiado |
| La misma pieza se mide diferente en cada ciclo | La alineación es inestable, o hay desenfoque por movimiento | Ajuste la plantilla / área de búsqueda, reduzca la exposición, agregue estroboscopio, fije el dispositivo |
| Las predicciones saltan a la característica equivocada | Las etiquetas primitivas no son consistentes entre las capturas de entrenamiento | Vuelva a etiquetar las capturas, asegúrese de que "Círculo 1" sea siempre la misma característica física, reentrene |
| El Modelos encuentra una primitiva en una pieza defectuosa donde no debería | El conjunto de entrenamiento no tiene ejemplos del defecto; el Modelos no ha aprendido a rechazar | Agregue 5+ capturas de defectos, etiquételas sin primitiva (o con la primitiva en la ubicación correcta), reentrene |
| El valor de px/mm cambió silenciosamente | El lente fue enfocado, movido o reemplazado | Recalibre. Bloquee el lente. No enfoque durante la producción |
| Las mediciones están muy desviadas después de una actualización de software | La rotación de imagen cambió, o se perdió la plantilla de alineación | Abra configuración de imagen y confirme la rotación de imagen; vuelva a capturar la plantilla si es necesario |
| La receta se ejecuta lentamente (latencia alta) | Demasiadas ROI hijas, o el Modelos se ejecuta en modo Fastest sin suficiente resolución | Consolide las ROI, o entrene en modo Accurate |
Si renombra una primitiva, mueve una ROI hija, agrega una medición o cambia el Área de Búsqueda, reentrene el Modelos. El entrenamiento está vinculado a la disposición espacial que definió; cambiar la disposición sin reentrenar deja al Modelos buscando en el lugar equivocado. La página de entrenamiento marcará el Modelos como desactualizado cuando esto ocurra.