Channel Characteristics
21
Axcess Programming Language
You will also define the lighting relays as mutually exclusive so that you can utilize last button
pressed logic when you program the feedback for these buttons. This will allow the user to look at
the panel and know which lighting preset was activated last.
Members of a mutually exclusive set are placed in parentheses underneath the
DEFINE_MUTUALLY_EXCLUSIVE keyword. The double period (..) shortcut explained in the
latching section is also applicable here. For example:
DEFINE_MUTUALLY_EXCLUSIVE
([RELAY,SCREEN_UP],[RELAY,SCREEN_DN])
([RELAY,DRAPES_OPEN],[RELAY,DRAPES_CLOSE],[RELAY,DRAPES_STOP])
([LIGHTS,LIGHT_FULL]..[LIGHTS,LIGHT_OFF])
The first set defines the two screen channels as mutually exclusive. Using the shortcut, the second
set defines the three drape channels as mutually exclusive, and the third set defines the four lighting
relays as mutually exclusive.
Defining mutually exclusive latching
A mutually exclusive channel can have its physical output continually on if necessary. This is done
by defining a channel as both mutually exclusive and latching, resulting in the description mutually
exclusive latching. If you define a channel in this manner, the physical output remains on until
another button in its mutually exclusive set is pressed.
The status of a mutually exclusive latching channel behaves in the same manner as that for a
mutually exclusive momentary channel. Note that the physical part and the status of a mutually
exclusive latching channel operate in the same manner.
In your program, the lighting relays are already defined as latching. However, you also want them
to have the characteristics of a mutually exclusive set so that only one lighting mode can be on at
one time. Thus, you would also place the device-channels of these relays in the
DEFINE_MUTUALLY_EXCLUSIVE section:
DEFINE_MUTUALLY EXCLUSIVE
([LIGHTS,LIGHT_FULL]..[LIGHTS,LIGHT_OFF])
Defining mutually exclusive toggling
When a channel is defined as mutually exclusive latching, there is no way to turn off the channel
without activating another. Mutually exclusive toggling allows a channel to be turned on or off by
successive presses of the same button, just like a normal latching channel. Also, the channel is still
affected by its mutually exclusive characteristics; if the channel is on, it can be turned off by
another activated channel in its mutually exclusive set. The status of a mutually exclusive toggling
button operates in the same way as that for a mutually exclusive latching button.
To make a channel toggling, it must be defined as mutually exclusive and toggling in both the
DEFINE_MUTUALLY_EXCLUSIVE and DEFINE_TOGGLING sections. In your program, the
screen relays are both mutually exclusive and latching, so there is no way to turn off a screen relay
without turning on the other. You could fix this by defining the screen relays as mutually exclusive
toggling:
Once a channel has feedback in a mutually exclusive group, there will always be one
channel with its status on in that group, unless it is turned off with TOTAL_OFF.
Summary of Contents for Axcess
Page 1: ...instruction manual Software Axcess Programming Language ...
Page 8: ...vi Axcess Programming Language Table of Contents ...
Page 12: ...Introduction 4 Axcess Programming Language ...
Page 22: ...Axcess Basics 14 Axcess Programming Language ...
Page 38: ...Channel Characteristics 30 Axcess Programming Language ...
Page 54: ...Levels 46 Axcess Programming Language ...
Page 62: ...Operators 54 Axcess Programming Language ...
Page 66: ...Variable Types and Conversions 58 Axcess Programming Language ...
Page 70: ...Two Dimensional Arrays 62 Axcess Programming Language ...
Page 80: ...While Keywords 72 Axcess Programming Language ...
Page 86: ...Using Buffers 78 Axcess Programming Language ...
Page 94: ...Waits and Timer Keywords 86 Axcess Programming Language ...
Page 102: ...Using Subroutines 94 Axcess Programming Language ...
Page 108: ...Include Files and System_Calls 100 Axcess Programming Language ...
Page 120: ...Compiler Error Messages 112 Axcess Programming Language ...
Page 124: ...The External_Control Protocol 116 Axcess Programming Language ...