Saltar al contenido principal

DOCUMENTACIÓN CON IA

¿Qué desea saber?

Cambio de Receta vía HTTP con Node-RED

Este tutorial le muestra cómo cambiar remotamente las recetas en su cámara OV10i usando simples solicitudes HTTP. Construirá un sistema que permita a cualquier dispositivo en su red alternar entre diferentes configuraciones de inspección al instante, ideal para líneas de producción con múltiples productos.

Lo que va a construir: Un sistema remoto de conmutación de recetas que responde a comandos HTTP desde tabletas, computadoras, PLCs, o cualquier dispositivo que pueda enviar solicitudes web.

Tiempo estimado: 15-20 minutos

Nivel de habilidad: Principiante

Ejemplo real: Imagina a un operador escaneando un código de barras en su tableta, y la cámara cambia automáticamente a la receta correcta para ese producto; ¡eso es exactamente lo que estamos construyendo!

Por qué los cambios de receta vía HTTP facilitan la vida

La OV10i facilita la conmutación remota de recetas de la siguiente manera:

  • Cualquier dispositivo puede activar: tabletas, PLCs, computadoras, incluso smartphones
  • Conmutación instantánea: las recetas cambian en menos de un segundo
  • Sin configuración compleja: solo unos pocos nodos en Node-RED
  • Funciona con sistemas existentes: se integra con lo que ya tiene

Perfecto para: Líneas de múltiples productos, paneles de control del operador, sistemas automatizados o en cualquier lugar donde necesite cambios rápidos de receta.

Prerrequisitos

Antes de empezar, asegúrese de tener:

  • Cámara OV10i conectada y funcionando
  • Al menos 2 recetas creadas y listas para usar
  • Acceso a Node-RED (a través de IO Block)
nota

Necesitará los números de ID de receta; estos se encuentran en la barra de direcciones del navegador cuando edita recetas.

Paso 1: Encuentre los Números de Receta

1.1 Obtener IDs de Receta

  1. Abra cualquier receta en el Editor de Recetas
  2. Mire la barra de direcciones de su navegador
  3. Encuentre el número después de /recipe/ (ejemplo: /recipe/15 significa que el ID de Receta es 15)
  4. Anote los IDs de todas las recetas entre las que desea cambiar

¿Por qué estos números? Cada receta tiene un ID único que nunca cambia; es esto lo que la cámara utiliza internamente.

Paso 2: Abrir Node-RED

2.1 Acceder al Flow Builder

  1. En cualquier Editor de Recetas, haga clic en "IO Block"
  2. Haga clic en "Configure IO"

¡Ahora está en Node-RED donde construiremos su sistema de conmutación de recetas!

2.2 Planifique su Configuración

Esto es lo que vamos a construir:

Button Click → Format Request → Send to Camera → See Result

¡Fácil! La cámara tiene un servidor web integrado que escucha las solicitudes de cambio de receta.

Paso 3: Construya su Conmutador de Recetas

3.1 Añadir los nodos básicos

Arrastre estos 4 nodos a su lienzo:

  1. Inject (de la sección Input) - Su botón "Cambiar Receta"
  2. Function (de la sección Function) - Formatea la solicitud correctamente
  3. HTTP Request (de la sección Network) - Envia el comando a la cámara
  4. Debug (de la sección Output) - Muestra si funcionó

3.2 Conéctelos entre sí

Conéctelos de esta forma:

Inject → Function → HTTP Request → Debug

¡Fácil! Ahora configure cada uno.

Paso 4: Configurar Sus Nodos

4.1 Configurar su Botón de Receta

  1. Haga doble clic en el nodo Inject
  2. Cambie el nombre a "Cambiar a Receta 15" (utilice su ID de receta real)
  3. Establezca el Payload en "15" (el número de ID de su receta)
  4. Haga clic en "Done"

4.2 Configurar el Formateador de la Solicitud

  1. Haga doble clic en el nodo Function
  2. Nómbralo "Format Request"
  3. Copie este código simple:
// Get recipe number from button
let recipeID = msg.payload;

// Set up the web request
msg.headers = {'Content-Type': 'application/json'};
msg.payload = JSON.stringify({ id: recipeID });

return msg;

  1. Haga clic en "Done"

Qué hace esto: Toma su número de receta y lo empaqueta de la forma que la cámara espera.

4.3 Configurar la Solicitud HTTP

  1. Haga doble clic en el nodo HTTP Request
  2. Establezca el Método en "POST"
  3. Establezca la URL en localhost:5001/pipeline/activate
  4. Nómbralo "Change Recipe"
  5. Haga clic en "Done"
nota

Antes de la versión 18.92: use http://[CAMERA_IP]/edge/pipeline/activate Versión 18.92 en adelante: utilice http://localhost:5001/pipeline/activate

4.4 Configurar el Monitor de Respuesta

  1. Haga doble clic en el nodo Debug
  2. Nómbralo "Recipe Change Result"
  3. Haga clic en "Done"

¡Perfecto! Su conmutador de recetas está listo para probar.

Paso 5: Pruebe su Conmutador de Recetas

5.1 Desplegar y Probarlo

  1. Haga clic en el botón rojo "Deploy"
  2. Haga clic en su botón Inject (Cambiar a Receta 15)
  3. Vea el panel de depuración para la respuesta

5.2 Verifique si Funcionó

Señales de éxito:

  • El panel de depuración muestra "success": true
  • La interfaz de la cámara muestra el nombre de la nueva receta
  • No hay mensajes de error en el panel de depuración

Si funcionó: ¡Felicidades! Acaba de cambiar recetas de forma remota.

Si no funciona: Verifique la sección de solución de problemas más abajo.

5.3 Añadir Más Botones de Receta

¿Quieres varias recetas? Simplemente añade más nodos Inject:

  • Botón de Receta 10: Payload = "10", Nombre = "Cambiar a Receta 10"
  • Botón de Receta 23: Payload = "23", Nombre = "Cambiar a Receta 23"
  • Todos conectan al mismo nodo Function

Paso 6: Usar desde Otros Dispositivos

¡Ahora viene la parte divertida! Cualquier dispositivo puede cambiar recetas enviando solicitudes web a su cámara.

6.1 Desde cualquier navegador web

Escriba esto en cualquier navegador de su red:

http://192.168.0.100:5001/pipeline/activate

nota

Reemplace con la dirección IP de su cámara.

6.2 Desde la línea de comandos

Windows/Mac/Linux - cambiar a la receta 15:

curl -X POST http://192.168.0.100:5001/pipeline/activate \
-H "Content-Type: application/json" \
-d '{"id": "15"}'

6.3 Desde PLCs y otros sistemas

La mayoría de los sistemas modernos pueden enviar solicitudes HTTP:

  • PLCs Siemens: Use bloques cliente HTTP
  • Allen-Bradley: Use bloques de instrucción HTTP
  • Python/C#/Java: Use bibliotecas HTTP estándar
  • Aplicaciones personalizadas: Cualquier lenguaje de programación funciona

El formato de la solicitud es siempre el mismo:

  • Método: POST
  • URL: http://[CAMERA_IP]:5001/pipeline/activate
  • Cuerpo: {"id": "RECIPE_NUMBER"}

Paso 7: Hacerlo aún mejor

7.1 Añadir Validación de Recetas

¿Quiere evitar cambiar a recetas que no existen? Modifique su función:

let recipeID = msg.payload;
let validRecipes = ["10", "15", "20"]; // Your actual recipe IDs

if (!validRecipes.includes(recipeID)) {
msg.payload = "Invalid recipe: " + recipeID;
return null; // Don't send request
}

// Normal formatting continues...

7.2 Mapeo de código de producto

¿Quiere usar nombres de producto en lugar de números? Pruebe esto:

let productCodes = {
"BOLT_A": "10",
"BOLT_B": "15",
"SCREW_C": "20"
};

let recipeID = productCodes[msg.payload];
// Continue with formatting...

¡Ahora puede activar con nombres de producto en lugar de números!

7.3 Procesamiento de Respuestas

¿Quiere mejores mensajes de éxito/error? Añada otra función después de HTTP Request:

let response = JSON.parse(msg.payload);

if (response.success) {
msg.payload = "✓ Recipe changed successfully!";
} else {
msg.payload = "✗ Recipe change failed: " + response.error;
}

return msg;

Paso 8: Solución rápida de problemas

¿No funciona? Aquí están las soluciones más comunes:

ProblemaSolución rápida
Error "Receta no encontrada"Verifique de nuevo el número de ID de receta en la URL
Sin respuestaVerifique la dirección IP de la cámara y la conexión de red
Mensaje "Parse error"Verifique que el código del nodo Function se haya copiado correctamente
La receta no cambia realmenteAsegúrese de que la receta exista y no esté dañada

¿Aún atascado? Verifique que su cámara esté en línea y accesible desde Node-RED.

¡Lo lograste!

¡Felicidades! Ahora tiene control remoto de recetas de su cámara OV10i. Con solo unos clics, construyó un sistema que puede:

  • Conmutar recetas al instante desde cualquier dispositivo en su red
  • Integrarse con sistemas existentes como PLCs, tabletas o computadoras
  • Soportar múltiples recetas con simples clics de botón
  • Validar solicitudes para evitar errores
  • Trabajar con aplicaciones personalizadas usando tecnología web estándar

¿Qué sigue?

Ahora que tiene lo básico funcionando, puede:

Pasos siguientes fáciles

  • Agregar más botones de receta para todos sus productos
  • Probar desde diferentes dispositivos como tabletas o teléfonos
  • Crear mapeos de productos personalizados para una operación más sencilla

Ideas avanzadas

  • Construir tableros de operador con botones de selección de recetas
  • Conectar a escáneres de código de barras para selección automática de recetas
  • Integrar con sistemas MES para coordinación de la línea de producción
  • Agregar registro para rastrear qué recetas se utilizan y cuándo

Ejemplos del mundo real

Así es como otros usan el cambio de receta vía HTTP:

  • Empaque de alimentos: El escáner de código de barras activa el cambio de receta para diferentes tamaños de empaque
  • Automotriz: El PLC cambia las recetas según el tipo de pieza que avanza por la línea
  • Electrónica: Tableta del operador con botones de receta para diferentes tarjetas de circuito
  • Control de calidad: Conmutación automática de recetas basada en el programa de producción

Las posibilidades son infinitas - y todo comienza con el simple sistema que acaba de construir!

🔗 Véase también