GB2153171A - Improvements in or relating to datalogging apparatus - Google Patents

Improvements in or relating to datalogging apparatus Download PDF

Info

Publication number
GB2153171A
GB2153171A GB08427538A GB8427538A GB2153171A GB 2153171 A GB2153171 A GB 2153171A GB 08427538 A GB08427538 A GB 08427538A GB 8427538 A GB8427538 A GB 8427538A GB 2153171 A GB2153171 A GB 2153171A
Authority
GB
United Kingdom
Prior art keywords
test
channel
memory
interface
readings
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB08427538A
Other versions
GB8427538D0 (en
GB2153171B (en
Inventor
Martin Alexander Mcnair
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MOWLEM MICROSYSTEMS Ltd
Original Assignee
MOWLEM MICROSYSTEMS Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MOWLEM MICROSYSTEMS Ltd filed Critical MOWLEM MICROSYSTEMS Ltd
Publication of GB8427538D0 publication Critical patent/GB8427538D0/en
Publication of GB2153171A publication Critical patent/GB2153171A/en
Application granted granted Critical
Publication of GB2153171B publication Critical patent/GB2153171B/en
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/05Digital input using the sampling of an analogue quantity at regular intervals of time, input from a/d converter or output to d/a converter
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
    • G01D9/00Recording measured values
    • G01D9/005Solid-state data loggers

Abstract

Datalogging apparatus to be interposed between a plurality of sensors and a host device comprises analogue to digital converter means (13, 13a) having a plurality of sensor input channels (1-16) and means responsive to a channel identifier and gain and offset commands to output a digital reading of sensor input signals; a non-volatile memory (16, 16a); an interface (17) for remote communications with the host device; and a microprocessor controller (15) communicating with the analogue to digital converter means (13, 13a), the memory (16, 16a) and the interface (17) and arranged to respond to commands transmitted through the interface (17) for setting channel gain and/or offset, to store the gain and/or offset for each channel in memory; respond to test establishment commands transmitted through the interface (17) to reserve memory space for an array of readings in columns according to the channels allocated to the test and rows according to the number of readings to be taken in the test; respond to commands transmitted through the interface (17) to start the test and while the test is running read at intervals the several transducer channels according to their stored gains and offsets, and for each allocated channel store the reading in the memory space reserved for the test; and on commands transmitted through the interface (17) return the array of readings to the host device. <IMAGE>

Description

SPECIFICATION Improvements in or relating to datalogging apparatus This invention relates to datalogging apparatus.
A major problem in the automation of physical measurement with computers is the interfacing of measuring devices and developing a means for their monitoring.
The ADU (autonomous data acquisition unit) of this invention is designed to overcome these problems by combining the necessary hardware and software facilities in one unit. The ADU's facilities are especially flexible, but their operation is simple and user-friendly.
Potentially, the biggest problem in data acquisition is the production of software to control the recording of transducer readings. Often this is done using an application program in the host microcomputer requiring the knowledge of sophisticated real-time programming techniques and continually using an expensive computer 'on-line' to the interface. To overcome these problems, a a large range of data acquisition functions have been incorporated into the ADU. The application is drastically simplified: the ADU is responsible for all the transducer recording tasks and the host microcomputer merely specifies what these tasks are to be. The host can instantly retrieve captured data at any time. This allows the host to plot the test's progress as it happens.
Broadly stated the invention provides datalogging apparatus to be interposed between a plurality of sensors and a host device comprising: (a) analogue to digital converter means having a plurality of sensor input channels and means responsive to a channel identifier and gain and offset commands to output a digital reading of sensor input signals; (b) a non-volatile memory; (c) an interface for remote communications with a host device; and (d) a microprocessor controller communicating with the analogue to digital converter means, the memory and the interface and arranged to: (i) respond to commands transmitted through the interface for setting channel gain and/or offset to store the gain and/or offset for each channel in memory; (ii) respond to test establishment commands transmitted through the interface to receive memory space for an array of readings in columns according to the channels allocated to the test and rows according to the number of readings to be taken in the test; (iii) respond to commands transmitted through the interface to start the test and while the test is running read at intervals the several transducer channels according to their stored gains and offsets and for each allocated channel store the reading in the memory space reserved for the test; and (iv) on commands transmitted through the interface return the array of readings to the host device.
To interface to the 'real world', the ADU is compatible with a wide range of transducers. The unit may have the following features: a multiplicity of transducer inputs; full programmable signal conditioning; inputs compatible with a wide range of transducers; independent signal conditioning on each channel; high resolution converter (1 in 4096 resolution typically); programmable voltage offset to optimise resolution of readings; built-in transducer supply-no need for external power supplies.
The unit typically provides 8 channels and an optional 8-channel expansion module allows up to 16 channels to be connected.
The ADU typically incorporates 16 K bytes of solid-state memory for storing transducer readings. This allows storage of over 7500 individual readings. Solid-state memory is faster, cheaper and more reliable than discs, cassettes or cartridges. It allows readings to be checked instantaneously during recording and data is protected against mains failure by a lithium battery, retaining data for over 10 years.
An optional 16 K byte memory module can be plugged-in to extend the total capacity to over 1 5000 readings.
The ADU's internal microcomputer controls all of the facilities for the user. It provides the ADU with its means of communication: the IEEE-488 interface. The ADU is programmed to carry out data acquisition tasks from any host compatible microcomputer.
Transducers to be monitored are grouped in tests for which an area of the ADU's memory is allocated according to the kind of tests specified by the host. These tests can easily be thought of as laboratory test-sheets or proformas. As the test proceeds, the ADU automatically inserts transducer readings into the reserved memory space and these can be recalled whenever required. The intervals, between which readings are taken, are fully programmable. The intervals may be time--anything from seconds up to days or intervals of change in the reading of another transducer. In addition, the interval can be programmed to vary throughout the test.
Logarithmic and root-time scales for tests can be built-in.
The most powerful feature is the ADU's ability to run multiples of these tests simultaneously.
This allows all the transducer channels to be used effectively at any time. The ADU has onboard some 30 commands that can be programmed from the host computer. Great effort has gone into designing them to be easy to use and yet offer the flexibility necessary for application to a wide range of laboratory tests. The ADU checks all commands for errors and indicates when a programming error has occurred-it can even return an error message to the host computer to assist the programmer.
An embodiment of the invention will now be described by way of example only with reference to the accompanying drawings, in which: Figure 1 is a block diagram of an autonomous datalogging (ADU) unit according to the invention; Figure 2 is a block diagram of a microprocessor card forming part of the unit; Figure 3 is a map of the address space of the microprocessor on a microprocessor card forming part of the ADU, Figure 4 is a block diagram of an analogue to digital converter module; Figure 5 is a block diagram of an associated expansion module forming part of the ADU; Figure 6 is a block diagram of an optional process control interface; Figure 7 is a flowchart of a reset routine implemented by firmware on the microprocessor card; Figure 8 is a memory map;; Figures 9 to 11 are flowcharts of respectively interrupt, idle and interpret routines implemented by firmware on the microprocessor card; Figure 13 is a memory map indicating test memory allocation; and Figure 14 is a flowchart of a scan routine implemented by firmware on the microprocessor card.
In the drawings there is shown an automatic data acquisition and process control unit primarily, though not exclusively, intended for use in laboratory testing. The unit acts as an intelligent interface between sensors and control devices and a host computer, and once it has been programmed via an inbuilt communications port such as an IEEE-488 communications port it can continue to operate for extended periods without attention. As will be described more fully below, it includes a firmware operating system providing a comprehensive instruction set that allows numerous testing scanning and process control tasks to be run simultaneously without the user having to be aware of the software involved.It is envisaged that a practical version of the device will operate with 16K of memory and will provide 8 control and transducer channels, but that it will be expandible in modules to provide additional control or transducer channels and additional memory. Although a variety of interfaces could have been selected for communication with the host computer, the IEEE interface has been adopted because it allows a number of devices to be operated from a single host computer. The unit has the advantage that it requires no hardware modification to an existing microcomputer that acts as the host, and that instructions can be transmitted from the host computer and data can be received without any major modification to the host computer beyond the writing of simple application programmes in high level languages that are well within the skill of the average microcomputer user.
THE GENERAL ARRANGEMENT The general arrangement of the unit is shown in Fig. 1. The unit has a power supply 10 provided with a supply monitor and reset facility that communicates with a backplane incorporating a microprocessor bus 11 and a user bus 12. The unit is of modular construction in the sense that the several facilities are provided on individual cards that plug into the backplane.
Thus the user bus 12 passes signals from and to an analogue-digital converter module 13 which has channels for eight transducer inputs, and which can be expanded with a further eight transducer inputs by means of an expansion card 1 3a. Also on the user bus 12 there is an optional process control module which in this instance has a 12 volt dc supply, 6 relay outputs and two stepper motor outputs. The user bus 12 also communicates with a microprocessor card 15 which in turn communicates via the microprocessor bus 11 with memory cards 16 and 1 6a.
The card 15 also communicates via bus 11 with the process control card 14 when fitted, and via the IEEE-488 interface with a host computer.
THE MICROPROCESSOR CARD The main microprocessor card 15 is shown in more detail in Fig. 2. It handles communications with the host computer and controls the operation of the interface cards 13, 14 and the memory cards 16. It incorporates a 6502 8-bit microprocessor provided with a 1 MHz clock signal from a quartz crystal controlled clock 21. The clock signal is buffered and passed to the system of control lines, an 8-bit data bus 22 being buffered through bi-directional buffer 23 and a 16 bit address bus 24 which can address 64K bytes of memory is buffered through a pair of 8-bit buffers. A control bus 19 is also provided. The card is provided with a decoder 26 (type 74 LS 138) that divides the uppermost 32K bytes of address space into 8 4K byte blocks.The top 16K bytes of address space $COOO-$FFFF are allocated to the operating system which is held in 4 4K byte ROM chips 27-30 respectively addressed from SC000 $D0OO, SE000 and so000 (see Fig. 3). The remaining four decode lines are respectively used to provide control lines to the user bus (31; $8000), to the IEEE-488 interface and to an edge connector. A versatile interface adaptor 35 (type 6522) offers input and output facilities for the microproces sor 20 to enable the microprocessor 20 to communicate with other systems within the unit.It provides the 8-bit parallel user bus 12 of data lines PA O to PA 7 and handshake lines CA1 and CA2, control lines 36-38 for status LED's 39-41 at the front of the unit, and a number of free unused input/output lines that are passed to the card's edge connector. The LED's include a red error LED 39 that alerts the user when an error condition has arisen, a green scan LED 40 that flashes while the card 15 is communicating with the interface cards 13, 14 and a power LED 41 that is illuminated when there has been a power failure. The adaptor 35 incorporates a timer programmed to generate interrupts at 20 millisecond intervals to provide clock signals within the unit. The microprocessor 20 can select the adaptor 35 using the $8000 select line from the decoder 26 and accesses its internal registers using the address bus 24 and data bus 22.Using the select line $9000 from the decoder 26 the microprocessor 20 can select a dedicated interface device 42 connected to the interface 17 through octal buffers 43, 44. An 8-way address switch 45 can be read by device 42 through buffer 46. Switches 1 to 4 of the switch 45 can be used to set the address number of the unit (i.e. the number used by the host computer to reference the device) and switches 6-8 can be used to select internal diagnostic options described below. The microprocessor 20 configures the interface device 42 to respond to various commands sent over the IEEE-488 interface 17 by the host computer, and when a valid device address has been recognised the interface device 42 interrupts the microprocessor 20 which then either receives data from the host or sends data to it.Various registers within the unit can be selected through the microprocessor's address bus 24 and data passed to and from it along the data bus 22.
THE MEMORY CARDS For the microprocessor card 15 to operate, there must be some memory present, and this is provided by a memory card 16 and an optional expansion card 16a that are of the same design and are each provided with eight 2K byte CMOS RAM chips controlled by a bank switch to reside in either the $0000-$3FFF or $4000-$7FFF space of the microprocessor. The cards 16, 16a connect to the backplane through edge connectors so as to take the address 24, data 22 and control 19 bus from the microprocessor 20, and can operate in a working or power-up state and an idle (power-down) state in which minimal current is drawn from a back-up battery to retain all data uncorrupted. The practical implementation of such non-volatile memory is well known in the art.
THE ANALOGUE TO DIGITAL CONVERTER CARDS The analogue-to-digital converter (ADC) module 13 accepts transducer signals and converts the anlogue inputs into digital readings. It has programmable signal conditioning to allow a wide range of transducers to be connected and is operated internally by the unit's microcomputer. It can accept 8 analogue inputs and each transducer socket is supplied with a 10 volts energising supply which is temperature-compensated. Maximum total supply current capacity is approxi mately 0.5 amps. Full-scale inputs may be between + / - 1 OmV to + / - 5V and amplifier gain is set accordingly. A voltage offset may be applied to each input. The analogue to digital converter has 12-bit accuracy, i.e. 1 part in 4096. Conversion time is approximately 25 msecs.
The following features are programmable: a) Channel number 1 to 8; b) Channel gain xl, x2, x4. . . x512 (corresponding to + / - 5V, + / - 2.5V, + / - ....... + / - /~1 OmV inputs with central offset applied); c) Input voltage offset: this is applied prior to amplification and is programmable over a range O to 4095 with 1 bit accuracy corresponding to a range of 5.3 volts. An offset value of 2048 puts the input to the converter at the middle of its range; d) An audible warning device can be turned on for approximately 4 seconds from this module.
The unit can operate with just the 8-channel ADC module 13 but, if desired, the expansion module 13a plugs into a vacant slot on the backplane. The operating software automatically recognises the additional channels 9 to 16. The transducer 10 volt dc energising voltage is also supplied to the transducer sockets of the expansion unit 13a. All features available for channels 1 to 8, such as amplifier gain and voltage offsets, are automatically available for the expansion channels 9 to 16.
The 8 channel ADC module 13 is shown in more detail in Fig. 4. The main element of this module is a composite data acquisition device 50 (Burr Brown type SDM 856) which contains an 8 channel analogue multiplexer, sample-and-hold amplifier, and 12 BIT successive approximation ADC and data output latches. The 8 BIT user bus 12 selects various functions within the ADC module. This bus is divided into a 4 BIT address bus and a 4 BIT data bus. The microprocessor card 15 places the appropriate 8 BIT code on the user bus and this is latched onto the ADC module 13 with the CA2 handshake line. The reply is acknowledged via handshake line CAl to the microprocessor card 15.The 4 address BITS PA4 to PA7 are latched into a 4 to 1 6 user bus address decoder 51 (type 4514BVC). 8 of the 16 outputs from decoder 51 address various elements within the ADC module 13. To select a particular transducer channel, the binary code representing the required channel number is placed on the 4 BIT data bus (PAO to PA3) and the address code 3 on the 4 BIT address bus (PA4 to PA7) loads the channel into the data acquisition device 50. The selected analogue signal appears at mux.
output. The channel select address is also passed to the 8 channel expansion module 13a (Fig.
5) so that, if channels 9 to 16 are selected, mux. output is disabled and the analogue input from the expansion module is measured instead.
The differential transducer signal is passed to a differential amplifier 52 (type LH0037CG). A 12 BIT digital-to-analogue converter 53 (type DAC1280) provides a programmable voltage offset. VOu, from this device can effectively be set between - 2.5 volts and + 2.5 volts (approx) in 1.3 millivolt steps. The 12 BIT code to set the offset voltage is latched onto converter 53 by 3 successive handshakes on the user-bus 12. The low, mid and high nibbles (4 bits) are latched by a set of three 4-way latches 55 from data BITS PAO to PA3 and the 3 latching signals are provided from output lines 1, 2 and 7 of the 4 to 16 decoder 51.The single-ended output from the differential amplifier 52 is passed to a programmable gain amplifier 56 which comprises an operational amplifier (type LF351) whose gain is set by feedback resistors in a 10 BIT digital-toanalogue converter 57 (type DAC1020). To select a gain, only 1 of the 10 digital inputs is activated giving the exponential range of gains of from 1 to 512. The gain number is selected from the outputs 2 to 11 of the 4 to 16 user bus data decoder 58 and latched onto converter 57 with output 0 from the user bus address decoder 51. The conditioned transducer signal is passed to the sample-and-hold (S/H) input of the data acquisition device 50.
The 12 bit output signal from the analogue-to-digital converter 50 is divided into 3 4 BIT nibbles. These are latched onto the data bus by 3 address lines selected by PA4 to PA7 on the user bus 12. Address line 4 triggers the conversion. The completion of the conversion is indicated with the BUSY line CA1. The microprocessor card 15 requests the 4 nibbles of data with 3 successive handshakes.
A transducer energising supply 60 is provided by a power regulator system 59 that is integral to the 8 channel ADC module 13. Unregulated power 61 is taken from the edge connector, regulated and passed at 60 to the transducer connections on the ADU front panel. The reference voltage Vref for the regulator 50 is the same reference from which the 12 BIT ADC unit 50 makes a conversion which reduces the effect of temperature fluctuations on the digital reading returned.
In operation, the 8-BIT User bus 12 selects which of 8 channels is to be read. Using a multiplexer that is located within the data acquisition device 50, the multiplexed output is passed to differential amplifier 52. A voltage offset is programmed with digital to analogue converter 53 and the resulting analogue output passed to the programmable gain amplifier 56.
Suitable amplification is applied to the analogue signal and the output returned to the data acquisition device 50. The analogue signal is sampled and then converted by a 12 BIT ADC to a digital value. The digital reading is returned to the microprocessor card 15 along the user bus 12.
The ADC module is provided with a timer device 62 (type 4528B) that can be activated from the user bus 12 via decoder 58 and triggers a horn output, which turns the warning horn on for about 4 seconds.
The optional expansion module is shown in Fig. 5 and provides in Fig. 5 a means of selecting a further 8 analogue channels in addition to the basic 8 provided by the 8 channel ADC module. The expansion module consists of an 8 channel differential input analogue multiplexer 65 (type 6216). The 4 channel select lines from the 8 channel ADC module 50 (see Fig. 4) select channels 9 to 16. The chosen analogue signal is passed as an input to the differential amplifier 50 of the ADC module 13. The transducer inputs on the front panel are suppled with energising voltage 60 from the regulator 59 of the main ADC module.
THE PROCESS CONTROL MODULE The optional process control module 14 provides an intelligent stepper-motor controller with 12 volt switching outputs to drive the coils of one or two stepper motors, and is intended to be used with a 12 volt power supply and relay unit for various devices such as valves that can be relay operated. The module 14 includes a type 6502 microprocessor 70 that communicates with the card 15 through the ADU buses 11, 12 and provides control and data signals to a pair of VIA type 6522 interface adaptors 71, 72 that transmit switching signals to and from an external unit under software control. Clock and reset signals for the microprocessor 70 are taken from the bus 11 at the backplane of the ADU. A local operating system for the process control interface is stored in a 4K byte ROM 73 and a read/write memory 74 offers data storage for the microprocessor 70.The address space accessed by the microprocessor 70 is controlled by means of a decoder 75 that divides the available upper 32K bytes of address space into 4K byte blocks and the output lines of decoder 75 serve to select the RAM 74, ROM 73 and adaptors 71, 72. The user bus 12 enables commands and data to be passed from the microprocessor card 15 to the process control interface 14, the CA2 line serving to indicate the availability of a new byte on the bus 12 and the ICA1 line serving to indicate the response of the interface 14.
The bus 12 is gated through the ADC module 13 thereby enabling both the ADC module 13 and the process control interface 14 to share the user bus 12 for communication.
The switching outputs are buffered through 7-way type 2003 Darlington drivers 76 two of which provide outputs for stepping motors of the four-phase type capable of at least 125 steps/second. Each motor has on its shaft high and low limit switches to inform the controller if defined limits of travel have been reached, after which rotation is to be restricted. The limit switches for each motor occupy two inputs 79 to a Schmidt buffer 80 that communicates with adaptor 72 and the spare pair of inputs 79 allows connection of a shutdown or 'panic' button by which the user can arrest operation of the respective motor without control from the microprocessor card 15. Two of the drivers 76 drive the motors through 4-phase motor coil outputs 77 and there are outputs 78 for direction indicator LED's that are illuminated depending on the direction of rotation of the motor.Each stepper motor may typically be a Watson-Smith pneumatic regulator and the operating system may be provided with additional commands to allow the unit to control the pressures to be applied to a testing apparatus. The output pressure may be monitored by a pressure transducer connected to the analogue to digital converter module 13 or 13a to provide a closed loop control system that is self adapted and does not require stepper motor regulator calibration or user-supplied control algorithms. Two pressure lines can be controlled simultaneously and the unit can regulate pressures independently of the host computer. The third Darlington driver 76 provides outputs 77a for six mains relays energised by the 12 volt power supply which may be programmed independently and may be used to operate up to 6 ON/OFF devices such as solenoid valves.
OPERATION OF THE UNIT The minimum configuration of: a) Main microprocessor card 15; b) Memory card 16; c) ADC module 13; together with the "ADOS" operating system in the ROM's 27-30 enable the unit to act as an intelligent, programmable data acquisition device.
The IEEE-488 interface 17 has been chosen for the following reasons: a) it is a widely accepted instrumentation bus for laboratory microsystems; b) it allows the use of intelligent command structure; c) there is only one version and does not have to be set-up by the user; d) fast transmission rates are possible; e) many IEEE devices can be operated from one host, each device having its own address number; f) many popular microcomputers provide such an interface: all the CBM range, all the HP range, Osborne, Tektronix, Fluke, Sirius, Apple (with suitable Card), and IBM PC.
The unit implements the "Listen" and "Talk" functions of the IEEE-488 interface. The device number of the ADU can be selected by four of the switches 45 mounted on the microprocessor card 15.
The ADOS operating system has an instruction set of 30 commands set out herein in Appendix A. The host passes a series of characters to a particular unit and the unit identifies to which command they refer and then performs the corresponding operation. Each command has a syntax relevant to the action that it performs, e.g. the "CALL" command is used to call up the current reading from a particular transducer channel (e.g. the command "CALL 1" requests the current reading in BITS on channel 1). The parameters following the command word are all checked by an interpreter and any errors or inconsistencies are identified and the programmer is alerted. These features are desirable in making the unit a "user friendly" interface.
For programmers who have written an application program but require greater speed, then shortened forms of the command words can be used instead.
As previously mentioned the memory in each unit is protected by batteries and the unit incorporates a number of features to preserve the integrity of the data held. On power-up, the microprocessor 20 waits approximately 1 second for all systems to become stable and then tests the memory 16 to determine if it is holding any test data. If the memory 16 has not been used before, then the microprocessor 20 clears it totally and turns off all LEDs on the front panel of the main microprocessor card 15. If the memory has been used previously, then the POWER LED 41 (orange) is turned on and the system put into an idle state. Should mains power have failed during the night, say, then the operator can see this from the POWER LED 41 even though mains power may have since come back on again.The break in the mains does stop all test-scanning processes since an unknown amount of time may have elapsed without power.
Furthermore, the unit will not allow any more tests to be started until the operator has retrieved previous data from the memory and then reset the system totally. There is a special command, the "RESET" command, that performs this. In the highly-unlikely event that the memory contents become so badly corrupted that the unit does not work, then there is a switch on the memory card that allows this to be done manually. The host can at any time determine whether the unit has experienced a power-failure. When power returns, the unit waits in an idle state and no further testing can be done with it until all test results have been retrieved (if required) and the unit reset. Mains power is essential for the monitoring of the test and preservation of previous data is given the priority.
From power-up the unit maintains a perpetual clock and calendar. The clock is a 24 hour-hour/mins/secs clock and, when midnight is detected, the date is incremented. The calendar allows for the days in the corresponding month and allows for leap-years. The time and date can be set to the current values using TIME and DATE commands. These check that the values required are valid. The current time and date can thereafter be requested with the TODAY command. The ADU returns a string of 40 characters to the host microcomputer of the form: HH-MM-SS DD/MM/YR This is intended to be displayed at the top of the host computer's screen. The middle 24 blank spaces are reserved for the ADU to automatically display error messages or conditions that might arise during the scanning of tests or process control.
In operation of the unit, the operator does not have to understand the operation of voltage offsets, conversion times, handshaking, data-transfer, etc., as this is all managed by the unit with its high-level commands.
If a particular channel is to be used to take readings from a transducer connected to it, then a SET command is used, a typical command being in the form: "SET CH GA IV" in which: CH = Channel No. 1 to 16 GA = Gain required for transducer 1 to 10 IV = Initial value.
Once this command is executed, channel CH is read and the reading is stored in BITS in memory 16. This reading is updated or refreshed once a second. The channel is said to be "active". All active channels are scanned once a second, and any number of channels may be active.
The SCAN LED 40 (green) is flashed whenever there is interface activity within the unit. The programmer uses a CALL command to get the current reading on a particular channel. The channel's gain, offset, location of reading, etc., do not have to be specified, as all of these interface functions are managed by the ADC card 13 and card 15.
When a channel is scanned, the microprocessor card 1 5 takes 24 readings and filters-out fluctuations by the use of trimmed-means. This takes approximately 20 milliseconds per channel. Due to minor fluctuations in the sample of 24 readings, the current value is given to the nearest quarter-bit. The programmable voltage offset 53 on the ADC card 13 enables the resolution of the conversion to be extended. It enables a 1 part in 16384 resolution to be achieved equivalent to that of a 14 bit analogue to digital converter, from a 12 bit device. The use of a microcomputer 15 and the ADOS operating system enables the hardware features of the ADC modules 1 3, 1 3a to be greatly enhanced, and these operations are totally transparent to the user.
Should the microprocessor card 15 identify an error condition arising with an interface or a transducer during the scanning, then the ERROR LED (red) light 39 illuminates and a warning message is returned with the clock and calendar message. These indicators are both cleared when the error conditions are removed.
A significant new feature of ADOS operating system is multiple test scanning capability. A test is defined as a group of transducer channels (and elapsed time may be considered a channel) for which readings are to be gathered and stored in memory and referred to by a test number. A group of readings are specified to be taken at intervals of time, intervals of change in a transducer reading or when prompted by the operator. Any number of these tests may be run simultaneously and without supervision from the host. New tests may be started while others are running and data may be recalled from previous tests or cleared without affecting the running of others. If readings are to be taken at logarithmic or root-time or British Standard time intervals, then these are pre-programmed in the EPROMs 27-30 on the microprocessor card and need not be specified.Test readings can be taken at intervals varying between 1 second and 22 days, or the intervals between individual readings can be specified. Furthermore the intervals between readings may be pre-programmed to vary throughout the duration of a test.
The ADOS operating system includes ALLOT and RATE commands which are used to specify these tests and, in addition, there are commands to start, stop and clear them.
The RECALL command can be used to retrieve readings from previous tests and tests which are still running. This command can also be used to recall elapsed times or current readings of a transducer channel. Times are returned in HH-MM-SS format. The start time and start data of any test is recorded and these can also be requested, as well as the time and date at which the next reading is due. All commands are thoroughly checked by the ADOS operating system to ensure no syntax errors are made. These are the most significant functions available in the ADU.
They allow the programmer to use the interface to carry out multiple, sophisticated scanning tasks which are either difficult or impracticable to achieve using the host microcomputer. The operator does not have to understand the software techniques that ADOS involves as these are totally transparent. Nor does the operator need to known about the layout of test readings in memory.
To allow the operator to determine the current state of any ADU, e.g. if there are any tests in memory, there are a number of status commands. STATUS is used to report on the presence of test data, to find what its state is: allotted, running, ended, and the number of readings taken.
BYTES is used to request the amount of memory available for test readings to occupy. Should a programming error occur such as a syntax error in a command, then ADOS will normally be able to identify this and alert the user. The internal horn will sound and the (red) ERROR LED comes on. The ERROR command will actually return a written description of the nature of the error.
Once interrogated, the error channel is cleared. The LED 39 allows indication of errors remotely from the host microcomputer.
A user may wish to store information in connection with a test, such as transducer constants, test descriptions, or other data. The commands: WRITE and READ allow any data to be stored and retrieved from the ADU's memory. Up to 255 items of data may be stored.
The operating system also provides facilities for experienced computer engineers to use. 6502 machine code software can be down-loaded from host to ADU and from ADU to host. The IEEE488 software can LOAD and SAVE programs using the same format available in CBM microcomputers. RUN and JUMP commands can be executed to run machine code in an ADU, and it is also possible to put an entire new operating system into RAM. The software can be "booted" by selecting a switch on the main microprocessor card.
A diagnostics system is also provided to identify whether a particular ADU is faulty and, if so, to indicate which module is at fault. It can be implemented without the use of the host computer and requires no additional hardware or diagnostics programs. It is very simple for the user to operate and the diagnosis takes less than one minute to carry out. No transducers should be connected. The suspect ADU is disconnected from the host. The unit is turned off and 3 of the switches 45 on the microprocessor card 15 can be selected on the microprocessor card: one to select the diagnostics, one to select if 16K or 32K bytes of memory is in use and one to select if the process control option 14 is present. When the device is turned on the ADU checks the internal systems in the following order: 1. Tests that some working memory is available.
2. Checks all EPROMs are present and correct.
3. Tests that the ADC module 13 is present.
4. Checks that the gains and offsets are operating to specification.
5. Tests that the PCI module 14 is responding to commands.
6. Tests that all the indicated memory is working.
Checks 5 and 6 are only performed if indicated by the diagnostics-select switches. If a fault is detected at any stage from 1 to 6, the testing stops and LEDs 39-41 are flashed to indicate which unit is faulty. If all systems are OK then the ADU may be turned off and back on. The second diagnostics-run tests that the data retention is functional and that there have been no corruptions of the memory's contents.
THE OPERATING SYSTEM FIRMWARE The operating system for the unit stored in ROM on the microprocessor card 15 has the functions of maintaining communications with the host computer, and of interpreting commands from the host computer forming part of the ADOS instruction set. The commands perform two fundamental operations which are: a) to pass commands and data to and from memory 16, 16a, the ADC modules 13, 13a and the process control interface 14 when fitted, and b) to define tasks that acquire ADC readings in real time.
A complete reference of all ADU commands is given in Appendix A. The ADU commands may be grouped in the following classes: ADU initialisation: These commands prepare the ADU for normal use and must be executed before tests are run.
RESET - totally reset ADU and clear memory contents TIME - set the clock to the current time DATE - set the calendar to the current date SET - initialise a channel for any, slow moving input SETP - initialise a channel for which increasing input is expected SETN - initialise a channel for which decreasing input is expected.
Current channel value: These commands request the current reading of the clock or transducer channels TODAY - request current time and date CALL - request current transducer channel reading Data acquisition-test specification: These specify the type of tests that are to be recorded automatically by the ADU. they do not activate the test: ALLOT - allocate memory to the tests according to requirements RATE - specify the intervals between which readings are taken RETIME - examine the built-in log and root time bases.
Data acquisition-test activation: These commands cause channel readings to be taken and stored in the memory space reserved for the particular test: START - causes the requested test to begin taking readings automatically MANUAL - captures test readings, on demand.
Data acquisition-test progress: STATUS - requests number of readings taken and status of a given test.
Data acquisition~retrieval of test data: These are used to obtain information from running or finished tests: RECALL - request captured or current channel reading from a given test STIME - request a test's start time SDATE - request a test's start date NTIME - request the time at which the next reading is due to be taken NDATE - request the date on which the next reading is due to be taken.
Data acquisition-test termination: FINISH - stops any more readings being taken on a given test CLEAR - removes a given test from memory.
ADU status: ERROR - requests details of any programming error BYTES - requests the number of bytes of memory available General data storage: WRITE - store data (in ASCII format) in ADU's memory READ - retrieve previously stored data Direct ADC module communication: These allow the user to command the ADC module directly, for channel reading or to sound the warning tone.
AD - request a direct analogue-to-digital reading of a given channel BELL - sound the internal warning tone.
In addition to defining the instruction set, the operating system firmware provides a number of routines that are: 1. RESET - Reset all ADU functions and go to IDLE state.
- If selected, perform diagnosis - If memory holds data, go to IDLE state.
2. INTERRUPT - Receive a command from the host computer.
- Return data to the host computer.
- Increment the ADU's clock and calendar.
3. IDLE - Wait for a command to INTERPRET.
- - Wait for a SCAN task to execute (one second intervals).
4. INTERPRET - Identify an ADOS command.
- Communicate with ADU modules.
- Communicate with SCAN tasks.
5. SCAN - Acquire ADC readings for tests.
The rest routine is automatically initiated whenever the power supply is switched on, the microprocessor reset line 80 (Fig. 2) being low for about 1/7 second and then going high. In Fig. 7 when the unit enters the reset routine it tests at 90 whether the switches 45 have been set to call for a diagnostics routine and if so performs the routine called for 91 and then halts 92.If not, it checks at 93 for the presence of data in memory 16, 16a and if it finds such data it enters a power down reset subroutine in which: a) a power down flag 94 is set to disable the scan routine; b) at 95 interrupt vectors are set in memory and IEEE-488 memory buffers on the main memory card are cleared; c) at 96 the interface adaptor 35 on the microprocessor card is initialised thereby clearing at 97 the error LED 39 and putting the power LED 41 on; d) the IEEE-488 interface device 42 is initialised at step 98 by reading the address switch 45 on the microprocessor card to set the ADU's device number and setting the IEEE-488 interface 42 in its ready-for-data state in which it interrupts the microprocessor 20 when it receives a valid address from the host computer and clears the buffers' memories;; e) the clock/timer 35 is reset at 99 to produce interrupts at 20,000 cycles of clock 21 i.e. at 20 millisecond intervals and the interrupt flag is cleared; and f) at step 100 the ADU goes to its idle state.
The ADU is now in a power-down mode in which data may be recalled from it but tests may not be restarted.
If the microprocessor 20 recognises that there is no data in memory, it branches at step 93 to a total reset subroutine where it: a) clears all memory at 101 by setting all memory locations to 0 and restoring the pointer at the top of the memory; b) at 102 sets the pointers in memory 16, 16a that indicate the start of test data and records, puts the elapsed day and time counters to zero and puts the real time to midnight at the beginning of the year, setting interrupt vectors so that if the microprocessor 20 receives an interrupt on the IRQ line of its control bus it will jump to this location and start to execute the code held in memory and in completion will return control to the activity that was in progress before the interrupt. It also disables the scan routine (Fig. 14).
c) the interfac#e adaptor 35 is initialised at 103, allowing communication along user bus 11 and activating the LED's 47, after which a power-up message and serial number are placed in the TALK buffer; and d) the error LED 39 is cleared to indicate a successful reset after which steps 98-100 described above are executed.
The microprocessor 20 will now be ready to service interrupts from the clock timer and from the host computer when commands are to be sent to the ADU which is in a RESET or power-up mode so that tests can be started.
The RESET routine defines the RAM storage areas of memory cards 16, 16a into sections relating to system storage and data storage, the system storage holding house-keeping information, temporary storage and buffers and the data storage holding user's records and test data as shown in Fig. 8.
Fig. 9 relates to the interrupt routine stored in firmware that responds to the IEEE-488 interface 17, 42 and the clock-timer device 35. When the microprocessor 20 receives an interrupt it suspends the current program and transfers control to an interrupt routine 110 which identifies the source from which the request for service came, carries out the appropriate action and returns control to the current program. It tests at 111 for a clock interrupt from the timer 35 that indicates elapse of a 20 millisecond period and if present increments at 112, 113 the clock or calender and sets the scan flag at 114.If the microprocessor 20 receives an IEEE-488 interrupt at 115 it will as appropriate branch at 116 to a listen subroutine where it receives 117 a command from the host computer into a memory buffer and sets 118 a "not ready for data" flag at the interface 17 or to a talk subroutine 11 9 where it transmits the contents of a talk buffer to the interface 17.
Fig. 10 shows the idle routine of the operating system which is a loop in which the program waits. The microprocessor interrupts are enabled so that the clock and calendar will be incremented and data can be sent and received via the IEEE-488 interface 17. The IDLE loop waits for a command to INTERPRET. When the INTERRUPT routine receives a command it sets a flag to indicate that the command has arrived. The IDLE routine will detect this 121 and go to the INTERPRET routine (Fig. 11). Once the command has been INTERPRETED 123, control returns to the IDLE loop, the memory buffer is cleared 124, the command-ready flag is cleared and the Ready-For-Data line on the IEEE-488 interface 17 is released 125 to allow transactions to occur.This control of the IEEE-488 interface 17 prevents the host computer requesting a reply until the command is interpreted and appropriate data has been prepared by the ADU. The IDLE loop waits for a SCAN task to execute. The SCAN flag is set at 1 second intervals by the clock interrupt 114, and when this is detected 120 by the IDLE loop the program transfers 126 to the SCAN routine. The SCAN routine takes periodic readings from the ADC module 13, 13a and stores them in memory 16, 16a. The SCAN routine will pass control information to the process control interface 14. Finally, the SCAN routine clears the SCAN flag and returns to the IDLE loop.
Once the IDLE loop has identified a command to be ready in the LISTEN buffer, it transfers control to the INTERPRET routine as shown in Fig. 11. The information that can be accepted by this routine is a command word forming part of the instruction set followed by parameters (if any) relating to that command. The INTERPRET routine determines 130 which command has been sent from the host computer, reads 131 the command parameters and then jumps to the relevant routine to analyse the associated parameters and perform the required action 1 32. If the command is a request for data, this is put 132 into the TALK buffer. Once complete, the INTERPRET routine returns to the IDLE loop.
The scan routine of Fig.14 is accessed at 126 from the IDLE loop at appropriate intervals, typically once every second. Its purpose is to scan the sensor channels connected to ADC module 13 or 13a, and update test data for running tests that are resident in the memory 16 or 16a. For each channel the gain that has been set is recalled from memory at 140 and tested for positive value at 141. If the gain is non-zero the ADC module 13 is fed with the channel number via lines PA4-PA7 of the user bus 12 and the offset voltage applied by digital to analogue converter 53 and the gain of amplifier 56 is set using lines PAO-PA3 of the user bus so that the gain and offset voltage proper to that channel are applied within the ADC module.
For the currently active channel the microprocessor card has a zero page memory 145 that contains a pointer to the top of the available memory. Above the pointer, regions of memory 146a, 146b, ....... in the cards 16 or 16a are allocated to the several tests that the unit may have been instructed to perform. Each memory area is in turn further divided into a header 147 and a set of columns 148(1)-148(n) in which are to be stored the readings recored for the active transducer input channels. The header 147 contains at a first location 149 the test number that identifies the test and at a second location 150 the number of bytes allocated to that test. Adding the number of bytes defined at 150 to the pointer which is at the start of one test 146a will locate the pointer at the start of the next test 146b. In this way the n tests 146a-146n are linked together.
The scan routine successively inspects and as appropriate updates the several tests that the unit is running. At step 151 it locates the next test 146a-146n and inspects at 153 test status location 152 in the header 147 to determine whether the test is running or has been completed. If the test 153 is running it inspects location 154 defining test type (see the ALLOT command in Appendix A) and if, for example, the test is time based, it decides 155 whether or not the "next due at" time stored at 156 is at least equal to the real time and if so proceeds to update the test. If the test is based not on time but on readings of a particular transducer channel the unit compares at 155 the target and the current reading for the control channel.
The firmware causes 24 readings to be taken and stored in order in work memory. The four highest and the four lowest readings are rejected and the 16 remaining readings are averaged to give a current channel reading.
The ADU then proceeds to a storage routine where it decides whether the current readings should be stored in the memory pertaining to the or each test and if so proceeds to write the data into the proper area of memory that has been reserved by the ALLOT command. The scheme of test memory allocation is shown in Fig. 13 and comprises current readings for that channel. No action is taken in respect of a manual test (Appendix A). To update the test the SCAN routine reads the channels/column information stored in location 157 of header 147 and places the current readings in a row identified by the contents of "number of readings taken" location 158 as identified in Fig. 14 by step 159. If elapsed time is to be recorded as a channel this is determined by subtracting start time from real time. On completion of step 159 the contents of the number taken location 158 are incremented 160.When the next test is due the routine reads the test type location 154 and if it is a time-based test calculates 161 from the relevant build-in table of test times the real time at which the next reading is due. Otherwise it calculates at 161 the interval at which the test is due from the first column of test readings and adds it to the contents of the "next due at" location 156. In either case the new result is stored in location 156 to give a time or channel reading at which the next set of readings is to be taken. The routine then compares the contents of "number taken" location 158 with the contents of a "number in test" location 163 and if these are found to be equal sets the test status 152 to indicate that the test is complete.The cycle is repeated until all the tests 146a-146n have been updated and test number 255 (top of memory) has been reached after which the routine branches at 162, clears the scan flag 164 and returns to the idle routine.
APPENDIX A-ADOS Instruction Set (1) RESET CLASS ADU INITIALISATION ACTION Clears all data from memory 16, 16a, initialises internal devices and resets clock and calendar to default time and date. POWER LED 41 is cleared.
CONDITIONS May be executed at any time during ADU operation.
COMMAND SYNTAX "RESET" PARAMETERS NONE DATA RETURNED Power up message: ADOS1.1 DDMMYY (C)ELE" ERRORS REPORTED NONE (2) TIME CLASS ADU INITIALISATION ACTION Sets the clock to the current time.
CONDITIONS May be executed at any time, but not while tests are in progress.
TIME is used to set the current time immediately following a RESET.
COMMAND SYNTAX "TIME";HH;MM;SS PARAMETERS HH = hours of 24-hour clock : HH = O to 23 MM = minutes . MM = O to 59 SS = seconds : SS = 0 to 59 DATA RETURNED NONE ERROR REPORTED "INVALID TIME" if a given parameter is too large.
(3) DATE CLASS ADU INITIALISATION ACTION Sets the calendar to the current date.
CONDITIONS May be executed at any time, but not while tests are in progress.
DATE is used to set the current date immediately following a RESET.
COMMAND SYNTAX "DATE";DD;MM;YY PARAMETERS DD = day number of month : DD = 1 to maximum number of days in month.
MM = number of month : MM = 1 to 12.
YY = year . YY = 83 to 99.
DATA RETURNED NONE ERRORS REPORTED "INVALID DATE" if a given parameter lies outside the specified range. DATE checks for leap years. An error returns the calendar to the default date.
(4) SET CLASS ADU INITIALISATION ACTION Initialises scanning of a given channel, at a given amplifier gain and initial value. The ADC module 13 applies an offset voltage to bring the input to the middle of the converter's range.
SET assumes that the output of the transducer may rise or fall about its SET value. The channel is automatically scanned with the programmed signal conditioning once each second. Up to 16 channels may be simultaneously active. When ADC reading gets within 512 BITS of its limits, the microprocessor card 15 automatically adjusts the offset to recentre the channel. A zero-page memory (housekeeping storage area) contains a table of locations that are initialised by the SET command. These refer to the GAIN, OFFSET, INITIAL VALUE and CURRENT READING for the ADC module 13. Initially, the entry for GAIN is zero to show it is inactive. The SET command will initialise the requested channel at a certain gain and initial value, which values are stored in the current channel readings table.The presence of a non-zero gain indicates to the SCAN routine (described below) to read the channel at that gain and offset value and to store the reading returned from the ADC module 13 in the CURRENT READING location for that channel as shown in Fig. 12.
CONDITIONS May not be used in the idle state (the POWER LED is on). The ADU must be RESET first. The transducer output must not vary at rates faster than 512 bits/sec. It is inadvisable to use the command SET on a channel involved in a test which is running.
COMMAND SYNTAX ''SET'';CH;GA;IV PARAMETERS CH = CHANNEL NO. CH = 1 to 16 GA = GAIN required for transducer in channel CH GA = 1 Input Range = + / - 5V full scale approx.
GA = 2 Input Range = + / - 2.5V full scale approx.
GA = 3 Input Range = + / - 1 .25V full scale approx.
GA = 10 Input Range = + / - 1 0mV full scale approx.
IV = INITIAL BIT READING . IV = -4095 to + 4095 If GA = 0, CHANNEL CH is deactivated.
DATA RETURNED NONE ERRORS REPORTED "MUST DO A RESET FIRST'' attempt to use SET while ADU is still in a power-down state.
"INVALID CHANNEL"---channel number outside specified limits.
"INVALID GAIN"---gain number outside specified limits.
"INTERFACE FALJLT"-the microprocessor card 15 gets no response from ADC module 13.
"OVERRANGE CHANNEL' '-transducer output is too large or not stable when SET. IV is too far outside specified limit.
(5) SETP CLASS ADU INITIALISATION ACTION Identical to SET except for the following differences. SETP assumes that the transducer output is at its lowest and will increase as the physical setting changes. SETP initialises the transducer with an offset voltage that puts the input at the low-end of the converter's range. The microprocessor card 15 will not adjust the offset during the scanning process.
CONDITIONS Identical to SET except there are not restrictions on the rate of change of the transducer's output.
COMMAND SYNTAX "SETP";CH;GA;lV PARAMETERS CH = CHANNEL NO. CH = 1 to 16 GA = GAIN GA = 1 to 10 GA = 0 deactivates channel CH IV = INITIAL BIT READING IV = - 4095 to + 4095 DATA RETURNED NONE ERRORS REPORTED Identical to those with SET.
(6) SETN CLASS ADU INITIALISATION ACTION Identical to SET except for the following differences. SETN assumes that the transducer output is at its highest and will decrease as the physical setting changes. SETP initialises the transducer with an offset voltage that puts the input at the top-end of the converter's range. The microprocessor will not adjust the offset during the scanning process.
CONDITIONS Identical to SET except there are no restrictions on the rate of change of the transducer's output.
COMMAND SYNTAX "SETN";CH;GA;IV PARAMETERS CH = CHANNEL NO. CH = 1 to 16 GA= GAIN GA= 1 to 10 GA = 0 deactivates channel CH IV = INITIAL BIT READING IV = - 4095 to + 4095 DATA RETURNED NONE ERRORS REPORTED Identical to those with SET.
(7) TODAY CLASS CURRENT CHANNEL VALUE ACTION Requests the current time and date from the ADU.
CONDITIONS May be used at any time.
COMMAND SYNTAX ''TODAY' ' PARAMETERS NONE DATA RETURNED A string of 38 characters containing the time, date and any scan-error message at the instant the TODAY command was executed.
"HH-MM-SS DD/MM/YY" TIME ERROR MESSAGE DATE The error space will hold: "HH-MM-SS OVERRANGE CHANNEL CH DD/MM/YY" if the scanning routine discovers that the transducer reading on channel CH is at the limit of the ADC range (0 or 4095 BITS) or "HH-MM-SS INTERFACE FAULT DD/MM/YY'' if the ADC module develops a fault during operation. Either fault turns the ERROR LED on.
ERRORS REPORTED NONE (8) CALL CLASS CURRENT CHANNEL VALUE ACTION Requests the current BIT-reading from an active channel on the ADC module.
CONDITIONS Channel must be active and ADU must be in the normal state: POWER LED off, SCAN LED flashing.
COMMAND SYNTAX "CALL";CH PARAMETERS CH = CHANNEL NO. CH = 1 to 16 DATA RETURNED The BIT reading is a negative or positive number, to the nearest 1/4 BIT and within the maximum and minimum limits of + 8191.75 and - 8192. The reading initially equals the IV value of SET and proportionally increases or decreases about this value with changes in channel input.
ERRORS REPORTED "INVALID CHANNEL" channel number outside specified limits.
"NOT INITIALISED" channel has not been SET, i.e. it is not actively scanned. When a powerdown occurs all gains are set to zero.
(9) ALLOT CLASS DATA ACQUISITION-TEST SPECIFICATION ACTION The ALLOT command reserves ADU memory 16. 16a for the storage of test readings.
Multiple tests can be stored in memory simultaneously. Each test 146a, 146b . . consists of an area of memory of which 37 bytes is reserved for a test header 147 and the remainder for storage of test readings 148(1)... 148(n) (see Fig.13). Each test is given sufficient memory to record a number of readings (NR) from any of the 16 channels as well as time. Each channel is given its own column and the readings are to be inserted into these columns by the SCAN routine (described below), when the test is running. Each column is NR rows deeps. When each test 146a, 146b . . is allocated it is given its own unique test number, which is stored in a TEST NUMBER location 149 in the header 147.The total memory space required for all of the test is calculated and this derives the displacement to the next test. This provides the operating system with a means of calculating the address of the start of the next test in memory. This displacement is stored in NEXT TEST 150.
When the test is running, the SCAN routine (Fig. 14) is responsible for acquiring channel readings and storing them in the test spaces at the appropriate times. Each test 146a-146n can be given its own control channel that specifies the moments at which readings are to be captured. Test types 1 to 4 are based on root and log-time intervals between readings and these are held in ROM. They do not have to be specified. The control channel for these is always time. Test type 5 is one when the intervals of the control channel are to be specified. The control channel can be time or a channel. The interval between readings is specified with the RATE command. For test type 6 there is no control channel and readings will only be captured when the MANUAL command is executed. The test type is stored in the TEST TYPE location 154 in the test header 147.
The number n of columns of channel readings that are to be recorded in the test is stored in a NUMBER COLUMNS location 170. 5 bytes are reserved for holding the real-time and date or reading of the control channel at which the next reading is to be taken. These locations 156 are labelled NEXT DUE AT in the test header. The real-time and date at which the test is started is stored in START TIME locations 171. The number of readings (NR) is common to all columns of the test and this is stored in the location 163 labelled NUMBER IN TEST. Each test will be in any of 4 possible states: non-existent, allotted, running or finished, and these are denoted by a status number. This is held in the header location 152 labelled TEST STATUS. The number of readings taken so far is stored in the NUMBER TAKEN location 158.
Up to 17 columns can be recorded in any test. These columns hold any channel readings from the ADC module 13 and/or 13a or elapsed time and they can be in any order. A record of which channel is to be recorded in each specified column is stored in the 17 CHANNELS/CO LUMN locations of the test header.
CONDITIONS All channels to be recorded in the test must be SET before ALLOT is executed. Up to 17 columns of channels, including time, may be recorded. The first column specified must be the channel controlling when readings are taken. Allot may only be used when the ADU has been RESET and the POWER LED is off.
COMMAND SYNTAX "ALLOT";TN;TT;NR;C1;C2;C3;..
PARAMETERS TN = Test reference No. TN = 0 to 254 TT = Test type#when readings are taken TT = 1 root-time interval TT = 2 log-time intervals TT = 3/4 short log-time intervals TT = 5 specified intervals of the control channel TT = 6 manual readings---only taken with MANUAL NR = Number of (rows) readings to be taken of each column C1 = column containing the control channel C2 = channel to be recorded in column 2 C3 = channel to be recorded in column 3: Minimum No. of columns = 2; Maximum No. of columns = 17.
Column = 1 to 16 for ADC channels 1 to 16 Column = 0 for time.
If test type 1, 2, 3 or 4 is specified, then C1 = O, i.e. the control channel is time. These are standard times which are pre-programmed. If test type 5 is specified, then C1 = O if readings are to be taken at intervals of time or C1 = CH if readings are to be taken at BIT-intervals of channel CH. If test type 6 is specified, then there is no control channel. The test is described as a "manual" test. A row of readings is taken when the host sends the MANUAL command.
MEMORY USED Bytes consumed Test types 1 to 4=37+2(NR+ 1)"(NC- 1) Test type 5 or 6 = 37 + 2(NR + l#NC where NR = number of rows of readings.
NC = number of columns of channels.
DATA RETURNED NONE ERRORS REPORTED ''ALLOT SYNTAX" - number readings too high for types 1 to 4 - too few columns of channels - too many columns of channels - control channel is not 0 (time) for types 1 to 4 - test number too high (255) "NO SUCH TEST TYPE" - test type = 0 or greater than 6.
"INPUT PARAMETER TOO HIGH" - channel number too high "NOT INITIALISED" - channel specified is not active t "OUT OF MEMORY" - insufficient memory available for the test specified EXAMPLES "ALLOT";1;2;30;0;5;6;7 Test reference number 1.
Test type 2-logarithmic intervals of time. Take 30 rows of readings in the following 4 columns: Channel 0 (time), channel 5, channel 6, channel 7 (control column must be time = channel 0).
"ALLOT";2;5;200;0;1;2;3;4;5;6;7;8 Test reference number 2 Test type 5~intervals between readings are to be specified.
Take 200 rows of readings in the following 9 columns: channel 0, channel 1, channel 2, channel 3,...channel 8. (The first column contains channel 0, so that the intervals are to be intervals of time). The intervals must now be specified with the RATE command before test 2 is started.
(10) RATE CLASS DATA-ACQUISITION-TEST SPECIFICATION ACTION Specify the BIT or time interval between which readings are to be taken. The interval may be applied for the whole test, a group of readings or even between pairs of readings.
The command identifies, from the test numbers, as to which allotted test the intervals are to apply. The requested interval is inserted into the memory space allocated for the control channel (column 1) of the test. The reading numbers between which the interval is to apply are also specified. This permits the interval to be varied throughout the duration of the test.
CONDITIONS Must be used for tests which have been ALLOTted and of test type 5. RATE may be repeated until all intervals have been specified. The intervals for all of the test must be specified irrespective of the type of control (channel or time); the maximum speed at which readings can be taken is 1 per second).
COMMAND SYNTAX "RATE";TN;IN;IR;FR PARAMETERS TN = Test reference number (of previous ALLOTted test) IN = Required intervals between readings Control column is time (0).
IN = 1 to 32767 seconds (32767 secs. is about 9 hrs).
For intervals larger than 9 hours, intervals are M in minutes, up to 32767 minutes: IN = 65536 - M Control is a channel: IN = BIT INTERVAL an integer from - 4095 to + 4095 IR = Initial reading number from which the interval (IN) is to apply FR = Final reading number up to which the interval (IN) is to apply.
The interval IN will not be applied outside reading numbers IR to FR.
DATA RETURNED NONE ERRORS REPORTED Programs 15 to 18.
"NO SUCH TEST NUMBER"-the test number specified cannot be found.
'NO SUCH TEST TYPE' '-the test referred to is not of type 5.
"TESTS NOT ALLOTTED" - the test is already running or ended.
"COMMAND SYNTAX" - final reading number specified is larger than number of readings in the test.
EXAMPLE PROGRAM Example: Test 2 has just been ALLOTted. It is a test of 200 readings at intervals of time. The readings are to be taken at 10 minute (600 second) intervals. This is done with the following RATE command: "RATE:2;600; 1 ;200 Test reference 2, 600 second intervals for all readings to 200. The test may now be started.
EXAMPLE The following test is ALLOTted: "ALLOT";3;5;20; 1;0;2 Test reference 3 Test type 5-an interval test Take 20 rows of readings of channel 1 (control), elapsed time and channel 2.
The transducer in channel 1 is a pressure transducer with a constant of - 0.2 kPa per bit.
The first 12 readings are to be taken at 20 kPa intervals and the remaining 8 at 25 kPa intervals.
Interval 1(BITS)= INTEGER (20/- 0.2) - 100 BITS Interval 2(BITS)= INTEGER (25/ - 0.2) = - 125 BITS The two RATE commands must be executed: ''RATE";3;~100;1 ;12 and ''RATE";3;~125; 13;20 Now that all readings have specified intervals, the test may be started.
(11) RETIME CLASS DATA ACQUISITION rEST SPECIFICATION ACTION Request one of the standard times for test types 1 to 4.
CONDITIONS May be used with the ADU in any state.
COMMAND SYNTAX ''RETIM E";TT; RN PARAMETERS TT = Test type 1 = Root times (54 times) 2 = Log times (57 times) 3 8 4 = Short log times (26 times) RN = Reading number DATA RETURNED The times are returned in formatted form: ''HH-MM-SS" HH = hours (up to 72 hours) MM = minutes SS = seconds If RN exceeds the number of times, ZERO is returned.
ERRORS REPORTED "NO SUCH TEST TYPE' '-test type not 1,2,3 or 4.
(12) START CLASS DATA ACQUISITION-TEST ACTIVATION ACTION This starts the test running. Thereafter the SCAN routine will be responsible for monitoring the test and inserting readings into the allocated memory space.
The real-time and date are placed in the START TIME location 171 of the header 147 and also in the NEXT... locations 150. The TEST STATUS location 152 of the header is set to running-status. An initial reading is then taken on the test by forcing an execution of the SCAN routine. This will calculate when the next reading is due to be taken, increment the number of readings taken and put the appropriate channel readings at the top of the test columns 148(1)-148(n).
CONDITIONS ADU must be in normal mode with the POWER LED off. The test must previously have been ALLOTted and RATEd, if necessary.
COMMAND SYNTAX "START";TN PARAMETERS TN Test reference number DATA RETURNED NONE ERRORS REPORTED "MUST DO A REST FIRST' '-POWER LED is on "NO SUCH TEST NUMBER" requested test is not present "TEST NOT ALLOTTED-test must be in ALLOTted status.
(13) MANUAL CLASS DATA ACQUISITION-TEST ACTIVATION ACTION Takes a row of channel readings on a given test.
CONDITIONS The test must previously have been ALLOTted as a manual type test (6) and STARTed.
Manual type tests are not automatically monitored by the ADU they have no controlling channel COMMAND SYNTAX "MANUAL";TN PARAMETERS TN = Test reference number DATA RETURNED NONE ERRORS REPORTED "NO SUCH TEST NUMBER"-requested test cannot be found.
"NO SUCH TEST TYPE' '-requested test is not a manual type (type No. 6).
"TEST NOT RUNNlNG"-the test has not been started or all required readings have been taken and test is ended.
(14) STATUS CLASS DATA ACQUISITION-TEST PROGRESS ACTION Requests details on the current state of a given test. The number of readings taken so far and a status code for the test are returned.
CONDITIONS Can be used in normal or idle mode. If the requested test does not exist, no error condition results.
COMMAND SAYNTAX "STATUS";TN PARAMETERS TN = Test reference number (less than 255) DATA RETURNED The number of readings taken so far and the test's STATUS code. There are 2 numbers separated by a comma "NR,TS" e.g. 10,20" implies 10 readings (plus one initial reading) have been taken so far and the STATUS code is 20, i.e. running.
The STATUS codes are as follows: 0 = test does not exist 10 = test allotted 20 = test started 30 = test finished POSSIBLE ERRORS None (15) RECALL CLASS DATA ACOUISITION RETRIEVAL OF TEST DATA ACTION Requests channel or time readings captured by the ADU and stored in memory for a particular test. Data from any row or column can be requested when required. The current or "live" channel reading and elapsed times since the start can be obtained.
CONDITIONS Can be used to obtain data during test operation or following a power-down.
COMMAND SYNTAX "RECALL";TN;CL;RN PARAMETERS TN-Test reference number; must be less than 255.
CL = Column containing the required channel. This is the same as the column position in the ALLOT statement. CL is an integer: 1 to 17.
RN = Row or reading number.
RN = 0 requests the initial reading taken at START RN = greater than 1 returns data captured during the test.
RN = - 1 requests the current reading for the channel in column CL. If the channel is time, then the elapsed time since the start of the test is returned. If the channel is an ADC channel, then the current BIT-reading is returned.
DATA RETURNED If the channel reading is a BIT-reading, a positive or negative number is returned to the nearest quarter bit. Maximum channel reading that can be stored = 8191.75, minimum = - 8192. If the reading number requested has not yet been taken, a O is returned. If the channel reading is a time, the value is returned in the normal time format "HH-MM-SS"-for times less than 100 hours or "HHHH-MM-SS"-for times greater than or equal to 100 hours.
The maximum reading times that can be stored is 32767 minutes (approximately 22 days).
A single 0 is returned if a reading number is requested which has not yet been recorded at that instant.
ERRORS REPORTED "NO SUCH TEST NUMBER"-the required test number cannot be found in memory.
"INVALID CHANNEL"---column number must not equal zero.
CL= 1 to 17.
(16) STIME CLASS DATA ACQUISlTION-RETRIEVAL OF TEST DATA ACTION Requests the time of day at which a given test was started.
CONDITIONS Can be used during test operation or after a power-down.
COMMAND SYNTAX "STIME";TN PARAMETERS TN = Test reference number (less than 255).
DATA RETURNED The time is returned in 24 hour format: "HH-MM-SS'' HH = hours (0 to 23) MM = minutes (0 to 59) SS = seconds (0 to 59) POSSIBLE ERRORS "NO SUCH TEST NUMBER"---cannot find the requested test.
(17) SDATE CLASS DATA ACQUISITION-RETRIEVAL OF TEST DATA ACTION Requests the date on which a given test was started.
CONDITIONS Can be used during test operation or after a power-down.
COMMAND SYNTAX "SDATE";TN PARAMETERS The date is returned in the calendar format: "DD-MM-YY: DD = date in month MM MM = month (1 to 12) YY = year (83 to 99) POSSIBLE ERRORS "NO SUCH TEST NUMBER"---cannot find the requested test.
(18) NTIME CLASS DATA ACQUISITION-RETRIEVAL OF TEST DATA ACTION Requests the current time of day at which the next reading is due to be taken for a given test, CONDITIONS Test must be a time-based test, i.e. the controlling channel must be time. The test must have been started and the ADU must be in normal-mode.
COMMAND SYNTAX "NTIME";TN PARAMETERS TN = test reference number (less than 255).
DATA RETURNED The time is returned in 24-hour format: "HH-MM-SS" HH = hours (0 to 23) MM = minutes (0 to 59) SS = seconds (0 to 59) POSSIBLE ERRORS "NO SUCH TEST NUMBER"-cannot find the requested test.
"COMMAND SYNTAX' '-this is not a time-based test.
"TEST NOT RUNNING"-this test not started.
(19) NDATE CLASS DATA ACQUISITION-RETRIEVAL OF TEST DATA ACTION Requests the date on which the next reading is due to be taken for a given test.
CONDITIONS Test must be a time-based test, i.e. the controlling channel must be time. The test must have been started and the ADU must be in normal-mode.
COMMAND SYNTAX "NDATE";TN PARAMETERS TN = Test reference number (less than 255).
DATA RETURNED The date is returned in calendar format: "DD-MM-YY'' DD = date in month MM MM = month (1 to 12) YY = year (83 to 99) POSSIBLE ERRORS "NO SUCH TEST NUMBER"-cannot find the requested test.
"COMMAND SYNTAX' '-this is not a time-based test.
"TEST NOT RUNNlNG"-this test not started.
(20) FINISH CLASS DATA ACQUISITION TEST TERMINATION ACTION This stops readings being taken on a given test. The TEST STATUS location 152 is set to finished status. If there is unused space in the columns 148(1). .148(n), then the memory lying below it is sequentially transferred upwards for each column in the test. This closes the unused spaces in the memory which were allocated to the test. The displacement to the next test (held in the header location 150 labelled NEXT TEST) is accordingly adjusted. The NUMBER IN TEST location 163 of the header 147, i.e. the depth of each column, is set equal to the number of readings recorded for the test while it was active.
CONDITIONS Can be used in normal or idle-mode. The required test must exist.
COMMAND-SYNTAX "FINISH";TN PARAMETERS TN = test reference number (less than 255).
DATA RETURNED NONE POSSIBLE ERRORS "NO SUCH TEST NUMBER"#annot find the requested test.
(21) CLEAR CLASS DATA ACQUISITION-TEST TERMINATION ACTION This erases a given, finished test from memory. Memory below the test is sequentially transferred upwards, thus closing up the whole unused test space.
CONDITIONS Can be used in normal or idle-mode. The required test must exist and be in finisnhed status.
COMMAND SYNTAX "CLEAR ' ' ;TN PARAMETERS TN = Test reference number (less than 255).
DATA RETURNED NONE POSSIBLE ERRORS "NO SUCH TEST NUMBER"cannot find the requested test.
"TEST NOT ENDED"-the test must be ended (FINISHed) before it is CLEARed.
(22) ERROR CLASS ADU STATUS ACTION Requests details of any prevailing error conditions in the ADU. Returns details of a command error and clears the ERROR LED 39 to show that the error has been acknowledged.
CONDITIONS May be used in normal or idle-mode. Normally used following the occurrence of a command error.
COMMAND SYNTAX "ERROR" PARAMETERS NONE DATA RETURNED The error message is a string of (up to 24) characters that describes the nature of any command error. The error is then cleared.
If no error is detected by the ERROR command, then the string returned is: "P.D."-if the ADU is in idle-mode (power down) or "O.K."-if the ADU is in normal-mode (has been RESET).
To clear a power-down state, the ADU has to be RESET.
POSSIBLE ERRORS NONE (23) BYTES CLASS ADU STATUS ACTION Requests the amount of memory free and available to the user for storing data and test readings.
CONDITIONS May be used in normal or idle-mode.
COMMAND SYNTAX "BYTES" PARAMETERS NONE DATA RETURNED A number is returned which equals the number of bytes of memory free. For an ADU which has just been RESET this is: 15356 BYTES for a 16K memory card 31740 BYTES for 2 X 16K memory cards (32K bytes) POSSIBLE ERRORS NONE (24) WRITE CLASS GENERAL DATA STORAGE ACTION Stores data in the ADU's memory against a given reference number.
CONDITIONS May be used in normal or idle-mode. Up to 255 items may be stored, each with a maximum of 80 characters. WRITEing to a data item of the same number will overwrite it. Care must be taken to ensure that enough memory is available.
COMMAND SYNTAX "WRITE";DN;DATA PARAMETERS DN = record number DN = O to 254 DATA = numeric data or string data with a maximum of 80 characters, in ASCII format.
Memory occupied = (3 + Number characters of DATA) bytes.
DATA RETURNED NONE POSSIBLE ERRORS "COMMAND SYNTAX" DN must be less than 255.
''OUT OF MEMORY' '-insufficient memory to store the item of data.
(25) READ CLASS GENERAL DATA STORAGE ACTION Requests a particular item of data previously stored with the WRITE command.
CONDITIONS May be used in normal or idle-mode. The requested item of data must already exist in memory.
COMMAND SYNTAX "READ";DN PARAMETERS DN = Data record number Dun =0 to 254 DATA RETURNED This is the string or numeric data that was previously stored with WRITE with the same record number.
POSSIBLE ERRORS "NO SUCH DATA"--the requested data cannot be found.
(26) AD CLASS DIRECT ADC MODULE COMMUNICATION ACTION Takes a filtered reading on a given channel, at a given gain and offset. The channel is not activated for scanning, but the command allows a direct reading on demand.
CONDITONS This is strictly for transducer calibration and should not be used while tests are in operation.
COMMAND SYNTAX "AD";CH;GA;OF PARAMETERS CH = Channel CH = 1 to 16 GA = Gain GA = 1 to 10 OF = Offset OF = O to 4095 OF = 2048 is equivalent to zero offset.
OF = O is an offset of approx. - 2.5 volts OF = 4095 is an offset of approx. + 2.5 volts.
DATA RETURNED 24 readings are taken in approximately 30 msec and the trimmed-mean is calculated. The BIT reading returned is a number between 0 and 4095 BITS to the near quarter BIT.
POSSIBLE ERRORS "INVALID CHANNEL' 'channel requested is out of range.
''COMMAND SYNTAX' 'channel is already in use.
"INVALID GAIN"---gain requested is out of range.
"INPUT PARAMETER TOO HIGH"---offset outside range 0 to 4095.
"INTERFACE FAULT"-ADC module does not respond.
(27) BELL CLASS DIRECT ADC MODULE COMMUNICATION ACTION Sounds the internal warning horn (via the ADC module) for about 3 seconds.
CONDITIONS The ADC module must be operational.
COMMAND SYNTAX "BELL" PARAMETERS NONE DATA RETURNED NONE POSSIBLE ERRORS NONE EXAMPLE PROGRAM

