PC based robot controlling using wireless communication
with ASK modulation
INDEX
CONTENTS
1. Abbreviations
2. Introduction
3. Block Diagram
4. Block Diagram Description
5. Schematic
6. Schematic Description
7. Hardware Components
Microcontroller
DC motor
sensor
buzzer
POWER SUPPLY
8. Circuit Description
9. Software
10.Conclusion (or) Synopsis
11. Bibliography
ABBREVIATIONS
SYMBOL NAME
ACC Accumulator
B B register
PSW Program status word
SP Stack pointer
DPTR Data pointer 2 bytes
DPL Low byte
DPH High byte
P0 Port0
P1 Port1
P2 Port2
P3 Port3
IP Interrupt priority control
IE Interrupt enable control
TMOD Timer/counter mode control
TCON Timer/counter control
T2CON Timer/counter 2 control
T2MOD Timer/counter mode2 control
TH0 Timer/counter 0high byte
TL0 Timer/counter 0 low byte
TH1 Timer/counter 1 high byte
TL1 Timer/counter 1 low byte
TH2 Timer/counter 2 high byte
TL2 Timer/counter 2 low byte
SCON Serial control
SBUF Serial data buffer
PCON Power control
Abstract:
This project is designed to control the robot direction using PC. The control unit
in receiver section controls the robot direction according to the commands given
from PC which is present in the transmitter section by using RF wireless
communication. As control unit 8051 microcontroller is used.
One is transmitter and the second one is receiver section. Transmitter section
consists of microcontroller, PC and RF transmitter. Micro controller is interfaced
to PC through serial communication using MAX 232 level converter. Different
directions of the robot are controlled by giving instructions to the robot with the
help of data given to the PC using keypad.
Data will be given to microcontroller and controller will transmit that data to
receiver module by using RF transmitter. Those data from the transmitter
antenna will be transmitted and received by receiver antenna at the receiver
section. Transmitter section consists of microcontroller, robot and RF receiver.
The data received at the RF receiver is given to micro controller and according to
the program written with in the controller, controller controls the robot directions.
Robot can move in left, right directions etc… robot direction can be changed by
changing the command given to the PC.
Robotics is the science and technology of robots, their design, manufacture,
and application. Robotics requires a working knowledge of electronics,
mechanics and software, and is usually accompanied by a large working
knowledge of many subjects. Although the appearance and capabilities of robots
vary vastly, all robots share the features of a mechanical, movable structure
under some form of autonomous control.
The structure of a robot is usually mostly mechanical and can be called a
kinematic chain (its functionality being akin to the skeleton of the human body).
The chain is formed of links (its bones), actuators (its muscles) and joints which
can allow one or more degrees of freedom. Most contemporary robots use open
serial chains in which each link connects the one before to the one after it. These
robots are called serial robots and often resemble the human arm. Some robots,
such as the Stewart platform, use closed parallel kinematic chains.
Block diagram:
Transmitter section:
Transmitter
Receiver section:
Receiver
Power supply
MCU
PC
RF transmitter
Power supply
MCU
Motor 2
Motor1
RF Receiver
Tools & Software:
Soldering station
Kiel IDE
Multisim 10.0
Express PCB
EMBEDDED SYSTEM:
An embedded system is a special-purpose system in which the computer is
completely encapsulated by or dedicated to the device or system it controls. Unlike a
general-purpose computer, such as a personal computer, an embedded system performs
one or a few predefined tasks, usually with very specific requirements. Since the system
is dedicated to specific tasks, design engineers can optimize it, reducing the size and cost
of the product. Embedded systems are often mass-produced, benefiting from economies
of scale.
Personal digital assistants (PDAs) or handheld computers are generally
considered embedded devices because of the nature of their hardware design, even
though they are more expandable in software terms. This line of definition continues to
blur as devices expand. With the introduction of the OQO Model 2 with the Windows XP
operating system and ports such as a USB port — both features usually belong to
"general purpose computers", — the line of nomenclature blurs even more.
Physically, embedded systems ranges from portable devices such as digital
watches and MP3 players, to large stationary installations like traffic lights, factory
controllers, or the systems controlling nuclear power plants.
In terms of complexity embedded systems can range from very simple with a
single microcontroller chip, to very complex with multiple units, peripherals and
networks mounted inside a large chassis or enclosure.
Examples of Embedded Systems:
Avionics, such as inertial guidance systems, flight control hardware/software and
other integrated systems in aircraft and missiles
Cellular telephones and telephone switches
Engine controllers and antilock brake controllers for automobiles
Home automation products, such as thermostats, air conditioners, sprinklers, and
security monitoring systems
Handheld calculators
Handheld computers
Household appliances, including microwave ovens, washing machines, television
sets, DVD players and recorders
Medical equipment
Personal digital assistant
Videogame consoles
Computer peripherals such as routers and printers.
Industrial controllers for remote machine operation.
Block diagram:
Transmitter section:
Transmitter
Receiver section:
Receiver
Power supply
MCU
PC
RF transmitter
Power supply
MCU
Motor 2
Motor1
RF Receiver
Block Diagram Explanation:
This Project mainly consists of Power Supply section, Microcontroller section, Motor Driver
section and a sensor.
Power Supply Section: This section is meant for supplying Power to all the sections
mentioned above. It basically consists of a 12V DC battery followed by a positive voltage
regulator is used to regulate the required dc voltage for the Microcontroller circuit operation.
Microcontroller Section: This section forms the control unit of the whole project. This
section basically consists of a Microcontroller with its associated circuitry like Crystal with
capacitors, Reset circuitry, Pull up resistors (if needed) and so on. The Microcontroller forms
the heart of the project because it controls the devices being interfaced and communicates
with the devices according to the program being written.
In transmitter the function of this block is to send the data from PC to RF transmitter.
At reciver side this block is retrieve the data and do the function according to the command
Motor1, Motor 2: This section basically consists of the required circuitry to drive the
motors. This is nothing but an H-Bridge circuitry to drive the motors which controls
direction of the robot.
PC:This block acts as remote control. It is nothing but a personal computer. The
commands from PC are transferred to MCU.
RF transmitter:
This block contains RF transmitter module along with an encoder circuit. When MCU sends the data to this module from here this data converted into Radio signals.
RF receiver:
This block contains a reciver module with a decoder circuit. The data from RF receiver is retrieved and pass it to MCU.
Schematic Diagram:
Schematic Explanation:
Firstly, the required operating voltage for Microcontroller 89s51 is 5V. Hence the 5V
D.C. power supply is needed by the same. So in this project we are using +12V DC battery
for providing the required voltage for the circuit operation.
The12V DC battery is connected to the LM7805 regulator so that it allows us to have
a Regulated Voltage which is +5V. This regulated voltage is filtered for ripples using an
electrolytic capacitor 100μF. Now the output from this section is fed to 40th pin of 89s51
microcontroller to supply operating voltage. This is required for the operation of the motor
driver circuitry to drive the motors.
The microcontroller 89c51 with Pull up resistors at Port0 and crystal oscillator of
11.0592 MHz crystal in conjunction with couple of capacitors of is placed at 18th & 19th pins
of 89c51 to make it work (execute) properly.
Receiver:
The motor driver is nothing but a H-bridge circuitry for controlling motors. That is
for the controlling of the robot direction. The motor driver circuitry includes the two H-
Bridges. Each H-bridge will take care of controlling motor. Each H-bridge having two
inputs. That is, four inputs of two H-bridges are connected to the port pins P2.0, P2.1,P2.2,
P2.3 of the Microcontroller. According the logic values applied at the input of the H-bridge
circuitry the direction of the robot will be controlled. That will be done through the
software. Sensor is connected to P2.0.
HT12D IC is used to retrieve the data from RF receiver module. The function of
this IC is to match the address of transmitter and collect the serial data and this data is
transferred to microcontroller.
Transmitter:
The IC HT12E IC is used to encode the data from microcontroller and make it
serial along with the destination address. This serial data is then transferred to RF
transmitter.
The command to the destination is taken from the computer. Microcontroller
serial communication is used. MAX232 IC is used in between microcontroller and PC.
This IC is used to convert the logic levels for microcontroller and PC. So MAX232 is
logic level IC with capacitors as supporting circuitry.
MICRO CONTROLLER (AT89S51)
Introduction
A Micro controller consists of a powerful CPU tightly coupled with memory,
various I/O interfaces such as serial port, parallel port timer or counter, interrupt
controller, data acquisition interfaces-Analog to Digital converter, Digital to Analog
converter, integrated on to a single silicon chip.
If a system is developed with a microprocessor, the designer has to go for external
memory such as RAM, ROM, EPROM and peripherals. But controller is provided all
these facilities on a single chip. Development of a Micro controller reduces PCB size and
cost of design.
One of the major differences between a Microprocessor and a Micro controller is
that a controller often deals with bits not bytes as in the real world application.
Intel has introduced a family of Micro controllers called the MCS-51.
Figure: micro controllerFeatures:
• Compatible with MCS-51® Products
• 4K Bytes of In-System Programmable (ISP) Flash Memory
– Endurance: 1000 Write/Erase Cycles
• 4.0V to 5.5V Operating Range
• Fully Static Operation: 0 Hz to 33 MHz
• Three-level Program Memory Lock
• 128 x 8-bit Internal RAM
• 32 Programmable I/O Lines
• Two 16-bit Timer/Counters
• Six Interrupt Sources
• Full Duplex UART Serial Channel
• Low-power Idle and Power-down Modes
Description
The AT89S51 is a low-power, high-performance CMOS 8-bit microcontroller with 4K bytes of
in-system programmable Flash memory. The device is manufactured using Atmel’s high-
density nonvolatile memory technology and is compatible with the industry- 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. By combining a versatile 8-
bit CPU with in-system programmable Flash on a monolithic chip, the Atmel AT89S51 is a
powerful microcontroller which provides a highly-flexible and cost-effective solution to many
embedded control applications.
Block diagram:
Figure: Block diagram
Pin diagram:
Figure: pin diagram of micro controller
Pin Description
VCC - Supply voltage.
GND - Ground.
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 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 bidirectional 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 (IIL) because of the internal pull-ups. Port 1 also receives the
low-order address bytes during Flash programming and verification.
Port 2:
Port 2 is an 8-bit bidirectional 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 (IIL) because of the internal pull-ups. 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 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 (IIL) because of the pull-ups. Port 3 receives some control
signals for Flash programming and verification. Port 3 also serves the functions of various
special features of the AT89S51, as shown in the following table.
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 98 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 AT89S51 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 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.
Oscillator Characteristics:
XTAL1 and XTAL2 are the input and output, respectively, of an inverting
amplifier which can be configured for use as an on-chip oscillator, as shown in Figs
6.2.3. Either a quartz crystal or ceramic resonator may be used. To drive the device from
an external clock source, XTAL2 should be left unconnected while XTAL1 is driven as
shown in Figure 6.2.4.There are no requirements on the duty cycle of the external clock
signal, since the input to the internal clocking circuitry is through a divide-by-two flip-
flop, but minimum and maximum voltage high and low time specifications must be
observed.
Fig 6.2.3 Oscillator Connections Fig 6.2.4 External Clock Drive Configuration
Serial Communication
Computers can transfer data in two ways: parallel and serial. In parallel data transfers,
often 8 or more lines (wire conductors) are used to transfer data to a device that is only a few
feet away. Examples of parallel data transfer are printers and hard disks; each uses cables with
many wire strips. Although in such cases a lot of data can be transferred in a short amount of
time by using many wires in parallel, the distance cannot be great. To transfer to a device
located many meters away, the serial method is used. In serial communication, the data is sent
one bit at a time, in contrast to parallel communication, in which the data is sent a byte or more
at a time. Serial communication of the 8051 is the topic of this chapter. The 8051 has serial
communication capability built into it, there by making possible fast data transfer using only a
few wires.
If data is to be transferred on the telephone line, it must be converted from 0s and 1s
to audio tones, which are sinusoidal-shaped signals. A peripheral device called a modem,
which stands for “modulator/demodulator”, performs this conversion.
Serial data communication uses two methods, asynchronous and synchronous. The
synchronous method transfers a block of data at a time, while the asynchronous method
transfers a single byte at a time.
In data transmission if the data can be transmitted and received, it is a duplex
transmission. This is in contrast to simplex transmissions such as with printers, in which the
computer only sends data. Duplex transmissions can be half or full duplex, depending on
whether or not the data transfer can be simultaneous. If data is transmitted one way at a time, it
is referred to as half duplex. If the data can go both ways at the same time, it is full duplex. Of
course, full duplex requires two wire conductors for the data lines, one for transmission and
one for reception, in order to transfer and receive data simultaneously.
Asynchronous serial communication and data framing
The data coming in at the receiving end of the data line in a serial data transfer is all
0s and 1s; it is difficult to make sense of the data unless the sender and receiver agree on a set
of rules, a protocol, on how the data is packed, how many bits constitute a character, and when
the data begins and ends.
Start and stop bits
Asynchronous serial data communication is widely used for character-oriented
transmissions, while block-oriented data transfers use the synchronous method. In the
asynchronous method, each character is placed between start and stop bits. This is called
framing. In the data framing for asynchronous communications, the data, such as ASCII
characters, are packed between a start bit and a stop bit. The start bit is always one bit, but the
stop bit can be one or two bits. The start bit is always a 0 (low) and the stop bit (s) is 1 (high).
Data transfer rate
The rate of data transfer in serial data communication is stated in bps (bits per
second). Another widely used terminology for bps is baud rate. However, the baud and bps
rates are not necessarily equal. This is due to the fact that baud rate is the modem terminology
and is defined as the number of signal changes per second. In modems a single change of
signal, sometimes transfers several bits of data. As far as the conductor wire is concerned, the
baud rate and bps are the same, and for this reason we use the bps and baud interchangeably.
The data transfer rate of given computer system depends on communication ports
incorporated into that system. For example, the early IBMPC/XT could transfer data at the rate
of 100 to 9600 bps. In recent years, however, Pentium based PCS transfer data at rates as high
as 56K bps. It must be noted that in asynchronous serial data communication, the baud rate is
generally limited to 100,000bps.
Computers can transfer data in two ways: parallel and serial. In parallel data transfers,
often 8 or more lines (wire conductors) are used to transfer data to a device that is only a few
feet away. Examples of parallel transfers are printers and hard disks; each uses cables with
many wire strips. Although in such cases a lot of data can be transferred in a short amount of
time by using many wires in parallel, the distance cannot be great. To transfer to a device
located many meters away, the serial method is used. In serial communication, the data is sent
one bit at a time, in contrast to parallel communication, in which the data is sent a byte or more
at a time. The 8051 has serial communication capability built into it, there by making possible
fast data transfer using only a few wires. The PC uses RS 232 as a Serial Communication
Standard.
RS232 Standards
To allow compatibility among data communication equipment made by various
manufacturers, an interfacing standard called RS232 was set by the Electronics Industries
Association (EIA) in 1960. In 1963 it was modified and called RS232A. RS232B AND
RS232C were issued in 1965 and 1969, respectively. Today, RS232 is the most widely used
serial I/O interfacing standard. This standard is used in PCs and numerous types of equipment.
However, since the standard was set long before the advert of the TTL logic family, its input
and output voltage levels are not TTL compatible. In RS232, a 1 is represented by -3 to -25V,
while a 0 bit is +3 to +25V, making -3 to +3 undefined. For this reason, to connect any RS232
to a microcontroller system we must use voltage converters such as MAX232 to convert the
TTL logic levels to the RS232 voltage levels, and vice versa. MAX232 IC chips are
commonly referred to as line drivers.
RS232 pins
RS232 cable connector commonly referred to as the DB-25 connector. In labeling, DB-25P refers to the plug connector (male) and DB-25S is for the socket connector
(female). Since not all the pins are used in PC cables, IBM introduced the DB-9 Version of the serial I/O standard, which uses 9 pins only, as shown in table.
DB-9 pin connector
1 2 3 4 5
6 7 8 9
(Out of computer and exposed end of cable)
Pin Functions:
Pin Description
1 Data carrier detect (DCD)
2 Received data (RXD)
3 Transmitted data (TXD)
4 Data terminal ready(DTR)
5 Signal ground (GND)
6 Data set ready (DSR)
7 Request to send (RTS)
8 Clear to send (CTS)
9 Ring indicator (RI)
Note: DCD, DSR, RTS and CTS are active low pins.
The method used by RS-232 for communication allows for a simple connection of three lines namely Tx, Rx, and Ground.
TXD: carries data from DTE to the DCE.RXD: carries data from DCE to the DTE
SG: signal ground
8051 connection to RS232:
The RS232 standard is not TTL compatible; therefore, it requires a Line Driver such as
the MAX232 chip to convert RS232 voltage levels to TTL levels, and vice versa.
The 8051 has two pins that are used specifically for transferring and receiving data
serially. These two pins are TXD and RXD and are a part of the port 3 (P3.0 and P3.1). Pin 11
of the 8051 is designated as TXD and pin 10 as RXD. These pins are TTL compatible;
therefore, they require a line driver to make them RS232 compatible. One such line driver is
the MAX232 chip.
MAX232 converts from RS232 voltage levels to TTL voltage levels, and vice versa.
One advantage of the MAX232 chip is that it uses a +5V power source which, is the same as
the source voltage for the 8051. In the other words, with a single +5V power supply we can
power both the 8051 and MAX232, with no need for the power supplies. The MAX232 has
two sets of line drivers for transferring and receiving data. The line drivers used for TXD are
called T1 and T2, while the line drivers for RXD are designated as R1 and R2. In many
applications only one of each is used.
MAX-232
Logic Signal Voltage
Serial RS-232 (V.24) communication works with voltages (between -15V ... -3V and used to
transmit a binary '1' and +3V ... +15V to transmit a binary '0') which are not compatible with
today's computer logic voltages. On the other hand, classic TTL computer logic operates
between 0V ... +5V (roughly 0V ... +0.8V referred to as low for binary '0', +2V ... +5V for high
binary '1' ). Modern low-power logic operates in the range of 0V ... +3.3V or even lower.
So, the maximum RS-232 signal levels are far too high for today's computer logic
electronics, and the negative RS-232 voltage can't be grokked at all by the computer logic.
Therefore, to receive serial data from an RS-232 interface the voltage has to be reduced, and
the 0 and 1 voltage levels inverted. In the other direction (sending data from some logic over
RS-232) the low logic voltage has to be "bumped up", and a negative voltage has to be
generated, too.
RS-232 TTL Logic -------------------------------------------------------- -15V ... -3V <-> +2V ... +5V <-> 1 +3V ... +15V <-> 0V ... +0.8V <-> 0
All this can be done with conventional analog electronics, e.g. a particular power supply and a
couple of transistors or the once popular 1488 (transmitter) and 1489 (receiver) ICs. However,
since more than a decade it has become standard in amateur electronics to do the necessary
signal level conversion with an integrated circuit (IC) from the MAX232 family (typically a
MAX232A or some clone). In fact, it is hard to find some RS-232 circuitry in amateur
electronics without a MAX232A or some clone.
The MAX232 & MAX232A
Fig: A MAX232 integrated circuit
The MAX232 from Maxim was the first IC which in one package contains the
necessary drivers (two) and receivers (also two), to adapt the RS-232 signal voltage levels to
TTL logic. It became popular, because it just needs one voltage (+5V) and generates the
necessary RS-232 voltage levels (approx. -10V and +10V) internally. This greatly simplified
the design of circuitry. Circuitry designers no longer need to design and build a power supply
with three voltages (e.g. -12V, +5V, and +12V), but could just provide one +5V power supply,
e.g. with the help of a simple 78x05 voltage converter.
The MAX232 has a successor, the MAX232A. The ICs are almost identical, however,
the MAX232A is much more often used than the original MAX232, and the MAX232A only
needs external capacitors 1/10th the capacity of what the original MAX232 needs.
It should be noted that the MAX232 (A) is just a driver/receiver. It does not generate
the necessary RS-232 sequence of marks and spaces with the right timing, it does not decode
the RS-232 signal, it does not provide a serial/parallel conversion. All it does is to convert
signal voltage levels. Generating serial data with the right timing and decoding serial data has
to be done by additional circuitry, e.g. by a 16550 UART or one of these small micro
controllers (e.g. Atmel AVR, Microchip PIC) getting more and more popular.
The MAX232 and MAX232A were once rather expensive ICs, but today they are cheap.
It has also helped that many companies now produce clones (ie. Sipex). These clones
sometimes need different external circuitry, e.g. the capacities of the external capacitors vary.
It is recommended to check the data sheet of the particular manufacturer of an IC instead of
relying on Maxim's original data sheet.
The original manufacturer (and now some clone manufacturers, too) offers a large series of
similar ICs, with different numbers of receivers and drivers, voltages, built-in or external
capacitors, etc. E.g. The MAX232 and MAX232A need external capacitors for the internal
voltage pump, while the MAX233 has these capacitors built-in. The MAX233 is also between
three and ten times more expensive in electronic shops than the MAX232A because of its
internal capacitors. It is also more difficult to get the MAX233 than the garden variety
MAX232A.
A similar IC, the MAX3232 is nowadays available for low-power 3V logic.
MAX232(A) DIP Package
No. Name Purpose Signal VoltageCapacitor
MAX232
Capacitor
MAX232A
1 C1++ connector for
capacitor C1
capacitor should stand at
least 16V1µF 100nF
2 V+output of voltage
pump
+10V, capacitor should
stand at least 16V1µF to VCC 100nF to VCC
3 C1- - connector for capacitor should stand at 1µF 100nF
capacitor C1 least 16V
4 C2++ connector for
capacitor C2
capacitor should stand at
least 16V1µF 100nF
5 C2-- connector for
capacitor C2
capacitor should stand at
least 16V1µF 100nF
6 V-output of voltage
pump / inverter
-10V, capacitor should
stand at least 16V1µF to GND 100nF to GND
7 T2out Driver 2 output RS-232
8 R2in Receiver 2 input RS-232
9 R2out Receiver 2 output TTL
10 T2in Driver 2 input TTL
11 T1in Driver 1 input TTL
12 R1out Receiver 1 output TTL
13 R1in Receiver 1 input RS-232
14 T1out Driver 1 output RS-232
15 GND Ground 0V 1µF to VCC 100nF to VCC
16 VCC Power supply +5V see above see above
V+(2) is also connected to VCC via a capacitor (C3). V-(6) is connected to GND via a
capacitor (C4). And GND(16) and VCC(15) are also connected by a capacitor (C5), as close as
possible to the pins.
A Typical Application
The MAX232 (A) has two receivers (converts from RS-232 to TTL voltage levels) and two
drivers (converts from TTL logic to RS-232 voltage levels). This means only two of the RS-
232 signals can be converted in each direction. The old MC1488/1498 combo provided four
drivers and receivers.
Typically a pair of a driver/receiver of the MAX232 is used for
TX and RX
and the second one for
CTS and RTS.
There are not enough drivers/receivers in the MAX232 to also connect the DTR, DSR, and
DCD signals. Usually these signals can be omitted when e.g. communicating with a PC's serial
interface. If the DTE really requires these signals either a second MAX232 is needed, or some
other IC from the MAX232 family can be used (if it can be found in consumer electronic shops
at all). An alternative for DTR/DSR is also given below.
The circuitry is completed by connecting five capacitors to the IC as it follows. The MAX232
needs 1.0µF capacitors, the MAX232A needs 0.1µF capacitors. MAX232 clones show similar
differences. It is recommended to consult the corresponding data sheet. At least 16V capacitor
types should be used. If electrolytic or tantalic capacitors are used, the polarity has to be
observed. The first pin as listed in the following table is always where the plus pole of the
capacitor should be connected to.
Capacitor + Pin - Pin Remark
C1 1 3
C2 4 5
C3 2 16
C4 GND 6This looks non-intuitive, but because pin 6 is
on -10V, GND gets the + connector, and not the -
C5 16 GND
The 5V power supply is connected to
+5V: Pin 16
GND: Pin 15
The output of the VT pin is high only when the transmission is valid. Otherwise it is low
always.
Output type: There are 2 types of output to select from:
Momentary type: The data outputs follow the encoder during a valid
transmission and the reset.
Latch type: The data outputs follow the encoder during a valid
DC Motor
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 commonly used in variable speed and torque.
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, drive components, encoders and
resolves, Integrated motion control, limit switches, linear actuators, linear and rotary
motion components, linear position sensing, motors (both AC and DC motors),
orientation position sensing, pneumatics and pneumatic components, positioning stages,
slides and guides, power transmission (mechanical), seals, slip rings, solenoids, springs.
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 harness the magnetic interaction between a current-carrying conductor and an
external magnetic field to generate rotational motion.
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).
Fig 25: Block Diagram of the DC 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.
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).
]Fig 26: Block Diagram of the DC motor having two poles only
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):
Fig 27: Block Diagram of the DC motor having Three poles
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:
Fig 28: Internal Block Diagram of the Three pole DC motor
H-Bridge:
Fig: shows the H-Bridge operation. The H-Bridge consists of a four PNP transistors
such as Q1, Q2, Q3 and Q4. These transistors are arranged in a way that a DC motor M can
rotate. A and B are represented as two inputs for operating a motor through the transistors.
For the circuit operation, we are providing +12V DC as a VCC. The operation will be
explained as follows:
The inputs A and B can be applied as a either logic ‘0’ or logic ‘1’ ie., may be either
5V DC voltage or Ground. If the input A =logic ‘0’ and B=logic’1’ then transistors Q1 and
Q4 will be ‘ON’ state and Q2 and Q3 will be ‘OFF’ state. The current flows from Q1 to Q4
so that the motor M can rotate in clockwise direction.
If the input A =logic ‘1’ and B=logic’0’ then transistors Q1 and Q4 will be ‘OFF’
state and Q2 and Q3 will be ‘ON’ state. The current flows from Q1 to Q4 so that the motor
M can rotate in Anti-clockwise direction.
If the input A =logic ‘1’ and B=logic’1’ then transistors Q1 and Q4 will be ‘OFF’
state and Q2 and Q3 will be ‘OFF’ state. No current flows from in the circuit. The circuit
will be in hold condition. The motor will not rotate any direction. So, there is no wastage of
power will occur. Otherwise, if both inputs are low that is all transistors are come under
working and more current will flows in the circuit. But the motor will be at hold condition.
More power is wasted
Power supply
The power supplies are designed to convert high voltage AC mains electricity to a
suitable low voltage supply for electronics circuits and other devices. A power supply can by
broken down into a series of blocks, each of which performs a particular function. A d.c
power supply which maintains the output voltage constant irrespective of a.c mains
fluctuations or load variations is known as “Regulated D.C Power Supply”
For example a 5V regulated power supply system as shown below:
Transformer:
A transformer is an electrical device which is used to convert electrical power from
one
Electrical circuit to another without change in frequency.
Transformers convert AC electricity from one voltage to another with little loss of
power. Transformers work only with AC and this is one of the reasons why mains electricity
is AC. Step-up transformers increase in output voltage, step-down transformers decrease in
output voltage. Most power supplies use a step-down transformer to reduce the dangerously
high mains voltage to a safer low voltage. The input coil is called the primary and the
output coil is called the secondary. There is no electrical connection between the two coils;
instead they are linked by an alternating magnetic field created in the soft-iron core of the
transformer. The two lines in the middle of the circuit symbol represent the core.
Transformers waste very little power so the power out is (almost) equal to the power in. Note
that as voltage is stepped down current is stepped up. The ratio of the number of turns on
each coil, called the turn’s ratio, determines the ratio of the voltages. A step-down
transformer has a large number of turns on its primary (input) coil which is connected to the
high voltage mains supply, and a small number of turns on its secondary (output) coil to give
a low output voltage.
An Electrical Transformer
Turns ratio = Vp/ VS = Np/NS
Power Out= Power In
VS X IS=VP X IP
Vp = primary (input) voltage
Np = number of turns on primary coil
Ip = primary (input) current
RECTIFIER:
A circuit which is used to convert a.c to dc is known as RECTIFIER. The process of
conversion a.c to d.c is called “rectification”
TYPES OF RECTIFIERS:
Half wave Rectifier
Full wave rectifier
1. Centre tap full wave rectifier.
2. Bridge type full bridge rectifier.
Comparison of rectifier circuits:
Parameter
Type of Rectifier
Half wave Full wave Bridge
Number of diodes
1
2
4
PIV of diodes
Vm
2Vm
Vm
D.C output voltage
Vm/
2Vm/
2Vm/
Vdc,at
no-load
0.318Vm
0.636Vm 0.636Vm
Ripple factor
1.21
0.482
0.482
Ripple
frequency
f
2f
2f
Rectification
efficiency
0.406
0.812
0.812
Transformer
Utilization
Factor(TUF)
0.287 0.693 0.812
RMS voltage Vrms Vm/2 Vm/√2 Vm/√2
Full-wave Rectifier:
From the above comparison we came to know that full wave bridge rectifier as more
advantages than the other two rectifiers. So, in our project we are using full wave bridge
rectifier circuit.
Bridge Rectifier: A bridge rectifier makes use of four diodes in a
bridge arrangement to achieve full-wave rectification. This is a
widely used configuration, both with individual diodes wired as
shown and with single component bridges where the diode
bridge is wired internally.
A bridge rectifier makes use of four diodes in a bridge arrangement as shown in fig(a)
to achieve full-wave rectification. This is a widely used configuration, both with individual
diodes wired as shown and with single component bridges where the diode bridge is wired
internally.
Fig(A)
Operation:
During positive half cycle of secondary, the diodes D2 and D3 are in forward biased while
D1 and D4 are in reverse biased as shown in the fig(b). The current flow direction is shown
in the fig (b) with dotted arrows.
Fig(B)
During negative half cycle of secondary voltage, the diodes D1 and D4 are in forward biased
while D2 and D3 are in reverse biased as shown in the fig(c). The current flow direction is
shown in the fig (c) with dotted arrows.
Fig(C)
Filter:
A Filter is a device which removes the a.c component of rectifier output
but allows the d.c component to reach the load
Capacitor Filter:
We have seen that the ripple content in the rectified output of half wave rectifier is 121%
or that of full-wave or bridge rectifier or bridge rectifier is 48% such high percentages of
ripples is not acceptable for most of the applications. Ripples can be removed by one of the
following methods of filtering.
(a) A capacitor, in parallel to the load, provides an easier by –pass for the ripples voltage
though it due to low impedance. At ripple frequency and leave the d.c.to appears the load.
(b) An inductor, in series with the load, prevents the passage of the ripple current (due to
high impedance at ripple frequency) while allowing the d.c (due to low resistance to d.c)
(c) Various combinations of capacitor and inductor, such as L-section filter section filter,
multiple section filter etc. which make use of both the properties mentioned in (a) and (b)
above. Two cases of capacitor filter, one applied on half wave rectifier and another with full
wave rectifier.
Filtering is performed by a large value electrolytic capacitor connected across the DC
supply to act as a reservoir, supplying current to the output when the varying DC voltage
from the rectifier is falling. The capacitor charges quickly near the peak of the varying DC,
and then discharges as it supplies current to the output. Filtering significantly increases the
average DC voltage to almost the peak value (1.4 × RMS value).
To calculate the value of capacitor(C),
C = ¼*√3*f*r*Rl
Where,
f = supply frequency,
r = ripple factor,
Rl = load resistance
Note: In our circuit we are using 1000µF. Hence large value of capacitor is placed to
reduce ripples and to improve the DC component.
Regulator:
Voltage regulator ICs is available with fixed (typically 5, 12 and 15V) or variable
output voltages. The maximum current they can pass also rates them. Negative voltage
regulators are available, mainly for use in dual supplies. Most regulators include some
automatic protection from excessive current ('overload protection') and overheating ('thermal
protection'). Many of the fixed voltage regulator ICs have 3 leads and look like power
transistors, such as the 7805 +5V 1A regulator shown on the right. 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.
Fig 6.1.6 A Three Terminal Voltage Regulator
78XX:
The Bay Linear LM78XX is integrated linear positive regulator with three terminals.
The LM78XX offer several fixed output voltages making them useful in wide range of
applications. When used as a zener diode/resistor combination replacement, the LM78XX
usually results in an effective output impedance improvement of two orders of magnitude,
lower quiescent current. The LM78XX is available in the TO-252, TO-220 & TO-
263packages,
Features:
• Output Current of 1.5A
• Output Voltage Tolerance of 5%
• Internal thermal overload protection
• Internal Short-Circuit Limited
• No External Component
• Output Voltage 5.0V, 6V, 8V, 9V, 10V,12V, 15V, 18V, 24V
• Offer in plastic TO-252, TO-220 & TO-263
• Direct Replacement for LM78XX
RF Encoder
RF transmitter section:
RF transmitters are electronic devices that create continuously varying electric
current, encode sine waves, and broadcast radio waves. RF transmitters use oscillators to
create sine waves, the simplest and smoothest form of continuously varying waves, which
contain information such as audio and video. Modulators encode these sign wives and
antennas broadcast them as radio signals. There are several ways to encode or modulate
this information, including amplitude modulation (AM) and frequency modulation (FM).
Radio techniques limit localized interference and noise. With direct sequence spread
spectrum, signals are spread over a large band by multiplexing the signal with a code or
signature that modulates each bit. With frequency hopping spread spectrum, signals move
through a narrow set of channels in a sequential, cyclical, and predetermined pattern.
Selecting RF transmitters requires an understanding of modulation methods such
as AM and FM. On-off key (OOK), the simplest form of modulation, consists of turning
the signal on or off. Amplitude modulation (AM) causes the base band signal to vary the
amplitude or height of the carrier wave to create the desired information content.
Frequency modulation (FM) causes the instantaneous frequency of a sine wave carrier to
depart from the center frequency by an amount proportional to the instantaneous value of
the modulating signal. Amplitude shift key (ASK) transmits data by varying the
amplitude of the transmitted signal. Frequency shift key (FSK) is a digital modulation
scheme using two or more output frequencies. Phase shift key (PSK) is a digital
modulation scheme in which the phase of the transmitted signal is varied in accordance
with the base band data signal.
Additional considerations when selecting RF transmitters include supply voltage,
supply current, RF connectors, special features, and packaging. Some RF transmitters
include visual or audible alarms or LED indicators that signal operating modes such as
power on or reception. Other devices attach to coaxial cables or include a connector or
port to which an antenna can be attached. Typically, RF transmitters that are rated for
outdoor use feature a heavy-duty waterproof design. Devices with internal calibration and
a frequency range switch are also available.
RF transmitters are used in a variety of applications and industries. Often, devices
that are used with integrated circuits (ICs) incorporate surface mount technology (SMT),
through hole technology (THT), and flat pack. In the telecommunications industry, RF
transmitters are designed to fit in a metal rack that can be installed in a cabinet. RF
transmitters are also used in radios and in electronic article surveillance systems (EAS)
found in retail stores. Inventory management systems use RF transmitters as an
alternative to barcodes.
RF transmitter ST-TX01-ASK:
General Description:
The ST-TX01-ASK is an ASK Hybrid transmitter module. The ST-TX01-ASK is designed by the
Saw Resonator, with an effective low cost, small size, and simple-to-use for designing.
Frequency Range: 315 / 433.92 MHZ.
Supply Voltage: 3~12V.
Output Power: 4~16dBm
Circuit Shape: Saw
Applications
Wireless security systems
Car Alarm systems
Remote controls.
Sensor reporting
Automation systems
Fig 17: Pin Description of the Transmitter module
Fig 18: Interfacing TX module to a Micro controller
RF ENCODER (HT12E):
Features
_ Operating voltage
_ 2.4V~5V for the HT12A
_ 2.4V~12V for the HT12E
_ Low power and high noise immunity CMOS technology
_ Low standby current: 0.1_A (typ.) at VDD=5V
_ HT12A with a 38kHz carrier for infrared transmission medium
_ Minimum transmission word
_ Four words for the HT12E
_ One word for the HT12A
_ Built-in oscillator needs only 5% resistor
_ Data code has positive polarity
_ Minimal external components
_ HT12A/E: 18-pin DIP/20-pin SOP package
Applications
_ Burglar alarm system
_ Smoke and fire alarm system
_ Garage door controllers
_ Car door controllers
_ Car alarm system
_ Security system
_ Cordless telephones
_ Other remote control systems
General Description
The 212 encoders are a series of CMOS LSIs for remote control system applications.
They are capable of encoding information which consists of N address bits and 12_N data
bits. Each address/data input can be set to one of the two logic states. The programmed
addresses/data are transmitted together with the header bits via an RF or an infrared
transmission medium upon receipt of a trigger signal. The capability to select a TE
trigger on the HT12E or a DATA trigger on the HT12A further enhances the application
flexibility of the 212 series of encoders. The HT12A additionally provides a 38kHz
carrier for infrared systems.
Note: Address/Data represents pins that can be address or data according to the decoder
requirement.
Fig 19: Block diagram of HT 12E Encoder
Pin Description:
Fig 20: Pin description of HT12E
Note: D8~D11 are all data input and transmission enable pins of the HT12A.
TE is a transmission enable pin of the HT12E.
Absolute Maximum Ratings
Supply Voltage (HT12A) .............._0.3V to 5.5V
Storage Temperature................._50_C to 125_C
Operating Temperature..............._20_C to 75_C
Supply Voltage (HT12E) ..............._0.3V to 13V
Input Voltage....................VSS_0.3 to VDD+0.3V
Fig 21: Timing diagram of the HT12E and HT12A
Application Circuits:
Fig 22: Application circuit of HT12E
Flow Chart:
Fig 23: Flow chat for data transmission in HT12E
RF receiver section:
RF receivers are electronic devices that separate radio signals from one another
and convert specific signals into audio, video, or data formats. RF receivers use an
antenna to receive transmitted radio signals and a tuner to separate a specific signal from
all of the other signals that the antenna receives. Detectors or demodulators then extract
information that was encoded before transmission. There are several ways to decode or
modulate this information, including amplitude modulation (AM) and frequency
modulation (FM). Radio techniques limit localized interference and noise. With direct
sequence spread spectrum, signals are spread over a large band by multiplexing the signal
with a code or signature that modulates each bit. With frequency hopping spread
spectrum, signals move through a narrow set of channels in a sequential, cyclical, and
predetermined pattern.
Selecting RF receivers requires an understanding of modulation methods
such as AM and FM. On-off key (OOK), the simplest form of modulation, consists of
turning the signal on or off. Amplitude modulation (AM) causes the base band signal to
vary the amplitude or height of the carrier wave to create the desired information content.
Frequency modulation (FM) causes the instantaneous frequency of a sine wave carrier to
depart from the center frequency by an amount proportional to the instantaneous value of
the modulating signal. Amplitude shift key (ASK) transmits data by varying the
amplitude of the transmitted signal. Frequency shift key (FSK) is a digital modulation
scheme using two or more output frequencies. Phase shift key (PSK) is a digital
modulation scheme in which the phase of the transmitted signal is varied in accordance
with the base band data signal.
RF receivers vary in terms of performance specifications such as
sensitivity, digital sampling rate, measurement resolution, operating frequency, and
communication interface. Sensitivity is the minimum input signal required to produce a
specified output signal having a specified signal-to-noise (S/N) ratio. Digital sampling
rate is the rate at which samples can be drawn from a digital signal in kilo samples per
second. Measurement resolution is the minimum digital resolution, while operating
frequency is the range of received signals. Communication interface is the method used
to output data to computers. Parallel interfaces include general-purpose interface bus
(GPIB), which is also known as IEEE 488 and HPIB Protocol. Serial interfaces include
universal serial bus (USB), RS232, and RS485.
Additional considerations when selecting RF receivers include supply
voltage, supply current, receiver inputs, RF connectors, special features, and packaging.
Some RF receivers include visual or audible alarms or LED indicators that signal
operating modes such as power on or reception. Other devices attach to coaxial cables or
include a connector or port to which an antenna can be attached. Typically, RF receivers
that are rated for outdoor use feature a heavy-duty waterproof design. Devices with
internal calibration and a frequency range switch are also available.
RF receiver ST-RX04-ASK:
Description:
The RX04 is a low power ASK receiver IC which is fully compatible with
the MitelKESRX01 IC and is suitable for use in a variety of low power radio applications
including remote keyless entry. The RX04 is based on a single-
Conversion, super-heterodyne receiver architecture and incorporates an entire phase-
locked loop (PLL) for precise local oscillator generation.
Applications:
Car security system
Wireless security systems
Sensor reporting
automation system
Remote Keyless entry
Features
Low power consumption.
Easy for application.
On-Chip VCO with integrated PLL using crystal oscillator reference.
Integrated IF and data filters.
Operation temperature range : 10﹣ ℃~+60℃
Operation voltage: 5 Volts.
Available frequency at : 315/434 MHz
Functional description:
Fig: RF receiver module.
Fig 24: RF receiver module.
RF DECODER (HT 12D):
Features
_ Operating voltage: 2.4V~12V
_ Low power and high noise immunity CMOS technology
_ Low standby current
_ Capable of decoding 12 bits of information
_ Binary address setting
_ Received codes are checked 3 times
_ Address/Data number combination
_ HT12D: 8 address bits and 4 data bits
_ HT12F: 12 address bits only
_ Built-in oscillator needs only 5% resistor
_ Valid transmission indicator
_ Easy interface with an RF or an infrared transmission medium
_ Minimal external components
_ Pair with Holteks 212 series of encoders
_ 18-pin DIP, 20-pin SOP package
Applications
_ Burglar alarm system
_ Smoke and fire alarm system
_ Garage door controllers
_ Car door controllers
_ Car alarm system
_ Security system
_ Cordless telephones
_ Other remote control systems
General Description
The 212 decoders are a series of CMOS LSIs for remote control system
applications. They are paired with Holteks 212 series of encoders (refer to the
encoder/decoder cross reference table). For proper operation, a pair of encoder/decoder
with the same number of addresses and data format should be chosen. The decoders
receive serial addresses and data from a programmed 212 series of encoders that are
transmitted by a carrier using an RF or an IR transmission medium. They compare the
serial input data three times continuously with their local addresses. If no error or
unmatched codes are found, the input data codes are decoded and then transferred to the
output pins. The VT pin also goes high to indicate a valid transmission. The 212 series of
decoders are capable of decoding informations that consist of N bits of address and 12_N
bits of data. Of this series, the HT12D is arranged to provide 8 address bits and 4 data
bits, and HT12F is used to decode 12 bits of address information.
Notes: Data type: L stands for latch type data output.
VT can be used as a momentary data output.
Fig 25: Block Diagram of HT 12D Decoder
Note: The address/data pins are available in various combinations (see the address/data
table).
Pin Assignment:
Fig 26: Pin diagram of HT12D
Absolute Maximum Ratings
Supply Voltage .........................................._0.3V to 13V
Storage Temperature ............................_50_C to 125_C
Input Voltage ................................VSS_0.3 to VDD+0.3V
Operating Temperature..........................._20_C to 75_C
Functional Description
Operation
The 212 series of decoders provides various combinations of addresses and data pins in
different packages so as to pair with the 212 series of encoders. The decoders receive data
that are transmitted by an encoder and interpret the first N bits of code period as
addresses and the last 12_N bits as data, where N is the address code number. A signal on
the DIN pin activates the oscillator, which in turn decodes the incoming address and data.
The decoders will then check the received address three times continuously. If the
received address codes all match the contents of the decoders local address, the 12_N bits
of data are decoded to activate the output pins and the VT pin is set high to indicate a
valid transmission. This will last unless the address code is incorrect or no signal is
received. The output of the VT pin is high only when the transmission is valid. Otherwise
it is always low.
Output type:
Of the 212 series of decoders, the HT12F has no data output pin but its VT pin can be
used as a momentary data output. The HT12D, on the other hand, provides 4 latch type
data pins whose data remain unchanged until new data are received.
Fig 27: Timing Diagram of Decoder HT12D
Fig 28: Application circuit of HT12D
Flowchart
The oscillator is disabled in the standby state and activated when a logic _high_ signal
applies to the DIN pin. That is to say, the DIN should be kept low if there is no signal
input.
Fig 29: Flow chart of HT12D for data transmission
Circuit description:
Main aim of the project is to control the speed of DC motor using RF, switches are
provided at the transmitter section, speed will be increased for every switch, i.e., speed
values are predefined for these switches. When the first switch is pressed, value of the
switch is given to RF encoder, encoded data will be sent through the antenna connected
to it.
Transmitted switch value is received by antenna at the receiver, it is given to the decoder
connected next to antenna, decoded data will be given to microcontroller through 4 data
lines of the decoder, and this data is processed by the microcontroller and gives the signal
to DC motor connected to the microcontroller. As first switch is pressed, motor will start
slowly, as the next switch is pressed, speed is increased in steps.
For giving supply to microcontroller, motor and other devices, we provide a power
supply circuit.
SOFTWARE Components
ABOUT SOFTWARE
Software used is:
*Keil software for C programming
*Express PCB for lay out design
*Express SCH for schematic design
KEIL µVision3
What's New in µVision3?
µVision3 adds many new features to the Editor like Text Templates, Quick Function
Navigation, and Syntax Coloring with brace high lighting Configuration Wizard for dialog
based startup and debugger setup. µVision3 is fully compatible to µVision2 and can be used
in parallel with µVision2.
What is µVision3?
µVision3 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.
Express PCB
Express PCB is a Circuit Design Software and PCB manufacturing service.
One can learn almost everything you need to know about Express PCB from the help topics
included with the programs given.
Details:
Express PCB, Version 5.6.0
Express SCH
The Express SCH schematic design program is very easy to use. This software
enables the user to draw the Schematics with drag and drop options.
A Quick Start Guide is provided by which the user can learn how to use it.
Details:
Express SCH, Version 5.6.0
EMBEDDED C:
The programming Language used here in this project is an Embedded C Language.
This Embedded C Language is different from the generic C language in few things like
a) Data types
b) Access over the architecture addresses.
The Embedded C Programming Language forms the user friendly language with access over
Port addresses, SFR Register addresses etc.
Embedded C Data types:
Data Types Size in Bits Data Range/Usage
unsigned char 8-bit 0-255
signed char 8-bit -128 to +127
unsigned int 16-bit 0 to 65535
signed int 16-bit -32,768 to +32,767
sbit 1-bit SFR bit addressable only
bit 1-bit RAM bit addressable only
sfr 8-bit RAM addresses 80-FFH
only
Unsigned char:
The unsigned char is an 8-bit data type that takes a value in the range of 0-255(00-
FFH). It is used in many situations, such as setting a counter value, where there is no need
for signed data we should use the unsigned char instead of the signed char. Remember that C
compilers use the signed char as the default if we do not put the key word
Signed char:
The signed char is an 8-bit data type that uses the most significant bit (D7 of D7-
D0) to represent the – or + values. As a result, we have only 7 bits for the magnitude of the
signed number, giving us values from -128 to +127. In situations where + and – are needed
to represent a given quantity such as temperature, the use of the signed char data type is a
must.
Unsigned int:
The unsigned int is a 16-bit data type that takes a value in the range of 0 to 65535
(0000-FFFFH).It is also used to set counter values of more than 256. We must use the int
data type unless we have to. Since registers and memory are in 8-bit chunks, the misuse of
int variables will result in a larger hex file. To overcome this we can use the unsigned char in
place of unsigned int.
Signed int:
Signed int is a 16-bit data type that uses the most significant bit (D15 of D15-D0)
to represent the – or + value. As a result we have only 15 bits for the magnitude of the
number or values from -32,768 to +32,767.
Sbit (single bit):
The sbit data type is widely used and designed specifically to access single bit
addressable registers. It allows access to the single bits of the SFR registers.
Accessing SFR addresses 80-FFH
Another way to access the SFR RAM space 80-FFH is to use the sfr data type. This
is shown in the below example .Both the bit and byte addresses for the P0-P3 ports are given
in the table. Notice in the given example that there is no #include<reg51.h> statement which
allows us to access any byte of the SFR RAM space 80-FFH.
Single Bit Addresses of Ports
P0 Addr P1 Addr P2 Addr P3 Addr Ports Bit
P0.0 80H P1.0 90H P2.0 A0H P3.0 B0H D0
P0.1 81H P1.1 91H P2.1 A1H P3.1 B1H D1
P0.2 82H P1.2 92H P2.2 A2H P3.2 B2H D2
P0.3 83H P1.3 93H P2.3 A3H P3.3 B3H D3
P0.4 84H P1.4 94H P2.4 A4H P3.4 B4H D4
P0.5 85H P1.5 95H P2.5 A5H P3.5 B5H D5
P0.6 86H P1.6 96H P2.6 A6H P3.6 B6H D6
P0.7 87H P1.7 97H P2.7 A7H P3.7 B7H D7
DATA CONVERTION PROGRAMS IN EMBEDDED C
Many micro-controllers have a real time clock (RTC) where the time and date are
kept even when the power is off. These time and date are often in packed BCD by RTC. To
display them they must be converted to ASCII. So, in this topic we are showing application
of logic and instructions in the conversion of BCD and ASCII.
ASCII numbers
On ASCII key boards, when the key “0” is activated, “0110000” (30h) is
provided to the system. Similarly 31h (0110001) is provided for the key “1”, and so on as
shown in the table
Packed BCD to ASCII conversion
The RTC provides the time of day (hour, minutes, seconds) and the date (year,
month, day) continuously, regardless of whether the power is ON or OFF. In the conversion
procedure the packed BCD is first converted to unpacked BCD. Then it is tagged with
0110000 (30h).
ASCII code for Digits 0-9
Key ASCII (hex) Binary BCD (unpacked)
0 30 011 0000 0000 0000
1 31 011 0001 0000 0001
2 32 011 0010 0000 0010
3 33 011 0011 0000 0011
4 34 011 0100 0000 0100
5 35 011 0101 0000 0101
6 36 011 0110 0000 0110
7 37 011 0111 0000 0111
8 38 011 1000 0000 1000
9 39 011 1001 0000 1001
ASCII to packed BCD conversion
To convert ASCII to packed BCD it is first converted to unpacked and then
combined to make packed BCD. For example 4 and 7 on the keyboard give 34h and 37h
respectively the goal is to produce 47h or “0100 0111” which is packed BCD.
Key ASCII unpacked BCD packed BCD
4 34 00000100
7 37 00000111
01000111 or 47h
Checksum byte in ROM
To ensure the integrity of ROM contents, every system must perform the checksum
calculation. The process of checksum will detect any corruption of the contents of ROM.
One of the cause of the ROM corruption is current surge either when the system is turned on
or during operation. To ensure data integrity in ROM the checksum process uses, what is a
checksum byte. The is an extra byte that is tagged to the end of the series of the of data.
To calculate the checksum byte of a series of bytes of data, the following steps can be used
1) Add the bytes together and drop the carries.
2) Take the 2’s complement of the total sum. This is the checksum byte , which
becomes the last byte of the series
Binary (hex) to decimal and ASCII conversion in embedded C
In C-language we use a function call “printf” which is standard IO library function
doing the conversions of data from binary to decimal, or vice versa. But here we are using
our own functions for conversions because it occupies much of memory.
One of the most commonly used is binary to decimal conversion. In devices such
as ADC chips the data is provided to the controller in binary. In order to display binary data
we need to convert it to decimal and then to ASCII. Since the hexadecimal format is a
convenient way of representing binary data we refer to binary data as hex. The binary data
00-FFH converted to decimal will give us 000 to 255.
One way to do this is to divide it by 10 and keep the remainder, for example
11111101 or FDH is 253 in decimal. The following is one version of the algorithm for
conversion of hex (binary) to decimal.
Quotient Remainder
FD/0A 19 3(low digit) LSD
19/0A 2 5(middle digit)
2(high digit) (MSD)
Code:
Transmitter:
#include<reg51.h>
sbit l1 = P2^0;
sbit l2 = P2^1;
sbit r1 = P2^2;
sbit r2 = P2^3;
unsigned char i,j;
bit flag =0,f;
void srrx() interrupt
{
if(RI==1)
{
i=SBUF;
RI=0;
}
}
void serinit()
{
TMOD = 0x20;
TH1 = 0xFD;
TL1 = 0xFD;
SCON = 0x50;
}
void srstring(unsigned char value)
{
SBUF=value;
while(TI==0);
}
void delay(unsigned int value)
{
unsigned int i,j;
for(i=0;i<=value;i++)
for(j=0;j<=1275;j++);
}
void main()
{
delay(50);
serinit();
ES=1;
while(1)
{
if(i==8){P2=0x01;}
if(i==2){ P2=0x02;}
if(i==6){ P2=0x03;}
if(i==4){ P2=0x04;}
}
}
Reciver:
#include <reg51.H>
unsigned char value,value1,x;
sbit gas = P2^0;
sbit tsop = P2^1;
sbit motor1 = P2^2;
sbit motor2 = P2^3;
sbit motor1 = P2^4;
sbit motor2 = P2^5;
sbit = P2^4;
sbit buzzer = P2^5;
#include<reg51.h>
sbit l1 = P2^0;
sbit l2 = P2^1;
sbit r1 = P2^2;
sbit r2 = P2^3;
unsigned char i,j;
bit flag =0,f;
void srrx() interrupt
{
if(RI==1)
{
i=SBUF;
RI=0;
}
}
void serinit()
{
TMOD = 0x20;
TH1 = 0xFD;
TL1 = 0xFD;
SCON = 0x50;
}
void srstring(unsigned char value)
{
SBUF=value;
while(TI==0);
}
void delay(unsigned int value)
{
unsigned int i,j;
for(i=0;i<=value;i++)
for(j=0;j<=1275;j++);
}
void main()
{
unsigned char flag=0;
while (1)
{
if(P2==0x01){motor=1;motor2=1;);
if(P2==0x02){motor=0;motor2=0;);
if(P2==0x03){motor=1;motor2=0;);
if(P2==0x04){motor=0;motor2=1;);
}
CONCLUSION
The project “PC based robot controlling using wireless
communication with ASK modulation” has been successfully designed and tested.
Integrating features of all the hardware components used have developed it. Presence of every
module has been reasoned out and placed carefully thus contributing to the best working of the
unit. Secondly, using highly advanced IC’s and with the help of growing technology the
project has been successfully implemented.
BIBLIOGRAPHY
NAME OF THE SITES:
1. WWW.MITEL.DATABOOK.COM
2. WWW.ATMEL.DATABOOK.COM
3. WWW.FRANKLIN.COM
4. WWW.KEIL.COM
REFERENCES
1. 8051-MICROCONTROLLER AND EMBEDDED SYSTEM.
Mohd. Mazidi.