US 3765567 A
A fluid dispensing data processing apparatus and system comprising electronic transducers, logic networks, shift registers, multiple digital counters, and transaction sequencers which generate, format, store and validate fluid pump transaction data such as total gallons dispensed, cost per gallon, and the total cost of a transaction. Provision is made for entering sales information not related to fluid dispensing operations, verifying all data, and preparing a hard copy receipt for dispensing to the customer. Provision is also made for incorporating a credit card verification system, and interfacing the system with a regional accounting computer.
Description (OCR text may contain errors)
United States Patent [191 Maiocco et al.
[ FLUID DISPENSING DATA PROCESSING SYSTEM  Inventors: Joseph Maiocco, West Covina; Fred Maiocco, Dracaena; Howard J. Jeline k, Balboa Island, all of Calif.
 Filed: July 23, 1971  Appl. No.: 165,076
 US. Cl. 222/30, 222/76  Int. Cl B65d 5/30  Field of Search 222/76, 30
 References Cited UNITED STATES PATENTS 3,244,323 4/1966 Stankiewicz..'. 222/30 X 3,211,332 10/1965 Thielen 222/76 X 3,484,020 12/1969 Houle et al. 222/30 X 3,498,502 3/1970 Robbins et al.... 222/76 X 3,598,283 8/1971 Krutz 222/76 X INTERFACE PUMP CONTROLLER COMPUTER BUS [451 Oct. 16, 1973 Primary Examiner-M. Henson Wood, Jr. Assistant Examiner-Michael Mar Attorney-George F. Bethe] [5 7] ABSTRACT A fluid dispensing data processing apparatus and system comprising electronic transducers, logic networks, shift registers, multiple digital counters, and transaction sequencers which generate, format, store and validate fluid pump transaction data such as total gallons dispensed, cost per gallon, and the total cost of a transaction. Provision is made for entering sales information not related to fluid dispensing operations, verifying all data, and preparing a hard copy receipt for dispensing to the customer. Provision is also made for incorporating a credit card verification system, and interfacing the system with a regional accounting computer.
11 Claims, 7 Drawing Figures 24 P t L R R o E c INPUT M, E INTERFACE o s T s E 0 R DATA LINK ACOUSTIL COUPLER CONSOLE BUS PATENTEDUCI 16 I913 SHEET 30F 4 ELLLBSSVO PATENTEDHBI 16 \915 3.765.567
sum u or 4 FIG. 7
INVENTORS HOWARD J. JELINEK BY FREDRICK R. MAIOCCX GEORGE F BETHEL ATTORNEY FLUID DISPENSING DATA PROCESSING SYSTEM BACKGROUND OF THE INVENTION 1. This invention relates generally to the art of fluid dispensing data equipment and systems.
2. The Applicants know of only one fluid dispensing data processing system of this type which is the F LEETCON System manufactured by A. O. Smith. Literature on the electronics of the FLEETCON System has not been made available to the applicants. For that reason, a detailed comparison cannot be offered by the Applicants. The FLEETCON System is primarily a customized, unattended bulk transfer system designed to accommodate only four pumps. it relies upon the use of a plastic card which is coded for driver identity. The card is inserted into a card reader which controls two pumps. The console, which is the heart of the FLEET- CON System, records and counts the number of gallons pumped. Each fueling transaction is recorded on a punched paper tape by a separate tape punch unit. The FLEETCON System is designated for use with A. O. Smith Commercial Pumps only. All non-pumping transactions are entered through a teletypewriter.
The FLEETCON System serves only specified cus- 'tomers and the system can handle only 9999 customers. Additionally, the FLEETCON System services a maximum of four pumps and requires a special A. O. Smith pump mechanism. Only gallons and dollars are computed locally. The recording of information is accomplished by the punching of paper tape. This is typically a very slow method of memory storage. The formatting of information is done off-line. Real time calculations are performed by circuitry which is contained in a remote console or performed mechanically. The power consumption of the FLEETCON System is relatively high and the consoles are as large as a refrigerator. Non-pumping transactions must be entered into a teletypewriter which is relatively sophisticated for the typical operator of the system. These and other problems of the prior art are solved by the applicants inven- SUMMARY OF THE INVENTION AND OBJECTS A system is disclosed consisting of a fluid flow meter transducer, a special purpose electronic counter, a multiplexer, a special purpose controller, a memory, and several models of operator consoles. The apparatus operates under the direction of the controller on commandfrom an operator. Upon receipt of a valid operator command or command sequence, the controller accesses data from various system registers and directs this data to the various components of the apparatus. Ultimately, the data from a sales transaction iswritten into a storage register in the controller in a desired sequence, and subsequently transferred to a data storage tape driven by a cassette recorder. The cassette may be physically removed and transported'by a courier to a computer center for processing or the tape records may be transmitted via a data link on an acoustic coupler or data modem of some appropriate type.
The system will interface easily with existing pump units and may be operated in parallel with the existing mechanical pump computers. However, unlike the present mechanical computer, this system electronically computes and stores the transaction information in data registers which are subsequently written onto a cassette tape temporary storage medium. All of the sales information is compiled, converted, transmitted and recorded at electronic rates. Consequently, the entire operation takes place in a substantially shortened period of time.
The system will permit a user to specify any storage format for information. The modular design allows for expansion for updating as the user requires, and conventional credit cards interface directly with the system.
The end product of the system can be the cassette tape which contains the service stations transaction data file. The data transaction file has multilevel usage for the petroleum industry. First, it is used to provide inputs to the petroleum companys marketing data base. Second, it is used to automatically debit credit card and customer accounts. Third, it is used for dayto-day updating of individual service station inventories. Fourth, it provides additional information for management systems evaluation on such items as: inventory assessment; sales profiles for territory and station location; hours of operation; dealer pricing policy; credit insaturation; relationship between station location and volume; and other useful analytical results which yield optimum return in the petroleum companys capital.
This system represents a quantum jump in concept and system design. It has been made feasible largely because of advances in MOS, semi-conductor technology. Prior system proposals have proved to be too expensive to build and sell to petroleum industries. However, the advanced MOS technology permits the system cost objectives to be attained.
' BRIEF DESCRIPTION OF THE DRAWINGS interfaced with the entire system and is physically located on a pump island.
FIG. 7 is a plan view of a console which is less complex than the console of FIG. 6.
" DESGTIFTION THE P R EFERRED EMBODIMENTS The overall operation of the electronic liquid dispensing apparatus and data gathering system, hereinafter referred to as the System, is shown in FIG. 1. The details of possible variations will follow.
The primary components of the System are operator consoles 10 and 11, a multiplexer 12, a controller 13,
pump computers 14 and 17 and memory storage device 18. The pump computer and console can be located together at the pump site as shown by consoles l1 and pump computer 17 or physically separated as implied by the showing of console 10 and pump computer l4. The System also includes a console bus I), a pump computer bus 22, and interfaces 23 and 24, but these components exist only as physical conductors or as nodes in the electronic logic networks. Other elements of the System include a pump computer display device 26, a tape recorder 27, a data set with acoustic coupler 28, and a remote processor 29.
GENERAL OPERATION For initial expository purposes, a typical credit card gasoline transaction will be used to describe the System. A customer will arrive at a pump site and request that an operator 30 supply his car with gasoline. The operator 30 will proceed with the filling of the customers gas tank in the usual manner. The lifting of a gasoline pump nozzle and the turning on of the gasoline pump will cause the pump computer 14 to initialize all of its temporary data registers. When the handle on the nozzle valve is depressed by the operator 30, fuel will begin to flow. Rotations of the gasoline pump shaft 39 (FIG. 2) will be transduced by a flow meter transducer 35 to produce a pulse stream which is fed to the pump computer 14.
The operation of the transducer 35 will be explained in detail subsequently. It is sufficient at this point to note that the resolution of the transducer 35 can be one pulse per one hundredth of a gallon of gasoline. In installations where volume measure is given in litres or imperial gallons, the transducer 35 can be easily moditied to provide an accuracy of at least one onehundredth of the required volume measure or some other fractional increment thereof. Inasmuch as these data are used to compute the cost of the transaction, the price is computed to an accuracy of one hundredth of a gallon. Due to its modular design, each pump computer 14 will utilize its own display 26, thereby elimi-' hating the necessity of mechanical computers and displays which are used in most systems today.
The pump computer 14 contains registers 59, 64, 54 and 67 (FIG. 3) which retain the unit price of gasoline, the gallons pumped, and the total cost of the sale respectively. The cost per unit volume multiplied by the volume dispensed is the cost. Conversion from decimal to another number base may be accomplished in the system logic, thus permitting cost to be expressed in non-decimal currency.
The data accumulated in the pump computer 14 are stored in an output register 73 (FIG. 3), prior to being unloaded for processing.
Returning the pump nozzle to its cradle at the termination of a sale causes the pump computer 14 to be "disconnected from operator control. In this manner, the particular pump is isolated from further gasoline transactions until information from the previous transaction has been stored in the memory storage device 18 and verified. Only then is the output register 73 in the pump computer 14 cleared, and a control signal allowed to clear the'pump display 26.
Having filled the customers vehicle with gasoline, the operator 30 places the customers credit card in the operators console 10. After entering simple instructions into the console 10, the operator 30 depresses a console button which starts the processing of data pertinent to the transaction from pump computer 14. A signal is outputted on the console bus 19 which enters the multiplexer 12.
If there is no other transaction in progress, the multiplexer 12 permits data from the console to enter the controller 13. Once this data path has been created, the
multiplexer 12 inhibits any other consoles such as console 11 which might be attached to console bus 19 from interrupting the transaction in progress. It also inhibits any additional information which might be entered on the console 10 while the transaction is in progress.
The controller 13 will accommodate two types of requests. One is a gasoline transaction; the second is a miscellaneous transaction referred to in the petroleum industry as a TBA (tires, batteries and accessories) transaction.
When operator 30 inputs data on the operator console 10, his selection of a particular pump computer, such as pump computer 14, will automatically designate the purchase as a gasoline transaction. The particular pump computer number is then stored in a temporary working register, such as register 126 (FIG. 4'.) within the controller 13.
The controller 13 next interrogates the pump computer 14 through pump computer bus 22 to ascertain if the pump computer 14 is prepared to output its data. In the event it is not, the operator 30 is signalled by way of a warning indicator 242 (FIG. 6) on the operator's console 10. Otherwise the transaction proceeds normally. The controller 13 outputs a series of signals which manipulate the data stored in the output register 73 (FIG. 3) of the pump computer 14 which results in a transfer of the binary equivalent of gallons pumped, cost per gallon, and total cost of the transaction to a register 126 (FIG. 4) in the controller 13.
When this transfer is completed, the controller 13 requests a transfer of the credit card number from the appropriate register in the operators console 10. Additional information pertinent to this sale including automobile license number, time of day, and date, are transferred from the console 10 to register 127 and 128 (FIG. 4) in the controller 13. Upon completion of these phases of the transaction, all information on the trans action is stored in temporary registers 126, 127 and 128 in the controller 13.
The next sequence of events is a set of formatting steps. The controller 13, through the application of fixed internal programs, performs register transfers between several working registers and the temporary registers containing the transaction information. The purpose of the formatting steps is to arrange all of the data in a particular sequence and place it in a data output register 149 (FIG. 4). This register is a shift register which will serially output its data through interface 23 (FIG. 1) into the memory storage device 18 onto the tape 27.
The controller 13 next prepares the memory storage device 18 to accept the data contained in the controllers output register 149. Assuming the memory stage device 18 is a cassette recorder, the first step in this phase would be to locate the appropriate address on its tape 27. Then the controller activates timing and control signals, and the data contained in data output registers 149 is written onto the tape 27.
For the purpose of verifying the data on the tape 27, the controller 13 causes the tape 27 to rewind to the initial digit of the address. At the same time, a complete interrogation of the System is initiated and all data is again formatted and loaded into the output register 149 of controller 13. The controller 13 then proceeds to compare this data with the information present on the tape 27. In the event of a discrepancy, the controller 13 outputs an error signal to the operators console 10.
If no error is sensed during this verify phase, the controller l3 proceeds to clear and initialize registers 54, 67 and 73 of the pump computer 14, thereby preparing them to accept the next transaction. The controller 13 also clears its own registers and performs some updating and testing operations. Finally, temporary registers in the operators console are reset and busses 19 and 22 are unlocked to enable subsequent transactions to enter the system.
This will complete the transaction on the local level. As will normally be the case, the ultimate use of the data will be at some remote data processing point.
Data verification is accomplished by multiple recording and comparing. Data from the pump computer output register are transferred and formatted in the controller. The data output register 149 can be then written onto the tape 27. The system processing is verified by compiling the transaction data into the data register 149 a second time. Information previously written onto the tape 27 can be read back (non-distructively) and stored in a temporary register in the controller. A bit by bit comparison of the contents of this register and the data output register 149 is made, and in the event of a discrepancy, the operator is warned and corrective action may be taken.
The remote processor 29 is unspecified since individual petroleum companies possess different types of computing equipment. To accomplish the foregoing transfer, the input interface 24 is designed to accept the binary information and reformat it for data base utilization.
The storage medium (magnetic tape) can be physically transported to the processing center or the contents may be transmitted electronically. If the information is to be transmitted electronically, a data set 28 will be required. An expensive acoustical coupler 31 using multiple transmission for error checking can be used. The particular method for transmitting the information between the memory storage device 18 and the remote processor 29 will depend upon economic and geographic factors.
DETAILED DESCRIPTION OF COMPONENTS The detailed operation of some of the individual components of the System will be explained at this point. The essential hardware components will first be described followed by a detailed description of the System operation. I
FLOW METER TRANSDUCER The flow meter transducer 35 is shown in FIG. 2. The primary elements of the transducer 35 are a transducer wheel 36, an infra red light emitting diode 37, and a photo transistor or photo diode 38. The transducer wheel 36 is mounted on and normal to the fluid pump shaft 39 and held in place by a set screw 42. The light emitting diode 37 and photo transistor 38 are mounted facing each other on extensions 43 of a mounting bracket 44. Twenty five holes 47 are uniformly spaced at a common radius around the periphery of the transducer wheel 36. The transducer wheel 36 is positioned between the light emitting diode 37 and the photo transistor 38. The light beam 48 created by the light emitting diode 37 will be interrupted 100 times for each gallon pumped. As previously indicated, a different number of holes will be required for volume measures other than gallons (U.S.). Also, it is necessary to compensate for pumps which do not utilize the standard four rotations per gallon.
When the center ofa hole 47 on the transducer wheel 36 is co-linear with the light beam 48, the photo transistor 38 will be saturated. The light beam 48 will be broken when the transducer wheel 36 is between holes. In this position the phototransistor will be cut off. Thus, alternate interruptions in the light beam 48 will, cause the phototransistor 38 to output alternating high and low level signals or pulses. These pulses will be fed directly into the pump computer 14.
PUMP COMPUTER A block diagram of the pump computer 14 is presented in FIG. 3. The pump computer 14 is a special purpose logic network interfacing the transducer 35, the transducer pulse shaper 51, the display 26, the controller 13 (FIG. 1) and several manual/remote control inputs 62, 63 and 69. To avoid confusion, only a few of the timing and control signals from the controller 13 are shown. In FIG. 3 and all subsequent figures, parallel data busses are represented by parallel lines terminating with an arrowhead. Serial bus lines are represented by single lines which terminate with an arrowhead.
For discussion purposes, it will be assumed that the gallons decoder/register 54, the dollars decoder/register 67, the output register 73 and the display 26 in the pump computer 14 have been cleared and are ready to accept input pulses from the transducer 35 and other data pertinent to the transaction. Transducer 35 is connected to a transducer shaper 51 in the pump computer 14 through transmission line 50.
The pulse transducer shaper 51 is designed to reject common mode noise which may enter the transmission 'line 50. The output from the pulse transducer shaper 51 is a series of pulses 52. The minimum T time between pulses is dictated by the transducer characteristics and the maximum rate at which the pump can deliver gasoline. Most pumps can dispense up to 25 gallons per minute. Even if a greater rate, such as gallons per minute, were required, the T time between pulses would be approximately 2 milliseconds.
The pulses 52 are fed into a binary counter 53 which acts as an integrator or cumulative totalizer. The output of the binary counter 53 is fed directly into a gallon decoder/register 54 where the transducer data is continuously being decoded and stored. The gallons decoder/register 54 provides a binary output to a multiplier 57 and a binary coded decimal output to display buffer decoder/register 58. All outputs from the gallons decoder/register 54 are coded versions of the accumulated gallons dispensed. The quantity is accurate to one hundredth of'a gallon. I
At the same time the quantity figure is being supplied to the multiplier 57, the unit price is also being encoded. The unit price register 59 can be set manually 62 or remotely 63 to reflect the price per gallon in tens, ones and tenths of cents. The capabilityfor remote setting 63 will provide on line communication between company headquarters and retail outlets, thereby permitting real time control of prices.
The unit price register 59 feeds the unit price register/decoder 64 which provides a binary output to multiplier 57 and a binary coded decimal output to display buffer decoder/register 58.
The multiplier 57 is a binary multiplier which accepts the binary output of the gallons decoder/register and the binary output of the unit price decoder/register. The operation of multiplier 57 is enabled by a fast clock with ripple counter shut-off 66 which is connected between the output of pulse transducer shaper 51 and the multiplier 57. The multiplier 57 is activated by a negative going signal transition at the output of the pulse transducer shaper 51. The fast clock with ripple counter shut-off 66 outputs a string of high frequency clock pulses into multiplier 57. The multiplier 57 uses this pulse stream for shifting multiplier operation and is based on the add-and-shift principle. The duration of the pulse stream coming from the fast clock with ripple counter shut-off 66 is less than the T time period of pulses 52.
The binary output of the multiplier 57 represents the total cost of the fuel dispensed. This binary information is transformed into a binary coded decimal (BCD) within the dollars decoder/register 67 before being passed to display buffer register and decoder 58.
At the completion of the dispensing operation, storage registers 54, 64 and 67 will contain the binary values representing gallons dispensed, price per gallon, and total cost of transaction, respectively. Binary coded decimal values for these three items of information are supplied as inputs to the display buffer register/decoder 58.
The register/decoders 54, 64 and 67 are recirculating shift registers with parallel and serial output capability. Each of these register/decoders provides a serial output to a select logic network 68.
A variable identification information register 69 containing information such as pump number, type of fuel dispensed, and date, can be loaded either manually or remotely. This variable identification information register 69 also provides a serial output to the select logic network 68.
As noted previously, the controller 13 will request information from the pump computer 14 at the completion of the dispensing operation. This transfer of information is accomplished when the controller 13 enables a set of control signals 72 which in turn enable the four inputs to the select logic network 68. When each input is enabled, it is supplied with a sequence of shift pulses by the controller 13. An equal number of pulses are simultaneously supplied to an output register 73. The number of shift pulses supplied is predetermined and equal to the number of bits in the particular register enabled.
During the time that the controller 13 is operative the four decoder registers 54, 64, 67 and 69, the display buffer decoder/registers 58 are inhibited from accept-.
ing inputs. Consequently, values displayed will not be altered and information will not be lost if the enabling sequence malfunctions.
A feedback loop 74 is connected around the output register 73. Following the transfer of data from the four decoder registers 54, 64, 67 and 69, into the output register 73, the controller 13 closes a feedback control switch 77 in the feedback loop 74. This provides a data protect capability which will preserve the information in the output register 73 should subsequent manipulation result in its destruction.
The pump computer 14 is now in a status to output its information upon the request of controller 13. This is accomplished when the shift input to output register 73 is enabled and a sequence of pulses equal to the bit length of output register 73 is applied. During this time,
an output gate 78 is enabled by an output enable signal 79. As the binary encoded information representing the particular transactions passes through the output gate 78, it is also fed back into the output register 73 by way of the feedback loop 74. At the completion of the shift pulse sequence, the output enable signal 79 is cut off and attention is returned to the controller 13.
CONTROLLER The general function of the controller 13 is to provide signals for timing and control of the other components in the System and to perform data formatting. A block diagram of controller 13 is shown in FIG. 4.
The operation of the controller 13 will begin when operator 30 makes a transaction request of the controller through his operators console 10 and the multiplexer 12. If the controller 13 is already processing another pump transaction, it will respond with a busy signal on line 84 and refuse the request. Operator 30 must gaged by a particular console 10, the multiplexer 12 will lock out all other consoles in a manner that will be described later. Consequently, uninterrupted communication between the single operator console 10 and the controller 13 will be insured throughout the duration of the transaction. The controller 13 is activated only when both the busy line 84 and begin line 87 are high. This set of conditions causes the And Gate 86 to output a high value. This signal in turn activates either And Gate 88 or And Gate 89.
The transaction type signal 91 is decoded by the transaction decoder logic 93. In the event that the transaction is a TBA type, Line 96 will go high. A gasoline pump transaction request will cause line 94 to go high.
A high voltage on busy line 84 will provide an enable signal to Begin-And-Gate 86 so that a low to high voltage transition on Begin-Line 87 will pass through Begin-And-Gate 88 and TBA-And-Gate 89.
A transaction type signal 91 available at the console bus 91 will be decoded by the transaction decoder 93. The transaction decoder 93 will cause either pump-line 94 of TBA-line 96 to go high, depending on the transaction type which has been requested. If the sale is a gasoline transaction, the simultaneous high voltages appearing on pump line 94 and the enable signal outputted from Begin-And-Gate 86 will provide a low to high voltage transition on line 97. This voltage will in turn enable the pump computer transaction sequencer 98 and timing logic network 99. A high going signal on line 101 from the pump computer transaction sequencer 98 feeds an Or-Gate 102 whose high output enables the controller clock 103.
The clock 103 drives a clock divider 104 and also supplies theleast significant bit input 106 to the timing logic network 99. The most significant bit output 107 from clock divider 104 is supplied to the timing logic network 99 and also to an address cou nt erT08fTlie address counter 108 provides an output vector signal 109 which feeds the address inputs of the read only memories in the pump computer transaction sequencer 98.
The output signal from clock 103 iscounted down in the clock divider 104 making available to the timing logic network 99, a group of synchronized signals at.
two times, four times, eight times, etc. the most significant bit 107 outputted from clock divider 104. The foregoing makes it possible for the timing logic network 99 to empty registers and to synchronize activity within the system within a time period less than that of the most significant bit in the clock divider 104. The pump computer transaction sequencer 98 contains a number of read only memories which output data on signal lines 101, 111, 112, 113 and 114. Output signal 101 will remain high throughout the transaction. Output signal 111 is decoded in the timing logic network 99 where the decoded bits are used to switch the desired output signals of clock divider 104 to the appropriate output line of the timing logic network 99.
A TBA transaction would proceed to this point in the controller 13 in much the same manner as just described for a pump transaction. A signal from the transaction decoder 93 coupled with an enable signal from Begin-And-Gate 86 provides a low to high voltage transition on an output line 116 from TBA-And-Gate 89. This low to high voltage transition will enable the TBA transaction sequencer 117 and the timing logic network 99. A high voltage signal from the TBA transaction sequencer 117 will occur on line 118, pass through the Or Gate 102 and enable the clock 103. The clock 103 in turn will supply a signal to the clock divider 104 and a least significant bit signal 106 to the timing logic network 99. The most significant bit signal 107 will pass to the timing logic network 99 and also the address counter 108. Data line 109 from the address counter 108 will supply an input to the TBA transaction sequencer 117. Output data lines from the transaction sequencer include line 118, line 119, line 121, and line 122. Data output line 119 is decoded in the timing logic network 99 and the decoded bits are used to switch the desired output from clock divider 104 to the appropri-' ate timing output line.
A set of control logic, counters, and read only memories are collectively referred to as a register load and cassette control 123 which controls activity in the lower half of FIG. 4. The register load and cassette control 123 receive inputs on data output line 122 from the TBA transaction sequencer 117, on data output line 113 from the pump computer transaction sequencer 98, and on output line 124 from the timing logic network 99. It provides serial outputs to registers 126, 127 and 128, to an output register control gate 137, to a control display buffer 151 and to a register select logic network 131. A parallel output is connected to a register and cassette enable logic network 129 on output line 130.
During a gasoline transaction, the initial activity of controller 13 following activation is to write information available at the operators console into registers 127 and 128. The console identification data is written into register 128 and the information peculiar to the particular transaction is written into register 127.
This data transfer is accomplished in the following manner. Data control line 1 14, which outputs from the pump computer transaction sequencer 98, is connected to a console register in each of the consoles 10, 11. The console register in the particular console 10 associated with the transaction is enabled by the data control line 114. At the same time, the data output line 113 from the pump computer transaction sequencer 98 transfers a signal into the register load and cassette control 123, which activates register 127 through clock line 138. Output lines 124 and 139 from the timing logic network 99 simultaneously send synchronous clock impulses to the register load and cassette control 123 and console 10 respectively. By way of these synchronous clock pulses, data contained in the console output register is synchronously shifted to register 127 on signal line 141. Register 127 is specified to be the same length as the console output register. The number of clock pulses delivered is made equal to the number of shift register stages. The appropriate number of clock pulses is easily obtained from the timing logic network 99 by gating the appropriate output or outputs from the clock divider 104.
Following the transfer of data from the console 10, the controller 13 is prepared to accept information located in output register 73 of pump computer 14 (See FIG. 3).
The pump identification number associated with a particular pump and pump computer is entered on the operators console 10 by operator 30. The binary equivalent of the pump number is transmitted to controller 13 upon signal line 142. The particular pump computer selection is made upon the decoding of this signal by a register 143. Data output line 112 from the pump computer transaction sequencer 98, and timing output line 79 from the timing logic network 99, control the pump computer output register 73 of each pump computer. However, only one pump computer will respond to the particular pump number which has been sent to controller 13. All other pump computers will ignore the control signals from controller 13. This provides additional protection to prevent inadvertant destruction of data within non-designated computers.
Following the establishment of data within the output register 73 of pump computer 14 (See FIG. 3), the pump computer transaction sequencer 98 provides an output signal on control line 113 which is connected to the Register Load and Cassette Control 123. This signal in turn enables clock line 146 to register 126. Simultaneously, an output enable signal is sent on line 112 from the pump computer transaction sequencer 98 to output gate 78 (FIG. 3) in the pump computer 14.
Timing logic 99 simultaneously supplies a clocking signal on timing line 79 to output register 73. This results in the transfer of data from output register 73 (FIG. 3) through signal line 147 into register 126. Specific bit lines within signal line 1 14 insure proper conditions for transferring the data from output register 73. The feedback loop 74 (FIG. 3) is provided to retain data within output register 73 even after it is written into register 126.
The next step performed by the pump computer transaction sequencer 98 is to load register 128 with the console identification data available on console bus 19 (FIG. 3). This data comprises such information as date, time of day, station identifier, invoice serial number and any additional information which may be desired. This identification information can be generated by standard equipment in the form of a non-volatile memory and a real time clock.
Registers 126, 127 and 128 now contain all of the required transaction information. Each of these registers is connected to a register select logic network 131. The register select logic network 131 also receives a control input from register load and cassette control 123. A single output is provided from the register select logic network on output line 152. Output line 152 branches to provide parallel inputs to each of a series of temporary registers 132, 133, 134 and 136. A parallel data path 130 is provided between the register load and cassette control 123 and a register and cassette enable logic network 129. Serial outputs from the register cassette enable logic network 129 are provided to each of the temporary registers 132, 133, 134 and 136.
The next step performed by controller 13 is the selective unpacking of registers 126, 127 and 128 into the temporary registers 132, 133, 134 and 136. These temporary registers are then sequentially unpacked and transmitted on data line 148 which provides inputs to an And Gate 137 and the console display buffer 151. The And Gate 137 and the console display buffer 151 are enabled by control signals from the register load and cassette control 123 which appear on lines 156 and 157 respectively. The output of control display buffer 151 ia connected to the particular console which is involved in the transaction. The output of And Gate 137 is connected to a data output register 149.
One objective of this phase of data processing is to reformat the data contained in the temporary registers 132, 133, 134, and 136 before placing it into the data output register 149. Another objective is to provide console display information by selecting appropriate data from the Register 126 and transferring it to the console display buffer 151. These objectives are accomplished in the following manner. For the purpose of explanation, it will be assumed that the temporary register 132 is 16 bits long and the first 16 bits of register 127 are to be transferred to temporary register 132. To perform the 16 bit transfer operation, the output from clock divider 104 which provides 16 pulses within the period of the most significant bit is gated by timing logic network 99 into the timing output line 124. These pulses are received by the register load and cassette control 123 and sent simultaneously to register 127 and register select logic network 131. In this manner the information present in register 127 is shifted to register select logic network 131. In addition, the register load and cassette control 123 causes the register and cassette enable logic network 129 to enable temporary register 132. This permits the output signal 152 from the register select logic network 131 to pass into temporary register 132.
Following the transfer of data from register 127 into temporary register 132, registers 126 and 128 are similarly unloaded into the remaining temporary registers 133, 134 and 136 as required. The selective loading of the data output register 149 can then commence. Simultaneous clocking for the data output register 149 and enabling of the And Gate 137 is provided by clocking line 154 from-the register and cassette enable logic 129 and enable line 156 from the register load and cassette control 123, respectively. By providing synchronized clock pulses to both the data register 149 and a particular temporary register, such as 133, the contents of register 133 can be transferred into a section of register 149. An enable signal 157 from the register load and cassette control 123 is also provided to console display buffer 151 thus shifting the data on signal line 148 into the console display buffer 151.
The order in which the temporary registers contents are transferred into the data output register 149 is controlled by the pump computer transaction sequencer 98 which operates through the register load and cassette control 123. The pump computer transaction sequencer 98 also enables the console display buffer 151 by way of line 114 so that the data in the console display buffer 151 can be displayed on console 10. This information may be used by the operator for visual verification of the information.
When the loading of data output register 149 has been completed, the information can be written onto the cassette tape 27. This operation is performed under controller 13 supervision.
A tape address counter 159 is used to locate information on the cassette tape. It is connected to the register load and cassette control 123 by line 158. A single pulse is sent from the register load and cassette control 123 along line 158 to update the tape address counter 159. This pulse adds a single digit to the address of the cassette tape 27.
A control sequence network 163 is connected to reg ister load and cassette control 123 by parallel inputs on line 162. The control sequence network 163 also receives an input on line 161 from the register and cassette enable logic network 129. The control sequence network 163 has a single output which goes to cassette 27 along the parallel data path 164. Signals on line 161 and 162 cause the control sequence network 163 to issue a signal on parallel data path 164 which advances the cassette tape 27 to the designated address. Information contained in the data output register 149 is clocked into an output line 166 which feed the cassette tape 27. Synchronism of the data with the tape is insured through a phase locked loop. Clock pulses for the phase locked loop are provided on signal line 164 which outputs from the control signal network 163.
Verification of the tape data is accomplished by reversing the tape to the address carried in the address counter 159. A tape read is then performed and the information in data output register 149 is compared bit by bit with the information on cassette tape 27. A failure to verify can be sensed and an error indication supplied to the console 10.
The writing of transaction data onto the cassette tape is the ultimate purpose of the System but controller 13 must be cleared to accept the next transaction. A low to high voltage transition will appear on line 167 from the pump computer transaction sequencer 98 or on line 168 from the TBA transaction sequencer 117 which are connected to an Or Gate 169. This voltage transition will result in a signal appearing on a transaction complete line 171 which is connected between the Or Gate 169 and the transaction-in-progress flip-flop 83. This signal will reset the transaction-in-progress flipflop 83 and thereby clear the controller 13 to accept another transaction.
MULTIPLEXER The details of multiplexer 12 are shown in FIG. 5. The multiplexer 12 provides a two way signal selection interfacing between controller 13 and the operator consoles 10, 11 which are alligned on console bus 19.
The first function of multiplexer 12 is to ascertain whether the controller 13 is free to accept transaction data. This is accomplished when a request switch is depressed on the particular operator console 10 which causes a low to high voltage transition on the request line 82. The request line 82 is input to the transactionin-progress flip-flop 83 (FIG. 4) to transmit a busy signal on line 84 (FIG. 4). Line 84 passes directly into the Not And (NAND) Gate 179. It also provides an input to a Not And Gate 183.
When a high voltage is on the busy line 84 and the request line 82, Not And Gate 179 will output a low voltage which is fed directly into a Not And Gate 181. The output of Not And Gate 181 provides an input to Not And Gate 183 on line 182. In like manner the output of Not And Gate 183 provides an input to Not And Gate 181 on Line 184. With a low voltage input coming from Not And Gate 179, Not And Gate 181 will output a high voltage which is fed to Not And Gate 183 on Line 182. With the inputs on Line 177 and 182 both being high, Not And Gate 183 will issue a low voltage output on line 184 to Not And Gate 181. In this manner, the high voltage output of Not And Gate 181 will be sustained. This signal provides a high voltage for the begin line 87 and also provides an input to the Not And Gate 187 on line 186 and to the logic network 196. If the controller is already in a busy state at the time that the request button on operators console is pressed, the Not And Gate 187 will output a signal on Line 188 which will indicate a rejection on the operators console. The operator 30 must then wait a nominal period of time for the controller 13 to clear.
When begin line 87 goes high, the other signals on console bus 19 become active. Each console 10, 11 through N provides an input to a console select multiplexer 191 via a line 194, a console A signal multiplexer 192, and a console M signal multiplexer 193. The number of console signal mustiplexers will vary with the different types of data generated by the System. Each console signal multiplexer 192 and 193 will receive the same type of data from each of the consoles 10, 11 through N on console bus 19. All of the signals from a single console, such as console 10, will be in phase.
The console select multiplexer 191 provides an input to logic network 196 which in turn controls a counter 197. The counter 197 is used to generate binary data on selector lines 198 which provide inputs to each of the console signal multiplexers 192 and 193. When a request button is pressed on operators console 10, a high input signal on line 194 will be sent to the console select multiplexer 191. The console select multiplexer 191 will detect the high input and set the logic network 196 in operation. The logic network 196 will stop the counter 197 on the binary address corresponding to the number of the console 10 whose request button was pressed. This in turn will cause the selector lines 198 to stop on the data input line from console 10 within each of the console signal multiplexers 192, 193. With respect to the console A signal multiplexer 192, this will mean that its only output can be the data on the input line which comes from console 10. This data is placed on a data line 199 which is connected between the console A signal multiplexer 192 and the controller 13. Each of the remaining console signal multiplexers will similarly output the data on console 10 into controller 13.
The counter 197 will continuously scan the addresses in the System until it is stopped by logic network 196 at the address determined by console select multiplexer 191. The logic network 196 will not stop until it has received a high voltage on line 186. The counter 197 will not begin its scan again until a low voltage has appeared on line 186 and the logic network 196 starts the counter 197. A low voltage on line 186 can occur only after the transaction has been completed and the transaction-in-progress flip-flop 83 (FIG. 4) has been reset.
Control and display signals are sent from the controller 13 through a series of And Gates 201, 202, and 203 which in turn pass the data to the particular operators console 10. A signal is set from logic network 196 on line 204 which simultaneously enables the And Gates 201, 202 and 203.
The selector lines 198 are also connected to each of the consoles 10 and 11. In addition, a console enable signal which is generated by the logic network 196 is pfiividedto each console 10 and 11 as shown by line 207. These lines 198 and 207 will be in phase only with the particular console associated with the transaction. In this manner, only the particular console will be allowed to place its data on the input lines to the console signal multiplexers 192, 193. The other consoles are locked out of the multiplexer 12 since they are out of phase with the console address signal on selector line 198 and the console enable signal on line 207.
It can be seen in FIG. 1 that multiplexer 12 enables communication from the operator consoles 10 and 11 to the controller 13 and from the controller 13 to the operator consoles 10, 11. Furthermore, it contains the logic necessary to lock up the particular console 10 associated with the transaction and lock out all other communication channels until the transaction in progress is completed.
CONSOLE In general, two types of consoles can be used with the System. The least complex of these consoles is shown in FIG. 7 and numbered 210. This console will typically be located proximate to a pump such as pump 9 and will be programmed to handle only the transactions of that pump.
Console 210 has a Busy Light 211 which is capable of intermittent operation. A Clear Light 212 and an Entersale Light 213 are also provided. These three lights 211, 212 and 213 are proximate to each other.
An Entersale Button 214 is translucent and has a background lamp associated therewith. A Reset Button 216 is located proximate to the Entersale Button 214. The Console 210 is also provided with a Credit Card Slot 217 which is sufficient in length to accept the typical business credit card. The credit card slot 217 is beneath the three lights 211, 212 and 213 and the two buttons 214 and 216. Beneath the credit card slot 217 is a receipt dispenser 218. 7
From the foregoing description of the various parts of the Console 210, the operation thereof may be readily understood. After filling a vehicle with gasoline, the Operator 30 will replace the gasoline hose in its cra' 'dle, causing the pump 9 to be turned off. During the pumping operation, the Busy Light 211 will be lit.
When the pumping operation has been completed, the
flash intermittently. When the System is relieved from its Busy Status, the Busy Light 211 will remain off. The Operator will then make a second attempt to engage the System by depressing the Entersale Button 214. Acceptance of the request is signalled by a Background Lamp which is not shown but underlies the Entersale Button 214. This visual feedback to the Operator 30 indicates that his transaction is in progress.
Completion of the transaction by the Controller 13 is indicated by his signal on Busy Line 84 (FIG. 4) which causes the Clear Light 212 to activate. The Receipt Dispenser 218 will then provide a hard copy of the transaction data for the customers use. Additionally, a carbon copy can be provided to the service station owner, if he desires to maintain a double c lieclain the System.
The Reset Button 216 will be used for calibration and restart if the System is subjected to a power failure. The Reset Button 216 can also be used if the Credit Card is removed prior to the completion of a transaction. A special card will be in the possession of the service station owner or a key operator of the System. This special card will be inserted into the Credit Card Slot 217 and the Reset Button 216 will then be depressed. This will result in the calibration and restart of the System.
A second type of Console 220 is shown in FIG. 6. This Console 220 is a general purpose console which is interfaced with the entire System and is physically located on a pump island or other location of general convenience. The Console 220 consists of four major sections; display, controls, credit card, and output.
The display section contains a Prompter Display 221, a Pump Number Indicator 222, and a Pump Output Display 223. These three displays, 221, 222 and 223 are aligned on a planar surface 224, which is substantially normal to the operators line of sight.
The control section of the Console 220 consists of a key board 226, a cash switch 227, a credit switch 228, a pump number selector 229, and an Entersale switch 231. These five controls, 226, 227, 228, 229 and 231 are located proximate to each other.
The credit card section consists of a credit card slot 236, an OK indicator lamp 237, a reject indicator switch 238, and a verify button 239 which will be located proximate to each other.
The output section consists of a receipt tray 241.
This general structure is used in the following manner. Assuming first that a gasoline transaction has just been completed, the operator 30 will proceed to the island" where console 220 is located. The prompter Display 221 outputs a sequence of visual text instructions to the Operator 30 which are intended to guide him in a step by step use of the console 220. This feature is included to facilitate operation of the console 220 by non-skilled and/or transient type labor which is typically employed by retail gasoline distributors. The Prompter Display 221 will initially tell the operator 30 to depress the Pump Number Selector 229 or one of the sale code buttons 230 which are shown as blank keys on the keyboard 226. After the Pump Number Selector 229 or the Sale Code Buttons 230 are depressed, the console 220 will know whether it is dealing with a Gasoline Transaction or a TBA Transaction.
The next operation to be performed is automatically displayed on the Prompter Display 221. If the Pump Number Selector 229 is depressed, the Prompter Display 221 will tell the Operator 30 to enter a two digit number on the keyboard 226 which corresponds to the number of the pump such as Pump 8 which was used in the transaction. An invalid number will cause a reject indicator 242 to light, and a reset will then be initiated. Once a valid number has been entered, that number will be displayed on the Pump Number Display 222.
The Prompter Display 221 will next request that the cash button 227 or the Credit Button 228 be depressed to indicate the method of customer payment. If the Credit Button 228 is depressed, the customers credit card is inserted into the Credit Card Slot 236. If this step is not properly carried out, the reject lamp 242 will light and the prompter display 221 will indicate the problem.
The next operation by the Operator 30 is to depress the Enter Sale Button 231. This causes the multiplexer 12 (FIG. 1) to establish a communication path between a Console Data Register (Not Shown) and the Controller 13. All further data entry or control from the console is inhibited. Shortly after the Entersale Button 231 has been depressed, the amount of fuel in gallons, and the total cost of the transaction in dollars is displayed on the pump output register display 223. This provides a visual feedback to the Operator 30 who can use it to verify the sales information.
Within about three seconds from initially depressing the Entersale Button 231, the transaction will be completed. Each of the Controller operations discussed in previous sections will have been performed and the hard copy receipt for issuance to the customer will be dispensed in the receipt tray 241. The inserting of the credit card into the credit card slot 236 and the sequential depressing of five buttons on the console 220 takes in many cases no more than ten seconds. In total, the operator requires less than fifteen seconds to complete the billing phase of each gasoline transaction.
A TBA transaction is entered on console 220 in a manner similar to that for entering data on a gasoline transaction. However, in the case of a TBA transaction, one of the sale code buttons 230 is depressed instead of the pump number selector. Typically, the sale code buttons 230 show legends such as oil, labor, tire/battery and accessories. The type of TBA sale would be coded within these four categories.
If a custoner purchases batteries and desires to use his credit card to pay for the purchase, the operator 30 would first depress the sale code button Tire/Battery. The console 220 would then set up the TBA transaction code which directs the processing by controller 13. After the appropriate sale code button 230 has been depressed, the Prompter Display 221 will instruct the operator 30 to depress two numeric keys on the key board 226 to further define the article being sold. These numbers will be sequentially decoded and entered into a data buffer, which has not been shown, in the order in which they are depressed. The reject indicator 242 will light if more than the designated number of symbols have been entered and the prompter display 221 will pinpoint the problem.
If no error has been made, the prompter display 221 will instruct operator 30 to depress the cash button 227 or the credit button 228 to indicate the method of payment. The prompter display 221 will instruct the operator 30 to enter the amount of the purchase as a four digit number, including dollars and cents. This figure will be displayed in the dollars section of the output register display 223. The prompter display 221 will then instruct the operator 30 to enter the sales tax on the amount showing on the output register display 223. In more sophisticated models of the System, the sales tax will be computed internally, as well as automatically, and entered in the appropriate temporary data register. At this point the prompter display 221 will instruct the operator 30 to put the customers credit card into the credit card slot 236. The Entersale Button 231 is then depressed and the credit card is read. If the read is successful, the multiplexer 12 will establish a data path between the console 220 and the controller 13. Once the controller 13 has requested a readout of the console data register which has not been shown, preparation of a receipt will be initiated.
The receipt preparation is accomplished in two steps. The first step is to emboss the receipt with the credit card information. The second step is to select information from the console data register, decode this information, and print it on the receipt. This can be accomplished by a number of printers that are state of the art. After the receipt has been prepared, it is dispensed from the receipt tray 241.
The System can employ a credit card verification phase which will alter the sequence of events in the following manner. All transactions can begin with a request to identify the method of payment by depressing either the cash button 227 or the credit button 228. In the event that the credit button 228 is depressed, the Prompter Display 221 will then instruct the Operator 30 to insert the customers credit card into the Credit Card Slot 236 and then to depress the verify button 239. The Operator 30 will then proceed to enter the transaction information in the sequence noted previously. The verification phase is handled initially so that the verification can be carried out while the transaction data is being entered. In the event the credit card number fails to verify, the sale will be rejected and the Reject Indicator Lamp 238 will light. If the credit card checks out, the OK Indicator Lamp 237 will light. In the case of a stolen credit card, an indicator lamp imbedded in the Verify Switch 239 will indicate the problem to the operator.
It should be understood that various modifications and equivalents incorporating the foregoing described invention may be utilized. Thus, the scope of this inveniton is to be read only in light of the following claims.
1. A fluid dispensing data processing apparatus comprising:
at least one fluid pump.
at least one data generation means connected to each of the fluid pumps for automatically generating dispensing data;
a selecting means with parallel inputs from each of said data generation means for detecting the data relating to a single transaction;
a magnetic memory storage device; and,
recording means connected between said selecting 60 at least one operator console;
a multiplexer connected between said operator consoles and said selecting means for locking the particular console involved into said selecting means; and,
i request means within said multiplexer for ascertaining the non-busy state of said selecting means. 4. The fluid dispensing data processing apparatus and system claimed in claim 1 wherein said data generation means comprises:
an optical transducing means connected to said fluid pumps for creating an electrical signal related to the quantity of fuel dispensed; and,
pump computer means connected to the output of said transducing means for calculating the total cost of fluid dispensed and storing variable identification information.
5. The fluid dispensing data processing apparatus claimed in claim 3 wherein said multiplexer comprises:
at least one console signal multiplexer having a data input from each of said operator consoles; and
enabling means connected to said console signal multiplexer for enabling a particular console data in each of said console signal multiplexers.
6. The fluid dispensing data processing apparatus claimed in claim 2 wherein said recording means comprises:
temporary registers for temporarily storing digital information;
shifting means connected between the parallel combination of said data generation means and said data compilation means, and said temporary registers;
control means connected between said temporary registers and said memory storage device for controlling the writing of data into said memory storage device;
7. The fluid dispensing data processing apparatus claimed in claim 6 further comprising:
sequencing means connected between said selecting means and said recording means for arranging the I data into a desired configuration prior to writing the data into said memory storage device; and, verification means for insliring that the data written into said memory storage device corresponds with the data originated by said data generation means and said data compilation means.
8. The fluid dispensing data processing apparatus and system claimed in claim 4 wherein said pump computer means comprises:
calculating means having inputs for quantity of fluid dispensed and price per unit volume of fluid for computing the total cost of the fluid dispensed;
a variable identification information register in parallel with said multiplying means for storing variable identification information;
an output register connected at the outputs of said multiplying means and said storage means for storing all data input to and generated by said pump computer means.
9. The fluid dispensing data processing apparatus and system claimed in claim 8 wherein said multiplying means comprises:
a binary counter connected to said transducing means for counting the pulses generated by said transducing means;
a quantity decoder/register connected at the output to said binary counter for storing information related to total quantity of fluid dispensed;
a unit price register having manual and remote inputs;
a unit price register/decoder.
10. The fluid dispensing data processing apparatus and system claimed in claim 4 wherein said transducing means is a flow meter transducer comprising:
a fluid pump shaft;
a transducer connected to said fluid pump shaft, and having equally spaced holes aligned in a circular configuration on a transducer wheel;
a mounting bracket;
a light emitting diode mounted in such a manner whereby light emitted by said diode will pass through the holes in said transducing wheel; and,
a photo transistor mounted to receive light emitted by said light emitting diode passing through said holes in said transducer wheel.
11. The fluid dispensing data processing apparatus claimed in claim 5 wherein said enabling means comprises:
a console select multiplexer having an input from each of said operator consoles;
a counter having outputs to said console select multiplexer and each of said console signal multiplexers; a logic network means having an input from said console select multiplexer and an output to said counter for stopping said counter on the number selected by said console select multiplexer;
outputting means within each console signal multiplexer for outputting the input signal corresponding to the console number on which said counter has stopped; and,
disabling means within each console signal multiplexer for disabling all console inputs not enabled by said outputting means.