Notes BE&C 21ELN14-24 Module-3
Notes BE&C 21ELN14-24 Module-3
Embedded System:
An embedded system is an electronic/electro-mechanical system designed to perform a
specific function and a combination of both hardware and firmware (software).
Every embedded system is unique and the hardware as well as the firmware is highly
specialized to the application domain.
Embedded systems are becoming an inevitable part of any product or equipment in all
fields including household appliances, telecommunications, medical equipment,
industrial control, consumer products, etc.
Embedded system is a combination of 3 things
1. Hardware
2. Software
3. Mechanical component & it is supposed to do only one specific task only
Examples:
Example1: Washing Machine
A washing machine from an embedded systems point of view has:
a.Hardware: Buttons, displays & buzzer, electronic circuitry.
b.Software: It has a chip on the circuit that holds the software which drives controls &
monitors various operations possible.
c.Mechanical components: the internals of a washing machine which actually wash the
clothes control the input and output of water.
Key Factor Performance is the key deciding factor Application specific requirements (like
in the selection of the system. Faster is performance, power requirements,
better. memory usage etc) are the key deciding
factor.
On generation:
1. First generation (1G):
Built around 8bit microprocessor & microcontroller.
Simple in hardware circuit & firmware developed.
Examples: Digital telephone keypads.
2. Second generation (2G):
Built around 16-bit µp & 8-bit µc.
They are more complex & powerful than 1G µp & µc.
Examples: SCADA systems
3. Third generation (3G):
Built around 32-bit µp& 16-bit µc.
Concepts like Digital Signal Processors (DSPs), Application Specific Integrated
Circuits (ASICs) evolved.
Examples: Robotics, Media, etc.
4. Fourth generation:
Built around 64-bit µp & 32-bit µc.
The concept of System on Chips (SoC), Multicore Processors evolved.
Highly complex & very powerful.
Examples: Smart Phones.
On complexity & performance:
1. Small-scale:
Simple in application need
Performance not time-critical.
Built around low performance& low cost 8 or 16 bit µp/µc.
Example: an electronic toy
2. Medium-scale:
Slightly complex in hardware & firmware requirement.
Built around medium performance & low cost 16 or 32 bit µp/µc.
Usually contain operating system.
Examples: Industrial machines.
3. Large-scale:
Highly complex hardware & firmware
The control is achieved by processing the information coming from the sensors and
user interfaces and controlling some actuators that regulate the physical variable.
Keyboards, push button, switches, etc. are Examples of common user interface input
devices and LEDs, LCDs, Piezoelectric buzzers, etc examples for common user
interface output devices for a typical embedded system. The requirement of type of
user interface changes from application to application based on domain.
Some embedded systems do not require any manual intervention for their operation.
They automatically sense the input parameters from real world through sensors which
are connected at input port. The sensor information is passed to the processor after
signal conditioning and digitization. The core of the system performs some predefined
operations on input data with the help of embedded firmware in the system and sends
some actuating signals to the actuator connect connected to the output port of the
system.
The memory of the system is responsible for holding the code (control algorithm and
other important configuration details). There are two types of memories are used in
any embedded system. Fixed memory (ROM) is used for storing code or program.
The user cannot change the firmware in this type of memory. The most common types
of memories used in embedded systems for control algorithm storage are OTP,
PROM, UVEPROM, EEPROM and FLASH.
An embedded system without code (i.e. the control algorithm) implemented memory
has all the peripherals but is not capable of making decisions depending on the
situational as well as real world changes.
Memory for implementing the code may be present on the processor or may be
implemented as a separate chip interfacing the processor
In a controller based embedded system, the controller may contain internal memory
for storing code such controllers are called Micro-controllers with on-chip ROM.
eg. Atmel AT89C51.
Intel claims the credit for developing the first Microprocessor unit Intel 4004, a 4 bit
processor which was released in Nov 1971. Developers of microprocessors:
Intel – Intel 4004 – November 1971(4-bit)
Intel – Intel 4040.
Intel – Intel 8008 – April 1972.
Intel – Intel 8080 – April 1974(8-bit).
Intel – Intel 8085 – 1976.
Microcontroller:
A highly integrated silicon chip containing a CPU, scratch pad RAM, Special and
General purpose Register Arrays, On Chip ROM/FLASH memory for program storage,
Timer and Interrupt control units and dedicated I/O ports
Microcontrollers can be considered as a super set of Microprocessors
Microcontroller can be general purpose (like Intel 8051, designed for generic
applications and domains) or application specific (Like Automotive AVR from Atmel
Corporation. Designed specifically for automotive applications)
Since a microcontroller contains all the necessary functional blocks for independent
working, they found greater place in the embedded domain in place of microprocessors
Microcontrollers are cheap, cost effective and are readily available in the market
Texas Instruments TMS 1000 is considered as the world’s first microcontroller.
Differences between Microprocessor and Microcontroller:
Microprocessor Microcontroller
1. Microprocessor is widely used in computer 1. Microcontroller is widely used in embedded
systems.
systems.
2. It has only a CPU embedded into it 2. It has a CPU, a fixed amount of RAM, ROM
and other peripherals all embedded on it.
3. In case of microprocessors we have to connect 3. As all the components are internally connected
all the components externally so the circuit
in microcontroller so the circuit size is less.
becomes large and complex.
4. It consumes more power. 4. It consumes less power than a microprocessor.
5. It has very less internal register storage so it 5. It has many registers so processing time is less.
has to rely on external storage. So, all memory
based external commands which results in high
processing time.
5. Transistors are used to store complex 5. Transistors are used for storing memory.
instructions.
6. CISC has 100-300 minimum Instructions. 6. RISC uses few instructions (30-40).
Von-Neuman Harvard
1. Here the RAM and ROM is not separated, 1. Here the CPU is connected separately
and a single memory connection is given to with RAM and ROM.
CPU.
2. Less space is required. 2. More space is required.
3. Speed is low because fetching data and 3. Speed is more because it takes less time to
instructions at the same time is unable. At a fetch data and instruction at the same time
time, it can fetch either a data or instruction. from 2 memories called instruction memory
and data memory.
4. There is a common bus for transferring 4. There are separate buses to transfer data
data and instruction. and instruction.
5. Used in personal computers and small sized 5. This architecture is used in signal
computers. processing and the microcontrollers.
6. Same memory address is used for both 6. Separate physical address is used for both
instructions and data. instruction and data.
7. Here the two clock cycles are needed to 7. A Single clock is needed to execute a
execute a single instruction. instruction.
8. Instructions and read/write operations 8. CPU can access both instructions and
cannot be accessed by the CPU at the same write/read operations at the same time.
time.
9. These architecture-based computers are 9. This is expensive than Von Neumann
somewhat cheaper than Harvard architecture. architecture.
Fig.(b) shows the arrangement of a control system. This uses negative feedback in
order to regulate and stabilize the output. It thus becomes possible to set the input or
demand (i.e. what we desire the output to be) and leave the system to regulate itself by
comparing it with a signal derived from the output (via a sensor and appropriate signal
conditioning).
A comparator is used to sense the difference in these two signals and where any
discrepancy is detected the input to the power amplifier is adjusted accordingly. This
signal is referred to as an error signal (it should be zero when the output exactly
matches the demand). The input (demand) is often derived from a simple
potentiometer connected across a stable d.c. voltage source while the controlled
device can take many forms (e.g. a d.c. motor, linear actuator, heater, etc.).
Transducers:
Transducers are devices that convert energy in the form of sound, light, heat, etc., into
an equivalent electrical signal, or vice versa. Before we go further, let’s consider a
couple of examples that you will already be familiar with. A loudspeaker is a
transducer that converts low frequency electric current into audible sounds. A
microphone, on the other hand, is a transducer that performs the reverse function i.e.
that of converting sound pressure variations into voltage or current. Loudspeakers and
microphones can thus be considered as complementary transducers.
Transducers may be used both as inputs to electronic circuits and outputs from them.
From the two previous examples, it should be obvious that a loudspeaker is an output
transducer designed for use in conjunction with an audio system. A microphone is an
input transducer designed for use with a recording or sound reinforcing system.
Sensors:
A sensor is a special kind of transducer that converts energy from one form to another
for any measurement or control purpose ex. A Temperature sensor. The signal
7-segment display:
The seven elements of the display can be lit in different combinations to represent the
Arabic numerals. Often the seven segments are arranged in an oblique (slanted)
arrangement, which aids readability.
In most applications, the seven segments are of nearly uniform shape and size (usually
elongated hexagons, though trapezoids and rectangles can also be used), though in the
case of adding machines, the vertical segments are longer and more oddly shaped at
the ends in an effort to further enhance readability.
The segments of a 7-segment display are referred to by the letters A to G, where the
optional decimal point (an "eighth segment", referred to as DP) is used for the display
of non-integer numbers.
Stepper motor:
A stepper motor is an electro-mechanical device which generates discrete
displacement (motion) in response to dc electrical signals.
It differs from the normal dc motor in its operation.
The dc motor produces continuous rotation on applying dc voltage whereas a stepper
motor produces discrete rotation in response to the dc voltage applied to it.
Stepper motors are widely used in industrial embedded applications, consumer
electronic products and robotics control systems.
The paper feed mechanism of a printer/fax makes use of stepper motors for its
functioning.
Based on the coil winding arrangements, a two-phase stepper motors classified into
two. They are:
▪ Unipolar
▪ Bipolar
A unipolar stepper motor contains two windings per phase.
The direction of rotation (clockwise or anticlockwise) of a stepper motor is controlled
by changing the direction of current flow.
Current in one direction flows through one coil and in the opposite direction flows
through the other coil.
It is easy to shift the direction of rotation by just switching the terminals to which the
coils are connected.
Figure illustrates the working of a two-phase unipolar stepper motor
Bipolar:
A bipolar stepper motor contains single winding per phase.
For reversing the motor rotation the current flow through the windings is reversed
dynamically.
It requires complex circuitry for current flow reversal.
There is one disadvantage of unipolar motors. The torque generated by them is quite
less. This is because the current is flowing only through the half the winding. Hence
they are used in low torque applications.
On the other hand, bipolar stepper motors are a little complex to wire as we have to
use a current reversing H bridge driver IC like an L293D. But the advantage is that
the current will flow through the full coil. The resulting torque generated by the motor
is larger as compared to a unipolar motor.
The stepping of stepper motor can be implemented in different ways by changing the
sequence of activation of the stator windings. The different stepping modes supported
by stepper motor are explained below.
Full Step: In the step mode both the phases are energized simultaneously. The coils
A, B, C and D are energized in the following order:
It should be noted that out of the two windings, only one winding of a phase is
energized at a time
Wave Step: In the wave step mode only one phase is energized at a time and each
coils of the phase is energies alternatively. The coils A, B, C and D are energized in
the following order:
Half Step: It uses the combination of wave and full step. It has the highest torque and
stability. The coil energizing sequence for half step is given below.
The rotation of the stepper motor can be reversed by reversing the order in which the
coil is energized. Two-phase unipolar stepper motors are the popular choice for
embedded applications.
The current requirement for stepper motor is little high and hence the port pins of a
microcontroller/processor may not be able to drive them directly.
Also the supply voltage required to operate stepper motor varies normally in the range
5V to 24 V.
Depending on the current and voltage requirements, special driving circuits are
required to interface the stepper motor with microcontroller/processors.
The following circuit diagram illustrates the interfacing of a stepper motor through a
driver circuit connected to the port pins of a microcontroller/processor.
Relay:
Relay is an electro-mechanical device. In embedded application, the ‘Relay’ unit acts
as dynamic path selectors for signals and power.
The ‘Relay’ unit contains a relay coil made up of insulated wire on a metal core and a
metal armature with one or more contacts.
‘Relay’ works on electromagnetic principle. When a voltage is applied to the relay
coil, current flows through the coil, which in turn generates a magnetic field.
The magnetic field attracts the armature core and moves the contact point. The
movement of the contact point changes the power/signal flow path.
‘Relays’ are available in different configurations. Figure given below illustrates the
widely used relay configurations for embedded applications.
The Single Pole Single Throw configuration has only one path for information flow.
The path is either open or closed in normal condition.
For normally Open Single Pole Single Throw relay, the circuit is normally open and it
becomes closed when the relay is energized.
For normally closed Single Pole Single Throw configuration, the circuit is normally
closed and it becomes open when the relay is energized. For Single Pole Double
Throw Relay, there are two paths for information flow and they are selected by
energizing or de-energizing the relay.
Piezo Buzzer:
Piezo buzzer is a piezoelectric device for generating audio indications in embedded
application.
External driving piezo buzzers supports the generation of different tones. The tone
can be varied by applying a variable pulse train to the piezoelectric buzzer.
Push Button Switch:
It is an input device. Push button switch comes in two configurations, namely ‘Push to
Make’ and ‘Push to Break’.
In the ‘Push to Make’ configuration, the switch is normally in the open state and it
makes a circuit contact when it is pushed or pressed.
In the ‘Push to Break’ configuration, the switch is normally in the closed state and it
breaks the circuit contact when it is pushed or pressed.
In the embedded application push button is generally used as reset and start switch.
Keyboard:
Keyboard is an input device for user interfacing. If the number of keys required is
very limited, push button switches can be used and they can be directly interfaced to
the port pins for reading.
Communication Interface:
UART:
In UART communication, two UARTs communicate directly with each other. The
transmitting UART converts parallel data from a controlling device like a CPU into
serial form, transmits it in serial to the receiving UART, which then converts the
serial data back into parallel data for the receiving device.
Only two wires are needed to transmit data between two UARTs. Data flows from the
Tx pin of the transmitting UART to the Rx pin of the receiving UART:
Parallel Interface:
The on board parallel interface is normally used for or communicating with parallel
devices which are memory mapped to the host of the system.
The host processor /controller of the embedded system contain a parallel bus and the
device which supports parallel bus can directly connect to this bus system.
The communication through the parallel bus is controlled by the control signal
interface between the device and the host.
The control signals for communication includes read /write signal and device select
signal. The device normally contains device select line and the device becomes active
only when this line is asserted by the host processor.
The direction of data transfer can be controlled through the control signal lines for
Read and Write. Only the host processor has control over the Read and Write control
signal. The device is normally memory mapped to the host processor and range of
address is assigned to it.
An address Decoder circuit is used for generating the chip select signal for the device.
When the address selected by the processor is within the range assigned for the
device, the Decoder circuits activates the chip select line and thereby the device
becomes active. The processor then can read or write from or to the device by
asserting the corresponding control line
USB:
USB, short for Universal Serial Bus, is a standard type of connection for many
different kinds of devices. Generally, USB refers to the types of cables and connectors
used to connect these many types of external devices to computers.
The Universal Serial Bus standard has been extremely successful. USB ports and
cables are used to connect hardware such as printers, scanners, keyboards, mice, flash
drives, external hard drives, joysticks, cameras, and more to computers of all kinds,
including desktops, tablets, laptops, net books, etc.
In fact, USB has become so common that you'll find the connection available on nearly
any computer-like device such as video game consoles, home audio/visual equipment,
and even in many automobiles.
Many portable devices, like smart phones, eBook readers, and small tablets, use USB
primarily for charging. USB charging has become so common that it's now easy to find
replacement electrical outlets at home improvement stores with USB ports built it,
negating the need for a USB power adapter.
Wi-Fi:
Wi-Fi is a technology for wireless local area networking with devices based on the
IEEE 802.11standards. Wi-Fi is a trademark of the Wi-Fi Alliance, which restricts
the use of the term Wi-Fi Certified to products that successfully complete
interoperability certification testing.
Devices that can use Wi-Fi technology include personal computers, video-game
consoles, phones and tablets, digital cameras, smart TVs, digital audio players and
modern printers.
Wi-Fi compatible devices can connect to the Internet via a WLAN and a wireless
access point. Such an access point (or hotspot) has a range of about 20 meters (66
feet) indoors and a greater range outdoors. Hotspot coverage can be as small as a
single room with walls that block radio waves, or as large as many square kilometres
achieved by using multiple overlapping access points.
Sometimes billing time is broken down to every third of a minute. Usage above the
bundle cap is charged per megabyte, speed limited, or disallowed.
GPRS is a best-effort service, implying variable throughput and latency that depend
on the number of other users sharing the service concurrently, as opposed to circuit
switching, where a certain quality of service (QoS) is guaranteed during the
connection. In 2G systems, GPRS provides data rates of 56–114 kbit/second. 2G
cellular technology combined with GPRS is sometimes described as 2.5G, that is, a
technology between the second (2G) and third (3G) generations of mobile telephony.
It provides moderate-speed data transfer, by using unused time division multiple
access (TDMA) channels in, for example, the GSM system. GPRS is integrated into
GSM Release 97 and newer releases.