"TRANSACTION CONTROL SYSTEM"
This invention relates to a transaction control system, and more particularly to a system whereby a user on the presentation of a card and verification 5. of. the same can automatically purchase commodities, such as petrol dispensed at a petrol filling station.
DESCRIPTION OF THE PRIOR ART
In an earlier Australian Patent No. 495,076 there is described a credit system whereby a user can on 10. presentation of a card or token be provided with commodities that are desired.
That system is a satisfactory system but with advancing technology it has now become possible to provide improved owner control of that system.
15. United Kingdom Patent No. 1,400,654 refers to information, re validity of credit cards, stored in a remote date bank and United Kingdom Patent No. 1,356,425 refers to a customer "meter-token" device which retains
details of total fuel taken.
United States Patent No. 3,484,020 describes the techniques necessary for control of multi-pump set up via *a one card reader and United States Patent No. 5. 3,436,736 refers to two cards to match a patients drug requirements against the drugs in a dispensing unit at a hospital.
United States Patent No. 3,401,830 describes the use of credit cards together with memorized numbers for 10. protection against loss of that card while United States Patent No. 2,792,148 describes the use of credit cards to dispense petrol.
A high security system is described in United States Patent No. 3,774,743 which enables a magnetic 15. credit card code to be changed each time it is used and the system updated to recognise a new number at the next use of the cards.
BRIEF DESCRIPTION OF THE INVENTION
Thus in a general form of the invention there 20. is provided a transaction control system whereby a holder of the card may purchase and have recorded against his account the purchase of commodities such as petrol, the system being such that on presentation of the user card which is verified against a card 25. presented by the issuer of the credit card, that the verification gives an accept signal toβ a dispensing mechanism to allow the user to dispense the commodity, the system including means whereby when the
dispensing is completed that there is an automatic tallying and print-out of the transaction with the users account being debited the amount dispensed. In a preferred form of the invention the system 5. would use a magnetically coded card which is adapted to be used with a programmable calculator having print-out means .
This invention is applicable to such things as petrol dispensed at a petrol filling station
'10. as indicated earlier but its also applicable to situations where control is required of a fleet of vehicles or the like so that not only information may be stored, recorded and displayed in relation to commodities dispensed but also analysis of the
15 • dispensing of such commodities may provide further management information.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a schematic operational diagram,
FIG. 2 is a circuit diagram of the electronic 20. functions,
FIG. 3 is a diagram of the sequential relation of part of the circuit, and
FIG. 4 is a diagram of the timing of data transfer.
25. In the schematic operational diagram shown in Fig. 1, the programmable calculator 1 is interfaced to a control centre 2, the programmable calculator accepting a programme card 3. The chomeric pad 4 of the calculator is used to supply further information
3a.
to the calculator 1 , together with a data card 5. The control centre is also connected to the pump 6 and a loom 7 showing the operational state of the system. The control centre has code wheels to set the machine code.
Referring now to Fig. 2 the operation of the electronic circuitry interfaced to a HP97S calculator in the fuel control system is shown.
4 .
Six primary functions are implemented viz:-
(1) Data may be entered into the calculator via an external keypad.
(2) Data may be entered into the calculator via 5. a magnetic card reader.
(3) A hardware check of the unit's identification code is made.
(4) Lamps are operated to indicate the status of the unit.
10. (5) The fuel pump motor is controlled via a solid state relay.
(6) A measurement of the quantity of fuel supplied is made available to the calculator.
INTERFACE SIGNALS
15. Listed below are the names and primary functions of the signals used for data transfer and system control via the calculator interface.
Signal Name Programme Code Basic Functions
Flag 0 SFO, CFO Clock signal for serial data
20. transfer during code erification.
Also used to flash white light.
Flag 1 SF1, CF1 Data signal for serial data transfer during code verification. Also used to reset data latches 25. when Flag 2 = 1
Cont .
Signal Name Programme Code Basic Functions
Flag 2 SF2, CF2 System mode selection. When f
2 = 1, the external keyboard i enabled, when flag 2 = 0 the l counter is enabled.
Load Signal generated to initiate transfer of data to the calcul Data 24 signal lines used to transf
10. digit BCD data to the calculat
OV Zero level logic reference.
+5V Unused inputs on calculator in face.
Latch Enable LE = 1 after CF3, R/S ie when
15. 3 = 0 and the calculator has s program execution. In this st the interface is ready to rece the data input.
CIRCUIT DESCRIPTION
20. In the. following description the electronic circuitry is broken down into functional blocks, the function is defined and the operation of the circuitry is given.
Code Verification
An 8 bit unit identification code is sent serially 25. from the HP97S calculator using flags 0 and 1. Flag 0 is used as the clock and flag 1 as the serial data input to an 8 bit shift register (IC12) . The Code pattern at
the shift register parallel outputs is compared with that set up by two BCD thumbwheel switches by an 8 bit digital comparator (IC13, 14). At the completion of the 8 bit serial data transfer, the comparator 5. output is checked to see if the code is valid, and if so power is provided to the pump through a solid state relay.
TWo monostable multivibrators (IC17/2, IC17/2) and a gate (IC10/3) provide a 400μ sec pulse on each-
10. state transition of flag 0. The rising edge of this pulse clocks the shift register and the falling edge increments a counter (IC18/1) . After 8 clock pulses, Q3 of IC18 goes high "which in turn clocks the flip-flop (IC14/1) whose D input is driven* by the digital comparator,
15. Thus after 8 transitions in the state of Flag 0, the code sent out from the calculator is checked against that set up on* the thumbwheel* switches. If it is correct the white light and the solid state relay are switched on.
20. After the receipt of 8 pulses, the action of Q3 of IC18 going high disables its clock input and hence stops any further pulses from'being sent to the pump enable flip-flop (IC14/1) . The shift register and counter are reset when Flag 2 is set, while the flip-flop
25. is reset when the operator switches off the pump.
External Keypad
A number containing up to 6 digits can be entered into data latches via the external numeric keypad.
CYΓI y iPO
Operation of the ENTER key when the blue light is on initiates data transfer from the latches to the calculator. If more than 6 digit keys- are pressed before the operation of the ENTER key, the first 6 - 5. digits will be transferred to the' calculator. Operation of the CLEAR key when the blue light is on resets the latches and does not initiate a data transfer. Flag 2 must be set for keypad operation.
A keyboard encoder (IC7) detects the operation of 10. any of the numeric keys and produces the equivalent BCD code at its output, in addition to generating a strobe pulse the BCD code is presented to the latch data input bus via a tristate buffer (IC8) enabled by flag 2.
The strobe pulse is used to enable a second tristate 15. buffer (C2) onto the latch strobe bus after a decoded counter (IC1) has been incremented. The result is "equivalent to steering the keyboard decoder strobe output to one of the six data latches as defined by the counter (IC1) . The sequential relation between the 20. oscillator signal, the keyboard encoder strobe pulse, the counter incrementing and the tristate buffer enabling is shown in Fig. 3 (not to scale) .
The oscillator used to provide the debounce function in the keyboard encoder, and other system timing signals, 25. are formed by an RC network with a schmitt trigger input NAND gate (IC22/3) . The oscillator frequency is approximately lOKHz.
«
The closure of the CLEAR key is detected by sensing when Row 4 and Column 1 of the keyboard matrix are both
zero (IC9/4) . IC10/4 provides an inverted input or function to clear the data storage latches when the blue light is on and the clear key is pressed, or when Flag 1 is set (ie under program control) .
5. The closure of the ENTER key is detected by sensing when Row 4 and Column 3 of the keyboard matrix are both zero (IC9/3) . This is AND'ed with Flag 2 (IC10/2,, IC22/2) to set the Data Ready flip-flop.
Litres Counter
10. A 5 digit BCD counter is incremented each time a pulse is received via the pulser interface circuitry (3.6) and thus a tally is kept of the fuel being delivered in the current transaction. Transfer of data from this counter to the latches, and hence to the •
15. calculator is initiated by the end of pump operation detection circuitry. This counter is reset by Flag 2 when the keyboard mode is selected.
The counter (IC6) has internal tristate buffers enabling direct connection to the latch data input and
20. latch strobe buses. The output to the latch data input bus is controlled directly by Flag 2.
The end of pump operation circuitry triggers a monostable multivibrator (IC15/1) providing an output pulse of approximately 3m sees. For the duration of 25. this pulse, the oscillator (lOKHz approx.) is gated into the digit strobe scan clock input of .IC6. On each positive going transition of the scan clock input, the internal digit select counter is incremented and new BCD data transferred to the latch data input bus.
On each negative going transition of the scan clock input, a monostable multivibrator (IC15/2) is triggered and produces an output pulse at approximately 10μ sees to enable the digit select outputs of the counter and 5. hence pulse the required latch strobe line to store the BCD digit currently on the latch date input bus.
The timing sequences are shown in Fig. 4 (not to scale) .
The maximum time required to transfer all five digits 10. of the counter to the latches is 600μ sees (assuming lOKHz clock) .
The transfer of data from the latches to the calculato is initiated at the end. of the pulse generated by IC15/1, when it clocks the data ready flip-flop (IC 21/1) .
15. Control of Data Transfer to the Calculator
Transfer of data, stored in the latches, to the
HP97S calculator may be initiated in two ways and is dependent upon the mode in which the system is operating 20. as defined by the state of Flag 2.
When Flag 2 = 1 (keyboard mode) data transfer is initiated by the ENTER key; when Flag 2 = 0 (Pump operation mode) data transfer is initiated by the end of pump operation detection circuitry. In both cases 25. operation is conditional upon flag 3 having been cleared prior to the calculator halting on receipt. of a R/S instruction, as indicated by LE being at a logic 1 level.
10 .
The two flip-flops comprising IC21 control the initiation of data input to the calculator. When IC21/1 is setr either by the ENTER key from the keyboard or by the end of pump operation, it indicates that data is 5. ready in the latches for transfer to the calculator. On the next rising edge of OSC, the LOAD line to the calculator is set high. The calculator indicates that data is being accepted by setting LE low, which resets the data ready and load flip flops (IC21) .
10. Data from the latches goes to the six most significant digits of the 10 digit BCD calculator interface. The seventh digit is hardwired with the code corresponding to the instruction "Go to Label A". Thus after accepting the 6 digits of data into the X register, program
15. execution commences at the next LABEL A in the program.
End of Pump Operation Detection
The end of pump operation is detected by sensing the removal of supply to the pump motor caused by the switch operated when the nozzle is placed back in the 20. pump housing.
Sensing is achieved using a 240:12V transformer with a half wave rectifier and capacitor filter. The transformer is modified by reducing the number, of low voltage coils to 5 and used as a current detection 25. device. When the current drawn by the pump motor, drops to zero, data is transferred from the litres counter to the latches and then to the calculator (Section 3.3).
«
Pulser Interface
A pulser unit is installed in the pump to provide 30. 100 pulses per litre of fuel supplied. The pulser power
11.
supply is from the unregulated 12 Volt rail and its output requires conversion to match the 5 Volt logic level of the counter. This is achieved by a series resistor and diode clamp to the 5V supply rail. 5. A capacitor across the clock input improves noise rejection.
Power Supply
Power is supplied for the operation of the electronic circuitry and lamps via a 12 Volt transformer followed
10. by a fullwave rectifier and capacitor filter. This unregulated supply is used for the pulser, lamps, solid state relay and as the source for a 5.1 Volt zener regulated logic supply. A blocking diode is used to allow the calculator supply to .provide battery backup
15. of the logic functions under power. failure conditions.
The electronic control centre checks a program code against a thumbwheel switch code set in the control centre itself. In this way the system ensures that the owner of one unit, and pack of program cards cannot
20. use these program cards to alter the programming of a unit owned by someone else. In addition because each program has to have a secret code embodied within it, the system is able to ensure that it is secure from reprogramming by a programming expert such as a systems
25. analyst. The system will only give fuel if it is programme with those programs that were delivered with the machine.
The electronic control centre also cqntrols the action of the lights showing the status of the unit at any time. In addition the centre contains the necessary
12.
circuitry to provide power to the pump motor, detect end of fuel and record the amount of fuel taken as monitored by an electronic pulsing unit installed in the pump, the pulsing unit providing one hundred 5. electrical pulses for each revolution of the pulser shaft. The pulser shaft is rotated by a drive between it and the measuring head of any mechanical pump. The centre also allows access to the calculator" via the keypad and thereby enables the user to input user 10. numbers, vehicle numbers and odometer readings.
By using a programmable calculator, the system is such that before any transaction the person issuing the card, that is the garage owner would insert into the program of the calculator the particular code 15.' details applicable to that installation including the garage security code function so that on presentation by the user of his card that the unit is programmed to accept the card if the security function details coincide with the function on the users card.
20. The information for verification on the users card is not a coded number, but a complex mathematical function, and that on the garage owners card is also a different mathematical function, and the accept verification is only given if the programmable
25. calculator correctly correlates these two functions. Hence due to the large number of variables available in the mathematical function, it is virtually impossible to break the code by examination of any one or a plurality of cards. If it is suspected th,at unauthorised
30. use is made or attempted, then it is merely necessary to issue new cards.
13 .
The garage owners card could also be provided with information relating to a security function of current delinquent accounts so that if a delinquent account card is presented the unit would not provide- 5. the acceptable signal to the dispensing equipment and would notify the user and garage owner.
The garage owners card could also provide infor¬ mation relating to the current price relating to the petrol at that time, and give details for the total 10. consumption of the machine when it is required at the close of business and the total value of the fuel sold for the day can thus also be printed out at the end of the day.
The customers card can have information mechanically 15. presented on the tape relating to the company name, if desired and employees name if desired and the company account number.
On presenting the security card, the user then has • to punch into the system his own security number which 20. is known only to him and which verifies the ownership of the card.
Each card can also have its own card number stored on it if desired.
Thus if the accounts number and the security function 25. and the card number all * have the correct relationship of the mathematical functions with the garage security card function then the card is validated as the card is entered when the security number is punched in.
14 .
Thus the system is virtually foolproof for the components of the card of the user which may be parts of the account number, security number and card number thus tally with the garage security code number.
5. On validation of the card, the accept signal is transmitted to open the-power to the pump, and the pump is switched when the nozzle is taken out of the socket.
As fuel is drawn an electronic pulse is fed back 10. into the calculator and these pulses can be set at a level in the litres store of the calculator.
When the pump is switched off and when the pump nozzle is back in its socket then the machine prints out the fuel taken and the price charged, the 15. program for this being on each customer card.
In a preferred form it is suggested that the power on stores one pulse and a second pulse is given on power off supply to cause a print out in terms of the electrical power to the pump.
20. When a customer card is represented, the machine automatically updates it with the last transaction stored magnetically and the customer may have to actuate the program button to carry this out.
The customer at any time without the purchase of 25. any petrol or" other commodity can present his card and a print out will occur showing details of transactions, totals of volumes and costs and credit available.
15 ,
It will be seen that with this system that if there is a malfunction in any of the machines - such as the programmable calculator, it is merely necessary to disconnect the calculator at its interface,
5. and replace it with another calculator. As all the information required for the calculator Is held on the customer card and also the garage owners card, that the maintenance facility is greatly increased for it- is merely necessary to .replace the machine
10. or equipment, and on presentation of the garage owners card the machine is programmed for the next transaction.
The security of the system can be enhanced by the provision of instructions to disregard any 15. request to print out security details, such as numbers, functions and the like and so that if any unauthorised attempt to obtain this information is made, the instructions are ignored.
If the owner of the garage suspects any security 20. . leak or decoding of the system, he need only change the code on his card, and as each customer presents his card these could be either recoded or replaced with a correctly coded card.
Similarly If a customer is a delinquent account 25. then it is merely necessary for this information to be incorporated onto the garage owners card to prevent any further use of that card.
A further situation to which this invention is applicable is in relation to owners of fleets 30. of vehicles and-in relation to control and management of such fleets.
15a .
With such systems not only can management determine fuel and other accomodity usage for each vehicle in the fleet but also aberrations in fuel or other commodity usage can be highlighted and 5. investigated.
An example of such a problem may show that the usage of fuel per kilometre may be increasing or varying widely. This may indicate problems of keying in information or it may indicate problems 10. in relation to a particular vehicle. Such information may indicate that the vehicle is due for maintenance.
It will be realised that further information could be keyed in at the time of fueling such as the odometer reading and hence management control 15. information could be obtained in relation to regular maintenance either based upon the time period since the last maintenance or the distance travelled since the last maintenance.
Comparison of performance information between 20. vehicles of one type in a fleet and vehicles of another type could also give information as to when vehicles should be replaced and what vehicles should be purchased.
It will be realised that if each vehicle in 25. a fleet has a particular code number and that when that vehicles code number punched into a key pad or its identification card is inserted into a card recorder then supply of the wrong type of fuel could be prevented by only the dispenser for that type 30. of fuel being turned on. This would mean that for instance only diesel vehicles could have access
15b .
to diesel fuel thereby preventing a major problem with fleet owners at the moment.
Further control systems that could be included with a programmable fleet owner system such as described
5. above could include the fact that the system may be attached to a mobile tanker fueling vehicles at distant or varying sites. The programme may be such that access can only be obtained at specific times of day or specific or pre-set amounts of fuel
10. may only be supplied per transaction.
Control may also be had for the fleet owners bunkering system with periodic supply of information relating to the amount of fuel left in a bunker and warning supplied when the fuel level is such 15. that re-filling Is required.
By the above described .system an entire fleet survey and management reporting system on particular or general problems may be obtained and problems requiring specific maintenance or action may be 20. initiated.
While the above has been described in relation to a fuel control system,, the invention can be readily modified to other control systems such as an Inventory control system for small businesses.
16 .
These control systems can relate to labour transactions to monitor the hours worked by employees and to calculate weekly pay, the system can also cater for different hourly worker rates and analysis 5. of employees time keeping programr
Project transactions can also be controlled to monitor the parts and labour booked to individual jobs in the production area and also inventory transactions to enable any stored materials to be 10. accurately monitored and material.Ξ.and movements to be recorded on both a goods inwards and outwards basis.
It also can be utilised for industrial premises security systems where the owner card can thus determine the coded numbers of 'cards which are accessible to 15. various areas and also accessible times can be programmed into -the system.
Although one form of the invention has been described in some detail it is to be realised that the invention is not to be limited thereto but can include various 20. modifications falling within the spirit and scope of the Invention.