On many oscilloscopes waveform math just means simple calculations such as A + B. With a PicoScope it means much, much more.

To add a math channel, just click a button and a wizard will guide you through the process. You can quickly select one of the built-in functions, such as inversion or addition, or create your own using the equation editor. All the standard arithmetic functions are supported along with more complex functions involving filters (lowpass, highpass, bandpass and bandstop filters), trigonometry, exponentials, logarithms, statistics, integrals and derivatives.

Waveform math also allows you to plot live signals alongside historic peak, averaged or filtered waveforms. You can also use math for example to graph the changing duty cycle or frequency of your signal.

With PicoScope math channels you can display up to eight real or calculated channels in each scope view. If you run out of space, just open another scope view and add more.

Main group: | +, –, ×, /, sqrt, x^y, exp, freq, duty, ln, log, derivative, integral, norm, abs |

Trigonometric functions: | sin, cos, tan, asin, acos, atan, sinh, cosh, tanh |

Buffered functions: | min, max, average, peak |

Filters: | highpass, lowpass, bandpass, bandstop |

Additional operands: | π, T (time) |

Two of the functions listed above, *freq* and *duty*, are particularly useful for troubleshooting. They can be applied to the signals from frequency-output and PWM-output sensors in control systems to let you see what the control unit sees.

In this example, the top trace (channel A) is a variable-frequency square wave that you might see from a digital position sensor. The lower trace is a math channel with the equation `freq(A)/1000`

. We have set the scaling and units to display the output directly in millimeters. You can see that the sensor is describing an alternating constant-speed displacement.

The arbitrary waveform generator (AWG), fitted to many PicoScope oscilloscopes, can import a waveform from a math channel. This allows you to define an arbitrary waveform using a function. For example, you could create an exponentially decaying sine wave with the function `exp(-T*125)*sin(2*pi*1000*T)`

, then import it into the AWG editor.

Now you can replay the waveform through the AWG into a device under test.

A reference waveform is a static copy of either a live input or a math channel. This is useful when you wish to display a known good test pattern on the screen for comparison with live data.

Using the waveform from the above example, we created a reference waveform (shown in pale red) by right-clicking the scope view and selecting the `Reference Waveforms` command. We displayed this on the same axis as the incoming waveform (shown in strong blue). We can immediately see that the shape of the live signal is the same as the reference waveform but that there is a small DC offset.