beautypg.com

5 wind vector, Table 27. sdi-12 sensor setup -- results – Campbell Scientific CR800 and CR850 Measurement and Control Systems User Manual

Page 189

background image

Section 7. Installation

189

 

CRBasic Example 37. Subroutine with Global and Local Variables 

'Global variables are those declared anywhere in the program as Public or Dim.

'Local variables are those declared in the Sub() instruction.

'Program Purpose: Demonstrates use of global and local variables with subroutines

'Program Function: Passes 2 variables to subroutine. Subroutine increments each

'variable once per second, multiplies each by pi, then passes results back to

'the main program for storage in a data table.

'Global variables (Used only outside subroutine by choice)

'Declare Counter in the Main Scan.

Public

counter(2)

As Long

'Declare Product of PI * counter(2).

Public

pi_product(2)

As Float

'Global variable (Used only in subroutine by choice)

'For / Next incrementor used in the subroutine.

Public

i_sub

As Long

'Declare Data Table

DataTable

(pi_results,True,-1)

Sample

(1,counter(),IEEE4)

EndTable

'Declare Subroutine

'Declares j(4) as local array (can only be used in subroutine)

Sub

ProcessSub (j(2) As Long,OutVar(2) As Float)

For

i_sub = 1

To

2

j(i_sub) = j(i_sub) + 1

'Processing to show functionality

OutVar(i_sub) = j(i_sub) * 4 * ATN(1)

'(Tip: 4 * ATN(1) = pi to IEEE4 precision)

Next

i_sub

EndSub

BeginProg

counter(1) = 1
counter(2) = 2

Scan

(1,Sec,0,0)

'Pass Counter() array to j() array, pi_pruduct() to OutVar()

Call

ProcessSub (counter(),pi_product())

CallTable

pi_results

NextScan

EndProg

 

7.8.5 Wind Vector

The WindVector() instruction processes wind-speed and direction measurements
to calculate mean speed, mean vector magnitude, and mean vector direction over a
data storage interval. Measurements from polar (wind speed and direction) or
orthogonal (fixed East and North propellers) sensors are supported. Vector
direction and standard deviation of vector direction can be calculated weighted or
unweighted for wind speed.