0% found this document useful (0 votes)
55 views

Unit 5-EE8691 Embedded Systems

(1) The document describes an embedded system application for an adaptive cruise control (ACC) system in cars. It details the various components, ports, tasks, and functions of the ACC system. (2) Key components of the ACC system include a control algorithm, sensors to measure the distance to the front vehicle and speed, actuators to control the throttle and brakes, and a control panel. It uses an adaptive control algorithm to dynamically adapt control parameters. (3) The ACC system maintains a constant speed and safe distance from the front vehicle using sensors, algorithms, and actuators to control the throttle and brakes as needed based on the driving conditions.

Uploaded by

Karapp
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
55 views

Unit 5-EE8691 Embedded Systems

(1) The document describes an embedded system application for an adaptive cruise control (ACC) system in cars. It details the various components, ports, tasks, and functions of the ACC system. (2) Key components of the ACC system include a control algorithm, sensors to measure the distance to the front vehicle and speed, actuators to control the throttle and brakes, and a control panel. It uses an adaptive control algorithm to dynamically adapt control parameters. (3) The ACC system maintains a constant speed and safe distance from the front vehicle using sensors, algorithms, and actuators to control the throttle and brakes as needed based on the driving conditions.

Uploaded by

Karapp
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 49

Unit 5:

EMBEDDEDSYSTEM
APPLICATIONAND
DEVELOPMENT
Case Study of Washing Machine- Automotive Application- Smart card System
Application-ATM machine –Digital camera
WASHING MACHINE

WHAT IS A WASHING MACHINE?

A washing machine is an electronic device that is designed to wash


laundry like clothes, towels and other bedding.

All washing machines have the same basic parts: a watertight


container called the tub; a drum, which fits inside the tub, to hold the
washing; electrically operated valves to allow water into the tub; a
heating element to raise the water temperature; an electric motor to
turn the drum; a pump to drain the water; and a programmer to
control the switching of the various components.

CONTROL KNOB IN WASHING MACHINE:

 load select knob

 Water inlet select knob

 Mode select knob

 Program select knob

Load select knob:


Water inlet select knob :

Mode select knob:

Program select knob :


heavy clothes  very dirty
Normal  Normal dirty clothes

Light  for light dirty clothes

Delicate  for silk clothes


OPERATIONS

FILL:

water will be filled to certain water level

AGITATE:

The wash basket will rotate in the clockwise direction for 10 revolutions, after that
basket will stop for 2 seconds then rotate 10 revolutions in anticlockwise direction.
The process will be continued for specified minutes in cycle table.

DRAIN:

after agitation, the water and detergent are drained. spin: during spin agitator
will be stationary only the basket will rotate at high speed then the moisture of
clothes are removed through holes in the inner metallic basket.

INDICATOR :

Machine ON  LED ON. After completion of washing cycle buzzer sound will be
generated.

WORKING OF WASHING MACHINE

A slow motor turns a shaft with many disks with bumps on them.

The bumps activate micro switches which control water on and off, heater on and
off, the main motor at different speeds (wash and spin) and the pump for
emptying.

It controls the programming of the machine i.e. temp control, spin cycles.
Washing machine control program

Washing machine with 8051 configuration


OPERATION SIGNAL INPUT / PORT PIN
OUTPUT NUMBER

Load / water level water level low Input P0.0


select water level medium Input P0.1
water level High Input P0.2

water inlet hot water knob Input P0.3


normal water knob Input P0.4

program select heavy Input P1.0


Normal Input P1.1
Light Input P1.2
Dedicate Input P 1.3

Mission ON Machine ON Output P2.0


indicator

Fill water Hot water inlet Output P2.1


Normal water inlet Output P2.2

Agitation control Motor rotate in Output P2.3


clockwise direction
Motor rotate in
anticlockwise Output P2.4
direction

Drain Drain valve open Output P2.5

Spin Spin motor ON/OFF Output P2.6

Washing complete Washing complete Output P2.7


indication
Automotive Application

There are N number of Embedded Systems applications in the car.

Due to the role of embedded systems in car, the facilities and security also
increased.

Because of embedded systems, everything can be made automatic.

The figure shows the different embedded systems applications in a high end car

Here we have taken the case study of an Adaptive Cruise Control (ACC) to
understand a control system design and also to understand the use of RTOS for
code implementation.

This system has a number of ports for data input and output.

The system uses a control algorithm.


Cruise control
Cruise control a system that takes charge of controlling the throttle from the
driver and cruising the vehicle at preset and constant speed.

It may also maintain string stability in case of multiple cars streaming through
highway and in case of VIP convoy.

Using an adaptive algorithm, ACC system maintains constant speed and can be
added string stability feature in case of multiple cars streaming on highway.

The String stability is nothing but maintaining inter-car distances constant.

Cruise control relieves the driver from that duty and the driver hands over the
charge to the ACC

When

(1) Road conditions are suitable (not wet or icy, or

(2) There are no strong winds or fog), or

(3) Car is cruising at high speed and when there is no heavy traffic.

The driver resumes the charge in adverse conditions

In systems, a current control in a solenoid controls the throttle position.

A stepper motor with worn drive attachment can be used.

An adaptive algorithm calculates and sends the control signals to the stepper
motor at the vacuum valve actuator.

The orifice opening of the vacuum valve controls the throttle valve.

The valve is electro-pneumatic.

Vacuum creation provides the force via bellow.


Block diagram of the ACC system units

Control front-end panel

Switch cum Display for 'ON', for 'OFF', 'COAST', RESUME', SET/ACCELERATE.

The driver activates or deactivates, the ACC system by pressing ON or OFF,


respectively.

An adaptive control─ algorithm used to adapt to the current status of control


inputs

The Parameters adapt dynamically

In place of a constant set of mathematical parameters in the algorithm equations,


the parameter are continuously adapted to the status at an instance
Model for an adaptive control algorithm adapts and function
The figure shows how an adaptive control algorithm can adapt and function.

It calculates the output values for the control signals.

For an ACC system, an adjustable system subunit generates output control signal
for throttle value.

The adaptive mechanism subunit sends outputs, which are inputs to adjustable
system.

Some of the functions are Port_Align, Port_Readrange, Port_Speed, Port_Brake

Inputs

Present alignment of radar (or laser) beam emitter.


Delay interval in reflected pulse with respect to transmitted pulse from emitter

Throttle position from a stepper motor position sensor.

Speed from a speedometer

Brake status for brake activities from brake switch and pedal
ACC System Ports and tasks
Port_Align─ for a motor control for steps up clockwise or anticlockwise on a signal
from task_Align, aligns radar or UVHF transmitting device in the lane of the front-
end car

Port_ReadRange─ for measuring front end-car range. Time difference deltaT is


read on a signal from task_Signal to port device.

task_ReadRange to read using the Port device_ReadRange circuit for the


computations of deltaT between the transmission and reception instances. deltaT
1.5 × 105 measures the range rangeNow (=present range or front-car distance d)
of the front-end car.

task_ReadRange to send message for speedNow (= velocity v) to task_RangeRate


and transmits same to all other streaming behind cars.

Port_Speed ─to send speed to port control function routine on receiving a signal
from task_Speed

Port_Brake─ to apply the brakes or emergency brakes on an interrupt signal,


which runs service routine ISR_BrakeControl

Signals, Events and Notifications

User commands given as signals from switches/buttons. User control inputs for
ACC ON, OFF, Coast, resume, set/accelerate buttons

Brake event (Brake taping to disable the ACC system, as alternative to "cancel"
button at front panel)

Safe/Unsafe distance notification

Outputs

Transmitted pulses at regular intervals

Alarms

Flashed Messages
Range and speed messages for other cars (in case of string stability mode)

Throttle-valve and Brake control

Output to pedal system for applying emergency brakes and driver non-
intervention for taking charge of cruising from the ACC system

Control front-end panel

Switch with display─ 'ON', for 'OFF', 'COAST', RESUME', and SET/ACCELERATE.

COAST or RESUME switch to enable driver handover or resumes the ACC system
charge

SET/ACCELERATE switch to set cruise speed upwards or downwards.

Switch with display glows to show green or red as per the status when the ACC
activation

Alarms and message flashing unit issues appropriate alarms and message flashing
pictograms

Functions of the system


Cruise control system takes charge of controlling the throttle position from the
driver and enables the cruising of the vehicle at the preset constant speed. A
radar system helps in maintaining inter- car distance and warns of emergency
situations.

An alignment circuit aligns the radar emitter. When driving in a hilly area, the
emitter alignment is must. A stepper motor aligns the attachment so that
transmitter beam of radar emits with the required beam alignment for the given
driving lane and divergence so maintain the in-lane line of sight of the front-end
car. task_Align does this function.
Transmit modulated pulses emit at periodic intervals and the delay period in
receiving its reflection from front-end vehicle

The measured delay deltaT at periodic intervals

deltaT multiplied by 1.5 × 108 m/s (half of light velocity) gives the computed
distance d (= RangeNow) of front end car at that instance.

The differences of d with respect to safe dsafe and preset distances dset (in case of
maintaining string stability) are cyclically estimated.

The speedometer measures the speed and task_Speed compute error in preset
speed and measured speed.

All estimated differences are cyclically sent as input to an adaptive algorithm,


which adapts the control parameters and sends computed output to vacuum
actuator of the throttle valve in car.

task_Algorithm for computations

task_Throttle initiates the control output functions for this action.

Interrupt service routine ISR_ThrottleControl does the critical functions of throttle


control.

The car decelerates and accelerates as per setting of throttle valve orifice at
an instance.

The brake control when the safe distance is not maintained and warning message
is flashed on the screen.

task_Brake initiates the critical functions of brake control.

Interrupt service routine ISR_BrakeControl for the brake critical functions

When battery power becomes low, the ACC system deactivates after issuing alarm
and flashing messages (notifications).
Functioning of ACC System
Transmit modulated pulses emit at periodic intervals and the delay period in
receiving its reflection from front-end vehicle

Retrieve the front end-car distance information from a radar or UVHF attachment
at the front string wheel.

A stepper motor aligns the attachment so that transmitter of radar maintains the
line of sight to front-end car. The radar system maintains string stability and
warns of emergency situations.

Get road speed from Speedo-metric section of DAS unit.

Get acceleration from engine section.

Run adaptive algorithm– to calculate and send control signals to stepper motor
actuator at vacuum-valve

– Orifice opening of vacuum valve controls electro-pneumatic throttle valve.

Receive new throttle position by stepper motor position sensor

Get inputs of brake switch status for monitoring brake activities.

Send output to pedal system when applying emergency brakes

Driver intervenes on taking charge of cruising from ACC.

The figure shows the class diagram of ACC


Hardware Architecture

A hardware system in automotive electronics has to provide functional safety.

Important hardware standards and guidance─ at present are following:

(a) TTP (Time Triggered Protocol),

(b) CAN (Controller Area Network)

(c) MOST (Media Oriented System Transport),

(d) IEE (Institute of Electrical Engineers) guidance standard exists for EMC
(Electromagnetic Magnetic Control) and functional safety guidance

A microcontroller runs the tasks and ISRs except task_Algorithm.

Internal RAM/ROM, ROM/Flash for RTOS codes for scheduling the tasks.

CAN port interfaces with the CAN bus at the car.

A separate processor with RAM and ROM for the task_Algorithm executes the
adaptive control algorithm

Speedometer
Stepper motor based alignment unit

Stepper motor based throttle control unit

Transceiver for transmitting pulses through an antenna hidden under the plastic
plates.

LCD dot matrix display controller, display panel with buttons

Port devices─ Port_Align, Port_Speed, Port_ReadRange, Port_Throttle and


Port_Brake

Synchronization model of ACC system task

Semaphores taken and given in cyclic order

Task_Alignment takes SemReset at cycle start and gives SemAlign

Task_Read Range takes SemAlign at start and gives SemRange

Task_Speed gives SemSpeed

Task_RangeRate takes SemSpeed taken at start and gives SemACC

Task_Algorithm takes SemACC taken at start by and gives SemReset


SMART CARD

WHAT IS A SMART CARD?


smart card is a plastic card about the size of a credit card comes with an
embedded micro chip that can be loaded with data Kama used for telephone
calling comer cash payments comer and other applications comer and then
periodically refreshed for additional use.

Purpose:

Enabling authentication and verification of card and card holder by a host.

Enabling GUI at host machine to interact with the card holder/user for the
required transactions, for example, financial transactions with a bank or credit
card transactions.
Inputs:

Received header and messages at IO port Port_IO from host through the
antenna.

Internal Signals, Events and Notifications Notifications:

On power up, radiation-powered charge-pump supply of the card activated and a


signal to start the system boot program at resetTask.

Card start requestHeader message to task_ReadPort from resetTask.

Host authentication request requestStart message to task_ReadPort from


resetTask to enable requests for Port_IO.

UserPW verification message (notification) through Port_IO from host.

Card application close request requestApplClose message to Port_IO.

Outputs:

Transmitted headers and messages at Port_IO through antenna Control panel:

No control panel is at the card. The control panel and GUIs activate at the host
machine (for example, at ATM or credit card reader)

Electrical signals description

VCC : Power supply Input

RST: Either used itself (reset signal supplied from the interface device) or in
combination with an internal reset control circuit (optional use by the card) .

CLK: Clocking or timing signal (optional use by the card).

GND : Ground (reference voltage).


Out of the eight contacts only six are used.

Vcc is the supply voltage, Vss is the ground reference voltage against which the
Vcc potential is measured, Vpp connector is used for the high voltage signal, chip
receives commands & interchanges data.

Functions of the system:

The card inserts at a host machine.

The radiations from the host activate a charge pump at the card.

The charge pump powers the SoC circuit consisting of card processor, memory,
timer, interrupt handler and IO port, Port_IO.

On power up, system reset signals resetTask to start.

The resetTask sends the messages requestHeader and requestStart for waiting
task task_ReadPort.

task_ReadPort sends requests for host identification and reads through the
Port_IO the host-identification message and request for card identification.

task_PW sends through Port_IO the requested card identification after system
receives the host identity through Port_IO.

task_Appl then runs required API. The requestApplClose message closes the
application.

