Вы находитесь на странице: 1из 137

ULTRAVIM APPLICATION MANUAL

ULTRAVIM
Application
Manual

14505 21ST AVENUE, SUITE 220, MINNEAPOLIS, MN 55447


 1998-2001 Scanner Technologies Corporation

Ver 5.5 1
ULTRAVIM APPLICATION MANUAL

1. Introduction
Describes the functionality and specifications of the UltraVim system.

2. Methodology
Explains the measurement definitions, methodology, and algorithms.

3. System Organization
Describes the operating system, the directories, and files.

4. UltraVim Operation
Gives an overview of the UltraVim software and the screens used.

5. Part Files
Shows how to create and maintain UltraVim part files.

6. Graphs & Data


Explains the graphs, reports, and Autosave data.

7. Calibration
Describes how to verify the calibration of the system.

8. Managing Files
Shows how to copy and delete files using File Manager.

9. UltraMark Module
Describes the operation of the UltraMark module for mark inspection.

10. UltraLead Module


Describes the operation of the UltraLead module for2D Lead inspection.

A. Adding a Printer
Explains how to connect a printer and install the drivers.

B. Adding a Network Card


Explains how to connect a network card and install the drivers.

C. Custom Reports
Shows how to create a custom Lot Summary report.

D. Host Communications
Describes the host protocol required to communicate with the UltraVim.

E. Asynchronous Host Communications


Describes the host protocol Option 2.

F. Inspecting Multiple Parts


Tells how to inspect multiple two-sided parts.

Ver 5.5 2
ULTRAVIM APPLICATION MANUAL

1. Introduction
The UltraVim and UltraVim Plus inspection modules perform true three dimensional
inspections on many semiconductor devices such as Gull-Wing Parts, J-leaded parts, and
Ball Grid Arrays (BGA). They utilize a user-friendly interface and true 32-bit code for
fast and accurate results. A summary of the features is shown below.

„ Fast Inspection Times


„ Digital Camera Technology
„ Automatic NIST Traceable Calibration
„ Easy Setup, Training, and Maintenance
„ Factory Sealed with No User Adjustments
„ Multple Languages Available
„ Easy Integration, Standard Interface
„ Extensive Data, Charts, & Reports

1.1 Computer Module

The computer module contains the following:

„ Power Supply
„ Motherboard, Processor, and Memory
„ Floppy Disk and Hard Disk
„ Camera Power Supply
„ Digital IO Board
„ Framegrabber Board
„ Mouse and Keyboard

To setup the UltraVim system, follow these instructions:

1. Unplug the computer module.


2. Make sure the correct voltage is selected on the power supply.
3. Connect the "Camera Power" cable to the computer and UltraVim.
4. Connect the "Digital Camera" cable to the computer and UltraVim.
5. Connect the mouse to the mouse port.
6. Connect the keyboard to the keyboard port.
7. Connect the monitor cable to the monitor port.
(monitor and cable not included)
8. Plug the computer module in.
9. Turn on the power switch.

Ver 5.5 3
ULTRAVIM APPLICATION MANUAL

2. Methodology
Scanner Technologies has developed the UltraVim inspection system to provide the
fastest and most accurate three-dimensional inspections available in the industry. By
using an NIST traceable calibration standard, special optics, and a high-resolution
camera, the UltraVim system provides a solution that can meet your needs today, and in
the future.

The steps required to calculate part measurements are shown below.

„ System Calibration
„ Find Pixel Coordinates
„ Convert Pixel Coordinates into World Coordinates
„ Convert World Coordinates into Part Coordinates

2.1 Calibration
The secret to the accuracy of the UltraVim starts with the NIST traceable calibration
reticle. This standard is measured to an accuracy greater than 10 micro-inches. This
reticle utilizes 1,600 calibration references to define the World Coordinate Reference. By
using robust statistical techniques, the UltraVim is able to create and store this reference
with sub-micron accuracy.

The UltraVim has no moving parts. Once it has been calibrated, it stays calibrated. You
may want to calibrate the system once a month, or once a year to satisfy the verification
requirements or your company's internal process.

Ver 5.5 4
ULTRAVIM APPLICATION MANUAL

2.2 Inspection Reticle


To get true three-dimensional measurements, the UltraVim uses Scanner Technologies
patented inspection reticle. This special reticle allows one camera to see five views at
one time. Using ray tracing and vector analysis, the true 3D measurements are obtained
with one calibrated camera, and one image. This eliminates the errors produced by
systems that use multiple cameras or multiple images.

Calibration Reticle Inspection Reticle

Each inspection reticle has its own calibration file. When you install a new inspection
reticle on the UltraVim system, make sure you load the correct file. This file contains
precise information about the geometry of the reticle.

There is no file associated with the calibration reticle. They are interchangeable. These
reticles are manufactured to specific measurements with a tolerance of less than 0.25
microns. Before the calibration reticle is certified for use with the system, it is tested at
the Scanner Technologies factory. If it does not meet the required tolerance, it is
destroyed.

Ver 5.5 5
ULTRAVIM APPLICATION MANUAL

2.3 Pixel Measurements


The first step is to find the pixel location of each lead, or ball, on the part. Scanner
Technologies has been researching measurement and edge-finding algorithms for over 10
years. By using the most advanced techniques available, the positions of the leads, or
balls, are measured with accuracy greater than 1/20th of a pixel!

The example below shows a sample image. This image will be used to demonstrate the
concepts used in this chapter. Note that this simple illustration does not include side
images, or ray tracing.

Assume that the software searched the image for the leads, and found the first lead at
386.2, 349.7 pixels. This is done for all the leads in the image, but for our example we
will just look at the first lead.

Pixel Measurements

X = 386.2 pixels
Y = 349.7 pixels

Ver 5.5 6
ULTRAVIM APPLICATION MANUAL

2.4 World Measurements


The next step is to convert the pixel measurement to world measurements. This is done
by using the World Coordinate Reference that is stored in the calibration file. This file
contains the information required to convert any pixel location to a location in mils. If
the part files is defined in microns or mm, the measurements are converted to the
appropriate unit.

To show an example of how this is done we can use the formulas below. For this
example, assume the pixel size is 1.8 mils and the center pixel is 512. Note that this is a
very simplified version of what actually happens in the software.
X World = (X Found Pixel – X Center Pixel) * X Pixel Size
Y World = (Y Center Pixel – Y Found Pixel) * Y Pixel Size
X World = (386.2 – 512.0) * 1.8 = -226.4 mils
Y World = (512.0 – 349.7) * 1.8 = 292.1 mils

World Measurements

X = -226.4 mils
Y = 292.1 mils

Ver 5.5 7
ULTRAVIM APPLICATION MANUAL

2.5 Part Measurements


After the World Measurements have been calculated, the position of the part can be
computed. By looking at all the points found on the part, the Part Coordinate system can
be determined. In the diagram below, you can see that the part has been rotated.

After the Part Coordinate system has been calculated, the Part Measurements can be
determined. This is done by calculating the expected ideal position of each lead, based on
the Part Coordinate system. In the diagram below, you can see that the lead has a small
amount of Bent Lead and Tip Offset because the actual center of the lead is not the same
as the ideal center based on the Part Coordinate system.

Part Measurements

Bent Lead = 0.50 mils


Tip Offset = 1.75 mils

Ver 5.5 8
ULTRAVIM APPLICATION MANUAL

2.6 Part Tolerances


The Part Tolerances are entered in the part file. After the Part Measurements are
computer, they are compared to the tolerances. The result can be Pass, Rework, or Fail.
These results are reported back to the host system.

For absolute measurements, the tolerances will be positive numbers. For example, if the
Width should be 10.0, you may want to set a tolerance from 8.0 to 12.0 in the part file.
For relative measurements you will use both positive and negative numbers. For
example, for Bent Lead you may want to set a tolerance of -4.0 to +4.0 because a value of
0.0 shows that the lead is not bent at all.

Ver 5.5 9
ULTRAVIM APPLICATION MANUAL

3. System Organization

This chapter describes the operating system, the directories on the system, and the
important files required for operation.

3.1 Operating System

The UltraVim system comes with the Microsoft Windows NT operating system. All of
the programs and drivers utilize true 32-bit code for maximum efficiency. When the
system starts, you will not find the standard Microsoft “Explorer” interface. Instead, a
simplified interface will be shown that has command buttons for the common programs
that you may need to run.

Computer Shows a dialog box that displays the contents of the computer as icons.
These icons include disk drives, the control panel, and printers. This icon
requires the user to enter the password for level 3 to run.

A:Setup Shows a dialog box that lists the executable files on the A: drive.
Use this button to run setup programs from the A: drive. This is
for installing upgrades to the software or new drivers.

UltraVim Starts the UltraVim software. There is no need to click on this button
when you power up the system. The UltraVim software will start
automatically without any user intervention.

Calibrate Runs the UltraVim calibration software.

Ver 5.5 10
ULTRAVIM APPLICATION MANUAL

Notepad Runs NotePad, a simple text editor.

Files Runs the File Manager program. This icon requires the user to enter
the password for level 3 to run.

Info Displays important information about the computer and software.

Exit Exits Windows NT. This icon required the exit password before
it closes down Windows. If you need to power down the system,
or restart the system, it is best to do so by using this button.

3.2 Directories

The hard disk on the UltraVim is divided into three drives. The C: drive contains the
Windows NT operating system and drivers, the D: drive holds the UltraVim software, and
the E: drive is used to “Auto-Save” data.

C Drive
The C: drive contains the Windows NT operating system. It is very important that you do
not delete any files on this drive. A password level of 3 is required to delete files, so
make sure that only the system administrator knows this password and it is not given to
anyone else.

: If any files are deleted from the C: drive, the UltraVim system may no
longer function properly!

Ver 5.5 11
ULTRAVIM APPLICATION MANUAL

D Drive

The D: drive contains the UltraVim software. The following directories must be present
for the system to work correctly:

D:\UVIM All the executable files and dll’s are stored here.
D:\UVIM\Files This directory contains all the system files for the UltraVim.
D:\UVIM\Parts The part files are stored in this directory.
D:\UVIM\Data Any data that has been saved manually is stored in this directory.

: If any files are deleted from the D:\UVIM\Files directory, the UltraVim
system may no longer function properly!

; If you have multiple UltraVim systems, you can copy part files from the
Parts directory to other systems. The part files are not system
dependent.

E Drive
The E: drive contains the data from the “Auto-Save” function. It is important to archive
or delete the data on the E:\ when it is no longer needed to keep the drive from filling up.

When you select a part file, its Auto-Save directory is created. For example, if the Auto-
Save directory is specified as “QFP160” in the part file, then the “E:\QFP160.001”
directory is created. If the “E:\QFP160.001” directory already exists, then
“E:\QFP160.002” is created. The directory keeps incrementing up to “.999”.

The following files will be created in the “QFP160.001” directory (if the option to save
the file is checked in the Options dialog box, and Auto-Save is check in the Options
dialog box):

Ver 5.5 12
ULTRAVIM APPLICATION MANUAL

LOTSTAT.CSV The Lot Statistics data.


LOTSUMM.RPT The Lot Summary Report.
SPCSTAT.CSV The SPC data.
PRT#####.CSV The Part Statistics data.
PRT#####.RPT The Part Summary report.
PRT#####.TIF The Part Image file.

The ##### in the part files represent the number of the part that was measured such as
PRT00001, PRT00002, PRT00003, etc.

Note that if you have the Auto-Delete function turned on, the files on the E:\ drive will be
deleted after a certain number of days. This can be changed in the Options screen.

Ver 5.5 13
ULTRAVIM APPLICATION MANUAL

4. UltraVim Operation
This chapter gives an overview of the UltraVim software. Normally, the host system
controls inspections, but there may be times that you want to use the UltraVim software
for manual operations.

4.1 Main Screen


The main screen of the UltraVim software is shown below. The key elements are:
z Command Bar at top of screen
z Part File, Cycle Time, Position
z Part Statistics showing Minimum and Maximum measurements
z Lot Summary showing the total Pass, Rework, and Fails for lot
z Image on the right of the screen
z SPC chart in lower left corner of screen
z Version number in lower right corner of screen

Ver 5.5 14
ULTRAVIM APPLICATION MANUAL

4.2 Command Bar

Select Part Use this command to manually select a part, or select the “Pick and Place
Setup” mode. Normally, the host system will automatically select a part.

Inspect Part Use this command to manually inspect a part. A part must be over the
inspection reticle first. Normally the host will automatically send the
inspect command.

Data Use this command to view and save data, or clear the data. If you do not
have the “Auto-Save” command on, all data is lost when the system is
shut down, the data is cleared, or a new part is selected.

Options This command lets you change options such as which language is shown,
or what measurement the SPC char displays. You need to enter password
level 2 to enable this command.

Maintenance This command lets you edit and create part files. If you are in password
level 1, you can only edit files. If you are in password level 2, you can
create and save files. If your password is level 3, you can delete files.

Passwords Use this command to change password level, change passwords using
the administration screen, or exit the program using the exit password.

Ver 5.5 15
ULTRAVIM APPLICATION MANUAL

4.3 Select Part


The Select Part dialog lets the user manually select a part and enter user information.

The icons in the lower-left corner of the screen let the user select the part type. When the
part type is changed, the files listed will also change.

If the user has password level 3, the reticle can be changed. The reticle shown must
always match the reticle that is actually on the system when you are inspecting Gull Wing
and J-Leaded parts. For BGA parts, the user can ignore the reticle selection.

Ver 5.5 16
ULTRAVIM APPLICATION MANUAL

If you have a new reticle, insert the reticle setup disk in the A: drive and click on the
“Load” button. If you retire a reticle, or send it to the manufacturer for repair, you should
select that reticle in the list, then click on the “Delete” button to remove the file from the
system.

: If the wrong reticle file is selected, the inspection results will not be
valid for Gull Wing and J-Leaded parts. The reticle files have the
extension “RET” and are stored in the D:\UVIM\Files directory.

If you check the “Pick & Place Setup” checkbox, the system will perform only a two-
dimensional XY inspection and report the X, Y information in output channels C0-C7.
This should be used with the setup reticle to determine the proper placement of the
hander system over the center of the reticle.

If you want to test the system by measuring parts with the setup reticle, choose the reticle
called "SETUP", and the system can measure parts with the setup reticle, but note that the
coplanarity will not be checked because the setup reticle does not have prisms on it.

; Any part file can be loaded manually, but the host can only load part
files that contain 1 or 0 in the file name.

Ver 5.5 17
ULTRAVIM APPLICATION MANUAL

4.3 Resume Lot

When a part is selected, the "Resume" button may become active. If the user clicks on
the "Resume" button, the lot summary information from the previous lot will be loaded
into the program. This includes the number of pass, rework, and fail parts as well as the
Lot Summary statistics.

