FOR COST/PRICE

Electronic order pricing system

4128758

Abstract

An electronic order pricing system including a data card having a plurality of item lines, each representing an orderable item with certain of the lines bearing indicia representing a quantity of items ordered by a customer, apparatus for reading the data card line by line and providing outputs representing the data thereon, circuits for calculating the quantity of each item ordered, a programmable price select matrix storing price data for each orderable item, circuits for using the stored price data and the item quantities calculated to calculate a total price for the items ordered, a sales tax based on the total price and a total order price, and circuits for effecting printout of the calculated price data on the data card.


Claims

We claim:

1. In an electronic order pricing system, the improvement comprising a data card having indicia representative of orderable items and the quantity of each item ordered for a given order, said data card having a plurality of rows with a row mark adjacent each row, certain ones of said rows representing an orderable item and at least one of said certain rows having a plurality of quantity marking positions which as marked represent a different quantity of the item ordered and a corresponding printout area for receiving printed data representing a row total price for the quantity of the item ordered for such row, detecting means for detecting said indicia including first means responsive to the detection of at least the row mark for said row to provide a first output signal identifying the ordered item and a second means responsive to the detection of a mark in one of the quantity positions of said one row to provide a second output signal indicating the quantity of the identified item ordered, processing means responsive to said first and second output signals to effect the calculation of a row total price representing the cost for the quantity of each item ordered and an item total price representing the sum of the row total prices, and printout means controlled by said processing means to effect the printout in the corresponding printout areas of said data card of the row total prices calculated.

2. In an electronic order pricing system, the improvement comprising a data card having a plurality of first indicia each representative of a different orderable item and at least a second indicia associated with one of said first indicia for indicating the quantity of the corresponding item ordered for a given order, detecting means for detecting said first and second indicia including first means having counting means for counting the number of said first indicia detected and identification means controlled by said counting means for providing a separate item identification signal for each of said first indicia detected to indicate which item is to be priced, and second means for providing an item quantity signal which indicates the quantity ordered of the item, price select means responsive to the item identification signal provided for each item ordered to provide for each item a set of price output signals, each signal of a set representing a digit of a unit price for the item representing by the first indicia detected, and processing means for using said price output signals and said item quantity signal for calculating a total price for the quantity of the item ordered to thereby provide price signals which represent the total price for the quantity of the item ordered.

3. The improvement in an electronic order pricing system as set forth in claim 2 in which said price select means includes path means for distributively routing said first output signal over a selected set of paths, each path of said set representing a digit of the unit price of the item ordered.

4. The improvement in an electronic order pricing system as set forth in claim 2 in which said processing means includes signal transfer means, signal accumulating means, and control means for controlling said signal transfer means to transfer each set of price output signals from said price select means to said signal accumulating means a number of times equal to the quantity determined for a corresponding item, whereby said signal accumulating means accumulates signals which represent a row total price for the quantity of each item ordered.

5. The improvement in an electronic pricing system as set forth in claim 4 in which said control means includes quantity means having coincidence detecting means, including a plurality of comparator circuits, each corresponding to a different item quantity to be determined, responsive to said second output signal for determining the quantity of the item ordered, means for providing enabling signals for sequentially enabling said comparator circuits, said second output signal being extended to a predetermined one of said comparator circuits which corresponds to the quantity of the item ordered whereby said one comparator circuit is enabled responsive to the coincidence of said second output signal and an enabling signal to provide a control signal representative of the item quantity for disabling said signal transfer means.

6. The improvement in an electronic order pricing system as set forth in claim 5 in which said item quantity means includes tax rate means for controlling said coincidence detecting means to effect the calculation of a sales tax for said order based on a preselected percentage for addition to the item total price to thereby provide the total price for said order.

7. The improvement in an electronic order pricing system as set forth in claim 6 which includes means for printing on said data card and row total price for each item ordered, the quantity of each item ordered, the item total price, the sales tax, and the total price for the order.

8. The improvement in an electronic order pricing system as set forth in claim 1 in which said detecting means includes scanning means for optically scanning a predetermined area of said data card which contains said indicia to detect said indicia and means responsive to the detection of an item quantity mark to increase the sensitivity of said scanning means.

9. In an electronic order pricing system the improvement comprising a data card having a plurality of rows and an index mark in each row, certain of said rows representing an orderable item, and at least one of said item rows including a quantity mark which represents the quantity of an item ordered for an order; card scanning means for detecting said marks, one at a time; means responsive to the detection of each of the index marks of said certain rows to generate a corresponding index signal for each row to indicate which row is being scanned; price select means responsive to the index signals generated for said certain rows to provide price signals representing the unit price for each orderable item; first control means responsive to the detection of the index marks of said certain rows to generate a first control signal for effecting the determination of the quantity of each item ordered, the calculation of a row total price for the quantity of each item ordered and the printing on said data card of the quantity of each item ordered and the row total price calculated for each ordered item; means for for accumulating the row total prices for all of the items ordered to provide an item total price; second control means responsive to the detection of a first other index mark to generate a second control signal to effect the printout on said data card in the row indexed by said further index mark of said item total price; third control means responsive to the detection of a second other index mark to generate a third control signal for effecting the calculation of a sales tax for said order, the printout on said data card of the sales tax in the row indexed by said second other index mark, and the addition of said sales tax to said item total price to provide a total price for the order; and fourth control means responsive to the detection of a third other index mark to generate a fourth control signal for effecting the printout on said data card in the row indexed by said third other index mark of the total price for the order.

10. In an electronic order pricing system, the improvement comprising a data card having a plurality of rows with a row mark adjacent each row, certain ones of said rows representing an orderable item, at least one of said certain rows being marked with a quantity mark representing a quantity ordered of the item represented by said one row, card scanning means for scanning said data card to detect said row marks and any quantity marks in said certain rows, said card scanning means including first means having means for counting the number of row marks detected, and identification means for providing a separate item identification signal for each row mark detected which indicates which item is to be priced, and second means for providing an item quantity signal which indicates the quantity ordered of the item, price select means responsive to said item identification signal to provide a set of price output signals, each signal of a set representing a digit of the unit price of the item representing by the marked row, and calculating means for using said price output signals and said item quantity signal for calculating a row total price for the quantity of the item ordered and the providing row price signals which represent the total price for the quantity of the item ordered.

11. The improvement in an electronic order pricing system as set forth in claim 10 in which said price select means includes path means for providing a different plurality of sets of signal paths for each item identification signal provided, each path set representing a digit of an item unit price and each path of each path set representing a value for the digit, said path means including a plurality of path select devices for each path set for selecting a path in each path set, each said item identification signal traversing selected paths to provide an individual set of price output signals.

12. The improvement in an electronic order pricing system as set forth in claim 11 in which each of said path select devices comprises socket means having a plurality of contacts each connected to a different output of said price select means and plug means connected to the identification means of said card scanning means and removably insertable into said socket means to engage a selected one of said contacts, each said item identification signal being routed through said price select means over an individual signal path of each set and over a path select device associated therewith to selected outputs of said price select matrix.

13. In an electronic order pricing system the improvement comprising a data card having a plurality of rows with a row mark adjacent each row, certain ones of said rows representing an orderable item, at least one of said certain rows being marked with a quantity mark representing a quantity ordered of the item represented by said one row, card scanning means for scanning said data card to detect said row marks and any quantity marks in said certain rows including a first means for providing, whenever a quantity mark is detected in a marked row, an item identification signal for said marked row which indicates which item is to be priced and a second means for providing an item quantity signal which indicates the quantity ordered of the item, price select means responsive to said item identification signal to provide a set of price output signals each signal of which corresponds to a digit of the unit price of the item represented by the marked row, first accumulator means, signal transfer means controlled by said second means for transferring to said first accumulator means the set of price output signals provided by said price select means for each item ordered as each item row is scanned, the price output signals for each item ordered being transferred to said first accumulator means a number of times equal to the quantity of each item ordered, to that said first accumulator means accumulates said price output signals to provide row total price signals which represent the total price for the quantity of item ordered, second signal accumulator means, and meand for rendering said signal transfer means effective to transfer the row price signals provided for each marked row from said first accumulator means to said second accumulator means whereby said second accumulator means stores total item price signals which represent the total of the row prices for the ordered items.

14. The improvement in an electronic order pricing system as set forth in claim 13 which includes print control means, and means for rendering said signal transfer means effective to transfer to said print control means the row price signals and the item quantity signal provided for each marked row while the row is being scanned to effect the printout on said data card in the row being scanned of the quantity ordered of and the row total price for the item represented by the row being scanned, and for effecting the transfer to said print control means of the total item price signals after all of said certain rows have been scanned to effect the printout on said data card in a certain other row of the total of the item prices for the ordered items.

15. The improvement in an electronic order pricing system as set forth in claim 13 in which said first means includes means for determining the quantity of each item ordered while the price output signals corresponding to each item are being transferred to said first accumulator means and for inhibiting further transfer of said price output signals when the quantity ordered of an item has been determined.

16. The improvement in an electronic order pricing system as set forth in claim 13 which includes inventory register means responsive to each item quantity signal and item identification signal provided to register the quantity of each item ordered.

17. In an electronic order pricing system the improvement comprising a data card having a plurality of rows with a row mark adjacent each row, certain ones of said rows representing an orderable item, at least one of said certain rows being marked with a quantity mark representing a quantity ordered of the item represented by said one row, card scanning means for scanning said data card to detect said row marks and any quantity marks in said certain rows and to provide, whenever a quantity mark is detected in a marked row, an item identification signal for said marked row which indicates which item is to be priced and an item quantity signal which indicates the quantity ordered of the item, price select means responsive to said item identification signal to provide a set of price output signals each signal of which corresponds to a digit of the unit price of the item represented by the marked row and means for coding said price output signals into binary coded signals, first accumulator means including counting means for each digit for receiving digital pulses representing the value of each digit, signal transfer means including digital pulse generating means connected to said counting means of said first accumulator means, gating means interposed between said pulse generating means and said counting means and control means responsive to the binary coded signals representing each digit to enable said gating means to pass a number of digital pulses representing the digital value of each digit to a respective counter of said first accumulator means, said number of digital pulses being passed to respective counters of said first accumulator means a number of times equal to the quantity of each item ordered, so that said first accumulator means accumulates a number of digital pulses which represent the total price for the quantity of the item ordered.

18. In an electronic order pricing system the improvement comprising a data card having a plurality of rows with a row mark adjacent each row, certain ones of said rows representing an orderable item, at least one of said certain rows being marked with a quantity mark representing a quantity ordered of the item represented by said one row, card scanning means for scanning said data card to detect said row marks and any quantity marks in said certain rows including a first means for providing, at least whenever a quantity mark is detected in a marked row, an item identification signal for said marked row which indicates which item is to be priced, a second means for providing an item quantity signal which indicates the quantity ordered of the item and error indicating means for providing an error indication whenever more than one quantity mark is detected in one of said certain rows, price select means responsive to said item identification signal to provide a set of price output signals, each signal of a set representing a digit of the unit price of the item represented by the marked row, and calculating means for using said price output signals and said item quantity signal for calculating a row total price for the quantity of the item ordered and providing row price signals which represent the total price for the quantity of the item ordered.

19. The improvement in an electronic order pricing system as set forth in claim 16 in which said card scanning means includes data card reading apparatus for scanning said data card a row at a time, and advance means for advancing said data card past said card reading apparatus, means responsive to each item quantity signal for disabling said advance means to stop advancement of said card whereby the row of said data card having the pair of marks detected remains adjacent said card reading apparatus while the row total price is calculated for that row, and means for enabling said advance means after each row total price has been calculated.

20. The improvement in an electronic order pricing system as set forth in claim 19 in which said card reading apparatus scans a predetermined area of each row of said data card as said data card is advanced past said card reading apparatus, said card reading apparatus including means responsive to the detection of each quantity mark to increase the sensitivity of said card reading apparatus.

