Fig. 1 - PicoScope 7 with phase rulers applied

Oscilloscope phase measurements and math channels

Phase is an angular representation of a point, within a periodic waveform cycle. More specifically a complete cycle/period will be represented by 360° (2π radians or some other rotational unit) and phase is a fraction of this overall value, describing how much of the period has elapsed.

Fig. 1 shows a sine wave that has an amplitude of 1, at ¾ of the wave cycle, which is the wave phase of 3π/2 rad (270°). The amplitude is 0 at π rad (180°).

Fig. 2 - Unit circle

Phase can be applied to all periodic waveforms, but can also be visualized using the standard unit circle (Fig. 2) along a sine wave. As the unit circle rotates, we are given the voltage level by sin θ (opposite side, or the vertical height on the y-axis) and the angle can be derived from the angle of the vector on the x-axis.

Phase difference

Phase is the angular difference between two waveforms (typically measured in degrees). The difference is measured from a common reference point, along the horizontal axis, and can be seen visually as a lateral shift. Just as with phase, this is a fraction of the wave cycle/period.

See Interpreting Results and Alternate Analysis Methods, below, for further explanation.
Phase as a measurement is also referred to as phase difference, phase shift, or cycle difference.

Fig. 3 - Measurements options panel

Automated measurement - setup and configuration

Phase can be found under the Multi-Channel category and once added, the secondary channel will default to the first available channel (see Fig. 3).

Fig. 4 - Phase measurements edit settings pop up

After adding the measurement, it can be further constrained to only measure between horizontal and/or signal rulers within the viewport specified by the ruler view setting.  As with other measurements, hysteresis can be used to reduce measurement errors attributed to noise and jitter (see Fig. 4).

Fig. 5 - Phase difference at 90° example

Interpreting results

Phase is measured on a per-cycle basis and then averaged across all cycles in the current buffer. Similarly to other measurements, global statistics are displayed on the Measurements lozenge, which are calculated over all captured buffers. In Fig. 5, the secondary data source is roughly ¼ out of phase with the primary data source, which given the current output mapping (0-360°) is 90°.

Calculation and algorithm

  1. Identify primary channel crossing points.
  2. Capture the cycle boundaries using either rising or falling crossing points.
  3. Capture the secondary channel crossing points, that correspond to the primary channel crossing points (this acts as the corresponding reference point, that is at an equivalent proportion through the cycle when compared to the primary data source’s reference point).
  4. Map the delay time between corresponding crossing points, to a fraction of the primary channel cycle.
  5. Average the phase difference over all cycles and map to desired range.

For the 0:360º output range, the following algorithm can be used:

ɸ = (t2–t1)/T(360)

where T is the period and t1 and tare the respective data source crossing points.

Note: this will differ slightly, depending on the selected output range, for example, using the scenario in Fig. 5, (1178 μs - 927 μs)/1000 μs (360°) = 90°

Fig. 6 - Measuring cycle time

Fig. 7 - Measuring the difference between cycles at equivalent points

Alternative analysis methods

Manual phase measurement

  1. Measure the primary data source period/cycle duration, either via rulers or the automated cycle time measurement (Fig.6)
  2. Using rulers, measure the difference between primary and secondary data sources, at the same points in both waveform cycles (Fig.7).
  3. Calculate the difference as a ratio to the period, then map it to the output range.

ɸ = (t2-t1)/T(360)

251µ / 1002µ (360°) = 90°~

XY analysis

PicoScope allows two waveforms to be cross-plotted in the X-Y view, which plots each data source’s ordinal values against each other. By analyzing the shape (known as a Lissajous pattern), we can roughly determine the phase difference.

Fig. 8 - Phase difference at 0° (in-phase)

Fig. 9 - Phase difference at 90°

Fig. 10 - Phase difference at 180° (out of phase)

Fig. 11 - Phase difference at 270°

When observing the graph, a 0º or 180º phase difference is represented by a straight line (see Fig. 8 and Fig. 10). A 90º or 270º difference is represented by a circle (see Fig. 9 and Fig. 11). Any phase difference falling between these values is shown as an ellipse.

Fig. 12 - Phase function

Fig. 13 - Phase maths channel

Phase maths channel

Phase maths channels are set up similarly to the measurement, in that both a primary and secondary data source is required. As there are no hysteresis, ruler, or signal ruler constraints, the output is performed across the entire buffer, but on a per-cycle basis. This is why the output can be seen as a series of plateaus, each spanning a cycle of the primary data source (illustrated in  Fig. 12). The phase maths channel can be found within the maths channel wizard, nested under the scientific functions category (see Fig. 11).