US20130201029A1 - Methods and systems for operating a logical sensor network - Google Patents

Methods and systems for operating a logical sensor network Download PDF

Info

Publication number
US20130201029A1
US20130201029A1 US13/836,201 US201313836201A US2013201029A1 US 20130201029 A1 US20130201029 A1 US 20130201029A1 US 201313836201 A US201313836201 A US 201313836201A US 2013201029 A1 US2013201029 A1 US 2013201029A1
Authority
US
United States
Prior art keywords
node
resource
programmable network
sensory input
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US13/836,201
Inventor
Hsiang-Tsung Kung
Dario Vlah
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial Technology Research Institute ITRI
Original Assignee
Industrial Technology Research Institute ITRI
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Industrial Technology Research Institute ITRI filed Critical Industrial Technology Research Institute ITRI
Priority to US13/836,201 priority Critical patent/US20130201029A1/en
Publication of US20130201029A1 publication Critical patent/US20130201029A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C17/00Arrangements for transmitting signals characterised by the use of a wireless electrical link
    • G08C17/02Arrangements for transmitting signals characterised by the use of a wireless electrical link using a radio link
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices adapted for rectifying, amplifying, oscillating or switching, or capacitors or resistors with at least one potential-jump barrier or surface barrier, e.g. PN junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof  ; Multistep manufacturing processes therefor
    • H01L29/02Semiconductor bodies ; Multistep manufacturing processes therefor
    • H01L29/06Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their shape; characterised by the shapes, relative sizes, or dispositions of the semiconductor regions ; characterised by the concentration or distribution of impurities within semiconductor regions
    • H01L29/0603Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their shape; characterised by the shapes, relative sizes, or dispositions of the semiconductor regions ; characterised by the concentration or distribution of impurities within semiconductor regions characterised by particular constructional design considerations, e.g. for preventing surface leakage, for controlling electric field concentration or for internal isolations regions
    • H01L29/0642Isolation within the component, i.e. internal isolation
    • H01L29/0649Dielectric regions, e.g. SiO2 regions, air gaps
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices adapted for rectifying, amplifying, oscillating or switching, or capacitors or resistors with at least one potential-jump barrier or surface barrier, e.g. PN junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof  ; Multistep manufacturing processes therefor
    • H01L29/02Semiconductor bodies ; Multistep manufacturing processes therefor
    • H01L29/06Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their shape; characterised by the shapes, relative sizes, or dispositions of the semiconductor regions ; characterised by the concentration or distribution of impurities within semiconductor regions
    • H01L29/08Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their shape; characterised by the shapes, relative sizes, or dispositions of the semiconductor regions ; characterised by the concentration or distribution of impurities within semiconductor regions with semiconductor regions connected to an electrode carrying current to be rectified, amplified or switched and such electrode being part of a semiconductor device which comprises three or more electrodes
    • H01L29/0821Collector regions of bipolar transistors
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices adapted for rectifying, amplifying, oscillating or switching, or capacitors or resistors with at least one potential-jump barrier or surface barrier, e.g. PN junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof  ; Multistep manufacturing processes therefor
    • H01L29/02Semiconductor bodies ; Multistep manufacturing processes therefor
    • H01L29/06Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their shape; characterised by the shapes, relative sizes, or dispositions of the semiconductor regions ; characterised by the concentration or distribution of impurities within semiconductor regions
    • H01L29/10Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their shape; characterised by the shapes, relative sizes, or dispositions of the semiconductor regions ; characterised by the concentration or distribution of impurities within semiconductor regions with semiconductor regions connected to an electrode not carrying current to be rectified, amplified or switched and such electrode being part of a semiconductor device which comprises three or more electrodes
    • H01L29/1004Base region of bipolar transistors
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices adapted for rectifying, amplifying, oscillating or switching, or capacitors or resistors with at least one potential-jump barrier or surface barrier, e.g. PN junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof  ; Multistep manufacturing processes therefor
    • H01L29/40Electrodes ; Multistep manufacturing processes therefor
    • H01L29/41Electrodes ; Multistep manufacturing processes therefor characterised by their shape, relative sizes or dispositions
    • H01L29/417Electrodes ; Multistep manufacturing processes therefor characterised by their shape, relative sizes or dispositions carrying the current to be rectified, amplified or switched
    • H01L29/41708Emitter or collector electrodes for bipolar transistors
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices adapted for rectifying, amplifying, oscillating or switching, or capacitors or resistors with at least one potential-jump barrier or surface barrier, e.g. PN junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof  ; Multistep manufacturing processes therefor
    • H01L29/66Types of semiconductor device ; Multistep manufacturing processes therefor
    • H01L29/68Types of semiconductor device ; Multistep manufacturing processes therefor controllable by only the electric current supplied, or only the electric potential applied, to an electrode which does not carry the current to be rectified, amplified or switched
    • H01L29/70Bipolar devices
    • H01L29/72Transistor-type devices, i.e. able to continuously respond to applied control signals
    • H01L29/73Bipolar junction transistors
    • H01L29/732Vertical transistors
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/70Manufacture or treatment of devices consisting of a plurality of solid state components formed in or on a common substrate or of parts thereof; Manufacture of integrated circuit devices or of parts thereof
    • H01L21/77Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate
    • H01L21/78Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices
    • H01L21/82Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices to produce devices, e.g. integrated circuits, each consisting of a plurality of components
    • H01L21/822Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices to produce devices, e.g. integrated circuits, each consisting of a plurality of components the substrate being a semiconductor, using silicon technology
    • H01L21/8248Combination of bipolar and field-effect technology
    • H01L21/8249Bipolar and MOS technology