Claims (12)

1. Datalogging apparatus to be interposed between a plurality of sensors and a host device comprising: (a) analogue to digital converter means having a plurality of sensor input channels and means responsive to a channel identifier and gain and offset commands to output a digital reading of sensor input signals; (b) a non-volatile memory; (c) an interface for remote communications with a host device; and (d) a microprocessor controller communicating with the anlogue to digital converter means, the memory and the interface and arranged to: (i) respond to commands transmitted through the interface for setting channel gain and/or offset to store the gain and/or offset for each channel in memory; (ii) respond to test establishment commands transmitted through the interface to receive memory space for an array of readings in columns according to the channels allocated to the test and rows according to the number of readings to be taken in the test; (iii) respond to commands transmitted through the interface to start the test and while the test is running read at intervals the several transducer channels according to their stored gains and offsets and for each allocated channel store the reading in the memory space reserved for the test; and (iv) on commands transmitted through the interface return the array of readings to the host device.
2. Apparatus according to Claim 1, wherein the analogue to digital converter means further comprises means providing a stabilised power supply at each sensor input channel.
3. Apparatus according to Claim 2, wherein the memory means is a non-volatile solid state memory.
4. Apparatus according to Claim 1 or 2, further comprising means therein for setting an apparatus address that can be read through the interface whereby more than one datalogging apparatus can be independently addressed by the host device using a single interface of the host device.
5. Apparatus according to any preceding claim, wherein the microprocessor controller has a firmware operating system by which its operations are controlled and the allowable commands are defined.
6. Apparatus according to any preceding claim, wherein the firmware responds to commands establishing a plurality of simultaneously operable tests that are individually identifiable and allocatable to respective areas of memory.
7. Apparatus according to any preceding claim, wherein the firmware responds to commands transmitted through the interface to cause readings in the or each test to be taken on command from the host device, at predetermined intervals of a transducer reading in one channel or at predetermined time intervals.
8. Apparatus according to Claim 7, wherein the firmware enables the transducer intervals to be pre-programmed to vary throughout the duration of a given test.
9. Apparatus according to Claim 5, 6, 7 or 8, wherein the operating system causes an external warning light to be illuminated in the event of an interruption in power supply.
10. Apparatus according to any preceding claim, further comprising a controller operable to provide control signals to external devices.
11. Apparatus according to Claim 10, wherein the controller comprises individually addres sable driven units for relays and/or stepper motors.
12. Datalogging apparatus substantially as hereinbefore described with reference to and as illustrated in the accompanying drawings.
GB08427538A 1984-01-16 1984-10-31 Improvements in or relating to datalogging apparatus Expired GB2153171B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB848401029A GB8401029D0 (en) 1984-01-16 1984-01-16 Data aquisition device

