Introduction to embedded systems
How embedded systems are used for different applications? Before understanding the applications of embedded systems, lets see what are the embedded systems? How they are designed? What components are involved in making an embedded system. Embedded system is an application specific electronic sub-system which is totally encapsulated by the most system it belongs to.
the most systems can range from household appliances, home automation, consumer electronics, ATMs, network routers, automobiles, aircrafts, etc.
- Dedicated Systems
- Subjected to real time performance constraints that has got to be met
- Feature tightly integrated combinations of hardware and software
- Massive computational resources with requirements of
– Small size
– Low Weight
– Very low power consumption.
Embedded systems and Real Time Operating systems (RTOS) are two among the several technologies that will play a major role in making these concepts possible. A large number of people are already depending on operating systems for real time applications, these ‘eyes in the sky’ are now going to make an impact on our everyday lives in a more significant manner. What kind of help will these ’embedded systems’ render unto humankind in the future? Even Nostradamus would have been hard pressed to answer this question. Embedded systems are pre-designed without connections and operate as per the required task. But in operating systems instruction is design-oriented. These systems are basically platform-less systems. Embedded systems are the unsung heroes of much of the technology we use today. The video game we play, or the CD player or the washing machines we use employ them. Without an embedded system we would not even be able to go online using modem. Embedded systems are usually low cost and are easily available off the shelf for most applications. They usually have low design risks, since it is easy to verify the design using tools fueling the growth of embedded systems. Embedded systems have received a major shot in the arm as the result of three developments:
- The first was the development of standard run-time platforms like java, which enabled their use in myriad ways that were unimaginable in the past.
- The second was the coming together of embedded systems and the Internet, which made possible the networking of several embedded systems to operate as part of a large system across networks.
- The third was the emergence of several integrated software environments, which simplified the implementations of these applications.
During operation, the design structure may be changed as per our tasks. For example, consider two transistors; we can mold them using other passive elements as emitter coupled circuit, Darlington pair, etc., as per instruction.
components of embedded system
Typical embedded software components:
Architecture of embedded system
Applications of embedded systems
The application areas and products in embedded domains are countless. A few important domains and products are listed below:
- Household Appliances:
Television, DVD player, Fridge, Washing machine, Oven
Cellular phones, telephone switches, handset multimedia applications etc.
- Banking and Retail:
ATM, POS, Currency counters
ECG, EEG machines, scanners
- Computer Peripherals:
Printer, scanner, fax machine
- Automotive Industry:
ABS, engine control, ignition systems.
- Measurement and Instrumentation:
DMM, CROs, PLC systems.
- Card Readers:
Barcode, smart card readers, hand held devices.
- WASHING MACHINE:
(MOST COMMON APPLICATION OF EMBEDDED SYSTEM DESIGN IN REAL LIFE)
Washing machine is a typical example of embedded system providing extensive support in home automation application. Intelligent embedded players working behind washing machine providing enhanced features and comfort.
- Control Unit
- Application-specific user interfaces
The sensor part consists of water temperature sensor, level sensor. As name indicates this part senses temperature of water and level of water. Sensor play vital role in proper functioning of washing machine.
Sensory data is fed back to control unit and control unit generates necessary actuator output.
The actuator part of washing machine consists of motorized agitator, tumble tub, water drawing pump and inlet valve to control the flow of water into unit.
- Control Unit:
Control part consists of microprocessor/controller based board with interfaces to sensors and actuators. The control unit also provides connectivity to user interfaces like keypad for setting the washing time, selecting the type of material to be washed like light, medium, heavy duty etc. User feedback is reflected through the display unit and LEDs connected to control board. Sensor data is fed back to the control unit and control unit generates necessary actuator output.
- Application-Specific User Interfaces:
Integrated control panel consists of a microprocessor/controller based board with I/O interfaces and a control algorithm running in it.
It includes the keyboard which consist of
Wash type selector namely: spin, wash, and rinse.
Cloth type selector namely: light, medium, heavy duty, etc.
It consist of LED/LCD displays, status indication LEDs connected to I/O bus of controller.
These interfaces are invisible to end user and include:
SENSOR INTERFACES: Water temperature sensor, water level sensor
ACTUATOR INTERFACES: Motor control for agitator, tub movement Control, inlet water flow control, etc.
Washing machines comes into two models:
- Top loading
- Front loading
- Top Loading Model:
In top loading model the agitator of machine twists back and forth and pulls the cloth down to bottom of tub. On reaching the bottom of tub the clothes work their way back up to the top of the tub where the agitator grabs the again and repeats the mechanism.
- Front Loading Model:
In front loading machines the clothes are tumbled and plunged into the water over and over again. This is first phase of washing. In second phase of washing water is pumped out from the tub and the inner tub uses centrifugal force to wring out more water from the clothes by spinning at several hundred rotations per minute (RPM). This is called a ‘spin phase’.
It is to be noted that the design of washing machines may vary from manufacturer to manufacturer, but the general principle underlying in working of washing machines remain same. The basic control consists of a timer, cycle selector mechanism, water temperature selector, load size selector and start button. The mechanism includes the motor, transmission, clutch, pump, agitator, inner tub, outer tub and water inlet valve. Water inlet valve connects to the water supply line using at home & regulates the flow of water into the tub.
Automatic Chocolate Vending Machine :
This is a framework that apportions chocolates automatically. The framework will require a microcontroller to control the framework. A showcase will be needed to show different directives for the client. A system will be needed to acknowledge the coins or notes and dissect something similar to list their worth. In view of the worth a choice is to be taken to apportion the chocolate and return the additional cash assuming any. Along these lines the different assignments that are to be constrained by the microcontroller are not exceptionally convoluted, henceforth a limited scale framework can undoubtedly execute this framework.
Stepper engine regulators for a mechanical arm regulator :
An automated arm regulator is a component that is utilized to perform different developments like that of a human arm and do a specific activity principally pick-and-spot for an article. The stepper engine requires an extraordinary arrangement of paired information to move a specific way. This 4-digit paired information can be given from the port of a microcontroller. There might be different stepper engines to carry out different joints of the automated arm. This can again be carried out effectively by a limited scale embedded framework.
There can be different other limited scope systems like advanced multi-meter to quantify voltage. Current and opposition. Little toys. PC fringe regulators. Television far off, power windows in vehicles. Electronic instruments, for example, temperature regulator and so on are additionally instances of limited scope embedded framework.
Vehicle model and control design
The vehicle model used for controller development is an eleven-state model, which includes vehicle state dynamics, throttle and brake system dynamics, a two-state model for the spark-ignition engine including external data maps which require interpolation, and models of the torque converter, transmission and wheel slip, as shown in the figure. The vehicle state dynamics have two continuous states, vehicle position and velocity, and consider vehicle mass, air drag and rolling resistance. The throttle and brake dynamics are both first-order, with one continuous state for each representing actuator dynamics for the throttle and time response lag for the brakes. The controller design process stems from system requirements. Vehicles may be heterogeneous, that is of different types, makes and models. The controller was split hierarchically between an upper level controller that has several modes, namely cruise control (CC), adaptive cruise control (ACC) and coordinated adaptive cruise control (CACC). In ACC mode we use only information from the host vehicle’s forward-looking sensors, and in CACC mode we supplement this information with data from the wireless communication system.
The upper control generates a desired host vehicle acceleration, which is sent to the lower-level controller. The lower-level controller converts this desired acceleration to a desired torque, then chooses whether to apply the brakes or throttle, and in what amount. Both controllers are run on separate control computers.
Medium Scale Embedded Systems :
A portion of the instances of medium scale embedded systems:
1. Router :
A systems administration router utilized in a multi-PC framework is a medium scale embedded framework. It requires legitimate directing calculation to be carried out. The convention is to be executed to have synchronization for correspondence. Different ports are needed to interface the various PCs in the multi-PC framework.
2. Music framework :
Implementation of a music framework that can play different arrangement of tunes is likewise a medium scale embedded framework. The codec (i.e Coder and decoder) of these configuration is to be carried out, which is a muddled assignment and requires a great deal of calculation advancement and programming. Equipment should be sufficiently quick and henceforth it requires top of the line microcontrollers or DSPs.
3. Refined Embedded Systems
A portion of the instances of refined embedded systems are :
Force windows of a vehicle
Force controlling of a vehicle
Fuel infusion arrangement of a vehicle
Climate control system 7 Smartphone
Automatic Temperature regulator
Advanced moving showcase for promotions
Set top box and numerous others.
How to design an embedded system?
In order to design an embedded system first you need to decide your budget. Next step is to decide either a microcontroller or a processor should be used. If your application does not have much features or complexity level is low then you should choose a microcontroller for it. But if their are multiple tasks involved that you need to implement then a microprocessor can be used. There are many other reasons for deciding between these two. Lets first see the difference between microprocessor and microcontroller.
What is the difference between a microprocessor and a microcontroller?
The following table discusses the difference between a microprocessor and microcontroller
|Microprocessor is a device that performs multiple tasks at a time.||Microcontroller performs only one task at a time.|
|All the peripheral devices need to be attached externally in order to communicate with the external world and make it operating.||It has built in RAM, ROM, timers, ADCs etc.|
|It is much expensive as compared to microcontroller.||It is cheap as compared to microprocessor.|
|Due to the connection with the external I/Os, its power consumption is high therefore it is not suitable in systems that work on stored batteries.||Its power consumption is usually low. Typically around 5V. So systems using microcontroller can run on batteries easily.|
|It is used for general purpose applications designs. For example
ü Web browsing
ü Photo editing
ü Mathematical calculations
|It is used for special purpose applications designs like hurdle detection vehicle, fire alarming robot, temperature monitoring system etc.|
|It is used is personal computers.||It is used in embedded systems.|
|It is used in applications where extensive processing is required.||It is used in applications where extensive processing is not required.|
|Basically microprocessors are operated at much higher speed.
ü Clock speed: 1 GHz to 4 GHz
ü Ram: 512 MB to 32 GB (may be higher than this.)
ü Rom: 128 GB to TB
High speed Ethernet
|· Microcontrollers are lower in as compare to microcontroller because of its specific operations and lower random accesses memory
ü Clock speed: 1 MHz up to 300MHz
ü Ram: 2KB to 256 KB
ü Flash memory: 32 KB to 2 MB
|So, if you see the clock speed of microprocessor it is in the range of GHz.The clock speed varies from 1 to 4 GHz for high-end processors. As the microprocessor has to run our operating system a high ram and rom is required.so, if you see the random access memory which is volatile memory in microprocessor, it ranges from 512 MB to 32 GB for high-end processors.
· similarly in case of rom it ranges from 128 GB to 2TB .
· The common peripheral interface in microprocessor are USB,High speed Ethernet and UART.
· Modern microprocessors are of 2 types 32 bit or 64 bit so, a 32 bit of microprocessor means a microprocessor can handle binary data of 32 bit at a same time similarly a 64 bit microprocessor can handle binary data of 64 bit at a same time.
|The clock speed of microcontroller is in the range of megahertz. So, if you see the clock speed of microcontroller it ranges from 1 Mega Hertz and it goes up to 300 MHz in the high-end microcontrollers and these microcontrollers are defined for a specific task so the amount of memory that is required by them is quite less.so, if you see a random access memory in a microcontroller it is in the range of kilobytes which is from 2 kb to 256 kb.
· similarly if you see a flash memory or a program memory inside a microcontroller it varies from 32 kB and it goes up to 2 MB
· The common peripheral interface in microprocessor are 12C,SPI and UART.
Also read here