21. In an electronic order pricing system the improvement comprising a data card including indicia representative of orderable items and the quantity of each item ordered for an order and at least a first control indicia, detecting means for detecting said indicia including a first means for providing a first output signal representing an ordered item and a second means for providing a second output signal representing the quantity of the item ordered, calculating means responsive to said first and second output signals to effect the calculation of a subtotal price representing the cost of the items ordered and to provide price data representing said subtotal price, first accumulator means for storing said price data, said second means including tax rate means for establishing a percent tax rate for the order pricing system to permit a tax to be computed for the order, second accumulator means, control means responsive to the detection of said first control indicia to provide a control signal and transfer means responsive to said control signal for transferring said price data from said first accumulator means to said second accumulator means a number of times equal to a tax rate established whereby said second accumulator means stores tax data representing the tax for said order, said transfer means being further effective to transfer said tax data from said second accumulator means to said first accumulator means whereby said first accumulator means stores data representing the total price for the order.

22. The improvement is an electronic order pricing system as set forth in claim 21 in which said transfer means includes means for decreasing the tax data two orders of magnitude prior to the transfer of said tax data from said second accumulator means to said first accumulator means.

23. The improvement in an electronic order pricing system as set forth in claim 22 in which said transfer means includes means for rounding off said tax data prior to decreasing the order of magnitude of said tax data.

24. The improvement in an electronic order pricing system as set forth in claim 21 in which said tax rate means includes means for selectively providing outputs each representing a different tax rate, and said second means includes means for determining which output has been selected and for providing an inhibit signal to inhibit further transfer of said price data from said first accumulator means to said second accumulator means when the output selected has been determined

25. The improvement in an electronic order pricing system as set forth in claim 21 in which said tax rate means includes first means for establishing a whole percent tax rate and second means for establishing a fractional percent tax rate.

26. In an electronic order pricing system the improvement comprising a data card having a plurality of item rows which represent an orderable item, each item row having an index mark and certain of said item rows being marked with a quantity mark to represent a number ordered of the item of a marked row for a given order, scanning means for scanning said data card a row at a time to detect said marks including a first means for providing a first output signal in response to the detection of each row mark and a second means for providing a second output signal in response to the detection of each item quantity mark, counting means for counting the number of said first output signals provided and for providing an individual item identification signal for each item row as each row is being scanned, price select means responsive to each item identification signal to provide a set of price output signals which correspond to the unit price of the item identified, item quantity means including coincidence detecting means responsive to said second output signal to determine the number of items ordered for each marked row, first accumulator means, signal transfer means for transferring to said first accumulator means the price output signals provided for a marked row a number of times equal to the number of items ordered for the marked row so that the first accumulator means stores row price signals representing the price for the number of items ordered for said marked row, second accumulator means, said signal transfer means being effective to transfer to said second accumulator means the row price signals provided for each marked row whereby said second accmulator means stores total item price signals representing the total price for the ordered items.

27. In an electronic order pricing system, the improvement comprising a data card having a plurality of item rows each of which represents an orderable item, each item row having a row mark and certain of said item rows being marked with a quantity mark to represent a number ordered of the item of the marked row for a given order; scanning means for scanning said data card a row at a time and for providing a first output signal responsive to the detection of each row mark and a second output signal responsive to the detection of each item quantity mark; drive means for advancing said data card past said scanning means, means responsive to said first and second output signals for disabling said drive means to halt the advancement of said data card each time a row mark and an item quantity mark are detected simultaneously, counting means for counting the number of said first output signals and for providing an individual item identification signal for each item row as each item row is being scanned; price select means responsive to each item identification signal to provide a set of price output signals which correspond to the unit price of the item identified; means responsive to said second output signal to determine the number of items ordered for each marked row; first accumulator means; signal transfer means for transferring the price output signals provided for a marked row to said first accumulator means a number of times equal to the number of items ordered for the marked row so that the first accumulator means stores row price signals representing the price for the number of items ordered for said marked row; second accumulator means; said signal transfer means being effective to transfer to said second accumulator means the row price signals provided for each marked row whereby said second accumulator means stores total item price signals representing the total price for the ordered items; and means for enabling said drive means after the item row price signals provided in response to said first and second output signals have been transferred to said second accumulator means.

28. The improvement in an electronic order pricing system as set forth in claim 26 in which said price select means includes means for providing a plurality of sets of paths for each orderable item, each path set representing a digit of the unit price of an associated orderable item, and each path of a set representing a digit value, and path select means in each path set for selecting a path of each path set.

29. The improvement in an electronic order pricing system as set forth in claim 28 in which said path select means includes socket means having a plurality of contacts each connected to a different output of said price select means and plug means connected to said counting means and removably insertable into said socket means to engage a selected one of said contacts, each item identification signal being distributively routed through said price select means over an individual plurality of sets of paths provided to selected outputs of said price select means.

30. The improvement in an electronic order pricing system as set forth in claim 26 wherein said item quantity means includes tax rate means for establishing a percent tax rate for the order pricing system to permit a tax to be computed for the order, said signal transfer means being effective to transfer the total item price signals from said second accumulator means to said first accumulator means a number of times equal to the tax rate established whereby said first accumulator means stores tax signals representing the tax for the order, said signal transfer means being further effective to transfer said tax signals to said second accumulator means whereby said second accumulator means stores signals representing the total price for the order.

31. The improvement in an electronic order pricing system as set forth in claim 30 in which said tax rate means includes tax select switch means for selecting one out of ten outputs of said tax rate means, each representing a different whole percent tax rate, said item quantity means being operable to determine which output has been selected while said total item price signals are being transferred from said second accumulator means to said first accumulator means and to provide a signal for inhibiting further transfer of said total item price signals when the output selected has been determined.

32. The improvement in an electronic order pricing system as set forth in claim 31 in which said tax rate means includes further tax select means for establishing a fractional percent tax rate, said signal transfer means including control means for controlling said item quantity means to enable said whole percent tax to be computed for said order, to enable a fractional percent tax to be computed for said order, and to effect the addition of said whole percent tax and said fractional percent tax to said total price for the ordered items to provide said total order price signals in said second accumulator means.

33. The improvement in an electronic order pricing system as set forth in claim 26 in which said set of price output signals provided by said price select means include cent digit signals, dime digit signals, and dollar digit signals which represent the value of the digits of the unit price of the item identified, said first and said second accumulator means each including cent digit signal storing means, dime digit signal storing means, and dollar digit signal storing means, and said signal transfer means including at least a cent digit transfer section, a dime digit transfer section, and a dollar digit transfer section for transferring the price output signals which represent the value of the cent, dime, and dollar digits of the unit price over separate paths to a respective signal storing means of said first accumulator means, and from the signal storing means of said first accumulator means to respective signal storing means of said second accumulator means.

34. The improvement in an electronic order pricing system as set forth in claim 33 in which said item quantity means includes means for establishing a percent tax rate for the order pricing system to permit a tax to be computed for the order, said signal transfer means being effective to transfer the item total price signals from said second accumulator means to said first accumulator means a number of times equal to a tax rate established so that the cent digit signal storing means, the dime digit signal storing means, and the dollar digit storing means of said first accumulator means store tax signals representing the digits of a tax computed for the order, said signal transfer means including means to effect the transfer of the tax signals in the dollar digit signal storing means of said first accumulator means to the cent digit signal storing means of said second accumulator means, whereby said second accumulator means stores signals which represent the digits of the total price for the order.

35. The improvement in an electronic order pricing system as set forth in claim 34 in which said signal transfer means further includes means responsive to the signals which represent the dime digit of said tax for providing, prior to the transfer of said tax signals from said second accumulator means to said first accumulator means, a round-off signal whenever the dime digit is equal to or greater than five, and means responsive to said round-off signal to cause the tax dollar digit to be increased by one.

36. The improvement in an electronic order pricing system as set forth in claim 26 which includes inventory counter means having separate item quantity register means for each orderable item, said inventory counter means being responsive to each item identification signal to select item quantity register means associated with the item identified and being responsive to said second output signal to operate said selected register means to register the quantity ordered of the item identified.

37. In an electronic order pricing system the improvement comprising an order data card having a plurality of rows with a preprinted index mark adjacent each row, certain ones of said rows representing an orderable item, and at least one of said certain rows including an item quantity area adjacent the corresponding index mark having a plurality of quantity marking positions for receiving a pencil mark which indicates the quantity of the item ordered and a corresponding printout area for receiving printed data representing a row total price for the quantity of the item ordered for such row, detecting means for detecting said index marks and said pencil marks including a first means responsive to the detection of at least the index mark for said one row to provide a first output signal indicating the ordered item and a second means responsive to the detection of a pencil mark in one of the quantity positions of said one row to provide a second output signal indicating the quantity of the item ordered and calculating means responsive to said first and second output signals for effecting the calculation of a row total price representing the cost for the quantity of the item ordered and an item total price representing the sum of the row total prices, and printout means controlled by said calculating means to effect the printout in the corresponding printout areas of said order data card of the row total prices calculated.

38. In an electronic order pricing system the improvement comprising, a data card having a plurality of rows with an index mark adjacent each row, and an area adjacent each index mark for receiving a quantity mark indicating the quantity of each item ordered, scan means for scanning said data card a row at a time to detect said row marks and said item quantity marks including a first means for providing a first output signal indicating an ordered item and a second means for providing a second output signal indicating the quantity of the item ordered, processing means responsive to said first and second output signals for effecting the calculation of a row total price representing the cost for the quantity of each item ordered, and an item total price representing the sum of the row total prices, advance means operable when enabled to continuously advance said data card past said scan means, means operable in response to the concurrent detection of an item quantity mark and a corresponding index mark in a given row to disable said advance means to thereby temporarily stop advancement of said data card whereby the row of said data card having the pair of marks detected remains adjacent said scan means while the row total price is calculated for that row, means for printing the calculated row total price on said data card in the row being scanned, and means for enabling said advance means after each row total price has been printed on said data card.

39. For use in an electronic order pricing system having a card transport apparatus, a data card having longitudinal and transverse dimensions, said data card including a plurality of index marks disposed longitudinally thereon, a plurality of generally transversely disposed orderable item lines disposed in predetermined relation to said index marks, an item quantity area associated with each of said item lines for receiving quantity indicia indicating the quantity of each item ordered, and a printing area disposed adjacent each of said item lines for receiving printed indicia thereon indicating the quantity of each item ordered and the price corresponding to the quantity of each item ordered.

40. A system as set forth in claim 39 wherein said data card further includes a transversely disposed line corresponding to a selected one of said index marks for receiving printed indicia indicating the total price of the items ordered.

41. A system as set forth in claim 39 wherein said data card has a longitudinally extending margin edge, said index marks being equidistantly spaced longitudinally along said margin edge, said transversely disposed orderable item lines being spaced longitudinally along said data card with each item line corresponding to one of said index marks, and wherein the item quantity area associated with each of said item lines comprises a transversely disposed area associated with each of said item lines adjacent the corresponding index mark therefor.

42. In an electronic order pricing system the improvement comprising, a data card including indicia representative of orderable items and the quantity of each item ordered, card scanning means for scanning said data card to detect said indicia to provide an item identification signal which identifies an item to be priced and an item quantity signal which indicates the quantity ordered of the item identified, price select means responsive to said item identification signal to provide a set of price output signals, each signal of which corresponds to a digit of the unit price of the identified item, and means for coding said price output signals into binary coded signals, accumulator means including counting means having a separate pulse counter for each digit for receiving digital pulses representing the value of each digit, signal transfer means including digital pulse generating means connected to said counting means of said accumulator means, gating means interposed between said pulse generating means and said counting means, and control means responsive to the binary coded signals representing each digit to enable said gating means to pass a number of digital pulses representing the digital value of each digit to a respective pulse counter of said accumulator means, the number of digital pulses being passed to respective pulse counters of said accumulator means a number of times equal to the quantity of the item ordered, so that said accumulator means accumulates a number of digital pulses which represent the total price for the quantity of the item ordered.

43. A digital computer for recording and calculating transaction data on an input-output form bearing clock lines and corresponding rows of data blocks containing data marks comprising: means to feed the form containing the data into a form reader; means to scan a row of blocks adjacent clock lines on the form for quantity of an item until a data mark in a row of blocks corresponding to a clock line is sensed; means to stop the form for a time interval; memory means for storing sensed data; means to continue the form feeding and the scan, stop data storage for each succeeding row of blocks corresponding to a clock line until all the data have been sensed; means to calculate quantity and price transactions and for storing the results of the transaction in the memory; and means to print the data printout and the total transaction calculation on the form.

44. The apparatus of claim 43, including means for printing quantity, and quantity x price data onto the form.

45. In an electronic order pricing system, the improvement comprising a data form having a plurality of first indicia representing orderable items and corresponding rows of data blocks for receiving data marks indicating the quantity of an item ordered, advance means for feeding the data form into a form reader, means for scanning the rows of data blocks until a data mark is sensed in a row of blocks corresponding to one of said first indicia, means to stop the form for a time interval whenever a data mark is sensed, means for storing data representing the data mark sensed, means for using the stored data to calculate the quantity of the item ordered and price transaction data for the quantity of the item ordered, said advance means being controlled thereafter to continue feeding the form through the form reader permitting the form to be stopped as each data mark is sensed until all data marks have been sensed to permit calculation of the quantity of each item ordered, price transaction data for each item ordered, and a total transaction calculation for the order, and means for printing at least the quantity of each item ordered and the total transaction calculation on the data form.

46. In an electronic order pricing system, the improvement comprising a data card bearing a plurality of first indicia representing orderable items and corresponding rows of data blocks for receiving data marks indicating the quantity of an item ordered, means for scanning the rows of data blocks adjacent the first indicia to sense data marks disposed therein, means for storing data representing the quantity ordered of a given item as indicated by a data mark in at least one row of data blocks, and means for using the stored data to calculate quantity and price transaction data for the quantity of the item ordered.

47. In an electronic order pricing system, the improvement comprising a data card having indicia representative of orderable items and the quantity of each item ordered, said data card having a plurality of rows with a mark adjacent each row, certain ones of said rows representing an orderable item and at least one of said certain rows having a plurality of quantity marking positions which as marked by data marks indicate a different quantity of the item ordered, means for sensing said indicia to provide output signals representing the quantities of items ordered, and means for using said output signals to calculate a row total price representing the cost for the quantity of each item ordered and an item total price representing the sum of the total prices.

48. In an electronic order pricing system, the improvement comprising a data card having a plurality of first indicia each representative of a different orderable item and at least a second indicia associated with one of said first indicia for indicating the quantity of the corresponding item ordered for a given order, means for detecting said first and second indicia, means responsive to the detection of at least said second indicia and the corresponding first indicia for calculating the quantity of the item ordered and the total price for the quantity of the item ordered, and means for printing the quantity of the item ordered and total price for the order on the data card.

49. In an electronic order pricing system, an order pricing apparatus for recording and calculating transaction data on a data card having first indicia representative of orderable items and second indicia associated with said first indicia for indicating quantities of items ordered, said order pricing apparatus comprising detecting means for detecting said first and second indicia including first means having counting means for counting the number of said first indicia detected and identification means controlled by said counting means for providing a separate item identification signal for each of said first indicia detected to indicate which item is to be priced, and second means for providing an item quantity signal which indicates the quantity ordered of the item, price select means responsive to the item identification signal provided for each item ordered to provide for each item a set of price output signals, each signal of a set representing a digit of a unit price for the item represented by the first indicia detected, and processing means for using said price output signals and said item quantity signal for calculating a total price for the quantity of the item ordered to thereby provide price signals which represent the total price for the quantity of the item ordered.

50. In an electronic order pricing system, the improvement comprising a data bearing member of a predetermined size having longitudinal and transverse dimensions, a plurality of index marks disposed longitudinally on said member, a plurality of data channels longitudinally disposed on said member in a predetermined relation to said index marks, at least certain ones of said data channels representing orderable items, said certain data channels being adapted to receive indicia indicating the quantity of each item ordered, and a printout area for receiving printed indicia indicating the total price for ordered items, detecting means for detecting said indicia including first means responsive to the detection of at least the row mark for said row to provide a first output signal identifying the ordered item and a second means responsive to the detection of a mark in one of the quantity positions of said one row to provide a second output signal indicating the quantity of the identified item ordered, processing means responsive to said first and second output signals to effect the calculation of a row total price representing the cost for the quantity of each item ordered and an item total price representing the sum of the row total prices, and printout means controlled by said processing means to effect the printout in the corresponding printout areas of said data card of the row total prices calculated.

51. For use in an order pricing system having an electronic order pricing apparatus, a data control device for supplying input data to said order pricing apparatus, said data control device comprising a data bearing member of a predetermined size having longitudinal and transverse dimensions, a plurality of index marks disposed lingitudinally on said member, a plurality of data channels longitudinally disposed on said member in a predetermined relation to said index marks, at least certain ones of said data channels representing orderable items, said certain data channels being adapted to receive indicia indicating the quantity of each item ordered, and a printout area for receiving printed indicia indicating the total price for ordered items.

52. A data control device as set forth in claim 51 wherein said printing area is transversely disposed on said member in correspondence with one of said index marks.

53. For use in an order pricing system including an electronic order pricing apparatus a data control device comprising a data card bearing indicia representative of orderable items and the quantity of each item ordered for a given order, said data card having a plurality of rows with a row mark adjacent each row, certain ones of said rows representing orderable items and at least one of said certain rows bearing a plurality of quantity marking positions which as marked represent a different quantity of the item ordered and a corresponding printout area for receiving printed data representing a row total price for the quantity of the item ordered for such row.

54. In an electronic order pricing system in which a preprinted order card is marked by personnel to designate food items ordered by a restaurant customer, the improvement comprising an order card having a plurality of rows each of which is arranged to represent an orderable food item, the identification of which is printed in such row, a row mark associated with each row for identifying such row on the order card, each row also including a plurality of digits, each of which is of a different value for designating different quantities of the food items ordered for such row, and which as marked by the personnel indicate the quantity of each item ordered for a given order, and an order pricing apparatus including card scanning means, means for enabling the personnel to insert the order card into the pricing apparatus to permit detection of each marked digit and the corresponding row mark by the card scanning means which responsively provides output signals representing the quantities of items ordered, means for using said output signals to calculate a row total price representing the cost for the quantity of each item ordered and an item total price representing the sum of the row total prices, and means for printing the item total price on the order card for use by the customer.

55. The improvement in an electronic order pricing system as set forth in claim 54 in which the order card includes in each row a printing area for receiving printed data indicating the quantity ordered and the row total price charged to the customer for each item ordered.

56. A method of controlling the operation of an electronic order pricing apparatus for sensing and processing transaction data and recording data representing the results of the transaction on an input-output form; said apparatus including a form reader for sensing the transaction data; computing means having memory means for storing sensed data and data processing means for processing the data; and said form bearing a plurality of clock lines each representing an orderable item, and a row of data blocks corresponding to each clock line for receiving a data mark indicating the quantity of an item ordered, said method comprising the steps of feeding the form containing the transaction data into the form reader; scanning the row of data blocks adjacent to a clock line until a data mark corresponding to the clock line is sensed; stopping the form for a time interval; storing the sensed data in the memory; continuing the form feeding and the scanning until succeeding clock lines and data marks have been sensed including repeating the steps of stopping the form and storing sensed data for each row of blocks having a data mark corresponding to a clock line until all the data marks have been sensed; calculating quantity x price by way of the data processing means and storing data representing the results of the transaction in the memory; and recording the data representing the results of the transaction on the form.

57. The method of claim 56 in which data stored in the memory is updated by each transaction.

58. The method of claim 56 in which the data from the blocks is printed onto the form during the time interval.

59. A method of controlling the operation of an electronic order pricing apparatus for sensing and processing transaction data and recording data representing the results of the transaction on an input-output form; said apparatus including a form reader for sensing the transaction data; computing means having memory means for storing sensed data and data processing means for processing the data; and said form bearing a plurality of clock lines each representing an orderable item, and a row of data blocks corresponding to each clock line for receiving a data mark indicating the quantity of an item ordered, said method comprising the steps of feeding the form containing the transaction data into the form reader; scanning the row of data blocks adjacent to a clock line until a data mark corresponding to the clock line is sensed; stopping the form for a time interval; storing the sensed data in the memory; continuing the form feeding and the scanning until succeeding clock lines and data marks have been sensed including repeating the steps of stopping the form and storing sensed data for each row of blocks having a data mark corresponding to a clock line until all the data marks have been sensed; calculating quantity of an item price and quantity x price by way of the data processing means and storing data representing the results of the transaction in the memory; and recording the data representing the results of the transaction on the form.

60. The method of claim 59 in which data stored in the memory is updated by each transaction.

61. The method of claim 59 in which the data from the blocks is printed onto the form during the time interval.


Description

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates to electronic calculating systems and more particularly to an electronic order pricing system for receiving customer order information by way of a data card and for calculating the price of the order.

2. Description of the Prior Art

In many retail establishments, such as stores, restaurants, etc., a customer's order is manually entered on a sales check or bill by a clerk or waitress and when the order has been filled, and before the bill is presented to the customer, the customer's order will be priced with the unit price for each item ordered being multiplied by the total number of each item ordered and the total price for each order will be determined by adding the individual price totals for each of the items ordered.

The process may frequently require look-up of item prices and manual calculation to obtain the total bill. Thus, manual customer billing is slow and tedious process and is, of course, subject to human error. Such error in the pricing and addition of sales checks can result in customers being under-charged in which case profits are diminished. If, on the other hand, a customer is over-charged the customer will tend to look with disfavor on the particular establishment. If such pricing errors are frequent, the retail establishment will have low profit margins and will be likely to lose a number of customers.

In other retail establishments, each item price is individually entered into a case register, item by item, by a clerk or waitress, and a sub-total is automatically computed by the register. Such procedures while more accurate, are still subject to human error if, for example, a clerk selects the wrong price for an item or makes a mistake in keying the price of an item into the register. In addition, the customer cannot, at a glance, correlate prices on his bill with items he has ordered, and in scanning a register receipt which usually comprises a long column of figures which represent his order, it is difficult for the customer to determine if he was charged properly. Moreover, the register is tied up while each item price is entered into the register and if a customer changes his order, the register cannot be used for pricing other orders while the first order is modified.

SUMMARY OF THE INVENTION

The present invention provides an electronic order pricing system which automatically prices items ordered, calculates a sub-total for each order, a sales tax based on the sub-total, the grand total for the order, and provides an itemized, printed sales check.

Order information is supplied to a calculating unit of the system through the use of preprinted data cards on which each of a plurality of lines represent an orderable item. Each item line includes an index mark and a plurality of item quantity boxes by which the user indicates the quantity of each item ordered.

The preprinted data card serves as the medium for supplying order information to the system. The order information is, in effect, stored on the data card and supplied a line at a time to the system which uses the data to determine the quantity of items ordered for each line and the extended price for the items ordered for each line. This information is then printed on each line as it is determined and only the total price for all the lines is stored with the total price accumulating as successive lines are read.

To take an order, the clerk or waitress merely makes a pencil mark in the appropriate item quantity box of the line labelled to represent the item ordered. The data card further includes space for providing additional order information to a stockroom or kitchen, for example. Such space is provided without effecting the size of the quantity data portion of the card.

When the entire total order has been taken, the user inserts the data card into the electronic order pricing apparatus which prices the order and provides the total price for the items ordered, computes and adds a sales tax to the item total price and prints out the resulting total price for the order on the data card.

Thus since the item pricing and order pricing are done by the order pricing unit, human error is minimized by eliminating some of the sources of their error. Furthermore, since the complete order is taken before it is priced the amount of time in which the pricing apparatus is in use is minimized. Thus, the pricing apparatus can be used by several order taking personnel. It is pointed out that an order involving six different item lines will take approximately five seconds to price using the electronic order pricing system of the present invention.

When the data card is inserted into the pricing unit, the system is responsive to the detection of the line index marks and item quantity marks to determine, on a line by line basis, the quantity of items ordered for each line.

Item line indexing circuits, which include a line mark counter and a line mark count matrix, are responsive to the line index marks to provide a different control signal for each item line for selecting a price programmed in a programmable price select board.

The price select board includes three price programming devices for each line. Each programming device comprises an inexpensive plug and socket arrangement for permitting; selection of one-out-of-ten outputs which represent the digits zero to nine. The three devices for each item line assign a three-digit price to each line in accordance with outputs selected for each device. The price select board provides price information for each item line of the data card.

The price select board is pluggably connected into circuits of the system and accordingly the entire set of programmed prices can be changed by merely removing one board of programmed devices and substituting a different board. In such a way, a retailer can accommodate pricing of special sale prices or, in a restaurant, for example, different prices can be provided for day or evening menus.

The selected price is transferred over data transfer circuits to price data accumulator circuits a number of times equal to the quantity of each item ordered.

Price data representing the total price calculated for the number of items determined to be ordered for each line and further price data representing a sub-total price for all of the items ordered are transferred through the data transfer circuits to print control circuits which effect print out of the price data on appropriate lines of the data card.

Tax circuits, which include adjustable tax select switches, are used to calculate a sales tax for the order at a rate which can be adjusted from 0% to 9.9% in the described embodiment. The data transfer circuits which transfer item price data are also used to transfer tax data which is two orders of magnitude less than the price data. The tax circuits include circuits for shifting the decimal point of the tax figure by two places to scale the tax figure to the same order of magnitude as the price data so that printout of the total tax and addition of the tax to the subtotal of the order is possible. A tax roundoff circuit is provided to increase the hundreds digit of the tax figure by one whenever the tens digit of the tax figure is equal to or greater than five. The roundoff of the tax figure is effected prior to shifting the decimal point.

The electronic order pricing system provided by the present invention comprises a wired program which provides an ordered sequence of operations for item quantity determinations, price and tax figure calculations, transfer of price and tax data, and printout of the calculated information on the data card.

The system further includes inventory control circuits including a matrix of inventory counters, for registering the quantity of items ordered. As each item line is priced, an inventory counter associated therewith is stepped a number of times equal to the quantity of items ordered for that item line.

The circuits and apparatus of the electronic pricing control system which provide the above functions for automatic order pricing are set forth in the following detailed description which makes reference to the accompanying drawings.

DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an electronic order pricing system;

FIG. 1a is a data card for providing data to the system;

FIG. 1b is an isometric view of a transporter unit which houses the circuits and apparatus, including data card advancing apparatus, of the system;

FIG. 1c is an isometric view of a programmable price select board.

FIG. 1d is an enlarged isometric view of a programmable price select device of the board shown in FIG. 1c;

FIG. 1e is a partial sectional view of a portion of the transport, showing card scanning apparatus and card advance mechanism;

FIG. 1f is an isometric view of a print cylinder used in the printout of price information on the data card;

FIGS. 2-20, assembled as shown in FIG. 21, are a schematic circuit diagram of the order pricing system and are used in the detailed description of the system and its operation;

FIG. 21 shows how FIGS. 2-20 are to be assembled;

FIGS. 22a-22s are schematic circuit diagrams of circuits shown in block form in FIGS. 2-20; and

FIG. 23 is a timing chart which illustrates the timing sequence of certain circuits during the item line scan program.

DESCRIPTION OF A PREFERRED EMBODIMENT

DATA CARD

Referring to FIG. 1a, a sales check or data card 20 for presenting to the order pricing system information relating to a customer's order includes a plurality of item lines L0, L1, L2-L59 each representing a different item to be ordered by the customer. In one application, the sales check included fifty-one lines such as lines L3 to L53 used for item identification. However, a larger or smaller number of lines may be provided, if desired. In taking an order, the waitress will mark appropriate boxes of each item line to designate the quantity of each item ordered. For example, if the waitress received an order for three items which are identified by the third line L3, that is, the first row of boxes shown on the sales check, the box of the sales check containing the number 3 will be marked by a pencil mark as shown in FIG. 1a.

To the left of the item quantity boxes along the left edge of the check in a vertical column are a set of line marker indicia LI1, LI2, . . . LI59 one for each line of the check, which indicate the vertical location of each line and of the quantity information which appears on each line and extends horizontally across the sales check. As can be seen in FIG. 1a, line markers LI3-LI53, are located in the center of the space alloted for each horizontal line of information and the nine item quantity boxes will be scanned for pencil marks near the center of the boxes. Thus, when any one of the quantity boxes is marked by the user, there can be some "slopover" or extension of the pencil marks from one box into an adjacent box without resulting in a false reading.

The marks are detected by optical scanning apparatus, shown in FIG. 1e which includes ten detectors, such as detector 62, and a lamp 61 or a plurality of lamps, one for each of the detectors 62-71. A level adjustment circuit 260, shown in FIG. 2, permits control of the amount of "slopover" detectable by the scanning apparatus. While the sales check is being advanced through the unit, only a small area near the center of each item quantity box is scanned until both a line mark and a mark in an item quantity box are detected at the same time, at which time advancement of the check will be halted and the area scanned increased.

Immediately to the right of the nine quantity boxes is an item identification and instruction column which is used to identify for the waitress the particular article which is to be priced on the menu. Again, in a restaurant, the identification would be for a food article. Further room is provided for additional information pertaining to the nature of the food which is to be provided, as for example, the condition of the cooking or added condiments which may be desired. The vertical columns which identify the quantity utilize only a small portion of the total area of the sales check available, and thus, the waitress is provided with a large amount of writing space for use in the designation of special information to the chef when the sales check is submitted to the kitchen.

The sales check further includes a column immediately to the right of the item identification column in which the quantity of items ordered for each line is printed by the pricing apparatus.

Immediately adjacent the quantity print-out column is a price column in which is printed an extended price, for each line, that is the total price for an indicated number of items for a given item line "purchased".

The price of the article represented by a line of the check is programmed into the system so that the user of the sales check has no further function than to mark the quantity desired.

At the bottom of the sales check and to the right in the conventional manner of sales checks used in restaurants, lines L54, L55, L56 and L58 provide, in succession, a print out area for the subtotal for the price extensions in the right-hand vertical column, the tax based on the amount appearing in the subtotal, a total bill which includes the subtotal and a tax, and a receipt portion which is in effect a further print-out of the total appearing on line L56. The receipt portion of the sales check may be perforated so that the receipt may be easily separated from the sales check.

The area of the card adjacent lines zero to two which is not used for item identification in the present example can be used to permit control functions, such as a system reset or information readout to be effected.

TRANSPORT

The mechanical aspects of the order pricing system including a transport for advancing the sales check through the unit past the scanning and print-out apparatus are set forth in detail in a copending U.S. application Ser. No. 14,608, now U.S. Pat. No. 3,718,244, which was filed Feb. 26, 1970, by Raymond J. Bukowski, Raymond L. Brija and Florian F. Yanikoski and was assigned to the assignee of the present invention.

The unit 40 shown in FIG. 1b comprises a sales check entry slot 41 which is located in the front face of the housing 42 and into which the sales check 20 (FIG. 1a) is fed by the waitress. A sales check return slot 43 is provided to return the sales check to the waitress with the printed information and total pricing of the items ordered.

The unit further provides an error indicator light 46 located on the front panel of the computer which indicates inadvertent errors by the waitress, as, for example, the marking of two different quantities in the same line. A power switch 47 provided on the unit, is normally turned on and left on during the period the restaurant is open.

The upper portion 44 of the unit houses a programmable price board 50 shown in FIG. 1c which stores price data relating to the unit price for each item represented by the item line of the sales check 20. In one embodiment, each item line is priceable in dollars, dimes and cents to a maximum price of $9.99.

The programmable panel 50 which is pluggably inserted into the unit via an edge connector 51 is basically comprised of three groups of programming devices, such as device 1d11 shown in FIG. 1d, providing dollar, dime and cent price information for each item line. In the present example, each of the three groups comprises a three by seventeen arrangement of fifty-one pricing devices 1CH3-1CH53, 1CT3-1CT53 and 1CU3-1CU53. Each device such as device 1d11, shown in FIG. 1d, includes a socket 1d12 having ten jacks 1d0-1d9 which represent the digits 0-9, and a lead 1d13 including a pin-plug 1d14 for providing a changeable connection between the common terminal 1d15 and the ten jacks 1d0-1d9. The connections to the circuits of the pricing apparatus are shown in FIG. 11 and will be described in the detailed description which follows.

Three price programming devices such as devices 1CH3, ICT3, and ICU3 of the price select board 50, FIG. 1c, are associated with each item line such as line L3 of the sales check. The corresponding pin plugs 1CHP, 1CTP, 1CUP are inserted into the jacks which correspond to the digits required to provide the desired price for the item line. Thus, for example, to assign a price of twenty-five cents to the item on line L3 the pin plug 1CHP for the dollar device 1CH3 is plugged into jack 1J0; the pin plug 1CTP for the dimes device 1CT3 is plugged into jack 1J2 and the pin plug 1CUP for the cents device 1CU3 into jack 1J5. In this example, the price programming devices 1CT3 and 1CU3 provides circuit paths from the input of the price matrix to the output of the price matrix over the second and fifth leads of the dimes and cents price programming circuits, as will be shown.

The programmable price board 50 located in the upper portion 44 of the unit is accessible to the owner of the business or whoever has access to the key-lock 48 on the unit, and the prices for any of the articles can be changed by the owner at any time without the need of calling in outside help to reprogram the price select board 50. The actual programming takes only seconds for each article and is accomplished by merely removing the appropriate pin plug of any device from the jack into which it had been plugged and re-inserting it into a different jack to provide a different price. Moreover, through the use of pluggable price board, such as board 50, the entire set of programmed prices can be changed by removing board 59 and inserting a different price board. In this way, the restaurant owner may easily provide two sets of prices, one for day sales and the other for evening sales.

Referring to FIG. 1e, there is shown schematically scanning apparatus including a lamp 61 (or ten lamps) and ten light detectors 62-71, such as detector 62, positioned adjacent the data portion of the sales check 20 for detecting the line marks, such as line mark LI3, and item quantity marks, such as the mark in the third box in line L3, which may be provided in one of the nine boxes in each item line of the sales check. Also shown in this view is sales check advancing apparatus including a microswitch 78 with an operating arm 79 moved by the top edge of the sales check 20 to operate the switch 78 to energize the system, and a motor 73 for turning advance wheels 76 and 77 to move the sales check through the unit.

GENERAL SYSTEM OPERATION

As the sales check is inserted into the sales check entry slot 41 (FIG. 1b) microswitch 78 is operated energizing the system, turning on the scan lamp 61 (or lamps) and starting the sales check advance motor 73 which rotates advance wheels 76 and 77 to move the sales check 20 into the unit past the ten light sensors 62-71, which may be, for instance photosensitive transistors. As the check moves past the scanning devices, signal outputs are provided for each line of information on the check, that is, a signal output from a scan device, such as device 62, positioned over the column of line marks LII-LI59 indicates the detection of a line mark, and a signal output from one of the nine quantity column scanning device detectors 63-71 positioned over item quantity boxes labelled 1-9, respectively, (FIG. 1a) indicates the presence of a quantity mark at the particular line.