Publications (3)

Publication Number Publication Date
GB8427538D0 GB8427538D0 (en) 1984-12-05
GB2153171A true GB2153171A (en) 1985-08-14
GB2153171B GB2153171B (en) 1987-02-18

Family

ID=10555030

Family Applications (2)

Application Number Title Priority Date Filing Date
GB848401029A Pending GB8401029D0 (en) 1984-01-16 1984-01-16 Data aquisition device
GB08427538A Expired GB2153171B (en) 1984-01-16 1984-10-31 Improvements in or relating to datalogging apparatus

Family Applications Before (1)

Application Number Title Priority Date Filing Date
GB848401029A Pending GB8401029D0 (en) 1984-01-16 1984-01-16 Data aquisition device

Country Status (1)

Country Link
GB (2) GB8401029D0 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2174261A (en) * 1985-04-24 1986-10-29 Dresser Ind Data monitor
GB2188806A (en) * 1986-04-05 1987-10-07 Burr Brown Ltd Interface unit between analog input signals and a digital system bus
GB2190555A (en) * 1986-05-03 1987-11-18 Burr Brown Ltd Surface-mounted single package data acquisition system
GB2198897A (en) * 1986-12-18 1988-06-22 Burr Brown Ltd Analog input system
GB2199206A (en) * 1986-08-07 1988-06-29 Int Mobile Machines A sample and hold and analog-to-digital converter system
WO1993022713A1 (en) * 1992-04-30 1993-11-11 The Minister Of Agriculture, Fisheries And Food In Her Majesty's Government Of United Kingdom Of Great Britain And Northern Ireland Data logger
EP0617347B1 (en) * 1993-03-26 1997-07-23 Mitsubishi Denki Kabushiki Kaisha Data logging apparatus

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111913879A (en) * 2020-07-15 2020-11-10 广东电网有限责任公司 Security distributed test framework system

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2174261A (en) * 1985-04-24 1986-10-29 Dresser Ind Data monitor
GB2188806A (en) * 1986-04-05 1987-10-07 Burr Brown Ltd Interface unit between analog input signals and a digital system bus
GB2188806B (en) * 1986-04-05 1989-11-01 Burr Brown Ltd Method and apparatus for improved interface unit between analog input signals and a digital signal bus
GB2190555B (en) * 1986-05-03 1990-03-28 Burr Brown Ltd Surface mounted single package data acquisition system
GB2190555A (en) * 1986-05-03 1987-11-18 Burr Brown Ltd Surface-mounted single package data acquisition system
GB2199206B (en) * 1986-08-07 1991-03-13 Int Mobile Machines A subscriber unit
GB2199206A (en) * 1986-08-07 1988-06-29 Int Mobile Machines A sample and hold and analog-to-digital converter system
GB2198897A (en) * 1986-12-18 1988-06-22 Burr Brown Ltd Analog input system
FR2608801A1 (en) * 1986-12-18 1988-06-24 Burr Brown Ltd METHOD AND APPARATUS FOR AN IMPROVED ANALOG INPUT SYSTEM
WO1993022713A1 (en) * 1992-04-30 1993-11-11 The Minister Of Agriculture, Fisheries And Food In Her Majesty's Government Of United Kingdom Of Great Britain And Northern Ireland Data logger
GB2280767A (en) * 1992-04-30 1995-02-08 Mini Agriculture & Fisheries Data logger
GB2280767B (en) * 1992-04-30 1996-01-17 Mini Agriculture & Fisheries Data logger
US5502656A (en) * 1992-04-30 1996-03-26 The Minister Of Agriculture Fisheries And Food In Her Britannic Majesty's Government Of The United Kingdom Of Great Britain And Northern Ireland Data logger having a RAM that accepts electro-magnetically a sensor table and a sample table
AU668556B2 (en) * 1992-04-30 1996-05-09 Minister Of Agriculture Fisheries And Food In Her Britannic Majesty's Government Of The United Kingdom Of Great Britain And Northern Ireland, The Data logger
EP0617347B1 (en) * 1993-03-26 1997-07-23 Mitsubishi Denki Kabushiki Kaisha Data logging apparatus