To make sure the "Resume" button will become enabled for a part, the Auto-Save feature
must be used to save the Lot Summary report. When the user selects a part, the program
looks in the Auto-Save directory for the LOTSUMM.RPT file. If this file is found, the
"Resume" button will become enabled.

If there are multiple Auto-Save directories, the program will look in the last directory
found. In the example below, the "Resume" button will load the information from the
E:\QFP160.003 directory.

E:\QFP160.001
E:\QFP160.002
E:\QFP160.003

Note that the Lot Statistics information will not be loaded into the program when a lot is
resumed – only the Lot Summary. Also, the current user information that is entered will
be used.

Ver 5.5 18
ULTRAVIM APPLICATION MANUAL

4.4 Inspect Part

When the user clicks on the “Inspect Part” button, or the host give the inspect command,
the UltraVim performs the following steps:

1. The LED lights are turned on.


2. An image is acquired.
3. The reticle is found (if not a BGA part).
4. The body of the part is found.
4. The leads (or balls) are found.
6. The results are computer.

If a lead (or ball) was not found, the result is shown as “NF”. You should be able to look
at the image and see a red marker where the lead was expected. This can occur for the
following reasons:

1. There actually is a missing lead or ball.


2. The part file is not correct.
3. The part is not centered.
4. The part is not in the image.
4. The lights are not working.

Ver 5.5 19
ULTRAVIM APPLICATION MANUAL

4.5 Data

To view data, click on the “Data” button. The following dialog will be shown:

Note that you can change the User and Lot information on this screen. This will change
any of the files that you view, but it will not change the part files that have already been
saved with the “Auto-Save” function.

Ver 5.5 20
ULTRAVIM APPLICATION MANUAL

4.6 Options

Inspection Cycles The inspection cycles should be left at “NORMAL”. If you select
“Demo” the system will inspect the same part until you click on the
cancel button. Demo 1.0 inspects once per second, Demo 2.0
inspects once every two seconds, etc.

SPC Subgroup Size The SPC subgroup size shows how many values to average before
saving in the SPCSTAT.CSV file. It is best to set this number to 5
or 10. If you have large lot sizes, the SPC file can get very large.
Especially if this value is set to 1.

Machine Enter the machine serial number in this field.

Ver 5.5 21
ULTRAVIM APPLICATION MANUAL

Auto-Save If Auto-Save is checked, the system will automatically save data


on the E:\ drive. Do not check the “Part Summary", “Part
Statistics”, or "Image" unless you are performing a special study.
These files take up a lot of space and will fill your E:\ drive
quickly.

Auto-Delete If you turn on the Auto-Delete option, files on the E:\ drive
will automatically be deleted after a certain number of days.
Specify the number of days in the edit box to the right of
the Auto-Delete choice.

Graphics This determines if the graphics are shown. If you have a host
system that is very fast (above 10,000 uph) you should turn the
graphics off to speed up the system. If not, it is best to leave
graphics on.

Image You can use the save and load buttons to save or load TIF images.
If you have a part that looks strange, or think there is a problem
with your system, save the image and send it to customer support.

SPC Chart Select the measurements you want displayed on the SPC chart
on the main screen.

Language Select the language you want displayed.

Ver 5.5 22
ULTRAVIM APPLICATION MANUAL

4.7 Maintenance
When you click on maintenance, the dialog below will be shown. From this dialog, you
can click on the icon of the type of part you want to edit or create. If your system only
supports one part type, this dialog box will not be shown.

4.8 Passwords
From the Passwords dialog box you can enter the password to change user level, exit the
program, or change passwords. The default passwords are:
Level 2 2
Level 3 3
Exit EX
Administration ADMIN

Ver 5.5 23
ULTRAVIM APPLICATION MANUAL

4.9 Password Administration


It is important to change the passwords, especially for level 3 which give the user access
to the delete functions. After you change the passwords, you should give them only to
those who need the required level:
Level 2 – Create Files
Level 3 – Delete Files
From the Passwords dialog box you can enter the password to change user level, exit the
If you enter the ADMIN password, the administration dialog will be shown. From this
screen you can change the existing passwords. To do this:

1. Select the password you want to change.


2. Enter the old password.
3. Enter the new password.
4. Re-enter the new password.
5. Click on OK.

If the OK button remains gray, the old password is not correct, or the new password does
not match the “re-entered” new password.

Ver 5.5 24
ULTRAVIM APPLICATION MANUAL

5. Part Files
This chapter describes how to create and edit part files for the UltraVim system. It is very
important to make sure the values in the part files are correct for the system to operate
correctly. It is best to use the CAD drawing of the part to verify the values you enter in
the part file.

5.1 Maintenance
When you click on the “Maintenance” button from the UltraVim software, a dialog will
be shown that lets you select the part type. If your system is set up for only one type of
part, then this dialog will not be shown.

; If you cannot edit the part because all the fields are gray, go to the
Passwords screen and enter the password for level 2 or level 3.

5.2 Gull Wing & J-Lead


The first information you must enter is the File Name, Description, and Auto-Save
Directory. The File Name can be up to eight characters long. The host system can only
send commands to load files that have “1” or “0” in the name. To select a file name like
this, you can move the sliding scroll bar next to the File Name. To the right of the scroll
bar, you will see a number. This is the decimal equivalent of the file name. For example,
if you slide the bar until the file is “11111111”, the number will show 255.

Ver 5.5 25
ULTRAVIM APPLICATION MANUAL

Enter a short description of the part. This is especially important if the File Name
contained only 1’s and 0’s. This helps you identify the part file for manual operations,
and it will also show up on the reports.

The Auto-Save Directory can be up to eight characters long. Make sure that the Auto-
Save Directory for each part is unique. When Auto-Save is selected from the UltraVim
software, the Auto-Save Directory will be created on the E:\ drive with an extension from
001 to 999. For example, the first time you run the QFP160 part, the Auto-Save data will
be saved in the E:\QFP160.001 directory.

Ver 5.5 26
ULTRAVIM APPLICATION MANUAL

Select the Units and Lead Type, then enter the Lead Dimensions and Body Dimensions.
For a J-Leaded part, there will be no Foot Length or Foot Angle. The most common
orientation is Counter Clockwise. If you are creating a J-Leaded part, the Center
checkbox will become active. This lets you define lead 1 at the center of side 1 instead of
the corner.

5.2 Irregular Parts


Normal parts have the following characteristics:

z Opposite sides have the same number of leads.


z Leads have a constant pitch.
z Leads on the same side lie in a straight line.
z There are no missing leads on a side.
z All leads are the same distance from the body.

If these conditions are not met you can create an “Irregular” part. To do this, first create a
normal part file that is as close to the part as you can make it. Next, select “Irregular” in
the Orientation section of the screen, then click on “Position”. The following screen will
be shown:

Ver 5.5 27
ULTRAVIM APPLICATION MANUAL

From this screen, you can enter the Side and X,Y position of each lead. Make sure that
you start with Side 1 and stop at Side 3 for a two-sided part or Side 4 for a four-sided
part.

If a part has a missing lead, you can delete the X and Y positions for that lead. This will
cause the lead to keep its lead number, but it will not be measured. Note that it will show
up as 0.0 on some of the graphs because a blank line is seen as a 0.0 value by the
graphing software.

5.3 Tolerances
The Tolerance screen defines how the values are calculated, and what values will cause
the part to be rejected or reworked. Some host systems may only have a reject output, but
you may still want to enter rework values to keep track of how many parts are “close” to
being rejected.

Ver 5.5 28
ULTRAVIM APPLICATION MANUAL

At the bottom of the tolerance screen there are several selections to change the
calculations used by the UltraVim software. A summary of these calculations is shown
below.

Bent Lead – Best Fit


This uses all the leads to calculate the Bent Lead for the part. By using all
the leads with a best-fit regression, the calculation is more repeatable. This
is the suggested default setting.

Bent Lead – JEDEC


This uses only three leads to calculate the Bent Lead for the part. If one of
these reference leads is bent or damaged, it can have unexpected results on
the calculation.

Coplanarity – 3 Point Plane


This calculation finds the best combination of three leads to create a stable
seating plane for the part. It tries to predict the coplanarity values of the part
if you were to put it on a flat surface. This is the suggested default setting.
It is the most accurate calculation, but the least repeatable on some parts.
Some parts may have several stable seating planes. These types of parts may
have higher repeatability values when the same part is measured several times.

Coplanarity – Hysteresis Plane


This calculation uses several leads to create a seating plane. This creates
more repeatable numbers, but these numbers may not be as accurate as the
values from the 3 Point Plane. This is because a part that has several seating
planes will have these planes averaged to create one stable seating plane.
We provide this calculation for test purposes, but suggest that you use the
3 Point Plane calculation.

Ver 5.5 29
ULTRAVIM APPLICATION MANUAL

Coplanarity – LMS Regression Plane


The LMS Regression Plane calculates both negative and positive coplanarity
values. The regression finds the plane that minimizes the squared values of the
coplanarity. This is the most stable and repeatable coplanarity calculation, but
many choose not to use it because it does not predict the coplanarity values
of the part on a flat surface.

Standoff – 3 Point Plane


This calculation predicts the distance from the part body to a flat surface if the
part is placed on that surface. Note that this number will be slightly different
for each lead because the body of the part will not be exactly parallel to the
flat surface. This is the suggested default value.

Standoff – Best Fit


To calculate the 3 Point Plane standoff. The UltraVim software must be able
to see the body of the part in the four side views. This may not be possible for
all parts. This calculation tries to estimate the standoff based on the coplanarity
numbers. Another alternative for these types of parts is to set the standoff to
0.0 when you create the part. This will turn off the standoff calculation.

Ver 5.5 30
ULTRAVIM APPLICATION MANUAL

5.4 Measurements

Coplanarity
Coplanarity is the distance from the lead to a flat surface when
the part is placed on that surface.

Standoff
Standoff is the distance from the body to a flat surface when the
part is placed on that flat surface.

Tip Offset
Tip Offset is the distance from the tip of the lead to the ideal
position of the lead.

Tip Error
Tip Error uses a best fit line to calculate the tip offset relative to
the other leads on a side. The formula used is: Tip Error = Tip
Offset – (A*N + B) where A is the slope parameter in the
regression, N is the lead number, and B is the intercept.

Skew
Skew is the distance from the edge of the lead to the ideal center of
the lead. Skew = abs(Bent Lead) + Width/2

Ver 5.5 31
ULTRAVIM APPLICATION MANUAL

Bent Lead
Bent Lead is the distance from the measured center of the lead to the
ideal center of the lead.

Width
Width is the distance from one edge of the lead to the other edge.
This measurement is calculated 1/4 width from the lead tip.

Terminal Dimension
The terminal dimension is the tip to tip distance between two
opposite leads.

Pitch
The lead pitch is the distance between the measured centers of two
adjacent leads.

Burr
The burr measures any width of the lead that is larger than the
average width of all the leads. The foot length controls how far
towards the shoulder the software will search for a burr.

Ver 5.5 32
ULTRAVIM APPLICATION MANUAL

5.5 Ball Grid Array (BGA)


The first information you must enter is the File Name, Description, and Auto-Save
Directory. The File Name can be up to eight characters long. The host system can only
send commands to load files that have “1” or “0” in the name. To select a file name like
this, you can move the sliding scroll bar next to the File Name. To the right of the scroll
bar, you will see a number. This is the decimal equivalent of the file name. For example,
if you slide the bar until the file is “11111111”, the number will show 255.

Enter a short description of the part. This is especially important if the File Name
contained only 1’s and 0’s. This helps you identify the part file for manual operations,
and it will also show up on the reports. The Auto-Save Directory can be up to eight
characters long. Make sure that the Auto-Save Directory for each part is unique. When
Auto-Save is selected from the UltraVim software, the Auto-Save Directory will be
created on the E:\ drive with an extension from 001 to 999. For example, the first time
you run the BGA208 part, the Auto-Save data will be saved in the E:\BGA208.001
directory.

Ver 5.5 33
ULTRAVIM APPLICATION MANUAL

If you click on the “Setup” button, the screen below will be shown. From this screen you
can remove missing balls from your part file. To add or remove a ball, click on that ball
with the mouse. As you move the mouse over a ball, the ball label will be shown on the
left. The Part Reference should be set to Upper Right. If you click on Full the software
will automatically set all the balls to become active. If you click on staggered, the
software will set every other ball to become active.

5.6 Datum – Balls or Board


If you select Datum to be “Balls”, the ideal positions of the balls are calculated from the
balls themselves without respect to the position of the board. If you select “Board”, the
ideal positions of the balls are calculated with respect to the reference edges of the board.

Ver 5.5 34
ULTRAVIM APPLICATION MANUAL

In Figure 6A below, you can see that the balls are rotated on the board, and the X and Y
datum are also rotated to match the rotation of the balls. In this example, the X Error and
Y Error of the balls would be small because the positions of the balls are close to the ideal
positions define by the X and Y datum.

Figure 6B shows the same part with the datum define with respect to the board. The
board is not rotated and the X and Y datum are not rotated. This will create X and Y
Errors that are larger than in Figure 6A because the ideal positions of the balls defined by
the datum will not be close to the actual position of the balls.

Ver 5.5 35
ULTRAVIM APPLICATION MANUAL

Figure 6A Figure 6B

Datum = BALLS Datum = BOARD

In Figure 6C below, you can see that the balls are offset on the board, and the X and Y
datum are also offset to match the balls. In this example, the X Error and Y Error of the
balls would be small because the positions of the balls are close to the ideal positions
define by the X and Y datum.

Figure 6D shows the same part with the datum define with respect to the board. This will
create X and Y Errors that are larger than in Figure 6C because the ideal positions of the
balls defined by the datum will not be close to the actual position of the balls.

Figure 6C Figure 6D

Datum = BALLS Datum = BOARD

Ver 5.5 36
ULTRAVIM APPLICATION MANUAL

5.7 Coplanarity – LMS or Hysteresis


If you select LMS Regression Plane for the coplanarity calculation, the coplanarity results
will have positive and negative values. If you select Hysteresis Plane, the results will
always be positive. You can select a range for the Hysteresis Plane from 0.00 mils to
0.40 mils. The Hysteresis Plane recalculates the coplanarity results with the following
steps:
1. Find the minimum coplanarity value from the LMS regression plane.
2. Find all values within the range, and compute the average.
3. Subtract the average from all values.
4. Round any negative values to 0.

LMS Coplanarity Data

3.0

2.0

1.0

0.0

-1.0 Hysteresis
Range
-2.0

-3.0

Hysteresis Coplanarity Data

3.0

2.0

1.0

0.0

-1.0

