ISSN (Print) : 2320 – 3765
ISSN (Online): 2278 – 8875
International Journal of Advanced Research in Electrical,
Electronics and Instrumentation Engineering
( An I SO 3 2 9 7 : 2 0 0 7 Ce rt ifie d Org a n iz a t ion )
Vol. 5 , I ssue 7 , Ju ly 2 0 1 6
Microcontroller Based Assembly Check and
Built-In Self Test
Gousia Sultana1, Raja Vidya2
Assistant Professor, Dept. of EEE, K.S.School of Engineering and management, Bangalore, Karnataka, India1
Assistant Professor, Dept. of EEE, K.S.School of Engineering and management, Bangalore, Karnataka, India2
ABSTRACT: In present large scale industries where production per day is of the orders of few hundreds to few
thousands, it is difficult to check whether each component assembled on PCB (Printed Circuit Board) is in the proper
position or not and also to check whether all the designed components are present on the board. If the manual method is
used to perform this process, production cost increases and decreases the rate of production. In manual method an
electronic engineer or technician who has knowledge of all electronic components will check component by component
and will send the tested board to next section if everything is correct else it will be rejected which is time consuming. A
solution to solve this problem is to replace the current system with a cost of around 2 to 3crore which is used to design
an electronic system which tests all the sections of the board and will give clear report of all assembled components at
cost of 20 to 25 thousand rupees (low cost systems), which will be helpful for small scale industries. If one or more
components are not present, it will automatically detect and discard it as defective PCB and if all the designed
components are present it will display the details of component checked and their position.
KEYWORDS: Printed Circuit Board (PCB), Assembly Check, Electronic components, MPLAB IDE, Embedded
system.
I.INTRODUCTION
The novel idea of this project is to achieve higher production rate in a large scale industry by using this embedded
system. This project is basically a microcontroller based design used to check the assembly of all the components in a
PCB (Printed Circuit Board). When all the components are present then it continues to check the voltages in different
sections of the board and gives decision about the working performance of each section of the circuit under test.
It consists of a platform on which the assembled board is placed in specific position. Once the system is switched on, it
starts checking the components one by one and display the status of operation. When the specific component is not
found in the specific position, it will display the name of components and their specifications on the display unit and
rejects the board since it cannot be sent to next section for testing.
Three stepper motors are used in the project to check position of each component on the board. First motor move in X-
direction and second will move in Y-direction and third motor in Z-direction is used to check the components. The
speed, direction of movement and the displacement of all the motors depends on the values specified in the software.
Since stepper motor requires high current for its operation Darlington amplifiers are used. The power supply unit
consisting step down transformer, rectifier, filter and regulator IC (Integrated Circuit) is used to supply different DC
voltages to different sections of the circuit.
The MPLAB IDE (Microprocessor Lab Integrated Development Environment) is used in this project, a window based
platform for designing the software. The program is simulated in the system using simulator and then is tested with the
hardware modules.
II. LITERATURE SURVEY
Printed circuit boards (PCBs) testing is becoming more expensive and difficult due to the complexity of PCBs design.
The common methods for diagnosing PCBs still suffering from many difficulties; it needs long time, a lot of manual
Copyright to IJAREEIE DOI:10.15662/IJAREEIE.2016.0507039 6401
ISSN (Print) : 2320 – 3765
ISSN (Online): 2278 – 8875
International Journal of Advanced Research in Electrical,
Electronics and Instrumentation Engineering
( An I SO 3 2 9 7 : 2 0 0 7 Ce rt ifie d Org a n iz a t ion )
Vol. 5 , I ssue 7 , Ju ly 2 0 1 6
work, direct contact with PCB, and it is so expensive [1]. It is difficult to check whether each component assembled on
PCB (Printed Circuit Board) is in the proper position or not and also to check whether all the designed components are
present on the board. If the manual method is used to perform this process, production cost increases and decreases the
rate of production.
Salim A. Jayousi, M. Saufee Muhammad [1] has done A Survey of Contact Testing Techniques for the Diagnosis of
Printed Circuit Boards and concluded that the direct contact testing techniques based totally on direct contact between
the tester probes and the leads of the component under test. Such techniques suffer from several deficiencies; Most of
those test systems are limited to 100 MHz while the new PCBs operate at higher frequencies. Moreover, those methods
also inherently limited since its large size. Moreover, it consists of hundreds of tiny needle probes which require
simultaneous contact around the chip’s periphery. Hence, due to the complexity of integrated circuits and printed
circuit boards and the increasing of the surface mount technology, it became necessary to develop new testing
techniques to avoid precise and complex fixtures.
Stig Oresjo [2] has presented a new test strategy for high complexity printed circuit board assemblies. The strategy is
based on complementary use of AXI, ICT, and Functional Test. The key benefits are higher fault coverage, resulting in
higher yields into functional test and lower field failures. Less overlapping tests are also resulting in simplified in-
circuit test and simplified in-circuit fixtures. It also provides a good solution when electrical and visual access is
reduced. In almost all cases it also has significant economic advantages.
Mohit Borthakur, Anagha Latne Vishwakarma, Pooja Kulkarni Vishwakarma[3] has done a Comparative Study of
Automated PCB Defect Detection Algorithms and Proposed an Optimal Approach to Improve the Technique, they
have noted that different operations are found suitable for different PCBs according to its features. The drawbacks of
different proposed algorithms have been studied and accordingly an optimal approach is used to minimise the
shortcomings and increase the operation speed. The major limitation of existing inspection systems is that all the
algorithms need a special hardware platform to achieve the desired real-time speeds. This makes the systems extremely
expensive. The proposed algorithm in this paper is faster as compared to previous algorithms and can also detect a
diverse range of defects. It has been able to eradicate the problems faced with simple morphological operations,
subtraction, wavelet transform and thresholding operation. There may be certain real time challenges while capturing of
the image and hence those shortcomings are to be overcome. The following algorithm was applied on 4 different types
of bare PCBs and it was found to be almost 90% accurate. Also the same process was applied on 5 different types of
mounted PCBs with 80-85% accuracy.
III.STATEMENT OF THE PROBLEM
In present large scale industries where production per day is of the orders of few hundreds to few thousands, it is
difficult to check whether each component assembled on PCB is in the proper position or not and also to check whether
all the designed components are present on the board. If the manual method is used to perform this process, production
cost increases and decreases the rate of production. In manual method an electronic engineer or technician who has
knowledge of all electronic components will check component by component and will send the tested board to next
section if everything is correct else it will be rejected that is time consuming. And also possibilities of human error
cannot be overseen.
IV.OBJECTIVE OF THE PROJECT
The Objectives of this project are:
To gain knowledge and experience in developing an application which helps in industrial automation.
To gain knowledge of 16f877 microcontroller and the way in which this can be used for an industrial system.
To develop a system, this increases the speed of production with higher accuracy and decreases the production
cost.
Copyright to IJAREEIE DOI:10.15662/IJAREEIE.2016.0507039 6402
ISSN (Print) : 2320 – 3765
ISSN (Online): 2278 – 8875
International Journal of Advanced Research in Electrical,
Electronics and Instrumentation Engineering
( An I SO 3 2 9 7 : 2 0 0 7 Ce rt ifie d Org a n iz a t ion )
Vol. 5 , I ssue 7 , Ju ly 2 0 1 6
V. SCOPE OF THE PROJECT
This system aids industrial production by performing two operations namely
1. Checking the assembly.
2. Testing the circuit.
After these operations the given product is sent to quality control and then finally it is delivered to the user. Since above
operations are performed by an electronic system it can work continuously throughout day and night to achieve the
required production rate.
To improve the performance of the system robotic assembly of components and automatic wave soldering systems can
be used before applying it to our system.
VI. CIRCUIT DIAGRAM
Fig.1 Circuit Diagram
Figure.1. shows the block diagram of project. Here, 16F877 microcontroller is used where Port A is used as input port
and rest of the ports i.e. Port B, port C, Port D and port E as output ports. The driving capability of each port is 25mA.
We can use each pin of each port as either input port or output port. It also has watchdog timer, power up timer, power
on reset, oscillator, Start up timer, ICD(In-Circuit debugger), LVP (Low Voltage Programming), three timers, the CCP
(compare, capture & PWM modules), EEPROM (Electrical Erasable Programmable Read only memory), 8k X14
program memory, 368 byte data memory, parallel slave port etc.
Power supply unit is constructed by using 12-0-12, 1A transformer, full wave rectifier, filter and regulator. 230 V
mains are connected to primary of transformer. The secondary voltage is applied to rectifier to convert AC to DC and
then applied to capacitor filter to get pure DC. This unregulated 12 volts DC voltage is connected to stepper motor
circuit. The same unregulated voltage is given to 7805 regulated IC (Integrated circuit) to obtain +5v. This +5v is
applied to microcontroller, proximity sensor, display unit, driver & other circuitry as show in circuit diagram.
A 16 characters * 2 line module LCD (Liquid Crystal Display) display unit is used to display the name of the
component, its value and status of operation. It is a dynamic display which requires less hardware, less space, less
Copyright to IJAREEIE DOI:10.15662/IJAREEIE.2016.0507039 6403
ISSN (Print) : 2320 – 3765
ISSN (Online): 2278 – 8875
International Journal of Advanced Research in Electrical,
Electronics and Instrumentation Engineering
( An I SO 3 2 9 7 : 2 0 0 7 Ce rt ifie d Org a n iz a t ion )
Vol. 5 , I ssue 7 , Ju ly 2 0 1 6
number of inter connections and draws negligible power. Port B lines are used to supply seven segment codes and port
C and port D lines to select digital position as shown in figure above.
VII. PROCEDURE TO TEST THE ASSEMBLY OF COMPONENTS
STEP 1: Microcontroller will send digital data to display unit to indicate the name of the component.
STEP 2: Then it moves the stepper motor 1 in X axis to reach the component.
STEP 3: Initialize the step counter to Zero. Step counters are used to store the number of steps moved in Z direction.
STEP 4: Move the stepper motor 3 in Z axis downwards in steps of 1mm
STEP 5: Check the proximity sensor input to find whether the component is found or not.
STEP 6: If the component is not found the step count is incremented by one and step 3 and 4 are repeated again until
maximum point is reached. Display unit will show FAIL to indicate that component is not found in that
position.
STEP 7: Maximum point is decided by the distance between component which is placed very near to the board and the
sensor.
STEP 8: If the component is found, the indicator (LED) present in the sensor will glow and sends a digital signal
through the signal line (black wire) of sensor. Microcontroller will check the sensor output by using
appropriate instructions and decides the presence or absence of component in that specific position.
STEP 9: Display unit will show FOUND to indicate that component is found in that position.
STEP 10: The above procedure is repeated for all other components of the board.
STEP 11: Steps 1 to 10 are used to check assembly of any assembled PCB used in a specific application.
VIII. RESULT
In the project, an attempt has been made to design an electronic system which tests the whole board and will give clear
report of assembled components. If one or more components are not present, it will automatically reject the board and
starts testing the next board. This system performs all the operations automatically and will display the details of the
component checked and their position.
It consists of a platform on which the assembled board is placed in specific position as shown in fig.2. Once the system
is switched on, it starts checking the components one by one and display the status of operation in each case. It will
display the name of components and their specifications on the display unit and rejects the board since it cannot be sent
to next section for testing. If all the components are found in their positions then it will continue to perform the further
test of different sections of the circuit by using scaling unit. This unit can be used for different types of boards used in
any industry.
Fig.2 Block diagram
Copyright to IJAREEIE DOI:10.15662/IJAREEIE.2016.0507039 6404
ISSN (Print) : 2320 – 3765
ISSN (Online): 2278 – 8875
International Journal of Advanced Research in Electrical,
Electronics and Instrumentation Engineering
( An I SO 3 2 9 7 : 2 0 0 7 Ce rt ifie d Org a n iz a t ion )
Vol. 5 , I ssue 7 , Ju ly 2 0 1 6
IX. LIMITATIONS
1. This system is designed for less number of components. This limitation can be solved by increasing the count
to a required value and modifying software accordingly.
2. This project is a microcontroller –based project. The main limitation is the size of ROM available on the chip
for programming.
X. FUTURE ENHANCEMENT
By using camera in place of proximity sensor check can be done by visual method.
By using well designed mechanical setup higher accuracy and speed of operation can be achieved.
Different types of circuits can be tested automatically by making slight changes in signal conditioning circuit.
XI. CONCLUSION
The project “Microcontroller based Assembly check and BIST (Built-in self test)” which is an embedded application is
intended to test assembly of different components in a PCB and test the circuit automatically when assembly check is
successful. It has been successfully tested and demonstrated with the hope that the same system can be implemented for
practical utility. Using this application we can achieve increase in production and decrease in production cost. This
system can be modified to check different boards of different sizes at high speed. For PCB’s having surface mounted
devices (SMD) and other micro components, miniature stepper motors with small step angle are preferred.
In this prototype model, we have implemented hardware and software to test a circuit board which contains both
passive and active components. The same procedure is used to test any other circuit. Multiple stages of signal
conditioning circuits are needed to perform testing of sophisticated PCB’s like motherboard of a personal computer,
satellites and other machines. Hence the project can be summarised with advantages like, easier implementation, low
power consumption, rugged operation and hence long life, economical, portability and ease of operation.
REFERENCES
[1] Salim A. Jayousi, M. Saufee Muhammad, ” A Survey of Contact Testing Techniques for the Diagnosis of Printed Circuit Boards”,
International Journal of Scientific & Engineering Research, Volume 5, Issue 4, April-2014, ISSN 2229-5518.
[2] Stig Oresjo, “A New Test Strategy For Complex Printed Circuit Board Assemblies”, article, Agilent Technologies Ltd.
[3] Mohit Borthakur, Anagha Latne Vishwakarma, Pooja Kulkarni Vishwakarma, “A Comparative Study of Automated PCB Defect Detection
Algorithms and to Propose an Optimal Approach to Improve the Technique”, International Journal of Computer Applications (0975 – 8887)
Volume 114 – No. 6, March 2015.
[4] R. Glenn Wright, Larry V. Kirkland, Marek Zgol, David Adebimpe, Ernest Keenan, Robert Mulligan “Novel Approach to Circuit Board
Testing”, NSTI-Nanotech 2004, Vol. 3, 2004, pp. 487-490, ISBN 0-9728422-9-2.
[5] Feng Xie, Alexandra Uitdenbogerd, Andy Song “Detecting PCB Component Placement Defects by Genetic Programming” 2013 IEEE
Congress on Evolutionary Computation June 20-23, Cancún, México.
[6] Vermeulen, B., et al. Trends in testing integrated circuits. in Test Conference, 2004. Proceedings. ITC 2004. International. 2004: IEEE.
[7] S.Kanimozhi, Dr. K.Gopala Krishnan, “A review on Automatic Bare PCB Board Testing”, International Journal of Science &
Technology(IJST), Vol. 4 Issue 1, July 2014.
Copyright to IJAREEIE DOI:10.15662/IJAREEIE.2016.0507039 6405