Network based data acquisition system

A data acquisition and control system includes a host computer, a controller having a processor and a network device including measurement components and control devices. The network device, which may not include a processor, is synchronously controlled by control signals from the controller communicated to the network device at times of events controlled. The communication cycle over the network includes a quiescent phase during which sensitive components settle in an electrically noise-free environment, i.e. no digital signals inside the network devices are switching during the quiescent phase.

FIELD OF THE INVENTION
 The present invention is in the field of data acquisition systems which
 measure and control electrical signals. More particularly, the invention
 is in the field of peripheral equipment for attachment to a computer
 system, e.g. a personal computer or workstation, whereby the computer and
 peripheral equipment may be used for data acquisition.
 BACKGROUND OF THE INVENTION
 The personal computer has proved to be a boon to the field of data
 acquisition. A personal computer is a general purpose device which may be
 configured by software programs and by plug-in peripheral equipment to
 perform a wide variety of special purpose tasks, including data reduction
 or computation, data acquisition and control. In the particular area of
 data acquisition, peripheral devices for performing measurements of
 physical phenomena and converting such measurements to digital signals
 conventionally are attached to a personal computer through an expansion
 bus. Messages are transmitted through the expansion bus to issue commands
 to instruments and to receive data back in return.
 One conventional architecture for data acquisition systems includes a
 computer which communicates over the IEEE-488 bus with one or more
 processor controlled measurement instruments. The measurement instruments
 may include such complex devices as spectrum analyzers, as well as simpler
 devices, such as volt meters. However, each instrument includes a
 processor for communicating over the IEEE-488 bus and for controlling the
 instrument. Each instrument is treated in such a system as an intelligent
 peripheral which executes its own measurement program as directed through
 communication over the IEEE-488 with the computer. Processors may include
 microprocessors, microcontrollers, digital signal processors, etc. As a
 result, the instruments are expensive, consume relatively large amounts of
 electrical power, are designed for special measurement functions and are
 complex to program. Each instrument includes a processor as well as
 associated supporting logic and clocking circuits. The timing of
 communications over the bus is independent of the timing of measurements
 (i.e. the communications and measurement processes are asynchronous), thus
 increasing the exposure of sensitive instruments to digitally created
 noise from the bus. Therefore, special precautions must be taken in the
 design of such instruments to avoid electrical noise problems which could
 affect the measurements produced.
 Another conventional approach to data acquisition systems is to attach a
 general purpose measurement module to a personal computer through an
 RS-232 or RS-422 serial port. Although such devices tend to be far less
 sophisticated than IEEE-488 bus based systems, the approach is
 substantially similar. Each measurement device has a processor within the
 device, for controlling the measurement components and processing commands
 and data to be sent or received through the RS-232 or RS-422 serial port.
 Measurement timing and communication functions are all controlled by the
 processor within each measurement device. Communication with the personal
 computer is achieved through the RS-232 or RS-422 serial port.
 When a multiwire cable includes a signal wire carrying a signal that
 quickly transitions from one voltage level to another (e.g. a digital
 signal), a spike will inductively couple to all other wires in the cable,
 at each transition. In the case of a digital signal switching between 0V
 and 5V, 10 mV to 500 mV spikes may appear on the other signals in the
 cable. This means that the 10 mV to 500 mV spike is added to the other
 signals, and results in an error equal to the magnitude of the coupled
 spike. This is called cable cross-talk. Cable cross-talk may be seen in a
 conventional data acquisition system by grounding the most sensitive input
 to such a conventional data acquisition system at the sensor, far from the
 computer. The output of the grounded sensor should then be digitized, and
 viewed. The spikes discussed above will be seen in the signal viewed. This
 noise is added to the sensor signal even when it is not grounded, and
 therefore determines the maximum possible accuracy of the conventional
 system that has one multi-signal connector, e.g. a standard DB-25
 connector, through which multiple I/O signals pass. In addition to cable
 cross-talk, noise can originate from ground loops, background
 electromagnetic fields, or the electromagnetic fields and ground noise
 injection generated by millions of simultaneously switching transistors
 inside the computer at MHZ rates. This problem of cable cross-talk affects
 many conventional systems because they route one or more analog and
 digital signals in the same cable. It should be noted that analog signals
 characterized by fast transitions can also cause cross-talk and noise to
 appear in other signals in a cable carrying such signals.
 Many conventional systems suffer from one or more of the problems described
 above.
 SUMMARY OF THE INVENTION
 The present invention includes aspects which solve the various problems of
 the prior art indicated above, as well as other problems with conventional
 systems that would be evident to those skilled in this art, including but
 not limited to reducing cost and noise of highly accurate data acquisition
 systems.
 In accordance with one aspect of the invention, there is provided a network
 based data acquisition system, comprising: a host computer having an
 expansion bus executing a software program to collect measurements from
 measurement components; a network controller subsystem in communication
 with the host computer through the expansion bus, the network controller
 having a controller synchronous serial network I/O port, the network
 controller including a processor executing a software program to generate
 control signals at the controller synchronous serial network I/O port that
 synchronously control the measurement components, responsive to the
 software program executed by the host computer; and a network device in
 communication with the controller synchronous serial network I/O port
 through a first device network I/O port, at least one component controlled
 through the first device network I/O port by the control signals generated
 by the network controller. As will be seen, the expansion bus can be a
 Peripheral Component Interconnect (PCI) bus, and Industry Standard
 Architecture (ISA) bus, a PCMCIA (PC card) bus, a NUBUS, Ethernet,
 Universal Serial Bus (USB) or FireWire. Generating control signals at the
 controller synchronous serial network I/O port at times of events
 controlled is sometimes referred to as real-time control or synchronous
 control because the control signals are made to occur at the actual time
 at which the event indicated by the control signals is intended to occur.
 Such real-time control or synchronous control is to be distinguished from
 the form of non-real-time control or asynchronous control where a control
 signal transmitted to a controlled device merely acts as a command which
 may be acted upon by the device at a later point in time.
 In accordance with another aspect of the invention, there is provided an
 instrumentation system comprising an instrumentation control subsystem and
 a measurement subsystem including measurement components. Further in
 accordance with this aspect of the invention, the control subsystem and
 the measurement subsystem are interconnected by an instrumentation bus
 having: in the instrumentation control subsystem a communication device
 having an output carrying a control signals communicated to the
 measurement subsystem to synchronously control the measurement components;
 and in the measurement subsystem a communication device having an input
 which receives the control signal which synchronously controls the
 measurement component.
 Finally, in accordance with yet another aspect of the invention, there is a
 method of controlling measurement instruments comprising the steps of:
 interconnecting a control system with a measurement system through a
 digital bus; controlling the measurement system through a series of
 signals sent via the digital bus during a signaling part of a
 communication cycle; and sampling measurements during a quiescent part of
 the communication cycle. In accordance with this aspect of the invention,
 the quiescent part of the communication cycle permits settling of
 sensitive analog components in a substantially electrically noise-free
 environment. Therefore, measurements made by this system may be accurate
 and noise-free to within tens of microvolts using low cost components and
 without expensive shielding techniques.

