Computers embedded in special purpose devices This presentation introduces computers that are embedded in special purpose devices. Embedded computers Skills: none Concepts: embedded computer, RAM, ROM, sensor, the “Internet of things” This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 License. A technology presentation We see that they have the same functional components as general purpose computers, but you cannot change their function by loading a new program. We will see several examples of devices with embedded computers and the sensors they use. This is a technology presentation. Where does this topic fit? • Internet concepts – Applications – Technology – Implications • Internet skills – Application development – Content creation – User skills Embedded computers have the same functional components as general purpose computers. Computer components – information flow This diagram stresses the direction of information flows within a computer. CPU Input devices Memory system Storage devices (programs and data) Output Devices With a laptop or desktop computer, the user interacts with the input and output devices, for example typing information on a keyboard, pointing at the screen with a mouse, or reading printed or displayed information. Computers that are embedded in special purpose devices have the same functional components, but the inputs, outputs or both are often to and from things, not people. Devices with computers embedded in them A microwave oven Things with computers inside (embedded) Computers are embedded in all of these devices. Cars, cameras, cell phones, watches, TV sets, microwave ovens, and ATM machines all contain embedded computers. Take a microwave oven for example. When the user pushes the “start” button on a microwave oven, the embedded computer detects that it has been pushed and reads the settings on the control panel. It then adjusts the power level, sends a signal to turn the oven on, tracks the elapsed time, sends a signal to turn the oven off at the proper time, and outputs a beeping sound to let the user know the food is cooked. The computer is able to output signals to adjust the power level and turn the oven on and off. There is a computer embedded in this camera. A camera It can read input from the various dials and buttons used to select options. Light coming through the lens strikes an image sensor that reads the intensity and color of the light at each pixel point. That information is output to the display on the back of the camera along with focusing information. When the user pushes the shutter button, the image is stored in flash storage. The user can connect the camera to a laptop or desktop and transfer images stored inside the camera to the computer. If the camera has a cellular or WiFi radio, it can also upload stored images to the Internet. There are many computers in a modern car. Computers in cars This slide lists some of the computer controlled systems in a modern car. Dozens of computers running millions of lines of software are embedded in modern cars. Air-bag control Anti-lock brakes Automatic transmission Alarm Climate control Collision-avoidance Cruise control Communication (e. g., onStar) Dashboard instrumentation Stability control Ignition system Engine control Seat control Entertainment system Navigation Power steering Tire-pressure monitoring Windshield-wiper control They are a major cost component and a possible source of bugs and vulnerable to hacking. In spite of that complexity, they make new features possible and increase safety and reliability. General versus specialpurpose computers General purpose computer Special purpose computer When we use our laptop or desktop computers, we load different programs into memory to do different jobs – a word processing program for writing, an image editor for drawing, and so forth. Memory that can be changed is called RAM (random access) memory. Programs in volatile, random access memory (RAM) Programs in fixed, read only memory (ROM) When you turn the computer off, the contents of RAM memory are erased – it is volatile. The programs in an embedded computer don’t change – your camera is always a camera, never a microwave oven. Since the function does not change, the camera program is permanently stored in read only memory (ROM). ROM contents are permanent. Flash memory chips are both changeable and nonvolatile. That makes flash useful for both memory and for storage. A final point – do not be confused by the term CDROM. CD-ROM drives are storage devices, and have nothing to do with ROM memory. Sensors gather input from the environment Sensors With conventional computers, people operate the input devices – we type, speak into microphones, scan images, and so forth. Embedded computers also get input from sensors. For example, the acceleration sensor in a tablet computer or cell phone allows the program to detect and respond to motion – it knows when the device is moved or rotated. The devices shown on the left are temperature sensors. They might be used by a computer that controls heating and air conditioning. There are many other types of sensor Sensors are input devices and effectors output devices. Effectors Embedded computers typically get input from sensors as well as people and they can control devices. This thermostat reads the desired temperature from a dial rotated by a user. It reads the current room temperature using a temperature sensor. And it turns the heater or air conditioner by outputting a command to an effector. Sensors are input devices from the environment and effectors are output devices to the environment. The Internet of things – devices with embedded computers are increasingly connected to the Internet. You may hear people speak of “the Internet of things.” The Internet of things We interact with computers using our fingers, eyes and voices – our senses. Things interact using light, temperature and other types of sensors. More things – from building light and heat controls to soil moisture detectors to location trackers on migrating birds – are connected to the Internet every day. Summary We saw that many special purpose devices have computers embedded inside them. Summary CPU Input devices Memory system Storage devices (programs and data) Output Devices They have the same functional components – input and output devices, memory, storage and CPU – as general purpose computers. Embedded computers often get input from sensors and send output to effectors that control devices. Programs are stored in non-volatile, read-only memory on embedded computers. Devices with embedded computers are increasingly being connected to the Internet, creating an Internet of things. The Internet of things brings us new applications and efficiency, but it also exposes us to risks from program or machine errors or malware. Self-study questions 1. Is an embedded computer more likely to keep its program in RAM or ROM? Explain. 2. What are the input, output and storage devices on a tablet computer? 3. What are the input, output and storage devices on a smart phone? 4. Are smart phones special purpose or general purpose computers? 5. What are the input, output devices of an ATM machine? 6. Where do ATM machines store information? 7. Where is the program of an ATM machine? 8. When you cook something in a microwave oven for one minute, what is the embedded computer programmed to do when the time runs out? 9. We talked of sensors for measuring temperature and acceleration. What other type of sensors are available for today’s computer systems? 10. Give an example of an effector that is controlled by an embedded computer. 11. What is some of the information your car can communicate using onStar or Ford Synch? 12. What are some privacy issues raised by automotive information systems? Resources New York Times article on ARM, the leading designer of chips for embedded systems: http://www.nytimes.com/2010/09/20/technology/20arm.html?_r=1&th&emc=th ARM Web site, with many examples of embedded applications and an overview of their product line: http://www.arm.com/ Risks of embedded smart phones: http://blogs.mcafee.com/enterprise/mobile/why-does-my-car-have-its-own-smartphone The risk of software error in cars: http://www.economist.com/blogs/babbage/2010/05/techview_cars_and_software_bugs The use of embedded computers in cars: http://spectrum.ieee.org/green-tech/advanced-cars/this-car-runs-on-code/0