Definitions

  • the present invention generally relates to sensor networks and, more particularly, to automatic programming of a network of devices with sensing, computing, and networking ability.
  • Wireless sensor networks have virtually limitless application particularly in situations where environmental monitoring is likely to provide useful information.
  • Some examples of applications of sensor networks include remote healthcare, farming, environmental compliance, construction, condition-based maintenance, military surveillance, and medical disasters.
  • network routing of collected information remains a serious concern in most network architectures. In any network where all nodes cannot reach all other nodes in a single hop, a repeating mechanism is required. Furthermore, in sensor networks where nodes can come and go frequently, how a network responds to a failure impacts performance and reliability of the network. In general, networks that are able to dynamically reconfigure in the event of a node failure are desired particularly, in a sensor network, where connections can change quickly as the radio frequency (RF) environment changes, and battery power of nodes may be depleted in a unpredictable manner.
  • RF radio frequency
  • Wireless technologies allow for the deployment of sensor systems where some or all of the sensors may be untethered and/or mobile. Furthermore, in many applications, many or all of the sensors may need to operate largely unattended, as the sensors may be deployed in physically inaccessible or hazardous locations. For example, the sensors in a sensor network used to monitor military situations may be deployed in hostile enemy territory or sensors used to measure the levels of toxic chemicals may be deployed in areas with harmful levels of toxic chemicals. For at least these reasons, much research has been dedicated to developing wireless sensor networks that are pervasive, self-configuring, flexible, and programmable.
  • sensor data is associated with the physical location of the sensor, determining the spatial coordinates of a sensor is important. Indeed, many efforts to date have focused on perfecting localization techniques. Constraints on cost, size, or power as well as the line-of-sight constraint may preclude the use of global positioning techniques, such as OPS. In this case, self-configuring sensor networks would require to use other localization methods, which could, for example, involve the use of sensors in the network itself.
  • What is needed is methods and systems that allow the same sensor networks to support a variety of applications when this is feasible and to accommodate changes and upgrades of the system in a simple and low-cost manner.
  • the network should support automatic configuration and incorporation of new sensors and devices.
  • What is further needed is a new sensor network programming environment that enables a sensor application programmer to program a sensor network in a network topology and resource independent manner.
  • one embodiment of the present invention is directed to a method and system for operating a sensor network comprising a plurality of nodes and at least one resource, where a resource can be a sensing device (e.g., a camera or microphone) or other peripheral devices (e.g., a storage or recording system).
  • a resource can be a sensing device (e.g., a camera or microphone) or other peripheral devices (e.g., a storage or recording system).
  • a resource can be a sensing device (e.g., a camera or microphone) or other peripheral devices (e.g., a storage or recording system).
  • at least one node in a network determines at least one resource available to it and the type of the resource. Based on the type of the resource, the node associates with one or more logical node names. Based on the logical node name, the node acquires instructions for performing at least one function.
  • Another embodiment of the present invention is a processor comprising a memory storing instructions for enabling the processor to determine that at least one resource is available to it; determine a type of the at least one available resource; associate the processor with one or more logical node names based on the determined type, each logical node name associated with a type of resource; and acquire instructions for performing at least one function, the instructions provided determined based on the one or more logical node names.
  • FIG. 1 shows one exemplary configuration of a node 100 consistent with the present invention
  • FIG. 2 shows a network of nodes and resources consistent with the present invention
  • FIG. 3 illustrates the steps of an exemplary method for operating the network shown in FIG. 2 ;
  • FIG. 4 shows the path of communication of information from nodes 20 and 22 to a node 21 associated with a user
  • FIG. 5 shows the path of communication of information from nodes 20 and 22 to a node 40 , a storage node
  • FIG. 6 shows the path of communication of information from storage node 40 to node 21 , which in this example is associated with a user.
  • a sensor network consistent with the present invention comprises a plurality of nodes and at least one resource.
  • a resource may be a sensor, such as a microphone, gas detector, light detector, motion detector, listening device, ultrasound device, or thermometer, or a peripheral device, such as a device used for storage, display, playing or recording of audio, video, or images.
  • a resource may be embedded within a node or associated with the node.
  • a resource embedded within a node may be physically situated within the physical confines of the node or physically attached to the node.
  • a resource associated with the node may be physically remote from the node, but may be operationally connected or capable of communicating with the node, such as by wireless radio communications.
  • FIG. 1 shows one exemplary configuration of a node 100 consistent with the present invention.
  • An exemplary node 100 may comprise, for example, a processor 110 , memory 120 , a network interface 130 , and a sensor interface 140 .
  • Node 100 will likely also include a power source (not shown), which may be, for example, standard electrical power, solar power, or battery.
  • node 100 may optionally comprise a sensor 150 embedded within node 100 or connected via communications link 160 , where communications link 160 may be, for example, a bus.
  • node 100 may optionally comprise a sensor 150 physically remote from node 100 but connected via communications link 160 , where communications link 160 may be, for example, wireless communications.
  • one or more of the nodes may be a micro-controller-class node.
  • processor 110 in a micro-controller-class node may comprise, for example, a 64 MHz, 32-bit processor such as the ARM7 processor sold by ARM Ltd. or other similar class processors.
  • Memory 120 may be RAM, flash memory, or a combination of RAM and flash. Memory 120 may store system software for operating node 100 , network protocol stacks, network routing protocols, and other software or drivers for operating resources. Memory 120 may optionally store other software for use by the network, such as application code or software for discovering the resources in the network.
  • UCB University of California at Berkeley
  • the UCB motes are very tiny computers, ranging in size from mere millimeters to a few centimeters, equipped with sensors to collect information about their environment.
  • Current motes for example, measure approximately 2 millimeters by 2.5 millimeters and comprise an 8-bit processor with 128 Kb of flash memory, 4 Kb system RAM, communications devices, such as an FSK radio transmitter with an RF range of tens of meters, a low-power source, and sensors, among other things.
  • Motes are capable of running TinyOS, an event-driven multithreading operating system, and applications written in NesC, a C-like language also developed by the developers at UCB.
  • one or more of the nodes may be Smart Dust, another smart node developed at UCB that is even smaller than a mote.
  • a node 100 may be a JStamp, offered by Systronics.
  • a JStamp is a physically small device measuring only 1 by 2 inches that comprises a 32-bit controller, 2 Mb of memory, and native execution Java® hardware that is power efficient but computationally powerful. Software may be developed in Java and loaded onto the nodes.
  • Network interface 130 in node 100 includes any available means for communicating with other nodes and resources in the network.
  • some or all of the nodes may communicate using wireless technology based on physical-layer standards.
  • devices capable of communicating using the Bluetooth RF standard may have a radio frequency chip compatible with the Bluetooth technology.
  • Nodes in a wireless sensor network consistent with the present invention may communicate with one another at layers above the physical layer, using a medium-access control (MAC) protocol such as, for example, Carrier Sense Multiple Access (CSMA). IEEE 802.11, or their equivalents.
  • MAC medium-access control
  • CSMA Carrier Sense Multiple Access
  • IEEE 802.11 or their equivalents.
  • Sensor interface 140 may be any standard interface allowing sensor 150 to communicate information to or receive information from processor 110 and/or memory 120 .
  • sensor interlace 140 may be a standard bus and accompanying protocols. If, however, sensor 150 remotely located from node 100 , sensor interface 140 may a wireless interface and accompanying protocols.
  • sensor interface 140 may include an analog to digital (A/D) converter and/or a multiplexer.
  • A/D analog to digital
  • node 100 may be a device such as a telephone, personal digital assistant (PDA), RFID reader, or other handheld computing devices.
  • PDA personal digital assistant
  • RFID reader or other handheld computing devices.
  • a sensor network consistent with the present invention comprises one or more nodes with one or more resources.
  • Some or all of the nodes 100 in the network may also comprise software, such as drivers, for interlacing with one or more resources.
  • some or all of nodes 100 may obtain software for interfacing with individual resources dynamically over the network.
  • Such software may be downloaded to node 100 , for example, when a node 100 detects that it has the opportunity to associate with a particular resource in its vicinity.
  • a sensor network consistent with the present invention comprises one or more nodes with one or more resources.
  • all of the nodes are geographically dispersed throughout a monitored area, such as a home, warehouse, or a hospital. Users of the network may be mobile, that is, a user may be moving around the area.
  • Each node in the network need not know the environment in advance, but may determine the network environment upon activation or in the course of operation.
  • some or all of the nodes in the network associates with a logical node name.
  • some or all of the nodes may be capable of configuring dynamically their functionalities based on their associated logical node names.
  • the use of logical-level programming allows programs to be written using logical node names, such as “camera,” “microphone.” or “user,” without needing to know the exact physical location of any particular device.
  • IP Address 208.154.23.54 The Internet and most data networks use network addresses, such as IP Address 208.154.23.54. These addresses, however, have no correlation to the node's spatial address, that is, the latitude, longitude, altitude or x,y,z coordinates. For certain embodiments, one may not need to know the spatial address of the responding node. However, if spatial information is needed, the spatial address of any node may be determined by any one of a number of known methods. For example, in some embodiments, one or more of the nodes may have a means for determining the node's spatial address, such as, for example, a Global Positioning System (GPS) device. If any particular node does not have a GPS device, it may be able to determine its own position by communicating with other nodes that do.
  • GPS Global Positioning System
  • FIG. 2 shows a network of nodes and resources consistent with the present invention.
  • FIG. 2 may represent, for example, an electronically-monitored home, warehouse, or hospital.
  • nodes 20 , 21 , 22 , 23 , and 24 may be micro-controller-class nodes.
  • Nodes 26 and 27 may be motes with embedded resources.
  • Node 26 for example, may be a mote with an embedded microphone and node 27 may be a mote with an embedded temperature sensor.
  • Node 40 may be, for example, a micro-controller-class node that will act in the example as a storage node. In FIG. 2 , a “user” shown in the vicinity of node 21 .
  • FIG. 3 illustrates the steps of an exemplary method for operating the network shown in FIG. 2 .
  • One or more of the nodes in FIG. 2 are activated (step 310 ). Activation of one or more nodes may occur, for example, upon initial activation of the network as a whole or when an event occurs. For example, one or more of the individual nodes may remain inactive, even “sleep”, for long periods of time to conserve energy. Such nodes may be awakened, or activated, when an event is detected. In some embodiments, one or more of the nodes may be set a timer and activate itself and/or other nodes at a certain time. In addition, some number of nodes in the network may be organized as a “piconet” that may put a group of neighboring nodes into a synchronized sleep.
  • a node determines the resources, or resources, available to it. For example, node 20 may sense that microphone 50 is in close proximity, and node 22 may sense that camera 51 is in its vicinity.
  • Node 21 may sense that a user wearing or carrying a sensor is in its vicinity or the user ay register with node 21 by interacting with a node, such as, for example, by the user pushing a button, the user speaking to the node, or the node detecting the user by image recognition techniques.
  • a node may determine the resources available to it by, for example, broadcasting a notice that it is available to communicate and waiting to see who answers. In other embodiments, a node may determine the resources available to it by just listening to broadcasts sent by resources.
  • a node when a node detects a resource, it determines if it has the necessary software to communicate with the particular resource (step 330 ). For example, node 20 determines that microphone 50 is in close proximity and wishes to communicate with it. Node 20 then determines if it has the necessary software to communicate with microphone 50 . If it does not, node 20 may obtain such software over the network (step 335 ). Node 20 may, for example, broadcast a request for a driver for microphone 50 over the network. Node 20 may then get a response to the request which contains an address or information that would allow node 20 to obtain the appropriate driver. In certain embodiments, node 20 may be controlled remotely, that is, instructions or software for operating node 20 may be resident somewhere on the network other than on node 20 but may be used to operate node 20 .
  • node 21 may associate with the logical node name “user,” and announce itself to the network as “user,” indicating that the user has registered with node 21 or that node 21 is otherwise capable of communicating with the user.
  • node 20 may associate with the logical node name “microphone” and broadcast to the network a message indicating that it has associated with a microphone.
  • Nodes may also associate with logical node names for the purpose of indicating a role a node would like to assume or a type of information a node would like to receive, if or when such role or information becomes available.
  • node 21 may also associate itself with the logical node name “display,” indicating not only that it has a display but also that it would like to receive image data from a camera or video camera when or if it becomes available.
  • a node may forward the received information immediately to the requesting node (step 355 ).
  • node 20 may determine that microphone 50 is available to it and associate with the logical node name “microphone.” If microphone 50 has detected sound such as, for example, a knock at the door, this data is available for distribution to other nodes who request such information. If other nodes have requested with the logical node name “speaker,” for example, thereby indicating a desire and/or capability to use audible data, node 20 may send such information to the nodes associated with logical node name “speaker.” Node 20 may also broadcast to the network that it has sound that it wishes to convey to nodes requesting sound.
  • node 20 may also, for example, check to see if a user has registered with the network.
  • a “user” of a network in a home monitoring example may be, for example, a home owner who may wish to be notified of any sounds detected by microphones in the home monitoring system.
  • the node may simply wait (step 347 ). If data is available from the resource, but there is no outstanding request for that type of data, the data may be stored (step 360 ). For example, microphone 50 may detect a knock at the door, and node 20 may be associated with the logical node name “microphone,” but there may be no nodes associated with the logical node name “speaker” and no nodes associated with the logical node name “user.” In this case, the data may be stored in node 40 until such time as this type of data is requested. When a user returns home, for example, and is again associated with the network as a “user,” the user may then be able to recall the data from storage.
  • the nodes in the network may also be dynamically programmed to collaborate in providing information.
  • node 20 could be dynamically programmed to carry out the action that, if a sound is detected, one or more of the cameras nearby should be activated to collect corresponding video or still pictures.
  • node 20 may ask any node registered with logical node name “camera” to send video or still images to a node with logical node name “user.” If, as in this example, node 22 has registered with the logical node name “camera,” node 22 may send video to node 21 .
  • FIG. 4 shows the path of communication of information from nodes 20 and 22 to a node 21 associated with a user which may occur in the type of exemplary embodiment described above. If a user is associated with node 21 , node 20 transmits the sound to node 29 , which in turn transmits it to node 25 , which transmits it to node 27 and ultimately to node 21 , where it was delivered to the user. Similarly, video data collected from camera 51 may be transmitted to node 22 , which may transmitted to node 21 , via nodes 28 , 40 , and 26 . In this example, if any of the nodes in either of those paths fails or is otherwise not available, the information may be routed to node 21 through alternate paths. Conventional routing protocols for ad-hoc networks can be used in computing these paths.
  • the network may use a process to determine which of the resources is best suited to respond. For example, if camera 52 activates and also associates with the logical node name “camera,” two resources have registered as cameras, camera 51 associated with node 22 and camera 52 associated with node 24 . In this case, node 20 may be programmed to determine, for example, which of the cameras best suits its needs.
  • node 20 may notify the network that the video sent to the user should come from camera 51 .
  • any of the nodes may be mobile.
  • a mobile user may, for example, move out of range of node 21 and into the range of node 26 .
  • node 21 senses that the user is no longer in its range (by, for example, detecting that it can no longer communicate with a sensor attached to or carried by the user)
  • node 21 may broadcast to the network that the user is unavailable. In this case, there may be no registered user until the user moves into the range of another node or registers at another node.
  • node 26 may automatically detect that the user has moved into its range and it may broadcast that the user is associated with node 26 . If node 21 has not yet published that the user is unavailable, the broadcasting by node 26 that it has contact with the user may trigger the network to delete the association of the user with node 21 .
  • nodes 20 or 22 may store the data.
  • one or more of the nodes in the network may have already associated with a logical node name like “storage,” indicating the node's capability to assume the role of storing data.
  • nodes 20 or 22 may store the data at one or more nodes associated with the logical node name “storage.” In certain embodiments, and depending on the network protocol, nodes 20 or 22 may broadcast a request for storage, wait for an acknowledgment, and may transmit the data to the storage location.
  • node 40 may have associated with the logical node name “storage” and/or responded to nodes 20 and/or 22 that it is capable of storing.
  • FIG. 5 shows one exemplary path of communication of information from nodes 20 and 22 to storage node 40 .
  • the data may be forwarded to the requester from storage node 40 .
  • a user may move back into the range of node 21 .
  • Node 21 may sense that the user is back in its range (by, for example, detecting that it can communicate with a sensor attached to or carried by the user) and may rebroadcast to the network that the user is available.
  • Storage node 40 may then transmit information, via node 26 , to node 21 , as shown in FIG. 6 .
  • each of the nodes in the network may establish its associations upon activation, which may happen upon initial activation of the network.
  • Each of the nodes in the network may re-establish or establish its associations at other times as well. For example, one or more of the nodes may periodically reevaluate and rebroadcast its associations. In at least one embodiment, one or more nodes may be triggered to reevaluate and rebroadcast its associations upon a change in status or configuration of the network. Rebroadcasting allows nodes in the network to update the paths available to reach it.

