Title of Invention

IMPROVED SEMIAUTOMATIC PICK AND PLACE MACHINE FOR ASSEMBLING OF COMPONENTS

Abstract An improved semi-automatic Pick and Place (SAPP) Machine, said machine characterised by a high precision X, Y stage sub-assembly with a vision guided device, a guide block sub-assembly, X, Yair brake assembly, object oriented user interface software components installed in the computer system, a machine software for the control of said machine embedded in the EPROM of micro controller subassembly for error free assembly of fine pitch and standard surface mount device (SMD) components on Printed Circuit Boards.
Full Text IMPROVED SEMI-AUTOMATIC PICK & PLACE MACHINE FOR ASSEMBLY OF COMPONENTS
TECHNICAL FIELD
The present invention relates to an improved version of semi-automatic pick and
place machine for Surface Mount Devices and fine pitch components.
BACKGROUND ART
Pick and place machine for Surface Mount Device (SMD) is an electromechanical
system that finds wide use in the component assembly stage of the PCB in electronics
industry. These machines under the control of computer not only help the operator to
pickup the correct SMD component automatically but also place these components
very accurately onto the Printed Circuit Boards (PCB). The use of these machines
provides more economical production of PCB's.
The conventional leaded electronic components are mounted through holes and
soldered on the flip side of the PCB. Because conventional leaded components are
mounted through the holes of a PCB so they are called through hole type components
whereas Surface Mount Devices (SMD) are electronic integrated circuits and
components, which are mounted and soldered on the surface of the Printed Circuit
Board (PCB) without mounting holes.
Pick and place machine for Surface Mount Devices is an electromechanical machine,
which finds wide uses in the assembly of SMD components on the PCB in electronics
industry.
The following three types of such machines are currently available in the international
market:
i. manual
ii. semiautomatic
iii. fully automatic MANUAL PICK & PLACE MACHINE
The manual pick & place machine has a vacuum pickup head, a PCB holder and the rack to hold the 1C feeder. The vacuum gets activated or deactivated automatically on pressing the nozzle either against the 1C for picking or against the PCB while placing. However, this is used only when few SMD components are to be placed on the PCB and the number of such PCBs is small. SEMI-AUTOMATIC PICK & PLACE MACHINE

The semi-automatic machine uses computer as a partial control for accurate pick and place of SMD components onto the PCB's. The computer assists the operator in assembly operation of such PCBs'. These machines under the control of computer not only help the operator to pickup the correct SMD component but also place these components very accurately onto the PCB's. Such types of machines are useful for low to medium scale production where the total annual requirement of one type of PCB assembly is of the order of hundreds in number. FULLY AUTOMATIC PICK AND PLACE MACHINE
The fully automatic pick and place machine for SMD is totally controlled by the computer and these machines are useful for large-scale assembly of PCBs1 of the order of thousands in number. The throughput in such systems is much higher as compared to the semi-automatic machines.
CONVENTIONAL SEMI-AUTOMATIC PICK & PLACE MACHINE SUB-ASSEMBLIES:
The block diagram of the Semiautomatic Pick & Place machine is shown in Fig. 5. The conventional semi-automatic machines comprise following sub-assemblies:
(i) Rack and Feeder Assembly
(ii) Carrousel Assembly
(iii) X,Y assembly
(iv) X.Y air brake assembly and air compressor
(v) Pickup head assembly, Vacuum ON/OFF control and vacuum pump
(vi) / and theta assembly of Pickup head
(vii) Mounting frame for holding PCB
(viii) Moveable hand rest
(ix) Periscopic assembly with CCD camera & monitor
(x) Microcontroller & Machine electronics hardware/software
(xi) Computer Control
(xii) RS-232 interface
(xiii) PCB
i) Rack and Feeder assembly:
Rack assembly performs the function of holding up to 12 feeders. There are 15 such exchangeable and coded Racks.

The feeder assembly holds the stick feeder to supply the SMD component for PCB
assembly.
The microcontroller subassembly helps the operator to pickup the component from the
correct rack and the feeder by checking the Rack code and identifying the feeder by
the corresponding LED glow.
ii) Carrousel Assembly:
Carrousel assembly performs the function of supplying loose SMD components for
PCB assembly. The Carrousel assembly contains 40 trays to hold loose SMD
components. The trays are coded during start-up operation of the machine. This
assembly is mounted on Stepper Motor. The microcontroller subassembly operates the
stepper motor movement so that correct tray is positioned to pickup the SMD
component for assembly. The microcontroller subassembly helps the operator to
pickup the component from either left or right carrousel with the help of
corresponding glow of the Left/Right LED.
(iii) X, Y assembly:
This assembly holds the pickup head assembly. The X, Y assembly in the
semiautomatic machines available in the international market uses simple linear scale
with 1 .Omm resolution. This assembly provides the X, Y co-ordinates of the pickup
nozzle with a resolution of 1.0 mm, which makes the placement accuracy +1.0 mm of
the X, Y co-ordinates of the SMD components.
iv) Air Compressor and X, Y air brake assembly:
Air compressor provides the air supply to X, Y air solenoid valve. X, Y air brake
mechanism consists of air solenoid valve that performs the function of braking the X.
Y movement of the X. Y slide block.
v) Pickup head assembly, vacuum ON/OFF control and vacuum pump:
The vacuum pickup head assembly performs the pick and place operation of SMD
component through vacuum ON/OFF control. The operator has to manually move the
pickup head assembly on X, Y slides. The vacuum control performs the function to
make the vacuum ON and OFF through two proximity sensors mounted on the pickup
head. Vacuum pump performs the function of generating the necessary vacuum
required to pickup the component.
vi) Z and theta assembly of pickup head
Z movement assembly performs the function of lowering the pickup nozzle during
Pick & Place operation of the SMD component. An electromagnet solenoid relay is

mounted on the pickup head assembly. This relay is automatically gets activated by
the microcontroller subassembly when the operator tries to lower the vacuum nozzle at
wrong pick & place co-ordinate. The theta movement assembly of the pickup
head provides the function of rotation of the SMD component so that it can be
aligned during placement.
The operator manually controls the Z and theta movement.
vii) Mounting frame for holding PCB's:
The mounting frame performs the function to hold the PCB whose component
assembly is to be performed. After completion of PCB assembly, the operator has to
manually remove the PCB.
viii) Moveable hand rest:
Ergonomic, moveable hand rest performs the function to provide firm support to the
hand while moving pickup head along the X, Y-axis.
ix) Periscope vision assembly and CCD camera:
The periscope vision assembly performs the function to provide a magnified overhead
picture showing simultaneously and parallax free all four sides of the fine pitch SMD
components through CCD camera onto the video monitor.
x) Microcontroller & Electronics hardware and machine software:
The semiautomatic machines available in the international market also have
electronics hardware and microcontroller based software to control various functions
of the machine in co-ordination with the computer-based user interfacing software.
The microcontroller and associated electronics performs the following functions in the
machine:
(i) Identification of rack assembly
(ii) Identification of feeder
(iii) Rotation of carrousel assembly
(iv) Operation of X, Y air brake with placement co-ordinate resolution of + 1.0 mm
(v) Operation of Z brake
(vi) Receiving and sending data to computer through RS-232
(vii) Sending X, Y co-ordinates of the pickup nozzle to the computer
(viii) Sending the status of completion of assembly of SMD component
The electronics hardware and machine software is developed around micro controller
for controlling the various functions of the machine. The micro controller software is
embedded in EPROM.

xi) Computer control:
The semiautomatic machines available in the international market use DOS as the operating environment and provide various menus for the operation of this machine that will help in the assembly process of the components, which are as follows:
a) File menu: New, Open, Save as, Close, Exit
The File menu performs the operation of opening /closing or saving data file.
b) Edit menu: Table, Offline/Online
Table submenu performs the operation of editing or entering data in a table like X, Y
co-ordinates of the pick and place position etc.
Various options under the table menu are Insert, Paste, Delete, Mark, Teach, Sort and
Esc.
Offline/Online submenu performs the operation of editing of Online or Offline data in
the table. During Online editing of data, machine should be kept ON.
c) Start menu: Offset ( Key in offset, Teach offset) and assembly sub-menu
Offset submenu option provides the offset value to the X,Y place co-ordinates of the
components. This can be either Key in or automatically Teach to the computer.
Assembly submenu option provides the function to assemble the SMD components
line by line of the table as defined in the TABLE submenu.
Various options available under Assembly submenu to the user are:
i. Start assembly from line number
ii. Start assembly from saved position
iii. Save currents assemble line number
iv. Switch to Graphics screen
v. Display ot Current line number
vi. Display of X, Y co-ordinate of the vacuum nozzle
vii. Display of Orientation of the component
The Assembly submenu stores the name of the component assembled by the machine
in a file as well as in a dynamic array.
d) Print menu: All, Select range
Print menu performs the function of printing the table either all or a selected range of the Table.
e) Environment menu
Environment menu comprises the following sub-menus:

Port setting, Assembly settings (PCS type number, PCB number & Skip line number),
maximum numbers of components.
Port setting submenu performs the operation of setting the Communication ports
number through which computer communicates with the machine.
PCB type number, PCB number sub-menu performs the operation of defining these
parameters of the PCB.
Skip line number sub-menu performs the function to store the row numbers of the
TABLE to be skipped during Assembly submenu of the Start Menu.
Maximum number of components submenu performs the function to define the
maximum number of rows of the Table of the EDIT menu. The user can feed various
parameters of the SMD components in the table. Using Assembly submenu of the
START menu, the assembly of SMD components row wise, the machines available in
the international market can assemble up to 999 components.
f) Help menu
This menu gives ON Line Help to the user.
i) RS-232 interface module provides the physical connection between computer
and the machine microcontroller, ii) PCB is the printed circuit board over which SMD components are to be
assembled.
PRIOR ART PUBLICATIONS:
a). http://www,kmmnet.com/circuit.html b). http://www.harotec.ch/haroj3.html
c). http://www.essemtec.com/english/products/pro_body_index.html d). http://www.khbenz.co.uk.mansemi.htm OBJECTS OF THE PRESENT INVENTION
The main object of the present invention is to provide an improved version of Semiautomatic Pick & Place machine for SMD and fine pitch components. Another object of the present invention is to achieve the SMD component placement accuracy of+0 1 mm for a manual movement of pickup head over a length of 390 mm both on X, Y axis.
Yet another object of the present invention is to provide a novel-clamping device to prevent damage to bearing surfaces.
Still another object of the present invention is to provide a software with object oriented methodology to control said machine.
Yet another object of the present invention is to provide statistical menu option in the software so that the machine provides the statistics of SMD components as per PCB as well as about SMD components already assembled by the machine on the PCB.
The other object of the present invention is to provide Convert option of the environment menu software which makes this machine compatible to link directly with the ORCAD PCB board (* .brd) file. The place X, Y co-ordinates of the components, orientation of the component, name of the component, position of the component can be loaded directly from the ORCAD board (* .brd) file in the table of the EDIT menu option of this machine.
The other object of the present invention IS to provide Maximum number of component option
of the environment menu software for this machine which makes this machine to assemble up to
2000 SMD components per PCB.
The other object of the present invention is to provide Metric option of the environment menu
software so that the machine is compatible to work in both metrics as well as in inches.
SUMMARY OF THE PRESENT INVENTION
The present invention provides for an improved version of semi-automatic pick & place machine
for SMD and Fine Pitch Components by using a software with object oriented methodology to
control the machine and make it more user friendly.
Accordingly, the present invention provides for an improved semi-automatic Pick and Place (SAPP) Machine, said machine, characterised by a high precision X, Y stage sub-assembly, a guide block sub-assembly, X, Y brake assembly, an object oriented user interface software components installed in the computer system, a machine software for the control of said machine embedded in the EPROM of microcontroller subassembly of said machine. An embodiment of the present invention, wherein electronics hardware and machine software are developed around Intel 8032 microcontroller for controlling the various functions of the machine said microcontroller software is embedded in EPROM.
Yet another embodiment of the present invention, wherein the minimum hardware computer system is Pentium-II.



Yel another embodiment of the present invention, wherein a high precision X, Y stage
subassembly along with vision guided device used for error free assembly of fine pitch
and standard surface mount devices (SMD) on printed circuit boards.
Still, yet another embodiment of the present invention, wherein X, Y stage
subassembly provides X and Y position co-ordinates of the pickup head movement
which is sensed through optical linear encoder system having a resolution of 0.02 mm.
Another embodiment of the present invention, wherein through X, Y subassembly, the
X, Y placement accuracy of + 0.1 mm is achieved on X, Y axis for a manual
movemeni of pickup head over a length of 390 mm both on X, Y axis.
Another embodiment of the present invention, wherein a software embedded in
EPROM energises the pneumatic air friction brakes through electronic hardware for
locking X, Y movement of the pickup head with an accuracy of ± 0.1 mm of the X, Y
place co-ordinate of the SMD component.
Another embodiment of the present invention provides precise theta rotation of the
pick up head, so that the pickup head along with the SMD components can be
precisely rotated for alignment with the PCB pads during placement of the component
on PCB.
Further, yet another embodiment of the present invention provides a novel clamping
device which is used for providing sufficient clamping of the end plate of the PCB
holder an i also protects the bearing surfaces between the plate and the base frame
against the scoring/damage by the clamping screw.
Further, \et another embodiment of the present invention provides for an improved
SAPP machine with tremble free mechanics to place the components by using fine
tuneable ;;ii .fiction brake.
Still, yet ;Miher embodiment of the present invention, provides for an improved
SAPP iru;c.nne with X, Y pneumatic air brakes to allow blind flights of the pickup
head to the correct location by automatically locking the pickup head on the correct X,
Y placemen i co-ordinate position with an accuracy of+0.1 mm.
Further, i:i yei another embodiment of the present invention, a simple electromagnetic
solenoid i : -ed to brake the Z movement.
In another embodiment of the present invention, wherein X and Y movement the Z
brake is applied so that the user cannot pick/place the component from wrong location.

In yet another embodiment of the present invention, wherein, the Z brake gets released
at the correct X, Y Placement co-ordinate so that the operator can place the component
on the PC!!.
Yet another embodiment of the present invention, provides for pickup head wherein
vacuum gets activated automatically when the pickup head tip is slightly pressed
against the component and is deactivated when the component is slightly pressed
against the ;'CB while placing.
Yet another embodiment of the present invention provides for ergonomic, moveable
hand rest ti:ut gives firm support to the hand while moving the X, Y co-ordinate of the
pickup he;;J so as to facilitate the firm support to the hand while placing the
component
Another embodiment of the present invention, provides for a Periscopic vision
system in combination with CCD camera and a colour monitor for a magnified
overhead p.eture showing simultaneously and parallax free all four sides of the fine
pitch SMD
In still yet another embodiment of the present invention said mirror arrangement along
with back ight below the PCB holder, illuminates the PCB area so as to give less
eyestrain to the operator and allows direct viewing.
Further, yet another embodiment of the present invention provides state-of-the-art
windows based software using Visual Basic 6.0 as the base platform.
In yet anoti er embodiment of the present invention, wherein hardware devices of said
machine ar j controlled by a software having Object-Oriented features.
Yet another embodiment of the present invention, provides for software comprising
Statistics N enu that helps the user to know the statistics of the components required in
the PCB a: sembly as well as to know the statistics of components that are already
assembled hy the machine through bar graph display.
Still, yet another embodiment of the present invention provides for software
comprising linvironment Menu, whereby the user can define the maximum number of
rows of the table with values ranging from 1 to 2000, as a result said software can
handle as iiiiich as 2000 different components of the PCB, during assembly.
Further, an embodiment of the present invention relates to a software that controls the
machine by providing user with an option of using either mm or inches as the metric
unit to input/teach X, Y co-ordinates in the table.

Another embodiment of the present invention provides for a Convert option in the
Environment menu wherein the user can avoid inputting manually or teaching the X,
Y place co-ordinate of the component on the PCB.
Yet another embodiment of the present invention, wherein X, Y place co-ordinates of
the components, orientation of the component, name of the component, position of the
component in the PCB can be directly loaded in the table from the ORCAD board file
through this option.
Another embodiment of the present invention wherein PCB component requirement
table is prepared in advance and saves the time in building the table before assembly
process stans.
In another embodiment of the present invention, wherein said software controls the
machine also provides ON LINE HELP to the user about both hardware and software
operations.
The novel features of the present invention is further explained in the form of
following preferred embodiments
In yet another embodiment of the present invention, wherein the X, Y assembly of the
machine comprises sub-assemblies like End plates, X slide block, Y slide block, X, Y
slide and Linear encoder scale
The end plates perform the function of holding two X axis slide rods and maintaining
their parallelism with an accuracy of 10 micron.
The X, Y slide block having only one degree of freedom glides effortlessly on the
slide rods using frictionless standard linear bearings.
The X. Y slide mount a high precision linear encoder scale with a resolution of
0.02mm as a reference scale for measurement of the X-Y translation of the pickup
head.
In yet another embodiment of the present invention wherein, the microcontroller used
is of the type Intel 8032 to achieve X, Y air brake with placement coordinate
resolution ol'±0.1mm.
In yet anoilier embodiment of the present invention, said Graphical User Interface
provides following Statistical Menu Options for an improved assembly process of the
component >;
In another embodiment of the present invention, said Statistics Menu provides
Statistics of components as per PCB requirements, statistics of components already
assembled n PCB and the total number of PCB's assembled

In yet another embodiment of the present invention, statistics of components as per
PCB submenu performs function of displaying the bar graph of the statistics of the
components required during assembly of one PCB.
Still, in yet another embodiment of the present invention, Statistics Menu of PCB
components performs function of displaying bar graph of the statistics of the
components already assembled on the PCB, as stored in a file or in dynamic array
during the Assembly menu.
In another embodiment of the present invention, the Total PCB submenu computes
and displays the total PCB assembled.
Another embodiment of the present invention provides for Environment Menu having
the features like Port setting, Assembly settings (PCB type number, PCB number,
skip line number).
Yet another embodiment of the present invention, wherein Port setting submenu
performs me operation of setting the Communication port number through which
computer c mmunicates with the machine.
Still, another embodiment of the present invention, wherein PCB type number, PCB
number suhnenu performs the operation of defining these parameters of the PCB.
Another embodiment of the present invention, wherein Skip line submenu performs
the function to store the row number of the TABLE to be skipped during Assembly
submenu r. the Start Menu.
In another embodiment of the present invention, maximum number of components
submenu | i forms the function to define the maximum number of rows of the Table
of the El I menu, wherein the user can feed various parameters of the SMD
componen , in the table.
Another ei ;K>diment of the present invention provides for Assembly submenu of Start
Menu, wi i which the assembly of SMD components is, performed row wise
maximum p to 2000 components.
Another ei ;iodiment of the present invention provides for Metric submenu having the
utility fum ion with which the user can work either in mm or inches.
Still, anoi :r embodiment of the present invention provides for Convert submenu
option ha\ ig the utility function to load direct ORCAD PCB board file in the TABLE
menu that elps user in avoiding to input the X, Y place co-ordinates, orientation of
the compo ,-nt, name of the component, position of the component in the Table menu
of EDIT u ion.

The novel features of the Graphical User Interface of the present invention are further
explained in the form of following preferred embodiments:
The User Interface Software is developed in Window-95 environment using Visual
Basic 6.0 as the software language. The Flow Chart of the user interface software
developed for this machine is shown in Fig. 6.
The Graphical User Interface provided in the present invention, comprises following
menus:
File Menu: The user selection of assembly of PCB by either opening a new file or
using OPEN option of the File Menu if file already exists. This file is used to store the
contents of the table in the EDIT menu as well as to store the statistics of components
in the Start menu.
Edit Menu: Two submenus are available under this menu
i) Online/Offline
ii) Table
Online/Offline submenu: The user can edit the data either online i.e. when the
machine is operational or in offline when machine is not connected to the computer.
Table menu: The user can select the table option of EDIT menu for entering in the
table the following data:
(a) the rack number,
(b) feeder or carrousel number,
(c) component name,
(d) X, Y co-ordinates of the pick position of the component.
(e) error tolerance in the X. Y pick co-ordinates.
(f) tool required for pick up the component,
(g) position of the component on the PCB,
(h) X, Y co-ordinates of the place position of the SMD components,
(i) error tolerance in the place co-ordinates, orientation of the component
on the PCB;
(j) error messages; and
(k) orientation of component on the PCB.
Various options under the table menu are: Insert, Paste, Delete, Mark, Teach, Sort and Esc.
Using the above options the operator can complete the table for the assembly process. In the sort option the whole of the table data can be sorted based on either on rack

number or on tool number so that user don't keep on changing the rack as well as tool
frequently during assembly.
Start Menu: In this menu two options have been provided in our software, which are
as follows:
1). Offset: The user can feed the offset value either through keyboard or teach the
machine the offset value by bringing the pickup head at the mark point of the PCB.
The value entered for Offset is in mm if METRIC flag =1 or in inches if Metric flag=2
as set in Environment METRIC option.
2). Assembly: In the assembly option of the start menu various options are available
to the user like:
(i) Start assembly from line number
(ii) Start assembly from saved line number position
(iii) Save current assemble line number
(iv) Switch to Graphics screen
(v) Display of Current line number
(vi) Display of X, Y co-ordinate of the Pickup head
(vi i) Display of Orientation of the component
The Assembly software subroutine performs the operation of sensing the completion
of accurate placement of SMD component on the PCB in our machine.
Two inductive sensors are used on the vacuum pickup head to sense the following
conditions: vacuum is OFF and the pickup head is in home position and the current X,
Y co-ordinate of the pickup head matches with the X,Y place co-ordinate of the
component as defined in the table.
Once the machine checks these parameters, the machine software embedded in
HPROM communicates to the computer about successful completion of placement of
the component.
The RUMGRAPHICS subroutine of the graphics screen option displays on the
computer video monitor the feeder location using a square symbol and the left and
right circle displays the carrousel. The place co-ordinate is displayed by the square
with a Crosshatch mark, the current head location is displayed by the square with cross
mark. The graphics screen also displays the X, Y co-ordinates of the pick & place
location, current line number, orientation of the component, PCB number, PCB Type
number This visual graphical aid to the user through computer helps the operator in
the assembly process of the SMD component.

The computer stores the name of the component assembled by this machine in a
dynamic array as well as in a file.
Print Menu: The Print Menu option helps the user to print the table either selected
row or full table.
Statistics Menu:
Menu Statistics of SMD Components Assembled: This software menu is designed to
count the number for each distinct name of the components assembled either by using
the file or by using dynamic array as created in the Assembly submenu.
Using Graph32.OCX ActiveX control the name and count of the components are
plotted through bar graph.
Using Grid32.OCX ActiveX control the name and count of the components are
displayed in tabular form.
Menu Statistics of SMD Components Per PCB:
The names of the SMD components per PCB are available in the table, which is
constructed during Table submenu, and these names are stored in a array variable.
This software counts the number for each distinct name of the SMD components as
per PCB available in the array.
Total PCB Assembled: This option displays the total number of PCBs that have been
assembled.
Environment Menu:
Under Environment Menu, the following features are available:
Communication Port Setting: This option sets the communication port for the computer to
communicate with the machine.
Assembly Setting: The following three options are provided to set up the PCB:
Type number, PCB Number and Skip line number
Convert:
Using this option, user can cause input of the PCB board file, whose table is to be
created. Then the incorporated software operates the MODLOC.EXE command on
this board file. MODLOC.EXE file of the ORCAD software generates a report of all
the component information of a PCB board file like component reference designation,
orientation, X, Y co-ordinates, name of the component from the board file and stores
this in temporary data file. Thereafter, upon the prompt received from the system, X,
Y reference co-ordinates of the PCB are entered. Then the system computes the X, Y

place co-ordinates of the other components with reference to this reference X, Y point.
Subsequently, the X, Y place co-ordinates of the components, orientation of the
component, name of the component, component reference designation in the PCB are
stored in a file
Metric:
By using this utility the software sets the METRIC flag to 1 for mm and to 2 for
inches operation. This utility is used for the conversion of inch data to mm if METRIC
flag is 2 and vice versa.
The X, Y co-ordinates data are entered either in inches or in mm in the Table menu as well as
during OFFSET Menu.
Maximum number of components:
The contents of table menu are assigned to dynamic variable array with maximum
Number of components say ROWMAX as shown in the Flowchart 6(S1).
The user inputs the range of number of components per PCB from 1 to 2000 say
ROWE. In case ROWE is less than or equal to ROWMAX then the software reduces
the number of rows of the TABLE and assigns the contents of array to the table.
If ROWE is greater than ROWMAX then the number of rows of the TABLE is
increased and the contents of array are assigned to the table.
In the Table menu the user can feed various parameters of the PCB whose maximum
number of rows are defined by this option. In the Assembly menu, the computer
communicates to the machine line by line of this dynamic table for assembly of
components on PCB.
Help menu: ON LINE HELP is provided with reference to hardware as well as
software operation of the SAPP machine.
DETAILED DESCRIPTION OF FIGURES:
Fig. 1,2,3,4 is a block diagram of the X, Y assembly arm of the machine.
Fig. 5 is a block diagram of the Semi-automatic Pick & Place machine for assembly of
SMD and fine pitch components on the PCB.
Fig. 6 and 6(a) is a flow chart of the main user interfacing software
Fig.7 shows the electronics1 hardware required for operation of the machine
Fig.8 and 8(a) is the block diagram of the Mounting frame for holding PCB.
In Fig. 1 comprises various standard components and sub-assemblies that are as follows:

(1) Stick Feeder Assembly, (2) Rack Assembly, (3) Carrousel Assembly, (4) PCB
Holder Assembly, (5) Main Frame Assembly, (6) Hand Support Assembly, (7) Hall
Sensor Assembly, (8) Pick Up Head Assembly, (9) XY Slides Assembly, (10) Tape
Feeder Assembly and (11) Periscope Assembly.
Fig.l also comprises:
X slide block (fig.2); Y slide block (Fig.3); End plates (Fig.4); and Standard parts like
X, Y Linear Encoder Scale, Linear Ball Bearings and Guide rods.
The two X guide rods are held parallel to each other to an accuracy of 5 micron which
is achieved in X-slide block by jig boring two holes with centre spacing of 110mm (+
0.005 mm) as shown in Fig.2.
Similarly two Y guide rods are also held parallel to an accuracy of 5 micron which is
achieved in Y slide block by having two holes with centre spacing of 23mm (+
0.005mm) as shown in Fig.3. These slides are designed on the principle of Kinematics
design.
The end plates (Fig.4) perform the function of holding two X axis slide rods and
maintaining their parallelism with an accuracy of 5 micron. The pair of holes each in
the end plates and X, Y slider block for mounting the linear bearings are precision jig
bored to ensure parallelism between the hole axes and the size accuracy of holes.
The X, Y slide block (Fig.2, 3) having only one degree of freedom, glides effortlessly
on the slide rods using frictionless standard linear bearings.
The X, Y slide mount having a high precision standard linear encoder scale with a
resolution of 0.02mm as a reference scale for measurement of the X-Y translation of
the pickup head.
In Fig. 5 the block diagram of the machine is depicted.
In Fig. 5, block I is a Rack and Feeder Assembly, block 2 is Carrousel Assembly,
block 3 is X, Y assembly, block 4 is X, Y air brake mechanism and air compressor,
block 5 is Vacuum pickup head, Vacuum ON/OFF control and vacuum pump, block 6
is Z and theta movement of Pickup head, block 7 is Mounting frame for holding PCB,
block 8 is Moveable hand rest, block 9 is Periscopic vision system along with CCD
camera & monitor, block 10 is Machine electronics hardware/software, block 11 is
Pentium II computer having User Interface Software with monitor, block 12 is RS-232
interface, block 13 is the PCB which is to be assembled with SMD components.
The rack and feeder assembly (1) and the carrousel assembly provide the SMD components to the PCB (13) for assembly. The PCB (13) is held firmly by the mounting frame assembly (7). The components are picked up by the Vacuum pickup head (5) by manually translating the pickup head over the X, Y assembly block (3). Z and theta movement assembly (6) of the pickup head allows the pickup head assembly (5) to move in + Z direction during pick & place operation. The pickup nozzle (5) can be rotated through 360 degree by the theta movement assembly (6). The X, Y air brake assembly (4) brakes the X,Y assembly(3) at the correct X,Y placement coordinate of the component. Moveable hand rest (8) provides firm support to the hand while moving pickup head (5) along the X, Y-axis. Periscopic vision system along with CCD camera assembly (9) performs the function to provide a magnified overhead picture of the SMD component showing simultaneously and parallax free all four sides of the fine pitch SMD components and the PCB pads (13) through CCD camera onto the video monitor. The computer having User Interface Software (11) communicates to the machine microcontroller (10) through RS-232 (12) interface and vice versa. The microcontroller and the associated electronics (10) perform the various functions required for the operation of this machine like identification of rack assembly, identification of feeder, rotation of carrousel assembly, operation of X, Y air brake, operation of Z brake, receiving and sending data to computer through RS-232, sending X, Y co-ordinates of the pickup nozzle to the computer, sending the status of completion of assembly of SMD component. The computer and the associated user interface software (11) handle the complete data of the PCB that is required to be assembled. The computer sends line by line the complete data for each SMD component to the microcontroller that performs the operation of the machine. In Fig 6. Flow Chart of the User Interfacing Software is given. When the user runs this software, it initialises the variables and loads the following Menu options to the user:
File, Edit, Start, and Print, Statistics, Environment & Help.
The FILE Menu options are NEW, OPEN, SAVE AS, CLOSE, EXIT. The flow chart for this menu is given in Fig. 6 (M)
The EDIT Menu options are TABLE, OFFLINE / ONLINE. The flow chart for this menu is given in Fig. 6(N)
The START Menu options are OFFSET, START ASSEMBLY. The flow chart for this Menu is given in Fig.6 (P), Fig. 6(P1), Fig. 6(P2), Fig.6 (P3), Fig.6 (P4).
The PRINT Menu options are ALL, SELECTED RANGE. The flowchart for this Menu is given in Fig.6 (Q).
The STATISTICS Menu options are COMPONENTS DETAIL AS PER TABLE, COMPONENTS ASSEMBLED and TOTAL PCB. The software flowchart for this menu is given in Fig.6(R).
The ENVIRONMENT Menu options are PORT SETTING, ASSEMBLY SETTING (PCB TYPE, PCB NUMBER, SKIP LINE NUMBER), MAXIMUM NUMBER OF COMPONENTS, METRIC, CONVERT. The software flowchart for this menu is given in Fig. 6(S), Fig.6 (SI), Fig.6 (S2).
The HELP Menu options are ON LINE HELP. The flow chart for this menu is given in Fig. 6(T)
FIG 7 shows the various block diagram of the electronics hardware required to achieve various functional requirements of the Pick & Place machine. In fig 7 block 1 shows the Pentium-II computer having User Interface Software, block 2 is RS-232 physical interface cable, block 3 is a RS-232 driver, block 4 is a crystal oscillator, block 5 is microcontroller, block 6 is EPROM where microcontroller software resides, block 7 is a RAM for temporary storage of data, block 8 is input/output interface driver, block 9 is Rack sensor to decode the rack number, block 10 is a Feeder Led driver to indicate the correct feeder, block 11 is Carrousel stepper motor driver and optocoupler circuit , block 12 is tool, vacuum and carrousel LED driver, block 13 is brake relay driver for X,Y movement of pickup head , block 14 is brake relay driver for Z movement of the pickup head , block 16 is a vacuum ON/OFF relay driver circuit. Block 17 is a X, Y movement and direction measurement circuit, block 18 is X. Y linear encoder scale, block 19 is the power supply required to drive this electronics module.
In fig. 7 Pentium II computer along with User Interface Software (1) communicates with microcontroller Intel 8032 (5) through RS-232 cable (2) and RS-232 driver MAX-232 (3). After receiving the command from the computer, microcontroller (5) decode this command and jump to the required subroutine stored in EPROM (6) to perform various machine functions through the electronics block. The data received from the computer is stored in RAM (7). The microcontroller (5) through the input/output interface driver (8) 74LS245 drives the various electronics hardware of the machine. The address decoder (20) 74LS138 decodes the address to various blocks of the microcontroller like RAM (7), EPROM (6), and input/output (8).
When power is on for the machine, microcontroller initialises the machine by initialising the stepper motor through optocoupler circuit (10) and drives the feeder LED (10), tool LED (12), X, Y brake (13), Z brake (14) and initialises the X, Y position co-ordinate to zero, all these in a sequential manner. When user clicks ONLINE menu, the computer communicates with the microcontroller. By using the Table menu of the user interface software, and user inputs the Rack number in the table, the computer through interface software communicates this rack number to microcontroller (5). The microcontroller then checks through Rack sensor (9) and communicates to the computer as to whether correct Rack is placed on the machine or else the microcontroller sends an error message to the user through computer display. Similarly when user feeds the feeder number in the table menu, computer (1) communicates to microcontroller (5) about this, which then drives the Feeder LED driver circuit (10).
When user feeds the Carrousel number in the Table menu, the computer interfacing software (1) communicates to the microcontroller (5) about this, which in turn drives the stepper motor (11) to place the correct carrousel bin for the user to pick the SMD components.
During Teach option on Table menu, the microcontroller reads the X, Y co-ordinates of the pick up head through X, Y movement block (17) which is receiving the input from the X, Y linear encoder scale (18). Microcontroller keeps on incrementing /decrementing through its internal counter, the X&Y movement of pickup nozzle. During Assembly option of the Start menu, computer interfacing software (1) communicates to the microcontroller (5) line by line data of the Table as stored in the EDIT menu. This data are stored by the microcontroller in the RAM (7). The microcontroller then performs the operation of sensing the correct Rack number through rack sensor (9), driving the feeder LED (10) or driving the carrousel motor (11) and driving the Tool LED (12) as per the data in the line of the table. Microcontroller keeps on tracking the X, Y movement of the pickup head through block (17). When the pickup head reaches the X, Y pickup co-ordinates the Z brake relay (14) gets deactivated to allow the user to lower the pickup head to pick the component. When the pickup head touches the component the proximity sensor (15) senses the touch pressure and makes the vacuum ON/OFF (16) circuit ON. The component gets lifted through vacuum, when the user lifts the pickup head the microcomputer senses it and activates the Z brake (14). The user now cannot lower the
pickup head. The microcontroller keeps on tracking the X, Y co-ordinate (17) of the pickup head. When it reaches the X, Y place co-ordinate the Z brake gets deactivated and the X, Y air brakes (13) gets activated through the microcontroller (1). The user can now place the component on the PCB, when the pick up head is lowered, the proximity sensor senses the touch pressure of the pickup head with the PCB and toggle the vacuum ON/OFF driver i.e., it makes the vacuum relay OFF and the component get placed on the PCB. When the user releases the pickup head to its normal rest position after placing the component, the microcontroller senses it and communicates to the computer about completion of the assembly of the current line or the SMD component. Computer after this command sends the next line to the microcomputer for assembly.
Fig.8 describes the Mounting Frame for holding the PCB. The guide block subassembly is shown in Fig. 8(a). The guide block sub-assembly moves forward and backward on guide channels. The novel idea of using strip which is attached at the bottom side of guide block, avoid the scratch generated on guide channels due to the tightening of the screw which is required to hold the guide block against the guide channels.
The following example is given by way of illustration of the sequential operation of this machine and it should not be construed to limit the scope of the present invention.
Example
Operation of the Machine:
1. Connect RS-232 cable to the computer and machine, connect air compressor,
vacuum pump and power cord to the machine. Switch on the machine.
RUN the User Interfacing Software on the computer.
2. The following menus are available to the user: File, Edit, Start, Print, Statistics,
Environment and Help
3. (a) Create the NEW data file for new PCB using File menu (OR)

(b) OPEN the data file using File Menu if file already exists (OR)
(c) Use Convert option of Environment menu to convert ORCAD PCB.brd
file, Enter the name of board file (say PCB.brd) and then input the
name of data file (say Pcb.dat). Teach the machine X, Y Co-ordinate of
the reference point of the PCB. Then Open this data file Pcb.dat using OPEN option of the File Menu.
5. (a) If the file is NEW or data file is created using Convert option as in step
4(c), select the environment menu to set the following options: (i) Set the PCB Type number (ii) Set the PCB NUMBER ( default is 1) (iii) Set the Metric unit either mm or inches (default is mm) (iv) Set Communication Port number (default is Coml) (b) If OPEN data option 4(b) is used select the Environment menu (i) Set Metric unit either mm or inches ( default is mm) (ii) Set Communication port number ( default is Com 1)
6. To enter data regarding X, Y pick & place co-ordinate, feeder, rack, carrousel
number etc., of PCB, Select Edit Menu
(a) Select Offline /On line option
To edit data Online then put the power ON of the machine. (Default is offline)
(b) Select Table option
A table with rows and columns appears on the computer monitor. Enter different parameters like X, Y pick & place co-ordinate, feeder, rack, carrousel number etc., of the PCB.
(c) To increase or decrease the maximum number of components as per PCB
select the Maximum number of components option of the Environment menu.
(Defauli is 100 number)
(d) Various EDIT options like Insert. Paste, Mark. Teach. Sort, ESC can be used
to build the table. Teach option can be used only with Online option to teach
the X, Y co-ordinate of the pick up head to the computer.
(e) After completion of the TABLE, use Save As option of the File menu.
i) Type the name of the file if New option 4(a) is used (OR)
ii) Select either overwrite the existing data file or ESC in the message box.
7. To stan assembly of the SMD component on the PCB, Select START menu.
(a) Select OFFSET Menu:
i) if the PCB is to be assemble at the same X,Y point where Table was created. Then X, Y OFFSET is zero (default X,Y offset is zero) (OR)
ii) If the PCB is to be assemble at different X, Y co-ordinate point then either KEVIN X, Y offset or TEACH the X, Y offset value to the machine.
(b) Set the Communication port Number (default is com 1)
(c) Set the Skip Line Number option of the Environment menu if a
particular line in the table is to be skipped during assembly.
(d) Select Assembly option of the Start menu.
(e) Various options appear for the assembly like:
i) Start assembly from line number.
Select this option and enter the line number from where assembly of the component to be started (default is 1)
ii) Start from saved line number.
Select this option if to start assembly from the previous saved line number. (0 The components get assembled line by line except those specified in
skip line number option. (g) To exit the Assembly option i. Select the Save line number option ii. Assemble the current line or component on the PCB. iii. On completion of assembly of this component, the program ESC to
main menu.
8, Print menu:
a) To print the range of Table click Select Range option.
b) To print the whole Table click All option.
9. Statistics menu:
a) Statistics of components as per PCB:
On clicking this menu, this option displays the statistics of components required for the assembly of the PCB through bar graph or table.
b) Statistics of components assembled on PCB:
On clicking this menu, it displays the statistics of the components already assembled by the user on the PCB through bar graph or table.
c) Total PCB assembled:
Displays the total PCB assembled by the user.
10. Environment Menu: The following five options are available under this menu:
a) Communication port setting: On clicking this menu the user can set the
COM port (default is coml) of the computer on which machine is
connected.
b) Assembly settings- On selecting this menu three options are available
i) PCB type number: User can enter the name of PCB.
ii) PCB NUMBER: User can enter the PCB Number, iii) Skip line number: User can define the five line numbers, which he wishes to skip during Assembly option of the Start menu.
c) Maximum Number of components: The user can define the maximum number of
components per PCB which user wishes to assemble. Maximum is 2000(default is
100)
d). Metric: User can click either mm or inches options to make the machine
compatible to work in inches as well (default is mm).
e). Convert: User can click this option to convert ORCAD PCB board file into data
file.
11. Help menu:
To get the help ON LINE Help menu can be selected that displays the help associated with various menu of the user interfacing software as well as hardware of the machine.
References may be made to the semi-automatic pick & place machine manufactured by M/s. Harotech Ag, Switzerland model PRECIPLACER PP-2003. The comparison of these models of pick & place machine with ours is as follows:
(Table Removed)
ADVANTAGES OF THE PRESENT INVENTION
The main advantages of the present invention in this machine are:
1. The machine offers tremble free mechanics to place the SMD component with
placement accuracy of +0.1 mm for manual movement of pickup head over a length of
390 mm both on X, Y axis. The tremble free mechanics is achieved by using fine
tuneable air friction brake. The placement accuracy of + 0.1 mm on X, Y axis is
required at present seeing the miniaturisation of the SMD component and the pitch of
the lead spacing ofthese SMD components which is as small as 0.3 mm.
2. The innovative clamping device provides sufficient clamping of the end plate of
the PCB holder and protects the bearing surfaces between the plate and the base frame
against scoring/damage by the clamping screw.
3. The user-friendly menu driven software for operation of this machine is Window
based using Visual Basic 6.0 as the software language.
4. The statistical menu option helps the user to know about the statistics of SMD components required for assembly of a PCB and also about the statistics of the SMD components already assembled by the user using this machine on the PCB through bar graph and tabular display.
5. The Convert option menu allows the user to link directly the ORCAD PCB board (*.brd) file with the table. This saves the time in building the table before assembly process of these components starts.

6. The maximum number of components per PCB menu option allows the user to assemble both smaller as well bigger PCB. The PCB having maximum of 2000 SMD components can be assemble with this option. This option also makes the optimum
7. utilisation of the computer memory while using this machine.
8. The metric menu option makes the machine compatible to work in both metrics as well as in inches unit.
9. The X, Y assembly of the present machine is about ten times better than the X,Y asse


We claim
1. An improved semi-automatic Pick and Place (SAPP) Machine, said machine characterised by a high precision X, Y stage sub-assembly with a vision guided device, a guide block sub¬assembly, X, Yair brake assembly, object oriented user interface software components installed in the computer system, a machine software for the control of said machine embedded in the EPROM of micro controller subassembly for error free assembly of fine pitch and standard surface mount device (SMD) components on Printed Circuit Boards
2. An improved SAPP machine as claimed in 1, wherein the X, Y subassembly provides X and Y position co-ordinates of the pickup head movement which is sensed through optical linear encoder system having a resolution of 0.02mm.
3. A improved SAPP machine as claimed in 1, wherein through X, Y subassembly, the X, Y placement accuracy of ± 0.1 mm is achieved on X, Y-axis for a manual movement of pickup head over a length of 390mm both on X, Y axis.
4. A improved SAPP machine as claimed in claim 1, wherein the software embedded in EPROM for energising the air friction brakes through electronic hardware for locking X, Y movement of the pickup head with an accuracy of ± 0.1 mm of the X, Y place co-ordinate of the SMD component.
5. An improved semi-automatic Pick and Place (SAPP) Machine substantially as herein describe with reference to examples accompanying this specification.

Documents:

01690-delnp-2003-abstract.pdf

01690-delnp-2003-claims.pdf

01690-delnp-2003-correspondence-others.pdf

01690-delnp-2003-description (complete)-23-06-2008.pdf

01690-delnp-2003-description (complete).pdf

01690-delnp-2003-drawings.pdf

01690-delnp-2003-form-1.pdf

01690-delnp-2003-form-18.pdf

01690-delnp-2003-form-2.pdf

01690-delnp-2003-form-3.pdf

01690-delnp-2003-pct-210.pdf

1690-DELNP-2003-Abstract-(23-06-2008).pdf

1690-DELNP-2003-Claims-(23-06-2008).pdf

1690-DELNP-2003-Correspondence-Others-(23-06-2008).pdf

1690-DELNP-2003-Drawings-(23-06-2008).pdf

1690-DELNP-2003-Form-2-(23-06-2008).pdf

1690-DELNP-2003-Form-3-(23-06-2008).pdf

1690-DELNP-2003-Petition-137-(23-06-2008).pdf


Patent Number 221759
Indian Patent Application Number 01690/DELNP/2003
PG Journal Number 32/2008
Publication Date 08-Aug-2008
Grant Date 03-Jul-2008
Date of Filing 16-Oct-2003
Name of Patentee COUNCIL OF SCIENTIFIC & INDUSTRIAL RESEARCH
Applicant Address RAFI MARG, NEW DELHI-110001
Inventors:
# Inventor's Name Inventor's Address
1 VYAKARANAM MOHANA LAKSHMI NARASIMHAN CENTRAL SCIENTIFIC INSTRUMENT ORGANIZATION, CHANDIGARH, INDIA
2 RANDHIR BHATNAGAR CENTRAL SCIENTIFIC INSTRUMENT ORGANIZATION, CHANDIGARH, INDIA
3 BIPIN DEV SHARMA CENTRAL SCIENTIFIC INSTRUMENT ORGANIZATION, CHANDIGARH, INDIA
4 ANMOL KUMAR MEDIRATTA CENTRAL SCIENTIFIC INSTRUMENT ORGANIZATION, CHANDIGARH, INDIA
5 SHRAVANA KUMAR RAMARAO RAYAGOND CENTRAL SCIENTIFIC INSTRUMENT ORGANIZATION, CHANDIGARH, INDIA
PCT International Classification Number H05K 13/04
PCT International Application Number PCT/IN01/00180
PCT International Filing date 2001-10-17
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 PCT/IN01/00180 2001-10-17 India