modified 234
TRANSCRIPT
-
8/2/2019 Modified 234
1/49
-
8/2/2019 Modified 234
2/49
6.2 Pin description
6.3 LCD basic commands
CHAPTER 7 :SCHEMATIC DIAGRAM
7.1 Schematic Description
7.2 regulated power supply
7.3 circuit features
CHAPTER 8 : SOFTWARE DEVELOPMENT
8.1 Introduction8.2 Tools used
8.3 C51 Compiler & A51 macro assembler
8.4 Start vision
8.5 over view of Keil cross compiler
8.6 Benefits of Keil compiler
8.7 Flash magic
CHAPTER 9 : SOURCE CODECONCLUSION
FUTURE SCOPE
REFERENCES
2
-
8/2/2019 Modified 234
3/49
LIST OF FIGURES
Figure No. NAME Page No.
1.1 Block diagram 3
1.2 Flow chart 4
1.3 Micro Controller 6
1.4 ATMEL 89S52 7
1.5 Pin diagram of ATMEL 89s52 8
1.6 Functional block diagram of Micro Controller 12
1.7 Oscillator and timing circuit 13
1.8 Ultrasonic Sensor 19
1.9 Ultrasonic Transmitter 21
1.10 Ultrasonic Receiver 22
1.11 D.C Motor 24
1.12 2-pole D.C electric motor 25
1.13 3-pole D.C electric motor 261.14 3-pole D.C electric motor 27
1.15 2x16 Line Alphanumeric LCD Display 28
1.16 Interfacing of LCD 30
1.17 Schematic Diagram 31
1.18 IC Regulator 33
1.19 Circuit diagram of power supply 33
3
-
8/2/2019 Modified 234
4/49
Table NO. Name
2.1Description of port 1
2.2Description of port 2
4
-
8/2/2019 Modified 234
5/49
ABSTRACT
KEEP DISTANCE WARNING SYSTEM
Theproject work keep distance warning system and speed control is designed for
Automobiles, any vehicle ranging from motor cycle to heavy duty truck can adopt this
system. The main purpose of this system is to alert the following vehicle whenever it came
very close to the ahead vehicle; thereby to some extent accidents can be avoided. Many
accidents at High-ways are taking place due to the close running of vehicles, all of sudden,
if the in front vehicle driver reduces the speed or applied breaks, then it is quite difficult to
the following vehicle driver to control his vehicle, resulting accident. To avoid this kind of
accident, the warning system, which contains alarm and display system can arrange at rear
side of each and every vehicle.Whenever the following vehicle came near to the in frontvehicle, immediately the display board will be energized and it shows KEEP
DISTANCE. At the same time motor speed will also be energized, the motor and display
board both remains in energized condition up to some time depending up on the program
prepared for microcontroller. For sensing the following vehicle, two ultrasonic sensors are
used; these sensors are arranged side by side, from one sensor ultrasonic signal is delivered,
this signal is transmitted in one line, whenever the following vehicle came close to the
signal, the ultrasonic energy hits the vehicle and it is reflected, the reflected energy is
detected by the another ultrasonic sensor, this is called as ultrasonic signal detector.
SOFTWARE REQUIREMENT:
1. KEIL MICRO VISION-3
2. MICRO FLASH
3. ORCAD
HARDWARE REQUIREMENT:
1. MICROCONTROLLER (89S52)
2. LM324.
3. ULTRASONIC SENSOR
4. LCD DISPLAY
5
-
8/2/2019 Modified 234
6/49
CHAPTER 1
INTRODUCTION.
1.1 Motivation
Most of the accidents in high-ways are happening due to the drowsiness of drivers,
most often this symptom is found in long distance truck drivers, these drivers may take
some time to recognize the opposite vehicle, which is running at low speed, resulting
accident. This kind of accidents may happen due to the drunken drivers also. So to increase
safety an electronic warning system is essential to alert the drivers. This kind of system can
be installed in all types of vehicles, especially in commercial vehicles, so that accident rate
can be minimized. The warning system designed here can be called as driver attention
system, which raises an alarm and energizes the display board automatically when the
following vehicle came near to the in-front running vehicle The system is designed with
89C51 microcontroller, the task is quite simple, the following vehicle detection circuit is
designed with infrared sensors, when the IR signal is interrupted due to the following
vehicle, the circuit generates high signal and it is fed to microcontroller. The detailed
description is provided in the following chapters. Nowadays with the advancement of
technology particularly in the field of micro-controllers, all the activities in our day-to-day
living have become part of information technology and we find controllers in each and
every application. Thus, the trend is directing towards micro-controller based project
works.A micro-controller contains a CPU, clock circuitry, ROM, Ram and I/O circuitry on
a single integrated circuit package. The Micro-controller is therefore, a self-contained
device, which does not require a host of associated support chips for its operation as
conventional microprocessors do. It offers several advantages over conventional multi-
chip systems.There is a cost and space advantage as extra chip costs and printed circuit
board and connectors required to support multi-chip systems are eliminated. The other
advantages include cheaper maintenance, decreased hardware design effort and decreased
board density, which is relevant in portable control equipment.
Low cost high volume products requiring a relatively simple and cheap computer
controller have traditionally characterized micro-controllers. The design optimization
6
-
8/2/2019 Modified 234
7/49
parameters require careful consideration of architectural tradeoffs, memory design factors,
instruction size, memory addressing techniques and other design constraints with respect to
area and performance. Micro-controllers functionality, however, has been tremendously
increased in the recent years. Today, one gets micro-controllers, which are stand alone for
applications in data acquisition system and control. With the help of analog-to-digital
converts, provided at the input of micro-controller, enables them direct use in
instrumentation. Another type of micro-controller has on-chip communication controller,
which is designed for applications requiring local intelligence at remote nodes and
communication capability among these distributed nodes. Advanced versions of the micro-
controller in 16-bit configuration have been introduced for high performance requirements
particularly in applications where good arithmetical capabilities are required. In this project
work ATMEL 89C51 micro-controller is used, this is 8-bit micro-controller.
1.2 Thesis organization
In view of the proposed thesis work, explanation of theoretical aspects and
algorithms used in this work are presented as per the sequence described below.
Chapter 1 describes about motivation, block diagram and flow chart.
Chapter 2 discusses about at89s52 features and its pin description.
Chapter 3 explains about the ultrasonic sensor and its features.Chapter 4 describes about D.C motor and its types.
Chapter 5 goes with L.C.D display and its pin description.
Chapter 6 explains about schematic diagram and power supply.
Chapter 7 describes about software development.
Chapter 8 deals with the source code of the project.
7
-
8/2/2019 Modified 234
8/49
1.2 BLOCK DIAGRAM
8
AT 89S52
MICRO
-CONTROLLER
LCD DISPLAY
POWER
SUPPLY
ULTRASONICSENSOR
DC MOTOR
-
8/2/2019 Modified 234
9/49
1.3 FLOW CHART
9
Object detection is displayed on LCD
START
Initialization of Microcontroller
Initialization of LCD
Initialization of ultrasonic
STOP
STOP
If objectis
detected
Yes
ssss
ssss
ssssssss
ssss
ssssssss
SS
SSSS
SS
SSSS
SSSSSS
SsS
NO
Rotate dc motor
-
8/2/2019 Modified 234
10/49
CHAPTER-2
MICROCONTROLLER
2.1 A Brief History of 8051
In 1981, Intel Corporation introduced an 8 bit microcontroller called 8051. This
microcontroller had 128 bytes of RAM, 4K bytes of chip ROM, two timers, one serial port,
and four ports all on a single chip. At the time it was also referred as A SYSTEM ON A
CHIP.The 8051 is an 8-bit processor meaning that the CPU can work only on 8 bits data
at a time. Data larger than 8 bits has to be broken into 8 bits pieces to be processed by the
CPU. The 8051 has a total of four I\O ports each 8 bit wide.There are many versions of
8051 with different speeds and amount of on-chip ROM and they are all compatible with
the original 8051. This means that if you write a program for one it will run on any of
them.The 8051 is an original member of the 8051 family. There are two other members in
the 8051 family of microcontrollers. They are 8052 and 8031. All the three
microcontrollers will have the same internal architecture, but they differ in the following
aspects.
89S51 has 4KB ROM, 128 bytes of RAM, two timers and 6 interrupts.
8031 has 128 bytes of RAM, two timers and 6 interrupts.
89S52 has 8KB ROM, 128 bytes of RAM, three timers and 8 interrupts.
In the concerned project 89C52 microcontroller is used. Here microcontroller used
is AT89C52, which is manufactured by ATMEL laboratories.
2.2 Introduction to AT89S52
The AT89S52 is a low-power, high-performance CMOS 8-bit microcontroller
with 8K bytes of in-system programmable Flash memory. The device is manufactured
using Atmels high-density nonvolatile memory technology and is compatible with theindustry-standard 80C51 instruction set and pinout. The on-chip Flash allows the program
memory to be reprogrammed in-system or by a conventional nonvolatile memory
programmer.
10
-
8/2/2019 Modified 234
11/49
Figure 2.1 MICROCONTROLLER
By combining a versatile 8-bit CPU with in-system programmable Flash on a
monolithic chip, the Atmel AT89S52 is a powerful microcontroller, which provides a
highly flexible and cost-effective solution to many, embedded control applications. The
AT89S52 provides the following standard features: 8K bytes of Flash, 256 bytes of RAM,
32 I/O lines, Watchdog timer, two data pointers, three 16-bit timer/counters, a six-vector
two-level interrupt architecture, a full duplex serial port, on-chip oscillator, and clock
circuitry.In addition, the AT89S52 is designed with static logic for operation down to zero
frequency and supports two software selectable power saving modes. The Idle Mode stops
the CPU while allowing the RAM, timer/counters, serial port, and interrupt system to
continue functioning. The Power-down mode saves the RAM con-tents but freezes the
oscillator, disabling all other chip functions until the next interrupt
11
-
8/2/2019 Modified 234
12/49
Fig: ATMEL 89S52
8031 has 128 bytes of RAM, two timers and 6 interrupts.
8051 has 4K ROM, 128 bytes of RAM, two timers and 6 interrupts.
8052 has 8K ROM, 256 bytes of RAM, three timers and 8 interrupts.
Of the three microcontrollers, 8051 is the most preferable. Microcontroller supports
both serial and parallel communication.In the concerned project 8052 microcontroller is
used. Here microcontroller used is AT89S52, which is manufactured by ATMEL
laboratories.
2.3 FEATURES OF 89S52
Compatible with MCS-51 Products
8K Bytes of In-System Reprogrammable Flash Memory
Fully Static Operation: 0 Hz to 33 MHz
Three-level Program Memory Lock
256 x 8-bit Internal RAM
32 Programmable I/O Lines
Three 16-bit Timer/Counters
Eight Interrupt Sources
Programmable Serial Channel
Low-power Idle and Power-down Modes
4.0V to 5.5V Operating Range
Full Duplex UART Serial Channel
Interrupt Recovery from Power-down Mode
Watchdog Timer
Dual Data Pointer
12
-
8/2/2019 Modified 234
13/49
Power-off Flag
2.4 PIN DESCRIPTION
Figure 2.3: PIN DIAGRAM OF AT89S52 IC
Port 0
Port 0 is an 8-bit open drain bidirectional I/O port. As an output port, each pin can
sink eight TTL inputs. When 1s are written to port 0 pins, the pins can be used as
highimpedance inputs.Port 0 can also be configured to be the multiplexed loworder
address/data bus during accesses to external program and data memory. In this mode, P0
has internal pullups. Port 0 also receives the code bytes during Flash programming and
outputs the code bytes during program verification.External pullups are required duringprogram verification.
Port 1
Port 1 is an 8-bit bidirectional I/O port with internal pullups. The Port 1 output
buffers can sink/source four TTL inputs. When 1s are written to Port 1 pins, they are pulled
13
-
8/2/2019 Modified 234
14/49
high by the internal pullups and can be used as inputs. As inputs,Port 1 pins that are
externally being pulled low will source current (IIL) because of the internal pullups. In
addition, P1.0 and P1.1 can be configured to be the timer/counter 2 external count input
(P1.0/T2) and the timer/counter 2 trigger input (P1.1/T2EX), respectively, as shown in the
following table. Port 1 also receives the low-order address bytes during Flash programming
and verification.
Table 2.1:Description of port 1
Port 2
Port 2 is an 8-bit bidirectional I/O port with internal pullups.The Port 2 output
buffers can sink/source four TTL inputs.When 1s are written to Port 2 pins, they are pulled
high by the internal pullups and can be used as inputs. As inputs, Port 2 pins that are
externally being pulled low will source current (IIL) because of the internal pullups. Port 2
emits the high-order address byte during fetches from external program memory and during
accesses to external data memory that use 16-bit addresses (MOVX @ DPTR). In this
application, Port 2 uses strong internal pull-ups when emitting 1s. During accesses to
external data memory that use 8-bit addresses (MOVX @ RI), Port 2 emits the contents of
the P2 Special Function Register. Port 2 also receives the high-order address bits and some
control signals during Flash programming and verification.
Port 3
Port 3 is an 8-bit bidirectional I/O port with internal pullups.The Port 3 output
buffers can sink/source four TTL inputs. When 1s are written to Port 3 pins, they are pulled
high by the internal pullups and can be used as inputs. As inputs, Port 3 pins that are
externally being pulled low will source current (IIL) because of the pullups. Port 3 also
14
-
8/2/2019 Modified 234
15/49
serves the functions of various special features of the AT89S52, as shown in the following
table. Port 3 also receives some control signals for Flash programming and verification.
Table 2.2: Description of port 3
RST
Reset input. A high on this pin for two machine cycles while the oscillator is
running resets the device. This pin drives High for 96 oscillator periods after the Watchdog
times out. The DISRTO bit in SFR AUXR (address 8EH) can be used to disable this
feature. In the default state of bit DISRTO, the RESET HIGH out feature is enabled.
ALE/PROG Address Latch Enable (ALE) is an output pulse for latching the low byte of the
address during accesses to external memory. This pin is also the program pulse input
(PROG) during Flash programming. In normal operation, ALE is emitted at a constant rate
of 1/6 the oscillator frequency and may be used for external timing or clocking purposes.Note, however, that one ALE pulse is skipped during each access to external data memory.
If desired, ALE operation can be disabled by setting bit 0 of SFR location 8EH. With the
bit set, ALE is active only during a MOVX or MOVC instruction. Otherwise, the pin is
weakly pulled high. Setting the ALE-disable bit has no effect if the microcontroller is in
external execution mode.
PSEN
Program Store Enable (PSEN) is the read strobe to external program memory.
When the AT89S52 is executing code from external program memory, PSEN is activated
twice each machine cycle, except that two PSEN activations are skipped during each access
to external data memory.
15
-
8/2/2019 Modified 234
16/49
EA/VPP
External Access Enable. EA must be strapped to GND in order to enable the
device to fetch code from external program memory locations starting at 0000H up to
FFFFH. Note, however, that if lock bit 1 is programmed, EA will be internally latched on
reset. EA should be strapped to VCC for internal program executions. This pin also
receives the 12-volt programming enable voltage
(VPP) during Flash programming.
XTAL1
Input to the inverting oscillator amplifier and input to the internal clock operating
circuit.
XTAL2
Output from the inverting oscillator amplifier.
Figure 2.4: Functional block diagram of micro controller
16
-
8/2/2019 Modified 234
17/49
The 8052 Oscillator and Clock
The heart of the 8051 circuitry that generates the clock pulses by which all the
internal all internal operations are synchronized. Pins XTAL1 And XTAL2 is provided for
connecting a resonant network to form an oscillator. Typically a quartz crystal and
capacitors are employed. The crystal frequency is the basic internal clock frequency of the
microcontroller. The manufacturers make 8051 designs that run at specific minimum and
maximum frequencies typically 1 to 16 MHz.
Figure 2.5: Oscillator and timing circuit
2.5 MEMORIES
Types of memory
The 8052 have three general types of memory. They are on-chip memory, external
Code memory and external Ram. On-Chip memory refers to physically existing memory
on the micro controller itself. External code memory is the code memory that resides off
17
-
8/2/2019 Modified 234
18/49
chip. This is often in the form of an external EPROM. External RAM is the Ram that
resides off chip. This often is in the form of standard static RAM or flash RAM.
a) Code memory
Code memory is the memory that holds the actual 8052 programs that is to be run.
This memory is limited to 64K. Code memory may be found on-chip or off-chip. It is
possible to have 8K of code memory on-chip and 60K off chip memory simultaneously. If
only off-chip memory is available then there can be 64K of off chip ROM. This is
controlled by pin provided as EA
b) Internal RAM
The 8052 have a bank of 256 bytes of internal RAM. The internal RAM is found
on-chip. So it is the fastest Ram available. And also it is most flexible in terms of reading
and writing. Internal Ram is volatile, so when 8051 is reset, this memory is cleared. 256
bytes of internal memory are subdivided. The first 32 bytes are divided into 4 register
banks. Each bank contains 8 registers. Internal RAM also contains 256 bits, which are
addressed from 20h to 2Fh. These bits are bit addressed i.e. each individual bit of a byte
can be addressed by the user. They are numbered 00h to FFh. The user may make use of
these variables with commands such as SETB and CLR.
Special Function registered memory:
Special function registers are the areas of memory that control specific
functionality of the 8052 micro controller.
a) Accumulator (0E0h)
As its name suggests, it is used to accumulate the results of large no of instructions.
It can hold 8 bit values.
b) B registers (0F0h)
The B register is very similar to accumulator. It may hold 8-bit value. The b register
is only used by MUL AB and DIV AB instructions. In MUL AB the higher byte of the
product gets stored in B register. In div AB the quotient gets stored in B with the remainder
in A.
18
-
8/2/2019 Modified 234
19/49
c) Stack pointer (81h)
The stack pointer holds 8-bit value. This is used to indicate where next value to be
removed from the stack should be taken from. When a value is to be pushed onto the stack,
the 8052 first store the value of SP and then store the value at the resulting memory
location. When a value is to be popped from the stack, the 8052 returns the value from the
memory location indicated by SP and then decrements the value of SP.
d) Data pointer
The SFRs DPL and DPH work together work together to represent a 16-bit value
called the data pointer. The data pointer is used in operations regarding external RAM and
some instructions code memory. It is a 16-bit SFR and also an addressable SFR.
e) Program counter
The program counter is a 16 bit register, which contains the 2 byte address, which
tells the 8052 where the next instruction to execute to be found in memory. When the 8052
is initialized PC starts at 0000h. And is incremented each time an instruction is executes. It
is not addressable SFR.
f) PCON (power control, 87h)
The power control SFR is used to control the 8051s power control modes. Certain
operation modes of the 8051 allow the 8051 to go into a type of sleep mode which
consumes much lee power.
g) TCON (timer control, 88h)
The timer control SFR is used to configure and modify the way in which the 8051s
two timers operate. This SFR controls whether each of the two timers is running or stopped
and contains a flag to indicate that each timer has overflowed. Additionally, some non-
timer related bits are located in TCON SFR.
19
-
8/2/2019 Modified 234
20/49
h) TMOD (Timer Mode, 89h)
The timer mode SFR is used to configure the mode of operation of each of the two
timers. Using this SFR your program may configure each timer to be a 16-bit timer, or 13
bit timer, 8-bit auto reload timer, or two separate timers. Additionally you may configure
the timers to only count when an external pin is activated or to count events that are
indicated on an external pin.
i) TO (Timer 0 low/high, address 8A/8C h)
These two SFRs taken together represent timer 0. Their exact behavior depends on
how the timer is configured in the TMOD SFR; however, these timers always count up.
What is configurable is how and when they increment in value.
j) T1 (Timer 1 Low/High, address 8B/ 8D h)
These two SFRs, taken together, represent timer 1. Their exact behavior depends on
how the timer is configured in the TMOD SFR; however, these timers always count up..
k) P0 (Port 0, address 90h, bit addressable)
This is port 0 latch. Each bit of this SFR corresponds to one of the pins on a micro
controller. Any data to be outputted to port 0 is first written on P0 register. For e.g., bit 0 of
port 0 is pin P0.0, bit 7 is pin p0.7. Writing a value of 1 to a bit of this SFR will send a high
level on the corresponding I/O pin whereas a value of 0 will bring it to low level.
l) P1 (port 1, address 90h, bit addressable)
This is port latch1. Each bit of this SFR corresponds to one of the pins on a micro
controller. Any data to be outputted to port 0 is first written on P0 register. For e.g., bit 0 of
port 0 is pin P1.0, bit 7 is pin P1.7. Writing a value of 1 to a bit of this SFR will send a high
level on the corresponding I/O pin whereas a value of 0 will bring it to low level.
m) P2 (port 2, address 0A0h, bit addressable)
20
-
8/2/2019 Modified 234
21/49
This is a port latch2. Each bit of this SFR corresponds to one of the pins on a
micro controller. Any data to be outputted to port 0 is first written on P0 register. For e.g.,
bit 0 of port 0 is pin P2.0, bit 7 is pin P2.7. Writing a value of 1 to a bit of this SFR will
send a high level on the corresponding I/O pin whereas a value of 0 will bring it to low
level.
n) P3 (port 3, address B0h, bit addressable)
This is a port latch3. Each bit of this SFR corresponds to one of the pins on a micro
controller. Any data to be outputted to port 0 is first written on P0 register. For e.g., bit 0 of
port 0 is pin P3.0, bit 7 is pin P3.7. Writing a value of 1 to a bit of this SFR will send a high
level on the corresponding I/O pin whereas a value of 0 will bring it to low level.
o) IE (interrupt enable, 0A8h)
The Interrupt Enable SFR is used to enable and disable specific interrupts. The low
7 bits of the SFR are used to enable/disable the specific interrupts, where the MSB bit is
used to enable or disable all the interrupts. Thus, if the high bit of IE is 0 all interrupts are
disabled regardless of whether an individual interrupt is enabled by setting a lower bit.
p) IP (Interrupt Priority, 0B8h)
The interrupt priority SFR is used to specify the relative priority of each interrupt.
On 8051, an interrupt maybe either low or high priority. An interrupt may interrupt
interrupts. For e.g., if we configure all interrupts as low priority other than serial interrupt.
The serial interrupt always interrupts the system, even if another interrupt is currently
executing.
q) PSW (Program Status Word, 0D0h)
21
-
8/2/2019 Modified 234
22/49
The program Status Word is used to store a number of important bits that are set
and cleared by 8052 instructions. The PSW SFR contains the carry flag, the auxiliary carry
flag, the parity flag and the overflow flag. Additionally, it also contains the register bank
select flags, which are used to select, which of the R register banks currently in use.
r) SBUF (Serial Buffer, 99h)
SBUF is used to hold data in serial communication. It is physically two registers.
One is writing only and is used to hold data to be transmitted out of 8052 via TXD. The
other is read only and holds received data from external sources via RXD. Both mutually
exclusive registers use address 99h.
CHAPTER-3
Ultrasonic sensor
3.1 INTRODUCTION
22
-
8/2/2019 Modified 234
23/49
Parallax's PING ultrasonic sensor provides a very low-cost and easy method of
distance measurement. This sensor is perfect for any number of applications that require
you to perform measurements between moving or stationary objects. Naturally, robotics
applications are very popular but you'll also find this product to be useful in security
systems or as an infrared replacement if so desired. You will definitely appreciate the
activity status LED and the economic use of just 1 I/O pin.
Figure 3.1: Ultrasonic Sensor
The Ping sensor measures distance using sonar; an ultrasonic (well above human
hearing)pulse is transmitted from the unit and distance-to-target is determined by
measuring the time required for the echo return. Output from the PING sensor is a variable-width pulse that corresponds to the distance to the target.Interfacing to the BASIC Stamp
and Javelin Stamp microcontrollers is a snap: a single (shared) I/O pin is use to trigger the
Ping sensor and "listen" for the echo return pulse. And the intelligent trigger hold-off
allows the PING to work with the BS1! An onboard three-pin header allows the PING to be
plugged into a solder less breadboard (on a Boo-Boo, for example), and to be connected to
its host through a standard three-pin servo extension cable.
3.2 Sensor Features
The PING has only has 3 connections, which include Vdd, Vss, and 1 I/O pin.
The 3-pin header makes it easy to connect using a servo extension cable, no
soldering required.
Several sample codes are available using the Ping sensor.
23
-
8/2/2019 Modified 234
24/49
List of technical specifications:
Range - 2cm to 3m (~.75" to 10')
Supply Voltage: 5V +/-10% (Absolute: Minimum 4.5V, Maximum 6V)
Supply Current: 30 mA typ; 35 mA max
3-pin interface (power, ground, signal)
20 mA power consumption
Narrow acceptance angle
Simple pulse in / pulse out communication
Indicator LED shows measurement in progress
Input Trigger - positive TTL pulse, 2 s min, 5 s typ.
Echo Pulse - positive TTL pulse, 115 s to 18.5 ms
Echo Hold-off - 750 s from fall of Trigger pulse
Burst Frequency - 40 kHz for 200 s
Size - 22 mm H x 46 mm W x 16 mm D (0.85 in x 1.8 in x 0.6 in)
3.3 Ultrasonic Distance Transmitter unit
The circuit described generates (transmits) ultrasonic sound of frequency between
40 and 50 kHz. As with any other remote control system this circuit comprises of a mini
transmitter and a receiver circuit. Transmitter generates ultrasonic sound and the receiver
senses ultrasonic sound from the transmitter and switches on a relay.The ultrasonic
transmitter uses a 555 based astable multivibrator. It oscillates at a frequency of 40-50 kHz.
An ultrasonic transmitter transducer is used here to transmit ultrasonic sound very
effectively. The transmitter is powered from a 9-volt PP3 single cell. The ultrasonic
receiver circuit uses an ultrasonic receiver transducer to sense ultrasonic signals. It alsouses a two-stage amplifier, a rectifier stage, and an operational amplifier in inverting mode.
Output of op-amp is connected to a relay through a complimentary relay driver stage. A 9-
volt battery eliminator can be used for receiver circuit, if required. When switch S1 of
transmitter is pressed, it generates ultrasonic sound
24
-
8/2/2019 Modified 234
25/49
.
Figure 3.2: Ultrasonic transmitter
3.4 Ultrasonic Distance receiver unit
The sound is received by ultrasonic receiver transducer. It converts it to electrical
variations of the same frequency. These signals are amplified by transistors T3 and T4. The
amplified signals are then rectified and filtered. The filtered DC voltage is given to
inverting pin of op-amp IC2. The non- inverting pin of IC2 is connected to a variable DC
voltage via preset VR2 which determines the threshold value of ultrasonic signal receivedby receiver for operation of relay RL1. The inverted output of IC2 is used to bias transistor
T5. When transistor T5 conducts, it supplies base bias to transistor T6. When transistor T6
conducts, it actuates the relay. The relay can be used to control any electrical or electronic
equipment.
25
-
8/2/2019 Modified 234
26/49
Figure 3.3: Ultrasonic receiver
3.5APPLICATI
ONS
A) Transducers
An ultrasonic transducer is a device that converts energy into ultrasound, or sound waves
above the normal range of human hearing. While technically a dog whistle is an ultrasonic
transducer that converts mechanical energy in the form of air pressure into ultrasonic sound
waves, the term is more apt to be used to refer to piezoelectric transducers that convert
electrical energy into sound. Piezoelectric crystals have the property of changing size when
a voltage is applied, thus applying an alternating current (AC) across them causes them to
oscillate at very high frequencies, thus producing very high frequency sound waves.
B) Detectors
Since piezoelectric crystal generate a voltage when force is applied to them, the
same crystal can be used as an ultrasonic detector. Some systems use separate transmitter
and receiver components while others combine both in a single piezoelectric transceiver.
26
http://en.wikipedia.org/wiki/Ultrasoundhttp://en.wikipedia.org/wiki/Ultrasoundhttp://en.wikipedia.org/wiki/Dog_whistlehttp://en.wikipedia.org/wiki/Piezoelectricityhttp://en.wikipedia.org/wiki/Voltagehttp://en.wikipedia.org/wiki/AChttp://en.wikipedia.org/wiki/Ultrasoundhttp://en.wikipedia.org/wiki/Dog_whistlehttp://en.wikipedia.org/wiki/Piezoelectricityhttp://en.wikipedia.org/wiki/Voltagehttp://en.wikipedia.org/wiki/AC -
8/2/2019 Modified 234
27/49
C) Use in medicine
Medical ultrasonic transducers (probes) come in a variety of different shapes and
sizes for use in making pictures of different parts of the body. The transducer may be
passed over the surface of the body or inserted into anbody opening such as the rectum orvagina. Clinicians who perform ultrasound-guided procedures often use aprobe positioning
system to hold the ultrasonic transducer.
D) Use in industry
Ultrasonic sensors are used to detect the presence of targets and to measure the
distance to targets in many automated factories and process plants. Sensors with an on or
off digital output are available for detecting the presence of objects, and sensors with an
analog output which varies proportionally to the sensor to target separation distance are
commercially available.
CHAPTER-4
DC MOTOR
27
http://en.wikipedia.org/wiki/Body_openinghttp://en.wikipedia.org/wiki/Rectumhttp://en.wikipedia.org/wiki/Vaginahttp://en.wikipedia.org/wiki/Probe_positioning_systemhttp://en.wikipedia.org/wiki/Probe_positioning_systemhttp://en.wikipedia.org/wiki/Body_openinghttp://en.wikipedia.org/wiki/Rectumhttp://en.wikipedia.org/wiki/Vaginahttp://en.wikipedia.org/wiki/Probe_positioning_systemhttp://en.wikipedia.org/wiki/Probe_positioning_system -
8/2/2019 Modified 234
28/49
1 Introduction
DC motors are configured in many types and sizes, including brush less, servo, and
gear motor types. A motor consists of a rotor and a permanent magnetic field stator. The
magnetic field is maintained using either permanent magnets or electromagnetic windings.
DC motors are most Motion and controls cover a wide range of components that in some
way are used to generate and/or control motion. Areas within this category include bearings
and bushings, clutches and brakes, controls and drives,encoders and resolves, Integrated
motion control, limit switches, linear actuators, linear and rotary motion components, linear
position sensing, motors , orientation position sensing, pneumatics and pneumatic
components, positioning stages, slides.
Figure 4.1: DC MOTOR
Motors are the devices that provide the actual speed and torque in a drive system.
This family includes AC motor types (single and multiphase motors, universal, servo
motors, induction, synchronous, and gear motor) and DC motors (brush less, servo motor,
and gear motor) as well as linear, stepper and air motors, and motor contactors and
starters.In any electric motor, operation is based on simple electromagnetism. A current-
carrying conductor generates a magnetic field; when this is then placed in an external
magnetic field, it will experience a force proportional to the current in the conductor, and to
the strength of the external magnetic field. As you are well aware of from playing with
magnets as a kid, opposite (North and South) polarities attract, while like polarities (North
and North, South and South) repel. The internal configuration of a DC motor is designed to
28
http://dc-motors.globalspec.com/Industrial-Directory/motorshttp://dc-motors.globalspec.com/Industrial-Directory/motors -
8/2/2019 Modified 234
29/49
harness the magnetic interaction between a current-carrying conductor and an external
magnetic field to generate rotational motion.
4.2 Types of DC Motor
4.2.1 2-pole DC electric motor
Let's start by looking at a simple 2-pole DC electric motor (here red represents a
magnet or winding with a "North" polarization, while green represents a magnet or winding
with a "South" polarization).
Figure 4.2: 2-pole DC electric motor
Every DC motor has six basic parts -- axle, rotor (a.k.a., armature), stator,
commutator, field magnet(s), and brushes. In most common DC motors (and all that
Beamers will see), the external magnetic field is produced by high-strength permanent
magnets1. The stator is the stationary part of the motor -- this includes the motor casing, as
well as two or more permanent magnet pole pieces. The rotor (together with the axle and
attached commutator) rotates with respect to the stator. The rotor consists of windings
(generally on a core), the windings being electrically connected to the commutator. The
above diagram shows a common motor layout -- with the rotor inside the stator (field)
magnets. The geometry of the brushes, commutator contacts, and rotor windings are such
that when power is applied, the polarities of the energized winding and the stator magnet(s)
are misaligned, and the rotor will rotate until it is almost aligned with the stator's field
magnets. As the rotor reaches alignment, the brushes move to the next commutator
contacts, and energize the next winding. Given our example two-pole motor, the rotation
reverses the direction of current through the rotor winding, leading to a "flip" of the rotor's
magnetic field, and driving it to continue rotating.
29
-
8/2/2019 Modified 234
30/49
In real life, though, DC motors will always have more than two poles (three is a
very common number). In particular, this avoids "dead spots" in the commutator. You can
imagine how with our example two-pole motor, if the rotor is exactly at the middle of its
rotation (perfectly aligned with the field magnets), it will get "stuck" there. Meanwhile,
with a two-pole motor, there is a moment where the commutator shorts out the power
supply (i.e., both brushes touch both commutator contacts simultaneously). This would be
bad for the power supply, waste energy, and damage motor components as well. Yet
another disadvantage of such a simple motor is that it would exhibit a high amount of
torque ripple" (the amount of torque it could produce is cyclic with the position of the
rotor).
4.2.2 3-pole DC electric motor
So since most small DC motors are of a three-pole design, let's tinker with the
workings of one via an interactive animation (JavaScript required):
Figure4.3: 3-pole DC electric motor
You'll notice a few things from this -- namely, one pole is fully energized at a time (but two
others are "partially" energized). As each brush transitions from one commutator contact to
the next, one coil's field will rapidly collapse, as the next coil's field will rapidly charge up
(this occurs within a few microsecond). We'll see more about the effects of this later, but in
the meantime you can see that this is a direct result of the coil windings' series wiring:
There's probably no better way to see how an average dc motor is put together, than by just
opening one up. Unfortunately this is tedious work, as well as requiring the destruction of a
perfectly good motor.
30
-
8/2/2019 Modified 234
31/49
CHAPTER-5
LCD DISPLAY
5.1 INTRODUCTION
To display interactive messages we are using LCD Module. We examine an
intelligent LCD display of two lines,16 characters per line that is interfaced to the
controllers. The protocol (handshaking) for the display is as shown. Whereas D0 to D7th
bit is the Data lines, RS, RW and EN pins are the control pins and remaining pins are +5V,
-5V and GND to provide supply. Where RS is the Register Select, RW is the Read Write
and EN is the Enable pin.The display contains two internal byte-wide registers, one for
commands (RS=0) and the second for characters to be displayed (RS=1). It also contains a
user-programmed RAM area (the character RAM) that can be programmed to generate anydesired character that can be formed using a dot matrix. To distinguish between these two
data areas, the hex command byte 80 will be used to signify that the display RAM address
00h will be chosen.Port1 is used to furnish the command or data type, and ports 3.2 to3.4
furnish register select and read/write levels.The display takes varying amounts of time to
accomplish the functions as listed. LCD bit 7 is monitored for logic high (busy) to ensure
the display is overwritten.Liquid Crystal Display also called as LCD is very helpful in
providing user interface as well as for debugging purpose. The most common type of LCD
controller is HITACHI 44780 which provides a simple interface between the controller
& an LCD. These LCD's are very simple to interface with the controller as well as are cost
effective.
Figure 5.1: 2x16 Line Alphanumeric LCD Display
The most commonly used ALPHANUMERIC displays are 1x16 (Single Line & 16
characters), 2x16 (Double Line & 16 character per line) & 4x20 (four lines & Twenty
characters per line). The LCD requires 3 control lines (RS, R/W & EN) & 8 (or 4) data
lines. The number on data lines depends on the mode of operation.
31
-
8/2/2019 Modified 234
32/49
5.2 PIN DESCRIPTION
Pin Symbol Function
1 Vss Ground
2 Vdd Supply Voltage
3 Vo Contrast Setting
4 RS Register Select
5 R/W Read/Write Select
6 En Chip Enable Signal
7-14 DB0-DB7 Data Lines
15 A/Vee Gnd for the backlight
16 K Vcc for backlight
When RS is low (0), the data is to be treated as a command. When RS is high (1),
the data being sent is considered as text data which should be displayed on the screen.
When R/W is low (0), the information on the data bus is being written to the LCD. When
RW is high (1), the program is effectively reading from the LCD. The ENABLE pin is used
to latch the data present on the data pins. A HIGH - LOW signal is required to latch the
data. The LCD interprets and executes our command at the instant the EN line is brought
low.
The below figure shows LCD interfacing.
Figure 5.2: Interfacing of LCD
CHAPTER-6
SCHEMATIC DIAGRAM
32
-
8/2/2019 Modified 234
33/49
Figure 6.1: Schematic Diagram
6.1 Schematic Description
A variable regulated power supply, also called a variable bench power supply, is one
where you can continuously adjust the output voltage to your requirements. Varying the
output of the power supply is the recommended way to test a project after having double
checked parts placement against circuit drawings and the parts placement guide.
6.2 REGULATED POWER SUPPLY
33
-
8/2/2019 Modified 234
34/49
A variable regulated power supply, also called a variable bench power supply, is
one where you can continuously adjust the output voltage to your requirements. Varying
the output of the power supply is the recommended way to test a project after having
double checked parts placement against circuit drawings and the parts placement guide.
This type of regulation is ideal for having a simple variable bench power supply. Actually
this is quite important because one of the first projects a hobbyist should undertake is the
construction of a variable regulated power supply.While a dedicated supply is quite handy
e.g. 5V or 12V, it's much handier to have a variable supply on hand, especially for testing.
Most digital logic circuits and processors need a 5 volt power supply. To use these parts we
need to build a regulated 5 volt source. Usually you start with an unregulated power supply
ranging from 9 volts to 24 volts DC (A 12 volt power supply is included with the Beginner
kit and the Microcontroller Beginner Kit.). To make a 5 volt power supply, we use a
LM7805 voltage regulator IC .
Figure 6.2: IC Regulator
The LM7805 is simple to use. You simply connect the positive lead of your
unregulated DC power supply (anything from 9VDC to 24VDC) to the Input pin, connect
the negative lead to the Common pin and then when you turn on the power, you get a 5 volt
supply from the Output pin.
34
-
8/2/2019 Modified 234
35/49
Fig: Block Diagram of Power Supply
Figure 6.3: Circuit Diagram of Power Supply
Above is the circuit of a basic unregulated dc power supply. A bridge rectifier D1
to D4 rectifies the ac from the transformer secondary, which may also be a block rectifier
such as WO4 or even four individual diodes such as 1N4004 types. (See later re rectifier
ratings).The principal advantage of a bridge rectifier is you do not need a centre tap on the
secondary of the transformer. A further but significant advantage is that the ripple
frequency at the output is twice the line frequency (i.e. 50 Hz or 60 Hz) and makes filteringsomewhat easier.As a design example consider we wanted a small unregulated bench
supply for our projects. Here we will go for a voltage of about 12 - 13V at a maximum
output current (IL) of 500ma (0.5A). Maximum ripple will be 2.5% and load regulation is
5%.Now the RMS secondary voltage (primary is whatever is consistent with your area) for
our power transformer T1 must be our desired output Vo PLUS the voltage drops across
D2 and D4 (2 * 0.7V) divided by 1.414.This means that Vsec = [13V + 1.4V] / 1.414
which equals about 10.2V. Depending on the VA rating of your transformer, the secondary
voltage will vary considerably in accordance with the applied load. The secondary voltage
on a transformer advertised as say 20VA will be much greater if the secondary is only
lightly loaded.If we accept the 2.5% ripple as adequate for our purposes then at 13V this
becomes 13 * 0.025 = 0.325 Vrms. The peak to peak value is 2.828 times this value. Vrip =
0.325V X 2.828 = 0.92 V and this value is required to calculate the value of C1. Also
35
-
8/2/2019 Modified 234
36/49
required for this calculation is the time interval for charging pulses. If you are on a 60Hz
system it it 1/ (2 * 60) = 0.008333 which is 8.33 milliseconds. For a 50Hz system it is 0.01
sec or 10 milliseconds.Remember the tolerance of the type of capacitor used here is very
loose. The important thing to be aware of is the voltage rating should be at least 13V X
1.414 or 18.33. Here you would use at least the standard 25V or higher (absolutely not
16V).With our rectifier diodes or bridge they should have a PIV rating of 2.828 times the
Vsec or at least 29V. Don't search for this rating because it doesn't exist. Use the next
highest standard or even higher. The current rating should be at least twice the load current
maximum i.e. 2 X 0.5A or 1A. A good type to use would be 1N4004, 1N4006 or 1N4008
types.These are rated 1 Amp at 400PIV, 600PIV and 1000PIV respectively. Always be on
the lookout for the higher voltage ones when they are on special type of regulation is ideal
for having a simple variable bench power supply. Actually this is quite important because
one of the first projects a hobbyist should undertake is the construction of a variable
regulated power supply.
6.3 Circuit Features:
Brief description of operation: Gives out well regulated +5V output, output current
capability of 100 mA
Circuit protection: Built-in overheating protection shuts down output when
regulator IC gets too hot
Circuit complexity: Very simple and easy to build
Circuit performance: Very stable +5V output voltage, reliable operation
Availability of components: Easy to get, uses only very common basic components
Design testing: Based on datasheet example circuit, I have used this circuit
successfully as part of many electronics projects Applications:
Part of electronics devices, small laboratory power supply
Power supply voltage: Unregulated DC 8-18V power supply
Power supply current: Needed output current + 5 mA
Component costs: Few dollars for the electronics components + the input
transformer cost
36
-
8/2/2019 Modified 234
37/49
CHAPTER 7
SOFTWARE DESCRIPTION
Click on the Keil uVision Icon on Desktop
The following fig will appear
37
-
8/2/2019 Modified 234
38/49
Click on the Project menu from the title bar
Then Click on New Project
Save the Project by typing suitable project name with no extension in u r own
folder sited in either C:\ or D:\
38
-
8/2/2019 Modified 234
39/49
Then Click on Save button above.
Select the component for u r project. i.e. Atmel
Click on the + Symbol beside of Atmel
39
-
8/2/2019 Modified 234
40/49
Select AT89S51 as shown below
Then Click on OK
The Following fig will appear
Then Click either YES or NOmostly NO
40
-
8/2/2019 Modified 234
41/49
Now your project is ready to USE
Now double click on the Target1, you would get another option Source group 1
as shown in next page.
Click on the file option from menu bar and select new
41
-
8/2/2019 Modified 234
42/49
The next screen will be as shown in next page, and just maximize it by double
clicking on its blue boarder.
Now start writing program in either in C or ASM
For a program written in Assembly, then save it with extension . asm and for
C based program save it with extension .C
42
-
8/2/2019 Modified 234
43/49
Now right click on Source group 1 and click on Add files to Group Source
Now you will get another window, on which by default C files will appear.
43
-
8/2/2019 Modified 234
44/49
Now select as per your file extension given while saving the file
Click only one time on option ADD
Now Press function key F7 to compile. Any error will appear if so happen.
44
-
8/2/2019 Modified 234
45/49
If the file contains no
error, then press Control+F5 simultaneously.
The new window is as follows
Then Click OK
45
-
8/2/2019 Modified 234
46/49
Now Click on the Peripherals from menu bar, and check your required port as
shown in fig below
Drag the port a side and click in the program file.
Now keep Pressing function key F11 slowly and observe.
You are running your program successfully
46
-
8/2/2019 Modified 234
47/49
FUTURE SCOPE
This system is a rapidly growing field and there are new and improved
strategies popping up all the time. For the most part these systems are all built around the
same basic structure, a central box that monitors several detectors and perimeter guards and
sounds an alarm when any of them are triggered.This system is best for guiding the
perimeter of a house or a business center the points where an intruder would enter the
building. In this system IR sensor is used to detect the intrusion. Similarly the vibration and
temperature sensors recognize vibration disturbances and accidental fires respectively.This
project provides an efficient and economical security system. This system finds
applications in industries, banks and homes.
Incorporating the features discussed below can further enhance the system
This system can detect intrusion only at discrete points. This system detection
feature can be extended to scanning a complete area. Thus the intrusion into the
building can be detected with much more efficiently.
The redialing feature can also be incorporated such that if the call is not put forward
the first time, the auto dialer will dial the same number until the call is successfully
completed.
A pre-recorded voice message can delivered to the owner notifying him about the
intrusion into the premises.
The addition of the above discussed advancements certainly builds this project into
a much flexible and reliable security system.
47
-
8/2/2019 Modified 234
48/49
REFERENCES
The 8051 Microcontroller and Embedded Systems By Muhammad Ali Mazidi
Fundamentals Of Embedded Software By Daniel W Lewis
www.howsstuffworks.com
www.alldatasheets.com
www.electronicsforu.com
www.knowledgebase.com
www.8051 projectsinfo.com
Datasheets of Microcontroller AT89C52
Datasheets of 555 timer
Datasheets of TSAL 6200
Datasheets of TSOP 1356
Datasheets of BC 547
48
http://www.howsstuffworks.com/http://www.electronicsforu.com/http://www.knowledgebase.com/http://www.howsstuffworks.com/http://www.electronicsforu.com/http://www.knowledgebase.com/ -
8/2/2019 Modified 234
49/49
Datasheets of DTMF Generator UM 95089