Referring to FIG. 1, each line mark output from the line scanning apparatus 101 steps a line counter 103 which comprises a units counter 103a and a decade counter 103b for providing counts from 0 to 59, referencing the position of the sales check within the unit, by indicating how many lines has been counted.

The outputs of the units and decades counters 103a and 103b of the line counter 103 are combined in a line count matrix 104 which provides an output signal for each of the sixty counts of the line counter 103. The outputs of the line count matrix associated with one of the item lines L3-L53 of the sales check 20 are routed to a programmable diode price select board 106 which provides a signal path for the outputs of the line matrix for each of the line matrix outputs. The signal path is related to the price of the item represented by a line and the price is programmed in the price array 106 by the plug and socket arrangement described in the foregoing.

The item quantity scanning circuit 102 including devices 63-71, provides no output in the absence of a marking in one of the item quantity boxes 1-9 of an item line, a single output which indicates the quantity marked, or (in the event of an inadvertent error by a waitress) multiple output signals, if more than one quantity is marked on one line. In the event that multiple signals appear at the output of the scanning apparatus 102, an error circuit 107 will light the error lamp 46 located on the unit (FIG. 1b) to indicate the check is in error, and a correction will be required.

The outputs of the item scanning devices 102 are also fed to an item quantity counting circuit 108 where these outputs are compared with outputs of a second digital counter 108a to provide an indication of the quantity of items marked on the sales check.

In the present example, the third box in line L3 has been marked on to indicate that three of the items represented by line L3 of the sales check have been ordered. The item which is identifiable by the third line of the sales check 20 has been priced at 25 cents, and the associated price programming devices 1CH3, 1CT3, and 1CU3 shown in FIG. 1c, of the price matrix 106 have been connected to represent a price of 25 cents for line three.

The sales check advances to line L3 while the line counter steps from count zero to count three, whereupon detection of the line mark LI3 together with the detection of the mark in the item quantity box of line L3 by the scanning device 65 positioned over the third item quantity box in line L3 will cause the scanning device to provide a signal output.

When a single quantity mark, such as the mark in box 3 of line L3 and a line mark such as line mark LI3, are detected simultaneously, a start-stop circuit 109 is energized causing the clutch to be deenergized and the brake to be energized so that advancement of the sales check is halted temporarily. Energization of the start-stop circuit 109 also enables system control circuits 110 which include a main program timing pulse generator 110a, a sub-program timing pulse generator 110b, and decade logic circuits 110c for generating timing pulses which are used to synchronize the operation of the system logic. In general, NAND and NOR type logic is used throughout the system. The digital counters, logic gates and flip-flops, etc., which comprise the system logic are commercially available types.

The line count matrix outputs are passed through the diode price select board 106 to a decimal to binary encoder circuit 105 whereby the outputs are encoded in binary form on three groups 105a-105c of four output leads of the coding circuit to represent the price of the item in dollars, dimes and cents. The binary coded prices will be present at the output of the binary to decimal encoder during that period for which advancement of the sales check is inhibited. The check will remain in this position until the appropriate calculations have been completed for the third line of the sales check and printout has been completed. At the end of the printing cycle, the start circuit will cause the brake to be released and the clutch engaged so that the motor will again continue advancing the sales check through the unit. The sales check will be advanced until an item line and a quantity mark are detected on another item line.

PRICE CALCULATION

The output of the price select board 106 is extended to price data transfer 115 circuits which include five sections 115a-115e, for effecting transfer of the information from the price array 106 to the sub-accumulator 117, the transfer of such information being effected simultaneously over three sections 115a-115c of the data transfer circuits, respectively, in serial pulse form. Sections 115a-115c transfer data representing price information for the cents, dimes and dollars of the price matrix. In the present example of a unit price of twenty-five cents, no pulses are transmitted over circuits 115c; two pulses are transferred over circuit 115b and five pulses are transferred over circuits 115a to the sub-accumulator 117. Such transfer is effected for the data marked on line L3 three times because three such items have been ordered as indicated by the mark in the third box of item line L3 on the sales check. The successive transfer operations are controlled by the program counters 110 as will be shown.

DATA TRANSFER

As the price information, twenty-five cents, appearing in binary form on the three sets of output leads 105a-105c of the coding circuit 105 is fed three times into the sub-accumulator 117 by way of the data transfer circuits 115a-115c the extended or total price for the items ordered seventy-five cents will be automatically accumulated in the sub-accumulator 117, and as the third entry of such information is made to the sub-accumulator, a decimal counter 108a in the quantity mark counting circuit 108, which is stepped each time in information is thus transferred from the diode price array 106 to the sub-accumulator 117, will reach a count of three and, in a coincidence circuit 108b, coincidence will occur between an output signal from the item scan circuits 102 and the output of the decimal counter 108a, indicating three additions of the price assigned to such an article has taken place in the sub-accumulator. Then, a signal generated by the counting circuit 108 will inhibit further transfer of the information from the price array 106 to the sub-accumulator 117.

After the extended price has been calculated for the item of line L3, the extended price is transferred through the data transfer circuits 115a-115c to a main accumulator 118 where the extended price totals for all of the items of item lines L3-L53 of the sales check 20 will eventually be accumulated during the scanning of the item line.

PRINT OUT

After each item line calculation is completed, the extended price, stored in the sub-accumulator 117 is also transferred via the data transfer circuits 115 to print control circuits 120 to control print apparatus 121 to print the extended price for each line in the printout area of the sales check.

At the same time, the quantity counter circuit 108a effects the printing of the quantity of the items ordered, in the example, three items for line L3, in the quantity item printout column of the sales check.

The printing apparatus 121, shown in FIG. 1f, includes a cylinder 83 having five columns of digits 0-9, four digit columns for printing the prices of the items and a fifth digit column for printing quantities of the item.

The cylinder 83 is rotated on its shaft 83a by way of a stepping motor (not shown) to rotate through ten successive steps to cause the digits 0-9 to be successively positioned over the printout area of the sales check. The shaft 83a includes a magnetic member 83b which rotates with the shaft. When the zero digits of the print cylinder 83 are positioned over the printout area of the sales check, the magnetic member 83b is aligned with a detector or pickup which provides an output signal (to a circuit 2051, FIG. 20), for enabling the print control circuits 120 to print zeros. The printing cylinder 83 is rotated to bring the digits 0-9 successively into alignment with the printout area of the sales card. The printout is done in ten steps with all the zeros printed in the first step. Then, during the second step, all the ones are printed, and as the print wheel print cylinder 83 is rotated through a complete revolution the other digits are printed.

In the example, in which the number seventy-five is to be printed in the price column and the number three is to be printed in the extension column, the number three will be printed in the quantity extension column of line L3 when the threes on the printhead are aligned with the printout area of the card; the number five will be printed in the units price column when print wheel has been rotated to align the fives with the printout area of the card; and the number seven will be printed in the tens column when the sevens are aligned with the printout area of the card.

When the printout of the price and quantity information for line L3 is completed, the sales check is advanced and item lines L4-L53 are scanned. Each time a mark is detected in one of the item quantity columns, a calculation is made to obtain the price extension and the quantity for that line and printed out in the manner described above for line L3. During the scan of lines L4-L53, the extended prices for lines L3-L53 will be accumulated in the main accumulator 118. In the present example, it is assumed there are no further item quantity marks on the sales check.

SUBTOTAL

The sales check is advanced until the fifty-fourth line mark LI54 is detected by line scanning circuit 101.

At this time, the total of all the extended prices for the item lines L3-L53 has been accumulated in the main accumulator. This subtotal will be printed on the fifty-fourth line L54 of the sales slip 20.

Upon detection of the fifty-fourth line mark, the contents of the main accumulator 118, seventy-five cents in this example, will be transferred to the print control circuitry 120. The information in the main accumulator 118 will be printed out, a digit at a time, in the space provided in the right-hand margin on line L54 of the sales check which is labelled sub-total. The printing operation is similar to that for printing the extended prices for line L3 described in the foregoing.

COMPUTATION OF SALES TAX

After the sub-total has been printed on line L54, the sales check is advanced until the fifty-fifth line mark is adjacent the line scanning apparatus 101 and the line mark LI55 is detected.

When line mark LI55 is detected, a sales tax, based on the sub-total present in the main accumulator 118, will be computed. The sales tax is computed in a manner similar to that of calculating extended prices for each line of the item lines as described. The data transfer circuits 115 are used in the calculation of the tax; however, in accordance with the functioning of a program for calculating a sales tax for the order under the control of the program counters 110, the decimal point will be shifted the appropriate number of places to the left whereby the tax can be added directly to the subtotal stored in the main accumulator.

Programmable tax magnitude indicators 108c provided in the item quantity counter circuit 108 are set to predetermined values to represent the whole number and a fraction thereof of the percent sales tax, and are then operative to cause the dollar value of the subtotal of the check to be successively transferred by way of the data transfer circuits 115 from the main accumulator 118 to the sub-accumulator 117 a number of times equal to the magnitude of the tax programmed on the tax indicators 108b. Data transfer circuits 115a-115e are used for the tax computation.

For example, when the tax rate is one percent, the price data, seventy-five cents stored in the main accumulator 118 is transferred from the main accumulator via the transfer circuits to the sub-accumulator once. If on the other hand, the tax rate were five percent, the price data would be transferred five times in succession. In the example described, the tax rate is assumed to be one percent. After the transfer of price data has been completed once in correspondance with the indicated tax rate, the counter circuit will inhibit further transfer of data. The tax figure will be 0.75.

The program logic counter circuits 110 are then operative to generate signals for enabling circuits to process the tax figure 0.75 to round off the number. Since the digit being transferred through the tens digit data transfer circuit 115b is greater than five a carry is made to the next higher digit the hundreds digit. The resulting tax number is 1.75. This tax figure 1.75 is accumulated in the sub-accumulator and is transferred through the transfer circuits 115 to the main accumulator 118. During this transfer, the decimal point is shifted two places to the left so that the digit one in the hundreds transfer circuit 115c is transferred to the cents portion of the main accumulator and the seven and five are shifted out of the transfer circuits 115. Thus, the tax, one cent, is scaled down to the percent total and the resultant figure is transferred over the transfer circuits and can be added to the sub-total seventy-five cents, stored in the main accumulator. The tax quantity one cent stored in the sub-accumulator is also transferred to the print control circuits 120 to effect printout of the tax calculated on line L55 of the sales check.

The foregoing description assumes that only a whole tax digit, such as 1%, was entered into the system. In the event that the tax rate includes a fractional tax, i.e., 1.3%, for example, the system will be enabled to make a further calculation for the 0.3% tax in a manner similar to that described for the calculation of a whole percent tax. After the whole percent tax, data 0.750 for a one percent tax rate has been accumulated in the sub-accumulator, the price total, seventy-five cents stored in the main accumulator 118 is passed through the data transfer circuits 115 to the sub-accumulator 117 in three additional successive operations and during the data transfer, the decimal point will be shifted in a manner appropriate to represent the fractional value of the tax being computed so that a resulting fractional tax figure 0.075 is provided with each transfer and is added to the quantity stored in the sub-accumulator. Tax data, 0.975 representing the total tax on the order is thus accumulated in the sub-accumulator and then transferred via the data transfer circuits 115, to the main accumulator 118 where the tax is added to the sub-total. It is pointed out that the tax data is rounded off to one cent prior to transfer to the main accumulator.

GRAND TOTAL

After the tax has been printed out in the appropriate column on the sales check, the check is advanced one more line increment and when line mark LI56 is detected, the total seventy-six cents stored in the main accumulator 118 is transferred via the transfer circuits 115a-115d to the print control circuits 120 in the manner heretofore described, to effect the printout on line L56 of the sales check of the grand total, including the sub-total and tax.

RECEIPT

The check is then advanced two more lines and when line mark LI58 is detected, the price data stored in the main accumulator 118 is again fed through data transfer circuits 115a-115d to the print control circuits 120 for printout of the total on the customer receipt portion of the sales check 20.

INVENTORY CONTROL APPARATUS

The system includes inventory counters 130 controlled by inventory control circuits 131 to record the number of items which have been ordered as detected by the item scan apparatus 102. One counter is provided for item line of the sales check and the counter is stepped a number of times corresponding to the item quantity detected as indicated by the coincidence circuit 108b.

SYSTEM PROGRAMS

The sequence of operations for scanning and pricing a sales check and for printing out price and quantity information on the check is synchronized by timing pulses generated by a system program counter and decade logic circuits 110. The program counters and decade logic generate forty time slots or times identifiable as T0-T39 in the present embodiment, and sixteen sub-time slots or times of T0-T39 identifiable as ST0-ST15. The sub-time slots permit sequential performance of individual operations within each of the main time slots T0-T39.

The various steps in the operational sequence associated with the pricing of a sales check are divided into five programs listed in Table I, namely, an item line count program, a sub-total program, a tax program, a grand total program, and a customer receipt program. Table I lists the five programs, the time periods used by each program, and the functions carried out during the time periods of each program.

Each of these programs may be described as basically consisting of a total set of time slots T0-T39 of which T0 is used to start the program, T1-T9 and T11-T19 are used for calculation and T30-T39 are used for printing data on the sales check. The scanning operations take place during time T0.

Since calculations are not made during each program, for example, in the subtotal program wherein the contents of the main accumulator are printed out on the check, the program logic circuits include decade logic circuits, for the tens, twenties and thirties, decades of the program count, which are settable to "jump" the program, for example, from T0 to T30 skipping time slots T1-T29 and "jumping" from the program start cycle to the printout cycle.

During T0 of the item line count program, the sales check will be advanced through the unit, and line marks and quantity columns will be scanned. Upon simultaneous detection of a line mark and a mark in a quantity column, the item line count program will be initiated and the program will step to T1 and during time slots T1 through T9 the total price for the quantity of items indicated will be calculated. Also, during times T1-T9, the position of the quantity mark on the sales check will be determined by the item quantity scan circuits thereby providing an indication of the number of items which have been ordered for each line.

The total price of the items for each line such as line L3 will be calculated in the manner described above, with the price data twenty-five cents for line L3 being transferred to the sub-accumulator during times T1-T3 a number of times three in the present example, equal to the quantity of items marked. Thus, at the end of time slot T3, the extended price for each item will have been calculated and will appear in the sub-accumulator. At time T10, the data seventy-five cents in the sub-accumulator is transferred to the main accumulator and the program jumps to T30. During time T30, the data is transferred to the print control circuits 120 and 121 from the sub-accumulator and all the zeros will be printed on the sales check. During times T31 to T39, digits 1-9 will be printed on the sales check. Thus, at time T33, the quantity three will be printed, and at times T35 and T37 the extended price seventy-five cents will be printed. At T39, the program will step to T0 and the scan will be continued until lines Li-L53 have been scanned. After line L53 has been scanned, the program will step T0 of the sub-total program, when line mark L1 54 is detected.

At time T0 of the sub-total program, the fifty-fourth mark is detected, starting the sub-total program sequence. Since the sub-total program requires no calculations, the program is jumped to time T30 at the end of T0 and the digits 0-9 of the sub-total are printed out during times T30-T39. The sub-total information is brought forward from the main accumulator during time T30 to the print control circuits 120.

The program then steps to T0 of the tax program sequence, at which time the tax program is initiated. During times T1-T9 of the tax program the whole percent magnitude tax is calculated. During times T11-T19, the fractional percent tax on the subtotal is calculated. At time T20, the tax is rounded off at the unit figure, and during time T21 the decimal point for the tax is shifted two places to the left to scale the tax so it can be added to the total price stored in the main accumulator. The digits of the tax are printed on line L55 of the sales check during times T30-T39.

The grand total program is started after time T39 of the tax program, and at T0, when the grand total program is started, the program is jumped to T30 at which time the printout of the contents of the main accumulator on line L56 of the sales check, is effected.

The receipt program is started after T39 of the grand total program and provides a customer receipt for the total bill. The program uses time slots T0 and T30-T39 to transfer the grand total from the main accumulator to the print control circuitry and to printout the digits on the sales check on line L58.

The functioning of these programs in controlling the electronic order pricing system in the pricing of a sales check will be described in more detail in the following description.

                  TABLE I
    ______________________________________
    Programs  Time Period
                         Function
    ______________________________________
    Item Line
    Count Program
              T0         Scan cycle
    Sequence             Program Start
              T1-T9      Calculation(price
                         extension and quantity)
              T10        Data transfer
              T30-T39    Print out (quantity and
                         extended price)
    Sub-total Program
              T0         Program start
    Sequence
              T30-T39    Print out (total of
                         extended prices)
    Tax
    Program Sequence
              T0         Program Start
              T1-T9      Calculation (whole % tax)
              T11-T19    Calculation (fractional
                         % tax)
              T20        Tax round-off
              T21        Tax decimal point shift
              T30-T39    Print out (total tax)
    Grand
    Total Program
              T0         Program Start
    Sequence
              T30-T39    Print out (subtotal
                         plus tax)
    Receipt
    Program Sequence
              T0         Program Start
              T30-T39    Print out
                         (grand total)
    ______________________________________


SPECIFIC DESCRIPTION

As now set forth hereat, the manner in which the novel pricing control apparatus applied, by way of example in a restaurant for pricing orders entered on sales slips, is operative to scan a sales check 20, shown in FIG. 1a, provide the print out of the quantity and price extensions for each of the items which have been marked on the sales check, and to provide the subtotal, tax, grand total and receipt print out on the sales check, will now be described.

For purposes of illustration, the third box in the third row L3 of the sales check 20, FIG. 1a, is marked to indicate that a customer has ordered three of the items represented by the third line L3 of the sales check. The programmable diode price select board 1100 has been programmed, as shown in FIG. 11, so that the unit price of the item represented by line L3 is twenty-five cents.

Upon detecting the line mark LI3 on the sales check 20, the pricing control apparatus will extend the total price of the item by adding the twenty-five cent unit price three times and, after effecting such calculation, will cause the quantity three to be printed out in the quantity column of the check, and will cause the total price for three such items, seventy-five cents, to be printed in the price column of the third line. No other item quantity marks have been made on the sales check, and thus, the line scan apparatus 200, shown in FIG. 2, will continue to scan until line mark LI54 is detected at which time the subtotal, seventy-five cents, will be printed on the sales check.

Then, when line mark LI55 is detected, the apparatus will calculate the tax on the item based on the subtotal, and assuming the rate is 1%, the tax will be rounded off to one cent and will be added to the subtotal providing a grand total seventy-six cents for the check. The grand total is printed on line L56 and also on the receipt line L58 of the sales check.

POWER CIRCUIT

Referring to the FIGS. 2-20 of the drawings, assembled as shown in FIG. 21, there is shown a schematic representation of the control circuits for a described embodiment of an electronic order pricing system of the present invention. In general, NAND and NOR logic is used in the system. Moreover, in order to simplify certain of the drawings, some of the circuits are shown in FIGS. 2 through 20 in block form and the circuits, such as circuits A-1, B-1 etc. correspond to the circuits shown in FIGS. 22a-22a.

Referring first to FIG. 5, when the power switch 501 is turned on, a power relay 502 is operated closing a path over contact 501a from the line voltage to power supplies 503, 504 and 505 which provide positive and negative voltages V and -V which may be five volts for the logic circuits of the system and a larger voltage PV, which may be 28 volts, used for energizing the brake and clutch of the motor and relays and solenoids of the system. The connection of the voltage PV to the system is delayed by a delay circuit 506 to allow the logic circuits to stabilize and reset after the application of the system logic voltages, plus and minus V, to the system.

Also, when the power switch 501 is turned on, relay GSL, connected between ground and +V through contacts 507a of a microswitch 78 (FIG. 1e) is operated and a ground is applied to lead 508 over a contact GSL-a of relay GSL.

The ground on lead 508 is extended over lead 509 to a logic gate 510 which is then disabled. The output of gate 510 is connected through inverter 511 to clutch-drive circuit N-1 (FIG. 22n), disabling the clutch. The ground on lead 509 is also extended over lead 512 to gates 513 and 514 to the brake drive circuit N-2 (which sets the brake).

The ground on lead 508 is further extended via lead 509' to a delay circuit 801 (FIG. 8) enabling gate 802 and disabling gate 803, providing plus V or a logic 1 level on lead CTR. Lead CTR is connected to the reset input CPU of the units line counter 901 (FIG. 9) which is thus reset, and also over lead 904 to the reset input CPD of the decade line counter 902 which also resets. Wave shaping circuits (not shown) may be interposed between the line mark detect circuit and the inputs CPU sand CPD of the counters 901-902. At this point, the circuits of the system are in the quiescent state and the pricing coumputer apparatus is ready to scan the check further and to provide the pricing operation.

To price an order entered on a sales check, the check is inserted into a sales check entry slot 41 (FIG. 1b) operating the microswitch 78, opening a contact 507a which disables the GSL relay. This operation also closes a contact 507b applying power to the motor. The motor rotates the advance wheels 76 and 77 (FIG. 1e) which advances the sales check 20 through the unit. When relay GSL is disabled, contact GSL-a is opened and ground is removed from lead 508. Consequently, gate 510 is enabled and the output of gate 510 is able to follow the square wave applied to gate 510 through gate 515, and the clutch drive circuit N-1 is enabled by gate 510, energizing the clutch at the rate of the square wave.

At the same time, the brake is released as gate 513 is disabled.

SCANNING APPARATUS

As the sales check is inserted into the sales check entry slot 41, the transport mechanism is operative to advance the check to bring the successive lines of the check into the read-out position relative to the optical scanning apparatus of the system.

Referring to FIG. 2, the scanning apparatus includes a lamp (or ten lamps) 210 and ten light sensors 202-211, which may be, for example, photosensitive transistors.

The lamp 201 is positioned to illuminate the area of the sales check that includes the line marks and the quantity mark columns (see FIG. 1a). The photo-sensitive surfaces of the transistors 202-211 are positioned at an angle to the surface of the sales check such that light reflected from clear or unmarked areas of the check will be directed toward the light sensing devices 202-211.

The lamp 201 is connected between ground and voltage V through a resistor R2, and power is applied to the lamp filament when the power switch 501 is turned on. When the microswitch 78 is operated, upon the insertion of a sales check, and the GSL relay is disabled, contacts GSL-b is closed, shorting out the resistor R2 and connecting the filament of the lamp 201 directly to the power supply V whereby the lamp 201 is turned on full.

One of the photo-sensitive transistors 202 is positioned to detect light reflected from the area adjacent the line marks LI0-LI59, and the other nine photo-sensitive transistors 203-211 are positioned to each detect light reflected from the area including one of the nine quantity boxes.

Each transistor 202-211, such as transistor 202, has its emitter 212 connected to an output -VRC of a voltage regulator circuit 213. The transistor has its collector 214 connected to an input 217 of a differential amplifier 215 and also to a plus V through a resistor R3. A second input 216 of the differential amplifier 215 is connected to ground.

Light reflected to the photo-sensitive surface of transistor 202 by an unmarked area of the sales check will turn the transistor on. When transistor 202 is turned on, the voltage -VRC on the emitter 212 will be applied to the input 217 of the differential amplifier 215. The voltage -VRC may be a few hundred millivolts and will be passed to the output of the amplifier 215 providing a signal which is approximately a logic zero. Accordingly, the signal output from the line mark detecting circuit, given the designation LIMA, will be a logic 0 in the absence of a line mark detected.

