《外文文献—嵌入式计算系统.doc》由会员分享,可在线阅读,更多相关《外文文献—嵌入式计算系统.doc(16页珍藏版)》请在三一办公上搜索。
1、附录一 英文翻译资料英文原文:1. Introduction Home and office environments today typically include numerous embedded computing systems, such as burglar alarm, temperature control, and remote appliance control systems. Those systems are designed by engineers. However, there is a class of useful embedded systems tha
2、t ordinary people with no engineering training could build themselves if only the right building blocks existed.We refer to that class of systems as simple monitor/control systems. A monitor/control system senses events, such as a person walking across a room, a door being opened, or a button being
3、pressed. Such a system then responds by generating outputs, such as blinking a light-emitting diode (LED), sounding a beep, or turning on an electric relay that controls an electric appliance like a lamp. We focus on human-scale monitor/control systems, referring to events and outputs that a person
4、could observe or generate, as distinguished from other scales of events or outputs, like detecting or generating radio signals.Human-scale monitor/control systems are grossly underrepresented in existing commercial embedded system products. Some applications are available as products, like motion-se
5、nsing lights or timer-controlled relays, but these products are very limited in their function and cannot easily be extended or customized. The main reason for the under representation is cost: most applications are too specialized to be cost effective when one considers the many real costs (packagi
6、ng, marketing, store placement, etc.) of introducing a new consumer product into the market. Consider the following potential application. New homeowners often forget to close their garage door at night. A useful application would blink an LED inside the house if this condition occurs. Such an appli
7、cation could be built using a light sensor, a magnetic contact switch, a microcontroller that computes a logic function of those two inputs, a wireless transmitter, a wireless receiver, another microcontroller, and an LED. While seemingly simple, building a working system from these components is be
8、yond the skills of ordinary people, and even a challenge for most engineers who havent been specifically trained in embedded system design. Yet, companies generally could not profit from such a product, since most people are not willing to spend more than perhaps $20-$40 on such a product. People wi
9、lling to spend much more than that would instead purchase a home alarm system. Similar applications are plentiful. A storeowner may want to detect a customer at the front counter and sound a beep in the storeroom. A dog owner may want to display if the backyard gate is left open. A cafeteria manager
10、 may want a simple way for service line workers to indicate to kitchen staff which food items need replenishing. A hard-of-hearing person may want a small vibrating device that indicates noise (perhaps from a crying baby). A classroom teacher may want students to be able to anonymously vote on vario
11、us subjects by pressing buttons at their desks. A farm owner may want to detect if there is mail in his remotely located mailbox. A carpool driver may want a way other than honking the horn to inform a passenger that the car is outside the passengers apartment. All of these applications are useful,
12、but none by itself is in high enough demand to warrant a stand-alone product, and the aforementioned applications have enough differences that prevent a single product from covering all the applications.We are developing a set of building blocks from which ordinary people could easily implement thes
13、e and many other applications, without any training in electronics or programming. We refer to these blocks as eBlocks, or embedded system building blocks. 2. Related WorkMuch work has been done to simplify and make computing devices more accessible. MITs Beyond Black Boxes project 6 focuses on prov
14、iding tools and materials for science education. MIT Crickets, evolved from the Programmable Bricks project 1415 and Thinking Tag project 2. A cricket is a tiny computer, powered by a 9-volt battery, that can receive information from two sensors and can control two motors. Crickets are programmed ut
15、ilizing the Logo language 1720 a simple, graphical, highly intuitive language. In fact, Crickets provided the foundation for the Lego Mindstorms 25, which include numerous sensors and actuator Lego blocks that are connected to a central microprocessor block to build a variety of small robots. The ce
16、ntral microprocessor block is programmed using a simple graphical language included with the kit. While the Beyond Black Boxes projects seek to motivate people to program crickets, eBlocks seek to enable people to build systems. However, we can of course introduce eBlocks that could be programmed by
17、 “advanced” users, and we suspect such programming would build upon the Logo language. Home automation is another area in which much work on ubiquitous computing has been done. In home automation, an emphasis is placed on interoperability between higher-end consumer electronics, such as audio, video
18、, and other media content, and the PC. However, many problems still exist. A consumer will encounter systems that are complex to set up and maintain. There are a myriad of issues facing consumers discussed in 9 including knowledge of networking, media management, security, and content protection. Su
19、ch issues quickly overwhelm the majority of the population. To address some of these problems, a framework to support home interoperability is presented in 19. A network exists in which devices have the ability to discover, configure, and control other devices on that network. Network devices range
20、from a PC, television, stereo, or a variety of consumer electronics. This type of system eliminates the need for a user to configure and control each device independently on the network. The setup, configuration, and control aspects of the system are transparent to the user and make the system more
21、feasible. There is no need for a professional to setup a device every time a new device is added to the system. To guarantee interoperability between devices on the network a common protocol is required. The Universal Plug and Play Forum (UPnP) 2224 is an emerging industry initiative that is trying
22、to make connectivity between stand-alone devices and PCs simple and consistent. They are currently working on defining standards and templates for classes of devices so that when an individual device is added to the network it can easily be integrated, regardless of how the individual devices are im
23、plemented because a common interface exists. Home interoperability and UPnP devices are typically complete applications, not building blocks, yet we expect to eventually develop an eBlock that interfaces to a UPnP device. X10 26 is another emerging protocol for compatible devices throughout the home
24、 to communicate via existing 110V wiring in the house. X10 superimposes a (digital) signal onto the power signal, without interfering with the power signal. X10 devices detect the superimposed signal and look for their ID number, and then react to commands to turn on or off. A common application of
25、X10 is to control all the lights or power appliances of a home from a single master device. Smart sensors 131823 embed a sensors data sheet information directly in the sensor device, typically in a non-volatile memory like EEPROM. This embedded information is known as a Transducer Electronic Data Sh
26、eet, or TED and includes information such as the manufacturer ID, model number, sensors use, calibration information, voltage levels, and temperature ranges. The embedded information relieves a system designer from having to manually enter the information into their software and enables some automat
27、ic configuration. IEEE has developed several standards related to such basic smart sensors, known as IEEE P1451 12. In addition, advanced smart sensors seek to perform processing in sensors themselves, primarily to reduce the amount of network data traffic 3. Sensors which have added intelligence, a
28、re able to perform tasks such as conversions, monitor machinery for wear, perform image compression, monitor neighborhoods for real-time pollen count, or even spy plane applications, as discussed in 11121. There has also been work done in miniature wireless sensing devices 478, referred to as the Mi
29、ca wireless platform. These devices have sensing, communication, and I/O capabilities and are intended to last years in the field utilizing only a pair of AA batteries. Each Mica node consists of processor/radio circuits that are sandwiched together with sensor circuits. A variety of sensor circuits
30、 such as temperature, magnetic field, light, acceleration, vibration, and acoustics are available. A system designer would customize the Mica node to their particular application by selecting which sensors are incorporated. A collection of Mica nodes are capable of self-configuring a multi-hop netwo
31、rk, utilizing RF communication, and support dynamic reprogramming within the network. The nodes also contain the TinyOS operating system and allow designers to customize communication protocols to suite their networks. The newest generation of these wireless platforms is Smart Dust 526, which are on
32、 the millimeter scale in size. Smart Dust utilizes thick film batteries, a solar cell, or both for power, providing roughly 1-2 Joules per day. These devices share many of the characteristics of the Mica nodes but utilize optical communication and have more restrictive power utilization limits. The
33、field of sensor networks in general focuses on coarse-grained network-level applications. In addition, the Mica and Smart Dust platforms require knowledge of the underlying architecture and communication, programming, operating systems, networking, etc. Unfortunately, ordinary people do not have suc
34、h expertise. While some of the sensing capabilities of Mica and Smart Dust are similar to eBlocks, the internal design and communication interface requirements for eBlocks are vastly different, as eBlocks are intended for a different audience, namely people with no engineering experience. While desi
35、gning a low-power, self-configuring device is useful in developing eBlocks, we must incorporate such features without requiring any additional effort by the user. 3. Defining Basic eBlocksWe initially defined a basic set of eBlocks from which a variety of monitor/control systems could be built. A pr
36、inciple guiding the definition task was that eBlocks should be intuitive and easy to understand by nearly anybody old enough to want to build such a system. In particular, we assumed no engineering or technical training from the users, and no training in logic. We sought for eBlocks to be usable alm
37、ost immediately with little training, and to be usable in remote locations without access to a centralized computer. Based on these requirements, we early on determined that eBlocks should be decentralized and should work just by connecting them together. 3.1 eBlocks that Operate on Boolean Values W
38、e sub-divided the basic set of eBlocks into three categories: 1. Sensor blocks These blocks detect environmental events of interest, such as motion, light, sound, or contact.2. Output blocks These blocks generate events for observation or control, such as lighting an LED, sounding a tone, or control
39、ling an electric relay.3. Communication/logic blocks These blocks assist with communication among sensor blocks, supporting wireless transmission, wireless reception, boosting of signals over long wires, storing of signals for certain durations, and logically combining multiple signals into a new si
40、gnal. After initially exploring potential definitions of eBlocks and creating hypothetical eBlock-based systems, we realized that the challenge was enormous. We thus decided to first focus on a restricted but still very useful subset of eBlocks that transmit and receive Boolean values only, as oppos
41、ed to also including integer values or other types of values. We refer to such blocks as Boolean eBlocks .Boolean eBlocks presented an initial challenge of choosing the most intuitive representation of “true” and “false.” We found that ordinary people are not particularly comfortable with the notion
42、s of “true” and “false” in the context of monitor/control systems. (In contrast, to a reader of this paper, true and false are likely obvious concepts, as the reader likely has some experience using Boolean logic). After considering numerous possible representations, such as true and false, 1 and 0,
43、 high and low, on and off, etc., and presenting different possibilities to non- engineers of various ages, we settled upon yes and no as the most intuitive for eBlocks. For example, we describe a motion sensor by asking the question: “Is motion detected? yes means motion is detected, no means motion
44、 is not detected.” 3.2 A Basic Boolean eBlock Catalog We sought to develop a catalog of Boolean eBlocks that balanced the conflicting goals of having the fewest possible eBlocks, of having eBlocks that were intuitive, and of having eBlocks that required minimal configuration expertise. At one extrem
45、e, we could have a single eBlock that could do anything, but that eBlock would likely be big, power-hungry, and require extensive programming. At the other extreme, we could build a unique eBlock for every possible component, but that would result in an intimidating large catalog too big for a user
46、to readily comprehend, and systems that required too many basic components for users to reasonably build. We developed our eBlock catalog by considering a dozen applications, many of which we listed in the introduction. We started with a minimal set of eBlocks, and introduced new eBlocks, or added f
47、eatures to an existing eBlock, only when building an application with the minimal set seemed to be too difficult for an ordinary user. Below are the eBlocks we defined. 1. Sensor eBlocks: 1) Magnetic Contact Switch - detects when contact between two sensors is made 2) Light-Beam Switch - composed of
48、 a light source and light sink, this device detects when the light beam is broken 3) Motion Sensor - detects the presence of motion 4) Light Sensor - detects the presence of light 5) Sound Sensor - detects the presence of sound 6) 3-Key Entry - detects if a predetermined sequence of keys is pressed
49、correctly 7) 10-Key Entry - detects if a predetermined sequence of keys is pressed correctly 8) Button - detects when a button is pressed 2. Output eBlocks: 1) Green/Red LED - blinks a green light when input is yes , blinks a red light when input is no 2) Blinking LED - blinks a light when input is yes 3) Beeper - emits a beeping sound when input is yes 4) Electric Relay - transmits electricity when input is yes 3. Communication/Logic eBlocks: