Data AcQuisition And Real-Time AnalysisScope - Spectrum - Spectrogram - Signal Generator
Software for Windows
Science with your Sound Card!
Contact us about
Limits Max and Min Files
Maximum and minimum Spectrum Limits are specified via .LIM files that are loaded by separate buttons. Clicking a button opens a File Open dialog showing all .LIM files that you can select from. After a file is loaded, the button label changes to show the file name (without the .LIM extension).
There is nothing intrinsic to the file that makes it a maximum or minimum limit... that is strictly determined by the button you use to load it. Daqarta does not attempt to decide based upon the magnitudes of the respective file curves. For example, if you load a file containing a flat line at 80 dB SPL to the Max button, and another with a flat line at 100 dB SPL to the Min button, then the Limits test will always report Fail. (There can be no spectrum level that is simultaneously below 80 and above 100.)
If your test requires only a Max limit or only a Min, load only the file needed.
Once a file has been loaded, it will remain present in future Daqarta sessions until explicitly unloaded or replaced. You can unload a file by clicking on its button. (You will be prompted to confirm the unload.)
You can create .LIM files with a text editor like Windows Notepad, but an editor that can manipulate columns may make things easier. The .LIM file format is identical to that used for Calibration (.CAL) files. Here is a simple example:
Unit:SPL Sens:0 0 180 50 180 100 90 10000 90 11000 180 50000 180
This file would only be useful as a Max limit. It specifies that between 100 and 10000 Hz the response must be less than 90 dB SPL, but at higher and lower frequencies the limit is set so high that any actual response will pass. There are transition regions at either end of the test range, which are linear dB interpolations. For example, at 10500 Hz (midway between 10000 and 11000) the limit would be 135 dB (midway between 90 and 180).
Similarly, a file for Min use might look like:
Unit:SPL Sens:0 0 -100 50 -100 100 80 10000 80 11000 -100 50000 -100
Here the response must be more than 80 dB SPL between 100 and 10000 Hz, and outside that range the limit is set so low that any actual response will pass.
Note that the first line should always specify a limit for 0 Hz; if one is not found, a default entry of -90 dB will be assigned for interpolation purposes. However, the 0 Hz data point is not actually tested.
The last line should be at least as high as the highest frequency in the spectrum. Responses for higher frequencies will be found by extrapolation, which tends to give poorer results than interpolation here.
The above examples have Units:SPL and Sens:0, which means the dB values listed for each frequency are absolute SPL numbers. Alternatively, you could use a baseline SPL value for Sens and give differences from the baseline at each frequency. The following is effectively identical to the first example; Sens:85 means that the reference is 85 dB higher, so the dB values at each frequency have had 85 subtracted:
Unit:SPL Sens:85 0 95 50 95 100 5 10000 5 11000 95 50000 95
If you have a master reference device (speaker, microphone, circuit, or whatever) and want to insure that production devices have frequency responses that are within specified dB limits from the reference, you can create the Max and Min .LIM files directly from the reference spectrum.
Obtain a frequency response of the reference device. In general, it is best to use the same setup and calibration units (such as SPL) as for the subsequent production tests. However, for the reference device you may want to use a longer Spectrum Average to smooth a noise-based spectrum. In particular, use a Linear average instead of Exponential, so that the average will Pause when it is complete.
With the average on-screen, go to the File Menu and select Save Y-log Trace as .CAL, .FRD, .CRV, or .LIM File. A dialog will open with controls marked Reference Baseline, OK, and Cancel. A single .LIM file can hold data for only one channel, which is shown below 'Channel:' at the top of the dialog. This is also the channel shown on the Y axis, which you can change by toggling off unwanted channel display buttons.
A horizontal cursor also appears on the trace, passing through the average of all the spectrum values between the normal solid and dotted cursors. The Reference Baseline control defaults to this value.
Set the solid and dotted trace cursors to define the approximate region of the spectrum that is most important. This is not at all critical, just don't have the cursors on top of each other, or off in the high or low end of the spectrum outside of the useful range of the device.
Note the Reference Baseline value, and add or subtract the desired number of dB for the Max or Min limit, respectively. For example, suppose you want to create a Max limit that is 10 dB above the spectrum of the reference device. If the Reference Baseline is 87.654 dB, enter 97.654 and then hit OK.
A Save As file dialog will open, but the Save as type at the bottom will default to Calibration Files (.CAL). Click on the down arrow and select Limit Files (.LIM). Enter the desired file name on the line above. (Don't enter the .LIM; it will be included automatically.) Hit OK and the file will be created.
You can now go back to the File menu and again select Save Y-log Trace as .CAL, .FRD, .CRV, or .LIM File, while keeping the same Paused average on the screen, and subtract the desired amount from the Reference Baseline to create the Min file.
When you use the Max and Min files, they will follow the shape of the reference response precisely, at the specified dB tolerance above or below it. You may wish to open these files with a text editor and make manual adjustments. In particular, there may be "don't care" regions above or below the critical part of the spectrum. You can set these to very high values in the Max file, and very low values in the Min file, to insure that no test failure is caused by responses in these regions.
The files will have one line for each of the 512 frequencies in the spectrum. But you don't need to manually adjust each of those points; Daqarta will interpolate just as for files created manually as discussed earlier. So, for example, if you only care about the region between (say) 1000 and 10000 Hz, you can start by deleting everything outside this range. Then enter a line for 0 Hz with a very large dB value like 200 (for a Max file) and a line for (say) 900 Hz with the same 200 dB value. Likewise, enter lines for (say) 11000 Hz and 50000 Hz with this same 200 dB value.
The resulting Limit curve will start at 200 dB (usually off-screen), drop down with a steep slope between 900 and 1000 Hz to follow the curve between 1000 and 10000, and rise back up with a steep slope to 200 dB between 11000 and the upper limit of the spectrum.
LimitsMax or LimitsMin macros have no effect if any File Open or Save As dialog is already active.
LimitsMax= without a name will open the File Open dialog for the Max limit, showing all .LIM files but with no default name.
LimitsMax="MyLimit" will open the File Open dialog with the default name set to MyLimit. (Note that quotes are needed around all filenames in macros.) If you accept this by hitting Enter or the Open button in that dialog, Daqarta will attempt to load a file named MyLimit.LIM as the Max limit, and will fail if that file is not found.
A.LimitsMax="MyLimit" will load MyLimit.LIM directly to the Max limit, without any File Open dialog. Note that if there was a file already loaded for the Max limit, it will be replaced with the specified file.
LimitsMax and LimitsMin macros can use string variables and expressions. For example, LimitsMax=Field1 will use the contents of Field1 as the default file name, and A.LimitsMax=Field1 will load a file of that name directly.
Similarly, if the Macro Variable Var0 holds a value of 12, then LimitsMax="Test"+Var0 will set a default file name of Test12. If you expect to use a large series of files, you can use LimitsMax="Test"+Var0(3) (for example) to set the decimal format to 3 integer places to get Test012. This will allow proper sorting by file name.
If the Max Limits file button already has a file loaded, and you want to unload it without loading another, then LimitsMax= (with no name given) will prompt you to confirm unloading the file. If instead you use A.LimitsMax= the current file will be unloaded without any confirmation prompt.
To test if the Max or Min Limits button already has a file loaded, you can use an IF statement with a 0 or 1 in place of the file name. IF.LimitsMax=1 will be true if there is a Max file loaded.
Questions? Comments? Contact us!We respond to ALL inquiries, typically within 24 hrs.
Over 30 Years of Innovative Instrumentation
© Copyright 2007 - 2017 by Interstellar Research
All rights reserved