-2.0

-3.0

Ver 5.5 37
ULTRAVIM APPLICATION MANUAL

5.8 Measurements

X, Y Diameter
This is the distance from the left edge of the ball to the right edge
or the distance from the top edge of the ball to the bottom edge.

X Error
This is the distance from the X position of the ball to the ideal X
position defined by the X datum.

Y Error
This is the distance from the Y position of the ball to the ideal Y
position defined by the Y datum.

R Error
This is the distance from the X,Y center of the ball to the ideal X,Y
center defined by the X and Y datum.

Coplanarity
This is the Z distance of the ball to the average Z measurement as
defined by the LMS regression plane or Hysteresis plane.

Ver 5.5 38
ULTRAVIM APPLICATION MANUAL

Standoff
This is the Z height of the ball relative to the board. This
measurement is calculated by added the nominal standoff with
the relative ball height.

Warpage
This is the average Z distance from the center of the package to the
corners of the package.

Ball Quality
This is a measurement of the roundness of the ball. It is calculated
by finding the minimum diameter and maximum diameter of the
ball and using the following formula:
Ball Quality = min / max * 100%

Board Width, Height


This is the X and Y dimensions of the BGA package.

X, Y Grid Offset
This is the X and Y offset of the center of the ball array grid to the
center of the package.

Ver 5.5 39
ULTRAVIM APPLICATION MANUAL

6. Graphs & Data


There are five types of reports that the UltraVim software creates. They are:
z Part Summary Summary information about the last part measured.
z Lot Summary Summary information about the last lot measured.
z Part Measurements Each measurement for every lead for the last part measured.
z Lot Statistics The average measurement and standard deviation for every
lead for the last part measured.

6.1 Part Summary – Gull Wing & J-Lead


The Part Summary Report for Gull Wing and J-Leaded parts shows the minimum and
maximum measurement for each side of the part. It also shows the average and standard
deviation for each side on the part. The result of the measurement is shown on the left
side of the screen right below the measurement name. You can save or load the part
summary report by using the command buttons at the top of the screen.

Ver 5.5 40
ULTRAVIM APPLICATION MANUAL

6.2 Part Summary – BGA


The Part Summary Report for BGA parts shows the minimum and maximum ball for
each measurement. It also shows the average and standard deviation. The second section
of the report shows how many of the balls were a pass, rework, or fail for each
measurement. The percentage of balls that were a pass, rework, or fail is also shown.
The tolerances used are shown at the bottom of the report.

; The following types of reports use a file extension of RPT. You can load
any of these types of reports from this screen.
„ BGA Part Summary
„ BGA Lot Summary
„ Gull Wing & J-Lead Part Summary
„ Gull Wing & J-Lead Lot Summary

Ver 5.5 41
ULTRAVIM APPLICATION MANUAL

6.3 Lot Summary – Gull Wing & J-Lead


The first section of the Lot Summary Report shows the percentage of parts that passed
each measurement type, the number of parts that were a pass, rework, and fail, and the
totals. If a part failed any of the measurements, then that part will show as a fail in the
“Total” at the bottom of this section.

The second section of the report shows a summary of the minimum values for each part.
The Min and Max show the “Minimum of the Minimums” and the “Maximum of the
Minimums” for the lot. For example, the minimum Bent Lead will always be a negative
number so the Min and Max will both be negative numbers as well. The average and
standard deviation are calculated for the entire lot as well.

The next section of the report shows a summary of the maximum values for each part.
The Min and Max show the “Minimum of the Maximums” and the “Maximum of the
Maximums” for the lot. For example, the maximum Bent Lead will always be a positive
number so the Min and Max will both be positive numbers as well.

Ver 5.5 42
ULTRAVIM APPLICATION MANUAL

6.4 Lot Summary – BGA


The first section of the Lot Summary Report shows the percentage of parts that passed
each measurement type, the number of parts that were a pass, rework, and fail, and the
totals. If a part failed any of the measurements, then that part will show as a fail in the
“Total” at the bottom of this section.

The second section of the report shows a summary of the minimum values for each part.
The Min and Max show the “Minimum of the Minimums” and the “Maximum of the
Minimums” for the lot. For example, the minimum X Error will always be a negative
number so the Min and Max will both be negative numbers as well. The average and
standard deviation are calculated for the entire lot as well.

The next section of the report shows a summary of the maximum values for each part.
The Min and Max show the “Minimum of the Maximums” and the “Maximum of the
Maximums” for the lot. For example, the maximum X Error will always be a positive
number so the Min and Max will both be positive numbers as well.

Ver 5.5 43
ULTRAVIM APPLICATION MANUAL

6.5 Part Statistics


The Part Statistics Report shows each measurement for each lead or ball for the last part
measured. A graph of each measurement is also shown. You can change the graph to
show a different measurement by clicking on that measurement at the left of the screen.
You can also change the display from chart to histogram. If the result for a lead was
“Rework” the line is shown in yellow. If the result was “Fail” the line is shown in red.

By using the command buttons at the top of the screen, you can load a file, save a file,
delete a file, or print the charts or data. To delete a file you must have password level 3
before you enter this screen.

;Note: You can load any UltraVim report with a CSV extention from
this screen such as part measurements or lot statistics.

Ver 5.5 44
ULTRAVIM APPLICATION MANUAL

6.6 Lot Statistics


The Lot Statistics Report shows the average measurement for each lead or ball for the
entire lot. A graph of each measurement is also shown. The average measurement is
shown in blue, and the standard deviation is shown in yellow. This chart is useful to see
trends in the lot, or to check the repeatability of the machine by measuring the same part
many times.

If you click on the "Stdev" selection on the left of the screen, you will see an expanded
view of just the standard deviation. If you click on the "3D" button, you will see a 3D
chart of the coplanarity.

Ver 5.5 45
ULTRAVIM APPLICATION MANUAL

6.7 SPC
The SPC data shows the minimum, maximum, average, standard deviation, and CPK for
each measurement. The number of data points in the SPC chart depends on the SPC
Subgroup Size that is set in the Options dialog. For example, if you had 1,000 parts in
your lot and the Subgroup Size is set to 10, you will have 100 data points in the SPC
chart. Each data point will be the average of the previous 10 parts measured.
The CPK number is equal to the difference between the maximum and minimum
tolerance divided by six standard deviations. Generally, a CPK number greater than one
shows that the process is stable.

CPK = (Max Tolerance – Min Tolerance) / ( 6.0 * Standard Deviation )

If the SPC file is very large, a dialog will be shown that shows the percent of the file that
is loading. If you click on the cancel button, the file will stop loading and you will be
able to see the data that was loaded. For example, if you clicked cancel on the dialog
below, you would still be able to see 25% of the SPC data.

Ver 5.5 46
ULTRAVIM APPLICATION MANUAL

6.8 Printing
When you click on the Print button, the screen below will be shown. From this screen
you can select to print the chart, or the data. If you select “Data”, you can enter the pages
you want to print, and select the report you want to print. The “Report” limits the
columns of data that will print out.

When you click on the “Reports” button, the screen below will be shown. From this
screen you can name a report and select the columns that you want to print. To select a
column just click on it in the listbox. To de-select it, click on it again. Make sure you
click on the “Save” button to save your changes. To delete the report, click on the
“Delete” button while the report is active.

Ver 5.5 47
ULTRAVIM APPLICATION MANUAL

; The report definition files are stored in the D:\UVIM|Files directory


and have the following file extensions.

„ ZSQ – Gull Wing & J-Lead SPC File


„ ZLQ – Gull Wing & J-Lead Lot Statistics
„ ZPQ – BGA Part Measurements
„ ZSB – BGA SPC File
„ ZLB – BGA Lot Statistics
„ ZPB – BGA Part Measurements

6.9 3D Charts
If you click on the “3D” selection, a three dimensional chart of Coplanarity will be
shown. This option is available for all Gull Wing and J-Leaded parts, but it is only
available for BGA parts if the UltraVim has the additional 3D-BGA option. To change
the view of the chart, click on the chart, hold the left mouse button down, then drag the
box to the desired angle you would like to see.

Ver 5.5 48
ULTRAVIM APPLICATION MANUAL

6.10 Golden Accuracy Report

To run the Golden Accuracy report, first place the device on the UltraVim. Next, select
the correct part file and click on the Inspect button several times to inspect the device. A
sample size of 30 inspections is normally used. After you have completed the
inspections, click on the Password button and enter password “G”. The dialog below will
be shown. Select the correct device serial number, then click on the OK button.

Ver 5.5 49
ULTRAVIM APPLICATION MANUAL

If the correct device is not listed in the dropdown selection, copy the correct *.CRB or
*.CRQ file to the D:\UVIM\Library. For example, if you are using device GB16-123, you
will need to copy the GB16123.CRB file. This file contains the values from the
certificate file and is used to compare with the inspection results to generate the accuracy
report.

An example accuracy report is shown below. To calculate the results, the following
formula is used:
Delta[i] = abs(C[i] – M[i])
C is certificate value.
M is measured value.

From the calculated “Delta” values, the maximum delta and the 3-Sigma accuracy values
are calculated and displayed:
3-Sigma = (Average + 3*Stdev)
Accuracy(+/-) = +/- (3-Sigma)*0.5

Ver 5.5 50
ULTRAVIM APPLICATION MANUAL

6.11 Gage R&R Report

To run the Gage R&R Report, first click on the Options button and set the SPC Subgroup
Size to 1. Next, select the correct part file and inspect the parts. The most common way
to run the test is to use one tray of parts and cycle the tray 9 times through the system.
The first three runs are called Group A, the next three are called Group B, and the last
three are called Group C.

If you had a tray with 5 parts that was cycled 3 times you would have the following
inspections for Group A:
#1..... Part 1, Run 1 #6..... Part 1, Run 2 #11..... Part 1, Run 3
#2..... Part 2, Run 1 #7..... Part 2, Run 2 #12..... Part 2, Run 3
#3..... Part 3, Run 1 #8..... Part 3, Run 2 #13..... Part 3, Run 3
#4..... Part 4, Run 1 #9..... Part 4, Run 2 #14..... Part 4, Run 3
#5..... Part 5, Run 1 #10..... Part 5, Run 2 #15..... Part 5, Run 3

Note: This is test type R1(P1,P2..Pn) R2(P1,P2,Pn)

Another method that is sometimes used is to inspect each part 9 times in a row. This can
be used when it is difficult to cycle the tray of parts through the system. With this
method, if you had a tray with 5 parts and measured each one 3 times, you would have the
following inspections for Group A:

#1..... Part 1, Run 1 #6..... Part 2, Run 3 #11..... Part 4, Run 2


#2..... Part 1, Run 2 #7..... Part 3, Run 1 #12..... Part 4, Run 3
#3..... Part 1, Run 3 #8..... Part 3, Run 2 #13..... Part 5, Run 1
#4..... Part 2, Run 1 #9..... Part 3, Run 3 #14..... Part 5, Run 2
#5..... Part 2, Run 2 #10..... Part 4, Run 1 #15..... Part 5, Run 3

Note: This is test type P1(R1,R2..Rn) P2(R1,R2,Rn)

Ver 5.5 51
ULTRAVIM APPLICATION MANUAL

After you have completed the inspections, click on the Passwords button and enter
password “G” to display the Gage R&R Dialog. In the Gage R&R section of the dialog,
the SPC file will already be selected. Note that you can change the file in case you have
saved the data from an old test. Enter the tolerance value for the measurement that you
want a report on. Select the part type that you are testing and the measurement that you
want the report generated for.

Next, you must select the correct test type and the number of runs and parts that were
used for the test. A test type of R1(P1,P2..Pn) R2(P1,P2,Pn) indicates that you cycled the
tray for each run. A test type of P1(R1,R2..Rn) P2(R1,R2,Rn) indicates that you cycled
the tray of parts one time, but measured each part more than once.

Finally, click on the OK button to generate the report.

Ver 5.5 52
ULTRAVIM APPLICATION MANUAL

An example report is shown below. The top section of the report shows the values that
were used to calculate the Repeatability & Reproducibility.

Group Average Ranges


Range Group A (RA)
Range Group B (RB)
Range Group C (RC)

These are the average ranges for each of the three groups. For example, Range
Group A (RA) is the average range of Run 1, Run 2, and Run 3 for all 10 parts.
Range Group B is the average range of Run 4, Run 5, and Run 6 for all 10 parts.
Range Group C is the average range of Run 7, Run 8, and Run 9 for all 10 parts.

Ver 5.5 53
ULTRAVIM APPLICATION MANUAL

Average Range (RX)


For three groups as shown in the example, the average range is the average of
Range Group A, Range Group B, and Range Group C.

RX = (RA + RB + RC)/3

Range of Averages (RY)


To calculate the Range of Average, the average measurement for all the parts in
each group must be calculated. For example, assume the average measurement
for groups A, B, and C are 3.60, 3.69, and 3.65. The calculation for RY is shown
below:

Average A = 3.60
Average B = 3.69
Average C = 3.65
RY = Max(A,B,C) – MIN(A,B,C)
= 3.69 – 3.60
= 0.09

Repeatability (EV)
Repeatability shows the variation when measuring the same part several times.
It is calculated by multiplying the statistical constant K1 times the average range.

EV = K1*RX
= 3.55*RX

Ver 5.5 54
ULTRAVIM APPLICATION MANUAL

Reproducibility (AV)
Reproducibility shows the variation between groups A, B, and C. Often a
different operator is used for each group to check the reproducibility. Also,
systems are sometimes calibrated between groups to check the reproducibility
of the calibration. The formula for reproducibility is shown below.

AV = sqrt(K2*K2*RY*RY – EV*EV/N)

Combined R&R (RR)


The Combined R&R shows the effects of both repeatability and reproducibility.
The relationship of repeatibility, reproducibility, and R&R is similar to the sides
of a right triangle. The formula for R&R is shown below.

RR = sqrt(EV*EV + AV*AV)

Ver 5.5 55
ULTRAVIM APPLICATION MANUAL

7. Calibration
This chapter describes how to calibrate the UltraVim system. Because the UltraVim has
no moving parts, you do not have to calibrate often. It is recommended that you calibrate
the first time you setup the machine, any time you move the machine, and one time each
year. You may also want to calibrate the system if you think there are any problems. It is
a good way to verify the basic operations of the system.

7.1 System Calibration


Exit the UltraVim software by entering
the exit password. From the main command
bar, click on the Calibrate button.

When you first start the calibration software, the Calibrate and Options buttons will be
grayed out. If you enter password level 2, the Calibrate button will become active. If you
enter password level 3, the Options button will become active. The spreadsheet on the
left side of the screen shows the calibration log. The result, values, units, and date are
shown. The system must calibrate to a value 0.06 mils or less to pass. Any value greater
than this number will cause a “Fail” result.

Ver 5.5 56
ULTRAVIM APPLICATION MANUAL

If you click on the “?” button, the system will perform a short calibration to calculate the
field of view. If you click on the image, the system will turn on the lights for a short
period of time.

Before you can calibrate the system, you must install the calibration reticle and the
calibration diffuser that came in the UltraVim toolkit. Make sure the reticle is clean and is
seated properly. Assemble the calibration diffuser as shown in the diagram above, and
place it on the calibration reticle. After you have installed the reticle and diffuser, click
on the image to test the installation. You should be able to see the black dots clearly, and
the background should be a smooth gray color.

After you have verified that the image is correct, click on the Calibrate button. The
software will acquire an image, then find all the dots on the screen. The blue bar at the
top of the screen indicates the progress.

As the system calibrates, the X Error and Y Error will become smaller. After the
software has acquired 16 images, the calibration will complete. If both the X Error and Y
Error are less than 0.06 mils, the calibration will pass and the results will be saved.

Ver 5.5 57
ULTRAVIM APPLICATION MANUAL

7.2 What is it Doing?


The calibration is using the NIST traceable calibration reticle do the following:

z Find the pixel scale factor


z Calculate lens distortions
z Map out non-linearity

An example of a map of the non-linear in the system is shown below. All lenses have
these distortions to some degree. The calibration using a NIST traceable calibration
reticle with hundreds of calibration points is critical to the accuracy of the system.

This map is created in the following way:


1. Find the center of each dot.
2. Calculate a calibration map.
3. Find the center of each dot using the calibration map.
4. Report the errors from step 3.
5. Add the new centers to the average centers.
6. Repeat steps 3-5 15 more times.

Ver 5.5 58
ULTRAVIM APPLICATION MANUAL

Note that the errors reported in step 4 show the 3 Sigma distances from the measured
centers of the dots to the known NIST centers of the dots. The average 3 Sigma error
value can be up to 0.06 mils. If the value is greater than 0.06 mils, the calibration will not
pass.

7.3 Options
If you click on the Options button, the screen below will be shown. The screen should
only be used the very first time the UltraVim is installed in the host. It shows the
relationship of the part to the inspection reticle.

The default setup is A, and you should try to install the UltraVim so this is the way the
parts are oriented on the system. If you cannot do this, you may changed the orientation
to match the orientation of the actual part as it is inspected on the system.

Ver 5.5 59
ULTRAVIM APPLICATION MANUAL

8. Managing Files
To manage your UltraVim files, exit the software by entering
the exit password. Then click on the Files icon on the main
command bar to start File Manager. You will need to enter
password level 3 to start the program. For on-line help,
press the F1 key.

8.1 What is File Manager?


File Manager is a tool you can use to organize your files and directories. You can use File
Manager to create and remove directories; move, copy, and delete files; connect to
directories shared on the network; share directories; secure files and directories; and
perform other disk, directory, and file management tasks.

In File Manager, your files and directories are displayed in a directory window. The
directory window is split: the left half displays the directory tree; the right half displays
the contents of the current directory. When you select a different directory in the directory
tree, the contents of that directory are displayed in the right half of the window.

In the directory window, each filename has an icon next to it, graphically indicating what
kind of file it is.

Directories.

Shared directories. These are directories users can connect to on the network.

Program files, PIFs, and batch files. Their default filename extensions are
.EXE, .COM, .PIF, and .BAT. These files start applications.

Ver 5.5 60
ULTRAVIM APPLICATION MANUAL

Document files. These files are associated with applications. When you choose
a document file, the application starts and opens the file.

System or hidden files. These files have system or hidden attributes.

All other files.

File Manager displays a toolbar and drivebar below the menu bar. The toolbar provides
quick access to File Manager commands through buttons. The drivebar displays icons that
represent available drives, including hard disk drives, floppy disk drives, network drives,
and CD-ROM drives. You can change to a different drive by selecting its drive icon.

8.2 Main Screen


From the main screen below, note the following items.
1. Menu at the top of the screen.
2. Drives A, C, D, E, and F.
3. Directory list to left of screen.
4. File list to the right of screen.
5. Drive space (657 MB Free) at bottom of the screen.

Ver 5.5 61
ULTRAVIM APPLICATION MANUAL

To change drives, click on a different drive. For example, if you click on the D: drive, the
screen will change to the screen below. At the bottom of the screen you can see that the
D: drive has 653 MB free.

8.3 Copy Command


From the main screen click on change the directory to D:\UVIM\Files by clicking on the
directory folders on the left side of the screen.

Ver 5.5 62
ULTRAVIM APPLICATION MANUAL

Now click on the “File” menu, then click on “Copy”. Enter A: in the “To” edit box.
Then insert a floppy disk in the A: drive and click OK. The program will copy the
contents of this directory to the A: drive. You may want to back up your D:\UVIM\Files
and D:\UVIM\Parts directories in this way.

8.4 Delete Command


File Manager can also delete files and directories. Make sure you only give system
administrators the password for level 3. Never delete any files on the C:\ drive, or the
D:\UVIM\Files directory.

To delete a file or directory, simply select it in the directory or file list then press the
delete key. You can also choose delete from the File menu. In the screen below, pressing
the delete key would delete the D:\UVIM\Data directory. Without this directory, the
system will not run correctly. Any time you use File Manager, you must be very careful
not to delete any required files or directories.

Ver 5.5 63
ULTRAVIM APPLICATION MANUAL

9. UltraMark Module
This chapter describes how to install and operate the UltraMark inspection module. This
module requires additional software, framegrabber board, and a CCD camera.

9.1 Hardware
The list below describes all the major hardware components of the UltraMark system and
notes on installation.

Camera The camera has a resolution of 640x480 and should be mounted


directly above the part. This should be in a place where the part
comes to a stop with a tolerance of +/- 20 mils.

Lens The lens should be connected to the camera.

Camera Cable The split end of the camera cable should be connected to the
power plug on the computer, and the BNC plug on the
framegrabber board. The single end of the cable should be
connected to the camera.

9.2 Startup
After the UltraMark module has been installed, a command button will appear at the
bottom of the UltraVim main screen. You can click on this button at any time to display
the UltraMark main screen.

To get back to the UltraVim main screen, you can click on the UltraVim command button
at the bottom of the UltraMark screen.

Ver 5.5 64
ULTRAVIM APPLICATION MANUAL

9.3 Main Screen


The main screen of the UltraMark module is shown below. The following commands are
available at the top of the screen.

Select Part Shows a list of predefined part files that can be selected.

Learn Mark Finds the characters in the image and saves them in a template.

Update Re-trains the updateable searches on the mark.

Inspect Mark Compares the characters in the image to the template and reports
Pass or Fail.

Options Shows the program options.

Maintenance Allows the user to edit or create part files.

Passwords Lets the user exit the program, or change password level.

Ver 5.5 65
ULTRAVIM APPLICATION MANUAL

Camera Icon This button shows if the camera is in live mode. You
can toggle between modes by clicking on this button.

The camera is in live mode, click to freeze image.

The camera is frozen, click for live mode.

Lot Summary The Lot Summary window shows the results of the current lot.
Pass The number of parts that have passed.
Fail The number of parts that have failed.
Total The total number of parts inspected.

Part Summary The Part Summary window shows the results of the last part.
Result The result of the last inspection.
Pin1 The result of the last pin1 inspection.
Contrast The average contrast of the mark.
Min Corr The worst correlation value on the mark.
Ave Corr The average correlation value on the mark.
Splatter The number of excess white pixels in the image.
X Pos The X position of the mark in pixels.
Y Pos The Y position of the mark in pixels.
Angle The angle of the mark.

Minimize Icon This button minimizes the screen to just a small image. To enlarge
the image again, double click on it.

Ver 5.5 66
ULTRAVIM APPLICATION MANUAL

9.4 Select Part


When you select a part, the default values from that part file will be stored in memory.
These include the Region Of Interest (ROI), the minimum character size, and the
correlation tolerance. The Resume button will restore the last Pass and Fail totals for the
inspection of the selected part.

9.5 Learning the Mark


After a part has been placed below the camera, the system is ready to learn the mark.
When this is done, a template is stored in memory that is used to compare with other
parts. The first part must have a mark that is the correct mark, but it does not have to be a
perfect mark because the software can learn from up to twenty parts. The average of all
the parts is used to create an ideal template.

After you have selected a part file, a default Region of Interest will be selected. You may
want to change the region of interest to closely outline the characters on the part. To do
this, follow the steps below:

Ver 5.5 67
ULTRAVIM APPLICATION MANUAL

Setting the Region of Interest

1. Click on the image to acquire an image.

2. Click once in the upper-left corner of the mark and hold the mouse button down.
For the best results, click as close to the characters as you can.

3. Hold the mouse down and move to the lower-right corner of the mark. Let go
of the mouse button when the dotted rectangle is in the correct position.

4. Click on the “Learn Mark” button to find the characters in the region of interest.
In the example below, the software found twelve characters.

5. The software is now ready to start inspecting.

Ver 5.5 68
ULTRAVIM APPLICATION MANUAL

9.6 Inspection Results


The blue boxes are called references. The software finds these first in order to calculate
the expected positions of all the other characters. If the part is rotated or misplaced, this
will speed up the search for all the characters.

In the example below, part of the “S” in the word “SAMPLE” is missing. The software
can only find a match of 27% and the character fails. A typical correlation tolerance used
is 70%.

The Lot Summary shows the results of the current lot. This
includes the total number of parts that have passed and the
number of parts that have failed.

The Part Summary shows the inspection results for the last
part inspected. This summary only shows the
measurements that have been selected in the part file. Note
that if none of the searches or characters are defined as
Pin1, the result for Pin1 will always show Pass.

Ver 5.5 69
ULTRAVIM APPLICATION MANUAL

After the inspection is complete, the user can click on the Data button to view a Mark
Summary report.

This report shows the number of parts that have passed and failed the inspection
tolerances. The report also shows the yeild for each inspection item and the minimum,
average, and maximum values. Results for each individual search area are also shown

Ver 5.5 70
ULTRAVIM APPLICATION MANUAL

9.7 Editing Characters


If you click inside a character, the dialog below will be shown. This screen will let you
change the parameters of a character or a search box.

Character Type The character can be set as NORMAL or REFERENCE.

Report As The reporting can be set to MARK or PIN1. If this is set to PIN1,
the software will set the B line low if the character fails.

Updatable This lets the software know if a search can be updated after the
initial Learn Mark is pressed by the user.

Search Range This tells the software how far to search for the character.

Search Color This tells the software the color of the mark and background.

Threshold This is the threshold used when the software learns the mark.
Setting this to LOW can help when characters run into each other.
Setting this to HIGH can help find faint characters.

Ver 5.5 71
ULTRAVIM APPLICATION MANUAL

9.8 Passwords
Use the Passwords dialog box to change the user level, change passwords, or exit the
program.

Default Passwords
2 Password level 2 enables the “Options” button.
Users can create files, but not delete them.

3 Password level 3 enables the "Delete" button.

Ex This is the exit password. It exits the program.

Admin This is the administrator password. It shows the following dialog.

To change a password, enter the old password in the first text box. Then enter the new
password in the next two text boxes. When this is done correctly, the “OK” button will
become enabled. For example, to change the supervisor password from “2” to “SUPER”
enter the following:

Ver 5.5 72
ULTRAVIM APPLICATION MANUAL

Old Password: 2
New Password: SUPER
Re-Enter New: SUPER

Then click the “OK” button to complete the change.

9.9 Options

Use the Options dialog box to set the default settings for the program, or to save and
image. From this screen you can change the default language to English, Japanese, or
Chinese. If you are in password level 4, you can select the camera and output lines that
are used by the software. The normal output lines used by the mark inspection prgoram
are REQ2. This means that the software will respond to input request line A1, and will
acknowledge the request be setting output line A2. The result lines set will be B2 and
B3. This is shown in the dialog as REQ2 (A1 -–A2B2B3).

Ver 5.5 73
ULTRAVIM APPLICATION MANUAL

9.10 Maintenance
The maintenance screen lets the user edit, create, or delete part files. The part file is
described below.

File
Enter the file name for the part. The part files are saved in the D:\UVIM\Parts directory
and have a *.MRK file extension.

Description
The user can enter additional information in the description field. This text is shown
when the Select Part screen is displayed.

Ver 5.5 74
ULTRAVIM APPLICATION MANUAL

Setup – Learn From


This setting tells the program how many parts to average to create the template. For
example, if you set the Learn Sample Size to 10, then 10 parts will be averaged together
to create the template. Note that these parts will still be inspected by the program, and
only parts that Pass will be used to create the template.

Setup – References
The references can be set up for GLOBAL SEARCH or LOCAL SEARCH. This tells the
software how to use the references. For LOCAL SEARCH the software will search for
each reference as if it were independant from the other references. This could be used if
the software is looking at multiple parts, for example.

Setup – Calculation
This parameter tells the software how to calculate the Average Correlation. If
AVERAGE CORR is selected the software will calculate the average of all items in the
search box. If MIN OF 5 is selected, for example, the software will calculate the average
from the worst five correlations.

Setup – Rotation
With this parameter, you can turn on the test for rotated parts. If TEST180 is selected the
software will test the image rotated at 180 degrees if it fails at 0 degrees. If the image
passes after it has been rotated, the Pin1 inspection will be recorded as a fail.

Setup – Min Char Size


This parameter sets the minimum character size for CX and CY allowed when the user
Learns the mark. If only one row of characters is selected in the search window, you can
set this to AUTO. The AUTO settings will make all the characters the same height and a

Ver 5.5 75
ULTRAVIM APPLICATION MANUAL

Setup – Max Char Size


This parameter sets the maximum character size for CX and CY allowed when the user
Learns the mark. If only one row of characters is selected in the search window, you can
set this to AUTO. The AUTO settings will make all the characters the same height and a

Tolerances – Contrast
This parameter sets the tolerance for the contrast of the part. If the contrast falls below
this level, the part will fail. The calculation for contrast is the minimum of 100% or 5.0
times the standard deviation of the pixels in the search area.

Tolerances – Correlation
The correlation tolerance is the most important setting. This is the primary method of
passing or failing the mark. If minimum correlation value for any character is below this
setting, the part will fail.

Tolerances – Average
The average correlation tolerance sets the minimum acceptable value for average
correlation. There are several methods used to calculate the average value. The
calculation method is set in the Setup – Calculation section.

Tolerances – Splatter
The Splatter is the number of white ink spots that are found on the part. The software
looks for ink splatter in any area that does not contain a character. The Search – Splatter
parameter must also be turned on.

Tolerances – X Position
This parameter sets the allowable number of pixels that a mark can be from the trained
position. If the found position is greater than this value the part will fail.

Ver 5.5 76
ULTRAVIM APPLICATION MANUAL

Tolerances – Y Position
This parameter sets the allowable number of pixels that a mark can be from the trained
position. If the found position is greater than this value the part will fail.

Tolerances – Rotation
The rotation sets the allowable rotation of the mark in degrees. If the angle of the mark is
greater than this setting, it will fail.

Search – Enabled
For a search to affect the results it must first be set to enabled. The software will skip any
search that is not enabled. Drawing a new search on the image with this mouse will
automatically set that search to be enabled.

Search – X1..Y2
These parameters set the Region of Interest for the search. This region is only used when
the user learns the mark with the Learn button, or updates the mark with the Update
button. The software can find characters that are outside the search if they are in the
allowable range and time allocated.

Search – Part
The part sets what part the search is used for. If the software is set up to test multiple
parts, the user must set this parameter. If the user is only testing one part at a time, this
parameter will be set to PART 1.

Ver 5.5 77
ULTRAVIM APPLICATION MANUAL

Search – Type
This attribute tells the software how to learn the mark. If it is set to CHARACTERS the
software will look for any character that is completely inside the search area, is larger
than the minimum character size allowed, and is smaller than the maximum character
size allowed. If this attribute is set to LOGO/PIN1 the software will use the entire search
area as one character.

Search – Fail
This parameter tells the software what type of failure the search will report. If it is set to
MARK, the A line will be set on the digital IO. If it is set to Pin1, the B line will be set
on the digital IO.

Search – Updateable
This attribute lets the software know if a search can be updated by the user during a lot
inspection. If there are any updateable search areas, the Learn button will display Update
after the user clicks on it the first time. If there are no areas that can be updated, the
Learn button will become disabled.

Search – Reference
The references can speed up a search because the help the software determine the general
position of the mark. The reference can be set to FIRST, LAST, or BOTH. A user can
manually change the references by clicking on a character in the image after the mark has
been learned.

Search – Splatter
The splatter attribute defaults to NO TEST because this inspection can add over 100ms to
the total inspection time. If it is set to AUTOMATIC the software will calculate a
threshold value and search the entire area for ink splatter. A manual threshold can also be
set.

Ver 5.5 78
ULTRAVIM APPLICATION MANUAL

Search – Range
The Search Range tells the software how many pixels it can look for a character from the
expected position. Setting a higher number here will find characters that are misplaced,
but will slow down the search.

Search – Timout
This parameter tells the software how long it can search for failing characters. If the time
is greater than this setting, the software will break out of the search and report the best
match that it could find.

Search – Speed
The Search Speed is how fast the software looks for the object. To speed up the search,
larger search steps are taken. For a large object such as a logo, it may help to set the
speed to VERY FAST.

Search – Color
This attribute describes the color of the mark and the background. The default is WHITE
ON BLACK. If this is not set correctly, the Learn function will not find the characters
correctly.

Search – Threshold
The Threshold is used by the software to find the characters when the user clicks on the
Learn button. Setting this to LOW can help find characters that run into each other.
Setting this to HIGH can help the software find faint characters. The AUTOMATIC
setting will work for most parts.

Search – Sensitivity
This parameter adjust the sensitivity of the correlation. Setting it to LOW will give a
higher correlation result. You may want to set a logo to LOW, for example.

Ver 5.5 79
ULTRAVIM APPLICATION MANUAL

9.11 Host Interface

1 3
INSPECT

2 5
BUSY

4
RESULT

ORIENTATION

1. The host sets the INSPECT line high to request an inspection.

2. The software sets the BUSY line high and acquires an image.

3. The host acknowledges the busy line by setting the INSPECT line low.

4. The software completes the inspection and sets the result and orientation lines.

5. The software sets the busy line low, letting the host know the results are ready.
If the INSPECT line is not low at this point, the software will time out after
3 seconds, and an error will be shown on the screen.

Ver 5.5 80
ULTRAVIM APPLICATION MANUAL

To start an inspection, set the following lines on Connector 1:

Pin ID Type Description Set To


A0 Input Request 1 High (1)
A1 Input Low (0)
A2 Input Low (0)
A3 Input Low (0)
A4 Input Command ID High (1)
A5 Input Command ID High (1)
A6 Input Command ID Low (0)
A7 Input Command ID Low (0)

To read the results, check the following lines on Connector 2:

Pin ID Type Description


A0 Output Busy
A1 Output Acknowledge
B0 Output Mark Result
B1 Output Mark Result
B2 Output Orientation Result
B3 Output Orientation Result

The mark inspection result is:

B1B0 = 00 Invalid
B1B0 = 10 Fail
B1B0 = 01 Rework
B1B0 = 11 Pass

The orientation result is:

B3B2 = 00 Pass
B1B0 = 10 Fail

Ver 5.5 81
ULTRAVIM APPLICATION MANUAL

9.12 Troubleshooting

The “Learn Part” command cannot find any characters.


1. Make sure you have selected a region of interest around the characters.
2. Check the Min Char Size and Max Char Size.
3. Check the Search Color.

The software does not respond to the host inspect command.


1. Make sure the host icon shows that the software is in host mode.
2. Make sure the part has been learned and the “Inspect” button is active.
3. Use the “Digital Test” dialog to test the inspect line. You may need to
invert the line.

The software responds to the host inspect command, but then it says “Timed Out”.
1. The host must set the INSPECT line low after it detects that the busy line
is high. If the INSPECT line is not low within 3 seconds, the inspection
will time out.

The inspection is taking over 1 second.


1. You may have reference tolerance set too high.
2. The inspection may take longer while the system is learning.
3. Set the Search Range to a lower value.
4. Set the Search Timeout to a lower value.
5. Set the Speed to VERY HIGH.

The “Options” button and host icon are grayed out.


1. You have not entered the correct supervisor password.

Too many parts are passing.


1. Increase the Correlation Tolerance in Maintenance.
2. Set the Sensitivity to HIGH.

Too many parts are failing.


1. Decrease the Correlation Tolerance in Maintenance.
2. Increase the Learn From number.
3. Use more references.
4. Set the Speed to LOW.

The images look very noisy.


1. Make sure the light you are using is at a low angle. This will help the
background of the part look darker.

Ver 5.5 82
ULTRAVIM APPLICATION MANUAL

10. UltraLead Module


This chapter describes how to operate the UltraLead inspection module. This module
requires additional software, framegrabber board, and a CCD camera.

10.1 Main Screen


The main screen from the UltraLead program is shown below. As you can see, it looks
very similar to the UltraVim screen. Most of the screens are identical to the screens in
the UltraVim program. The biggest difference is that the user must draw a search area
around the tips of the leads so the software knows where to look for the part.

Ver 5.5 83
ULTRAVIM APPLICATION MANUAL

10.2 Setting the Search Area

After the part file has been loaded, the search area must be selected by the user. To do
this, the user can use the mouse to draw the search box on the image. The search box
should be close to all the tips of the leads on the part. Below are some examples of
search boxes that are drawn correctly and some that are not correct.

CORRECT TOO SMALL

OFF CENTER WRONG PART

Ver 5.5 84
ULTRAVIM APPLICATION MANUAL

10.3 Setting the Brightness

The image to the left shows the


correct brightness and contrast for
2D lead inspection. Note that the
leads are bright enough, while the
tape in the background is almost
black.

The image to the left is too bright.


The leads can be seen clearly, but the
background is a gray color and there
are reflections on the tape. The
background should be very dark, or
black.

The image to the left has a black


background, but the leads on the
bottom side are too dark. Note that
not all of the features on the leads
can be seen.

Ver 5.5 85
ULTRAVIM APPLICATION MANUAL

10.4 Options

Inspection Cycles The inspection cycles should be left at “NORMAL”. If you select
“Demo” the system will inspect the same part until you click on the
cancel button. Demo 1.0 inspects once per second, Demo 2.0
inspects once every two seconds, etc.

SPC Subgroup Size The SPC subgroup size shows how many values to average before
saving in the SPCSTAT.CSV file. It is best to set this number to 5
or 10. If you have large lot sizes, the SPC file can get very large.
Especially if this value is set to 1.

Machine Enter the machine serial number in this field.

Ver 5.5 86
ULTRAVIM APPLICATION MANUAL

Auto-Save If Auto-Save is checked, the system will automatically save data


on the E:\ drive. Do not check the “Part Summary", “Part
Statistics”, or "Image" unless you are performing a special study.
These files take up a lot of space and will fill your E:\ drive
quickly.

Auto-Delete If you turn on the Auto-Delete option, files on the E:\ drive
will automatically be deleted after a certain number of days.
Specify the number of days in the edit box to the right of
the Auto-Delete choice.

Graphics This determines if the graphics are shown. If you have a host
system that is very fast (above 10,000 uph) you should turn the
graphics off to speed up the system. If not, it is best to leave
graphics on.

Image You can use the save and load buttons to save or load TIF images.
If you have a part that looks strange, or think there is a problem
with your system, save the image and send it to customer support.

Setup The setup area of the options dialog is used to set the camera
and digital IO options. You must have password level 4 to
change these options.

Language Select the language you want displayed.

Ver 5.5 87
ULTRAVIM APPLICATION MANUAL

A. Adding a Printer

This chapter shows how to add a printer to the UltraVim system. Before you start the
steps in this chapter, make sure the printer has paper in it, is connected to the PRINTER
port on the UltraVim, and is plugged in.

A.1 Start Add Printer Wizard

First, exit the UltraVim software by entering the exit password.


Next, click on the “Computer” icon on the main command bar.

From the “My Computer” screen, double click on the “Printers” icon.

From the “Printers” screen, double click on “Add Printer”.

Ver 5.5 88
ULTRAVIM APPLICATION MANUAL

A.2 Add Printer Wizard

From the Printer Wizard screen, select “My Computer”, then click on Next.

Then click on “LPT1:” and click the Next button.

Ver 5.5 89
ULTRAVIM APPLICATION MANUAL

Click on the printer manufacturer in the list on the left of the screen, then select the
printer in the right list on the screen. If your printer is not shown, you need a floppy disk
with drivers on it. Insert the floppy disk in the A: drive, then click on “Have Disk” to
select the drivers. When you have selected the printer, click on Next.

Give the printer a name, and click on the Next button.

Ver 5.5 90
ULTRAVIM APPLICATION MANUAL

Now you can click on the Finish button. If you have installed the printer correctly, a test
page will print out.

A.3 Common Printers

Before you buy a printer for the UltraVim system, you should make sure it is compatible
with Windows NT. Windows NT has many default drivers for printers from Cannon,
Fujitsu, Hewlett Packard, NEC, and Okidata. Check with the printer manufacturer for
more details.

: Windows NT may not be able to find the default drivers. If you


see the screen below, change the G:\I386 to C:\I386 and click OK.

Ver 5.5 91
ULTRAVIM APPLICATION MANUAL

B. Installing a Network Interface Card


This chapter describes how to install the hardware and software for a Network Interface
Card. It is recommended that you purchase this option directly from Scanner
Technologies so the card can be installed when the system is being built.

B.1 Hardware

In this example a 3COM Etherlink XL PCI 3C900-Combo NIC is used. When you
select a network card, make sure it has Window NT 4.0 drivers that are available on a
floppy disk.

B.2 Hardware Installation

First, power down the UltraVim system and unplug the power cord. Then, remove the
cover and carefully pull the two 50-pin ribbon cables off the digital I/O board so you have
access to the network PCI slot.

If you have the small STC computer chassis, bend the mounting bracket on the Network
Interface Card as shown below. Remove the existing bracket (be careful to not drop the
mounting screw or nylon washer in the computer).

Install the network card in the slot labeled "Network Card". Make sure it is fully seated
in the PCI slot. Put the mounting screw and washer back in place to secure the card.
Finally, put the cover back on the UltraVim computer module.

Ver 5.5 92
ULTRAVIM APPLICATION MANUAL

B.3 Start Network Wizard

Exit the UltraVim software by entering the exit password.


Next, click on the “Computer” icon on the main command bar.

From the “My Computer” screen, double click on the “Control Panel” icon.

From the “Control Panel” screen, double click on “Network”.

Ver 5.5 93
ULTRAVIM APPLICATION MANUAL

When you click on "Network", you will be asked if you want to install Windows NT
Networking. Click "Yes" to start the Network Wizard.

B.4 Network Setup Wizard

Click "Next" on the first screen of the Setup Wizard to connect the computer to a
Network Adapter.

The next screen will let you search for a Network Adapter, or select from a list. You
should have a floppy disk with network drivers on it for your network card. Insert this
disk in the floppy drive now. If you purchased the 3COM 3C900 card, insert Setup Disk
2 in the floppy drive.

Ver 5.5 94
ULTRAVIM APPLICATION MANUAL

Click on "Select From List..." to get to the "Select Network Adapter" screen.

From the "Select Network Adapter" screen click on the "Have Disk..." button.

Make sure your driver disk is in the floppy drive, and click "OK" to load the driver list
from the A: drive.

Ver 5.5 95
ULTRAVIM APPLICATION MANUAL

Select the correct Network Adapter and click on the OK button.

The Network Adapter should now be displayed in the list shown below. Click "Next" to
go to the next screen.

Select the correct protocols for your network. If you are not sure, click on all three
selections as shown in the screen below. When you have selected the protocols, click on
the "Next" button.

Ver 5.5 96
ULTRAVIM APPLICATION MANUAL

The network services shown below should be selected by default. Click on the "Next"
button to move to the next screen.

Windows NT is now ready to install the components you selected. Click "Next" to start
the installation.

Windows NT will now copy some files from both your A: and C: drives. When you see
the screen below, click Continue. If you see a message saying that a file could not be
found, change the A:\ to C:\ and try again.

Ver 5.5 97
ULTRAVIM APPLICATION MANUAL

You will see a number of files being copied.

If you installed the TCP/IP protocol you will see the screen shown below. If you have a
DHCP server on your network click "Yes". If you are not sure, click "No".

If you installed the TCP/IP protocol you will be asked for an IP address for the computer.
Ask your System Administrator to give you this address. If you are not sure, you can
make up an address and change it later.

Ver 5.5 98
ULTRAVIM APPLICATION MANUAL

Now the Setup Wizard will install the network bindings. Click "Next" to continue. If the
Wizard cannot find a file, change the A:\ to C:\ and try again.

After the bindings are installed, you can click on the "Next" button to finish the
installation.

Ver 5.5 99
ULTRAVIM APPLICATION MANUAL

Enter the computer name and the workgroup. You may wish to enter the serial number of
your UltraVim system for the computer name.

Click on "Finish" to restart your computer and initialize the network. Make sure you
have connected the network cable to your network card before you restart the system.

Ver 5.5 100


ULTRAVIM APPLICATION MANUAL

After the computer restarts, you should not see any errors. If you see a message that says
"At least on service failed to start" your Network Card has not been installed correctly.

Start File Manager and select "Connect Network Drive" from the "Disk" directory. You
should now see a list of computers that are connected to your network. Use this screen to
map a drive to the computer. To map a printer to your computer, follow the directions in
Chapter 9, but select "Network Printer Server" instead of "My Computer.

Ver 5.5 101


ULTRAVIM APPLICATION MANUAL

C. Custom Lot Summary Reports


The UltraVim software has the ability to create custom Lot Summary reports. The user
can select to display any measurement and show its results such as averages, minimums,
or maximums. You can use the CTRL-ALT-F7 command to view and edit the custom
report file.

C.1 Creating a Custom Report

While you are in the UltraVim software, press CTRL-ALT-F7 to access the custom report
editor. The custom report must is saved in the D:\UVIM\Files\REPORT32.INI file. This
file is updated automatically as you make changes in the Custom Reports dialog.

To enable the custom report, click on "Enable Custom Report" in the dialog. Note that if
you click on "Leaded Parts" or "BGA Parts" the screen will change as it loads the data
from the REPORT32.INI file.

Ver 5.5 102


ULTRAVIM APPLICATION MANUAL

Up to 45 lines can be defined in your custom report. The following example shows a
custom report definition:

[CustomQFP]
Enabled=1
01=
02=
03=HEADR_RES
04=
05=TOTAL_RES
06=
07=
08=
09=HEADR_AVE
10=
11=COPLQ_AVE
12=TPOFF_AVE
13=LSKEW_AVE
14=BLEAD_AVE
15=WIDTH_AVE
16=STOFF_AVE
17=PITCH_AVE
18=TTT13_AVE
19=TTT24_AVE
20=
21=
22=
23=Scanner Technologies
24=Minneapolis, MN 55447
25=

Note that it is good to use blank lines to separate sections of the report. When you do
this, you can also click on "Enable Line Graphics" to have the software automatically
draw lines around the different sections you create.

You can add text to any line, but be aware that not all text will get automatically
translated into other languages. Make sure you use commas to separate your columns if
you add custom text.

Ver 5.5 103


ULTRAVIM APPLICATION MANUAL

C.2 Line Types


The following types of lines can be displayed in your custom report:

_MOM The min of min and max of max,cpk,ave,stdev


_AVE The average measurements for the lot
_MIN The minimum measurements for the lot
_MAX The maximum measurements for the lot
_CPK The process capability ratio
_RES The pass,rework, and fail results
_TOL The tolerances for each measurement

Note that some measurements, such as pitch, may not have a result or a tolerance value.
These line types must be combined with a variable type to create a custom line.

C.3 QFP Variables ( and PLCC )


The following variables can be used with a leaded device:
HEADR Header Line
COPLQ Coplanarity
TPOFF Tip Offset
TPERR Tip Error
LSKEW Lead Skew
BLEAD Bent Lead
WIDTH Lead Width
STOFF Standoff
PITCH Pitch
TTTIP Terminal Dimension
TTT13 Terminal Dimension (Side 1-3)
TTT24 Terminal Dimension (Side 2-4)
TOTAL Result totals

Ver 5.5 104


ULTRAVIM APPLICATION MANUAL

C.4 BGA Variables


The following variables can be used with a BGA device:
HEADR Header Line
COPLB Coplanarity
BDIAM Diameter
BHITE Ball Standoff
XDIAM X Diameter
YDIAM Y Diameter
XPERR X Error
YPERR Y Error
RPERR R Error
BPTCH Pitch
XPTCH X Pitch
YPTCH Y Pitch
BRWID BGA Board Width
BQUAL Ball Quality
BWARP BGA Board Warpage
TOTAL Result totals

C.5 Text Lines


Text lines may be entered on any line. Multiple lines of text will be displayed with a box
around them. It is important to have a space between the text and variable lines so the
box has room to be drawn. If you use the HEADR_ variable, the following text will
automatically be added to the report:
HEADR_RES RESULTS,PASS %,PASS,REWORK,FAIL,NF
HEADR_TOL TOLERANCES,NOMINAL,REWORK MIN,REWORK MAX,
FAIL MIN, FAIL MAX
HEADR_AVE AVERAGE,MIN,MAX,RANGE,AVE,STDEV
HEADR_MIN MIN VALUES,MIN,MAX,RANGE,AVE,STDEV
HEADR_MAX MAX VALUES,MIN,MAX,RANGE,AVE,STDEV
HEADR_MOM VALUES,MIN,MAX,RANGE,AVE,STDEV

Ver 5.5 105


ULTRAVIM APPLICATION MANUAL

D. Host Communications
This chapter describes the protocol required to communicate with the UltraVim system
using the digital I/O cables. When the UltraVim software starts, it is automatically
checking the digital I/O lines for commands from the host. This lets the user inspect part
in manual mode, or in host mode without changing any of the settings.

D.1 Physical Connections

There are two OPTO22 50-pin connectors on the UltraVim PC. They are labeled "Input"
and "Output". The input connector used 16 lines for commands and data input, and the
output connector uses 24 lines for results, and other outputs.

The figure below shows the layout of the connectors. Each pair of pins carries a signal
and is labeled A0 – C7. Note that C0 – C7 are not used on the input connector.

Ground 50 z z 49 +5V
Ground 48 z z 47 A0
Ground 46 z z 45 A1
Ground 44 z z 43 A2
Ground 42 z z 41 A3
Ground 40 z z 39 A4
Ground 38 z z 37 A5
Ground 36 z z 35 A6
Ground 34 z z 33 A7
Ground 32 z z 31 B0
Ground 30 z z 29 B1
Ground 28 z z 27 B2
Ground 26 z z 25 B3
Ground 24 z z 23 B4
Ground 22 z z 21 B5
Ground 20 z z 19 B6
Ground 18 z z 17 B7
Ground 16 z z 15 C0
Ground 14 z z 13 C1
Ground 12 z z 11 C2
Ground 10 z z 9 C3
Ground 8 z z 7 C4
Ground 6 z z 5 C5
Ground 4 z z 3 C6
Ground 2 z z 1 C7

D.2 Testing the Connections

From the UltraVim software, press the following keys at the same time to display the
Digital I/O Test dialog:

CTRL – ALT – F4

This will show the status of the 16 input lines and the 24 output lines. Note that the
UltraVim will not process any host commands while this dialog is being displayed. You

Ver 5.5 106


ULTRAVIM APPLICATION MANUAL

can test individual output lines by clicking on the “0/1” button next to the line you wish
to test. Also, you can invert the input or output lines by clicking on the “Invert Signals”
checkbox.

D.3 Description of the Signals


INPUT SIGNALS OUTPUT SIGNALS
Pin Group Name Pin Group Name
47 A0 REQ 47 A0 BUSY
45 A1 INP 45 A1 ACK
43 A2 43 A2 ERROR
41 A3 41 A3 ERR1
39 A4 CMD1 39 A4 ERR2
37 A5 CMD2 37 A5 ERR3
35 A6 CMD3 35 A6 MODE
33 A7 CMD4 33 A7
31 B0 DATA1 31 B0 RESULT1
29 B1 DATA2 29 B1 RESULT2
27 B2 DATA3 27 B2 XNEG
25 B3 DATA4 25 B3 X1
23 B4 DATA5 23 B4 X2
21 B5 DATA6 21 B5 X3
19 B6 DATA7 19 B6 X4
17 B7 DATA8 17 B7 X5
15 C0 X6
13 C1 YNEG
11 C2 Y1
9 C3 Y2
7 C4 Y3
5 C5 Y4
3 C6 Y5
1 C7 Y6

Ver 5.5 107


ULTRAVIM APPLICATION MANUAL

D.4 Input Commands

ID A7 A6 A5 A4 Command
0 0 0 0 0 Load Part
1 0 0 0 1 Inspect Part
2 0 0 1 0 Inspect Part
3 0 0 1 1 Inspect Part
4 0 1 0 0 Inspect Mark
5 0 1 0 1 Inspect Mark
6 0 1 1 0 Inspect Dambar
7 0 1 1 1 Inspect Lead Frame
8 1 0 0 0
9 1 0 0 1
10 1 0 1 0 Set Autosave On
11 1 0 1 1 Set Autosave Off
12 1 1 0 0 Get Part Angle
13 1 1 0 1
14 1 1 1 0 Turn Lights On
15 1 1 1 1 Clear Line

D.5 Load Part

When the "Load Part" command is sent to the UltraVim, the file name will be created
from the input data lines B7 – B0 (B7B6B5B4B3B2B1B0). For example, to load the file
"0000001.PAR" you should set the data lines B7 – B1 to 0 and data line B0 to 1. Note
that you cannot have a file named "0000001.PAR" and a file named "00000001.BGA" on
the same system since the UltraVim has no way of telling the file extension from the eight
data lines.

D.6 Example Load Part Code

Use the C code below as an example of how to load a part file from the host. The code
will set the data bits for part file "00000001", then send the command to load the file.
Assume the following:

z SetBit sets the bits on the Input connector


z GetBit reads the bits on the Output connector
z SetTimer sets a countdown timer in milliseconds
z GetTimer returns the number of milliseconds left on timer

Ver 5.5 108


ULTRAVIM APPLICATION MANUAL

///////////////////////////////////////////////////////////////////
//
// Example C code to load part “00000001”
//
///////////////////////////////////////////////////////////////////
BOOL LoadPartExample()
{
// Check if the MODE bit is on
if (GetBit(A6)==0) return FALSE;

// Check if ACK bit is low


if (GetBit(A1)==1) return FALSE;

// Set the data bits to "00000001"


SetBit(B7,0);
SetBit(B6,0);
SetBit(B5,0);
SetBit(B4,0);
SetBit(B3,0);
SetBit(B2,0);
SetBit(B1,0);
SetBit(B0,1);

// Set the command bits to “0000” (Load Part)


SetBit(A7,0);
SetBit(A6,0);
SetBit(A5,0);
SetBit(A4,0);

// Set REQ bit high to send command


SetBit(A0,1);

// Wait for ACK to go high


SetTimer(3000);
while (GetBit(A1)==0)
{
if (GetTimer() < 1) return FALSE;
}

// Set REQ bit low to show host ACK


SetBit(A0,0);

// Wait for ACK to go low when UltraVim done


SetTimer(3000);
while (GetBit(A1)==1)
{
if (GetTimer() < 1) return FALSE;
}

// Check for errors


if (GetBit(A2)==1) return FALSE;

// Part file has loaded


return TRUE;
}

Ver 5.5 109


ULTRAVIM APPLICATION MANUAL

D.7 Error Codes


ID ERR3 ERR2 ERR1 Description
0 0 0 0 No Error
1 0 0 1 No File Loaded
2 0 1 0 Part Not Found
3 0 1 1 Not Host ACK
4 1 0 0 Wrong Lead/Ball Count
5 1 0 1
6 1 1 0
7 1 1 1

D.8 Result Codes

The output channels B1 and B0 show the results of the inspection. The four possibilities
are shown below:

Inspection Results
B1 B0 Result
0 0 Invalid
1 0 Failure
0 1 Rework
1 1 Pass

Ver 5.5 110


ULTRAVIM APPLICATION MANUAL

D.9 Timing Diagram

The general sequence for all commands is shown below:

1. The host sets the command id.


2. The host sets the REQ line high.
3. The UltraVim sets the ACK line high.
4. The host sets the REQ line low.
5. The UltraVim executes the command.
6. The UltraVim sets the ACK line low.
7. The host checks the error bit for errors.

The following diagram shows the general timing of the host communications to inspect a
part with the UltraVim. Assume that a part file has already been loaded.

1 3
Host REQ

2
UltraVim ACK

4 5
UltraVim BUSY

1. The host must hold a part over the reticle, set the command bits (A4-A7)
to the Inspect command, and send the REQ bit high to start the inspection.

2. As soon as the UltraVim sees the REQ bit high, it sets the ACK bit high
and starts the image acquisition.

3. The host acknowledges the start of inspection by setting the REQ bit low.
The REQ line must be set low as soon as the ACK line goes high.

4. When the image has been acquired the UltraVim sets the BUSY line high.
The host may move the part away from the reticle when this line goes high.

5. When the results have been computed, the UltraVim sets the result bits,
then sets the ACK and BUSY lines low. This tells the host that the
results are ready.

Ver 5.5 111


ULTRAVIM APPLICATION MANUAL

D.10 Example Inspect Part Code

Use the C code below as an example of how to inspect a part from the host. Assume the
following:

z SetBit sets the bits on the Input connector


z GetBit reads the bits on the Output connector
z SetTimer sets a countdown timer in milliseconds
z GetTimer returns the number of milliseconds left on timer
z A part file has already been loaded successfully
z The part is being held above the inspection reticle
z HostMovePartOut moves the part away from the reticle
///////////////////////////////////////////////////////////////////
//
// Example C code to turn lights on
//
///////////////////////////////////////////////////////////////////
BOOL TurnLightsOn()
{
// Check if ACK bit is low
if (GetBit(A1)==1) return FALSE;

// Set the command bits to “1110” (Lights On)


SetBit(A7,1);
SetBit(A6,1);
SetBit(A5,1);
SetBit(A4,0);

// Set REQ bit high to send command


SetBit(A0,1);

// Wait for ACK to go high


SetTimer(3000);
while (GetBit(A1)==0)
{
if (GetTimer() < 1) return FALSE;
}

// Set REQ bit low to show host ACK


SetBit(A0,0);

return TRUE;
}

Ver 5.5 112


ULTRAVIM APPLICATION MANUAL

///////////////////////////////////////////////////////////////////
//
// Example C code to inspect a part
//
///////////////////////////////////////////////////////////////////
BOOL InspectPartExample()
{
// Check if the MODE bit is on
if (GetBit(A6)==0) return FALSE;

// Check if ACK bit is low


if (GetBit(A1)==1) return FALSE;

// Set the command bits to “0001” (Inspect Part)


SetBit(A7,0);
SetBit(A6,0);
SetBit(A5,0);
SetBit(A4,1);

// Set REQ bit high to send command


SetBit(A0,1);

// Wait for ACK to go high


SetTimer(3000);
while (GetBit(A1)==0)
{
if (GetTimer() < 1) return FALSE;
}

// Set REQ bit low to show host ACK


SetBit(A0,0);

// Wait for BUSY bit to go high (image acquired)


SetTimer(3000);
while (GetBit(A0)==1)
{
if (GetTimer() < 1) return FALSE;
}

// Move the part away from reticle


HostMovePartOut();

// Wait for ACK to go low when UltraVim done


SetTimer(3000);
while (GetBit(A1)==1)
{
if (GetTimer() < 1) return FALSE;
}

// Check for errors


if (GetBit(A2)==1) return FALSE;

// Inspection complete, host must check results


return TRUE;
}
D.11 Part Position

