7 logarithmic sampling using loops – Campbell Scientific TD Operating System Addendum for CR510, CR10X, and CR23X User Manual

Page 37

Advertising
background image

TD ADDENDUM—SECTION 8. PROCESSING AND PROGRAM CONTROL EXAMPLES

AD-8-7

10:

P69

Wind Vector

01:

1

Rep

02:

180

Samples per sub-interval

03:

0

Polar Sensor/(S, D1, SD1)

04:

1

Wind Speed/East Loc WS

05:

2

Wind Direction/North Loc WD_360

11:

P71

Average

01:

2

Reps

02:

3

Loc Temp_F

12:

P

End Table 1

8.6 CONVERTING 0-360 WIND DIRECTION

OUTPUT TO 0-540 FOR STRIP CHART

If 0-360 degree wind direction is output to a strip
chart the discontinuity at 0/360 will cause the pen
to jump back and forth full scale when the winds
are varying from the north. In the days of strip
charts this was solved with a 0-540 degree pot on
the wind vane (direction changes from 540 to 180
and from 0 to 360 so the pen only jumps once
when the wind is out of the north or south).

When faced with the necessity of strip chart
output (see previous example), the following
algorithm can be used to change a 0-360
degree input to 0-540. (If you have a 0-540 pot,
it can be used with the CR10 since the Wind
Vector Instruction, 69, will work with this output.)

To change 0-360 degrees to the 0-540 degrees,
360 degrees must sometimes be added to the
reading when it is in the range of 0 to 180. The
following algorithm does this by assuming that if
the previous reading was less than 270, the vane
has shifted through 180 degrees and does not
need to be altered. If the previous 0-540 reading
was greater than 270, 360 degrees is added.

This example is written as a subroutine, used by
the previous example to output an analog
voltage to a strip chart.

Input Location Labels:

2:WD_360
6:WD540_out
10:WD_540

*

3

Table 3 Subroutines

*

3

Table 3 Subroutines

01:

P85

Beginning of Subroutine

01:

1

Subroutine Number

02:

P89

If X<=>F

01:

10

X Loc WD_540

02:

3

>=

03:

270

F

04:

30

Then Do

03:

P86

Do

01:

11

Set high Flag 1

04:

P94

Else

05:

P86

Do

01:

21

Set low Flag 1

06:

P95

End

07:

P31

Z=X

01:

2

X Loc WD_360

02:

10

Z Loc [:WD_540 ]

08:

P89

If X<=>F

01:

10

X Loc WD_540

02:

4

<

03:

180

F

04:

30

Then Do

09:

P91

If Flag/Port

01:

11

Do if flag 1 is high

02:

30

Then Do

10:

P34

Z=X+F

01:

10

X Loc WD_540

02:

360

F

03:

10

Z Loc [:WD_540 ]

11:

P31

Z=X

01:

10

X Loc WD_540

02:

6

Z Loc [:WD540_out]

12:

P95

End

13:

P95

End

14:

P95

End

15:

P

End Table 3

8.7 LOGARITHMIC SAMPLING USING

LOOPS

A ground water pump test requires that water
level be measured and recorded according to
the following schedule.

Advertising