Wire Less Stepper Motor Controll Using Microcontroller
Wire Less Stepper Motor Controll Using Microcontroller
Wire Less Stepper Motor Controll Using Microcontroller
CHAPTER-1
ABSTRCT
The main idea of this project is to control the speed of a Stepper Motor by wire
less communication using RF technology which is implemented by an embedded
controller. In this we are using transceiver unit for wire less communication. To meet this
requirement we have designed an embedded system.
A machine that converts electrical power into mechanical power is called Motor.
Power devices are used in speed control circuits of STEPPER motors to get high reliable
operations at large currents. Various methods are available to control the speed of the
STEPPER motor; here we control the motor speed by applying the RF technology.
The controlling device controls the speed of the motor. Here there are mobile
keys, which serve the purpose of increasing or decreasing the speed of the motor. In this
stepper motor we are using where we want the stepping sequences. This speed of the
stepper motor varies in steps according to the selection of key over the particular range.
BLOCK DIAGRAM:
TRANSMITTER:
RF LCD
MICRO
MODULE CONTROLLER
RECEIVER:
LCD
RF MICRO
MODULE CONTROLLER
RRE
STEPPER
MOTOR
CONTROL
UNIT STEPPER
MOTOR
10K PU LLU P
C
R8
R7
R6
R5
R4
R3
R2
R1
VC C
9
8
7
6
5
4
3
2
1
VC C
1 4 0
2 (O C 0 / T 0 ) P B 0 VC C 3 9
3 (T 1 ) P B 1 P A 0 /A D 0 3 8
X B E E (D O U T ) (R X D 1 ) P B 2 P A 1 /A D 1
4 3 7
X B E E (D IN ) (T X D 1 ) P B 3 P A 2 /A D 2
5 3 6
6 (S S ) P B 4 P A 3 /A D 3 3 5
F R O M IS P (M O S I ) P B 5 P A 4 /A D 4
7 3 4
F R O M IS P (M IS O ) P B 6 P A 5 /A D 5
8 3 3 V C C = 3 .3 V
F R O M IS P (S C K ) P B 7 P A 6 /A D 6 AD0
3 2 1 vcc 2 0
9 P A 7 /A D 7 3 1 2 DOUT AD1 1 9
R ESET R ESET P E 0 (IC P /IN T 2 ) PB 2 DIN AD2
3 1 8
1 0 30 PB 3 4 CD AD3 1 7
R 2O U T(M A X 32 3 2) 1 1 (R X D 0 ) P D 0 P E 1 (A L E ) 5 RESET AD6 1 6
T 2 IN ( M A X 3 2 3 2 ) 1 2 (T D X 0 ) P D 1 29 6 PWM0 AD5 1 5
1 3 (IN T 0 ) P D 2 P E 2 (O C 1 B ) 7 NC VREF 1 4
1 4 (IN T 1 ) P D 3 2 8 8 NC SLEEP 1 3
1 5 (O C 3 A ) P D 4 P C 7 (A 1 5 ) 2 7 9 DTR CTS 1 2
1 6 (O C 1 A ) P D 5 P C 6 (A 1 4 ) 2 6 10 GND AD4 1 1
1 7 (W R ) P D 6 P C 5 (A 1 3 ) 2 5
1 8 (R D ) P D 7 P C 4 (A 1 2 ) 2 4
XTA L2 XT A L2 P C 3 (A 1 1 )
P C 2 (A 1 0 )
2 3 GND X BEE MO D U LE
2 2
19 P C 1 (A 9 ) 2 1
XTA L1 XT A L1 P C 0 (A 8 )
20
G N D
GND A TM E G A 162
1
B R ID G E R E C T IF IE R
LM 1117T R E G U LA TO R V C C = 3 .3 V
2 2 - + 4 3 2
1 V IN VO U T VC C VC C
1 1 0 u f /6 3 V
GND 220 ohm 1 C1+ VCC 16
2 3 0 V ,A .C TRANSFORMER
(9V,1 AMP) 2 VS+ GND 15
33pf 104pf 1 0 u f /6 3 V
3
1 0 0 0 u f /3 5 V 3 C1- T1OUT 14
LED 4 C2+ R1IN 13 GND
5 C2- R1OUT 12
1 0 u f /6 3 V
P O W E R S U P P L Y 3 .3 V D C ) 6 VS T1IN 11
GND
1 0u f/63 V 7 T2OUT T2IN 10
P 3 .1
VC C
8 R2IN R2OUT 9
P 3 .0
GND
3 MA X3232
22 pf 22K G N D 2
1
XTA L2
R ESET
1 I 2
PB6
S W IT C H
22 pf 8 .0 0 M H z 3 4 RS232 GND
PB7
XTA L1
0 .1 u f /3 5 V 5 S 6
R ESET
7 8
9 P 10
PB5
GND T it le
VC C W IR E L E S S C H A T IN G U S IN G R F (T X )
ATMEG A 162 C R YSTAL GND A T M E G A 1 6 2 IS P
S iz e D ocum ent N um ber R ev
R ESET A <D oc> <R ev C ode>
D a te : F r id a y , F e b r u a r y 2 0 , 2 0 0 9 Sheet 1 of 1
RECEIVER:
10K PU LLU P
C
R8
R7
R6
R5
R4
R3
R2
R1
VC C
9
8
7
6
5
4
3
2
1
VC C
1 4 0
2 (O C 0 / T 0 ) P B 0 VC C 3 9
3 (T 1 ) P B 1 P A 0 /A D 0 3 8
X B E E (D O U T ) (R X D 1 ) P B 2 P A 1 /A D 1
4 3 7
X B E E (D IN ) (T X D 1 ) P B 3 P A 2 /A D 2
5 3 6
6 (S S ) P B 4 P A 3 /A D 3 3 5
F R O M IS P (M O S I ) P B 5 P A 4 /A D 4
7 3 4
F R O M IS P (M IS O ) P B 6 P A 5 /A D 5
8 3 3 V C C = 3 .3 V
F R O M IS P (S C K ) P B 7 P A 6 /A D 6 AD0
3 2 1 vcc 2 0
9 P A 7 /A D 7 3 1 2 DOUT AD1 1 9
R ESET R ESET P E 0 (IC P /IN T 2 ) PB 2 DIN AD2
3 1 8
1 0 30 PB 3 4 CD AD3 1 7
R 2O U T(M A X 32 3 2) 1 1 (R X D 0 ) P D 0 P E 1 (A L E ) 5 RESET AD6 1 6
T 2 IN ( M A X 3 2 3 2 ) 1 2 (T D X 0 ) P D 1 29 6 PWM0 AD5 1 5
1 3 (IN T 0 ) P D 2 P E 2 (O C 1 B ) 7 NC VREF 1 4
1 4 (IN T 1 ) P D 3 2 8 8 NC SLEEP 1 3
1 5 (O C 3 A ) P D 4 P C 7 (A 1 5 ) 2 7 9 DTR CTS 1 2
1 6 (O C 1 A ) P D 5 P C 6 (A 1 4 ) 2 6 10 GND AD4 1 1
1 7 (W R ) P D 6 P C 5 (A 1 3 ) 2 5
1 8 (R D ) P D 7 P C 4 (A 1 2 ) 2 4
XTA L2 XT A L2 P C 3 (A 1 1 )
P C 2 (A 1 0 )
2 3 GND X BEE MO D U LE
2 2
19 P C 1 (A 9 ) 2 1
XTA L1 XT A L1 P C 0 (A 8 )
20
G N D
GND A TM E G A 162
1
B R ID G E R E C T IF IE R
LM 1117T R E G U LA TO R V C C = 3 .3 V
2 2 - + 4 3 2
1 V IN VO U T VC C VC C
1 1 0 u f /6 3 V
GND 220 ohm 1 C1+ VCC 16
2 3 0 V ,A .C TRANSFORMER
(9V,1 AMP) 2 VS+ GND 15
33pf 104pf 1 0 u f /6 3 V
3
1 0 0 0 u f /3 5 V 3 C1- T1OUT 14
LED 4 C2+ R1IN 13 GND
5 C2- R1OUT 12
1 0 u f /6 3 V
P O W E R S U P P L Y 3 .3 V D C ) 6 VS T1IN 11
GND
1 0u f/63 V 7 T2OUT T2IN 10
P 3 .1
VC C
8 R2IN R2OUT 9
P 3 .0
GND
3 MA X3232
22 pf 22K G N D 2
1
XTA L2
R ESET
1 I 2
PB6
S W IT C H
22 pf 8 .0 0 M H z 3 4 RS232 GND
PB7
XTA L1
0 .1 u f /3 5 V 5 S 6
R ESET
7 8
9 P 10
PB5
GND T it le
VC C W IR E L E S S C H A T IN G U S IN G R F (T X )
ATMEG A 162 C R YSTAL GND A T M E G A 1 6 2 IS P
S iz e D ocum ent N um ber R ev
R ESET A <D oc> <R ev C ode>
D a te : F r id a y , F e b r u a r y 2 0 , 2 0 0 9 Sheet 1 of 1
CHAPETR-3
CIRCUIT DESCRIPTION
DESIGNING:
Since the main intension of this project is to design a wireless stepper motor control using
RF. Here the stepper motor is connected to the receiver circuit and is controlled through
the transmitter. For wireless communication, the RF TLP and RLP (434) modules are
used.
In order to fulfill this application there are few steps that has been performed i.e.
In-order to work with any components basic requirement is power supply. In this
section there is a requirement of two different voltage levels.
Those are
1) 5V DC power supply.
Now the aim is to design the power supply section which converts 230V
AC in to 5V DC. Since 230V AC is too high to reduce it to directly 5V DC, therefore we
need a step-down transformer that reduces the line voltage to certain voltage that will
help us to convert it in to a 5V DC. Considering the efficiency factor of the bridge
rectifier, we came to a conclusion to choose a transformer, whose secondary voltage is 3
to 4 V higher than the required voltage i.e. 5V. For this application 0-9V transformers is
used, since it is easily available in the market.
The output of the transformer is 9V AC; it feed to rectifier that converts AC to pulsating
DC. As we all know that there are 3 kind of rectifiers that is
1) half wave
2) Full wave and
3) Bridge rectifier
Here we short listed to use Bridge rectifier, because half wave rectifier has we less
in efficiency. Even though the efficiency of full wave and bridge rectifier are the same,
since there is no requirement for any negative voltage for our application, we gone with
bridge rectifier.
Since the output voltage of the rectifier is pulsating DC, in order to convert it into pure
DC we use a high value (1000UF/1500UF) of capacitor in parallel that acts as a filter.
The most easy way to regulate this voltage is by using a 7805 voltage regulator, whose
output voltage is constant 5V DC irrespective of any fluctuation in line voltage.
SELECTION OF MICROCONTROLLER:
As we know that there so many types of micro controller families that are available in the
market.
Those are
1) 8051 Family
2) AVR microcontroller Family
3) PIC microcontroller Family
4) ARM Family
Basic AVR family is enough for our application; hence we are not concentrating on
higher end controller families. In order to fulfill our application basic that is
ATMEGA162 controller is enough. There are minimum requirements for proper
operation of microcontroller.
Those are:
1) power supply section
2) Pull-ups for ports.
3) Reset circuit
4) Crystal circuit
5) ISP circuit (for program dumping)
Reset circuit is used to reset the microcontroller. Crystal circuit is used for the
microcontroller for timing pluses.
SELECTION OF LCD:
SELECTION OF RF MODULE:
a. CONNECTION OF RF:
In this project I am using RF module to transfer the data from one place to another place.
The data pins of RF encoder are connected to the PORT2 pins of controller.
b. CONNECTIONS OF LCD:
We can connect LCD in 8 bit mode or 4 bit mode, if use 8 bit mode more pins necessary
to interface LCD, so we can use 4 bit mode to reduce pins .In this project i used 4 bit
mode and it is connected to PORT0.
a. CONNECTION OF RF:
In this project I am using RF module to transfer the data from one place to
another place. The data pins of RF decoder are connected to the PORT2 of controller.
b. CONNECTIONS OF LCD:
We can connect LCD in 8 bit mode or 4 bit mode, if use 8 bit mode more pins
necessary to interface LCD, so we can use 4 bit mode to reduce pins .In this project I
used 4 bit mode and it is connected to PORT 0.
Stepper motor is connected to the micro controller thought the ULN 2003 motor
driver. PORT2 pins are connected to the ULN2003 driver inputs and the corresponding
outputs are connected to the Stepper motor.
CIRCUIT OPERATION:
In this application we are using RF to transmit as well as to receive the data .In this
project switches are connected to Microcontroller port pins. .Whenever the switches are
pressed micro controller send the data trough RF module.
In the receiver section, the RF receive module will receive the data and send to the micro
controller, based on the received commands the micro controller will control the stepper
motor rotating directions. Here the stepper motor is connected to the micro controller
through the motor driver (ULN2003)
CHAPTER-4
INTRODUCTION
Embedded systems are electronic devices that incorporate microprocessors with in their
implementations. The main purposes of the microprocessors are to simplify the system
design and provide flexibility. Having a microprocessor in the device helps in removing
the bugs, making modifications, or adding new features are only matter of rewriting the
software that controls the device. Or in other words embedded computer systems are
electronic systems that include a microcomputer to perform a specific dedicated
application. The computer is hidden inside these products. Embedded systems are
ubiquitous. Every week millions of tiny computer chips come pouring out of factories
finding their way into our everyday products.
Two major areas of differences are cost and power consumption. Since
many embedded systems are produced in tens of thousands to millions of units range,
reducing cost is a major concern. Embedded systems often use a (relatively) slow
processor and small memory size to minimize costs.
The slowness is not just clock speed. The whole architecture of the
computer is often intentionally simplified to lower costs. For example, embedded systems
often use peripherals controlled by synchronous serial interfaces, which are ten to
hundreds of times slower than comparable peripherals used in PCs. Programs on an
embedded system often run with real-time constraints with limited hardware resources:
often there is no disk drive, operating system, keyboard or screen. A flash drive may
replace rotating media, and a small keypad and LCD screen may be used instead of a
PC's keyboard and screen.
PLATFORM:
OPERATING SYSTEM:
DEBUGGING:
START-UP:
In this design, the software has a loop. The loop calls subroutines. Each
subroutine manages a part of the hardware or software. Interrupts generally set flags, or
update counters that are read by the rest of the software. A simple API disables and
enables interrupts. Done right, it handles nested calls in nested subroutines, and restores
the preceding interrupt state in the outermost enable. This is one of the simplest methods
of creating an exocrine.
Many designers recommend reading each IO device once per loop, and
storing the result so the logic acts on consistent values. Many designers prefer to design
their state machines to check only one or two things per state. Usually this is a hardware
event, and a software timer. Designers recommend that hierarchical state machines
should run the lower-level state machines before the higher, so the higher run with
accurate information.
One major disadvantage of this system is that it does not guarantee a time
to respond to any particular hardware event. Careful coding can easily assure that nothing
disables interrupts for long. Thus interrupt code can run at very precise timings. Another
major weakness of this system is that it can become complex to add new features.
Algorithms that take a long time to run must be carefully broken down so only a little
piece gets done each time through the main loop.
This system's strength is its simplicity, and on small pieces of software the
loop is usually so fast that nobody cares that it is not predictable. Another advantage is
that this system guarantees that the software will run. There is no mysterious operating
system to blame for bad behavior.
USER INTERFACES:
Another basic trick is to minimize and simplify the type of output. Designs
should consider using a status light for each interface plug, or failure condition, to tell
what failed. A cheap variation is to have two light bars with a printed matrix of errors that
they select- the user can glue on the labels for the language that she speaks.
For example, Boeing's standard test interface is a button and some lights.
When you press the button, all the lights turn on. When you release the button, the lights
with failures stay on. The labels are in Basic English.
Designers use colors. Red defines the users can get hurt- think of blood.
Yellow defines something might be wrong. Green defines everything's OK.
Another essential trick is to make any modes absolutely clear on the user's
display. If an interface has modes, they must be reversible in an obvious way. Most
designers prefer the display to respond to the user. The display should change
immediately after a user action. If the machine is going to do anything, it should start
within 7 seconds, or give progress reports.
Microcontrollers as the name suggests are small controllers. They are like
single chip computers that are often embedded into other systems to function as
processing/controlling unit. For example the remote control you are using probably has
microcontrollers inside that do decoding and other controlling functions. They are also
used in automobiles, washing machines, microwave ovens, toys ... etc, where automation
is needed.
Microprocessor - A single chip that contains the CPU or most of the computer
Microcontroller - A single chip used to control other devices
MICROPROCESSOR VS MICROCONTROLLER:
Microprocessor:
CPU is stand-alone, RAM, ROM, I/O, timer are separate
Designer can decide on the amount of ROM, RAM and I/O ports.
expensive
versatility general-purpose
Microcontroller:
CPU, RAM, ROM, I/O and timer are all on a single chip
fix amount of on-chip ROM, RAM, I/O ports
for applications in which cost, power and space are critical
single-purpose
FREQUENCIES:
KIEL U VISION2:
This is an IDE (Integrated Development Environment) that helps you
write, compile, and debug embedded programs. It encapsulates the following
components:
A project manager
A make facility
Tool configuration
Editor
A powerful debugger
To get start here are some several example programs
APPLICATIONS:
The compiler, assembler, linker, and debugger are limited to 2 Kbytes of object
code but source Code may be any size. Programs that generate more than 2
Kbytes of object code will not compile, assemble, or link the startup code
generated includes LJMP's and cannot be used in single-chip devices supporting
Less than 2 Kbytes of program space like the Philips 750/751/752.
The debugger supports files that are 2 Kbytes and smaller.
Programs begin at offset 0x0800 and cannot be programmed into single-chip
devices.
No hardware support is available for multiple DPTR registers.
No support is available for user libraries or floating-point arithmetic.
EVALUATION SOFTWARE:
Code-Banking Linker/Locator
Library Manager.
RTX-51 Tiny Real-Time Operating System
PERIPHERAL SIMULATION:
The u vision2 debugger provides complete simulation for the CPU and on chip
peripherals of most embedded devices. To discover which peripherals of a device are
supported, in u vision2. Select the Simulated Peripherals item from the Help menu. You
may also use the web-based device database. We are constantly adding new devices and
simulation support for on-chip peripherals so be sure to check Device Database often.
CHAPTER-5
COMPONENT DESCRIPTION
MICROCONTROLLER 89S52
FEATURES:
DESCRIPTION:
PIN DESCRIPTION:
GND - Ground.
Port 0:
Port 0 is an 8-bit open drain bi-directional 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 high-impedance inputs. Port 0 can also be configured to be the multiplexed
low-order address/data bus during accesses to external program and data memory. In
this mode, P0 has internal pull-ups. Port 0 also receives the code bytes during Flash
programming and outputs the code bytes during program verification. External pull-ups
are required during program verification.
Port 1:
Port 1 is an 8-bit bi-directional I/O port with internal pull-ups. The Port
1 output buffers can sink/source four TTL inputs. When 1s are written to Port 1 pins,
they are pulled high by the internal pull-ups and can be used as inputs. As inputs, Port 1
pins that are externally being pulled low will source current (I IL) because of the internal
pull-ups. 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.
Port 2:
Port 2 is an 8-bit bi-directional I/O port with internal pull-ups. 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 pull-ups and can be used as inputs. As inputs, Port 2
pins that are externally being pulled low will source current (I IL) because of the
internal pull-ups. Port 2 emits the high-order address byte during fetches from external
program memory and during accesses to external data memory that uses 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 uses 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 bi-directional I/O port with internal pull-ups. 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 pull-ups and can be used as inputs. As inputs, Port 3
pins that are externally being pulled low will source current (I IL) because of the pull-
ups. Port 3 also serves the functions of various special features of the AT89C51. Port 3
also receives some control signals for Flash programming and verification.
RST:
Reset input. A high on this pin for two machine cycles while the oscillator is running
resets the device.
ALE/PROG:
Address Latch Enable 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. 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 is the read strobe to external program memory.
When the AT89C52 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.
EA/VPP:
External Access Enable (EA) must be strapped to GND in order to
enable the device to fetch code from external pro-gram memory locations starting at
0000H up to FFFFH. However, 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 12V programming enable voltage (VPP) during Flash
programming when 12V programming is selected.
XTAL1:
Input to the inverting oscillator amplifier and input to the internal clock
operating circuit.
XTAL2:
It is an output from the inverting oscillator amplifier.
BLOCK DIAGRAM OF 89S52:
EXTERNAL
INTERRUPTS
TIMER/CO
UNTER
INTERRUPT ON-CHIP ON-
CONTROL ROM FOR CHIP TIMER 1 COUNTER
PROGRAM RAM INPUTS
CODE TIMER 0
CPU
P0 P1 P2 P3 Tx Rx
ARCHITECHTURE OF 8052 MICROCONTROLLER:
Architecture of 89S52
OSCILLATOR CHARACTERISTICS:
IDLE MODE:
In idle mode, the CPU puts itself to sleep while all the on-chip
peripherals remain active. The mode is invoked by software. The content of the on-chip
RAM and all the special functions registers remain unchanged during this mode. The
idle mode can be terminated by any enabled interrupt or by a hardware reset. It should
be noted that when idle is terminated by a hardware reset, the device normally resumes
program execution, from where it left off, up to two machine cycles before the internal
reset algorithm takes control. On-chip hardware inhibits access to internal RAM in this
event, but access to the port pins is not inhibited. To eliminate the possibility of an
unexpected write to a port pin when Idle is terminated by reset, the instruction
following the one that invokes Idle should not be one that writes to a port pin or to
external memory.
OSCILLATOR CONNECTIONS:
OSCILLATOR CONNECTIONS:
OVERVIEW:
The STT-433 is ideal for remote control applications where low cost and longer range is
required.
The transmitter operates from a 1.5-12V supply, making it ideal for battery-powered
applications. The transmitter employs a SAW-stabilized oscillator, ensuring accurate frequency
control for best range performance.
Output power and harmonic emissions are easy to control, making FCC and ETSI
compliance easy. The manufacturing-friendly SIP style package and low-cost make the STT-
433 suitable for high volume applications.
FEATURES:
APPLICATIONS:
Remote Keyless Entry (RKE)
Remote Lighting Controls
On-Site Paging
Asset Tracking
Wireless Alarm and Security Systems
Long Range RFID
Automated Resource Management
DIAGRAM OF TRANSMITTER AND RECEIVER:
TRANSMITTER (TLP434A):
RECEIVER (RLP434A):
SPECIFICATIONS:
POWER SUPPLY:
The STR-433 is designed to operate from a 5V power supply. It is crucial that this
power supply be very quiet. The power supply should be bypassed using a 0.1uF low-ESR
ceramic capacitor and a 4.7uF tantalum capacitor. These capacitors should be placed as close to
the power pins as possible. The STR-433 is designed for continuous duty operation.
From the time power is applied, it can take up to 750mSec for the data output to
become valid.
ANTENNA INPUT:
It will support most antenna types, including printed antennas integrated directly onto
the PCB and simple single core wire of about 17cm. The performance of the different antennas
varies. Any time a trace is longer than 1/8th the wavelength of the frequency it is carrying, it
should be a 50 ohm micro strip.
PIN DESCRIPTION:
IMPROVED MODULATION:
CIRCUIT DESCRYPTION:
RF TRANSMITTER (TLP434A):
TLP434A V C C
C 1
10UF
1
2
3
4
E 1
A N TE N N A
The RF transmitter module for this project is TLP434A (433.92MHz) which is an Ultra
Small Wireless module. This Transmitter is ideal for remote control projects or data transfer to
a remote object. This compact unit operates from only 2V up to 12V and we are using 5v as the
microcontroller operates in the same range.
This has a range of up to 200m, which is possible with an antenna fitted and when 12V
battery is used. This module can work directly with HT12D or similar decoder.
RF RECEIVER (RLP434A):
R LP 434A
J 2
1
2
3
4 V C C
C 4
5
6
E 1 7
A N TE N N A 8
The RLP434A is a Compact Radio Receiver (RF) which works directly with the
TLP434A transmitter on an operating frequency of 433.92MHz. This is an ideal device for
many applications, including robots, where commands can be sent directly to the robot,
without the need for a hard-wired connection.
This is suitable for data rates of up to 4.8 KHz, and the typical operating current is only
4.5mA. In this receiver end too we are using 5V power supply as the operational voltage of the
microcontroller is the same. The Receiver collects the data and sends it to the Microcontroller
Stepper Motor is widely used in CNC machine drives , robots, and wherever an
accurate positioning is required . In such applications, step angle , direction ,
operating modes( single coil or double coil),
speed and position are important considerations. WHAT IS A STEPPER
MOTOR ?? stepper motor is a simple dc motor with a permanent magnet rotor
and a stator with armature consisting of coils. These coils produce a magnetic
field when suitable current flows through them this field produces a torque in the
rotor which makes it rotate.Well these are a little more complicated to control
than the simple DC motors but these provide exact step wise rotation with an
overall turn of 1.8 degrees / step . The step wise motion can be easily controlled by
a stepper controller which is a simple circuit which takes digital logic and then
uses it to turn the motor step wise .The ones available in the market are basically
uni-polar stepper motors which means that they have four coils which
independently control the rotation . These motors have usually 5 -6 wires coming
out of them where 1 - 2 are common ground. These motors are recommended
where the positioning of the motor is to be taken into consideration and exact
rotation of the motor shaft is required .
The shaft of a stepper motor moves between discrete rotary positions typically
separated by a few degrees . Because of this precise position controllability , stepper
motors are excellent for applications that require high positioning accuracy. Stepper
motors are used in X-Y scanners , plotters , and machine tools , floppy and hard disk
drive head positioning , computer printer head positioning , and numerous other
applications.
Stepper motors have several electromagnetic coils that must be powered
sequentially to make the motor turn , or step , from one position , to the next. By
reversing the order that the coils are powered , a stepper motor can be made to
reverse direction . The rate at which the coils are respectively energized determines
the velocity of the motor up to a physical limit. Typical stepper motors have two
or four coils.
Stepper Motor is widely used in CNC machine drives , robots, and wherever an
accurate positioning is required . In such applications, step angle , direction ,
operating modes( single coil or double coil), speed and position are important
considerations. stepper motor is a simple dc motor with a permanent magnet rotor
and a stator with armature consisting of coils. These coils produce a magnetic
field when suitable current flows through them this field produces a torque in the
rotor which makes it rotate.Well these are a little more complicated to control
than the simple DC motors but these provide exact step wise rotation with an
overall turn of 1.8 degrees / step . The step wise motion can be easily controlled by
a stepper controller which is a simple circuit which takes digital logic and then
uses it to turn the motor step wise .The ones available in the market are basically
uni-polar stepper motors which means that they have four coils which
independently control the rotation . These motors have usually 5 -6 wires coming
out of them where 1 - 2 are common ground. These motors are recommended
where the positioning of the motor is to be taken into consideration and exact
rotation of the motor shaft is required .
The shaft of a stepper motor moves between discrete rotary positions typically
separated by a few degrees . Because of this precise position controllability , stepper
motors are excellent for applications that require high positioning accuracy. Stepper
motors are used in X-Y scanners , plotters , and machine tools , floppy and hard disk
drive head positioning , computer printer head positioning , and numerous other
applications.
Stepper motors have several electromagnetic coils that must be powered
sequentially to make the motor turn , or step , from one position , to the next. By
reversing the order that the coils are powered , a stepper motor can be made to
reverse direction . The rate at which the coils are respectively energized determines
the velocity of the motor up to a physical limit. Typical stepper motors have two
or four coils.
DESCRIPTION
The UTC(unisonic technlogies co. ltd) ULN 2003 is high-voltage , high-current
darlighton driver comprised of seven NPN darlington pairs . Ideally suited for
interfacing between low-level logic circuitry and multiple pheripheral power
loads , the series ULN20xxA/L high-voltage , high-current Darlington arrays
feature continuous load current ratings to 500mA for each of the seven
drivers. The ULN2003A/L have series input resisters selected for operation
directly with 5V TTL or CMOS. The ULN2003 A/L are the standard darlington
arrays .The outputs are capable of sinking 500mA and will with stand atleast
50V in the OFF state. Outputs may be paralleled for higher load current
capability.The darlington arrays are furnished in 16-pin Dual-in-line plastic
package and 16-lead surface- mountable SOICs . All devices are pinned with
outputs opposite inputs to facilitate ease of Circuit board layout . All devices
are rated for operation over the temperature range of -20 C to 85 C .
FEATURES
Output current (single output) 500mA MAX .
High sustaining voltage output 50V MIN .
Output clamp diodes .
Inputs compatible with various types of logic .
Dual In-Line Plastic Package or Small-Outline IC Package.
CHAPTER-6
SOURCE CODE
//Red,White,Yellow,Black /////
#include<reg52.h>
#include<lcd.h>
void delay_us(unsigned int i);
#define motor P1
sbit sw1=P2^2;
sbit sw2=P2^1;
sbit sw3=P2^0;
void forward(unsigned int);
void reverse(unsigned int);
void stop();
unsigned int a=10;
void main()
{
init_lcd();
delay_ms(100);
init_lcd();
motor=0x00;
delay_ms(5);
motor=0x00;
delay_ms(5);
motor=0x00;
delay_ms(5);
motor=0x00;
delay_ms(5);
cmd_lcd(0x01);
display_lcd("STEPPER MOTOR");
cmd_lcd(0xc0);
display_lcd("DIRECTION CONTROL");
delay_ms(1500);
stop();
while(1)
{
if(sw1==1)
{
cmd_lcd(0x01);
display_lcd("MOTOR ROTATE IN");
cmd_lcd(0xc0);
display_lcd("CLOCK WISE");
do{
forward(a);
if(sw1==1)
{
if(a!=1)
a=a-1;
}
else if(sw2==1)
a=a+1;
}while(sw3==0);
}
else if(sw2==1)
{
cmd_lcd(0x01);
display_lcd("MOTOR ROTATE IN ");
cmd_lcd(0xc0);
display_lcd("ANTI-CLOCK WISE");
do{
reverse(a);
if(sw1==1)
{
if(a!=1)
a=a-1;
}
else if(sw2==1)
a=a+1;
}while(sw3==0);
}
else if(sw3==1)
stop();
}
}
void stop()
{
cmd_lcd(0x01);
display_lcd("MOTOR IS IN");
cmd_lcd(0xc0);
display_lcd("STOP CONDITION");
motor=0x00;
delay_ms(5);
motor=0x00;
delay_ms(5);
motor=0x00;
delay_ms(5);
motor=0x00;
delay_ms(5);
}
void delay_us(unsigned int i)
{
unsigned int j;
while(i-->0);
}
CHAPTER-7
REFERENCE
WEBSITES VIEWED:
www.atmel.com
www.beyondlogic.org
www.dallassemiconductors.com
www.maxim-ic.com
www.alldatasheets.com
www.howstuffworks.com