This application is related to Philippines Patent Application No. 1/2013/000136, titled “A Domain Agnostic Method and System for the Capture, Storage, and Analysis of Sensor Readings,” by Joseph L. Gallo et al. (Attorney Docket No. 13-027-00-PH), filed May 23, 2013, which application is incorporated herein by reference in its entirety and claims the benefit and priority thereto.
As computing technology has advanced, it has proliferated to an increasing number of communicatively connected devices in different areas. Consequently, an increasing amount of data may be being gathered from the increasing number of devices in the different areas. Unfortunately, most of the data that is currently gathered is used for advertising and marketing to end users, which comes at the expense of public health and security.
Provided herein are systems and methods for accessing an information associated with a first sensor of a plurality of sensors, wherein the information associated with the first sensor includes metadata and a sensor reading; accessing an information associated with a second sensor of the plurality of sensors, wherein the information associated with the second sensor includes metadata and a sensor reading; and determining a path of a hazardous condition using the information from the first sensor and the second sensor.
Reference will now be made in detail to various embodiments, examples of which are graphically illustrated in the accompanying drawings. While the claimed embodiments will be described in conjunction with various embodiments, it is appreciated that these various embodiments are not intended to limit the scope of the embodiments. On the contrary, the claimed embodiments are intended to cover alternatives, modifications, and equivalents, which may be included within the scope of the appended Claims. Furthermore, in the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the claimed embodiments. However, it will be evident to one of ordinary skill in the art that the claimed embodiments may be practiced without these specific details. In other instances, well known methods, procedures, components, and circuits are not described in detail so that aspects of the claimed embodiments are not obscured.
Some portions of the detailed descriptions that follow are presented in terms of procedures, logic blocks, processing, and other symbolic representations of operations on data bits within a computer memory. These descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. In the present application, a procedure, logic block, process, or the like, is conceived to be a self-consistent sequence of operations or steps or instructions leading to a desired result. The operations or steps are those utilizing physical manipulations of physical quantities. Usually, although not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated in a computer system or computing device. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as transactions, bits, values, elements, symbols, characters, samples, pixels, or the like.
It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussions, it is appreciated that terms such as “receiving,” “converting,” “transmitting,” “storing,” “determining,” “sending,” “querying,” “providing,” “accessing,” “associating,” “configuring,” “initiating,” “customizing,” “mapping,” “modifying,” “analyzing,” “displaying,” or the like, refer to actions and processes of a computer system or similar electronic computing device or processor. The computer system or similar electronic computing device manipulates and transforms data represented as physical (electronic) quantities within the computer system memories, registers or other such information storage, transmission or display devices.
It is appreciated that present systems and methods can be implemented in a variety of architectures and configurations. For example, present systems and methods can be implemented as part of a distributed computing environment, a cloud computing environment, a client-server environment, etc. Embodiments described herein may be discussed in the general context of computer-executable instructions residing on some form of computer-readable storage medium, such as program modules, executed by one or more computers, computing devices, or other devices. By way of example, and not limitation, computer-readable storage media may comprise computer storage media and communication media. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform particular tasks or implement particular abstract data types. The functionality of the program modules may be combined or distributed as desired in various embodiments.
Computer storage media can include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data, that are non-transitory. Computer storage media can include, but is not limited to, random access memory (RAM), read only memory (ROM), electrically erasable programmable ROM (EEPROM), flash memory, or other memory technology, compact disk ROM (CD-ROM), digital versatile disks (DVDs) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and that can be accessed to retrieve that information.
Communication media can embody computer-executable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media can include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), infrared and other wireless media. Combinations of any of the above can also be included within the scope of computer-readable storage media.
As computing technology has advanced, it has proliferated to an increasing number of communicatively connected devices in different areas. Consequently, an increasing amount of data may be being gathered from the increasing number of devices in the different areas. Unfortunately, most of the data that is currently gathered is used for advertising and marketing to end users, which comes at the expense of public health and security. Accordingly, there is a need to gather and process data from communicatively coupled devices in different areas to provide public health and safety measures.
Embodiments provide methods and systems for monitoring and managing a variety of network (e.g., internet protocol (IP)) connected sensors. Embodiments are configured to allow monitoring (e.g., continuous real-time monitoring, sporadic monitoring, scheduled monitoring, etc.) of sensors and associated sensor readings or data (e.g., ambient sensor readings). For example, gamma radiation levels may be monitored in the context of background radiation levels. Accordingly, a significant change in the background gamma radiation levels may indicate a presence of hazardous radioactive material, bomb, etc. As a result, appropriate actions may be taken to avert a possible security breach, terrorist activity, etc. Embodiments may support any number of sensors and may be scaled upwards or downwards as desired. Embodiments thus provide a universal sensor monitoring, managing, notifying, and/or alerting platform.
Embodiments provide analytics, archiving, status (e.g., real time status, sporadic monitoring, scheduled monitoring, etc.), graphical user interface (GUI) based monitoring and management, and messaging related to any sensor-based detection that may pose a risk to the community. Embodiments may provide a solution for monitoring, managing, notifying, and/or alerting related to certain sensor detection, e.g., gamma radiation detection, air quality detection, water and level quality detection, fire detection, flood detection, biological and chemical detection, air pressure detection, particle count detection, movement and vibration detection, etc. For example, the embodiments may provide a solution for monitoring and tracking movement of hazardous materials or conditions, thereby allowing initiation of public responses and defense mechanisms. Embodiments may allow previously installed devices (e.g., surveillance cameras, smartphones, vibration detection sensors, CO2 detection sensors, particle detection sensors, air pressure detection sensors, infrared detection sensors, etc.) to be used as sensors to detect hazardous conditions (e.g., radioactive, biological, chemical, etc.). Embodiments may be used in a variety of environments, including public places or venues (e.g., airports, bus terminals, stadiums, concert halls, tourist attractions, public transit systems, etc.), organizations (e.g., businesses, hospitals, freight yards, government offices, defense establishments, nuclear establishments, laboratories, etc.), etc. For example, embodiments may be used to track sensitive material (e.g., nuclear, biological, chemical, etc.) to ensure that it is not released to the public and prevent introduction of the material into public areas. Embodiments may thus be further able to facilitate a rapid response to terrorist threats (e.g., a dirty bomb). It is appreciated that the embodiments are described herein within the context of radiation detection and gamma ray detection for merely illustrative purposes and are not intended to limit the scope.
A sensor of the sensors 110 may generate a reading associated therewith (e.g., gamma radiation, vibration, etc.) associated with a certain condition (e.g., presence of a hazardous condition above a given threshold or within a certain range). and a sensor of the sensors 110 may transmit that information to the sensor-based detection system 120 for analysis. The sensor-based detection system 120 may use the received information to determine whether a reading from a sensor is a calibration reading; a normal or hazard-free reading from a sensor with respect to one or more hazards; an elevated reading from a sensor with respect to the one or more hazards; a potential warning reading from a sensor with respect to the one or more hazards; and a warning from a sensor with respect to the one or more hazards. The sensor-based detection system 120 may compare the received information to one or more threshold values (e.g., historical values, user-selected values, etc.) in order to determine the foregoing. In response to the determination, the sensor-based detection system 120 may transmit that information to the output system 130 for further analysis (e.g., user-based analysis) and/or action (e.g., e-mailing the appropriate personnel; sounding an alarm; tweeting a notification via Twitter™; notifying the police department; notifying the Department of Homeland Security; etc.).
The sensors 110 may be any of a variety of sensors including thermal sensors (e.g., temperature, heat, etc.), electromagnetic sensors (e.g., metal detectors, light sensors, particle sensors, Geiger counter, charge-coupled device (CCD), etc.), mechanical sensors (e.g., tachometer, odometer, etc.), complementary metal-oxide-semiconductor (CMOS), biological/chemical (e.g., toxins, nutrients, etc.), etc. The sensors 110 may further be any of a variety of sensors or a combination thereof including, but not limited to, acoustic, sound, vibration, automotive/transportation, chemical, electrical, magnetic, radio, environmental, weather, moisture, humidity, flow, fluid velocity, ionizing, atomic, subatomic, navigational, position, angle, displacement, distance, speed, acceleration, optical, light imaging, photon, pressure, force, density, level, thermal, heat, temperature, proximity, presence, radiation, Geiger counter, crystal-based portal sensors, biochemical, pressure, air quality, water quality, fire, flood, intrusion detection, motion detection, particle count, water level, surveillance cameras, etc. The sensors 110 may include video cameras (e.g., internet protocol (IP) video cameras) or purpose-built sensors.
The sensors 110 may be fixed in location (e.g., on a building or some other infrastructure, in a room, etc.), semi-fixed in location (e.g., on a cell tower on wheels, affixed to another semi-portable object, etc.), or mobile (e.g., part of a mobile device, smartphone, etc.). The sensors 110 may provide data to the sensor-based detection system 120 according to the type of the sensors 110. For example, sensors 110 may be CMOS sensors configured for gamma radiation detection. Gamma radiation may thus illuminate a pixel, which is converted into an electrical signal and sent to the sensor-based detection system 120.
The sensor-based detection system 120 may be configured to receive data and manage sensors 110. The sensor-based detection system 120 may be configured to assist users in monitoring and tracking sensor readings or levels at one or more locations. The sensor-based detection system 120 may have various components that allow for easy deployment of new sensors within a location (e.g., by an administrator) and allow for monitoring of the sensors to detect events based on user preferences, heuristics, etc. The events may be further analyzed on the output system 130 or used by the output system 130 to generate sensor-based notifications (e.g., based on sensor readings above a threshold for one sensor, based on the sensor readings of two sensors within a certain proximity being above a threshold, etc.) in order for the appropriate personnel to take action. The sensor-based detection system 120 may receive data and manage any number of sensors, which may be located at geographically disparate locations. In some embodiments, the sensors 110 and components of a sensor-based detection system 120 may be distributed over multiple systems (e.g., and virtualized) and a large geographical area.
The sensor-based detection system 120 may track and store location information (e.g., board room B, floor 2, terminal A, etc.) and global positioning system (GPS) coordinates (e.g., latitude, longitude, etc.) for a sensor or group of sensors. The sensor-based detection system 120 may be configured to monitor sensors and track sensor values to determine whether a defined event has occurred (e.g., whether a detected radiation level satisfies a certain condition such as exceeding a certain radiation threshold or range, etc.). As described further herein, if a defined event has occurred, then the sensor-based detection system 120 may determine a route or path a hazardous condition (e.g., dangerous or contraband material) has taken around or within range of the sensors. For example, the path of travel of radioactive material relative to fixed sensors may be determined and displayed via a GUI. It is appreciated that the path of travel of radioactive material relative to mobile sensors (e.g., smartphones, etc.) or relative to a mixture of fixed and mobile sensors may similarly be determined and displayed via a GUI. It is appreciated that the analysis and/or the sensed values may be displayed in real-time or stored for later retrieval.
The sensor-based detection system 120 may include a directly connected output system (e.g., a directly connected display), or the sensor-based detection system 120 may utilize the output system 130 (e.g., a networked display), any of which may be operable for a GUI for monitoring and managing sensors 110. As described further herein, the GUI may be configured for indicating sensor readings, sensor status, sensor locations on a map, etc. The sensor-based detection system 120 may allow review of past sensor readings and movement of sensor detected material or conditions based on stop, play, pause, fast forward, and rewind functionality of stored sensor values. The sensor-based detection system 120 may also allow viewing of an image or video footage (e.g., still images or motion) corresponding to sensors that had sensor readings above a threshold (e.g., based on a predetermined value or based on ambient sensor readings). For example, a sensor may be selected in a GUI and video footage associated with an area within a sensor's range of detection may be displayed, thereby enabling a user to see an individual or person transporting hazardous material. According to some embodiments the footage may be displayed in response to a user selection or it may be displayed automatically in response to a certain event (e.g., sensor reading associated with a particular sensor or group of sensors satisfying a certain condition such as hazardous conditions above a given threshold or within a certain range).
In some embodiments, sensor readings of one or more sensors may be displayed on a graph or chart for easy viewing. A visual map-based display depicting sensors (e.g., sensor representations) may be displayed with the sensors coded (e.g., by color, shape, icon, blinking or flashing rate, etc.) according to the sensors' readings bucketed according to pre-defined hazard levels. For example, gray may be associated with a calibration reading from a sensor; green may be associated with a normal or hazard-free reading from a sensor with respect to one or more hazards; yellow may be associated with an elevated reading from a sensor with respect to the one or more hazards; orange may be associated with a potential warning reading from a sensor with respect to the one or more hazards; and red may be associated with a warning from a sensor with respect to the one or more hazards.
The sensor-based detection system 120 may determine sensor readings above a specified threshold (e.g., predetermined, dynamic, or ambient based) or based on heuristics, and the sensor readings may be displayed in the GUI. The sensor-based detection system 120 may allow a user (e.g., operator) to group multiple sensors together to create an event associated with multiple sensor readings (e.g., warnings or other highly valued sensor readings) from multiple sensors. For example, a code red event may be created when three sensors or more within twenty feet of one another and within the same physical space (e.g., same floor) have a sensor reading that is at least 40% above the historical values. In some embodiments, the sensor-based detection system 120 may automatically group sensors together based on geographical proximity of the sensors (e.g., sensors at Gates 11, 12, and 13 within Terminal 1 at Los Angeles International Airport [LAX] may be grouped together due to their proximity to each other), whereas sensors in different terminals may not be grouped because of their disparate locations. However, in certain circumstances sensors within the same airport may be grouped together in order to monitor events at the airport and not at a more granular level of terminals, gates, etc.
The sensor-based detection system 120 may send information to an output system 130 at any time, including upon the determination of an event created from the information collected from the sensors 110. The output system 130 may include any one or more output devices for processing the information from the sensor-based detection system 120 into a human-comprehendible form (e.g., text, graphic, video, audio, a tactile form such as vibration, etc.). The one or more output devices may include, but are not limited to, output devices selected from printers, plotters, displays, monitors, projectors, televisions, speakers, headphones, and radios. The output system 130 may further include, but is not limited to, one or more messaging systems or platforms selected from a database (e.g., messaging, SQL, or other database); short message service (SMS); multimedia messaging service (MMS); instant messaging services; Twitter™ available from Twitter, Inc. of San Francisco, Calif.; Extensible Markup Language (XML) based messaging service (e.g., for communication with a Fusion center); and JavaScript™ Object Notation (JSON) messaging service. For example, national information exchange model (NIEM) compliant messaging may be used to report chemical, biological, radiological, and nuclear defense (CBRN) suspicious activity reports (SARs) to report to government entities (e.g., local, state, or federal government).
The sensor-based detection system 120 may access or receive data from the sensors 110. The sensor-based detection system 120 may include a sensor management module 210, a sensor process module 220, a data warehouse module 230, a state management module 240, a visualization module 250, a messaging module 260, a location module 270, and a user management module 280.
In some embodiments, the sensor-based detection system 120 may be distributed over multiple servers (e.g., physical or virtual machines). For example, a domain server may execute the data warehouse module 230 and the visualization module 250, a location server may execute the sensor management module 210 and one or more instances of a sensor process module 220, and a messaging server may execute the messaging module 260. For example, multiple location servers may be located at respective sites having 100 sensors, and provide analytics to a single domain server, which provides a monitoring and management interface (e.g., GUI) and messaging services. The domain server may be centrally located while the location servers may be located proximate to the sensors for bandwidth purposes.
The sensor management module 210 may be configured to monitor and manage the sensors 110. The sensor management module 210 is configured to initiate one or more instances of sensor process module 220 for monitoring and managing the sensors 110. The sensor management module 210 is operable to configure a new sensor process (e.g., an instance of sensor process module 220) when a new sensor is installed. The sensor management module 210 may thus initiate execution of multiple instances of the sensor process module 220. In some embodiments, an instance of the sensor process module 220 is executed for one or more sensors. For example, if there are 50 sensors, 50 instances of sensor process module 220 are executed in order to configure the sensors. It is further appreciated that the sensor management module 210 may also be operable to configure an already existing sensor. For example, the sensor 110a may have been configured previously; however, the sensor management module 210 may reconfigure the sensor 110a based on the new configuration parameters. The sensor management module 210 may be configured as an aggregator and collector of data from the sensors 110 via sensor process module 220. Sensor management module 210 may be configured to send data received via instances of sensor process module 220 to a data warehouse module 230.
The sensor management module 210 further allows monitoring of one or more instances of the sensor process module 220 to determine whether an instance of the sensor process module 220 is running properly or not. In some embodiments, the sensor management module 210 is configured to determine the health of one or more of the sensors 110 including if a sensor has failed based on whether an anticipated or predicted value is received within a certain time period. The sensor management module 210 may further be configured to determine whether data is arriving on time and whether the data indicates that the sensor is functioning properly (e.g., healthy) or not. For example, a radiation sensor may be expected to provide a certain microsievert (μSv) value within a given time period. In some embodiments, the anticipated value may be received from an analytics engine that analyzes the sensor data. In some embodiments, the sensor management module 210 may be configured to receive an indicator of status from a sensor (e.g., an alive signal, an error signal, or an on/off signal). The health information may be used for management of the sensors 110 and the health information associated with the sensors may be stored in the data warehouse 230.
The sensor management module 210 may further access and examine the outputs from the sensors 100 based on a predictable rate of output. For example, an analytics process (e.g., performed by the sensor process module 220) associated with a sensor may produce a record every ten seconds and if a record is not received (e.g., within multiple 10 second periods of time), the sensor management module 210 may stop and restart the analytics process. In some embodiments, the record may be a flat file.
The sensor process module 220 may be configured to receive data (e.g., bulk or raw data) from the sensors 110. In some embodiments, the sensor process module 220 may form a record (e.g., a flat file) based on the data received from the sensors 100. The sensor process module 220 may perform analysis of the raw data (e.g., analyze frames of video to determine sensor readings). In some embodiments, the sensor process module 220 may then pass the records to the sensor management module 210.
The data warehouse module 230 is configured to receive data from sensor management module 210. The data warehouse module 230 may be configured for storing sensor readings and metadata associated with the sensors. Metadata for the sensors may include their respective geographical information (e.g., GPS coordinates, latitude, longitude, etc.), description of the sensor (e.g., Sensor 1 at Gate 1 of Terminal 1 at LAX, etc.). In some embodiments, the data warehouse module 230 may be configured to determine state changes based on monitoring (e.g., real time monitoring) of the state of a sensor and/or the state of the sensor over a time interval (e.g., 30 seconds, 1 minute, 1 hour, etc.). In some embodiments, the data warehouse module 230 is configured to generate a notification (e.g., when a sensor state has changed and is above a threshold or within a certain range; when a sensor reading satisfies a certain condition such as being below a threshold or within a certain range; etc.). The generated notification may be sent to visualization module 250 for display (e.g., to a user) on a directly connected display or a networked display (via output system 130). Changes in sensor state may thus be brought to the attention of a user (e.g., operator). It is appreciated that the threshold values may be one or more historical values, safe readings, operator selected values, etc.
In some embodiments, the data warehouse module 230 may be implemented in a substantially similar manner as described in Philippines Patent Application No. 1-2013-000136 titled, “A Domain Agnostic Method and System for the Capture, Storage, and Analysis of Sensor Reading,” by Ferdinand E. K. de Antoni (Attorney Docket No. 13-027-00-PH), which is incorporated herein by reference in its entirety, and U.S. patent application Ser. No. 14/284,009, titled “User Query and Gauge-Reading Relationships,” by Ferdinand E. K. de Antoni (Attorney Docket No. 13-027-00-US), which is incorporated herein by reference in its entirety.
The state management module 240 may read data from the data warehouse module 230 and/or from the sensor management module 210 (e.g., data that was written by sensor management module 210) and determine whether a state change has occurred. The state change may be determined based on a formula to determine whether there has been a change since a previous record in time for an associated sensor and may take into account ambient sensor readings. If there is a change in state, a notification may be triggered. It is appreciated that state may also be a range of values. One or more notifications may be assembled into an event (e.g., a data structure comprising the one or more notifications). The event may then be accessed by or sent to a visualization module 250 for visualization of the event or the components thereof.
The visualization module 250 may be configured for use in monitoring sensors in a location. The visualization module 250 may provide the GUI or the information therefor for monitoring and managing one or more of the deployed sensors. In some embodiments, the visualization module 250 is configured to provide a tree filter to view the sensors in a hierarchical manner, as well as a map view, thereby allowing monitoring of one or more sensors in a geographical context. The visualization module 250 may further allow creation of an event case file to capture sensor notifications at any point in time and escalate the sensor notifications to appropriate authorities for further analysis (e.g., via a messaging system). The visualization module 250 may display a path of travel or route of hazardous materials or conditions based on sensor readings and the associated sensor locations. The visualization module 250 may further be used to zoom in and zoom out on a group of sensors (e.g., sensors within a terminal at an airport, etc.). As such, the information may be displayed as granular as desired by the operator. Visualization module 250 may also be used and render information in response to a user manipulation. For example, in response to a user selection of a sensor (e.g., sensor 110a) the sensor readings associated with the sensor may be displayed. In another example, a video feed associated with the sensor may also be displayed (e.g., simultaneously).
The messaging module 260 may be configured to send messages to other systems or messaging services including, but not limited to, a database (e.g., messaging, SQL, or other database); short message service (SMS); multimedia messaging service (MMS); instant messaging services; Twitter™ available from Twitter, Inc. of San Francisco, Calif.; Extensible Markup Language (XML) based messaging service (e.g., for communication with a Fusion center); JavaScript™ Object Notation (JSON) messaging service; etc. In one example, national information exchange model (NIEM) compliant messaging may be used to report chemical, biological, radiological, and nuclear defense (CBRN) suspicious activity reports (SARs) to report to government entities (e.g., local, state, or federal government). In some embodiments, the messaging module 260 may send messages based on data received from the sensor management module 210. It is appreciated that the messages may be formatted to comply with the requirements/standards of the messaging service used. For example, as described above a message may be formed into the NIEM format in order to repot a CBRN event.
The location module 270 may be configured for mapping and spatial analysis (e.g., triangulation) in order to represent (e.g., in a human-comprehendible form) one or more hazardous conditions among sensors in a location and/or one or more paths corresponding to the one or more hazardous conditions. For example, location module 270 may be configured to facilitate display of an icon for a hazardous condition among sensor representations (e.g., icons) for sensors at one or more gates of an airport terminal, as well as the path corresponding the hazardous condition. In some embodiments, the sensor management module 210 may be configured to store geographical data associated with a sensor in a data store (not shown) associated with location module 270. It is appreciated that the location module 270 may be used to provide mapping information associated with the sensor location such that the location of the sensor may overlay the map (e.g., location of the sensor may overlay the map of LAX, etc.). It is further appreciated that the location module 270 may be used to provide information associated with a hazardous condition (e.g., current location, path corresponding to the hazardous condition, etc.). The location module 270 may be configured to output information to the visualization module 250 where information related to the sensors and the hazardous condition may be rendered being rendered.
The user management module 280 may be configured for user management and storage of user identifiers of operators and administrators. The user management portion may be integrated with an existing user management systems (e.g., OpenLDAP or Active Director) thereby enabling use of existing user accounts to operate the sensor-based detection system 120.
Adverting to
A sensor of the sensors 110 may have an associated detection range, one of which is graphically illustrated in
The sensors 110 of environment 300 may be communicatively connected to the sensor-based detection system 120 through the first network 142 as shown in
Adverting to
Adverting to
Each of the sensors 110a, 110b, 110d, and 110e may have an associated detection range, graphically illustrated in
Adverting to
The detection ranges 310a, 310b, 310d, and 310e respectively for the sensors 110a, 110b, 110d, and 110e may overlap in certain locations. However, the second position of the hazardous condition 315 may be located only within one or more of the foregoing detection ranges as depicted by the heavy concentric lines of the detection ranges 310d and 310e. As shown in
In the first position of the hazardous condition 315 shown in
Adverting to
The detection ranges 310d, 310e, 310f, and 310h respectively for the sensors 110d, 110e, 110f, and 110h may overlap in certain locations. However, the third position of the hazardous condition 315 may be located only within one or more of the foregoing detection ranges as depicted by the heavy concentric lines of the detection ranges 310e. As shown in
In the third position of the hazardous condition 315 shown in
Adverting to
Adverting to
A plurality of sensor-based notifications may occur when a hazardous condition 315 is located within the detection ranges of a plurality of sensors. Each of the sensors 110j and 110m may have an associated detection range, graphically illustrated in
Adverting to
The detection ranges 310j, 310l, 310m, and 310n respectively for the sensors 110j, 110l, 110m, and 110n may overlap in certain locations. However, the second position of the hazardous condition 315 may be located only within one or more of the foregoing detection ranges as depicted by the heavy concentric lines of the detection ranges 310l and 310n. As shown in
In the first position of the hazardous condition 315 shown in
Adverting to
It is appreciated that the sensors 110a-110i of
The sensor-based detection system 120 may include a directly connected output system (e.g., a directly connected display), or the sensor-based detection system 120 may utilize the output system 130 (e.g., a networked display), any of which may be operable to render a GUI for monitoring and/or managing the sensors 110. As described herein, the visualization module 250 may provide the GUI or the information therefor. Such a GUI is shown in
Adverting to
With respect to the map pane 510, the map pane 510 may include a map 512 generated by a geographical information system (GIS) on which a graphical representation of one or more of the sensors 110 may be present.
The map 512 may be a real-time or live map, or the map 512 may be an historical map. A live map is shown in
The map 512 may include different zoom levels including different levels of detail. The zoom level may be adjusted using a zoom level control. Such a zoom level control is shown as zoom level control 514 in
A graphical representation of the one or more of the sensors 110 is shown in
When the sensor representation 516 represents one sensor, the sensor representation 516 may indicate the sensor reading (e.g., normal, elevated, potential warning, and warning readings with respect to one or more hazards) for the one sensor. When the sensor representation 516 represents a cluster of two or more sensors, the sensor representation 516 may indicate the highest sensor reading for the cluster. As such, because at least one sensor represented by the sensor representation 516 in
The map 512 may include a sensor filter 518 providing a visual indicator useful for identifying sensor readings (e.g., normal, elevated, potential warning, and warning readings with respect to one or more hazards) for one or more sensors at a glance. The sensor filter 518 may also provide a means for selecting one or more sensors by like sensor readings (e.g., all sensors with warning readings with respect to one or more hazards may be selected). The sensor filter 518 may correspond to one or more sensor representations such as the sensor representation 516. As such, the sensor filter 518 may correspond to one sensor, or the sensor filter 518 may correspond to a cluster of two or more sensors at a larger scale (e.g., a building), which may be defined by zoom level manipulation, active user selection, or the like, as described herein. The sensor filter 518 depicted in
The filter sensor 518 of
With respect to the location pane 520, the location pane 520 may include, but is not limited to, a first location sub-pane 520a and a second location sub-pane 520b, wherein the first location sub-pane 520a includes available locations for monitoring and/or managing sensors, and wherein the second location sub-pane 520b includes saved locations (e.g., favorite locations) for monitoring and/or managing sensors. Additional sub-panes may include additional groupings of locations. The first and second location sub-panes may include indicators 522 (e.g., 522a-522g). It is appreciated that the indicators 522 change in response to zoom level manipulation, active user selection, or the like, as described herein. As shown in
In some embodiments, the indicators 522 may be arranged in a hierarchical relationship in the location pane 520. As shown, indicator 522a, which is titled “LAX Terminal 1,” is the indicator for Terminal 1 of LAX; indicator 522b, which is titled “Gate 11,” is the indicator for Gate 11 of Terminal 1 of LAX; and indicators 522c, 522d, and 522e, which are titled, “Sensor 1,” “Sensor 2,” and “Sensor 3,” respectively, are the indicators for Sensors 1-3 of Gate 11 of Terminal 1 of LAX. As such, the indicator 522a (“LAX Terminal 1”) is a parent indicator of the indicator 522b (“Gate 11”), and the indicator 522b is a parent indicator of the indicators 522c (“Sensor 1”), 522d (“Sensor 2”), and 522e (“Sensor 3”). The indicators 522c (“Sensor 1”), 522d (“Sensor 2”), and 522e (“Sensor 3”) may also be described as children indicators of the indicator 522b (“Gate 11”), and the indicator 522b may be described as a child indicator of the indicator 522a (“LAX Terminal 1”). It is appreciated that an indicator for LAX (not shown as scrolled out of view) is a parent indicator of the indicator 522a (“LAX Terminal 1”).
When an indicator represents one sensor, the indicator may indicate the sensor reading (e.g., normal, elevated, potential warning, and warning readings with respect to one or more hazards) for the one sensor. For example, indicator 522e (“Sensor 3”) may indicate a warning from a sensor with respect to one or more hazards because indicator 522e indicates only one sensor, optionally as further indicated by filter sensor 518a. When an indicator represents a cluster of two or more sensors, the indicator may indicate the highest sensor reading for the cluster. For example, indicator 522b (“Gate 11”) indicates a warning from three sensors (e.g., the three sensors represented by indicators 522c-522e) with respect to one or more hazards. Likewise, indicator 522a (“LAX Terminal 1”) indicates a warning from a plurality of sensors (e.g., the sensors represented by indicators hierarchically below indicator 522a) with respect to one or more hazards. Alternatively, when an indicator represents a cluster of two or more sensors, the indicator may indicate the average sensor reading for the cluster.
The indicators 522 may be associated with a different sensor reading (e.g., normal, elevated, potential warning, and warning readings with respect to one or more hazards) in accordance with the hierarchical relationship. For example, the indicator 522a of
Adverting to
The sensor filter 518 may automatically adjust to match the zoom level of the map 512 and/or the user selection for the clusters in the map 512. While the sensor filter 518 depicted in
While the location pane 520 may automatically adjust to match the zoom level of the map 512 and/or the user selection for the clusters in the map 512, the location pane 520 may be operated individually as shown between
Adverting to
The sensor filter 518 may automatically adjust to match the zoom level of the map 512 and/or the user selection for the sensors in the map 512. While the sensor filter 518 depicted in
Adverting to
While the hazardous condition 515 of
Adverting to
Live or historical sensor readings and metadata corresponding to any sensor may be displayed using any of a number of user selections including, but not limited to, selecting (e.g., clicking) an indicator (e.g., indicator 522e of
Adverting to
The GUI may be operable to include a playback control 640 for historical sensor readings and metadata, which may be useful for reviewing current or past events (e.g., one or more sensor readings satisfying a certain condition such as a hazardous condition above a given threshold or within a certain range) from its beginning (e.g., t0) or any other desired time (e.g., t1, t2, t3, etc.) to real time. As shown, playback control 640 may include, but is not limited to, a discrete rewind button 640a for rewinding by a discrete unit of time, one or more sensor readings satisfying a certain condition (e.g., presence of a hazardous condition above a given threshold or within a certain range), etc., when clicked; a continuous rewind button 640b for continuously rewinding through an event when depressed; a stop button 640c for stopping the action of any one or more other buttons; a play button 640d for playing an event; a continuous fast-forward button 640b for continuously fast-forwarding through an event when depressed; and a discrete fast-forward button 640f for fast-forwarding by a discrete unit of time, one or more sensor readings satisfying a certain condition (e.g., presence of a hazardous condition above a given threshold or within a certain range), etc., when clicked. It is appreciated that the foregoing is used for an expository purpose, and the playback control 640 need not include the foregoing or be limited to the foregoing.
Adverting to
Adverting to
Adverting to
Playback of the event shown across
Adverting to
As shown in
As shown in
The GUI may be operable to include a graph window 850 (discussed in
Adverting to
Adverting to
Adverting to
Adverting to
Adverting to
Adverting to
Adverting to
Referring now to
Additionally, in various embodiments, computing system environment 1500 may also have other features/functionality. For example, computing system environment 1500 may also include additional storage (removable and/or non-removable) including, but not limited to, magnetic or optical disks or tape. Such additional storage is graphically illustrated by removable storage 1508 and non-removable storage 1510. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer readable medium 1504, removable storage 1508 and non-removable storage 1510 are all examples of computer storage media. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, expandable memory (e.g., USB sticks, compact flash cards, SD cards), CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by computing system environment 1500. Any such computer storage media may be part of computing system environment 1500.
In some embodiments, computing system environment 1500 may also contain communications connection(s) 1512 that allow it to communicate with other devices. Communications connection(s) 1512 is an example of communication media. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. The term computer readable media as used herein includes both storage media and communication media.
Communications connection(s) 1512 may allow computing system environment 1500 to communicate over various networks types including, but not limited to, fiber channel, small computer system interface (SCSI), Bluetooth, Ethernet, Wi-Fi, Infrared Data Association (IrDA), Local area networks (LAN), Wireless Local area networks (WLAN), wide area networks (WAN) such as the internet, serial, and universal serial bus (USB). It is appreciated the various network types that communication connection(s) 1512 connect to may run a plurality of network protocols including, but not limited to, transmission control protocol (TCP), user datagram protocol (UDP), internet protocol (IP), real-time transport protocol (RTP), real-time transport control protocol (RTCP), file transfer protocol (FTP), and hypertext transfer protocol (HTTP).
In further embodiments, computing system environment 1500 may also have input device(s) 1514 such as keyboard, mouse, a terminal or terminal emulator (either connected or remotely accessible via telnet, SSH, http, SSL, etc.), pen, voice input device, touch input device, remote control, etc. Output device(s) 1516 such as a display, a terminal or terminal emulator (either connected or remotely accessible via telnet, SSH, http, SSL, etc.), speakers, light emitting diodes (LEDs), etc. may also be included.
In some embodiments, computer readable storage medium 1504 includes a hierarchy network assembler 1522, a traffic flow module 1526, a crosslink communication module 1528, and an uplink/downlink communication module 1530. The hierarchy network assembler module 1522 is operable to form a network of hierarchical structure. The traffic flow module 1526 may be used to direct the traffic flow (e.g., forwarding, blocking, etc.). The crosslink communication module 1528 operates to generate, send and receive crosslink messages to other devices within the same domain. The uplink/downlink communication module 1530 is operable to generate, send and receive uplink/downlink messages between devices having a parent/child domain relationship
It is appreciated that implementations according to some embodiments are described with respect to a computer system are merely examples and not intended to limit the scope of the concepts presented herein. For example, embodiments may be implemented on devices such as switches and routers, which may contain application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), etc. It is appreciated that these devices may include a computer readable medium for storing instructions for implementing methods according to flow diagrams 900, 1000, 1100, 1200, 1300, and 1400.
Referring now to
Bus 1612 allows data communication between central processor 1614 and system memory 1617, which may include read-only memory (ROM) or flash memory (neither shown), and random access memory (RAM) (not shown), as previously noted. The RAM is generally the main memory into which the operating system and application programs are loaded. The ROM or flash memory can contain, among other code, the Basic Input-Output system (BIOS) which controls basic hardware operation such as the interaction with peripheral components. Applications resident with computer system 1610 are generally stored on and accessed via a computer readable medium, such as a hard disk drive (e.g., fixed disk 1644), an optical drive (e.g., optical drive 1640), a floppy disk unit 1637, or other storage medium. Additionally, applications can be in the form of electronic signals modulated in accordance with the application and data communication technology when accessed via network modem 1647 or interface 1648.
Storage interface 1634, as with the other storage interfaces of computer system 1610, can connect to a standard computer readable medium for storage and/or retrieval of information, such as a fixed disk drive 1644. Fixed disk drive 1644 may be a part of computer system 1610 or may be separate and accessed through other interface systems. Network interface 1648 may provide multiple connections to other devices. Furthermore, modem 1647 may provide a direct connection to a remote server via a telephone link or to the Internet via an internet service provider (ISP). Network interface 1648 may provide one or more connection to a data network, which may include any number of networked devices. It is appreciated that the connections via the network interface 1648 may be via a direct connection to a remote server via a direct network link to the Internet via a POP (point of presence). Network interface 1648 may provide such connection using wireless techniques, including digital cellular telephone connection, Cellular Digital Packet Data (CDPD) connection, digital satellite data connection or the like.
Many other devices or subsystems (not shown) may be connected in a similar manner (e.g., document scanners, digital cameras and so on). Conversely, all of the devices shown in
Moreover, regarding the signals described herein, those skilled in the art will recognize that a signal can be directly transmitted from a first block to a second block, or a signal can be modified (e.g., amplified, attenuated, delayed, latched, buffered, inverted, filtered, or otherwise modified) between the blocks. Although the signals of the above described embodiment are characterized as transmitted from one block to the next, other embodiments may include modified signals in place of such directly transmitted signals as long as the informational and/or functional aspect of the signal is transmitted between blocks. To some extent, a signal input at a second block can be conceptualized as a second signal derived from a first signal output from a first block due to physical limitations of the circuitry involved (e.g., there will inevitably be some attenuation and delay). Therefore, as used herein, a second signal derived from a first signal includes the first signal or any modifications to the first signal, whether due to circuit limitations or due to passage through other circuit elements which do not change the informational and/or final functional aspect of the first signal.
As such, provided herein is a method comprising collecting sensor readings from two or more sensors of a plurality of sensors deployed in an environment; storing collected sensor readings in a data structure with metadata corresponding to the plurality of sensors; and determining a path of a hazardous condition about the two or more sensors from the collected sensor readings and the metadata. In some embodiments, the plurality of sensors deployed in the environment are fixed, semi-fixed, mobile, or a combination thereof. In some embodiments, the metadata comprises location-based information for the plurality of sensors. In some embodiments, determining the path of the hazardous condition comprises triangulation of the collected sensor readings. In some embodiments, the triangulation comprises weighting sensor readings by strength, proximity of the hazard, or both. In some embodiments, determining the path of the hazardous condition comprises determining the path about two or more individual sensors in a location of the environment or two or more groups of sensors in different locations of the environment. In some embodiments, the method further comprises processing the path into a human-comprehendible form. In some embodiments, the human-comprehendible is selected from a text-based form, a graphic-based form, a video form, an audio form, and a tactile form. In some embodiments, the method further comprises archiving the path of the hazardous condition for later retrieval.
Also provided herein is a method comprising collecting sensor readings from two or more sensors of a plurality of sensors deployed in an environment; storing collected sensor readings in a data structure; and determining a path of a hazardous condition about the two or more sensors from the collected sensor readings. In some embodiments, the plurality of sensors deployed in the environment are fixed, semi-fixed, mobile, or a combination thereof. In some embodiments, determining the path of the hazardous condition comprises triangulation of weighted sensor readings weighted by strength, proximity of the hazard, or both. In some embodiments, determining the path of the hazardous condition comprises determining the path about two or more individual sensors in a location of the environment or two or more groups of sensors in different locations of the environment. In some embodiments, the method further comprises processing the path into a human-comprehendible form selected from a text-based form, a graphic-based form, a video form, an audio form, and a tactile form. In some embodiments, the method further comprises archiving the path of the hazardous condition for later retrieval.
Also provided herein is a computer-readable storage medium having stored therein, computer executable instructions that, if executed by a device, cause the device to perform a method comprising collecting sensor readings from two or more sensors of a plurality of sensors deployed in an environment; storing collected sensor readings in a data structure with metadata corresponding to locations of the two or more sensors; and determining a path of a hazardous condition about the two or more sensors from the collected sensor readings and the metadata. In some embodiments, determining the path of the hazardous condition comprises triangulation of weighted sensor readings weighted by strength, proximity of the hazard, or both. In some embodiments, determining the path of the hazardous condition comprises determining the path about two or more individual sensors in a location of the environment or two or more groups of sensors in different locations of the environment. In some embodiments, the method further comprises processing the path into a human-comprehendible form selected from a text-based form, a graphic-based form, a video form, an audio form, and a tactile form. In some embodiments, the method further comprises archiving the path of the hazardous condition for later retrieval.
Also provided herein is a method comprising accessing an information associated with a first sensor of a plurality of sensors, wherein the information associated with the first sensor includes metadata and a sensor reading; accessing an information associated with a second sensor of the plurality of sensors, wherein the information associated with the second sensor includes metadata and a sensor reading; and determining a path of a hazardous condition using the information from the first sensor and the second sensor. In some embodiments, a sensor of the plurality of sensors is selected from a group consisting of fixed sensors, semi-fixed sensors, and mobile sensors. In some embodiments, the metadata comprises location-based information of a sensor. In some embodiments, the determining comprises triangulating to locate the hazardous condition using sensor readings of the plurality of sensors. In some embodiments, the triangulation further comprises weighting sensor readings respective to strength and sensitivity. In some embodiments, determining the path of the hazardous condition is associated with a path between a group of sensors of the plurality of sensors. In some embodiments, further comprising rendering information associated with the path of the hazardous condition. In some embodiments, the rendition is selected from a group consisting of a text-based form, a graphic-based form, a video form, an audio form, and a tactile form. In some embodiments, the method further comprises storing the path of the hazardous condition.
Also provided herein is a method comprising receiving information associated with a plurality of sensors, wherein the information comprises metadata and sensor readings; determining whether a hazardous condition is present within a vicinity of the plurality of sensors, wherein the determining of whether the hazardous condition is present is based on the received information; and in response to determining that the hazardous condition is present, determining a path of the hazardous condition based on the received information. In some embodiments, the plurality of sensors deployed in the environment is selected from a group consisting of fixed sensors, semi-fixed sensors, mobile sensors, and combinations thereof. In some embodiments, determining the path of the hazardous condition comprises triangulation of weighted sensor readings weighted by strength and sensitivity. In some embodiments, determining the path of the hazardous condition comprises determining the path about two or more individual sensors in a location of the environment or two or more groups of sensors in different locations of the environment. In some embodiments, the method further comprises processing the path into a human-comprehendible form selected from a group consisting of a text-based form, a graphic-based form, a video form, an audio form, and a tactile form. In some embodiments, the method further comprises archiving the path of the hazardous condition for later retrieval.
Also provided herein is a computer-readable storage medium having stored therein, computer executable instructions that, if executed by a device, cause the device to perform a method comprising accessing an information associated with a first sensor of a plurality of sensors, wherein the information associated with the first sensor includes metadata and a sensor reading; accessing an information associated with a second sensor of the plurality of sensors, wherein the information associated with the second sensor includes metadata and a sensor reading; and determining a path of a hazardous condition using the information from the first sensor and the second sensor. In some embodiments, the determining comprises triangulating to locate the hazardous condition using weighted sensor readings of the plurality of sensors respective to strength and sensitivity. In some embodiments, determining the path of the hazardous condition is associated with a path between a group of sensors of the plurality of sensors. In some embodiments, the method further comprises rendering information associated with the path of the hazardous condition into a rendition selected from a group consisting of a text-based form, a graphic-based form, a video form, an audio form, and a tactile form. In some embodiments, the method further comprises storing the path of the hazardous condition.
Also provided herein is a method comprising collecting sensor readings from one or more sensors of a plurality of sensors deployed in an environment; storing collected sensor readings in a data structure with metadata corresponding to the plurality of sensors; and providing the collected sensor readings and the metadata in a format suitable for display in a graphical user interface. In some embodiments, the plurality of sensors deployed in the environment are fixed, semi-fixed, mobile, or a combination thereof. In some embodiments, the metadata comprises location-based information for the plurality of sensors. In some embodiments, the graphical user interface comprises a map pane for a map of the environment; and sensor representations on the map corresponding to individual sensors or groups of two or more sensors of the plurality of sensors. In some embodiments, a zoom level of the map defines the sensor representations corresponding to individual sensors or groups of two or more sensors. In some embodiments, selecting one or more sensor representations on the map displays the collected sensor readings, the metadata, or both for the one or more sensor representations selected. In some embodiments, the sensor representations visually indicate the collected sensor readings bucketed according to pre-defined hazard levels. In some embodiments, the graphical user interface further comprises a playback control for reviewing the sensor representations and the collected sensor readings historically. In some embodiments, the playback control comprises one or more controls selected from play, pause, stop, continuous rewind, discrete rewind, continuous fast-forward, and discrete fast-forward. In some embodiments, the graphical user interface further comprises a location pane for selecting one or more sensors by location.
Also provided herein is a method comprising collecting sensor readings from one or more sensors of a plurality of sensors deployed in an environment; and providing collected sensor readings and metadata corresponding to the plurality of sensors in a format suitable for display in a graphical user interface. In some embodiments, the graphical user interface comprises a map pane for a map of the environment; a location pane; and sensor representations on the map and in the location pane corresponding to individual sensors or groups of two or more sensors of the plurality of sensors. In some embodiments, a zoom level of the map and a hierarchical relationship of the plurality of sensors defines the sensor representations corresponding to individual sensors or groups of two or more sensors in the map and the location pane, respectively. In some embodiments, selecting one or more sensor representations on the map displays the collected sensor readings, the metadata, or both for the one or more sensor representations selected. In some embodiments, the method further comprises archiving the collected sensor readings and the metadata for reviewing corresponding sensor representations in the graphical user interface historically with a playback control.
Also provided herein is a computer-readable storage medium having stored therein, computer executable instructions that, if executed by a device, cause the device to perform a method comprising collecting sensor readings from one or more sensors of a plurality of sensors deployed in an environment; and providing collected sensor readings and metadata corresponding to the plurality of sensors in a format suitable for display in a graphical user interface. In some embodiments, the graphical user interface comprises a map pane for a map of the environment; a location pane; and sensor representations on the map and in the location pane corresponding to individual sensors or groups of two or more sensors of the plurality of sensors. In some embodiments, a zoom level of the map and a hierarchical relationship of the plurality of sensors defines the sensor representations corresponding to individual sensors or groups of two or more sensors in the map and the location pane, respectively. In some embodiments, selecting one or more sensor representations on the map displays the collected sensor readings, the metadata, or both for the one or more sensor representations selected. In some embodiments, the method further comprises archiving the collected sensor readings and the metadata for reviewing corresponding sensor representations in the graphical user interface historically with a playback control.
Also provided herein is a method comprising receiving information associated with a plurality of sensors configured to detect a hazardous condition, wherein the information includes metadata and sensor reading data; and rendering the information on a graphical user interface on a display device, wherein the rendering is configured to identify sensors of the plurality of sensors that satisfy the hazardous condition. In some embodiments, a sensor of the plurality of sensors is selected from a group consisting of fixed sensors, semi-fixed sensors, and mobile sensors. In some embodiments, the metadata comprises location-based information of a sensor. In some embodiments, the graphical user interface comprises a map pane for displaying sensor representations on a map for a subset of sensors of the plurality of sensors. In some embodiments, the method further comprises zooming in and out of the map in response to manipulation of a zoom level controller displayed on the graphical user interface, wherein the zoom level is configured to adjust grouping of the sensor representations and their respective locations on the map. In some embodiments, the method further comprises displaying the metadata and sensor reading data associated with a selected sensor representation for a sensor of the plurality of sensors. In some embodiments, the method further comprises rendering a sensor representation for a sensor of the plurality of sensors on the graphical user interface, wherein the sensor representation visually indicates a status associated with the rendered sensor, and wherein the status is associated with a hazard level. In some embodiments, the graphical user interface further comprises a playback controller configured to display sensor representations and associated historical sensor readings for the sensor representations. In some embodiments, the playback controller comprises one or more controllers selected from a group consisting of play, pause, stop, continuous rewind, discrete rewind, continuous fast-forward, and discrete fast-forward controllers. In some embodiments, the graphical user interface further comprises a location pane configured to render locations associated with sensors in response to a user selection of the location.
Also provided herein is a graphical user interface comprising a first element configured to display indicators associated with a plurality of sensors arranged in a hierarchical relationship by location; and a second element configured to display sensor representations associated with the plurality of sensors on a map corresponding to the locations, wherein the plurality of sensors is configured to detect a hazardous condition. In some embodiments, the first element comprises a location pane, the second element comprises a map pane, and the location pane and the map pane are configured to display in one or more windows of the graphical user interface. In some embodiments, a level of the hierarchical relationship in the location pane and a zoom level of the map in the map pane define individual sensors or groups of sensors in the location pane and the map pane, respectively. In some embodiments, selecting a sensor representation on the map for a sensor of the plurality of sensors displays the sensor readings, the metadata, or both for the sensor representation selected. In some embodiments, the graphical user interface further comprises a playback controller configured to display historical sensor readings, wherein the playback controller comprises one or more controllers selected from a group consisting of play, pause, stop, continuous rewind, discrete rewind, continuous fast-forward, and discrete fast-forward controllers.
Also provided herein is a computer-readable storage medium having stored therein, computer executable instructions that, if executed by a device, cause the device to perform a method comprising receiving information associated with a plurality of sensors configured to detect a hazardous condition, wherein the information includes metadata and sensor reading data; and rendering the information on a graphical user interface on a display device, wherein the rendering is configured to identify sensors of the plurality of sensors that satisfy the hazardous condition. In some embodiments, the graphical user interface comprises a map pane for displaying sensor representations on a map for a subset of sensors of the plurality of sensors. In some embodiments, zooming in and out of the map in response to manipulation of a zoom level controller displayed on the graphical user interface adjusts grouping of the sensor representations and their respective locations on the map. In some embodiments, the graphical user interface further comprises a location pane configured to render locations associated with sensors in response to a user selection of the location. In some embodiments, the graphical user interface further comprises a playback controller configured to display historical sensor readings, wherein the playback controller comprises one or more controllers selected from a group consisting of play, pause, stop, continuous rewind, discrete rewind, continuous fast-forward, and discrete fast-forward controllers.
Also provided herein is a method comprising collecting sensor readings from two or more sensors of a plurality of sensors deployed in an environment; determining a path of a hazard about the two or more sensors from collected sensor readings and metadata for the plurality of sensors; and providing the collected sensor readings and the path in a format suitable for display in a graphical user interface. In some embodiments, the plurality of sensors deployed in the environment are fixed, semi-fixed, mobile, or a combination thereof. In some embodiments, determining the path of the hazard comprises triangulation of weighted sensor readings by strength, proximity of the hazard, or both. In some embodiments, determining the path of the hazard comprises determining the path about two or more individual sensors in a location of the environment or two or more groups of sensors in different locations of the environment. In some embodiments, the graphical user interface comprises a map pane for a map of the environment; a location pane; and sensor representations on the map and in the location pane corresponding to individual sensors or groups of two or more sensors of the plurality of sensors. In some embodiments, a zoom level of the map and a hierarchical relationship of the plurality of sensors defines the sensor representations corresponding to individual sensors or groups of two or more sensors in the map and the location pane, respectively. In some embodiments, selecting one or more sensor representations on the map displays the collected sensor readings, the metadata, or both for the one or more sensor representations selected. In some embodiments, the sensor representations visually indicate the collected sensor readings bucketed according to pre-defined hazard levels. In some embodiments, the graphical user interface further comprises a playback control for reviewing the sensor representations, the collected sensor readings, the path, or a combination thereof historically. In some embodiments, the playback control comprises one or more controls selected from play, pause, stop, continuous rewind, discrete rewind, continuous fast-forward, and discrete fast-forward.
Also provided herein is a method comprising collecting sensor readings from two or more sensors of a plurality of sensors deployed in an environment; determining a path of a hazard about the two or more sensors; and providing the collected sensor readings and the path in a format suitable for display in a graphical user interface. In some embodiments, determining the path of the hazard comprises triangulation of weighted sensor readings by strength, proximity of the hazard, or both. In some embodiments, determining the path of the hazard comprises determining the path about two or more individual sensors in a location of the environment or two or more groups of sensors in different locations of the environment. In some embodiments, the graphical user interface comprises a map pane for a map of the environment; a location pane; and sensor representations on the map and in the location pane corresponding to individual sensors or groups of two or more sensors of the plurality of sensors. In some embodiments, the graphical user interface further comprises a playback control for reviewing the sensor representations, the collected sensor readings, the path, or a combination thereof historically.
Also provided herein is a computer-readable storage medium having stored therein, computer executable instructions that, if executed by a device, cause the device to perform a method comprising collecting sensor readings from two or more sensors of a plurality of sensors deployed in an environment; determining a path of a hazard about the two or more sensors; and providing the collected sensor readings and the path in a format suitable for display in a graphical user interface. In some embodiments, determining the path of the hazard comprises triangulation of weighted sensor readings by strength, proximity of the hazard, or both. In some embodiments, determining the path of the hazard comprises determining the path about two or more individual sensors in a location of the environment or two or more groups of sensors in different locations of the environment. In some embodiments, the graphical user interface comprises a map pane for a map of the environment; a location pane; and sensor representations on the map and in the location pane corresponding to individual sensors or groups of two or more sensors of the plurality of sensors. In some embodiments, the graphical user interface further comprises a playback control for reviewing the sensor representations, the collected sensor readings, the path, or a combination thereof historically.
Also provided herein is a method comprising receiving information associated with a plurality of sensors configured to detect a hazardous condition, wherein the information includes metadata and sensor reading data; determining a path of the hazardous condition about the plurality of sensors from the information; and rendering the path of the hazardous condition on a graphical user interface on a display device. In some embodiments, a sensor of the plurality of sensors is selected from a group consisting of fixed sensors, semi-fixed sensors, and mobile sensors. In some embodiments, the metadata comprises location-based information of a sensor. In some embodiments, determining the path of the hazardous condition comprises triangulating to locate the hazardous condition using weighted sensor readings of the plurality of sensors. In some embodiments, determining the path of the hazardous condition is associated with a path between a group of sensors of the plurality of sensors. In some embodiments, the graphical user interface comprises a map pane for rendering sensor representations on a map for a subset of sensors of the plurality of sensors. In some embodiments, the graphical user interface further comprises a location pane for rendering indicators associated with locations for the subset of sensors. In some embodiments, a hierarchical level of a location in the location pane and a zoom level of the map in the map pane correspond to the subset of sensors in the location pane and the map pane, respectively. In some embodiments, selecting a sensor representation on the map displays the sensor readings, the metadata, or both for the sensor representation selected. In some embodiments, the graphical user interface further comprises a playback controller configured to display historical sensor reading data and the path. In some embodiments, the playback controller comprises one or more controllers selected from a group consisting of play, pause, stop, continuous rewind, discrete rewind, continuous fast-forward, and discrete fast-forward controllers.
Also provided herein is a graphical user interface comprising a first element configured to display indicators associated with a plurality of sensors arranged in a hierarchical relationship by location; and a second element configured to display sensor representations associated with the plurality of sensors on a map corresponding to the locations and a rendered path of a hazardous condition as detected by the plurality of sensors. In some embodiments, the first element comprises a location pane, the second element comprises a map pane, and the location pane and the map pane are configured to display in one or more windows of the graphical user interface. In some embodiments, a level in the hierarchical relationship in the location pane and a zoom level of the map in the map pane define individual sensors or groups of sensors in the location pane and the map pane, respectively. In some embodiments, selecting a sensor representation on the map for a sensor of the plurality of sensors displays the sensor readings, the metadata, the rendered path, or a combination thereof corresponding to the sensor representation selected. In some embodiments, the graphical user interface further comprises a playback controller configured to display historical sensor readings and paths, wherein the playback controller comprises one or more controllers selected from a group consisting of play, pause, stop, continuous rewind, discrete rewind, continuous fast-forward, and discrete fast-forward controllers.
Also provided herein is a computer-readable storage medium having stored therein, computer executable instructions that, if executed by a device, cause the device to perform a method comprising receiving information associated with a plurality of sensors configured to detect a hazardous condition, wherein the information includes metadata and sensor reading data; determining a path of the hazardous condition about the plurality of sensors from the information; and rendering the path of the hazardous condition on a graphical user interface on a display device. In some embodiments, determining the path of the hazardous condition comprises triangulating to locate the hazardous condition using weighted sensor readings of the plurality of sensors. In some embodiments, the graphical user interface comprises a map pane for displaying sensor representations on a map for a subset of sensors of the plurality of sensors, optionally with the path of the hazardous condition. In some embodiments, the graphical user interface further comprises a location pane configured to render locations associated with sensors in response to a user selection of the location. In some embodiments, the graphical user interface further comprises a playback controller configured to display historical sensor readings and paths, wherein the playback controller comprises one or more controllers selected from a group consisting of play, pause, stop, continuous rewind, discrete rewind, continuous fast-forward, and discrete fast-forward controllers.
The foregoing description, for purpose of explanation, has been described with reference to specific embodiments. However, the illustrative discussions above are not intended to be exhaustive or to limit the concepts presented herein. Many modifications and variations are possible in view of the above teachings.
This application is related to U.S. patent application Ser. No. 14/281,896, titled “Sensor Based Detection System,” by Joseph L. Gallo et al. (Attorney Docket No. 13-012-00-US), filed May 20, 2014, which application is incorporated herein by reference in its entirety and claims the benefit and priority thereto. This application is related to U.S. patent application Ser. No. 14/281,901, titled “Sensor Based Detection Management Platform,” by Joseph L. Gallo et al. (Attorney Docket No. 13-013-00-US), filed May 20, 2014, which application is incorporated herein by reference in its entirety and claims the benefit and priority thereto. This application is related to U.S. patent application Ser. No. ______, titled “Method and System for Representing Sensor Associated Data,” by Joseph L. Gallo et al. (Attorney Docket No. 13-014-00-US), filed Jun. 25, 2014, which application is incorporated herein by reference in its entirety and claims the benefit and priority thereto. This application is related to U.S. patent application Ser. No. ______, titled “Method and System for Sensor Associated Messaging,” by Joseph L. Gallo et al. (Attorney Docket No. 13-015-00-US), filed Jun. 25, 2014, which application is incorporated herein by reference in its entirety and claims the benefit and priority thereto. This application is related to U.S. patent application Ser. No. ______, titled “Graphical User Interface of a Sensor Based Detection System,” by Joseph L. Gallo et al. (Attorney Docket No. 13-017-00-US), filed Jun. 25, 2014, which application is incorporated herein by reference in its entirety and claims the benefit and priority thereto. This application is related to U.S. patent application Ser. No. ______, titled “Graphical User Interface for Path Determination of a Sensor Based Detection System,” by Joseph L. Gallo et al. (Attorney Docket No. 13-018-00-US), filed Jun. 25, 2014, which application is incorporated herein by reference in its entirety and claims the benefit and priority thereto. This application is related to U.S. patent application Ser. No. 14/281,904, titled “Event Management System for a Sensor Based Detection System,” by Joseph L. Gallo et al. (Attorney Docket No. 13-020-00-US), filed May 20, 2014, which application is incorporated herein by reference in its entirety and claims the benefit and priority thereto. This application is related to U.S. patent application Ser. No. 14/284,009, titled “User Query and Gauge-Reading Relationships,” by Joseph L. Gallo et al. (Attorney Docket No. 13-027-00-US), filed May 21, 2014, which application is incorporated herein by reference in its entirety and claims the benefit and priority thereto.