FAQs Técnicas

Realizar una pregunta

¿Por qué al forzar un contacto no se activa la bobina que le sigue?

El comportamiento es correcto, según el funcionamiento de SoMachine frente al Forzado.
Cuando se fuerzan valores, la secuencia de comandos en un ciclo es la siguiente:
1---> Leer entradas
2---> Forzar valores
3---> Ejecutar código
4---> Forzar valores
5---> Escribir salidas

Si tenemos el siguiente código con variables M1 --> M5:


El comportamiento sería el siguiente:
1---> Leer entradas --> No hay en el programa entradas %Ix.x configuradas, por lo tanto no se produce ningún efecto sobre M1..M5
2---> Forzar valores --> M4 se activa en la red 1 y 2
3---> Ejecutar código   --> Red 1: M4 = (M1 AND NOT M2 AND M3) = False
                                ---> Red 2 : M4 = False = M5
4---> Forzar valores --> M4 se activa en la red 1 y 2
5---> Escribir salidas --> No hay en el programa salidas %Qx.x configuradas, por lo tanto no se produce ningún efecto sobre M1..M5

Esto significa que el paso 3 donde se ejecuta el código, hace que se sobrescriba el forzado de M4, con el resultado de M5 = False

La función de forzado está pensada para E/S reales, no para variables, aún así, es posible forzar variables, pero el usuario debe tener en cuenta el procesa explicado anteriormente, pues los valores forzados pueden ser sobrescritos por el código.
 
¿Ha sido útil?
¿Qué podemos hacer para mejorar la información?