Responsabilidades y tiempos
El WCS coordina tareas y rutas; el PLC ejecuta secuencias e interbloqueos locales. Documente la división real. Las funciones de seguridad pertenecen a la arquitectura adecuada de la máquina y no deben depender de una respuesta del WCS.
Elija frecuencias según actualización del controlador, tráfico y necesidad operativa. Asignar un destino y controlar movimiento tienen requisitos distintos. El menor intervalo de lectura no siempre es mejor.
Contrato coherente
Un handshake puede incluir identificador, secuencia, parámetros y estado. Distinga solicitado, reconocido, ejecutando y completado. Asigne un escritor por campo y defina cuándo los parámetros constituyen un comando coherente.
Escrituras separadas pueden exponer una mezcla de parámetros. Use el mecanismo acordado de consistencia, como estructura validada y secuencia de publicación. Un bit de validez sin reglas no elimina la carrera.
Watchdog y reconexión
Un watchdog detecta falta de actualización, no salud completa. Un proceso puede alternar heartbeat con la cola de comandos bloqueada. Mida progreso y antigüedad además de conectividad.
Tras reconectar, distinga observaciones actuales de valores retenidos. Compare estado físico y secuencia reconocida. Reinicializar todo puede ocultar una carga en movimiento o reaplicar una orden antigua.
Ejemplo de respuesta perdida
El PLC ejecuta 204, pero el WCS pierde la confirmación. Si el protocolo lo permite, repetir esa identidad devuelve el estado existente. En otro caso, consulte o concilie de forma controlada antes de ordenar movimiento.
Interrumpa antes de la aceptación, durante movimiento y después de concluir. Defina comportamiento físico esperado en cada ventana. La aceptación requiere estados coherentes y ausencia de movimiento indebido.
Propiedad, consistencia e identidad del comando
El contrato PLC define quién escribe, quién lee y cuándo los parámetros están completos. Escrituras separadas de destino, carga y solicitud pueden exponer generaciones mezcladas. Use consistencia soportada y probada; compartir pantalla no implica atomicidad.
Un diseño prepara parámetros y publica secuencia cuando el conjunto es coherente. El receptor captura y valida generación antes de aceptar. Requiere garantías del mecanismo elegido; una secuencia por sí sola no hace atómicas varias escrituras.
| Dato lógico | Escritor | Regla de referencia |
|---|---|---|
| Identidad / generación | WCS o adaptador autorizado | Estable al repetir; reinicio no es comando nuevo. |
| Parámetros | Emisor | No cambiar parámetros aceptados fuera del flujo de actualización. |
| Identidad reconocida y resultado | Controlador/interfaz | Relacionar respuesta con solicitud correcta. |
| Modo y disponibilidad | Controlador responsable | Validar modo antes de admitir. |
| Sesión / reinicio | Cada extremo según contrato | Detectar pérdida de historia y conciliar. |
Transferir sin depender de pulsos breves
Un pulso puede aparecer y desaparecer entre lecturas. Para eventos indispensables, conserve solicitud y resultado hasta reconocimiento o mantenga historia recuperable. Elija según plataforma, volumen, límites y reconexión.
Emisor → área de comando
Preparar parámetros y publicar generación coherente.
Receptor → validación
Comprobar identidad, modo, elegibilidad y consistencia.
Receptor → reconocimiento
Identificar generación aceptada o rechazada.
Equipo → ejecución
Ejecutar con lógica e interbloqueos locales.
Receptor → resultado
Conservar identidad y resultado hasta confirmación acordada.
Emisor → siguiente ciclo
Registrar resultado antes de reutilizar canal.
Una solicitud en vuelo simplifica correlación, pero puede limitar caudal. Varias requieren identidad, capacidad y orden explícitos.
Watchdog, timeout y falta de progreso
Separe antigüedad de datos, plazo de reconocimiento y tiempo de ejecución/progreso. Heartbeat reciente no demuestra avance de tareas. Ejecución larga puede esperar destino sin fallo de comunicación.
Considere intervalo de producción, lectura/suscripción, retraso y margen observado. Actualizar cada 100 ms y evaluar cada 200 ms, como ejemplo, exige considerar desfase. No son recomendaciones de configuración; los límites reales dependen del equipo y contrato.
| Indicador | Interpretación | Respuesta de diseño |
|---|---|---|
| Dato antiguo | Puede no representar estado actual | Impedir decisiones dependientes y diagnosticar canal. |
| Comando sin reconocer | Aceptación desconocida | Consultar; no suponer que nunca llegó. |
| Ejecución sin progreso | Bloqueo o condición anormal | Examinar motivo, posición y excepción. |
| Sesión nueva | Historia quizá reiniciada | Conciliar antes de nuevos comandos. |
Reinicios independientes
Reinicie WCS y PLC por separado. Un extremo puede retener valores mientras el otro pierde registro. Identifique historia disponible y concilie comandos con estado físico. Borrar bits o reservas no demuestra posición.
Defina retorno a cero, desbordamiento y reutilización de contadores. Sesión o generación de arranque distingue periodos si está soportada. En otro caso, bloquee y concilie operativamente de forma controlada.
| Escenario | Comprobación | Condición para continuar |
|---|---|---|
| Reinicia WCS; PLC continúa | Comando reconocido y carga en tránsito | Estado recuperado coincide. |
| Reinicia PLC; WCS continúa | Modo, retención y pérdida de secuencia | Identidad y posición verificadas. |
| Ambos reinician | Historia persistida y cargas presentes | Pendientes conciliados, sin replay ciego. |
| Respuesta antigua tras recuperar | Sesión e identidad | Evento antiguo no cambia tarea nueva. |
Evidencia mínima de ensayo
Registre versión, configuración, solicitudes, respuestas, modo y observaciones de carga. Interrumpa antes de reconocer, durante movimiento y tras concluir. El operador debe distinguir caída de comunicación y bloqueo operativo.
Exija ausencia de duplicación, ninguna conclusión sin evidencia y recuperación explicable. La seguridad de máquina tiene plan y responsables propios. Este handshake de ejecución no lo sustituye.
Criterios de verificación del proyecto
- Asignar un único escritor a cada campo.
- Probar actualizaciones parciales, valores retenidos y secuencias repetidas.
- Recuperar sin repetir comandos de movimiento a ciegas.
Los ejemplos describen decisiones de ingeniería y escenarios de prueba. Interfaces, límites y funciones implantadas se definen en el alcance de cada proyecto.