Abstract

Methods and systems for operating a sensor network comprising a plurality of nodes and at least one resource, where a resource can be a sensing device (e.g., a camera or microphone) or other peripheral devices (e.g., a storage or recording system). In at least one embodiment of the present invention, at least one node in a network determines at least one resource available to it and the type of the resource or its capabilities. Based on the type or capabilities of the resource, the node associates with one or more logical node names and acquires instructions for performing at least one function.

Description

    RELATED APPLICATIONS
  • This application claims the benefit of provisional patent application No. 60/485,544, filed Jul. 7, 2003, entitled “Methods and Systems for Logical Sensor Network,” which is expressly incorporated herein by reference.
  • FIELD OF THE INVENTION
  • The present invention generally relates to sensor networks and, more particularly, to automatic programming of a network of devices with sensing, computing, and networking ability.
  • BACKGROUND OF THE INVENTION
  • The availability of intelligent sensors and micro-sensors has furthered the development of wireless sensor networks. Wireless sensor networks have virtually limitless application particularly in situations where environmental monitoring is likely to provide useful information. Some examples of applications of sensor networks include remote healthcare, farming, environmental compliance, construction, condition-based maintenance, military surveillance, and medical disasters.
  • Conventional sensor networks struggle with a variety of issues. To be reliable, conventional sensor networks often must be highly redundant, that is, deploy sensors in large numbers so that if one or more sensors are rendered inoperable, necessary information may still be reliably collected and reported. With the advances in wireless networking, highly redundant systems have become more feasible, but may become costly to deploy or operate.
  • In addition, network routing of collected information remains a serious concern in most network architectures. In any network where all nodes cannot reach all other nodes in a single hop, a repeating mechanism is required. Furthermore, in sensor networks where nodes can come and go frequently, how a network responds to a failure impacts performance and reliability of the network. In general, networks that are able to dynamically reconfigure in the event of a node failure are desired particularly, in a sensor network, where connections can change quickly as the radio frequency (RF) environment changes, and battery power of nodes may be depleted in a unpredictable manner.
  • In conventional sensor networks, such as a camera surveillance system using multiple cameras as sensors, the cameras may be fixed and, once the location of the cameras were known to an intruder, the effectiveness of the surveillance system can be compromised. Furthermore, moving the cameras often requires costly system reconfiguration.
  • Wireless technologies allow for the deployment of sensor systems where some or all of the sensors may be untethered and/or mobile. Furthermore, in many applications, many or all of the sensors may need to operate largely unattended, as the sensors may be deployed in physically inaccessible or hazardous locations. For example, the sensors in a sensor network used to monitor military situations may be deployed in hostile enemy territory or sensors used to measure the levels of toxic chemicals may be deployed in areas with harmful levels of toxic chemicals. For at least these reasons, much research has been dedicated to developing wireless sensor networks that are pervasive, self-configuring, flexible, and programmable.
  • Since sensor data is associated with the physical location of the sensor, determining the spatial coordinates of a sensor is important. Indeed, many efforts to date have focused on perfecting localization techniques. Constraints on cost, size, or power as well as the line-of-sight constraint may preclude the use of global positioning techniques, such as OPS. In this case, self-configuring sensor networks would require to use other localization methods, which could, for example, involve the use of sensors in the network itself.
  • Traditional sensor networks suffer from a limitation that they are generally deployed with one application in mind and therefore with highly specialized software and/or configuration expectations. For example, separate sensor networks are deployed for home safety, home security surveillance, monitoring of infants, and home care of the elderly, in spite of the fact that these systems share, to a large extent, the same hardware and software. Even for the same application, upgrades of sensor nodes and their functionalities often incur costly system reconfiguration and software changes.
  • What is needed is methods and systems that allow the same sensor networks to support a variety of applications when this is feasible and to accommodate changes and upgrades of the system in a simple and low-cost manner. For example, the network should support automatic configuration and incorporation of new sensors and devices. What is further needed is a new sensor network programming environment that enables a sensor application programmer to program a sensor network in a network topology and resource independent manner.
  • SUMMARY OF THE INVENTION
  • Accordingly, one embodiment of the present invention is directed to a method and system for operating a sensor network comprising a plurality of nodes and at least one resource, where a resource can be a sensing device (e.g., a camera or microphone) or other peripheral devices (e.g., a storage or recording system). In accordance with one embodiment of the present invention, at least one node in a network determines at least one resource available to it and the type of the resource. Based on the type of the resource, the node associates with one or more logical node names. Based on the logical node name, the node acquires instructions for performing at least one function.
  • Another embodiment of the present invention is a processor comprising a memory storing instructions for enabling the processor to determine that at least one resource is available to it; determine a type of the at least one available resource; associate the processor with one or more logical node names based on the determined type, each logical node name associated with a type of resource; and acquire instructions for performing at least one function, the instructions provided determined based on the one or more logical node names.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate several embodiments of the invention and together with the description, serve to explain the principles of the invention. In the drawings:
  • FIG. 1 shows one exemplary configuration of a node 100 consistent with the present invention;
  • FIG. 2 shows a network of nodes and resources consistent with the present invention;
  • FIG. 3 illustrates the steps of an exemplary method for operating the network shown in FIG. 2;
  • FIG. 4 shows the path of communication of information from nodes 20 and 22 to a node 21 associated with a user;
  • FIG. 5 shows the path of communication of information from nodes 20 and 22 to a node 40, a storage node; and
  • FIG. 6 shows the path of communication of information from storage node 40 to node 21, which in this example is associated with a user.
  • DETAILED DESCRIPTION OF THE INVENTION
  • Reference will now be made in detail to the present embodiments of the invention, examples of which are illustrated with reference to the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts.
  • Exemplary Network
  • A sensor network consistent with the present invention comprises a plurality of nodes and at least one resource. A resource may be a sensor, such as a microphone, gas detector, light detector, motion detector, listening device, ultrasound device, or thermometer, or a peripheral device, such as a device used for storage, display, playing or recording of audio, video, or images. A resource may be embedded within a node or associated with the node. A resource embedded within a node may be physically situated within the physical confines of the node or physically attached to the node. A resource associated with the node may be physically remote from the node, but may be operationally connected or capable of communicating with the node, such as by wireless radio communications.
  • FIG. 1 shows one exemplary configuration of a node 100 consistent with the present invention. An exemplary node 100 may comprise, for example, a processor 110, memory 120, a network interface 130, and a sensor interface 140. Node 100 will likely also include a power source (not shown), which may be, for example, standard electrical power, solar power, or battery. As mentioned above, node 100 may optionally comprise a sensor 150 embedded within node 100 or connected via communications link 160, where communications link 160 may be, for example, a bus. Alternatively, node 100 may optionally comprise a sensor 150 physically remote from node 100 but connected via communications link 160, where communications link 160 may be, for example, wireless communications.
  • In exemplary embodiments consistent with the present invention, one or more of the nodes may be a micro-controller-class node. For example, processor 110 in a micro-controller-class node may comprise, for example, a 64 MHz, 32-bit processor such as the ARM7 processor sold by ARM Ltd. or other similar class processors. Memory 120 may be RAM, flash memory, or a combination of RAM and flash. Memory 120 may store system software for operating node 100, network protocol stacks, network routing protocols, and other software or drivers for operating resources. Memory 120 may optionally store other software for use by the network, such as application code or software for discovering the resources in the network.
  • Other nodes may be smaller, low-power nodes such as the “mote” developed by the University of California at Berkeley (UCB). The UCB motes are very tiny computers, ranging in size from mere millimeters to a few centimeters, equipped with sensors to collect information about their environment. Current motes, for example, measure approximately 2 millimeters by 2.5 millimeters and comprise an 8-bit processor with 128 Kb of flash memory, 4 Kb system RAM, communications devices, such as an FSK radio transmitter with an RF range of tens of meters, a low-power source, and sensors, among other things. Motes are capable of running TinyOS, an event-driven multithreading operating system, and applications written in NesC, a C-like language also developed by the developers at UCB. In certain embodiments, one or more of the nodes may be Smart Dust, another smart node developed at UCB that is even smaller than a mote.
  • Another suitable example of a node 100 may be a JStamp, offered by Systronics. A JStamp is a physically small device measuring only 1 by 2 inches that comprises a 32-bit controller, 2 Mb of memory, and native execution Java® hardware that is power efficient but computationally powerful. Software may be developed in Java and loaded onto the nodes.
  • Network interface 130 in node 100 includes any available means for communicating with other nodes and resources in the network. In certain embodiments of the present invention, some or all of the nodes may communicate using wireless technology based on physical-layer standards. For example, devices capable of communicating using the Bluetooth RF standard may have a radio frequency chip compatible with the Bluetooth technology.
  • Nodes in a wireless sensor network consistent with the present invention may communicate with one another at layers above the physical layer, using a medium-access control (MAC) protocol such as, for example, Carrier Sense Multiple Access (CSMA). IEEE 802.11, or their equivalents.
  • Sensor interface 140 may be any standard interface allowing sensor 150 to communicate information to or receive information from processor 110 and/or memory 120. For example, if sensor 150 is physically embedded or otherwise connected to node 100, sensor interlace 140 may be a standard bus and accompanying protocols. If, however, sensor 150 remotely located from node 100, sensor interface 140 may a wireless interface and accompanying protocols. In some embodiments, sensor interface 140 may include an analog to digital (A/D) converter and/or a multiplexer.
  • One skilled in the computer arts will appreciate that other suitable, even smaller, computing devices may also be appropriate in some embodiments. Further, node 100 may be a device such as a telephone, personal digital assistant (PDA), RFID reader, or other handheld computing devices.
  • As mentioned above, a sensor network consistent with the present invention comprises one or more nodes with one or more resources. Some or all of the nodes 100 in the network may also comprise software, such as drivers, for interlacing with one or more resources. Alternatively, some or all of nodes 100 may obtain software for interfacing with individual resources dynamically over the network. Such software may be downloaded to node 100, for example, when a node 100 detects that it has the opportunity to associate with a particular resource in its vicinity.
  • Logical Network Operation
  • As mentioned above, a sensor network consistent with the present invention comprises one or more nodes with one or more resources. In at least one embodiment, all of the nodes are geographically dispersed throughout a monitored area, such as a home, warehouse, or a hospital. Users of the network may be mobile, that is, a user may be moving around the area. Each node in the network need not know the environment in advance, but may determine the network environment upon activation or in the course of operation. In certain embodiments of the present invention, some or all of the nodes in the network associates with a logical node name. In addition, some or all of the nodes may be capable of configuring dynamically their functionalities based on their associated logical node names. The use of logical-level programming allows programs to be written using logical node names, such as “camera,” “microphone.” or “user,” without needing to know the exact physical location of any particular device.
  • The Internet and most data networks use network addresses, such as IP Address 208.154.23.54. These addresses, however, have no correlation to the node's spatial address, that is, the latitude, longitude, altitude or x,y,z coordinates. For certain embodiments, one may not need to know the spatial address of the responding node. However, if spatial information is needed, the spatial address of any node may be determined by any one of a number of known methods. For example, in some embodiments, one or more of the nodes may have a means for determining the node's spatial address, such as, for example, a Global Positioning System (GPS) device. If any particular node does not have a GPS device, it may be able to determine its own position by communicating with other nodes that do.
  • One exemplary embodiment of the present invention will now be described with reference to FIG. 2, which shows a network of nodes and resources consistent with the present invention. FIG. 2 may represent, for example, an electronically-monitored home, warehouse, or hospital.
  • In the example shown in FIG. 2, nodes 20, 21, 22, 23, and 24 may be micro-controller-class nodes. Nodes 26 and 27 may be motes with embedded resources. Node 26, for example, may be a mote with an embedded microphone and node 27 may be a mote with an embedded temperature sensor. Node 40 may be, for example, a micro-controller-class node that will act in the example as a storage node. In FIG. 2, a “user” shown in the vicinity of node 21.
  • FIG. 3 illustrates the steps of an exemplary method for operating the network shown in FIG. 2. One or more of the nodes in FIG. 2 are activated (step 310). Activation of one or more nodes may occur, for example, upon initial activation of the network as a whole or when an event occurs. For example, one or more of the individual nodes may remain inactive, even “sleep”, for long periods of time to conserve energy. Such nodes may be awakened, or activated, when an event is detected. In some embodiments, one or more of the nodes may be set a timer and activate itself and/or other nodes at a certain time. In addition, some number of nodes in the network may be organized as a “piconet” that may put a group of neighboring nodes into a synchronized sleep.
  • Upon activation, a node determines the resources, or resources, available to it. For example, node 20 may sense that microphone 50 is in close proximity, and node 22 may sense that camera 51 is in its vicinity. Node 21 may sense that a user wearing or carrying a sensor is in its vicinity or the user ay register with node 21 by interacting with a node, such as, for example, by the user pushing a button, the user speaking to the node, or the node detecting the user by image recognition techniques.
  • A node may determine the resources available to it by, for example, broadcasting a notice that it is available to communicate and waiting to see who answers. In other embodiments, a node may determine the resources available to it by just listening to broadcasts sent by resources.
  • In any event, when a node detects a resource, it determines if it has the necessary software to communicate with the particular resource (step 330). For example, node 20 determines that microphone 50 is in close proximity and wishes to communicate with it. Node 20 then determines if it has the necessary software to communicate with microphone 50. If it does not, node 20 may obtain such software over the network (step 335). Node 20 may, for example, broadcast a request for a driver for microphone 50 over the network. Node 20 may then get a response to the request which contains an address or information that would allow node 20 to obtain the appropriate driver. In certain embodiments, node 20 may be controlled remotely, that is, instructions or software for operating node 20 may be resident somewhere on the network other than on node 20 but may be used to operate node 20.
  • After a node has activated and determined one or more resources available to it, it may broadcast to one or more other nodes or the entire network announcing its role or capabilities (step 340). For example, node 21 may associate with the logical node name “user,” and announce itself to the network as “user,” indicating that the user has registered with node 21 or that node 21 is otherwise capable of communicating with the user. Likewise, node 20 may associate with the logical node name “microphone” and broadcast to the network a message indicating that it has associated with a microphone.
  • Nodes may also associate with logical node names for the purpose of indicating a role a node would like to assume or a type of information a node would like to receive, if or when such role or information becomes available. For example, node 21 may also associate itself with the logical node name “display,” indicating not only that it has a display but also that it would like to receive image data from a camera or video camera when or if it becomes available.
  • If a node associates with a logical node name, data is available from the resource (step 345), and a request for the type of information is outstanding (step 350), the node may forward the received information immediately to the requesting node (step 355).
  • For example, with reference to FIG. 2, node 20 may determine that microphone 50 is available to it and associate with the logical node name “microphone.” If microphone 50 has detected sound such as, for example, a knock at the door, this data is available for distribution to other nodes who request such information. If other nodes have requested with the logical node name “speaker,” for example, thereby indicating a desire and/or capability to use audible data, node 20 may send such information to the nodes associated with logical node name “speaker.” Node 20 may also broadcast to the network that it has sound that it wishes to convey to nodes requesting sound.
  • In certain embodiments, node 20 may also, for example, check to see if a user has registered with the network. A “user” of a network in a home monitoring example may be, for example, a home owner who may wish to be notified of any sounds detected by microphones in the home monitoring system.
  • If, however, no data is yet available from the resource, the node may simply wait (step 347). If data is available from the resource, but there is no outstanding request for that type of data, the data may be stored (step 360). For example, microphone 50 may detect a knock at the door, and node 20 may be associated with the logical node name “microphone,” but there may be no nodes associated with the logical node name “speaker” and no nodes associated with the logical node name “user.” In this case, the data may be stored in node 40 until such time as this type of data is requested. When a user returns home, for example, and is again associated with the network as a “user,” the user may then be able to recall the data from storage.
  • In certain embodiments, the nodes in the network may also be dynamically programmed to collaborate in providing information. For example, when the network detected that node 20 assumed the role of a microphone, node 20 could be dynamically programmed to carry out the action that, if a sound is detected, one or more of the cameras nearby should be activated to collect corresponding video or still pictures. For example, if the microphone detects a sound, node 20 may ask any node registered with logical node name “camera” to send video or still images to a node with logical node name “user.” If, as in this example, node 22 has registered with the logical node name “camera,” node 22 may send video to node 21.
  • FIG. 4 shows the path of communication of information from nodes 20 and 22 to a node 21 associated with a user which may occur in the type of exemplary embodiment described above. If a user is associated with node 21, node 20 transmits the sound to node 29, which in turn transmits it to node 25, which transmits it to node 27 and ultimately to node 21, where it was delivered to the user. Similarly, video data collected from camera 51 may be transmitted to node 22, which may transmitted to node 21, via nodes 28, 40, and 26. In this example, if any of the nodes in either of those paths fails or is otherwise not available, the information may be routed to node 21 through alternate paths. Conventional routing protocols for ad-hoc networks can be used in computing these paths.
  • If, in the example shown in FIG. 2 and described above, more than one resource is associated with a particular logical node name, the network may use a process to determine which of the resources is best suited to respond. For example, if camera 52 activates and also associates with the logical node name “camera,” two resources have registered as cameras, camera 51 associated with node 22 and camera 52 associated with node 24. In this case, node 20 may be programmed to determine, for example, which of the cameras best suits its needs. If it is determined that camera 51 better suits its needs, for example, if it is closer, has better resolution, is at a better angle, or in any other way improves upon the quality of information available regarding the event, node 20 may notify the network that the video sent to the user should come from camera 51.
  • In many applications, any of the nodes, including the “user,” may be mobile. A mobile user may, for example, move out of range of node 21 and into the range of node 26. If node 21 senses that the user is no longer in its range (by, for example, detecting that it can no longer communicate with a sensor attached to or carried by the user), node 21 may broadcast to the network that the user is unavailable. In this case, there may be no registered user until the user moves into the range of another node or registers at another node. Alternatively, node 26 may automatically detect that the user has moved into its range and it may broadcast that the user is associated with node 26. If node 21 has not yet published that the user is unavailable, the broadcasting by node 26 that it has contact with the user may trigger the network to delete the association of the user with node 21.
  • During the period that the user, or any node, is unavailable, data collected by a resource when no request for such data is pending may be stored. For example, if nodes 20 or 22 have data and determine that no user is associated with a node in the network, nodes 20 or 22 may store the data. In a network consistent with the present invention, one or more of the nodes in the network may have already associated with a logical node name like “storage,” indicating the node's capability to assume the role of storing data. If so, nodes 20 or 22 may store the data at one or more nodes associated with the logical node name “storage.” In certain embodiments, and depending on the network protocol, nodes 20 or 22 may broadcast a request for storage, wait for an acknowledgment, and may transmit the data to the storage location.
  • In FIG. 5, for example, node 40 may have associated with the logical node name “storage” and/or responded to nodes 20 and/or 22 that it is capable of storing. FIG. 5 shows one exemplary path of communication of information from nodes 20 and 22 to storage node 40.
  • If data is stored at node 40 and a request for the data is later received or published, the data may be forwarded to the requester from storage node 40. For example, as shown in FIG. 6, a user may move back into the range of node 21. Node 21 may sense that the user is back in its range (by, for example, detecting that it can communicate with a sensor attached to or carried by the user) and may rebroadcast to the network that the user is available. Storage node 40 may then transmit information, via node 26, to node 21, as shown in FIG. 6.
  • Above it was discussed that each of the nodes in the network may establish its associations upon activation, which may happen upon initial activation of the network. Each of the nodes in the network may re-establish or establish its associations at other times as well. For example, one or more of the nodes may periodically reevaluate and rebroadcast its associations. In at least one embodiment, one or more nodes may be triggered to reevaluate and rebroadcast its associations upon a change in status or configuration of the network. Rebroadcasting allows nodes in the network to update the paths available to reach it.
  • Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the invention being indicated by the following claims.