Also Published As

Publication number Publication date
GB8427538D0 (en) 1984-12-05
GB8401029D0 (en) 1984-02-15
GB2153171B (en) 1987-02-18

Similar Documents

Publication Publication Date Title
US6167766B1 (en) Programmable atmospheric sampling systems and methods
US4974181A (en) Adaptive data acquisition multiplexing system and method
US4215398A (en) Dual microprocessor intelligent programmable process control system with communication link
US5339425A (en) Operating system for a process controller
US4215399A (en) Special function control system for a dual microprocessor programmable process control system
US4215396A (en) Intelligent programmable process control system
US4215395A (en) Dual microprocessor intelligent programmable process control system
KR0174573B1 (en) Electronic control system for modular structured vlave station
US5390129A (en) Universal burn-in driver system and method therefor
US6104971A (en) Controller, in particular motor vehicle controller
CN100524328C (en) Field transmitter with diagnostic self-test mode and operation method thereof as well as integrated circuit
GB2153171A (en) Improvements in or relating to datalogging apparatus
GB2177826A (en) Programmable controller
GB2102219A (en) Electrical power system with fault tolerant control unit
EP0923038A1 (en) Measuring apparatus to determine the physical and/or chemical properties of gases, fluids and/or solids
CN102739219A (en) Switch multiplexer devices with embedded digital sequencers
US20020008427A1 (en) Protocol for a power supply unit controller
US20020043877A1 (en) Power supply unit controller
DE3247005A1 (en) DATA TRANSFER SYSTEM
EP0703516B1 (en) Programmable electronic device for the control of irrigation systems
GB2034925A (en) Automatic control of movable detectors
US20030056048A1 (en) Protocol for a power supply unit controller
GB2157021A (en) Control of fluid flow valve
CN213457762U (en) Vehicle controller refreshing test bench
CN112486078A (en) Multi-channel data acquisition selection device for geotechnical centrifuge and operation method

Legal Events

Date Code Title Description
PCNP Patent ceased through non-payment of renewal fee