FLOSSII: Logbook Entries

FLOSSII: Radiometers Messages: 30 Entries..

Return to Logbook Contents Page
Entry Date Title Site Author #Graphics
229 Tue 22-Apr-2003pyg IC now okayoncley
228 Tue 22-Apr-2003pyg intercomparisonall stnsknudson
201 Thu 06-Mar-2003clean radslakeoncley
198 Thu 06-Mar-2003rads cleanedsageoncley
196 Thu 06-Mar-2003rad cleanedtoweroncley
192 Wed 05-Mar-2003some clouds this AMall stnsoncley1
171 Thu 27-Feb-2003Boom trolleytowerdelany
168 Wed 26-Feb-2003Removing radiometer snow doughnutsall stnsdelany
151 Wed 19-Feb-2003Cleaned boom pigstowerdelany
140 Tue 18-Feb-2003Radiometer cleaningall stnsdelany
125 Tue 28-Jan-2003Radiometers Cleanedall stnsmilitzer
92 Tue 31-Dec-2002logger filesall stnsoncley
83 Thu 19-Dec-2002Checked logger coefs at 25mtowermaclean
77 Wed 18-Dec-2002Boom PYG mount Modificationtowerrucker
72 Tue 17-Dec-20024m rads uptoweroncley
71 Tue 17-Dec-2002Installation of boom pyrgeometerstowerdelany
55 Thu 12-Dec-2002Added dat function to correct Rlw.in at lakelakemaclean
47 Mon 09-Dec-2002removed uplooking pir sensorlakeknudson
38 Sun 01-Dec-2002Tcase&Tdome.in coefs at lakelakemaclean
32 Fri 22-Nov-2002Fix lake coefficients for pyginlakesemmer
29 Thu 21-Nov-2002Rnet at lakelakemaclean
28 Thu 21-Nov-2002PSPs swapped at sagesagemaclean
22 Wed 20-Nov-2002rad stand uptoweroncley
19 Fri 15-Nov-2002Greasewood 1.5m radiation CR10X codetowersemmer
18 Fri 15-Nov-20024m radiation CR10X codetowersemmer
17 Fri 15-Nov-200225 meter radiation CR10X codetowersemmer
16 Fri 15-Nov-2002Grass, Lake, and Sage CR10X codeall stnssemmer
15 Fri 15-Nov-2002PAM sage CR10X coffssagesemmer
14 Fri 15-Nov-2002PAM Lake CR10X coffslakesemmer
13 Fri 15-Nov-2002tower-grass CR10X coffstowersemmer


229: Radiometers, Site , Tue 22-Apr-2003 14:39:34 MDT, pyg IC now okay
We have just fixed a few cabling problems: in.4m.bare and grease and now think
that all pygs are working properly.

228: Radiometers, Site all stns, Tue 22-Apr-2003 10:05:37 MDT, pyg intercomparison

the pyg intercomparison was set up Monday on the penthouse roof.
all radiometers were mounted looking up - one psp (K&Z 970377, Lake)
 and 13 pygs, as follows:

	Grass	 	P26416 pin
			P29260 pout
	Bare (4M)	31981 pin1
			31980 pout1
			31976 p1.5m
	Grease		31978 pout
	25M		31975 pin1
			31974 pout1
			31979 pin2
			31977 pout2
	Sage		P26417 pin
			P27907 pout
	Lake		P29137 - not used - went bad during the project
			P29136 pout - note on radiometer - comp circ removed

	4 t/rh's were also set up to complete their intercomparison

			TRH 003 baseline
			TRH 206 baseline
			TRH 502 PamIII
			TRH 101 PamIII


201: Radiometers, Site lake, Thu 06-Mar-2003 15:08:21 MST, clean rads
Have just cleaned all rads at lake.  Again, net looked okay.

198: Radiometers, Site sage, Thu 06-Mar-2003 13:46:46 MST, rads cleaned
Just cleaned all rads at sage about 12:15.  Again, I couldn't get the net 
apart, so I just cleaned it.  There are a few small (few mm) scratches on the 
upward dome, and it looks a bit milky-grey, but this looks normal to me.  It 
was pretty level, though I had to adjust it a bit after cleaning.


196: Radiometers, Site tower, Thu 06-Mar-2003 11:31:01 MST, rad cleaned
As one of the 3 tasks at the tower this AM, I cleaned all rads (incl 25&4m).
I was going to replace the net rad dome at grass, but couldn't get it off.
I just cleaned and releveled it instead.  This done ~09:00-09:30.



192: Radiometers, Site all stns, Wed 05-Mar-2003 07:29:19 MST, some clouds this AM
When Kate was here on Monday, I was concerned that Rsw.in was significantly
different at times between the sites.  Some of this could be snow/ice on the
domes, but it seemed like there were more cases with different radiation than
could be explained just by snow/ice.  Now is an example where there are patches
of sun slowly propogating across the surface, which could make differences
(at least instantaneously) of Rsw.in between lake/sage/tower.  I'm still not
completely convinced that the 5-min ave values should be as different as the
400 W/m2 that we sometimes get.