Ver 5.5 113


ULTRAVIM APPLICATION MANUAL

After an inspection is complete, the UltraVim returns the part results and its position over
the center of the reticle. The channels B2 – C7 contain the X,Y position information.
The following example code shows how to calculate the position in mils.

///////////////////////////////////////////////////////////////////
//
// Example C code to read part position from reticle center
//
///////////////////////////////////////////////////////////////////
int GetPositionX()
{
int nPos = 0;

if (GetBit(B3)==1) nPos += 32;


if (GetBit(B4)==1) nPos += 16;
if (GetBit(B5)==1) nPos += 8;
if (GetBit(B6)==1) nPos += 4;
if (GetBit(B7)==1) nPos += 2;
if (GetBit(C0)==1) nPos += 1;
if (GetBit(B2)==1) nPos *= -1;

return nPos;
}

Ver 5.5 114


ULTRAVIM APPLICATION MANUAL

///////////////////////////////////////////////////////////////////
//
// Example C code to read part position from reticle center
//
///////////////////////////////////////////////////////////////////
int GetPositionY()
{
int nPos = 0;

if (GetBit(C2)==1) nPos += 32;


if (GetBit(C3)==1) nPos += 16;
if (GetBit(C4)==1) nPos += 8;
if (GetBit(C5)==1) nPos += 4;
if (GetBit(C6)==1) nPos += 2;
if (GetBit(C7)==1) nPos += 1;
if (GetBit(C1)==1) nPos *= -1;

return nPos;
}

The following diagram shows the coordinate system of the UltraVim in relation to the
reticle:

+Y

-X +X

-Y

Ver 5.5 115


ULTRAVIM APPLICATION MANUAL

D.12 Turn Lights On

The diagram below shows the general move sequence for the handler.

A. Move the handler above the reticle.


B. Move the part down to position.
C. When part is in place, send the inspect command.

When the inspect command is given to the UltraVim software, the lights are turned on
and the image is acquired. If you have a very high speed system, you can save about
50ms by sending the UltraVim software the command to turn on the lights (ID=14) before
the part is in place.

The new command sequence would be the following:

A. Send command to turn lights on, then move the handler above the reticle.
B. Move the part down to position.
C. When part is in place, send the inspect command.

A
B

Ver 5.5 116


ULTRAVIM APPLICATION MANUAL

D.13 Part Angle

After an inspection is complete, the UltraVim returns can report the part angle with
respect to the center of the reticle. To get this information, you must send the command
to get the angle by setting A7=1, A6=1, A5=0, and A4=0 (ID=12). After the command
has been set, set the request line high to report the angle in output channels C0 – C7.
This will report the angle up to +/- 12.7 degrees. The following example code shows how
to calculate the angle.

///////////////////////////////////////////////////////////////////
//
// Example C code to read part angle from reticle center
//
///////////////////////////////////////////////////////////////////
double GetAngle()
{
double dAngle = 0.0;

// Set the command bits to “1100” (Get Part Angle)


SetBit(A7,1);
SetBit(A6,1);
SetBit(A5,0);
SetBit(A4,0);

// Set REQ bit high to send command


SetBit(A0,1);

// Wait for ACK to go high


SetTimer(3000);
while (GetBit(A1)==0)
{
if (GetTimer() < 1) return FALSE;
}

// Set REQ bit low to show host ACK


SetBit(A0,0);

// Get the angle information


if (GetBit(C1)==1) dAngle += 6.4;
if (GetBit(C2)==1) dAngle += 3.2;
if (GetBit(C3)==1) dAngle += 1.6;
if (GetBit(C4)==1) dAngle += 0.8;
if (GetBit(C5)==1) dAngle += 0.4;
if (GetBit(C6)==1) dAngle += 0.2;
if (GetBit(C7)==1) dAngle += 0.1;
if (GetBit(C0)==1) dAngle *= -1.0;

return dAngle;
}

Ver 5.5 117


ULTRAVIM APPLICATION MANUAL

D.14 Connecting With Your System

The UVIM uses opto-couplers on it’s digital I/O signals to electricaly isolate the
UVIM and the customers equipment. This isolation requires a D.C. voltage source
to power the signals. If the customer does not have a voltage source available,
then the UVIM can be equipped with a DC to DC convertor whose +5vdc is
available on pin 49 and return (ground) on any even pin of the connectors. The
customer can use the voltage from these pins to power the signals that are wired
between the UVIM and their equipment. If the customers equipment already has a
voltage source of 5vdc to 32vdc @ ½ amp then the UVIM can be configured with
out the DC to DC convertor and the customer can connect their positive voltage to
pin 49 and their ground to any even pin of the connectors. There are three basic
configurations in which a customer can wire their signals to the optically isolated
signals on the UVIM digital I/O connector.

Customer Connects OPTOT-22 Style Boards to UVIM Digital I/O Connector

The customer can simply connect a 50 pin ribbon cable between the UVIM digital
I/O connectors and two 24 position OPTO-22 boards. The ribbon cable should
have standard 0.1” pitch keyed connectors at each end to ensure pin #1 of the
UVIM connector gets connect to pin #1 of the OPTO-22 board. The customer
should then follow the directions that came with the OPTO-22 board to wire their
signals to the appropriate UVIM signal. To power the OPTO-22 modules the
UVIM needs to be configured with the DC to DC convertor.

U V IM In p u t O u tp u t

5 0 C o n d u c to r 5 0 C o n d u c to r
R i b b o n C a b le O P T O - 2 2 S t y le R i b b o n C a b le
B o a rd s

W ir in g f r o m W ir in g f r o m
C u s to m er O u tp u t C u s to m er In p u t

Customer wires Directly to UVIM Digital I/O Connector, but They Have No
Isolation Power Supply

If the customer wishes to wire directly to the UVIM, but has no isolating power
supply available, they can order the UVIM with a DC to DC convertor. The DC to

Ver 5.5 118


ULTRAVIM APPLICATION MANUAL

DC convertor provides a +5VDC on pin 49 of both connectors and a return


(ground) on all the even numbered pins. Illustrated below is the internal
configuration of the UVIM to aide the customer in determining how they will
connect their signals to the UVIM.

Typical UVIM I/O With DC to DC Convertor

UVIM Customers
Equipment

UVIM Input
Connector

CURRENT
LIMITER

+5VDC
50 49 ISOLATED
UVIM Input
Ch l0
Logic
47 A0
48

A1
46 45

Optical
I l ti

+5VDC
UVIM DC to DC
POWER CONVERTOR

Ground

OPTIONA
LPULL-UP +5VDC
RESISTO 50 49 ISOLATED
R

48 47 A0
UVIM
OChannel
t t
0 Logic 46 45
A1

Optical
I l ti
UVIM Output Connector

Ver 5.5 119


ULTRAVIM APPLICATION MANUAL

Customer wires Directly to UVIM Digital I/O Connector and They Have an
Isolation Power Supply

If the customer wishes to wire directly to the UVIM and they have a source of
5vdc to 32vdc @ ½ amp, they can order the UVIM without a DC to DC convertor.
The customer should wire the positive side of their supply to pin 49 of each
connector and the return (ground) side to any even pin on both connectors.
Illustrated below is the internal configuration of the UVIM to aide the customer in
determining how they will connect their signals to the UVIM.

Typical UVIM I/O Without DC to DC


Convertor

UVIM Customers
Equipment

UVIM
IConnecto
t

CURREN
TLIMITE
R

50 49
UVIM Input
Channel 0
Logic
48 47
A0

46 45
A1

Optical
I l ti

+5 -
32VDC Customer
Powe
Suppl
Groun
d

OPTIONAL
PULL-UP
RESISTOR 50 49

48 47
A0
UVIM Output
Channel 0
Logic
46 45
A1

Optical
I l ti
UVIM Output
C t

Ver 5.5 120


ULTRAVIM APPLICATION MANUAL

D.15 Electrical Specifications of Digital I/O Signals

The electrical specifications of the opto-couplers used on the UVIM is important


for those customers that will wire directly to the I/O connectors. As can be seen
from the previous two figures the input of the UVIM consists of an opto-
coupler’s LED whose anode is tied to the positive side of the isolating voltage
source. To signal the UVIM, the customer must ground the input (LED cathode)
of the UVIM. A current limitter protects the LED when the isolation voltage is in
the 5vdc to 32vdc range. The output of the UVIM is the opto-coupler’s transistor
whose emitter is tied to the ground side of the isolating supply. When a UVIM
output is active the transistor will be conducting (current sinking). If the customer
requires a voltage level output, pull up resistors (SIPS) can be installed on the
UVIM.

WARNING:
There is no current limiting on the UVIM output transistor, therefore it is
the customers responsibility to ensure that the load they connect they to the
UVIM output does not exceed the transistor ratings listed in the table below.

Absolute Maximum Ratings For Open Collector


Transistor
Symbols Parameters Units Ratings
VCEO Collector to Emitter V 50
Voltage
VECO Emitter to Collector V 7
Voltage
IC Collector Current mA 30
0 o
DPC/ c Power Dissipation mW/ C 1.5
Derating
Pc Power Dissipation mW 150

Ver 5.5 121


ULTRAVIM APPLICATION MANUAL

E. Asynchronous Host Communications


This chapter describes the protocol required to communicate asynchronously with the
UltraVim system using the digital I/O cables. When the UltraVim software starts, it is
automatically checking the digital I/O lines for commands from the host. This lets the
user inspect part in manual mode, or in host mode without changing any of the settings.

The asynchronous communications protocol differs slightly from the industry standard
communications described in Appendix D, but it offers the added flexibility of sending
commands to different cameras and software packages at the same time.

To set the protocol, make sure you select "Option 2" at the bottom of the digital IO dialog
box.

E.1 Physical Connections

There are two OPTO22 50-pin connectors on the UltraVim PC. They are labeled "Input"
and "Output". The input connector used 16 lines for commands and data input, and the
output connector uses 24 lines for results, and other outputs. The figure below shows the
layout of the connectors. Each pair of pins carries a signal and is labeled A0 – C7. Note
that C0 – C7 are not used on the input connector.

Ground 50 z z 49 +5V
Ground 48 z z 47 A0
Ground 46 z z 45 A1
Ground 44 z z 43 A2
Ground 42 z z 41 A3
Ground 40 z z 39 A4
Ground 38 z z 37 A5
Ground 36 z z 35 A6
Ground 34 z z 33 A7
Ground 32 z z 31 B0
Ground 30 z z 29 B1
Ground 28 z z 27 B2
Ground 26 z z 25 B3
Ground 24 z z 23 B4
Ground 22 z z 21 B5
Ground 20 z z 19 B6
Ground 18 z z 17 B7
Ground 16 z z 15 C0
Ground 14 z z 13 C1
Ground 12 z z 11 C2
Ground 10 z z 9 C3
Ground 8 z z 7 C4
Ground 6 z z 5 C5
Ground 4 z z 3 C6
Ground 2 z z 1 C7

Ver 5.5 122


ULTRAVIM APPLICATION MANUAL

E.2 Testing the Connections

From the UltraVim software, press the following keys at the same time to display the
Digital I/O Test dialog:
CTRL – ALT – F4

Make sure you select "Option 2" at the bottom of the dialog box to set the protocol. This
dialog will show the status of the 16 input lines and the 24 output lines. Note that the
UltraVim will not process any host commands while this dialog is being displayed. You
can test individual output lines by clicking on the “0/1” button next to the line you wish
to test. Also, you can invert the input or output lines by clicking on the “Invert Signals”
checkbox.

Ver 5.5 123


ULTRAVIM APPLICATION MANUAL

E.3 Description of the Signals


INPUT SIGNALS OUTPUT SIGNALS
Pin Group Name Pin Group Name
47 A0 REQ 47 A0 BUSY
45 A1 RQ2 45 A1 ACK
43 A2 RQ3 43 A2 AK2
41 A3 RQ4 41 A3 AK3
39 A4 CMD1 39 A4 AK4
37 A5 CMD2 37 A5 ERR1
35 A6 CMD3 35 A6 ERR2
33 A7 CMD4 33 A7 ERR3
31 B0 DTIN1 31 B0 RS1A
29 B1 DTIN2 29 B1 RS1B
27 B2 DTIN3 27 B2 RS2A
25 B3 DTIN4 25 B3 RS2B
23 B4 DTIN5 23 B4 RS3A
21 B5 DTIN6 21 B5 RS3B
19 B6 DTIN7 19 B6 RS4A
17 B7 DTIN8 17 B7 RS4B
15 C0 XNEG
13 C1 X1
11 C2 X2
9 C3 X3
7 C4 X4
5 C5 X5
3 C6 X6
1 C7 X7

Note that the REQ line is used to send a command to the main UltraVim software. The
command is determined by CMD1, CMD2, CMD3, and CMD4. The RQ2 line is used to
request a command from device number two, usually the Mark Inspection program. The
acknowledgement line AK2 responds to request line RQ2, and the results are stored in the
RS2A and RS2B lines.

Ver 5.5 124


ULTRAVIM APPLICATION MANUAL

E.4 Input Commands

The following input commands are used only for the REQ (A0) line. The RQ2, RQ3, and
RQ4 lines are only used to request and inspection of that device.

ID A7 A6 A5 A4 Command
0 0 0 0 0 Load Part
1 0 0 0 1 Inspect Part
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
10 1 0 1 0 Set Autosave On
11 1 0 1 1 Set Autosave Off
12 1 1 0 0 Get Part Angle
13 1 1 0 1 Get Y Position
14 1 1 1 0 Turn Lights On
15 1 1 1 1 Clear Line

E.5 Load Part

When the "Load Part" command is sent to the UltraVim, the file name will be created
from the input data lines B7 – B0 (B7B6B5B4B3B2B1B0). For example, to load the file
"0000001.PAR" you should set the data lines B7 – B1 to 0 and data line B0 to 1. Note
that you cannot have a file named "0000001.PAR" and a file named "00000001.BGA" on
the same system since the UltraVim has no way of telling the file extension from the eight
data lines.

Ver 5.5 125


ULTRAVIM APPLICATION MANUAL

E.6 Error Codes

The following error codes are used only for the REQ (A0) line. The RQ2, RQ3, and RQ4
lines only use the AK2, AK3, and AK4 lines to determine the response of the intended
device.

ID ERR3 ERR2 ERR1 Description


0 0 0 0 No Error
1 0 0 1 No File Loaded
2 0 1 0 Part Not Found
3 0 1 1 Not Host ACK
4 1 0 0 Wrong Ball Count
5 1 0 1
6 1 1 0
7 1 1 1

