Automated Data Handling Using a Digital Logger David G . Larsen Department of Chemistry, Virginia Polytechnic Institute and State Uniaersity, Blacksburg, Va. 24061
DATAACQUISITION on line to a small computer is the only approach many have considered in implementing the goal of automated data handling. Because of the apparent complexity to those untrained in automation, on line data acquisition is often resisted by both students and laboratory personnel. When an analytical instrument producing data has minimal or non-existent control functions, data may be logged in a computer compatible form such as punched paper tape for later processing. Data logging allows one small computer in a batch mode to serve a large number of users and service a variety of instruments. This logging system, Figure 1, has the advantage of low cost and could be built using all commercially-available equipment. However, the price of commercial couplers or code coverters is about one-half the price of the total logging system, and the converter discussed here can be built for about thirty dollars worth of integrated circuit chips. The paper tapes are generated in the American Standard Code for Information Interchange (ASCII) and can be processed by merely reading them on the teletype paper reader. Using the ASCII format allows the tapes to be used on any device that has a teletype for an input/output device, i.e., small computer, timeshare, or large computer.
DIGITIZER KEITHLEY
TELETYPE DRIVER CONTROL
Coupler Inputs and Outputs
CLOCK INPUT TY-OUT
+
,
HARD PRINTED COPY
Figure 1. Data logging system START
STOP
BIT
BITS
-
4,0=2648 ASC
IT
264,
Figure 2. 11-bit ASCII code
GND
PAUSE
RESET BUSY
BUS
Teletype frequency of 110 Hz. Teletype output connects to input on Teletype (Pin 7 or Terminal Strip 151411 on most ASR-33 teletypes)
TELETYPE
PUNCH PAPER TAPE OUTPUT
INSTRUMENTATION Analog to Digital Converter (ADC). An important part of the logger is the digitizer (ADC). The Keithley Model 160 Digital Multimeter (DMM) is well suited for this application. In addition to high common mode rejection, it has a wide range of inputs, measuring ohms, amperes, or volts. The most sensitive voltage range is I-mV full scale, the same as most sensitive instrument recorders, which gives a resolution of 1 p V . The unit provides parallel binary code decimal (BCD) output as well as control and timing functions. Output Device. The ASR 33 Teletype was used because of its common availability and with proper use and reasonable preventive maintenance, teletypes can give quite acceptable service in this application for periods of 4-5 years. This system, in addition to providing punched paper tape, gives a hard copy printed page. It has the added advantage of allowing the data tapes to have information punched on them, such as sample name, time, or operating parameters by typing on the keyboard in an off line mode with the punch turned on. BCD to ASCII Coupler Driver. This is a fixed input/output format system. It accepts a 4 BCD digits (16 binary bits) in parallel and converts these to ASCII code and sends them out in a serial manner to drive a teletype. In addition to the BCD digits being converted, the coupler also transmits two spaces between each 4-digit word and after ten words does a carriage return and line feed to give nicely formatted printed COPY.
BCD TO
Circuit ground, connects to neutral signal line on Teletype (Pin 6 of Terminal Strip 151411 on most teletypes) When externally driven to 0 volts, the coupler will stop operation when current 4-digit word has been typed out. It will resume operation when pause is allowed to go to 5 volts. Pause does not reset word counter No. 3 and is used for external control of the print rate When externally set low, all counters are reset and operation of the system stops An output which is at f 5 volts when the teletype is busy printing. It goes low only after all 4 digits of the current word have been typed out. It is used to prevent the external register which contains the BCD word currently being printed out, from changing content. The coupler does not have a buffer register and the BCD word must be present at the input of the coupler during the print out. This is generally satisfactory because most digital instruments have the capability to apply an external hold signal to its internal buffer memory Monitors the output of the ASCII code generators CIRCUIT DESCRIPTION
11-Bit Teletype Control. The teletype (TTY) must receive an eleven-bit code, Figure 2, for each character it is to respond ANALYTICAL CHEMISTRY, VOL. 45, NO. 1, JANUARY 1973
e
217
MSB
BCD
BCD
m
I
I
I
1
I
SPACE ENABLE
OUNTER 2-
CR
: 212iB
SPACE
LF
330
a
:2400
: 212g
Figure 3. BCD to ASCII Code coupler
to. This includes one start bit, an eight-bit ASCII character, and two stop bits. The eleven-bit counter consist of Flip Flop 1,2, and decade counter 1. The logic is arranged such that the first clock pulse is the start pulse. The address generated by the outputs A, B, and C of counter No. 1 advances from 0 through 7 on clock pulses 1 through 8, while pulses 9 and 10 produce the two stop bits. ASCII CODE GENERATION
The system, Figure 3, was built utilizing 7400 Series TTL integrated circuits. The eight-bit ASCII codes are generated by the SN74151 8 line to 1 line multiplexers. There are seven multiplexers used to generate 4 BCD digits. They are space, line feed, and carriage return, with only one being enabled a t a given time. Assume that the system just started and the most significant digit of the BCD word is being typed out. Counter number 2 is at 0 count. This counter has its output decoded by an SN7442 BCD to decimal decoder which in turn enables the multiplexer for the most significant digit (MSD). All other multiplexers are disabled. While the multiplexer is enabled, the counter No. 1 advances from 0 through 7 at its outputs. These address lines are tied to the multiplexer address inputs. A 000 address causes the logic state of the 0 input at the multi218
plexer to be present at its output. A 001 address causes the content of the 1 input to be present at output and similarly for 010 through 111 addresses. Thus, in effect, a parallel to serial conversion of the eight multiplexer inputs has been made. The inputs 0 through 3 of the multiplexers 0 through 3 are tied to the 4 binary bits of the BCD digits from the D M M and inputs 4 through 7 are hard wired to form the first four bits of the 2608ASCII code. After completing the first printed character, counter 2 advances to 1 which enables multiplexer No. 1 to print the next digit. This continues for six characters-4 BCD digits and two spaces. The No. 2 counter is reset to 0 and word counter No. 3 advances to 1. During the 10th pass of this sequence, counter No. 2 is allowed to advance to 6 and 7 which enables the carriage return and line feed multiplexers to set the teletype up for a new line. Multiplexers 4, 5 , and 6 have these inputs hard wired to generate ASCII code for space 2408,carriage return 2158, and line feed 2128. The circuit as wired does not generate a parity bit on the tape (Parity bit 8 is always punched a one). Most small computers do not use the parity bit and data tapes have been used on these systems with ease. If parity is needed, it may be easily added. Each BCD to ASCII multiplexer (units 0. 1, 2 , and 3) will need an equality detector monitoring the 4 bits that are the
ANALYTICAL CHEMISTRY, VOL. 45, NO. 1, JANUARY 1973
BCD OUTPUT JACKI K OHM PULL-UP RESISTORS
I' 2
7
H
3 4 5
L W .
VU\
0
6
31r
7 ' B C D OUT 8
J W