|
Description  |
|
|
REFERENCE TO RELATED APPLICATION
The disclosures of the following applications assigned to the assignee of
the present application and filed concurrently herewith are specifically
incorporated by reference:
"Data Acquisition System Having Setup Duplication Capability", U.S. Pat.
No. 5,295,063 issued Mar. 15, 1994; and
"Control Board Having Dual Means of Configuration", U.S. Pat. No. 5,299,113
issued Mar. 29, 1994.
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention is directed to the field of data acquisition and, in
particular, to a data acquisition system having selective communication
capability.
2. Description of the Prior Art
In the commercial laundry field, state-of-the-art commercial laundry
appliances today incorporate data accumulation and communication
capabilities. For example, switches or electro-optical detectors may be
provided to monitor certain aspects of machine operation, such as monies
deposited, cycles vended, certain door openings, power failures and other
useful information. These data may be retained in electronic memory within
the appliance and subsequently communicated to a portable collection unit,
such as a hand held probe or computer. Systems of this type are described,
for example, in U.S. Pat. Nos. 4,369,442 (Werth et al.); 4,216,461 (Werth
et al.) and 4,306,219 (Main et al.). In such a system, the laundry
appliance is provided with an appropriate means for establishing
communication with an external device, such as an infrared optical
communication link.
The prior art approaches for permitting communication between a data probe
and a data acquisition unit as described above have many limitations. In
particular, the data acquisition systems of this type are system
dedicated. The data probe interrogates the data acquisition unit of the
appliance and the data acquisition unit responds by sending records of
information it has accumulated. The problem, however, is the inability of
either the data probe or the data acquisition unit to communicate with
other data acquisition systems. For example, a first type of data
acquisition system would have a data probe and data units compatible with
one another but not with other data acquisition systems. A second type of
data acquisition system would suffer from the same disadvantage. Thus once
a data acquisition system is selected, neither the data probe nor data
unit may be replaced by a probe or data unit from another data acquisition
system.
This presents a disadvantage to an owner who initially purchased a data
acquisition system comprising several appliances having data acquisition
units and a compatible probe and later replaces some or all of the
appliances by appliances having data acquisition units from a different
data acquisition system. The owner would then have to purchase a second
probe that was compatible with the new appliances. Not only does this
increase the expense of the system and limit the owner's choice among data
acquisition units, but the route operator must now carry two probes in
order to communicate with all of the appliances on his route. The
incompatibility of prior data acquisition systems thus complicates the
data collection process and adds to the expense of such systems.
It is desirable to provide data acquisition system having selective
communication capability thereby enabling the data acquisition system to
communicate with various data acquisition units and probes. Such
flexibility permits the owner or route operator to communicate with the
appliances without having to replace the data acquisition units or
purchase alternative probes.
SUMMARY OF THE INVENTION
A data acquisition system having selective communication capability to
enable the data acquisition system to communicate with other data
acquisition systems. The probe of the present invention initiates
communication with a data acquisition unit located in an appliance. The
data acquisition unit maintains a collection record which indicates the
current setup and counts of the appliance. When the probe communicates
with the data unit, it identifies itself and based upon this
identification, the data unit responds with a particular collection record
which is compatible with the probe communicating with the data unit. In
addition, if the probe is used to setup a data unit, the probe decides
what type of setup record to send based upon the collection record
received from the data unit.
Further objects and advantages of this invention will become more apparent
and readily appreciated from the following detailed description of the
present invention with reference to the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates a data acquisition system according to one embodiment of
the present invention.
FIG. 2 illustrates an appliance equipped with optical communication
capability.
FIG. 3 illustrates a portable probe used in conjunction with the present
invention.
FIG. 4 is an electrical schematic of a portion of a control board having an
optical communication link for the appliance shown in FIG. 2.
FIG. 5 illustrates the byte format used in the communication protocol.
FIG. 6 illustrates the message format for a control message.
FIG. 7 illustrates the message format for a data message.
FIG. 8 illustrates a first collection record.
FIG. 9 illustrates a second collection record.
FIGS. 10a-k illustrates flow charts for the communication protocol
according to a preferred embodiment of the present invention.
DETAILED DESCRIPTION OFT HE PRESENTLY PREFERRED EMBODIMENTS
FIG. 1 illustrates a data acquisition system 10 according to the present
invention. The data acquisition system incorporates three major elements:
a data acquisition unit 12 which resides in an appliance such as a washer
or dryer and is integral with the appliance's controller; a commercially
available collection probe 14 which is carried by a route operator to
interface with one or more of the appliances having data collection
capability; and a personal computer system 16 for use by the route
operator to receive collected information from the collection probe 14 and
perform desired business analyses on the information. One aspect of the
present invention is directed to the series of messages, referred to as
protocol, exchanged between a data acquisition unit 12 and a collection
probe 14.
FIG. 2 illustrates an appliance such as a washer 18 according to the
present invention. The washer 18 is equipped with at least one coin drop
slot 20, an optical window 22 behind which is an optical transceiver (not
shown) having an optical emitter and an optical detector and a panel (not
shown) behind which is a group of switches. The optical window 22 is
provided so that the washer 18 can communicate with an external device
such as a portable collection unit, for example, a hand held probe (see
FIG. 3). Alternatively, the switches located behind the panel are located
so as to be easily accessible by an owner or route operator and are
provided to setup the appliance as described in copending patent
application, incorporated herewith, entitled "Control Means Having Dual
Means of Configuration" U.S. Pat. No. 5,299,133 issued Mar, 29, 1994 and
assigned to the MAYTAG Corporation. Preferably, the switches are placed
behind a limited access panel.
FIG. 3 illustrates an external device in the form of a portable probe 24
which may be used in conjunction with the present invention. The probe 24
has an optical communications window 26 located on the side of the probe
24 behind which lies an optical transceiver (not shown) formed by an
optical emitter and an optical detector. In addition, a keypad 28 is
provided to allow the owner or route operator to select a mode of
operation and enter data. There are generally three modes of operation of
concern to the present invention; collection, monitor and setup which will
be described in detail hereinafter. A liquid crystal display (LCD) screen
25 displays menus from which the user may select options including the
three discussed above. A trigger button 30 is used to initiate sending
signals to and receiving signals from the optical communications window 22
of the washer 18 after a selection is made. Preferably the probe 24
employed utilizes infrared communications although other optical
wavelengths may be similarly utilized. An infrared probe is available from
Mars Electronic Company commercially as the MARS MEQ.TM. 130 Portable Data
Terminal.
FIG. 4 is an electrical schematic of a portion of the data acquisition unit
located on control board 32 having an optical communication link in
accordance with the present invention for the appliance shown in FIG. 2.
The control board 32 includes a microprocessor 34, a group of dual inline
package (dip) switches 36 and an optical transceiver 38 formed by an
optical emitter 40 and an optical detector 42. Preferably the
microprocessor 34 is a HITACHI microcomputer, model number HD 6305VO. Many
types of switches may be used and preferably a 12 position dip switch,
model number 76SB12S available from GRAYHILL of LaGrange, Ill. is used.
In the present invention, an appliance, such as a washer, has a relay (not
shown) mounted on the control board to power or initiate an
electro-mechanical timer. The timer sequences and powers various
appliances such as water valves and motors. For other appliances, a
plurality of relays may be mounted off the control board and electrically
connected with components of the board. The relays are selectively
energized for controlling the various functions of the appliance. The
specific construction of the apparatus required for the mechanical
functions of the appliance are well known to those skilled in the art and
form no part of the present invention. For that reason, they will not be
described in detail, it being understood that the relays open and close
the required electrical circuits for proper operation of the appliance.
The optical transceiver 38 preferably provides two-way communication
between an appliance, such as a washer 18 (FIG. 2) and the hand held probe
24 (FIG. 3). The appliance can thus transmit information to the probe 24
via its emitter 40 and receive information from the probe 24 via its
detector 42. Both the probe and the data unit include memory to store
information transmitted during the communication protocol.
If data accumulated by the appliance is to be collected using the probe 24,
the user selects the collection mode from a menu displayed on the screen
25 of the probe 24 by the keypad 28 and begins communication with the
appliance by pulling the probe's trigger 30. If the user wants to set-up
or change the operational parameters of the appliance using the probe 24,
the user selects a setup or configuration mode by the keypad 28 and sends
a setup record to the appliance by pulling the trigger 30. The setup
record is preferably created at a remote computer site and downloaded into
the memory of the probe 24. The setup record may be created on-site using
the keypad 28 of the probe 24, however, this is generally not as
convenient. As an alternative to using the probe 24 to setup the
appliance, certain parameters may be configured by the group of switches
36 as previously described.
An output 44 of the microprocessor 34 may be used and controlled by
appropriate programming in a manner well known to those of ordinary skill
in the art to control the optical emitter 40. The output 44 may be
controlled by suitable programming of the microprocessor 34 to generate
coded outputs corresponding to, for example, data received by the
microprocessor 34 from various machine monitoring inputs 46 and stored in
the internal memory registers of the microprocessor 34 for subsequent
transmission. To avoid interference by ambient infrared and optical
signals which are typically present, it is desirable to encode the
transmitted intelligence on a known carrier frequency. In the preferred
embodiment, communications are provided by synchronous signals at 1200
baud encoded on a 30.+-.1 Kilohertz carrier frequency. This encoding is
accomplished by the microprocessor 34 in manners well known by those
skilled in the art. Of course other forms of encoding may be employed if
desired.
If encoding on a carrier frequency, as preferred, is employed, the
receiving circuitry may include a demodulator and buffer amplifier 48. In
the preferred embodiment, a MOTOROLA demodulator and preamplifier, Part
No. MC3373P, is employed and the discriminated output signal is supplied
to an interrupt input 50 of the microprocessor 34. Alternatively, the
received signal may be supplied directly to the microprocessor 34 which
itself may then decode and further discriminate the intelligence as
desired in manners known in the art.
The electro-optical communication between the probe 24 and the data
acquisition unit is initiated by aiming the optical communications window
26 (FIG. 3) of the portable probe 24 at the optical communications window
22 (FIG. 2) of the appliance. The probe 24 is activated by pulling the
trigger button 30 to send a signal to the optical transceiver 38 of the
appliance. The receiving circuitry of the appliance delivers a demodulated
signal to the interrupt 50 input of the microprocessor 34 as is well known
to those skilled in the art. Preferably the communication between the data
acquisition unit and the collection probe is two-way with the collection
probe sending, control and command signals and the data acquisition unit
replying by sending data records which were stored in the data unit during
the operation of the appliance. The specific signals transmitted and
received by the probe and the data acquisition unit will be described
hereinafter.
When the probe 24 is used to interrogate a data acquisition unit, a
specific interrogation and verification protocol must be successfully
performed before the data collection unit in the appliance will output any
data from its registers. This protocol will be described with respect to
the flow charts of FIGS. 10a-k.
The present invention employs a data probe and data unit which can
selectively communicate with other data acquisition systems. The data unit
of the present invention is interrogated by a probe which identifies
itself to the data unit and tells the data unit what information it is
seeking. Based upon this identification, the data unit will respond by
transmitting the requested information in a format dependent upon the
identification of the probe. The data unit thus selectively chooses how it
will respond to an interrogation by a probe based upon the manner in which
it is spoken to. In addition, the probe of the present invention may
interrogate various data units. The probe recognizes the data unit by
information sent by the data unit. Based upon the identification of the
data unit, the probe will respond by transmitting information in a format
based upon the identity of the data unit.
Data acquisition system may utilize many different communication formats.
These formats may be used to identify data units and probes from different
data acquisition systems. Different data acquisition systems may employ
communications using various modulation schemes, carrier frequencies and
transmission rates, for example. In the preferred embodiment, the
distinguishing characteristic identifying probes and data units according
to the present invention is determined by specific bytes of information
transmitted by the probes and data units. While a particular communication
protocol will be described hereinafter, it is not intended that the
present invention be limited to such a communication protocol.
The format of the signals sent by the probe and the data acquisition unit
will now be described with reference to the preferred embodiment of the
present invention. Each message is preferably transmitted serially byte by
byte. FIG. 5 illustrates the byte format. Each byte comprises 10 bits
having one start bit, 8 data bits and one stop bit. The data bits are not
specifically coded and there are no restrictions as to data values
therefore any of 256 combinations of 8 data bits may be transmitted as a
data byte. Each byte is transmitted least significant bit first, after the
start bit and most significant bit last immediately preceding the stop bit
at a transmission rate of 1200 Baud as described above. On/off keying of
optical signals is used as the modulation scheme with an amplitude
modulation depth of approximately 80 to 100%. As described earlier the
subcarrier frequency preferably ranges from about 29 to 31 Kilohertz. The
duty cycle of the optical emitter at the subcarrier rate shall range from
40 to 60%. A binary low, i.e. "0", is defined as the presence of optical
energy at the optical emitter of the probe or the data acquisition unit,
i.e. carrier and subcarrier, and a binary high, i.e., "1" is defined as
the absence of any transmitted optical energy from the optical emitter of
the probe or the data acquisition unit.
The data communication between the data acquisition unit and the collection
probe involves both control messages and data messages. The protocol
specified is a variation and subset of DDCMP, a byte count protocol for
data link control as specified by the Digital Equipment Corporation.
(DDCMP, Ver. 4.0; 01 Mar. 1978). Error detection is included for both the
control and the data messages. The error detection employs a cyclic
redundancy check using the CRC-16 convention as is well known by those
skilled in the art. The CRC-16 algorithm is defined by the equation
p(x)=x.sup.16 +x.sup.15 +x.sup.2 +x.sup.0 . [See, W. Stallings, Data
Computer Communications, pages 105-110 (MacMillian Publishing Co. 1985)
incorporated herein by reference.]
FIG. 6 illustrates the message format for a control message. The control
message has 8 bytes of information. The first byte is a control message
identifier and is used to differentiate control messages from data
messages. The second byte defines the message type and is used to
distinguish one control message from another control message. The third
through the fifth bytes are not currently used. The sixth byte defines
STATUS which will be described in detail hereinafter. The seventh and
eighth bytes represent the low and high bytes respectively of CRC16 for
the first six bytes of the control message.
There are preferably four types of control messages used: Start ("START");
Start Acknowledge ("STACK"); Acknowledge ("ACK"); and No Acknowledge
("NACK"). As mentioned above, the second byte is used to distinguish these
messages. The sixth byte, STATUS, is used in the ACK message where it may
have one of two possible values as will be described in detail
hereinafter.
FIG. 7 illustrates the message format for a data and maintenance message.
The format includes an 8 byte preamble plus a variable length data field.
The first byte of the preamble is a message identifier which is used to
differentiate data messages, maintenance messages and control messages.
The second byte represents the least significant 8 bits of a 14 bit count
defining the total number of data bytes in the message. The least
significant 6 bits of the third byte define the most significant 6 bits of
the 14 bit count defining total number of data bytes in the message. The
fourth and fifth bytes are currently not used. The sixth byte defines
STATUS. The seventh and eighth bytes define the CRC16 for the first 6
bytes. Immediately following the preamble bytes are the data bytes. The
number of data bytes is variable.
There are preferably three types of data messages used: Security/Control
Data ("DATA 1"); Vending Data ("DATA 2") and Bad Security Code ("BADSEC")
.
A DATA 1 message is always sent by the probe to the data unit. The sixth
byte of the preamble, STATUS, has two possible values. The STATUS byte is
used to identify the probe communicating with the data unit. The data unit
thus recognizes the probe by this byte and sends information in an
appropriate format in response thereto. More specifically, the data unit
is directed to send a particular record. The data bytes following the
preamble are variable but the following information, for example, may be
transmitted. Data bytes 1-3 define an old security code in binary coded
decimal (BCD) format. While these bytes are referred to as bytes 1-3, they
are actually the ninth through the eleventh bytes since they immediately
follow the 8 byte preamble. Bytes 4-6 define a new security code in BCD
format. Bytes 7-8 define a selected mode of operation. For example, if the
value of bytes 7-8 is less than a particular value, the probe is used to
monitor information accumulated by the data unit. If the value is greater,
the probe is used to collect information accumulated by the data unit.
Bytes 7-8 act as a back-up security for an ACK message, the significance
of this will become clear with reference to FIGS. 10a-h. Bytes 9-11 define
the date in BCD format. Bytes 12-13 define the time in BCD format. Bytes
14-15 define CRC16. More will be said concerning how the DATA 1
information is used hereinafter.
A DATA 2 message is always transmitted by the data acquisition unit to the
collection probe. Like the DATA 1 message, a DATA 2 message has an 8 byte
preamble plus a variable number data field. All bytes of the preamble have
the same definition as those of the DATA 1 preamble except for the sixth
byte, STATUS, which is left undefined. Immediately following the preamble
are the data bytes. The first through the Nth bytes define an appliance
collection record. The first byte of this record distinguishes particular
data acquisition units by brand or model, for example. The Nth+1 and the
Nth+2 bytes define CRC16 for the N data bytes.
As described above, different types of records may be sent by the data
unit. For example, if probe #1 communicates with the data unit depending
upon the probe that is communicating with the unit, a collection record as
shown in FIG. 8 may be sent. If probe #2, however, communicates with the
data unit, a collection record as shown in FIG. 9 may be sent which
provides more information than the record of FIG. 8.
Each field length of the collection records shown in FIGS. 8 and 9 is
measured in bytes with each byte having eight bits. Not every field will
be described since the field name provides sufficient description as to
the contents of the field. Both records contain a one byte field at the
first position of the record defined as record type. This byte
distinguishes the records of one data unit employing one type of data
format from those of another. The record illustrated in FIG. 8 has a
different value for the record type byte than the record illustrated in
FIG. 9 and thus indicates different data formats.
For the record illustrated in FIG. 8, the first four fields provide
information concerning the appliance and its location. The remaining
fields contain information concerning the operation of the appliance. For
example, the interval revenue slide field is a 2 byte field representing
the number of cycles the appliance has sold since the last collection
probe reading. The status debounce and status fields are 1 byte fields
representing the current status of the appliance.
For the record illustrated in FIG. 9, the first five fields provide
information concerning the appliance and its location. The remaining
fields provide information concerning the operating parameters of the
appliance. The current status 1 and current status 2 fields are 1 byte
fields representing the current status of the appliance. The diagnostics
field is a 3 byte field representing potential problems detected by the | | |