Virtual Logic Gates
The Cortex’s Virtual Logic Gates (VLG’s) are at the heart of its problem detection, decision making and problem resolution powers. The concept of VLG’s is a bit different from coding Macro commands in a programming language. Each VLG is more like a single neuron that connects different I/O’s like metering inputs, status inputs, relays, alarm-call lists, schedulers, timers, SNMP commands and hardware flags together and combined in myriad ways to create specific user-defined actions and controls.
The results of these logic functions can dictate automatic actions to be performed by the Davicom upon very specific events, or can be used to qualify other inputs. VLGs can also be used to display a specific result on a workspace object or beside an I/O State LED. Each virtual logic gate is set individually according to its use and function, but one of the most important characteristics of VLGs is that they can be cascaded and nested.
VLGs allow you to program Davicom units so they act according to y our needs. For example, you may not want the Davicom to call you during the night to tell you that the utility power is off, and the Generator is running OK. But if the power is off and the Generator did not start, then you may want to be woken-up. You can create VLG Neurons to do just that.
VLG’s can be one of any 6 types of logic gates: AND, NAND, OR, NOR, XOR, XNOR and each VLG can have up to 6 inputs from which one output is generated. For easier reference, the configuration screen also shows the standard logic tables for each type of gate.
The screenshot below shows a typical workspace with many VLG’s configured.
See this article for details about the generic Main screen, Description screen and Vocal Description screen.
1 – ID: ID of the selected input. Select from the drop-down menu.
2 – I/O DESCRIPTION RETRIEVAL: Click to retrieve and display the current normal or active description. Normally hidden to minimize data transfers on low speed or high fee data connections.
3 – ACTION TYPE: Selects the action type that will happen when an out-of-limit condition occurs. 3 types are available: Major alarm, Minor alarm, and Command (CMD). On CMD, no alarm will be triggered. Use this Action when you want to take actions without triggering any alarms.
4 – QUALIFIER: Qualifying element (operand) which can be any input, output, flag, timer, SNMP GET, Logic Gate, etc. Essentially any ID in the Cortex can be used to mute or unmute the input to prevent it from taking any action. When the Qualifier is active, the input will be monitored and be able to generate alarms. When the qualifier is non-active (or normal), the input will be muted and it will not be able to generate an alarm. To invert the Qualifier’s level, simply put a ! in front of its ID. For example, use !1D01 to invert it. Leave the Qualifier field blank for a “don’t care” condition.
5 – LOGIC OPERATOR: There are six different logic gate types to choose from. Each has its own logical behavior and the truth table (#12) shows the resulting outputs.
6 – OPERANDS: Inputs and outputs that can be used as logic signal sources for the VLG. Can be status inputs, metering inputs, relays, timers, flags, other VLG’s, SNMP Traps, SNMP GETs. Essentially, any Identifier (ID) that exists in the Cortex can be used as an input for the VLG’s. An exclamation mark ( ! ) can be put in front of the operand in order to invert its logic state, for example !1D01 will be Active if 1D01 is Normal.
7 – CONTROLLED OUTPUT: Outputs to be controlled (on/off) based on the state of this input. The two output types allowed are relays (both physical and virtual) and SNMP SETs. For the relays, adding a P suffix will Pulse the relay (ex: 1R01P), L will Latch it and R will Release it.
8 – DELAY BEFORE ACTION: Delay before the input changes into an active state when an out-of-limit condition occurs. Prevents glitches from setting-off any alarms.
9 – DELAY BEFORE RETURN TO NORMAL: Delay before the input returns to a normal state once an out-of-limit condition is over. Prevents too-brief returns-to-normal from causing multiple repeated alarms.
10 – ENABLE: Enable / disable the input. Useful to deactivate an input, without losing all its settings, when the input is causing intermittent problems or nuisance alarms.
11 – SYSTEM LOG: Log the input’s activity in the System Log. Useful when inputs do not need to be logged, but are required for day-to-day operation.
12 – TRUTH TABLE: Dynamic table showing the logic state (Result) of the VLG for every possible condition of its operands (1 to 5). Normal is comparable to a logic low or logic 0, while Active is comparable to a logic high or logic 1.
13 – SIGNALLING ON – ALARM: Enables / disables alarming. When checked, any out-of-limit condition will automatically generate an alarm. When unchecked, no alarm will be triggered when an out-of-limit condition occurs.
14 – SIGNALLING ON – RETURN TO NORMAL: Enables / disables Return To Normal signalling. When checked, a notification will be generated when the input changes back to its normal state after an out-of-limit alarm condition. When unchecked, no notification will be sent when the initial alarm condition returns to normal.
15 – REFRESH / READ: Refresh / read the screen content.
16 – SAVE / WRITE: Save the screen content.
17 – EXIT: Exit menu.