The card can now be withdrawn All transactions between cardholder/user now
takes place through GUIs using at the host control panel (screen or touch screen
or LCD display panel).
Design metrics:

Power Source and Dissipation:

Radiation powered contact less.

Code size:

optimum. card system memory needs should not exceed 64 kB memory.

Limited use of data types;

multidimensional arrays, long 64-bit integer and floating points and very
limited use of the error handlers, exceptions, signals, serialization, debugging and
profiling.

Microcontroller hardware:

Generates distinct coded physical addresses for the program and data
logical addresses. Protected once writable memory space.

Validity:

System is embedded with expiry date, after which the card authorization
through the hosts disables.

Extendibility:

The system expiry date is extendable by transactions and authorization of


master control unit (for example, bank server).

Performance:

Less than 1s for transferring control from the card to host machine.

Process Deadlines: None.

User Interfaces:

At host machine, graphic at LCD or touch screen display on LCD and


commands for card holder (card user) transactions.
SMART CARD READERS

Dedicated terminals

Usually with a small screen, keypad, printer, often also have biometric devices
such as thumb print scanner.

Computer based readers Connect through USB or COM (Serial) ports.

TERMINAL / PC CARD INTERACTION

The terminal/ PC sends commands to the card (through the serial line).

The card executes the command and sends back the reply.

The terminal/ PC cannot directly access memory of the card so data in the card is
protected from unauthorized access. This is what makes the card smart.

Classes and class diagram


Classes:

Task_CardCommunication is an abstract class from which extended to class (es)


derive to read port and authenticate.

The tasks (objects) are the instances of the classes Task_Appl, Task_Reset,
Task_ReadPort and Task_PW.

ISR1_Port_IO, ISR2_Port_IO and ISR3_Port_IO are interfaces to the tasks.

Hardware Architecture

A plastic card in ISO standard dimensions, 85.60 mm x 53.98 x 0.80 mm. It is an


embedded SoC (System-OnChip). [ISO standards - ISO7816 (1 to 4) for host-
machine contact based card and ISO14443 (Part A or B) for the contactless cards.]

Microcontroller MC68HC11D0 or PIC16C84 or a smart card processor Philips Smart


XA or an ASIP Processor. Needs 8 kB+ internal RAM and 32 kB EPROM and 2/3
wire protected memory.

CPU special features, for example, a security lock. CPU locks certain section of
memory - protect 1 kB or more data from modification and access by any external
source or instruction outside that memory.

Other way of protecting - CPU access through the physical addresses, which are
different from logical address used in the program.
Standard ROM 8 kB for usual or 64 kB when using advanced cryptographic
features.

Full or part of ROM bus activates take place after a security check only.

Chip-supply system using charge pump and I/O system.

Software Architecture

Needs cryptographic software, needs special features in its operating system over
and above the MS DOS or UNIX system features.

Protected environment -OS stored in the protected part of ROM.

A restricted run-time environment.

OS, every method, class and run time library should be scalable.

Optimum Code-size.

Limited use of data types; multidimensional arrays, long 64-bit integer and
floating points and very limited use of the error handlers, exceptions, signals,
serialization, debugging and profiling.

Three-layered file system for the data.

Master file to store all file headers (file status, access conditions and the file lock).

A header means file status, access conditions and the file lock.

Dedicated file ─second file to hold a file grouping and headers of the immediate
successor

Elementary file ─third file to hold the file header and its file data.

Either a fixed length file management or a variable file length management with
each file with a predefined offset.
TYPICAL CONFIGURATIONS

256 bytes to 4KB RAM.

8KB to 32KB ROM.

1 KB to 32KB EEPROM.

8-bit to 16-bit CPU.

8051 based designs are common.


COMMUNICATION MECHANISMS

Communication between smart card and reader is standardized

 ISO 7816 standard

Commands are initiated by the terminal

 Interpreted by the card OS

 Card state is updated

 Response is given by the card.

Commands have the following structure

 CLA INS P1 P2 Lc 1..Lc Le

Response from the card include 1..Le bytes followed by Response Code

SECURITY MECHANISMS

Password

 Card holder's protection

Cryptographic challenge Response

 Entity authentication

Biometric information

 Person's identification

A combination of one or more

PASSWORD VERIFICATION

Terminal asks the user to provide a password.

Password is sent to Card for verification.

Scheme can be used to permit user authentication.

 Not a person identification scheme


DATA STORAGE

Data is stored in smart cards in E2PROM

 Card OS provides a file structure mechanism

SMART CARD OS FILE SYSTEM AND CLASSES

Three-layered file system for the data.

Master file to store all file headers.

Dedicated file to hold a file grouping and headers of the immediate successor
elementary files of the group.

Elementary file to hold the file header and its file data.

Fixed-length or variable-file length management Classes for the network,


sockets, connections, data grams, character-input output and streams, security
management, digital-certification, symmetric and asymmetric keys-based
cryptography and digital signatures.

