WO2013136295A1 - Method for automatically reading a utility meter, retrofittable meter reader and automatic meter reading system using the same - Google Patents

Method for automatically reading a utility meter, retrofittable meter reader and automatic meter reading system using the same Download PDF

Info

Publication number
WO2013136295A1
WO2013136295A1 PCT/IB2013/052033 IB2013052033W WO2013136295A1 WO 2013136295 A1 WO2013136295 A1 WO 2013136295A1 IB 2013052033 W IB2013052033 W IB 2013052033W WO 2013136295 A1 WO2013136295 A1 WO 2013136295A1
Authority
WO
WIPO (PCT)
Prior art keywords
meter
digit
utility
image
retrofittable
Prior art date
Application number
PCT/IB2013/052033
Other languages
French (fr)
Inventor
Lars Wallden
Original Assignee
Northstar Telemetrics, S. L.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Northstar Telemetrics, S. L. filed Critical Northstar Telemetrics, S. L.
Publication of WO2013136295A1 publication Critical patent/WO2013136295A1/en

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
    • G01D4/00Tariff metering apparatus
    • G01D4/008Modifications to installed utility meters to enable remote reading
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02BCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
    • Y02B90/00Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
    • Y02B90/20Smart grids as enabling technology in buildings sector
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S20/00Management or operation of end-user stationary applications or the last stages of power distribution; Controlling, monitoring or operating thereof
    • Y04S20/30Smart metering, e.g. specially adapted for remote reading