P.S. The attached graph shows several problems (that are real!).  [The red line
is: 1300*sin(dat("azel.sun")[,2]*pi/180)
1. A semi-stationary cloud pattern (probably orographically influenced) shadows
grass and lake at about noon, but doesn't move over sage until 45min later.
2. When this cloud shifts off at about 14:00, it apparently ducts some of the
sun to have even more than a clear-sky irradiance.
3. At about 16:00, thick clouds built up along the Gore Range cause "sunset" to
occur early, though some light is still present until real sunset.

It is going to be difficult to use these data for QCing snow/ice cases!
It may also indicate that using Rlw.in.sage as a surrogate for Rlw.in.grass may
be a mistake.

171: Radiometers, Site tower, Thu 27-Feb-2003 11:24:25 MST, Boom trolley
Last evening after fixing the fans on the 25m pyrgs the trolley was moved out.
Unfortunately it wasn't moved to the end of the boom
At 10:15 the trolley was moved to the end. Photo's to prove it
168: Radiometers, Site all stns, Wed 26-Feb-2003 15:28:33 MST, Removing radiometer snow doughnuts
The ventilation prevented the fine powdery snow from settling upon the 
radiometer domes. Doughnuts of snow formed, up to 7-8cm high, with a central
hole and an annulus extending from the ventilator slot to the edge of the
radiation shield. All upward-looking radiometers as well as the ice detectors
had the same problem. Some downlooking rads had an icicle from their dome.
14:00 Sage, removed doughnuts and cleaned all domes.NB Netrad was already clear.
14:10 Lake, ditto
14:21 Grease, cleaned dome
14:28 Bare, cleaned dome.
14:30 4m scaffold, removed doughnut and cleaned domes
14:32 Ice.a and Ice.b ditto
14:45 - 14:55 Drew in boom. S pyrg already clear, removed doughnut from N pyrg.
              The fans were unplugged with the N fan's wires cut.
              Left trolley inboard until we fix fan wiring.
16:10 -16:20  Remounted fans and powered up. Fans operated. 
              Ran out the trolley BUT THE TROLLEY DIDN'T GO ALL THE WAY



151: Radiometers, Site tower, Wed 19-Feb-2003 16:22:40 MST, Cleaned boom pigs
At 14:30 climbed tower to boom level.
The trolley rolled in with only a small glitch when the trolley had to be
reversed and pulled in again. Note that the catch/release worked.
Used handkerchief to polish domes. Ran out again and "catched"
Inspected from the ground and telephotoed.
140: Radiometers, Site all stns, Tue 18-Feb-2003 16:51:56 MST, Radiometer cleaning
Made a tour of the radiometers and cleaned domes and inspected sites.In no case
was there any dirt apparent on cleaning tissue.

14:04 Grass: 10% snow cover only a few cm deep over flat laying long grass 
Downlooking LW and SW have housing but no fans
Up looking LW and SW have housings and fans. LW.in fan stopped. I spun it and 
it started up.

15:00 Sage: Helped Jielun et al locate TC system
           50% snow cover, patches 6-8 cm deep between and among the sage.
Both incoming SW and LW housings and fan operating
Outgoing SW housing, no fan, outgoing LW no housing
All domes cleaned,
Net rad still level
Cleaned Kr, psych fan operating

15:30 Lake 90% snow cover around site.
SW.in fan operating, SW.out housing no fan, LW.out no housing
cleaned all domes, cleaned Kr, psych fan operating

15:40 Scaffold: 50% snow in dappled patches.
4m LW.in fan operating, LW.out no housing
1m LW.out no housing
Cleaned all domes

15:45 Grass (again) SW.in and LW.in fans operating
Only housings, no fan for SW.out and LW.out
Cleaned all domes

15:50 Greasewood: Snow drift 30 -50 cm deep under radiometer
LW.out has no housing.
Cleaned dome without breaking up the snow.
 
125: Radiometers, Site all stns, Tue 28-Jan-2003 14:57:32 MST, Radiometers Cleaned
7/27/03 25m radiometers cleaned.
7/28/03 All other radiometers cleaned with dry wipe.
Checked inside plenum at Sage and there was no snow packed
inside.  All domes looked very good although we did get
some snow showers this morning which left some moisture on
them.
I noticed something like a smudge inside the psp at Lake
on the small dome.  I don't know if that's a factor.
92: Radiometers, Site all stns, Tue 31-Dec-2002 13:38:02 MST, logger files
Here are all of the coeffient files loaded into the loggers.
(I got these from the cal-lab PC, so Steve S should verify that they
are the correct files.)

25m:
31975	pi1	06	251.193168
31974	po1	07	257.334020
31979	pi2	08	263.157895
31977	po2	09	261.711594
PI1TC-A0	x	10	2500
A1	x	11	3.355702
A2	x	12	.279378
A3	x	13	3.970700
A4	x	14	200.967000
PI1TD-A0	x	15	2500
A1	x	16	3.054151
A2	x	17	.270750
A3	x	18	3.531936
A4	x	19	172.539000
PO1TC-A0	x	20	2500
A1	x	21	3.354452
A2	x	22	.2795544
A3	x	23	3.870320
A4	x	24	213.662200
PO1TD-A0	x	25	2500
A1	x	26	3.053245
A2	x	27	.2706839
A3	x	28	3.462000
A4	x	29	179.035300
PI2TC-A0	x	30	2500
A1	x	31	3.355302
A2	x	32	.2796132
A3	x	33	3.907393
A4	x	34	205.226200
P12TD-A0	x	35	2500
A1	x	36	3.055463
A2	x	37	.271608
A3	x	38	3.538717
A4	x	39	170.026300
PO2TC-A0	x	40	2500
A1	x	41	3.355048
A2	x	42	.2793915
A3	x	43	3.969477
A4	x	44	201.022200
PO2TD-A0	x	45	2500
A1	x	46	3.052511
A2	x	47	.2706538
A3	x	48	3.516783
A4	x	49	176.020500
2018-A0	level-x	50	1.219419589
A1	x	51	10.90459926
A2	x	52	0.098392445
A3	x	53	-0.007021535
A4	x	54	0.000000
A0	level-y	55	-0.3726148
A1	x	56	10.4045871
A2	x	57	-0.1230141
A3	x	58	0.511059
A4	x	59	0.000000


4m:
31981	pi1	06	267.1653754
31980	po1	07	277.0466824
31976	p01m	08	255.102041
PI1TC-A0	x	10	2500
A1	x	11	3.354002
A2	x	12	.27995
A3	x	13	3.89791
A4	x	14	222.6
PI1TD-A0	x	15	2500
A1	x	16	3.050935
A2	x	17	.271316
A3	x	18	3.382922
A4	x	19	190.3757
PO1TC-A0	x	20	2500
A1	x	21	3.354756
A2	x	22	.279427
A3	x	23	3.948847
A4	x	24	215.9851
PO1TD-A0	x	25	2500
A1	x	26	3.052869
A2	x	27	.271025
A3	x	28	3.449757
A4	x	29	189.982
PO1mTC-A0	x	30	2500
A1	x	31	3.354748
A2	x	32	.279406
A3	x	33	3.926898
A4	x	34	202.8886
PO1mTD-A0	x	35	2500
A1	x	36	3.053435
A2	x	37	.270616
A3	x	38	3.557806
A4	x	39	167.4648

Grass (tower):
Q7-97069	NET(A+)	00	9.27
x	A-	01	11.48
P26416	x	02	290.866783
P29260	x	03	308.261406
K940181	x	04	82.3723229
K970379	x	05	45.51661356
H993563	x	06	38.9
H993562	x	07	37.3
H87034	x	08	36.8
Tc-A0	x	10	2500
A1	x	11	3.354472
A2	x	12	.2797812
A3	x	13	3.912974
A4	x	14	215.5208
Tdin-A0	x	15	2500
A1	x	16	3.052399
A2	x	17	.270981
A3	x	18	3.408667
A4	x	19	188.8687
Tcot-A0	x	20	2500
A1	x	21	3.353832
A2	x	22	.278595
A3	x	23	4.02801
A4	x	24	180.4266
Tdot-A0	x	25	2500
A1	x	26	3.053253
A2	x	27	.2706527
A3	x	28	3.530291
A4	x	29	166.282
HUX	x	50	180
baud	x	99	0

Greasewood:
31978	pygout	00	283.527077
PINTC-A0	x	10	2500
A1	x	11	3.354223
A2	x	12	.27981
A3	x	13	3.963779
A4	x	14	206.898
PINTD-A0	x	15	2500
A1	x	16	3.052301
A2	x	17	.270621
A3	x	18	3.499677
A4	x	19	177.414

Lake:
Q7-94197	NET(A+)	00	9.0
x	A-	01	11.22
P29137	x	02	240.211386
P29136	x	03	234.741784
K970377	x	04	43.55400697
K940186	x	05	82.71298594
H983213	x	06	38.2
H983211 x	07	36.4
H943149	x	08	39.7
Tc-A0	x	10	2500
A1	x	11	3.350057
A2	x	12	.279229
A3	x	13	3.147866
A4	x	14	-193.854
Tdin-A0	x	15	2500
A1	x	16	3.354167
A2	x	17	.278817
A3	x	18	3.653292
A4	x	19	222.2646
Tcot-A0	x	20	2500
A1	x	21	3.354344
A2	x	22	.278532
A3	x	23	3.845153
A4	x	24	185.129
Tdot-A0	x	25	2500
A1	x	26	3.354233
A2	x	27	.278537
A3	x	28	3.802989
A4	x	29	184.2122
HUX	x	50	180
baud	x	99	1

Sage:
Q7-94916	NET(A+)	00	9.21
x	A-	01	11.54
P26417	x	02	212.68
P27907	x	03	286.53
K970378	x	04	50.02501251
K940187	x	05	101.4198783
H983212	x	06	38.4
H993560	x	07	37.7
H943147	x	08	42.1
Tc-A0	x	10	2500
A1	x	11	3.355204
A2	x	12	.2795166
A3	x	13	3.950246
A4	x	14	209.3092
Tdin-A0	x	15	2500
A1	x	16	3.354969
A2	x	17	.2793838
A3	x	18	3.85506
A4	x	19	212.913
Tcot-A0	x	20	2500
A1	x	21	3.353713
A2	x	22	.2787871
A3	x	23	3.778048
A4	x	24	177.421
Tdot-A0	x	25	2500
A1	x	26	3.354732
A2	x	27	.2787514
A3	x	28	3.651471
A4	x	29	190.8095
HUX	x	50	180
baud	x	99	1








83: Radiometers, Site tower, Thu 19-Dec-2002 11:54:00 MST, Checked logger coefs at 25m
We're seeing wrong-looking Tdome-Tcase on in.b.25m and out.a.25m

Displayed the logger coefs at 25m.  They all match SteveS's sheet.
He will check his files.
77: Radiometers, Site tower, Wed 18-Dec-2002 10:08:57 MST, Boom PYG mount Modification
When initially we tried to extend the trolly out on the
boom we had the problem that we could not extend it all the way out because
the radiometer housings were too close together for the locking tab to fit
through them at the end.  To fix this problem we tried unscrewing all but
one of the four screws holding in the radiometer housings on each of
the top two radiometers.  We then rotated them outward and attached the
housings to the trolly using panduit ties going from the unsecured screws
to the braces of the trolly.  This held well, but when we tried to extend
the trolly once more, the fan on the left or southern side of the trolly hit
the corresponding guide wire.  We left the trolly for the night and tried
again to fix it this morning (12/18/2002).  We changed the position of the
problem radiometer by rotating it differently so that it could get by the
guide wire and was also far enough from the center so that the locking
tab could fit through.  We also replaced the panduit ties holding the
radiometer down with some wire so that we didn't have to worry about
the panduit ties breaking.  When we now attempted to send out the trolly
we were successull in reaching the end of the boom.  We are still having
some problems with the locking mechanism grabbing onto the trolly, but that
problem was not one that could be fixed without taking the entire boom
down and readjusting the lock.
72: Radiometers, Site tower, Tue 17-Dec-2002 16:58:14 MST, 4m rads up
~1330? the 4m rads were up and connected.  I leveled and cleaned them.  Fan
is on to the top housing.

We still haven't plugged in the 1.5m bare due to a lack of a cable.

71: Radiometers, Site tower, Tue 17-Dec-2002 16:37:04 MST, Installation of boom pyrgeometers
From 8:00 - 10:30 hauled up the boom trolley, the big white box and the cabling.
The pyrg leveling platform fitted on the trolley cross-wise. Even so the trolley
could not pass the latching device as the pygs in their housing were too close
together. 
From 14:30 - 16:60 modified the mounting of the pyrgs in their housings to yield
a greater separation. The level mounting was also modified. The south pyrg fan
then would not clear the lower stabilizing guy.

An ad hock arrangement will be contrived.

For a later time: Bring a drill and bits, centerpunch and tap to make new 
mounting holes.This can be done on the tower.

55: Radiometers, Site lake, Thu 12-Dec-2002 18:12:19 MST, Added dat function to correct Rlw.in at lake

Since Rlw.in at lake has not been correct since the beginning
of the project (due to a bad Tcase.in) a special version of
dat.Rlw.in has been written which just sets Rlw.in at lake equal
to Rlw.in at sage.  

Using the corrected Rlw.in, then Rsum compares well with Rnet at lake,
so I don't believe Rnet needs to be replaced.


47: Radiometers, Site lake, Mon 09-Dec-2002 09:15:02 MST, removed uplooking pir sensor
removed uplooking PIR sensor from the lake site
on Wed, Dec 4th
38: Radiometers, Site lake, Sun 01-Dec-2002 07:48:56 MST, Tcase&Tdome.in coefs at lake
Fixing the coefficients for Tcase&Tdome.in at lake (logbook #32)
did not improve the data (perhaps it made it worse - haven't checked).

Tdome-Tcase.in at lake is still about 3 degC at night, whereas 
it is usually less than 0.5 degC for all other pyrgeometers, including 
the down-looker at lake.

Here are the current coefficients from the logger at lake from doing
an EVE talk with the logger.  They agree with logbook entry #14



>
MODE 04:00  
00:+9.0000 
01:+11.220 
02:+240.21 
03:+234.74 
04:+43.554 
05:+82.713 
06:+38.200 
07:+36.400 
08:+39.700 
10:+2500.0 
11:+3.3542 
12:+.27882 
13:+3.6533 
14:+222.26 
15:+2500.0 
16:+3.3500 
17:+.27923 
18:+3.1479 
19:-193.85 
20:+2500.0 
21:+3.3543 
22:+.27853 
23:+3.8451 
24:+185.13 
25:+2500.0 
26:+3.3542 
27:+.27854 
28:+3.8030 
29:+184.21 
50:+180.00 
99:+1.0000 
MODE 00
LOG 12
*


32: Radiometers, Site lake, Fri 22-Nov-2002 09:41:11 MST, Fix lake coefficients for pygin
A difference plot showed questionable data from the dome and case temperatures
for Lake pygin. It was discovered that the coefficients had been reversed.
Corrections have been made both at the PAM site and the logbook entry 14.

29: Radiometers, Site lake, Thu 21-Nov-2002 12:35:58 MST, Rnet at lake

SteveS checked serial numbers at lake, all OK.

He noticed water droplets inside net radiometer dome, perhaps
that explains the Rnet data?
28: Radiometers, Site sage, Thu 21-Nov-2002 12:31:47 MST, PSPs swapped at sage
The PSPs at sage were actually placed as follows:

  940187 is PSPIN,
  970378 is PSPOUT

which is the reverse of what the logger program expected.

The logger program was changed.
22: Radiometers, Site tower, Wed 20-Nov-2002 13:24:51 MST, rad stand up
Lynette and I just installed the 4-comp rad on the grass rad stand with its
logger.  Data should be coming in now.   I'm going back out to install the
rain gauge cable.  The soil sensors are not coming in because we don't think
that we have the MUX cable for it here:(

19: Radiometers, Site tower, Fri 15-Nov-2002 14:26:23 MST, Greasewood 1.5m radiation CR10X code
NOTE: comments in this code may not be up to date


;{CR10X}
; CASES99 - 1.5 meter radiation system at greasewood site
; This is a special program for the FLOSS-II project
; The logger handles 1 pygreometer at the 1.5m greasewood site.
;
; CR10 CHANNEL ASSIGNMENTS
; ANALOG CHANNELS
;        1H - comm 1H of AM416
;        1L - comm 1L of AM416
;        2H - comm 2H of AM416
;        2L - comm 2L of AM416
;
; CONTROL PORTS
;        C1 - reset signal to AM416
;        C2 - clock to AM416
;
; AM416 MULTIPLEXER CHANNELS
;        2-1H     +  PYGOUT
;        2-1L     -
;
;        2-2H     +  PYGOUT Tcase
;        2-2L     -
;
;        3-2H     + PYGOUT Tdome
;        3-2L     -
;
; OUTPUT MESSAGE FORMAT
;       LOGGER ID
;       PYGOUT
;       PYGOUT Tcase
;       PYGOUT Tdome
;       
;
; EEROM  SPACE USED FOR CALIBRATION COEFFICIENTS
; the coefficients below are examples!

;location      value        Serial Number   description
;  0           255.10       xxxxxF3         Epply pyrgeometer, in_1 W/m^2/mV
;  10          2500                         PYGOUT Tcase,  Vref mV
;  11          .00335595                    A0
;  12          .277486                      A1
;  13          4.8993                       A2
;  14          10.4799                      A3
;  15          2500                         PYGOUT Tdome, Vref mV
;  16          .00303674                    A0
;  17          .289526                      A1
;  18          -3.0453                      A2
;  19          841.413                      A3
;


*Table 1 Program
  01: 1.0       Execution Interval (seconds)

1:  Z=F (P30)
 1: 1        F
 2: 00       Exponent of 10
 3: 10       Z Loc [ LoggerID  ]

;  Start collecting data from the multiplexer

2:  Do (P86)
 1: 41       Set Port 1 High

;  loop thru 416mux to Epply Pile

3:  Do (P86)
 1: 9        Call Subroutine 9

4:  Beginning of Loop (P87)
 1: 0        Delay
 2: 2        Loop Count

     5:  Do (P86)
      1: 9        Call Subroutine 9

;  get pyg and pyr radiation data
     6:  Volt (Diff) (P2)
      1: 1        Reps
      2: 3        ñ 25 mV Slow Range
      3: 1        DIFF Channel
      4: 1     -- Loc [ pygin_raw ]
      5: 1.0      Mult
      6: 0.0      Offset

;  get Epply temperature data
     7:  Volt (Diff) (P2)
      1: 1        Reps
      2: 5        ñ 2500 mV Slow Range
      3: 2        DIFF Channel
      4: 12    -- Loc [ PYGOUT_Tc ]
      5: 1.0      Mult
      6: 0.0      Offset

8:  End (P95)

9:  Do (P86)
 1: 51       Set Port 1 Low

;  Compute some real values, pile first

10:  Z=X*F (P37)
 1: 1        X Loc [ pygin_raw ]
 2: 0.0      F @@0
 3: 11       Z Loc [ PYGOUT    ]

; now lets do the temperatures

;  convert raw PYGOUT Tdome

11:  Z=F (P30)
 1: 0        F @@10
 2: 00       Exponent of 10
 3: 20       Z Loc [ V_Vx      ]

12:  Z=X/Y (P38)
 1: 20       X Loc [ V_Vx      ]
 2: 12       Y Loc [ PYGOUT_Tc ]
 3: 20       Z Loc [ V_Vx      ]

13:  Do (P86)
 1: 2        Call Subroutine 2

14:  Polynomial (P55)
 1: 1        Reps
 2: 20       X Loc [ V_Vx      ]
 3: 20       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@12
 6: 0        C2 @@13
 7: 0        C3 @@14
 8: 0.0      C4
 9: 0.0      C5

15:  Z=F (P30)
 1: 0.0      F @@11
 2: -3       Exponent of 10
 3: 21       Z Loc [ B0        ]

16:  Z=X+Y (P33)
 1: 20       X Loc [ V_Vx      ]
 2: 21       Y Loc [ B0        ]
 3: 20       Z Loc [ V_Vx      ]

17:  Do (P86)
 1: 3        Call Subroutine 3

18:  Z=X (P31)
 1: 20       X Loc [ V_Vx      ]
 2: 12       Z Loc [ PYGOUT_Tc ]

;  convert raw PYGOUT Tdome

19:  Z=F (P30)
 1: 0        F @@15
 2: 00       Exponent of 10
 3: 20       Z Loc [ V_Vx      ]

20:  Z=X/Y (P38)
 1: 20       X Loc [ V_Vx      ]
 2: 13       Y Loc [ PYGOUT_Td ]
 3: 20       Z Loc [ V_Vx      ]

21:  Do (P86)
 1: 2        Call Subroutine 2

22:  Polynomial (P55)
 1: 1        Reps
 2: 20       X Loc [ V_Vx      ]
 3: 20       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@17
 6: 0        C2 @@18
 7: 0        C3 @@19
 8: 0.0      C4
 9: 0.0      C5

23:  Z=F (P30)
 1: 0.0      F @@16
 2: -3       Exponent of 10
 3: 21       Z Loc [ B0        ]

24:  Z=X+Y (P33)
 1: 20       X Loc [ V_Vx      ]
 2: 21       Y Loc [ B0        ]
 3: 20       Z Loc [ V_Vx      ]

25:  Do (P86)
 1: 3        Call Subroutine 3

26:  Z=X (P31)
 1: 20       X Loc [ V_Vx      ]
 2: 13       Z Loc [ PYGOUT_Td ]

;  Is it time to send data out?

27:  Time (P18)
 1: 0        Seconds into current minute (maximum 60)
 2: 5        Mod/By
 3: 22       Loc [ TimeHack  ]

28:  IF (X<=>F) (P89)
 1: 22       X Loc [ TimeHack  ]
 2: 4        <
 3: 1        F
 4: 10       Set Output Flag High

29:  Sample (P70)
 1: 1        Reps
 2: 10       Loc [ LoggerID  ]

30:  Resolution (P78)
 1: 1        High Resolution

31:  Average (P71)
 1: 3        Reps
 2: 11       Loc [ PYGOUT    ]

32:  Serial Out (P96)
 1: 52       Printer Comma/9600 Baud



*Table 2 Program
  02: 0.0000    Execution Interval (seconds)

*Table 3 Subroutines
1:  Beginning of Subroutine (P85)
 1: 2        Subroutine 2

;  compute x = ln[(V/Vx) - 1] / 1000

2:  Z=X+F (P34)
 1: 20       X Loc [ V_Vx      ]
 2: -1       F
 3: 20       Z Loc [ V_Vx      ]

3:  Z=LN(X) (P40)
 1: 20       X Loc [ V_Vx      ]
 2: 20       Z Loc [ V_Vx      ]

4:  Z=X*F (P37)
 1: 20       X Loc [ V_Vx      ]
 2: .001     F
 3: 20       Z Loc [ V_Vx      ]

5:  End (P95)

6:  Beginning of Subroutine (P85)
 1: 3        Subroutine 3

;  finish T (case/dome) computation

7:  Z=1/X (P42)
 1: 20       X Loc [ V_Vx      ]
 2: 20       Z Loc [ V_Vx      ]

8:  Z=X+F (P34)
 1: 20       X Loc [ V_Vx      ]
 2: -273.15  F
 3: 20       Z Loc [ V_Vx      ]

9:  End (P95)

10:  Beginning of Subroutine (P85)
 1: 9        Subroutine 9

; pulse the AM416 multiplexer to the next bank of channels
     11:  Do (P86)
      1: 72       Pulse Port 2

     12:  Excitation with Delay (P22)
      1: 1        Ex Channel
      2: 0        Delay W/Ex (units = 0.01 sec)
      3: 1        Delay After Ex (units = 0.01 sec)
      4: 0        mV Excitation

13:  End (P95)


End Program

-Input Locations-
1 pygin_raw 1 1 1
2 _________ 0 0 0
3 _________ 0 0 0
4 _________ 0 0 0
5 _________ 0 0 0
6 _________ 0 0 0
7 _________ 0 0 0
8 _________ 0 0 0
9 _________ 0 0 0
10 LoggerID  1 1 1
11 PYGOUT    5 1 1
12 PYGOUT_Tc 9 1 2
13 PYGOUT_Td 17 2 1
14 _________ 1 0 0
15 _________ 0 0 0
16 _________ 0 0 0
17 _________ 0 0 0
18 _________ 0 0 0
19 _________ 1 0 0
20 V_Vx      1 14 13
21 B0        1 3 2
22 TimeHack  1 2 1
23 _________ 1 1 0
24 _________ 1 1 0
25 _________ 0 0 0
26 _________ 0 0 0
27 _________ 0 0 0
28 _________ 0 0 0
-Program Security-
0000
0000
0000
-Mode 4-
0
10
11
12
13
14
15
16
17
18
19
-Final Storage Area 2-
0
-CR10X ID-
0
-CR10X Power Up-
3


18: Radiometers, Site tower, Fri 15-Nov-2002 14:24:46 MST, 4m radiation CR10X code
NOTE: comments in this code may not be up to date

;{CR10X}
; CASES99 - 4 and 1.5 meter radiation system
; This is a special program for the FLOS-II project
; The logger handles 3 pyrgeometers. 2 are located
; at 4m and the third at 1.5m
;
; CR10 CHANNEL ASSIGNMENTS
; ANALOG CHANNELS
;        1H - comm 1H of AM416
;        1L - comm 1L of AM416
;        2H - comm 2H of AM416
;        2L - comm 2L of AM416
;
;        4H       +  PYGOUT_1
;        4L       -
;
;        5H       +  PYGOUT_1 Tcase
;        5L       -
;
;        6H       +  PYGOUT_1 Tdome
;        6L       -
;
; CONTROL PORTS
;        C1 - reset signal to AM416
;        C2 - clock to AM416
;
; AM416 MULTIPLEXER CHANNELS
;        2-1H     +  PYGIN_4
;        2-1L     -
;
;        3-1H     + PYGOUT_4
;        3-1L     -
;
;        2-2H     +  PYGIN_4 Tcase
;        2-2L     -
;
;        3-2H     + PYGIN_4 Tdome
;        3-2L     -
;
;        4-2H     + PYGOUT_4 Tcase
;        4-2L     -
;
;        5-2H     + PYGOUT_4 Tdome
;        5-2L     -
;
;        6-1H     + level x
;        6-1L     -
;
;        6-2H     + level y
;        6-2L     -
;
; OUTPUT MESSAGE FORMAT
;       LOGGER #
;       PYGIN_4
;       PYGOUT_4
;       PYGOUT_1
;       PYGIN_4 Tcase
;       PYGIN_4 Tdome
;       PYGOUT_4 Tcase
;       PYGOUT_4 Tdome
;       PYGOUT_1 Tcase
;       PYGOUT_1 Tdome
;       LEVEL X
;       LEVEL Y
;
;
; EEROM  SPACE USED FOR CALIBRATION COEFFICIENTS
; the coefficients below are examples!

;location      value        Serial Number   description
;   6          255.10       xxxxxF3         Epply pyrgeometer, in_1 W/m^2/mV
;   7          268.82       xxxxxF3         Epply pyrgeometer, out_1 W/m^2/mV
;   8          255.10       xxxxxF3         Epply pyrgeometer, in_2 W/m^2/mV
;   9          268.82       xxxxxF3         Epply pyrgeometer, out_2 W/m^2/mV
;  10          2500                         PYGIN_4m Tcase,  Vref mV
;  11          .00335595                    A0
;  12          .277486                      A1
;  13          4.8993                       A2
;  14          10.4799                      A3
;  15          2500                         PYGIN_4m Tdome, Vref mV
;  16          .00303674                    A0
;  17          .289526                      A1
;  18          -3.0453                      A2
;  19          841.413                      A3
;  20          2500                         PYGOUT_4m Tcase, Vref mV
;  21          .00335405                    A0
;  22          .28145                       A1
;  23          3.04961                      A2
;  24          289.824                      A3
;  25          2500                         PYGOUT_4m Tdome, Vref mV
;  26          .0030332                     A0
;  27          .291681                      A1
;  28          -3.4779                      A2
;  29          870.025                      A3
;  30          2500                         PYGIN_1.5m Tcase,  Vref mV
;  31          .00335595                    A0
;  32          .277486                      A1
;  33          4.8993                       A2
;  34          10.4799                      A3
;  35          2500                         PYGIN_1.5m Tdome, Vref mV
;  36          .00303674                    A0
;  37          .289526                      A1
;  38          -3.0453                      A2
;  39          841.413                      A3
;  50          0.0000        xxx            LEVEL_X, A0
;  51          11.1289                      A1
;  52          0.0000                       A2
;  53          11.1299                      A3
;  54          0.0000                       A4
;  55          11.1289                      LEVEL_Y, A0
;  56          0.0000                       A1
;  57          11.1299                      A2
;  58          0.0000                       A3
;  59          11.1289                      A4
;
;
*Table 1 Program
  01: 1.0       Execution Interval (seconds)

1:  Z=F (P30)
 1: 1        F
 2: 00       Exponent of 10
 3: 10       Z Loc [ LoggerId  ]

;  Start collecting data from the multiplexer

2:  Do (P86)
 1: 41       Set Port 1 High

;  loop thru 416mux to Epply Pile

3:  Do (P86)
 1: 9        Call Subroutine 9

4:  Beginning of Loop (P87)
 1: 0        Delay
 2: 4        Loop Count

     5:  Do (P86)
      1: 9        Call Subroutine 9

;  get pyg and pyr radiation data
     6:  Volt (Diff) (P2)
      1: 1        Reps
      2: 3        ñ 25 mV Slow Range
      3: 1        DIFF Channel
      4: 1     -- Loc [ pygin_raw ]
      5: 1.0      Mult
      6: 0.0      Offset

;  get Epply temperature data
     7:  Volt (Diff) (P2)
      1: 1        Reps
      2: 5        ñ 2500 mV Slow Range
      3: 2        DIFF Channel
      4: 14    -- Loc [ PYGI4_Tc  ]
      5: 1.0      Mult
      6: 0.0      Offset

8:  End (P95)

; get the level sensor data
     9:  Do (P86)
      1: 9        Call Subroutine 9

     10:  Volt (Diff) (P2)
      1: 1        Reps
      2: 5        2500 mV Slow Range
      3: 1        DIFF Channel
      4: 20       Loc [ LEVEL_X   ]
      5: .001     Mult
      6: 0.0      Offset

;  get Epply temperature data
     11:  Volt (Diff) (P2)
      1: 1        Reps
      2: 5        ñ 2500 mV Slow Range
      3: 2        DIFF Channel
      4: 21       Loc [ LEVEL_Y   ]
      5: .001     Mult
      6: 0.0      Offset


12:  Do (P86)
 1: 51       Set Port 1 Low

;  now get PYGOUT at 1 meter

13:  Volt (Diff) (P2)
 1: 1        Reps
 2: 3        25 mV Slow Range
 3: 4        DIFF Channel
 4: 13       Loc [ PYGOUT_1  ]
 5: 1.0      Mult
 6: 0.0      Offset


14:  Volt (Diff) (P2)
 1: 1        Reps
 2: 5        2500 mV Slow Range
 3: 5        DIFF Channel
 4: 18       Loc [ PYGO1_Tc  ]
 5: 1.0      Mult
 6: 0.0      Offset


15:  Volt (Diff) (P2)
 1: 1        Reps
 2: 5        2500 mV Slow Range
 3: 6        DIFF Channel
 4: 19       Loc [ PYGO1_Td  ]
 5: 1.0      Mult
 6: 0.0      Offset


;  Compute some real values, piles first

16:  Z=X*F (P37)
 1: 1        X Loc [ pygin_raw ]
 2: 0.0      F @@0
 3: 11       Z Loc [ PYGIN_4   ]

17:  Z=X*F (P37)
 1: 2        X Loc [ pygot_raw ]
 2: 0.0      F @@1
 3: 12       Z Loc [ PYGOUT_4  ]

18:  Z=X*F (P37)
 1: 13       X Loc [ PYGOUT_1  ]
 2: 0.0      F @@2
 3: 13       Z Loc [ PYGOUT_1  ]

; now lets do the temperatures

;  convert raw PYG.IN.Tcase at 4m

19:  Z=F (P30)
 1: 0        F @@10
 2: 00       Exponent of 10
 3: 31       Z Loc [ V_Vx      ]

20:  Z=X/Y (P38)
 1: 31       X Loc [ V_Vx      ]
 2: 14       Y Loc [ PYGI4_Tc  ]
 3: 31       Z Loc [ V_Vx      ]

21:  Do (P86)
 1: 2        Call Subroutine 2

22:  Polynomial (P55)
 1: 1        Reps
 2: 31       X Loc [ V_Vx      ]
 3: 31       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@12
 6: 0        C2 @@13
 7: 0        C3 @@14
 8: 0.0      C4
 9: 0.0      C5

23:  Z=F (P30)
 1: 0.0      F @@11
 2: -3       Exponent of 10
 3: 33       Z Loc [ B0        ]

24:  Z=X+Y (P33)
 1: 31       X Loc [ V_Vx      ]
 2: 33       Y Loc [ B0        ]
 3: 31       Z Loc [ V_Vx      ]

25:  Do (P86)
 1: 3        Call Subroutine 3

26:  Z=X (P31)
 1: 31       X Loc [ V_Vx      ]
 2: 14       Z Loc [ PYGI4_Tc  ]

;  convert raw PYG.IN.Tdome at 4m

27:  Z=F (P30)
 1: 0        F @@15
 2: 00       Exponent of 10
 3: 31       Z Loc [ V_Vx      ]

28:  Z=X/Y (P38)
 1: 31       X Loc [ V_Vx      ]
 2: 15       Y Loc [ PYGI4_Td  ]
 3: 31       Z Loc [ V_Vx      ]

29:  Do (P86)
 1: 2        Call Subroutine 2

30:  Polynomial (P55)
 1: 1        Reps
 2: 31       X Loc [ V_Vx      ]
 3: 31       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@17
 6: 0        C2 @@18
 7: 0        C3 @@19
 8: 0.0      C4
 9: 0.0      C5

31:  Z=F (P30)
 1: 0.0      F @@16
 2: -3       Exponent of 10
 3: 33       Z Loc [ B0        ]

32:  Z=X+Y (P33)
 1: 31       X Loc [ V_Vx      ]
 2: 33       Y Loc [ B0        ]
 3: 31       Z Loc [ V_Vx      ]

33:  Do (P86)
 1: 3        Call Subroutine 3

34:  Z=X (P31)
 1: 31       X Loc [ V_Vx      ]
 2: 15       Z Loc [ PYGI4_Td  ]

;  convert raw PYG.OUT.Tcase at 4m

35:  Z=F (P30)
 1: 0        F @@20
 2: 00       Exponent of 10
 3: 31       Z Loc [ V_Vx      ]

36:  Z=X/Y (P38)
 1: 31       X Loc [ V_Vx      ]
 2: 16       Y Loc [ PYGO4_Tc  ]
 3: 31       Z Loc [ V_Vx      ]

37:  Do (P86)
 1: 2        Call Subroutine 2

38:  Polynomial (P55)
 1: 1        Reps
 2: 31       X Loc [ V_Vx      ]
 3: 31       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@22
 6: 0        C2 @@23
 7: 0        C3 @@24
 8: 0.0      C4
 9: 0.0      C5

39:  Z=F (P30)
 1: 0.0      F @@21
 2: -3       Exponent of 10
 3: 33       Z Loc [ B0        ]

40:  Z=X+Y (P33)
 1: 31       X Loc [ V_Vx      ]
 2: 33       Y Loc [ B0        ]
 3: 31       Z Loc [ V_Vx      ]

41:  Do (P86)
 1: 3        Call Subroutine 3

42:  Z=X (P31)
 1: 31       X Loc [ V_Vx      ]
 2: 16       Z Loc [ PYGO4_Tc  ]

;  convert raw PYG.OUT.Tdome at 4m

43:  Z=F (P30)
 1: 0        F @@25
 2: 00       Exponent of 10
 3: 31       Z Loc [ V_Vx      ]

44:  Z=X/Y (P38)
 1: 31       X Loc [ V_Vx      ]
 2: 17       Y Loc [ PYGO4_Td  ]
 3: 31       Z Loc [ V_Vx      ]

45:  Do (P86)
 1: 2        Call Subroutine 2

46:  Polynomial (P55)
 1: 1        Reps
 2: 31       X Loc [ V_Vx      ]
 3: 31       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@27
 6: 0        C2 @@28
 7: 0        C3 @@29
 8: 0.0      C4
 9: 0.0      C5

47:  Z=F (P30)
 1: 0.0      F @@26
 2: -3       Exponent of 10
 3: 33       Z Loc [ B0        ]

48:  Z=X+Y (P33)
 1: 31       X Loc [ V_Vx      ]
 2: 33       Y Loc [ B0        ]
 3: 31       Z Loc [ V_Vx      ]

49:  Do (P86)
 1: 3        Call Subroutine 3

50:  Z=X (P31)
 1: 31       X Loc [ V_Vx      ]
 2: 17       Z Loc [ PYGO4_Td  ]

;  convert raw PYG.OUT.Tcase at 1.5m

51:  Z=F (P30)
 1: 0        F @@30
 2: 00       Exponent of 10
 3: 31       Z Loc [ V_Vx      ]

52:  Z=X/Y (P38)
 1: 31       X Loc [ V_Vx      ]
 2: 18       Y Loc [ PYGO1_Tc  ]
 3: 31       Z Loc [ V_Vx      ]

53:  Do (P86)
 1: 2        Call Subroutine 2

54:  Polynomial (P55)
 1: 1        Reps
 2: 31       X Loc [ V_Vx      ]
 3: 31       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@32
 6: 0        C2 @@33
 7: 0        C3 @@34
 8: 0.0      C4
 9: 0.0      C5

55:  Z=F (P30)
 1: 0.0      F @@31
 2: -3       Exponent of 10
 3: 33       Z Loc [ B0        ]

56:  Z=X+Y (P33)
 1: 31       X Loc [ V_Vx      ]
 2: 33       Y Loc [ B0        ]
 3: 31       Z Loc [ V_Vx      ]

57:  Do (P86)
 1: 3        Call Subroutine 3

58:  Z=X (P31)
 1: 31       X Loc [ V_Vx      ]
 2: 18       Z Loc [ PYGO1_Tc  ]

;  convert raw PYG.OUT.Tdome at 1.5m

59:  Z=F (P30)
 1: 0        F @@35
 2: 00       Exponent of 10
 3: 31       Z Loc [ V_Vx      ]

60:  Z=X/Y (P38)
 1: 31       X Loc [ V_Vx      ]
 2: 19       Y Loc [ PYGO1_Td  ]
 3: 31       Z Loc [ V_Vx      ]

61:  Do (P86)
 1: 2        Call Subroutine 2

62:  Polynomial (P55)
 1: 1        Reps
 2: 31       X Loc [ V_Vx      ]
 3: 31       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@37
 6: 0        C2 @@38
 7: 0        C3 @@39
 8: 0.0      C4
 9: 0.0      C5

63:  Z=F (P30)
 1: 0.0      F @@36
 2: -3       Exponent of 10
 3: 33       Z Loc [ B0        ]

64:  Z=X+Y (P33)
 1: 31       X Loc [ V_Vx      ]
 2: 33       Y Loc [ B0        ]
 3: 31       Z Loc [ V_Vx      ]

65:  Do (P86)
 1: 3        Call Subroutine 3

66:  Z=X (P31)
 1: 31       X Loc [ V_Vx      ]
 2: 19       Z Loc [ PYGO1_Td  ]

67:  Polynomial (P55)
 1: 1        Reps
 2: 20       X Loc [ LEVEL_X   ]
 3: 20       F(X) Loc [ LEVEL_X   ]
 4: 0.0      C0 @@50
 5: 0.0      C1 @@51
 6: 0.0      C2 @@52
 7: 0.0      C3 @@53
 8: 0.0      C4 @@54
 9: 0.0      C5 

68:  Polynomial (P55)
 1: 1        Reps
 2: 21       X Loc [ LEVEL_Y   ]
 3: 21       F(X) Loc [ LEVEL_Y   ]
 4: 0.0      C0 @@55
 5: 0.0      C1 @@56
 6: 0.0      C2 @@57
 7: 0.0      C3 @@58
 8: 0.0      C4 @@59
 9: 0.0      C5 

; compute level values


;  Is it time to send data out?

69:  Time (P18)
 1: 0        Seconds into current minute (maximum 60)
 2: 5        Mod/By
 3: 32       Loc [ TimeHack  ]

70:  IF (X<=>F) (P89)
 1: 32       X Loc [ TimeHack  ]
 2: 4        <
 3: 1        F
 4: 10       Set Output Flag High

71:  Sample (P70)
 1: 1        Reps
 2: 10       Loc [ LoggerId  ]

72:  Resolution (P78)
 1: 1        High Resolution

73:  Average (P71)
 1: 11       Reps
 2: 11       Loc [ PYGIN_4   ]

74:  Serial Out (P96)
 1: 52       Printer Comma/9600 Baud


*Table 2 Program
  02: 0.0000    Execution Interval (seconds)

*Table 3 Subroutines

1:  Beginning of Subroutine (P85)
 1: 2        Subroutine 2

;  compute x = ln[(V/Vx) - 1] / 1000

     2:  Z=X+F (P34)
      1: 31       X Loc [ V_Vx      ]
      2: -1       F
      3: 31       Z Loc [ V_Vx      ]

     3:  Z=LN(X) (P40)
      1: 31       X Loc [ V_Vx      ]
      2: 31       Z Loc [ V_Vx      ]

     4:  Z=X*F (P37)
      1: 31       X Loc [ V_Vx      ]
      2: .001     F
      3: 31       Z Loc [ V_Vx      ]

5:  End (P95)

6:  Beginning of Subroutine (P85)
 1: 3        Subroutine 3

;  finish T (case/dome) computation

     7:  Z=1/X (P42)
      1: 31       X Loc [ V_Vx      ]
      2: 31       Z Loc [ V_Vx      ]

     8:  Z=X+F (P34)
      1: 31       X Loc [ V_Vx      ]
      2: -273.15  F
      3: 31       Z Loc [ V_Vx      ]

9:  End (P95)

10:  Beginning of Subroutine (P85)
 1: 9        Subroutine 9

; pulse the AM416 multiplexer to the next bank of channels
     11:  Do (P86)
      1: 72       Pulse Port 2

     12:  Excitation with Delay (P22)
      1: 1        Ex Channel
      2: 0        Delay W/Ex (units = 0.01 sec)
      3: 1        Delay After Ex (units = 0.01 sec)
      4: 0        mV Excitation

13:  End (P95)

End Program

-Input Locations-
1 pygin_raw 1 1 1
2 pygot_raw 1 1 0
3 _________ 0 0 0
4 _________ 0 0 0
5 _________ 0 0 0
6 _________ 0 0 0
7 _________ 0 0 0
8 _________ 0 0 0
9 _________ 1 0 0
10 LoggerId  1 1 1
11 PYGIN_4   5 1 1
12 PYGOUT_4  9 1 1
13 PYGOUT_1  9 2 2
14 PYGI4_Tc  9 2 2
15 PYGI4_Td  9 2 1
16 PYGO4_Tc  9 2 1
17 PYGO4_Td  9 2 1
18 PYGO1_Tc  9 2 2
19 PYGO1_Td  17 2 2
20 LEVEL_X   1 1 2
21 LEVEL_Y   1 1 2
22 _________ 1 0 0
23 _________ 1 0 0
24 _________ 1 0 0
25 _________ 1 0 0
26 _________ 0 0 0
27 _________ 0 0 0
28 _________ 0 0 0
29 _________ 0 0 0
30 _________ 0 0 0
31 V_Vx      1 29 29
32 TimeHack  1 1 1
33 B0        1 6 6
34 _________ 0 0 0
35 _________ 0 0 0
36 _________ 0 0 0
37 _________ 0 0 0
38 _________ 0 0 0
39 _________ 0 0 0
40 _________ 0 0 0
41 _________ 0 0 0
42 _________ 1 0 0
-Program Security-
0000
0000
0000
-Mode 4-
0
1
2
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
50
51
52
53
54
55
56
57
58
59
-Final Storage Area 2-
0
-CR10X ID-
0
-CR10X Power Up-
3



17: Radiometers, Site tower, Fri 15-Nov-2002 14:22:45 MST, 25 meter radiation CR10X code
NOTE: comments in this code may not be up to date

;{CR10X}
; CASES99 - 30 meter radiation system
; This is a special program for the FLOS-II project
; The logger handles 4 pyrgeometers and 1 level sensor
;
; CR10 CHANNEL ASSIGNMENTS
; ANALOG CHANNELS
;        1H - comm 1H of AM416
;        1L - comm 1L of AM416
;        2H - comm 2H of AM416
;        2L - comm 2L of AM416
;
;        7  - level_X
;        8  - level_Y
;
; CONTROL PORTS
;        C1 - reset signal to AM416
;        C2 - clock to AM416
;        C3 - control to soil moisture CS-615
;
; AM416 MULTIPLEXER CHANNELS
;        1-1H     +  PYGIN_1
;        1-1L     -
;
;        1-2H     +  PYGIN_2
;        1-2L     -
;
;        2-1H     + PYGOUT_1
;        2-1L     -
;
;        2-2H     + PYGOUT_2
;        2-2L     -
;
;        3-1H     + PYGIN_1 Tcase
;        3-1L     -
;
;        3-2H     + PYGIN_1 Tdome
;        3-2L     -
;
;        4-1H     + PYGOUT_1 Tcase
;        4-1L     -
;
;        4-2H     + PYGOUT_1 Tdome
;        4-2L     -
;
;        5-1H     + PYGIN_2 Tcase
;        5-1L     -
;
;        5-2H     + PYGIN_2 Tdome
;        5-2L     -
;
;        6-1H     + PYGOUT_2 Tcase
;        6-1L     -
;
;        6-2H     + PYGOUT_2 Tdome
;        6-2L     -
;
; OUTPUT MESSAGE FORMAT
;       LOGGER #
;       PYGIN_1
;       PYGOUT_1
;       PYGIN_2
;       PYGOUT_2
;       PYGIN_1 Tcase
;       PYGOUT_1 Tcase
;       PYGIN_2 Tcase
;       PYGOUT_2 Tcase
;       PYGIN_1 Tdome
;       PYGOUT_1 Tdome
;       PYGIN_2 Tdome
;       PYGOUT_2 Tdome
;       level_X
;       level_Y
;
;
; EEROM  SPACE USED FOR CALIBRATION COEFFICIENTS
; the coefficients below are examples!

;location      value        Serial Number   description
;   6          255.10       xxxxxF3         Epply pyrgeometer, in_1 W/m^2/mV
;   7          268.82       xxxxxF3         Epply pyrgeometer, out_1 W/m^2/mV
;   8          255.10       xxxxxF3         Epply pyrgeometer, in_2 W/m^2/mV
;   9          268.82       xxxxxF3         Epply pyrgeometer, out_2 W/m^2/mV
;  10          2500                         PYGIN_1 Tcase,  Vref mV
;  11          .00335595                    A0
;  12          .277486                      A1
;  13          4.8993                       A2
;  14          10.4799                      A3
;  15          2500                         PYGIN_1 Tdome, Vref mV
;  16          .00303674                    A0
;  17          .289526                      A1
;  18          -3.0453                      A2
;  19          841.413                      A3
;  20          2500                         PYGOUT_1 Tcase, Vref mV
;  21          .00335405                    A0
;  22          .28145                       A1
;  23          3.04961                      A2
;  24          289.824                      A3
;  25          2500                         PYGOUT_1 Tdome, Vref mV
;  26          .0030332                     A0
;  27          .291681                      A1
;  28          -3.4779                      A2
;  29          870.025                      A3
;  30          2500                         PYGIN_2 Tcase,  Vref mV
;  31          .00335595                    A0
;  32          .277486                      A1
;  33          4.8993                       A2
;  34          10.4799                      A3
;  35          2500                         PYGIN_2 Tdome, Vref mV
;  36          .00303674                    A0
;  37          .289526                      A1
;  38          -3.0453                      A2
;  39          841.413                      A3
;  40          2500                         PYGOUT_2 Tcase, Vref mV
;  41          .00335405                    A0
;  42          .28145                       A1
;  43          3.04961                      A2
;  44          289.824                      A3
;  45          2500                         PYGOUT_2 Tdome, Vref mV
;  46          .0030332                     A0
;  47          .291681                      A1
;  48          -3.4779                      A2
;  49          870.025                      A3
;  50          0.0000        xxx            level_X, A0
;  51          11.1289                      A1
;  52          0.0000                       A2
;  53          11.1299                      A3
;  54          0.0000                       A4
;  55          11.1289                      level_Y, A0
;  56          0.0000                       A1
;  57          11.1299                      A2
;  58          0.0000                       A3
;  59          11.1289                      A4
;
;
*Table 1 Program
  01: 1.0       Execution Interval (seconds)

1:  Z=F (P30)
 1: 1        F
 2: 00       Exponent of 10
 3: 1        Z Loc [ LoggerId  ]

;  Start collecting data from the multiplexer

2:  Do (P86)
 1: 41       Set Port 1 High

;  loop thru 416mux to Epply Pile

3:  Beginning of Loop (P87)
 1: 0000     Delay
 2: 2        Count(s)

     4:  Do (P86)
      1: 9        Call Subroutine 9

;  get PYGIN data

     5:  Volt (Diff) (P2)
      1: 1        Reps
      2: 3        ñ 25 mV Slow Range
      3: 1        DIFF Channel
      4: 2     -- Loc [ PYGIN_1   ]
      5: 1.0      Mult
      6: 0.0      Offset


     6:  Volt (Diff) (P2)
      1: 1        Reps
      2: 3        ñ 25 mV Slow Range
      3: 2        DIFF Channel
      4: 4     -- Loc [ PYGIN_2   ]
      5: 1.0      Mult
      6: 0.0      Offset

7:  End (P95)

;  now get PYG temperature data

8:  Beginning of Loop (P87)
 1: 0        Delay
 2: 4        Count(s)

     9:  Do (P86)
      1: 9        Call Subroutine 9

     10:  Volt (Diff) (P2)
      1: 1        Reps
      2: 5        ñ 2500 mV Slow Range
      3: 1        DIFF Channel
      4: 6     -- Loc [ PIN_1_TC  ]
      5: 1.0      Mult
      6: 0.0      Offset


     11:  Volt (Diff) (P2)
      1: 1        Reps
      2: 5        ñ 2500 mV Slow Range
      3: 2        DIFF Channel
      4: 10    -- Loc [ PIN_1_TD  ]
      5: 1.0      Mult
      6: 0.0      Offset

12:  End (P95)

13:  Do (P86)
 1: 51       Set Port 1 Low


;  Now the level sensors

14:  Volts (SE) (P1)
 1: 2        Reps
 2: 5        ñ 2500 mV Slow Range
 3: 7        SE Channel
 4: 14    -- Loc [ LEVEL_X   ]
 5: .001     Mult
 6: 0.0      Offset

;  Compute some real values, piles first


15:  Scaling Array (A*Loc+B) (P53)
 1: 2        Start Loc [ PYGIN_1   ]
 2: 0.0      A1 @@6
 3: 0.0      B1
 4: 0.0      A2 @@7
 5: 0.0      B2
 6: 0.0      A3 @@8
 7: 0.0      B3
 8: 0.0      A4 @@9
 9: 0.0      B4

;  now the temperatures

;  convert raw PYGIN_1 Tcase to degrees C

16:  Z=F (P30)
 1: 0        F @@10
 2: 00       Exponent of 10
 3: 21       Z Loc [ V_Vx      ]

17:  Z=X/Y (P38)
 1: 21       X Loc [ V_Vx      ]
 2: 6        Y Loc [ PIN_1_TC  ]
 3: 21       Z Loc [ V_Vx      ]

18:  Do (P86)
 1: 2        Call Subroutine 2

19:  Polynomial (P55)
 1: 1        Reps
 2: 21       X Loc [ V_Vx      ]
 3: 21       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@12
 6: 0        C2 @@13
 7: 0        C3 @@14
 8: 0.0      C4
 9: 0.0      C5

20:  Z=F (P30)
 1: 0.0      F @@11
 2: -3       Exponent of 10
 3: 23       Z Loc [ B0        ]

21:  Z=X+Y (P33)
 1: 21       X Loc [ V_Vx      ]
 2: 23       Y Loc [ B0        ]
 3: 21       Z Loc [ V_Vx      ]

22:  Do (P86)
 1: 3        Call Subroutine 3

23:  Z=X (P31)
 1: 21       X Loc [ V_Vx      ]
 2: 6        Z Loc [ PIN_1_TC  ]

;  convert raw PYGOUT_1 Tcase to degrees C

24:  Z=F (P30)
 1: 0        F @@15
 2: 00       Exponent of 10
 3: 21       Z Loc [ V_Vx      ]

25:  Z=X/Y (P38)
 1: 21       X Loc [ V_Vx      ]
 2: 7        Y Loc [ POT_1_TC  ]
 3: 21       Z Loc [ V_Vx      ]

26:  Do (P86)
 1: 2        Call Subroutine 2

27:  Polynomial (P55)
 1: 1        Reps
 2: 21       X Loc [ V_Vx      ]
 3: 21       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@17
 6: 0        C2 @@18
 7: 0        C3 @@19
 8: 0.0      C4
 9: 0.0      C5

28:  Z=F (P30)
 1: 0.0      F @@16
 2: -3       Exponent of 10
 3: 23       Z Loc [ B0        ]

29:  Z=X+Y (P33)
 1: 21       X Loc [ V_Vx      ]
 2: 23       Y Loc [ B0        ]
 3: 21       Z Loc [ V_Vx      ]

30:  Do (P86)
 1: 3        Call Subroutine 3

31:  Z=X (P31)
 1: 21       X Loc [ V_Vx      ]
 2: 7        Z Loc [ POT_1_TC  ]


;  convert raw PYGIN_2 Tcase to degrees C

32:  Z=F (P30)
 1: 0        F @@20
 2: 00       Exponent of 10
 3: 21       Z Loc [ V_Vx      ]

33:  Z=X/Y (P38)
 1: 21       X Loc [ V_Vx      ]
 2: 8        Y Loc [ PIN_2_TC  ]
 3: 21       Z Loc [ V_Vx      ]

34:  Do (P86)
 1: 2        Call Subroutine 2

35:  Polynomial (P55)
 1: 1        Reps
 2: 21       X Loc [ V_Vx      ]
 3: 21       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@22
 6: 0        C2 @@23
 7: 0        C3 @@24
 8: 0.0      C4
 9: 0.0      C5

36:  Z=F (P30)
 1: 0.0      F @@21
 2: -3       Exponent of 10
 3: 23       Z Loc [ B0        ]

37:  Z=X+Y (P33)
 1: 21       X Loc [ V_Vx      ]
 2: 23       Y Loc [ B0        ]
 3: 21       Z Loc [ V_Vx      ]

38:  Do (P86)
 1: 3        Call Subroutine 3

39:  Z=X (P31)
 1: 21       X Loc [ V_Vx      ]
 2: 8        Z Loc [ PIN_2_TC  ]

;  convert raw PYGOUT_2 Tcase to degrees C

40:  Z=F (P30)
 1: 0        F @@25
 2: 00       Exponent of 10
 3: 21       Z Loc [ V_Vx      ]

41:  Z=X/Y (P38)
 1: 21       X Loc [ V_Vx      ]
 2: 9        Y Loc [ POT_2_TC  ]
 3: 21       Z Loc [ V_Vx      ]

42:  Do (P86)
 1: 2        Call Subroutine 2

43:  Polynomial (P55)
 1: 1        Reps
 2: 21       X Loc [ V_Vx      ]
 3: 21       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@27
 6: 0        C2 @@28
 7: 0        C3 @@29
 8: 0.0      C4
 9: 0.0      C5

44:  Z=F (P30)
 1: 0.0      F @@26
 2: -3       Exponent of 10
 3: 23       Z Loc [ B0        ]

45:  Z=X+Y (P33)
 1: 21       X Loc [ V_Vx      ]
 2: 23       Y Loc [ B0        ]
 3: 21       Z Loc [ V_Vx      ]

46:  Do (P86)
 1: 3        Call Subroutine 3

47:  Z=X (P31)
 1: 21       X Loc [ V_Vx      ]
 2: 9        Z Loc [ POT_2_TC  ]

;  convert raw PYGIN_1 Tdome to degrees C

48:  Z=F (P30)
 1: 0        F @@30
 2: 00       Exponent of 10
 3: 21       Z Loc [ V_Vx      ]

49:  Z=X/Y (P38)
 1: 21       X Loc [ V_Vx      ]
 2: 10       Y Loc [ PIN_1_TD  ]
 3: 21       Z Loc [ V_Vx      ]

50:  Do (P86)
 1: 2        Call Subroutine 2

51:  Polynomial (P55)
 1: 1        Reps
 2: 21       X Loc [ V_Vx      ]
 3: 21       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@32
 6: 0        C2 @@33
 7: 0        C3 @@34
 8: 0.0      C4
 9: 0.0      C5

52:  Z=F (P30)
 1: 0.0      F @@31
 2: -3       Exponent of 10
 3: 23       Z Loc [ B0        ]

53:  Z=X+Y (P33)
 1: 21       X Loc [ V_Vx      ]
 2: 23       Y Loc [ B0        ]
 3: 21       Z Loc [ V_Vx      ]

54:  Do (P86)
 1: 3        Call Subroutine 3

55:  Z=X (P31)
 1: 21       X Loc [ V_Vx      ]
 2: 10       Z Loc [ PIN_1_TD  ]


;  convert raw PYGOUT_1 Tdome to degrees C

56:  Z=F (P30)
 1: 0        F @@35
 2: 00       Exponent of 10
 3: 21       Z Loc [ V_Vx      ]

57:  Z=X/Y (P38)
 1: 21       X Loc [ V_Vx      ]
 2: 11       Y Loc [ POT_1_TD  ]
 3: 21       Z Loc [ V_Vx      ]

58:  Do (P86)
 1: 2        Call Subroutine 2

59:  Polynomial (P55)
 1: 1        Reps
 2: 21       X Loc [ V_Vx      ]
 3: 21       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@37
 6: 0        C2 @@38
 7: 0        C3 @@39
 8: 0.0      C4
 9: 0.0      C5

60:  Z=F (P30)
 1: 0.0      F @@36
 2: -3       Exponent of 10
 3: 23       Z Loc [ B0        ]

61:  Z=X+Y (P33)
 1: 21       X Loc [ V_Vx      ]
 2: 23       Y Loc [ B0        ]
 3: 21       Z Loc [ V_Vx      ]

62:  Do (P86)
 1: 3        Call Subroutine 3

63:  Z=X (P31)
 1: 21       X Loc [ V_Vx      ]
 2: 11       Z Loc [ POT_1_TD  ]


;  convert raw PYGIN_2 Tdome to degrees C

64:  Z=F (P30)
 1: 0        F @@40
 2: 00       Exponent of 10
 3: 21       Z Loc [ V_Vx      ]

65:  Z=X/Y (P38)
 1: 21       X Loc [ V_Vx      ]
 2: 12       Y Loc [ PIN_2_TD  ]
 3: 21       Z Loc [ V_Vx      ]

66:  Do (P86)
 1: 2        Call Subroutine 2

67:  Polynomial (P55)
 1: 1        Reps
 2: 21       X Loc [ V_Vx      ]
 3: 21       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@42
 6: 0        C2 @@43
 7: 0        C3 @@44
 8: 0.0      C4
 9: 0.0      C5

68:  Z=F (P30)
 1: 0.0      F @@41
 2: -3       Exponent of 10
 3: 23       Z Loc [ B0        ]

69:  Z=X+Y (P33)
 1: 21       X Loc [ V_Vx      ]
 2: 23       Y Loc [ B0        ]
 3: 21       Z Loc [ V_Vx      ]

70:  Do (P86)
 1: 3        Call Subroutine 3

71:  Z=X (P31)
 1: 21       X Loc [ V_Vx      ]
 2: 12       Z Loc [ PIN_2_TD  ]

;  convert raw PYGOUT_2 Tdome to degrees C

72:  Z=F (P30)
 1: 0        F @@45
 2: 00       Exponent of 10
 3: 21       Z Loc [ V_Vx      ]

73:  Z=X/Y (P38)
 1: 21       X Loc [ V_Vx      ]
 2: 13       Y Loc [ POT_2_TD  ]
 3: 21       Z Loc [ V_Vx      ]

74:  Do (P86)
 1: 2        Call Subroutine 2

75:  Polynomial (P55)
 1: 1        Reps
 2: 21       X Loc [ V_Vx      ]
 3: 21       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@47
 6: 0        C2 @@48
 7: 0        C3 @@49
 8: 0.0      C4
 9: 0.0      C5

76:  Z=F (P30)
 1: 0.0      F @@46
 2: -3       Exponent of 10
 3: 23       Z Loc [ B0        ]

77:  Z=X+Y (P33)
 1: 21       X Loc [ V_Vx      ]
 2: 23       Y Loc [ B0        ]
 3: 21       Z Loc [ V_Vx      ]

78:  Do (P86)
 1: 3        Call Subroutine 3

79:  Z=X (P31)
 1: 21       X Loc [ V_Vx      ]
 2: 13       Z Loc [ POT_2_TD  ]


;  Now the level sensors

80:  Polynomial (P55)
 1: 1        Reps
 2: 14       X Loc [ LEVEL_X   ]
 3: 14       F(X) Loc [ LEVEL_X   ]
 4: 0.0      C0 @@50
 5: 0.0      C1 @@51
 6: 0.0      C2 @@52
 7: 0.0      C3 @@53
 8: 0.0      C4 @@54
 9: 0.0      C5

81:  Polynomial (P55)
 1: 1        Reps
 2: 15       X Loc [ LEVEL_Y   ]
 3: 15       F(X) Loc [ LEVEL_Y   ]
 4: 0.0      C0 @@55
 5: 0.0      C1 @@56
 6: 0.0      C2 @@57
 7: 0.0      C3 @@58
 8: 0.0      C4 @@59
 9: 0.0      C5

;  Is it time to send data out?

82:  Time (P18)
 1: 0        Seconds into current minute (maximum 60)
 2: 5        Mod/By
 3: 22       Loc [ TimeHack  ]

83:  IF (X<=>F) (P89)
 1: 22       X Loc [ TimeHack  ]
 2: 4        <
 3: 1        F
 4: 10       Set Output Flag High

84:  Sample (P70)
 1: 1        Reps
 2: 1        Loc [ LoggerId  ]

85:  Resolution (P78)
 1: 1        High Resolution

86:  Average (P71)
 1: 14       Reps
 2: 2        Loc [ PYGIN_1   ]

87:  Serial Out (P96)
 1: 52       Printer Comma/9600 Baud


*Table 2 Program
  02: 0.0000    Execution Interval (seconds)

*Table 3 Subroutines
1:  Beginning of Subroutine (P85)
 1: 2        Subroutine 2

;  compute x = ln[(V/Vx) - 1] / 1000

     2:  Z=X+F (P34)
      1: 21       X Loc [ V_Vx      ]
      2: -1       F
      3: 21       Z Loc [ V_Vx      ]

     3:  Z=LN(X) (P40)
      1: 21       X Loc [ V_Vx      ]
      2: 21       Z Loc [ V_Vx      ]

     4:  Z=X*F (P37)
      1: 21       X Loc [ V_Vx      ]
      2: .001     F
      3: 21       Z Loc [ V_Vx      ]

5:  End (P95)

6:  Beginning of Subroutine (P85)
 1: 3        Subroutine 3

;  finish T (case/dome) computation

     7:  Z=1/X (P42)
      1: 21       X Loc [ V_Vx      ]
      2: 21       Z Loc [ V_Vx      ]

     8:  Z=X+F (P34)
      1: 21       X Loc [ V_Vx      ]
      2: -273.15  F
      3: 21       Z Loc [ V_Vx      ]

9:  End (P95)

10:  Beginning of Subroutine (P85)
 1: 9        Subroutine 9

; pulse the AM416 multiplexer to the next bank of channels
     11:  Do (P86)
      1: 72       Pulse Port 2

     12:  Excitation with Delay (P22)
      1: 1        Ex Channel
      2: 0        Delay W/Ex (units = 0.01 sec)
      3: 1        Delay After Ex (units = 0.01 sec)
      4: 0        mV Excitation

13:  End (P95)



End Program

-Input Locations-
1 LoggerId  1 1 1
2 PYGIN_1   5 2 2
3 PYGOUT_1  9 2 1
4 PYGIN_2   9 2 2
5 PYGOUT_2  25 2 1
6 PIN_1_TC  9 2 2
7 POT_1_TC  9 2 1
8 PIN_2_TC  9 2 1
9 POT_2_TC  9 2 1
10 PIN_1_TD  9 2 2
11 POT_1_TD  9 2 1
12 PIN_2_TD  9 2 1
13 POT_2_TD  9 2 1
14 LEVEL_X   13 2 2
15 LEVEL_Y   17 2 2
16 _________ 0 0 0
17 _________ 0 0 0
18 _________ 0 0 0
19 _________ 0 0 0
20 _________ 1 0 0
21 V_Vx      1 37 37
22 TimeHack  1 1 1
23 B0        1 8 8
24 _________ 0 0 0
25 _________ 0 0 0
26 _________ 0 0 0
27 _________ 0 0 0
28 _________ 0 0 0
-Program Security-
0000
0000
0000
-Mode 4-
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
-Final Storage Area 2-
0
-CR10X ID-
0
-CR10X Power Up-
3



16: Radiometers, Site all stns, Fri 15-Nov-2002 13:49:33 MST, Grass, Lake, and Sage CR10X code
NOTE: comments in this code may not be up to date

;{CR10}
; PROGRAM:  FLOSS02 PLATFORM
; This program is specific to the FLOSS02 platforms. Additional
; sensors have been added to the data collection. A soil profile
; consisting of 3 sets of 2 levels with 2 sensors at each level has been added.
; These new data are multiplexed thru a AM16/32 unit.
; Refer to the information below on wiring.
; NOTE: An additional tsoil has been added to each soil profile

; CR10 CHANNEL ASSIGNMENTS
; ANALOG CHANNELS
;        1H - comm 1H of AM416
;        1L - comm 1L of AM416
;        2H - comm 2H of AM416
;        2L - comm 2L of AM416
;
;        3H - comm 1L of AM16/32 profile 1
;        3L - comm 2L of AM16/32 profile 1
;
;        4H + TP01, Hukseflux sensor
;        4L -
;
;        5H + TP01 heater voltage
;        5L -
; 
; PULSE CHANNELS
;        P1 - tipping bucket rain input
;
; EXCITATION CHANNELS
;        E1 - excitation for T107 probes (H1 comm)
;        E2 - excitation for ECHO probes (H2 comm)
;        E3 - excitation for T soil probe

; NOTE: E1 and E2 get wired to H1 comm and H2 comm of the AM16/32 units

; CONTROL PORTS
;        C1 - reset signal to AM416
;        C2 - clock to AM416
;        C3 - control to soil moisture CS-615
;        C4 - reset signal to all AM16/32
;
; AM416 MULTIPLEXER CHANNELS
;        1-1H     +  Q7 net radiation
;        1-1L     -
;
;        1-2H     +  LICOR 200-SA
;        1-2L     -
;
;        2-1H     + PYG_IN thermopile
;        2-1L     -
;
;        3-1H     + PYG_OUT thermopile
;        3-1L     -
;
;        4-1H     + PYR_IN (KIP)
;        4-1L     -
;
;        5-1H     + PYR_OUT (KIP)
;        5-1L     -
;
;        2-2H     + PYG_IN T_case
;        2-2L     -
;
;        3-2H     + PYG_IN T_dome
;        3-2L     -
;
;        4-2H     + PYG_OUT T_case
;        4-2L     -
;
;        5-2H     + PYG_OUT T_dome
;        5-2L     -
;
;        6-1H     + level sensor, X
;        6-1L     -
;
;        6-2H     + level sensor, Y
;        6-2L     -
;
;        7-1H     + HFT
;        7-1L     -
;
;        8-1H     Tsoil, refer to CR10X manual
;        8-1L
;        8-2H
;        8-2L

; AM16/32 MULTIPLEXER CHANNELS

;        1-1H     T107-1 excitation
;        1-1L     T107-1 signal
;        1-2H     ECHO-1 excitation
;        1-2L     ECHO-1 signal
;
;        2-1H     T107-2 excitation
;        2-1L     T107-2 signal
;        2-2H     ECHO-2 excitation
;        2-2L     ECHO-2 signal
;
;        3-1H     T107-3 excitation
;        3-1L     T107-3 signal
;        3-2H     ECHO-3 excitation
;        3-2L     ECHO-3 signal
;
;        4-1H     T107-4 excitation
;        4-1L     T107-4 signal
;        4-2H     ECHO-4 excitation
;        4-2L     ECHO-4 signal
;
;        5-1H     T107-5 excitation
;        5-1L     T107-5 signal
;        5-2H     ECHO-5 excitation
;        5-2L     ECHO-5 signal
;
;        6-1H     T107-6 excitation
;        6-1L     T107-6 signal
;        6-2H     ECHO-6 excitation
;        6-2L     ECHO-6 signal
;
;        7-1H     T107-Tref excitation
;        7-1L     T107-Tref signal
;
;        8-1l     + HFT 1
;        8-2L     -
;
;        9-1L     + HFT 2
;        9-2L     -
;
;        10-1L    + HFT 3
;        10-2L    -
;
;        11-1H    T107-7 excitation
;        11-1L    T107-7 signal
;
;        12-1H    T107-8 excitation
;        12-1L    T107-8 signal
;
;        13-1H    T107-9 excitation
;        13-1L    T107-9 signal

; FLOSS-II OUTPUT MESSAGE FORMAT
;       LOGGER ID
;       rain (tips per 10 second period)
;       Q7
;       PYG_IN
;       PYG_OUT
;       PYR_IN
;       PYR_OUT
;       PYG_IN Tcase
;       PYG_IN Tdome
;       PYG_OUT Tcase
;       PYG_OUT Tdome
;       T107 - 1
;       T107 - 2
;       T107 - 3
;       T107 - 4
;       T107 - 5
;       T107 - 6
;       T107 - 7
;       T107 - 8
;       T107 - 9
;       ECHO - 1
;       ECHO - 2
;       ECHO - 3
;       ECHO - 4
;       EHCO - 5
;       ECHO - 6
;       HFT1
;       HFT2
;       HFT3
;       TP01 senosr
;       TP01 heater
;       TP01 time 63%
;       

; EEROM  SPACE USED FOR CALIBRATION COEFFICIENTS

;location      value        Serial Number   description
;   0          0.00         xxxxxx          Q7 positive output  W/m^2/mV
;   1          0.00                         negative output
;   2                       xxxxxx          PYG in
;   3                       xxxxxx          PYG out
;   4                       xxxxxx          PSP in
;   5                       xxxxxx          PSP out
;   6          35.6         Hxxxxx          REBS Heat Flux Transducer, W/m^2/mV
;   7          35.6         Hxxxxx          REBS Heat Flux Transducer, W/m^2/mV
;   8          35.6         Hxxxxx          REBS Heat Flux Transducer, W/m^2/mV
;   9          xxxx         xxxxxx          LICOR quantum sensor
;  10                                       A0 pygin_Tc
;  11                                       A1
;  12                                       A2
;  13                                       A3
;  14                                       A4
;  15                                       A0 pygin_Td
;  16                                       A1
;  17                                       A2
;  18                                       A3
;  19                                       A4
;  20                                       A0 pygout_Tc
;  21                                       A1
;  22                                       A2
;  23                                       A3
;  24                                       A4
;  25                                       A0 pygout_Td
;  26                                       A1
;  27                                       A2
;  28                                       A3
;  29                                       A4

; SUBROUTINES
;
; sub 1 : Q7 calibration
;
; sub 2 : stienhart equation
;
; sub 3 : stienhart equation
;
; sub 8 : step mulitplexer for soil profile array

; NOTE: the calibation for the ECHO probe is embedded in the
;       data collection code, instruction # 12

*Table 1 Program
  01: 10        Execution Interval (seconds)


1:  Z=F (P30)
 1: 1        F
 2: 00       Exponent of 10
 3: 10       Z Loc [ LoggerID  ]


2:  Pulse (P3)
 1: 1        Reps
 2: 1        Pulse Input Channel
 3: 2        Switch Closure, All Counts
 4: 11       Loc [ rain      ]
 5: 1.0      Mult
 6: 0.0      Offset

;  loop thru 416mux to get radiation data
3:  Do (P86)
 1: 41       Set Port 1 High

4:  Do (P86)
 1: 9        Call Subroutine 9

5:  Volt (Diff) (P2)
 1: 1        Reps
 2: 4        ñ 250 mV Slow Range
 3: 1        DIFF Channel
 4: 12       Loc [ Q7        ]
 5: 1.0      Mult
 6: 0.0      Offset

6:  Beginning of Loop (P87)
 1: 0        Delay
 2: 4        Loop Count

     7:  Do (P86)
      1: 9        Call Subroutine 9

;  get pyg and pyr radiation data
     8:  Volt (Diff) (P2)
      1: 1        Reps
      2: 3        ñ 25 mV Slow Range
      3: 1        DIFF Channel
      4: 5     -- Loc [ pygi_raw  ]
      5: 1.0      Mult
      6: 0.0      Offset

;  get Epply temperature data
     9:  Volt (Diff) (P2)
      1: 1        Reps
      2: 5        ñ 2500 mV Slow Range
      3: 2        DIFF Channel
      4: 17    -- Loc [ pygin_Tc  ]
      5: 1.0      Mult
      6: 0.0      Offset

10:  End (P95)

; end mutliplexer data collection
11:  Do (P86)
 1: 51       Set Port 1 Low


;  convert raw data to calibrated information

;  Q7 convert
12:  Do (P86)
 1: 1        Call Subroutine 1

;  convert PYG and PYR data
13:  Block Move (P54)
 1: 4        No. of Values
 2: 5        First Source Loc [ pygi_raw  ]
 3: 1        Source Step
 4: 13       First Destination Loc [ pygin     ]
 5: 1        Destination Step

14:  Scaling Array (A*Loc+B) (P53)
 1: 13       Start Loc [ pygin     ]
 2: 0.0      A1 @@2
 3: 0.0      B1
 4: 0.0      A2 @@3
 5: 0.0      B2
 6: 0.0      A3 @@4
 7: 0.0      B3
 8: 0.0      A4 @@5
 9: 0.0      B4

; now convert pyg temps

;  convert raw PYGIN Tcase

15:  Z=F (P30)
 1: 0        F @@10
 2: 00       Exponent of 10
 3: 50       Z Loc [ V_Vx      ]

16:  Z=X/Y (P38)
 1: 50       X Loc [ V_Vx      ]
 2: 17       Y Loc [ pygin_Tc  ]
 3: 50       Z Loc [ V_Vx      ]

17:  Do (P86)
 1: 2        Call Subroutine 2

18:  Polynomial (P55)
 1: 1        Reps
 2: 50       X Loc [ V_Vx      ]
 3: 50       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@12
 6: 0        C2 @@13
 7: 0        C3 @@14
 8: 0.0      C4
 9: 0.0      C5

19:  Z=F (P30)
 1: 0.0      F @@11
 2: -3       Exponent of 10
 3: 51       Z Loc [ B0        ]

20:  Z=X+Y (P33)
 1: 50       X Loc [ V_Vx      ]
 2: 51       Y Loc [ B0        ]
 3: 50       Z Loc [ V_Vx      ]

21:  Do (P86)
 1: 3        Call Subroutine 3

22:  Z=X (P31)
 1: 50       X Loc [ V_Vx      ]
 2: 17       Z Loc [ pygin_Tc  ]

;  convert raw PYGIN Tdome

23:  Z=F (P30)
 1: 0        F @@15
 2: 00       Exponent of 10
 3: 50       Z Loc [ V_Vx      ]

24:  Z=X/Y (P38)
 1: 50       X Loc [ V_Vx      ]
 2: 18       Y Loc [ pygin_Td  ]
 3: 50       Z Loc [ V_Vx      ]

25:  Do (P86)
 1: 2        Call Subroutine 2

26:  Polynomial (P55)
 1: 1        Reps
 2: 50       X Loc [ V_Vx      ]
 3: 50       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@17
 6: 0        C2 @@18
 7: 0        C3 @@19
 8: 0.0      C4
 9: 0.0      C5

27:  Z=F (P30)
 1: 0.0      F @@16
 2: -3       Exponent of 10
 3: 51       Z Loc [ B0        ]

28:  Z=X+Y (P33)
 1: 50       X Loc [ V_Vx      ]
 2: 51       Y Loc [ B0        ]
 3: 50       Z Loc [ V_Vx      ]

29:  Do (P86)
 1: 3        Call Subroutine 3

30:  Z=X (P31)
 1: 50       X Loc [ V_Vx      ]
 2: 18       Z Loc [ pygin_Td  ]

;  convert raw PYGOUT Tcase

31:  Z=F (P30)
 1: 0        F @@20
 2: 00       Exponent of 10
 3: 50       Z Loc [ V_Vx      ]

32:  Z=X/Y (P38)
 1: 50       X Loc [ V_Vx      ]
 2: 19       Y Loc [ pygout_Tc ]
 3: 50       Z Loc [ V_Vx      ]

33:  Do (P86)
 1: 2        Call Subroutine 2

34:  Polynomial (P55)
 1: 1        Reps
 2: 50       X Loc [ V_Vx      ]
 3: 50       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@22
 6: 0        C2 @@23
 7: 0        C3 @@24
 8: 0.0      C4
 9: 0.0      C5

35:  Z=F (P30)
 1: 0.0      F @@21
 2: -3       Exponent of 10
 3: 51       Z Loc [ B0        ]

36:  Z=X+Y (P33)
 1: 50       X Loc [ V_Vx      ]
 2: 51       Y Loc [ B0        ]
 3: 50       Z Loc [ V_Vx      ]

37:  Do (P86)
 1: 3        Call Subroutine 3

38:  Z=X (P31)
 1: 50       X Loc [ V_Vx      ]
 2: 19       Z Loc [ pygout_Tc ]

;  convert raw PYGOUT Tdome

39:  Z=F (P30)
 1: 0        F @@25
 2: 00       Exponent of 10
 3: 50       Z Loc [ V_Vx      ]

40:  Z=X/Y (P38)
 1: 50       X Loc [ V_Vx      ]
 2: 20       Y Loc [ pygout_Td ]
 3: 50       Z Loc [ V_Vx      ]

41:  Do (P86)
 1: 2        Call Subroutine 2

42:  Polynomial (P55)
 1: 1        Reps
 2: 50       X Loc [ V_Vx      ]
 3: 50       F(X) Loc [ V_Vx      ]
 4: 0.0      C0
 5: 0        C1 @@27
 6: 0        C2 @@28
 7: 0        C3 @@29
 8: 0.0      C4
 9: 0.0      C5

43:  Z=F (P30)
 1: 0.0      F @@26
 2: -3       Exponent of 10
 3: 51       Z Loc [ B0        ]

44:  Z=X+Y (P33)
 1: 50       X Loc [ V_Vx      ]
 2: 51       Y Loc [ B0        ]
 3: 50       Z Loc [ V_Vx      ]

45:  Do (P86)
 1: 3        Call Subroutine 3

46:  Z=X (P31)
 1: 50       X Loc [ V_Vx      ]
 2: 20       Z Loc [ pygout_Td ]

; here is the new code for the profile stuff

47:  Do (P86)
 1: 44       Set Port 4 High

;  Loop to collect T107 and ECH2O
48:  Beginning of Loop (P87)
 1: 0000     Delay
 2: 6        Loop Count

     49:  Do (P86)
      1: 8        Call Subroutine 8

     50:  Temp (107) (P11)
      1: 1        Reps
      2: 5        SE Channel
      3: 1        Excite all reps w/E1
      4: 21    -- Loc [ T107_1    ]
      5: 1.0      Mult
      6: 0.0      Offset

; Echo calibration is applied at this instruction
     51:  Excite-Delay (SE) (P4)
      1: 1        Reps
      2: 5        2500 mV Slow Range
      3: 6        SE Channel
      4: 2        Excite all reps w/Exchan 2
      5: 1        Delay (units 0.01 sec)
      6: 2500     mV Excitation
      7: 30    -- Loc [ ECHO_1    ]
      8: .0695    Mult
      9: -29.0    Offset

52:  End (P95)

; pulse AM16/32 forward to HFT stuff, skip Tref
53:  Do (P86)
 1: 8        Call Subroutine 8

;  Loop to collect T107 and ECH2O
54:  Beginning of Loop (P87)
 1: 0000     Delay
 2: 3        Loop Count

     55:  Do (P86)
      1: 8        Call Subroutine 8

     56:  Volt (Diff) (P2)
      1: 1        Reps
      2: 3        25 mV Slow Range
      3: 3        DIFF Channel
      4: 36    -- Loc [ HFT1      ]
      5: 1.0      Mult
      6: 0.0      Offset

57:  End (P95)

;  Loop to collect 3 more T107 probes
58:  Beginning of Loop (P87)
 1: 0000     Delay
 2: 3        Loop Count

     59:  Do (P86)
      1: 8        Call Subroutine 8

     60:  Temp (107) (P11)
      1: 1        Reps
      2: 5        SE Channel
      3: 1        Excite all reps w/E1
      4: 27    -- Loc [ T107_7    ]
      5: 1.0      Mult
      6: 0.0      Offset

61:  End (P95)

; turn off AM16/32
62:  Do (P86)
 1: 54       Set Port 4 Low

; convert HFT data to engineering units

;  HFT1
63:  Z=X*F (P37)
 1: 36       X Loc [ HFT1      ]
 2: 0.0      F @@6
 3: 36       Z Loc [ HFT1      ]

;  HFT2
64:  Z=X*F (P37)
 1: 37       X Loc [ HFT2      ]
 2: 0.0      F @@7
 3: 37       Z Loc [ HFT2      ]

;  HFT3
65:  Z=X*F (P37)
 1: 38       X Loc [ HFT3      ]
 2: 0.0      F @@8
 3: 38       Z Loc [ HFT3      ]


;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

; now add the code for the Hukseflux TP01 sensor

; Measures the TP01 sensor output, parameter U in manual.
66:  Volt (Diff) (P2)
 1: 1        Reps
 2: 3        25 mV Slow Range
 3: 4        DIFF Channel
 4: 39       Loc [ U_sen     ]
 5: 1.0      Mult
 6: 0.0      Offset

; Measures the heater voltage, called U_heat in the manual.
; Multiplication by 0.001 to convert to Volts
67:  Volt (Diff) (P2)
 1: 1        Reps
 2: 5        2500 mV Slow Range
 3: 5        DIFF Channel 
 4: 40       Loc [ U_heat    ]
 5: 0.001    Mult
 6: 0.0      Offset

; xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

; ENTER the calibration interval
; Recommended: every 180 minutes (= 3 hours) start a measurement
; of thermal conductivity and diffusivity
68:  If time is (P92)
 1: 0        Minutes (Seconds --) into a
 2: 180      Interval (same units as above)
 3: 30       Then Do

; Copy the reading of the TP01 differential temperature sensor
     69:  Z=X (P31)
      1: 39       X Loc [ U_sen     ]
      2: 55       Z Loc [ U_sen0    ]

; Put the heater on, control via port 7 and CR10X 12V switch
     70:  Do (P86)
      1: 47       Set Port 7 High

71:  End (P95)

; xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

; 3 minutes (180 seconds) after the heating started,
; the sensor output will be stable, and another measurement is taken.
72:  If time is (P92)
 1: 3        Minutes (Seconds --) into a
 2: 180      Interval (same units as above)
 3: 30       Then Do

; Take the sensor output.
     73:  Z=X (P31)
      1: 39       X Loc [ U_sen     ]
      2: 56       Z Loc [ U_senmax  ]

     74:  Z=X (P31)
      1: 40       X Loc [ U_heat    ]
      2: 57       Z Loc [ U_heatmax ]

; Take the voltage over the heater.
     75:  Z=X*Y (P36)
      1: 57       X Loc [ U_heatmax ]
      2: 57       Y Loc [ U_heatmax ]
      3: 58       Z Loc [ U_heat_sq ]

; Calculate the mV difference caused due to the heater
     76:  Z=X-Y (P35)
      1: 56       X Loc [ U_senmax  ]
      2: 55       Y Loc [ U_sen0    ]
      3: 59       Z Loc [ U_senamp  ]

; Determination of 63% of the signal amplitude.
     77:  Z=X*F (P37)
      1: 59       X Loc [ U_senamp  ] ;
      2: 0.63     F
      3: 60       Z Loc [ U_sen90   ]

; The value to compare with is U_comp.
     78:  Z=X-Y (P35)
      1: 56       X Loc [ U_senmax  ]
      2: 60       Y Loc [ U_sen90   ]
      3: 61       Z Loc [ U_comp    ]

; The absolute value to avoid problems with polarity
     79:  Z=ABS(X) (P43)
      1: 61       X Loc [ U_comp    ]
      2: 61       Z Loc [ U_comp    ]

; Turn off the heater, the signal now starts settling down.
     80:  Do (P86)
      1: 57       Set Port 7 Low

; Set the timer for the thermal diffusivity measurement to zero
     81:  Z=F (P30)
      1: 1        F
      2: 00       Exponent of 10
      3: 62       Z Loc [ timer     ]

; This activates the table 2 measurement of thermal diffusivity.
     82:  Do (P86)
      1: 12       Set Flag 2 High

83:  End (P95)

; check to see if 63% timer data is available
84:  If Flag/Port (P91)
 1: 23       Do if Flag 3 is Low
 2: 30       Then Do

; set timer data to -9999
     85:  Z=F (P30)
      1: -9999    F
      2: 00       Exponent of 10
      3: 41       Z Loc [ td_time   ]

86:  Else (P94)

 ; clear flag 3 and leave timer data alone
     87:  Do (P86)
      1: 23       Set Flag 3 Low

88:  End (P95)

; end of Hukseflux code
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx


     89:  Do (P86)
      1: 10       Set Output Flag High

     90:  Sample (P70)
      1: 1        Reps
      2: 10       Loc [ LoggerID  ]

     91:  Totalize (P72)
      1: 1        Reps
      2: 11       Loc [ rain      ]

     92:  Resolution (P78)
      1: 1        High Resolution

     93:  Average (P71)
      1: 30       Reps
      2: 12       Loc [ Q7        ]

     94:  Z=F (P30)
      1: 0.0      F @@99
      2: 00       Exponent of 10
      3: 52       Z Loc [ BAUD      ]

     95:  If (X<=>F) (P89)
      1: 52       X Loc [ BAUD      ]
      2: 1        =
      3: 1        F
      4: 30       Then Do

;  PAM at 1200 baud
          96:  Serial Out (P96)
           1: 51       Printer Comma/1200 Baud

     97:  Else (P94)

;  ASTER at 9600 baud
          98:  Serial Out (P96)
           1: 52       Printer Comma/9600 Baud

     99:  End (P95)


;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

*Table 2 Program
  02: 1         Execution Interval (seconds)
; Every 1 second is needed to get sufficient accuracy for the thermal diffusivity
; measurement.

; Only executed when the heater is has just been switched off.
1:  If Flag/Port (P91)
 1: 12       Do if Flag 2 is High
 2: 30       Then Do

; timer one second incremented
     2:  Z=Z+1 (P32)
      1: 62       Z Loc [ timer     ]

; Measures the TP01 sensor output .
     3:  Volt (Diff) (P2)
      1: 1        Reps
      2: 3        25 mV Slow Range
      3: 4        DIFF Channel
      4: 63       Loc [ U_sen_ab  ]
      5: 1.0      Mult
      6: 0.0      Offset

     4:  Z=ABS(X) (P43)
      1: 63       X Loc [ U_sen_ab  ]
      2: 63       Z Loc [ U_sen_ab  ]

; Compare the sensor output to the 37% value
     5:  If (X<=>Y) (P88)
      1: 61       X Loc [ U_comp    ]
      2: 3        >=
      3: 63       Y Loc [ U_sen_ab  ]
      4: 30       Then Do

; The timer information is stored in td_time
; Now we know how much time it took to resettle.
          6:  Z=X (P31)
           1: 62       X Loc [ timer     ]
           2: 41       Z Loc [ td_time   ]

; ready again for new measurement instruction.
          7:  Do (P86)
           1: 22       Set Flag 2 Low

; set flag to trigger output signal in program 1
          8:  Do (P86)
           1: 13       Set Flag 3 High

     9:  End (P95)

     10:  If (X<=>F) (P89)
      1: 62       X Loc [ timer     ]
      2: 3        >=
      3: 0.0      F @@50
      4: 30       Then Do

; The thermal diffusivity is set to zero, because too much time has passed
; before return to the original value.
          11:  Z=F (P30)
           1: 0        F
           2: 00       Exponent of 10
           3: 41       Z Loc [ td_time   ]

; Ready again for new measurement instruction
          12:  Do (P86)
           1: 22       Set Flag 2 Low

; set flag to trigger output signal in program 1
          13:  Do (P86)
           1: 13       Set Flag 3 High

     14:  End (P95)

15:  End (P95)



;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

*Table 3 Subroutines

1:  Beginning of Subroutine (P85)
 1: 1        Subroutine 1

;  calibrate value of net rad based on sign
     2:  IF (X<=>F) (P89)
      1: 12       X Loc [ Q7        ]
      2: 4        <
      3: 0        F
      4: 30       Then Do

          3:  Z=X*F (P37)
           1: 12       X Loc [ Q7        ]
           2: 0        F @@1
           3: 12       Z Loc [ Q7        ]

     4:  Else (P94)

          5:  Z=X*F (P37)
           1: 12       X Loc [ Q7        ]
           2: 0        F @@0
           3: 12       Z Loc [ Q7        ]

     6:  End (P95)

7:  End (P95)

8:  Beginning of Subroutine (P85)
 1: 2        Subroutine 2

;  compute x = ln[(V/Vx) - 1] / 1000

     9:  Z=X+F (P34)
      1: 50       X Loc [ V_Vx      ]
      2: -1       F
      3: 50       Z Loc [ V_Vx      ]

     10:  Z=LN(X) (P40)
      1: 50       X Loc [ V_Vx      ]
      2: 50       Z Loc [ V_Vx      ]

     11:  Z=X*F (P37)
      1: 50       X Loc [ V_Vx      ]
      2: .001     F
      3: 50       Z Loc [ V_Vx      ]

12:  End (P95)

13:  Beginning of Subroutine (P85)
 1: 3        Subroutine 3

;  finish T (case/dome) computation

     14:  Z=1/X (P42)
      1: 50       X Loc [ V_Vx      ]
      2: 50       Z Loc [ V_Vx      ]

     15:  Z=X+F (P34)
      1: 50       X Loc [ V_Vx      ]
      2: -273.15  F
      3: 50       Z Loc [ V_Vx      ]

16:  End (P95)


17:  Beginning of Subroutine (P85)
 1: 8        Subroutine 8

     18:  Do (P86)
      1: 75       Pulse Port 5

     19:  Excitation with Delay (P22)
      1: 1        Ex Channel
      2: 0000     Delay W/Ex (units = 0.01 sec)
      3: 1        Delay After Ex (units = 0.01 sec)
      4: 0000     mV Excitation

20:  End (P95)

21:  Beginning of Subroutine (P85)
 1: 9        Subroutine 9

; pulse the AM416 multiplexer to the next bank of channels
     22:  Do (P86)
      1: 72       Pulse Port 2

     23:  Excitation with Delay (P22)
      1: 1        Ex Channel
      2: 0        Delay W/Ex (units = 0.01 sec)
      3: 1        Delay After Ex (units = 0.01 sec)
      4: 0        mV Excitation

24:  End (P95)

End Program

-Input Locations-
1 ACTIVE    1 0 0
2 TimeHack  1 0 0
3 Tref      1 0 0
4 _________ 1 0 0
5 pygi_raw  1 6 1
6 pygo_raw  1 5 0
7 pyri_raw  1 5 0
8 pyro_raw  1 5 0
9 _________ 1 0 0
10 LoggerID  1 1 1
11 rain      1 1 1
12 Q7        5 9 6
13 pygin     15 1 2
14 pygout    11 1 2
15 pyrin     11 1 2
16 pyrout    27 1 2
17 pygin_Tc  9 1 2
18 pygin_Td  9 1 1
19 pygout_Tc 9 1 1
20 pygout_Td 9 1 1
21 T107_1    9 2 1
22 T107_2    9 2 0
23 T107_3    9 2 0
24 T107_4    9 2 0
25 T107_5    9 2 0
26 T107_6    9 2 0
27 T107_7    15 1 1
28 T107_8    11 1 0
29 T107_9    27 1 0
30 ECHO_1    25 2 1
31 ECHO_2    9 1 0
32 ECHO_3    9 1 0
33 ECHO_4    9 1 0
34 ECHO_5    9 1 0
35 ECHO_6    31 1 0
36 HFT1      9 1 2
37 HFT2      25 1 1
38 HFT3      9 0 1
39 U_sen     1 2 1
40 U_heat    1 1 1
41 td_time   1 0 3
42 _________ 0 0 0
43 _________ 0 0 0
44 _________ 0 0 0
45 _________ 0 0 0
46 _________ 0 0 0
47 _________ 0 0 0
48 _________ 0 0 0
49 _________ 0 0 0
50 V_Vx      1 21 21
51 B0        1 4 4
52 BAUD      1 1 1
53 _________ 0 0 0
54 _________ 0 0 0
55 U_sen0    1 1 1
56 U_senmax  1 2 1
57 U_heatmax 1 2 1
58 U_heat_sq 1 0 1
59 U_senamp  1 1 1
60 U_sen90   1 1 1
61 U_comp    1 2 2
62 timer     1 2 2
63 U_sen_ab  1 2 2
-Program Security-
0000
0000
0000
-Mode 4-
0
1
2
3
4
5
6
7
8
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
50
99
-Final Storage Area 2-
0




15: Radiometers, Site sage, Fri 15-Nov-2002 13:43:53 MST, PAM sage CR10X coffs
PAM sage CR10X coefficients

Q7-94916	NET(A+)	00	9.21
x	A-	01	11.54
P26417	x	02	212.68
P27907	x	03	286.53
K940187	x	04	101.4198783
K970378 x       05      50.02501251
H983212	x	06	38.4
H993560	x	07	37.7
H943147	x	08	42.1
Tc-A0	x	10	2500
A1	x	11	3.355204
A2	x	12	.2795166
A3	x	13	3.950246
A4	x	14	209.3092
Tdin-A0	x	15	2500
A1	x	16	3.354969
A2	x	17	.2793838
A3	x	18	3.85506
A4	x	19	212.913
Tcot-A0	x	20	2500
A1	x	21	3.353713
A2	x	22	.2787871
A3	x	23	3.778048
A4	x	24	177.421
Tdot-A0	x	25	2500
A1	x	26	3.354732
A2	x	27	.2787514
A3	x	28	3.651471
A4	x	29	190.8095
HUX	x	50	180
baud	x	99	1








14: Radiometers, Site lake, Fri 15-Nov-2002 13:42:02 MST, PAM Lake CR10X coffs
PAM Lake Site CR10X coefficients

Q7-94197	NET(A+)	00	9.0
x	A-	01	11.22
P29137	x	02	240.211386
P29136	x	03	234.741784
K970377	x	04	43.55400697
K940186	x	05	82.71298594
H983213	x	06	38.2
H983211 x	07	36.4
H943149	x	08	39.7
Tcin-A0	x	10	2500
A1      x	11	3.354167
A2	x	12	.278817
A3	x	13	3.653292
A4	x	14	222.2646
Tdin-A0	x	15	2500
A1	x	16	3.350057
A2	x	17	.279229
A3	x	18	3.147866
A4	x	19	-193.854
Tcot-A0	x	20	2500
A1	x	21	3.354344
A2	x	22	.278532
A3	x	23	3.845153
A4	x	24	185.129
Tdot-A0	x	25	2500
A1	x	26	3.354233
A2	x	27	.278537
A3	x	28	3.802989
A4	x	29	184.2122
HUX	x	50	180
baud	x	99	1






13: Radiometers, Site tower, Fri 15-Nov-2002 13:01:12 MST, tower-grass CR10X coffs
Tower Grass CR10X coefficients

Q7-97069	NET(A+)	00	9.27
x	A-	01	11.48
P26416	x	02	290.866783
P29260	x	03	308.261406
K940181	x	04	82.3723229
K970379	x	05	45.51661356
H993563	x	06	38.9
H993562	x	07	37.3
H87034	x	08	36.8
Tc-A0	x	10	2500
A1	x	11	3.354472
A2	x	12	.2797812
A3	x	13	3.912974
A4	x	14	215.5208
Tdin-A0	x	15	2500
A1	x	16	3.052399
A2	x	17	.270981
A3	x	18	3.408667
A4	x	19	188.8687
Tcot-A0	x	20	2500
A1	x	21	3.353832
A2	x	22	.278595
A3	x	23	4.02801
A4	x	24	180.4266
Tdot-A0	x	25	2500
A1	x	26	3.053253
A2	x	27	.2706527
A3	x	28	3.530291
A4	x	29	166.282
HUX	x	50	180
baud	x	99	0