|
Description  |
|
|
BACKGROUND OF THE INVENTION
This invention relates to data communication systems, and more particularly
to an RF packet communication system in which a number of remote units
send data to a central computer via intermediate base stations.
Bar code readers used in retail or commercial facilities are usually
connected to a central computer by physical wiring. This connection is
quite suitable for permanently-mounted bar code readers as used in
supermarket checkout counters, or for hand-held scanners or wands used at
similar fixed locations. However, when the bar code reader is to be used
by a person who is moving about a building, or when temporary
installations are employed, physical wiring is unsuitable, or is at least
quite inconvenient. A radio frequency (RF) link can be used to send data
from the a hand-held bar code scanner to a central station, or to a local
relay point, but the RF links that have previously been available for this
purpose have had characteristics making them expensive and inconvenient.
These RF links typically have used RF bands requiring F.C.C. licensing for
each installation, adding to the cost and administrative burden. The RF
components employed in this type of equipment have to be of high precision
so that frequency drift and bandwidth spillage are kept within F.C.C.
tolerances. In addition, battery drain has required either large, heavy
batteries, or frequent recharging, or both. The RF transmission methods
previously used also have limited the number of portable terminals which
could be used in a given area due to use of a relatively narrow bandwidth.
Examples of bar code readers using local RF data links include portable
terminals commercially available from the following companies: MSI Data
Corporation, Vectran Corporation, LXE Corporation, Norand Corporation, and
Telxon Corporation. Portable bar code readers having long-distance RF
links are available from Mobil Data International and from Motorola, Inc.
(the KDX1000).
Indoor RF communications networks of the voice type have been proposed,
such as that of U.S. Pat. No. 4,789,983 for "Wireless Network for Wideband
Indoor Communications", or U.S. Pat. No. 4,639,914 for "Wireless PBX/LAN
System".
The remote terminals in these prior systems are addressable at any time,
i.e., always activated, so the requirements for power are dictated by this
feature. In addition, these prior systems have used RF frequency bands
requiring F.C.C. licensing of individual users. For these reasons, prior
systems of this type have been too costly and otherwise unsuitable for the
present purposes.
Spread spectrum wireless transmission is able to use a band that is
designated as an "unlicensed" band by the F.C.C. and so licensing is not a
factor, and the use of spread spectrum techniques allows the transmission
to be accomplished in a reliable manner even though this band is subject
to interference from the many diverse users. In U.S. Pat. No. 4,672,658
for "Spread Spectrum Wireless PBX", a system is shown in which each
separate user transceiver is matched with a separate transceiver at the
central PBX, and each one of these matched pairs transmits with a unique
direct sequence spread spectrum chipping pattern. A separate call set-up
transceiver having a common direct sequence chipping pattern is used for
exchanging information involved in setting up a call. As above, this
system requires continuous monitoring of the RF bands by all of the
transceivers, and is a voice oriented system requiring varying time
periods of maintaining connections, as well as requiring connection from
user to user, rather than user to central station. Another example of use
of spread spectrum in a local RF link is a utility meter reading system
wherein a utility truck driving by a house activates a reader by a CW
transmission then receives the data from the reader.
Wireless data communications between a central computer and several remote
terminals located within a building, using direct-sequence spread-spectrum
techniques to overcome multipath interference, is described by Freret et
al, NTC Record, November, 1980, but again these types of systems rely upon
continuous operation of the portable units, and impose burdens on the RF
circuitry in the remote units which result in complex and expensive
construction.
In U.S. Pat. No. 4,740,792 a data transmission system using spread spectrum
RF is illustrated wherein vehicles are provided with a transmitter, but no
receiver, and the location of each vehicle is reported to a central
station periodically by a transmitted packet. The transmitter is powered
up only for a very limited duty cycle, so battery drain is minimized. This
system has no ability to send data from a central station to one of the
vehicles, or to allow the transmitter at the vehicle to receive an
acknowledge signal indicating receipt of the data transmitted.
It is an object of the present invention to provide an improved, low-cost,
low-power, data communication network in which a number of remote terminal
units are able to send packets of data to a central station, and, in most
cases, to receive acknowledge signals and data from the central station,
preferably a network using an RF link or the like so that the remote units
may move about freely in an area to be covered by the network. Another
object is to provide an improved packet transmission network in which
remote terminal units may be of low cost, low power and small size, yet
provide reliable and fast response, as may be needed in a commercial
facility (usually indoor) using bar code scanners or the like for data
gathering. Another object is to provide an improved protocol for use in a
packet data transmission network which results in reliable operation, low
power consumption and low cost implementation. A particular object is to
provide an RF data link for portable terminals usable without site
licensing under F.C.C. regulations, so that the expense and delays
incident to such licensing are eliminated or minimized.
SUMMARY OF THE INVENTION
In accordance with one embodiment of the invention, a packet data
communication system includes a number of remote terminal units for
gathering data, and a communications link for sending packetized data to a
central station and for receiving an acknowledge signal and data from the
central station. A packet-exchange protocol is used for this
communications link that provides reduced power dissipation at the remote
unit by activating the receive function for only a short time, rather than
requiring the remote unit to receive or "listen" at all times. To this
end, the exchange protocol establishes a rigid time window keyed to a
transmission by the remote unit, and the remote unit is responsive to a
message from the central station only during this time window. The time
window is defined to begin at a fixed time delay after a transmission from
the remote unit to the central station; at all other times, the receiver
is not powered up. In this protocol, the central station cannot initiate a
packet transmission to a remote unit, but instead must wait until the
remote unit has sent a transmitted packet, then the central station can
reply in the rigid time window, attaching to the acknowledge signal the
data it wishes to send to this remote unit. The remote units are low-cost,
hand-held units in one embodiment, and so will be of lesser computational
capacity than the central station, and power dissipation must be
minimized. Accordingly, use of this protocol permits the receive function,
and the computation function needed to decode received data, to be
scheduled or managed by the remote unit rather than being slaved to the
central unit.
In an illustrative embodiment, the central station includes a number of
base stations located in different rooms or areas, with all of the base
stations connected to a central computer, either by a wire connection or
by a similar RF link. At any given time, a remote unit is assigned to only
one of these base stations, and as the remote unit moves about it is
reassigned to another base station. A feature of the protocol is to
include an ID number for the remote unit in the transmitted packet, and to
include this same ID number in the reply packet, so acknowledgement by an
assigned base station is confirmed. But there need be no address or ID of
the base station included in the protocol for communicating with the
remote units, since a remote unit is assigned to only one base station,
and the base station merely serves as a conduit for communicating with the
central computer in any event.
The remote terminal units are, in one embodiment, hand-held bar code
readers, and these units are coupled to the central station by an RF link
so that the user is free to move about the area of the network. Usually
the data packet being sent from the remote unit is the result of scanning
a bar code symbol. The reply from the central station in this case would
be a validation of the bar code information, or instructions to the user
about what action to take regarding the package scanned by the hand-held
unit.
In a preferred embodiment the RF link employs a spread spectrum modulation
technique to send data packets from the remote terminals to the base
stations and return. Spread spectrum methods utilize a transmitted
bandwidth much wider than required for the data by adding some coded
function to the data, then the received signal is decoded and remapped
into the original information bandwidth. A particular advantage of this
type of RF data link is that a band may be used which does not require
site licensing by the F.C.C., yet it provides reliable, low cost
communication from a light-weight, hand-held, battery-operated unit.
An important feature in one embodiment is the use of the decode of an
initial sync portion of the packet in the direct-sequence spread spectrum
transmission to produce a quality factor for use in determining which base
station should handle which remote unit. The spread-spectrum transmission
contains considerable redundancy (each bit is spread to produce a number
of bits), and so a received packet can be used even if in a noisy
environment where all decoded bits (before despreading) are not valid. By
recording the degree to which the incoming packets from a remote unit
correlate with the pseudo-random code used to generate the spread-spectrum
signals, and comparing this data with that received at other base
stations, the best station can be selected while communications continue
uninterrupted.
In order to synchronize the remote receiver with the pseudorandom number
sequence of an incoming packet, without requiring searching for the
beginning of the sequence over a long period of time, the receiver is made
responsive only during a very narrow window, according to one embodiment.
This window may be adjusted in reference to a beginning time for an
exchange by detecting the actual starting time for the return packet in
one exchange and using this detected time to set the window for the next
exchange. A method of setting the start time at a receiver may include
requesting the base station to send a test pattern (repeating characters)
and using this test pattern to try several sequence timings to select the
optimum point, then using this starting time for subsequent exchanges.
When differences in the clock frequencies of the base station and remote
units are enough to cause tracking difficulties, a timing synchronization
technique may be used for avoiding this. According to an embodiment of the
invention, this timing synchronization uses a phase-locked loop or the
like to adjust both the base station phase and frequency to that of the
remote unit during the beginning of an incoming packet at the base
station. Because there is no way to predict when a packet will be received
at the base, this circuitry is energized at all times, and it must
function rapidly to acquire synchronization. The base station then
maintains this frequency and phase adjustment during the entire time it is
receiving the packet; in this arrangement, there is no inherent limitation
to the length of the packet, as would be true if phase errors were allowed
to accumulate. After receipt of a packet is completed, the base station
begins transmitting an acknowledgement to the remote terminal, and because
the timing in the base station has been adjusted to be identical in
frequency and phase to the packet it received from the remote, it is a
simpler task to adjust the phase since the frequency is already matched.
The primary responsibility is thus placed on the base station; the remote
terminals, which are greater in number, are compact, and operate on
battery power, are thus relieved of most of the responsibility for timing
synchronization--the complexity required for rapidly acquiring and
maintaining timing synchronization is placed in the single base station,
allowing the terminals to remain uncomplicated in this regard. An
alternative embodiment, if long base-to-remote packets are desired, is to
provide the ability in the remote terminal to adjust its local reference
frequency to slowly track the frequency of the received packet signal to
account for drift in the base station frequency. This is not a complex
task since the received packet signal starts at the remote station's
frequency as it existed at the end of its transmitted packet.
BRIEF DESCRIPTION OF THE DRAWINGS
The features believed characteristic of the invention are set forth in the
appended claims. The invention itself, however, as well as other features
and advantages thereof, may best be understood by reference to the
detailed description of a specific embodiment which follows, when read in
conjunction with the accompanying drawings, wherein:
FIG. 1 is an electrical diagram in block form of a packet data
communication system according to one embodiment of the invention;
FIG. 2 is timing diagram showing events (RF transmission) vs. time for a
data transmission sequence in the system of FIG. 1;
FIG. 3 is a more detailed electrical schematic diagram in block form of the
host computer and one of the base stations in the system of FIG. 1;
FIG. 4 is a more detailed electrical schematic diagram in block form of one
of the remote terminals in the system of FIG. 1;
FIG. 5 is a sectional view of a hand-held bar code scanner unit which may
be used as the remote terminal according to one embodiment of the
invention;
FIG. 5a is a pictorial view of another type of bar code reader which may be
used as the remote terminal instead of the laser scanner of FIG. 5,
according to another embodiment of the invention;
FIG. 6 is a view of a part of a bar code symbol to be read by the remote
unit of FIGS. 4 and 5, or of FIG. 5a, and a timing diagram of the
electrical signal produced thereby;
FIG. 7 is an expanded view of part of the timing diagram of FIG. 2;
FIGS. 7a-7d are timing diagrams similar to FIGS. 2 and 7 for a system as in
FIGS. 1, 3 and 4 according to alternative embodiments of the protocol of
the invention;
FIGS. 8a-8c are timing diagrams showing events vs. time occurring in the
system of FIGS. 1 and 3-6 using the protocol of FIGS. 2 and 7;
FIG. 9 is an electrical schematic diagram of the circuitry of the
transmitter/receiver in the remote unit of FIG. 4;
FIG. 9a is an electrical schematic diagram as in FIG. 9, according to an
alternative embodiment;
FIG. 10 is an electrical schematic diagram of the circuitry of the
transmitter/receiver in a base station of the system of FIGS. 1 and 3;
FIG. 10a is an electrical diagram of a part of the circuit of FIG. 10,
according to an alternative embodiment;
FIG. 11 is a logic flow chart of an algorithm which may be executed by the
CPU in a remote terminal unit of FIGS. 1, 4 and 9 for a system according
to one embodiment of the invention;
FIG. 12 is a logic flow chart of an algorithm which may be executed by the
CPU in a base station of FIGS. 1, 3 and 10 for a system according to one
embodiment of the invention;
FIG. 13 is a timing diagram like FIG. 2 showing an adjustment for
synchronization with the pseudorandom number sequence, according to
another embodiment;
FIG. 14 is a timing diagram as in FIG. 13, showing timing for a received
using the features of FIG. 13; and
FIG. 15 is a timing diagram as in FIG. 13 for another embodiment of the
synchronizing methods of the invention.
DETAILED DESCRIPTION OF A SPECIFIC EMBODIMENT
Referring to FIG. 1, a data communications network according to one
embodiment of the invention is illustrated. A host processor 10 is
connected by a communications link 11 to a number of base stations 12 and
13; other base stations 14 can be coupled to the host through the base
stations 12 or 13 by an RF link. Each one of the base stations 12, 13 or
14 is coupled by an RF link to a number of remote units 15. In one
embodiment, the remote units 15 are laser-scan bar-code readers of the
hand-held, battery-operated type as disclosed in U.S. Pat. Nos. 4,387,297,
4,409,470 or 4,760,248, all assigned to Symbol Technologies, Inc., for
example. Various other types of remote terminals may be advantageously
employed in a system having features of the invention; these remote
terminals ordinarily would include data entry facilities such as a
keyboard or the like, as well as a display (or printer) for indicating to
a user information detected, transmitted and/or received by this terminal
15. In this embodiment used as an illustrative example, there may be from
one up to sixty-four of the base stations 12, 13 and 14 (three being shown
in the Figure), and up to several hundred of the remote units 15; of
course, the network may be expanded by merely changing the size of address
fields and the like in the digital system, as will appear, but a limiting
factor is the RF traffic and attendant delays in waiting for a quiet
channel. This communications network as seen in FIG. 1 would ordinarily be
used in a manufacturing facility, office building complex, warehouse,
retail establishment, or like commercial facility, or combination of these
facilities, where the bar code readers or similar data gathering terminals
15 would be used for inventory control in stockroom or receiving/shipping
facilities, at checkout (point of sale) counters, for reading forms or
invoices or the like, for personnel security checking at gates or other
checkpoints, at time clocks, for manufacturing or process flow control,
and many other such uses. Although hand-held, laser-scan type bar-code
readers are mentioned, the data terminals 15 may also be bar-code readers
of the wand type, and may be stationary rather than hand-held. The device
may be of the optical character recognition (OCR) type, as well. Other
types of data gathering devices may use the features of the invention,
such as temperature or pressure measuring devices, event counters, voice
or sound activated devices, intrusion detectors, etc.
According to an important feature of one embodiment of the invention, an RF
packet communications protocol between the remote units 15 and the base
stations 12, 13 and 14 includes a transmit/receive exchange, referred to
hereinafter simply as an "exchange". This protocol is similar to
collision-sense multiple-access (CSMA) in that a unit first listens before
transmitting, and does not transmit if the channel is not free. As seen in
FIG. 2, this exchange always begins with a remote-to-base transmitted
packet 17, representing an RF transmission from a remote unit 15 to be
received by the base stations within range. The transmitted packet 17 is
followed after a fixed time interval by a base-to-remote transmitted
packet 18, representing reception by the remote unit 15 of RF information
transmitted by the base station servicing this particular remote unit 15.
Each of these packets 17 and 18 is of fixed timing; a transceiver in a
remote unit 15 begins an exchange at its own initiative by first listening
for other traffic for a brief interval t.sub.0 (typically 0.3 msec), and,
if the RF channel is quiet, starting a transmission at a time of its own
selection (asynchronous to any clock period of the base stations or host
computer). This outgoing transmission packet 17 lasts for a time t.sub.1
as seen in the Figure, and in an example embodiment this period is 4.8
milliseconds. Then at a precise time delay t.sub.2 after it started
transmission (e.g., 5-msec after the beginning of t.sub.1) the transceiver
begins listening for the return packet 18 from the base station. The
transceiver in the remote unit 15 only responds to receipt of the packet
beginning in a very rigid time window t.sub.3 of a few microseconds
length, and if the packet 18 has not started during this window then
anything to follow is ignored. The packet 18 is an acknowledge signal, and
also contains data if the base station has any message waiting to be sent.
The packet 18 also is 4.8 millisecond in length, regardless of what data
is included, if any, so a remote-to-base exchange, including acknowledge,
takes about 9.8 msec in the example. The base stations 12, 13 and 14
cannot initiate an exchange of FIG. 2, or initiate any other such
transmission to the remote units 15, but instead must wait until a packet
17 is received from the remote unit 15 for which this base station has a
message waiting, then the data to be sent is included in the data portion
of the return packet 18. For this reason, the remote units 15 are
generally programmed to periodically, e.g., about every 500 msec or more,
send a packet 17 to the base station with no data except its identifying
code (traditionally called a NOP), so that the base station can send any
data it has waiting in its memory for relay to this remote unit 15. To
prevent another remote unit 15 from starting one of the exchanges of FIG.
2 in the interval just after the transmit packet 17 but before the receive
packet 18 has started, time t.sub.0, the listening time, is generally
chosen to be longer than the time interval between transmit packet 17 and
receive packet 18 (0.2 msec in this example). If another remote unit 15
tries to initiate its own exchange it will receive the RF transmission and
will back off and try again at least about 10-msec later. In the manner of
CSMA protocols, the remote units 15 can be programmed to wait random time
delays before retry, to thereby lessen the likelihood of simultaneous
retries.
Referring to FIG. 3, in a typical commercial or retail application of a
network of FIG. 1, the host processor 10 maintains a database management
system (employing suitable database management software similar to that
commercially available) to which the remote units 15 make entries or
inquiries via the base stations 12, 13 and 14. The host processor 10 has a
CPU 20 which may be a microprocessor device of the 80386 type manufactured
by Intel, for example, and the CPU accesses a memory 21 via a main bus 22
to execute instructions. Various I/O processors 23 are used to access
peripherals such as keyboard, video display, etc., as well as disk storage
24 for the database system and other computer functions. A communications
adapter 25 couples the CPU 20 via main bus 22 to the link 11. This
communications link 11 may be of the serial type such as RS232, or in a
system designed for higher performance the link 11 may use one of the
available local area network type of protocols such as Ethernet or token
ring; in the example embodiment, however, the standard local area network
protocols are needlessly complex and expensive, and a more optimum
solution is merely use of a serial port connected to a shared serial line
11, on a time-sharing basis (e.g., time slotted). The data rate on the
link 11 is rather modest compared to typical 4-Mbit or 16-Mbit/sec LAN
links of t | | |