Definitions

  • the invention relates to the field of automatic reading of utility meters, and in particular using optical means.
  • the present invention concerns a retrofittable meter reader (i.e., an add-on type meter reader) for automatic reading of a utility meter having a display including one or more digits.
  • the invention also relates to a method for automatically reading a value on the display of a utility meter.
  • a further aspect of the present invention refers to a self-adjusting optical automatic meter reading system.
  • utility meters are typically used to measure the volume or quantity of a given utility (such as for example gas, water or electricity) consumed by domestic and industrial users that are supplied with said utility by a utility supplier.
  • a given utility such as for example gas, water or electricity
  • Said utility meters typically comprise means for viewing the measurement of the amount of utility that has been consumed (i.e. the meter readout value) in the form of a display with a plurality of digits.
  • the meter has a mechanical display, in which each digit is provided by a rotating wheel bearing numbers from 0 to 9.
  • each digit in the display is provided by an arrow rotating on a numbered plate, and the tip of the arrow pointing at the actual value of the digit from 0 to 9.
  • the meter has an electronic or digital display on which several digits are displayed.
  • the utility company uses the collected data, in addition to for billing purposes, to predict for example the load of the utility grid and adjust the utility production to the predicted demand.
  • the meter readout data is collected with low frequency (from 4 to 12 times per year), that the manual collection process is prone to error, and that little feedback can be obtained from the user regarding its consumption pattern, the accuracy of these predictions is poor.
  • smart grid that is, a utility grid that uses communications technology to gather and act on information, such as about the behaviors of suppliers and consumers information, in an automated fashion to improve the efficiency, reliability, economics, and sustainability of the production and distribution of a given utility.
  • add-on AMR devices that can be fitted to an existing conventional meter provide the AMR functionality, without requiring substitution of the currently installed meters.
  • Some of such add-on AMR devices are based on generating electrical pulses when movement, or a full turn, of a mechanical wheel is detected, and counting the number of pulses to obtain the meter readout. This solution is, however, very limited to a certain type of utility meters.
  • neural networks and particularly feed- forward neural networks with back propagation and comprising one or more hidden layers, to perform pattern classification.
  • a typical feed-forward neural network comprises a plurality of neurons arranged in one or more layers.
  • Figure 6 illustrates an example of a feed-forward neural network 600 that comprises an input layer 601 , an output layer 603 and an intermediate layer 602, which is usually referred to as an inner or hidden layer.
  • the input layer 601 is formed just by the inputs ⁇ .,., ⁇ to the network 600.
  • a hidden layer 602 which includes, for example, any number of hidden neurons 604, or hidden units, placed in parallel.
  • the neurons 604 perform a weighted summation of the inputs, which then passes a nonlinear activation function ⁇ , also called the neuron function.
  • the output layer 603 in this example comprises one single output y obtained from a weighted summation of the outputs of the hidden neurons 604.
  • the arrows in Figure 6 represent a parameter of the network 600.
  • the neurons 604 in the hidden layer 602 of the network 600 are similar in structure to those of the perceptron, with the exception that their activation functions may be any differential function.
  • the output of the network 600 is given by
  • n is the number of inputs and n h is the number of neurons in the hidden layer.
  • the variables ! are the parameters of the network model that are represented collectively by the parameter vector ⁇ .
  • the neural network model may be represented by the compact notation g(0, x).
  • a neural network has two working states: a training state and an operational state.
  • a training state When the network is in the training state, it adjusts the weights of the neurons in the inner layers of the network based on a training set of input data for which the correct classification is already known. Training is performed until a satisfactory classification output is achieved.
  • the network When the network is in the working state, it classifies new input data according to the predetermined weights.
  • the output y of the network is a value ranging from -1 to 1 . Once the network has been properly trained to recognize a given pattern, the output of the network should be 1 when said pattern is provided as input to the network, otherwise the output should be -1 .
  • An aspect of the present invention relates to a method for automatically reading a value on the display of a utility meter, wherein said display includes one or more digits.
  • the method is characterized in that it comprises the steps of:
  • the method of the present invention makes it possible to read, using optical means, traditional non-smart (i.e., non-AMR enabled) utility meter of different types, which may have different types of display, different number of digits, and said digits having different fonts.
  • the method disclosed herein can be applied to utility meters of analog (e.g., plate and arrow), mechanical (e.g., numbered wheel) and electronic types.
  • the method enables non-AMR enabled utility meters to implement smart meter functionality, such as AMR (Automatic Meter Reading), AMI, (Advanced Metering Infrastructure), or AMM, (Advanced Meter Management) to cite a few.
  • the method learns from the image captured with the image sensor, preferably a digital image sensor, the type of utility meter that needs to be read out.
  • the image recognition algorithm analyzes the image to find a match with a type of known utility meter (e.g., brand and model) or find a type that most resembles in appearance the meter shown in the image. Consequently, this method can be applied to a great variety of different types of meters.
  • step b) provides valuable information to the step of segmentation, or step c).
  • the number of digits that are to be segmented as single-digit images from a captured image will correspond to the number of digits on the display of a utility meter of the detected type.
  • the relative position of the digits on the display of the utility meter of the detected type can be used to guide the search for individual digits within the image of an entire display.
  • step b) is interrelated with step d).
  • step c) the segmentation of the captured image into single-digit images makes it possible to determine the values of many digits of the display from a same captured image.
  • the solution of the present invention requires only one image sensor.
  • step b) The detection of the type of utility meter in step b) combined with the segmentation into single-digit images of step c) allows the pattern recognition algorithm of step d) to be configured individually for each digit to obtain a good classification performance.
  • the pattern recognition algorithm is fed with single-digit images and analyzes them to decide the value of the digit shown. Said value will typically be between 0 and 9 if decimal base is used.
  • the pattern recognition algorithm could be configured to recognize digits in different bases, such as for example binary or hexadecimal.
  • the self-adjusting optical meter reading method of the present invention allows traditional non-smart meters to be used as smart meters in smart grid networks.
  • the method further comprises the step f) of storing the meter readout value in a first memory unit.
  • the method of the present invention adapts itself to the utility meter in order to be able to read the meter readout value.
  • the optically-read meter readout value is converted to a digital value that can be advantageously stored in a memory unit and be retrieved later for analysis, or other uses, or to be transferred to a remote device upon request.
  • the method further comprises the steps of comparing the meter readout value with the most-recent meter readout value stored in the first memory unit and, if the meter readout value is smaller than said most-recent utility readout value, discarding the meter readout value and repeating steps a) through e).
  • step d) advantageously comprises the additional steps of verifying the accuracy of the value of said digit and, if said accuracy is larger than or equal to a predetermined confidence threshold, storing the value of said digit and its corresponding single- digit image in a second memory unit, else, discarding the image and repeating steps a) through d).
  • the first memory unit and the second memory unit are different portions of a same memory module.
  • the step of verifying the accuracy assigns a percentage to a digit whose value has been determined from its corresponding single-digit image. This percentage is related to the likelihood according to the pattern recognition algorithm of the digit shown in the single-digit image having a given value (e.g., a value from 0 to 9) and not the others. If, for example the likelihood of one value is high while for all the other values is low, then said percentage is high. On the other hand, if the likelihood for more than one value is high, then said percentage is low. If said percentage is larger than or equal to a predetermined confidence threshold, then the digit is considered that has been correctly classified and the determined value is taken as valid.
  • the data relating to correctly classified digits is advantageously stored to be used later to retrain the pattern recognition algorithm.
  • the confidence threshold is set according to users preferences, and in some examples is preferably 50%, and more preferably 80%.
  • the step of verifying the accuracy of the value of said digit preferably comprises a sub step of counting the number of consecutive times that said accuracy is smaller than the predetermined confidence threshold. If the count for said digit exceeds a predetermined maximum count, before repeating steps a) through d), the method comprises the further step of retraining the pattern recognition algorithm for said digit to adjust its configuration parameters.
  • the predetermined maximum count is set according to users preferences. In some examples, said predetermined maximum count is 5, although in other examples the predetermined maximum count may be higher.
  • said step of retraining the pattern recognition algorithm uses values of said digit and their corresponding single-digit images stored in the second memory unit.
  • An advantage of the method of the present invention over those in the prior art is that the method described herein is continuously adapting to meter readout errors and environmental changes such as light conditions, dust build up, time conditions, and physical adjustments of a meter reader in relation to the display of a utility meter. Retraining the pattern recognition algorithm with previously correctly classified digits, and particularly with the most recently correctly classified one, allows the algorithm to self-adapt to said errors and changes.
  • the method additionally comprises the steps of verifying the accuracy of the type of utility meter detected; and, if said accuracy is smaller than a second predetermined confidence threshold, discarding the image and repeating steps a) and b).
  • a detected type of utility meter is only considered as valid when its accuracy, defined as a percentage, reaches a given confidence threshold.
  • said second confidence threshold is preferably 50%, and more preferably 80%.
  • the step of verifying the accuracy of the detected type of utility meter may optionally comprise a sub step of counting the number of consecutive times that said accuracy is smaller than the second predetermined confidence threshold. If the count exceeds a predetermined second maximum count, such as for instance 5 times, then the image recognition algorithm is retrained to adjust its configuration parameters.
  • the method optionally comprises the further step of retraining the image recognition algorithm with a predefined periodicity to adjust its configuration parameters. Said periodicity is related to the number of times that the type of utility meter has been detected with an accuracy larger than or equal to the second predetermined confidence threshold.
  • the image recognition algorithm is retrained to continuously adapt to aging of the utility meter and varying conditions of the environment.
  • Said predefined periodicity is advantageously based on the number of actual meter readings and can be set by the user.
  • said predetermined periodicity is set to a number of meter readings sufficiently large (preferably 1000 meter readings or more) so as to provide enough data for retraining the image pattern algorithm in a reliable manner.
  • steps a) through e) are preferably repeated at regular or irregular periodic intervals.
  • This feature enables obtaining a sequence of readings of the utility meter.
  • the periodicity between consecutive readings can be regular (i.e., constant period) or irregular (i.e., variable period), and can be adjusted to take into account different factors that affect the user's consumption of the utility service.
  • the method allows self-adjusting automatic optical meter reading of traditional utility meters at programmable intervals.
  • steps a) through e) are repeated when a triggering event is detected.
  • a device implementing the method disclosed herein may be in a stand-by mode of low energy consumption until a triggering event causes them to carry out the steps of the method and complete a reading of the utility meter, allowing the device to save energy.
  • Some possible triggering events comprise: Some possible triggering events comprise time events, date events, a communication with an external device, climate conditions, sensor inputs, motion detection events, proximity detection events, sound detection events, security events and load detection events.
  • the method comprises a step of adding a time stamp to the meter readout value.
  • adding a time stamp to the meter readout value it is possible to keep track of times and dates when a specific meter readout value was obtained. This information can be advantageously used for statistical analysis of utility consumption and/or for retraining the pattern recognition and/or image recognition algorithms.
  • step b) and step c) comprise a step of digital filtering the image.
  • the step of digital filtering involves applying a Radon transformation on the image.
  • the digital filtering prepares the image for its segmentation into single-digit images.
  • the step of digital filtering involves image cleanup, removing unwanted noise from the image, blob detection and/or region of interest detection.
  • the pattern recognition algorithm is a neural network.
  • the neural network is preferably a feed-forward back-propagation neural network comprising an input layer having at least 16 neurons, at least one hidden layer having at least 32 neurons and an output layer having 10 neurons.
  • the image recognition algorithm is based on a second neural network.
  • neural networks enable the pattern recognition and/or the image recognition algorithm to learn the unique attributes of utility meters and their environment and adapt to changes accordingly.
  • the method comprises the steps of detecting again the type of utility meter from a newly captured image by means of the image recognition algorithm, and retraining the pattern recognition algorithm for all digits of the display of the utility meter of the detected type to adjust their configuration parameters.
  • a second aspect of the present invention relates to a retrofittable meter reader for automatic reading of a utility meter having a display including one or more digits.
  • the retrofittable meter reader comprises a digital image sensor adapted to face the display of the utility meter when the retrofittable meter reader is mounted on the utility meter, and to capture images of said display.
  • the retrofittable meter reader is characterized in that it further comprises a meter type detector operatively connected to the digital image sensor, the meter detector being configured to detect the type of utility meter from the images captured by the digital image sensor; an image segmentation module operatively connected to the digital image sensor and to the meter type detector, the image segmentation module being configured to segment each image captured by the digital image sensor into as many single-digit images as there are digits on the display of a utility meter of the type detected by the meter type detector; a digit detector operatively connected to the image segmentation module and to the meter type detector, the digit detector being configured to detect the value of each digit from its corresponding single- digit image; a digit combination unit operatively connected to the digit detector and to the meter type detector, the combination unit being configured to obtain the meter readout value from the detected values of the digits; and a communications interface adapted to transmit the meter readout values to a remote device for further processing and/or display.
  • the retrofittable meter reader provides smart meter functionality to a traditional non-smart (i.e., non-AMR enabled) meter. Without requiring manual tuning or set-up, it may be applied to the traditional non-smart utility meter and automatically adjust itself to the meter conditions, and to any changes of the original conditions.
  • non-smart i.e., non-AMR enabled
  • the detection of the type of utility meter and of the values of the digits on the display of the meter of the detected type from captured images of said display allows the retrofittable meter reader to self-adapt to different types of utility meters and perform satisfactorily, and to adjust itself for aging and environmental and/or mechanical changes, such as varying light conditions.
  • the retrofittable meter reader of the present invention solves the problems of the prior art solutions and presents additional advantages. Thanks to the meter type detector, once the type of meter has been detected, the meter reader can configure itself to recognize digits of a given type of meter. Moreover, by segmenting the image of the display of the utility meter in a number of single-digit images, the retrofittable meter reader can process, either sequentially or in parallel, several digits shown in a single image. Then, the digit detector can be configured, with appropriate configuration parameters for each digit, to handle the specificities of each one of the digits of the display of the detected type of utility meter.
  • the retrofittable meter reader of the present invention may be easily attached to virtually any mechanical or electronic meter with a numeric readout, regardless whether it is of a mechanical readout type (e.g., based on a wheel or arrow) or an electronic readout type, thus converting the traditional utility meter into a smart utility meter in a much more cost-efficient manner than through replacement of traditional utility meters by ones.
  • a mechanical readout type e.g., based on a wheel or arrow
  • an electronic readout type e.g., based on a wheel or arrow
  • the digit detector of the retrofittable meter reader comprises a pattern recognition algorithm based on a first neural network.
  • the configuration parameters of the first neural network are preferably different for at least some digits.
  • the meter type detector preferably comprises an image recognition algorithm based on a second neural network.
  • the use of neural network classification for the image recognition and/or pattern recognition algorithms allows the meter type detector and/or the digit detector to implement learning based on previous correct classifications and self-training to adapt to varying conditions in which the retrofittable meter reader has to operate.
  • the retrofittable meter reader further comprises a memory module operatively connected to the meter type detector, the digit detector and to the digit combination unit.
  • the memory module allows the retrofittable meter reader to store data locally. Some of this data may comprise data of previous meter readout values, which can eventually be transmitted to a remote device by means of the communications interface. Some other data may comprise configuration parameters or single-digit images, which can advantageously be used for programming f the meter type detector, the segmentation unit and/or the digit detector.
  • the retrofittable meter reader comprises an infrared light source adapted to shine light on the display of the utility meter when the retrofittable meter reader is mounted on the utility meter, and an infrared filter arranged on the digital image sensor. This allows the retrofittable meter reader to capture images of the display of a utility reader even under low illumination conditions, or even in the dark.
  • the retrofittable meter reader comprises a wide-angle objective lens coupled to the digital image sensor. This allows the retrofittable meter reader to capture images of the display of a utility reader even when the digital image sensor is very close to said display.
  • the communications interface provides at least one wireless connectivity standard. This makes it possible for a retrofittable meter reader to exchange easily information with other meter readers, without cumbersome wire arrangements.
  • the at least one wireless connectivity standard is the IEEE 802.15.4 standard, which is particularly suitable for power-constrained devices.
  • the retrofittable meter reader comprises a microcontroller.
  • the meter type detector, the image segmentation module, the digit detector, and the digit combination unit are advantageously included in said microcontroller, which simplifies the hardware requirements of the meter reader.
  • the retrofittable meter reader comprises at least one of a serial connectivity unit and a cellular connectivity unit. This provides enhanced connectivity of the meter reader with other remote devices, such as a server system, that can send configuration instructions and/or meter reading polling requests.
  • the retrofittable meter reader also comprises a rechargeable battery.
  • the rechargeable battery is adapted to be recharged by means of harvesting energy locally. This gives a lengthened autonomy to the retrofittable meter reader.
  • the retrofittable meter reader is mains-powered.
  • the retrofittable meter reader comprises a programmable timer to force the retrofittable meter reader to read the utility meter at periodic intervals.
  • the programmable timer allows adjusting the periodicity between consecutive readings of the utility meter to take into account, among others, different utility user consumption profiles, day/night consumption regimes or seasonality.
  • Some embodiments of the retrofittable meter reader comprise an activation unit adapted to detect a triggering event and to force the retrofittable meter reader to read the utility meter in response to said triggering event. Thanks to the activation unit, the meter reader may advantageously remain in a stand-by mode of low energy consumption during most of the time, waking up from said stand-by state only when it is necessary to read out the utility meter. Thus, the activation unit allows the meter reader to save energy, which in the case of a battery- powered meter reader translates into an extended autonomy.
  • the retrofittable meter reader advantageously accepts data from standard inputs like pulse, current, voltage and digital values, and may read the value on the display of a traditional non-smart utility meter via optical reading techniques.
  • the reader may also set digital and analog outputs to control peripheral devices, switches, relays, etc. This allows traditional mechanical/electronic meters to gain smart meter and predictive functionality.
  • a further aspect of the present invention relates to a self-adjusting optical automatic meter reading system that comprises a plurality of retrofittable meter readers in accordance with the second aspect of the present invention, wherein each reader of said plurality retrofittable meter readers is adapted to be mounted on a utility meter, and a server system operatively interconnected by means of a network portion to each reader of the plurality of retrofittable meter readers.
  • the server system is configured to send configuration instructions and meter reader polling requests selectively to any reader of said plurality of retrofittable meter readers, and to receive the meter readout values from said plurality of retrofittable meter readers.
  • the retrofittable meter readers disclosed herein are very low cost and may be attached to any mechanical or electronic meter with very little manual labor, thereby making their meter readout values available in a digital format to a server system such as a data concentrator, a computer or the smart grid.
  • a server system such as a data concentrator, a computer or the smart grid.
  • Yet another aspect of the present invention relates to a computer program product, implemented on computer-readable non-transitory storage medium, that is configured for, when run on a computer or a processor, executing at least some of steps of the method for automatically reading a utility meter according to the present invention.
  • the algorithms and the determination of certain configuration parameters and local conditions that are required in many of the steps of the method may advantageously be programmed using software languages.
  • the computer program product is configured for executing at least steps b) through e).
  • the retrofittable meter reader of the present invention may be used to read the current meter readout value as well as to calculate statistical data of the meter consumption.
  • the meter reader may also predict future consumption data based on a set of input variables.
  • the retrofittable meter reader preferably has the ability to also control local loads connected to the utility meter through analog or digital outputs.
  • the retrofittable meter reader stores the meter readout values and trains a load prediction and forward load adjustment algorithm with said values and with input variables based, for instance, on time and other inputs such as climate, GPS location, time of day, date, or human behavior.
  • Historical data and time stamps are advantageously stored and used for training of the load prediction and forward load adjustment algorithm, which is preferably based on neural networks, and improving the self-adaption of the retrofittable meter reader to real-world values.
  • the retrofittable meter reader may predict if the usage of utility service may exceed the set-point and adjust its analog and digital outputs to change the predicted load so that it falls within the set-point.
  • load prediction and forward load control may be achieved on a local level as well as on cluster and grid level and at least one level of control may benefit from this.
  • the retroffitable meter reader enables and facilitates very exact predictions not based on data for a whole network, but based on data from at least one meter that makes it owns local prediction based on the input and historical data and self-learning load prediction and forward load adjustment algorithm. Error inputs are measured so that errors may be predicted based on the utility meter load and secondary inputs like temperature and pressure.
  • intelligent meter reading device optical automatic meter reading (OAMR) device or unit
  • optical automatic meter reader optical automatic meter reader
  • OAMR reader optical automatic meter reader
  • SMR smart meter reading unit
  • Figure 1 illustrates a simplified block diagram of a specific example of a self-adjusting Optical Automatic Meter Reading System according to the present invention.
  • Figure 2 shows a diagrammatic representation of a machine in the exemplary form of a client computer system suitable for the OAMR System of Figure 1 .
  • Figure 3 discloses a simplified block diagram of an exemplary intelligent meter reading device, in accordance the present invention.
  • Figure 4 shows an example of a OAMR server system suitable for the OAMR system described in Figure 1 .
  • Figure 5 illustrates an example of a functional block diagram of an OAMR Server System in accordance with the present invention.
  • Figure 6 illustrates an example of a feed-forward neural network that comprises an input layer, an output layer and an intermediate layer with hidden units.
  • Figure 7 discloses a simplified block diagram of an SMR unit in accordance with a specific embodiment of the present invention.
  • Figures 8 and 9 show an exemplary flow diagram of the operation of OAMR unit implementing the method in accordance with an aspect of the present invention.
  • Figure 10 shows another exemplary flow diagram of a Smart Meter Reader Operating procedure (or method) according to the present invention.
  • Figure 1 1 shows an exemplary interaction diagram of various systems/devices implementing OAMR-SMR Polling and Response Procedures in accordance with the present invention.
  • FIG. 1 illustrates a simplified block diagram of a specific example of a self-adjusting Optical Automatic Meter Reading (hereinafter OAMR) System according to the present invention which may be implemented in a network portion.
  • the OAMR System 100 includes one or more Smart Meter Readers (SMRs) 160 according to the present invention.
  • SMRs Smart Meter Readers
  • the OAMR System 100 may include a plurality of different types of components, devices, modules, processes, or systems, which, for example, may be implemented and/or instantiated via the use of hardware and/or combinations of hardware and software.
  • the OAMR System 100 may include one or more of the following types of components, devices, modules, processes, systems, or combinations thereof:
  • Client Computer System(s) 130 which advantageously includes a Web Browser 132;
  • Intelligent Meter Reading Device(s) 160 which advantageously comprises self-adapting, automated meter reading component(s) 166;
  • Residential/Commercial Device(s) 190 which may include intelligent thermostats, intelligent circuit breakers, intelligent sensors, intelligent controllers and/or devices, and/or intelligent appliances and household machines.
  • the OAMR System may additionally, or alternatively, comprise Industrial/Commercial Device(s), which may include intelligent thermostats, intelligent circuit breakers, intelligent sensors, intelligent controllers and/or devices, and/or intelligent appliances and machinery.
  • Industrial/Commercial Device(s) may include intelligent thermostats, intelligent circuit breakers, intelligent sensors, intelligent controllers and/or devices, and/or intelligent appliances and machinery.
  • the Remote Server System(s)/Service(s) 170 may advantageously include one or more of the following (or combinations thereof):
  • Utility alert services for alerting of low utility credit and service disconnection;
  • Social utility alerts for alerting social and health services of utility disconnection warnings;
  • the Intelligent Meter Reading Device(s) 160 may be operable to perform and/or implement various types of functions, operations, actions, and/or other features such as those described or referenced herein (e.g., such as those illustrated and/or described with respect to Figure 7 and Figure 3).
  • the OAMR Server System(s) 120 may be operable to perform and/or implement various types of functions, operations, actions, and/or other features such as those described or referenced herein (e.g., such as those illustrated and/or described with respect to Figure 5).
  • OAMR Systems 100 may be configured, designed, and/or operable to provide various different types of operations, functionalities, and/or features generally relating to OAMR and smart grid technologies. Further, as described in greater detail herein, many of the various operations, functionalities, and/or features of the OAMR Systems disclosed herein may enable or provide different types of advantages and/or benefits to different entities interacting with the OAMR Systems.
  • At least some OAMR Systems 100 may be configured, designed, and/or operable to provide a number of different advantages and/or benefits and/or may be operable to initiate, and/or enable various different types of operations, functionalities, and/or features, such as, for example, one or more of the following (or combinations thereof):
  • the OAMR Server System 102 includes a Smart Grid Load Prediction Feedback and Forward Load Adjustment module 122, which enables the OAMR System 100 to provide said functionality.
  • the OAMR Server System(s) may be configured to be operable as Pre-payment Gateway(s).
  • At least a portion of the various types of functions, operations, actions, and/or other features provided by the OAMR System 100 may be implemented at one or more client system(s), at one or more server system(s), and/or combinations thereof.
  • the OAMR System 100 may be operable to utilize and/or generate various different types of data and/or other types of information when performing specific tasks and/or operations. This may include, for example, input data/information and/or output data/information.
  • the OAMR System 100 may be operable to access, process, and/or otherwise utilize information from one or more different types of sources, such as, for example, one or more local and/or remote memories, devices and/or systems. Additionally, the OAMR System 100may be operable to generate one or more different types of output data/information, which, for example, may be stored in memory of one or more local and/or remote devices and/or systems. Examples of different types of input data/information and/or output data/information which may be accessed and/or utilized by the OAMR System may include, but are not limited to, one or more of those described and/or referenced herein.
  • Multiple instances or threads of the OAMR System 100 may be concurrently implemented and/or initiated via the use of one or more processors and/or other combinations of hardware and/or hardware and software.
  • various aspects, features, and/or functionalities of the OAMR System 100 may be performed, implemented and/or initiated by one or more of the various systems, components, systems, devices, procedures, processes, etc., described and/or referenced herein.
  • a given instance of the OAMR System 100 may access and/or utilize information from one or more associated databases. At least a portion of the database information may be accessed via communication with one or more local and/or remote memory devices. Examples of different types of data which may be accessed by the OAMR System 100 may include, but are not limited to, one or more of those described and/or referenced herein.
  • one or more different threads or instances of the OAMR System 100 may be initiated in response to detection of one or more conditions or events satisfying one or more different types of minimum threshold criteria for triggering initiation of at least one instance of the OAMR System 100.
  • Various examples of conditions or events which may trigger initiation and/or implementation of one or more different threads or instances of the OAMR System 100 may include, but are not limited to, one or more of those described and/or referenced herein.
  • various different types of encryption/decryption techniques may be used to facilitate secure communications between devices in OAMR System(s).
  • security techniques include, but are not limited to, one or more of the following (or combinations thereof): random number generators, SHA-1 (Secured Hashing Algorithm), MD2, MD5, DES (Digital Encryption Standard), 3DES (Triple DES), RC4 (Rivest Cipher), ARC4 (related to RC4), TKIP (Temporal Key Integrity Protocol, uses RC4), AES (Advanced Encryption Standard), RSA, DSA, DH, NTRU, and ECC (elliptic curve cryptography), PKA (Private Key Authentication), Device- Unique Secret Key and other cryptographic key data, and SSL.
  • Other security features contemplated may preferably include the use of well-known hardware-based and/or software- based security components.
  • one or more functions of the OAMR System 100 may monitor and control pre- payment of utility services through a combination of the OAMR reader, a smart utility switch and a pre-payment gateway to control the supply of utility services to at least some of the users.
  • Various examples of conditions or events which may trigger initiation and/disconnection of one or more utility service by the OAMR System 100 may include, but are not limited to, one or more of those described and/or referenced herein.
  • OAMR System 100 described in Figure 1 is but one example from a wide range of OAMR Systems which may be implemented.
  • Other examples of the OAMR System may include additional, fewer and/or different components/features that those illustrated in the exemplary OAMR System 100 of Figure 1 .
  • the SMR unit(s) may without manual tuning or setup be applied to a traditional non-smart utility meter for electricity, gas, and water or similar, said non-smart utility meter being a mechanical readout meter (i.e., based on a wheel or arrow) or an electronic readout meter.
  • the SMR unit through a unique method, adapts itself to a standard utility meter and then reads optically the meter readout values.
  • the SMR unit converts the optically- read meter readout value to a digital value that is stored in the SMR unit and/or transmitted over a wireless or serial link to a data concentrator or computer.
  • one or more SMR units are connected together by means of a wireless network of type IEEE 802.15.4, Zigbee, wireless M-bus, sub 1 GHz networks Wi-Fi.
  • a wireless network of type IEEE 802.15.4, Zigbee, wireless M-bus, sub 1 GHz networks Wi-Fi.
  • cable, optics and serial communication of data may also be used for connectivity.
  • the SMR units may additionally have analog and/or digital inputs and/or outputs to interface the SMR units with real-world (e.g., domestic or industrial) equipment such as switches, actuators, pumps, fans and regulators etc.
  • real-world e.g., domestic or industrial
  • real-world equipment e.g., domestic or industrial equipment such as switches, actuators, pumps, fans and regulators etc.
  • the SMR units may advantageously have their own IP address. At least some SMR units may preferably have a built in encryption engine that allows for 128bit (or higher) AES encryption of the data for high security. Furthermore, the SMR units may optionally be reprogrammed over the air (OTA) remotely through the wireless network / internet to allow for software updates.
  • OTA over the air
  • the SMR units may be programmed / configured before or during operation using a standard PLC (i.e., programmable logic controller) programming method.
  • the SMR units may advantageously be powered by rechargeable Li-pol batteries that may be recharged by harvesting energy locally (e.g., via micro energy harvesting, solar energy collectors and/or the electrical grid).
  • FIG. 7 discloses a simplified block diagram of an SMR unit in accordance with a specific embodiment of the present invention, in which an SMR unit 199 includes a microcontroller unit 191 , an image sensor 192 and a mass storage memory 193 (e.g., SPI RAM).
  • the SMR unit 199 may be battery- or mains-powered 196 and has an interface 197 to other computers through a wireless connection of type IEEE 802.15.4 Zigbee Pro, wireless M- bus or Sub 1 GHz networks.
  • the SMR unit 199 advantageously also comprises serial connectivity through wires (e.g., general I/O module 198) and cellular connectivity (e.g., GPRS unit 182).
  • the microcontroller unit 191 includes, for example, a CPU and several peripheral devices that handle communication with the image sensor 192 the radio traffic, or the external mass storage memory 193.
  • the microcontroller unit 191 runs a program that handles the service processes, the image acquisition, the radio and serial communication and the adaptive self adjusting image algorithm.
  • the image sensor 192 may be a standard CMOS 640 x 480 pixel image sensor or a higher resolution sensor.
  • the image sensor 192 has an optical lens 181 attached with a wide- angle objective and an IR filter to allow the SMR unit 199 to be attached very close to a meter and work well under low light conditions.
  • the SMR unit 199 advantageously comprises an internal IR light source that is used if low light conditions exist.
  • the functionality that significantly distinguishes an SMR unit according to the present invention from any existing optical meter reader technology is that the SMR unit of the present invention works with a self-learning image recognition and classification technology based on a multi-layer feed-forward back-propagation neural network.
  • the neural network includes three or more layers with neurons, connected together according to Figure 6.
  • a first layer may advantageously comprise 16 or more input neurons
  • a second or more layers may preferably include 32 or more hidden neurons
  • an output layer may comprise 10 neurons representing each one of the values from 0 to 9.
  • the neural network may have a unique set of weights for at least one digit in the readout, thereby making at least one digit independent of the other digits in the mechanical wheel or electronic segment.
  • the recognition and classification algorithm advantageously also include one or more of the following routines:
  • an SMR unit when an SMR unit reads the meter value, triggered either by an external command received from the wireless network or by an internal timer, the SMR unit starts by initializing itself, taking an image snapshot (digital photo) of the meter and storing the image in the memory storage.
  • the image acquired by the (digital) image sensor is filtered, segmented and transformed by a Radon transformation function and the result fed into the neural network for classification.
  • the digits of the meter readout are classified separately. For a given digit, the weights corresponding to said digit are loaded into the neural network, the corresponding data is fed into the input neurons of the network, and the network is stepped forward, activated. The result of the hidden neurons of the neural network is then forwarded to the 10 output neurons, each corresponding to a number from 0 to 9. On a successful classification, only one output neuron has a value close to 1 and the other 9 output neurons have a value close to -1 . That is the optimal way of functioning of the neural network, in which a digit read from the image may be securely classified as the number represented by the output neuron with the value 1 .
  • the detected meter readout value may optionally be compared with last readout value that was considered to be valid to verify whether the currently detected value is equal or greater than said last readout value. Otherwise, an unknown error may have occurred, so the currently detected value is discarded and the image is read (i.e., analyzed) again.
  • the unique functionality of the SMR unit of the present invention resides in its capability to itself learn the specific meter type and its readout. This is achieved by means of an adaptive and self-learning process.
  • the self-learning process is first run when the SMR unit is powered by the first time.
  • the SMR unit is equipped with a training set of images representing numbers from 0 to
  • At least one image of each number exists in 10 different versions with some random image noise proportionally introduced in the images. That gives a total of 10 clean number images, 0 to 9 and 90 "noisy" images, 0 to 9 with 2, 4, 6, 8 etc. up to 20% noisy images.
  • the microcontroller unit, the memory and the image sensor are initialized and a snapshot is taken of the meter readout. The image is cleaned and segmented and the number of digits in the meter readout is counted. Accordingly, as many sets of weights are created as there are digits in the meter readout.
  • the neural network initializes its weights with random numbers.
  • the network is then trained with the clean and the noisy images of numbers. This process is done independently and repeated for each digit in the display readout.
  • the digit weights are stored in the memory of the SMR unit.
  • the network is tested against the clean numbers so that the initial classification can be accepted. Then the first snapshot is segmented as described above and the image digits are classified by the network, one digit for at least one set of weights.
  • the success of the classification is measured through the neural network output neurons status. For a successful classification, only one neuron may be close to 1 and the other neurons close to -1 . The correct value is then that of the output neuron with a value of 1 . If all the digits are classified with only one output neuron set to 1 , the network may be accepted as properly trained and the SMR unit changes its working state to an operational state.
  • a manual check may be performed to manually verify the SMR unit initial classification and output result.
  • a classification result occurs in which for one or more digits more than one output neuron reaches a value close to 1 , or no output neuron reaches a value close to 1 , the classification has not been successful and the neural network has to be retrained to properly classify said one or more digits.
  • the SMR unit may advantageously store the last 100 readings of the digits of the meter readout.
  • the stored images are used and noise is introduced to the images.
  • the images are copied in 10 copies and proportional noise is introduced to 9 of the images ranging from 2 - 20% noise.
  • the network is then retrained for a given digit with a total of 1000 images.
  • the network is verified with the last 10 clean digit images and if only one output neuron is set to 1 the network classification is considered to be working properly and the new weights for that digit are stored and the network is set to operational.
  • the SMR unit or the OAMR system may at regular time intervals retrain the network without any error having occurred, but simply to compensate for aging, dust and other time effects.
  • FIG. 3 a simplified block diagram of an exemplary intelligent meter reading device 300, configured as a client system, in accordance with a specific embodiment of the present invention.
  • the intelligent meter reading device 300 advantageously includes OAMR Intelligent Meter Reading Device App Component(s) which have been configured or designed to provide functionality for enabling or implementing at least a portion of various OAMR techniques at the client computer system 300.
  • various aspects, features, and/or functionalities of the intelligent meter reading device 300 may be performed, implemented and/or initiated by one or more of the following types of systems, components, devices, procedures, processes, or combinations thereof:
  • Geolocation module 346
  • Peripheral Devices 331 are Peripheral Devices 331 ;
  • Motion detection module 340
  • Wireless communication module(s) 345
  • Neural network component 31 1 • Optical wide-angle lens
  • the intelligent meter reading device 300 may include a variety of components, modules and/or systems for providing various functionalities.
  • the intelligent meter reading device 300 may preferably include self-adapting, automated meter reading components 360, which, for example, may include, but are not limited to, one or more of the following (or combinations thereof):
  • Database components 364 such as those illustrated, described, and/or referenced herein;
  • Processing components 366 such as those illustrated, described, and/or referenced herein;
  • Other components 368 which, for example, may include components for facilitating and/or enabling the intelligent meter reading device 300 to perform and/or initiate various types of operations, activities, functions such as those described herein.
  • the self-adapting, automated meter reading component(s) 360 may be operable to perform and/or implement various types of functions, operations, actions, and/or other features such as, for example, one or more of the following (or combinations thereof):
  • multiple instances or threads of the self-adapting, automated meter reading component(s) 360 may be concurrently implemented and/or initiated via the use of one or more processors and/or other combinations of hardware and/or hardware and software.
  • various aspects, features, and/or functionalities of the self-adapting, automated meter reading component(s) 360 may be performed, implemented and/or initiated by one or more of the following types of systems, components, systems, devices, procedures, processes, or combinations thereof:
  • Flash memory Mass storage memory that stores image and digital data
  • Radio unit - Communicate with other SMR units and coordinator/server in a mesh network based on the IEEE 802.15.4 or similar standard;
  • Image filtering procedure prepares the image for classification using Radon transformation
  • Energy storage device e.g., battery
  • local energy harvest / charging
  • one or more different threads or instances of the self-adapting, automated meter reading component(s) 360 may be initiated in response to detection of one or more conditions or events satisfying one or more different types of minimum threshold criteria for triggering initiation of at least one instance of the self-adapting, automated meter reading component(s) 360.
  • Various examples of conditions or events which may trigger initiation and/or implementation of one or more different threads or instances of the self- adapting, automated meter reading component(s) may include, but are not limited to, one or more of the following (or combinations thereof):
  • Time event triggers the SMR unit to read the meter value
  • Network event triggers the SMR unit to read the meter value and check accuracy
  • a given instance of the self-adapting, automated meter reading component(s) 360 may access and/or utilize information from one or more associated databases. In at least one example, at least a portion of the database information may be accessed via communication with one or more local and/or remote memory devices. Examples of different types of data which may be accessed by the self-adapting, automated meter reading component(s) 360 may include, but are not limited to, one or more of the following (or combinations thereof):
  • Some of the various types of functions, operations, actions, and/or other features which may advantageously be provided by the self-adapting, automated meter reading component(s) 360 include:
  • the intelligent meter reading device 300 may further include, but is not limited to, one or more of the following types of components, modules and/or systems (or combinations thereof):
  • At least one processor 310 include one or more commonly known CPUs which are deployed in many of today's consumer electronic devices, such as, for example, CPUs or processors from the Freescale or Texas Instruments family of microprocessors, etc.
  • the at least one processor 310 may be specially designed hardware, such as FPGAs, Digital Signal
  • a memory such as non-volatile RAM and/or ROM also forms part of CPU.
  • the CPU may be responsible for implementing specific functions associated with the functions of a desired network device.
  • the CPU preferably accomplishes one or more these functions under the control of software including an operating system, and any appropriate applications software.
  • Memory 316 which, for example, may include volatile memory (e.g., RAM), non-volatile memory (e.g., disk memory, FLASH memory, EPROMs, etc.), unalterable memory, and/or other types of memory.
  • volatile memory e.g., RAM
  • non-volatile memory e.g., disk memory, FLASH memory, EPROMs, etc.
  • unalterable memory e.g., unalterable read-only memory
  • the memory 316 includes functionality similar to at least a portion of functionality implemented by one or more commonly known memory devices such as those described herein and/or generally known to one having ordinary skill in the art.
  • one or more memories or memory modules e.g., memory blocks
  • the program instructions may, for example, control the operation of an operating system and/or one or more applications.
  • the memory or memories may also be configured to store data structures, metadata, time code synchronization information, and/or information/data relating to other features/functions described herein. Because such information and program instructions may be employed to implement at least a portion of the OAMR techniques described herein, various aspects described herein may be implemented using machine readable media that include program instructions, state information, etc.
  • machine-readable media include, but are not limited to, magnetic media such as hard disks, flash memory; optical media such as CD-ROM disks; magneto-optical media such as floptical disks; and hardware devices that are specially configured to store and perform program instructions, such as read-only memory devices (ROM) and random access memory (RAM).
  • program instructions include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer using an interpreter.
  • Interface(s) 306 which, for example, may include wired interfaces and/or wireless communication interfaces.
  • the interface(s) 306 include functionality similar to at least a portion of functionality implemented by one or more computer system interfaces such as those described herein and/or generally known to one having ordinary skill in the art.
  • the wireless communication interfaces are configured or designed to communicate with selected computer systems, remote servers, other wireless devices (e.g., PDAs, cell phones, player tracking transponders, etc.), etc.
  • Such wireless communication may be implemented using one or more wireless interfaces/protocols such as, for example, 802.1 1 (WiFi), 802.15
  • OAMR device driver(s) 342 includes functionality similar to at least a portion of functionality implemented by one or more computer system driver devices such as those described herein and/or generally known to one having ordinary skill in the art.
  • the power source 343 may include at least one mobile power source (e.g., battery) for allowing the intelligent meter reading device 300 to operate in a wireless and/or mobile environment.
  • the power source 343 may be implemented using a rechargeable, Li-Polymer battery.
  • the power source 343 may be designed to be flexible with local energy harvesting.
  • Geolocation module 346 which, for example, may be configured or designed to acquire geolocation information from remote sources and use the acquired geolocation information to determine information relating to a relative and/or absolute position of the intelligent meter reading device 300.
  • Motion detection module 340 for detecting motion or movement of the intelligent meter reading device 300 and/or for tamper detection.
  • the motion detection module 340 includes one or more motion detection sensors such as, for example, MEMS (Micro Electro Mechanical System) accelerometers and/or proximity sensors, that may detect the acceleration, proximity and/or other movements of the intelligent meter reading device 300 as it is moved by a user.
  • MEMS Micro Electro Mechanical System
  • this module is adapted to determine and/or authenticate the identity of the current user or owner of the intelligent meter reading device 300.
  • the current user may be enabled to perform a log-in process at the intelligent meter reading device 300 in order to access one or more features.
  • the intelligent meter reading device 300 may be adapted to automatically determine the identity of the current user based upon one or more external signals such as, for example, an RFID tag or badge worn by the current user which provides a wireless signal to the intelligent meter reading device 300 for determining the identity of the current user.
  • various security features may be incorporated into the intelligent meter reading device 300 to prevent unauthorized users from accessing confidential or sensitive information.
  • One or more display(s) 335 may be implemented using, for example, LCD display technology, OLED display technology, and/or other types of conventional display technology.
  • the display(s) 335 are adapted to be flexible or bendable.
  • the display(s) 335 are implemented by means of a technology for reducing the power consumption of information displayed on the display(s) 335.
  • One or more user I/O device(s) 330 such as, for example, keys, buttons, scroll wheels, cursors, touch screen sensors, audio command interfaces, magnetic strip reader, optical scanner, etc.
  • peripheral devices 331 which may be useful to the users of various intelligent meter reading devices 300, such as, for example:; memory card reader(s); fingerprint reader(s); real-world sensors such as, for example, acceleration sensor, proximity meter, tampering detection device, position sensors (such as GPS-enabled sensors, and similar devices), temperature and/or pressure sensors, and other sensors of different types.
  • Information filtering module(s) 349 which, for example, may be adapted to automatically and dynamically generate, using one or more filter parameters, filtered information to be displayed on one or more displays 335 of the intelligent meter reading device 300.
  • filter parameters may be customizable by the player or user of the intelligent meter reading device 300.
  • the information filtering module(s) 349 are also adapted to display, in real-time, filtered information to the user based upon a variety of criteria such as, for example, geolocation information.
  • Wireless communication module(s) 345 is configured or designed to communicate with external devices using one or more wireless interfaces/protocols such as, for example, 802.1 1 (WiFi), 802.15 (including Zigbee, BluetoothTM), 802.16 (WiMax), 802.22, cellular standards such as CDMA, CDMA2000, WCDMA, GSM, LTE, radio frequency (e.g., RFID), infrared, near field magnetics, wireless M-bus, Sub 1 GHz networks, etc.
  • wireless interfaces/protocols such as, for example, 802.1 1 (WiFi), 802.15 (including Zigbee, BluetoothTM), 802.16 (WiMax), 802.22, cellular standards such as CDMA, CDMA2000, WCDMA, GSM, LTE, radio frequency (e.g., RFID), infrared, near field magnetics, wireless M-bus, Sub 1 GHz networks, etc.
  • Software/hardware authentication/validation components 344 which, for example, may be used for authenticating and/or validating local hardware and/or software components, and/or hardware/software components residing at a remote device, and/or user information and/or identity.
  • Operating-mode selection component 348 which, for example, may be operable to automatically select an appropriate mode of operation based on various parameters and/or upon detection of specific events or conditions such as, for example: the current location of the intelligent meter reading device 300; the identity of the current user; a user input; a system override (e.g., emergency condition detected); the proximity to other devices belonging to same group or association; the proximity to specific objects, regions, zones, etc. Additionally, the intelligent meter reading device 300may be operable to automatically update or switch its current operating mode to the selected mode of operation. The intelligent meter reading device 300 may also be adapted to automatically modify accessibility of user-accessible features and/or information in response to the updating of its current mode of operation.
  • Digital image sensor component such as scanner/camera 352 which may be configured or designed to scan identifiers and/or other content from other devices and/or objects such as for example: intelligent meter reading device displays 335, computer displays, static displays (e.g., printed on tangible mediums), etc.
  • OCR Processing Engine 356 which, for example, may be operable to perform image processing and optical character recognition of images such as those captured by a the scanner/camera 352 of an intelligent meter reading device 300.
  • Digital filtering component such as, for example, a radon transformation engine 339 and neural network component 31 1 to classify the image data to numeric values.
  • Figure 2 shows a diagrammatic representation of a machine in the exemplary form of a client (or end-user) computer system 200 within which a set of instructions, for causing the machine to perform any one or more of the methodologies or functions discussed herein, may be executed.
  • the machine operates as a stand-alone device or is connected (e.g., networked) to other machines.
  • the machine may operate in the capacity of a server or a client machine in server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment.
  • the machine may be an embedded computer, microprocessor, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine.
  • the term "machine” may also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.
  • the exemplary client computer system 200 includes a processor 202 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), or both), a main memory 204 and a static memory 206, which communicate with at least one another via a bus 208.
  • the client computer system 200 may advantageously further include a digital image sensor, such as a video display unit 210 (e.g., a liquid crystal display or LCD unit).
  • the computer system 200 also includes an alphanumeric input device 212 (e.g., a keyboard), a user interface (Ul) navigation device 214 (e.g., a cursor control device), a flash memory drive unit 216, a signal generation device 218 (e.g., a speaker) and a wireless network interface device 220.
  • an alphanumeric input device 212 e.g., a keyboard
  • a user interface (Ul) navigation device 214 e.g., a cursor control device
  • a flash memory drive unit 216 e.g., a hard disk drive
  • signal generation device 218 e.g., a speaker
  • the flash memory drive unit 216 advantageously includes a machine-readable medium 222 on which is stored one or more sets of instructions and/or data structures (e.g., software 224) embodying or utilized by any one or more of the methodologies or functions described herein.
  • the software 224 may also reside, completely or at least partially, within the main memory 204 and/or within the processor 202 during execution thereof by the client computer system 200, wherein the main memory 204 and the processor 202 also constitute machine- readable media.
  • the software 224 may further be transmitted or received over a network 226 via the wireless network interface device 220 utilizing any one of a number of well-known internet transfer protocols (e. g., HTTP, FTP, TCP/IP, UDP/IP and similar) and overlaying application layer protocols.
  • internet transfer protocols e. g., HTTP, FTP, TCP/IP, UDP/IP and similar
  • overlaying application layer protocols e. g., HTTP, FTP, TCP/IP, UDP/IP and similar
  • machine-readable medium 222 is shown in an exemplary embodiment to be a single medium, the term “machine-readable medium” may be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions and/or data structures.
  • the term “machine-readable medium” may also be taken to include any medium that is capable of storing, encoding or carrying a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies of the present invention, or that is capable of storing, encoding or carrying data structures utilized by or associated with such a set of instructions.
  • the term “machine-readable medium” may accordingly be taken to include, but not be limited to, solid-state memories, optical and magnetic media, and carrier wave signals.
  • client computer system 200 may include a variety of components, modules and/or systems for providing various types of functionality.
  • client computer system 200 includes a web browser application which is operable to process, execute, and/or support the use of scripts (e.g., JavaScript, AJAX, etc.), plug-ins, executable code, virtual machines, vector-based web animation (e.g., Adobe Flash), etc.
  • scripts e.g., JavaScript, AJAX, etc.
  • plug-ins e.g., executable code
  • virtual machines e.g., AJAX, etc.
  • vector-based web animation e.g., Adobe Flash
  • the web browser application may be configured or designed to instantiate components and/or objects at the client computer system 200 in response to processing scripts, instructions, and/or other information received from a remote server such as a web server.
  • a remote server such as a web server.
  • components and/or objects may include, but are not limited to, one or more of the following (or combinations thereof): ⁇ Ul components such as those illustrated, described, and/or referenced herein;
  • Other components which, for example, may include components for facilitating and/or enabling the client computer system 200 to perform and/or initiate various types of operations, activities, or functions such as those described herein.
  • the OAMR server system 480 includes at least one network device 460 and at least one storage device 470 (such as, for example, a direct attached storage device).
  • the OAMR server system 480 is suitable for implementing at least some of the OAMR techniques described herein.
  • the network device 460 includes a master central processing unit (CPU) 462 and interfaces 468.
  • the CPU 462 may be responsible for implementing specific functions associated with the functions of a desired network device 460. For example, when configured as a server, the CPU 462 may be responsible for analyzing packets; encapsulating packets; forwarding packets to appropriate network devices, different from the network device 460; instantiating various types of virtual machines, and/or virtual interfaces, and/or virtual storage volumes, and/or virtual appliances; etc.
  • the CPU 462 preferably accomplishes at least a portion of these functions under the control of software including a real time operating system (e.g. MQX), and any appropriate system software.
  • a real time operating system e.g. MQX
  • the CPU 462 may include one or more processors 463 such as, for example, one or more processors from the AMD, Freescale, or Texas Instruments families of microprocessors.
  • processor 463 may be a signal processor or a specially designed Field Programmable Gate Array (FPGA) or similar technology for controlling the operations of the OAMR server system 480.
  • a memory 461 (such as FLASH, non-volatile RAM and/or ROM memory) also forms part of the CPU 462.
  • a memory block 461 may be used for a variety of purposes such as, for example, caching and/or storing data, programming instructions, etc.
  • the interfaces 468 may be typically provided as interface cards (sometimes referred to as "line cards"). Alternatively, one or more of the interfaces 468 may be provided as on-board interface controllers built into the motherboard of the OAMR server system 480. Generally, said interfaces 468 control the sending and receiving of data packets over the network and sometimes support other peripherals used with the OAMR server system 480.
  • the interfaces 468 there may be FC interfaces, Ethernet interfaces, frame relay interfaces, cable interfaces, DSL interfaces, token ring interfaces, Infiniband interfaces, and the like.
  • various very high-speed interfaces may be provided, such as fast Ethernet interfaces, Gigabit Ethernet interfaces, ATM interfaces, HSSI interfaces, POS interfaces, FDDI interfaces, ASI interfaces, DHEI interfaces and the like.
  • Other interfaces may include one or more wireless interfaces such as, for example, 802.1 1 (WiFi) interfaces, 802.15 interfaces (including ZigbeeTM), 802.16 (WiMax) interfaces, 802.22 interfaces, cellular standards such as CDMA interfaces, CDMA2000 interfaces, WCDMA interfaces, TDMA interfaces, cellular 3G interfaces, LTE etc.
  • one or more of the interfaces 468 may include ports appropriate for communication with the appropriate media. In some cases, they may also include an independent processor and, in some instances, volatile RAM. The independent processors may control intensive tasks of such communications, such as for example packet switching, media control and management. By providing separate processors for the communications intensive tasks, these interfaces 468 allow the master microprocessor 462 to efficiently perform computations, diagnostics, security functions, etc.
  • some interfaces 468 are configured or designed to allow the OAMR server system 480 to communicate with other network devices associated with various local area network (LANs) and/or wide area networks (WANs). Some other interfaces 468 may be configured or designed to allow network device 460 to communicate with one or more directly attached storage device(s) 470.
  • LANs local area network
  • WANs wide area networks
  • Some other interfaces 468 may be configured or designed to allow network device 460 to communicate with one or more directly attached storage device(s) 470.
  • the OAMR server system 480 shown in Figure 4 illustrates one specific network device 460 described herein, it is by no means the only network device architecture that may be implemented. For example, an architecture having a single processor that handles communications as well as routing computations may be used. Further, other types of interfaces and media could also be used with the network device 460.
  • this may employ one or more memories or memory modules (such as, for example, memory block 465, which, for example, may include random access memory or RAM) configured to store data, program instructions for the general-purpose network operations and/or other information relating to the functionality of the various OAMR techniques described herein.
  • the program instructions may, for example, control the operation of an operating system and/or one or more applications.
  • the memory or memories may also be configured to store data structures, and/or other specific non-program information described herein.
  • the network device 460 advantageously comprises a bus 467 to which the CPU 462, the memory block 465 and the interfaces 468 are connected by means of connections 455, 457 and 459 respectively.
  • machine-readable media that include program instructions, state information, etc. for performing various operations described herein.
  • machine-readable storage media include, but are not limited to, magnetic media such as hard disks, floppy disks, and Flash memory; optical media such as CD-ROM disks; magneto-optical media such as floptical disks; and hardware devices that may be specially configured to store and perform program instructions, such as read-only memory (ROM) devices, FLASH and random access memory (RAM).
  • Some further examples may also include transmission media such as, for example, a carrier wave travelling over an appropriate medium such as airwaves, optical lines, electric lines, etc.
  • program instructions include both machine code, such as produced by a compiler, and files containing higher-level code that may be executed by the computer using an interpreter.
  • FIG. 5 illustrates an example of a functional block diagram of an OAMR Server System in accordance with the present invention.
  • An OAMR Server System 500 is operable to perform and/or implement various types of functions, operations, actions, and/or other features such as, for example, one or more of the following (or combinations thereof):
  • the OAMR Server System 500 may include a plurality of components operable to perform and/or implement various types of functions, operations, actions, and/or other features such as, for example, one or more of the following (or combinations thereof):
  • Smart Grid Load Prediction Feedback and Forward Load Adjustment Component(s) 51 1 which, for example, may be configured or designed to analyze meter information and data provided by one or more SMR units, and to use the analyzed information/data to initiate and/or perform various types of operations including, for example, one or more of the following (or combinations thereof):
  • Utility Pre-payment Gateway(s) which, for example, may be configured or designed to allow the user to prepay the utility service by various means of credit card payments, mobile payments, internet banking, etc.; monitor the consumption; deduct utility credits from the prepaid account; and through, a smart utility switch, turn on and off the utility service.
  • the Utility Pre-payment Gateway(s) may provide, for example one or more of the following (or combinations thereof) services:
  • Utility service social alert component(s) which, for example, may be configured to send alerts for low utility credit balance, utility disconnection, etc. to the clients (i.e., consumers) and/or social services or medical services.
  • the utility service social alert component(s) may provide one or more of the following (or combinations thereof):
  • Context Interpreter 502 which, for example, may be operable to automatically and/or dynamically analyze contextual criteria relating to a given transaction or operation, and automatically determine or identify the type of transaction to be performed (e.g., payment- related transaction, identification-related transaction, etc.).
  • contextual criteria relating to a given transaction or operation
  • examples of contextual criteria which may be analyzed may include, but are not limited to, one or more of the following (or combinations thereof):
  • Location-based criteria e.g., geolocation of client device, geolocation of agent device, etc.
  • Proximity-related criteria e.g., criteria which may be used to determine whether the client device is currently located at or near a specified location.
  • Time Synchronization Engine 504 which, for example, may be operable to manages universal time synchronization (e.g., via NTP and/or GPS).
  • Search Engine 528 which, for example, may be operable to search for transactions, logs, items, accounts, events and options in one or more databases.
  • Configuration Engine 532 which, for example, may be operable to determine and handle configuration of various customized configuration parameters for one or more devices, component(s), system(s), process(es), etc.
  • Time Interpreter 518 which, for example, may be operable to automatically and/or dynamically modify or change identifier activation and expiration time(s) based on various criteria such as, for example, time, location, transaction status, etc.
  • Authentication/Validation module 547 (including for instance password, software/hardware information, SSL certificates) which, for example, may be operable to perform various types of authentication/validation tasks such as one or more of the following (or combinations thereof):
  • the Authentication/Validation module may be adapted to determine and/or authenticate the identity of the current user or owner of a mobile client system (such as for instance a client computer system 130 in Figure 1 ).
  • the current user may be enabled to perform a log-in process at the mobile client system in order to access one or more features.
  • the mobile client system may include biometric security components which may be operable to validate and/or authenticate the identity of a user by reading or scanning the user's biometric information (e.g., fingerprints, face, voice, eye/iris, etc.).
  • biometric security components may be operable to validate and/or authenticate the identity of a user by reading or scanning the user's biometric information (e.g., fingerprints, face, voice, eye/iris, etc.).
  • various security features may be incorporated into the mobile client system to prevent unauthorized users from accessing confidential or sensitive information.
  • Transaction Processing Engine 522 which, for example, may be operable to handle various types of transaction processing tasks such as, for example, one or more of the following (or combinations thereof):
  • OCR Processing Engine 534 which, for example, may be operable to perform image processing and optical character recognition of images such as, for example, those captured by the camera 352 of the intelligent meter reading device 300 in Figure 3.
  • Database Manager 526 which, for example, may be operable to handle various types of tasks relating to database updating, database management, database access, etc.
  • the Database Manager 526 may be operable to manage databases, such as OAMR Device Application databases.
  • Log Component(s) 510 which, for example, may be operable to generate and manage transactions history logs, system errors, connections from APIs, etc.
  • Status Tracking Component(s) 512 which, for example, may be operable to automatically and/or dynamically determine, assign, and/or report updated transaction status information based, for example, on the state of the transaction.
  • the status of a given transaction may be reported as one or more of the following (or combinations thereof): Completed, Incomplete, Pending, Invalid, Error, Declined, or Accepted.
  • Gateway Component(s) (not shown in Figure 5) which, for example, may be operable to facilitate and manage communications and transactions with external Payment Gateways.
  • Web Interface Component(s) 508 which, for example, may be operable to facilitate and manage communications and transactions with TIS web portal(s).
  • 3rd Party Server System(s) 548 which, for example, may be operable to facilitate and manage communications and transactions with 3rd Party Server System(s) (such as, for instance, the Remote Server System(s)/Service(s) 170 or the other 3rd Party Entities 150 in the OAMR system of Figure 1 ).
  • 3rd Party Server System(s) such as, for instance, the Remote Server System(s)/Service(s) 170 or the other 3rd Party Entities 150 in the OAMR system of Figure 1 ).
  • OCR Processing Engine 534 which, for example, may be operable to perform image processing and optical character recognition of images such as those captured by the camera of a intelligent meter reading device.
  • At least one processor 510 which in at least one example may include one or more commonly known CPUs which are deployed in many of today's consumer electronic devices, such as, for example, CPUs or processors from the Freescale or Texas Instruments family of microprocessors, etc.
  • the at least one processor 510 may be signal processor or specially designed hardware like FPGAs for controlling the operations of a mobile client system (such as for instance the client computer system 130 in Figure 1 ).
  • a memory such as non-volatile RAM and/or ROM
  • the CPU may be responsible for implementing specific functions associated with the functions of a desired network device. The CPU preferably accomplishes one or more these functions under the control of software including an operating system, and any appropriate applications software.
  • Memory 516 may include volatile memory (e.g., RAM), non-volatile memory (e.g., disk memory, FLASH memory, EPROMs, etc.), unalterable memory, and/or other types of memory.
  • volatile memory e.g., RAM
  • non-volatile memory e.g., disk memory, FLASH memory, EPROMs, etc.
  • unalterable memory e.g., unalterable memory
  • the memory 516 may include functionality similar to at least a portion of functionality implemented by one or more commonly known memory devices such as those described herein and/or generally known to one having ordinary skill in the art.
  • one or more memories or memory modules e.g., memory blocks
  • the program instructions may control the operation of an operating system and/or one or more applications.
  • the memory or memories may also be configured to store data structures, metadata, identifier information/images, and/or information/data relating to other features/functions described herein. Because such information and program instructions may be employed to implement at least a portion of the OAMR system techniques described herein, various aspects described herein may be implemented using machine readable media that include program instructions, state information, etc. Examples of machine-readable media include, but are not limited to, magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD-ROM disks; magneto-optical media such as floptical disks; and hardware devices that are specially configured to store and perform program instructions, such as read-only memory devices (ROM) and random access memory (RAM). Examples of program instructions include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer using an interpreter.
  • Interface(s) 506 which, for example, may include wired interfaces and/or wireless interfaces.
  • the interface(s) 506 may include functionality similar to at least a portion of functionality implemented by one or more computer system interfaces such as those described herein and/or generally known to one having ordinary skill in the art.
  • at least a portion of the interface(s) 506 may include various types of wireless interfaces such as, for example, 802.15.4, Zigbee, Wireless M-bus, Sub 1 GHz, etc.
  • the device driver(s) 542 of the OAMR server system 500 may include functionality similar to at least a portion of functionality implemented by one or more computer system driver devices such as those described herein and/or generally known to one having ordinary skill in the art.
  • One or more display(s) 535 may be implemented using, for example, LCD display technology, OLED display technology, and/or other types of conventional display technology.
  • display(s) 535 may be adapted to be flexible or bendable.
  • the information displayed on display(s) 535 may utilize e-ink technology (such as that available from E Ink Corporation, Cambridge, MA, www.eink.com), or other suitable technology for reducing the power consumption of the information displayed on the display(s) 535.
  • Email Server Component(s) 536 which, for example, may be configured or designed to provide various functions and operations relating to email activities and communications.
  • Web Server Component(s) 537 which, for example, may be configured or designed to provide various functions and operations relating to web server activities and communications.
  • Cloud Server Component(s) (not shown in Figure 5), which, for example, may be configured or designed to provide various functions and operations relating to cloud server activities and communications.
  • Messaging Server Component(s) 538 which, for example, may be configured or designed to provide various functions and operations relating to text messaging and/or other social network messaging activities and/or communications.
  • FIG. 10 shows an exemplary flow diagram of a Smart Meter Reader Operating procedure (or method) in accordance with an aspect of the present invention.
  • a smart meter reader operating procedure 1000 is configured to obtain the value on the display of a utility meter at periodic intervals by cycling through the steps depicted in the flowchart of the figure, or upon detection of a certain condition or event.
  • a first step of the method involves detecting 1002 a triggering condition/event that causes the SMR unit that implements the method to wake-up from a stand-by state.
  • One of the possible triggering conditions is a signal generated by a timer at periodic intervals.
  • the method it is verified 1004, whether the type of utility meter needs to be detected (e.g., whether it is a meter with numeric analog, numeric digital or arrow analog readout), in which case the method after capturing 1006 an image of the display of the utility meter using an image sensor of the SMR unit proceeds to the analysis of the image and the detection 1008 of the type of meter (e.g., a given brand and product) from the image using an image recognition algorithm.
  • the SMR unit can be configured 1010 with configuration parameters specific to the type of meter detected (e.g., selecting appropriate digital filters, parameterization for the step of segmentation, pre-trained set of weights for the neural networks used as pattern recognition algorithms to detect values of the digits, etc.).
  • the operating procedure 1000 also verifies 1012 the accuracy of the type of utility meter detected and, if it is below a given confidence threshold 1014, the captured image is discarded and the detection of the type of utility meter is repeated with a new image. Else, the method can proceed to analyzing 1024 the image to obtain the meter readout value. The same image used to detect the type of utility meter can be used in such analysis. Alternatively, the image captured in step 1006 can be discarded and new image captured 1022.
  • the method can proceed directly to analyzing 1024 said image.
  • the analysis 1024 of the image involves segmenting it into different single-digit images (as many as there are digits on the display of the utility meter of the detected type) and for each digit determining its value from the corresponding single-digit image using a pattern recognition algorithm individually customized for each digit to be determined. Further, the method verifies 1026 the accuracy of the value of the digits and, in case said accuracy does not meet another confidence threshold 1028, discarding the image and repeating the analysis 1024 with a new image. Otherwise, after combining the individual values of the digits to obtain the meter readout value, said value is stored 1032 in a memory module.
  • the operating procedure 1000 further comprises a step of verifying 1016 whether the image recognition algorithm used in the detection step 1008 need to be corrected regardless its accuracy performance, but to compensate for aging, changing light conditions and other time- related effects. If such correction is required, then the method applies correction procedures 1020 which involve retraining the image recognition algorithm with a predefined periodicity to adjust its configuration parameters. Similarly, the operating procedure 1000 also comprises a step of verifying 1030 whether the pattern recognition algorithm used in the analysis 1024 need to be corrected regardless its accuracy performance. In such case, the application of correction procedures 1020 involve detecting again the type of utility meter and retraining the pattern recognition algorithm for all digits of the newly detected type of utility meter.
  • At least a portion of the various types of functions, operations, actions, and/or other features provided by the Smart Meter Reader Operating Procedure 1000 may be implemented at one or more smart meter reader devices such as those described and/or referenced herein (e.g., intelligent meter reading device 160 in Figure 1 ).
  • the Smart Meter Reader Operating Procedure 1000 may be operable to perform and/or implement various types of functions, operations, actions, and/or other features such as one or more of those described and/or referenced herein.
  • the Smart Meter Reader Operating Procedure 1000 may be operable to utilize and/or generate various different types of data and/or other types of information when performing specific tasks and/or operations. This may include, for example, input data/information and/or output data/information.
  • the Smart Meter Reader Operating Procedure 1000 may be operable to access, process, and/or otherwise utilize information from one or more different types of sources, such as, for example, one or more local and/or remote memories, devices and/or systems.
  • the Smart Meter Reader Operating Procedure 1000 may be operable to generate one or more different types of output data/information, which, for example, may be stored in memory of one or more local and/or remote devices and/or systems. Examples of different types of input data/information and/or output data/information which may be accessed and/or utilized by the Smart Meter Reader Operating Procedure 1000 may include, but are not limited to, one or more of those described and/or referenced herein.
  • a given instance of the Smart Meter Reader Operating Procedure 1000 may access and/or utilize information from one or more associated databases.
  • at least a portion of the database information may be accessed via communication with one or more local and/or remote memory devices (such as for instance the remote database system 180 in Figure 1 ). Examples of different types of data which may be accessed by the Smart Meter Reader Operating Procedure 1000 include, but are not limited to, one or more of those described and/or referenced herein.
  • multiple instances or threads of the Smart Meter Reader Operating Procedure 1000 may be concurrently implemented and/or initiated via the use of one or more processors and/or other combinations of hardware and/or hardware and software.
  • various aspects, features, and/or functionalities of the Smart Meter Reader Operating Procedure 1000 may be performed, implemented and/or initiated by one or more of the various systems, components, systems, devices, procedures, processes, etc., described and/or referenced herein.
  • Smart Meter Reader Operating Procedure 1000 may be initiated in response to detection 1002 of one or more conditions or events satisfying one or more different types of minimum threshold criteria for triggering initiation of at least one instance of the Smart Meter Reader Operating Procedure 1000.
  • Various examples of conditions or events which may trigger initiation 1002 and/or implementation of one or more different threads or instances of the Smart Meter Reader Operating Procedure 1000 may include, but are not limited to one or more of the following (or combinations thereof):
  • one or more different threads or instances of the Smart Meter Reader Operating Procedure 1000 may be initiated and/or implemented manually, automatically, statically, dynamically, concurrently, and/or combinations thereof. Additionally, different instances and/or embodiments of the Smart Meter Reader Operating Procedure 1000 may be initiated at one or more different time intervals (e.g., during a specific time interval, at regular periodic intervals, at irregular periodic intervals, upon demand, etc.).
  • initial configuration 1004 of a given instance of the Smart Meter Reader Operating Procedure 1000 may be performed using one or more different types of initialization parameters.
  • at least a portion of the initialization parameters may be accessed via communication with one or more local and/or remote memory devices.
  • at least a portion of the initialization parameters provided to an instance of the Smart Meter Reader Operating Procedure 1000 may correspond to and/or may be derived from the input data/information.
  • FIG. 8 An OAMR unit operating procedure 800 starts in a stand-by state of low energy consumption 801 .
  • a command such as a command to start the OAMR unit
  • the procedure initializes 802 the OAMR unit and other peripherals and loads software routines, including the neural network configuration parameters, and then performs a hardware and functionality diagnosis check 803.
  • the OAMR switches to a stop state and performs error handling 804 before restarting the system and returning to the stand-by state 801 .
  • the operating procedure 800 continues with the initialization 810 of the image sensor and the capture of an image, preferably a low-resolution image, of the display of the utility meter.
  • the procedure checks 81 1 whether said image shows a recognizable meter image. If not, the step of capturing an image of the display of the utility meter is repeated and the number of attempts to recognize the type of meter from the image is counted 813.
  • the method may advantageously change the parameters of the image sensor, the intensity of the infrared light source coupled to the image sensor, etc.
  • the method verifies 814 the number of attempts and, if the count exceeds a predetermined maximum count, the method transitions to the stop state and performs error handling 804.
  • the method checks 812 whether the meter image can be classified as a known type of model. In case of positive classification, the method loads a customized set of configuration parameters 816 for the pattern recognition algorithm (such as pre-trained weights of a neural network algorithm) that are optimized for the detected type of utility meter. Else (i.e., unknown meter type), the method loads a standard set of configuration parameters 815 and a default number of digits is assumed.
  • a customized set of configuration parameters 816 for the pattern recognition algorithm such as pre-trained weights of a neural network algorithm
  • the method loads a standard set of configuration parameters 815 and a default number of digits is assumed.
  • the operating procedure 800 continues with a step of performing segmentation and classification of the captured image 820.
  • This step may also comprise checking the number of digits and/or the classification performance of each digit. Afterwards, the method checks 821 whether the classification results meet a predetermined confidence threshold. If not, the step of segmentation and classification 820 is repeated while image treatment and adjustment of configuration of the pattern recognition algorithm is performed 822 at each attempt. Verification of the number of attempts 823 is performed and if it exceeds another predetermined count, the method reverts to the stop state and performs error handling 804.
  • the operating procedure 800 starts software routines with trained configuration parameters (e.g., neural network weights) and other settings 830, and repeatedly captures images of the display of the utility meter, segments said images into single-digit images and determines the value of the digits from the single-digit images 831 , and finally obtains the meter readout value.
  • the method checks whether the classification results are acceptable 832 and, if not, the image is discarded and a new one is captured, segmented and analyzed.
  • the operating procedure may change, among others, the image sensor parameters, the intensity of the infrared light source, or the configuration parameters of the pattern recognition algorithm 833.
  • the method switches to the stop state and performs error handling 804. Otherwise, the OAMR operating procedure 800 keeps capturing, segmenting and classifying images at periodic intervals, or whenever a triggering event or condition (e.g., a command from a OAMR server) is detected.
  • a triggering event or condition e.g., a command from a OAMR server
  • FIG. 1 1 it is there shown a typical interaction diagram that illustrates how a user/client/purchaser may utilize the hardware/software components disclosed herein to initiate and/or perform a variety of different types of operations and/or activities such as those described herein.
  • interaction diagram of Figure 1 1 illustrates OAMR-SMR Polling, Analysis, and Response Procedures.
  • an OAMR server 1 106 interacts with two smart meter readers 1 102, 1 104 (identified as A and B). Before the polling and response procedure can take place, it is necessary for the smart meter readers to complete their registration with the OAMR server. Each smart meter reader 1 102, 1 104 sends a registration request 02a, 04a to the server 1 106 which sends registration confirmation 03a to the smart meter readers. At that point, each smart meter reader can start its meter read operations 06a, 10a and store the meter readout data in local storage 08a, 12a, such as a memory module.
  • the OAMR server 1 106 can selectively send a meter reader polling request 14a, 18a to any of the smart meter readers that are registered with the server.
  • the selected smart meter reader 1 102, 1 104 reacts to said request by sending a polling response 16a, 20a to the OAMR server.
  • Said polling response advantageously comprises some, or even all, meter readout data stored locally in the smart meter reader together with a meter reader ID to allow the OAMR server to identify the smart meter reader that submitted the response.
  • the meter readout data acquired from selected smart meter readers 1 102, 1 104 is stored and analyzed 22a in the OAMR server 1 106, which generates 24a meter analysis information. Said information can be advantageously be transmitted 26a by the OAMR server 1 106 to a utility network 1 108, which in turn provides the OAMR server with a response 28a.
  • the information provided by the utility network 1 108 is used by the OAMR server 1 106 to generate updated meter reader instructions 30a to modify their internal configuration and/or functionality.
  • the OAMR server sends selectively to the smart meter readers 1 102, 1 104 the updated meter reader instructions 32a, 38a.
  • the selected smart meter reader processes and initiates 34a, 40a its operation accordingly and sends a confirmation/acknowledgement 36a, 42a to the OAMR server 1 106.
  • 1 106 may each be operable to measure, determine, collect, store, analyze, transmit, receive, acquire and/or access one or more different types of data/information, which, for example, may be stored in memory of one or more local and/or remote devices and/or systems. Examples of such different types of data/information (and related activities) may include, but are not limited to, one or more of the following (or combinations thereof):
  • Example types of different data/information which may be measured, determined, and/or collected by the OAMR Server 1 106 - Optical meter readout image;
  • Example types of different data/information which may be stored or accessed by the OAMR server 1 106 are described in detail below.
  • Example types of different data/information which may be transmitted by the OAMR Server 1 106 to another device or server such as a Smart Meter Reader 1 102, 1 104):
  • OAMR-SMR Polling, Analysis, and Response Procedures is implemented at one or more client systems(s) (such as the client computer system 130 in Figure 1 ), at one or more OAMR server 1 106, and/or combinations thereof.
  • the OAMR-SMR Polling, Analysis, and Response Procedures may be operable to perform and/or implement various types of functions, operations, actions, and/or other features such as one or more of those described and/or referenced herein.
  • the OAMR-SMR Polling, Analysis, and Response Procedures may be operable to utilize and/or generate various different types of data and/or other types of information when performing specific tasks and/or operations. This may include, for example, input data/information and/or output data/information.
  • the OAMR-SMR Polling, Analysis, and Response Procedures may be operable to access, process, and/or otherwise utilize information from one or more different types of sources, such as, for example, one or more local and/or remote memories, devices and/or systems.
  • the OAMR-SMR Polling, Analysis, and Response Procedures may be operable to generate one or more different types of output data/information, which, for example, may be stored in memory of one or more local and/or remote devices and/or systems. Examples of different types of input data/information and/or output data/information which may be accessed and/or utilized by the OAMR-SMR Polling, Analysis, and Response Procedures may include, but are not limited to, one or more of those described and/or referenced herein.
  • a given instance of the OAMR-SMR Polling, Analysis, and Response Procedures may access and/or utilize information from one or more associated databases. At least a portion of the database information may be accessed via communication with one or more local and/or remote memory devices. Examples of different types of data which may be accessed by the OAMR-SMR Polling, Analysis, and Response Procedures may include, but are not limited to, one or more of those described and/or referenced herein.
  • OAMR-SMR Polling, Analysis, and Response Procedures may be concurrently implemented and/or initiated via the use of one or more processors and/or other combinations of hardware and/or hardware and software.
  • various aspects, features, and/or functionalities of the OAMR-SMR Polling, Analysis, and Response Procedures may be performed, implemented and/or initiated by one or more of the various systems, components, systems, devices, procedures, processes, etc., described and/or referenced herein.
  • one or more different threads or instances of the OAMR-SMR Polling, Analysis, and Response Procedure(s) may advantageously be initiated in response to detection of one or more conditions or events satisfying one or more different types of minimum threshold criteria for triggering initiation of at least one instance of the OAMR-SMR Polling, Analysis, and Response Procedures.
  • Various examples of conditions or events which may trigger initiation and/or implementation of one or more different threads or instances of the OAMR-SMR Polling, Analysis, and Response Procedure(s) may include, but are not limited to, one or more of those described and/or referenced herein.
  • One or more different threads or instances of the OAMR-SMR Polling, Analysis, and Response Procedures may optionally be initiated and/or implemented manually, automatically, statically, dynamically, concurrently, and/or combinations thereof. Additionally, different instances and/or embodiments of the OAMR-SMR Polling, Analysis, and Response Procedure(s) may be initiated at one or more different time intervals (e.g., during a specific time interval, at regular periodic intervals, at irregular periodic intervals, upon demand, etc.). Initial configuration of a given instance of the OAMR-SMR Polling, Analysis, and
  • Initialization parameters may be accessed via communication with one or more local and/or remote memory devices.
  • at least a portion of the initialization parameters provided to an instance of the OAMR-SMR Polling, Analysis, and Response Procedures may correspond to and/or may be derived from the input data/information.
  • Another exemplary embodiment of an OAMR system using OAMR devices according to the present invention involves Automatic Meter Reading with Load Prediction and Forward Load Adjustment (AM PA).
  • AM PA Automatic Meter Reading with Load Prediction and Forward Load Adjustment
  • an OAMR system is configured so as to use meter data and other relevant data to measure, store, train and predict consumption using a neural network.
  • the predicted and measured values are used to control the load at local-, cluster- and grid-level of a utility service distribution network.
  • a very accurate prediction of consumption may be made based on the predictions made at one or more meter nodes in the utility service distribution network.
  • utility consumption may be controlled by using the predicted data, adjusting set points, starting and stopping production and consumption resources locally and at cluster and grid levels of the network.
  • At least one meter in the utility grid is provided with an OAMR device having AMPA functionality attached to it (either through a physical SMR unit or through a smart OAMR- enabled meter that has a built-in software or software/hardware with AMPA functionality), which implements a neural network to carry out the consumption prediction.
  • the AMPA functionality measures the meter consumption continuously and, additionally stores data values such as time, day of the week, month, indoor and outdoor temperature, pressure and other values that are of importance for the consumption prediction. At certain preset intervals the AMPA functionality trains the neural network with the collected data.
  • the OAMR device having AMPA functionality has a trained consumption profile based on input data such as time, meter data, outdoor and indoor temperature, climate, alarms and other event variables that are of interest for a successful prediction and training of the neural network of the AMPA functionality. Since each meter and its neural network algorithm have access to one or more pieces of relevant data, the neural network may learn the specific consumption and error patterns for the local meter node and thereby giving an exact local prediction. Predictions at the cluster and grid levels are done by adding together the local predictions made by individual meters, and thereby getting very exact local, cluster and grid level predictions based on actual values and predictions of local consumption patterns.
  • the prediction data may be used for feed forward control, so that if the OAMR system predicts an overload in a certain area of the utility service distribution network based on the input data collected individually from several OAMR devices, actions may be taken to prevent said overload by forwarding set-points or commands to turn on or off or alter the state of connected domestic appliances or industrial machinery.
  • the OAMR system may also predict errors, alerts and faults in the utility service distribution network based on trained data. Furthermore, load predictions and simulations may then also be based on the data collected from a selection of meters (each provided with an OAMR device) at any time, rather than on the data from all connected meters.
  • a further exemplary embodiment of an OAMR system using OAMR devices according to the present invention relates to utility pre-payment service(s), in which an OAMR system is configured to provide local monitoring and control of utility service supply and pre-payment of said supply.
  • an OAMR system may advantageously comprise a plurality of OAMR devices to read and monitor the consumption of the meters to which are coupled.
  • Each of said utility meters comprises a smart utility switch to through a connected relay or valve the supply of the utility.
  • the OAMR system includes OAMR server system(s) configured as pre-payment gateway(s) and that include the functionality of generating utility social alerts.
  • the utility service supply can be remotely controlled by overlaying systems or cloud resources to turn on and off the supply.
  • the pre-payment gateway(s) control the refill and account depletion of the users' utility account(s) according to a preset price table.
  • the smart utility switch of the meter associated with said utility account opens the supply of the utility and the consumption is read and measured by the OAMR device.
  • the supply of the utility service will continue uninterrupted as long as there is prepaid credit available in the user utility account.
  • the OAMR system allows utility service payments to be monitored by social alerts telling the user and Public Services connected to the OAMR system, such as Social Security and Health Services, the status of the utility supply and possible disconnection of the service. If the utility account of a given user is near depletion or the OAMR system is to disconnect the utility service for said user, alerts are generated that notifies the user of its account status. In cases in which the user's utility service is being monitored by Public Services, alerts can be generated to notify the utility supply status of said user.
  • One pre-payment gateway can be connected to many OAMR devices and smart utility switches.
  • the pre-payment gateway(s) may be connected through mobile internet to overlaying systems and cloud resources allowing utility suppliers, Social Security and Health Services to monitor and control the supply. This makes it possible to provide a very fast response to vulnerable users and prevent utility service supply disconnection or utility account depletion.
  • an OAMR system featuring utility pre-payment service(s) makes it possible for utility suppliers to provide the utility service supply in a safe and simple manner, while at the same time payment for the supply is secured.
  • mobile, web and internet banking payments can be offered for the prepayment of the utility service.
  • Pre-payment of utility services can also be done locally at the pre- payment gateway(s) by credit card or prepaid credits, or by recurrent billing of bank accounts and credit cards.
  • the OAMR devices with this new functionality may be connected in a local network and the meter data may be accessed for presentation and statistical purposes by top-level connected systems on the smart grid / internet and cloud resources.
  • the meters provided with OAMR devices may work as individual meters or be connected in meter-clusters controlled by the OAMR server system(s). Meter-clusters may also be connected together to form a network of meter clusters.
  • the OAMR server system(s) controls the local meter network and the smart utility switches, collecting, storing and sending data and alerts onto the smart grid, top-layer systems and cloud resources. It also may communicate with local smart energy appliances for enhanced functionality.
  • the OAMR server system(s) may additional use a preset predictive pattern to take decisions like forward load adjustments based on actual and predicted consumption.
  • the different OAMR techniques described herein may be implemented in hardware and/or hardware/software. For example, they may be implemented in an operating system kernel, in a separate user process, in a library package bound into network applications, on a specially constructed machine, or on a network interface card. In some cases, various aspects described herein may be implemented in software such as an operating system or in an application running on an operating system.
  • Hardware and/or software/hardware hybrid embodiments of the OAMR techniques described herein may be implemented on a general-purpose programmable machine selectively activated or reconfigured by a computer program stored in memory.
  • programmable machine may include, for example, mobile or handheld computing systems, PDA, smart phones, notebook computers, tablets, netbooks, desktop computing systems, server systems, cloud computing resources, network devices, etc.
  • Devices that have been described as being in communication with each other need not be in continuous communication with each other, unless expressly specified otherwise.
  • devices that have been described as being in communication with each other may communicate directly or indirectly through one or more intermediaries.