SMART CARD APPLICATIONS

Government Programs Banking and Finance


Mobile Communication, Pay Phone Cards

Transportation, Electronic Tolls Passports

Electronic Cash

Retailer Loyalty Programs

Information Security
HOW DOES IT WORKS?

Cars is inserted inside the Card gets power. OS boots up.

terminals Sends ATR (Answer to reset)

ATR negotiations take place to Set up data transfer


speeds. Capability negotiations etc.

Card responds with an error


Terminal sends first (because MF selection is only on
command to select MF
password presentation)

Terminal prompts the user


to provide password

Terminal sends password for Card verifies P2- Stores a Status


verification "P2 Verified". Responds “OK"

Terminal sends command to


Select MF again Card responds “OK"

Terminal sends command


Card supplies personal data and
to read EFI
responds “OK"
ATM Machine
The automated teller machine (ATM) is an automatic banking machine (ABM) that
allows the customer to complete basic transactions without any help from bank
representatives.

There are two types of automated teller machines (ATMs).

The basic one allows the customer to only draw cash and receive a report of the
account balance.

Another one is a more complex machine that accepts the deposit, provides credit
card payment facilities and reports account information.

It is an electronic device that is used by only bank customers to process account


transactions.

The users access their accounts through a special type of plastic card that is
encoded with user information on a magnetic strip.

The strip contains an identification code that is transmitted to the bank’s central
computer by modem.

The users insert the card into ATMs to access the account and process their
account transactions.

The automated teller machine was invented by john Shepherd-Barron in the year
of 1960.
ATM Block Diagram
The automated teller machine consists of mainly two input devices and four
output devices that are;

Input Devices:

Card reader

Keypad

Output Devices:

Speaker

Display Screen

Receipt Printer

Cash Depositor
Card Reader:

The card reader is an input device that reads data from a card.

The card reader is part of the identification of your particular account number and
the magnetic strip on the backside of the ATM card is used for connection with the
card reader.

The card is swiped or pressed on the card reader which captures your account
information i.e. the data from the card is passed on the host processor (server).

The host processor thus uses this data to get the information from the
cardholders.

Keypad:

The card is recognized after the machine asks further details like your
identification number, withdrawal, and your balance inquiry Each card has a unique
PIN so that there is little chance for some else to withdraw money from your
account.

There are separate laws to protect the PIN code while sending it to the host
processor.

The PIN is mostly sent in encrypted form.

The keyboard contains 48 keys and is interfaced to the processor.


Output Devices:

Speaker:

The speaker provides audio feedback when a particular key is pressed.

Display Screen:

The display screen displays the transaction information. Each step of withdrawal is
shown by the display screen. A CRT screen or LCD screen is used by most of the
ATMs.

Receipt Printer:

The receipt printer prints all the details recording your withdrawal, date and time,
and the amount of withdrawal and also shows the balance of your account in the
receipt.

Cash Dispenser:

The cash dispenser is the heart of the ATM.

This is a central system of the ATM from where the required money is obtained.
From this portion, the user can collect the money.

The cash dispenser must count each bill and give the required amount.

If in some cases the money is folded, it will be moved to another section and
becomes the reject bit.

All these actions are carried out by high precision sensors.

A complete record of each transaction is kept by the ATM with the help of an RTC
device.
ATM Networking:

The internet service provider (ISP) also plays an important role in the ATMs.

This provides communication between ATM and host processors.

When the transaction is made, the details are input by the cardholder.

This information is passed on to the host processor by the ATM. The host
processor checks these details with an authorized bank.

If the details are matched, the host processor sends the approval code to the
machine so that the cash can be transferred.

Types of ATM Machines

Most of the host processors can support either leased-line or dial-up machines

Leased Line ATM Machines:

The leased line machines connect directly to the host processor through a four-
wire point to point dedicated telephone line.

These types of machines are preferred in place. The operating cost of these
machines is very high.

Dial-Up ATM Machines:

The dial-up ATMs connect to the host processor through a normal phone line
using a modem. These require a normal connection their and their initial
installation cost is very less. The operating cost of these machines is low
compared with leased line machines.
ATM Security:

The ATM card is secured with a PIN which is kept secret.

There is no way to get the PIN from your card.

It is encrypted by strong software like Triple data Encryption Slandered.

Automated Teller Machine Working Principle:

The automated teller machine is simply a data terminal with two inputs and four
output devices.

These devices are interfaced with the processor.

The processor is the heart of the ATM. All the ATMs working around the world are
based on a centralized database system.

The ATM has to connect and communicate with the host processor (server).
The host processor is communicating with the internet service provider (ISP). It is
the gateway through all the ATM networks available to the cardholder.

When a cardholder wants does an ATM transaction, the user provides necessary
information through card reader and keypad.

The ATM forwards this information to the host processor.