On the other hand, without illumination, the photosensitive transistor 202 remains cut off. Thus, marks on the check such as the line marks LI1-LI59 disposed along the edge of the sales check 20 will minimize light reflection to the photo-sensitive transistor 202, which will be turned off and the positive voltage V applied to the input 217 of the amplifier 215 through a resistor R2 will be passed to the amplifier output so that LIMA becomes a logic 1. Similarly, the nine photo-transistors 203-211 positioned over the item line quantity marking area are each individually connected to a differential amplifier 221-229. However, the second input of each of the amplifiers 221-229 such as input 230 of amplifier 221 is connected to a second output +VRC of the voltage regulator circuit 213.

The output of each differential amplifier 221-229, such as amplifier 221, is connected to a scan output detected flip-flop 231-239, such as flip-flop 231 which will be set each time an item quantity mark is detected. Accordingly, each time a quantity mark is detected a logic 1 will be present on the corresponding output lead S01-S09. In the absence of any mark on the sales check, the output on lead S01-S09 will be a logic 0. The scan output detected flip-flop 231-239 will be reset by a signal LIMA which will become a logic 1 as the sales check is advanced from one line mark to the next.

Upon detection of the first line mark LI1, the output +V from the photo-transistor 202 is fed to the differential amplifier 215 and the output LIMA of the differential amplifier 215 becomes a logic 1.

The output LIMA of line mark detector amplifier 215 is inverted by amplifier 240 to provide a control signal LIMA.

The output LIMA of amplifier 215 is further extended to a line mark detected delay flip-flop 242 through a 200 millisecond delay circuit 243. Since the output of flip-flop 242 is actually the control signal LIMA delayed 200 ms, the output has been given the designation LIMA-1. The complementary output of the flip-flop 242 is designated LIMA 1.

Signal LIMA is used to enable line counters 901 and 902 (FIG. 9) and a line count matrix 800 (FIG. 8) to access a programmable price array 1100 (FIG. 11) to provide signals at the output of the price array which are representative of the unit price of the item on the sales check item line being scanned. Signal LIMA-1 is used to enable the system timing and control circuits at a time after the price data signals and are provided at the output of the price array.

The outputs LIMA and LIMA-1 will become true each time a line mark is detected. Signal LIMA will remain true as long as a line mark is detected and will become logic 0 as the sales check is advanced past a detected line mark. When LIMA becomes logic zero the flip-flop 242 is reset by the signal LIMA.

LINE COUNTERS

The output LIMA of the line mark scan amplifier 215 is extended through delay circuit 801 and path 804 to a units line mark counter 901 (FIG. 9) which provides counts from 0 to 9 on leads LCU0-LCU9 and to a line decade counter 902 which provides on leads LCD0-LCD5 counts from 0 to 5 for indicating decades up to fifty.

The units line counter 901 is stepped each time a line mark is detected when LIMA becomes logic 1 and clocks the counter at input CPU.

Each time the units counter 901 provides an output on lead LCU9, the decade line counter 902 receives a clock pulse at CPD when the next line mark is detected at which time LIMA will enable gates 905 and 906. At that time, the units line counter 901 will step to zero. Accordingly, the position of the sales check within the unit, that is, the particular line of the check that is positioned under the scan apparatus is indicated by the output of the units and decade line counters 901 and 902.

LINE COUNT MATRIX

With each LIMA input, the line counter advances one count and a pulse output over line counter output leads LCU0-9 or LCD0-9 such as lead LCU0 of the units line counter is extended to an input of a six by ten line count matrix 800 (FIG. 8). The line count matrix 800 comprises a plurality of two-input NAND gates such as gate LGO, which combine the outputs of the line units and decades counters such as outputs LCU0 and LCD0 to provide sixty separate line mark outputs LCM0-ICM59 which represent the lines of the sales check.

One input of each gate, such as input 910, of gate LG0 in the ten columns is connected to one of the ten outputs LCU0-LCU9, such as output LCU0, of the line units counter 901, and the other input of each gate such as input 911 of gate LG0 in the six rows is connected to one of the outputs LCD0-LCD5, such as output LCD0 of the line decade counter 902. Accordingly, for each count provided by the line counters 901 and 902, one of the NAND gates will be enabled, providing a ground or logic 0 on one of the outputs LCM0-LCM59, such as output LCM0, of the line count matrix 800.

Thus, before a line mark is detected, the line decade counter 902 will have a logic 1 output on lead LCD0 which is extended to input 911 of gate LG0. The output of the units line counter 901 on lead LCU0 will also be logic 1. This output is extended to lead 804 of gate LG0 which will be energized providing a ground at its output LCM0. As the units counter steps from 0 to nine, successive outputs on leads LCU0-LCU9 will enable gates LG0 to LG9 to provide successive ground outputs on leads LCM0-LCM9. As successive line marks LI10-LI59 are detected, corresponding gates in rows 2-5 of the line count matrix will be enabled providing output on leads LCM10-LCM59.

Referring briefly to the sales check shown in FIG. 1a, lines 1 and 2 are not used as item lines. Line matrix outputs on conductors LCM0-LCM2 are extended through a gate 810 to inhibit a NOR gate 809 which when enabled generates a signal ILC a control signal used to indicate items lines L3-L53 are being scanned.

Similarly, outputs LCM54-LCM55, LCM56 and LCM58 are extended to gates 811-814 respectively which when enabled provide control signals STLC, TLC, GTLC, and RLC, which control the system to determine the sub-total, the tax and the grand total and to effect the print out of the data obtained. Line matrix outputs LCM54-LCM58 are also extended to gate 810 to inhibit NOR gate 809. Output LCM59 and the outputs LCD6-LCD9 of line decade counter 902 are extended to gate 813 which when enabled provides an inhibit for NOR gate 809.

As the sales check continues it is advanced into the unit to the first line mark LI1, the line mark LI1 is detected and the line counter is stepped to count one and the output LCU1 of the line counter 901 extended to the line count matrix 800 enables gate LG1, while gate LG0 is disabled, providing an output on line conductor LCM1. Similarly, when line mark L12, the units line counter steps to count two and gate LG2 is enabled when gate LG1 is disabled.

As the sales check is advanced to line 3, the line mark LI3 is detected and signal LIMA to the line units counter is stepped to a count of three, providing an output on LCU3 which enables gate LG3 providing a logic 0 on output LCM3 of the line count matrix 800.

Recalling that each of the lines L3 through L53 of the sales check represents a different item to be priced, outputs LCM3 to LCM53 of the line count matrix 800 are extended to a programmable diode price select matrix 1100 (FIG. 11) and while lines L3-L53 are being scanned, the NOR gate 809 is enabled providing output ILC, a control signal used throughout the system to indicate that lines L3-L53 are being scanned. It is pointed out that the output LCM3 for the first item line is extended over lead LCM3' to a gate 1001, the output of which is connected to circuits B-6 to B-9 at the reset inputs of the main accumulator 1000. When LCM 3 is a logic 0, the main accumulator will be reset.

PROGRAMMABLE DIODE PRICE SELECT BOARD

The programmable diode price select-matrix 1100, shown schematically in FIG. 11 basically comprises 153 diodes such as diodes 1101-1106 connected by way of the plug and socket arrangement shown in FIG. 1d from the outputs LCM3-LCM53 of the line count matrix to data transfer circuits 1600 (FIGS. 16-17) for establishing separate signal paths for each of the outputs line circuit matrix which provide a dollar, dime, and cent indication of the unit price of the item represented by that line.

The price select board includes three sections PMH, PMT, PMU representing dollar, dime and cent digits, respectively, and each section includes fifty-one programmable devices, such as 3PMH-53PMH, such that fifty-one separate prices are provided to assign a three-digit price to each of the fifty-one item lines L3-L53 of the sales check. The plug and socket devices 3PMH-53PMH, 3PMT-53PMT and 3PMU-53PMU for programming the price select-board to provide a predetermined price for each item line have been described in the foregoing with reference to device 1d11, shown in FIG. 1d.

Jacks 1-9 are connected to nine leads, such as leads PMU1-PMU9 of programming device 3PMU representing degits 1-9. A center terminal PMUC is connected to output lead LCM3 of the line count matrix 800 through a diode 1103. A pin plug 1107 attached to the center terminal PMUC by a lead 1108 is pluggable into one of the jacks to complete a path from the center terminal PMUC to an output lead PMU1-PMU9. The line output count matrix LCM3 also is connected to the common terminals PMTC, PMHC of devices 3PMT and 3PMH through diodes 1102 and 1101, respectively. Accordingly, diode 1101 connects the line count matrix LCM 3 to the dollar section PMH of the price select board 1100. Diode 1102 connects the line count matrix output LCM3 to the dime section PMT of the price select matrix, and a diode 1103 connects the line count matrix output LCM3 of the line count matrix to the cents section of the price select board.

The terminals 1-9 of the price programming devices of each of the sections PMH, PMT and PMU are multipled for the fifty-one programmable diode path selectors, such as 3PMU-53PMU. The 153 diodes, such as diodes 1101-1106, prevent sneak paths for signals over leads connected in multiple and having a common digit programmed. In the present example, it is assumed that the unit price for the item represented by line L3 is twenty-five cents. Thus, the price programming device 3PMH of the dollar section PMH, associated with line L3, has been set to 0 by plugging lead 1110 into the jack marked 0; the programming device 3PMT for the dime section PMT has been set to two by plugging lead 1111 into the jack marked 2; and the programming device 3PMU for the cents section PMU has been set to five by plugging lead 1108 into the jack marked 5.

Each of the other outputs LCM4-LCM53 of the line count matrix 800 are similarly assigned to a unit price by appropriate connections made in the programmable price select board 1100.

The signal output over conductor LCM3 from the line count matrix 800 is passed via diodes 1101-1103 and the programming devices 3PMH, 3PMT and 3PMU, connected to represent twenty-five cents, and over one of nine multipled conductors, such as PMU1-PMU9, to one of three decimal-to-binary encoders 1120-1122 for sections PMU, PMT and PMH respectively of the price select matrix 1100. The zero signal output of the dollar device 3PMH is not extended to the encoder 1122. The logic 0 signal on lead LCM3 is extended over conductor PMU5 from the cent price select section to PMU on input of decimal-to-binary encoder 1120. The signal on lead LCM3 is also extended over a lead PMT2 from the dime portion PMT of the matrix 1100 to decimal-to-binary encoder 1121.

The nine outputs of each of the three sections PMU, PMT, PMH of the price select matrix are extended to the decimal-to-binary encoders 1120-1122 through three groups 1130-1132 of nine amplifiers, such as shown for group 1130, which compensate for signal loss in the diodes such as diodes 1101-1106.

Each of the three decimal-to-binary encoders 1120-1122 has four outputs designated 2.sup.0, 2.sup.1, 2.sup.2 and 2.sup.3. In the present example, the outputs on the four leads of the binary encoder 1122 for the dollars section PMH are 0000; the outputs on the four leads of the encoder 1121 for dimes section PMT are 0100; and the outputs of the four leads of the encoder 1120 for the cents section PMU is 1010.

The binary coded outputs are present on the four outputs of encoder 1120-1121 during the period that the sales check is held in the read out position for the third line L3.

ITEM QUANTITY MARK DETECTION

When line mark LI3 is detected, the quantity mark in the third box on line L3 will also be detected. Referring to FIG. 2, the absence of light reflected toward transistor 205 will cause transistor 205 to turn off. When transistor 205 is turned off by the absence of reflected light amplifier 223 will provide a logic 1 level at its output and flip-flop 233 will be set providing a logic 1 level on lead S03.

