Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
IMPROVED SEMI-AUTOMATIC PICK & PLACE MACHINE FOR ASSEMBLY OF COMPONENTS
Document Type and Number:
WIPO Patent Application WO/2003/034802
Kind Code:
A1
Abstract:
An improved semi-automatic Pick and Place (SAPP) Machine for assembly of Fine Pitch and Standard Surface Mount Device (SMD) components on Printed Circuit Boards, said machine comprising 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.

Inventors:
NARASIMHAM VYAKARANAM MOHANA L (IN)
BHATNAGAR RANDHIR (IN)
SHARMA BIPIN DEV (IN)
RAYAGOND SHRAVANA KUMAR RAMARA (IN)
MEDIRATTA ANMOL KUMAR (IN)
Application Number:
PCT/IN2001/000180
Publication Date:
April 24, 2003
Filing Date:
October 17, 2001
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
COUNCIL SCIENT IND RES (IN)
NARASIMHAM VYAKARANAM MOHANA L (IN)
BHATNAGAR RANDHIR (IN)
SHARMA BIPIN DEV (IN)
RAYAGOND SHRAVANA KUMAR RAMARA (IN)
MEDIRATTA ANMOL KUMAR (IN)
International Classes:
G06F9/22; G06F9/44; H05K13/04; (IPC1-7): H05K13/04
Foreign References:
JP2001144491A2001-05-25
US6216341B12001-04-17
DE19948455A12001-05-17
US5694219A1997-12-02
Attorney, Agent or Firm:
Gabriel, Devadoss Calab (84-C C6 LANE, SAINIK FARMS 2 NEW DELHI, IN)
Download PDF:
Claims:
CLAIMS
1. An improved semiautomatic Pick and Place (SAPP) Machine, said machine comprising a high precision X, Y stage subassembly with a vision guided device, a guide block subassembly, X, Y air 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. A SAPP machine as claimed in 1, wherein the X, Y subassembly provides X and Y position coordinates of the pickup head movement which is sensed through optical linear encoder system having a resolution of 0.02mm.
3. A SAPP machine as claimed in 1, wherein through X, Y subassembly, the X, Y placement accuracy of + 0.1 mm is achieved on X, Yaxis for a manual movement of pickup head over a length of 390mm both on X, Y axis.
4. A 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. A SAPP machine as claimed in claim 1, wherein the X, Y assembly of the machine comprises subassemblies including End plates, X slide block, Y slide block, X, Y slide and Linear encoder scale.
6. A SAPP machine as claimed in claiml, wherein said subassembly End Plates perform the function of holding two X axis slide rods and maintaining their parallelism with an accuracy of 10 micron.
7. A SAPP machine as claimed in claiml, wherein the X, Y slide block having only one degree of freedom glides effortlessly on the slide rods using frictionless standard linear bearings.
8. A SAPP machine as claimed in claiml, wherein the X, Y slide mounts a high precision linear encoder scale with a resolution of 0. 1mm as a reference scale for measurement of the XY translation of the pickup head.
9. A SAPP machine as claimed in claiml, wherein said machine provides for tremble free mechanics to place components by using fine tuneable air friction brake.
10. A SAPP machine as claimed in claiml, wherein said X, Y air brake assembly having air solenoid valve that gets automatically activated by the microcontroller, when the vacuum nozzle reaches within 0. 1 mm of the X, Y placement coordinate of SMD component.
11. A SAPP machine as claimed in claim 1, wherein said guiding block subassembly comprising a strip at the bottom side of the guide block that provides a protection to bearing surfaces of PCB against scoring and damage caused by the clamping screw or any other resulting damages thereof.
12. A SAPP machine as claimed in claim 1, wherein hardware devices of said machine is controlled by software having Object Oriented features.
13. A SAPP machine as claimed in claim 1, wherein said novel software provides Statistics Menu option to determine the statistics of the components required in the PCB assembly as well as the statistics of how many components are already assembled by the machine on the PCB through bar graph display and tabular display.
14. A SAPP machine as claimed in claim 1, wherein said software controlling the machine can handle up to 2000 different components of PCB during assembly.
15. A SAPP machine as claimed in claiml, wherein the software provides for a Convert option in the Environment menu helps the user to avoid inputting, manually or teaching the X, Y place coordinate of the component on the PCB.
16. A SAPP machine as claimed in claim 1, wherein said software controls the machine by providing user with an option of using either mm or inches as the metric unit to input/teach X, Y coordinates in the table.
17. A SAPP machine as claimed in claim 1, wherein said software prepares the table in advance by providing orientation, name, X, Y Place coordinates, and position of the components so that these can be directly loaded in the table from the ORCAD board file.
18. A SAPP machine as claimed in claim 1, wherein mirror arrangement in periscopic assembly along with back light below the PCB holder, illuminates the PCB area so as to give less eyestrain as well as more clarity of the pins of the SMD components to the operator.
19. A SAPP machine as claimed in claim 1, wherein said software controlling the machine also provides ON LINE HELP to the user about both hardware and software operation.
Description:
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 IC feeder. The vacuum gets activated or deactivated automatically on pressing the nozzle either against the IC 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 PCBs'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) Z 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. 0mm 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 compon- ent 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 of 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 (PCB 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.

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/haro_o. html c). http ://www. essemtec. com/english/products/probodyindex. 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 Semi- automatic 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.

DETAILED DESCRIPTION OF THE PRESENT INVENTION Accordingly, the present invention provides for an improved semi-automatic Pick and Place (SAPP) Machine for assembly of Fine Pitch and Standard Surface Mount Device (SMD) components on Printed Circuit Boards, said machine comprising 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.

Yet 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 movement 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 and also protects the bearing surfaces between the plate and the base frame against the scoring/damage by the clamping screw.

Further, yet another embodiment of the present invention provides for an improved SAPP machine with tremble free mechanics to place the components by using fine tuneable air friction brake.

Still, yet another embodiment of the present invention, provides for an improved SAPP machine 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 placement co-ordinate position with an accuracy of +0. 1 mm.

Further, in yet another embodiment of the present invention, a simple electromagnetic solenoid is used 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 PCB.

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 PCB while placing.

Yet another embodiment of the present invention provides for ergonomic, moveable hand rest that gives firm support to the hand while moving the X, Y co-ordinate of the pickup head 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 picture 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 light 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 another embodiment of the present invention, wherein hardware devices of said machine are controlled by a software having Object-Oriented features.

Yet another embodiment of the present invention, provides for software comprising Statistics Menu that helps the user to know the statistics of the components required in the PCB assembly as well as to know the statistics of components that are already assembled by the machine through bar graph display.

Still, yet another embodiment of the present invention provides for software comprising Environment 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 much 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 starts.

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 of i0. lmm.

In yet another embodiment of the present invention, said Graphical User Interface provides following Statistical Menu Options for an improved assembly process of the components; In another embodiment of the present invention, said Statistics Menu provides Statistics of components as per PCB requirements, statistics of components already assembled on 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 the operation of setting the Communication port number through which computer communicates with the machine.

Still, another embodiment of the present invention, wherein PCB type number, PCB number submenu 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 of the Start Menu.

In another embodiment of the present invention, maximum number of components submenu performs the function to define the maximum number of rows of the Table of the EDIT menu, wherein the user can feed various parameters of the SMD components in the table.

Another embodiment of the present invention provides for Assembly submenu of Start Menu, with which the assembly of SMD components is, performed row wise maximum up to 2000 components.

Another embodiment of the present invention provides for Metric submenu having the utility function with which the user can work either in mm or inches.

Still, another embodiment of the present invention provides for Convert submenu option having the utility function to load direct ORCAD PCB board file in the TABLE menu that helps user in avoiding to input the X, Y place co-ordinates, orientation of the component, name of the component, position of the component in the Table menu of EDIT option.

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, 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; 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 (vii) 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 EPROM 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. 0CX ActiveX control the name and count of the components are plotted through bar graph.

Using Grid32. 0CX 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 electronics 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. 1 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 1 mm ( 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.

SUBSTITUTE SHEET (RULE 26)

In Fig. 5 the block diagram of the machine is depicted.

In Fig. 5, block 1 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 co-ordinate 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 simul- taneously 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 (S1), 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-11 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 Coml) 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. (Default 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 start 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 KEYIN X, Y offset or TEACH the X, Y offset value to the machine.

(b) Set the Communication port Number (default is coml) (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.

(f) 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: si. Submodules of the M/s. Harotech, No. Semiautomatic Pick & CSIO Model SAPP Switzerland Model Place Machine for SMDs PP-2003 1. Rack & Feeder Assembly Available Available 2. Carrousel Assembly Available Available X, Y assembly: 3 (a). The linear encoder scale Linear scale with Minimum X, Y resolution of used in this machine has a resolution of 1. Omm linear scale resolution of 0.02mm. is used 3 (b). X, Y Assembly: The innovative idea of The X, Y placement using linear encoder scale accuracy is +l. Omm. Min. X, Y Placement accuracy provides X, Y placement Thus tremble free of SMD Component accuracy of +0. 1 mm. This placement of fine helps in tremble free pitch SMD placement of fine pitch components with this SMD components which machine is difficult. have lead pitch spacing as small as 0.3 mm. 4. X, Y air brake assembly Available Available Pick up head assembly, 5. Vacuum ON/OFF control and Available Available vacuum pump 6. Z and theta assembly of Pick Available Available up head The innovative clamping 7. Mounting Frame for holding device provides sufficient The clamping screw PCB clamping of the end plate score/damage the of the PCB holder and base frame protects the bearing surfaces between the plate and the base frame against scoring/damage by the clamping screw 8. Moveable hand rest Available Available 9. Periscopic Assembly with Available Available CCD camera 10 (a) Microcontroller & Machine The electronics hardware The electronics Electronics hardware/of the machine is based hardware of the software around Intel 8032 machine is based microcontroller around Motorola 68HCI IFI microcontroller. 10 (b) The machine software The machine which resides in software which EPROM, performs resides in EPROM, various machine performs various operations as well as machine operations sensing and counting as well as sensing the X, Y co-ordinate and counting the X, with resolution of Y co-ordinate with 0.02mm and operating resolution of 1.0 the X, Y air brake with mm and operating minimum placement the X, Y air brake accuracy of + 0. 1 mm with minimum of X, Y place co-placement ordinates of SMD accuracy of + 1.0 component. This will mm of X, Y place help the user in co-ordinate of placement of SMD SMD components. components that have lead pitch spacing as small as 0.3 mm. 11 (a) User Interface Software The User interface The user interface software resides in hard software resides in disk of the Pentium-11 hard disk of the computer. The User computer and is interface software is developed in DOS developed for Window environment. 95 environment using Visual Basic 6.0 software. I I (b) The following Menu are The following provided to make it Menu are provided more user friendly to the user FILE, software. FILE, EDIT, EDIT, START, START, PRODUCTION, PRINT, STATISTICS, PRINT, SYSTEM ENVIRONMENT, ON LINE HELP 12 File Menu The following options All these Options are available under this are also available menu NEW, OPEN, SAVE AS, CLOSE, EXIT 13 EDIT Menu The following Options All these options are available under this are also available menu TABLE, OFFLINE/ ONLINE 14 Start Menu The following options All these options are available under this are also available menu Offset (Keyin Offset, Teach Offset) Assembly 15 Print Menu The following Options All these Options are available are also available ALL, Select Range 16 Statistics Menu The following options Only Total PCB are available under this assembled option is menu available in PRODUCTION Statistics of Menu. Components as per PCB Statistics of PCB components assembled Total PCB assembled 17 Environment Menu The following options The following are available options are available in Port Setting PRODUCTION as well as in Assembly Settings SYSTEM Menu. (PCB) Type No. , PCB Port setting No. , Skip Line No. ) Assembly Settings (PCB Type No., Maximum No. of PCB No. , Skip Components Line No.) The other options Metric Units (mm or are not available. inches) CONVERT (for ORCAD Board file) This Help Menu 18 HELP Menu ON Line Help Menu option is not available available. The user has to refer to Operational Manual

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 of these 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 assembly of the semiautomatic machines available in the international market.