VERSATILE INPUT OUTPUT MODULE USER MANUAL

VERSATILE INPUT OUTPUT MODULE
USER MANUAL
CONTENTS
1 INTRODUCTION
2 HARDWARE
2.1 General
2.2 VIOM Inputs
2.3 VIOM Outputs
2.4 VIOM Serial Port
2.5 VIOM Display
2.6 VIOM Relays
3 USER INTERFACE
3.1 Message Types
3.2 Return Echo
3.3 File Download
3.4 Comments
3.5 Error Message Prefix
3.6 Return to Defaults
3.7 Start Message
3.8 Reading the Software Version
4 OUTPUTS
4.1 General
4.2 Recognition Period
4.3 Recognition Units
4.4 On Period
4.5 On Time Units
4.6 Off Period
4.7 Off Time Units
4.8 Input used as Reset
4.9 Active low / high
4.10 AND / OR of map
4.11 latched / not latched
4.12 Inputs on output map
4.13 Inputs on Invert map
4.14 Reset Period
4.15 Reset Units
4.16 One Shot
5 INPUTS
5.1 General
5.2 Recognition Time
5.3 Recognition Units
5.4 AntiBounce
5.5 Input used as Reset
5.6 Input Active low/high
5.7 Input latched / not latched
6 TIMER / COUNTERS
6.1 General
6.2 Input to control Timer / Counter
6.3 Timer / Counter output
6.4 Timer / Counter mode
6.5 Timer reset mode
6.6 Timer / Counter compare Level
6.7 Read Timer / Counter
6.8 Clearing Timer / Counter
6.9 Decrementing the Counter
7 READING DATA
7.1 General
7.2 Requesting Input Status
7.3 Reporting Input Status on change
7.4 Regular Update Input Status reporting
7.5 Reading Single Output
7.6 Reading Multiple Outputs
8 WRITING DATA
8.1 General
8.2 Writing to a single Output
8.3 Writing to multiple Outputs
9 HYPERTERMINAL
10 COMMANDS
10.1 General
10.2 Command Details
1 INTRODUCTION
The VIOM module physically consists of 16 inputs, 16 outputs and a Serial Port. Internally
there are also 16 Virtual outputs (which may be used as Virtual inputs) and eight 32 bit Timer
/ Counters.
Outputs may be controlled by combinations of inputs, by the Timer / Counters or via the
Serial Port. Once the outputs have been activated various parameters may be assigned to
control their behaviour.
Additional modules are available which can be used as interface elements.
2 HARDWARE
2.1 General
The following diagram shows the location of the major components of VIOM. The Serial Port
should be connected to the host via a Null Modem lead. No handshaking is used.
The inputs and outputs are available via screw terminals or a 10 way headers. The headers
also have power pins so that auxiliary modules can be powered directly from VIOM. Each of
the headers has the same pin assignment regardless of whether they are inputs or outputs.
The following diagram shows the pin arrangement:
2.2 VIOM Inputs
VIOM has 16 inputs. Each has a 10Kohm pull up resistor to 5 Volts and a 100Kohm resistor
feeding into a CMOS input. This type of input can be used with TTL, CMOS or clean contacts
such as relays or switches.
Care should be taken to prevent excessive voltage on any of these inputs.
2.3 VIOM Outputs
The VIOM module has 16 real outputs. Each of these outputs consist of an open collector
Darlington driver capable of sinking 100mA. They are capable of driving light loads such as
LEDs, relays and small motors. Maximum load voltage is 40 Volts.
Note that if these outputs are to drive inductive loads such as relays and motors then the
load must have some form of back EMF suppression fitted. IF SUPPRESSION IS NOT
FITTED THEN THE OUTPUT DEVICE WILL BE DAMAGED. The following diagram shows
how to interface the VIOM output to a relay.
2.4 VIOM Serial Port
The Serial Port is used to communicate with a host. This host may be a PC but could also be
any device capable of communicating with a VIOM.
The VIOM should be connected to the host with a null modem lead fitted with a 9 pin ‘D’
connector. This is a lead which has its RX and TX wires crossed over. The VIOM does not
support hardware handshaking and therefore requires only the Rx, TX and ground wire
connections. Others if present will be ignored.
The serial protocol is 9600 baud, 8 bits no parity and 1 stop bit.
2.5 VIOM Display
The VIOM display module consists of 8 LEDs which can be connected directly on to the
VIOM controller. Connection is via a ribbon cable to the output header. If all 16 outputs are to
be displayed then two VIOM Display modules will be required.
2.6 VIOM Relays
The VIOM Relay module consists of 8 single pole change over relays which can be
connected directly on to the VIOM controller. Connection is via a ribbon cable to the output
header. If all 16 outputs are to be used then two VIOM Relay modules will be required.
3 USER INTERFACE
3.1 Message types
Most commands to VIOM will provide a return message. VIOM can be programmed to
respond in either plain text (long messages) or simply (short messages). If you are
interfacing through a terminal program it is better to have VIOM respond in a manner which
is easily understood i.e. long messages. If you are writing your own software it may be easier
to check the returns if short messages are chosen. In either case all messages are
terminated with a carriage return / line feed.
The command CML will switch the VIOM responses to long format while CMS will switch to
short messages. The default is long messages.
It is also possible to program a prefix for error messages by using the command CEA
followed by the character to be used as the prefix. All error messages whether long or short
will be prefixed with the defined character. Once this prefix has been set it will remain set
until the command CEA is sent changing the character. If CEA is sent without a character the
prefix reporting will be turned off.
3.2 Return Echo
The VIOM has a facility to return any data it receives over the Serial Port back to the host.
This facility is useful for checking that the data received by the VIOM is accurate. Also some
terminal programs may not echo typed characters locally which can make the difficult to use.
3.3 File Download
Data can be downloaded to the VIOM manually by using a terminal type program such as
HyperTerminal or automatically using special software or file transfer. Where file transfer is
being used, especially with programs such as HyperTerminal, it is desirable to turn off any
handshaking or data storage so that the data may be transferred rapidly.
Using the command FDL as the first command in a file transfer informs the VIOM that a file
transfer is in progress. The VIOM will now do two things: Firstly it will inhibit any outgoing
messages from the VIOM to the terminal. Secondly it will not immediately store any data in
the EEPROM while the transfer is in progress.
After approximately 0.5 seconds has elapsed since the last command has been received,
outgoing messages will be automatically enabled and all new data will be stored in the
EEPROM.
3.4 Comments
When creating files for subsequent downloading to VIOM it can be very useful to include
comments. Any line beginning with the character ‘<‘ will be ignored by VIOM until a carriage
return / line feed is detected.
3.5 Error Message Prefix
Error messages can be allocated a prefix so that the host is able to recognise them easily. To
set an error message prefix use the command “CEA” followed by the prefix to be used. If
error message prefixing is to be disabled just use the command “CEA”.
The current character used for error message prefixing can be read using the command
“CER”.
When using two VIOMs in data transfer mode the error message prefix should be set to ‘<‘ so
that all error messages are ignored.
3.6 Return to Defaults
It is possible to return to the factory set defaults at any time by using the command “CPD”.
Note that any new configuration data will be lost and cannot be retrieved.
3.7 Start Message
When ever VIOM is started it will generate a start up message “VIOM Started” to inform the
user or the host that it is available for use. There may be occasions where this message
could cause problems. The message may be suppressed by using the command “CSM0”.
The next time VIOM is started the message will not appear.
The message can be re-enabled with the command “CSM1”. The current status of the
message suppression can be read with the command “CSM”.
3.8 Reading the Software Version
The current software version can be read with the command CSV. It is important to make a
note of this parameter if you need technical support. As this parameter relates to the
firmware it cannot be changed.
4 OUTPUTS
4.1 General
Outputs can be either inactive or active. When inactive they are always in the same state
and this state is defined by their active high / active low property. When they are active they
can be programmed to be periodically on and off. Again the on and off levels is defined by
their active high / active low property.
The following diagram shows a typical relationship between the input condition and the
output over time. Note that during the recognition period the output will be off.
Of course the outputs do not always have to be cyclical. They can be programmed to stay on
permanently or to turn on once and then stay permanently off. All these options are detailed
in the following sections.
4.2 Recognition Period
This parameter is only used when the output is controlled by inputs. When the output is
controlled by either the Timer / Counters or the Serial Port the recognition period is ignored.
This parameter is only used by Real outputs. Virtual outputs will return an error message if
they are programmed with a value.
Outputs may be controlled by a combination of inputs. Once this combination becomes true
then the output will become active. However it is possible to prevent the output from turning
on immediately by specifying a recognition period. This period is the time from when the
input combination becomes true to the point at which the output first turns on.
Any period between 1 and 255 may be specified and this value in conjunction with the
recognition units will define the total time.
If a value of 1 is chosen then the output will be turned on immediately.
The actual value of the recognition time will have an accuracy of + or - 1 unit and it is
therefore important to choose the value of the period and the units carefully. For example if a
recognition period of 2 seconds is required the value of this parameter could be set to 2 and
the recognition units could be set to seconds. This would give a period in the range 1 to 3
seconds. However if the period was set to 200 and the recognition units to 10mS then the
accuracy would be improved to between 1.99 seconds and 2.01 seconds.
Recognition periods can also be set on inputs. They do behave in slightly different ways
when an output is latched. With an input recognition if the input goes inactive before the
recognition period expires then the affected outputs will not be activated. However, as the
latch is applied as soon as the input combination goes true on an output, the output will still
be activated at the end of the recognition period.
The parameter can be changed using the command WO(Output Number)A followed by the
period value
The parameter can be read using the command RO(Output Number)A.
The default for all outputs is 10.
4.3 Recognition Units
This parameter is used in conjunction with the recognition period to define the total period
between the output becoming active and the output turning on. The units can be set to 10mS,
100mS, 1 second, 1 minute, 1 hour or 1 day.
For more details see the description of recognition period.
The parameter can be changed using the command WO(Output Number)B followed by a
number representing the period:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minute
4 = Hours
5 = Days
The parameter can be read using the command RO(Output Number)B.
The default for all outputs is 100mS.
4.4 On Period
This parameter is only used when the output is controlled by inputs. When the output is
controlled by either the Timer / Counters or the Serial Port the on period is ignored.
This parameter is only used by Real outputs. Virtual outputs will return an error message if
they are programmed with a value.
The on period as its name implies is the period for which the output is turned on after the
recognition period. If the period is set to zero the output will remain permanently on (i.e. there
will be no off time).
The behaviour of the output at the end of this period will depend on other parameters. If the
one-shot parameter is set to enabled the output will turn off and remain off until the input
combination becomes true again (after first going false). If the off period is set to zero the
output will remain off until it has been reset (if latched) or the input conditions go false and
the return true.
In normal operation the output will again turn on at the end of the off period and will remain
on for the on period. This sequence will repeat until the output become inactive.
Any period between 0 and 255 may be specified and this value in conjunction with the on
units will define the total time.
The actual value of the on time will have an accuracy of + or - 1 unit and it is therefore
important to choose the value of the period and the units carefully. For example if an on
period of 2 seconds is required the value of this parameter could be set to 2 and the on units
could be set to seconds. This would give a period in the range 1 to 3 seconds. However if the
period was set to 200 and the on units to 10mS then the accuracy would be improved to
between 1.99 seconds and 2.01 seconds.
The parameter can be changed using the command WO(Output Number)C followed by the
period value
The parameter can be read using the command RO(Output Number)C.
The default for all outputs is 10.
4.5 On Time Units
This parameter is used in conjunction with the on period to define the period for which the
output is turned on. The units can be set to 10mS, 100mS, 1 second, 1 minute, 1 hour or 1
day.
For more details see the description of on period.
The parameter can be changed using the command WO(Output Number)D followed by a
number representing the period:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minute
4 = Hours
5 = Days
The parameter can be read using the command RO(Output Number)D.
The default for all outputs is 100mS.
4.6 Off Period
This parameter is only used when the output is controlled by inputs. When the output is
controlled by either the Timer / Counters or the Serial Port the off period is ignored.
This parameter is only used by Real outputs. Virtual outputs will return an error message if
they are programmed with a value.
The off period as its name implies is the period for which the output is turned off after an on
period. If the off period is set to zero the output will remain off until it has been reset (if
latched) or the input conditions go false and the return true.
Any period between 0 and 255 may be specified and this value in conjunction with the off
units will define the total time.
The actual value of the off time will have an accuracy of + or - 1 unit and it is therefore
important to choose the value of the period and the units carefully. For example if an off
period of 2 seconds is required the value of this parameter could be set to 2 and the on units
could be set to seconds. This would give a period in the range 1 to 3 seconds. However if the
period was set to 200 and the off units to 10mS then the accuracy would be improved to
between 1.99 seconds and 2.01 seconds.
The parameter can be changed using the command WO(Output Number)E followed by the
period value
The parameter can be read using the command RO(Output Number)F.
The default for all outputs is 10.
4.7 Off Time Units
This parameter is used in conjunction with the off period to define the period for which the
output is turned off. The units can be set to 10mS, 100mS, 1 second, 1 minute, 1 hour or 1
day.
For more details see the description of off period.
The parameter can be changed using the command WO(Output Number)F followed by a
number representing the period:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minute
4 = Hours
5 = Days
The parameter can be read using the command RO(Output Number)F.
The default for all outputs is 100mS.
4.8 Input used as Reset
An output can be set to latch so that once the output becomes active it will remain active
irrespective of the input conditions until it is reset. There are two ways to reset an output
either specify another input as a reset and when this becomes active the output will be
deactivated, or use the command WO(Output Number)U via the Serial Port.
Any Real input may be used as the reset. However if an input used to activate an output is
also used to reset the same output unpredictable operation will result.
If input 0 is specified as input reset then none will be used.
A reset input is still effective even if the output is not latched. It will always over-ride an
active set of inputs to hold the output inactive.
The parameter can be changed using the command WO(Output Number)G followed by the
number of the input to be used as the reset.
The parameter can be read using the command RO(Output Number)G.
The default for all outputs is that no input is specified.
4.9 Active low / high
Each output is interfaced with an open collector driver. The output transistor may be defined
as either turned on or turned off when the output is active. Active high is therefore defined as
the output transistor is turned off when the output is active and active low is defined as the
output transistor is turned off when the output is active.
If the VIOM Display or the VIOM Relay module are being used, the LEDs or Relays will be on
when the output is active if active low is selected.
The parameter can be changed using the command WO(Output Number)H followed by either
a 1 (active high) or a 0 (active low).
The parameter can be read using the command RO(Output Number)H.
The default for all outputs is active low.
4.10 AND / OR of map
Each output whether Real or Virtual may be controlled by any number of the 16 Real Inputs
or the 16 Virtual Inputs. These may be either ANDed or Ored to determine the state of the
associated output.
If the inputs are ANDed then all the designated inputs must be active before the output is
active. If any one of the inputs is inactive then the output is inactive.
If the inputs are ORed then any of the designated inputs must be active before the output is
active. If any one of the inputs is active then the output is active.
The parameter can be changed using the command WO(Output Number)J followed by either
a 1 (ORed) or a 0 (ANDed).
The parameter can be read using the command RO(Output Number)J.
The default for all outputs is ORed.
4.11 latched / not latched
Outputs may be either latched or not latched. If this parameter is set to non-latch, the output
will become active when the input conditions are satisfied. Once the input conditions become
false then the output will become inactive.
If parameter is set to latch then once the output becomes active it will remain active
irrespective of the input conditions until it is reset. There are two ways to reset an output
either specify another input as a reset and when this becomes active the output will be
deactivated, or use the command WO(Output Number)U via the Serial Port.
The latch parameter should not be set to true at the same time as the one-shot parameter.
The parameter can be changed using the command WO(Output Number)K followed by either
a 1 (latched) or a 0 (non-latched).
The parameter can be read using the command RO(Output Number)K.
The default for all outputs is non-latched.
4.12 Inputs on output map
Each output whether Real or Virtual may be controlled by any number of the 16 Real Inputs
or the 16 Virtual Inputs. To allow control of the output from a particular input two actions need
to be performed.
Firstly the output will need to be configured so that the source of control is set to “Inputs”
using the command WO(Output Number)N1. This is the default condition and will only be
needed if the configuration has been changed.
Secondly the input must be assigned to the output by writing it on to the map. Use the
command WO(Output Number)L(Input Number).
The output will now be controlled by the specified input. It will still be necessary to define the
manner of the control, either ANDed or ORed, using the command WO(Output Number)J. If
a single input is controlling an output it will not matter whether the AND function or the OR
function is used. However when more than 1 input is assigned to an output then the
parameter will need to be set.
It may be necessary to remove inputs from the map. This can be done using the command
WO(Output Number)M(Input Number).
If no inputs are assigned to an output and the source of its control is “Inputs” then that output
will remain permanently inactive.
The default condition is that each Real output is controlled by it corresponding input (i.e. Real
input 1 controls Real output 1, Real input 2 controls Real output 2 etc.). The Virtual outputs
are configured in a similar manner with Virtual output 17 controlled by Real input 1, Virtual
output 18 controlled by Real input 2.
The parameter can be read using the command RO(Output Number)L.
This parameter will not be used if the source of output control is set to either a timer or the
Serial Port.
4.13 Inputs on Invert map
As well as being able to control an output when a series of inputs are active it is possible to
invert an input so that it can turn an output on when it is inactive. It is possible to define an
input as either active high or active low. Thus if a switch was being used to control the input it
could be defined as being active when it is either open or closed. This would work fine if all
outputs using this input needed to sense the switch for a particular condition. However if one
output needed to be active while the switch was open and another needed to be active while
the switch was closed there would be a problem.
This parameter allows for this set of conditions. On each output it is possible to define the
sense of each input. In this case we could define the input as active low (active when the
switch was closed). Now the output needing the switch closed would be satisfied. the output
needing switch open could now have that input added to its invert map and thus as far as that
input was concerned the input would be active when the switch was open.
To add an input on to the map use the command WO(Output Number)P(Input Number).
Inputs can removed from the map using the command WO(Output Number)Q(Input
Number).
The parameter can be read using the command RO(Output Number)P.
Note that it is only possible to invert Real inputs.
4.14 Reset Period
This parameter is only used when the output is controlled by inputs. When the output is
controlled by either the Timer / Counters or the Serial Port the reset period is ignored.
This parameter is only used by Real outputs. Virtual outputs will return an error message if
they are programmed with a value.
The reset period is used in conjunction with the reset units and is defined as the period for
which a reset input must be active before the controlled output becomes inactive.
Any period between 1 and 255 may be specified and this value in conjunction with the reset
units will define the total time.
If a value of 1 is chosen then the output will be turned on immediately.
The actual value of the reset time will have an accuracy of + or - 1 unit and it is therefore
important to choose the value of the period and the units carefully. For example if a reset
period of 2 seconds is required the value of this parameter could be set to 2 and the reset
units could be set to seconds. This would give a period in the range 1 to 3 seconds. However
if the period was set to 200 and the reset units to 10mS then the accuracy would be improved
to between 1.99 seconds and 2.01 seconds.
The parameter can be changed using the command WO(Output Number)S followed by the
period value
The parameter can be read using the command RO(Output Number)S.
The default for all outputs is 10.
4.15 Reset Units
This parameter is used in conjunction with the reset period to define the total period between
the reset input becoming active and the output becoming inactive. The units can be set to
10mS, 100mS, 1 second, 1 minute, 1 hour or 1 day.
For more details see the description of reset period.
The parameter can be changed using the command WO(Output Number)T followed by a
number representing the period:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minute
4 = Hours
5 = Days
The parameter can be read using the command RO(Output Number)T.
The default for all outputs is 100mS.
4.16 One Shot
In one shot mode the output will be turned on after the input combination becomes true and
after the recognition period as in normal operation. The output will remain on for the on
period and turn and remain off. The output will be re-activated after the input combination
has first gone false and then again gone true.
Unlike latch mode there is no need to reset the output as this is done automatically at the end
of the on period.
The latch parameter should not be set to true at the same time as the one-shot parameter.
The parameter can be changed using the command WO(Output Number)W followed by
either a 1 (one-shot) or a 0 (normal).
The parameter can be read using the command RO(Output Number)W.
The default for all outputs is normal.
5 INPUTS
5.1 General
The VIOM has 16 inputs which can be assigned in varying ways to outputs and Timer /
Counters.
Each input may be defined as active high or active low, have a recognition and / or
antibounce time and can be latched.
5.2 Recognition Time
The recognition period for an input is the time between the input becoming active and the
time at which the rest of the logic is informed that it is active. This differs from the antibounce
processing which is of fixed length and is applied to both the activation and the de-activation.
Any period between 1 and 255 may be specified and this value in conjunction with the
recognition units will define the total time.
If a value of 1 is chosen then the output will be turned on immediately.
The actual value of the recognition time will have an accuracy of + or - 1 unit and it is
therefore important to choose the value of the period and the units carefully. For example if a
recognition period of 2 seconds is required the value of this parameter could be set to 2 and
the recognition units could be set to seconds. This would give a period in the range 1 to 3
seconds. However if the period was set to 200 and the recognition units to 10mS then the
accuracy would be improved to between 1.99 seconds and 2.01 seconds.
Recognition periods can also be set on outputs. They do behave in slightly different ways
when an output is latched. With an input recognition if the input goes inactive before the
recognition period expires then the affected outputs will not be activated. However, as the
latch is applied as soon as the input combination goes true on an output, the output will still
be activated at the end of the recognition period.
The parameter can be changed using the command WI(Output Number)A followed by the
period value
The parameter can be read using the command RI(Output Number)A.
The default for all outputs is 10.
5.3 Recognition Units
This parameter is used in conjunction with the recognition period to define the total period
between the input becoming active and the processing starting. The units can be set to
10mS, 100mS, 1 second, 1 minute, 1 hour or 1 day.
For more details see the description of recognition period.
The parameter can be changed using the command WI(Output Number)B followed by a
number representing the period:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minute
4 = Hours
5 = Days
The parameter can be read using the command RI(Output Number)B.
The default for all outputs is 100mS.
5.4 AntiBounce
AntiBounce is useful where mechanical contacts are used as an input. As the contacts close
they can make and break several times before settling. It can also be useful in applications
where there is a high level of electrical noise.
The down side to AntiBounce is that the change of state of an input will slower to register with
AntiBounce on and this may affect the accuracy of timers.
Effectively the AntiBounce ensures that the input is active or inactive for approximately
200mS before it is declared active to the rest of the processing.
This differs from the recognition period processing which is of variable length and is applied
only to the activation.
The parameter can be changed using the command WI(Input Number)C followed by either a
1 (AntiBounce enabled) or a 0 (AntiBounce disabled).
The parameter can be read using the command RI(Output Number)C.
The default for all inputs is AntiBounce enabled.
5.5 Input used as Reset
An input can be set to latch so that once that input becomes active it will remain active
irrespective of any change in input condition until it is reset. There are two ways to reset an
input either specify another input as a reset and when this becomes active the input will be
deactivated, or use the command WI(Output Number)U via the Serial Port.
Any Real input may be used as the reset.
If input 0 is specified as input reset then none will be used.
The parameter can be changed using the command WI(Output Number)G followed by the
number of the input to be used as the reset.
The parameter can be read using the command RI(Output Number)G.
The default for all outputs is that no input is specified.
5.6 Input Active low/high
Each input is interfaced with the outside world so that a switch can be connected between its
terminal an 0 volts and it would be normal to suppose that the input should be defined as
active when the switch is made. However the input may be connected to a variety of other
active sources and the definition of what level is active may vary.
If we want to define the input as being active when either it is open circuit or high then the
input will be active high. Conversely if we want to define the input as being active when
either it is closed circuit or low then the input will be active low.
The parameter can be changed using the command WI(Output Number)H followed by either
a 1 (active high) or a 0 (active low).
The parameter can be read using the command RI(Output Number)H.
The default for all inputs is active low.
5.7 Input latched / not latched
Inputs may be either latched or not latched. If this parameter is set to non-latch, the input will
become active when the input condition is satisfied. Once the input condition becomes false
then the output will become inactive.
If parameter is set to latch then once the output becomes active it will remain active
irrespective of any change to the input. There are two ways to reset an input: either specify
another input as a reset and when this becomes active the latched input will be deactivated,
or use the command WI(Output Number)U via the Serial Port.
The parameter can be changed using the command WI(Output Number)K followed by either
a 1 (latched) or a 0 (non-latched).
The parameter can be read using the command RI(Output Number)K.
The default for all inputs is non-latched.
6 TIMER / COUNTERS
6.1 General
VIOM has 8 internal Timer / Counter registers. Each register is 32 bits wide and can therefore
count up to 4,000,000,000. Each register may be allocated as either a timer or a counter.
When in timer mode it will count time in mS with a resolution of 10mS.
The Timer / Counters are controlled by a single input which may be either Real or Virtual. In
addition they can control a single output, again either Real or Virtual. The output will be
active when a threshold stored in a separate comparator is exceeded. The output will remain
active until the Timer / Counter is cleared or is reduced below the threshold.
The value in each register may be read and cleared via the Serial Port.
6.2 Input to control Timer / Counter
Each Timer / Counter is controlled by a single Real or Virtual input. In timer mode the
register is incremented while the input is active. In counter mode the register is incremented
once each time the input becomes active.
The parameter can be changed using the command WT(Timer / Counter Number)A followed
by the input which is to control the Timer / Counter.
The parameter can be read using the command RT(Timer / Counter Number)A.
The default for all Timer / Counters is no input is designated.
6.3 Timer / Counter output
As each Timer / Counter is incremented its value is compared with a level specified in the
Timer / Counter comparator. An output can be designated to be activated while the value in
the Timer / Counter register exceeds that in the Timer / Counter comparator. When the value
in the Timer / Counter register is below that in the Timer / Counter comparator the output will
be inactive.
To allow control of the output from a particular Timer / Counter two actions need to be
performed.
Firstly the output will need to be configured so that the source of control is set to “Timer /
Counter” using the command WO(Output Number)N2. The default condition for this
parameter is “Inputs” and will is therefore needed.
Secondly the input must be defined by using the command W (Number)B(Input Number).
The parameter can be read using the command RT(Timer / Counter Number)B.
6.4 Timer / Counter mode
Each Timer / Counter may be used as a timer or a counter. In counter mode the register is
incremented each time the designated input becomes true.
In timer mode the register is incremented by 10 every 10mS while the designated input is
true.
The parameter can be changed using the command WT(Timer / Counter Number)C followed
by either a 1 (timer mode) or a 0 (counter mode).
The parameter can be read using the command RT(Timer / Counter Number)C.
The default for all Timer / Counters is counter mode.
6.5 Timer reset mode
This parameter is only used if a Timer / Counter is in timer mode.
A timer will start timing when its input becomes active and will stop when the input becomes
inactive. When its input becomes active for a second time the timer will resume counting.
This parameter defines how the counter behaves on this second and subsequent transition to
becoming active.
If the timer reset mode is enabled then each time the timers input becomes active the
counter is reset to zero. This mode is useful where the time for individual events is important
and negates the need for a manual reset.
If the timer reset mode is disabled the timer will resume its count from the last value. That is
the timer will provide an accumulated time based on the total period of the input has been
active.
The parameter can be changed using the command WT(Timer / Counter Number)D followed
by either a 1 (timer resets on start of activation) or a 0 (timer accumulates total active time).
The parameter can be read using the command RT(Timer / Counter Number)D.
The default for all Timer / Counters is to accumulate time.
6.6 Timer / Counter compare Level
As each Timer / Counter is incremented its value is compared with a level specified in the
Timer / Counter comparator. An output can be designated to be activated while the value in
the Timer / Counter register exceeds that in the Timer / Counter comparator.
The size of the Timer / Counter comparator is 32 bits and so it can be set to any value which
is also valid for the Timer / Counter register.
The parameter can be changed using the command WT(Timer / Counter Number)E followed
by the value to be place in the Timer / Counter comparator.
The parameter can be read using the command RT(Timer / Counter Number)E.
The default for all Timer / Counters is 0.
6.7 Read Timer / Counter
The value contained in the Timer / Counter register may be read using the command
RT(Timer / Counter Number)G.
In timer mode the value returned will be the time in milliseconds. In counter mode the value
returned will be the count.
6.8 Clearing Timer / Counter
The Timer / Counter register may be cleared to zero by using the command WT(Timer /
Counter Number)F via the Serial Port or an input may be designated as a reset.
The command to set a reset input is WT(Timer / Counter Number)J followed by the number
of the input to be used as a reset. If the numer is set to zero then no inputs will be used to
reset the Timer / Counter.
The reset input can be read using the command RT(Timer / Counter Number)J.
The default for all Timer / Counters is no input is designated.
6.9 Decrementing the Counter
When in counter mode the Timer / Counter register can have its value decremented by one
each time an input is activated. In order for this input to be effective the Timer / Counter
must have a controlling input enabled and must be in counter mode. The value for this
parameter has no effect when the Timer / Counter is in timer mode.
The value of the counter will not decrement passed zero.
The parameter can be changed using the command WT(Timer / Counter Number)H followed
by the input which is to decrement the Timer / Counter.
The parameter can be read using the command RT(Timer / Counter Number)H.
The default for all Timer / Counters is no input is designated.
7 READING DATA
7.1 General
The current status of all the inputs may be requested by the host via the Serial Port in
several forms. In its simplest form a command is issued requesting the information and this
is returned by the VIOM. Alternatively the VIOM can send data as requested without
intervention of the host. this can take two forms. Either the VIOM can send the data at fixed
periods or whenever there is a change on any inputs.
It may be that the host is required to use a combination of these forms and confusion may
arise as to the source of the data. It is therefore possible to prefix each data packet with a
user defined character. The prefix may be different for the three difference sources of the
data.
This latter facility can be used to create a data link between two VIOMs. By setting the prefix
to “Z” and connecting the Serial Ports together with a null modem cable inputs on one VIOM
will be mimicked on the second VIOM and vice versa. For more details see the application
note.
It is only possible to read all 16 Real inputs in a single batch.
Outputs may be read either individually or as a block. When reading a complete block it is
possible to read the Real outputs, the Virtual outputs or all outputs together.
7.2 Requesting Input Status
Input status may be requested by issuing the command CIN. This will return the current
status of all the Real inputs.
A prefix may be assigned to the returned report by using the command CIP3 followed by the
character to be used as a prefix. Once this prefix has been set it will remain set until the
command CIP is sent or it is changed using the CIP3 command.
7.3 Reporting Input Status on change
Input status can also be programmed to report whenever an input changes. All 16 Real inputs
will be reported in the same packet.
In this mode all status reports are in the short form irrespective of the message type currently
enabled. The status report is a series of 16 1s or 0s terminated by a carriage return / line
feed. The first digit of the report relates to input 1, the second to input 2 and so on. A 1 on the
report indicates that the input is active and a zero indicates that it is inactive. Note that the
report does not indicate the actual level of the input but uses the level in conjunction with the
active high / active low parameter.
A prefix may be assigned to the change status report by using the command CIP1 followed
by the character to be used as a prefix. Once this prefix has been set it will remain set until
the command CIP is sent or it changed using the CIP1 command.
To enable the change reporting use the command CIC1. To turn off change reporting use the
command CIC0. To read the current status of change reporting use the command CIC.
The default for this facility is disabled.
7.4 Regular Update Input Status reporting
Input status can be set to report a regular intervals regardless of an change in input status.
All 16 Real inputs will be reported in the same packet. The report period can be set to
100mS, 1 second, 1 minute, 1 hour or 1 day.
In this mode all status reports are in the short form irrespective of the message type currently
enabled. The status report is a series of 16 1s or 0s terminated by a carriage return / line
feed. The first digit of the report relates to input 1, the second to input 2 and so on. A 1 on the
report indicates that the input is active and a zero indicates that it is inactive. Note that the
report does not indicate the actual level of the input but uses the level in conjunction with the
active high / active low parameter.
A prefix may be assigned to the change status report by using the command CIP2 followed
by the character to be used as a prefix. Once this prefix has been set it will remain set until
the command CIP is sent or it changed using the CIP2 command.
To enable the update reporting use the command CIR followed by a single number to specify
the period (1 = 100mS, 2 = 1 second, 3 = 1 minute, 4 = 1 hour or 5 = 1 day). to disable
update reporting use the command CIR0.
To read the current status of change reporting use the command CIR.
The default for this facility is disabled.
7.5 Reading Single Output
Outputs may be read either individually or as a block. To read a single output use the
command XC(Output Number). Outputs 1 to 16 are Real while outputs 17 to 32 are Virtual.
Virtual outputs will return their current status as either active or inactive. Real outputs will
return either inactive or their current position in the output cycle.
Note that this command will return the current status of the output. The logic level of the
output will be determined by the active high / active low parameter.
7.6 Reading Multiple Outputs
When reading the outputs as a block it is possible read all Real outputs, all Virtual outputs or
all outputs. To read the Real outputs use the command COR, for the Virtual outputs use COV
and for all outputs use COA..
Virtual outputs will return their current status as either active or inactive. Real outputs will
return either inactive or their current position in the output cycle.
Note that these commands will return the current status of the output. The logic level of the
output will be determined by the active high / active low parameter.
8 WRITING DATA
8.1 General
All outputs Real and Virtual can be addressed either individually or collectively. In all cases
the output must first be assigned to the Serial Port using the command WO(Output)N3. Note
that the default control for all outputs is by inputs, therefore if working from the defaults it will
be necessary to issue this command before successfully writing to an output.
8.2 Writing to a single Output
All Real and Virtual outputs can be controlled from the host via the Serial Port. Outputs may
be controlled from inputs, Timer / Counters or from the Serial Port. In order that control be
effected from the Serial Port use the command WO(Output)N3.
Single outputs can be activated using the command XA followed by the number of the output
to be activated. Real outputs use the range 1 to 16 while the Virtual outputs use the range 17
to 32. to deactivate the output use the command XB followed by the number of the output to
be deactivated.
Note that the logic level of the output will be determined not only by the write command but
also by the active high / active low parameter.
8.3 Writing to multiple Outputs
All Real and Virtual outputs can be controlled from the host via the Serial Port. Outputs may
be controlled from inputs, Timer / Counters or from the Serial Port. In order that control be
effected from the Serial Port use the command WO(Output)N3.
When writing to multiple outputs they must be written in complete blocks either all Real
outputs or all Virtual outputs. If an output has not been assigned to the Serial Port then its
level will not be affected when it is addressed.
Real outputs can be addressed by using the command ZA followed by a series of 1s and 0s
which represent the new output level where a 1 indicates that the output is to be active and a
zero indicates that it is to be inactive.
Virtual outputs can be addressed by using the command YA followed by a series of 1s and 0s
which represent the new output level where a 1 indicates that the output is to be active and a
zero indicates that it is to be inactive.
both of these commands will cause the VIOM to report back on the current output status.
This can be avoided by using the command prefix “Z” or “Y” instead of “ZA” or “YA”. In this
case no response will be generated by the VIOM.
Note that the logic level of the output will be determined not only by the write command but
also by the active high / active low parameter.
9 HYPERTERMINAL
If you are using HyperTerminal set it up as follows:
Go to File/Properties.
Set the “Connect using” dialog to “Direct to ComX” where X is the Serial Port you are using.
Go to the “Configure” button and set the following:
“Bits per second”:
9600
“Data Bits”:
8
“Parity”:
None
“Stop Bits”:
1
“Flow Control”:
None
Press OK to return to the File/Properties dialog.
Go to the “Settings” Tab and set the following:
Function arrow and ctrl keys act as :
Terminal keys
Backspace key sends:
Cntrl+H
Emulation:
ANSI
TELNET Terminal:
ANSI
Press ASCII Set-up button.
Check the “Send line ends with line feeds” box.
Check the “Wrap lines that exceed terminal width” box.
Set “Line delay” to 0.
Set “Character delay” to 0.
Other boxes should not be checked.
Press OK to return to the File/Properties dialog.
Press OK to return to the main screen.
Save the new settings.
Hyper Terminal is now set up.
10 COMMANDS
10.1 General
Commands are used to control and interrogate the module. All commands and data are
passed through the Serial Port.
Generally commands fall into three categories:
1. Those used to read or write parameters which affect the operation of the module.
2. Those used customise the user interface of the module.
3. Those used to monitor Inputs or directly control Outputs.
All commands are single line instructions and must be terminated with a carriage return and
line feed. If HyperTerminal is being used the carriage returns and line feeds can be inserted
automatically when the return or enter key is pressed. If a file is down loaded then again the
carriage returns and line feeds will be automatically generated. If there is any difficulty then
you can use <CTRL M> followed by <CTRL J>.
None of the commands are case sensitive. In this manual the convention used has been to
use upper case characters for the commands, however any mixture may be used. For
example CMS can be cms or cMs.
Most commands will respond with a return message, the form of which will depend not only
on the command but on what form of return messages have been selected. If “Long
Messages“ have been selected the return message will generally be in the form of plain
language text. “Short Messages” will generally only return the current value of the parameter
concerned or a simple one character acknowledgement.
As with the command format all return messages are terminated with a carriage return and
line feed.
If a message is received by the module which is not understood, then an error message will
be returned. If “Long Messages“ have been selected the error message will be plain text and
will indicate the nature of the problem. “Short Messages” will generally only return an ”E”.
As well as requesting or writing a single parameter to a single input, output or Timer /
Counter it is also possible to read and write multiple parameters. To read multiple parameters
look for commands starting with the letter ‘D’. To upload a the same parameter to all outputs
look for the commands starting with the letter ‘U’.
Commands may be manually input using a terminal program such as HyperTerminal or
downloaded in batches from a text file. If downloading from a text file it is essential to use the
command FDL at the start of the download. If manually typing in commands it is possible to
use the back-delete key.
10.2 Command Details
Command: Comment
Form: <
Description: Any line which starts with “<“ is ignored. This is useful for commenting text files.
Main Description: 3.4 Comments
Long Message Return:
None
Short Message Return:
None
Default: N/A
--------------------------------------------------------------------------------------------------------------------------
Command: Write Error Message Prefix with character.
Form: CEA(char)
where char is the character which is to prefix the message.
Description: Error messages may be prefixed with a character so that they may be
differentiated from information type messages. The prefix is applied to both long and short
messages. This command will write the prefix to be used with Error Messages.
Main Description: 3.5 Error Message Prefix
Long Message Return:
“Error Message Prefix: ”
followed by the character assigned.
Short Message Return:
The character assigned.
Default: No prefix
Example:
CEA< Prefix Error Messages with the character ‘<‘.
-------------------------------------------------------------------------------------------------------------------------Command: Read Prefix of Error Messages
Form: CER
Description: Error messages may be prefixed with a character so that they may be
differentiated from information type messages. The prefix is applied to both long and short
messages. This command will read the prefix assigned to Error Messages.
Main Description: 3.5 Error Message Prefix
Long Message Return:
If no prefixes have been allocated:
“Error Message Prefix: None”
If prefix ‘<’ has been allocated:
“Error Message Prefix: <”
Short Message Return:
Error Message Prefix
Default: N/A
--------------------------------------------------------------------------------------------------------------------------
Command: Read State of Input Change Reporting
Form: CIC
Description: Input Change Reporting reads the state of each of the 16 Real Inputs and will
issue a status message on the Serial Port each time a change occurs.
Main Description: 7.3 Reporting Input Status on change
Long Message Return:
“Input Change Reporting is Off”
“Input Change Reporting is On”
Short Message Return:
“0” = Off; “1” = On
Default: N/A
-------------------------------------------------------------------------------------------------------------------------Command: Write State of Input Change Reporting
Form: CIC(0-1)
Description: Input Change Reporting reads the state of each of the 16 Real Inputs and will
issue a status message on the Serial Port each time a change occurs. This command will set
the will either enable (1) or disable (0) the function.
Main Description: 7.3 Reporting Input Status on change
Long Message Return:
“Input Change Reporting is Off”
“Input Change Reporting is On”
Short Message Return:
“0” = Off; “1” = On
Default: Function disabled CIC0
Example:
CIC0 Input Change Reporting Disabled
CIC1 Input Change Reporting Enabled
--------------------------------------------------------------------------------------------------------------------------
Command: Request State of Inputs
Form: CIN
Description: Requests the current state of the 16 Real inputs
Main Description: 7.2 Requesting Input Status
Long Message Return:
State of each of the Inputs in the form “Input 1 Inactive”
Short Message Return:
State of each of the Inputs, input 1 first and input 16 last. “1” indicates active, “0” indicates
inactive.
Default: N/A
-------------------------------------------------------------------------------------------------------------------------Command: Read Prefix of Input Reporting
Form: CIP0
Description: There are 3 types of input reporting: on change, on request and regular. each
type may have a single character as prefix so that it is possible to distinguish from which type
of report the message originated. This command will return the prefix for each type of
reporting.
Main Description:
7.2 Requesting Input Status
7.3 Reporting Input Status on change
7.4 Regular Update Input Status reporting
Long Message Return:
If no prefixes have been allocated:
“Change Prefix: None”
“Update Prefix: None”
“Request Prefix: None”
If prefixes ‘a’, ’b’ and ‘c’ have been allocated:
“Change Prefix: a”
“Update Prefix: b”
“Request Prefix: c”
Short Message Return:
Change Prefix followed by Update Prefix followed by Request Prefix separated by commas.
If no prefixes have been allocated: ,,
If prefixes ‘a’, ’b’ and ‘c’ have been allocated: a,b,c
Default: N/A
--------------------------------------------------------------------------------------------------------------------------
Command: Write Prefix Input Reporting with character
Form: CIP(1-3)(char)
where 1= Change Prefix
2= Update Prefix
3= Request Prefix
char is the character which is to prefix the report
Description: There are 3 types of input reporting: on change, on request and regular. each
type may have a single character as prefix so that it is possible to distinguish from which type
of report the message originated. This command will set the prefix for each type of reporting.
Main Description:
7.2 Requesting Input Status
7.3 Reporting Input Status on change
7.4 Regular Update Input Status reporting
Long Message Return:
Depending on which type of reporting has been addressed:
“Change Prefix: ”
“Update Prefix:”
“Request Prefix: ”
followed by the character assigned.
Short Message Return:
The character assigned.
Default: No prefix
Example:
CIP1a Prefix Change Reports with the character ‘a’.
--------------------------------------------------------------------------------------------------------------------------
Command: Write No Prefix Input Reporting
Form: CIP(1-3)
Description: There are 3 types of input reporting: on change, on request and regular. each
type may have a single character as prefix so that it is possible to distinguish from which type
of report the message originated. This command will turn the prefix off for each type of
reporting.
Main Description:
7.2 Requesting Input Status
7.3 Reporting Input Status on change
7.4 Regular Update Input Status reporting
Long Message Return:
Depending on which type of reporting has been addressed:
“Change Prefix: None”
“Update Prefix: None”
“Request Prefix: None”
Short Message Return:
“A”
Default: No prefix
Example:
CIP1 No Prefix for Change Reports
-------------------------------------------------------------------------------------------------------------------------Command: Read Input Reporting Period
Form: CIR
Description: Reads the period of Update Reporting of the state of the Real Inputs. This can
be off ,100mS, 1 Second, 1 Minute, 1 Hour or 1 Day.
Main Description: 7.4 Regular Update Input Status reporting
Long Message Return:
“Input Reporting Period is” followed by the period.
Short Message Return:
A number in the range 0 to 5 where:
0 = Off
1 = 100mS
2 = 1 Second
3 = 1 Minute
4 = 1 Hour
5 = 1 Day
Default: Input Reporting off
--------------------------------------------------------------------------------------------------------------------------
Command: Write Input Reporting Period
Form: CIR(0-6)
where the value 0-6 is:
0 = Off
1 = 100mS
2 = 1 Second
3 = 1 Minute
4 = 1 Hour
5 = 1 Day
Description: This command defines the period of Update Reporting of the state of the Real
Inputs.
Main Description: 7.4 Regular Update Input Status reporting
Long Message Return:
“Input Reporting Period is “ followed by the report period.
Followed by reports at the rate specified.
Short Message Return:
A number in the range 0 to 5 where:
0 = Off
1 = 100mS
2 = 1 Second
3 = 1 Minute
4 = 1 Hour
5 = 1 Day
Followed by reports at the rate specified.
Default: Input Reporting off.
Example:
CIR2 Set the Update Reporting period to 1 second.
-------------------------------------------------------------------------------------------------------------------------Command: Short messages
Form: CMS
Description: Sets the Message Mode to short messages.
Main Description: 3.1 Message Types
Long Message Return: N/A
Short Message Return: “A”
Default: Long messages
--------------------------------------------------------------------------------------------------------------------------
Command: Long Messages
Form: CML
Description: Sets the Message Mode to long messages.
Main Description: 3.1 Message Types
Long Message Return: “Long Messages On”
Short Message Return: N/A
Default: Long messages
-------------------------------------------------------------------------------------------------------------------------Command: Return to Defaults
Form: CPD
Description: Returns the programming to default conditions
Main Description: 3.6 Return to Defaults
Long Message Return:
“Wait...”
Followed by
“Defaults Set”
Short Message Return: N/A (default condition is Long Messages)
Default: N/A
--------------------------------------------------------------------------------------------------------------------------
Command: Request State of all Outputs
Form: COA
Description: Requests the current state of the 16 Real Outputs and the 16 Virtual Outputs.
Main Description: 7.6 Reading Multiple Outputs
Long Message Return:
“Output”
followed by the output number followed by one of:
Inactive
Active
Recognition Period
On Period
Off Period
Wait Reset
Short Message Return:
A number in the range 0 to 4 where:
0 = Inactive.
1 = Recognition Period
2 = On Time
3 = Off Time
4=Wait Reset
Default: N/A
--------------------------------------------------------------------------------------------------------------------------
Command: Request State of all Real Outputs
Form: COR
Description: Requests the current state of the 16 Real Outputs.
Main Description: 7.6 Reading Multiple Outputs
Long Message Return:
“Output”
followed by the output number followed by one of:
Inactive
Recognition Period
On Period
Off Period
Wait Reset
for each Real Output
Short Message Return:
A number in the range 0 to 4 where:
0 = Inactive.
1 = Recognition Period
2 = On Time
3 = Off Time
4=Wait Reset
for each Real Output
Default: N/A
-------------------------------------------------------------------------------------------------------------------------Command: Request State of all Outputs
Form: COV
Description: Requests the current state of the 16 Virtual Outputs.
Main Description: 7.6 Reading Multiple Outputs
Long Message Return:
“Output”
followed by the output number followed by one of:
Inactive
Active
for each Virtual Output
Short Message Return:
A number in the range 0 to 1 where:
0 = Inactive.
1 = Active
for each Virtual Output
Default: N/A
--------------------------------------------------------------------------------------------------------------------------
Command: Request Port Return Echo Status
Form: CR
Description: The module can be programmed to echo back all received characters on the
serial port. This command reads the current status of echo back.
Main Description: 3.2 Return Echo
Long Message Return:
Either:
“Serial Port echo is on”
Or:
“Serial Port echo is off”
Short Message Return: “1” or “0”
where:
1 = Echo Back is on.
0 = Echo Back is off.
Default: Return Echo on
-------------------------------------------------------------------------------------------------------------------------Command: Set Port Return Echo Status
Form: CR(1 or 0)
where:
1 turns return Echo on
0 turns return Echo off
Description: The module can be programmed to echo back all received characters on the
serial port. This command sets the state of Return Echo.
Main Description: 3.2 Return Echo
Long Message Return:
Either:
“Serial Port echo is on”
Or:
“Serial Port echo is off”
Short Message Return:
“1” or “0”
where:
1 = Echo Back is on.
0 = Echo Back is off.
Default: Return Echo on
--------------------------------------------------------------------------------------------------------------------------
Command: Requests the Start Message Status
Form: CSM
Description: When power is applied to VIOM it can generate the start up message “VIOM
Started”. This message can be suppressed.
Main Description: 3.7 Start Message
Long Message Return:
Either
“Start Message is On”
or
“Start Message is Off”
Short Message Return: “1” or “0”
where
1 = Start Message is generated
0 = Start message is suppressed
Default: Start Message is generated
-------------------------------------------------------------------------------------------------------------------------Command: Set the Start Message Status
Form: CSM(0 or 1)
where
1 generates the start message on power on
0 suppresses the start message on power on
Description: When power is applied to VIOM it can generate the start up message “VIOM
Started”. This message can be suppressed with this command.
Main Description: 3.7 Start Message
Long Message Return:
Either
“Start Message is On”
or
“Start Message is Off”
Short Message Return:
“1” or “0”
where
1 = Start Message is generated
0 = Start message is suppressed
Default: Start Message is generated
--------------------------------------------------------------------------------------------------------------------------
Command: Read Software Version
Form: CSV
Description: this command reads the current VIOM software version
Main Description: 3.8 Reading the Software Version
Long Message Return:
“Software Version” followed by the software version.
Short Message Return:
software version.
Default: N/A
-------------------------------------------------------------------------------------------------------------------------Command: Download a Parameter for all Outputs
Form: DA(A-W)
where (A-W) is:
A = Recognition Time
B = Recognition Units
C = On Time
D = On Time Units
E = Off Time
F = Off Time Units
G = Input used as Reset
H = Output Active low/high
J = Output uses AND / OR of map
K = Output latched / not latched
L = Inputs on output map
M = Inputs on output map
N = Output is controlled by (1=Inputs, 2=Timer / Counter, 3=RS232)
P = Inputs on Invert map
Q = Inputs on Invert map
S = Reset Time
T = Reset Units
W = Output One Shot
Description: The command will return the values of a particular parameter for all the Real
Outputs and Virtual Outputs. Some parameters are not applicable to Virtual Outputs in which
case only the values for the Real outputs are returned.
Main Description: 4 OUTPUTS
Long Message Return:
Dependant on parameter. See appropriate Read Command.
Short Message Return:
Dependant on parameter. See appropriate Read Command.
Default: N/A
Example:
DAS
Will return the reset time for all outputs.
--------------------------------------------------------------------------------------------------------------------------
Command: Download a Parameter for all Inputs
Form: DB(A-K)
where DB(A-K) is
A = Recognition Time
B = Recognition Units
C = AntiBounce on/off
G = Input used as Reset
H = Input Active low/high
K = Input latched / not latched
Description: The command will return the values of a particular parameter for all the Inputs.
Main Description: 5 INPUTS
Long Message Return:
Dependant on parameter. See appropriate Read Command.
Short Message Return:
Dependant on parameter. See appropriate Read Command.
Default: N/A
Example:
DBA
Will return the Recognition Time for all inputs.
-------------------------------------------------------------------------------------------------------------------------Command: Download a Parameter for all Timer / Counters
Form: DC(A-G) where (A-G) is
A = Input to control Timer / Counter
B = Timer / Counter output
C = Timer / Counter mode
D = Timer reset mode
E = Timer / Counter Compare Level
G = Timer / Counter
H= Input to decrement Timer / Counter
Description: The command will return the values of a particular parameter for all the timer /
counters.
Main Description: 6 TIMER / COUNTERS
Long Message Return:
Dependant on parameter. See appropriate Read Command.
Short Message Return:
Dependant on parameter. See appropriate Read Command.
Default: N/A
Example:
DBD Will return the Reset mode for each of the Timer / counters
--------------------------------------------------------------------------------------------------------------------------
Command: Download all Parameters for a Single Input
Form: DI(1-16)
where (1-16) is the number of the Input.
Description: This command will download Recognition Time, Recognition Units, Anti-Bounce
on/off, Input used as Reset, Input Active low / high, Input latched / not latched for a single
input.
Main Description: 5 INPUTS
Long Message Return:
A combination of Read Input parameter responses.
Short Message Return:
A combination of Read Input parameter responses.
Default: N/A
Example:
DI5
will download all parameters for Input 5
-------------------------------------------------------------------------------------------------------------------------Command: Download all Parameters for Output
Form: DO(1-32)
where (1-32) is the number of the Output.
Description: If the Output number is less than 16 (i.e. Real Output) the command will
download Recognition Time, Recognition Units, On Time, On Time Units, Off Time, Off Time
Units, Input Used as Reset, Output Active low/high, Output uses AND / OR of map, Output
latched / not latched, Inputs on Output map, Inputs on Output map, Reset Time, Reset Units
and Output One Shot.
If the Output number is greater than 16 (i.e. Virtual Output) the command will download Input
Used as Reset, Output Active low/high, Output uses AND / OR of map, Output latched / not
latched, Inputs on Output map, Inputs on Output map, Reset Time, Reset Units and Output
One Shot.
Main Description: 4 OUTPUTS
Long Message Return:
A combination of Read Output parameter responses.
Short Message Return:
A combination of Read Output parameter responses.
Default: N/A
Example:
D012 will download all parameters for Output 12
--------------------------------------------------------------------------------------------------------------------------
Command: Download Timer / Counter Parameters
Form: DT(1-8)
where (1-8) is the number of the Timer / Counter.
Description: this command will download Input to control Timer / Counter, Timer / Counter
Output, Timer / Counter mode, Timer reset mode, Timer / Counter compare Level, current
Timer / Counter value and Input to decrement Timer / Counter.
Main Description: 6 TIMER / COUNTERS
Long Message Return:
A combination of Read timer / Counter parameter responses.
Short Message Return:
A combination of Read timer / Counter parameter responses.
Default: N/A
Example:
DT1 will download all parameters for Timer / Counter 1
-------------------------------------------------------------------------------------------------------------------------Command: File Download
Form: FDL
Description: This command is should be used as the first command in a file upload.
Essentially it prepares the VIOM for a rapid series of commands and tells the VIOM to
dedicate itself to collecting the incoming data. the command will stay in effect for a period of
approximately 0.5 seconds after the last command at which point the VIOM will return to
normal operation. It prevents any message returns, Input Updates or Character Echoes.
While in effect it will prevent any writing to the non-volatile memory. At the end of its effect
all data will be written into the non-volatile memory.
Main Description: 3.3 File Download
Long Message Return:
There is no response at the issue of the command.
When returning to normal operation: “File Transferred”.
Short Message Return:
There is no response at the issue of the command.
When returning to normal operation: “A”.
Default: N/A
--------------------------------------------------------------------------------------------------------------------------
Command: Read Input Recognition Time
Form: RI(1-16)A
Where (1-16) is the input number.
Description: Reads the Input Recognition Time for a single input.
Main Description: 5.2 Recognition Time
Long Message Return:
“Input” followed by input number “Recognition Time is” followed by a number in the range 0
to 255.
Short Message Return:
A number in the range 0 to 255.
Default: 10
Example:
RI5A Will read the recognition Time of Input 5.
-------------------------------------------------------------------------------------------------------------------------Command: Read Input Recognition Units
Form: RI(1-16)B
Where (1-16) is the input number.
Description: Reads the Recognition Units for a single Input. These can be 10mS, 100mS,
Seconds, Minutes, Hour or Day.
Main Description: 5.3 Recognition Units
Long Message Return:
“Input “ followed by input number “Recognition Units are” followed by the units.
Short Message Return:
A number in the range 0 to 5 where:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minute
4 = Hours
5 = Days
Default: 10mS
Example:
RI1B will return the Recognition Units of Input 1
--------------------------------------------------------------------------------------------------------------------------
Command: Read Anti-Bounce on/off
Form: RI(1-16)C
Where (1-16) is the input number.
Description: Reads if the Input has Anti-Bounce enabled.
Main Description: 5.4 AntiBounce
Long Message Return:
“Input “ followed by input number “Antibounce is” followed by the either “On” or “Off”.
Short Message Return:
Either “1” (Anti-Bounce enabled) or “0” (Anti-Bounce disabled).
Default: Anti-Bounce enabled.
Example:
RI12C will return the Anti-Bounce status of Input 12.
-------------------------------------------------------------------------------------------------------------------------Command: Read Input used as Reset
Form: RI(1-16)G
Where (1-16) is the input number.
Description: Inputs may be designated as latched (i.e. once in the active state they remain
active irrespective of the state of that Input). In this mode a second input may be used to
reset the Input. This command reads the Input used as Reset.
Main Description: 5.5 Input used as Reset
Long Message Return:
If the Input has a designated Reset input:
“Input “ followed by input number “resets using input” followed by the input used as a reset
signal.
If the Input does not have designated Reset input:
“Input “ followed by input number “has no reset input”.
Short Message Return:
A number in the range 0 to 16 where:
0 indicates no Reset Input has been designated
1 to 16 indicates the number of the Reset Input.
Default: No Reset Input is designated
Example:
RI15G Will return which Input is used as a reset for Input 15.
--------------------------------------------------------------------------------------------------------------------------
Command: Read Input Active low/high
Form: RI(1-16)H
Where (1-16) is the input number.
Description: Each Input can be designated as either Active High or Active Low. This
command reads the designation.
Main Description: 5.6 Input Active low/high
Long Message Return:
If Active High:
“Input “ followed by input number “is Active High”
If Active Low:
“Input “ followed by input number “is Active Low”
Short Message Return:
“0” = Active Low
“1” = Active High
Default: Active Low
Example:
RI7H Will return the Active Low / Active High status of Input 7.
-------------------------------------------------------------------------------------------------------------------------Command: Read Input latched / not latched
Form: RI(1-16)K
Where (1-16) is the input number.
Description: Inputs may be designated as latched (i.e. once in the active state they remain
active irrespective of the state of that Input). This command reads the latched / not latched
status.
Main Description: 5.7 Input latched / not latched
Long Message Return:
If latched
“Input “ followed by input number “Latched”.
If not latched
“Input “ followed by input number “Not Latched”.
Short Message Return:
“0” = not latched
“1” = latched
Default: Not Latched
Example:
RI13K Will return the latched / not latched status of Input 13.
--------------------------------------------------------------------------------------------------------------------------
Command: Read Output Recognition Time
Form: RO(1-16)A
Where (1-16) is the Output number.
Description: Reads the Recognition Time for a single Output.
Main Description: 4.2 Recognition Period
Long Message Return:
“Output “ followed by input number “Recognition Time is” followed by a number in the range
0 to 255
Short Message Return:
A number in the range 0 to 255.
Default: 10
Example:
RO5A Will read the Recognition Time of Output 5.
-------------------------------------------------------------------------------------------------------------------------Command: Read Output Recognition Units
Form: RO(1-16)B
Where (1-16) is the Output number.
Description: Reads the Recognition Units for a single Output. These can be 10mS, 100mS, 1
Second, 1 Minute, 1 hour or 1 Day.
Main Description: 4.3 Recognition Units
Long Message Return:
“Output “ followed by input number “Recognition Units are” followed by the units.
Short Message Return:
A number in the range 0 to 5 where:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minute
4 = Hours
5 = Days
Default: 100mS
Example:
RO1B will return the Recognition Units of Output 1
--------------------------------------------------------------------------------------------------------------------------
Command: Read Output On Time
Form: RO(1-16)C
Where (1-16) is the Output number.
Description: Reads the On Time for a single Output.
Main Description: 4.4 On Period
Long Message Return:
“Output “ followed by input number “On Time is” followed by a number in the range 0 to 255
Short Message Return:
A number in the range 0 to 255.
Default: 10
Example:
RO16C Will read the On Time of Output 16.
-------------------------------------------------------------------------------------------------------------------------Command: Read Output On Units
Form: RO(1-16)D
Where (1-16) is the Output number.
Description: Reads the On Units for a single Output. These can be 10mS, 100mS, 1 Second,
1 Minute, 1 hour or 1 Day.
Main Description: 4.5 On Time Units
Long Message Return:
“Output “ followed by input number “On Units are” followed by the units.
Short Message Return:
A number in the range 0 to 5 where:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minute
4 = Hours
5 = Days
Default: 100mS
Example:
RO1B will return the On Units of Output 1
--------------------------------------------------------------------------------------------------------------------------
Command: Read Output Off Time
Form: RO(1-16)E
Where (1-16) is the Output number.
Description: Reads the Off Time for a single Output.
Main Description: 4.6 Off Period
Long Message Return:
“Output “ followed by input number “Off Time is” followed by a number in the range 0 to 255
Short Message Return:
A number in the range 0 to 255.
Default: 10
Example:
RO16E Will read the Off Time of Output 16.
-------------------------------------------------------------------------------------------------------------------------Command: Read Output Off Units
Form: RO(1-16)F
Where (1-16) is the Output number.
Description: Reads the Off Units for a single Output. These can be 10mS, 100mS, 1 Second,
1 Minute, 1 hour or 1 Day.
Main Description: 4.7 Off Time Units
Long Message Return:
“Output “ followed by input number “Off Units are” followed by the units.
Short Message Return:
A number in the range 0 to 5 where:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minute
4 = Hours
5 = Days
Default: 100mS
Example:
RO7D will return the Off Units of Output 7
--------------------------------------------------------------------------------------------------------------------------
Command: Read Input used as Reset
Form: RO(1-32)G
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
Description: Outputs may be designated as latched (i.e. once in the active state they remain
active irrespective of the state of the Inputs). In this mode an Input may be used to reset the
Output. This command reads the Input used as Reset.
Main Description: 4.8 Input used as Reset
Long Message Return:
If the Output has a designated Reset Input:
“Output “ followed by Output number “resets using input” followed by the Input used as a
reset signal.
If the Output does not have designated Reset input:
“Output “ followed by input number “has no reset input”.
Short Message Return:
A number in the range 0 to 16 where:
0 indicates no Reset Input has been designated
1 to 16 indicates the number of the Reset Input.
Default: No Reset Input is designated
Example:
R05G Will return which Input is used as a reset for Output 5.
-------------------------------------------------------------------------------------------------------------------------Command: Read Output Active low/high
Form: RO(1-32)H
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
Description: Each output can be designated as either Active High or Active Low. This
command reads the designation.
Main Description: 4.9 Active low / high
Long Message Return:
If Active High:
“Output “ followed by input number “is Active High”
If Active Low:
“Output “ followed by input number “is Active Low”
Short Message Return:
“0” = Active Low
“1” = Active High
Default: Active Low
Example:
RO2H Will return the Active Low / Active High status of Output 2.
--------------------------------------------------------------------------------------------------------------------------
Command: Read Output uses AND / OR of map
Form: RO(1-32)J
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
Description: Each Output is controlled by a number of Inputs. To determine if the Output is
active these Inputs may be ANDed or ORed. This command reads the whether the Inputs are
ANDed or Ored.
Main Description: 4.10 AND / OR of map
Long Message Return:
If ORed:
“Output “ followed by input number “Inputs are ORed”
If ANDed:
“Output “ followed by input number “Inputs are ANDed”
Short Message Return:
“1” = ORed
“0” = ANDed
Default: Ored
Example:
RO8J Will return whether Output 8 has its Inputs ANDed or Ored
-------------------------------------------------------------------------------------------------------------------------Command: Read Output latched / not latched
Form: RO(1-16)K
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
Description: Outputs may be designated as latched (i.e. once in the active state they remain
active irrespective of the state of the controlling Inputs). This command reads the latched /
not latched status.
Main Description: 4.11 latched / not latched
Long Message Return:
If latched
“Output “ followed by input number “Latched”.
If not latched
“Output “ followed by input number “Not Latched”.
Short Message Return:
“0” = not latched
“1” = latched
Default: Not Latched
Example: RO11K
Will return the latched / not latched status of Output 11.
--------------------------------------------------------------------------------------------------------------------------
Command: Read Inputs on Output map
Form: RO(1-32)L or RO(1-32)M
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
Description: Each Output (Real and Virtual) may be controlled by a number of Inputs. This
command will read the Inputs which control an Output.
Main Description: 4.12 Inputs on output map
Long Message Return:
“Output “ followed by input number “is Controlled by Inputs:” followed by a list of Inputs
separated by commas. If no Inputs have been so designated the list of Inputs is replaced with
“None”.
Short Message Return:
A list of Inputs separated by commas. If no Inputs have been so designated the list of Inputs
is replaced with “N”.
Default:
Outputs 1 to 16 are controlled by a single Input. The number of the Input is the same as the
Output number (i.e. Output 1 is controlled by Input 1, Output 2 is controlled by Input 2 etc.).
Outputs 17 to 32 are controlled by a single Input. The number of the Input is the 16 less than
the Output number (i.e. Output 17 is controlled by Input 1, Output 18 is controlled by Input 2
etc.).
Example:
RO17L Will read the controlling Inputs of Virtual Output 17.
--------------------------------------------------------------------------------------------------------------------------
Command: Read Output control source
Form: RO(1-32)N
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
Description: Outputs may be controlled from one of three sources: Inputs, Timer / Counters,
or the serial port. This command reads the source of the control.
Main Description:
6.3 Timer / Counter output
8.2 Writing to a single Output
8.3 Writing to multiple inputs
Long Message Return:
If controlled from the Inputs:
“Output “ followed by input number “is Controlled by Inputs”.
If controlled from the Timer / Counters:
“Output “ followed by input number “is Controlled by Timer / Counters”.
If controlled from the Serial Port:
“Output “ followed by input number “is Controlled by Serial Port”.
Short Message Return:
“1” = Controlled by Inputs
“2” = Controlled by Timer / Counters
“3” = Controlled by Serial Port
Default: Controlled by Inputs
Example:
RO11N will read the source of control of Output 11.
-------------------------------------------------------------------------------------------------------------------------Command: Read Inputs on Invert map
Form: RO(1-32)P or RO(1-32)Q
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
Description: Inputs on each Output (Real and Virtual) may be inverted. This command will
read the Inputs which are inverted on an Output.
Main Description: 4.13 Inputs on Invert map
Long Message Return:
“Output “ followed by input number “Uses Inverted Inputs:” followed by a list of Inputs
separated by commas. If no Inputs have been so designated the list of Inputs is replaced with
“None”.
Short Message Return:
A list of Inputs separated by commas. If no Inputs have been so designated the list of Inputs
is replaced with “N”.
Default: No Inputs are inverted.
Example:
RO9P Will read the inverting Inputs of Real Output 9.
--------------------------------------------------------------------------------------------------------------------------
Command: Read Output Reset Time
Form: RO(1-32)S
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
Description: Reads the Reset Time for a single Output.
Main Description: 4.14 Reset Period
Long Message Return:
“Output “ followed by input number “Reset Time is” followed by a number in the range 0 to
255
Short Message Return:
A number in the range 0 to 255.
Default: 20
Example:
RO16S Will read the Reset Time of Output 16.
-------------------------------------------------------------------------------------------------------------------------Command: Read Output Reset Units
Form: RO(1-16)T
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
Description: Reads the Reset Units for a single Output. These can be 10mS, 100mS, 1
Second, 1 Minute, 1 hour or 1 Day.
Main Description: 4.15 Reset Units
Long Message Return:
“Output “ followed by input number “Reset Units are” followed by the units.
Short Message Return:
A number in the range 0 to 5 where:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minute
4 = Hours
5 = Days
Default: 100mS
Example:
RO7T will return the Reset Units of Output 7
--------------------------------------------------------------------------------------------------------------------------
Command: Read Output One-Shot Mode
Form: RO(1-32)W
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
Description: This command will read if the Output is in One-Shot mode or Normal mode.
Main Description: 4.16 One Shot
Long Message Return:
If in Normal mode
“Output “ followed by input number “is in Normal Mode”
If in One-Shot mode
“Output “ followed by input number “One Shot Mode”
Short Message Return:
1 = One-Shot mode
0 = Normal mode
Default: Normal mode
Example:
RO3W Will return the mode for Output 3
-------------------------------------------------------------------------------------------------------------------------Command: Read Input to control Timer / Counter
Form: RT(1-8)A
Where (1-8) is the Timer / Counter number.
Description: This command will read the Input which controls a Timer / Counter.
Main Description: 6.2 Input to control Timer / Counter
Long Message Return:
If a controlling Input has been allocated:
“Timer / Counter” followed by Timer / Counter number “is controlled by input” followed by the
controlling Input number (in the range 1 to 32).
If a controlling Input has not been allocated:
“Timer / Counter” followed by Timer / Counter number “is controlled by input” followed by
“None”.
Short Message Return:
0 = No controlling Input has been allocated.
1 to 32 = the number of the controlling Input.
Default: None allocated
Example:
RT1A Will read the controlling Input of Timer / Counter 1.
--------------------------------------------------------------------------------------------------------------------------
Command: Read Timer / Counter Output
Form: RT(1-8)B
Where (1-8) is the Timer / Counter number.
Description: Each Timer / Counter can control a single Output. The Output is active when the
value in the Timer / Counter exceeds that in the Timer / Counter comparator. This command
will read the controlled Output.
Note that the Output will not be activated if the source of control is not set to 2 using the
command WO(1-32)N2.
Main Description: 6.3 Timer / Counter output
Long Message Return:
If a controlled Output has been allocated:
“Timer / Counter” followed by Timer / Counter number “controls output” followed by the
controlled Output number (in the range 1 to 32).
If a controlling Input has not been allocated:
“Timer / Counter” followed by Timer / Counter number “controls output” followed by “None”.
Short Message Return:
“0” = No controlled Output has been allocated.
1 to 32 = the number of the controlled Output.
Default: None allocated
Example:
RT5B Will read the Output which is controlled by Timer / Counter 5.
-------------------------------------------------------------------------------------------------------------------------Command: Read Timer / Counter mode
Form: RT(1-8)C
Where (1-8) is the Timer / Counter number.
Description: Each Timer / Counter can be assigned as either a counter or timer. This
command reads the mode of the Timer / Counter.
Main Description: 6.4 Timer / Counter mode
Long Message Return:
If the Timer / Counter is in counter mode:
“Timer / Counter” followed by Timer / Counter number “is in Counter Mode”.
If the Timer / Counter is in timer mode:
“Timer / Counter” followed by Timer / Counter number “is in Timer Mode”.
Short Message Return:
“0” = counter mode, “1” = timer mode.
Default: counter mode
Example:
RT8C will return the mode of Timer / Counter 8
--------------------------------------------------------------------------------------------------------------------------
Command: Read Timer reset mode
Form: RT(1-8)D
Where (1-8) is the Timer / Counter number.
Description: When in Timer mode the Timer / Counter can reset the Timer Register to zero
when the controlling Input becomes active. This command will read the mode.
Main Description: 6.5 Timer reset mode
Long Message Return:
If The Timer resets on start:
“Timer / Counter” followed by Timer / Counter number “resets on start”
If the timer does not reset on start
“Timer / Counter” followed by Timer / Counter number “holds time on start”
Short Message Return:
“1” = the Timer will reset on start.
“0” = the Timer will retain its previous value on start
Default: The Timer will retain its previous value on start
Example:
RT5D Will return the mode of Timer / Counter 5
-------------------------------------------------------------------------------------------------------------------------Command: Read Timer / Counter Compare Level
Form: RT(1-8)E
Where (1-8) is the Timer / Counter number.
Description: This command will read the value of the Timer / Counter Compare Register.
Main Description: 6.6 Timer / Counter compare Level
Long Message Return:
“Timer / Counter” followed by Timer / Counter number “comparator is” followed by its value.
When in Timer mode the returned value will be in mS.
Short Message Return:
Value of the Compare Register.
When in Timer mode the returned value will be in mS.
Default: 0
Example:
RT3E will return the value of the Compare Register of Timer / Counter 3.
--------------------------------------------------------------------------------------------------------------------------
Command: Read Timer / Counter Register
Form: RT(1-8)G
Where (1-8) is the Timer / Counter number.
Description: This command will read the current value of the Timer / Counter Register
Main Description: 6.7 Read Timer / Counter
Long Message Return:
“Timer / Counter” followed by Timer / Counter number “Value:” followed by its value.
When in Timer mode the returned value will be in mS.
Short Message Return:
Value of the Timer / Counter Register.
When in Timer mode the returned value will be in mS.
Default: Not determined
Example:
RT4G Will return the value of the Register of Timer / Counter 3.
-------------------------------------------------------------------------------------------------------------------------Command: Read Input to decrement Timer / Counter
Form: RT(1-8)H
Where (1-8) is the Timer / Counter number.
Description: This command will read the Input which decrements a Timer / Counter.
Main Description: 6.9 Input to decrement Timer / Counter
Long Message Return:
If an Input has been allocated:
“Timer / Counter” followed by Timer / Counter number “is decremented by input” followed by
the controlling Input number (in the range 1 to 32).
If an Input has not been allocated:
“Timer / Counter” followed by Timer / Counter number “is decremented by input” followed by
“None”.
Short Message Return:
0 = No controlling Input has been allocated.
1 to 32 = the number of the controlling Input.
Default: None allocated
Example:
RT1H Will read the Input which decrements Timer / Counter 1.
--------------------------------------------------------------------------------------------------------------------------
Command: Read Input to reset Timer / Counter
Form: RT(1-8)J
Where (1-8) is the Timer / Counter number.
Description: This command will read the Input which resets a Timer / Counter.
Main Description: 6.8 Clearing a Timer / Counter
Long Message Return:
If an Input has been allocated:
“Timer / Counter” followed by Timer / Counter number “is reset by input” followed by the
controlling Input number (in the range 1 to 32).
If an Input has not been allocated:
“Timer / Counter” followed by Timer / Counter number “is reset by input” followed by “None”.
Short Message Return:
0 = No reset Input has been allocated.
1 to 32 = the number of the reset Input.
Default: None allocated
Example:
RT1J Will read the Input which resets Timer / Counter 1.
-------------------------------------------------------------------------------------------------------------------------Command: Write Input Recognition Time
Form: WI(1-16)A(0-255)
Where
(1-16) is the input number.
(0-255) is the new value.
Description: Writes the new Input Recognition Time for a single input. The written value must
be in the range 0 to 255.
Main Description: 5.2 Recognition Time
Long Message Return:
“Input” followed by input Number “recognition Time is” followed by the new number.
Short Message Return:
A number in the range 0 to 255.
Default: 10
Example:
WI5A55
Will assign the Recognition Time of 55 to Input 5.
--------------------------------------------------------------------------------------------------------------------------
Command: Write Input Recognition Units
Form: WI(1-16)B(0-5)
Where
(1-16) is the input number.
(0-6) represent the Input Recognition Units
Description: Writes the Recognition Units for a single Input. These can be 0 = 10mS, 1 =
100mS, 2 = Seconds, 3 = Minutes, 4 = Hours or 5 = Days.
Main Description: 5.3 Recognition Units
Long Message Return:
“Input “ followed by input number “Recognition Units are” followed by the units.
Short Message Return:
A number in the range 0 to 5 where:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minutes
4 = Hours
5 = Days
Default: 10mS
Example:
WI1B2 Will assign Seconds as the Recognition Units of Input 1
--------------------------------------------------------------------------------------------------------------------------
Command: Write Anti-Bounce on/off
Form: WI(1-16)C(0-1)
Where
(1-16) is the input number.
(0-1) is the new Anti-Bounce on/off status
Description: Writes if the Input has Anti-Bounce enabled. A “1” enables the Anti-Bounce
processing while “0” disables it.
Main Description: 5.4 AntiBounce
Long Message Return:
“Input “ followed by input number “Antibounce is” followed by the either “On” or “Off”.
Short Message Return:
Either “1” (Anti-Bounce enabled) or “0” (Anti-Bounce disabled).
Default: Anti-Bounce enabled.
Example:
WI12C1
Will enable the Anti-Bounce processing of Input 12.
-------------------------------------------------------------------------------------------------------------------------Command: Write Input used as Reset
Form: WI(1-16)G(0-16)
Where (1-16) is the Input number.
(0-16) is the Input to be used as the reset. 0 means that no input should be assigned to this
function.
Description: Inputs may be designated as latched (i.e. once in the active state they remain
active irrespective of the state of that Input). In this mode a second Input may be used to
reset the latched Input. This command writes the Input to be used as Reset. If no reset is
required then assign Input zero. Otherwise the number should be in the range 1 to 16.
Main Description: 5.5 Input used as Reset
Long Message Return:
If the Input has a designated Reset input:
“Input “ followed by input number “resets using input” followed by the input used as a reset
signal.
If the Input does not have designated Reset input:
“Input “ followed by input number “has no reset input”.
Short Message Return:
A number in the range 0 to 16 where:
0 indicates no Reset Input has been designated
1 to 16 indicates the number of the Reset Input.
Default: No Reset Input is designated
Example:
WI15G3
Will assign Input 3 as the Input which is used as a reset for Input 15.
--------------------------------------------------------------------------------------------------------------------------
Command: Write Input Active low/high
Form: WI(1-16)H(0-1)
Where (1-16) is the input number.
(0-1) indicates active high (1) or active low (0).
Description: Each Input can be designated as either Active High or Active Low. This
command writes the designation.
Main Description: 5.6 Input Active low/high
Long Message Return:
If Active High:
“Input “ followed by input number “is Active High”
If Active Low:
“Input “ followed by input number “is Active Low”
Short Message Return:
0 = Active Low
1 = Active High
Default: Active Low
Example:
WI7H1
Input 7 will be active high.
-------------------------------------------------------------------------------------------------------------------------Command: Write Input latched / not latched
Form: WI(1-16)K(0-1)
Where (1-16) is the input number.
(0-1) indicates latched(1) or not latched(0).
Description: Inputs may be designated as latched (i.e. once in the active state they remain
active irrespective of the state of that Input). This command writes the latched / not latched
designation.
Main Description: 5.7 Input latched / not latched
Long Message Return:
If latched
“Input “ followed by input number “Latched”.
If not latched
“Input “ followed by input number “Not Latched”.
Short Message Return:
“0” = not latched
“1” = latched
Default: Not Latched
Example:
WI13K0
Input 13 will not latch.
--------------------------------------------------------------------------------------------------------------------------
Command: Reset Input
Form: WI(1-16)U
Where (1-16) is the Input number.
Description: Inputs may be designated as latched (i.e. once in the active state they remain
active irrespective of the state of that Input). This command will reset the specified Input.
Main Description: 5.7 Input latched / not latched
Long Message Return:
“Input “ followed by input number “Reset”.
Short Message Return:
the number of the Input unlatched.
Default: N/A
Example:
WI4U will reset Input 4.
-------------------------------------------------------------------------------------------------------------------------Command: Write Output Recognition Time
Form: WO(1-16)A(0-255)
Where (1-16) is the Output number.
(0-255) is the new value.
Description: Writes the Recognition Time for a single Output. The written value must be in
the range 0 to 255.
Main Description: 4.2 Recognition Period
Long Message Return:
“Output “ followed by input number “Recognition Time is” followed by the new number in the
range 0 to 255
Short Message Return:
A number in the range 0 to 255.
Default: 10
Example:
WO5A123
The Recognition Time of Output 5 will be 123.
--------------------------------------------------------------------------------------------------------------------------
Command: Write Output Recognition Units
Form: WO(1-16)B(0-5)
Where (1-16) is the Output number.
(0-5) represent the Input Recognition Units
Description: Writes the Recognition Units for a single Output. These can be 0 = 10mS, 1 =
100mS, 2 = Seconds, 3 = Minutes, 4 = Hours or 5 = Days.
Main Description: 4.3 Recognition Units
Long Message Return:
“Output “ followed by input number “Recognition Units are” followed by the units.
Short Message Return:
A number in the range 0 to 5 where:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minutes
4 = Hours
5 = Days
Default: 100mS
Example:
WO1B3
The Recognition Units of Output 1 will be Minutes.
-------------------------------------------------------------------------------------------------------------------------Command: Write Output On Time
Form: WO(1-16)C(0-255)
Where (1-16) is the Output number.
(0-255) is the new value.
Description: Writes the On Time for a single Output. The written value must be in the range 0
to 255.
Main Description: 4.4 On Period
Long Message Return:
“Output “ followed by input number “On Time is” followed by a number in the range 0 to 255
Short Message Return:
A number in the range 0 to 255.
Default: 10
Example:
WO16C255
The On Time of Output 16 will be 255.
--------------------------------------------------------------------------------------------------------------------------
Command: Write Output On Units
Form: WO(1-16)D(0-5)
Where (1-16) is the Output number.
(0-5) represent the Input Recognition Units
Description: Writes the On Units for a single Output. These can be 0 = 10mS, 1 = 100mS, 2
= Seconds, 3 = Minutes, 4 = Hours or 5 = Days.
Main Description: 4.5 On Time Units
Long Message Return:
“Output “ followed by input number “On Units are” followed by the units.
Short Message Return:
A number in the range 0 to 5 where:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minute
4 = Hours
5 = Days
Default: 100mS
Example:
WO1B0
The On Units of Output 1 will be 10mS
-------------------------------------------------------------------------------------------------------------------------Command: Write Output Off Time
Form: WO(1-16)E(0-255)
Where (1-16) is the Output number.
(0-255) is the new value.
Description: Writes the Off Time for a single Output. The written value must be in the range 0
to 255.
Main Description: 4.6 Off Period
Long Message Return:
“Output “ followed by input number “Off Time is” followed by a number in the range 0 to 255
Short Message Return:
A number in the range 0 to 255.
Default: 10
Example:
WO16E10
The Off Time of Output 16 will be 10.
--------------------------------------------------------------------------------------------------------------------------
Command: Write Output Off Units
Form: WO(1-16)F(0-5)
Where (1-16) is the Output number.
(0-5) represent the Output Recognition Units
Description: Writes the Off Units for a single Output. These can be 0 = 10mS, 1 = 100mS, 2
= Seconds, 3 = Minutes, 4 = Hours or 5 = Days.
Main Description: 4.7 Off Time Units
Long Message Return:
“Output “ followed by input number “Off Units are” followed by the units.
Short Message Return:
A number in the range 0 to 5 where:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minute
4 = Hours
5 = Days
Default: 100mS
Example:
WO7D5
The Off Units of Output 7 will be Days.
-------------------------------------------------------------------------------------------------------------------------Command: Write Input used as Reset
Form: WO(1-32)G(0-16)
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
(0-16) is the Input used to reset the Output
Description: Outputs may be designated as latched (i.e. once in the active state they remain
active irrespective of the state of the Inputs). In this mode an Input may be used to reset the
Output. This command writes the Input used as Reset.
Main Description: 4.8 Input used as Reset
Long Message Return:
If the Output has a designated Reset Input:
“Output “ followed by Output number “resets using input” followed by the Input used as a
reset signal.
If the Output does not have designated Reset input:
“Output “ followed by input number “has no reset input”.
Short Message Return:
A number in the range 0 to 16 where:
0 indicates no Reset Input has been designated
1 to 16 indicates the number of the Reset Input.
Default: No Reset Input is designated
Example:
W05G3
Output 5.will be reset by Input 3
--------------------------------------------------------------------------------------------------------------------------
Command: Write Output Active low/high
Form: WO(1-32)H(0-1)
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
(0-1) indicates active high (1) or active low (0).
Description: Each Output can be designated as either Active High or Active Low. This
command writes the designation.
Main Description: 4.9 Active low / high
Long Message Return:
If Active High: “Output “ followed by input number “is Active High”
If Active Low: “Output “ followed by input number “is Active Low”
Short Message Return:
“0” = Active Low
“1” = Active High
Default: Active Low
Example:
WO2H1
Output 2 will active high.
-------------------------------------------------------------------------------------------------------------------------Command: Write Output uses AND / OR of map
Form: WO(1-32)J(0-1)
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
(0-1) indicates OR (1) or AND (0).
Description: Each Output is controlled by a number of Inputs. To determine if the Output is
active these Inputs may be ANDed or ORed. This command writes if the Inputs are ANDed
(0) or Ored (1).
Main Description: 4.10 AND / OR of map
Long Message Return:
If ORed:
“Output “ followed by input number “Inputs are ORed”
If ANDed:
“Output “ followed by input number “Inputs are ANDed”
Short Message Return:
“1” = ORed
“0” = ANDed
Default: Ored
Example:
WO8J0
Output 8 will have its Inputs ANDed.
--------------------------------------------------------------------------------------------------------------------------
Command: Write Output latched / not latched
Form: WO(1-32)K(0-1)
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
(0-1) indicates latched (1) or not latched(0).
Description: Outputs may be designated as latched (i.e. once in the active state they remain
active irrespective of the state of the controlling Inputs). This command writes the latched /
not latched designation.
Main Description: 4.11 latched / not latched
Long Message Return:
If latched: “Output “ followed by input number “Latched”.
If not latched: “Output “ followed by input number “Not Latched”.
Short Message Return:
“0” = not latched
“1” = latched
Default: Not Latched
Example:
WO11K1
Output 11 will be latched.
-------------------------------------------------------------------------------------------------------------------------Command: Add Inputs on to the Output map
Form: WO(1-32)L(1-32)
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
(1-32) is the Input number (0 to 16 Real Inputs, 17 to 32 Virtual Inputs).
Description: Each Output (Real and Virtual) may be controlled by a number of Inputs. This
command will add an Input to the list or map which controls an Output.
Main Description: 4.12 Inputs on output map
Long Message Return:
“Output “ followed by input number “is Controlled by Inputs:” followed by a list of Inputs
separated by commas. If no Inputs have been so designated the list of Inputs is replaced with
“None”.
Short Message Return:
A list of Inputs separated by commas. If no Inputs have been so designated the list of Inputs
is replaced with “N”.
Default:
Outputs 1 to 16 are controlled by a single Input. The number of the Input is the same as the
Output number (i.e. Output 1 is controlled by Input 1, Output 2 is controlled by Input 2 etc.).
Outputs 17 to 32 are controlled by a single Input. The number of the Input is the 16 less than
the Output number (i.e. Output 17 is controlled by Input 1, Output 18 is controlled by Input 2
etc.).
Example:
WO17L5
Input 5 will be added to the list of Inputs controlling Output 17.
--------------------------------------------------------------------------------------------------------------------------
Command: Delete Inputs on to the Output map
Form: WO(1-32)M(1-32)
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
(1-32) is the Input number (0 to 16 Real Inputs, 17 to 32 Virtual Inputs).
Description: Each Output (Real and Virtual) may be controlled by a number of Inputs. This
command will delete an Input from the list or map which controls an Output.
Main Description: 4.12 Inputs on output map
Long Message Return:
“Output “ followed by input number “is Controlled by Inputs:” followed by a list of Inputs
separated by commas. If no Inputs have been so designated the list of Inputs is replaced with
“None”.
Short Message Return:
A list of Inputs separated by commas. If no Inputs have been so designated the list of Inputs
is replaced with “N”.
Default:
Outputs 1 to 16 are controlled by a single Input. The number of the Input is the same as the
Output number (i.e. Output 1 is controlled by Input 1, Output 2 is controlled by Input 2 etc.).
Outputs 17 to 32 are controlled by a single Input. The number of the Input is the 16 less than
the Output number (i.e. Output 17 is controlled by Input 1, Output 18 is controlled by Input 2
etc.).
Example:
WO17L5
Input 5 will be removed from the list of Inputs controlling Output 17.
--------------------------------------------------------------------------------------------------------------------------
Command: Write Output control source
Form: WO(1-32)N(1-3)
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
(1-3) indicates the source of the control. Controlled from Inputs is 1, controlled from Timer /
Counters is 2 and controlled from the serial port is 3.
Description: Outputs may be controlled from one of three sources: Inputs, Timer / Counters,
or the serial port. This command source of the control.
Main Description:
6.3 Timer / Counter output
8.2 Writing to a single Output
8.3 Writing to multiple inputs
Long Message Return:
If controlled from the Inputs:
“Output “ followed by input number “is Controlled by Inputs”.
If controlled from the Timer / Counters:
“Output “ followed by input number “is Controlled by Timer / Counters”.
If controlled from the Serial Port:
“Output “ followed by input number “is Controlled by Serial Port”.
Short Message Return:
“1” = Controlled by Inputs
“2” = Controlled by Timer / Counters
“3” = Controlled by Serial Port
Default: Controlled by Inputs
Example:
WO11N1
Output 11 will be controlled by Inputs.
-------------------------------------------------------------------------------------------------------------------------Command: Add an Input on to the Invert map
Form: RO(1-32)P(1-16)
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
(1-16) is the Input number.
Description: Inputs on each Output (Real and Virtual) may be inverted. This command will
add an Input to the list of Inputs which are inverted for use with an Output.
Main Description: 4.13 Inputs on Invert map
Long Message Return:
“Output “ followed by input number “Uses Inverted Inputs:” followed by a list of Inputs
separated by commas. If no Inputs have been so designated the list of Inputs is replaced with
“None”.
Short Message Return:
A list of Inputs separated by commas. If no Inputs have been so designated the list of Inputs
is replaced with “N”.
Default: No Inputs are inverted.
Example:
WO9P6
Input 6 will be inverted when used by Real Output 9.
--------------------------------------------------------------------------------------------------------------------------
Command: Delete an Input on to the Invert map
Form: WO(1-32)Q(1-16)
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
(1-16) is the Input number.
Description: Inputs on each Output (Real and Virtual) may be inverted. This command will
remove an Input from the list of Inputs which are inverted for use with an Output
Main Description: 4.13 Inputs on Invert map
Long Message Return:
“Output “ followed by input number “Uses Inverted Inputs:” followed by a list of Inputs
separated by commas. If no Inputs have been so designated the list of Inputs is replaced with
“None”.
Short Message Return:
A list of Inputs separated by commas. If no Inputs have been so designated the list of Inputs
is replaced with “N”.
Default: No Inputs are inverted.
Example:
WO9P6
Input 6 will not be inverted when used by Real Output 9
-------------------------------------------------------------------------------------------------------------------------Command: Write Output Reset Time
Form: WO(1-32)S(0-255)
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
(0-255) is the new value.
Description: Writes the Reset Time for a single Output. The written value must be in the
range 0 to 255.
Main Description: 4.14 Reset Period
Long Message Return:
“Output “ followed by input number “Reset Time is” followed by a number in the range 0 to
255
Short Message Return:
A number in the range 0 to 255.
Default: 20
Example:
WO16S10
The Reset Time of Output 16 will be 10.
--------------------------------------------------------------------------------------------------------------------------
Command: Write Output Reset Units
Form: WO(1-16)T(0-5)
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
(0-5) represent the Output Recognition Units
Description: Writes the Reset Units for a single Output. These can be 0 = 10mS, 1 = 100mS,
2 = Seconds, 3 = Minutes, 4 = Hours or 5 = Days.
Main Description: 4.15 Reset Units
Long Message Return:
“Output “ followed by input number “Reset Units are” followed by the units.
Short Message Return:
A number in the range 0 to 5 where:
0 = 10mS.
1 = 100mS.
2 = Seconds.
3 = Minute
4 = Hours
5 = Days
Default: 100mS
Example:
WO7T1
The Reset Units of Output 7 will be 100mS.
-------------------------------------------------------------------------------------------------------------------------Command: Read Output One-Shot Mode
Form: WO(1-32)W(0-1)
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
(0-1) indicates One-Shot Mode off (1) or One-Shot Mode on (0).
Description: This command will set the One-Shot mode for an Output.
Main Description: 4.16 One Shot
Long Message Return:
If in Normal mode
“Output “ followed by input number “is in Normal Mode”
If in One-Shot mode
“Output “ followed by input number “One Shot Mode”
Short Message Return:
1 = One-Shot mode
0 = Normal mode
Default: Normal mode
Example:
WO3W1
Output 3 will be in One-Shot mode.
--------------------------------------------------------------------------------------------------------------------------
Command: Reset Output
Form: WO(1-16)U
Where (1-16) is the output number.
Description: Outputs may be designated as latched (i.e. once in the active state they remain
active irrespective of the state of the controlling Inputs). This command will reset the
specified Output.
Main Description: 4.11 latched / not latched
Long Message Return:
“Output “ followed by input number “Reset”.
Short Message Return:
The number of the Output unlatched.
Default: N/A
Example:
WO4U will reset Output 4.
-------------------------------------------------------------------------------------------------------------------------Command: Write Input to control Timer / Counter
Form: WT(1-8)A(0-32)
Where (1-8) is the Timer / Counter number.
(0-32) 0 is no Input selected, 1 to 16 is a Real Input and 17 to 32 is a Virtual Output.
Description: This command will define the Input which controls a Timer / Counter.
Main Description: 6.2 Input to control Timer / Counter
Long Message Return:
If a controlling Input has been allocated:
“Timer / Counter” followed by Timer / Counter number “is controlled by input” followed by the
controlling Input number (in the range 1 to 32).
If a controlling Input has not been allocated:
“Timer / Counter” followed by Timer / Counter number “is controlled by input” followed by
“None”.
Short Message Return:
0 = No controlling Input has been allocated.
1 to 32 = the number of the controlling Input.
Default: None allocated
Example:
WT1A3
Timer / Counter 1 will be controlled by Real Input 3.
--------------------------------------------------------------------------------------------------------------------------
Command: Write Timer / Counter Output
Form: WT(1-8)B(0-32)
Where (1-8) is the Timer / Counter number.
(0-32) 0 is no Output selected, 1 to 16 is a Real Output and 17 to 32 is a Virtual Output.
Description: Each Timer / Counter can control a single Output. The Output is active when the
value in the Timer / Counter exceeds that in the Timer / Counter comparator. This command
will define the controlled Output.
Note that the Output will not be activated if the source of control is not set to 2 using the
command WO(1-32)N2.
Main Description: 6.3 Timer / Counter output
Long Message Return:
If a controlled Output has been allocated:
“Timer / Counter” followed by Timer / Counter number “controls output” followed by the
controlled Output number (in the range 1 to 32).
If a controlling Input has not been allocated:
“Timer / Counter” followed by Timer / Counter number “controls output” followed by “None”.
Short Message Return:
“0” = No controlled Output has been allocated.
1 to 32 = the number of the controlled Output.
Default: None allocated
Example:
WT5B22
Timer / Counter 5 will control Virtual Output 22.
-------------------------------------------------------------------------------------------------------------------------Command: Write Timer / Counter mode
Form: WT(1-8)C(0-1)
Where (1-8) is the Timer / Counter number.
(0-1) defines the mode. Timer mode is 1 and Counter mode is 0.
Description: Each Timer / Counter can be assigned as either a counter or timer. This
command defines the mode of the Timer / Counter.
Main Description: 6.4 Timer / Counter mode
Long Message Return:
If the Timer / Counter is in counter mode:
“Timer / Counter” followed by Timer / Counter number “is in Counter Mode”.
If the Timer / Counter is in timer mode:
“Timer / Counter” followed by Timer / Counter number “is in Timer Mode”.
Short Message Return:
“0” = counter mode.
“1” = timer mode.
Default: counter mode
Example:
WT8C1
Timer / Counter 8 will be in timer mode.
--------------------------------------------------------------------------------------------------------------------------
Command: Write Timer reset mode
Form: WT(1-8)D
Where (1-8) is the Timer / Counter number.
(0-1) defines the reset mode. Reset on start is 1 and no reset is 0.
Description: When in Timer mode the Timer / Counter can reset the Timer Register to zero
when the controlling Input becomes active. This command will set the mode.
Main Description: 6.5 Timer reset mode
Long Message Return:
If The Timer resets on start:
“Timer / Counter” followed by Timer / Counter number “resets on start”
If the timer does not reset on start
“Timer / Counter” followed by Timer / Counter number “holds time on start”
Short Message Return:
“1” = the Timer will reset on start.
“0” = the Timer will retain its previous value on start
Default: The Timer will retain its previous value on start
Example:
WT5D1
Timer / Counter 5 will reset its register on start.
-------------------------------------------------------------------------------------------------------------------------Command: Write Timer / Counter Compare Level
Form: WT(1-8)E(number)
Where (1-8) is the Timer / Counter number.
(number) is the value stored in the compare register (in the range 0 to 1,000,000,000)
Description: This command will write to the Timer / Counter Compare Register.
Main Description: 6.6 Timer / Counter compare Level
Long Message Return:
“Timer / Counter” followed by Timer / Counter number “comparator is” followed by its value.
When in Timer mode this value should be in mS.
Short Message Return:
Value of the Compare Register.
When in Timer mode the returned value will be in mS.
Default: 0
Example:
RT3E50
Will set the value of the Compare Register of Timer / Counter 3 to 50.
--------------------------------------------------------------------------------------------------------------------------
Command: Reset Timer / Counter Register
Form: WT(1-8)F
Where (1-8) is the Timer / Counter number.
Description: This command will reset the current value of the Timer / Counter Register to 0.
Main Description: 6.8 Clearing Timer / Counter
Long Message Return:
“Timer / Counter” followed by Timer / Counter number “Value:” followed by its value.
When in Timer mode the returned value will be in mS.
Short Message Return:
Value of the Timer / Counter Register.
When in Timer mode the returned value will be in mS.
Default: Not determined
Example:
WT4F Will reset the value of the Register of Timer / Counter 3 to zero.
-------------------------------------------------------------------------------------------------------------------------Command: Write Input to deceement Timer / Counter
Form: WT(1-8)H(0-32)
Where (1-8) is the Timer / Counter number.
(0-32) 0 is no Input selected, 1 to 16 is a Real Input and 17 to 32 is a Virtual Output.
Description: This command will define the Input which decrements a Timer / Counter.
Main Description: 6.9 Input to decrement Timer / Counter
Long Message Return:
If an Input has been allocated:
“Timer / Counter” followed by Timer / Counter number “is decremented by input” followed by
the controlling Input number (in the range 1 to 32).
If an Input has not been allocated:
“Timer / Counter” followed by Timer / Counter number “is decremented by input” followed by
“None”.
Short Message Return:
0 = No controlling Input has been allocated.
1 to 32 = the number of the controlling Input.
Default: None allocated
Example:
WT1H3
Timer / Counter 1 will be decremented by Real Input 3.
--------------------------------------------------------------------------------------------------------------------------
Command: Write Input to reset Timer / Counter
Form: WT(1-8)J(0-32)
Where (1-8) is the Timer / Counter number.
(0-32) 0 is no Input selected, 1 to 16 is a Real Input and 17 to 32 is a Virtual Output.
Description: This command will define the Input which resets a Timer / Counter.
Main Description: 6.8 Clearing a Timer / Counter
Long Message Return:
If an Input has been allocated:
“Timer / Counter” followed by Timer / Counter number “is reset by input” followed by the
controlling Input number (in the range 1 to 32).
If an Input has not been allocated:
“Timer / Counter” followed by Timer / Counter number “is reset by input” followed by “None”.
Short Message Return:
0 = No reset Input has been allocated.
1 to 32 = the number of the reset Input.
Default: None allocated
Example:
WT1H3
Timer / Counter 1 will be reset by Real Input 3.
--------------------------------------------------------------------------------------------------------------------------
Command: Write this parameter for all Outputs
Form: UA(A-W)(parameter)
where (A-W) is:
A = Recognition Time
B = Recognition Units
C = On Time
D = On Time Units
E = Off Time
F = Off Time Units
G = Input used as Reset
H = Output Active low/high
J = Output uses AND / OR of map
K = Output latched / not latched
L = Add Input on to Output map
M = Delete Inputs from Output map
N = Output is controlled by (1=Inputs, 2=Timer / Counter, 3=RS232)
P = Add Input on to Invert map
Q = Delete Input from Invert map
S = Reset Time
T = Reset Units
W = Output One Shot
(parameter)is the relevant data
Description: The command will set the values of a particular parameter for all the Real
Outputs and Virtual Outputs. Some parameters are not applicable to Virtual Outputs in which
case only the values for the Real outputs will be set.
Main Description: 4 OUTPUTS
Long Message Return:
Dependant on parameter. See appropriate Read Command.
Short Message Return:
Dependant on parameter. See appropriate Read Command.
Default: N/A
Example:
DAS50 Will set the reset time to 50 for all outputs.
--------------------------------------------------------------------------------------------------------------------------
Command: Clears all Inputs on Output Map
Form: UOM
Description: This command will clear all Inputs from all Output maps. It is a useful command
when downloading complex data as it ensures that there are no residual dependencies.
Main Description: 4 OUTPUTS
Long Message Return:
“Output” followed by the Output number “is Controlled by Inputs: None”.
This message is repeated 32 times (once for each Output).
Short Message Return:
“N” 32 times(once for each Output).
Default: N/A
-------------------------------------------------------------------------------------------------------------------------Command: Clears all Inputs on Invert Map
Form: UOQ
Description: This command will clear all inverted Inputs from all Output maps. It is a useful
command when downloading complex data as it ensures that there are no residual
dependencies.
Main Description: 4 OUTPUTS
Long Message Return:
“Output “ followed by input number “Uses Inverted Inputs: None”
This message is repeated 32 times (once for each Output).
Short Message Return:
“N” 32 times (once for each Output).
Default: N/A
-------------------------------------------------------------------------------------------------------------------------Command: Clears all Timer / Counters
Form: UTF
Description: This command will clear all Timer / Counter registers.
Main Description: 6 TIMER / COUNTERS
Long Message Return:
“Timer / Counter” followed by Timer / Counter number “Reset”.
This message is repeated 8 times (once for each Timer / Counter).
Short Message Return:
“A” 8 times (once for each Timer / Counter).
Default: N/A
--------------------------------------------------------------------------------------------------------------------------
Command: Turn Output On
Form: XA(1-32)
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
Description: Turn an individual output on. NOTE The Output must be allocated to be
controlled by the Serial Port using the command WO(1-32)N3 otherwise an error message
will be returned.
Main Description: 8.2 Writing to a single Output
Long Message Return:
“Output” followed by the Output number “On Period”.
Short Message Return:
“2”
Default: N/A
Example:
XA5 will turn Output 5 on.
-------------------------------------------------------------------------------------------------------------------------Command: Turn Output Off
Form: XB(1-32)
Where (1-32) is the Output number (0 to 16 Real Outputs, 17 to 32 Virtual Outputs).
Description: Turn an individual output off. NOTE The Output must be allocated to be
controlled by the Serial Port using the command WO(1-32)N3 otherwise an error message
will be returned.
Main Description: 8.2 Writing to a single Output
Long Message Return:
“Output” followed by the Output number “Inactive”.
Short Message Return:
“0”
Default: N/A
Example:
XB5 will turn Output 5 off.
--------------------------------------------------------------------------------------------------------------------------
Command: Read Output state
Form: XC(1-32)
Description: Reads the state of the Output.
Main Description: 7.5 Reading Single Output
Long Message Return:
“Output” followed by the Output number followed by one of:
“Inactive”
“Recognition Period”
“On Period”
“Off Period”
“Wait Reset”
Short Message Return:
0=Inactive
1=Recognition Period
2=On Period
3=Off Period
4=Wait Reset
Default: N/A
Example:
XC5 will return the state of Output 5.
-------------------------------------------------------------------------------------------------------------------------Command: Set Virtual Output without return messages
Form: Y(16*(1or0))
where (16*(1or0)) is a series of 1s and 0s which define the state of the 16 Virtual Outputs.
Description: This command will set the state of all 16 Virtual Outputs with a single command.
All 16 Virtual Outputs must be set at the same time otherwise it will not be acted upon.
Main Description: 8.3 Writing to multiple Outputs
Long Message Return:
None
Short Message Return:
None
Default: N/A
Example:
Y1110000000000000 will set Virtual Outputs 1, 2 and 3 and clear all others.
--------------------------------------------------------------------------------------------------------------------------
Command: Set Virtual Outputs with return messages
Form: Y(16*(1or0))
where (16*(1or0)) is a series of 1s and 0s which define the state of the 16 Virtual Outputs.
Description: This command will set the state of all 16 Virtual Outputs with a single command.
All 16 Virtual Outputs must be set at the same time otherwise it will not be acted upon and an
error message will be generated.
Main Description: 8.3 Writing to multiple Outputs
Long Message Return:
“Output”
followed by the output number followed by one of:
Inactive
Active
for each Virtual Output
Short Message Return:
A number in the range 0 to 1 where:
0 = Inactive.
1 = Active
for each Virtual Output
Default: N/A
Example:
Y0000000000000111 will set Virtual Outputs 14, 15 and 16 and clear all others.
-------------------------------------------------------------------------------------------------------------------------Command: Set Real Output without return messages
Form: Z(16*(1or0))
where (16*(1or0)) is a series of 1s and 0s which define the state of the 16 Real Outputs.
Description: This command will set the state of all 16 Real Outputs with a single command.
All 16 Real Outputs must be set at the same time otherwise it will not be acted upon.
Main Description: 8.3 Writing to multiple Outputs
Long Message Return:
None
Short Message Return:
None
Default: N/A
Example:
Z1110000000000000 will set Real Outputs 1, 2 and 3 and clear all others.
--------------------------------------------------------------------------------------------------------------------------
Command: Set Real Outputs with return messages
Form: Z(16*(1or0))
where (16*(1or0)) is a series of 1s and 0s which define the state of the 16 Real Outputs.
Description: This command will set the state of all 16 Real Outputs with a single command.
All 16 Real Outputs must be set at the same time otherwise it will not be acted upon and an
error message will be generated.
Main Description: 8.3 Writing to multiple Outputs
Long Message Return:
“Output”
followed by the output number followed by one of:
Inactive
Active
Recognition Period
On Period
Off Period
Wait Reset
for each Real Output
Short Message Return:
A number in the range 0 to 4 where:
0 = Inactive.
1 = Recognition Period
2 = On Time
3 = Off Time
4=Wait Reset
for each Real Output
Default: N/A
Example:
Z0000000000000111 will set Virtual Outputs 14, 15 and 16 and clear all others.
--------------------------------------------------------------------------------------------------------------------------
Phaedrus Limited
Unit 1
Darwen Enterprise centre
Railway Road
Darwen, England
+44 (0)1254 772622
tech@phaedrusltd.co.uk
www.phaedrusltd.co.uk
Issue 1.1