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

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.