Abstract

Method for automatically reading a utility meter, retrofittable meter reader and automatic meter reading system using the same The present invention relates to a method (800, 1000) for automatically reading a utility meter having a display including one or more digits, characterized in that it comprises the steps of: a) capturing (1006, 1022) an image of the display by means of an image sensor (192); b) if the type of utility meter has to be detected (1004), detecting (1008) the type of utility meter from the image by means of an image recognition algorithm; c) segmenting the image into as many single-digit images as there are digits on the display of a utility meter of the detected type; d) for each digit on the display of the utility meter of the detected type, setting up a pattern recognition algorithm with configuration parameters specific to a digit of the display of the utility meter of the detected type; and determining the value of said digit from its corresponding single-digit image by means of the pattern recognition algorithm; and e) obtaining the meter readout value from the combination of the individual values of the digits. The invention also relates to a retrofittable meter reader for automatic meter reading, a self-adjusting optical automatic meter reading system and a computer program product.

Description

DESCRIPTION
METHOD FOR AUTOMATICALLY READING A UTILITY METER. RETROFITTABLE METER READER AND AUTOMATIC METER READING SYSTEM USING THE SAME
OBJECT OF THE INVENTION
The invention relates to the field of automatic reading of utility meters, and in particular using optical means. The present invention concerns a retrofittable meter reader (i.e., an add-on type meter reader) for automatic reading of a utility meter having a display including one or more digits. The invention also relates to a method for automatically reading a value on the display of a utility meter. A further aspect of the present invention refers to a self-adjusting optical automatic meter reading system.
BACKGROUND OF THE INVENTION
In many developed countries utility meters are typically used to measure the volume or quantity of a given utility (such as for example gas, water or electricity) consumed by domestic and industrial users that are supplied with said utility by a utility supplier.
Said utility meters typically comprise means for viewing the measurement of the amount of utility that has been consumed (i.e. the meter readout value) in the form of a display with a plurality of digits. In some cases, the meter has a mechanical display, in which each digit is provided by a rotating wheel bearing numbers from 0 to 9. Alternatively, in some other utility meters, each digit in the display is provided by an arrow rotating on a numbered plate, and the tip of the arrow pointing at the actual value of the digit from 0 to 9. In some other cases, the meter has an electronic or digital display on which several digits are displayed.
The majority of today's utility meters need to be read manually by a utility company employee. The utility company uses the collected data, in addition to for billing purposes, to predict for example the load of the utility grid and adjust the utility production to the predicted demand. However, given that the meter readout data is collected with low frequency (from 4 to 12 times per year), that the manual collection process is prone to error, and that little feedback can be obtained from the user regarding its consumption pattern, the accuracy of these predictions is poor.
There has been an increased interest in evolving towards a so-called smart grid, that is, a utility grid that uses communications technology to gather and act on information, such as about the behaviors of suppliers and consumers information, in an automated fashion to improve the efficiency, reliability, economics, and sustainability of the production and distribution of a given utility.
Such evolution towards a smart grid calls it for a reliable and inexpensive automatic meter reading (AMR) techniques and devices.
There are in the state of the art some utility meters enabled for automatic meter reading and that provide an electronic or digital signal that corresponds to the meter readout. However, such solutions have the disadvantage that require replacing the existing conventional utility meters by new AMR-enabled meters.
Alternatively, there exist also in the state of the art add-on AMR devices that can be fitted to an existing conventional meter provide the AMR functionality, without requiring substitution of the currently installed meters.
Some of such add-on AMR devices are based on generating electrical pulses when movement, or a full turn, of a mechanical wheel is detected, and counting the number of pulses to obtain the meter readout. This solution is, however, very limited to a certain type of utility meters.
Some other attempts of add-on AMR devices are based on optical reading of the digits on the display of the utility meter with an optical sensor, and the detection of the values of the digits using a pattern recognition algorithm. However, these solutions are still far from satisfactory as they are usually single-digit oriented, being thus necessary to have as many AMR devices as digits has the display of a given meter. Furthermore, the existence of meters of many different types, each potentially with different type of display, number of digits, font type, size and color, etc., makes it virtually impossible for a pattern recognition algorithm to correctly detect the readout values of meters of different types. Even worse, as the digits of the display of the meter may be dirty, distorted, or damaged, or fade away, conditions that may vary and aggravate with environmental changes, light condition or the own aging of the utility meter, the performance an add-on AMR device based on pattern recognition may be inconsistent for different meters of a same type, or even for a same meter over time. Therefore, existing solutions for optical automatic meter reading using add-on AMR devices have the drawback that require manual setup of the AMR device and individual customization of the pattern recognition algorithm to get a reasonable operation performance for each utility meter. The following references disclose various techniques relating to utility meter reading that were known to the person having ordinary skill in the art: U.S. Patent No. 7548223, by Brooksby et al., titled "Reduced cost automatic meter reading system and method using locally communicating utility meters"; U.S. Patent No. 7263450, by Hunter et al., titled "Method and apparatus for reading and controlling electric power consumption"; U.S. Patent No. 7019667, by Petite et al., titled "System and method for accurate reading of rotating disk"; and PCT Patent Application Publication No. WO2006024854, by Beattie et al., titled "Automated meter reader". The entirety of these documents is incorporated herein by reference for all purposes.
It is known in the state of the art the use of neural networks, and particularly feed- forward neural networks with back propagation and comprising one or more hidden layers, to perform pattern classification.
A typical feed-forward neural network comprises a plurality of neurons arranged in one or more layers. Figure 6 illustrates an example of a feed-forward neural network 600 that comprises an input layer 601 , an output layer 603 and an intermediate layer 602, which is usually referred to as an inner or hidden layer. In this example, the input layer 601 is formed just by the inputs {χ^.,.,χ^ to the network 600. Then, it follows a hidden layer 602 which includes, for example, any number of hidden neurons 604, or hidden units, placed in parallel. The neurons 604 perform a weighted summation of the inputs, which then passes a nonlinear activation function σ, also called the neuron function. Additionally, the output layer 603 in this example comprises one single output y obtained from a weighted summation of the outputs of the hidden neurons 604. The arrows in Figure 6 represent a parameter of the network 600.
Mathematically the functionality of a hidden neuron is described by
Figure imgf000006_0001
where the weights {wj, bj} are symbolized with the arrows feeding into the neuron 604.
The neurons 604 in the hidden layer 602 of the network 600 are similar in structure to those of the perceptron, with the exception that their activation functions may be any differential function. The output of the network 600 is given by
Figure imgf000006_0002
where n is the number of inputs and nh is the number of neurons in the hidden layer. The variables
Figure imgf000006_0003
! are the parameters of the network model that are represented collectively by the parameter vector Θ. In general, the neural network model may be represented by the compact notation g(0, x).
A neural network has two working states: a training state and an operational state. When the network is in the training state, it adjusts the weights of the neurons in the inner layers of the network based on a training set of input data for which the correct classification is already known. Training is performed until a satisfactory classification output is achieved. When the network is in the working state, it classifies new input data according to the predetermined weights. The output y of the network is a value ranging from -1 to 1 . Once the network has been properly trained to recognize a given pattern, the output of the network should be 1 when said pattern is provided as input to the network, otherwise the output should be -1 .
It would then be desirable to have a method for automatic meter reading of a utility meter and an add-on AMR device for a utility meter that could perform satisfactorily, regardless the type of meter, changing conditions or aging, without requiring manual setup or individual customization for each meter, solving thus the drawbacks of the prior-art solutions discussed above. SUMMARY OF THE INVENTION
The object of the present invention is solved with the method of claim 1 , the device of claim 19, the system of claim 32 and the computer program product of claim 33. Other embodiments are described in the dependent claims.
An aspect of the present invention relates to a method for automatically reading a value on the display of a utility meter, wherein said display includes one or more digits. The method is characterized in that it comprises the steps of:
a) capturing an image of the display by means of an image sensor;
b) if the type of utility meter has to be detected, detecting the type of utility meter from the image by means of an image recognition algorithm;
c) segmenting the image into as many single-digit images as there are digits on the display of a utility meter of the detected type;
d) for each digit on the display of the utility meter of the detected type, setting up a pattern recognition algorithm with configuration parameters specific to a digit of the display of the utility meter of the detected type; and determining the value of said digit from its corresponding single-digit image by means of the pattern recognition algorithm; and
e) obtaining the meter readout value from the combination of the individual values of the digits.
The method of the present invention makes it possible to read, using optical means, traditional non-smart (i.e., non-AMR enabled) utility meter of different types, which may have different types of display, different number of digits, and said digits having different fonts. In particular, the method disclosed herein can be applied to utility meters of analog (e.g., plate and arrow), mechanical (e.g., numbered wheel) and electronic types. Furthermore, the method enables non-AMR enabled utility meters to implement smart meter functionality, such as AMR (Automatic Meter Reading), AMI, (Advanced Metering Infrastructure), or AMM, (Advanced Meter Management) to cite a few.
By detecting the type of utility meter in step b), the method learns from the image captured with the image sensor, preferably a digital image sensor, the type of utility meter that needs to be read out. The image recognition algorithm analyzes the image to find a match with a type of known utility meter (e.g., brand and model) or find a type that most resembles in appearance the meter shown in the image. Consequently, this method can be applied to a great variety of different types of meters.
The detection of the type of utility meter in step b) provides valuable information to the step of segmentation, or step c). For example, the number of digits that are to be segmented as single-digit images from a captured image will correspond to the number of digits on the display of a utility meter of the detected type. Also, the relative position of the digits on the display of the utility meter of the detected type can be used to guide the search for individual digits within the image of an entire display. Also, step b) is interrelated with step d). Once the type of utility meter has been detected, the pattern recognition algorithm that determines the value of the digits from their corresponding single-digit images advantageously can be specifically configured to optimize the recognition of digits of the utility meter of the detected type. As far as step c) is concerned, the segmentation of the captured image into single-digit images makes it possible to determine the values of many digits of the display from a same captured image. Thus, differently from prior-art solutions in which an image sensor captures images of only one digit and, hence, requiring as many image sensors as there are digits on the display, the solution of the present invention requires only one image sensor.
The detection of the type of utility meter in step b) combined with the segmentation into single-digit images of step c) allows the pattern recognition algorithm of step d) to be configured individually for each digit to obtain a good classification performance. The pattern recognition algorithm is fed with single-digit images and analyzes them to decide the value of the digit shown. Said value will typically be between 0 and 9 if decimal base is used. However, the pattern recognition algorithm could be configured to recognize digits in different bases, such as for example binary or hexadecimal. The self-adjusting optical meter reading method of the present invention allows traditional non-smart meters to be used as smart meters in smart grid networks. This allows for cost savings in new meter costs and installation costs, keeping the current installation and adding the OAMR feature as an add-on to existing meters. Preferably, after step e) the method further comprises the step f) of storing the meter readout value in a first memory unit. The method of the present invention adapts itself to the utility meter in order to be able to read the meter readout value. The optically-read meter readout value is converted to a digital value that can be advantageously stored in a memory unit and be retrieved later for analysis, or other uses, or to be transferred to a remote device upon request.
In some embodiments, between step e) and step f), the method further comprises the steps of comparing the meter readout value with the most-recent meter readout value stored in the first memory unit and, if the meter readout value is smaller than said most-recent utility readout value, discarding the meter readout value and repeating steps a) through e).
In this manner it is possible to detect whether the meter readout value that has been just obtained is valid before storing it. In certain embodiments, step d) advantageously comprises the additional steps of verifying the accuracy of the value of said digit and, if said accuracy is larger than or equal to a predetermined confidence threshold, storing the value of said digit and its corresponding single- digit image in a second memory unit, else, discarding the image and repeating steps a) through d).
Preferably, the first memory unit and the second memory unit are different portions of a same memory module.
This makes it possible to detect whether a digit has been correctly classified by the pattern recognition algorithm. The step of verifying the accuracy assigns a percentage to a digit whose value has been determined from its corresponding single-digit image. This percentage is related to the likelihood according to the pattern recognition algorithm of the digit shown in the single-digit image having a given value (e.g., a value from 0 to 9) and not the others. If, for example the likelihood of one value is high while for all the other values is low, then said percentage is high. On the other hand, if the likelihood for more than one value is high, then said percentage is low. If said percentage is larger than or equal to a predetermined confidence threshold, then the digit is considered that has been correctly classified and the determined value is taken as valid. In these embodiments, the data relating to correctly classified digits is advantageously stored to be used later to retrain the pattern recognition algorithm. The confidence threshold is set according to users preferences, and in some examples is preferably 50%, and more preferably 80%. In these embodiments, the step of verifying the accuracy of the value of said digit preferably comprises a sub step of counting the number of consecutive times that said accuracy is smaller than the predetermined confidence threshold. If the count for said digit exceeds a predetermined maximum count, before repeating steps a) through d), the method comprises the further step of retraining the pattern recognition algorithm for said digit to adjust its configuration parameters. The predetermined maximum count is set according to users preferences. In some examples, said predetermined maximum count is 5, although in other examples the predetermined maximum count may be higher.
More preferably, said step of retraining the pattern recognition algorithm uses values of said digit and their corresponding single-digit images stored in the second memory unit.
An advantage of the method of the present invention over those in the prior art is that the method described herein is continuously adapting to meter readout errors and environmental changes such as light conditions, dust build up, time conditions, and physical adjustments of a meter reader in relation to the display of a utility meter. Retraining the pattern recognition algorithm with previously correctly classified digits, and particularly with the most recently correctly classified one, allows the algorithm to self-adapt to said errors and changes.
In an embodiment of the present invention, between step b) and step c), the method additionally comprises the steps of verifying the accuracy of the type of utility meter detected; and, if said accuracy is smaller than a second predetermined confidence threshold, discarding the image and repeating steps a) and b).
By checking the accuracy of the classification done by the image recognition algorithm, a detected type of utility meter is only considered as valid when its accuracy, defined as a percentage, reaches a given confidence threshold. In some examples, said second confidence threshold is preferably 50%, and more preferably 80%.
In this embodiment the step of verifying the accuracy of the detected type of utility meter may optionally comprise a sub step of counting the number of consecutive times that said accuracy is smaller than the second predetermined confidence threshold. If the count exceeds a predetermined second maximum count, such as for instance 5 times, then the image recognition algorithm is retrained to adjust its configuration parameters. In said embodiment, the method optionally comprises the further step of retraining the image recognition algorithm with a predefined periodicity to adjust its configuration parameters. Said periodicity is related to the number of times that the type of utility meter has been detected with an accuracy larger than or equal to the second predetermined confidence threshold.
Even if the type of utility meter has been correctly classified, the image recognition algorithm is retrained to continuously adapt to aging of the utility meter and varying conditions of the environment. Said predefined periodicity is advantageously based on the number of actual meter readings and can be set by the user. In an example, said predetermined periodicity is set to a number of meter readings sufficiently large (preferably 1000 meter readings or more) so as to provide enough data for retraining the image pattern algorithm in a reliable manner.
In the method of the present invention, steps a) through e) are preferably repeated at regular or irregular periodic intervals.
This feature enables obtaining a sequence of readings of the utility meter. The periodicity between consecutive readings can be regular (i.e., constant period) or irregular (i.e., variable period), and can be adjusted to take into account different factors that affect the user's consumption of the utility service. Thus the method allows self-adjusting automatic optical meter reading of traditional utility meters at programmable intervals.
In a preferred embodiment, steps a) through e) are repeated when a triggering event is detected. In this manner, a device implementing the method disclosed herein may be in a stand-by mode of low energy consumption until a triggering event causes them to carry out the steps of the method and complete a reading of the utility meter, allowing the device to save energy. Some possible triggering events comprise: Some possible triggering events comprise time events, date events, a communication with an external device, climate conditions, sensor inputs, motion detection events, proximity detection events, sound detection events, security events and load detection events.
In some advantageous embodiments, after step e), the method comprises a step of adding a time stamp to the meter readout value. By adding a time stamp to the meter readout value it is possible to keep track of times and dates when a specific meter readout value was obtained. This information can be advantageously used for statistical analysis of utility consumption and/or for retraining the pattern recognition and/or image recognition algorithms.
Some embodiments of the method of the present invention, between step b) and step c) comprise a step of digital filtering the image. Preferably, the step of digital filtering involves applying a Radon transformation on the image. The digital filtering prepares the image for its segmentation into single-digit images. In some other embodiments, the step of digital filtering involves image cleanup, removing unwanted noise from the image, blob detection and/or region of interest detection.
In some embodiments, the pattern recognition algorithm is a neural network. In these embodiments, the neural network is preferably a feed-forward back-propagation neural network comprising an input layer having at least 16 neurons, at least one hidden layer having at least 32 neurons and an output layer having 10 neurons.
In some embodiments, the image recognition algorithm is based on a second neural network.
The self-learning capabilities of neural networks enable the pattern recognition and/or the image recognition algorithm to learn the unique attributes of utility meters and their environment and adapt to changes accordingly.
In a preferred embodiment, every time that a predetermined number of meter readout values are stored in the first memory unit, the method comprises the steps of detecting again the type of utility meter from a newly captured image by means of the image recognition algorithm, and retraining the pattern recognition algorithm for all digits of the display of the utility meter of the detected type to adjust their configuration parameters.
Despite obtaining correctly the meter readout values from a utility meter, the method at times advantageously proceeds to the detection of the type of utility meter anew and then retrains the pattern recognition algorithm to compensate for aging, changing light conditions and other over-the-time effects. Said predetermined number of meter readout values is preferably a few thousands of meter readout values, such as 2000 meter readout values or more. A second aspect of the present invention relates to a retrofittable meter reader for automatic reading of a utility meter having a display including one or more digits. The retrofittable meter reader comprises a digital image sensor adapted to face the display of the utility meter when the retrofittable meter reader is mounted on the utility meter, and to capture images of said display.
The retrofittable meter reader is characterized in that it further comprises a meter type detector operatively connected to the digital image sensor, the meter detector being configured to detect the type of utility meter from the images captured by the digital image sensor; an image segmentation module operatively connected to the digital image sensor and to the meter type detector, the image segmentation module being configured to segment each image captured by the digital image sensor into as many single-digit images as there are digits on the display of a utility meter of the type detected by the meter type detector; a digit detector operatively connected to the image segmentation module and to the meter type detector, the digit detector being configured to detect the value of each digit from its corresponding single- digit image; a digit combination unit operatively connected to the digit detector and to the meter type detector, the combination unit being configured to obtain the meter readout value from the detected values of the digits; and a communications interface adapted to transmit the meter readout values to a remote device for further processing and/or display.
The retrofittable meter reader according to the present invention provides smart meter functionality to a traditional non-smart (i.e., non-AMR enabled) meter. Without requiring manual tuning or set-up, it may be applied to the traditional non-smart utility meter and automatically adjust itself to the meter conditions, and to any changes of the original conditions.
The detection of the type of utility meter and of the values of the digits on the display of the meter of the detected type from captured images of said display allows the retrofittable meter reader to self-adapt to different types of utility meters and perform satisfactorily, and to adjust itself for aging and environmental and/or mechanical changes, such as varying light conditions.
The retrofittable meter reader of the present invention solves the problems of the prior art solutions and presents additional advantages. Thanks to the meter type detector, once the type of meter has been detected, the meter reader can configure itself to recognize digits of a given type of meter. Moreover, by segmenting the image of the display of the utility meter in a number of single-digit images, the retrofittable meter reader can process, either sequentially or in parallel, several digits shown in a single image. Then, the digit detector can be configured, with appropriate configuration parameters for each digit, to handle the specificities of each one of the digits of the display of the detected type of utility meter.
Therefore, the retrofittable meter reader of the present invention may be easily attached to virtually any mechanical or electronic meter with a numeric readout, regardless whether it is of a mechanical readout type (e.g., based on a wheel or arrow) or an electronic readout type, thus converting the traditional utility meter into a smart utility meter in a much more cost-efficient manner than through replacement of traditional utility meters by ones.
In some embodiments, the digit detector of the retrofittable meter reader comprises a pattern recognition algorithm based on a first neural network. In some of such embodiments, the configuration parameters of the first neural network are preferably different for at least some digits.
Additionally or alternatively, the meter type detector preferably comprises an image recognition algorithm based on a second neural network. The use of neural network classification for the image recognition and/or pattern recognition algorithms allows the meter type detector and/or the digit detector to implement learning based on previous correct classifications and self-training to adapt to varying conditions in which the retrofittable meter reader has to operate. In certain preferred embodiments, the retrofittable meter reader further comprises a memory module operatively connected to the meter type detector, the digit detector and to the digit combination unit.
The memory module allows the retrofittable meter reader to store data locally. Some of this data may comprise data of previous meter readout values, which can eventually be transmitted to a remote device by means of the communications interface. Some other data may comprise configuration parameters or single-digit images, which can advantageously be used for programming f the meter type detector, the segmentation unit and/or the digit detector. Optionally, the retrofittable meter reader comprises an infrared light source adapted to shine light on the display of the utility meter when the retrofittable meter reader is mounted on the utility meter, and an infrared filter arranged on the digital image sensor. This allows the retrofittable meter reader to capture images of the display of a utility reader even under low illumination conditions, or even in the dark. In certain embodiments, the retrofittable meter reader comprises a wide-angle objective lens coupled to the digital image sensor. This allows the retrofittable meter reader to capture images of the display of a utility reader even when the digital image sensor is very close to said display. In some embodiments, the communications interface provides at least one wireless connectivity standard. This makes it possible for a retrofittable meter reader to exchange easily information with other meter readers, without cumbersome wire arrangements. Preferably the at least one wireless connectivity standard is the IEEE 802.15.4 standard, which is particularly suitable for power-constrained devices.
Optionally, the retrofittable meter reader comprises a microcontroller. In such embodiments, the meter type detector, the image segmentation module, the digit detector, and the digit combination unit are advantageously included in said microcontroller, which simplifies the hardware requirements of the meter reader.
In some favorable embodiments, the retrofittable meter reader comprises at least one of a serial connectivity unit and a cellular connectivity unit. This provides enhanced connectivity of the meter reader with other remote devices, such as a server system, that can send configuration instructions and/or meter reading polling requests.
In an advantageous embodiment, the retrofittable meter reader also comprises a rechargeable battery. Preferably, the rechargeable battery is adapted to be recharged by means of harvesting energy locally. This gives a lengthened autonomy to the retrofittable meter reader. However, in other embodiments the retrofittable meter reader is mains-powered.
In some embodiments, the retrofittable meter reader comprises a programmable timer to force the retrofittable meter reader to read the utility meter at periodic intervals. The programmable timer allows adjusting the periodicity between consecutive readings of the utility meter to take into account, among others, different utility user consumption profiles, day/night consumption regimes or seasonality. Some embodiments of the retrofittable meter reader comprise an activation unit adapted to detect a triggering event and to force the retrofittable meter reader to read the utility meter in response to said triggering event. Thanks to the activation unit, the meter reader may advantageously remain in a stand-by mode of low energy consumption during most of the time, waking up from said stand-by state only when it is necessary to read out the utility meter. Thus, the activation unit allows the meter reader to save energy, which in the case of a battery- powered meter reader translates into an extended autonomy.
In some embodiments, the retrofittable meter reader advantageously accepts data from standard inputs like pulse, current, voltage and digital values, and may read the value on the display of a traditional non-smart utility meter via optical reading techniques. In some cases, the reader may also set digital and analog outputs to control peripheral devices, switches, relays, etc. This allows traditional mechanical/electronic meters to gain smart meter and predictive functionality.
A further aspect of the present invention relates to a self-adjusting optical automatic meter reading system that comprises a plurality of retrofittable meter readers in accordance with the second aspect of the present invention, wherein each reader of said plurality retrofittable meter readers is adapted to be mounted on a utility meter, and a server system operatively interconnected by means of a network portion to each reader of the plurality of retrofittable meter readers. The server system is configured to send configuration instructions and meter reader polling requests selectively to any reader of said plurality of retrofittable meter readers, and to receive the meter readout values from said plurality of retrofittable meter readers. The retrofittable meter readers disclosed herein are very low cost and may be attached to any mechanical or electronic meter with very little manual labor, thereby making their meter readout values available in a digital format to a server system such as a data concentrator, a computer or the smart grid. Yet another aspect of the present invention relates to a computer program product, implemented on computer-readable non-transitory storage medium, that is configured for, when run on a computer or a processor, executing at least some of steps of the method for automatically reading a utility meter according to the present invention. Advantageously, the algorithms and the determination of certain configuration parameters and local conditions that are required in many of the steps of the method may advantageously be programmed using software languages.
In some embodiments, the computer program product is configured for executing at least steps b) through e).
Other aspects described or referenced herein are directed to different methods, systems, and computer program products relating to devices and distributed systems for intelligent, automated reading of utility meter data, adaption of a meter consumption profile, using self-training neural networks, utility service pre-payment functionality with social media alerts, utility service switch supply control and additional functionality.
The retrofittable meter reader of the present invention may be used to read the current meter readout value as well as to calculate statistical data of the meter consumption. The meter reader may also predict future consumption data based on a set of input variables.
In said embodiment, the retrofittable meter reader preferably has the ability to also control local loads connected to the utility meter through analog or digital outputs.
In an embodiment, the retrofittable meter reader stores the meter readout values and trains a load prediction and forward load adjustment algorithm with said values and with input variables based, for instance, on time and other inputs such as climate, GPS location, time of day, date, or human behavior.
Historical data and time stamps are advantageously stored and used for training of the load prediction and forward load adjustment algorithm, which is preferably based on neural networks, and improving the self-adaption of the retrofittable meter reader to real-world values. In some examples, by setting a set-point or limit for an OAMR-enabled meter, the retrofittable meter reader may predict if the usage of utility service may exceed the set-point and adjust its analog and digital outputs to change the predicted load so that it falls within the set-point. Thereby load prediction and forward load control may be achieved on a local level as well as on cluster and grid level and at least one level of control may benefit from this.
In this embodiment, the retroffitable meter reader enables and facilitates very exact predictions not based on data for a whole network, but based on data from at least one meter that makes it owns local prediction based on the input and historical data and self-learning load prediction and forward load adjustment algorithm. Error inputs are measured so that errors may be predicted based on the utility meter load and secondary inputs like temperature and pressure.
In the following sections of the description, the terms intelligent meter reading device, optical automatic meter reading (OAMR) device or unit, optical automatic meter reader, OAMR reader, smart meter reading (SMR) unit and smart meter reader are used interchangeably to refer to the retrofittable meter reader described above, being all of these terms essentially equivalent.
BRIEF DESCRIPTION OF THE FIGURES
In the following some preferred embodiments of the invention will be described with reference to the enclosed figures. They are provided only for illustration purposes without however limiting the scope of the invention.
Figure 1 illustrates a simplified block diagram of a specific example of a self-adjusting Optical Automatic Meter Reading System according to the present invention. Figure 2 shows a diagrammatic representation of a machine in the exemplary form of a client computer system suitable for the OAMR System of Figure 1 .
Figure 3 discloses a simplified block diagram of an exemplary intelligent meter reading device, in accordance the present invention.
Figure 4 shows an example of a OAMR server system suitable for the OAMR system described in Figure 1 .
Figure 5 illustrates an example of a functional block diagram of an OAMR Server System in accordance with the present invention.
Figure 6 illustrates an example of a feed-forward neural network that comprises an input layer, an output layer and an intermediate layer with hidden units. Figure 7 discloses a simplified block diagram of an SMR unit in accordance with a specific embodiment of the present invention. Figures 8 and 9 show an exemplary flow diagram of the operation of OAMR unit implementing the method in accordance with an aspect of the present invention. Figure 10 shows another exemplary flow diagram of a Smart Meter Reader Operating procedure (or method) according to the present invention.
Figure 1 1 shows an exemplary interaction diagram of various systems/devices implementing OAMR-SMR Polling and Response Procedures in accordance with the present invention.
DETAILED DESCRIPTION OF SOME PREFERRED EMBODIMENTS
Various techniques will now be described in detail with reference to a few exemplary embodiments thereof as illustrated in the accompanying drawings. In the following description, numerous specific details are set forth in order to provide a thorough understanding of one or more aspects and/or features described or referenced herein. It will be apparent, however, to one skilled in the art, that one or more aspects and/or features described or referenced herein may be practiced without some or all of these specific details. In other instances, well-known process steps and/or structures have not been described in detail in order to not obscure some of the aspects and/or features described or referenced herein.
The headings provided in this section are for convenience only, and are not to be taken as limiting the disclosure in any way.
Optical Automatic Meter Reading System
Figure 1 illustrates a simplified block diagram of a specific example of a self-adjusting Optical Automatic Meter Reading (hereinafter OAMR) System according to the present invention which may be implemented in a network portion. The OAMR System 100 includes one or more Smart Meter Readers (SMRs) 160 according to the present invention.
The OAMR System 100 may include a plurality of different types of components, devices, modules, processes, or systems, which, for example, may be implemented and/or instantiated via the use of hardware and/or combinations of hardware and software. For example, as illustrated in the example embodiment of Figure 1 , the OAMR System 100 may include one or more of the following types of components, devices, modules, processes, systems, or combinations thereof:
• OAM R Coordinator or Server System(s) 120;
• Client Computer System(s) 130, which advantageously includes a Web Browser 132;
• Publishers/Content Providers 140;
• 3rd Party System(s) 150;
• Internet and/or Cellular Network(s) 1 10;
• Remote Database System(s) 180;
· Remote Server System(s)/Service(s)170;
• Intelligent Meter Reading Device(s) 160, which advantageously comprises self- adapting, automated meter reading component(s) 166; and
• Residential/Commercial Device(s) 190, which may include intelligent thermostats, intelligent circuit breakers, intelligent sensors, intelligent controllers and/or devices, and/or intelligent appliances and household machines.
Although not shown in the figure, the OAMR System may additionally, or alternatively, comprise Industrial/Commercial Device(s), which may include intelligent thermostats, intelligent circuit breakers, intelligent sensors, intelligent controllers and/or devices, and/or intelligent appliances and machinery.
The Remote Server System(s)/Service(s) 170 may advantageously include one or more of the following (or combinations thereof):
• Database storage/access/query servers/services;
· Data coordination services;
• Set points, limits and alarm triggering services;
• Alarm and system failure services;
• Financial transaction servers/services;
• Event management/scheduling servers/services;
· Power/Utility monitoring servers/services;
• In home utility display;
• Data monitoring and presentation services;
• Pre-payment services for utilities;
• Utility switch for turning utilities on and off;
· Utility alert services for alerting of low utility credit and service disconnection; Social utility alerts for alerting social and health services of utility disconnection warnings;
Internet and mobile connectivity services to GPRS, UMTS and LTE networks;
Internet and mobile applications for users to monitor consumption and status and control grid enabled devices; and
Cloud services.
The Intelligent Meter Reading Device(s) 160 may be operable to perform and/or implement various types of functions, operations, actions, and/or other features such as those described or referenced herein (e.g., such as those illustrated and/or described with respect to Figure 7 and Figure 3). Similarly, the OAMR Server System(s) 120 may be operable to perform and/or implement various types of functions, operations, actions, and/or other features such as those described or referenced herein (e.g., such as those illustrated and/or described with respect to Figure 5).
As described in greater detail herein, different examples of OAMR Systems 100 may be configured, designed, and/or operable to provide various different types of operations, functionalities, and/or features generally relating to OAMR and smart grid technologies. Further, as described in greater detail herein, many of the various operations, functionalities, and/or features of the OAMR Systems disclosed herein may enable or provide different types of advantages and/or benefits to different entities interacting with the OAMR Systems.
According to different examples of the present invention, at least some OAMR Systems 100 may be configured, designed, and/or operable to provide a number of different advantages and/or benefits and/or may be operable to initiate, and/or enable various different types of operations, functionalities, and/or features, such as, for example, one or more of the following (or combinations thereof):
• Automatic self-adjusting optical automatic meter reading;
• Automated load prediction;
· Automated forward load adjustment;
• Automatic self-adjusting optical meter reading, load prediction and forward load adjustment;
• Automatic self-adjusting optical automatic meter reading and load prediction;
• Automatic load prediction and forward load adjustment; and
· Automatic meter reading with load prediction and forward load adjustment
(hereinafter AMPA). In the particular example of Figure 1 , the OAMR Server System 102 includes a Smart Grid Load Prediction Feedback and Forward Load Adjustment module 122, which enables the OAMR System 100 to provide said functionality. However, in another example the OAMR Server System(s) may be configured to be operable as Pre-payment Gateway(s).
At least a portion of the various types of functions, operations, actions, and/or other features provided by the OAMR System 100 may be implemented at one or more client system(s), at one or more server system(s), and/or combinations thereof.
In some examples, the OAMR System 100 may be operable to utilize and/or generate various different types of data and/or other types of information when performing specific tasks and/or operations. This may include, for example, input data/information and/or output data/information. The OAMR System 100 may be operable to access, process, and/or otherwise utilize information from one or more different types of sources, such as, for example, one or more local and/or remote memories, devices and/or systems. Additionally, the OAMR System 100may be operable to generate one or more different types of output data/information, which, for example, may be stored in memory of one or more local and/or remote devices and/or systems. Examples of different types of input data/information and/or output data/information which may be accessed and/or utilized by the OAMR System may include, but are not limited to, one or more of those described and/or referenced herein.
Multiple instances or threads of the OAMR System 100 may be concurrently implemented and/or initiated via the use of one or more processors and/or other combinations of hardware and/or hardware and software. For example, various aspects, features, and/or functionalities of the OAMR System 100 may be performed, implemented and/or initiated by one or more of the various systems, components, systems, devices, procedures, processes, etc., described and/or referenced herein. In some cases, a given instance of the OAMR System 100 may access and/or utilize information from one or more associated databases. At least a portion of the database information may be accessed via communication with one or more local and/or remote memory devices. Examples of different types of data which may be accessed by the OAMR System 100 may include, but are not limited to, one or more of those described and/or referenced herein.
Furthermore, one or more different threads or instances of the OAMR System 100 may be initiated in response to detection of one or more conditions or events satisfying one or more different types of minimum threshold criteria for triggering initiation of at least one instance of the OAMR System 100. Various examples of conditions or events which may trigger initiation and/or implementation of one or more different threads or instances of the OAMR System 100 may include, but are not limited to, one or more of those described and/or referenced herein.
According to an aspect of the present invention, various different types of encryption/decryption techniques may be used to facilitate secure communications between devices in OAMR System(s). Examples of the various types of security techniques which may be used include, but are not limited to, one or more of the following (or combinations thereof): random number generators, SHA-1 (Secured Hashing Algorithm), MD2, MD5, DES (Digital Encryption Standard), 3DES (Triple DES), RC4 (Rivest Cipher), ARC4 (related to RC4), TKIP (Temporal Key Integrity Protocol, uses RC4), AES (Advanced Encryption Standard), RSA, DSA, DH, NTRU, and ECC (elliptic curve cryptography), PKA (Private Key Authentication), Device- Unique Secret Key and other cryptographic key data, and SSL. Other security features contemplated may preferably include the use of well-known hardware-based and/or software- based security components.
Finally, one or more functions of the OAMR System 100 may monitor and control pre- payment of utility services through a combination of the OAMR reader, a smart utility switch and a pre-payment gateway to control the supply of utility services to at least some of the users. Various examples of conditions or events which may trigger initiation and/disconnection of one or more utility service by the OAMR System 100 may include, but are not limited to, one or more of those described and/or referenced herein.
It may be appreciated that the OAMR System 100 described in Figure 1 is but one example from a wide range of OAMR Systems which may be implemented. Other examples of the OAMR System (not shown) may include additional, fewer and/or different components/features that those illustrated in the exemplary OAMR System 100 of Figure 1 .
Intelligent Meter Reading Device or Smart Meter Reading (SMR) Unit
The SMR unit(s) according to the present invention may without manual tuning or setup be applied to a traditional non-smart utility meter for electricity, gas, and water or similar, said non-smart utility meter being a mechanical readout meter (i.e., based on a wheel or arrow) or an electronic readout meter. The SMR unit, through a unique method, adapts itself to a standard utility meter and then reads optically the meter readout values. Moreover, the SMR unit converts the optically- read meter readout value to a digital value that is stored in the SMR unit and/or transmitted over a wireless or serial link to a data concentrator or computer. There may be several clusters of SMR units and data concentrators connected together in a smart grid.
In some embodiment, one or more SMR units are connected together by means of a wireless network of type IEEE 802.15.4, Zigbee, wireless M-bus, sub 1 GHz networks Wi-Fi. Alternatively, cable, optics and serial communication of data may also be used for connectivity.
The SMR units may additionally have analog and/or digital inputs and/or outputs to interface the SMR units with real-world (e.g., domestic or industrial) equipment such as switches, actuators, pumps, fans and regulators etc.
Using IPv6 protocols, the SMR units may advantageously have their own IP address. At least some SMR units may preferably have a built in encryption engine that allows for 128bit (or higher) AES encryption of the data for high security. Furthermore, the SMR units may optionally be reprogrammed over the air (OTA) remotely through the wireless network / internet to allow for software updates.
In some embodiments, the SMR units may be programmed / configured before or during operation using a standard PLC (i.e., programmable logic controller) programming method. Also, the SMR units may advantageously be powered by rechargeable Li-pol batteries that may be recharged by harvesting energy locally (e.g., via micro energy harvesting, solar energy collectors and/or the electrical grid).
Figure 7 discloses a simplified block diagram of an SMR unit in accordance with a specific embodiment of the present invention, in which an SMR unit 199 includes a microcontroller unit 191 , an image sensor 192 and a mass storage memory 193 (e.g., SPI RAM). The SMR unit 199 may be battery- or mains-powered 196 and has an interface 197 to other computers through a wireless connection of type IEEE 802.15.4 Zigbee Pro, wireless M- bus or Sub 1 GHz networks. In this particular example, the SMR unit 199 advantageously also comprises serial connectivity through wires (e.g., general I/O module 198) and cellular connectivity (e.g., GPRS unit 182). The microcontroller unit 191 includes, for example, a CPU and several peripheral devices that handle communication with the image sensor 192 the radio traffic, or the external mass storage memory 193. The microcontroller unit 191 runs a program that handles the service processes, the image acquisition, the radio and serial communication and the adaptive self adjusting image algorithm.
The image sensor 192 may be a standard CMOS 640 x 480 pixel image sensor or a higher resolution sensor. The image sensor 192 has an optical lens 181 attached with a wide- angle objective and an IR filter to allow the SMR unit 199 to be attached very close to a meter and work well under low light conditions. The SMR unit 199 advantageously comprises an internal IR light source that is used if low light conditions exist.
The functionality that significantly distinguishes an SMR unit according to the present invention from any existing optical meter reader technology is that the SMR unit of the present invention works with a self-learning image recognition and classification technology based on a multi-layer feed-forward back-propagation neural network.
In a preferred example, the neural network includes three or more layers with neurons, connected together according to Figure 6. A first layer may advantageously comprise 16 or more input neurons, a second or more layers may preferably include 32 or more hidden neurons, and an output layer may comprise 10 neurons representing each one of the values from 0 to 9. The neural network may have a unique set of weights for at least one digit in the readout, thereby making at least one digit independent of the other digits in the mechanical wheel or electronic segment.
In a preferred example according to the present invention, the recognition and classification algorithm advantageously also include one or more of the following routines:
• Image cleanup, removing unwanted noise from the image;
• Blob detection and/or region of interest detection; and
• Image segmentation and filtering using Radon transformation. In an advantageous embodiment, when an SMR unit reads the meter value, triggered either by an external command received from the wireless network or by an internal timer, the SMR unit starts by initializing itself, taking an image snapshot (digital photo) of the meter and storing the image in the memory storage. The image acquired by the (digital) image sensor is filtered, segmented and transformed by a Radon transformation function and the result fed into the neural network for classification.
Next, the digits of the meter readout are classified separately. For a given digit, the weights corresponding to said digit are loaded into the neural network, the corresponding data is fed into the input neurons of the network, and the network is stepped forward, activated. The result of the hidden neurons of the neural network is then forwarded to the 10 output neurons, each corresponding to a number from 0 to 9. On a successful classification, only one output neuron has a value close to 1 and the other 9 output neurons have a value close to -1 . That is the optimal way of functioning of the neural network, in which a digit read from the image may be securely classified as the number represented by the output neuron with the value 1 . This process is repeated until all the digits that make up the meter readout value have been classified by the neural network, each with their corresponding weights. In the case that several classifications of digits were done with only one output neuron indicating a value close to 1 for each digit, it could then be concluded that the detection of the meter readout value from the image may be safely considered as valid.
As a last check, the detected meter readout value may optionally be compared with last readout value that was considered to be valid to verify whether the currently detected value is equal or greater than said last readout value. Otherwise, an unknown error may have occurred, so the currently detected value is discarded and the image is read (i.e., analyzed) again.
The unique functionality of the SMR unit of the present invention resides in its capability to itself learn the specific meter type and its readout. This is achieved by means of an adaptive and self-learning process. The self-learning process is first run when the SMR unit is powered by the first time.
The SMR unit is equipped with a training set of images representing numbers from 0 to
9. At least one image of each number exists in 10 different versions with some random image noise proportionally introduced in the images. That gives a total of 10 clean number images, 0 to 9 and 90 "noisy" images, 0 to 9 with 2, 4, 6, 8 etc. up to 20% noisy images. At start up, the microcontroller unit, the memory and the image sensor are initialized and a snapshot is taken of the meter readout. The image is cleaned and segmented and the number of digits in the meter readout is counted. Accordingly, as many sets of weights are created as there are digits in the meter readout.
The neural network initializes its weights with random numbers. The network is then trained with the clean and the noisy images of numbers. This process is done independently and repeated for each digit in the display readout. When the neural network has been trained for each digit in the readout, the digit weights are stored in the memory of the SMR unit.
The network is tested against the clean numbers so that the initial classification can be accepted. Then the first snapshot is segmented as described above and the image digits are classified by the network, one digit for at least one set of weights.
The success of the classification is measured through the neural network output neurons status. For a successful classification, only one neuron may be close to 1 and the other neurons close to -1 . The correct value is then that of the output neuron with a value of 1 . If all the digits are classified with only one output neuron set to 1 , the network may be accepted as properly trained and the SMR unit changes its working state to an operational state.
At the initial installation, a manual check may be performed to manually verify the SMR unit initial classification and output result.
If at the initialization, or during operation, a classification result occurs in which for one or more digits more than one output neuron reaches a value close to 1 , or no output neuron reaches a value close to 1 , the classification has not been successful and the neural network has to be retrained to properly classify said one or more digits.
The SMR unit may advantageously store the last 100 readings of the digits of the meter readout. When the neural network has to be retrained for the correct classification of a given digit, the stored images are used and noise is introduced to the images. There are 10 photo images of each number from 0 to 9. The images are copied in 10 copies and proportional noise is introduced to 9 of the images ranging from 2 - 20% noise. The network is then retrained for a given digit with a total of 1000 images. After the training, the network is verified with the last 10 clean digit images and if only one output neuron is set to 1 the network classification is considered to be working properly and the new weights for that digit are stored and the network is set to operational. The SMR unit or the OAMR system may at regular time intervals retrain the network without any error having occurred, but simply to compensate for aging, dust and other time effects.
It is shown in Figure 3 a simplified block diagram of an exemplary intelligent meter reading device 300, configured as a client system, in accordance with a specific embodiment of the present invention. In at least one example, the intelligent meter reading device 300 advantageously includes OAMR Intelligent Meter Reading Device App Component(s) which have been configured or designed to provide functionality for enabling or implementing at least a portion of various OAMR techniques at the client computer system 300.
According to specific examples, various aspects, features, and/or functionalities of the intelligent meter reading device 300 may be performed, implemented and/or initiated by one or more of the following types of systems, components, devices, procedures, processes, or combinations thereof:
Processor(s) 310;
Device drivers 342;
Memory 316;
Interface(s) 30;6
Power source(s)/Distribution 343;
Geolocation module 346;
Display(s) 335;
I/O devices 330;
Peripheral Devices 331 ;
Motion detection module 340;
User identification/authentication module 347;
Self-adapting, automated meter reading component(s) 360;
Software/hardware authentication/validation 344;
Wireless communication module(s) 345;
Information filtering module(s) 349;
Operating-mode selection component 348;
Scanner/Camera 352;
OCR Processing Engine 356;
Neural network component 31 1 ; • Optical wide-angle lens;
• Self-configuration engine 312; and
• Accuracy and quality control monitoring module 313.
As illustrated in the example of Figure 3, the intelligent meter reading device 300 may include a variety of components, modules and/or systems for providing various functionalities. For example, as illustrated in Figure 3, the intelligent meter reading device 300 may preferably include self-adapting, automated meter reading components 360, which, for example, may include, but are not limited to, one or more of the following (or combinations thereof):
• Ul components 362 such as those illustrated, described, and/or referenced herein;
• Database components 364 such as those illustrated, described, and/or referenced herein;
• Processing components 366 such as those illustrated, described, and/or referenced herein; and
• Other components 368 which, for example, may include components for facilitating and/or enabling the intelligent meter reading device 300 to perform and/or initiate various types of operations, activities, functions such as those described herein.
In at least one example, the self-adapting, automated meter reading component(s) 360 may be operable to perform and/or implement various types of functions, operations, actions, and/or other features such as, for example, one or more of the following (or combinations thereof):
• Automatic optical reading of the meter display;
• Transforming and classifying image data to a digital meter value;
• Self-adapting the image classification algorithm to different meter types;
• Measuring reading accuracy and self-adjusting classification algorithm;
• Storing captured images and measured values with timestamps in a database;
• Adapting a load consumption profile for the meter based on measured values, time and other external parameters like climate and error messages;
• Providing a load prediction functionality allowing consumption to be predicted based on statistical measured values;
• Providing PLC programmable functionality for the SMR unit to execute instructions based on time and events; and • Provide wireless communication to other SMR units, and/or to the coordinator/server, and to the internet and/or to the smart grid.
According to specific examples, multiple instances or threads of the self-adapting, automated meter reading component(s) 360 may be concurrently implemented and/or initiated via the use of one or more processors and/or other combinations of hardware and/or hardware and software. For example, in at least some examples, various aspects, features, and/or functionalities of the self-adapting, automated meter reading component(s) 360 may be performed, implemented and/or initiated by one or more of the following types of systems, components, systems, devices, procedures, processes, or combinations thereof:
• Image Sensor - Captures a digital image of the meter readout;
• MCU unit - Central processing unit with peripherals computes data;
• Flash memory - Mass storage memory that stores image and digital data;
· Radio unit - Communicate with other SMR units and coordinator/server in a mesh network based on the IEEE 802.15.4 or similar standard;
• Image filtering procedure prepares the image for classification using Radon transformation;
• Image classification procedure based on neural network;
· Image classification training procedure;
• Classification accuracy measuring and tuning procedure; and
• Energy storage device (e.g., battery) and local energy harvest / charging.
According to different examples, one or more different threads or instances of the self- adapting, automated meter reading component(s) 360 may be initiated in response to detection of one or more conditions or events satisfying one or more different types of minimum threshold criteria for triggering initiation of at least one instance of the self-adapting, automated meter reading component(s) 360. Various examples of conditions or events which may trigger initiation and/or implementation of one or more different threads or instances of the self- adapting, automated meter reading component(s) may include, but are not limited to, one or more of the following (or combinations thereof):
• Start/wakeup of the OAMR device from deep sleep - The OAMR device controls if it is a new installation or read mode;
• Time event triggers the SMR unit to read the meter value; • Network event triggers the SMR unit to read the meter value and check accuracy;
• Accuracy error, metering error or new installation mode may trigger a training mode where the SMR unit trains the neural network; and
• Consumption profile is built statistically on stored data.
In at least one example, a given instance of the self-adapting, automated meter reading component(s) 360 may access and/or utilize information from one or more associated databases. In at least one example, at least a portion of the database information may be accessed via communication with one or more local and/or remote memory devices. Examples of different types of data which may be accessed by the self-adapting, automated meter reading component(s) 360 may include, but are not limited to, one or more of the following (or combinations thereof):
• Utility Meter Readout Optical Image sensor on OAMR device;
• Optical Sensors on OAMR device;
• Digital Inputs on OAMR device;
• Digital Outputs on OAMR device;
• Analog Inputs on OAMR device;
• Analog Outputs on OAMR device;
• Pulse Inputs on OAMR device;
• Inputs from external sensors like temperature, pressure, or climate;
• Manual actuators like switches and touch screens;
• Network Messages to coordinator/server and other OAMR devices;
• Network messages to/from the Internet and Smart Grid;
• File transfers to/from coordinator/server and other OAMR devices; and
• File transfers to/from the Internet and Smart Grid.
Some of the various types of functions, operations, actions, and/or other features which may advantageously be provided by the self-adapting, automated meter reading component(s) 360 include:
• Automatic optical reading of the meter readout;
• Automatic meter type adaption and accuracy measuring;
• Automatic image classification and neural network self-training;
· Flash storage of images and data; • Programmable software and I/O with software programming language;
• Meter consumption profiling;
• Meter load prediction;
• Utility pre-payment gateway;
· Utility smart switch;
• Utility social alerts;
• Mesh networking between SMR units and OAMR coordinator/server;
• Internet / smart grid connectivity;
• Rechargeable battery with local energy harvesting; and
· Error handling and exception management;
According to different examples, the intelligent meter reading device 300 may further include, but is not limited to, one or more of the following types of components, modules and/or systems (or combinations thereof):
• At least one processor 310. In at least one example, the processor(s) 310 include one or more commonly known CPUs which are deployed in many of today's consumer electronic devices, such as, for example, CPUs or processors from the Freescale or Texas Instruments family of microprocessors, etc. In an alternative example, the at least one processor 310 may be specially designed hardware, such as FPGAs, Digital Signal
Processors, etc., for controlling the operations of the intelligent meter reading device 300 configured as a client system. In a specific embodiment, a memory (such as non-volatile RAM and/or ROM) also forms part of CPU. When acting under the control of appropriate software or firmware, the CPU may be responsible for implementing specific functions associated with the functions of a desired network device. The CPU preferably accomplishes one or more these functions under the control of software including an operating system, and any appropriate applications software.
• Memory 316, which, for example, may include volatile memory (e.g., RAM), non-volatile memory (e.g., disk memory, FLASH memory, EPROMs, etc.), unalterable memory, and/or other types of memory. In at least one example, the memory 316 includes functionality similar to at least a portion of functionality implemented by one or more commonly known memory devices such as those described herein and/or generally known to one having ordinary skill in the art. According to different examples, one or more memories or memory modules (e.g., memory blocks) may be configured or designed to store data, program instructions for the functional operations of the intelligent meter reading device 300 and/or other information relating to the functionality of the various OAMR techniques described herein. The program instructions may, for example, control the operation of an operating system and/or one or more applications. The memory or memories may also be configured to store data structures, metadata, time code synchronization information, and/or information/data relating to other features/functions described herein. Because such information and program instructions may be employed to implement at least a portion of the OAMR techniques described herein, various aspects described herein may be implemented using machine readable media that include program instructions, state information, etc. Examples of machine-readable media include, but are not limited to, magnetic media such as hard disks, flash memory; optical media such as CD-ROM disks; magneto-optical media such as floptical disks; and hardware devices that are specially configured to store and perform program instructions, such as read-only memory devices (ROM) and random access memory (RAM). Examples of program instructions include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer using an interpreter.
• Interface(s) 306 which, for example, may include wired interfaces and/or wireless communication interfaces. In at least one implementation, the interface(s) 306 include functionality similar to at least a portion of functionality implemented by one or more computer system interfaces such as those described herein and/or generally known to one having ordinary skill in the art. For example, in at least one implementation, the wireless communication interfaces are configured or designed to communicate with selected computer systems, remote servers, other wireless devices (e.g., PDAs, cell phones, player tracking transponders, etc.), etc. Such wireless communication may be implemented using one or more wireless interfaces/protocols such as, for example, 802.1 1 (WiFi), 802.15
(including Bluetooth™), 802.16 (WiMax), 802.22, cellular standards such as CDMA, CDMA2000, WCDMA, GSM, LTE, radio Frequency (e.g., RFID), infrared, near field magnetics, wireless M-bus, Sub 1 GHz networks etc. · Device driver(s) 342. In at least one implementation, the OAMR device driver(s) 342 includes functionality similar to at least a portion of functionality implemented by one or more computer system driver devices such as those described herein and/or generally known to one having ordinary skill in the art. · At least one power source (and/or power distribution source) 343. In at least one implementation, the power source 343 may include at least one mobile power source (e.g., battery) for allowing the intelligent meter reading device 300 to operate in a wireless and/or mobile environment. For example, the power source 343 may be implemented using a rechargeable, Li-Polymer battery. Further, in examples where it is desirable for the OAMR device to be flexible and energy-efficient, the power source 343 may be designed to be flexible with local energy harvesting.
Geolocation module 346 which, for example, may be configured or designed to acquire geolocation information from remote sources and use the acquired geolocation information to determine information relating to a relative and/or absolute position of the intelligent meter reading device 300.
Motion detection module 340 for detecting motion or movement of the intelligent meter reading device 300 and/or for tamper detection. In at least one example, the motion detection module 340 includes one or more motion detection sensors such as, for example, MEMS (Micro Electro Mechanical System) accelerometers and/or proximity sensors, that may detect the acceleration, proximity and/or other movements of the intelligent meter reading device 300 as it is moved by a user.
User identification/authentication module 347. In one implementation, this module is adapted to determine and/or authenticate the identity of the current user or owner of the intelligent meter reading device 300. For example, the current user may be enabled to perform a log-in process at the intelligent meter reading device 300 in order to access one or more features. Alternatively, the intelligent meter reading device 300 may be adapted to automatically determine the identity of the current user based upon one or more external signals such as, for example, an RFID tag or badge worn by the current user which provides a wireless signal to the intelligent meter reading device 300 for determining the identity of the current user. In at least one implementation, various security features may be incorporated into the intelligent meter reading device 300 to prevent unauthorized users from accessing confidential or sensitive information.
One or more display(s) 335. According to various examples, such display(s) 335 may be implemented using, for example, LCD display technology, OLED display technology, and/or other types of conventional display technology. In at least one implementation, the display(s) 335 are adapted to be flexible or bendable. In some examples, the display(s) 335 are implemented by means of a technology for reducing the power consumption of information displayed on the display(s) 335. One or more user I/O device(s) 330 such as, for example, keys, buttons, scroll wheels, cursors, touch screen sensors, audio command interfaces, magnetic strip reader, optical scanner, etc.
Other types of peripheral devices 331 which may be useful to the users of various intelligent meter reading devices 300, such as, for example:; memory card reader(s); fingerprint reader(s); real-world sensors such as, for example, acceleration sensor, proximity meter, tampering detection device, position sensors (such as GPS-enabled sensors, and similar devices), temperature and/or pressure sensors, and other sensors of different types.
Information filtering module(s) 349 which, for example, may be adapted to automatically and dynamically generate, using one or more filter parameters, filtered information to be displayed on one or more displays 335 of the intelligent meter reading device 300. In one implementation, such filter parameters may be customizable by the player or user of the intelligent meter reading device 300. In some examples, the information filtering module(s) 349 are also adapted to display, in real-time, filtered information to the user based upon a variety of criteria such as, for example, geolocation information.
Wireless communication module(s) 345. In one implementation, the wireless communication module 345 is configured or designed to communicate with external devices using one or more wireless interfaces/protocols such as, for example, 802.1 1 (WiFi), 802.15 (including Zigbee, Bluetooth™), 802.16 (WiMax), 802.22, cellular standards such as CDMA, CDMA2000, WCDMA, GSM, LTE, radio frequency (e.g., RFID), infrared, near field magnetics, wireless M-bus, Sub 1 GHz networks, etc.
Software/hardware authentication/validation components 344 which, for example, may be used for authenticating and/or validating local hardware and/or software components, and/or hardware/software components residing at a remote device, and/or user information and/or identity.
Operating-mode selection component 348 which, for example, may be operable to automatically select an appropriate mode of operation based on various parameters and/or upon detection of specific events or conditions such as, for example: the current location of the intelligent meter reading device 300; the identity of the current user; a user input; a system override (e.g., emergency condition detected); the proximity to other devices belonging to same group or association; the proximity to specific objects, regions, zones, etc. Additionally, the intelligent meter reading device 300may be operable to automatically update or switch its current operating mode to the selected mode of operation. The intelligent meter reading device 300 may also be adapted to automatically modify accessibility of user-accessible features and/or information in response to the updating of its current mode of operation.
• Digital image sensor component, such as scanner/camera 352, which may be configured or designed to scan identifiers and/or other content from other devices and/or objects such as for example: intelligent meter reading device displays 335, computer displays, static displays (e.g., printed on tangible mediums), etc.
• Optical wide-angle lens.
• OCR Processing Engine 356 which, for example, may be operable to perform image processing and optical character recognition of images such as those captured by a the scanner/camera 352 of an intelligent meter reading device 300.
• Digital filtering component such as, for example, a radon transformation engine 339 and neural network component 31 1 to classify the image data to numeric values.
Client Computer System
Figure 2 shows a diagrammatic representation of a machine in the exemplary form of a client (or end-user) computer system 200 within which a set of instructions, for causing the machine to perform any one or more of the methodologies or functions discussed herein, may be executed. In alternative examples, the machine operates as a stand-alone device or is connected (e.g., networked) to other machines. In a networked deployment, the machine may operate in the capacity of a server or a client machine in server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. The machine may be an embedded computer, microprocessor, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while only a single machine is illustrated in Figure 2, the term "machine" may also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.
The exemplary client computer system 200 includes a processor 202 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), or both), a main memory 204 and a static memory 206, which communicate with at least one another via a bus 208. The client computer system 200 may advantageously further include a digital image sensor, such as a video display unit 210 (e.g., a liquid crystal display or LCD unit). The computer system 200 also includes an alphanumeric input device 212 (e.g., a keyboard), a user interface (Ul) navigation device 214 (e.g., a cursor control device), a flash memory drive unit 216, a signal generation device 218 (e.g., a speaker) and a wireless network interface device 220.
The flash memory drive unit 216 advantageously includes a machine-readable medium 222 on which is stored one or more sets of instructions and/or data structures (e.g., software 224) embodying or utilized by any one or more of the methodologies or functions described herein. The software 224 may also reside, completely or at least partially, within the main memory 204 and/or within the processor 202 during execution thereof by the client computer system 200, wherein the main memory 204 and the processor 202 also constitute machine- readable media.
The software 224 may further be transmitted or received over a network 226 via the wireless network interface device 220 utilizing any one of a number of well-known internet transfer protocols (e. g., HTTP, FTP, TCP/IP, UDP/IP and similar) and overlaying application layer protocols.
While the machine-readable medium 222 is shown in an exemplary embodiment to be a single medium, the term "machine-readable medium" may be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions and/or data structures. The term "machine-readable medium" may also be taken to include any medium that is capable of storing, encoding or carrying a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies of the present invention, or that is capable of storing, encoding or carrying data structures utilized by or associated with such a set of instructions. The term "machine-readable medium" may accordingly be taken to include, but not be limited to, solid-state memories, optical and magnetic media, and carrier wave signals.
According to various examples of the present invention, client computer system 200 may include a variety of components, modules and/or systems for providing various types of functionality. For example, in at least one example, client computer system 200 includes a web browser application which is operable to process, execute, and/or support the use of scripts (e.g., JavaScript, AJAX, etc.), plug-ins, executable code, virtual machines, vector-based web animation (e.g., Adobe Flash), etc.
In at least one example, the web browser application may be configured or designed to instantiate components and/or objects at the client computer system 200 in response to processing scripts, instructions, and/or other information received from a remote server such as a web server. Examples of such components and/or objects may include, but are not limited to, one or more of the following (or combinations thereof): · Ul components such as those illustrated, described, and/or referenced herein;
• Database components such as those illustrated, described, and/or referenced herein;
• Processing components such as those illustrated, described, and/or referenced herein; and
· Other components which, for example, may include components for facilitating and/or enabling the client computer system 200 to perform and/or initiate various types of operations, activities, or functions such as those described herein.
OAMR Server System
Referring now to Figure 4, it is there shown an example of a OAMR server system 480 suitable for the OAMR system described in the context of Figure 1 , and which may be used for implementing various aspects/features described herein. In at least one example, the OAMR server system 480 includes at least one network device 460 and at least one storage device 470 (such as, for example, a direct attached storage device).
In one example, the OAMR server system 480 is suitable for implementing at least some of the OAMR techniques described herein. In some examples of the present invention, the network device 460 includes a master central processing unit (CPU) 462 and interfaces 468.
When acting under the control of appropriate software or firmware, the CPU 462 may be responsible for implementing specific functions associated with the functions of a desired network device 460. For example, when configured as a server, the CPU 462 may be responsible for analyzing packets; encapsulating packets; forwarding packets to appropriate network devices, different from the network device 460; instantiating various types of virtual machines, and/or virtual interfaces, and/or virtual storage volumes, and/or virtual appliances; etc. The CPU 462 preferably accomplishes at least a portion of these functions under the control of software including a real time operating system (e.g. MQX), and any appropriate system software.
The CPU 462 may include one or more processors 463 such as, for example, one or more processors from the AMD, Freescale, or Texas Instruments families of microprocessors. Alternatively, processor 463 may be a signal processor or a specially designed Field Programmable Gate Array (FPGA) or similar technology for controlling the operations of the OAMR server system 480. In a specific example, a memory 461 (such as FLASH, non-volatile RAM and/or ROM memory) also forms part of the CPU 462. However, there may be many different ways in which memory could be coupled to the system. In particular, a memory block 461 may be used for a variety of purposes such as, for example, caching and/or storing data, programming instructions, etc.
The interfaces 468 may be typically provided as interface cards (sometimes referred to as "line cards"). Alternatively, one or more of the interfaces 468 may be provided as on-board interface controllers built into the motherboard of the OAMR server system 480. Generally, said interfaces 468 control the sending and receiving of data packets over the network and sometimes support other peripherals used with the OAMR server system 480. Among the interfaces 468 that may be provided, there may be FC interfaces, Ethernet interfaces, frame relay interfaces, cable interfaces, DSL interfaces, token ring interfaces, Infiniband interfaces, and the like. In addition, various very high-speed interfaces may be provided, such as fast Ethernet interfaces, Gigabit Ethernet interfaces, ATM interfaces, HSSI interfaces, POS interfaces, FDDI interfaces, ASI interfaces, DHEI interfaces and the like. Other interfaces may include one or more wireless interfaces such as, for example, 802.1 1 (WiFi) interfaces, 802.15 interfaces (including Zigbee™), 802.16 (WiMax) interfaces, 802.22 interfaces, cellular standards such as CDMA interfaces, CDMA2000 interfaces, WCDMA interfaces, TDMA interfaces, cellular 3G interfaces, LTE etc.
Generally, one or more of the interfaces 468 may include ports appropriate for communication with the appropriate media. In some cases, they may also include an independent processor and, in some instances, volatile RAM. The independent processors may control intensive tasks of such communications, such as for example packet switching, media control and management. By providing separate processors for the communications intensive tasks, these interfaces 468 allow the master microprocessor 462 to efficiently perform computations, diagnostics, security functions, etc.
In at least one example, some interfaces 468 are configured or designed to allow the OAMR server system 480 to communicate with other network devices associated with various local area network (LANs) and/or wide area networks (WANs). Some other interfaces 468 may be configured or designed to allow network device 460 to communicate with one or more directly attached storage device(s) 470. Although the OAMR server system 480 shown in Figure 4 illustrates one specific network device 460 described herein, it is by no means the only network device architecture that may be implemented. For example, an architecture having a single processor that handles communications as well as routing computations may be used. Further, other types of interfaces and media could also be used with the network device 460.
Regardless of the configuration of the network device 460, this may employ one or more memories or memory modules (such as, for example, memory block 465, which, for example, may include random access memory or RAM) configured to store data, program instructions for the general-purpose network operations and/or other information relating to the functionality of the various OAMR techniques described herein. The program instructions may, for example, control the operation of an operating system and/or one or more applications. The memory or memories may also be configured to store data structures, and/or other specific non-program information described herein. The network device 460 advantageously comprises a bus 467 to which the CPU 462, the memory block 465 and the interfaces 468 are connected by means of connections 455, 457 and 459 respectively.
Because such information and program instructions may be employed to implement the systems/methods described herein, one or more examples of memories or memory modules relate to machine readable media that include program instructions, state information, etc. for performing various operations described herein. Examples of machine-readable storage media include, but are not limited to, magnetic media such as hard disks, floppy disks, and Flash memory; optical media such as CD-ROM disks; magneto-optical media such as floptical disks; and hardware devices that may be specially configured to store and perform program instructions, such as read-only memory (ROM) devices, FLASH and random access memory (RAM). Some further examples may also include transmission media such as, for example, a carrier wave travelling over an appropriate medium such as airwaves, optical lines, electric lines, etc. Examples of program instructions include both machine code, such as produced by a compiler, and files containing higher-level code that may be executed by the computer using an interpreter.
Figure 5 illustrates an example of a functional block diagram of an OAMR Server System in accordance with the present invention. An OAMR Server System 500 is operable to perform and/or implement various types of functions, operations, actions, and/or other features such as, for example, one or more of the following (or combinations thereof):
• Function as a system coordinator/server for OAMR devices;
• Function as a deep-sleep mesh protocol coordinator/server;
• Function as an Internet / Smart grid gateway;
· Function as a data storage unit/database;
• Perform error exception handling of network events;
• Function as a smart meter data concentrator;
• Function as a smart meter data network coordinator/server;
• Function as a smart energy gateway network node;
· Function as a utility pre-payment gateway; and
• Function as a home energy monitor.
In at least one example, the OAMR Server System 500 may include a plurality of components operable to perform and/or implement various types of functions, operations, actions, and/or other features such as, for example, one or more of the following (or combinations thereof):
• Smart Grid Load Prediction Feedback and Forward Load Adjustment Component(s) 51 1 which, for example, may be configured or designed to analyze meter information and data provided by one or more SMR units, and to use the analyzed information/data to initiate and/or perform various types of operations including, for example, one or more of the following (or combinations thereof):
o Smart Grid Load Prediction;
o Forward Load Adjustment; and
o Feedback correction. Utility Pre-payment Gateway(s) which, for example, may be configured or designed to allow the user to prepay the utility service by various means of credit card payments, mobile payments, internet banking, etc.; monitor the consumption; deduct utility credits from the prepaid account; and through, a smart utility switch, turn on and off the utility service. The Utility Pre-payment Gateway(s) may provide, for example one or more of the following (or combinations thereof) services:
o Utility pre-Payment Gateway;
o Smart utility Switch;
o Home Utility display;
o Credit card and prepaid utility credit options; and
o Mobile and internet payment options.
Utility service social alert component(s) which, for example, may be configured to send alerts for low utility credit balance, utility disconnection, etc. to the clients (i.e., consumers) and/or social services or medical services. The utility service social alert component(s) may provide one or more of the following (or combinations thereof):
o Utility Service alerts; and
o Utility service social alerts.
Context Interpreter 502 which, for example, may be operable to automatically and/or dynamically analyze contextual criteria relating to a given transaction or operation, and automatically determine or identify the type of transaction to be performed (e.g., payment- related transaction, identification-related transaction, etc.). According to the present invention, examples of contextual criteria which may be analyzed may include, but are not limited to, one or more of the following (or combinations thereof):
o Location-based criteria (e.g., geolocation of client device, geolocation of agent device, etc.);
o Time-based criteria;
o Identity of client user;
o Identity of agent user;
o User profile information;
o Transaction history information;
o Recent user activities; and
o Proximity-related criteria (e.g., criteria which may be used to determine whether the client device is currently located at or near a specified location). • Time Synchronization Engine 504 which, for example, may be operable to manages universal time synchronization (e.g., via NTP and/or GPS).
• Search Engine 528 which, for example, may be operable to search for transactions, logs, items, accounts, events and options in one or more databases.
Configuration Engine 532 which, for example, may be operable to determine and handle configuration of various customized configuration parameters for one or more devices, component(s), system(s), process(es), etc.
Time Interpreter 518 which, for example, may be operable to automatically and/or dynamically modify or change identifier activation and expiration time(s) based on various criteria such as, for example, time, location, transaction status, etc. · Authentication/Validation module 547 (including for instance password, software/hardware information, SSL certificates) which, for example, may be operable to perform various types of authentication/validation tasks such as one or more of the following (or combinations thereof):
o Verifying/authenticating devices;
o Verifying passwords, pass codes, SSL certificates, biometric identification information, and/or other types of security-related information, such as IP address, etc.; and
o Verifying/validating activation and/or expiration times. In one implementation, the Authentication/Validation module may be adapted to determine and/or authenticate the identity of the current user or owner of a mobile client system (such as for instance a client computer system 130 in Figure 1 ). For example, in one embodiment, the current user may be enabled to perform a log-in process at the mobile client system in order to access one or more features. In some examples, the mobile client system may include biometric security components which may be operable to validate and/or authenticate the identity of a user by reading or scanning the user's biometric information (e.g., fingerprints, face, voice, eye/iris, etc.). In at least one implementation, various security features may be incorporated into the mobile client system to prevent unauthorized users from accessing confidential or sensitive information.
• Transaction Processing Engine 522 which, for example, may be operable to handle various types of transaction processing tasks such as, for example, one or more of the following (or combinations thereof):
o Identifying/determining transaction type;
o Determining which payment gateway(s) to use; and
o Associating databases information to identifiers.
OCR Processing Engine 534 which, for example, may be operable to perform image processing and optical character recognition of images such as, for example, those captured by the camera 352 of the intelligent meter reading device 300 in Figure 3.
Database Manager 526 which, for example, may be operable to handle various types of tasks relating to database updating, database management, database access, etc. In at least one example, the Database Manager 526 may be operable to manage databases, such as OAMR Device Application databases.
Log Component(s) 510 which, for example, may be operable to generate and manage transactions history logs, system errors, connections from APIs, etc.
Status Tracking Component(s) 512 which, for example, may be operable to automatically and/or dynamically determine, assign, and/or report updated transaction status information based, for example, on the state of the transaction. In at least one example, the status of a given transaction may be reported as one or more of the following (or combinations thereof): Completed, Incomplete, Pending, Invalid, Error, Declined, or Accepted.
Gateway Component(s) (not shown in Figure 5) which, for example, may be operable to facilitate and manage communications and transactions with external Payment Gateways.
Web Interface Component(s) 508 which, for example, may be operable to facilitate and manage communications and transactions with TIS web portal(s).
API Interface(s) to 3rd Party Server System(s) 548 which, for example, may be operable to facilitate and manage communications and transactions with 3rd Party Server System(s) (such as, for instance, the Remote Server System(s)/Service(s) 170 or the other 3rd Party Entities 150 in the OAMR system of Figure 1 ).
OCR Processing Engine 534 which, for example, may be operable to perform image processing and optical character recognition of images such as those captured by the camera of a intelligent meter reading device.
At least one processor 510, which in at least one example may include one or more commonly known CPUs which are deployed in many of today's consumer electronic devices, such as, for example, CPUs or processors from the Freescale or Texas Instruments family of microprocessors, etc. In an alternative example, the at least one processor 510 may be signal processor or specially designed hardware like FPGAs for controlling the operations of a mobile client system (such as for instance the client computer system 130 in Figure 1 ). In a specific example, a memory (such as non-volatile RAM and/or ROM) also forms part of CPU. When acting under the control of appropriate software or firmware, the CPU may be responsible for implementing specific functions associated with the functions of a desired network device. The CPU preferably accomplishes one or more these functions under the control of software including an operating system, and any appropriate applications software.
Memory 516, which, for example, may include volatile memory (e.g., RAM), non-volatile memory (e.g., disk memory, FLASH memory, EPROMs, etc.), unalterable memory, and/or other types of memory. In at least one implementation, the memory 516 may include functionality similar to at least a portion of functionality implemented by one or more commonly known memory devices such as those described herein and/or generally known to one having ordinary skill in the art. According to different embodiments, one or more memories or memory modules (e.g., memory blocks) may be configured or designed to store data, program instructions for the functional operations of the mobile client system and/or other information relating to the functionality of the various mobile transaction techniques described herein. The program instructions may control the operation of an operating system and/or one or more applications. The memory or memories may also be configured to store data structures, metadata, identifier information/images, and/or information/data relating to other features/functions described herein. Because such information and program instructions may be employed to implement at least a portion of the OAMR system techniques described herein, various aspects described herein may be implemented using machine readable media that include program instructions, state information, etc. Examples of machine-readable media include, but are not limited to, magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD-ROM disks; magneto-optical media such as floptical disks; and hardware devices that are specially configured to store and perform program instructions, such as read-only memory devices (ROM) and random access memory (RAM). Examples of program instructions include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer using an interpreter.
Interface(s) 506 which, for example, may include wired interfaces and/or wireless interfaces. In at least one implementation, the interface(s) 506 may include functionality similar to at least a portion of functionality implemented by one or more computer system interfaces such as those described herein and/or generally known to one having ordinary skill in the art. In at least one embodiment, at least a portion of the interface(s) 506 may include various types of wireless interfaces such as, for example, 802.15.4, Zigbee, Wireless M-bus, Sub 1 GHz, etc.
Device driver(s) 542. In at least one implementation, the device driver(s) 542 of the OAMR server system 500 may include functionality similar to at least a portion of functionality implemented by one or more computer system driver devices such as those described herein and/or generally known to one having ordinary skill in the art.
One or more display(s) 535. According to various examples of the present invention, such display(s) 535 may be implemented using, for example, LCD display technology, OLED display technology, and/or other types of conventional display technology. In at least one implementation, display(s) 535 may be adapted to be flexible or bendable. Additionally, in at least one example, the information displayed on display(s) 535 may utilize e-ink technology (such as that available from E Ink Corporation, Cambridge, MA, www.eink.com), or other suitable technology for reducing the power consumption of the information displayed on the display(s) 535.
Email Server Component(s) 536, which, for example, may be configured or designed to provide various functions and operations relating to email activities and communications.
Web Server Component(s) 537, which, for example, may be configured or designed to provide various functions and operations relating to web server activities and communications.
Cloud Server Component(s) (not shown in Figure 5), which, for example, may be configured or designed to provide various functions and operations relating to cloud server activities and communications. • Messaging Server Component(s) 538, which, for example, may be configured or designed to provide various functions and operations relating to text messaging and/or other social network messaging activities and/or communications.
Example of a Smart Meter Reader Operating Procedure
Figure 10 shows an exemplary flow diagram of a Smart Meter Reader Operating procedure (or method) in accordance with an aspect of the present invention.
A smart meter reader operating procedure 1000 is configured to obtain the value on the display of a utility meter at periodic intervals by cycling through the steps depicted in the flowchart of the figure, or upon detection of a certain condition or event. Thus, a first step of the method involves detecting 1002 a triggering condition/event that causes the SMR unit that implements the method to wake-up from a stand-by state. One of the possible triggering conditions is a signal generated by a timer at periodic intervals.
According to the method, it is verified 1004, whether the type of utility meter needs to be detected (e.g., whether it is a meter with numeric analog, numeric digital or arrow analog readout), in which case the method after capturing 1006 an image of the display of the utility meter using an image sensor of the SMR unit proceeds to the analysis of the image and the detection 1008 of the type of meter (e.g., a given brand and product) from the image using an image recognition algorithm. Once identified, the SMR unit can be configured 1010 with configuration parameters specific to the type of meter detected (e.g., selecting appropriate digital filters, parameterization for the step of segmentation, pre-trained set of weights for the neural networks used as pattern recognition algorithms to detect values of the digits, etc.). The operating procedure 1000 also verifies 1012 the accuracy of the type of utility meter detected and, if it is below a given confidence threshold 1014, the captured image is discarded and the detection of the type of utility meter is repeated with a new image. Else, the method can proceed to analyzing 1024 the image to obtain the meter readout value. The same image used to detect the type of utility meter can be used in such analysis. Alternatively, the image captured in step 1006 can be discarded and new image captured 1022.
If the verification 1004 reveals that the type of utility meter has already been detected, then after capturing 1022 an image of the display of the utility meter, the method can proceed directly to analyzing 1024 said image.
The analysis 1024 of the image involves segmenting it into different single-digit images (as many as there are digits on the display of the utility meter of the detected type) and for each digit determining its value from the corresponding single-digit image using a pattern recognition algorithm individually customized for each digit to be determined. Further, the method verifies 1026 the accuracy of the value of the digits and, in case said accuracy does not meet another confidence threshold 1028, discarding the image and repeating the analysis 1024 with a new image. Otherwise, after combining the individual values of the digits to obtain the meter readout value, said value is stored 1032 in a memory module.
The operating procedure 1000 further comprises a step of verifying 1016 whether the image recognition algorithm used in the detection step 1008 need to be corrected regardless its accuracy performance, but to compensate for aging, changing light conditions and other time- related effects. If such correction is required, then the method applies correction procedures 1020 which involve retraining the image recognition algorithm with a predefined periodicity to adjust its configuration parameters. Similarly, the operating procedure 1000 also comprises a step of verifying 1030 whether the pattern recognition algorithm used in the analysis 1024 need to be corrected regardless its accuracy performance. In such case, the application of correction procedures 1020 involve detecting again the type of utility meter and retraining the pattern recognition algorithm for all digits of the newly detected type of utility meter.
According to different embodiments of the present invention, at least a portion of the various types of functions, operations, actions, and/or other features provided by the Smart Meter Reader Operating Procedure 1000 may be implemented at one or more smart meter reader devices such as those described and/or referenced herein (e.g., intelligent meter reading device 160 in Figure 1 ).
In at least one embodiment, the Smart Meter Reader Operating Procedure 1000 may be operable to perform and/or implement various types of functions, operations, actions, and/or other features such as one or more of those described and/or referenced herein.
In at least one embodiment, the Smart Meter Reader Operating Procedure 1000 may be operable to utilize and/or generate various different types of data and/or other types of information when performing specific tasks and/or operations. This may include, for example, input data/information and/or output data/information. For example, in at least one embodiment, the Smart Meter Reader Operating Procedure 1000 may be operable to access, process, and/or otherwise utilize information from one or more different types of sources, such as, for example, one or more local and/or remote memories, devices and/or systems. Additionally, in at least one embodiment, the Smart Meter Reader Operating Procedure 1000 may be operable to generate one or more different types of output data/information, which, for example, may be stored in memory of one or more local and/or remote devices and/or systems. Examples of different types of input data/information and/or output data/information which may be accessed and/or utilized by the Smart Meter Reader Operating Procedure 1000 may include, but are not limited to, one or more of those described and/or referenced herein.
In at least one embodiment, a given instance of the Smart Meter Reader Operating Procedure 1000 may access and/or utilize information from one or more associated databases. In at least one embodiment, at least a portion of the database information may be accessed via communication with one or more local and/or remote memory devices (such as for instance the remote database system 180 in Figure 1 ). Examples of different types of data which may be accessed by the Smart Meter Reader Operating Procedure 1000 include, but are not limited to, one or more of those described and/or referenced herein.
According to specific embodiments, multiple instances or threads of the Smart Meter Reader Operating Procedure 1000 may be concurrently implemented and/or initiated via the use of one or more processors and/or other combinations of hardware and/or hardware and software. For example, in at least some embodiments, various aspects, features, and/or functionalities of the Smart Meter Reader Operating Procedure 1000 may be performed, implemented and/or initiated by one or more of the various systems, components, systems, devices, procedures, processes, etc., described and/or referenced herein. According to different embodiments, one or more different threads or instances of the
Smart Meter Reader Operating Procedure 1000 may be initiated in response to detection 1002 of one or more conditions or events satisfying one or more different types of minimum threshold criteria for triggering initiation of at least one instance of the Smart Meter Reader Operating Procedure 1000. Various examples of conditions or events which may trigger initiation 1002 and/or implementation of one or more different threads or instances of the Smart Meter Reader Operating Procedure 1000 may include, but are not limited to one or more of the following (or combinations thereof):
• Time;
• Date;
• Communication(s) w/ external device(s) ;
· Climate conditions;
• Sensor inputs;
• Motion detection;
• Proximity detection;
• Sound detection;
· Security event(s)/condition(s) ;
• Load detection;
• Programmable event;
• Payment event; and
• Utility credit depletion event.
According to different embodiments, one or more different threads or instances of the Smart Meter Reader Operating Procedure 1000 may be initiated and/or implemented manually, automatically, statically, dynamically, concurrently, and/or combinations thereof. Additionally, different instances and/or embodiments of the Smart Meter Reader Operating Procedure 1000 may be initiated at one or more different time intervals (e.g., during a specific time interval, at regular periodic intervals, at irregular periodic intervals, upon demand, etc.).
In at least one embodiment, initial configuration 1004 of a given instance of the Smart Meter Reader Operating Procedure 1000 may be performed using one or more different types of initialization parameters. In at least one embodiment, at least a portion of the initialization parameters may be accessed via communication with one or more local and/or remote memory devices. In at least one embodiment, at least a portion of the initialization parameters provided to an instance of the Smart Meter Reader Operating Procedure 1000 may correspond to and/or may be derived from the input data/information.
It may be appreciated that different embodiments of the Smart Meter Reader Operating Procedure (not shown) may include additional features and/or operations than those illustrated in the specific embodiment of Figure 10, and/or may omit at least a portion of the features and/or operations of Smart Meter Reader Operating Procedure illustrated in the specific embodiment of Figure 10. Another example of the operation of OAMR unit implementing the method of the present invention is provided in Figures 8 and 9. An OAMR unit operating procedure 800 starts in a stand-by state of low energy consumption 801 , Upon reception of a command, such as a command to start the OAMR unit, the procedure initializes 802 the OAMR unit and other peripherals and loads software routines, including the neural network configuration parameters, and then performs a hardware and functionality diagnosis check 803.
In case of system error, the OAMR switches to a stop state and performs error handling 804 before restarting the system and returning to the stand-by state 801 . Otherwise (i.e., when the diagnosis check is successful), the operating procedure 800 continues with the initialization 810 of the image sensor and the capture of an image, preferably a low-resolution image, of the display of the utility meter. The procedure checks 81 1 whether said image shows a recognizable meter image. If not, the step of capturing an image of the display of the utility meter is repeated and the number of attempts to recognize the type of meter from the image is counted 813. At each attempt, the method may advantageously change the parameters of the image sensor, the intensity of the infrared light source coupled to the image sensor, etc. The method verifies 814 the number of attempts and, if the count exceeds a predetermined maximum count, the method transitions to the stop state and performs error handling 804.
On the other hand, if the image shows a recognizable meter image, the method then checks 812 whether the meter image can be classified as a known type of model. In case of positive classification, the method loads a customized set of configuration parameters 816 for the pattern recognition algorithm (such as pre-trained weights of a neural network algorithm) that are optimized for the detected type of utility meter. Else (i.e., unknown meter type), the method loads a standard set of configuration parameters 815 and a default number of digits is assumed.
The operating procedure 800 continues with a step of performing segmentation and classification of the captured image 820. This step may also comprise checking the number of digits and/or the classification performance of each digit. Afterwards, the method checks 821 whether the classification results meet a predetermined confidence threshold. If not, the step of segmentation and classification 820 is repeated while image treatment and adjustment of configuration of the pattern recognition algorithm is performed 822 at each attempt. Verification of the number of attempts 823 is performed and if it exceeds another predetermined count, the method reverts to the stop state and performs error handling 804.
If the check 821 reveals correct classification results, the operating procedure 800 starts software routines with trained configuration parameters (e.g., neural network weights) and other settings 830, and repeatedly captures images of the display of the utility meter, segments said images into single-digit images and determines the value of the digits from the single-digit images 831 , and finally obtains the meter readout value. The method checks whether the classification results are acceptable 832 and, if not, the image is discarded and a new one is captured, segmented and analyzed. At each attempt, the operating procedure may change, among others, the image sensor parameters, the intensity of the infrared light source, or the configuration parameters of the pattern recognition algorithm 833. Again, verification of the number of attempts 834 is performed, and if the number of attempts without obtaining a correct classification exceeds yet another predetermined maximum count, the method switches to the stop state and performs error handling 804. Otherwise, the OAMR operating procedure 800 keeps capturing, segmenting and classifying images at periodic intervals, or whenever a triggering event or condition (e.g., a command from a OAMR server) is detected.
Example of OAMR-SMR Polling and Response Procedures
Referring now to Figure 1 1 , it is there shown a typical interaction diagram that illustrates how a user/client/purchaser may utilize the hardware/software components disclosed herein to initiate and/or perform a variety of different types of operations and/or activities such as those described herein. In particular, interaction diagram of Figure 1 1 illustrates OAMR-SMR Polling, Analysis, and Response Procedures.
In the figure, an OAMR server 1 106 interacts with two smart meter readers 1 102, 1 104 (identified as A and B). Before the polling and response procedure can take place, it is necessary for the smart meter readers to complete their registration with the OAMR server. Each smart meter reader 1 102, 1 104 sends a registration request 02a, 04a to the server 1 106 which sends registration confirmation 03a to the smart meter readers. At that point, each smart meter reader can start its meter read operations 06a, 10a and store the meter readout data in local storage 08a, 12a, such as a memory module. The OAMR server 1 106 can selectively send a meter reader polling request 14a, 18a to any of the smart meter readers that are registered with the server. The selected smart meter reader 1 102, 1 104 reacts to said request by sending a polling response 16a, 20a to the OAMR server. Said polling response advantageously comprises some, or even all, meter readout data stored locally in the smart meter reader together with a meter reader ID to allow the OAMR server to identify the smart meter reader that submitted the response.
The meter readout data acquired from selected smart meter readers 1 102, 1 104 is stored and analyzed 22a in the OAMR server 1 106, which generates 24a meter analysis information. Said information can be advantageously be transmitted 26a by the OAMR server 1 106 to a utility network 1 108, which in turn provides the OAMR server with a response 28a.
The information provided by the utility network 1 108 is used by the OAMR server 1 106 to generate updated meter reader instructions 30a to modify their internal configuration and/or functionality. The OAMR server sends selectively to the smart meter readers 1 102, 1 104 the updated meter reader instructions 32a, 38a. Upon receipt of said information, the selected smart meter reader processes and initiates 34a, 40a its operation accordingly and sends a confirmation/acknowledgement 36a, 42a to the OAMR server 1 106. In at least one example, the Smart Meter Reader(s) 1 102, 1 104 and/or OAMR Server(s)
1 106 may each be operable to measure, determine, collect, store, analyze, transmit, receive, acquire and/or access one or more different types of data/information, which, for example, may be stored in memory of one or more local and/or remote devices and/or systems. Examples of such different types of data/information (and related activities) may include, but are not limited to, one or more of the following (or combinations thereof):
• Example types of different data/information which may be measured, determined, and/or collected by a Smart Meter Reader 1 102, 1 104:
- Optical image of meter face / readout;
- Digital inputs from sensors, switches and breakers;
- Analog inputs from sensors and probes;
- Sensor inputs like onboard acceleration and proximity sensors;
- Time stamp from real time clock;
- Communication inputs from connected devices;
- Diagnostic data;
- User inputs and actions; - Payment transactions;
- Utility account depletion actions; and
- Utility service alerts.
Example types of different data/information which may be stored locally at Smart Meter Reader 1 102, 1 104:
- Image data from image sensor / camera;
- Analog and digital data from I/O sensors;
- Permanent and temporary training data / weights for neural networks;
- Measured results and timestamps from optical meter reading;
- Historical data from image sensor, meter reading and sensor inputs;
- System and communication events and alarms;
- Diagnostic data;
- User input and actions;
- Payment transaction data;
- Utility account data; and
- Utility alerts data.
Example types of different data/information which may be transmitted by Smart Meter Reader 1 102, 1 104 to another device or server (such as the OAMR server 1 106):
- Optical meter reading data with time stamp and network/meter identification data;
- Optical image of the meter readout in compressed format, type jpg, gif or similar;
- Neural network status, configuration and trained values / weights;
- Digital filter settings and Image classification algorithm accuracy data;
- Stored historical meter data;
- Diagnostic data;
- Software files and software updates over the network;
- User input and actions;
- Payment transaction data;
- Account status data; and
- Utility service alerts data.
Example types of different data/information which may be measured, determined, and/or collected by the OAMR Server 1 106: - Optical meter readout image;
- Meter value determined from optical image;
- Time stamp from real time clock;
- Digital inputs from switches, actuators and sensors;
- Analog inputs from sensors;
- Events and alarms from sensors and system;
- Meter node diagnostic data;
- Consumption profile of the meter based on time and optional input data like climate;
- Statistical data of meter images, meter values, sensor inputs and events/alarms;
- Diagnostic data;
- User inputs and actions;
- Payment transaction data;
- Account status data; and
- Utility service alerts data.
Example types of different data/information which may be stored or accessed by the OAMR server 1 106:
- Local network meter node table with node status information and network typography;
- Meter node data and event log;
- Meter node image history table;
- Meter node diagnostic data;
- Meter node software image;
- Meter node PLC program image;
- Mobile network connection data;
- Communication security and encryption data and keys;
- Local programmable application software routines / PLC program routines;
- Communication data buffers and temporary storage;
- Payment transaction data;
- Account status data; and
- Utility service alerts data.
Example types of different data/information which may be transmitted by the OAMR Server 1 106 to another device or server (such as a Smart Meter Reader 1 102, 1 104):
- Periodic or sporadic measured meter data with timestamp and network id information;
- Network discovery and test commands / information;
- Meter image in compressed data format (jpg, gif etc.) ;
- Meter node status commands and responses;
- Meter node diagnostic data;
- Meter node software image;
- Meter node application software image;
- Status events and alarms;
- Diagnostic data;
- User manual inputs and commands;
- Payment transaction data;
- Account status data; and
- Utility service alerts data.
In some cases, at least a portion of the various types of functions, operations, actions, and/or other features provided by the OAMR-SMR Polling, Analysis, and Response Procedures is implemented at one or more client systems(s) (such as the client computer system 130 in Figure 1 ), at one or more OAMR server 1 106, and/or combinations thereof.
In at least one example, the OAMR-SMR Polling, Analysis, and Response Procedures may be operable to perform and/or implement various types of functions, operations, actions, and/or other features such as one or more of those described and/or referenced herein.
In at least one example, the OAMR-SMR Polling, Analysis, and Response Procedures may be operable to utilize and/or generate various different types of data and/or other types of information when performing specific tasks and/or operations. This may include, for example, input data/information and/or output data/information. For example, the OAMR-SMR Polling, Analysis, and Response Procedures may be operable to access, process, and/or otherwise utilize information from one or more different types of sources, such as, for example, one or more local and/or remote memories, devices and/or systems. Additionally, the OAMR-SMR Polling, Analysis, and Response Procedures may be operable to generate one or more different types of output data/information, which, for example, may be stored in memory of one or more local and/or remote devices and/or systems. Examples of different types of input data/information and/or output data/information which may be accessed and/or utilized by the OAMR-SMR Polling, Analysis, and Response Procedures may include, but are not limited to, one or more of those described and/or referenced herein.
In some cases, a given instance of the OAMR-SMR Polling, Analysis, and Response Procedures may access and/or utilize information from one or more associated databases. At least a portion of the database information may be accessed via communication with one or more local and/or remote memory devices. Examples of different types of data which may be accessed by the OAMR-SMR Polling, Analysis, and Response Procedures may include, but are not limited to, one or more of those described and/or referenced herein.
Multiple instances or threads of the OAMR-SMR Polling, Analysis, and Response Procedures may be concurrently implemented and/or initiated via the use of one or more processors and/or other combinations of hardware and/or hardware and software. For example, various aspects, features, and/or functionalities of the OAMR-SMR Polling, Analysis, and Response Procedures may be performed, implemented and/or initiated by one or more of the various systems, components, systems, devices, procedures, processes, etc., described and/or referenced herein.
In some cases, one or more different threads or instances of the OAMR-SMR Polling, Analysis, and Response Procedure(s) may advantageously be initiated in response to detection of one or more conditions or events satisfying one or more different types of minimum threshold criteria for triggering initiation of at least one instance of the OAMR-SMR Polling, Analysis, and Response Procedures. Various examples of conditions or events which may trigger initiation and/or implementation of one or more different threads or instances of the OAMR-SMR Polling, Analysis, and Response Procedure(s) may include, but are not limited to, one or more of those described and/or referenced herein.
One or more different threads or instances of the OAMR-SMR Polling, Analysis, and Response Procedures may optionally be initiated and/or implemented manually, automatically, statically, dynamically, concurrently, and/or combinations thereof. Additionally, different instances and/or embodiments of the OAMR-SMR Polling, Analysis, and Response Procedure(s) may be initiated at one or more different time intervals (e.g., during a specific time interval, at regular periodic intervals, at irregular periodic intervals, upon demand, etc.). Initial configuration of a given instance of the OAMR-SMR Polling, Analysis, and
Response Procedures may advantageously be performed using one or more different types of initialization parameters. In some cases, at least a portion of the initialization parameters may be accessed via communication with one or more local and/or remote memory devices. In some cases, at least a portion of the initialization parameters provided to an instance of the OAMR-SMR Polling, Analysis, and Response Procedures may correspond to and/or may be derived from the input data/information.
OAMR System with Load Prediction and Forward Load Adjustment
Another exemplary embodiment of an OAMR system using OAMR devices according to the present invention involves Automatic Meter Reading with Load Prediction and Forward Load Adjustment (AM PA).
In this case, an OAMR system is configured so as to use meter data and other relevant data to measure, store, train and predict consumption using a neural network. The predicted and measured values are used to control the load at local-, cluster- and grid-level of a utility service distribution network. In such a system, a very accurate prediction of consumption may be made based on the predictions made at one or more meter nodes in the utility service distribution network. Thereby, utility consumption may be controlled by using the predicted data, adjusting set points, starting and stopping production and consumption resources locally and at cluster and grid levels of the network.
At least one meter in the utility grid is provided with an OAMR device having AMPA functionality attached to it (either through a physical SMR unit or through a smart OAMR- enabled meter that has a built-in software or software/hardware with AMPA functionality), which implements a neural network to carry out the consumption prediction.
The AMPA functionality measures the meter consumption continuously and, additionally stores data values such as time, day of the week, month, indoor and outdoor temperature, pressure and other values that are of importance for the consumption prediction. At certain preset intervals the AMPA functionality trains the neural network with the collected data.
The OAMR device having AMPA functionality has a trained consumption profile based on input data such as time, meter data, outdoor and indoor temperature, climate, alarms and other event variables that are of interest for a successful prediction and training of the neural network of the AMPA functionality. Since each meter and its neural network algorithm have access to one or more pieces of relevant data, the neural network may learn the specific consumption and error patterns for the local meter node and thereby giving an exact local prediction. Predictions at the cluster and grid levels are done by adding together the local predictions made by individual meters, and thereby getting very exact local, cluster and grid level predictions based on actual values and predictions of local consumption patterns.
One of the advantages of this bottom-up approach in which the consumption prediction at the cluster and grid levels is obtained as the sum of the consumption prediction at a plurality of individual meters is its accuracy. Since different users have different consumption profiles, predicting consumption at the meter level and the aggregating those predictions to obtain expected consumption at the cluster or grid level is more accurate than predicting the consumption directly at the cluster or grid level based only on the sum of the consumption data from the meters.
The prediction data may be used for feed forward control, so that if the OAMR system predicts an overload in a certain area of the utility service distribution network based on the input data collected individually from several OAMR devices, actions may be taken to prevent said overload by forwarding set-points or commands to turn on or off or alter the state of connected domestic appliances or industrial machinery.
The OAMR system may also predict errors, alerts and faults in the utility service distribution network based on trained data. Furthermore, load predictions and simulations may then also be based on the data collected from a selection of meters (each provided with an OAMR device) at any time, rather than on the data from all connected meters.
OAMR System with Utility Pre-Payment Services(s) and Utility Social Alerts
A further exemplary embodiment of an OAMR system using OAMR devices according to the present invention relates to utility pre-payment service(s), in which an OAMR system is configured to provide local monitoring and control of utility service supply and pre-payment of said supply.
In areas or countries in which prepayment of the utility service supply is preferred, an OAMR system may advantageously comprise a plurality of OAMR devices to read and monitor the consumption of the meters to which are coupled. Each of said utility meters comprises a smart utility switch to through a connected relay or valve the supply of the utility. Additionally, the OAMR system includes OAMR server system(s) configured as pre-payment gateway(s) and that include the functionality of generating utility social alerts. The utility service pre-payment gateway(s) and the smart utility switches, in combination with social media alerts, provide the OAMR system with an intelligent control of prepaid utility services with automatic on /off control and social media alerts for notification of events like low utility credit and switch off warnings. The utility service supply can be remotely controlled by overlaying systems or cloud resources to turn on and off the supply. The pre-payment gateway(s) control the refill and account depletion of the users' utility account(s) according to a preset price table. When credit is added to a utility account the smart utility switch of the meter associated with said utility account opens the supply of the utility and the consumption is read and measured by the OAMR device. The supply of the utility service will continue uninterrupted as long as there is prepaid credit available in the user utility account.
The OAMR system allows utility service payments to be monitored by social alerts telling the user and Public Services connected to the OAMR system, such as Social Security and Health Services, the status of the utility supply and possible disconnection of the service. If the utility account of a given user is near depletion or the OAMR system is to disconnect the utility service for said user, alerts are generated that notifies the user of its account status. In cases in which the user's utility service is being monitored by Public Services, alerts can be generated to notify the utility supply status of said user.
One pre-payment gateway can be connected to many OAMR devices and smart utility switches.
The pre-payment gateway(s) may be connected through mobile internet to overlaying systems and cloud resources allowing utility suppliers, Social Security and Health Services to monitor and control the supply. This makes it possible to provide a very fast response to vulnerable users and prevent utility service supply disconnection or utility account depletion.
Moreover, an OAMR system featuring utility pre-payment service(s) makes it possible for utility suppliers to provide the utility service supply in a safe and simple manner, while at the same time payment for the supply is secured.. Through the connected overlaying systems and cloud resources, mobile, web and internet banking payments can be offered for the prepayment of the utility service. Pre-payment of utility services can also be done locally at the pre- payment gateway(s) by credit card or prepaid credits, or by recurrent billing of bank accounts and credit cards.
The OAMR devices with this new functionality may be connected in a local network and the meter data may be accessed for presentation and statistical purposes by top-level connected systems on the smart grid / internet and cloud resources.
The meters provided with OAMR devices may work as individual meters or be connected in meter-clusters controlled by the OAMR server system(s). Meter-clusters may also be connected together to form a network of meter clusters. The OAMR server system(s) controls the local meter network and the smart utility switches, collecting, storing and sending data and alerts onto the smart grid, top-layer systems and cloud resources. It also may communicate with local smart energy appliances for enhanced functionality. The OAMR server system(s) may additional use a preset predictive pattern to take decisions like forward load adjustments based on actual and predicted consumption.
Generally, the different OAMR techniques described herein may be implemented in hardware and/or hardware/software. For example, they may be implemented in an operating system kernel, in a separate user process, in a library package bound into network applications, on a specially constructed machine, or on a network interface card. In some cases, various aspects described herein may be implemented in software such as an operating system or in an application running on an operating system.
Hardware and/or software/hardware hybrid embodiments of the OAMR techniques described herein may be implemented on a general-purpose programmable machine selectively activated or reconfigured by a computer program stored in memory. Such programmable machine may include, for example, mobile or handheld computing systems, PDA, smart phones, notebook computers, tablets, netbooks, desktop computing systems, server systems, cloud computing resources, network devices, etc.
The embodiments illustrated above have been described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized and that structural, logical, software, electrical and other changes may be made without departing from the scope of the invention. Accordingly, those skilled in the art will recognize that the invention may be practiced with various modifications and alterations. Particular features of the invention that may have been described with reference to one or more particular embodiments or figures that form a part of the present disclosure, and in which have been shown, by way of illustration, specific embodiments of the invention. It should be understood, however, that such features are not limited to usage in said particular embodiments or figures with reference to which they have been described.
Devices that have been described as being in communication with each other need not be in continuous communication with each other, unless expressly specified otherwise. In addition, devices that have been described as being in communication with each other may communicate directly or indirectly through one or more intermediaries.
A description of an embodiment with several components in communication with each other does not imply that all such components are required. To the contrary, a variety of optional components have been described to illustrate the wide variety of possible embodiments of the invention.
Further, although process steps, method steps, algorithms or the like may have been described in a sequential order, such processes, methods and algorithms may be configured to work in alternate orders. In other words, any sequence or order of steps that may have been described in this patent application does not, in and of itself, indicate a requirement that the steps be performed in that order. The steps of described processes may be performed in any order practical. Further, some steps may be performed simultaneously despite having been described or implied as occurring non-simultaneously (e.g., because one step have been described after the other step). Moreover, the illustration of a process by its depiction in a drawing does not imply that the illustrated process is exclusive of other variations and modifications thereto, does not imply that the illustrated process or any of its steps are necessary to the invention, and does not imply that the illustrated process is preferred.
When a single device or article have been described, it will be readily apparent that more than one device/article (whether or not they cooperate) may be used in place of a single device/article. Similarly, where more than one device or article have been described (whether or not they cooperate), it will be readily apparent that a single device/article may be used in place of the more than one device or article. The functionality and/or the features of a device may be alternatively embodied by one or more other devices that have not been explicitly described as having such functionality/features. Thus, other embodiments of the invention need not include the device itself.
Techniques and mechanisms described or referenced herein have been sometimes described in singular form for clarity. However, it should be noted that particular embodiments may include multiple iterations of a technique or multiple instantiations of a mechanism unless noted otherwise.
Although the present invention has been described with reference to specific exemplary embodiments, including presently preferred modes of carrying out the invention, it is evident to those skilled in the art will that various modifications, permutations and changes, including substitution of specific elements and/or functionalities by others technically equivalent, may be made to these embodiments without departing from the scope of the invention as set forth in the appended claims.

Claims

1 . Method (800, 1000) for automatically reading a value on the display of a utility meter, wherein said display includes one or more digits, characterized in that the method comprises the steps of:
a) capturing (1006, 1022) an image of the display by means of an image sensor (192);
b) if the type of utility meter has to be detected (1004), detecting (1008) the type of utility meter from the image by means of an image recognition algorithm;
c) segmenting the image into as many single-digit images as there are digits on the display of a utility meter of the detected type;
d) for each digit on the display of the utility meter of the detected type:
- setting up a pattern recognition algorithm with configuration parameters specific to a digit of the display of the utility meter of the detected type;
- determining the value of said digit from its corresponding single-digit image by means of the pattern recognition algorithm; and
e) obtaining the meter readout value from the combination of the individual values of the digits.
2. The method according to claim 1 , wherein after step e) the method further comprises the step of:
f) storing (1032) the meter readout value in a first memory unit.
3. The method according to claim 2, wherein between step e) and step f) the method further comprises the steps of:
- comparing the meter readout value with the most-recent meter readout value stored in the first memory unit; and
- if the meter readout value is smaller than said most-recent utility readout value, discarding the meter readout value and repeating steps a) through e).
4. The method according to any of claims 1 to 3, wherein step d) comprises the additional steps of:
- verifying (1026) the accuracy of the value of said digit; and
- if said accuracy is larger than or equal to a predetermined confidence threshold (1028), storing the value of said digit and its corresponding single-digit image in a second memory unit; - else, discarding the image and repeating steps a) through d).
5. The method according to claim 4 when depending from claim 2, wherein the first memory unit and the second memory unit are different portions of a same memory module (193).
6. The method according to claim 4 or 5, wherein the step of verifying (1028) the accuracy of the value of said digit comprises a sub step of counting the number of consecutive times that said accuracy is smaller than the predetermined confidence threshold; and wherein, if the count for said digit exceeds a predetermined maximum count, before repeating steps a) through d), the method comprises the further step of retraining the pattern recognition algorithm for said digit to adjust its configuration parameters.
7. The method according to claim 6, wherein said step of retraining the pattern recognition algorithm uses values of said digit and their corresponding single-digit images stored in the second memory unit.
8. The method according to any of claims 1 to 7, wherein between step b) and step c), the method additionally comprises the steps of:
- verifying (1012) the accuracy of the type of utility meter detected; and
- if said accuracy is smaller than a second predetermined confidence threshold (1014), discarding the image and repeating steps a) and b).
9. The method according to any of the previous claims, wherein steps a) through e) are repeated at regular or irregular periodic intervals.
10. The method according to any of the previous claims, wherein steps a) through e) are repeated when a triggering event is detected.
1 1 . The method according to any of the previous claims, wherein after step e) the method comprises a step of adding a time stamp to the meter readout value.
12. The method according to any of the previous claims, wherein between step b) and step c) the method comprises a step of digital filtering the image.
13. The method according to claim 12, wherein the step of digital filtering involves applying a Radon transformation on the image.
14. The method according to any of the previous claims, wherein the pattern recognition algorithm is a neural network.
15. The method according to claim 14, wherein the neural network is a feed-forward back- propagation neural network comprising an input layer having at least 16 neurons, at least one hidden layer having at least 32 neurons and an output layer having 10 neurons.
16. The method according to any of the previous claims, wherein the image recognition algorithm is based on a second neural network.
17. The method according to claim 3, wherein every time that a predetermined number of meter readout values are stored in the first memory unit, the method comprises the steps of:
- detecting again the type of utility meter from a newly captured image by means of the image recognition algorithm; and
- retraining the pattern recognition algorithm for all digits of the display of the utility meter of the detected type to adjust their configuration parameters.
18. The method according to claim 8, wherein the method comprises the further step of retraining the image recognition algorithm with a predefined periodicity to adjust its configuration parameters; and wherein said periodicity is related to the number of times that the type of utility meter has been detected with an accuracy larger than or equal to the second predetermined confidence threshold.
19. A retrofittable meter reader (160, 199) for automatic reading of a utility meter having a display including one or more digits, wherein the retrofittable meter reader comprises a digital image sensor (192) adapted to face the display of the utility meter when the retrofittable meter reader is mounted on the utility meter and to capture images of said display, characterized in that the retrofittable meter reader further comprises:
- a meter type detector operatively connected to the digital image sensor, the meter detector being configured to detect the type of utility meter from the images captured by the digital image sensor;
- an image segmentation module operatively connected to the digital image sensor and to the meter type detector, the image segmentation module being configured to segment each image captured by the digital image sensor into as many single- digit images as there are digits on the display of a utility meter of the type detected by the meter type detector;
- a digit detector operatively connected to the image segmentation module and to the meter type detector, the digit detector being configured to detect the value of each digit from its corresponding single-digit image;
- a digit combination unit operatively connected to the digit detector and to the meter type detector, the combination unit being configured to obtain the meter readout value from the detected values of the digits; and
- a communications interface (197) adapted to transmit the meter readout values to a remote device for further processing and/or display.
20. The retrofittable meter reader according to claim 19, wherein the digit detector comprises a pattern recognition algorithm based on a first neural network.
21 . The retrofittable meter reader according to claim 20, wherein the configuration parameters of the first neural network are different for at least some digits.
22. The retrofittable meter reader according to any of claims 19 to 21 , wherein the meter type detector comprises an image recognition algorithm based on a second neural network.
23. The retrofittable meter reader according to any of claims 19 to 22, further comprising a memory module (193) operatively connected to the meter type detector, the digit detector and to the digit combination unit.
24. The retrofittable meter reader according to any of claims 19 to 23, further comprising:
- an infrared light source adapted to shine light on the display of the utility meter when the retrofittable meter reader is mounted on the utility meter; and
- an infrared filter arranged on the digital image sensor.
25. The retrofittable meter reader according to any of claims 19 to 24, further comprising a wide-angle objective lens (181 ) coupled to the digital image sensor.
26. The retrofittable meter reader according to any of claims 19 to 25, wherein the communications interface (197) provides at least one wireless connectivity standard, and wherein preferably the at least one wireless connectivity standard is the IEEE 802.15.4 standard.
27. The retrofittable meter reader according to any of claims 19 to 26, further comprising a microcontroller (191 ), and wherein the meter type detector, the image segmentation module, the digit detector, and the digit combination unit are included in said microcontroller.
28. The retrofittable meter reader according to any of claims 19 to 27, further comprising at least one of a serial connectivity unit (198) and a cellular connectivity unit (182).
29. The retrofittable meter reader according to any of claims 19 to 28, further comprising a rechargeable battery, wherein preferably the rechargeable battery is adapted to be recharged by means of harvesting energy locally.
30. The retrofittable meter reader according to any of claims 19 to 29, further comprising a programmable timer to force the retrofittable meter reader to read the utility meter at periodic intervals.
31 . The retrofittable meter reader according to any of claims 19 to 30, further comprising an activation unit adapted to detect a triggering event and to force the retrofittable meter reader to read the utility meter in response to said triggering event.
32. A self-adjusting optical automatic meter reading system (100) comprising:
- a plurality of retrofittable meter readers (160, 199, 1 102, 1 104) according to any of claims 19 to 31 , each reader of said plurality retrofittable meter readers being adapted to be mounted on a utility meter;
- a server system (120, 480, 500) operatively interconnected by means of a network portion (1 10) to each reader of the plurality of retrofittable meter readers; and
wherein the server system is configured to send configuration instructions (32a, 38a) and meter reader polling requests (14a, 18a) selectively to any reader of said plurality of retrofittable meter readers, and to receive the meter readout values (16a, 20a) from said plurality of retrofittable meter readers.
33. A computer program product, implemented on computer-readable non-transitory storage medium, the computer program product configured for, when run on a computer or a processor, executing at least some of steps of the method according to any of claims 1 to 18.
PCT/IB2013/052033 2012-03-15 2013-03-14 Method for automatically reading a utility meter, retrofittable meter reader and automatic meter reading system using the same WO2013136295A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201261611138P 2012-03-15 2012-03-15
US61/611,138 2012-03-15

Publications (1)

Publication Number Publication Date
WO2013136295A1 true WO2013136295A1 (en) 2013-09-19

Family

ID=48428527

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2013/052033 WO2013136295A1 (en) 2012-03-15 2013-03-14 Method for automatically reading a utility meter, retrofittable meter reader and automatic meter reading system using the same

Country Status (1)

Country Link
WO (1) WO2013136295A1 (en)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160109263A1 (en) * 2014-10-16 2016-04-21 Sensus Spectrum, Llc Method and system for initializing a meter reading device
EP3021086A1 (en) * 2014-11-13 2016-05-18 RWE Effizienz GmbH Method and device for the calibration of an optical sensor on a mechanical consumption quantity counter
WO2017075082A1 (en) * 2015-10-26 2017-05-04 Hach Company Optical character recognition (ocr) and coded data for legacy instrument data transfer
WO2017212485A1 (en) * 2016-06-08 2017-12-14 B D Innovations Ltd. A method of data collection
US9965841B2 (en) 2016-02-29 2018-05-08 Schneider Electric USA, Inc. Monitoring system based on image analysis of photos
US9965564B2 (en) 2011-07-26 2018-05-08 Schneider Electric It Corporation Apparatus and method of displaying hardware status using augmented reality
EP3363096A4 (en) * 2014-08-21 2019-08-07 Wattcost Pty Ltd. Processing of resource consumption data via monitoring physically observable behaviors of an existing resource meter and provision of functionalities based on processing of resource consumption data
CN110287967A (en) * 2019-06-28 2019-09-27 哈尔滨工业大学 A kind of number and stem-winder digit recognition method based on image
CN110299993A (en) * 2019-06-13 2019-10-01 南京邮电大学 A kind of telesecurity meter register method based on improvement IBOOE algorithm
CN111666930A (en) * 2019-03-07 2020-09-15 深圳海青智盈科技有限公司 Meter reading method, device, system and storage medium
WO2020221558A1 (en) * 2019-05-02 2020-11-05 Westnetz Gmbh Meter adapter
DE102019121074A1 (en) * 2019-08-05 2021-02-11 Technisat Digital Gmbh Sensor for home automation, an arrangement with the same and a method for detecting leakage by means of the arrangement
CN112712114A (en) * 2020-12-29 2021-04-27 重庆川仪自动化股份有限公司 Instrument analysis method, system, equipment and medium based on TextCNN-BilSTM
CN113268030A (en) * 2021-06-01 2021-08-17 中国华能集团有限公司河北雄安分公司 City comprehensive energy intelligent energy utilization terminal system based on 5G technology
US11176369B2 (en) 2019-12-23 2021-11-16 Ricoh Company, Ltd. Digital monitoring of analog gauges with dynamically configurable thresholds
CN113743397A (en) * 2021-11-08 2021-12-03 深圳市信润富联数字科技有限公司 Data processing method and system for industrial instrument, terminal device and storage medium
CN113837159A (en) * 2021-11-26 2021-12-24 中化学交通建设集团有限公司 Instrument reading identification method and device based on machine vision
GB2597811A (en) * 2020-12-22 2022-02-09 Laiwa Communication Ltd Utility usage determining apparatus, system, method and device
US20220207280A1 (en) * 2020-12-31 2022-06-30 Itron, Inc. Meter text detection and recognition
US11385074B2 (en) * 2020-03-18 2022-07-12 Landis+Gyr Innovations, Inc. Programming electric meter global positioning system coordinates using smart device
JP2023045976A (en) * 2021-09-22 2023-04-03 セイコーソリューションズ株式会社 Information processing device, meter reading system, meter reading method, and information processing program
WO2023096508A1 (en) * 2021-11-26 2023-06-01 SUBIRA, Jessica Automated remote electric meter reading system

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1598770A2 (en) * 2004-05-20 2005-11-23 Microsoft Corporation Low resolution optical character recognition for camera acquired documents
WO2006024854A2 (en) 2004-09-01 2006-03-09 Iskraemeco Ecl Limited Automated meter reader
US7019667B2 (en) 2001-02-09 2006-03-28 Statsignal Systems, Inc. System and method for accurate reading of rotating disk
WO2007067132A1 (en) * 2005-12-09 2007-06-14 Anoto Group Ab A method and a device for obtaining a meter reading of a counter mechanism
US7263450B2 (en) 2001-06-28 2007-08-28 Hunter Robert R Method and apparatus for reading and controlling electric power consumption
EP1909073A1 (en) * 2005-04-25 2008-04-09 Servicios Informaticos Kifer, S.L. Universal reconfigurable system and method for the remote reading of counters or equipment comprising visual indicators
US20080218164A1 (en) * 2007-03-05 2008-09-11 Sensus Metering Systems Automated meter reader
WO2009043065A2 (en) * 2007-09-27 2009-04-02 Alexander Atilla Gulyas Remote monitoring system
US7548223B2 (en) 1997-08-15 2009-06-16 General Electric Company Reduced cost automatic meter reading system and method using locally communicating utility meters
US20110243445A1 (en) * 2010-03-30 2011-10-06 Microsoft Corporation Detecting position of word breaks in a textual line image

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7548223B2 (en) 1997-08-15 2009-06-16 General Electric Company Reduced cost automatic meter reading system and method using locally communicating utility meters
US7019667B2 (en) 2001-02-09 2006-03-28 Statsignal Systems, Inc. System and method for accurate reading of rotating disk
US7263450B2 (en) 2001-06-28 2007-08-28 Hunter Robert R Method and apparatus for reading and controlling electric power consumption
EP1598770A2 (en) * 2004-05-20 2005-11-23 Microsoft Corporation Low resolution optical character recognition for camera acquired documents
WO2006024854A2 (en) 2004-09-01 2006-03-09 Iskraemeco Ecl Limited Automated meter reader
EP1909073A1 (en) * 2005-04-25 2008-04-09 Servicios Informaticos Kifer, S.L. Universal reconfigurable system and method for the remote reading of counters or equipment comprising visual indicators
WO2007067132A1 (en) * 2005-12-09 2007-06-14 Anoto Group Ab A method and a device for obtaining a meter reading of a counter mechanism
US20080218164A1 (en) * 2007-03-05 2008-09-11 Sensus Metering Systems Automated meter reader
WO2009043065A2 (en) * 2007-09-27 2009-04-02 Alexander Atilla Gulyas Remote monitoring system
US20110243445A1 (en) * 2010-03-30 2011-10-06 Microsoft Corporation Detecting position of word breaks in a textual line image

