In 2010-04-16, the phase- and amplitude monitor was added as an interpreter function in Spectrum Lab. There may be multiple instances ("incarnations") of this function running simultaneously, if CPU power and sampling rate permit.
The intended purpose of this function was to observe the fieldstrength and phase variations of VLF transmitters for ionospheric studies, by plotting amplitudes and phases of different transmitters in Spectrum Lab's watch window / plotter . From there, the data can also be exported in text files (for further post-processing).
Note: Long-term absolute phase measurements with a soundcard are only possible
if the soundcard's sampling rate is permanently monitored and corrected (drift
compensated) as explained here .
Basic syntax of the pam function (simple, without specifying the update interval
and signal source) :
pamN(<f_center>,<modulation>).phase
pamN(<f_center>,<modulation>).phase(1)
pamN(<f_center>,<modulation>).ampl
pamN.freq
In the above functions, ...
Extended syntax, with center frequency, modulation, update interval, and signal source
where :
Examples:
pam1(23400,MSK200).ampl
pam1.phase
pam2(77500, CW1, 10, L1R1).phase
pam2(77500, CW1, 10, L1).phase
Note: A list of VLF transmitters is in the control panel for the continuous sample rate correction; typically one of those VLF transmitters is used as the reference (to correct the sample rate drift). Of course, if a VLF transmitter is used as the frequency reference, it makes no sense to measure the diurnal phase variation of that transmitter ! More on that in the chapter titled 'Requirements for long-term phase measurements' .
(*) In this context, CW really means what it says - Continous Wave. Don't confuse "CW" with "Morse code" ! Morse code traditionally uses on-off-keying, which is neither a 'continuous wave' in the long run, nor is it necessarily phase coherent. Thus the phase- and amplitude monitors are pretty useless to observe classic 'Morse' signals (on-off keying). The carrier phase of transmitters like DCF77 can be be observed with the pam() function because despite the amplitude modulation (75 % carrier reduction), the carrier phase is coherent, i.e. the carrier phase doesn't jump"arbitrarily.
The basic function of a phase meter (as implemented here) is this:
Multiply the incoming signal with a local oscillator, here: a numerical controlled oscillator with two outputs (90°)
Low-pass filter and decimate the mixed signal until the required (low) bandwidth is reached
If the signal is MSK (minimum shift keying, as most VLF
transmitters), square the decimated signal, and examine the 'peaks' in the
spectrum at f_center +/- bitrate.
The same principle is also used in the
continuous sampling rate
calibrator .
Calculate the amplitude and the phase angle of the decimated signal (for MSK: Angle of the recovered carrier signal).
There is at least one example configuration in Spectrum Lab's configurations folder (file: PAM_MSK_Test1.usr) which uses the phase- and amplitude monitors to plot the phase of an MSK transmitter on VLF. The results of the pam-functions are shown in numeric form in the watch window, or in graphic form in the plot window .
Requirements for long-term phase measurements
Usually, the 'reference' clock is the soundcard's internal sample rate. It
must be accurately set. Spectrum Lab offers two different ways to "calibrate"
the sample rate. For long-term phase observations, you will need the
"continuous" sample rate correction. It is possible
to use any reference frequency which can be handled by the
soundcard, for example:
In western Europe, use DCF77 (on 77.5 kHz) or MSF (on 60 kHz) as a reference,
to observe the diurnal phase variations (ionospheric effects) of several
VLF broadcasters. A list of reference
signals can be found in the document about the sample rate detector.
See also: Watch / Plot window; sample rate correction; Spectrum Lab overview .