E.7 Result Codes

The output channels RS1A (B0) and RS1B (B1) show the results of the inspection from
the UltraVim software. This is the main UltraVim system that performs an inspection of
a leaded or BGA device. The four possibilities are shown below:

Inspection Results
B1 B0 Result
0 0 Invalid
1 0 Failure
0 1 Rework
1 1 Pass

For Mark Inspection, the RS2A (B2) and RS2B (B3) lines are used. The RS2A line
indicates if the mark passed, and the RS2B line shows if the orientation passed.

RS2A = 1 Mark Passed


RS2A = 0 Mark Failed
RS2B = 1 Orientation Passed
RS2B = 0 Orientation Failed

Ver 5.5 126


ULTRAVIM APPLICATION MANUAL

E.8 UltraVim Timing Diagram

The general sequence for all UltraVim commands is shown below:

1. The host sets the command id.


2. The host sets the REQ line high.
3. The UltraVim sets the ACK line high.
4. The host sets the REQ line low.
5. The UltraVim executes the command.
6. The UltraVim sets the ACK line low.
7. The host checks the error bit for errors.

The following diagram shows the general timing of the host communications to inspect a
part with the UltraVim. Assume that a part file has already been loaded.

1 3
Host REQ

2
UltraVim ACK

4 5
UltraVim BUSY

1. The host must hold a part over the reticle, set the command bits (A4-A7)
to the Inspect command, and send the REQ bit high to start the inspection.

2. As soon as the UltraVim sees the REQ bit high, it sets the ACK bit high
and starts the image acquisition.

3. The host acknowledges the start of inspection by setting the REQ bit low.
The REQ line must be set low as soon as the ACK line goes high.

4. When the image has been acquired the UltraVim sets the BUSY line high.
The host may move the part away from the reticle when this line goes high.

5. When the results have been computed, the UltraVim sets the result bits,
then sets the ACK and BUSY lines low. This tells the host that the
results are ready.

Ver 5.5 127


ULTRAVIM APPLICATION MANUAL

E.9 Mark Inspection Timing Diagram

The general sequence for all Mark Inspection commands is shown below:

1 3
Host RQ2

2 4
Mark AK2

1. The host must make sure the part is under the mark inspection camera.
Then the host sets the RQ2 line high.

2. The Mark Inspection program sees the RQ2 line high, and sets the AK2
line after the image is acquired. The host may move the part as soon as AK2 goes
high.

3. The host acknowledges the start of inspection by setting the RQ2 line low.
The RQ2 line must be set low as soon as the ACK2 line goes high.

4. When the image has been processed and the RS2A and RS2B results are
ready, the mark inspection system sets the AK2 line low again.

Note that this timing diagram applies to the RQ3 and RQ4 lines as well. See the table
below:

Inspect Acknowledge Results


RQ2 AK2 RS2A, RS2B
RQ3 AK3 RS3A, RS3B
RQ4 AK4 RS4A, RS4B

Ver 5.5 128


ULTRAVIM APPLICATION MANUAL

E.10 Example Inspect Part Code

Use the C code below as an example of how to inspect a part from the host. Assume the
following:

z SetBit sets the bits on the Input connector


z GetBit reads the bits on the Output connector
z SetTimer sets a countdown timer in milliseconds
z GetTimer returns the number of milliseconds left on timer
z A part file has already been loaded successfully
z The part is being held above the inspection reticle
z HostMovePartOut moves the part away from the reticle

///////////////////////////////////////////////////////////////////
//
// Example C code to turn lights on
//
///////////////////////////////////////////////////////////////////
BOOL TurnLightsOn()
{
// Check if ACK bit is low
if (GetBit(A1)==1) return FALSE;

// Set the command bits to “1110” (Lights On)


SetBit(A7,1);
SetBit(A6,1);
SetBit(A5,1);
SetBit(A4,0);

// Set REQ bit high to send command


SetBit(A0,1);

// Wait for ACK to go high


SetTimer(3000);
while (GetBit(A1)==0)
{
if (GetTimer() < 1) return FALSE;
}

// Set REQ bit low to show host ACK


SetBit(A0,0);

return TRUE;
}

Ver 5.5 129


ULTRAVIM APPLICATION MANUAL

///////////////////////////////////////////////////////////////////
//
// Example C code to inspect a part
//
///////////////////////////////////////////////////////////////////
BOOL InspectPartExample()
{
// Check if ACK bit is low
if (GetBit(A1)==1) return FALSE;

// Set the command bits to “0001” (Inspect Part)


SetBit(A7,0);
SetBit(A6,0);
SetBit(A5,0);
SetBit(A4,1);

// Set REQ bit high to send command


SetBit(A0,1);

// Wait for ACK to go high


SetTimer(3000);
while (GetBit(A1)==0)
{
if (GetTimer() < 1) return FALSE;
}

// Set REQ bit low to show host ACK


SetBit(A0,0);

// Wait for BUSY bit to go high (image acquired)


SetTimer(3000);
while (GetBit(A0)==1)
{
if (GetTimer() < 1) return FALSE;
}

// Move the part away from reticle


HostMovePartOut();

// Wait for ACK to go low when UltraVim done


SetTimer(3000);
while (GetBit(A1)==1)
{
if (GetTimer() < 1) return FALSE;
}

// Check for errors


if (GetBit(A5)==1) return FALSE;
if (GetBit(A6)==1) return FALSE;
if (GetBit(A7)==1) return FALSE;

// Inspection complete, host must check results


return TRUE;
}

Ver 5.5 130


ULTRAVIM APPLICATION MANUAL

E.11 Part Position

After an inspection is complete, the UltraVim returns the part results and its position over
the center of the reticle. The channels C0 – C7 contain the X position information. The
following example code shows how to calculate the position in mils. To get the Y
position information, send command 13 and the C0 – C7 lines will show the Y
information instead of the X information.

///////////////////////////////////////////////////////////////////
//
// Example C code to read part position from reticle center
// The position could be X, or Y if the command 13 was sent
// after the inspection.
//
///////////////////////////////////////////////////////////////////
int GetPosition()
{
int nPos = 0;

if (GetBit(C1)==1) nPos += 64;


if (GetBit(C2)==1) nPos += 32;
if (GetBit(C3)==1) nPos += 16;
if (GetBit(C4)==1) nPos += 8;
if (GetBit(C5)==1) nPos += 4;
if (GetBit(C6)==1) nPos += 2;
if (GetBit(C7)==1) nPos += 1;
if (GetBit(C0)==1) nPos *= -1;

return nPos;
}

The following diagram shows the coordinate system of the UltraVim in relation to the
reticle:

+Y

-X +X

-Y

Ver 5.5 131


ULTRAVIM APPLICATION MANUAL

E.12 Turn Lights On

The diagram below shows the general move sequence for the handler.

A. Move the handler above the reticle.


B. Move the part down to position.
C. When part is in place, send the inspect command.

When the inspect command is given to the UltraVim software, the lights are turned on
and the image is acquireE. If you have a very high speed system, you can save about
50ms by sending the UltraVim software the command to turn on the lights (ID=14) before
the part is in place.

The new command sequence would be the following:

A. Send command to turn lights on, then move the handler above the reticle.
B. Move the part down to position.
C. When part is in place, send the inspect command.

A
B

Ver 5.5 132


ULTRAVIM APPLICATION MANUAL

E.13 Part Angle

After an inspection is complete, the UltraVim returns can report the part angle with
respect to the center of the reticle. To get this information, you must send the command
to get the angle by setting A7=1, A6=1, A5=0, and A4=0 (ID=12). After the command
has been set, set the request line high to report the angle in output channels C0 – C7.
This will report the angle up to +/- 12.7 degrees. The following example code shows how
to calculate the angle.

///////////////////////////////////////////////////////////////////
//
// Example C code to read part angle from reticle center
//
///////////////////////////////////////////////////////////////////
double GetAngle()
{
double dAngle = 0.0;

// Set the command bits to “1100” (Get Part Angle)


SetBit(A7,1);
SetBit(A6,1);
SetBit(A5,0);
SetBit(A4,0);

// Set REQ bit high to send command


SetBit(A0,1);

// Wait for ACK to go high


SetTimer(3000);
while (GetBit(A1)==0)
{
if (GetTimer() < 1) return FALSE;
}

// Set REQ bit low to show host ACK


SetBit(A0,0);

// Get the angle information


if (GetBit(C1)==1) dAngle += 6.4;
if (GetBit(C2)==1) dAngle += 3.2;
if (GetBit(C3)==1) dAngle += 1.6;
if (GetBit(C4)==1) dAngle += 0.8;
if (GetBit(C5)==1) dAngle += 0.4;
if (GetBit(C6)==1) dAngle += 0.2;
if (GetBit(C7)==1) dAngle += 0.1;
if (GetBit(C0)==1) dAngle *= -1.0;

return dAngle;
}

Ver 5.5 133


ULTRAVIM APPLICATION MANUAL

F. Inspecting Multiple Parts


The UltraVim software has the ability to inspect multiple parts an one time. This requires
some additional parameters entered in the part file, and the correct digital I/O lines to be
set. Note that for leaded parts, the UltraVim software can only inspect more than one part
only if they are two-sided parts.

F.1 Part File Setup


In the part maintenance screen, click on the Tolerances button and you will see the
multiple part setup in the lower right section. Click on the number of parts you wish to
inspect at one time, then enter the distance between the parts in the pitch feild. The pitch
parameter is the distance from the center of one part to the distance to the center of the
next part.

The diagram below shows the proper centering of the parts of the inspection reticle.
Note that each part must be the same distance from the center of the reticle. For BGA
parts, the datum lines of the reticle still apply, even though the reticle is not required for
the inspection.

Pitch Pitch

Ver 5.5 134


ULTRAVIM APPLICATION MANUAL

F.2 Digital I/O Setup


For inspection of multiple parts, a new command is required. The INSPZ command tells
the software to do a new inspection without grabbing a new image. For Mark Inspection,
the INSMZ command does the same thing.

The Digital I/O Setup can be set up many ways, but to maintain asynchronous
communication with both the UltraVim and Mark Inspection software, the following
method is recommended. The steps for this setup are:

1. Enter the INSPZ command in the HWARE32.ini file.


2. Enter the INSMZ command in the MARK32.ini file.
3. Use command lines A4,A5,A6 for UltraVim.
4. Use command line A7 for Mark Inspection.
5. Use data lines B0,B1 for UltraVim.
6. Use data lines B2,B3,B4 for Mark Inspection.

INI Files
The recommended Digital I/O setup for multiple parts is shown below. Note that the
commands in the HWARE32.ini file are repeated starting with ID=08. Also, in the
MARK32.ini file, the command changes to INSMZ starting with ID=08.

ID A7 A6 A5 A4 HWARE32.ini MARK32.ini
0 0 0 0 0 00=LOADP 00=INSPM
1 0 0 0 1 01=INSPP 01=INSPM
2 0 0 1 0 02=INSPZ 02=INSPM
3 0 0 1 1 03=ANGLE 03=INSPM
4 0 1 0 0 04=GETYP 04=INSPM
5 0 1 0 1 05=LIGHT 05=INSPM
6 0 1 1 0 06=NOCMD 06=INSPM
7 0 1 1 1 07=CLEAR 07=INSPM
8 1 0 0 0 08=LOADP 08=INSMZ
9 1 0 0 1 09=INSPP 09=INSMZ
10 1 0 1 0 10=INSPZ 10=INSMZ
11 1 0 1 1 11=ANGLE 11=INSMZ
12 1 1 0 0 12=GETYP 12=INSMZ
13 1 1 0 1 13=LIGHT 13=INSMZ
14 1 1 1 0 14=NOCMD 14=INSMZ
15 1 1 1 1 15=CLEAR 15=INSMZ

Ver 5.5 135


ULTRAVIM APPLICATION MANUAL

Example Code for UltraVim Inspection


The Example C code below shows how to inspect multiple parts on the UltraVim system
with the setup shown in this chapter.

///////////////////////////////////////////////////////////////////
// Example C code to Inspect Part #1 on UltraVim
///////////////////////////////////////////////////////////////////
BOOL UltraVimInspectPart1()
{
// Set the command bits to “001” (INSPP)
SetBit(A6,0);
SetBit(A5,0);
SetBit(A4,1);

// Set the data bits to “00” (Part #1)


SetBit(B1,0);
SetBit(B0,0);

// Set REQ bit high to send command


SetBit(A0,1);

// Wait for ACK to go high


while (GetBit(A1)==0);

// Set REQ bit low to show host ACK


SetBit(A0,0);
}

///////////////////////////////////////////////////////////////////
// Example C code to Inspect Part #2 on UltraVim
///////////////////////////////////////////////////////////////////
BOOL UltraVimInspectPart2()
{
// Set the command bits to “010” (INSPZ – No Grab)
SetBit(A6,0);
SetBit(A5,1);
SetBit(A4,0);

// Set the data bits to “01” (Part #2)


SetBit(B1,0);
SetBit(B0,1);

// Set REQ bit high to send command


SetBit(A0,1);

// Wait for ACK to go high


while (GetBit(A1)==0);

// Set REQ bit low to show host ACK


SetBit(A0,0);
}

Ver 5.5 136


ULTRAVIM APPLICATION MANUAL

Example Code for UltraMark Inspection


The Example C code below shows how to inspect multiple parts on the UltraMark system
with the setup shown in this chapter.

///////////////////////////////////////////////////////////////////
// Example C code to Inspect Part #1 on UltraMark
///////////////////////////////////////////////////////////////////
BOOL UltraMarkInspectPart1()
{
// Set the command bit to “0” (INSPM)
SetBit(A7,0);

// Set the data bits to “000” (Part #1)


SetBit(B4,0);
SetBit(B3,0);
SetBit(B2,0);

// Set REQ bit high to send command


SetBit(A1,1);

// Wait for ACK to go high


while (GetBit(A2)==0);

// Set REQ bit low to show host ACK


SetBit(A1,0);
}

///////////////////////////////////////////////////////////////////
// Example C code to Inspect Part #2 on UltraMark
///////////////////////////////////////////////////////////////////
BOOL UltraMarkInspectPart2()
{
// Set the command bit to “1” (INSMZ - No Grab)
SetBit(A7,1);

// Set the data bits to “001” (Part #2)


SetBit(B4,0);
SetBit(B3,0);
SetBit(B2,1);

// Set REQ bit high to send command


SetBit(A1,1);

// Wait for ACK to go high


while (GetBit(A2)==0);

// Set REQ bit low to show host ACK


SetBit(A1,0);
}

Ver 5.5 137

Вам также может понравиться