Automated discovery of devices in large utility monitoring systems
First Claim
1. An automated-discovery method of a utility monitoring system including a plurality of devices in communication with a remote central computer system, comprising:
- attempting to read, in a single operation, from a plurality of addresses of a memory in at least one of the devices to ascertain its identity;
responsive to the attempting to read, determining whether a received response is valid;
responsive to the received response being valid and indicating a successful read of the plurality of memory addresses, determining whether any of the plurality of memory addresses includes identification information indicative of an identity of the at least one device;
responsive to the response being invalid, determining whether the invalid response corresponds to an exception;
based on the exception type, determining whether to continue attempting to read from the memory of the at least one device; and
responsive to an address of the plurality of memory addresses including the identification information, storing the identification information in the central computer system.
1 Assignment
0 Petitions
Accused Products
Abstract
An auto-discovery algorithm attempts a scattered-read of register addresses of a device in a utility monitoring system whose identity is unknown to a computer system. If the scattered read is successful, and data from the device includes a device ID code that is matched against a lookup table of devices. If unsuccessful, the algorithm attempts a block-read, and if unsuccessful, iteratively checks each register against the lookup table to determine whether a match exists until either one is found or the device reports an illegal data address exception, whereupon the algorithm stops attempting to read from subsequent addresses. The algorithm analyzes the response from the communications driver of the computer system to determine whether the response is valid, and if not, what type of exception is reported. If a timeout occurs, the algorithm flags the device for a later retry scan, and moves on to attempt to discover the next device.
-
Citations
17 Claims
-
1. An automated-discovery method of a utility monitoring system including a plurality of devices in communication with a remote central computer system, comprising:
-
attempting to read, in a single operation, from a plurality of addresses of a memory in at least one of the devices to ascertain its identity; responsive to the attempting to read, determining whether a received response is valid; responsive to the received response being valid and indicating a successful read of the plurality of memory addresses, determining whether any of the plurality of memory addresses includes identification information indicative of an identity of the at least one device; responsive to the response being invalid, determining whether the invalid response corresponds to an exception; based on the exception type, determining whether to continue attempting to read from the memory of the at least one device; and responsive to an address of the plurality of memory addresses including the identification information, storing the identification information in the central computer system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method of determining identities of a plurality of devices that communicate is with a central computer system in a utility monitoring system, comprising:
-
attempting to scattered read from a plurality of memory addresses of a memory in a first of the plurality of devices; receiving at the central computer system a response; responsive to the scattered read being successful, determining whether any of the plurality of memory addresses includes identification information indicative of an identity of the first device; responsive to the scattered read being unsuccessful, attempting to block read from a block of memory addresses of the memory; responsive to the block read being successful, determining whether the block of memory addresses includes the identification information; responsive to the block read being unsuccessful, reading from each memory address of the memory in seriatim until the identification information is read or until there are no further memory addresses in the memory to be read; determining whether the response is an exception or an error; responsive to the response being a timeout, flagging the first device for a later read attempt; responsive to the flagging, attempting to read from a memory address of a memory in a second of the plurality of devices; and storing the identification information associated with the first device in the central computer system. - View Dependent Claims (14, 15, 16, 17)
-
Specification