DETAILED DESCRIPTION
 An embodiment of the invention and several variations are now described
 illustrating various aspects of the invention. The invention will be
 better understood upon reading the following description along with the
 drawings.
 As shown in FIG. 1, one embodiment of the invention is a data acquisition
 system including a host computer system 101, a controller 103 in
 communication with the host computer 101 and a network device 105, for
 example a measurement system, in communication with the controller 103.
 I/O subsystems 104, for example having analog inputs, analog outputs,
 digital inputs and/or digital outputs are included within or attached to
 the network device 105. In one embodiment, the I/O subsystem 104 are
 permanently attached; whereas in another, they are pluggable cards. The
 data acquisition system is controlled by a software program executed by
 the host computer system 101. This software program receives inputs from
 an operator or other input sources (not shown) and processes those inputs
 to control operation of the network device 105 in the manner directed by
 the inputs received. The software program also receives data from the
 network device 105 and produces outputs which may be readable by a human
 operator or may be in a form useable by other software programs or
 equipment (not shown). These control and processing functions involve
 interactions with a human operator that are not required to occur at
 predetermined times or intervals or within a certain time of operator
 intervention. For example, an operator may set up an experiment in advance
 of the occurrence of the physical phenomena to be measured, in which a
 series of measurements are taken and recorded on disk for later
 manipulation. Only the series of measurements are of a time-critical
 nature, since they must occur at fixed times or intervals during or
 relative to the phenomena to be measured.
 In this embodiment of the invention, the host computer 101 may be any
 self-contained personal computer (PC), workstation or more powerful
 computer system having adequate speed, memory and I/O capabilities for the
 data acquisition task intended. Particularly suitable computer systems
 include IBM PC or compatible personal computers employing an Intel 80486,
 Pentium or newer central processing unit (CPU), or the equivalent, running
 the Windows 95, 98 or NT operating system or a newer operating system
 providing similar resources; and Motorola 680X0-based Apple Macintosh and
 Power PC Apple Macintosh systems, or the equivalent, running MacOS System
 7 or newer. Other CPUs and operating systems could also be used. The
 controller 103 may communicate with the host computer through a standard
 expansion bus 102, such as a PCI bus, an ISA bus, a PCMCIA (PC Card) bus,
 a NUBUS, Ethernet, USB or FireWire. Communication between the controller
 103 and the network device 105 is through a network bus 107 described
 further below. In some embodiments, the host computer 101, together with
 the controller 103 are a self-contained unit; in others, the controller
 103 is contained within the device 105. The network devices 105, and the
 network bus 107 used to communicate with them, are external to the host
 computer 101.
 Additional details of the network bus 107 are now described in connection
 with FIG. 2. The network bus 107 includes both serial and parallel digital
 signal components, as will be seen. Preferably, the network bus 107 is
 exclusively digital, carrying no analog signals. By keeping analog signals
 off of the network bus 107, the digital signals carried by the network bus
 107 are less likely to induce noise into sensitive analog measurements.
 In a presently preferred embodiment, the controller 103 includes a Motorola
 68332 microcontroller unit (MCU) 201 which controls operation in real time
 of all network devices 105 in communication with the controller 103,
 responsive to instructions received from the host computer (FIG. 1, 101).
 In this context, real-time control includes those control and
 communication functions which are required or desired to occur at
 predetermined times or scheduled intervals, without variation. The MCU 201
 also formats data received from the network device 105 for transfer to the
 host computer software program as digital signals carried over the network
 bus 107. In addition, the preferred Motorola 68332 MCU 201 includes a
 proprietary Queued Serial Peripheral Interface (QSPI) port 203. The QSPI
 port 203 forms the basis of the hardware layer of the digital network bus
 107 through which the network device 105 and the controller 103
 communicate. The QSPI port 203 of the MCU 201 on the controller 103 is
 connected to a network cable or backplane 205, in some embodiments through
 simple buffer and drive circuits 207. The buffer/driver circuits 207 may
 be RS-422 differential line drivers/receivers, RS-485 differential line
 drivers/receivers, CMOS logic or TTL logic, for example. As described
 below, all of the sequential digital circuits (except for shift registers
 to receive the serial input), clocks and other electrically noisy
 components required to control the network device 105 are kept away from
 the sensitive I/O subsystem. The network device 105 contains only the
 shift registers 209, and simple combinatorial logic circuits 211 to
 communicate signals through the network 205. The network device 105
 contains no transformers, no oscillators, and no processors which could
 create internal electromagnetic fields, ground bounce, or other electrical
 noise. The controller 103 may reside within the host computer chassis (not
 shown) as a plug-in accessory board, for example, while the network device
 105 may be located at a distance, e.g., 1 ft.-4,000 ft., from the host
 computer (FIG. 1, 101). The useful range of distances is determined by the
 electrical characteristics of the network bus 107 and the cable and
 components used in its construction. In other embodiments, the controller
 103 is in the same enclosure as the network device 105, isolated in its
 own cavity.
 As noted above, the instrument network (FIG. 1, 107) is electrically based
 on the seven signals of the Motorola QSPI interface 203. Although the
 network 107 is described in terms of the QSPI interface standard, other
 interfaces could be used. The QSPI interface 203 includes the following
 signal: