1. Field of the Inventions
The present inventions relate to controller area networks, and more particularly, network monitoring and control systems used for the optimization of energy consumption and waste emissions.
2. Description of the Related Art
Due to the increasing costs of energy usage, worldwide concern regarding greenhouse gases, such as carbon dioxide, nitrogen oxide, and sulfur dioxide and other energy and emissions concerns, the search for new solutions to these issues has experienced a new surge. For example, many businesses such as those including large manufacturing facilities, are seeking out ways to both reduce energy costs and reduce the greenhouse gas emissions produced by their manufacturing and production facilities.
In order to reduce energy costs, some facility managers are monitoring energy consumption and greenhouse gas emissions data in order to find areas in which the company can be more efficient. The use of existing systems, some of which include data loggers refreshed on a monthly basis, can result in long lead times and high labor costs involved in monitoring the data and in presenting the data in a format useful for management personnel to understand and respond to.
An aspect of at least one of the embodiments disclosed herein includes the realization that network communication techniques can be used to enhance and simplify procedures for collecting data across controller area networks so that the users of such data, such as facilities managers, can more quickly and accurately identify potential areas for improvement such as reductions in energy consumption or waste emissions.
Thus, in accordance with an embodiment, a method for optimizing power consumption of manufacturing facilities can comprise receiving a plurality of energy consumption and emission data from one or more energy consuming devices operating in a facility over a network and transforming the plurality of data into a format that can be processed. The method can also include validating the plurality of data, aggregating the plurality of data at a defined interval, performing one or more analyses on the plurality of data using one or more computing devices, and storing the results of the one or more analyses in computer storage.
In accordance with another embodiment, a system for optimizing power consumption of manufacturing or production facilities can comprise one or more energy consumption sources, a data acquisition device configured to receive data from the one or more energy consumption sources, and a computing device configured to poll the data acquisition device at a defined interval and receive sensor data corresponding to the defined interval, the computing device being configured to transform the data into a format that can be processed. The system can also include a remote server in communication with the computing device, the remote server configured to receive the formatted data corresponding to the defined interval over a network, the remote server comprising a computer memory that stores instructions for creating reports that describe energy usage and emissions output of the one or more energy consumption sensors and at least one processor that executes the stored instructions.
In accordance with another embodiment, a method for monitoring energy consumption or waste emissions of a facility can comprise monitoring a plurality of data representing energy consumption or waste emissions of a facility, identifying a subset of the plurality of data, and displaying the subset of the plurality of data on a display device in a scrolling configuration.
In accordance with another embodiment, a method of determining carbon emissions from a facility can comprise manufacturing a first product with a first energy consuming device, determining energy useage of the first energy consuming device used for producing the first product, transmitting first data representing the energy usage of the first energy consuming device are producing the first product to a first server and further manufacturing the first product with a second energy consuming device. The method can also include determining energy usage of the second energy consuming device used for producing the first product transmitting second data representing the energy usage of the second energy consuming device used for producing the first product to the server, determining an amount of carbon emitted to produce the first product based on the determination of energy usage of the first energy consuming device and the determination of energy usage of the second energy consuming device, and transmitting third data representing the amount of carbon emitted from the server to a client device.
In accordance with another embodiment, a method of monitoring energy consumption or waste emissions from a facility, the method can comprise operating a plurality of devices, each of the plurality of devices either consuming energy or emitting waste, continuously detecting performance characteristics of each of the plurality of devices at a predetermined sampling rate, and transmitting data representing the performance characteristics of each of the plurality of devices to a server. The method can also include determining if the data transmitted to the server represents all of detected performance during the step of continuously detecting over a first predetermined limited amount of time, and storing an amount of the data corresponding the first predetermined limited amount of time in an area of a server reserved for data that has been verified as complete.
In accordance with another embodiment, a method of preparing data for analysis, can comprise sampling output from at least one sensor at a first frequency, storing data representing all of the output samples in the step of sampling, and storing a first subset of the data corresponding to first resolution lower than the data representing all of the output samples.
In accordance with another embodiment, a method of alerting a user of a system for collecting data representing performance characteristics of a facility wherein the system is configured to allow the user to request the data can comprise sampling the output of the plurality of sensors of a facility, storing data representing the output of the plurality of sensors, transmitting the data to a client device over a network in response to a request for the data from a user operating the client device, and transmitting an electronic message to the user without receiving a request from the user if the data satisfies a predetermined condition determined by the user.
The above-mentioned and other features of the inventions disclosed herein are described below with reference to the drawings of preferred embodiments. The illustrated embodiments are intended to illustrate, but not to limit the inventions. The drawings contain the following Figures:
The present embodiments generally relate to systems and methods for enabling energy efficiency optimization and reduction of environmental impact due to, for example, greenhouse gas emissions. The systems and methods disclosed herein can be developed or embodied in part or in whole in software that is running on one or more computing devices. In some embodiments, a method is provided that can optimize energy usage and environmental impact by controlling energy at one or more points of use and/or stream real time data to a user for informed decision making. This method can be particularly useful in industries which typically consume large amounts of to energy and/or waste emissions, such as for example but without limitation, food processing and manufacturing industries.
Some embodiments of the methods and systems disclosed herein can “green” customer revenue by quantifying and/or monetizing the greenhouse gas emissions reduced and/or “green” the bottom line by saving energy and its associated costs. Some embodiments can provide real-time operations monitoring information to expose hidden inefficiencies, opportunities for reductions, and/or savings. Some embodiments can also provide enhanced visibility and easy to use interfaces that managers can employ to reach their energy reduction goals. Such devices and/or methods can also provide critical sustainability information at the plant level, regional level, and/or at the national level.
In some embodiments, a system is provided that gathers, organizes and/or baselines all energy supply resources to one or more facilities into one convenient, usable and measurable source. The system can perform the same and/or similar functions for a subsystem of energy usage data. Such a system can gather real-time data from high quality analog or digital sensor or meter sources, including, for example, from several hundred to several thousand sources, depending on the size and needs of the facility, for real-time decision making. In some embodiments, a system can track and certify carbon emissions, energy use and automate demand response procedures to identify and take action on critical elements where efficiencies are the greatest. In some embodiments, such systems or methods can include industry standard processing systems such as for example but without limitation, Allen Bradley programmable logic controllers, SQL Databases, etc.
Some embodiments can provide mechanisms to green both top and bottom lines and can work well with demand response and other smart grid signals, as well as provide additional benefits beyond traditional systems. For example, some systems and/or methods can better assist decision-makers in deriving valuable insights into trends and cost-concerns, including when to replace equipment and realize costs savings. Such insights can improve both the top and bottom line because users may be able to reduce energy consumption and carbon emissions as well as measure their overall profitability more closely, for example, on a real-time, per product unit basis.
Some of the systems and/or methods disclosed herein can provide a real-time energy consumption and related CO2 output at the point of use level. This can be particularly advantageous because it provides executives with information they need to inform their customers and shareholders of specific reductions their companies are making in energy use and carbon emissions on a product, facility or even company-wide basis, in both sustainable and financial terms.
Some of the systems disclosed herein can be configured to send data on a network, which can be secured, to an offsite or onsite facility for processing, report, and/or query preparation. In particular, the processing and/or reporting can continuously aggregate and pre-analyze the data and have it ready to quickly produce and display the data analysis upon request by the user, such as facility and/or executive management. The pre-analysis of data can include analyzing the data for a plurality of time resolutions, such as last week, last month, last year, past 7 days, past 30 days, past 6 months, current day, current week, current month and the like. In some embodiments, the pre-analysis of data can include the calculation of new data based corresponding to standard reports commonly requested by management personnel. The pre-analysis of data at the back end advantageously reduces the processing time required at the front end to display the data reports to the end user.
In some embodiments, the system can be integrated with one or more modules, including energy efficiency and control modules, which can send alarms and/or process control information to the energy consumption systems being monitored. Advantageously, the system can integrate plant production information with energy and/or emission data, which can result in improved production and capital decisions. In addition, the system can generate and report the carbon footprint of each facility for regulatory reporting and compliance purposes. In some embodiments, the system can be scalable to include multiple facilities and/or enterprises.
Generally, the systems and methods disclosed can enable real-time decision making and/or provide an eagle-eye view of the macro enterprise level to facilitate management at the micro level of energy use and/or emissions. In some embodiments, profiles can be created that measure energy usage and/or greenhouse gas emissions. This can be particularly useful for providing users, such as corporations, with key performance indicators, such as a carbon footprint, at a product level on a periodic basis.
For purposes of describing the embodiments herein, certain aspects, advantages and novel features of those various embodiments have been described in detail. Of course, it is to be understood that not necessarily all such aspects, advantages or features will be embodied in any particular embodiment of one or more of the inventions.
Each of the processes, components, and algorithms described above can be embodied in, and fully automated by, code modules executed by one or more computers or computer processors. The code modules can be stored on any type of computer-readable medium or computer storage device. The processes and algorithms can also be implemented partially or wholly in application-specific circuitry. The results of the disclosed processes and process steps can be stored, persistently or otherwise, in any type of computer storage. In one embodiment, the code modules can advantageously be configured to execute on one or more processors. In addition, the code modules can comprise, but are not limited to, any of the following: software or hardware components such as software object-oriented software components, class components and task components, processes methods, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, variables, or the like.
In general, the word “module,” as used herein, refers to logic embodied in hardware or firmware, or to a collection of software instructions, possibly having entry and exit points, written in a programming language, such as, for example, Java, Lua, Objective-C, C or C++. A software module may be compiled and linked into an executable program, installed in a dynamic link library, or may be written in an interpreted programming language such as, for example, BASIC, Perl, or Python. It will be appreciated that software modules may be callable from other modules or from themselves, and/or may be invoked in response to detected events or interrupts. Software instructions may be embedded in firmware, such as an EPROM. It will be further appreciated that hardware modules may be comprised of connected logic units, such as gates and flip-flops, and/or may be comprised of programmable units, such as programmable gate arrays or processors. The modules described herein are preferably implemented as software modules, but may be represented in hardware or firmware. Generally, the modules described herein refer to logical modules that may be combined with other modules or divided into sub-modules despite their physical organization or storage.
Communication over the network 120 can take place using sockets, ports, and/or other mechanisms recognized in the art. The network 120 can comprise a public network such as the Internet, a virtual private network (VPN), a token ring or TCP/IP based network, a wide area network (WAN), a local area network (LAN), an intranet network, a point-to-point link, a wireless network, a cellular network, a telephone network, a wireless data transmission system, a two-way cable system, a satellite network, a broadband network, a baseband network, combinations of the same, or the like. The network 120 communicates with various computing devices and/or other electronic devices via wired or wireless communication links.
In general, the data center 110 receives data from the energy consuming facility 105 regarding resource usage, such as electricity, natural gas and water, waste emissions, and/or other processes in order to generate reports regarding energy consumption and emissions to be accessed via client report interface 115. In some embodiments, the data center 110 can comprise a database server system of multiple physical computers and associated content that are accessible via the network 120. In other embodiments, the data center 110 can be a stand-alone computing system, such as a personal computer that is IBM, Macintosh, or Linux/Unix compatible. Those skilled in the art will appreciate, that the data center 110 can comprise other computer system configurations, including hand-held devices, multi-processor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, and the like.
Data center 110 can be implemented using physical computer servers that are geographically remote from one another and from the energy consuming facility 105 and/or can include content that spans multiple internet domains. Data center 110 and/or client report interface 115 can be accessible by one or more energy consuming facilities via the network 120. In some embodiments, the data center 110 is a centralized remote database for multiple energy consuming facilities and/or multiple enterprises. However, the functionality provided for in the various components described herein can be combined and/or further separated in different embodiments. For example, in some embodiments, the data center 110 and/or the client report interface 115 can be provided at the energy consuming facility 105 itself.
The client report interface 115 is the user access device through which the user interacts with the system 100. As indicated by the arrows pointing to and away from the client report interface 115, the client report interface 115 is the means by which requests are submitted to the system 100, and the means by which reports and other responses are received by users. Users can interact with the system 100 through a wide variety of user access devices. The client report interface 115 can comprise any type of client device capable of communicating with the data center 110 via the network 120. For example, the client report interface 115 can comprise a network computer, a server, a PDA, a workstation, a smartphone, a laptop, a virtual device, or the like. In some embodiments, the client report interface 115 comprises a display device configured to display reports, such as graphical charts, of monitored data from various plants or facilities being monitored by the energy optimization system 100. More particularly, a display device provides for the presentation of scientific data, GUIs, application software data, and multimedia presentations, for example. The client report interface 115 can comprise one or more input devices, such as a keyboard and/or a mouse and a network communication device. The client report interface 115 can also include one or more multimedia devices, such as speakers, video cards, graphics accelerators, and microphones, for example.
Energy consuming facility 105 can include an network module 125 in communication with data center 110 and/or client report interface 115 via the network 120. The communication of all entities through a common network 120 is illustrative only, and the invention includes embodiments where some entities communicate through one network, other entities through a different network, and various permutations thereof.
A network module 125 can be used to collect, store, and/or organize data from a variety of sensors, meters and/or other input sources. For example, the network module 125 can comprise a base module that monitors basic energy consumption sources of the facility, such as total electric energy consumption, total gas consumption, and total water consumption. The network module 125 can also collect data from other add-on modules configured to monitor more specific data points of various systems of the energy consuming facility, such as a refrigerator system or a boiler system, for more refined analysis and improved cost savings. In some embodiments, the network module 125 forwards the accumulated data from the input sources and other modules to the data center 110 on a periodic basis via the network 120 for further processing and analysis.
As depicted in
The network module 125 can monitor, aggregate, archives and/or report information from the modules noted above. In some embodiments, these modules monitor and/or control energy use and emissions information, which can be used for feedback control and/or reporting purposes. Each of the modules noted above can include a controller, such as an Allen Bradley programmable logic controller, that sends data to the network module 125 over a network at the energy consuming facility 105. In some embodiments, the various modules can also include a computing system for processing data, a memory for storing data, and a network communication device for communicating data. The list of modules provided is not intended to be exhaustive, and it should be appreciated that network module 125 can communicate with other modules that are not specifically described herein.
In some embodiments, refrigeration module 130 can provide a detailed energy profile for refrigeration systems and/or control of refrigeration systems. HVAC module 135 can, for example, provide data sufficient for a detailed energy profile for heating, ventilating, and/or air conditioning systems and/or control of such systems. Compressed air module 140 can, in some embodiments, provide sufficient data for a detailed energy profile for compressed air systems and/or control of such systems. Boiler systems module 145 can, in some embodiments, provide sufficient data for a detailed energy profile for boiler systems and/or control of such systems.
Similarly, thermal systems module 150 can, in some embodiments, provide sufficient data for a detailed energy profile for thermal systems and/or control of such systems. Motor and process load module 155 can, in some embodiments, provide sufficient data for a detailed energy profile for process loads and motors and/or control of such systems. Renewable energy systems module 160 can, in some embodiments, provide sufficient data for a detailed energy profile and/or operating characteristics of renewable energy systems, and/or control of such systems. The various modules can include sensors, meters, hardware components, software, and/or computing systems.
In some embodiments, network module 125 comprises a base monitoring module, which can also be referred to as a CERS initiation module (CIM).
For example, the CIM 200 can include an electricity consumption meter 205, a natural gas consumption meter 210, and an alternate fuel consumption meter 215. Additionally, the CIM 200 can include a water flow meter 220, an outside air temperature sensor 225, and/or a relative humidity sensor 230. In some embodiments, a waste water consumption value 235 can be provided as an input to the CIM 200 by a user. Additional types of measurements can also be taken by other sources 240 in communication with network module 125 via the various add-on modules illustrated in
As further illustrated in
To facilitate the exchange of data with various modules, the network module 125 can use a network (not shown) at energy consuming facility 105 configured to allow the network module 125 to control and/or communicate with the various modules. The network can run over ethernet, such as AB ethernet IP. The network can be distributed using, for example, CAT5 cable, fiber, and/or wireless radios depending on the distances and/or difficulty of wiring at the energy consuming facility 105. Additional communications with PLC systems, such as older Allen Bradley PLCs can be managed by a controller, such as a CompactLogix controller, as well as DH+ and/or DF1 protocols. Once data is collected from the various input sources by the network module 125, the data can be preprocessed by a processor (e.g., CPU 250) and/or stored in a local memory storage device (e.g., memory 255).
As illustrated in
Refrigeration systems module 130 can further include an outside air temperature sensor 360, a relative humidity sensor 365, and a wet bulb temperature sensor 370. In some embodiments, other measurements can be taken by other input sources included in the refrigeration systems module 130. For example, the sensors of the refrigeration systems module 130 can also detect electricity 375 from the CIM 200 of network module 125. The sensors and actuators specifically listed above are merely examples of some of the types of sensors and actuators that can be included in a refrigeration type module. It is to be understood that any such refrigeration module, or any of the other modules described below, used in conjunction with any of the embodiments and/or inventions disclosed herein, can be instrumented and/or configured with fewer or additional sensors under actuators or other devices, in accordance with the ultimate goals of the user.
Additionally, it is to be understood that although none of the devices described herein either generate or consume energy as such would violate the law of the conservation of energy, those of ordinary skill in the art will understand that an electric motor and fuel fired boilers would be considered “energy consuming devices”, but on the other hand, electric generators driven by steam pressure generated from waste heat would be considered “energy generation devices”, as those terms are used herein.
The renewable energy systems module 160 can include a variety of temperature, rate, speed, pressure, and other input sources. The illustrated embodiments include a jacket water flow rate meter 905, a jacket water return temperature sensor 910, a jacket water supply temperature sensor 915, an electricity generated meter 920, a radiator fan speed sensor 925, an exhaust temperature sensor 930, an exhaust flow rate meter 935, a steam pressure sensor 940, a steam flow rate meter 945, a nitrous oxide rate meter 950, a sulphur dioxide rate meter 955, a urea flow rate meter 960, an engine oil temperature sensor 965, an engine room temperature sensor 970, and a natural gas meter 975. As noted above, the renewable energy systems module 160 can also be configured to recover waste gases, including those having the potential for conversion into electrical energy, for example, but without limitation, methane gas which can be combusted to generate steam for power generation or two drive an internal combustion engine directly driving electrical generator for a logical energy generation. Thus, a meter such as the natural gas meter 975 can be configured to detect a flow of such waste methane gas. Additionally, the renewable energy systems module 160 can also include outside air temperature 980 and a relative humidity sensor measurements 985 from the CIM 200.
It should be appreciated by one of ordinary skill in the art that additional input sources can be included in any of the illustrated modules. Although the input sources have been described as meters or sensors, the input sources should not be limited to one or the other. Generally, meters are used to measure cumulative values and sensors are used to monitor real-time values. However, in different embodiments, an input source labeled as a meter can be a sensor and an input source labeled as a sensor can be a meter, depending on the measurement desired. In some embodiments, the various temperature sensors can comprise resistance temperature detectors (RTDs).
Additionally, each of the modules illustrated in
The CIM box 1005 and IT box 1010 can be in communication with each other via a local area network. As discussed above, the local area network can comprise an ethernet network, such as AB ethernet IP, and or other types of networks operating in accordance with other network communication protocols. The network can be distributed using, for example, CAT5 cable, fiber, and/or wireless radios depending on the distances and/or difficulty of wiring at the energy consuming facility 105.
The CIM box 1005 can include a programmable logic controller (PLC) 1015, a power supply 1020, a CIM base module 1025 and, optionally, expansion or add-on modules 1030. The PLC 1015 can include a network communications module 1035 and various input/output modules 1040. The input/output modules 1040 can include analog and/or digital modules. In some embodiments, the input/output modules 1040 may be built into the PLC 1015. In other embodiments, the input/output modules 1040 can be located external to the PLC 1015 and can communicate with the PLC 1015 via a network. For example, but without limitation, the PLC 1015 can comprise an Allen Bradley programmable logic controller communicating directly with all the above noted sensors, actuators, and/or other devices described above with reference to the individual modules. In such embodiments, the PLC 1015 can be configured to directly, periodically sample the outputs of all of the sensors, meters, and/or other devices and to transmit data representing such sampling to the IT box 1010, described in greater detail below. Additionally, the PLC 1015 can be configured to provide output signals to any actuators or other devices.
Generally, the CIM box 1005 continuously polls all the input sources associated with the various systems being monitored by the modules of the CIM box 1005 and sends control signals out to the facility 105. In some embodiments, the CIM box 1005 can include an Allen Bradley CompactLogix system. In some embodiments, the PLC 1015 can comprise an AB 1769-L32E programmable logic controller with ethernet connectivity.
The power supply 1020 can comprise an AB 1769-PA4 heavy duty power supply. The input/output modules 1040 of the PLC 1015 can comprise an AB 1769-IF4 analog input module (including, for example, 4 current (ma) channels), an AB 1769-OF2 analog output module with current (ma) channels, an AB 1769-IQ16 digital input module (including, for example, 16 24VDC digital inputs) and an AB 1769-OB8 digital output module (including, for example, 8 digital outputs). In some embodiments the PLC 1015 can be configured to convert analog signals received into digital signals readable by a computing device.
In some embodiments, the communications module 1035 comprises a Prosoft MVI69 communications module that can be configured for Modbus RTU. In some embodiments, the network module 125 can also include the following: AB relay output terminals with “C” form dry contacts (rated at, for example, 10 amps, 125 VAC), Altech 24 VDC, 24 watt power supply (that can provide, for example, power for relays and loop power), and/or DIN 2A circuit breakers that can provide protection for power supplies and/or outputs. The operating specifications of the network module 125 can be, in some embodiments, the following: 120 VAC input power, circuit breaker protected, 150 watts maximum load, ambient temperature rating from −10 F to +95 F non-condensing, isolated output circuit relays rated at 10 A, 250VAC maximum, and/or environmental protection from dust and light water spray.
In some embodiments, the IT box 1010 can be configured to: a) gather data across the network from the various modules, using, for example, an ethernet connection; b) organize and/or store the data in a local database, using, for example, a structure custom to each site and/or dependent on the control data being collected; and/or c) forward the data on a periodic basis to data center 110 for storage in a database. In some embodiments, the raw data collected can be accessed at the energy consuming facility 105.
The IT box 1010 can comprise a computing device 1045, a network communication device 1050, a universal power supply (UPS) 1055, an IP surge strip 1060, and an IP switch 1065. In some embodiments, the computing device 1045 comprises a USDT form factor Windows XP Pro PC or HP industrial PC. The computing device 1045 can include a central processing unit, which can include one or more conventional microprocessors, a memory, which can include random access memory or read only memory, and a mass storage device, such as one or more hard drives, diskettes, and/or optical media storage devices. The computing device 1045 can include any of the following software: Rockwell RS Logix 5000 integrated programming software, Windows XP Pro® operating system, MS Express SQL database, OPC compliant driver for the Allen Bradley PAC data, Inductive Automation “Factory SQL” ODBC database interface, and/or Inductive Automation “Factory PMI” SQL interface HMI visualization software for locally hosted web pages.
The network communication device 1050 can comprise a router, such as a Cisco 2811 router. The network communication device 1050 can be used to transfer data over the network 120 to data center 110. In some embodiments, the network connection can be over the internet and/or be an encrypted VPN connection, such as IPSec or SSL. Network module 125 can advantageously be accessed remotely, by, for example, data center 110 using the network 120. In some embodiments, one or more exchange point modules 125 include an internet connection with a static IP address. The connection can be over any medium. The connection and ISP account can be managed by the data center 110 and/or the energy consuming facility 105. The UPS 1055 can comprise, for example, a 750 kVA UPS. In some embodiments, the IP switch 1065 comprises a KVM over IP switch.
The data warehouse server 1105 can include a processor 1115, a memory 1120, a network communication device 1125, a validation module 1130, a calculation module 1135, and an aggregation module 1140. In some embodiments, the processor 1115 comprises a general or a special purpose microprocessor. The processor 1115 can comprise an application-specific integrated circuit (ASIC) or one or more modules configured to execute on one or more processors. The processor 1115 can communicate with the memory 1120 to retrieve and/or store data and/or program instructions for software and/or hardware. The processor 1115 can be configured to execute the validation module 1130, the calculation module 1135 and the aggregation module 1140. The data warehouse server 1105 can also include relational database software to be executed by the processor 1115. In some embodiments, one or more of the data sources can be implemented using a relational database, such as Sybase, Oracle, CodeBase, MySQL and Microsoft® SQL Server, as well as other types of databases such as, for example, a flat file database, an entity-relationship database, an object-oriented database, and/or a record-based database.
The memory 1120 can include, for example, local temporary storage, such as random access memory or read-only memory, and/or a mass storage device, such as one or more hard drives, disks, and/or optical media storage devices, for permanent storage of information. The network communication device 1125 can comprise a router for receiving data from the network module 125 via the network 120 and for transmitting data to the report center server 1110.
In some embodiments, the validation module 1130, can be configured to determine whether the data received from the network module 125 is valid or not. If the data is valid, it is stored for further processing. If the data is invalid, an error is logged in an audit table for further attention. In some embodiments, the calculation module 1135 can be configured to, for example, upon execution by the processor 1115, calculate new data for reporting by applying predetermined formulas to the validated data. The aggregation module 1140 can be configured to, for example, upon execution by the processor 1115, aggregate the data received from the network module 125 over a defined interval, such as a quarter hour, an hour, a day, a week, a month, and the like.
The report center server 1110 can include a processor 1145, a memory 1150, a network communication device 1155, a website support module 1160, a pre-analysis module 1165, and an alert module 1170. In some embodiments, the processor 1145 comprises a general or a special purpose microprocessor. The processor 1145 can comprise an application-specific integrated circuit (ASIC) or one or more modules configured to execute on one or more processors. The processor 1145 can communicate with the memory 1150 to retrieve and/or store data and/or program instructions for software and/or hardware. The memory 1150 can include random access memory (“RAM”) for temporary storage of information and/or read only memory (“ROM”) for permanent storage of information.
In some embodiments, the network communication device 1155 comprises a router configured to receive data from the data warehouse server 1105 and transmit data to the client reporting interface 120. The website support module 1160 can comprise one or more modules that can be configured to run and support a website to display reports of the data collected by the network module 125 in a web page format. The presentation of data to the user can include charts, tables, alerts, and continuous scrolling displays that a user can view or interact with. The services provided by the website support module 1160 include security, HTML interfaces, and/or the like. In some embodiments, the report center server 1110 includes miscellaneous networking gear, such as switches and/or firewalls; software to troubleshoot, maintain, and/or monitor the website; and/or services, such as Active Directory, time, email, and/or the like.
In some embodiments, the pre-analysis module 1165 can be configured to, for example, upon execution by the processor 1145, analyze the data across multiple time resolutions, or intervals. In other embodiments, the pre-analysis module 1165 can also be configured to prepare the data required to be included in standard reports requested by executive management of a production or manufacturing facility. The pre-analysis module 1165 can continuously run calculations and analysis on the data so that when a report is requested by the user, the data is ready to report almost instantaneously. The back-end processing by the pre-analysis module 1165 reduces the amount of time that a user has to wait in order to view a report. The back-end processing by the pre-analysis module 1165 also enables the display of real-time data that is updated continuously.
In some embodiments, the alert module 1170 can be configured to, for example, upon execution by the processor 1145, generate alerts to be sent to a user when an alert condition is met by the gathered data. Although the alert module 1170 has been illustrated as a component of the report center server 1110, the alert module 1170 can also be included in the data warehouse server 1105 and/or the network module 125.
As illustrated in
In some embodiments, the processor 1180 can comprise a general or a special purpose microprocessor. The processor 1180 can comprise an application-specific integrated circuit (ASIC) or one or more modules configured to execute on one or more processors. The processor 1180 can communicate with the memory 1185 to retrieve and/or store data and/or program instructions for software and/or hardware. The memory 1185 can include RAM for temporary storage of information and/or ROM for permanent storage of information. In some embodiments, the memory 1185 can comprise a mass storage device, such as one or more hard drives, diskettes, and/or optical storage devices.
At Block 1210, the computing device 1045 preprocesses the data. The preprocessing of data can comprise transforming the data into a database format, organizing the data, and/or performing time correction of the data. In some embodiments, the data is transformed into a database format designed for the retrieval and management of data in a relational database system, such as Sybase, CodeBase, MySQL, Oracle or the like. The organization of the data can include organizing the data into blocks according to time entry, organizing the data into blocks according to the modules the data was received from, and/or organizing the data according to a structure custom to each facility and dependent on controls data being collected.
In some embodiments, the data is time-stamped based on Coordinated Universal Time (UTC), or Greenwich Mean Time (GMT). Use of UTC can be used to avoid problems performing time calculations during the one hour switch into and out of daylight saving time. However, if a company has facilities in various locations around the country or around the world, the sun can have a dramatic impact on the monitored data. If a national or global company desires to compare trends between facilities located in different time zones or at different longitudinal coordinates, there can be certain trends that do not manifest themselves when comparing reports of monitored data time-stamped according to UTC due to the effect of the sun. Accordingly, in some embodiments, the data can be time-stamped according to local time in addition to, or instead of, UTC time in order to allow for more accurate trend comparison between facilities.
At Block 1215, the computing device 1045 stores the data in local memory storage. In some embodiments, the storage of data in local memory serves as a short-term data backup in the case of a loss of network connection or a power outage. The data can be stored in local memory until the local memory storage reaches its storage capacity, at which point the old data in the local memory is replaced with new data. In other embodiments, the data can be stored on a mass storage device, such as a hard drive, diskette, and/or optical storage device.
At Block 1220, the network communication device 1050 transmits the data to the data center 110. In some embodiments, the data transmitted comprises the data accumulated by the computing device 1045 since the last data transmission. The transmission of data can occur at a predefined interval (e.g., every 60 seconds). In some embodiments, the computing device 1045 performs a database connection to the data center 110 and issues SQL INSERT statements to place the latest PLC data into a raw data table in the memory 1120 of the data center 110. In some embodiments, the data includes one or more of the following: an input code, facility identification, input source identification, instantaneous value, cumulative value, local time stamps, UTC time stamps, quality code, block identification, product identification, status information, and the like.
At Block 1225, the PLC 1015 generates control signals to output to the energy consuming facility based on the data received. In some embodiments, the PLC 1015 generates the control signals directly based upon initial receipt of the data. In other embodiments, the computing device 1045 directs the PLC 1015 to generate the control signals after preprocessing of the data. In yet other embodiments, the data center 110 initiates generation of the control signals after further processing and analysis of the data. In still other embodiments, generation of the control signals can be initiated by the user via the client report interface 115.
At Block 1310, the processor 1115 preprocesses the data. In some embodiments, preprocessing of the data comprises organizing the data by enterprise and facility. For example, a separate server of the data center 110 can be dedicated to each separate enterprise. The preprocessing can also include validation of the data. In some embodiments, preprocessing can include adjusting the time stamp to reflect local time in addition to UTC time, or vice-versa, for the reasons discussed above.
At Block 1315, the processor 1115 permanently stores the preprocessed data on disk storage devices. At Block 1320, the processor 1115 calculates new data based on the application of predetermined formulas. In some embodiments, the new calculated data corresponds to data commonly requested by management personnel of energy consuming facilities. In some embodiments, some of the calculated data must be validated before being stored permanently. At Block 1325, the processor aggregates the data into blocks corresponding to a defined interval. For example, the data can be aggregated into quarter-hourly (15-minute) blocks, hour blocks, day blocks, week blocks, month blocks, and the like. Also at Block 1325, the data warehouse server 1105 transmits the aggregated data (e.g., via network communication device 1125) to the report center server 1110 and the processor 1145 stores the aggregated data in memory 1150. In some embodiments, some or all of the aggregated data remains stored on the data warehouse server 1105 and can be accessed by the report center server 1110.
At Block 1335, the processor 1145 pre-analyzes the data at multiple resolutions and prepares the data for reporting to the client report interface 115. For example, with reference to the data from the refrigeration module 130, the processor 1145 can take the data received from the compressor sensor 325 monitored by the refrigeration systems module 130 and generate a data point for the amount of electricity consumed by the compressor for each minute and store these data points in a preanalyzed file. The processor 1145 can then create additional preanalyzed files for other resolutions, including, for example but without limitation, preanalyzed files having one data point for each hour, day, week, month, year, and/or any other time resolution.
These preanalyzed files can then be used to generate reports or charts requested by a user. For example, if a manager or other user wants to see a report reflecting or based on the amount of electricity consumed by the compressor for single particular day, the user can request a report for the desired day. In response, the processor 1145 can provide the preanalyzed data file having the compressor data, processed to have one data point for each minute. The user may then decide to request a report showing the electricity consumed by the compressor for an entire year. As such, the processor can forward the preanalyzed data file containing the electricity used by the compressor with a single data point for each day.
The client side computer can then plot the data through the client report interface 115 to thereby generate a “report”. The weekly, monthly, and or other reports can also be displayed using the same or similar technique. Using such techniques, the client side computer operating as the client report interface 115 can be provided with preanalyzed data files that contain a reasonable number of data points for visualizing the data corresponding to the time span requested by the user. In both of the above examples, the processor 1145 provides the client side computer with files containing only a few hundred data points. As such, the transmission of the preanalyzed data files can be transmitted quickly over a network, such as the internet because the files are formed before the user requests and file and because the files are relatively small. Of course, as network speeds increase over time, due to new network communication technology, the processor 1145 can be configured to generate fewer preanalyzed data files so as to lower memory storage usage and still be able to transmit the files quickly over a network.
As another example, the processor 1145 can generate a data point representing the number of pounds of carbon dioxide equivalent (CO2e) emitted by a facility each minute, hour, day, week, month, year, and/or any other time resolution.
At Block 1335, the processor 1145 generates reports of the analyzed data and outputs the reports to the client report interface 115. The reports can be generated automatically (e.g., an alert or a ticker display) or upon request by a user. Additionally, as described below in greater detail with reference to
In other embodiments, raw data can be received via a manual human entry process. For example, historical resource usage data, production data, event data, and/or data that is not directly measured, such as waste water, can be inserted by a human operator on a web page via the client report interface 115. In yet other embodiments, raw data can be received via a manual File Transfer Protocol (FTP) process. For example, historical resource usage information from a utility company can be uploaded to the data center 110 via the client report interface 115 using a secure website. In still other embodiments, raw data can be received via an Enterprise Resource Planning (ERP) process. Some options for manually inputting relevant data is described below with reference to
At Block 1410, the data warehouse server 1105 validates the raw data according to specified rules to determine whether or not to continue processing the data. At Block 1430, the data warehouse server 1105 stores the validated data in a “clean” table in memory 1120. At Block 1435, the data warehouse server 1105 applies predetermined formulas to the “clean” data in order to generate new calculated data. At Block 1440, the data warehouse server 1105 aggregates all the clean data together for a defined interval into an aggregated table in memory 1120.
The validation process 1400B starts with decision block 1412, which determines whether the data received is of sufficient quality to be processed. In some embodiments, bad quality can be indicative of a device failure or a bad sensor. If the data is not of sufficient quality, an error-level failure entry will be created in an audit log table in memory 1120 and the data entry is not processed any further.
The validation process 1400B then proceeds to decision block 1414, which determines whether the data includes an accurate time stamp. If the data includes a time stamp that is in the future or too far in the past (which can be a configurable value), the data is deemed invalid and an error-level failure entry is generated in the audit log table. In some embodiments, the data will still continue to be processed if it fails this validation rule.
The validation process 1400B continues on to decision block 1416. Decision block 1416 determines whether the value of the data is within an acceptable range defined for the particular input source that generated the data. If the value is outside the acceptable range, the data is still valid but a warning-level failure entry is generated in the audit log table for later analysis. The validation process 1400B continues on to decision block 1418, which determines whether the data has any identification problems. Identification problems can occur, for example, if an identification variable is missing or if the combination of the input source identification and the facility identification associated with the data does not match a reference map or list stored in memory 1120. If the data does have identification problems, the data is still valid but a warning is generated in the audit log table.
The validation process 1400B continues on to decision block 1420, which determines whether the data falls within the appropriate time interval. In some embodiments, only one data entry is allowed for each facility ID/input source ID combination in the designated time interval. If more than one data entry exists for a particular facility ID/input source ID within the designated interval, then a warning-level failure entry is generated in the audit log table.
The validation process 1400B then continues on to decision block 1422, which determines whether or not there is any missing data within the designated time interval. If there is missing data within the designated time interval, then the validation process 1400B proceeds to decision block 1424, which determines whether filler data can be inserted to fill in the missing data. In some embodiments, filler data can be inserted for a missing or invalid data entry if two good data entries arrive within a maximum predefined time interval, such as 900 seconds (15 minutes). If two good data entries corresponding to a particular facility ID/input source ID combination arrive within the maximum predefined time interval, then the value of the prior good data entry will be inserted for the missing or invalid data entries. In other embodiments, the data can be interpolated using one or more adjacent data entries. If the second good data entry arrives more than the maximum specified length of time after the first good data entry, then no filler data is inserted to fill in the missing or invalid data entries. Whether or not filler data is inserted for the missing or invalid data entries, the validation process 1400B is completed and the data continues on to Block 1430 of
At Block 1446, the processor 1115 stores the aggregated data in an aggregate table in memory 1120. At Block 1448, the processor 1115 calculates a resource cost and emissions output for the data stored in the aggregate table. At Block 1450, the processor 1115 stores the calculated resource cost and emissions output in a resource usage table in memory 1120 for later reporting. It should be appreciated that the aggregation process 1400C can include aggregation of the data calculated by the data at Block 1435 of the data analysis process 1400A.
In some embodiments, the energy optimization system of
The KPI ticker tool 1605 can display total cumulative values for a defined interval, such as total electricity consumption for the current month, or real-time values of individual input sources, such as the current discharge pressure of a compressor of a refrigeration system. In some embodiments, the KPI ticker tool 1605 automatically displays upon login by the user at the customer portal login screen of
For example, the user can select high and low alert colors to be used for the values displayed. In some embodiments, the user can set high and low threshold values for each of the monitored data points. If the current value displayed is less than the low threshold, it can be displayed with a red color, for example, and if the current value displayed is greater than the high threshold, it can be displayed with a green color, for example. In some embodiments, the value displayed for a monitored data point can also include the delta change from a previous value. For example, if the value being displayed is a cumulative value for the current month, the KPI ticker tool 1605 can also display the difference in the value from the previous month or the current month last year. If the current value being displayed is a real-time value of a monitored data point, the KPI ticker tool 1605 can display the difference between the current value and the previously-updated value.
In some embodiments, real-time alerts can be generated by the energy optimization system 100. In some embodiments, certain real-time alerts are generated automatically without being preconfigured by the user. For example, an alert can be set to notify management personnel if data spikes over baseline levels on natural gas, water and/or electricity. In other embodiments, the user sets up alert definitions that define when an alert should be generated. For example, an alert can be set up to notify management personnel if water stops running in a boiler so that the gas can be turned off immediately. The real-time alerts can advantageously alert key management personnel as soon as a potential issue is identified by the system. In some embodiments, the user does not have to issue a query or continuously monitor the systems or their associated input sources in order to identify problems.
As shown, the chart generation tool can include selection fields for the following: emission (e.g., nitrous oxide, sulfur dioxide, carbon dioxide, and CO2e); time interval (current day, prior day, current week, prior week, current month, prior month, current year, prior year, and last six months); the facilities/sites to compare; the resources to compare; and the emission unit (e.g., lbs or metric tons). Selections can be made by command line or by graphical user interface objects, such as list boxes, drop down lists, check boxes and/or the like. The selections illustrated in
To maximize resource efficiency and energy savings, management personnel can dig deeper into the data by creating reports of individual input sources instead of overall energy consumption or emissions production. In some embodiments, a user may want to compare two or more input sources in order to determine any correlation trends.
With reference to
The interface 2500 can include a date input 2502, a frequency input 2504, a duration input 2506, as well as other inputs. The date input 2502 can be configured to allow a user to insert a generic date and/or time of day at which the intended report is scheduled to run. For example, as illustrated in the exemplary embodiment of
The frequency input 2504 can include an input area allowing the user to choose or manually input the frequency at which the report should be run. In the illustrated exemplary embodiment of
The duration input 2506 is configured to allow a user to indicate how long, and thereby how many times, the scheduled report should be run. For example, the duration input 2506 can include a start date input portion and an end date input portion. In the illustrated embodiment, the end date input portion allows the user to choose “no end date”, thereby causing the report to be scheduled to repeat indefinitely. The end date input also includes options for allowing the user to indicate that the scheduled report should stop running after a specified number of reports have been generated or to end on a particular date.
As shown in
An aspect of at least one of the embodiments disclosed herein includes the realization that aberrations in data collected by the system 100 can be caused by events which are not detected by the instrumentation included in the system memory 100. For example, facility staff might accidentally crashed into a boiler with a forklift, damaging some equipment, and causing the boiler to operate inefficiently until the damage component is repaired. Data from the boiler systems module 145 may include an aberration showing a period of reduced efficiency on a certain date. However, the instrumentation included in the system 100 might not provide sufficient information to allow a user of the system 100 to conclude that the aberration in the data was caused by an accident. Thus, a user of the system 100 might incorrectly assume the aberration in the data is an opportunity for further optimization and thus waste valuable time in attempting to investigate the cause of the aberration by analyzing data from the system 100 and or through the client report interface 115.
Thus, in some embodiments, the system 100 can include an events Journal module configured to allow users of the system 102 input descriptions of events, such as those that cannot be detected by the instrumentation included in the system 100.
As illustrated in
The event date input 2604 can be configured to allow user to input the date upon which the event occurred. In some embodiments, the event's date input 2604 can include a pop-up calendar allowing the user to choose the date of a graphical representation of a monthly or yearly calendar.
The description input 2606 can include a text input field allowing the user to manually enter a description of the event. In some embodiments, description input 2606 can include predetermined optional selections for indicating the type of event (e.g. power outage, scheduled maintenance, etc.), cause of the event (e.g., accident, weather, etc.) and/or other types of information. Such predetermined optional selection configurations can further simplify the organization and analysis of such events Journal entries. Optionally, the interface 2600 can also include a command input 2610 which can include one or more typical operation buttons, such as, for example but without limitation, save, cancel, delete, and/or other functions.
The system 100 can be configured to save such events Journal entries, such as that described above with reference to
Another aspect of the least one of the embodiments disclosed herein includes the realization that with a collection of manually entered events, it can be inconvenient for a user of the system 102 associate or correlate entries from the events Journal with aberrations in the data included in a report. Thus, in some embodiments of the system 100, entries from the event journal and be displayed along with data in a report.
For example,
For example, as illustrated in
Additionally, the interface 115 can be configured to display for the user, data representing the event corresponding to the visual cue in the portion 3000. For example, as shown in
In some embodiments, as illustrated in
In some embodiments, the interface number 115 can also be configured to display indications and/or portions of an event description on the other parts of the display, for example, in the area identified by reference 3008. Other techniques can also be used.
Another aspect of at least one of the embodiments disclosed herein includes the realization that when the interface 115 is programmed to provide alerts to one or more employees based on the occurrence of predetermined events, certain events causing alerts to be generated may occur more frequently. In some situations, a recipient of the alerts may find it annoying to receive an excessive number of alerts. Further, some recipients may prefer to block all alerts during certain predetermined times, such as, for example, earn your vacation or other times when the employee does not wish to receive such alerts.
Thus, with reference to
The date restriction input 3202, and some embodiments, includes a plurality of fields arranged to allow a user to specify particular days in particular time ranges during those days in which during which the employee or user would like to receive alerts. As noted above with reference to the flowchart of
The total alert block input 3204 can be configured to allow a user to block all alerts, also described as “e-Notices”. In the illustrated configuration, the input 3204 includes a simple radio button that can be “clicked” by a user operating the interface 115.
The forwarding input 3206 can be configured to allow a user to indicate that they are not currently in the office but to forward any alerts to one or more alternative e-mail addresses or text message addresses (i.e., phone numbers). Other configurations can also be used.
Although not illustrated in
The foregoing disclosure has oftentimes partitioned devices and systems into multiple modules (e.g., components, computers, servers) for ease of explanation. It is to be understood, however, that one or more modules may operate as a single unit. Conversely, a single module may comprise one or more subcomponents that are distributed throughout one or more locations. Furthermore, the communication between the modules may occur in a variety of ways, such as hardware implementations (e.g., over a network, serial interface, parallel interface, or internal bus), software implementations (e.g., database passing variables), or a combination of hardware and software. Moreover, in some embodiments, the systems and methods described herein can advantageously be implemented using computer software, hardware, firmware, or any combination of software, hardware, and firmware.
The various features and processes described above can be used independently of one another, or can be combined in various ways. All possible combinations and subcombinations are intended to fall within the scope of this disclosure. Indeed, the novel methods and systems described herein can be embodied in a variety of other forms; furthermore, various omissions, substitutions, and changes in the form of the methods and systems described herein can be made without departing from the spirit of the disclosure. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the disclosure.
This application claims priority benefit under 35 U.S.C. § 119(e) to the following United States provisional patent applications, each of which is hereby incorporated herein by reference in its entirety to be considered part of this specification: U.S. Provisional Patent Application No. 61/052,607, filed May 12, 2008, and entitled “SYSTEMS AND METHODS FOR ASSESSING ENERGY USE AND ENVIRONMENTAL IMPACT”; and U.S. Provisional Patent Application No. 61/053,645, filed May 15, 2008, and entitled “SYSTEMS AND METHODS FOR OPTIMIZING ENERGY USE AND ENVIRONMENTAL IMPACT.”
Number | Date | Country | |
---|---|---|---|
61052607 | May 2008 | US | |
61053645 | May 2008 | US |