The host processor enters the transaction request to the cardholder bank.

If the cardholder requests the cash, the host processor takes the cash from the
cardholder account.

Once the funds are transferred from the customer account to the host processor
bank account, the processor sends the approval code to the ATM and the
authorized machine to dispense the cash.

This is the way to get the amount on ATMs. The ATM network is fully based on a
centralized database environment.

This will make life easier and secure the cash.


Advantages of Automated Teller Machine:

The ATM provides 24 hours service

The ATM provides privacy in banking communications

The ATMs reduce the workload banks staff

The ATM may give customer new currency notes

The ATMs are convenient for banks customers

The ATM is very beneficial for travelers

The ATM provides services without any error

Features of Automated Teller Machine:

Transfer funds between linked bank accounts

Receive account balance

Prints recent transactions list

Change your pin

Deposit your cash

Prepaid mobile recharge

Bill payments

Cash withdrawal

Perform a range of features in your foreign language.


Digital Camera
Digital camera many have 4 to 6 M pixel still images, clear visual display (ClearVid)
CMOS Sensor, 7 cm wide LCD photo display screen, enhanced imaging processor,
double anti blur solution and high-speed processing engine.

10x optical and 20x digital zooms and can also record high definition video-files.

It also has microphones for high quality recorded sound.

It has an audio/video out port for connecting to a TV/DVD player or computer.

The following figure represents the hardware and software components in Digital
camera.
The digital camera have the following Hardware components

Keys on the camera. It will enable a user to operate the camera. It has navigation
keys to navigate through the images back and forth.

Shutter, lens and charge coupled device (CCD) sensors for images and its ziaes

Good resolution photo quality LCD display in the back of camera to show
photographs or recorded video clips. It displays the GUI menus when the user
interacts with the camera. Displays text such as image-title, shooting data and
time and serial number. It displays messages. It displays the GUI menu when user

Self-timer lamp for flash.

Internal memory flash to store OS and embedded software and limited number of
image files.

Flash memory stick of 2 GB or more for large storage.

Camera Functions
It displays the frame view on the LCS Screen so that user can adjust the camera
inclination before shooting the frame.

It displays the saved images on the LCD using navigation keys.

When a key for opening the shutter ins pressed, the flash lamp glows and the
self-timer circuit switches off the lamp automatically.

The frame light falls on the CCD array, which transmits the bits for each pixel in
each row in the frame through an ADC. Bits from dark area pixels in each row are
used for offset corrections in the CCD signal for light intensities in each row.

The CCD bits of each pixel in each row and column are offset corrected using a
CCD signal processor.
The processed signals are compressed using a JPEG Codec and saved in one jpg
file for each frame. A DSP does compression using the discrete cosine
transformations and decompression by inverse DCT. Thereafter it also does
Huffman coding for JPEG compression.

A DAC sends the inputs for the display unit. The DAC gets th input from the pixel
processor, which gets the inputs from the JPEG files for the saved images and gets
input directly from the CCDSP through the pixel processor out the frame in the
present view.

Universal Serial Bus (USB), Bluetooth and serial COM port for connecting it to
computer, mobile and printer.

Hardware Units
Microcontroller or ASIP (Application Specific Instruction Set Processor)

Multiple processors (CCDSP, DSP, Pixel Processor and others)

RAM for storing temporary variables and stack

ROM for application codes and RTOS codes for scheduling the tasks

Timer, Flash memory for storing user preferences, contact data, user address,
user date of birth, user identification code, ADC, DAC and Interrupt controller

The DAC gets the input from pixel processor, which gets the inputs from JPEG file
for the saved images and also gets input directly from the CCDSP through pixel
processor or the frame in present view

USB controller Direct Memory Access controller

LCD controller

Battery and external charging circuit


Software Units
CCD signal processing for off-set correction JPEG coding

JPEG decoding

Pixel processing before display Memory and file systems

Light, flash and display device drivers

LCD, USB and Bluetooth Port device- drivers for port operations for display, printer
and computer communication control.

Working

The image sensor is basically a micro-chip with a width of about 10mm.

The chip consists arrays of sensors, which can convert the light into electrical
charges.

Though both CMOS and CCD are very common, CMOS chips are known to be
more cheaper.

But for higher pixel range and costly cameras mostly CCD technology is used.

A digital camera has lens/lenses which are used to focus the light that is to be
projected and created.

This light is made to focus on an image sensor which converts the light signals
into electric signals.

The light hits the image sensor as soon as the photographer hits the shutter
button.

As soon as the shutter opens the pixels are illuminated by the light in different
intensities.

Thus an electric signal is generated. This electric signal is then further broke down
to digital data and stored in a computer.
Software Units
CCD signal processing for off-set correction JPEG coding

JPEG decoding

Pixel processing before display Memory and file systems

Light, flash and display device drivers

