I'd like ask your for an opinion, please. When there is a device and it has certain conditions to work or move and you have created status for that, how do you call it and is status true or false when the device is allowed to move?
I know that this might be a stupid question for someone but I ask this to find out which one is more common. I'm used to do one way, which I think is the best and most logical way but is there another way of thinking, too?
Thank you in advance.
It is generally good practice to name software flags precisely what they are in logical one (active)state, as opposed to logical zero state. This is fine except for certain conditions for fail safe flags such as Emergency stop where the logical state matches the electrical signal - so in logic terms one may describe it as 'Not Emergency stop' or 'Emergency stop (Active Low).
PLC retentive flags and set/reset bistables also need consideration when a PLc loses power and is brought back to life again.
I recall 2 almost indentical projects for a ventilation systems. One had PLC outputs - one o/p to run a motor - active high / run active low / stop.
The other project had 2 o/p's per motor - volt free contact to start (pulsed) and volt free contact to stop (pulsed), akin to start/stop pushbuttons, except the volt free contact to stop was normally closed. The thinking behind this was that if the PLC failed the motors would continue to run.
Shortly before Factory (Client) Acceptance Test, the consultant asked .... as the PLC was powered by UPS what would happen if the supply dipped badly. The answer was the PLC would shut down then come back up again on power up; but what would happen to motors already running. The answer was the start up routines would have to ignore interlocks and determine what plant was active before taking over control.
Very confusing and essentially bad practice.
For safety interlocks, the interlock should be True or a "1" if allowed to advance or to permit the action that is interlocked. This way if you lose power in the interlock, you are not allowed to advance (e.g. failsafe). It is always better to indicate a safe state with positive logic. Most every time I have seen where reverse or negative logic is used, particularly is mixed with positive logic, people get confused when they troubleshoot stuff.
William (Bill) L. Mostia, Jr. PE
WLM Engineering Co.