Cited By (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9965564B2 (en) 2011-07-26 2018-05-08 Schneider Electric It Corporation Apparatus and method of displaying hardware status using augmented reality
EP3363096A4 (en) * 2014-08-21 2019-08-07 Wattcost Pty Ltd. Processing of resource consumption data via monitoring physically observable behaviors of an existing resource meter and provision of functionalities based on processing of resource consumption data
US20160109263A1 (en) * 2014-10-16 2016-04-21 Sensus Spectrum, Llc Method and system for initializing a meter reading device
AU2015334035B2 (en) * 2014-10-16 2021-01-28 Sensus Spectrum, Llc Method, apparatus, and system for initializing a meter reading device
US9927257B2 (en) * 2014-10-16 2018-03-27 Sensus Spectrum, Llc Method, apparatus, and system for initializing a meter reading device
EP3021086A1 (en) * 2014-11-13 2016-05-18 RWE Effizienz GmbH Method and device for the calibration of an optical sensor on a mechanical consumption quantity counter
US11093777B2 (en) 2015-10-26 2021-08-17 Hach Company Optical character recognition (OCR) and coded data for legacy instrument data transfer
EP3369035A4 (en) * 2015-10-26 2018-11-14 Hach Company Optical character recognition (ocr) and coded data for legacy instrument data transfer
WO2017075082A1 (en) * 2015-10-26 2017-05-04 Hach Company Optical character recognition (ocr) and coded data for legacy instrument data transfer
US9965841B2 (en) 2016-02-29 2018-05-08 Schneider Electric USA, Inc. Monitoring system based on image analysis of photos
WO2017212485A1 (en) * 2016-06-08 2017-12-14 B D Innovations Ltd. A method of data collection
CN111666930A (en) * 2019-03-07 2020-09-15 深圳海青智盈科技有限公司 Meter reading method, device, system and storage medium
WO2020221558A1 (en) * 2019-05-02 2020-11-05 Westnetz Gmbh Meter adapter
CN110299993A (en) * 2019-06-13 2019-10-01 南京邮电大学 A kind of telesecurity meter register method based on improvement IBOOE algorithm
CN110299993B (en) * 2019-06-13 2021-11-26 南京邮电大学 Remote safe meter reading method based on improved IBOOE algorithm
CN110287967B (en) * 2019-06-28 2022-11-25 哈尔滨工业大学 Image-based digit and mechanical watch digit identification method
CN110287967A (en) * 2019-06-28 2019-09-27 哈尔滨工业大学 A kind of number and stem-winder digit recognition method based on image
DE102019121074A1 (en) * 2019-08-05 2021-02-11 Technisat Digital Gmbh Sensor for home automation, an arrangement with the same and a method for detecting leakage by means of the arrangement
US11176369B2 (en) 2019-12-23 2021-11-16 Ricoh Company, Ltd. Digital monitoring of analog gauges with dynamically configurable thresholds
US11385074B2 (en) * 2020-03-18 2022-07-12 Landis+Gyr Innovations, Inc. Programming electric meter global positioning system coordinates using smart device
WO2022136845A1 (en) * 2020-12-22 2022-06-30 Laiwa Communication Ltd Utility usage determining apparatus, system, method and device
GB2597811A (en) * 2020-12-22 2022-02-09 Laiwa Communication Ltd Utility usage determining apparatus, system, method and device
GB2597811B (en) * 2020-12-22 2022-11-02 Laiwa Communication Ltd Utility usage determining apparatus, system, method and device
CN112712114A (en) * 2020-12-29 2021-04-27 重庆川仪自动化股份有限公司 Instrument analysis method, system, equipment and medium based on TextCNN-BilSTM
US20220207280A1 (en) * 2020-12-31 2022-06-30 Itron, Inc. Meter text detection and recognition
US11663837B2 (en) * 2020-12-31 2023-05-30 Itron, Inc. Meter text detection and recognition
CN113268030A (en) * 2021-06-01 2021-08-17 中国华能集团有限公司河北雄安分公司 City comprehensive energy intelligent energy utilization terminal system based on 5G technology
JP2023045976A (en) * 2021-09-22 2023-04-03 セイコーソリューションズ株式会社 Information processing device, meter reading system, meter reading method, and information processing program
JP7393403B2 (en) 2021-09-22 2023-12-06 セイコーソリューションズ株式会社 Information processing device, meter reading system, meter reading method, and information processing program
CN113743397A (en) * 2021-11-08 2021-12-03 深圳市信润富联数字科技有限公司 Data processing method and system for industrial instrument, terminal device and storage medium
CN113837159A (en) * 2021-11-26 2021-12-24 中化学交通建设集团有限公司 Instrument reading identification method and device based on machine vision
WO2023096508A1 (en) * 2021-11-26 2023-06-01 SUBIRA, Jessica Automated remote electric meter reading system

Similar Documents

Publication Publication Date Title
WO2013136295A1 (en) Method for automatically reading a utility meter, retrofittable meter reader and automatic meter reading system using the same
CN110163611B (en) Identity recognition method, device and related equipment
US11185229B2 (en) Multi-biometric-factor, internet of things (IoT), secured network
Esa et al. RETRACTED: A review disaggregation method in Non-intrusive Appliance Load Monitoring
Savi et al. Short-term energy consumption forecasting at the edge: A federated learning approach
US10305773B2 (en) Device identity augmentation
Hamm et al. Crowd-ML: A privacy-preserving learning framework for a crowd of smart devices
US10481195B2 (en) Distributed IoT based sensor analytics for power line diagnosis
CN107076571B (en) For initializing the method, equipment and system of meter reading device
CN107431876A (en) Apparatus and method for middle device Data Collection
CN101933058A (en) Video sensor and alarm system and method with object and event classification
Flouri et al. Training a SVM-based classifier in distributed sensor networks
US20190266563A1 (en) Blockchain-based supply chain smart recall
Batra et al. Data driven energy efficiency in buildings
US11075926B2 (en) Cyber security framework for internet-connected embedded devices
US20210105293A1 (en) Methods and systems for anomaly detection in a networked control system
US20200402065A1 (en) Federated edge-node authorization system
Lore et al. Detecting data integrity attacks on correlated solar farms using multi-layer data driven algorithm
Han et al. Side-channel-based code-execution monitoring systems: a survey
CN109670313A (en) The method, apparatus and readable storage medium storing program for executing of risk assessment are carried out in system operation
Vivek et al. Wireless fingerprint attendance system using ZigBee technology
Yang et al. Energy-efficient w-layer for behavior-based implicit authentication on mobile devices
US11429972B2 (en) Edge-node touchless authentication architecture
CN107851233A (en) Local analytics at assets
US20220200213A1 (en) Systems, apparatuses, and methods for predicting a state of a card connector

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13722068

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 04/03/2015)

122 Ep: pct application non-entry in european phase

Ref document number: 13722068

Country of ref document: EP

Kind code of ref document: A1