LCD, USB and Bluetooth Port device- drivers for port operations for display, printer
and computer communication control.

Working

The image sensor is basically a micro-chip with a width of about 10mm.

The chip consists arrays of sensors, which can convert the light into electrical
charges.

Though both CMOS and CCD are very common, CMOS chips are known to be
more cheaper.

But for higher pixel range and costly cameras mostly CCD technology is used.

A digital camera has lens/lenses which are used to focus the light that is to be
projected and created.

This light is made to focus on an image sensor which converts the light signals
into electric signals.

The light hits the image sensor as soon as the photographer hits the shutter
button.

As soon as the shutter opens the pixels are illuminated by the light in different
intensities.

Thus an electric signal is generated. This electric signal is then further broke down
to digital data and stored in a computer.
Digital camera hardware architecture

Camera tasks are modeled by four class diagrams are divided Picture_FileCreation,
Picture_FileDisplay, Picture_FileTransfer and Controller_tasks.

Microcontroller and the several ASIPs are required for expected camera
performance.

A microcontroller executes the Controller_Tasks. The controller tasks are the


following: (i) Task_LightLevel control,Task_flash (ii) initialization of tasks,
(iii)shooting task

Single purpose CCD processor does Picture_FileCreation tasks, which execute on a


for the dark current corrections,

Single purpose ASIP does the DCT compression, Huffman encoding, DCT
decompression, Huffman decoding and file save,

Single purpose display processor (DisplP) initiates Picture_FileDisplay tasks,


which execute on decoded and compressed file image display after the required
file byte stream processing for shift or rotate or stretching or zooming or contrast
or color and resolution,
Single purpose ASIP initiates memory stick save on notification from
Picture_FileTransfer file system object using a single purpose transferprocessor
(MemP),

Single purpose ASIP initiates printing on a notification from Picture_FileTransfer


using a single purpose print processor (PrintP),

Single purpose ASIP initiates USB port controller on notification from


Picture_FileTransfer using a single purpose USB processor (USB_P).
11. PART A QUESTION & ANSWERS
Unit - II

S.No
Question and Answers CO K
.
What is meant by smart card?
A smart card, chip card, or integrated circuit card (ICC
or IC card) is a physical electronic authorization
1. CO6 K1
device, used to control access to a resource. It is
typically a plastic credit card-sized card with an
embedded integrated circuit (IC) chip.
What are the basic requirements while
designing an embedded system
• Performance. A real-time system must satisfy the
timing needs and constraints of the operating
environment.
• Efficiency. Efficiency is the internal quality
2. counterpart to the externally observable attribute of CO6 K1
performance.
• Reliability
• Robustness
• Safety
• Security
• Usability
List some evident examples of Real time
embedded application.
• Videoconference applications.
• VoIP (voice over Internet Protocol)
3. • Online gaming. CO6 K1
• Community storage solutions.
• Some e-commerce transactions.
• Chatting.
• IM (instant messaging)
Show the architectural hardware units needed
in an automotive applications.

4. CO6 K1
S.No. Question and Answers CO K
What is the hardware units needed to design
smartcard?
Microcontroller or ASIP, RAM for storing temporary
variables and Stack; OTP ROM for application codes
5. and RTOS codes for scheduling the tasks; Flash for CO6 K1
storing user data, user address, user identification
codes, card number and expiry date; Timer and
interrupt controller.
Integrate the various types of memory units
that must be present in smartcard, adaptive
cruise control and washing machine.
1. RAM. 1K. This is needed for fast computation and
response. Only a tiny amount is available.
2. EEPROM (Electrically Erasable PROM). Between 1
6. to 24K. Unlike RAM, its contents are not lost CO6 K1
when power is. Applications can run off and write
to it, but it is very slow and one can only
read/write to it so many (100 000) times.
3. ROM. Between 8 to 24K. The Operating System
and other basic software like encryption
algorithms are stored here.
What are the components present in Washing
machines?
All washing machines have the same basic parts: a
watertight container called the tub; a drum, which
fits inside the tub, to hold the washing; electrically
7. operated valves to allow water into the tub; a CO6 K1
heating element to raise the water temperature; an
electric motor to turn the drum; a pump to drain the
water; and a programmer to control the switching of
the various components.
What are the operations in Washing machine?
Fill
8. Agitate CO6 K1
Drain
Indicator
When ACC can be used?
1. Road conditions are suitable (not wet or icy, or
9. 2. There are no strong winds or fog), or CO6 K1
3. Car is cruising at high speed and when there is
no heavy traffic.
14. REAL TIME APPLICATIONS IN DAY TO DAY LIFE AND TO
INDUSTRY

Water Level Controller using Microcontroller:

