Logic - Logic Objects

Logic objects in ControlSpace® version 5 provide a way to create simple or complex logic programming without cluttering up the device view. The three primary logic objects that can be placed in the device view are the Logic Input, the Logic Output, and the Logic Block. These logic processing objects can have 1 to 16 inputs and/or outputs, and can be wired in the device view to other logic objects or to audio processing objects.
 

The Logic Input provides a way for ControlSpace Remote or other external control systems to trigger or affect logic operations. The state of each output may be individually set on or off, or may be triggered to pulse on momentarily.

The Logic Output is a logic status indicator that can be placed on a control panel to indicate a state, or can be monitored by an external control system.
Each Logic Block object provides an independent logic programming view. Between the inputs and outputs, one or more logic processing objects may be added to create the required programming. If an input is wired directly to an output, the logic signal is passed through the Logic Block unchanged. Logic Processing objects are added to the logic view by dragging and dropping from the Logic ToolKit. Each of the objects in the Logic ToolKit provide different functionality.

The most basic logic object is the NOT. Each output of a NOT object will be the opposite of its associated input. There is no interaction between the channels of a NOT object.
The basic, Boolean objects are the AND, OR, and XOR.
•   The output of the AND object will be ON only when every input is ON.
•   The output of the OR object will be ON when any input is ON.
•   The output of the ExclusiveOR (XOR) object will be on when the number of inputs that are on is an odd number.

The AND, OR, and XOR objects each have alternate forms, NAND, NOR, and NXOR respectively, which are equivalent to the former object with an integrated NOT on the output.

•   When every input is ON, the AND object will turn ON and the NAND object will turn OFF.
•   When any inputs are ON, the OR object will turn ON and the NOR object will turn OFF.
•   When an odd number of inputs are ON, the XOR object will turn ON and the NXOR object will turn OFF.

The output of the ONEHOT object will be ON only when exactly one input is ON. In many DSP systems, this functionality is referred to as XOR, but the output of a true XOR will be ON whenever there are an ODD number of inputs ON while the output of a ONEHOT will only be ON if exactly one input is ON.

The OR_ALL and the AND_ALL objects provide a way to compare multiple inputs to the state of a master input. A 3-channel OR_ALL object will have three inputs and three outputs, plus an additional supervisor input. Each output is driven by an OR condition between its associated input and the supervisor input. So, output 1 will be ON if input 1 or the supervisor input is ON, output 2 will be ON if input 2 or the supervisor input is ON, etc. The supervisor input on an OR_ALL behaves like an override to force the outputs ON regardless of the input states.

The AND_ALL is structurally similar to the OR_ALL, but in this case each input shares an AND relationship with the supervisor input. Output 1 is ON only if input 1 and the supervisor input is ON, output 2 is ON only if input 2 and the supervisor input is ON, etc. So, while the supervisor input on the OR_ALL can force all output signals ON as needed, the supervisor input on the AND_ALL prevents any of the output signals from ever being ON unless the supervisor input is ON.

The TOGGLE object has an equal number of inputs and outputs, and there is no interaction between the channels. Each output of the TOGGLE object will change state each time the input goes from OFF to ON. The TOGGLE object converts momentary signals into latching signals.

The FLIP FLOP object has a SET and RESET input for each output. The output is turned ON when the SET input is ON. If the output is already ON, additional pulses on the SET input will have no effect. The RESET input turns OFF the output when the RESET input is ON. If the output is already OFF, additional pulses of the RESET input will have no effect. If the SET input is locked ON, pulsing the RESET input will have no effect. Similarly, if the RESET input is locked ON, pulsing the SET input will have no effect. If the SET and RESET are both locked ON, the output state will be determined by which of the inputs turned on first.

The TOGGLE/FLIP FLOP object is a multi-channel TOGGLE object with one additional SET input and 1 additional RESET input. Each channel of the TOGGLE/FLIP FLOP operates independently just like a normal TOGGLE object, but the SET and RESET inputs apply to every output simultaneously. For example, if the various outputs of the TOGGLE/FLIP FLOP object are in different states, a pulse on the SET input will turn all of the outputs to ON.

The PULSE object has an equal number of inputs and outputs and the channels operate independently of each other. Each time the input turns ON, the output will PULSE. This will convert a continuous input into a single pulse. The PULSE object is one of the few logic objects with a control panel. Double-clicking on the PULSE object will allow the ON/OFF timing to be adjusted. The Single Pulse option can be disabled to cause the output to pulse continuously if the input is ON. The Force On option will manually force the input ON and cause the output pulse continuously. This is useful when testing.
 

The DEBOUNCE is a multi-channel object with independent channels and has a control panel. For each channel, there is an On Delay and an Off Delay. The output will turn ON only if the input is ON for longer than the On Delay. Once the output has turned ON, it will only turn OFF if the input is OFF for longer than the Off Delay.

All of these objects may be combined inside a Logic Block to provide system logic control that’s as simple or complex as needed and multiple Logic Blocks may be added in each EX-1280C.