beautypg.com

90 step loop index, 91 if flag / port / modem, 92 if time – Campbell Scientific CR10X Measurement and Control System User Manual

Page 187: 93 begin case statement

background image

SECTION 12. PROGRAM CONTROL INSTRUCTIONS

12-5

*** 90 STEP LOOP INDEX ***

FUNCTION
When used within a Loop (Instruction 87),
Instruction 90 will increment the index counter
by a specified amount after the first time
through the loop, thus affecting all indexed input
location parameters in subsequent instructions.
For example, if 4 is specified, the index counter
will count up by 4 (0,4,8,12,...) inside the loop.
Instruction 90 does not affect the loop counter
which still counts by 1.

PARAM.

DATA

NUMBER

TYPE

DESCRIPTION

01:

2

Increment for the loop
index counter

*** 91 IF FLAG / PORT / MODEM ***

FUNCTION
This Instruction checks the status of one of the
ten Flags, one of the eight ports, or the serial
I/O port modem enable and conditionally
performs the specified Command. Ports can be
indexed (--) with the C key.

The first Parameter specifies the condition to check:

1X

Execute command if Flag X is high

2X

Execute command if Flag X is low

40

Execute command if modem is on

4X

Execute command if port X is high

50

Execute command if modem is off

5X

Execute command if port X is low

PARAM.

DATA

NUMBER

TYPE

DESCRIPTION

01:

2

Flag or Port condition to
check

02:

2

Command (Table 12-2)

*** 92 IF TIME ***

FUNCTION
The user specifies the number of minutes or
seconds into an interval, the duration of the
interval, and a command. The command is
executed each time the real time is the
specified time into the interval. The "If"
condition will always be false if 0000 is entered
as the time interval.

The time interval is synchronized with real time; if a
60 minute time interval is specified with 0 minutes
into the interval, the Command will be executed
each hour on the hour. The time interval is
synchronized internally by making a modulo divide

(Instruction 46) of the number of minutes since
midnight by the specified real time interval. If the
result is 0, the interval is up. Thus, the first interval
of the day always starts at midnight (0 minutes).
The maximum interval is 1440 minutes.

The time into an interval is only true the first
time Instruction 92 is executed within a given
minute (or second). For example, if the
command is to set the Output Flag at 0 minutes
into a 10 minute interval, and the execution
interval of the table is 10 seconds, every 10
minutes there will only be one output generated
by this instruction, not five.

The time into interval and the interval may be
entered in seconds for intervals less than 60
seconds.

To enter the times in seconds, press "C" after
keying in the number of seconds into the interval
for Parameter 1; two dashes will appear to the
right of the number (XXXX--). When the time
into interval is entered as seconds (XXXX--), the
time interval will also be interpreted as seconds.

The maximum number of seconds that can be
entered is 59 for Parameter 1 and 60 for
Parameter 2.

The Output Flag (Flag 0) is a special case in that it
will automatically be cleared if it is not time to set it.

PARAM.

DATA

NUMBER

TYPE

DESCRIPTION

01:

4

Time into interval
(minutes or seconds if
entered XXXX--)

02:

4

Time interval (units
same as above)

03:

2

Command (Table 12-2)

*** 93 BEGIN CASE STATEMENT ***

The value in the specified input location is
compared against parameters in following If
Case instructions (83). When a comparison is
true, the command in the If Case instruction is
executed and the program flow goes to the End
instruction (95) associated with the Begin Case
instruction.

PARAM.

DATA

NUMBER

TYPE

DESCRIPTION

01:

4

Input location for
subsequent comparisons