Daqarta
Data AcQuisition And Real-Time Analysis
Scope - Spectrum - Spectrogram - Signal Generator
Software for Windows
The following is from the Daqarta Help system:

# Fcal Dialog

Controls: Options >> Frequency Counter >> Fcal
Macro: FcalDlg

Fcal stands for "Frequency Calibration". This button opens a dialog that allows frequency-output sensors, or sensors plus voltage-to-frequency (V-F) converters, to display directly in the proper units. It also allows for operation with an external prescaler to provide direct reading of frequencies much higher than a sound card can handle.

Note that the Fcal button is only enabled in Hertz, RPM, and msec counter modes.

Sound cards typically don't respond to frequencies below a few hertz, so they are useless with DC or slowly-changing signals like temperature and pressure. To get around this, a V-F converter may be used to produce a frequency that is proportional to the sensor output. (But see also DC Measurements And Outputs for ways to get true DC input response from your sound card.)

For example, a typical precision temperature sensor chip (LM335) produces an output of 10 mV per degree Kelvin, resulting in 2.73 V at 273 Kelvin (0 Celsius) and 3.73 V at 373 Kelvin (100 Celsius). If it drives a V-F that produces 1 kHz per volt, then these voltages will be converted to 2730 and 3730 Hz (typically rectangular waves). Such signals are easily handled by all sound cards, and can easily be read by the Frequency Counter.

Now if your ultimate goal is only to read degrees Kelvin, you could use this setup as described and mentally keep track of the decimal point. But if you would rather read Celsius, you might at first think you could just use a simple voltage divider to reduce the voltage to the V-F, and add a fixed offset voltage such that 2.73 V produced 0 Hz, and 3.73 V produced 1000 Hz.

This would actually work, within limits. Since the V-F produces rectangular waves that have sharp (high frequency) edges, those edges would be readily accepted by the sound card and Daqarta could trigger on them even at very low frequencies. As the temperature got closer to 0 C, the time between pulses would get longer and longer, and eventually they would stop altogether at 0.

If the temperature fell still farther, the V-F would see a negative input voltage and most likely do nothing. But even if it produced the mathematically-correct "negative frequency", the sound card (and hence the Frequency Counter) could not distinguish it from a positive frequency.

The Fcal dialog offers a simple solution: You can use the original V-F setup, and just specify that 3730 Hz should display as 100.00, and 2730 should display as 0.00. Linear interpolation/extrapolation is used for other values, so 1730 Hz would display as -100.00.

Better yet, you can set this up to allow a single Units button to toggle between Celsius and Fahrenheit, which will also show 'C' or 'F' after the display value.

The Fcal dialog also supports nonlinear sensors like thermocouples, by means of calibration tables. Tables for all standard thermocouple types are included with Daqarta, and you can easily create custom tables for other sensors.

Macro Notes:

FcalDlg=1 opens the Fcal dialog, FcalDlg=0 closes it, and FcalDlg=x toggles between open and closed.

Note that the Fcal dialog can only be opened if the Frequency Counter dialog (FcountDlg) is already open, and the Fcal dialog is closed automatically whenever the Frequency Counter dialog is closed.

Note that you do not need to open the Fcal dialog to change its controls directly via macro commands. However, separate Fcal values are maintained for each Trigger Source channel and valid Frequency Counter mode. (Only Hertz, RPM, and msec modes are supported for Fcal.) You must make sure the desired Trigger Source and counter mode are set in order to change the relevant Fcal controls.