This project monitors the water level of the tank and automatically switches on the pump
motor when ever tank is empty. The motor is switched off automatically when container
or overhead tank is full. The main principle used in this project is “water conducts
electricity”. In this project water level of the overhead tank is indicated on a 16*2 LCD. In
this system a set of 4 wires which are placed at different water levels can be used to
sense the water levels. Based on the outputs of these wires controller displays the water
level as well as controls the pump motor. For more information about this project, click
here.

Wireless Metal Detector Robot:


In this project we develop a robot, which can sense the metals ahead of it on its path. In
this project robot is controlled wirelessly using RF technology. A metal detector is
interfaced to robot that alerts the user when there is a suspected land mines metal
ahead. At transmitter end 4 push buttons are used to control the movement of the robot.
For each push button a separate command is sent to the receiver to control robot
directions. If any suspected metal is detected, then robot stops there and gives the
buzzer. Get more information about this project in the post – Metal Detector Robot.

Biometric Attendance System:


In any institute or organization it is necessary to take the attendance for consistent
regulation and payment. Taking attendance manually requires more time and paper work.
To solve this problem automatic attendance using finger print was developed. This finger
print based attendance system is also called as Biometric attendance system. Biometrics
is the technology used for authentication. Biometric refers to automatic identification of a
person based on biological characters such as finger print, iris, etc. This system works
based on the fact that no 2 persons will have same finger print in the world. Read the
post – Biometric Attendance System to get more information about this project.
15.CONTENT BEYOND SYLLABUS

Arduino (ATmega328/p) Architecture


Arduino: The name Arduino comes from a bar in Ivrea, Italy, where some of the
founders of the project used to meet. The bar was named after Arduin of Ivrea,
who was the margrave (Military Commander)of the March of Ivrea and King of
Italy from 1002 to 1014.

Today, Arduino is an open source computer hardware and software company,


project and user community that designs and manufactures single-board
microcontrollers and microcontroller kits for building digital devices and interactive
objects that can sense and control objects in the physical and digital world.

Arduino board designs use a variety of microprocessors and controllers. The


boards are equipped with sets of digital and analog input/output (I/O) pins that
may be interfaced to various expansion boards (shields) or Breadboards (other
circuits on them).
Arduino Uno is a microcontroller board based on the ATmega328P. It has 14 digital
input/output pins (of which 6 can be used as PWM outputs), 6 analog inputs, a 16
MHz quartz crystal, a USB connection, a power jack, an ICSP header and a reset
button. It contains everything needed to support the microcontroller, simply
connect it to a computer with a USB cable or power it with a AC-to-DC adapter or
battery to get started. You can tinker with your UNO without worrying too much
about doing something wrong, worst case scenario you can replace the chip for a
few dollars and start over again.

“Uno” means one in Italian and was chosen to mark the release of Arduino
Software (IDE) 1.0. The Uno board and version 1.0 of Arduino Software (IDE)
were the reference versions of Arduino, now evolved to newer releases. The Uno
board is the first in a series of USB Arduino boards, and the reference model for
the Arduino platform. (IDE = integrated development environment)
The basic working of CPU of ATmega328:-

1.The data is uploaded in serial via the port (being uploaded from the computer’s

Arduino IDE). The data is decoded and then the instructions are sent to instruction

register and it decodes the instructions on the same clock pulse.

2.On the next clock pulse the next set of instructions are loaded in instruction

register.

3. In general purpose registers the registers are of 8-bit but there are 3 16-bit

registers also.

a. 8-bit registers are used to store data for normal calculations and results.

b. 16-bit registers are used to store data of timer counter in 2 different register. Eg.

X-low & X-high. They are fast, and are used to store specific hardware functions.

4.EEPROM stores data permanently even if the power is cut out. Programming

inside a EEPROM is slow.

5. Interrupt Unit checks whether there is an interrupt for the execution of instruction

to be executed in ISR (Interrupt Service Routine).

6.Serial Peripheral Interface (SPI) is an interface bus commonly used to send data

between microcontrollers and small peripherals such as Camera, Display, SD cards,

etc. It uses separate clock and data lines, along with a select line to choose the

device you wish to talk to.

7.Watchdog timer is used to detect and recover from MCU malfunctioning.

8.Analog comparator compares the input values on the positive and negative pin,

when the value of positive pin is higher the output is set.


9.Status and control is used to control the flow of execution of commands by
checking other blocks inside the CPU at regular intervals.
10.ALU (Arithmetic and Logical unit)The high performance AVR ALU operates in
direct connection with all the 32 general purpose working registers. Within a single
clock cycle, arithmetic operations b/w general purpose registers are executed. The
ALU operations are divided into 3 main categories – arithmetic, logical and bit-
function.
11.I/O pins The digital inputs and outputs (digital I/O) on the Arduino are what
allow you to connect the Arduino sensors, actuators, and other ICs. Learning how to
use them will allow you to use the Arduino to do some really useful things, such as
reading switch inputs, lighting indicators, and controlling relay outputs.

You might also like