Claims (29)

1. -43. (canceled)
44. A method of operating a network comprising a plurality of programmable network nodes and at least one resource, the method comprising:
determining by at least one of the plurality of programmable network nodes that the at least one resource is available to it;
determining by the at least one programmable network node a type of the at least one available resource;
deciding if the at least one programmable network node has necessary instructions to communicate with the at least one available resource;
providing the at least one programmable network node with the necessary instructions based on the deciding;
receiving sensory input via the at least one available resource; and
providing the sensory input to one or more of the plurality of programmable network nodes in the network based on a presence or absence of an outstanding request for the sensory input.
45. The method of claim 44, wherein the instructions are provided from another network node or an external input means.
46. The method of claim 44, wherein the instructions are provided from local storage accessible by the programmable network node.
47. The method of claim 44, wherein the determining that the at least one resource is available to it, comprises:
broadcasting, by the at least one programmable network node, a request for a resource; and,
receiving, by the at least one programmable network node, at least one response from the at least one resource, the response indicating that the at least one resource is available. (NEW) The method of claim 44, wherein the type of the at least one available resource may be one or more of the following: camera, microphone, temperature sensor, listening device, gas detector, light detector, audio/image/video recorder or player, storage device, or other peripheral device.
49. The method of claim 44, wherein the step of providing the sensory input comprises:
forwarding the sensory input to one of more of the plurality of programmable network nodes based on the outstanding request for the sensory input by the one or more of the plurality of programmable network nodes; or
storing the sensory input based on no outstanding requests for the sensory input by the one or more of the plurality of programmable network nodes,
50. The method of claim 49, wherein the storing of the sensory input is performed at the at least one programmable node or at a dedicated storage node.
51. The method of claim 44, wherein the resource is physically separate the at least one programmable network node.
52. The method of claim 44, wherein each of the plurality of programmable network nodes is associated with a logical name for the purpose of indicating a role of the each of the plurality of programmable network nodes.
53. The method of claim 52, further comprising:
broadcasting a notice to the network by the each of the plurality of programmable network nodes indicating the logical node names of the each of the plurality of programmable network nodes.
54. The method of claim 49, further comprising:
after the sensory input has been stored, receiving a request for the sensory input from the at least one programmable network node in the network; and
providing the sensory input to the at least one programmable network node in the network that requested the stored sensory input.
55. A method of operating a network comprising a plurality of programmable network nodes and at least one resource, the method comprising:
determining by at least one of the plurality of programmable network nodes that the at least one resource is available to it;
determining by the at least one programmable network node one or more capabilities of the at least one available resource;
associating the at least one programmable network node with one or more logical node names based on the one or more capabilities of the at least one available resource after the resource is determined, each logical node name associated with a type of resource; and
controlling the at least one programmable network node to perform at least one function based on the one or more logical node names;
wherein the associating further comprises broadcasting a notice to the network indicating the one or more logical node names of the at least one programmable network node.
56. The method of claim 55, wherein controlling the at least one programmable network node to perform at least one function based on the one or more logical node names comprises:
controlling the at least one programmable network node to perform the at least one function using one or more instructions accessible to, but not stored on, the programmable network node.
57. The method of claim 55, wherein the determining that at least one resource is available to it, comprises:
broadcasting, by the at least one programmable network node, a request for a resource; and,
receiving, by the at least one programmable network node, at least one response from the at least one resource, the response indicating that the at least one resource is available.
58. The method of claim 55, wherein the type of the at least one available resource may be one or more of the following: camera, microphone, temperature sensor, listening device, gas detector, light detector, audio/image/video recorder or player, storage device, or other peripheral device.
59. The method of claim 55, further comprising:
executing by the at least one programmable network node at least one instruction for performing the at least one function based on the one or more logical node names associated with the at least one programmable network node.
60. The method of claim 55, wherein the performing at least one function comprises:
receiving sensory input via the at least one available resource; and
providing the sensory input to one or more of the plurality of programmable network nodes in the network based on the one or more logical node names of the programmable network node.
61. The method of claim 55, wherein the performing at least one function comprises:
receiving sensory input from one or more of the plurality of programmable network nodes in the network based on the one or more logical node names.
62. The method of claim 61, further comprising:
providing the sensory input to the at least one available resource.
63. The method of claim 55, wherein the performing at least one function comprises:
receiving sensory input via the at least one available resource;
broadcasting to plurality of programmable network nodes in the network the availability of the sensory input; and
providing the sensory input to one or more of the plurality of programmable network nodes in the network that respond with a request to receive the sensory input.
64. The method of claim 63, wherein at least one programmable network node in the network associates as a user and further comprising:
providing the sensory input to the at least one programmable network node in the network that associates as a user.
65. The method of claim 64, further comprising:
storing the sensory input, if no programmable network nodes in the network respond with a request to receive the sensory input.
66. The method of claim 65, further comprising:
after the sensory input has been stored, receiving a request for the sensory input from at least one programmable network node in the network; and
providing the sensory input to the at least one programmable network node in the network that requested the stored sensory input.
67. A processor comprising a memory storing instructions for enabling the processor to:
determine at least one resource is available to it;
determine one or more capabilities of the at least one available resource;
decide if the processor has necessary instructions to communicate with the at least one available resource;
acquire instructions based on the deciding;
associate the processor with one or more logical node names based on the one or more capabilities of the at least one available resource and broadcast a notice indicating the one or more logical node names;
perform at least one function based on the instructions and the one or more logical node names.
68. The processor of claim 67, wherein the processor is capable of communicating via a network and the instructions are acquired from a network node or an external input means.
69. The processor of claim 67, wherein the memory also stores the instructions acquired by the processor.
70. The processor of claim 67, wherein the type of the at least one available resource may be one or more of the following: camera, microphone, temperature sensor, listening device, gas detector, light detector, audio/image/video recorder or player, storage device, or other peripheral device.
71. The processor of claim 67, wherein the instructions and the one or more logical node names which enable the processor to perform the at least one function further enable the processor to:
receive sensory input via the at least one available resource; and
provide the sensory input to one or more of programmable network nodes in a network or store the sensory input.
72. The processor of claim 67, wherein the instructions and the one or more logical node names which enable the processor to perform the at least one function further enable the processor to:
receive sensory input from one or more of programmable network nodes in a network.
US13/836,201 2004-07-13 2013-03-15 Methods and systems for operating a logical sensor network Abandoned US20130201029A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/836,201 US20130201029A1 (en) 2004-07-13 2013-03-15 Methods and systems for operating a logical sensor network

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/889,878 US7180159B2 (en) 2004-07-13 2004-07-13 Bipolar transistor having base over buried insulating and polycrystalline regions
US13/836,201 US20130201029A1 (en) 2004-07-13 2013-03-15 Methods and systems for operating a logical sensor network

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US10/889,878 Division US7180159B2 (en) 2004-07-13 2004-07-13 Bipolar transistor having base over buried insulating and polycrystalline regions

Publications (1)

Publication Number Publication Date
US20130201029A1 true US20130201029A1 (en) 2013-08-08

Family

ID=35598549

Family Applications (2)

Application Number Title Priority Date Filing Date
US10/889,878 Active 2024-09-27 US7180159B2 (en) 2004-07-13 2004-07-13 Bipolar transistor having base over buried insulating and polycrystalline regions
US13/836,201 Abandoned US20130201029A1 (en) 2004-07-13 2013-03-15 Methods and systems for operating a logical sensor network

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US10/889,878 Active 2024-09-27 US7180159B2 (en) 2004-07-13 2004-07-13 Bipolar transistor having base over buried insulating and polycrystalline regions

Country Status (1)

Country Link
US (2) US7180159B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105716654A (en) * 2016-02-02 2016-06-29 江苏拓米洛环境试验设备有限公司 Intelligent novel programmable multifunctional humiture recorder
US9967330B2 (en) * 2015-12-01 2018-05-08 Dell Products L.P. Virtual resource bank for localized and self determined allocation of resources

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7170083B2 (en) * 2005-01-07 2007-01-30 International Business Machines Corporation Bipolar transistor with collector having an epitaxial Si:C region
WO2008026175A1 (en) * 2006-08-31 2008-03-06 Nxp B.V. Method of manufacturing a bipolar transistor
US8674454B2 (en) * 2009-02-20 2014-03-18 Mediatek Inc. Lateral bipolar junction transistor
US20100213507A1 (en) * 2009-02-20 2010-08-26 Ching-Chung Ko Lateral bipolar junction transistor
US7897995B2 (en) * 2009-04-07 2011-03-01 Mediatek Inc. Lateral bipolar junction transistor with reduced base resistance
CN101866856A (en) * 2010-05-12 2010-10-20 上海宏力半导体制造有限公司 NPN transistor and fabricating method thereof
EP2458624A1 (en) * 2010-11-26 2012-05-30 Nxp B.V. Heterojunction Bipolar Transistor Manufacturing Method and Integrated Circuit Comprising a Heterojunction Bipolar Transistor
CN103035689B (en) * 2012-05-23 2015-06-03 上海华虹宏力半导体制造有限公司 Collector region out-leading structure of germanium-silicon heterojunction bipolar transistor (HBT) and manufacturing method thereof
EP2919272B1 (en) * 2014-03-12 2020-05-27 Nxp B.V. Bipolar transistor device and method of fabrication
US10553633B2 (en) * 2014-05-30 2020-02-04 Klaus Y.J. Hsu Phototransistor with body-strapped base
US20160380067A1 (en) * 2015-06-23 2016-12-29 Globalfoundries Inc. Shaped terminals for a bipolar junction transistor
US9935186B1 (en) * 2016-09-21 2018-04-03 International Business Machines Corporation Method of manufacturing SOI lateral Si-emitter SiGe base HBT
FR3079965A1 (en) * 2018-04-06 2019-10-11 Stmicroelectronics (Rousset) Sas INTEGRATED CIRCUIT WITH COMMON BASED TRANSISTORS

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020029256A1 (en) * 1999-06-11 2002-03-07 Zintel William M. XML-based template language for devices and services
US20030120840A1 (en) * 2001-12-10 2003-06-26 Masaaki Isozu Data processing system, information processing apparatus, data processing method, and computer program

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06101470B2 (en) * 1984-02-03 1994-12-12 アドバンスト・マイクロ・ディバイシズ・インコ−ポレ−テッド Integrated circuit device with active elements consisting of bipolar transistors formed in slots
US4984048A (en) * 1987-07-10 1991-01-08 Hitachi, Ltd. Semiconductor device with buried side contact
US5227660A (en) * 1987-11-09 1993-07-13 Hitachi, Ltd. Semiconductor device
DE4102888A1 (en) * 1990-01-31 1991-08-01 Toshiba Kawasaki Kk METHOD FOR PRODUCING A MINIATURIZED HETEROUISING BIPOLAR TRANSISTOR
JPH05304153A (en) * 1992-04-28 1993-11-16 Hitachi Ltd Semiconductor device
JP4371521B2 (en) * 2000-03-06 2009-11-25 株式会社東芝 Power semiconductor device and manufacturing method thereof
US6656811B2 (en) * 2001-12-21 2003-12-02 Texas Instruments Incorporated Carbide emitter mask etch stop

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020029256A1 (en) * 1999-06-11 2002-03-07 Zintel William M. XML-based template language for devices and services
US20030120840A1 (en) * 2001-12-10 2003-06-26 Masaaki Isozu Data processing system, information processing apparatus, data processing method, and computer program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9967330B2 (en) * 2015-12-01 2018-05-08 Dell Products L.P. Virtual resource bank for localized and self determined allocation of resources
CN105716654A (en) * 2016-02-02 2016-06-29 江苏拓米洛环境试验设备有限公司 Intelligent novel programmable multifunctional humiture recorder

