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 recetas de forma remota en su cámara OV80i utilizando simples solicitudes HTTP. Construirá un sistema que permite a cualquier dispositivo en su red cambiar entre diferentes configuraciones de inspección al instante, perfecto para líneas de producción con múltiples productos.

Lo que construirá: Un sistema de cambio remoto 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: Imagine 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 por HTTP facilitan la vida​

El OV80i hace que el cambio remoto de recetas sea simple:

  • Cualquier dispositivo puede activarlo - tabletas, PLCs, computadoras, incluso smartphones
  • Cambio instantáneo - 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 multi-producto, paneles de control del operador, sistemas automatizados o cualquier lugar donde necesite cambios rápidos de receta.

Prerrequisitos​

Antes de comenzar, asegúrese de tener:

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

Necesitará los números de ID de las recetas - estos se encuentran en la barra de direcciones de su navegador al editar recetas.

Paso 1: Encuentre sus números de receta​

1.1 Obtenga los IDs de las recetas​

  1. Abra cualquier receta en el editor de recetas
  2. Observe la barra de direcciones de su navegador
  3. Encuentre el número después de /recipe/ (ejemplo: /recipe/15 significa que el ID de la 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 - esto es lo que la cámara usa internamente.

Paso 2: Abra Node-RED​

2.1 Acceda al constructor de flujos​

  1. En cualquier editor de recetas, haga clic en "Bloque IO"
  2. Haga clic en "Configurar IO"

¡Ahora está en Node-RED donde construiremos su sistema de cambio de recetas!

2.2 Planifique su configuración​

Esto es lo que estamos construyendo:

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

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

Paso 3: Construya su cambiador de recetas​

3.1 Agregue 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) - Envía el comando a la cámara
  4. Debug (de la sección Output) - Muestra si funcionó

3.2 Conéctelos​

Conéctelos juntos de esta manera:

Inject → Function → HTTP Request → Debug

¡Fácil! Ahora vamos a configurar cada uno.

Paso 4: Configure sus nodos​

4.1 Configure su botón de receta​

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

4.2 Configure el formateador de solicitudes​

  1. Haga doble clic en el nodo Function
  2. Nómbrelo "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"

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

4.3 Configure la solicitud HTTP​

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

Antes de v18.92: use http://[CAMERA_IP]/edge/pipeline/activate v18.92 y posteriores: use http://localhost:5001/pipeline/activate

4.4 Configure el monitor de respuesta​

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

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

Paso 5: Pruebe su cambiador de recetas​

5.1 Despliegue y pruebe​

  1. Haga clic en el botón rojo "Deploy"
  2. Haga clic en su botón inject (Switch to Recipe 15)
  3. Observe el panel de debug para ver la respuesta

5.2 Verifique si funcionó​

Señales de éxito:

  • Debug muestra "success": true
  • La interfaz de la cámara muestra el nuevo nombre de la receta
  • No hay mensajes de error en el panel de debug

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

Si no: Revise la sección de solución de problemas a continuación.

5.3 Agregue más botones de receta​

¿Quiere múltiples recetas? Simplemente agregue más nodos inject:

  • Botón de Receta 10: Payload = "10", Nombre = "Switch to Recipe 10"
  • Botón de Receta 23: Payload = "23", Nombre = "Switch to Recipe 23"
  • Todos se conectan al mismo nodo Function

Paso 6: Use desde otros dispositivos​

¡Ahora 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 en su red:

http://10.250.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 - cambie a la receta 15:

curl -X POST http://10.250.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 de cliente HTTP
  • Allen-Bradley: Use bloques de instrucción HTTP
  • Python/C#/Java: Use librerías HTTP estándar
  • Aplicaciones personalizadas: Cualquier lenguaje de programación funciona

El formato de la solicitud siempre es el mismo:

  • Method: POST
  • URL: http://[CAMERA_IP]:5001/pipeline/activate
  • Body: {"id": "RECIPE_NUMBER"}

Paso 7: Hágalo aún mejor​

7.1 Agregue validación de recetas​

¿Quiere evitar el cambio a recetas inexistentes? 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ódigos de producto​

¿Quiere usar nombres de productos 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 productos en lugar de números!

7.3 Procesamiento de respuestas​

¿Quiere mejores mensajes de éxito/error? Agregue 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 "Recipe not found"Verifique dos veces el número de ID de la receta en la URL
Sin respuesta en absolutoVerifique 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 copió correctamente
La receta no cambia realmenteAsegúrese de que la receta existe y no está dañada

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

¡Lo logró!​

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

  • Cambiar 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 prevenir errores
  • Trabajar con aplicaciones personalizadas usando tecnología web estándar

¿Qué sigue?​

Ahora que tiene lo básico funcionando, puede:

Próximos pasos fáciles​

  • Agregue más botones de receta para todos sus productos
  • Pruebe desde diferentes dispositivos como tabletas o teléfonos
  • Cree mapeos de productos personalizados para una operación más fácil

Ideas avanzadas​

  • Construya paneles de operador con botones de selección de receta
  • Conecte a escáneres de código de barras para selección automática de recetas
  • Integre con sistemas MES para coordinación de líneas de producción
  • Agregue registro para rastrear qué recetas se usan y cuándo

Ejemplos del mundo real​

Así es como otros usan el cambio de recetas por HTTP:

  • Empacado 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 viene por la línea
  • Electrónica: Tableta del operador con botones de receta para diferentes placas de circuitos
  • Control de calidad: Cambio automático de recetas según el programa de producción

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

🔗 Ver también​