Estoy trabajando con un PLC "CLICK" de automationdirect. Estoy tratando de configurar una banda muerta para un valor de proceso específico X. Cuando X cambia en más de una cantidad específica, algo debería suceder.
La forma más sencilla de hacerlo es simplemente restar el valor anterior de X del valor actual. Luego, si el valor absoluto de este resultado es mayor que la banda muerta permitida, "haga algo".
Sin embargo, el PLC "CLIC" no tiene un operador de ABS, que puedo encontrar. La única forma en que puedo pensar para simular esto es haciendo SQRT (valor ^ 2), que siempre arrojará un número positivo. Pero esto parece una enorme sobrecarga, además de ciclos de CPU desperdiciados, y la probabilidad de desbordamiento cuando hay en juego números más grandes.
Supongo que podría Y el resultado con 0x7fff pero eso me obliga a trabajar con números de 16 bits (el PLC no permite operaciones AND en INT de 32 bits).
Conjunto de instrucciones "CLICK": enlace
Apreciaría cualquier consejo.