Also Published As

Publication number Publication date
US7180159B2 (en) 2007-02-20
US20060011943A1 (en) 2006-01-19

Similar Documents

Publication Publication Date Title
US9747788B2 (en) Methods and systems for operating a logical sensor network
US20130201029A1 (en) Methods and systems for operating a logical sensor network
JP4605703B2 (en) Power-saving mobility-compatible system and power-saving method
Wang et al. Wireless sensor networks-an introduction
US6347095B1 (en) System, devices and methods for use in proximity-based networking
ES2551099T3 (en) Position Tracking System
EP3192288B1 (en) Method and system for tracking location of an electronic device
US11503434B2 (en) Method and system for connectivity between a personal area network and an internet protocol network via low power wide area network wearable electronic device
KR100772928B1 (en) System and method for providing context-aware service
KR101364875B1 (en) System and method for operating a network of sensors
JP2020520581A (en) Sticker location determining device and related methods
KR100769824B1 (en) System and method for position information management of electronic armlet attached rfid sensor or sensor node
JP2010524094A (en) Dynamically configurable wireless sensor network
JP6440184B2 (en) Watch system, watch method, portable terminal, management device and control program thereof
Park et al. Self-organizing wearable device platform for assisting and reminding humans in real time
JP2008077421A (en) Context information acquisition system
JP2003123177A (en) Information processor, sensor network system, information processing program, and computer-readable recording medium with information processing program recorded thereon
JP2004362267A (en) Mobile body, proxy device, and sensor information communication method
JP2011258109A (en) Sensing method and sensor network system
JP7247385B2 (en) Communication system, semiconductor device, electronic equipment and communication method
JP2003087415A (en) Mobile management system, mobile management server, mobile management method and mobile management program
JP2006352518A (en) Communication system
JP2020528183A (en) System and method for registering the location of lost items
AU2021221490A1 (en) A method, system and portable device for enabling reporting of user locations
Lee et al. A ubiquitous computing network framework for assisting people in urban areas

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION