Component Grouping for Automatic Printed Circuit Board Assembly

A company may have several automatic SMD assembly lines,and each line has its own configuration, that is,different lines have different numbers of various types of placement (pick and place) machines. Figure 2 shows a partial layout for three assembly lines. There are several types of placement machine in these lines,i.e.HP, IP-I, IP-II, CP-II, and CP-III. After a company has received a number of customer orders, for various boards with different quantities, it has to determine which assembly line to make which board, and the required quantities. This determination was formulated as a machine loading problem and can be solved using a general transportation model. However, before the model is applied to this problem, the components in the board must be assigned to proper automatic placement machines to form groups, so the cycle time of the line can be determined. These automatic placement machines in a line may not be identical, as shown in Fig.2, so the placement times for the same component vary, depending on the machines. As the order quantity for a board is very large, a minor reduction in the cycle time will save significant production time and cost. For example, as reduction in the cycle time will save over 4 h of production time if the order is15000(15000/36004.1h), that is, half a shift. The objective should be minimisation of the cycle time. The purpose of this paper is to group SMD components into suitable placement machines in order to obtain the mini-mum cycle time for a particular PCB assembly line. This component grouping problem is first formulated as an integer linear programming model. An integer linear programming model can be solved by the general branch-and-bound(B&B) algorithm.However, the model is relaxed as a linear programming formulation because B&B takes a long time and because a near-optimal solution is acceptable in the real situation for the company. A new algorithm is developed from the dual of the linear programming model. To demonstrate the efficiency of the algorithm, an example is presented and compared with its integer solution using a commercial package,CPLEX.