The outputs S01-S09 of the nine scan circuit flip-flops 231-239 are extended to inputs of nine item quantity count circuits S-1 to S-9 shown in FIGS. 12 and 13.

These outputs S01-S09 are also extended to a scan output detected circuit, FIG. 2, comprised of nine gates 251-259 one input of each gate, such as gate 253, is an output S01-S09, such S03, of the scan circuits. A second input to each of the nine gates is 251-259 provided by a NOR gate 260 which is enabled at this time since both inputs ILC and LIMA to the gate are logic 0, whereby a logic 1 is provided at the output of NOR gate 260. Accordingly, NAND gate 253 is enabled and its output SOD becomes a logic 0.

START CIRCUIT

Referring to FIG. 3, when output SOD becomes logic 0, gate 301, which is normally enabled, since its three inputs SOD and the outputs of gates 302 and 303 are logic 1 is disabled gate 301 is coupled to gate 304 through a capacitor C3 so that when gate 301 is disabled, a logic 1 input is provided momentarily to gate 304, which sets a start flip-flop 305 connected to the output of gate 304 through an inverter 306, since a second input to gate 304 LIMA-1 is also a logic 1.

When the start flip-flop 305 is set, output STFF, an input to gate 513, becomes logic 1 enabling gate 513 and setting the brake via circuits N-2 and inverter 514. At the same time gate 510, an input of which is STFF is disabled whereby the clutch is released via circuit N-1 and inverter 511. When advancement of the sales check has been halted, continuous read out of line and quantity marks is provided, and accordingly, the signals on leads S03 and LCM3 will remain true while the sales check is maintained in position with the third line beneath the scanning detectors, in particular transistors 202 and 205.

The outputs S01, S02, S04-S09 of the other scan flip-flops will remain at ground.

Referring to FIG. 2, under scanning conditions as the sales check is advanced through the unit, the transistor emitters, such as emitter 245, of transistor 205 are floating and are at a potential which is approximately 0.7 volts more negative than the voltage on the base 246 of the transistor 205.

A gain circuit 260 is used to increase the optical scan area of the system, whenever the transport motor 500 has been stopped and a sales check is being scanned, by adjusting automatically the voltages -VRC and +VRC which are applied for example to the emitter 245 of transistor 205 and an input of amplifier 223, respectively.

When SOD becomes a logic 0 responsive to an output S01-S09 detected, a gate 261 is enabled, setting a flip-flop 262 which together with the negative output of a second flip-flop 264 enables gate 263. The output of gate 263, inverted by inverter 265 enables a voltage regulator circuit 213 which decreases the magnitude of voltage +VRC permitting transistor 205, for example, to switch at a lower potential. Thus, the transistor 205 will become less sensitive to light reflected from the unmarked area of item quantity box in which a mark was detected. A wide scan disable flip-flop 264 will be set whenever the voltage +VRC output of the regulator circuit exceeds a preset maximum as detected by a level detecting circuit 266, causing the voltage regulator circuit to be temporarily disabled.

The gain circuit 260 is reset by LIMA when detection of each line mark ceases.

TIMING PULSE GENERATION

To summarize what has happened to this point, the first three lines L1-L3 of the sales check 20 have been scanned and a quantity item mark has been detected in the third line L3 on the sales check. Advancement of the sales check through the unit has been temporarily stopped and a signal LCM3 generated in response to the third line mark has been detected and passed through a programmable price board 1100 which passes the signal LMC3 over selected paths which represent the coding of 25 cents for the item on line L3 signal decoders 1120-1122 which provided the outputs of the item column.

The outputs S01-S09, one of which S03 is a logic 1, of the ten detector flip-flops 231-239 are passed to the inputs of item quantity count circuits S-1 to S-9 (FIGS. 12-13).

The system has advanced to this condition without any timing pulses. However, at this point data transfer will be effected and in the calculation of the extended price and other operations, synchronization will be required for the remaining steps in the pricing process.

The system timing includes a main program counter 400 (FIG. 4) a sub-program counter 300 (FIG. 3) and program decade logic circuits, (FIG. 7), which are operative to providing timing signals in a predetermined sequence to enable the system logic circuits.

Referring first to FIG. 4, the main program counter 400 and associated gates 410-440 connected to outputs thereof are operative to provide 40 time slots designated T0-T39. The function of the 40 time slots with respect to the five programs has already been discussed in the preceding description accompanying Table I.

Associated with the main program counter 400 are decade logic circuits, shown in FIG. 7, including a tens flip-flop 710, a twenties flip-flop 720 and a thirties flip-flop 730 which are operative to provide signals which indicate the decade of the count of the main program counter 400. The manner in which these decade flip-flops 710, 720 and 730 are used will become more apparent in the following description.

Referring now to FIG. 3, the sub-program counter 300 is operative to generate sixteen time slots designated ST0-ST15. These are sub time slots which occur during each of the forty main time slots T0-T39.

To help in understanding, a time chart, FIGS. 23a-23i, has been provided which shown the time slots and the outputs of the more important control circuits. This chart which shows the outputs of the various circuits during the scanning of line L3 will be referred to when appropriate during the description.

Returning to FIG. 3, the positive output of the start flip-flop 305 is further extended over leads 308 and 309 to a gate 310. The logic 1 on lead 309 will enable gate 310 gating the output of a square wave generator 312 through a wave shaping circuit 311 to the clock pulse input CP of a sub-program counter 300. As long as the start flip-flop is set, the sub-program counter will be stepped at the rate of the square wave which is for example, 1.3 milliseconds. The square wave voltage is equal to +V. Thus the sub-program counter 300 will be stepped each 1.3 ms and will provide logic 0 levels on successive counter outputs 0-15 as the counter is 300 stepped. The positive output of the start flip-flop 305 is also extended over lead 315 to a gate 401 (FIG. 4). A second input ST0 to gate 401 is also logic 1. However, a third input to gate 401 is a logic 0 and thus, gate 401 will not be enabled at this time.

Digressing, the system includes a program reset flip-flop 1002 (FIG. 10) which is set at this time. The positive output of flip-flop 1002 is gated by an output ST0 of the sub-program counter 300 through a gate 1003 and disabling gate 1004 to provide a signal PGR which is a logic 1. In FIG. 3, output PGR enables gate 324, disabling gate 320 which, through inverter 404 (FIG. 4), disables gate 403 thereby inhibiting gate 401 through inverter 402. When the sub-program counter steps from ST-0 to ST-1, gate 1005 (FIG. 10) will be enabled and the output of gate 1005, will reset the program reset flip-flop 1002. The zero output of flip-flop 1002 will change output PGR of gate 1004 and gate 320 to logic 0 and through gates 402-404 will present a logic 1 level to an input of gate 401.

The sub-program counter 300 will advance through its counts ST0-ST15 each to provide a timing period of 1.3 microseconds. After the program set flip-flop 1002 has been reset, each time the sub-program counter 300 passes through count ST0, a pulse at the output of gate 340 will advance the main program counter one count from T0, to T1, to T2, etc., up to T39. Pulses ST0-ST15 and T0-T39 are the basic timing pulses used in the system, and the system logic circuits are connected to operate at different times as indicated by such legends.

DATA TRANSFER CIRCUITS

Data transfer circuits DTA-DTE shown in FIGS. 14-16 and 18 have been provided for transferring the price data for the items represented by lines of the sales check from the output of the pricing matrix 1100 to a sub-accumulator 1050 (FIG. 10). The data transfer circuits are also used to transfer data from the sub accumulator 1050 to a main accumulator 1000 and to print control circuitry shown in FIG. 19. Circuits are further used to transfer data from the main accumulator 1000 to the subaccumulator and the print control. The data transfer circuits DTA-DTE include input sections and output sections.

The input sections (FIGS. 15 and 16) of the data transfer circuits DTA-DTE provide a separate path for each digit of binary coded data to be transferred. An input circuit receives the four outputs which carry the binary coded price data present in the main accumulator, the sub accumulator or the price matrix.

Referring to FIG. 16, input section DTA for transferring data representing the cents digits includes data source select circuits D13 to D16, shown in FIG. 22d, each, such as circuit D13, comprised of three two-input NAND gates the outputs of which are connected together to a common lead 1611-1614.

Inputs D13-a to D13-c of gates D13-1 to D13-3 respectively are connected to the output of the main accumulator 1000, the sub-accumulator 1050 and the price select matrix 1100, respectively. The other inputs D13d-D13f of gates D13-1 to D13-3 are connected to enable circuits comprised of gates 1701-1717, shown in FIG. 17, selectively enables one of the gates D13-1, D-13-2 or D13-3 at the proper time to gate the data from the one of the sources into the data transfer circuits.

The outputs 1611-1614 of the four circuits D-13 to D-16 are connected to a binary-to-decimal converter 1610 which converts the binary coded data at the outputs 1611-1614 to decimal data on the outputs 0-9 of the converter 1610. The output zero is extended directly to a circuit F-1. Outputs 1-9 of the converter 1610 are connected to an input of coincidence circuits E-1 shown in FIG. 22e which is comprised of nine NOR gates E1-1-E1-9. A second input to gates E1-1E1-9 are timing pulses outputs of gates 1720-1738.

The output of the coincidence circuit E1 is extended to an output register circuit F-1, shown in FIG. 22f, which includes a data transfer flip-flop F1-A.

The input section of the data transfer circuits also includes a transfer carry circuit G-1 shown in FIG. 22g having inputs G-1a to G-1f connected to the outputs of the main and sub-accumulators and enable signal generator circuits such that each time either the main or the sub accumulator counter passes through a count of nine, the carry circuit will be effective to transfer a carry digit to the next higher counter. The input section of the data transfer circuit DTA provides an output over lead TDA to the output section of the data transfer circuits. Data transfer circuits DTB are similar to circuits DTA with the exception of the provision of a circuit 1615 used in the computation of the tax as will be described.

Transfer circuits DTC and DTD are identical with circuit DTA. Circuit DTE which receives input data only from the main accumulator has no input data source circuit such as D-13 of circuit DTA. Moreover, circuit DTE does not include a carry circuit such as circuit G-1 of circuit DTA.

The output section of the data transfer circuits includes five NOR gates 1801-1805 (FIG. 18) for gating the serial data of transfer circuits DTA-DTE to a plurality of pulse routing gates, including gates 1401-1477, shown in FIG. 14, which gate the data to the main accumulator 1000 or sub-accumulator 1050.

The output circuits also include four carry flip-flops 1811-1814 associated with data transfer circuits DTA-DTD. The output of these flip-flops 1811-1814 are also gated to the main accumulator 1000 or sub-accumulator 1050 via the pulse routing gates of FIG. 14.

FIRST TRANSFER OF DATA

The binary coded outputs of the pricing matrix 1100 are extended in parallel to the inputs of data transfer circuits DTA, DTB and DTC over leads PA, SA and MA, three sets of four leads each for providing the binary code for the digits which represent the dollar, dime and cent magnitudes of the price, twenty-five cents, of the item represented by the leads PA connected to the outputs 2.sup.0 to 2.sup.3 of binary encoder 1120 to an input of input select gates D12-1 to D16-1, respectively, of the data transfer circuits DTA which transfer data representing the cents digits.

Similarly the outputs 2.sup.0 to 2.sup.3 of encoders 1121 and 1122 are connected to the input select gates of data transfer circuits DTB and DTC which transfer data representing dimes and dollars digits. These outputs will be transferred to the sub accumulator 1050 during times T1-T10. It is pointed out that the subaccumulator counters 1051-1055 are reset during time T0, ST0 of each program sequence.

Gates D13-1 to D16-1 are enabled by a pulse TPC generated by gates 1701-1703 of FIG. 17. Referring to FIG. 17, NOR gate 1703 is enabled, since its inputs 20's FF and 30's FF are a logic 0, and thus, a logic 1 is provided at an input t