U.S. patent application number 10/999775 was filed with the patent office on 2005-05-26 for systems and methods for broadcasting information over an ac power network.
This patent application is currently assigned to ADS Enterprises NZ Ltd.. Invention is credited to Haines, Antony Vincent.
Application Number | 20050110650 10/999775 |
Document ID | / |
Family ID | 34442864 |
Filed Date | 2005-05-26 |
United States Patent
Application |
20050110650 |
Kind Code |
A1 |
Haines, Antony Vincent |
May 26, 2005 |
Systems and methods for broadcasting information over an AC power
network
Abstract
A receiving device and business methods to affect the private
transmission of remote control messages and the synchronization of
date and time to electrical appliances connected to the AC power
grid.
Inventors: |
Haines, Antony Vincent;
(Christchurch, NZ) |
Correspondence
Address: |
BILL R. NAIFEH
12655 NORTH CENTRAL EXPRESSWAY
TENTH FLOOR, SUITE 1014, LB 55
DALLAS
TX
75243
US
|
Assignee: |
ADS Enterprises NZ Ltd.
Auckland
NZ
|
Family ID: |
34442864 |
Appl. No.: |
10/999775 |
Filed: |
November 30, 2004 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10999775 |
Nov 30, 2004 |
|
|
|
10974637 |
Oct 27, 2004 |
|
|
|
Current U.S.
Class: |
340/9.1 ;
340/310.11 |
Current CPC
Class: |
H04B 2203/5458 20130101;
H04B 3/54 20130101; H04B 3/56 20130101 |
Class at
Publication: |
340/825.52 ;
340/310.01 |
International
Class: |
H04Q 001/00 |
Foreign Application Data
Date |
Code |
Application Number |
Nov 26, 2003 |
EP |
03026995.5 |
Claims
What is claimed is:
1. A method of fulfilling a request to remotely control an
appliance receiving power from a power distribution network, the
method comprising: receiving a request to control the appliance;
generating a message receivable by a receiving device coupled to
the power supply of the appliance; injecting the message into a
distribution power network such that the message is received by the
appliance, such that the appliance may act upon the message to
fulfill the request.
2. The method of claim 1 further comprising receiving payment for
fulfilling the request.
3. The method of claim 1 further comprising registering the
appliance to establish a relationship between an identifier of the
appliance and an end user.
4. The method of claim 3 further comprising authenticating the
request.
5. The method of claim 3 further comprising encrypting the message
such that the message is only decipherable by the receiving device
coupled to the appliance with the identifier.
6. The method of claim 1 further comprising establishing an account
with an end user of the appliance.
7. The method of claim 1 further comprising scheduling the request
based on a first-in first-out priority basis.
8. The method of claim 7 further comprising preempting the
scheduling of the request based on predetermined events.
9. The method of claim 1 wherein the receiving comprises receiving
the request via a telephone initiated request.
10. The method of claim 1 wherein the receiving comprises receiving
the request via the internet or a computer initiated request.
11. A method of remotely adjusting a clock embedded in an appliance
receiving power from a power distribution network, the method
comprising: determining a time for the clock; generating a message
containing an indication of time, wherein the message is receivable
by a receiving device coupled to the power supply of the appliance;
injecting the message into a distribution power network such that
the message is received by the appliance, so that the appliance may
adjust the clock in accordance with the message.
12. The method of claim 11 wherein the determining comprises
retrieving the time from an atomic clock source.
13. The method of claim 11 wherein the generating a message further
comprises adjusting the indication of time for delay.
14. The method of claim 12 wherein the delay is selected from the
group consisting of synchronization, insertion, propagation and
processing delays.
15. The method of claim 11 further comprising receiving payment for
generating the message to allow the appliance to adjust the
clock.
16. The method of claim 11 further comprising registering the
appliance to establish a relationship between an identifier of the
appliance and an end user.
Description
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation-in-part of a U.S.
application entitled "System and Method for Transmitting Control
Information Over an AC Power Network," filed on Oct. 27, 2004,
having a preliminary Ser. No. 10/974,637 ('637 Patent Application),
which claims the benefit of the priority date of European patent
application number 03026995.5, filed on Nov. 26, 2003. The
disclosures of both applications are incorporated herein by
reference.
TECHNICAL FIELD
[0002] The invention relates in general to the power industry, and
in particular to sending information to appliances through an AC
power network.
BACKGROUND INFORMATION
[0003] People in a rush to leave home often forget to set
appliances and the environmental controls for their home. For
example, when people are sitting in their car stuck in traffic or
sitting at the airport waiting to leave on a trip, they might ask
questions like: Did I turn the alarm system on? Did I remember to
turn the heating up, down, on or off? Did I ask the refrigerator to
send in the restocking order next week before we return? Did I set
the VCR to record my favorite show? In these situations, what is
needed is a system or method to remotely send control messages to
these appliances.
[0004] Furthermore, many electric appliances, such as clock radios,
VCRs, personal digital recorders, rely on a clock setting. When the
electricity is interrupted, it is often necessary to manually reset
these devices. If there are several appliances, this becomes a
time-consuming and tedious process.
[0005] Currently, there are a few appliances designed to
communicate with home networks. However, these appliances must use
wired or wireless network cards or other interfaces which are
relatively expensive. If wired cards are used, network cabling must
be provided. Furthermore, setting up such home networks is beyond
the technical capability of many home users.
[0006] Typically home networks access the Internet through DSL or
cable modems provided by an Internet access company such as a phone
or cable provider. Some power companies have experimented with
providing Internet access to home computers and networks through a
power network. However, such networks are fraught with problems.
Electricity companies design their power distribution networks to
accommodate large amounts of composite noise generated by almost
all electrical appliances and devices attached to the network. The
design characteristics of network transformers, switches, lines and
other components is therefore such so as to restrict and inhibit
the transmission of analog frequencies back up through the high
voltage feeder circuits providing distribution of electrical energy
through neighborhood transformers. Wherein such analog signaling
frequencies represent a digital data stream attempts have been made
to use Spread Spectrum Devices that would bridge over common
harmonics of the power frequency itself. Such devices are
expensive. Additionally, in an attempt to provide Internet or other
bidirectional communications in a high voltage network unable
generally to complete a return pathway without using an alternate
media or pathway that is not part of the power network.
[0007] What is needed, therefore, is a simple, inexpensive and
secure process to remotely provide information to home appliances
or systems.
SUMMARY
[0008] In response to these and other problems, systems and methods
are disclosed which use a transmitter operated by a power utility
company which can broadcast a signal through the power lines. Also
disclosed are systems and methods which use a signal receiving
device in communication with a power supply unit of an appliance.
The receiving device is capable of receiving signals from a
transmitter that may be part of a high voltage feeder circuit. In
some embodiments, the received signals may be control instructions.
In other embodiments, the signals may represent time or date data
which will allow a controller of a clock in the appliance to
automatically synchronize and adjust its time.
[0009] Using certain aspects of the disclosed embodiments, power
companies may accept requests (via the phone or the Internet) from
end users, then broadcast the appropriate signal to the appropriate
appliance. Power companies can offer this service for a fee or as
an inducement to switch power company providers. Thus, a user could
remotely control or affect an appliance from another location. For
instance, an end-user could make a single free call to their local
power provider, identify themselves in a predetermined manner and
request that commands or data be sent to their appliance. For
example, an end-user at an airport could request that their
thermostat be set to 80 degrees F. while they are away on a summer
vacation. Another user could request that their personal video
recorder record their favorite television show from a remote
location while they are away.
[0010] These and other features, and advantages, will be more
clearly understood from the following detailed description taken in
conjunction with the accompanying drawings. It is important to note
the drawings are not intended to represent the only aspect of the
invention.
BRIEF DESCRIPTION OF THE DRAWINGS
[0011] FIG. 1 is a functional diagram of a system incorporating
certain aspects of the present invention.
[0012] FIG. 2 is a functional block diagram of a receiving device
incorporating certain aspects of the present invention.
[0013] FIG. 3 is an alternative embodiment of receiving device
incorporating certain aspects of the present invention.
[0014] FIG. 4 is an alternative embodiment of receiving device
incorporating certain aspects of the present invention.
[0015] FIG. 5 is another alternative embodiment of receiving device
incorporating certain aspects of the present invention.
[0016] FIG. 6 is flow chart of one embodiment of a method for
validating encrypted control message.
[0017] FIG. 7 is one embodiment of a business method incorporating
certain aspects of the present invention.
[0018] FIG. 8 is a flow chart for one embodiment of a method for
prioritizing requests that may be incorporated into certain aspects
of the present invention.
DETAILED DESCRIPTION
[0019] For the purposes of promoting an understanding of the
principles of the present inventions, reference will now be made to
certain aspects, or examples, illustrated in the drawings and
specific language will be used to describe the same. It will
nevertheless be understood that no limitation of the scope of the
invention is thereby intended. Any alterations and further
modifications in the described embodiments, and any further
applications of the principles of the inventions as described
herein are contemplated as would normally occur to one skilled in
the art to which the invention relates.
[0020] Specific examples of components, signals, messages,
protocols, and arrangements are described below to simplify the
present disclosure. These are, of course, merely examples and are
not intended to limit the invention from that described in the
claims. Well-known elements are presented without detailed
description in order not to obscure the present invention in
unnecessary detail. For the most part, details unnecessary to
obtain a complete understanding of the present invention have been
omitted inasmuch as such details are within the skills of persons
of ordinary skill in the relevant art. Details regarding control
circuitry described herein are omitted, as such control circuits
are within the skills of persons of ordinary skill in the relevant
art.
[0021] Turning now to FIG. 1, there is presented one embodiment of
a system 100 which incorporates certain aspects of the present
invention. In one embodiment, there is a transmitting device 101
which constructs the contents of, and if necessary, synchronizes
the timing for transmission of digital messages. The transmitting
device 101 may be located at a substation or another appropriate
location. It may have numerous processes which are each dedicated
to a specific task including: generating and scheduling signals;
coordinating security; and connecting to an operator, a machine to
machine interface and/or a telephone receptionist. The transmitting
device 101 passes constructed messages to a signal injector 102.
The signal injector 102 constructs a waveform to represent message,
amplifies and injects the signal into a high voltage power grid via
a matching transformer or similar device to match the
characteristics of a high voltage transmission line 104 which is
coupled to an AC power distribution or reticulation network
106.
[0022] The reticulation network 106 may contain: a high voltage
distribution side containing the power distribution components for
a finite geographic area and a finite set of customers; and a
neighborhood AC power distribution system which is interconnected
via the network. The reticulation network 106 may contain lines,
transformers, switches, sub stations and other equipment and
locations aiding in the management and distribution of electricity
to neighborhood level typically of 110 volts phase to neutral at 60
Hz. The distributed electricity is typically reduced to an end use
voltage level (e.g., 110/220 volts) via a pole mounted or
pad-mounted distribution transformer (not shown). Electricity and
the injected signal may be delivered to residential customers
through a service drop line 108 which typically leads from the
distribution pole transformer (not shown) through the customer's
structure to an appliance 110, which may be connected to the power
system in a conventional manner. The system 100, therefore, may be
able to send signals via the signal injector 102 to anywhere within
the physical locations served by the reticulation network 106. As
will be explained in detail below, the signals may then be received
by a receiving device 120 located in the appliance 110.
[0023] The appliance 110 may be any electrical or electronic device
typically used in the home or office. The appliance has a power
supply 111. The power supply 111 supplies either an AC or DC
current 112 to the appliance 110 in a conventional manner. In some
embodiments, there is the receiving device 120 either embedded in,
coupled to, or in communication with the power supply 111 which is
adapted to detect and receive the signal injected from the signal
injector 102.
[0024] Other circuits and components, such as optical isolation and
line input anti-noise filtering and circuit fabrication using, for
instance, non-silicon based components and high voltage ceramic
wafer circuit boards adapted to withstand the supply voltage may be
incorporated into the power supply 111, but are not shown for
purposes of clarity. However, such circuits and components for
isolation and protection of appliance receiving device and power
supply are considered to be within the general knowledge of those
skilled in the art.
[0025] In certain embodiments, the receiving device 120 demodulates
data and screens contained in the injected signal and may pass a
digital sequence to a processor in the appliance. For instance, if
the signal contains serial time or date data, the digital sequence
will be sent via pathway 115 to a driving clock or embedded time
display controller. In other aspects, the signal may contain
control instructions which will be sent via pathway 116 to an
embedded logic appliance controller 156. Thus, the receiving device
120 can function as agent on behalf of end-user to forward remote
control instruction to the logic contained in the appliance
controller 156 as may be implemented by the manufacturer.
[0026] In some embodiments, the injected signal may be a Date/Time
signal. Such signals may include a synchronized date and time
message synchronizing a stable clock source (such as an atomic
clock source) where the transmitting device 101 formats and
schedules the transmissions so that the receiving device 120 upon
receiving the last bit of such time string has received implicitly
a sub-second reference for synchronization of time pulse contained
within the time message received.
[0027] The transmitting device 101 may synchronize its time from an
atomic clock source and may calculate the time difference between
the source of atomic clock and transmitting device. The
transmitting device 101 may then reserve a future slice of the
injector to transmit a time message and then constructs the actual
message to include a time string for that time and then based on
the bits contained therein to modify the start time such that for
example the trailing edge of the last bit of the indicated time
occurs a finite number of milliseconds after receipt of the last
bit of the message. This design allows the system to be dynamic of
its date time signaling rate.
[0028] In other aspects, messages received by the transmitting
device 101 may be end-user requests to remotely control the
affected appliance. For example, an end-user might remember that he
left the coffee maker on. So, an example request would be to simply
"turn off" the appliance. The transmitting device 101 would take
this request and construct a "control instruction" or "control
message" which will be broadcast via the reticulation network 106
to the specific appliance. An end-user may initiate the request by
a variety of techniques, including for example: by a telephone
call, a computer program interface, or via the Internet. After the
request is received, a call center operator or program may add the
request as a job to a queue of messages to be sent.
[0029] In certain embodiments, the messages sent via the injector
102 are sent at low speeds or frequencies (e.g., below 700 hz). For
instance, the messages may be sent at 167 hz. Industry standard
protocols (TCP or IP) might not work at such low frequencies.
Consequently, in one embodiment of this invention, new waveform
shapes are used to describe a logic 0 and a logic 1. Such measures
are desirable to increase the efficiency of the transmission. As
explained more fully in the '637 patent application, an isochronous
or variable mark to space or logic 1 to logic 0 ratio is designed
to minimize insertion delay and for example a binary coded decimal
or BCD format may be used such that it would be suitable for
directly connecting to a new function of the 7 segment controller
of a clock or other appliance displaying time. Transmission of
remote control instructions may also be interleaved with the date
and time messages.
[0030] One embodiment of the receiving device 120 is illustrated in
FIG. 2. In this embodiment signals are received which synchronize
time and date and time-zone data with a clock controller, a time
display controller 155, or another processor located in the
attached appliance 110.
[0031] As illustrated, the receiving device 120 receives a low
voltage AC signal via the power supply 111 (FIG. 1). For purposes
of this application, the low voltage AC comprises the primary
frequency of the AC Power grid, for example 60 Hz, and all
interferences and harmonics thereof. The low voltage AC signal also
includes the signal multiplexed together by the signal injector 102
which includes separate low frequency (e.g. 167 Hz) and few
harmonics thereof for example three. The signal, however, may also
have a reduced amplitude (e.g., 20 VRMS, or even 4.7 VRMS).
[0032] A date or time string within the low voltage AC signal may
be referenced or located by introducing a pulse of a distinct
frequency or "preamble" which acts as a signal that a data string
is following. For example, the presence of at least one and one
half cycles of the third and fifth harmonic of signaling frequency
may constitute a preamble signal to indicate that a fixed length
date or time message follows. Messages with any other preamble may
be ignored or routed as described below.
[0033] Turning back to FIG. 2, the low voltage AC signal 109 may be
passed to a line impulse anti-noise filter 221 which removes power
distribution frequency 60 Hz and voltage spikes and harmonics and
energies thereof and frequencies above a predetermined harmonic,
such as the fifth harmonic of signaling frequency or other
unrelated frequencies (e.g., anything above 2000 Hz). The filtered
signal is then passed to a signal demodulation unit 223. In certain
embodiments, the signal demodulation unit 223 comprises a frequency
detection unit 222 and a logic detection unit 224. The frequency
detection unit 222 processes the filtered signal and outputs
specific frequencies which may be being harmonics of signaling
frequency or related to transmission. The signal may then be sent
to the signal logic detection unit 224 which detects relationships
between frequencies represented as logic bits to identify the
preamble to a date/time data string. Upon detecting the preamble
condition, the signal logic detection unit 224 may then read the
data string in the signal and output a date or time string.
[0034] Signal out 250 may include a timing pulse corresponding to
detection of each logic bit as well as the logic bit detected. The
date and time stamp as a specific string of data bits and the
timing contained from the signal logic detection unit 224 may then
be passed to an optical isolation unit 228 whereafter it may be
reformatted according to an appliance input signal 252 which may
comprise the device logic, timing, and reference voltages. The
receiving device 120 may use the device logic, timing and reference
voltages to adjust its own output signal 250 so as to be at a
voltage or in a form that is compatible with the clock controller
of the appliance 110.
[0035] For example, in one embodiment where the receiving device
120 is directly connected to a clock controller then the rising
edge of a logic bit will coincide with a timing pulse and allow
clock controller to latch valid data bit on serial data out 250
based on for example the voltage detected on the timing pulse
output with each data bit and therefore not requiring extensive
line interface circuitry or additional voltage levels to be used in
clock logic. Thus, the output signal 250 may be directly connected
to, for example, an embedded 7 segment display logic chip in a
clock controller.
[0036] Turning now to FIG. 3, there is illustrated an alternative
embodiment of a receiving device 120. In this alternative
embodiment, the receiving device 120 may be a relatively simple
analog signal demodulation unit 300. The line impulse anti-noise
filter 221 receives the low voltage AC signal 109. The line impulse
anti-noise filter 221 removes the power distribution frequency 60
Hz and voltage spikes and harmonics and energies and frequencies as
previously discussed. The filtered signal may then passed through
multiple paths simultaneously to a series of notch filters
310a-310c. Each notch filter 310a-310c is set to one and only one
specific frequency wherein each frequency represents a harmonic of
a specific signaling frequency in the time/date signal. Thus, only
the time/date data signal passes through the notch filters.
[0037] The time/date signals are then sent to a digitization logic
unit 314, which digitizes each signal according to the phase and
amplitude of said frequency by discrete digitization logic. The
digital signals are then sent to digital logic or PAL device 318
which outputs a data output signal 350 comprised of a logic `1` ONE
or a logic `0` ZERO based on fixed relationships between each
frequency and the phase. A timing pulse 319 may also be output in
relation to the onset of each bit detected in accordance with
signal, timing, and reference voltage in the appliance input signal
252.
[0038] The embodiment of a demodulation device 300 as illustrated
in FIG. 3 uses analog techniques to demodulate and identify the
time/date signals. However, in alternative embodiments, digital
techniques may also be employed. As will be described in detail
later, FIG. 5 illustrates one possible digital implementation of
receiving device wherein all the functions of the frequency
detection units and signal logic detection units could be performed
digitally using software and/or an analog to digital converter or a
DSP device and Information retrieval Unit 527. Although the
embodiment in FIG. 5 is discussed in reference to control messages,
one skilled in the art would also recognize that a similar
embodiment could also produce date/time output signals.
[0039] A second embodiment of a receiving device will now be
described. In this second embodiment receiving device 120 (FIG. 1)
may receive remote control instructions for the appliance 110 (FIG.
1). For brevity and clarity, a description of those parts which are
identical or similar to those described in connection with previous
embodiments will not be repeated here. Reference should be made to
the foregoing paragraphs to arrive at a complete understanding of
this second embodiment.
[0040] Turning now to FIG. 4, there is illustrated a functional
block diagram of an alternative receiving device 400. The receiving
device 400 receives a low voltage AC signal 109 from the power
supply 111 (FIG. 1). In some embodiments, a line impulse anti-noise
filter 221 may be used to filter the AC signal 109 as previously
discussed. In certain embodiments, a ceramic wafer or non silicon
based fabrication may also be used in combination with or apart
from the filter 221 in the input stages to protect the receiving
device from potentials and spikes of the AC signal 109. Such
fabrication may be used to protect attached digital devices and
power supply and give a floating ground reference potential to
protect the components of receiving device or appliance from damage
by the reticulation network 106 (FIG. 1).
[0041] The filtered power signal is then demodulated by a
demodulator unit 223. In this embodiment, the demodulator unit 223
comprises a frequency detector 222, a signal logic detector 224,
and a microprocessor controller 426. The frequency detection unit
222 process the filtered signal and outputs specific frequencies.
These frequencies are then sent to a signal logic detection unit
224 which detects relationships between frequencies represented as
logic bits to determine a preamble condition which identifies a
following control instruction data string. Upon detecting the
preamble condition, the signal logic detection unit 224 may then
read the data string in the signal and output a data string to the
microprocessor controller 426. The data output of signal logic
detector 224 in this embodiment may also include the type of the
message received (e.g., time/date or control instruction). The
output signal is then passed to the microprocessor controller 426
and an information retrieval unit 427. In certain embodiments, the
information retrieval unit applies processes to identify itself
and/or its attached appliance as the intended recipient of the
remote control message. Once it is confirmed that the control
message is intended for the appliance, a validated message is
passed to the optical isolation unit 228 where it may be
subsequently reformatted according to the device logic timing and
reference voltages 525 as provided by appliance. The receiving
device 400 may use the device logic, timing and reference voltages
to adjust its own output signal 450 so as to be at a voltage or in
a form that is compatible with a appliance controller of the
appliance 110.
[0042] Turning now to FIG. 5, there is another alternative
embodiment for a receiving device 500. As previously discussed, the
low voltage AC input 109 is input to a line impulse anti-noise
filter for the purpose of removing noise and power frequencies. The
filtered signal is then passed to an optical isolation unit 510
which then sends the signal to a device 521. In some embodiments,
the device 521 may be an analog-to-digital (A/D) converter. In
other embodiments, the device 521 may be a digital signal processor
(DSP) or a combination of a A/D converter and DSP. In this example
embodiment, the function of the device 521 is initially to provide
signal demodulation which comprises the functions of frequency
detection and signal logic detection.
[0043] In embodiments where the device 521 performs only analog to
digital conversion or where connection to a data bus 522 is
directly from signal logic detection, further processing or routing
of message may occur in an information retrieval unit IRU 527 using
a microprocessor 524, a memory 525 and software 526. Where data in
the received signal is a remote control instruction, a cryptography
unit 528 may be employed to decrypt the message. The cryptography
unit 528 may use a private key, serial number and knowledge of
classification of attached appliance to identify itself as intended
recipient of message and furthermore may validate unaltered
contents of said remote control message and forward the control
messages to the appliance controller via the data bus 522.
[0044] On the other hand, in embodiments where the device 521 has a
DSP unit, the DSP unit may be able to detect logical bits based on
specific frequencies and a preamble for digital transmission that
identifies the data type as date/time. If the message is a
date/time signal, no further processing is required. So, the DSP
can send the date/time signal directly via data bus 522 which can
then be received by the appliance controller (not shown).
[0045] FIG. 6 illustrates one method 600 which may be used in
decrypting, processing and authenticating a remote control
instruction sent to a particular appliance.
[0046] In step 601, a control instruction message is received. In
certain embodiments, the control instruction message has an
unencrypted field indicating the classification of the message
(e.g., a Control-ID field).
[0047] In step 603, the process may determine if the Control-ID
field matches that of the attached appliance. If yes, then in step
604, the information retrieval unit 427 or 527 (FIGS. 4 an 5) may
apply its own local encryption key to attempt decryption of the
message using its local encryption key. In step 605, the
unencrypted message format may be checked. The message may be
decrypted to a format comprising specific ASCII and binary values
in pre-defined positions within the message if the particularly
receiving device is the correct recipient of remote control
instruction. A message digest checksum may included therein and
calculated.
[0048] In step 606, the checksum may be then used to determine the
message is unencrypted correctly and unaltered, if yes, the process
moves to step 607. If not, an invalid format or message digest
value indicates that the control message is `not addressed to me`
and the process flows to step 609. In step 609, a counter may be
incremented to log the event. The information retrieval unit 427
may be reset to wait for another control message.
[0049] In step 607, an encapsulated identification number (e.g., a
product serial number) in the data field of unencrypted remote
control instruction is compared to an identification number (e.g.,
the actual serial number of appliance). If the identification
numbers do not match, the process moves to step 602, where the
event is logged and the information retrieval unit 427 may be reset
to wait for another remote control message. On the other hand, if
there is a match between the identification numbers, the process
proceeds to step 608.
[0050] In step 608, the control instruction message is then sent to
the appliance controller, which is programmed to act upon the
message. In certain embodiments, the message is logged.
[0051] In FIG. 7, there is illustrated one embodiment of a method
of doing business using some of the systems and methods previously
discussed. In step 701, a power utility company might receive an
end-user request to establish an account. The account may entitle
the end-user to register specific appliances which may allow the
end user to send remote control instructions to these appliances.
The account may be offered free as an inducement to use the power
company. In other situations, the end user may be charged on a
monthly, subscription or per use basis. In some embodiments, an
account establishment fee may be charged prior to first use in
order to authorize payment and to set up at least one primary user
and a security identifier, such as a password. In certain
embodiments, there may be other users and passwords assigned, for
instance, by primary user. Each user may have differing levels of
authority to affect the operation of such appliances.
[0052] Once the account has been established, in step 702, the
power company might receive a request from the end-user for a
remote control instruction to be broadcast to a registered
appliance.
[0053] In a third step 703, some verification may take place to
affirm the identity of the end user (e.g., the username and
password would be received). Once the end user has been identified,
in step 704, the process may check permissions based on an internal
specification established with primary user to allow or reject such
request accordingly. Steps 703 and 704 may be part of a finite loop
to accept requests and parameters specified by the primary end-user
or utility company. For example, the primary user may be the only
user in the household with permission to turn off the A/C system.
Other users, however, might have only have permission to remotely
adjust the temperature within a specific range.
[0054] Once the verification and authorization processes have been
completed, the request may be classified as a "job" to be scheduled
and placed in a queue (step 705). In some embodiments, the queue
could work on a First-In-First-Out (FIFO) basis. In Step 706, the
transmitting device 101 may then send the request to the appliance
of interest as previous discussed. If applicable, in Step 707, the
end-user Account may be debited by predetermined amount to pay for
the request or expedited service.
[0055] Turning now to FIG. 8a, there is present a method 800 which
illustrates a priority selection process available to an end-user.
Because of the low frequency of transmission and limited bandwidth
of this system, there may not be capacity within the system to
immediately broadcast the received requests. In fact, in certain
embodiments, depending upon the number of requests, the queue
length may be significant. Thus, in certain embodiments, an
end-user could request an expedited service to jump ahead in the
queue. Certain embodiments could use a "preemptive queuing" method
to offer expedited services.
[0056] In step 802, a request from an end-user arrives at a call
center or other appropriate venue for receiving customer requests.
In embodiments, where preemptive queuing is employed, the end user
may then be asked to select how the request should be scheduled
based upon a fee they would be willing to pay. In step 804, an
indication of regarding the type of priority is received from the
customer. For instance, a customer could elect for their request to
be queued based on a standard FIFO priority as illustrated by path
820. The customer may also elect to have the request scheduled
"on-demand" so as to be placed at the front of the queue as
illustrated by path 850, or the customer could elect to have their
request given a pre-emptive queuing priority as illustrated by path
830.
[0057] In a First In First Out priority, a charge may be made to
execute a job within an expected period of time (e.g., 30 minutes
to 2 hours). In contrast, an "immediate" or "on-demand" priority
places the request at the front of the queue. Consequently, there
may be a high cost associated with an on-demand request. The
pre-emptive queuing priority status is an intermediate type of
priority for prioritizing requests in the queue.
[0058] In certain embodiments, when an end-user elects a
pre-emptive queuing, he is authorizing a maximum payment for the
worst case scenario of a much reduced maximum time to service their
request but most likely end up paying a lot less than that amount
and having their request serviced almost immediately. In other
words, the end-user agrees before the job is scheduled to pay a
premium over the amount in a FIFO priority, but less than they
would have paid for an on-demand priority. In return they are
bumped to the head of the standard request queue or to an
equivalent maximum cost job.
[0059] Turning now to FIG. 8b, there is illustrated a method for
determining the cost of a job using a preemptive priority method.
In step 891, a pre-emptive job request arrives, which may be
represented by the variable: job(n). In step 892, a counter "n" may
be set to the oldest FIFO job at the head of the queue (for
example: n=1). In step 893, the cost of job(n) is calculated.
[0060] In certain embodiments, the cost of the job(n) may be
calculated using the following equation:
Cost-of-job(n)=fixed cost+Vc
[0061] where:
[0062] fixed cost--is for the job (e.g. cost of a FIFO
priority).
[0063] Vc--variable incremerital cost of the job which is a
function of the time that it has been in the queue.
[0064] In step 894, the cost-of-job(n) is checked against the
maximum predetermined cost set for a preemptive priority job. If
cost-of-job(n) exceeds the maximum predetermined cost, then the
counter (n) is incremented in step 897 and process returns to step
893. On the other hand, if the cost-of-job(n) does not exceed
maximum predetermined cost then the process flows to step 895. In
step 895, the projected delay to execute is compared to a maximum
acceptable wait time. If projected delay exceeds the maximum
acceptable wait time, then in step 898 the end-user may be informed
so that the end user can choose another payment type.
[0065] For example, if a FIFO priority remote control request costs
$5 and will execute within 30 minutes and the same job on demand
costs $20 then the cost of a job queued based on the number of jobs
serviced per hour this figure equates to a maximum waiting time for
priority preempting job to execute of approximately 10 minutes. The
cost of a preemptive job may be, for instance, an additional $3 and
an upper limit on the cost of a pre-emptive may be set, for
instance, to $17 which equates to a guaranteed maximum waiting time
not to exceed 10 minutes although it is expected that job will
execute immediately or within a few minutes in the majority of
cases.
[0066] In this example, one method of calculating the cost of each
job(n) is as follows. 1 Cost = $5 + $3 + 9 / 1200 .times. t ( n ) +
$0 .1 .times. n ( b ) where t ( x ) = time in queue in seconds Cost
per second for queued jobs = ( Max Cost pre - emptive - Min Cost
pre - emptive ) ( Max Time FIFO Job - Max Time Preemptive Job ) = (
17 - 8 ) ( dollars ) ( 30 .times. 60 - 10 .times. 60 ) ( seconds )
= 0.0075 Cost of a job ( n ) in queue = $8 + c ( n ) + eg $0 .2
.times. b ( n ) = $8 + 0.0075 .times. t ( n ) + $0 .2 .times. b ( n
) Where t ( n ) = the actual time job ( n ) has spent in queue c (
n ) = cost / second .times. t ( n ) b ( n ) = number of times job (
n ) has been bumped
[0067] The maximum execution time for a pre-emptive job and the
additional cost for the number of times bumped prevents FIFO jobs
being continually bumped and explains the presence of step 898
which applies in times of congestion where a customer is asked to
chose `on demand` service fees or wait in the normal FIFO queue
with no added priority.
[0068] In the above example, a new preemptive request would not
displace a single FIFO job (e.g., job(n)) that had spent more than
1200 seconds in queue or which had been bumped more than 45
times.
[0069] In the above example, when each time a job(n) is bumped, the
process adds the equivalent of the job having spent an additional
26 seconds over and above the actual time in queue. The preemption
charge of $3 is equivalent to a FIFO job(n) having spent an
additional 400 seconds in queue. Thus, some examples described
herein effectively apply an exponential cost as the queue
approaches the point of congestion or blocking. In some
applications, the program or operator receiving the job request may
know if it is likely to be serviced within a predetermined time,
for example 30 minutes.
[0070] Using the above equation, the following table may be
constructed to illustrate how the cost of preemptive queuing might
vary based on the time other jobs have been in the queue and the
number of times other jobs have been preempted.
1 TABLE 1 Time in Job Queue No-of times Number (seconds) `cost`
preempted N 51 $8.38 0 n-1 63 $8.67 1 2 367 $12.35 8 1 (next) 395
$12.96 10
[0071] The methods of pre-emptive queuing described herein may have
other applications than in the systems and methods previously
described in this application. Methods of pre-emption described
herein are suitable to many commercial systems.
[0072] For example, a mail order system which has a fixed shipping
capacity may use the concept of preemptive queuing. In such an
example, a call would be received by a customer service center or a
request received via a web server. The customer is normally asked
to pay a shipping and handling or service fee for the order. Often
there is some factor for which a customer would be prepared to pay
a little more to have their request serviced faster. A cost is
therefore associated with the amount of time the job next in line
has spent waiting to be served. The cost may be charged for
allowing the customer to use preemptive queuing or queue jumping so
that their order would be expedited and placed before other orders
in line to be shipped. This cost of preemptive queuing may be the
basic shipping and handling charge plus a premium plus a pro-rata
cost based on the amount of time the next in queue has spent
waiting.
[0073] The operator of the queue may have the ability to set
parameters on the system so that they can statistically offer an at
least $x but no more than $y for the customer to have their order
filled more quickly.
[0074] For example at a holiday time a mail-order or catalogue
retailer may have a delay to ship of 1 or 2 days+the shipping
option chosen by customer. Now customer to join this queue may have
a Shipping and handling charge of $14. Especially when close to a
cut off for the US Postal service or couriers customer to make sure
their present arrives in time customer may agree to pay up to $30
to have their job serviced next. Next in line has been waiting 30
hours and company associates a cost of $50 to service their
customer within 3 days, but 3 days is too late to catch the mail.
So customer may agree to pay for example $20 S&H+a pro-rata
amount based on a $20 cost the company asserts with having the next
in line job wait 72 hours. So for 30 hours this is an additional
cost of 30/72*20+$20 or $28.33 for the escalated cost of jumping
the queue.
[0075] The abstract of the disclosure is provided for the sole
reason of complying with the rules requiring an abstract, which
will allow a searcher to quickly ascertain the subject matter of
the technical disclosure of any patent issued from this disclosure.
It is submitted with the understanding that it will not be used to
interpret or limit the scope or meaning of the claims.
[0076] Any advantages and benefits described may not apply to all
embodiments of the invention. When the word "means" is recited in a
claim element, Applicant intends for the claim element to fall
under 35 USC 112, paragraph 6. Often a label of one or more words
precedes the word "means". The word or words preceding the word
"means" is a label intended to ease referencing of claims elements
and is not intended to convey a structural limitation. Such
means-plus-function claims are intended to cover not only the
structures described herein for performing the function and their
structural equivalents, but also equivalent structures. For
example, although a nail and a screw have different structures,
they are equivalent structures since they both perform the function
of fastening. Claims that do not use the word means are not
intended to fall under 35 USC 112, paragraph 6.
* * * * *