LOGGING & STATISTICS
The FEC testers always produce readings for each test. If the tester is being used only for sorting or screening, these readings are compared with the test limits then discarded. There are several ways that you can make further use of the readings. This page describes the available functions built into MAXX software. It also makes reference to some external utilities for post processing of files produced by MAXX.
The Command watch causes readings to be displayed on the computer screen.
To use this feature just enter WATCH n where n is the number of the test station you would like to monitor. The readings, serial number, and bin sort decision will appear in a window on the screen. To turn off the display enter, WATCH.
- PRINTLOG (PLOG)
The PLOG command is similar to WATCH except that the readings are printed rather than displayed on the screen. PLOG and WATCH can be used at the same time if you wish. They can be used on the same or different stations. When PLOG and/or WATCH is active, a message will appear in the status screen indicating which stations are being monitored.
LOGGER is setup using a pop-up window activated by the <F8> key. The logger sets up MAXX to log the “CURRENT” station. Please be careful to set up the station that you are using so that you do not accidently change the file for some other station. LOGGER can be active on from one to all four stations at the same time.
You will be asked to enter a number from 0 to 32 for the MODE. The numbers 1-32 represent the highest bin sort whose readings will be logged. Mode 0 means “OFF;” your station will not log readings. If the station was previously logging, mode 0 will close its file.
You can enter a file name for the file to receive the readings. The default path to that will be \MAXX\FILES\. If the file name that you enter already exists, you will be notified. You can choose to use that name however since there are several good reasons to do so.
If the file does exist, you will see its date, size, and the next serial number according to the file. The serial number may not agree with that displayed by MAXX (which you can set to any value).
When you press <F10> to leave the setup window the file will be adjusted so that the serial numbers do agree.
The serial numbers will be dealt with as follows. The next number to be recorded, will always be the one displayed by MAXX (which you can change).
New readings will always be appended to the end of the file.
If this is a new file, the readings will be appended immediately after the header. The first serial number will be that displayed by MAXX.
You can choose whether you want “stop on fail” to be active. “Fail” means any part whose bin sort number is greater than the mode number you have chosen. The readings are recorded in one of two proprietary compressed formats. Details of these formats are given elsewhere in this manual.
The recording process is very fast and has only a small effect on the test rate of the tester. The disk space used per diode is three or four bytes per reading depending on the format used plus 4 bytes for the serial number and record mark.
The utility program STATS>EXE can read this data and translate it into ASCII.
STATS can also perform many other useful operations on the data.
The header on the file is the content of the three lines of test that you can type in while in the setup window.
When you are satisfied with all the settings in the setup window, you can press <F10> to put these choices into effect. If you set the MODE to 1-32, the readings produced by the current station will be logged until you change the mode to 0.
You can abandon any changes you have made and leave the setup by pressing <Esc>.
- CLOSING FILE
When you have finished testing your sample, using LOGGER, you must close the data file. Do this by pressing F8 again to get back to the logger menu. Choose MODE 0 (OFF). Then press F10 to leave. This procedure writes any readings remaining in the memory buffer to the disk, then closes the file.
LOGGER maintains a separate memory buffer area for each of the four stations. When a buffer is full, the data is written to the disk. When you are logging, the memory buffer will usually contain some data not yet written to the disk. The procedure above writes this data and closes the file.
DATA-LOGGING WITH MAXXAPPLICATION NOTE #1
There are many different uses for the logger in MAXX and for the related post-processor software STATS. In addition, different users do the same job in different ways. Therefore there is no one “right” way to setup either program. This document describes a few applications in order to identify and explain some of the issues.
In this instance let’s assume that the parts have been pre-tested so that almost all parts are good going in. Still a reject might creep in or you may get a faulty contact to a part while making the file.
You want a file with consecutive serial numbers and 100% good parts. If a reject is encountered it will be replaced with a good diode.
You will be using a scanner to test the parts on a burn-in board. If the scanner stops on a bad part the part will be accessible to be changed.
You will later do a delta report involving two tests but there are five tests altogether that must pass. You have a test program that makes these five tests and no others. The bin sort for good parts is “bin 1".
Please note how many assumptions we have already made. Later I will repeat this same basic application with some of these assumptions changed.
You can customize each tester running MAXX by editing the file CUSTOM.TXT. There are two relevant items effecting this application. You should choose data FORMAT2 and you should choose to test “contact fails”.
Select the multiplex station you will use and join the test program to it. Now open the LOGGER by pressing <F8>. Set the Mode to 1. This will cause the tester to stop on any part whose bin sort is greater than 1.
Enter a unique file name for the new file you will make and set the serial number to the first number on the first burn-in board.
You can enter or edit the three-line header to be placed in the data file.
When you are satisfied with the setup, press <F10> to leave the logger setup screen. You will note that the MAXX screen now shows “Logging Mode 1" beside your multiplex station.
Start the station and the scanner to start logging data. It is a good idea to check the serial number displayed by MAXX at the end of each board. Note that the number shown is for the “next” part.
If for any reason you find that the serial number does not match, you can go back to an earlier number that you know was right and retest the parts from that point. To do this, re-enter the logger setup by pressing <F8> and change the serial number then <F10> to resume testing.
If you scan a bad part or if you get a bad contact, the scanner will stop and you will get a message on the MAXX screen saying that the station is stopped for a bad part. In this application, you should replace the part or fix the contact and then enter Sn to resume, where n is the number of tour multiplex station. If the problem has been corrected the scanning will resume and the serial numbers will still be correct.
You must close the file you are working on when you are finished or you may wish to close it temporarily at some point and resume later. You can do this as many times as you wish. However be careful to use the identical test program each time you reopen the file and to be sure to set the serial number correctly.
To close the file, make sure you have selected the correct multiplex station, then press <F8> and set the Mode to “0", then press <F10> or <Esc>.
By the way, please be sure to check the multiplex station selection each time you use <F8>. Using the wrong station is a common and sometimes very serious error.
CHECKING YOUR DATA FILE
Even though this file is intended for eventual comparison with a post burn-in file, you may want to check it to mace, especially while you are first learning the system.
After you close the file, you can enter STATS from MAXX to open the post processor software and choose VIEW FILE 1 and enter your filename. The details of this use are given elsewhere. You can, if you wish, chose to see just the statistics for each test in your file, although you can see all of the readings if you wish.
Making the post burn-in file for this same application is nearly the same but with one very important change. Obviously you can’t remove rejects this time since they must be in the final report. You may still want to fix any bad contact problems and that brings you to a decision point.
You can set the Mode this time to 32. This will log everything, bad parts as well as bad contacts since it is impossible to have a bin sort greater than 32. There are two other possibilities. You can stop on any failure to evaluate the reason for the failure or in some cases, just stop on bad contacts.
To stop on and evaluate all failures, use Mode 1. If you decide that the part is really bad, enter An where n is the number of your station. The part will be tested again but this time it will be accepted even though it is bad. If you think that the problem was a bad contact, fix the contact then enter Sn to try again. If the problem was corrected the scanner will restart and go on.
If it is still bad, it will stop again. Eventually you will have to enter An to accept the reading since you must have a reading for each part (even if the part is missing).
If you can write your MAXX test program to make a distinction between bad contacts then you can have the scanner stop only on bad contacts. Let’s say that bad parts go into bin 2 and contacts into bin 3. In that case use Mode 2. Bin sort 2 will be accepted but the scanner will stop on sort 3 or higher.Note: I have mentioned the scanner “stopping” several times above. This does not depend on any special characteristic of the scanner. It stops because MAXX does not send out an “End of test” signal.
If you want to make some pre and post burn-in files described above but will be testing the parts “by hand” with no scanner, there is one important difference. You will setup the logger the same way but you must be sure to stop testing when you get a bad part.
If you are not looking at the computer screen while you work then you must depend on the bin lamps or EOT lamp to alert you when a failure occurs. If the tester stops and displays a message but you don’t see it, and you remove the diode and put in another, then the serial numbers will be wrong.
Normally the EOT lamp goes off when you press the test button but comes back on in a short time. If the lamp goes out and stays out then the part was probably bad. Look at the computer screen to confirm this.
You can also watch the bin sort lamps to be sure that you don’t see one that indicates a bad part.
It is possible to make a fairly simple hardware change that will make an audible alarm if a bad bin
RECORD BAD PARTS
If your parts have been pre-screened and you can tolerate a small number of bad readings in your files, then just set up the logger to use Mode 32. Nothing can ever exceed bin sort 32, so everything will be recorded. The pass/fail information for each test and the bin sort decision will be recorded so that the STATS program can still include this information in the final report.
There is another way to record all parts that I will mention here although it has an important disadvantage. You can write your test program with no requirements for bin sort 1. Every part will then be a bin1, so the tester will never stop. You can still see the rejects of the individual tests in STATS. The disadvantage is that if you turn off three of the five test in STATS (as suggested in the example described above) then you will not see the fail flags for parts that fail one or more of the turned-off tests.
If you had used the Mode 32 method instead you could have marked the failures of the turned-off tests based on the bin sort decision. In fact that is the reason that I suggested that you might have five tests in your program even though you need delta information on only two. Often other tests will be required to pass the absolute tester limits after burn-in even though they have no delta limits. The “maximum bin sort #” in STATS allows you to mark bad parts even though the tests causing the high bin sort are turned off in STATS>
If the part corresponding to a certain serial number is missing from the sample, in most cases you will want dummy readings (failures) to be inserted for the missing part. If you are using Mode 32 (or other arrangement that does not stop on fail) then there is no problem. Just test the empty socket and the dummy readings will be recorded and the serial number advanced.
If the tester does stop when you do this then enter An to accept bad readings.
The n in An, is your multiplex station number.
Once you have made two or more data files from the same lot of parts (and with the identical test program) you can use the program STATS to produce a delta report using two files as input.
You will also need a file with delta limits specific to the part and test program used to make the data files. Please read the file SAMPLE.DEL in your \MAXX directory to examine a typical limits file documented with many explanatory notes.
When you write such files it is very useful to make the file name identical to the TITLE of the test program used to produce the data files. In this case the limits file will be loaded automatically when you use STATS to produce the delta report.
There are a number of options to be setup in STATS but the following three are the most important:
Choose DELTA REPORT or SUMMARY ONLY. The complete delta report outputs all of the original readings from both files and the absolute and recent deltas and also all of the summary data.
The summary includes all of the header information, file names, date, etc., regarding the input files, the list of tests performed with limits, and the delta limits. Also the count of failed parts broken down by the test failed and the type of failure (test limits, delta, or percent delta or failure for bin sort decision). Finally a list of the serial numbers, (up to 512 maximum), of the failed parts.
The Summary Only report contains all of this summary data but does not include the individual readings. Please note that if you keep the data files you can print the readings anytime in the future that they are needed.
- The next decision to be made (you will see a suitable menu when you start the report) is which of the tests whose readings are in the data files will have deltas computed. In the typical example described earlier we tested five parameters but needed deltas on only two. Just turn off the other three in the filter menu.
third major decision regards the maximum bin sort number (also appears
in the filter menu). This allows you to count as failures as many parts
whose bin sort numbers exceed the value you set. This allows you to
require that certain tests pass even if they are not tests whose deltas
are computed. Recall that we said earlier in the example that all good
parts would be in bin sort 1. So in this case you would set the maximum
bin sort number to 1.
If you don’t want to reject parts for bin sort, just set the number to 32. Nothing can fail bin sort 32.
Please note also that parts will be rejected if they failed the tester limits for the tests whose deltas are computed. This will be true regardless of the number chosen for maximum bin sort number. This is accomplished by a fail flag, associated with each individual reading.
When you are collecting data for statistical purposes there are fewer constraints on the tester and program setup. There are still a few constraints however so let’s cover those first.
Our post processor STATS expects a fixed record size within a single file. That is, each part recorded must produce the same number of readings. For this reason, you should avoid conditional jumps in your test program, which could cause some parts to produce fewer readings than others.
The maximum number of tests that STATS can process is sixteen (currently).
Generally it is not necessary to worry about serial numbers or screening out rejects so you will probably use Mode 32 in order to record everything tested. STATS will allow you to filter out just about anything you don’t want in your final report(s).
It is usually a good idea to record everything in one pass through the tester and then make as many different reports as you wish using the filter and other options.
In STATS you can choose the test or tests that you want included in a particular report and exclude readings that fall outside of limits that you set. Also, you can exclude parts whose bin sort number is greater than a value that you enter.
Suppose that you are interested in the distribution of VZ in a lot of nominal 39V zeners. You have a file containing the VZ as well as several other parameters.
In the STATS filter, you can turn off all tests except VZ. Also, you don’t want your data to be corrupted by VZ readings such as, for example 3V. If a lot of 39V zeners contains a VZ of 3V there is something wrong with that part that has nothing to do with distribution of VZ, so you would like to eliminate it.
You can set upper and lower limits for each test. In this case you might want to set values such as 30V to 50V.
If the values you choose don’t turn out well then you can reset them and reprint the report. You may find it useful to preview the setup on the screen first and then print it when you are satisfied with the format of the report.
EXPORT TO OTHER PROGRAMS
If you want to do some statistical analysis that is beyond the capability of STATS, you may want to export your data to another program. At this writing STATS has a single export format. More may be added later. The format is described below.
The header on the output file is separated from the data by a separator string that may be changed in the CUSTOM.DEL FILE. The default is ###. A terminator string follows the data. It default is $$$.
The data section contains one line for each part consisting of the serial number and a series of unit-less numbers separated by commas. Missing or invalid readings are, represented by commas only. We send the numbers in the most appropriate of the following basic units in the target program:
- Degrees Celsius/Watt
The standard data-log file contains a header in ASCII followed by readings and serial numbers in a special binary format. Both sections are described below.
The header is in ASCII and may be any length. The end of the header is marked by a record mark consisting of 2 successive bytes of FFh.
The header may or may not contain CR and LF as line terminators. Our own utilities such as STATS.COM can accommodate wither option. Files produces by our LOGGER allow the operator to fill in 3, 80 character lines, which make up a 240 byte header with no separators.
The header is terminated by a record mark (FFFFh). The data follows, consisting of any number of sets of readings. Each set consists of a serial number followed by some number of 3-byte readings. The set is terminated by a record mark.
The serial number is a 16 bit unsigned integer as defined by FreeDOS. It should be noted that the “next” serial number is written to the file after writing a set of readings. The serial numbers are not necessarily consecutive.
The set of readings consists of some number of 3 byte DATA VALUES. This 3 byte data type is described fully in a separate document. The end of the set of readings is marked with a record mark (FFFFh).
The design of this format allows for any size header, however if produced by our LOGGER the header will use 244 bytes counting the record mark and the first serial number. Each set of readings will add three times the number of readings in a set plus two bytes for a record mark and 2 bytes for the “next” serial number.
Suppose a set of readings is sent through a serial “COM” port at 19,200 Baud, and consists of 3 readings and a serial number. This will take about 6.8mS. This is substantially faster than the same amount of data sent in ASCII.
FEC DATALOG FILE FORMAT #2
This, optional, datalog file format, starts with a copy of the binary test program used to produce the readings. A separate document describes the format for this binary program. Next in the file is a header in ASCII followed by readings and serial numbers in a special binary format. The latter two sections are described below.
The header begins at offset 3072d in the file. It is in ASCII and is 244d bytes including the record mark and the first serial number. The end of the header is marked by a record mark consisting of 2 successive bytes of FFh.
The header starts with 240 bytes of ASCII data with no line terminating characters. However, we have treated this as three 80 character lines. This is followed by 2 bytes of FFH and a 2 byte unsigned integer representing the serial number of the first part in the file.
The header is terminated by a record mark (FFFFh). The data follows consisting of any number of sets of readings. Each set consists of a serial number (2 bytes), a bin sort number (1 byte), followed by some number of 4 byte readings. The set is terminated by a record mark.
The serial number is a 16-bit unsigned integer defined by FreeDOS. It should be noted that the “next” serial number is written to the file after writing a set of readings. This means that the file will contain an unused final serial number.
The serial numbers are not necessarily consecutive.
The set of readings consists of some number of 4 byte readings. Each reading starts with a byte representing the binary value of the test sequence number. This is followed by a 3 byte DATA VALUE. The end of the set of readings is marked with a record mark (FFFFh).
The binary program uses 3072 bytes and the following header uses 244 bytes counting the record mark and the first serial number. Each set of readings will add four times the number of readings in a set plus two bytes for a record mark, two bytes for the “next” serial number, and one byte for the bin sort number.
FORMAT OF DV
DV is a 3 byte data structure devised by FEC to represent engineering values such as Volts, Amps, etc. DV is used in MAXX, VFS, and all other FEC software that does data-logging.
In memory, the first byte is the “range” or “scale” byte, which represents the sign, decimal point location, and unit of measure. There is also a set of three codes set aside for representing certain invalid conditions such as “Upscale.”
The next two bytes are a 15-bit unsigned integer. The 16th bit is a flag which when true indicates “out of spec.”
When a DV is on the stack in FORTH, the range bit is on top.
DETAIL OF THE RANGE BYTEBit 7 is the sign bit
The value (0-3) of bits sets the decimal point location.
The value (0-31) of bits 2-6 sets the unit of measure. If this value is 31 the reading is invalid.
|CODE||UNITS (2-6)||DECIMAL (0-1)|
DETAIL OF SORT SPECS.Each 10 byte sort spec. Is an 80 bit, bit map. Bit 0 of the first byte represents test #1. Bit 7 of the last byte represents test 80. Tests 1-75 are the ones explicitly programmed. Tests 76-80 are pre-defined tests associated with the Polarity and Kelvin contact check.
A true bit means that the corresponding test must pass in order for the part to fall into the bin being checked. The bin sorts are prioritized with bin 1 having the highest priority.
Test 76 is Kelvin contact check
Test 77 is Reverse polarity
Test 78 is Short check
Test 79 is Open check
Test 80 is Normal polarity
DETAIL OF 28 BYTE TEST SPEC.
|0||b||Type of test code (which see)|
|1-3||dv||Forcing value #1|
|4-6||dv||Forcing value #2 if used or forced range*|
|7-9||dv||Expected maximum readout (forced range)*|
|10-12||dv||Minimum limit if used.*|
|13-15||dv||Maximum limit if used.*|
|16-17||bb||Soak time in milliseconds (except for PCV where it is microseconds)|
|18-19||bb||Auxiliary #1 (usually 1/K for THETA)|
|20-21||bb||Auxiliary #2 (usually TMD for THETA or DVF)|
|22||b||Options #1 (see detail)|
|24||b||Options #2 (see detail)|
|25||b||Destination for Unconditional jump|
|26||b||“ “ Jump on pass|
|27||b||“ “ Jump on fail|
If no minimum limit is entered the value will be zero on the selected readout scale. If no maximum limit is entered the digits part of the maximum limit will have a value of -2. Neither of these limits could possible fail, regardless of the actual reading.
The 1/K entry if used may be interpreted as microvolts per degree Celsius.
The TMD if used will be in microseconds.
OPTIONS #1 BYTEIf bit 0 is true the orientation of the part will be “flipped” before testing. It will remain in this state until flipped again by another test with bit zero or until the start of the next test sequence.
If bit 1 is true, the limiting resistor normally in series with the “IR METER” is removed. It will be replaced, however, immediately after the current test.
The functions of these two bits may be combined (that would be function F3).
OPTIONS #2 BYTEThis byte controls the jump enables. Bits 0-1 control unconditional jumps. Bits 2-3 control jump on pass and Bits 4-5 control jump on fail. Within each 2 bit group the meanings are as follows:
0 = No jump, 1 means jump absolute, 2 jump + relative, and 3 jump – relative