IRJET - Fabrication of Pendulum Machine for Generation of Electricity through...
13EC 17014.docx
1. E.C.T
Page 1
PC BASED TESTING OF MULTI-TURN
POTENTIOMETER USING MICROCONTROLLER
A PROJECT REPORT
Submitted by
ABHILASH DAS
CHITANSHU CHAUHAN
In fulfillment for the award of the degree
Of
BACHELOR OF ENGINEERING
In
ELECTRONICS AND COMMUNICATION ENGINEERING
ENGINEERING COLLEGE, TUWA
GUJARAT TECHNOLOGICAL UNIVERSITY, AHMEDABAD
November, 2012-13
ENGINEERING COLLEGE, TUWA
ELECTRONICS AND COMMUNICATION ENGINEERING
2. E.C.T
Page 2
ACKNOWLEDGEMENT
We sincerely express our deep sense of gratitude and regards to Prof. Jayesh Gandhi (External
Guide, Department of Electronics) for their invariable guidance and constant encouragement in
successfully completing the project. We express our thankfulness to Prof. Dinesh Nagar (Head,
Department of Electronics Engg.) and Prof. Pragnesh Patel(Assistant professor, Department of
Electronics Engg.)for his kind support and help.
We are also thankful to all of them who gave us unconditional support and help during the
preparation of this project.
Abhilash Das(090550111049)
Chitanshu Chauhan(090550111050)
3. E.C.T
Page 3
GUJARAT TECHNOLOGICAL ENGINEERING
COLLEGE OF UNIVERSITY COLLEGE, TUWA
CERTIFICATE
This is to certify that the project report entitled “PC BASED TESTING OF
MULTI-TURN POTENTIOMETER USING MICROCONTROLLER”
submitted by ABHILASH DAS AND CHITANSHU CHAUHAN to the
department of ELECTRONICS ENGINEERING, ENGINEERING COLLEGE
, TUWA affiliated by GUJARAT TECHNOLOGICAL UNIVERSITY partial
fulfillment of the requirement for the award of the degree of “Bachelor of
Engineering”in ELECTRONICS ENGINEERING is a bonafide record of work
carried out by them, in 2013, End Semester, under our supervision and guidance.
Prof. Dinesh Nagar Prof. Jayesh Gandhi Prof. Pragnesh Patel
(Head of Department) (Associate Professor) (Assistant Professor)
4. E.C.T
Page 4
ABSTRACT
Potentiometers are used extensively in many applications such as in lab
experiment, regulators, joy-sticks, etc. Now days there are many companies
manufacturing potentiometers. Various types of potentiometers are available in
market for various usages. Now any company or industry tends to test its product
before launching it in the market. Even they pass a limited number of products to
their fixed users for feedback. Our project is based on the actual testing of
potentiometer so as to check if the potentiometer is working properly or not. If it is
not working properly then the R&D Dept. will rectify the problem and this process
is repeated until the product gives perfect readings.
5. E.C.T
Page 5
TABLE OF CONTENTS
CHAPTER 1
INTRODUCTION……………………………………...............................11
CHAPTER 2
BLOCK DIAGRAM…………………..……….……………………….…14
CHAPTER 3
CIRCUIT DIAGRAM…………………...…...............................................15
CHAPTER 4
POTENTIOMETER
4.1 What Is Potentiomete……………….……………………………..…18
4.2 Construction Of Potentiometer………..…………………………….19
4.3 Working Of Potentiometer……………..…………………………....21
4.3.1 How To Read One……………….……………………………21
4.3.2 Theory Of Operation…………….……………………………22
4.4 Potentiometer Application……………….……………………………24
CHAPTER 5
ARDUINO
5.1 What Is Arduino?................................... ...........................................28
5.2 History………………………………………………….…………...30
5.3 Hardware Description…………..…………………..........................30
5.4 Arduino Board Model……………………………………………....31
5.5 Arduino Software………………………..…….................................31
6. E.C.T
Page 6
5.6 Project Oriented Application…………………………..………..…..33
CHAPTER 6
STEPPER MOTOR
6.1 Introduction & Working……………………………..…………..…35
CHAPTER 7
L293D
7.1 Moter driver……………………………………................................39
7.1.1 Specification……………………………….............................39
7.2 Role Of L293D………………………………...……………………40
7.3 Working Theory Of H-Bridge………………...…………………….42
7.4 Speed ControlUsing AWM………………...……………………....43
CHAPTER 8
RS-232
8.1 Introduction Of RS-232………………..……….……...…………...45
8.2 RS-232 Specification………………..…….…………….………....46
CHAPTER 9
PYTHON SOFTWEAR
9.1 Introduction of Python……………..……………………...………..49
9.2 Python Program……………………………………………...……..50
CHAPTER 10
PCB
10.1 Introduction…………………….………………………...……….54
12. E.C.T
Page 12
CHAPTER 1
INTRODUCTION:
Potentiometers are now a days used extensively in many applications such as
regulators, joy-sticks, etc. Some years even they were even used in television.
Various parts of TV were using potentiometers for manipulating various functions.
Even they are used transducers such as gaming joy-sticks for controlling motions
both virtually and really. In industries, potentiometers are tested before launching
and their various kinds of linearity’s are measured so as to find the accuracy and
increase the work performance of the device. This is most important advantage of
TESTING the pot. Many sensors use pot. and that is the main reason to check its
accuracy and linearity and make it maximum.
18. E.C.T
Page 18
POTENTIOMETER
4.1 What is Potetiometer
4.2 Construction of Potentiometer
4.3 Working of Potentiometer
4.3.1 How to Read One
4.3.2 Theory of Operation
4.4 Potentiometer Application
What is a potentiometer?
A potentiometer, informally a pot, is a three-terminal resistor with a sliding
contact that forms an adjustable voltage divider. If only two terminals are used, one
end and the wiper, it acts as a variable resistor or rheostat.
A potentiometer measuring instrument is essentially a voltage divider used for
measuring electric potential (voltage); the component is an implementation of the
same principle, hence its name.
Potentiometers are commonly used to control electrical devices such as volume
controls on audio equipment. Potentiometers operated by a mechanism can be used
as position transducers, for example, in a joystick. Potentiometers are rarely used
to directly control significant power (more than a watt), since the power dissipated
in the potentiometer would be comparable to the power in the controlled load.
19. E.C.T
Page 19
Fig. 4.1 Potentiometer Fig. 4.2 Small Potentiometer
Construction of Potentiometer.
Potentiometers comprise a resistive element, a sliding contact (wiper) that moves
along the element, making good electrical contact with one part of it, electrical
terminals at each end of the element, a mechanism that moves the wiper from one
end to the other, and a housing containing the element and wiper.
Many inexpensive potentiometers are constructed with a resistive element formed
into an arc of a circle usually a little less than a full turn, and a wiper rotating
around the arc and contacting it. The resistive element, with a terminal at each end,
is flat or angled. The wiper is connected to a third terminal, usually between the
other two. On panel potentiometers, the wiper is usually the center terminal of
three. For single-turn potentiometers, this wiper typically travels just under one
revolution around the contact. The only point of ingress for contamination is the
narrow space between the shaft and the housing it rotates in.
Another type is the linear slider potentiometer, which has a wiper which slides
along a linear element instead of rotating. Contamination can potentially enter
anywhere along the slot the slider moves in, making effective sealing more
difficult and compromising long-term reliability. An advantage of the slider
20. E.C.T
Page 20
potentiometer is that the slider position gives a visual indication of its setting.
While the setting of a rotary potentiometer can be seen by the position of a
marking on the knob, an array of sliders can give a visual impression of, for
example, the effect of a multi-channel equaliser.
The resistive element of inexpensive potentiometers is often made of graphite.
Other materials used include resistance wire, carbon particles in plastic, and a
ceramic/metal mixture called cermet. Conductive track potentiometers use
conductive polymer resistor pastes that contain hard-wearing resins and polymers,
solvents, and lubricant, in addition to the carbon that provides the conductive
properties. Others are enclosed within the equipment and are intended to be
adjusted to calibrate equipment during manufacture or repair, and not otherwise
touched. They are usually physically much smaller than user-accessible
potentiometers, and may need to be operated by a screwdriver rather than having a
knob. They are usually called "preset potentiometers". Some presets are accessible
by a small screwdriver poked through a hole in the case to allow servicing without
dismantling.
Multi-turn potentiometers are also operated by rotating a shaft, but by several turns
rather than less than a full turn. Some multi-turn potentiometers have a linear
resistive element with a slider which moves along it moved by a worm gear; others
have a helical resistive element and a wiper that turns through 10, 20, or more
complete revolutions, moving along the helix as it rotates. Multi-turn
potentiometers, both user-accessible and preset, allow finer adjustments; rotation
through the same angle changes the setting by typically a tenth as much as for a
simple rotary potentiometer.
A string potentiometer is a multi-turn potentiometer operated by an attached reel of
wire turning against a spring, enabling it to convert linear position to a variable
resistance.
User-accessible rotary potentiometers can be fitted with a switch which operates
usually at the anti-clockwise extreme of rotation. Before digital electronics became
the norm such a component was used to allow radio and television receivers and
other equipment to be switched on at minimum volume with an audible click, then
the volume increased, by turning a knob. Multiple resistance elements can be
ganged together and controlled by the same shaft, for example, in stereo audio
amplifiers for volume control.
21. E.C.T
Page 21
Fig.4.3 construction
Working of potentiometer
Potentiometers work by having a resistive element inside. Both end terminals are
attached to it, and do not move. The wiper travels along the strip when the knob is
turned. The closer the wiper is to the end terminal it is wired in conjunction with,
the less the resistance, because the path of the current will be shorter. The further
away it moves from the terminal, the greater the resistance will be.
The symbol for a potentiometer is the same one as a resistor, save for an arrow in
the middle. In a circuit where they are used strictly as variable resistors or
rheostats, only two terminals are wired to the other components. All three
terminals are wired separately when they function as voltage dividers. Light
dimmers in houses and volume controls on electronics are two common
applications. Others include switches and position sensors.
22. E.C.T
Page 22
How to Read One
Fig 4.4 Measuring Potentiometer
To read a potentiometer, you need a multi-meter. Put in on the proper ohmmeter
setting, which should be higher than that of the resistance rating of the
potentiometer as noted on the package or the device. If you don't know the
resistance rating, use the lowest setting of the multi-meter and increase it until you
get a reading.
When reading the potentiometer, one multi-meter lead must always be on the wiper
or middle part, and the other one can be on either of the remaining terminals. For
example, place one multi-meter lead on the wiper, and the other on the left
terminal of the potentiometer. If you place one lead on the left terminal and the
other on the right, you will read the entire value of the pot, and the resistance will
not vary when you turn the knob.
Note that Inexpensive ones may approximate only fifty percent of their rated value
when they are measured.
23. E.C.T
Page 23
Theory Of Operation
A potentiometer with a resistive load, showing equivalent fixed resistors for
clarity.
The potentiometer can be used as a voltage divider to obtain a manually adjustable
output voltage at the slider (wiper) from a fixed input voltage applied across the
two ends of the potentiometer. This is the most common use of them.
The voltage across can be calculated by:
If is large compared to the other resistances (like the input to an operational
amplifier), the output voltage can be approximated by the simpler equation:
(dividing throughout by and cancelling terms with as denominator)
As an example, assume
, , , and
24. E.C.T
Page 24
Since the load resistance is large compared to the other resistances, the output
voltage will be approximately:
Due to the load resistance, however, it will actually be slightly lower: ≈ 6.623 V.
One of the advantages of the potential divider compared to a variable resistor in
series with the source is that, while variable resistors have a maximum resistance
where some current will always flow, dividers are able to vary the output voltage
from maximum ( )
to ground (zero volts) as the wiper moves from one end of the potentiometer to the
other. There is, however, always a small amount of contact resistance.
In addition, the load resistance is often not known and therefore simply placing a
variable resistor in series with the load could have a negligible effect or an
excessive effect, depending on the load.
Potentiometer applications
Potentiometers are rarely used to directly control significant amounts of power
(more than a watt or so). Instead they are used to adjust the level of analog signals
(for example volume controls on audio equipment), and as control inputs for
electronic circuits. For example, a light dimmer uses a potentiometer to control the
switching of a TRIAC and so indirectly to control the brightness of lamps.
Preset potentiometers are widely used throughout electronics wherever adjustments
must be made during manufacturing or servicing.
User-actuated potentiometers are widely used as user controls, and may control a
very wide variety of equipment functions. The widespread use of potentiometers in
consumer electronics declined in the 1990s, with rotary encoders, up/down push-
buttons, and other digital controls now more common. However they remain in
many applications, such as volume controls and as position sensors.
25. E.C.T
Page 25
Audio control
Fig.4.5 Linear potentiometers ("faders")
Low-power potentiometers, both linear and rotary, are used to control audio
equipment, changing loudness, frequency attenuation and other characteristics of
audio signals.
The 'log pot' is used as the volume control in audio power amplifier, where it is
also called an "audio taper pot", because the amplitude response of the human ear
is approximately logarithmic. It ensures that on a volume control marked 0 to 10,
for example, a setting of 5 sounds subjectively half as loud as a setting of 10. There
is also an anti-log pot or reverse audio taper which is simply the reverse of a
logarithmic potentiometer. It is almost always used in a ganged configuration with
a logarithmic potentiometer, for instance, in an audio balance control.
Potentiometers used in combination with filter networks act as tone controls or
equalizers.
Television
Potentiometers were formerly used to control picture brightness, contrast, and
color response. A potentiometer was often used to adjust "vertical hold", which
affected the synchronization between the receiver's internal sweep circuit
(sometimes a multivibrator) and the received picture signal, along with other things
such as audio-video carrier offset, tuning frequency (for push-button sets) and so
on.
26. E.C.T
Page 26
Motion Control
Potentiometers can be used as position feedback devices in order to create "closed
loop" control, such as in a servomechanism
Transducers
Potentiometers are also very widely used as a part of displacement transducers
because of the simplicity of construction and because they can give a large output
signal.
Computation
In analog computers, high precision potentiometers are used to scale intermediate
results by desired constant factors, or to set initial conditions for a calculation. A
motor-driven potentiometer may be used as a function generator, using a non-
linear resistance card to supply approximations to trigonometric functions. For
example, the shaft rotation might represent an angle, and the voltage division ratio
can be made proportional to the cosine of the angle.
28. E.C.T
Page 28
ARDUINO
5.1 What is arduion
5.2 History
5.3 Hardware Description
5.4 Arduion Board Models
5.5 Arduion software
5.6 Project Oriented Application
5.1 What is Arduino?
Arduino is an open-source electronics prototyping platform based on
flexible, easy-to-use hardware and software. It's intended for artists, designers,
hobbyists, and anyone interested increating interactive objects or environments.
Arduino can sense the environment by receiving input from a variety of sensors
and can affect its surroundings by controlling lights, motors, and other actuators.
The microcontroller on the board is programmed using the Arduino programming
language (based on Wiring) and the Arduino development environment (based
on Processing). Arduino projects can be stand-alone or they can communicate
with software running on a computer. The boards can be built by hand or
purchased preassembled; the software can be downloaded for free. The hardware
reference designs (CAD files) are available under an open-source license.
30. E.C.T
Page 30
5.2 History
The project began in Ivrea, Italy (the site of the computer company Olivetti), in 2005 to
make a device for controlling student-built interaction design projects less expensive
than other prototyping systems available at the time. Founders Massimo Banzi and David
Cuartielles named the project after Arduin of Ivrea, the main historical character of the
town. "Arduino" is an Italian masculine first name, meaning "strong friend". The English
version of the name is "Hardwin".
5.3 Hardware Description
An Arduino board consists of an 8-bit Atmel AVR microcontroller with
complementary components to facilitate programming and incorporation into other circuits. An
important aspect of the Arduino is the standard way that connectors are exposed, allowing the
CPU board to be connected to a variety of interchangeable add-on modules (known as shields).
Official Arduinos have used the megaAVR series of chips, specifically the ATmega8,
ATmega168, ATmega328,ATmega1280, and ATmega2560. An Arduino's microcontroller is
also pre-programmed with a boot loader that simplifies uploading of programs to the on-
chip flash memory, compared with other devices that typically need an external programmer.
31. E.C.T
Page 31
5.4 Arduino Board Models
Table 5.1 List of Various Arduino Environments
Arduino Processor Freq.
(MHz)
Volt Flash
(kB)
EEPRO
M
(kB)
SRA
M
(kB)
Digital
I/O
pins
Analog
Input
pins
ADK ATMEGA
2560
16 5 V 256 4 8 54 16
UNO ATMEGA
328
16 5 V 32 1 2 14 6
NANO ATMEGA
168/328
16 5 V 16/32 0.5/1 1/2 14 8
MEGA
2560
ATMEGA
2560
16 5 V 256 4 8 54 16
MEGA ATMEGA
1280
16 5 V 128 4 8 54 16
LilyPad ATMEGA
168V /
328V
8 2.7V
-
5.5V
16 0.5 1 14 6
Leo
nardo
ATMEGA
32u4
16 5V 32 1 2 14 12
Fio ATMEGA
328P
8 3.3 V 32 1 2 14 12
Duemila
nove
ATMEGA
168/328P
16 5V 16/32 0.5/1 1/2 14 6
Due AT91SAM
3X8E
84 3.3 V 512 0 96 54 12
Diecimil
a
ATMEGA
168
16 5 V 16 0.5 1 14 6
5.5 Arduino Software
The Arduino IDE is a cross-platform application written in Java, and is derived from the IDE for
the Processing programming language and the Wiring project. It is designed to introduce
programming to artists and other newcomers unfamiliar with software development. It includes a
code editor with features such as syntax highlighting, brace matching, and automatic indentation,
and is also capable of compiling and uploading programs to the board with a single click. The
Arduino IDE comes with a C/C++ library called "Wiring" (from the project of the same
name), which makes many common input/output operations much easier. Arduino programs are
written in C/C++, although users only need define two functions to make a runnable program:
32. E.C.T
Page 32
setup() – a function run once at the start of a program that can initialize settings
loop() – a function called repeatedly until the board powers off
Figure 5.3 Arduino Programming Environment
33. E.C.T
Page 33
5.6 Projectoriented Application
Arduino is the best choice for us to deal with such a complex embedded
system.
It is loaded with the huge collection of in-built libraries.
We found it to be the best working environment for the implementation of
an embedded system.
much suitable for multi-tasking application as well as for the
function
programming.
It provides such a nice user friendly environment than any other platforms
available with a much reduced code size.
Gives On-board loader and comparatively less in physical dimensions.
Provides real time debugging by serial port.
Choice of microcontroller with different sizes like Atmega88, Atmega168,
Atmega328.
Provides a very good flexibility for serial programming.
Works very well with Master-slave environment.
Provides support with all protocols and respective gadgets.
Having a huge online forum support where you can get almost all of your
solution within a very short duration of time which is not available for any
other environment till date.
35. E.C.T
Page 35
STEPPER MOTOR
6.1 Introduction & Working
Introduction & Working
A stepper motor (or step motor) is a brushless DC electric motor that divides a
full rotation into a number of equal steps. The motor's position can then be
commanded to move and hold at one of these steps without any feedback sensor
(an open-loop controller), as long as the motor is carefully sized to the
application.
Now in our project we are using a hybrid steppermotor which will give a turn
of 1.8’. Now as we are using a ten turn potentiometer:
For 1 turn = 360
so,
for 10 turns = 3600
now, we can have 3600/1.8 = 2000 readings.
This results are thus for clockwise rotations.
39. E.C.T
Page 39
MOTOR DRIVER
7.1 Motor Driver
7.1.1 Specification
7.2 Role of L293D
7.3 Working Theory of H-Bridge
7.4 Speed Control Using PWM
7.1 Motor Driver:
The most common method to drive motors in two directions under control of a
Microcontroller is with motor driver. Motor driver can be used to drive a motor
from low voltage supply from Microcontroller or from any other Electronic
Circuitry. So for driving any Motor as per our requirement under the control of
Microcontroller, Motor driver is necessary as from digital output pin of
Microcontroller, We cannot drive motor directly because digital output pin of
Controller cannot provide sufficient voltage and current to motor to drive it.
40. E.C.T
Page 40
Figure 7.1 Motor Driver Circuit
7.1.1 Specification
We have used Motor Driver Module which has two motor drivers (L293d) .
So we can control/drive four motors simultaneously in both forward and reverse direction
Can drive 4 DC motors or 2 stepper motors or 2 Servo
Up to 4 bi-directional DC motors with individual 8-bit speed selection
4 H-Bridges: per bridge provides 0.6A (1.2A peak current) with thermal protection, can
run motors on 4.5V to 36V DC
Arduino reset button
2 external terminal power interface, for seperate logic/motor supplies Compatible with
Arduino Mega, Uno, Diecimila & Duemilanove.
7.2 Role of L293D
As microcontrollers PORT are not powerful enough to drive DC motors directly so we need
some kind of drivers. A very easy and safe is to use L293D chips. It is a 16 PIN chip.
41. E.C.T
Page 41
Figure 7.2 L293D Pin Diagram (Image from: www.extremeelectronics.co.in)
This chip is designed to control 2 DC motors. There are 2 INPUT and 2
OUTPUT PINs for each motors. The connections are is as follow.
42. E.C.T
Page 42
Figure 7.3 Connection Diagram of L293D (Image from: www.extremeelectronics.co.in)
Table. 7.1
So we saw we just need to set appropriate level at two PINs of the microcontroller
to control the motor.
7.3 Working Theory of H‐Bridge
The name of the H-bridge circuit is derived from shape of the circuit which looks
like Alphabetic letter ‘H’. It is capable of controlling motion of the motor.
It is also known as "Full Bridge".
Basically there are four switching elements in the H‐Bridge
As shown in the figure below.
A B
Stop Low Low
Clockwise Low High
Anti clockwise High Low
Stop High High
43. E.C.T
Page 43
Figure 7.4 H-Bridge Circuit (Image from: http://www.visionrobo.com/)
As you can see in the figure above there are four switching elements named as "Hi
gh side left", "High side right", "Low side right", "Low side left". When these swit
ches are turned on in pairs motor changes ts direction accordingly. Like, if we swit
ch on High side left and Low side right then motor rotate in forward direction, as
current flows from power switch to high side left to low side right to ground.
7.4 Speed control using PWM
Speed control means intentional change of drive speed to a value required for
performing the specific work process. Suppose you want to run motor by half of its
rating speed then send 50% duty cycle square wave at enable pin effectively
45. E.C.T
Page 45
RS-232
7.1 Introduction of RS-232
7.2 RS-232 Specification
Introduction of RS-232
This article is about the RS-232 standard. For RS-232 variants, see serial port.
Fig. 8.1 Pindiagram of RS-232
46. E.C.T
Page 46
A DB-25 connector as described in the RS-232 standard
In telecommunications, RS-232 is the traditional name for a series of standards for
serial binary single-ended data and control signals connecting between a DTE
(Data Terminal Equipment) and a DCE (Data Circuit-terminating Equipment). It is
commonly used in computer serial ports. The standard defines the electrical
characteristics and timing of signals, the meaning of signals, and the physical size
and pinout of connectors. The current version of the standard is TIA-232-F
Interface Between Data Terminal Equipment and Data Circuit-Terminating
Equipment Employing Serial Binary Data Interchange, issued in 1997.
An RS-232 port was once a standard feature of a personal computer for
connections to modems, printers, mice, data storage, uninterruptible power
supplies, and other peripheral devices. However, the low transmission speed, large
voltage swing, and large standard connectors motivated development of the
universal serial bus, which has displaced RS-232 from most of its peripheral
interface roles. Many modern personal computers have no RS-232 ports and must
use an external converter to connect to older peripherals. RS-232 devices are still
found, especially in industrial machines or scientific instruments.
RS-232 Specifications:
TRANSMITTED SIGNAL
VOLTAGE LEVELS:
Binary 0: +5 to +15 Vdc
(called a “space” or “on”)
Binary 1: -5 to -15 Vdc
(called a “mark” or “off”)
RECEIVED SIGNAL
VOLTAGE LEVELS:
Binary 0: +3 to +13 Vdc
Binary 1: -3 to -13 Vdc
47. E.C.T
Page 47
DATA FORMAT:
Start bit: Binary 0
Data: 5, 6, 7 or 8 bits
Parity: Odd, even, mark or space
(not used with 8-bit data)
Stop bit: Binary 1,
one or two bits
49. E.C.T
Page 49
PCB (Printed Circuit Board)
9.1 Introduction
9.2 Construction & Preparation
INTROCUCTION
A printed circuit board, or PCB, is used to mechanically support and electrically
connect electronic components using conductive pathways, tracks or signal traces
etched from copper sheets laminated onto a non-conductive substrate.
When the board has only copper tracks and features, and no circuit elements such
as capacitors, resistors or active devices have been manufactured into the actual
substrate of the board, it is more correctly referred to as printed wiring board
(PWB) or etched wiring board. Use of the term PWB or printed wiring board
although more accurate and distinct from what would be known as a true printed
circuit board, has generally fallen by the wayside for many people as the
distinction between circuit and wiring has become blurred. Today printed wiring
(circuit) boards are used in virtually all but the simplest commercially produced
electronic devices, and allow fully automated assembly processes that were not
possible or practical in earlier era tag type circuit assembly processes.
A PCB populated with electronic components is called a printed circuit assembly
(PCA), printed circuit board assembly or PCB Assembly (PCBA). In informal
use the term "PCB" is used both for bare and assembled boards, the context
clarifying the meaning.
50. E.C.T
Page 50
Alternatives to PCBs include wire wrap and point-to-point construction. PCBs
must initially be designed and laid out, but become cheaper, faster to make, and
potentially more reliable for high-volume production since production and
soldering of PCBs can be automated. Much of the electronics industry's PCB
design, assembly, and quality control needs are set by standards published by the
IPC organization.
CONSTRUCTION AND PREPARATION
In our project we designed and prepared the PCB by ourselves only. It was an
interesting experience indeed. Basically we designed the PCB in the very
conventional way but did slight modifications. Step by Step methods I’ve
explained below as follows:
STEP 1
First of all we took a copperclade and cut it according to our use. Then we washed
it with dilute HCl for better clarity of the future circuit which will be implemented
on it.
Fig .9.1 Copper Clade
51. E.C.T
Page 51
STEP 2
Secondly, we designed the circuit and printed it on a glossy printing paper and
simply we put it on the copper clade and just ironed it using a basic iron.
STEP 3
Now we prepared a solution containing water, Iron Tetrachloride (FeCl3) and
Hydrochloric Acid (HCl) and sink it in it and stir it for about 15-20 minutes.
Fig. 9.2 PCB Sink in FeCl3 Solution
STEP 4
Now we washed it with water and cleaned it. Now we drilled it using a Drilling
Machine and then rubbed it using a Steel Wool for getting our actual PCB circuit
ready to use.
54. E.C.T
Page 54
PYTHON
10.1 Introduction of Python
10.2 Project program and Flowchart
INTRODUCTION TO PYTHON:
Python is a general-purpose, interpreted high-level programming language whose
design philosophy emphasizes code readability. Its syntax is said to be clear and
expressive. Python has a large and comprehensive standard library.
Python supports multiple programming paradigms, primarily but not limited to
object-oriented, imperative and, to a lesser extent, functional programming styles.
It features a fully dynamic type system and automatic memory management,
similar to that of Scheme, Ruby, Perl, and Tcl. Like other dynamic languages,
Python is often used as a scripting language, but is also used in a wide range of
non-scripting contexts. Using third-party tools, Python code can be packaged into
standalone executable programs. Python interpreters are available for many
operating systems.
CPython, the reference implementation of Python, is free and open source software
and has a community-based development model, as do nearly all of its alternative
implementations. CPython is managed by the non-profit Python Software
Foundation.
Python has a large standard library, commonly cited as one of Python's greatest
strengths, providing tools suited to many tasks. This is deliberate and has been
described as a "batteries included" Python philosophy. The modules of the standard
library can be augmented with custom modules written in either C or Python.
Boost C++ Libraries includes a library, Boost.Python, to enable interoperability
55. E.C.T
Page 55
between C++ and Python. Because of the wide variety of tools provided by the
standard library, combined with the ability to use a lower-level language such as C
and C++, which is already capable of interfacing between other libraries, Python
can be a powerful glue language between languages and tools.
The standard library is particularly well tailored to writing Internet-facing
applications, with a large number of standard formats and protocols (such as
MIME and HTTP) already supported. Modules for creating graphical user
interfaces, connecting to relational databases, arithmetic with arbitrary precision
decimals, manipulating regular expressions, and doing unit testing are also
included.
Some parts of the standard library are covered by specifications (for example, the
WSGI implementation wsgiref follows PEP 333[), but the majority of the modules
are not. They are specified by their code, internal documentation, and test suite (if
supplied). However, because most of the standard library is cross-platform Python
code, there are only a few modules that must be altered or completely rewritten by
alternative implementations.
The standard library is not essential to run Python or embed Python within an
application. Blender 2.49 for instance omits most of the standard library.
For software testing, the standard library provides the unittest and doctest modules.
About Python
Python is a remarkably powerful dynamic programming language that is used in a
wide variety of application domains. Python is often compared to Tcl, Perl, Ruby,
Scheme or Java. Some of its key distinguishing features include:
very clear, readable syntax
strong introspection capabilities
intuitive object orientation
natural expression of procedural code
full modularity, supporting hierarchical packages
exception-based error handling
very high level dynamic data types
56. E.C.T
Page 56
extensive standard libraries and third party modules for virtually every task
extensions and modules easily written in C, C++ (or Java for Jython, or
.NET languages for IronPython)
embeddable within applications as a scripting interface
Python plays well with others
Python can integrate with COM, .NET, and CORBA objects.
For Java libraries, use Jython, an implementation of Python for the Java Virtual
Machine.
For .NET, try IronPython , Microsoft's new implementation of Python for .NET, or
Python for .NET.
Python is also supported for the Internet Communications Engine (ICE) and many
other integration technologies.
If you find something that Python cannot do, or if you need the performance
advantage of low-level code, you can write extension modules in C or C++, or
wrap existing code with SWIG or Boost.Python. Wrapped modules appear to your
program exactly like native Python code. That's language integration made easy.
You can also go the opposite route and embed Python in your own application,
providing your users with a language they'll enjoy using.
59. E.C.T
Page 59
LITERATURE SURVEY
There is lot of data available on internet for Arduino and Python.
Arduino
^ a b Shiffman, Daniel (September 23, 2009). "Interview with Casey Reas and
Ben Fry". Rhizome.org.
^ "Wiring". wiring.org.co
^ a b c d e f "Project homepage". arduino.cc.
^ "Prix Ars Electronica 2006 — Digital Communities —
ANERKENNUNGEN — listing" (in German). Retrieved 2009-02-18.
^ "Prix Ars Electronica 2006 — Digital Communities —
ANERKENNUNGEN — description" (in German). Retrieved 2009-02-18.
^ Lahart, Justin (2009-11-27). "Taking an Open-Source Approach to
Hardware". The Wall Street Journal. Retrieved 2012-03-24.
^ "View Name: Arduino". Behind the Name. Retrieved 2012-09-15.
^ Reas, Casey; Fry, Ben (2010). Getting Started With Processing. Sebastopol:
O'Reilly. ISBN 978-1-4493-7980-3.
Python
^ a b "Why was Python created in the first place?". General Python FAQ.
Python Software Foundation. Retrieved 22 March 2007.
^ Kuchling, Andrew M. (22 December 2006). "Interview with Guido van
Rossum (July 1998)". amk.ca. Retrieved 12 March 2012.
^ van Rossum, Guido (1993). "An Introduction to Python for UNIX/C
Programmers". Proceedings of the NLUUG najaarsconferentie(Dutch UNIX users
60. E.C.T
Page 60
group). "even though the design of C is far from ideal, its influence on Python is
considerable."
^ a b "Classes". The Python Tutorial. Python Software Foundation. Retrieved 20
February 2012. "It is a mixture of the class mechanisms found in C++ and Modula-
3"
^ Simionato, Michele. "The Python 2.3 Method Resolution Order". Python
Software Foundation. "The C3 method itself has nothing to do with Python, since
it was invented by people working on Dylan and it is described in a paper intended
for lispers"