CA1062293A - Value computing scale - Google Patents
Value computing scaleInfo
- Publication number
- CA1062293A CA1062293A CA312,637A CA312637A CA1062293A CA 1062293 A CA1062293 A CA 1062293A CA 312637 A CA312637 A CA 312637A CA 1062293 A CA1062293 A CA 1062293A
- Authority
- CA
- Canada
- Prior art keywords
- weight
- block
- register
- zero
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Landscapes
- Labeling Devices (AREA)
Abstract
ABSTRACT OF THE DISCLOSURE
Improved electronic apparatus for weighing, computing a value and printing a label showing the weight, the price per unit weight and the computed value of each of a plurality of successive commodities. An integrated circuit microcomputer is supplied with the article weight from a load cell scale and with the price per unit weight either from a manual keyboard or automatically from a commodity plate in a label printer. The microcomputer includes an arithmetic logic unit, data registers and a sequence controller which is programmed to cause the microcomputer to correct for scale errors, to check for no motion of the scale, to compensate the measured gross weight for any tare weight, to check various interlocks, to compute an article value and to cause a label to be printed for the article. The sequence controller includes apparatus for inhibiting the printing of the computed value when the price data supplied by the data input means changes. The sequence controller controls the value computation and the supplying of the value information and the weight and price data to the printer. Input data to the microcomputer and output data from the microcomputer is multiplexed through interface circuitry. Weight data from the microcomputer is supplied to a digital indicator and weight, price per unit weight and value data from the microcomputer is supplied to the printer. The keyboard includes a lock switch which ?ust be manually actuated after new price data is supplied to the microcomputer to enable the microcomputer to supply the calculated value data for the weighed commodities to the printer.
Improved electronic apparatus for weighing, computing a value and printing a label showing the weight, the price per unit weight and the computed value of each of a plurality of successive commodities. An integrated circuit microcomputer is supplied with the article weight from a load cell scale and with the price per unit weight either from a manual keyboard or automatically from a commodity plate in a label printer. The microcomputer includes an arithmetic logic unit, data registers and a sequence controller which is programmed to cause the microcomputer to correct for scale errors, to check for no motion of the scale, to compensate the measured gross weight for any tare weight, to check various interlocks, to compute an article value and to cause a label to be printed for the article. The sequence controller includes apparatus for inhibiting the printing of the computed value when the price data supplied by the data input means changes. The sequence controller controls the value computation and the supplying of the value information and the weight and price data to the printer. Input data to the microcomputer and output data from the microcomputer is multiplexed through interface circuitry. Weight data from the microcomputer is supplied to a digital indicator and weight, price per unit weight and value data from the microcomputer is supplied to the printer. The keyboard includes a lock switch which ?ust be manually actuated after new price data is supplied to the microcomputer to enable the microcomputer to supply the calculated value data for the weighed commodities to the printer.
Description
~6~?93 - Thi~ applicat~on i8 related to Canadi~n applicat~on .- Serial ~o. 212,587, filed Octo~er 29, 197~
`' 15 Thi9 application di~close~ ~ea~ures claimed in and also claims featur~3 disclo~ed ln the followln~ co~ending ~,~ Canadlan patent appl~cation~s the application o R~ C. L~shbough~
~ ~ .
Ser~al No. 251,376 filed April 29, 1976 or "M~tion De~atlng Scale which applica~on is r~lated to the prior ~iled applica- . -tio~ S~r~al ~o. 212,623 filzd Octo~er 30, 1974 and now abandoned~
:.;. .
~ a~pli~ati~n o R. C. ~o~hbough et al, Ser~-al No. 251,492 ?; f~led April 29, 1976 for "Welght Measuring Appara~s~ which appli-cat~on 18 r~lated to the prior ~lled appllcation Serlal I~o.
212,706 filed October 30~ 1974 and now abandoneds ~he appl~ca-t~on o~ C. D~ Roba~kiew~cY~ S~rial No. 251,377 filed April 29, .
1976 fvr ~Apparatus or I~olat~ng Errors ln Pxln~ed Records~
wh~ch applicatlon i8 related to the pr~or filed ap~l~ca~lon 8erial Mo. 212,704 fil~d October 30, lg74J ~h~ appllcation of D. L. ~all, 8er~al ~. 251,378 f~led April 29, 1976 for HW~ight ~.......................................... . .
.~ 30 MQaaur$ng and ~nd~cating Appar~tus~ which application 1~
:`' . . ..
,,;-. ' , . , :.
I
. ~ '' ~b'''"
., ' .
' ,~;~ '' - :, .
~ 062293 r~lat~d ~co ~ pl:io~ Pil~d ~21ication SQrial No., 21~, ¢90 ~llo~
October 30, 197~ ~nd now ~b~don¢~l; th-3 ap~l~c~ion of R., C~
I,o~l~bou~h e~ ul, ~ri~l ~o. 251,420 ~llod Aprll 29, 1~76 ~or "Scale wlth ~ual Tare Enl:ry" which applic~tlon ~8 relatQd to ~e pr~or filed zpplication Serial No. ~12,646 fil~d Oc~cober 30, 1974 and n~w aban~oned; th~ application o G. D. Roba~ztciewiez, 6eri~1 ~o. 2$1,~18 ~iled ~pril 29, 1976 ~or "Claar and R~start Arrangoment for Digital ~aasuring .hpparatus" which ~pplic~tion ie relat~d to tha prioL filed appl~ cation Serial ~o. 21~, 691 ~iled Octob~r 30, 1974 and now abandoned.
invention relates ~o weight mea~uring and value computlng apparatu~ and more particularly to improved apparatus 15 ~or waighing, computing a value and printing an art~cle lab~l ~how~nq the weight, pr~ce per unit weight and computed Yalue o each o a plurality of succ~sE;ive articles.
: In r~cent yoar6 the demand ~or increased eficiency ha~
created the need ~or hLgh speed measurlng apparatu~ cap~ble o~
automatically we~ghing succsss~ve articles a~d, ~or each w~ighed articls, comput~n~ a value basod upon a pre~etormlnod prico per -`t unit woight and printlng an article lzbel bearing such weight, prlce per unlt weight and computed value. Such mea~urin~
:~ apparatu~ i~ com~nly u~ed, for example, in 6up~rmar~et meat ~: 25 dapartments. After a butcher cuts and divides meat into packag~
. portlons, the meat may k~ automat~cally packaged and sub~eguentiy .. . . .
. l~beled by auto~atlc welght m~a~uring, Yaluo computing and label ;~;`. prlntin~ apparatus.
- - In ~he past, apparatu~ ~ar wolghlng an artlcle, comr ~ueln~ an articlo p~lc- and prlntlng an ~rt~clo label havo , .
`' 15 Thi9 application di~close~ ~ea~ures claimed in and also claims featur~3 disclo~ed ln the followln~ co~ending ~,~ Canadlan patent appl~cation~s the application o R~ C. L~shbough~
~ ~ .
Ser~al No. 251,376 filed April 29, 1976 or "M~tion De~atlng Scale which applica~on is r~lated to the prior ~iled applica- . -tio~ S~r~al ~o. 212,623 filzd Octo~er 30, 1974 and now abandoned~
:.;. .
~ a~pli~ati~n o R. C. ~o~hbough et al, Ser~-al No. 251,492 ?; f~led April 29, 1976 for "Welght Measuring Appara~s~ which appli-cat~on 18 r~lated to the prior ~lled appllcation Serlal I~o.
212,706 filed October 30~ 1974 and now abandoneds ~he appl~ca-t~on o~ C. D~ Roba~kiew~cY~ S~rial No. 251,377 filed April 29, .
1976 fvr ~Apparatus or I~olat~ng Errors ln Pxln~ed Records~
wh~ch applicatlon i8 related to the pr~or filed ap~l~ca~lon 8erial Mo. 212,704 fil~d October 30, lg74J ~h~ appllcation of D. L. ~all, 8er~al ~. 251,378 f~led April 29, 1976 for HW~ight ~.......................................... . .
.~ 30 MQaaur$ng and ~nd~cating Appar~tus~ which application 1~
:`' . . ..
,,;-. ' , . , :.
I
. ~ '' ~b'''"
., ' .
' ,~;~ '' - :, .
~ 062293 r~lat~d ~co ~ pl:io~ Pil~d ~21ication SQrial No., 21~, ¢90 ~llo~
October 30, 197~ ~nd now ~b~don¢~l; th-3 ap~l~c~ion of R., C~
I,o~l~bou~h e~ ul, ~ri~l ~o. 251,420 ~llod Aprll 29, 1~76 ~or "Scale wlth ~ual Tare Enl:ry" which applic~tlon ~8 relatQd to ~e pr~or filed zpplication Serial No. ~12,646 fil~d Oc~cober 30, 1974 and n~w aban~oned; th~ application o G. D. Roba~ztciewiez, 6eri~1 ~o. 2$1,~18 ~iled ~pril 29, 1976 ~or "Claar and R~start Arrangoment for Digital ~aasuring .hpparatus" which ~pplic~tion ie relat~d to tha prioL filed appl~ cation Serial ~o. 21~, 691 ~iled Octob~r 30, 1974 and now abandoned.
invention relates ~o weight mea~uring and value computlng apparatu~ and more particularly to improved apparatus 15 ~or waighing, computing a value and printing an art~cle lab~l ~how~nq the weight, pr~ce per unit weight and computed Yalue o each o a plurality of succ~sE;ive articles.
: In r~cent yoar6 the demand ~or increased eficiency ha~
created the need ~or hLgh speed measurlng apparatu~ cap~ble o~
automatically we~ghing succsss~ve articles a~d, ~or each w~ighed articls, comput~n~ a value basod upon a pre~etormlnod prico per -`t unit woight and printlng an article lzbel bearing such weight, prlce per unlt weight and computed value. Such mea~urin~
:~ apparatu~ i~ com~nly u~ed, for example, in 6up~rmar~et meat ~: 25 dapartments. After a butcher cuts and divides meat into packag~
. portlons, the meat may k~ automat~cally packaged and sub~eguentiy .. . . .
. l~beled by auto~atlc welght m~a~uring, Yaluo computing and label ;~;`. prlntin~ apparatus.
- - In ~he past, apparatu~ ~ar wolghlng an artlcle, comr ~ueln~ an articlo p~lc- and prlntlng an ~rt~clo label havo , .
- 2 - j .
. .
10~2293 included a combination of Inech~lica~, optical and electrical elements. ~ t:ypic31 p~ior art system of this type i5 described in United St-ates Paten~ 3,384,193 which issued on May'21, 1968 to William C. Susor et al and United States Patent 3,453,4Z~
which issued on July 1, 1969 to Willic~m C. Susor. This system includes a mechanical-optical scale whicn generates a digital signal corresponding to an article weight. A computer multiplies ;-the measured weight by a price per unit weight, using a partial products method of multlplication, to obtain the article's valu.e.
10 The measured weight data, the price data and the computed value' da~a are then supplied to a printer for producing an article label. The system is provided with various interlocks which reduce the chances of printing erroneous labels or multiple
. .
10~2293 included a combination of Inech~lica~, optical and electrical elements. ~ t:ypic31 p~ior art system of this type i5 described in United St-ates Paten~ 3,384,193 which issued on May'21, 1968 to William C. Susor et al and United States Patent 3,453,4Z~
which issued on July 1, 1969 to Willic~m C. Susor. This system includes a mechanical-optical scale whicn generates a digital signal corresponding to an article weight. A computer multiplies ;-the measured weight by a price per unit weight, using a partial products method of multlplication, to obtain the article's valu.e.
10 The measured weight data, the price data and the computed value' da~a are then supplied to a printer for producing an article label. The system is provided with various interlocks which reduce the chances of printing erroneous labels or multiple
3~ labels for a single article. For 'example, if the price per unit ~ 15 weight or the tare weight data are changed, a "lock" switch must s be manually pushed to prevent accidental changes in this data.
;,~ .
A label camlot be printed if the weight or the computed value '~ exceed the capability of the system. After a label is printed, ... .
~' another interlock prevents printing the next label until the printed label is removed from the printer for application to the ' article. The system also includes a scale no motion detector which inhi~i.ts computing an article value and prlnting a label ' until the measured weight reaches a steady state.
~ Although systems of this type have been'extremely `'' 25 successful, there has been a need for faster-operating and more ': .
- accurate systems. Since the prior s~stems gererally nave included mechanical~optical devices for performing the weight '', measurement, periodic maintenance is required to maintain the ... .
' mechanical linkages and the optical components in peak operating conditions. Furthermore, the systems must be manually checked :
. , -' 106Z293 and set to ~ero whcn an artlcle is not present on the scale platform. Some prior art systems also have been capable of producing errors of as much as several pennies in the cslculated article value.
SUMMARY OF THE INVENTION
In accordance with the present invention, electronic apparatus is provided for successively measuring the weight of articles to be labeled, for computing an article value from each measured weight and a price per unit weight supplied to the ap~aratus, and, for each weighed article, for printing a label bearing the measured weight, the computed value and the price per unit weight used for computing such value.
The apparatus is capable of operating at a high speed with a high degree of accuracy in the measured weight and the - computed value.
:. -Specifically, the present invention relates to a ~ computing and printing weighing scale comprising? in combination, ,,~
~ an integrated circuit microcomputer including a sequence : r controller, weighing scale means, and data input means for supplying weight and price data to the microcomputer. Themicrocomputer computes a value from such weight and price -:
data. The sequence controller includes means for inhibiting the printing of the computed value when the price data supplied ~` by the data input means changes. The data input means includes :
~- a manually operable lock switch means to release such inhi-bition, printer means for printing such weight data, price r: tata and computed value. The sequence controller controls the value computation and the supplying of the value infor-mation and the weight and price data to the printer means.
3a Digital weight display means are operatively connected to the microcomputer.
.. - :
;,~ .
A label camlot be printed if the weight or the computed value '~ exceed the capability of the system. After a label is printed, ... .
~' another interlock prevents printing the next label until the printed label is removed from the printer for application to the ' article. The system also includes a scale no motion detector which inhi~i.ts computing an article value and prlnting a label ' until the measured weight reaches a steady state.
~ Although systems of this type have been'extremely `'' 25 successful, there has been a need for faster-operating and more ': .
- accurate systems. Since the prior s~stems gererally nave included mechanical~optical devices for performing the weight '', measurement, periodic maintenance is required to maintain the ... .
' mechanical linkages and the optical components in peak operating conditions. Furthermore, the systems must be manually checked :
. , -' 106Z293 and set to ~ero whcn an artlcle is not present on the scale platform. Some prior art systems also have been capable of producing errors of as much as several pennies in the cslculated article value.
SUMMARY OF THE INVENTION
In accordance with the present invention, electronic apparatus is provided for successively measuring the weight of articles to be labeled, for computing an article value from each measured weight and a price per unit weight supplied to the ap~aratus, and, for each weighed article, for printing a label bearing the measured weight, the computed value and the price per unit weight used for computing such value.
The apparatus is capable of operating at a high speed with a high degree of accuracy in the measured weight and the - computed value.
:. -Specifically, the present invention relates to a ~ computing and printing weighing scale comprising? in combination, ,,~
~ an integrated circuit microcomputer including a sequence : r controller, weighing scale means, and data input means for supplying weight and price data to the microcomputer. Themicrocomputer computes a value from such weight and price -:
data. The sequence controller includes means for inhibiting the printing of the computed value when the price data supplied ~` by the data input means changes. The data input means includes :
~- a manually operable lock switch means to release such inhi-bition, printer means for printing such weight data, price r: tata and computed value. The sequence controller controls the value computation and the supplying of the value infor-mation and the weight and price data to the printer means.
3a Digital weight display means are operatively connected to the microcomputer.
.. - :
- 4 -.:
; Jvb/mb lO~;ZZ93 The artlcle welght measurements are made by means of an electronic scale includlng at least one load cell for producing an analog slgnal proportional to the article weight and an analog-to-digital converter for converting the ` analog weight signal into a digital format. The measured ; article weight is compensated for any tare weight and for scale zero errors and displayed on a digital indicator.
Price per unit weight data is entered into the apparatus either through a manually operated keyboard or automatically from a commodity plate in the label printer. The commodity plate carries printing type for printing the commodity or article name on the label and coded price per unit weight : .
~ data which is automatically read by the apparatus. When . . .
i desired or required, a tare weight is supplied to the appara~us either through the keyboard or atuomatically from the scale .
~/ 16 for use in obtaining a net weight which is in turn used in .. '`:j . . .~,, : -~
....
:' . .
., :;
: .
... ~- .
`:, : -. . .
.;
,~:
~ .-,, .
:-,....... ..
:, . .
. '"~ .
.;:
: ........ .
~ 4a -~vb/mb : , ' ' ` ~ ' ' ~' ' -computing the commodity value. The apparatus may also include a "price by count" mode of operation wherein labels are printed for articles sold as so many for a particular price, such as six oranges ~or one dollar. Normally no weight measurement is used in printing the label in this operating mode.
The digital weight data, tare weight data and the price per unit weight data are multiplexed through an interface to an integrated circuit microcomputer which calculates the article value and controls the operating cycle of the apparatus.
Timing circuitry is provided to assure normal, periodic cycling of the microcomputer. Under normal operation, a value is com-puted and is multiplexed with the weight and price per ~nit weight data through the interface to the printer which is activated to ` print a label. Weight data is also multiplexed through the interface to the digital weight indicator. No label is printed if various interlocks and conditions exist. All interlocks , .
;~ normally found in apparatus of this type are provided for ~ assuring accurate operation of the system. One interlock `'~;, includes a lock switch which must be manually actuated each ^ 20 time the price per unit weight data is changed before new commodity values will be calculated and labels will be printed.
In a~dition, the scale is automatically zeroed to within a fraction of one weight graduation prior to computing a value.
; Provisions are made for expanding the displayed weight by one ~ 25 decimal or least significant digit to check operation of the scale automatic zeroing circuitry. A digital no motion detector is also responsive to a fraction of one significant weight digit for inhibiting label printing in the event that the scale output ~ ~ .
.. . .
,..
; Jvb/mb lO~;ZZ93 The artlcle welght measurements are made by means of an electronic scale includlng at least one load cell for producing an analog slgnal proportional to the article weight and an analog-to-digital converter for converting the ` analog weight signal into a digital format. The measured ; article weight is compensated for any tare weight and for scale zero errors and displayed on a digital indicator.
Price per unit weight data is entered into the apparatus either through a manually operated keyboard or automatically from a commodity plate in the label printer. The commodity plate carries printing type for printing the commodity or article name on the label and coded price per unit weight : .
~ data which is automatically read by the apparatus. When . . .
i desired or required, a tare weight is supplied to the appara~us either through the keyboard or atuomatically from the scale .
~/ 16 for use in obtaining a net weight which is in turn used in .. '`:j . . .~,, : -~
....
:' . .
., :;
: .
... ~- .
`:, : -. . .
.;
,~:
~ .-,, .
:-,....... ..
:, . .
. '"~ .
.;:
: ........ .
~ 4a -~vb/mb : , ' ' ` ~ ' ' ~' ' -computing the commodity value. The apparatus may also include a "price by count" mode of operation wherein labels are printed for articles sold as so many for a particular price, such as six oranges ~or one dollar. Normally no weight measurement is used in printing the label in this operating mode.
The digital weight data, tare weight data and the price per unit weight data are multiplexed through an interface to an integrated circuit microcomputer which calculates the article value and controls the operating cycle of the apparatus.
Timing circuitry is provided to assure normal, periodic cycling of the microcomputer. Under normal operation, a value is com-puted and is multiplexed with the weight and price per ~nit weight data through the interface to the printer which is activated to ` print a label. Weight data is also multiplexed through the interface to the digital weight indicator. No label is printed if various interlocks and conditions exist. All interlocks , .
;~ normally found in apparatus of this type are provided for ~ assuring accurate operation of the system. One interlock `'~;, includes a lock switch which must be manually actuated each ^ 20 time the price per unit weight data is changed before new commodity values will be calculated and labels will be printed.
In a~dition, the scale is automatically zeroed to within a fraction of one weight graduation prior to computing a value.
; Provisions are made for expanding the displayed weight by one ~ 25 decimal or least significant digit to check operation of the scale automatic zeroing circuitry. A digital no motion detector is also responsive to a fraction of one significant weight digit for inhibiting label printing in the event that the scale output ~ ~ .
.. . .
,..
5 _ , , , ~,.
.. .. .
; ~ ' . ' ' ~ ~-.. .
l~ Zg3 is not within a pr~determined no motion band for a predetermined time interval.
When desirable or required, a tare weight is supplied to the apparatus either through a keyboard or automatically for obtaining a net weight which is used in computing the article value. At least some of the tare weiyht Xeys are cumulative when the keys are pushed within a predetermined time interval.
If the time interval ~etween the successive operation of the tare keys is exceeded, the last tare Xey pushed represents the total tare weight entered into the apparatus.
Circuitry including a manual switch is provided for selectively displaying the price per unit weight data or the computed value data from the microcomputer on the weight display.
The displayed data is then compared with the printed data for isolating the source of any error.
Accordingly, it is an object of the invention to provide electronic apparatus for successively measuring the weight of articles to be labeled, for computing a value for each weighed article and for printing a label for each weighed article.
Other objects and advantages of the invention will become apparent from the following detailed description, with reference being made to the accompanying drawings.
` BRI EF DE S CRI PT I O~ OF THE DRAWING S
i 25 Fig. 1 is a schematic block diagram of apparatus embodying the principles of the present invention for weighing, computing a value and printing a label showing the weight, price per unit weight and computed value of each of a plurality of successive articles: `
., . ~
l~;ZZ93 Fig. 2, composed of Fig3. 2A - 2~, ~hows a flow diagram illus~tincJ the operatillg sequence of apparatus embodying the principles of the present invention, Fig. 3 is a schematic circuit diagram showi.ng a switch arrangement for entering data into apparatus for weighing, computing a value and printing a label for each of a plurality of successive articles;
`~ Fig. 3A shows a multiplex interface between the analog-to-digital converter and the microcomputer multiplex input interface.
Fig. ~, composed of Figs. 4A - 4C, is a schematic logic diagram of circuitry for controlling the operating sequence and computing a value in apparatus for welyhing, com-puting a value and printing a label for each of a plurality of 1~ successive artïcles;
Fig. S is a schematic logic diagram showing multi-plexing circuitry for supplying data to a digital weight display;
Fig. 6 is a block diagram of a printer for use in -~ apparatus according to the present invention; and .:
Fig. 7 is a diagram of one possible memory location '':
-` arrangement in the random access memory in the microcomputer of the e~emplary apparatus of the present invention.
',','' ' DESCRIPTION OF A~ EXEMPLARY EMsoDIMENT
. .. ~ .
Referring now to the drawings and particularly to t' Fig. 1, a block diagram is shown of apparatus 10 embodving the ~. ~
- principles of the present invention for weighing articles and, ~i for each weighed article, for computing a value based upon a predetermined price per unit weight and subsequently printing ~. 30 an article label bearing the weight, the price per unit weight - and the computed value for the article. The weight of each -` article is measured by a scale 11. Although the scale 11 may be of various known designs using mechanics, optics and _ 7 _ ' '~' ' . ' ' ' . ~ . . . : . . . ............. . . .
- ::. ., - 10~ZZ293 electronics, it is preferakZly an e]ectronic scale of the type ; shcwn in Uhited States Pat~nt 3,709,309 which issued on January 9, 1973 to Williams, Jr. et al.
e scale 11 generally comprises a load cell 12 which generates an analog output signal proportional to the weight of an article placed on a platter or weight platform 13. The analog output frcm the load cell 12 is applied to an analog-to-digital converter 14 which has a digital output corresponding to the gross weight of the article on the platter 13. The digital weight signal from the converter 14 is preferably in a binary coded decimal (Bcrl) format which is particularly desirable for use in computing an article value. The binary coded decimal (BCD) format oonprises four binary digits for each decimal digit. me weights given to the binary digits are 1, 2, 4, 8 respectively of each decimal digit. The converter 14 may be arranged to provide any `Z
desired number of decim~l digits, depending upon the maxImum weight to be weighed on the scale and also upon an increment represented by the least significant decimal digit. In the exempZlary embodiment described herein, as well as in the exemplary , . .
.! 20 embodlment set forth in the above-identified patent to Williams~
Jr. et al, it is assumed that five decimal digits will be supplied by ~he analog-to-digital converter 14.
The above-identified patent to Williams, Jr. et al discloses circuitry for automatically cancelling unwanted direct .,'j . .
~i current signals from the direct current or analog signals from -, the load cell, sensor, transducer, or strain gauge. In addition, `,~! this patent discloses circuitry for automatically zeroing the analog portion of the system while the transducer output is nomentarily interrupted and for filling in gaps in the analog 30 signal resulting from interruption of the transducer or strain :
gauge output.
nbZ/\Z;>
~' .
-`-` 10~j2Z~3 As explained in th~ above-identified patent to Williams, Jr. et al, it is sometimes desirable to indicate a ' negative weigh'c from the overall arrangement from the scale load cell through the converter and digital control arrangement.
S Thus, w~en the scale has been corrected to read net weight and the container and the commodity are both removed from the platter, the scale should indicate a negative weight equal to the weight of the container which is the tare weigh~ for which the scale has been adjusted. The overall arrangement in accor-: ` .
dance with the exemplary embodiment of this invention is ~' accordingly arranged to indicate a negative weight under these circumstances and also under other conditions described herein.
- However, the arrangement for making the various analog ~ corrections described in the above-identified patent to Williams, '~ 15 Jr. et 'al do not prevent the zero output display of the scale ; from varyinq or wandering in a random manner.
In accordance with the present invention, the digital '' output or display from the scale mechanism is further corrected ~' in the manner described herein to correct for the random wandering .: .
~, 20 of the zero display of the scale.
A dlgital weight signal from the scale 11 is applied ~`' to a -ontrol unit 15 through interface circuits of Fig. 3A and circuits 24 of Fig. 4B. The control unit 15 includes an input/
:..
" output buffer and memory 16 which receives the digital weight '' 25 data through the interface circuits of Fig. 3A and the circuits 24 from the scale 11. Data in~ut switches 17 are also connected to the input/output buffer and memory 16. The data '; input switches 17 include a manually operated keyboard for `-- entering price data, a printer mode switch and tare weight ' 30 switches. The input/output buffer and memory 16 functions as an - interface with an arithmetic logic unit 18O A sequence controller - 19 causes the arithmetic logic unit 18 and data memory or :''''~,' .
g _ .
,... : .
Z~93 re~isters 20 to co~ute the value of each weighed article and to supply such value through the input/output buffer and memory 16 to a printer 21. The arithmetic logic unit 18, the sequence controller 19 and the data registers 20 are preferably included in an integrated circuit microcomputer, as will be discussed in greater detail below.
me value is computed from a price per unit weight which is obtained either from the data input switches 17 or from a commodity plate inserted into the printer 21. The commodity plate automatically supplies price information to the input/output buffer 16 in a manner similar to that describ~d in United States Patent 3,459,272 which issued to Susor on August 5, 1969. m e commodity plate includes raised type for use in printing the cammodity or article name on a label. Price per unit weight information is enccded on the comm~dity plate by means of the presence or absence of a plurality of holes or notches at pre-determined locations. An optical or other suitable type of reader is provided in the printer 21 for sensing the presence or absen oe of the holes and for converting the price per unit ; .
20 weight information to a BCD output. m e weight data from the scale is corrected for any tare weight and zero error by the arithmetic logic unit 18 and supplied to the printer 21 and to a digital weight display 22. After a steady state weight reading is received by the logic unit 15 from the scale ll, the sequence - controller 19 causes the arithmetic logic unit 18 to compute an article value. m e ccmputed article value, the net article weight and the price per unit weight information are used by the printer 21. The sequence controller 19 controls data output to the printer and initiates printing a label.
. ~, .
~, /~ 10 -.
., .
;2~93 A~tor ~ bel iH printe~, th~ 0e~lenco controllor 19 w~ll normDll~ ~nh~bl~ the arl~hms~ic loglc unlt lB untll the label ha~ been xe.mov~d ~ro~ tho prin~er 21 ana n motlon - no motlon cycle ha~ appeared ~n tho ~cale 11 to ~nd~.c~t~ that the S weighed artiole ha~ ~en removed and a n~w artlcle ha~ b~en placed on th~ scale 11. The ~oguence contxollor 19 may al80 lnhibit the ar~thm~tlc loglc unit 18 ln the ~en~ o~ the occur-rence o~ variou~ conditlon~. For ~xam~le, i~ tho prlce or t~r~
~n~ormation i~ changed, ~hc apparatu~ 10 ifi adapted to go into a "lock" condition w~ch prevent~ printing a label until a "}ocX~ ~witch 1~ manually actuated to extinguish an indicator l~ght. Such an ~nterlock prev~nt~ an acciden~al ch.~nge in price or tare we~ght ~ata, a~ when an operator accidentally bump~ one . . o~ th~ switche~ 17. AnothQr in~erlock may be provided to pr~-ven~ printing a label lf da~a prlnt wheels are no~ properly ~. 8et Up to the correct value, welght and price data. 8till ~..... another interloc~ may pr~vent printing an err~neous label tn the e~ent that either the maxlmum welght capacity of the gcals 11 or the maxi~um valu~ capacity has bsan exceeded.
For convenience, th~ appa~atus 10 18 adaptea for operatlng in several di~fe~ent mod3s. The different mod~e o~
.
.~ operatlon a~fect the manner in which the printer ~1 pr~.nts a ~. .
label. ~h~ data input switches 17 include the mod~e switch -~- whlch permit~ selecting eltber ~ingl~, "dem~nd~ or ~
~cont~nuous" mnde of operatlon ~or prlntins lab~ls in which the ~lu~ 1~ computed for each weigho~ ~rtlcle. In eh- slngla mode of operatlon, the apparatus 10 mu~t b~ manually ac~uat~d . ~. .
~ for each lab~l which 1~ printed. ln the demand mode of opera-~ ~.
: tlon, a n~w label i~ prlnt~d each time a prlnted label 18 . 30 remov~d from the prln~er 21 and the scalo 11 ha~ gono through :., .: motlon - no mot~on cycl- to c~u~o ~ho computatlon o~ n~w valu-.
...
. .
. .~ .
~ !
.
''-''' ' .
- ..... . . " . ; .
. - . . .. .. .
106;2Z93 ~n the continuous mode o~ operation, the pri~ter 21 will con-tinuously print labels all bearing the same weight, price per unit weight and value. The mode switch may further include "price by count" modes o "single", "demand" and "continuous".
In the price by count mode of operation, the printer 21 will print labels bearing a count or factor of the number of pieces in each article or package to be labeled ~ld the total price for this number of pieces. For example, a grocery store may package six oranges or six pears together. If the package price is, for example, six for $1.29, then the label will be printed bearing the legend "$1.29" in the place of the article value and "6/$1.29"
in place of the price per unit weight.
In the following description of an exemplary embodi-ment of the present invention, it is assumed that the automatic zero correction feature will wor~ within a range of -0.005 pounds .. .
and ~0.005 pounds. However, these limits may obviously be changed to any desired value. In addition, an expanded range ;~ switch or button is provided which will allow the zero c~rrecting feature to operate within other weight limits. For example, by operating this expanded range button under certain circumstances, - the automatic zero correcting arrangernent may be employed to correct in the range from 0.105 pounds and 0.095 pounds. However, the arrangement in accordance with this invention is also arranged ; to prevent any operation of the zero correcting arrangement if the indication of the weight on the scale platter or pan exceeds . .
0.6 pounds.
Also, a ready lamp or other indicator is provided ,: . .:
which is turned on when indication from the scale is within :~'.'' +0.002 pounds and -0.002 pounds for a predetermined interval of ~; 30 time. The lamp is employed to indicate that the scale is properly corrected and in condition to weigh another object or -~ commodity. The automatic zero wander correction does not stop ~ at 0.002 pounds, but continues on to be corrected to zero :
~ 12 -. '` ' .
,. .
.
10~i2~93 accuratcly. ~le automatically ope~ated correcting feature operates sufficiently rapid so that correction will al]. be completed prior to the tim~ the ready lamp is turned on and thus prior to the time an object or commodity to be weighed is placed on the platter or pan to be weighed.
It is obvious that the predetermined limits of -0.002 and +0.002 pounds, +0.005 pounds and -0.005 pounds and the , limits o~ 0.6 and -0.6 pound have been ar~itrarily set or selected and that any other set of suitable limits may be selected and provided by obvious minor changes in the control equipment in accordance with the present invention.
Turning now to Figs. 2A through 2J, a flow diagram is shown for an exemplary operating sequence of the apparatus 10 for measuring the weight of an article, computing from the measured weight and a price per unit weight the article value and printing .
an article label. The flow diagram consists of a series of ~ diamonds or rhombuses and rectangles. Each diamond corresponds -~ to a question having either a yes or a no answer which may be obtained by conventional methods. Each rectangular block cor-responds to the performance of a specific function such as causing a label to be printed. The numbers placed in the circles to the top and left of the blocks represent input locations.
For example, an "A2" in a circle on the left of the flow diagram in Fig. 2A represents an input to the second block from the top in sheet A of Fig. 2. The numbers in the circles to the right ', of the blocks in the flow diagram represent an output connected -~
.: .
` to a different location in the flow diagram. For example, the first or uppermost block in Fig. 2A has an output to "El" if .": .
the answer to the question is no. This indicates that if the answer is no, a jump is made to El or the input on the first block in sheet E of Fig. 2.
:, .
.
1~ 293 For conv~nience, Fiy. 2 has been ~eparated into parts A through J. Generally speaking, Fig. 2A covers the basic cycling of the apparatus 10. Upon the occurrence of a predetermined sequence of conditions, the cycle is completed with a print pulse.
Fig. 2B represents the logic of a check of various interlocks for the occurrence of new data. Fig. 2C shows the sequence of opera-tions for the operation of the lock switch which must be pressed when data is changed and the printer 21 is in the "single" mode of operation. Fig. 2D shows the logic for checking the setting ,~
of the service switch which affects the weight display 22 and for checXing for the presence of excess weight and excess value.
Fig. 2E generally re~resents the operation of the scale motion detector. Fig. 2F shows the operation of the "expand" switch `which permits chec~ing the accuracy of scale zero and of the .~ .
au~o-zero capture range expand switch. Fig~ 2G shows the opera-tion of '.he auto-zero correction circuitry, of the price by count logic and of ~he value computation. Fig. 2~ shows the manner iIl which the condition of value, price and weight blanking switches .
are checked and the sequence in which the outputs are actually : 20 blanked.- Fig. 2I shows the manner in which tare weïght is manually ~ntered into the apparatus 10. Fig. 2~ shows the sequenc~
;of operations for transferring weight signals from the ar.alog-to-digital converter to the microcomputer.
, As previously indicated, Fig. 2A shows the basic opera-ting cycle for the apparatus 10. Each new cycle is initiated at the input Al to a block 25. If motion has been present on the output from the scale 11 during the previous cycle of the apparatus 10, a motion flag MOTNF will be set. The motion flag . .
M~TNF may, for example, consist of a bit stored in a memory or the state of a flip-flop or a latch. If the motion flag MOTNF
. .:
is not set, the logic jumps to the El input while if the motion -flag MOT~F is s~t, the logic proceeds to a block 26. The logic .: . .
must proceed through the block 26 before a label can be printed.
: . ~, . .
i2Z93 Thus, the block 25 r~quires a motion - no motion cycle before a label is printed. In the block 26, the presence of a motion flag MOTNF is again checked. If the flag is still present, the cycle again turns to the El input while if the ~lag is not present, the logic proceeds to a block 27 which checks to see if the printer is in a demand or continuous mode of operation as set on a mode switch. If the system is operating in a demand or continuous mode, the logic proceeds to the A5 input, while if it is in a single mode, logic proceeds to a block 28.
In the block 28, a chec~ is made on whether or not the printer 21 is set up to inhibit the recognition of a motion -no motion function if a previously printed label has not been removed from the printer. If the motion detector is not inhibited, logic proceeds to A7 while if it is inhibited by the printer 21, a check is mad-e in block 29 on whether or not a new weight measurement is required by the printer 21 due to a lack of veri-fication in the data supplied to the printer 21. If a reweigh is required, the logic proceeds to A7 while if reweigh is not required, a block 30 checks to see if print data is stored in the printer 21. If print data is stored, the system returns to Al while if print data is not stored, it proceeds to a block 31 which checks on whether or not a "no tare welght" key has been pressed. If the no tare key is pressed, a block 32 checks to see if the price per pound data is equal to ze~o. If the price per pound data is equal to zero, a block 33 outputs a "print"
pulse to the printer 21 ~or printing a label and the cycle returns - to Al. This function is provided to allow printing of labels when the weight is equal to or less than O.1 pound, for testing.
~, ~ If either the no tare key is not pressed or the price . .
per pound is not equal to zero, the system proceeds from the blocks 31 or 32, respectively, to a block 34 which checks to see if the net weight from the scale 11 is greater than 0.1 pound. If the net weight is not greater than 0.1 pound, it is ~- - 15 --- , ,, ~ . - . - , . . .
10~i2293 assumed that ~n articl~ is not present on the ~cale platform 13 and the system returns to Al. If an article greater than one-tenth pound is present on the scale platform 13, a block 35 checks to see if a SET latch or flip-flop is true. If it is true, it indicates that the system interlocks have been broken and the cycle returns to ~l. If SET is not true, a block 36 checks to ; see if the net weight is positive. If the net weight should for any reason be negative, such as when a tare weight is entered into the apparatus lO and a package or article has not yet been placed upon the scale p]atform 13, the cycle returns to Al. If the net weight is positive, a block 37 checks to see if an OVERCAP latch or flip-flop is true. OVERCAP is trued when the weight capacity of the apparatus lO has been exceeded.
For the following description, it will be assumed that the apparatus lO is capable of measuring up to thirty pounds so that OVERCAP will be true if a weight greater than thirty pounds is placed upon the scale platform 13. If OVERCAP ls true, the ` cycle returns to Al. If the capacity of the apparatus lO has ,, .
not been exceeded, a "print" pulse is outputed at a block 38.
From block 38 control is returned to Al. When the control is transferred to Al5, block 39 causes the system to read all external inputs including the mode switch, the tare ~;eight switches, the price switches, the price by count switches, the auto-price input from the printer and any weight input from the scale ll. After the external inputs are read, a bLock 40 checks !' to see if the apparatus lO is in a "price by count" mode. If the apparatus 10 is in the price by count mode, logic proceeds to 33 while if it is not in this mode, a block 41 checks to see if auto-price data has been received from the printer 21. As pre-viously indicated, the auto-price data may be supplied from a commodity plate inserted into the printer 21. If auto price data - is received from the printer 21, a block 42 checks to see if the price data during the last cycle was also auto-price data .
~` . lO~;Z;~93 received from thc printer 21. If not, the system proceeds to B7. If the last price was also from the printer, a block 43 reads and stor~s the auto-price data inputs from the printer 21.
The system then proceeds to Bl.
~urning now to Fig. 2B, the logic is shown for checking the various interlocks From the input Bl, a block 46 checks for correct parity in auto-price data received from the printer.
If there is a parity error, the logic proceeds to B7. If there is no parity error, the logic proceeds to a block 47. If the printer 21 is operating in a manual mode, the diagram in Fig. 2B
is entered through B2, wherein a block 48 checks on whether or not the last cycle was also in the manual mode. If not, the cycle proceeds to B7 while if the last cycle was also manual, the logic also proceeds to the block 47. The block 47 checks on whether or not the price data input has changed. If no change has occurred, a block 49 checks an interlock on the ~, .~, .
printer door_ If the printer door is open, the logic proceeds - to B7 while if it is not open, a check is made by a block 50 on whether or not an auto-zero inhibit signal is received from the printer 21. If no inhibit signal is received, the cycle pro-~ . .
~ ceeds to B8.
.,.
Returning to the block 47, if the price input data has ~- changed, at a block 51 the new price input data is moved to a : 1, price per pound output memory, hereinafter referred to as "P/LB OUT". The cycle then proceeds to a block 52 and an inter-loc~ flag I~F is set. The cycle also proceeds to the block 52 - from the block 50 if an auto-zero inhibit is received from the -~ printer 21. The interlock flag I~TF may consist of the setting of a latch or a flip-flop or a bit stored in a memory. The -presence of the flag indicates the occurrence of an interlock such as a change in the printer mode, the opening of the printer door or the presence of an auto-zero inhibit signal. After the interlock flag I~TF is set at the block 52, a block 53 checks to ~,.', , .
.
; . ~ . . . ~ . . ~ .-- , -`- 10~ 93 see if an "auto~tare" switch has been actuated. If not, the logic proceeds ~o Il for manually entering a tare weight. If the auto-tare switch has been pushed, a block 54 updates the tare weight by storing the current measur~d weight in a TARE memory S and again sets the interlock flag INTF. A block 55 then checks to see if the print mode has changed. If not, the logic proceeds to B12 while if the mode has changed, a block 56 updates a "print mode out" signal which indicates when the printer 21 is in the demand or continuous modes of operation. A check is then made at a block 57 to see if the interlock flag INTF is set. If not, the logic jumps to Cl. If the interlock flag INTF was set, a block 58 clears the interlock flag I~TF and sets an "initialize"
flag INITF. Thus, the initialize flag INITF is set whenever either the price input or the tare weight input has changed. This 15 flag inhibits the printing of a Iabel until the lock switch is manually actuated, thus preventing an erroneous change in the tare weight or price data. After the initializ~ flag INITF is - set, a block 59 trues the SET latch to indicate that the inter-~^ locks have been broken and the system proceeds to C5.
` 20 Fig. 2C shows logic relating to operation of the lock switch which must be actuated when the initialize flag INITF is set. A blocX 62 checks to see if the initialize rlag INITF is set. If not, the cycle jumps to C5. If the initialize flag I~ITF is set, a block 63 checks to see if the mode switch is .
` 25 in the demand or continuous mode. I the mode switch is in ~ either of these modes, the cycle again proceeds to C5. If not, ,`~? a block 64 checks to see if the lock switch is pressed. If not, the cycle proceeds to C5. If the lock switch is pressed, a block 65 clears the initialize flag INITF and clears the SET
30 latch and continues with the C5 input to a block 66. The bloc~ -66 returns the cycle back to either Al or A2, whichever was the original point of origin for arriving to the block 66.
, .
- ' -- 10~2293 The logic of Fig. 2D checks the setting of a service switch which permits isolating price and value errors in printed labels betw~en the printer and the logic unit which calculates and stores this data, and also checks for the presence of either an excessive weight or an excessive value which may cause an error in the output from the apparatus 10. From the D1 input, a block 69 checks to see if the service switch is in a "display price" position. If so, a block 70 transfers the price data stored in the P/LB OUT memory into a WEIGHT OUT memory wherein such price data is displayed on the digital weight display 22.
`~ If the service switch was not in the "display price" position, a block 71 checks to see if the service switch is in the "display value" position. If not, the cycle proceeds to D3 while if it . .
is in this position, the cycle proceeds to a block 72 which causes a transfer of value data stored in a VALUE OUT memory ... .
into the WEIGHT OUT memory for displaying the value data on the digital weight display 22. Thus, if an error is present in the price shown on the printed label and the service switch is in the display price position, a comparison may readily be made : . -~ 20 between the price appearing on the digital weight display 22 and ,~ .
the price appearing on the printed label. If these prices are - not identical, the serviceman will know that the error is due to : a fault in the printer 21. If the data is identical, the service-man will know that the error is caused in the logic unit 15. A
similar check may be made on the computed value.
The D3 input as well as the outputs from the blocks 70 and 72 are applied to a block 73 which tuLns on a "ZERO" light.
~'~r The ZERO light indicates that the scale is properly zeroed to . ~, .
within 1/4 of the least significant displayed weight digit.
A block 74 then outputs all data and the printer mode to the printer 21. Subsequently, a block 75 checks to see if the maximum value capacity of the apparatus 10 has been exceeded.
,,~' ~.
' - 19_ , ~ ' ' 6Z;~93 If the maximum value has been exceeded, a block 76 will set an OVERVALUE: latch or flip-flop or store a bit in a memory location. After the block 76 has set OVERVALUE or if the logic jumped to D7 because the maximum value capacity was not exceeded, a block 77 checks to see if the maximum weight capacity of the scale 11 has been exceeded. If not, the cycle will proceed to C5 where it is returned to either Al or A2. If the maximum capacity of the scale 11 has been exceeded, a block 78 sets an ; OVERCAP latch or flip-flop or stores a bit in a memory location and an OVERCAPACITY flip-flop or latch is set to turn on an indicator light. The cycle then returns through CS to either Al or A2.
In Fig. 2E, a check is made to see if weight data read from the scale ll is legitimate, i.e., no analog-to-digital ` 15 conversion is occurring in the converter 14. If not, a check is made on whether or not a zero expand switch is actuated. If weight data is legitimate, a motion check is made to see if the data has been consistent or st~ady for a predetermined number of cycles.
From an input El, a block 81 checks to see if a Tl ,,.~,:
- flag is set. The Tl flag is set whenever new weight data has been read from the scale ll into the logic unit 15. If the Tl flag is not set, a block 82 checks to see if a clock signal Tl is true. A true Tl represents a time interval during which weight ~- 25 data is not permitted to change. The apparatus 10 may, for example, operate on a 200 millisecond cycle. Tl may be set true for an arbitrary time intervaL, such as true for 60 milli-seconds out of each cycle and false or the remaining 140 milli-seconds. If Tl is true, logic proceeds from the block 82 to --30 E4, while if Tl is not true a block 83 sets the Tl flag and the -logic proceeds to E4. At E4, a block 84 checks to see if a "zero expand" switch is actuated. If not, the logic returns to ~ -Al5 while if the zero expand switch is actuated, a block 85 sets ; - 20 -.;, .
.
lO~;ZZ93 the interlock flaq I~`~'rF and the logic rcturns to Al5. The zero expand switch is usecl for checking the accuracy and adjusting the weight zero Whell no weigh~ is present on the platform 13 on the scale ll. When the zero expand switch is closed, the weight displayed on the digital weight display 22 is shifted by one decimal point. Thus, if the scale normally has a maximum reading of 30.00 pounds, the displayed weight will be shifted over to display X.XXX pounds or to display as low as l/lOOOth of a pound.
If the Tl flag TlF is set when the logic reaches the bloc~ 81, a block 86 checks to see if Tl is true If not, the logic returns to E4. If Tl is true, a bloc~ 87 clears the Tl flag TlF. A block 88 then causes a weight reading to be entered into the logic unit 15. Next block 96 causes the tare timer state to be read out from the tare timer storage space in the ; 15 RAM 187. Then in accordance with block 97, if the count in the :
tare timer is not zero it is redvced by one as indicated in block 97A and the control advances to ~lock 89. If the count recorded in the tare timer is zero the control advances directly `~ to block 89. After the weight is read out and the tare timer ; 20 decremented if required as described above, blocX 89 checks the :~. .
memory or switches for the setting of the motion detector count and the motion detector band. I'he motion detector count is the number of cycles or repetitions which must occur with no motion presen~ before a label i5 printed. For example, switches may .:.j .
-~ 25 be set to establish that the apparatus lO must cycle without .~
motion at least twice or at least three times before a label can ~ be printed. The band is the amount of permissible change during ; a no motion condition. For example, it may be determined that . '.1 .
~ it is-desirable to have a weight reading maintained within plus . ~ .
or minus 0.005 pound for a no motion condition. This results in a range of 0.01 pound for the motion detector regardless of the measured weight. This arrangement eliminates prior art problems in obtaining a uniform motion detector sensitivity for all weight ' ' ' .
.. ,~ -- . .
O~Z293 measurements. T}le prior art optical motion detectors have nothad a uniform sensi~ivity. After the count and band for the motion detector are determined, a block 90 calculates the weight minus the sum o~ the target plus ~he band. If this value is positive, then motion is present. The block 90 also determines the weight minus the sum of the target minus the band. If this sum is negative, then motion also is present. The target is - tiken to be the last weight reading.
If the block 90 calculates that there is motion, then a blocX 91 transfers the logic to Fl while if motion is not pres-ent, a block 92 chec~s to see if a motion flag MOTNF was set during the last cycle of the apparatus 10. If the motion flag is clear, logic proceeds to F2 while if a motion flag is ~resent, a ~` block 93 increments by one a no motion counter. After the coun-ter is incremented, a block 94 compares the total COUJlt with the no motion count determinecl at the block 89. If the contents of the counter is not equal to or greater than this count, the cycle proceeds to F2 while if it is greater than or equal to the count, the motion flag MOT~F is cleared at a block 95. The cycle - 20 then proceeds to F2.
In Fig. 2F, sequence of operations is shown for the operating sequence of the zero expand, the auto-zero capture range expand and the weight overcapacity checX. The Fl input, `~ which is entered if motion is present, is applied to a block 98 which clears the no motion counter and sets the motion flag MOTMF.
After the flag is set, a blocX 99 updates the target and sub-tracts a digital weight of eight pounds. The output from the,., -.-:
~ load cell 12 and the scale 11 preerably is always positive since ., ~ it is in a digital format. Some types of analog-to-digital . "
converters 14, such as a dual slope integrating converter, are more accurate if used in a range wherein they only have a positive output. ~his may be accomplished by offsetting the out-- put from the scale 11 to fall within the range of from 8 pounds .' '': .
. ~ : ..... . .- . -lOf~i~Z93 to 38 pouncls. Thus, the zero is arbitrarily offset by 8 pounds.
The block 99 subtracts an initial weight of eight pounds from the scale readin~ to zero the weight signal when no weight is present on the platter 13. After the eight pounds is subtracted, a block 100 checks to see whether or not the zero expand switch is actuated or true. If the zero expand switch is actuated, a block 101 moves the four least significant digits of the meas-ured weight, or the digits X.XXX pounds, to the WEIG~T OUT memory and clears an AUTO-ZER0 correction counter. Thus, the digital weight display 22 will now show the true zero weight setting of ~-' the apparatus 10 to within one-tenth of a normal weight gradua-tion. Since the auto-zero operation is inhibited, a block 102 ~` turns off the ZERO light and logic jumps to Dl.
'~ If the zero expand switeh is not closed, sequence pro- ;
ceeds from the block 100 to a ~]oc~ 103 which checks to see if an ' ' "auto-zero capture range expand" switch is closed. If not, `~
" sequence proceeds to F6. ~ormally, the weight reading used by the apparatus 10 for calculating a value is automatically zeroed -'~ ' if the weight from the scale 11 is less than 0.005 pound when no ;?~ ' ;i 20 weight is present on the platter'13. However, when the auto-,~ zero capture range expand switch is closed, a block:':104 will check to determine if the weight recorded in the raw weight ; register is equal to or less than 0.6 pound.
~` If the weight reading is greater than 0.6 pound, the ' 25 sequence jumps to G7. If it is less, block 106 causes this weight, up to 0.6 pound, to be recorded in the zero error correc-''; tion register in the AUT0-ZERO register. The weight i5 then :
-~ corrected at a block 105 by the contents of the AUT0-ZER0 register . . .
:'.'!':',' and moved to the WEIGHT OUT memory.
.;..,~
,~j 30 After the æero is corrected, a check is made to see '- if the maximum weight capacity of the apparatus 10 has been .:.
exceeded. Such maximum capacity has arbitrarily been set a~
: '. .
-. , .
lO~;ZZ93 thirty pouncls which is ~enerally sufficient for apparatus o~
the type described when u,ed in the meat department o~ a ~rocery store~ A block 107 checks to see if the corrected weight stored in the WEIGI-~ OUT memory is greater than thirty pounds. If it is, a block 10~ sets an OVERC~P latch, 1ip-flop or similar memory device. If the maximum weight is not exceeded, a bloc~
109 clears OVE~CAP. Blocks 108 and 109 are connected to a block 110 which checks to see i~ a motion flag ~lOTNF is present. If not, logic proceeds to Gl, while if ~otion is present, a block 111 checks to see if SET is true. If SET is true, the logic proceeds to G7 while if it is not true, a block 112 blanks the weight output and the logic proceeds to Dl.
Fig, 2G shows the sequence of operations of the auto-zero correction circuitry, of the price by count mode of opera-tion and of the value co~putation if a mode other than price Dycount is selected. A correction is automatically made to errors in the scale zero when the absolute value of the previously corrected weight is less than 0.005 pound. A total correction may be made up to 0.6 pcund in 0.001 pound increments, or in other suitable incremental values. Furthermore, gross zero corrections of up to 0.6 pound may be made by use of the zero capt~re range expand switch which stores correction waisht up to 0.6 pound to be stored in an AUTO-ZERO memory.
The Gl input to a block 115 is compared to see if the ~5 absolute value of the corrected weight is less than or equal to 0.005 poun~. If not, a block 116 clears the 1/4 graduation 1ag to turn off a lisht which indicates that the weight reading used by the logic unit 15 for computing a value is within 1/4 of one graduation displayed on the digital weight display 22. From the ~,~ 30 block 116, sequence of operations proceeds to G7, skipping any '. c changes in the contents or correction factors stored in an AUTO-2ERO correction register. If the absolute value of the corrected - weight is less than or equal to 0.005 pound, a block 117 checks 10~2'~93 to 5ee if the absol~te welght is l~ss than or equal to 0.002 pound. If not, a block 118 sets the zero count register to twelve which in t~rn causes the 1/4 graduation indicator light to be turned off later in the cycle.
If th~ absolute value of the corrected weight is less than 0.002 pound, a block 120 indicates that the count stored in the zero count register is read out of this register but also ; remains stored ln this register. In accordance with block 119, : , .
the zero count xegister is checked to determine if zero is recorded in this register. If the count is zero, ~lock 132 checks the weight to determine if the weight is zero. If it is, the sequence jumps to G7. If the weight is not zero, the seque~ce con~inues to b].ock 121. If the count in the zero -~; count register is not zero, block 114 indicates that the count . ~: . . .
s~ 15 in this register is incremented by o~e. Thereafter, the sequence goes to block 132 and then as described.
After the 1/4 graduation flag is set at the block 120, ` or after the logic has jumped to G5, a block 121 chec~s to see :.:
~ if the total auto-zero correction factor stored in t~e AUTO-ZERO
!!;
, . i register is less than or equal to 0.6 pound, the maximum permis-sible correction factor. If the correction fac~or is greater than or equal to 0.6 pound, na change is made in the correction factor and the logic jumps to G7, while if it is less than 0.6 pound the .. . . .
factor stored in AUTO-ZERO is modified by 0.001 pound at a block ;,:
122. After the sequence of operations jumps to G7 or after the AUTO-ZERO correction factor is modified in the block 122, a block .;
123 causes the tare weight stored in the TARE memory to be sub-~ .
tracted from the corrected scale weight and the four most signi-ficant weight digits are moved to WEIGHT OUT. m us, it will be apparent that an auto-zero correction is made regardless of the fact that a tare weight may have previously been entered into the :
~ apparatus 10.
~` c ~ - 25 -: , . . .
- lO~iZ293 After ~eight da~a is stored in WEIGHT OUT, a block 124 checks to see i~ the printer mode switch has been set to a price by count mode of operation. If not, the logic jumps to G12 and subsequently a value is computed. If the apparatus 10 is in a price by count mode, a bloc~ 125 causes a factor or count received from the price by count switch to be stored in the P/LB OUT memory for supplying to the printer. A block 126 then checks to see if the price by count factor has changed from the last cycle of the apparatus 10. If a change has occurred, a jump is made to A15 and all external inputs are again read.
If no change has occurred, a block 127 causes the price per pound data entered through the price switches to be stored in the VALUE OUT memory. If the logic has jumped to G12 and price per pound data from the switches or from the printer is present, the price per pound data is moved to the P/LB OUT memory location at a block 128 and zeros are forced into a register which stores the price by count factor read from the input switches 17. A
. block 129 then computes a value by multiplying the contents of ;~a" ' the P/LB OUT memory by the contents of the WEIGHT OUT memory and stores the answer in the VALUE OUT memory. After tXe value is computed and stored, a block 130 compares this value with $100, the maximum value capacity of the apparatus 10. This maximum value has been arbitrarily selected to limit the number of print wheels required by the printer since measuring apparatus of this type, when used for labeling meat in the meat department of a .. .~
groc~ry store, will normally not be required to exceed $100. If the computed value is greater than $100, a block 131 writes zeros in the VALUE OUT memory and the logic jumps to C5 while if the maximum permissible value has not been exceeded, the logic jumps :.' to ~1.
., ' , ' , - 2~ -' .
`` lO~;Z293 In some ins~ances, an operator of the apparatus 10 may wish to print a label which does not include all three of the price, the w~ight and the value. The weight, ~or example, is bl~nked whenever the apparatus 10 is ope~ating in a price by S count mode. Or, it may be desired to print a label bearing only the weight. This may be desirable in a wholesale operation where the wholesale purchaser will reprice the article for retail sales.
There~ore, the apparatus 10 may be provided with manual switches which permit selectively blanking the price, the weight and the value from the printed label. The logic for performing these ~ functions is shown in Fig. 2H.
The Hl input is connected to a block 134 which checks ~,~ to see if a "blank price" switch has been actuated. If the .~ .
switch is actuated, a block 135 causes blanks or numbers which index the print wheels to blank spaces to be stored in the ... .
;i P/LB OUT memory location. If the blank price switch is not ';f ~-~ actuated, or after blanks have been stored in the P/LB OUT memory, ,, a block 136 checks to see if a "blank weight" switch has been actuated. If the blank weight switch is actuated, a block 137 ,' ' A
'a 20 checks to see if the apparatus 10 is operating in a price by , count mode. If the apparatus 10 is in the price by count mode, ' the weight will aiready have been blanked and logic jumps to H6 ., ~, .
while if it is not in the price by count mode, a block 138 -'- blanks the WEIGHT 0UT memory. I~ the blank weight switch was :, .~ . . .
~ 25 not actuated, a block 139 checks to see if the scale is in the ',.f~ ' price by count mode. If not, logic jumps to H6 while if it is ..
-~ in this mode, the block 138 will blank the WEIGHT OUT memory.
.~ .
~ I the WEIGHT 0UT memory has been blanked or the logic has . .
jumped to H6, a block 140 checks to see if a "blank value"
. .
; 30 swQtch has been actuated and, if not, the logic jumps t~ Dl . .-; .
while i it is actuated, a block 141 blanks the VALUE ~UT ~emory and the logic then jumps to Dl. -.... . .
.~
.' : . . .
. . .
. '~ .
-: , . . .. ..
. .: , ~ .~ . . :
., . . ... . . . ~:
--` 10f~2Z93 Fig. 2I shows the manner in which the tare weight is manually entered into the apparatus 10. The tare weight, which is stored in the TARE memory, is subtracted from the measured gross article weight for obtaining a net weight used in com-puting a value. A check is made at a block 144 to see if a"no tare" switch has been pushed. If the no tare switch is pushed, the TARE memory is cleared and the interlock flag INTF
is set at a block 145 and the logic then jumps to B10. If the no tare switch was not pushed when the logic was at the block 1~4, a block 146 checks to see if any other tare switch is pushed.
If not, the logic jumps to B10 while if a tare switch is pushed, the block 147 checks to see if a three second time interval has ; elapsed since the last tare switch was pushed. If three seconds , has elapsed, a block 148 clears the TARE memory and, subsequently, ' 15 the tare weight represented by the pushed tare switch is stored in the TARE memory and the interlock flag I~TF is set. If the ;: :
three second interval has no~ elapsed when the block 147 is ~-~ reached, the contents of the TARE memory are updated by adding , the tare value represented by the pushed tare switch to the ?, 20 contents of the TARE memory. Thus, the tare weight stored in the TARE memory will then represent the accumulation of tare weights from two tare switches. For example, an operator may push a 0.10 pound tare switch and a 0.06 pound tare switch within a three second time interval and the total tare weight stored :."
in the TARE memory will equal 0.16 pound. From the block 149, the logic returns to B10. The three second time interval was selected on the basis that most people can select and push two switches in this interval. Of course, a different time interval may be used.
. . .
Fig. 2J shows an exemplary sub-routine or sequence of ` operations for causing weight signals received from the analog-:',.', :
~ .
~ - 28 -~, , ... . ~ . .
-`` 10~ 93 to-digital conv~rter to be entered in the w~ight re~isters of the microproc~ssor employed in the present invention. The sub-routine or sequence of operations sho~ in Fig. 2J are repre-sented in Fig. ~E by block 88.
S The remaining drawinss show details of logic and cir-cuitry o an exemplary embodiment of the invention for per~orming the functions described in the description of Fig. 2. ~Irning first to Fig. 3, the input switches 17 including the price, printer mode and tare weight data input switches are shown in detail. Price by count data, price per unit weigh~ data, tare weight data and printer mode data is all supplied to the input/
output buf~er and memory lG in the control unlt 15 on nine switch buses 155 which represent the digits one through nine. It will be apparent that no bus is needed for a zero entry which corres-. ~ .
ponds to the absence of a signal on any o~ the nine buses 155.
When the apparatus 10 is operated in a price by c~ nt mode, a count or factor is entered through a price by count switch 156.
The price by count switch 156 is as a two-wafer or two-pole . .
rotary switch having eleven contacts for selectively entering a count two through a count twelve. It will be appreciated that : .
a count of one would not normally be used nor is there normally :. .
a need for a count greater than twelve, although this may be accomplis~ed by providing additional contacts on the switch 156.
A count of two through a count of nine is entered into the control :
~ 25 unit lS by setting the switch 156 and strobing or grounding a :
strobe line 157 while a count of ten, eleven or twelve is . .
entered by setting the switch 156 and strobing a strobe line 158.
When the price by count switch 156 is set to a factor between two and nine, a signal on the strobe line lS7 causes an appropriate o~tput on ane of the nine switch buses 155. Similarly, when a , , ~
; ' .... .
:
' -- 10~2Z93 signal is appli~d on the strobe line 158 and the price by count switch 156 is set to a factor of ten, eleven or twelve, a signal will also appear on one of the switch buses 155.
The apparatus 10 is designed for calculating an article value from price per unit weight data having three significant digits or from $0~01 up to $9.99 per pound. The price per unit weight data is manually entered through three switches 159-161.
Each of the price switches 159-161 is a ten-contact rotary switch.
A contact representing zero is not connected while contacts on the switches representing the digits one through nine are con-nected to corresponding ones of the nine switch buses 155. The switch 159 is used for entering pennies, or the least significant digit of the price data. A strobe line 162 is connected for providing a signal on the common terminal of the penny switch 159.
When a signal is applied on the strobe line 162, the penny price data is entered on the connected one of the switch buses 155. The ; switch 160 is provided for entering dimes price data when a signal is received on a dime strobe line 163. Simila~ly, the switch 161 is connected for supplying dollar price data when a signal is 20 received on a strobe line 164. Thus, price data up to a maximum of $9.99 per pound may be entered through the three price switches . , .
159- 61. Of course, it will be apparent that the num~er of price switches may be varied to meet other requirements for the apparatus ;-10 and the monetary units represented by the price switches may be changed to the local currency where the apparatus 10 is used.
,:
Tare weight is entered into the logic unit 15 by means of nine momentary contact tare switches 165 which enter tare `~ weight in l/lOOth pound increments from 0.01 pound to 0.09 pound ~ and a switch 166 which enters a tare weight of 0.10 pound. A
:.~
`~' 30 signal is periodically applied by the logic unit 15 on a strobe line 167 which is connected to the l/lOOth pound tare switches s 165. These switches 165 are normally open push button switches.
-~ In the event that one of the switches 165 is pushed when a signal , .
'' ' .,, . ' -.
: .. . : .
:-~ - - : . . ..
10~ 93 appears on the strobe line 167, an output appears on the associated one o the switch buses 155. A strobe line 168 is oon-nected to the 0.10 pound tare switch 166, also a push button switch, and to an "auto-tare" switch 170 and a "no tare" switch 171. In the event that any of ~he switches 166, 170 or 171 is pushed when a signal appears on the strobe line 168, an output will appear on an associated one of the switch buses 155.
The apparatus 10 is designed for operation wi-th a key-board tare weight ranging from a min~mum of 0.01 pound to a maximum of 0.19 pound. This is accomplished by providing a timing circuit in the control unit 15 ~hich is initiated whenever one of the switches 165 or 166 is actuated. If one of the switches 165 is actuated and within the measured time interval the switch 166 is actuated, the tare weights for the two switches are summed. Similarly, if the switch 166 is actuated first and within the measured time interval one of the switches 165 is actuated, the total of the two tare weights is again summed.
~ If two of the tare switches 165 are actuated within the time -:. . .
interval, only the most recent value is entered. The time ` 20 interval may, for example, be about three seconds which should afford sufficient time for an operator to select and actuate :;
` two of the tare switches 165 and 166. If a greater time elapses, only the most recent are weight entered through a switch 165 or 166 is accepted by the control unit 15.
, A printer mode switch 172 also supplies data ovèr the switch buses 155. The printer mode ~witch 172 is a rotary switch having a common terminal connected to a printer mode strobe 173.
When a signal is received over the strobe 173, an output appears ....
` on one of the switch buses 155, depending upon the setting of ; 30 the mode switch 172. In an exemplary embodiment of the invention, the printer mode switch permits selecting between a "single"
mode, ~ "demand" mode, a "continuous" mode, a "price by count-single" mode, a "price by count-demand" mode and a "price by ~O~;Z293 count-continuous" mode. In eith~r of the single modes of opera-tion, a sinqle label is printed each time an article is weighed.
The printer is actuated each time the scale goes through a motion -no motion cycle, a value is computed and the previous label has -- S been removed fron~ the printer 21. In the demand modes of opera-tion, labels are printed as previous ones are removed from the printer. In the continuous modes of operation, the printer will continuously print a sexies o~ labels having the same weight, price per unit weight and value until printing is manually 10 terminated.
The switches 17 also include an "auto-price" switch 174. When price information is to be supplied automatically from ; a commodity plate in the printer, the auto-price switch 174 is ` actuated. ~en the switch 174 is actuatedt an indicator light 175 is automatically illuminated to annunciate this fact. A
switch 176 is provided for expanding the capture range of the auto-zero circuitry from a normal range of zero plus or minus O.OOS pound to up to plus or minus 0.6 pound. The switch 176 is a momentary push button switch. A switch 177 is provided for inhibiting operation of the auto-zero circuitry to permit govern-. ., ment inspectors to checX the weighing accuracy of the apparatus 10. Finally, a switch 178 is provided for expanding-the weight ;
reading shown on the digital weight display 22. rhe zero expand switch is normally used by maintenance people in calibrating the ' 25 zero weight setting for the apparatus 10. When the zero expand r` ' switch 178 is actuated, the displayed weight which is normally ill a format of XX.X2{ pounds is shifted over ~y one digit to dis-pla~r a weight reading of X.XXX pounds. This permits calibrating ~e scale zero to within i/lOOOth of a pound. ~inally, the ..
switches 17 include a "loc~" switch 179. Any time there is a change in data ent~red into the apparatus 10 other than weight data, the apparatu~ 10 moves from what is normally referred to as a #readyn state to a "set" state to indic~te that an interlock , ~ ~ . .. ... , , ......... . , " , . . .. . .
Z~293 has been broken. The lock switch 179 must be manually actuated to return the apparatus lO to the xeady state. Thus, an operator cannot accidentally bump one of the tare switches 165 and 166 or the price switches 159-161 after the apparatus 10 is in the ready state and prlnt erroneous labels.
Fig. 3A shows an exemplary arrangement for multiplexing the output decimal digits from the analog-to-digital converter of the above-identified Williams, Jr. et al patent so that this infor-mation may be transmitted over four data conductors or leads.
; 10 In addition, four address leads are required to indicate which of the decimal digits is being transmitted over the four common leads at any particular instant or interval of time.
- While both the above-identified patents to Williams, Jr. ~ -et al and the present exemplary embodiment of the invention show five decimal dlgits, it is obvious that any suitable number of decimal digits may be employed merely by increasing the number of cou~terstages and latches and related equipment.
The arrangeme~t shown in Fig. 3A is controlled by a source of control signals 350. This source of signals may be an oscillator or any other source of control or clock signals which may be derived from the analog-to-digital converter such as a ;~ cloc~ source of this converter which would be divided down to a much slower pulse or clock rate.
The clock source 350 is further divided by five by equip-ment 351 which may be of any suitable form. The output of thisdividing circuit as shown in Fig. 3A co~prises a binary output ., having conductors l, 2 and 4. This is the weight of the signals output from the fre~uency divider 351. These signals are then applied to the multiplexing interface circuits 35Z, 353, 354 an~
355 which may be all the same. These devices are arranged to switch the five input leads shown to the one output lead under control of the input binary address signals on conductors l, 2 and 4. Thus, when the conductors 1, 2 and 4 are all zero, the ., ~ ' ' ' ' ' .
, - - - . . . . . .
.
- lO~Z~93 input leads Al, A2, ~4 ?~d A8 ~re connected respectively to WT. DATA 1, WT. D~TA 2, WT. DATA 4 and WT. DATA 8 leads. When one signal is applied to the conductor 1 input address conductor and the other two address conductors are zero, then the Bl, B2, B4 and B8 input leads are colmected to the respective t~r. DATA 1 lead, the W~. DATA 2, WT. DATA 4 and WT. DATA 8 conductors, respectively. In a similar manner, the other input conductors of these switching devices are connected to the output weight data leads.
The input leads Al, A2, Aa and A8 are co~nected to the four binary output leads from the first decade of latches 136 of the above-identified patent to Williams, Jr. et al. Slmilarly, the input conductors Bl, B2, B4 and B8 are connected to the four binary output leads from the second decade of latches 137. The ` 15 remaining input leads are similarly coImected to the corresponding binary leads of the other output decade lat~hes 138? 139 and l40 o~ the above~identiried Williams, Jr. et al patent.
-- . .
~ In addition, the output binar~r coded signals over con-. . .
ductors 1, 2 and 4 from the divider 351 are connected to a transla-ting circuit arra~gement 356 such that when all zeros are applied on the leads 1, 2 and 4, zero will be also applied to the disit sele~tor leads DIG SEL B, DIG SEL C, DIG SEL D A~D DIG SEL E thus indicating that the first decade signals appear on the weight data leads WT. DATA ~, WT. DATA 2, WT. DAT~ 4 and WT. DATA 8.
` 25 When a one is applied to the num~er one lead, a one or voltage signal will be appiied to the DIG SEL B conductor thus indicating that the B decade signal will be transmitted over the W~ DATA 1, - WT. DATA 2, WT. DATA 4 and WT. DATA 8 leads. Similarly, a one signal will be applied to the digit selector leads C, D and E
when the corresponding weight data signal of these decimal digits is applied to the WT. ~ATA 1, WT, DATA 2, WT. DATA 4 and WT. DATA
8 leads.
The switching devices for switching any one of the input - , ~
.
. . :-10~i2293 lines to an output line are similar to the eight-line to one-line decoders 198, 199, 200, 202 of Fig. 4B except that the last three of the eight-line conductors are not connected. Similarly, the dividing arrangements 351 and the translating arrangement 356 are well-known and commercially available.
Datails of an exemplary control unit 15 are shown in Fig. 4. Fig. 4 consists of Fig. 4A, Fig. 4B and Fig. 4C which are arranged as shown on the first sheet of the drawings. In an exemp-lary embodiment of the invention the control unit 15 is a micro-- 10 computer 185 which functions to compute the value of each weighed article and to control the operating sequence of the apparatus 10.
The microcomputer 185, for example, may be of a type commercially available in integrated circuits and in the exemplary em~odiment described herein the microcomputer 185 comprises a Model MCS-4 Microcomputer Set manufactursd by Intel Corporation of Santa i ~ , . .-~; Clara, California. Such a microcomputer employed in the exemplary embodiment of the present invention described herein includes a ~ central processing unit (CPU) 186, a random access memory (RAM) ~ -`~ 187 and five read only mernories (ROM) 188-192. In the exemplary arrangement described herein, the CPU 186 is an Intel Type 4004 integrated circuit, the R~M 187 is an Intel Type 4002 integrated circuit and the ROM's 188-192 are Intel Type 4001 integrated circuits. However, it will be appreciated that other commercially available integrated circuit microcomputers or other types of commercially available computers will operate in accordance with the principles described herein.
~ hese various CPU, R~M and ROM units are interconnected in the manner shown in Fig. 4A, as required in order for these ~nits to COQperate one with another as required by the circuit con-figurations of these standard commercially available units. Theconnections are clearly described in the Users Nanual for the ~CS-4 Microcomputer Set published by the Intel Corporation. Briefly, the `: .
- ROM's, RAM and the CPU are all interconnected in parallel by the :~
~"' lO~Z93 :
data bus system shown at the top of Fig. 4A. These connections are in accordance with the requirements of the computer a~ com-mercially available. These connections permit the cooperation between the ROM' 9, the ~AM and the CPU. Thus, the CPU will trans-mit an address over the bus system which defines a storage spacein one of the ROM's, for example. The ROM having this storage space has internal control circuitry which will respond to this address and in turn cause information stored at the designated address to be transmitted back over the data bus system to the CPU
which then responds to this information in the usual manner.
The storage portion of the RAM, the ROM's and the sequence controlling portion of the CPU comprise the sequence controller 19 shown in Fig. 1. Arithmetic unit 18 of Fig. 1 comprises the ari~h-metic unit of the CPU 186. The data registers 20 also comprise 15 registers in the CPU 186 and the registers in the RAM 187. Input/
- output ports of the ROM's 188-192 and the RAM 187 and the related equipment comprise the input/output buffer and memory 16 shown in Fig. 1.
The read only memory units referred to herein as ROM's 20 188-192 store fixed data and also store a series of control orders or instructions for controlling the operating sequence of the entire apparatus 10. These orders or instructions, as is well understood ; by persons of ordinary skill in the programming and computer art, control the central processing unit CPU 186. These orders or in-' 25 structions are readily obtained by persons of ordinary skill in the programming and computer art from the flow charts of Fig. 2A-2J by ~` translation of the flow charts into computer language as required by the particular microcomputer and set forth in the instructions in`the users manual for the respective computer. A program listing for performing the operations specified in Figs. 2A-2J is attached as an Appendix to this specification. The program in the Appendix is in the language required for an Intel MCS-4 microcomputer, as specified in the Users Manual for the MCS-4 Microcomputer Set.
- . :. : .- . ,, . ~.
:.- , . . .. . ... .
- lOf~Z293 Fig. 7 shows the storage areas of the RAM 187 and the storage areas assigned to various registers ~or controlling input and output data, as well as process data, so that the data con- -trol apparatus will operate to automatically correct the zero indication of the scale in accordance with the present invention, The control orders or instructions control the CPU 186 so that it will obtain the necessary fixed information from the ROM's 188-192 as well as the required control orders and instruc-tions and obtain the data from the ~ 187 and from the various input devices so that the correct weight of each weighed article will be accurately determined an'd then, after various conditions are met, its value computed, and after the value is computed and , various other conditions are met, causes a label to be printed.
- The data used by the microcomputer 185 consists of data from the switch buses 155, data from the scale 11, data from the printer 21 and data from various interlocks. Four address out-puts 193 from the RAM 187 are connected through inverters 194 to four address buses 195. Address information and other data -' supplied from the RAM 187 to the address buses 195 determines the data supplied to the microcomputer 185 and the data supplied from the controI unit 15 to the printer 21. External data from, for exam~le, the switches 17, is supplied to the microcomputer 185 on four input data buses 196 connected to the ROM 188. At the proper time interval, the external input data on the buses 196 passes through the ROM 188 onto four input/output data buses ,: .
~ 197 connected in parallel with the five ROM's 188-192, the RAM
,~
187 and the CPU 186.
The external input data is multiplexed onto the buses ' 196 by means of four 8-line to l-line d'ecoders 198-201 and a '; 30 decimal-to-binary coded decimal (BCD) decoder 202. Each of the s four 8-line to l-line decoders 198-201 has a single output con-~` nected to a different one of the external input data buses 196 connected to the ROM 188. Three of the four data addre-~s buses lO~Z293 195 from the ~AM 187 are connected in parallel to the four decoders 198-201 ~or selectiny th~ inputs to the decoders 198-201 which are connected simultaneously to the buses 196. Thus, corresponding ones of the eight inputs to the four decoders 198-201 are connected to the outputs for such decoders. The zero : inputs for each of the four decoders 158-201 are connected to the four outputs from the decimal-to-BCD decoder 202. When a zero address is supplied to the data select inputs of the decoders :~ 198-201, the nine switch buses 155 are connected in series through the decimal-to-BCD decoder 202 and the line zero inputs of the decoders 198-201 to the four data input buses 196 to the micro-computer 185.
While the switch buses 155 are connected to the microcomputer 185, signals are sequentially applied to the price 15 switch strobes 162-164, the price by count strobes 157 and 158, the tare switch strobes 167 and 168 and the mode switch strobe 173 for entering this data into the microcomputer 185. The ~ strobe signals are applied on these strobe lines from a BCD-to-`~ decimal decoder 203. The ROM l9G has four data outputs Z04 con-. , `- 20 nected respectively through four inverters 205 to four address . buses 206. The address buses 206 supply address data to the BCD-to-decimal decoder 203 for sequentially scanning the ten outputs :`~ which strobe the price switch strobes 162-164, the price by count -: strobes 157 and 158, the tare switch strobes 167 and 168 and the mode switch strobe 113.
- When price per unit weight data is received in an . automatic mode from a commodity plate in the prnter 21, such . ~:
: data is received over four lines 210-213. The four lines 210-213 ~re connected, respectively to the line one inputs on the :---; 30 8-line to l-line decoders 198-201. Four weight digit selection : inputs 214-217 are connected to the line two inputs to the .
; decoders 198-201, respectively, and four weight data lines 218-. ~ . .
- 221 are connected, respectively, to the line three inputs to the --:
. ' ~ .
lO~ZZ93 decoders 198-201. The data appearing on the digit selection inputs 21~-217 identifi~s which weight digit is present on the weight data lin~s 218-2?.1. The weight data appearing on the lines 218-221 at any given time is a single digit of weight in a BCD format. If five digits of weight are to be received from the scale 11, the fi.ve weight digits are sequentially read ~y alternately receiving the digit selection data on the lines 214-217 and the actual weight data on the lines 218-221.
Interlock in~ormation is supplied to the microcomputer 185 by means of the line four through line six inputs of the decoders 198-200 and the line four th~ough line seven inputs of the decoder 201. The line four input to the decoder 198 receives data from the lock switch 179, the line five input is connected to a motion detector inhibit output from a manual print switch in the printer 21 and the line six input receives a "rewelgh" signal from the prin~er 21. The line four input to the decoder 199 is connected to a price contact on a service switch which, when actuated, connects the line four input to ground. When the service switch is actuated, price data is shifted into a weight ~ 20 memory for displaying on the digital weight display 22. ~he line five input to the decoder 199 is connected to a lead 222 which receives a signal when a label is printed, as will be dis-cussed in greater detail below. The line six input to the decoder 199 is connected to receive an acknowledgment signal from the printer 21 when print data for a label has been stored.
T~e line four input to the decoder 200 is connected to - a value contact on the service switch which, when act~ated, . .~ .
causes the computed value to be shown on the dlgital weight dis-play 22. The line five input to the decoder 200 is connected to the au*o-price switch 174 and through an amplifier 223 to the auto-price indicator 175. When the apparatus 10 is operated with an auto-price received from the printer 21, a parity check is ~; made to verify the accuracy of the price per unit weight data.
.
' : ~
. . .
10t;'~293 An auto-price parity signal i~ applied on a line 224 to the line six input to the decod~r 200. The printer door has an interlock switch connected to the line four input to the decoder 201. Thi5 interlock preven~s accidental actuation of the printer while an operator has the door open for changing commodity plates or for maintenance. The line five input to the decoder 201 is connected to the zero expand switch 178 (~ig. 3), the line six input is connected to the Tl clock (not shown) which provides B pulse -~ . signal to indicate the time interval during which weight data may be read from the scale 11. As previously indicated in the discu~sion o~ Fig. 2, the ~1 clock may have a 200 millisecond cycle, comprised of 60 milliseconds in which weight data may be read from the scale 11 and 140 milliseconds in which new weight data is measured by the scale 11. Finally, the line seven input to the decoder 201 is connected to the capture range expand ` switch 176.
- The line seven inputs to the decoders 198-200 are connected to three switches 225-227, respectively. One of the .. . ~ . .
- switches 225-227 is closed to establish the number of sequential "`.'~`! 2G hits or no motion cycles of the motion detector before a label .
is printed. The switches may, for example, indicate that only ; a single hit is required if the switch 225 is closed, two hits are required if the switch 226 is closed and three hits are re~uired if the switch 227 is closed.
.
Output data from the microcomputer 185 is stored within a random access memory 228. Weight, price and computed value data is supplied to the RAM 228 from the RAM 187 in the micro-computer 185 over the buses 195. Address in~ormation for storing . ., :
data in the RAM 228 is supplied from the RO~ 190 over the buses -;~, 30 206. The buses 206 are connected through an address selector 229 to address inputs on the RAM 228~ The ROM 189 is connected over .~ a line 230 to an input to the address salector 229 for connecting the ~uses 206 to the RAM 228 for supplying a data storage or ~ ~ ~
.. . . .
10~2293 write address or or connecting four buse~ 231 to the R~M 228 for supplying a readout address. Thus, when weight data or price data is supplied to the microcomputer 185, such data is also stored in the RAM 228 and when a value is computed, the computed S value is also stored in the ~AM 228. The ROM 189 enables writing or storing data in the RAM 228 by applying a "write enable~' signal through an amplifier 236 to a line 237. The RAM 228 has four output buses 232 which are connected in parallel for supply-ing data to the printer 21 and to the weight display 22. The output buses 232 are also connected through three exclusive OR
gates 233-235 for generating a parity bit from the output data.
A BCD signal is generated in the printer corresponding to the setting of each print wheel in the printer 21. A parity bit generated from the setting of each print wheel is compared with 15 the corresponding parity bit from the gates 233-235 for verifying the accuracy of the printer setup. If there is a lack of parity, a "reweigh" signal is applied from the printer 21 to the line ~- six input to the decoder 198.
As indicated above, an output address is supplied to ; 20 the RAM 228 over the readout address buses 231. The output .` address buses 231 are also connected to supply an output data - address to the weight display 22 and are connected througn ampli-fiers 240 to supply address data on outputs 240' to the printer 21. An address is applied.on the buses 231 from a four bit `~ 25 address counter 241. A clock signal is applied from a clock :...
.. source (not shown) to a decade counter 242. One output of the counter 242 is applied through an inverter 243 for counting up .~ the four bit address counter 241. A different output from the decade counter 242 is applied through an inverter 244 for supplying a clock signal to the printer 21.
, s- ` ' ~ . -An output 245 from the RO~I 189 in the microcomputer 185 is connecte~ through an inverter 246 to a line 247 which enables quad bistable latches 248. When the latches 248 are enabled, data present on the address and data buses 195 from the RAM 187 S is set into the latches 248. One output 249 from the latches 248 is a memory update request. The memory update request line 249 is connected to a NAND gate 250. The NAND gate 250 has an output co~nected through an AND gate 251 to an enable input on the four bit address counter 241. The address selection line 230 con-nected from the ROM 189 is also connected to a second input of the A~D gate 251. A signal is applied on the line 230 to the AND gate 251 at the same time the readout address lines 231 are connected to the RAM 228. If the output of the ~A~D gate 250 i5 high at the same time, the A~D gate 251 will enable the ~our bit .; , .
address counter 241 for supplying a sequence of addresses for ., .i .
reading data from the RAM 228. The ~A~D gate 250 also has four -~ inputs connected to the address buses from the counter 241 and ~ a printer off input from the printer which is high when the , ~ .
printer is off. Thus, when the bistable latches 248 are set to apply a signal on the memory update request line 249 or when the printer is off, the address counter 241 will cycle whenever a signal is received from the ROM 189 on the line 230. Once a . . ~ .
cycle is started by a signal on either the memory update request line 249 or by a pulse on the printer off line, the address counter 241 will continue to cycle until all of the address buses ~ -; 231 go to a logic zero.
v The bistable latches 248 also include an output 252 which indicates when the weight reading is below zero. The output 252 is connected through an inverter 253 to supply a `,i 30 MINUS sign output 254 to the printer 21 and also to the weight :: -"
~ display 22. Still another output 255 from the latches 248 is :, ~ -connected through an inverter 256 to an output 257 which , ~ .
;~ illuminates an out-of-range indicator lamp. A fourth output 258 .
-- ` 10~j2Z93 from the latches 248 is connect~d through a N~ND gate 259 to illuminate a ready indicator lamp. A "print stored" input 260 from the printer 21 is connected through an inverter 261 to a second input o~ the NAND gate 259. ~he output 258 from the latches 248 is also connected through an inverter 262 to a line 263 which supplies a SET signal to the printer. The line 263 is also connected through an amplifier 264 for illuminating a SET
indicator lamp. The printer also supplies the REWEIGH signal on a line 265 through an amplifier 266 to illuminate a "weigh again"
indicator lamp, a "taXe label" signal over a line 267 through an amplifier 268 to a take label indicator lamp and an "add label"
signal over a line 269 through an amplifier 270 to an add label indicator lamp. An indicator is also provided for indicating when the appaxatus 10 is operating within the weight zero limit or within a predetermined fraction of a weight graduation of zero.
. ~ .
~ This has previously been referred to as the 1/4 graduation lamp.
:, .
~ The ROM 192 has a single output 271 which is connected through an - inverter 272 to a line 273. The line 273 is connected through an ~ inverter 274 for energizing the zero limit indicator lamp.
- 20 During normal operation of the microcomputer 185, the ""~`!, ROM 189 applies a periodic pulse on the line 247 for resetting ~" the bistable latches 248. This pulse will appear once each time the microcomputer 185 goes through a complete program cycle.
..... .
In typical operation of the microcomputer 185, the pulse will appear at about 0.2 second intervals. However, it is possible for a noise pulse or some other disturbance to cause the cen~ral processing unit 186 to end up at an incorrect or nonexistent address. In such event, the microcomputer 185 becames "hung up"
and is in effect "dead". When this condition occurs, the micro-computer 185 must be restarted before a label can be printed.Timing circuitry is pro~ided for automatically restarting the microcomputer 185 in the event that two sequential periodic pulses are missing from the line 247.
.: .
:~- . :-.. , . .. , ---- 10~i~293 ~ c lil~ 247 i 9 conncct~d through an inverter 281, a currcllt limiting resistor 282 and a diode 283 to the input of a thresnold or level. detecto.r 284. The input of the threshold detector 284 is also connected through a high value resistor 285 S to a voltage source and through a capacitor 286 to ground. When the voltage on the input of the threshold detector 284 is below a predetermined level, the threshold detector 284 will have a hlgh or positive output. ~Iowever, if the input of the threshold ~: detector 284 exceeds a predetermined voltage level, the output of the threshold detector 284 will go negative. The capacitor 285 is charged at a relatively slow.rate through the resistor 285.
Each time a cycle pulse appears OIl the line 247, the inverter 281 will have a low output for rapidly discharging the capacitor 286 :.
througih the diode 283 and the current limiting resistor 282. Under norma]. operation of the microcornputer 185, the cycle pulses on ~ the line 247 maintain the charge on the capacitor 286 below the . threshold level of the detector 284. However, in the event of -:.
two sequential cycle pulses ~ailing to appear on the line 247, the capacitor 286 will become suffici.ently charged as to cause 20 the threshold detector 284 to change states. - ~`
When the output of the threshold detector 284 goes .. negative, a capacitor 28l is.discharged through a diode 288 and a current limiting resistor 289. A decrease in the voltage on ~ .
the capacitor 287 causes a second threshold detector 290.to change :
from a negative to a positive output which is applied through a :' resistor 291. to the base of a transistor 292. The transistor 2g2 ;
`I then switches states of conduction for applying a recycle or restart signal on a line 293 connected in parallel t~ the CPU
~` 186, the RAM 187 and the ROM's 188-192 in the microcomputer 185.
A resistor 294 and a diode 295 are connected in series.between the input and the output of the threshold detector 284. After . the threshold level is reached and the output of the detector 284 goes negative, the capacitor 286 is discharged through the ` - 44 - .
.. . . . . .
iZ293 resis~or 294 ~d the dio~ 295 until the output from the detector again becomes positlve. The capacitor 287 is then charged through a resistor 296, thereby causing the outputs of the det~ctor 290 and the transistor 292 to change. If two more cycle pulses are absent from the line 247, the capacitor 286 ; will again become charged sufficiently for the outputs of the detectors 284 and 290 and the transistor 292 to change states, applying another clear and restart signal to the microcomputer 185.
Fig. 7 is a diagram showing one of many possible memory location arrangements in the random access memory RAM 187 of the exemplary arrangement of the apparatus of the present invention.
As indicated in Fig. 7, the RAM is provided with four memory re~ister areas. Each of these memory register areas is arranged to store foùr binary digit words which in the exemplary embodiment described herein usually are coded to represent a decimal digit. Each memory area 16 is arranged to sto~e 16 of ` these four binary digit numbers or other information. The register areas are selected by address designated "4 HIGH" above each one of the areas. Thus, the address of the first area is 0000. The address for the other three memory register areas is shown above each of these register areas. In additi~n, each of the four binary digits forming a word or number in each of the areas is assigned an address, which address is shown to the left of the first memory area. As indicated, the address for the memory areas comprise the first four high numbers, or binary digits of the address, while the address of the individual words or numbers within each area is designated by an address designated "4 LOW". Thus, at least certain of the same address symbols may be employed to designate both memory areas and also the words within the memory areas. Thus, two addresses are distinguished ~--by their location in the addresses as is well known by persons of .
ordinary skill in the art of microcomputer operation.
~ 10~i2~93 The RAM 187 also includes four status registers shown in the lower part of Fig. 7. Each of the status registers has an address similar to the corresponding memory register area as indicated above each of the status registers. The rectangles in the status registers represent a storage space for a single binary - digit or bi~. Thus, each of the status registers may store four four-bit binary words. In addition, each of the bits o each ` o the words may be employed to store a binary bit which is independent of the other binary bits of a particular word at the particular address. In other words, as indicated, the zero correction sign bit, 714, is used to store the sign of the æero correction. This bit is stored in this bit space 'ndependently i-of the information stored in the other three bits spaces of the ~:
`~ last word of the first status reg~ster.
As indicated in Fig. 7, the first five word spaces 710 ~ in the first register space are employed to store the five binary - ~
-~ coded decimal digits Gf the raw weight received from the weighing `
-~` apparatus and are designated raw register. The next five four-bit register word spaces 735 are employed to store the five 20 decimal digits of the motion target weight. The next word, or register space 726, is employed to store the count or number of - hits employed to determine whether or not there is motion upon the platter of the scale. The last five word spaces 711 are employed as a zero correction register and store the five BCD
digits employed to correct the zero indication of the scale.
The other register spaces are designated to indicate the manner ~i in which the particular register spaces are employed.
-~ The various status register spaces shown at the bottom of Fig. 7 are similarly designated with the name of the bit or bit~ employed to record the various information required to '.-'~ ' , provide the various features of the present invention, as ... .
i ~~ described herein.
. ' ................................................. . .
..~
, - - :. : , ,, .- -: :
- ' 106~g3 OPE~TION OF THE S~STEM
__. __ As described in the above-identified patent to william~, Jr. et al, the sensor control1ed by the load cell 12 of the scale provides an output voltage which represents the load on the load cell, which in turn is a function of the load on the scale. This output volta~e is then amplified and processed so as to remove an unwanted direct current component and to reduce or remove unwanted vaxiations in this voltage so that the voltage accurately repre-sents the load on the load cell and the load on the scale. This analog voltage is then employed to control an analog/digital converter 14.
Also the analog-to-digital converter employed in the exemplary system described herein, in addition to generating a digital signal representing the weight on the scale to be dis-played also generates a digital signal representing a fraction ofthe weight represented by the least significant digit of the displayed weight. In the exemplary embodiment described herein, it is assumed that this additional signal represents tenths of , the weight represented by the least signiflcant digit displayed.
However, this additional digital signal may represent any other suitable or desirable fraction of the weight represented by the least significant digit displayed.
:,:
The analog-to-digital converter in effect samples this corrected analog voltage at repeatedly recurring instants of time.
These sample voltages are then employed to control the output of '"A the digital converter. Thus the output of the digital converter is a digital signal which accurately represents the load on the load cell and thus the load on the scale. In the exemplary . , .
arrangement described in the above-identified patent to Williams, Jr. et al, and in the exemplary arrangement described herein, the : . .
analog-to-digital converter requires a cycle of about 200 : ; :
.~' .. - . : .
-` 106Z293 milliseconds. This cycle is thus repeated approximately five times a second. Near the end of each cycle of operation of the analog-to-digital convertin~ apparatus, this apparatus transferq digital signals representing the analog weight input to a set S of latches. These latches then maintain these digital signals for a predetermined interval of time. During a portion of this interval of time, the analog-to-digital convexter also applies an output signal to the Tl lead. This Tl signal is obtained from device 100 of Figure 2 of the above-identified Williams, Jr. et al patent. Thus during the time the output signal is applied to the Tl conductor, output from the latches remains constant so that ~ -the input to the multiplex switching devices 352, 353, 354 and 355 of Fig. 3A remains constant. Consequently, the output signals applied in sequence to the weight data conductors WT.
; 15 DATA l, WT. DAT~ 2, WT. DATA 4 and WT. DATA 8 represent the .,,; , `~ respective decimal digits of the output weight from the analog-to-digital converter. The frequency or speed of the clock pulses ~, from source 350 are such that the equipment of Fig. 3A will operate through a plurality of cycles during the time an out~ut signal is applied to the Tl conductor. In other words, each of the binary representations of the five decimal digits rapresenting the weight will be applied in succession to the output weight data conductors WT. DATA 1, WT. DATA 2, WT. DATA 4 and WT. DATA 8 a plurality of times during the time an output signal is applied `r 25 to the Tl conductor.
C~ncurrently with the application of the respective ' 'l "''J decimal digits to the weight data lines WT. DATA 1, WT. DATA 2, , WT. DATA 4 and WT. DATA 8, corresponding signals are applied either to none or to one of the data selecting conductors B, ; '~
C, D and E indicating the speci~ic of the five decimal digit .~, .
.
. . .
~ ., .
~ - 48 - -10~ 93 signals applied to the weight: da~a conductors WT. ~ATA 1, WT.
DATA 2, WT. ~TA 4 and ~T. DATA 8 at each of the instant~ of time.
Assume now that power has been applied to the system so that the analog~to-digital converter will start to develop an analog conversion and provide a digita~ output siynal after an interval of time. At the same time, the control equipment 15 will pe~form an initializing operation iIl the usual manner and cause zeros to be stored in each a~d every register space in the RAM 187. Thus, zeros will be stored in all of the register spaces of this RAM 187 shown in Fig. 7.
After zeros are stored in all of the register spaces, the control of the system is transferred to the main program P.l - shown in Fig. 2A. Block 25 causes the memory space 718 of Fig.
~ 15 7 to be tested t~ determine whether a one or a zero is recorded ; in this space. This space, which is des-gnated "MOT~F", represents a motion ~lag and under the assumed conditions, a zero will be recorded in this space with the result that the ~-- program is now transferred to El of Fig. 2E. As a result, the ~0 system then tests the storage space TlF 717 to determine whether ~` a one or zero is stored in this space. Under the assumed con- -~` ditions, a zero will be stored in this storage spot. This storage space is designated a Tl flag. Since a zero is stored - in this storage space, the program proceeds from box 81 to box 82 where the condi~ion of the Tl clock lead (see the botto~ of Fig.
,,~ .
- 4B) is tested to determine whether oile signal or a zero signal is present on this lead.
, .
, ~nder the assumed conditions, a zero will be present - - on this lead so that the program proceeds to blocX 83. With -:~
th~ zero present on this lead, the analog-to-digital converter . ~ .
.' ' ' .
.
:. ~-. .-- , . ~ ;
10~;~293 indicateq that a i~atisfactory output signal is not present on the output leads from the analog-to-digital converter.
In block 83 the computer is directed to change the information stored in the storage bit space 717 to a one, indicating that the analog-to-digital converter is in the process of providing a valid output digital signal, but that such signal is not present at this time on the output leads from the analog-to-digital converter.
From block 83 the control then goes to block 84 where ` 10 the zero expand switch is tested. A flag or bit stored in a -~ status register bit space 719 indicates the setting of the zero ; expand switch. Since this switch is assumed to be off, the zero expand is not true and the control is thus transferred to A15 of Fig. 2A at which time the control equLpment successively reads all of the various external inputs and stores their con-.
dition in the third one of the storage registers having an ` address 0010 of Fig. 7. After all of these switches have been ;~ tested and their condition recorded in ,he corresponding regis-ter spaces assigned to them, the control then proceeds to block 20 40 where the price by count mode switch is tested. under ; assumed conditions, this switch will be conditioned so that price by count is not the mode of operation. Consequently, con-trol is then transferred to block 41.
Again, assuming this system is not operating in the 25 auto price mode, a zero will be stored in the auto price bit storage location in the status register 0001 and, as a result, ? the control of the program is transferred to block 48 of Fig. 2B
,: .,i via transfer B2. As a result, block 48 tests the status register storage space 738 designated auto price in the status register ~ 30 0001. Assuming that the last cycle was not auto price and that .,'. ' .
"' .
.~' ~' ' . ...
~ .
._ . . . .
`-` lO~Z293 a ~oro }~t i~ ator~d ~n t:hl~ ro~i~ter indicu~ing that the la~c cyclo wa~ o P. n!.anual ~ric~ ~n/;ry, tho con~rol i~ tran~erred fror~ bloc~c 4a t~ block 47. Bloc3~ 47 ~et;~rmines wh~ther or not the price input has c~hang~3d.
Thua, block ~17 compares ~he lnformatlon ~u~t record0d ln t~ ~torage E3~aces SW-.OP through ~w-.Po with the pr~Yious price ou~put reg~tered in the outpu~c pric~ r~gister 739 in th~
reg~ st~r 0~ nder the as~um~d condition~, the pric~s may or may not be the ~am~. If the manu~l sw~tch~ are all 3et on zero, o then the~e prices w~ll be th~ same an~l the prlc~ will not have changed so far as the control ~ipment i~ conce~ned. ~9 a reoult, the control goes to bloc~k 49 of Fiy. 2B where a ~;afety switch on the printer door io checked, ~incs th~e will be closed, ~:
~ control then goe9 to block S0 wheræ ~h~ condition of an auto .: 15 zero inhibit ~witch is te3ted. If thio ~witch i5 operated, it i~ desirable to di~able to the auto zero correction operatlons - -a~ de~cribed here$n.
~ Assuming that the a~to zero inh$biting switch is of~, : then the control i~ ~ran~ferred to blocX 53 over the txansfer B8. BlocX 53 te~ts the auto tar~ switch.
~nder the agsumed conditions, the information ~tored ln . the storage spa¢e SW-.T in the ~torage rogister 0010 lndlcates that the AUT0-TARE switch i9 not pushed w~h the rcsult that the program now transfers to block 144 via transfer Il o~ Yig. 2I.
- 25 Block 144 cau~e~ the computer to te~t the otorage -. are~s SW-.T ~nd SW-.0~ and if nons of the tare swltches ha~ been oper~ted, the program 1~ tr~nffferred to block 145 whlch causes the tare regl~ter area 720 of P$g~ 7 to bo all returned to zero, - or zoroe agai~ recorded ln ~oa under ~e assum~d condltlons.
. .~ .
30 ~ addltion, a on~ i5 record~d ln the S2~TF Gtatus registo~ ~pace 736 o~ t~lO ~tatus reglstor 0010. Thon th~ control i8 tr~n~-~lrr~tl to blo~c 5S vla BlQ o~ rlg. 2B.
.~. ' .. - . .
. . -2~93 Block 55 causes the computer to compare the printer mode recorded in space 722 of register 0010 with the recordings in the status register bits 723 and 724. Since it is assumed herein that the printer mode will be the manual mode, these registers will not have changed so the operation will be trans-ferred to bloc~ 57 via transfer B12. In block 57, the condition ; of the interloc~ed flag i~ the status ~it register 736 is inter-rogated and as pointed out above, thi~ flag has been set to a . one so that control then goes to block 58 where the interloc}c flag is changed from one to zero and the initializ~d flag I~ITF
stored in space 727 is set to a one. Next, the set bit in space 737 of the status registe~ 0011 is set and the control transfer-red to block 66 via C5. Since this cycle of operations started from block 25, block 66 causes the computer to transfer control lS back to block 25 via transfer Al.
-~ Since the motion flag is not set, that is, since a ~, zero is still stored in the status register storage space 718, ~' the control will be transferred to block 81 via transfer El.
..
-~i At this time, the block 81 causes the computer to again test the . ,;~
TlF flag, that is, the TlF storage space 717. During the previous - cycle, as described above, a one was stored in this block indicating that TlF is set. Consequently, at this time the con-~ trol will be transferred to bloc~ 86, instead of 82, as described - in the previous cycle. However, under the assumed conditions, ~ 25 the signal on the Tl clock lead is still zero so that control -- will be now transferred to block 84 via the transfer E4. There-after, block 84 tests the zero expand switch which, as assumed . .
to be unoperated, so that control will then be transferred to bloc~ 39 via transfer A15. Thereafter the remainder of the . , 30 second cycle is substantially the same as described abave assuming that none of the various keys or switches have been actuated.
';' :
.
- ~2 -. ,''~ . .
. .
l(l~iZ~93 At the end of the second cycle, control will be trans-ferred to the block 25 via Al transfer in the manner described above and each succeeding cycle of the main program will be repeated in accordance with the above description of the second S cycle so long as the signal from the analog-to-digital converter on the Tl clock lead remains zero. During each of these cycles, ~he TlF or Tl flag signal is set in a one state by a one being stored in the storage space 717 and a zero signal remains on the Tl clock lead from the analog-to-digital converter.
NO MOTION DETECTION
Assume now that during some one of the above-described cycles of the main program, the analog-to-digital conver.er 14 ` completes a conversion and supplies digital output signals to the control equipment 15. Consequently, the analog-to-digital con-verter 14 will also apply a one signal to the Tl clock lead. As a result, when a control is transferred to the block 86 during - the next main program cycle, as described above, the Tl lead will test one or true so that the control is now transfer~ed to block ~ 87 where the TlF or Tl flag is cleared. In other words, a zero '~'7 20 is now stored in the TlF status register space 717 instead of a one - Thereafter, the control goes to block 88 where the weight output signals from the analog converter 14 are read into the raw weight register 710 of Fig. 7.
Fig. 2J shows a~flow chart of an exempIary sub-routine for entering weight signals from the analog-to-digital converter in the raw weight register 710 of Fig. 7.
As described above when the analog-to-digital converter .:
-~ is in condition for transferring digital signals to the raw weight register 710, an output signal is applied by the analog- -to-digital converter to the Tl lead. As a result the control sequence proceeds from block 86 through block 87 to block 88 as ~t, described above. Within block 88 the control is transferred to a block 370. This bloc~ indicates that the RO register within '' . ' , ' :
. ~
. . .. . . . . .
lO~iZZ93 the CPU unit is set to eleven. The Pl register is set to ~ero and the R3 register also set to zero. These registers beiny located within the CPU unit.
The R0 register is employed to indicate when all of the digits of the weight are transferred to the raw weight register 710. The Pl register is employed to direct the digits to the proper register spaces within the raw weight register.
The ~3 register is employed to select the desired decimal digit to be transferred from the analog-to-digital converter to the ~ 10 raw weight register 710. Thus initially with these registers ; set as described above, the block 371 to which the control is transferred from block 370 first reads the R3 register and finds a zero recorded therein. Block 370 then translates this zero to `j indicate that the zero should be read from each one of the leads DIG SEL B, DIG SEL C, DIG SEL D and DIG SEL E. The translation - order or sequence is designated KBP which translates the binary digit in the R3 register into a one-out-of-four code. ~ext - -block 372 tests the digit select leads B, C, D and E and if any ~- signal condition on these leads other than zero on all of them . ......................................................... .
is found, the control is tr~nsferred back to transfer point J2 and the above cycle repeated. The small loop including blocks 371 and 372 are then repeated until zero is found on all four :
of the digit select leads DIG SE~ B, DIG SEL C, DIG SEL D and DIG SEL E.
... .
When a zero is found on all of these leads, the control .. .. .
- is then transferred to the block 373 where the value of this digit is read into the raw weight register area selected by the ,~ Pl register in the CPU unit. This will be the first digit space ,:, .
in the raw weight register 710 since a zero was previously set ` 30 in the Pl register in the CPU unit.
.
~ " ' .
, ;''''' . - 54 -.. ~ - - - - -lO~iZ293 After the fir~t digit is thus transferred to the raw weight register 710, the zero in the R3 register in the CPU unit is again translated by the KBP operations into a one-out-of-four code and the signals on the digit select conductors DIG SEL B, 5 DIG SEL C, DIG SEL D and DIG SEL E compared with this code. If under the asswned conditions zeros are found on all of these leads, thus corresponding to the zero in regis-ter R3 after being --~ translated to the one-out-of-four code, the control is advanced to bloc~ 376.
If on the other hand the si~nals on the weight data - conductors WT. DATA 1, WT. DATA 2, WT. DATA 4 and WT. DATA 8 - change during the time the weight ls being read into the raw weight register 710, then when the signals on the digit select leads DIG SEL B, DIG SEL C, DIG SEL D and DIG SEL E are again compared with the setting of the R3 register by block 375 these signals will have changed so that the control is then trans-~erred back to transfer point Jl and thus to bloc~ 370 instead of block 376. Under these assumed conditions wherein the signals on the B, C, D and E digit select conductors change during the ~ , reading in of a digit, it is assurned that the digit transferred ` to the raw weight register will be in error. Consequently, the transfer operations are started over again and proceed as described above. ~amely, the control will be first transferred to block 370 where the registers R0, Pl and R3 are set as ; .-.
r,~
l 25 described above. Then the control is advanced to block 371 and .-the setting of the R3 register translated to a one-out-of-fG~r ; code and again compared with the B, C, D and E select conductors.
This cycle is then repeated until the signals on these conductors are the same as the translated setting of the R3 register at which ~ime the digit on the weight data conductors 1, 2, 4 and 8 is again transferred to the raw weight register.
Assume that the signals on these digit select conductors do not change so that when they are again tested by the bloc~ 375 -" - , ' - .
.: .. .. :
lO~i~Z93 they will again correspond to the translated setting of the R3 register. Consequently, the control is advanced to block 376 where the setting o~ these three registers Pl, R3 ~ld ~o are all incremented by one. The control then advances to block 377 where the number stored in the R0 register is tested. Under the assumed conditions this number is now twelve (eleven plus one). Since this num~er is n~t zero, the control is trans~erred to the J2 transfer point and thus to block 371 where the above cycles of operation are repeated until the second of the decimal digits of the raw weight are transferred from the analog-to-digital converte~
to the raw weight register. The control is then again trans-ferred to block 376. Assuming that the si~nals on the B, C, D
.
and E digit select conductors have not been changed during the recording of the value of the second digit in accordance with block 376, ',he registers Pl, R3 and R0 are again incremented so that the next or number three digit will be transmitted ~rom the ::;
interface equipment of Fig. 3A to the raw weight registe_ 710.
. After the fifth digit has been thus selected and trans-ferred to the raw weight register 710, the R0 register in the CPU
unit will have recorded in it fifteen. This is incremented by s the sub-routine of block 376. As a result, the setting of this R0 register will now be zero. Since this is a four digit binary register when the register is increlnented with fifteen stored in - it, it is restored to zero. With the result that the control is now transferred from reading the weight to the blcck 89 of Fig. 2E.
From block 88 the control sequence advances through blocks~96 and 97 and at times through block 97A which blocks are employed to advance the tare timer in a well-known manner.
Briefly, the block 96 causes the count stored in the tare timer space 72B to be read out. Then bloc~ 97 determines if the ; count read out is zero. If it is zero the control sequence advances to block 89. If the count read out is not zero then the - ~6 -1(~ 93 control sequence adv~lces to block 97A where one is subtracted from the count read out and the new count restored in the tare timer storage spaces 728.
Next, in ~lock 90, the computer determines whether or not there has been motion or a change in weight on the scale platform. The arrangement, in accordance with the exemplary embodiment of this invention, is arran~ed so that if the weight ;~ changes or is less than a predetermined amount, that is within a prdetermined band, it is assumed that there is no motion of the platform scale. If, on the other hand, a weight c~ange exceeds the predetermined band, then it is assumed that there is motion of a scale platform. In accordance with the present invention, the bandwid-th may be predetermined to any desired value, which ~ value is stored in the pre-assigned storage spaces in one of the - 15 ROM's. -Under the assumed conditions, zeros will be stored in ;.~ the motion target weight register 735. Assume now that the band is .003 pound, plus or minus, and that a weight of .004 pound is ~; read into the raw weight register 710 from the analog-to-digital :
i~ 20 converter 14 durlng this cycle of the control equipment 15. Then ~ .
"rl in accordance with block 90, the zero weight from the motion target weight register 735 is subtracted from the weight in the .
raw weight register 710 and then the band .003 subtracted from ~; the difference which leaves +.001. Since the final difference is ...
;i 25 positive, it indicates that motion is present. ~ext, the weight .. ..
. in the target weight register is subtracted from the weight in the ~ raw weight register and the band of .003 pound added to the dif-- ference, and since this sum is not negative, it does not indicate -motion. However, motion was indicated by the first calculation.
30 Thereafter, in response to the motion indication from block 90, block 91 causes the program to transfer to block 98 via the Fl . . .
transfer. 810ck 98 first clears the no motion or hit counter 726 (i.e. causes all zeros to be stored in this counter space) and .
' ' ' ' ~ ' ' ' '. . ~ ! ` '. ~ . ' lO~iZ293 sets the motion flag ~lOTNF. That i.s, it causes a one to be stored in the s~atus register 718. Then block 99 causes the weight in the motlon target weight register 735 to be changed to the .004 pound recorded in the raw weight register. The S weight of .004 pound remains recorded in the raw weight register 710 at this time. Next, an initial weight of 8 pounds representiny the weight of the scale platter on the load cell is subtracted.
- The program then proceeds through '310cks lO0 where zero expand switch is tested and found not to be operated. At block 103 the zero range expand switch is tested and found not to be operated, so the program then ju~ps to block 105 via trans-fer F6 where the weight recorded in the raw weight register 710 is corre~ted by the auto zero weight stored in the zero correc-tion register 11, which is zero at this time under the assumed condition. The program then proceeds to block 107 where the control equipment determines that the weight on the platter is not greater than 30 pounds. Consequently, the control then advances to block 109 where a zero is recorded in the over capacity status register space 725.
Next, the control equipment 15 is advanced to the ... .
blo~Jk 110 where the motion flag is tested. That is, the status register space 718 is read out and since a one is recorded in this space, the program then advances to block 111 where the one recorded in the set status register space 737 is tested.
-Since a one is assumed to be stored in this space, the program is then transferred to G7 so that the block 123 subtracts the tare weight in the register 720 from the weight in the raw weight ; register 710, causes round off operation to be performed and restores the thus corrected weight in the raw weight register and moves the four most significant digits from the raw weight register 710 to the weight out register 712.
, . .
.: .
, - , : : . :
106Z'~93 Next, the prograM adv~u~ces through block-~ 124 transfer G12, blocks 128 and 129, 130 and 131 and transfer C5 to block 66.
Since this cycle of operation of the control equipment 15 started from block 25, as described above, the block 66 now causes the program to be transferred back over transfer Al to block 25 and another cycle of the control equipment 15 is initiated.
At this time the motion flag MOTNF is set, i.e. the status register space 718 has a one stored in it as described above, so the control sequence advances to block 26 instead of being transferred to block 81 via transfer El.
In block 26, the status of the MOTNF status register -space 718 is again tested and since a "1" is recorded in this space, this flag is not clear; consequently, the program is transferred by transfer El to block 81.
At this time the TlF flag is not set. In other words, a zero was recorded in the status register space 717 on the last cycle of the control equipment 15~ Consequently the program now :, .
proceeds to block 82 where the condition of the Tl clock lead ~`
, 20 from the analog-to-digital converter is tested. At this time it is assumed that a "1" signal is on this lead wit~ the result that the program now transfers over the E4 transfer to block 84.
; Since the zero expand switch is not operated, this zero expand is not true wlth the result that the program i5 transferred over transfer A15 to block 39. The remainder of this cycle of the ` control equipment 15 then is as described above through bloc~s 40, 41 transfer B2 to blocks 48, 47, 49, 50, 52, 53 transfer Il .: .: . . .
to block 144, then block 146 and transfer B10 to block 55. From block 55, control is transferred to block 57 over transfer B12 and then through block 57 transfer Cl to block 62, transfer C5 :.,=
to block 66.
: , .. ~
~ ~;9 - , :
: ' - ' .
.. . ..
Since thi~ c~cle was initiated throuyh bloc~ 26, block 66 now returns the control to block 2~ over transfer A2 and the above cycle of operations then repeated. This cycle of operation is then continuously repeated so long as a "1" signal is applied to the Tl clock lead by the ana]og-to-digital con-verter.
~ ext, when the analog-to-digital converter rernoves the "1" signal from the Tl clock lead, the program during the next cycle of the control equipment 15 is subsequently transferred to blocks 81 and 82 in the m~nner described above, the Tl clock lead will not be true, in other words it will test "0" so the program is then advanced to block 83 w~ere the Tl flag is again set; that is, the "1'l is recorded in the TlF storage space 717 in the status registers. Thereafter, the above cycles of opera-tion of the control equipment will continue as described aboveinitially except that the block 66 of Fig. 2C will returr. the . .
control to bl~ck 26 over the A2 transfer since the cycle started from this block instead of block 25 as described initially.
By the use of the TlF flag and the testing of the Tl ; 20 clock control lead as described above, the output from the analog-to-digital converter is transferred to the control equip-ment only once during each of the 200 millisecond cycles of the analog-to-digital converter 14. This transfer occurs in the next succeeding cycle of the control equipment after the "1"
-signal is applied to the T1 clock contr~l lead. Thereafter the nl" signal has to be removed fro~ this lead and re-applied by the -analog-to-digital converter 14 before a subsequent weight will be trans~erred from the analog-to-digital converter to the control equipment 15.
Since the control equipment 15 operates in the above-described manner for the various cycles, when weight information is not transferred from the analog-to-digital converter, ~he operation of the control equipment 15 during such cycles will '- ' :"
10~i2;~93 r be repeated. Instead the operation during only those cycles during which weight information is transmitted from the analog-to-digital convertex to the control equipment lS will be des-cribed. However, it is to be understood that control equipment 15 advances through numerous of these cycles in the manner des-cribed above between each of these cycles during which weight information is read out from the analog-to-digital converter and stored in the raw weight register 710.
Assume now on the next weighing cycle, that is the - 10 next time a weight is received from the analog-to-digital con-`~ verter and stored in the raw weight register 710, the weight stored in this register will not have ch~nged but will be .004 pound. Collsequently when the calculations at block 90 have performed in the sequence as described above, the calculations will indicate that no motion is present. ~o motion would also . ., be present if the weight received from the analog-to-digital converter does not vary more than .003 pound from the .004 pound previously received from the register.
, ` Under these assumed conditions with tha calculations performed in accordance with block 90 indicating no motion, block 91 will then cause the control to be advanced to block 92 when the motion flag MOT~F is read out and checked. This time the motion flag will not be zero since a "1" was previously stored in the status register space 718 and has not been changed. As a - 25 result, control is advanced to block 93 where the no motion ` counter or hit counter 726 of Fig. 7 is incremented by one.
Under the assumed condition, "0" has been previously stored in - this counter so the counter will now indicate a count of "1".
Control is then advanced to block 94 where the count in this counter 726 is read out and since it is less than some predeter-m~ned value, the count will not be greater than this value with . .the result that the control is transferred via F2 to block 99 and ; the remaining portion of the cycle repeated as described above.
.."
. :: . , . - . .: .
- ,:
.
10~;2;~3 On the n~xt cycle duriny which weight indication is again received from the analog-to-digital converter in the manner described above, i~ no motion is still determined by block 90, then the hit counter 726 will again be incrementcd and have a count of 2. Thus each cycle during which no motion is present, this counter is incremented by "1". If, however, during any of these cycles the calculations of block 90 indLcate that motion is present, then block 91 will transfer the control to block 98 via transfer Fl at which time the hit counter 726 is cleared, i.e. zeros are stored in the counter spaces, 'and the motion flag 718 is again set to 1; in other words, a "1" is written over the "1" already in this storage register space.
After the predetermined number of no motion indications have been obtained from calculations of block 90 and the control advanced through blocks 91, 92, 93 to 94, it will be determlned that the counter is in excess of the required number of counts.
-~` Thus, to obtain a no motion indication, it is not only necessary that the scale remain within a fixed band indication - of weights, but also that it remain in this band for a predeter-mined interval of time. This interval of time can be predeter-~ mined within increments of .200 of a second, the cycle period o~
`~ an analog-to-digital converter. Assuming that five such incre-ments are required thus requiring that the weight indication remain within .003 pound for one second when the control is transferred to block 94 and a count of five stored in the counter 726, block 94 will advance control to block 95 where the motion flag MOT~F is cleared. In other words, a "0" is now .
~ recorded in status register space 718.
.,,-: .
~hereafter the control is transferred to blocX 99 via tr~nsfer F2 and then advanced through the blocks 99, 100, 103, transfer F6 to block 105, block 107, block 109 and to block ll0.
''' . ~
.~
- '' ':
- -10~ 3 In block 110, the motion flag is again tested andsince a "0" is now stored in the status regi~ter 718, the con-trol is trclnsferred to block 115 over the transfer Gl and thereafter the control is transferred as described hereinafter under the heading of "Automatic zero Correction". On the next .
: cycle of the control equipment 15, after the no motion flag is ; cleared as described, control is returned to the block 26. In - accordance with this block, motion flag is read out and tested and since it is clear, control is advanced to block 27 where it is determined whether the scale is arranged to operate in the :, `' demand mode or continuous mode. Under the assumed conditions, the scale is arranged to operate in the manual mode and not in ::-` the demand or continuous mode so that the control continues to :` a block 28. At the block 28, a check is made to see if a . ~
"motion detector inhibit" switch is closed to disable the motion ... detector portion of the apparatus 15. It is assumed that the : switch is not closed and the control continues to block 29.
,: ,. .
.; Block 29 determines that a reweigh is not necessary at this time .,. ~, .
~ so control is transferred to block 30. In accordance with block . . .
,. 20 30, the control equipment under the assumed conditions will : ^ ~
s. determine that print data is not stored so the control sequence :
~ advances to block 31. Block 31 determines that the no tare key :
iS not pressed so that control is advanced to block 34. If the weight is greater than 0.1 pound then the control is advanced to . 25 block 35 where the set status register space 737 is tested. This : space 737 is assumed to be true 50 that the control is then . ~
-` transferred back to block 25 via transfer Al. If the weight as : assumed is not greater than 0.1 pound then block 34 causes the control to be transferred back to block 25 via transfer Al. ~n ;' 30 either case the above-described cycle then repeats starting with -;- block 25 for each of the various cycles describe~ 90 long as the ~otion~flag is not set; that is so long as zero remains recorded ... .
in the status register 718.
. - 63 -~,. . .. .... . .
, ~ . : . .
10~;2293 If thc weight is greater than 0.1 pound, the set i5 not true, the weigh~ is not minus, and is not over the capacity of the scale, then the control sequence advances through blocks 34, 35, 36 and 37 to block 38. Block 38 causes an output print pulse which causes the weight to be printed. Then the sequence returns to block 25 via transfer Al. Thereafter, the above-described sequences are repeated.
AUTOMATIC ZERO CORRECTIO~
Assume now that either when the scale is first turned on or that after the previous object has been weighed and removed from the scale, the scale has not returned accurately to zero. Assume, for example, that the scale has returned to 00.0004. Also assume ~hat zeros are entered in the zero correc-~ 15 tion register 711 and after the various operations refe.rred to - above, have been completed, 00.004 pound is entered in the raw weight register 710. A "1" will be registered in the weight sign register 715 and "1" in the zerb correction sign register `. 714. - ~
. ~
' 20 The one in the sign registers indicate that the sign of the weight or zero correction is plus and zeros entered in :-~ . these registers represent a ~egative sign or weight indication.
: The manner in which the various signs are determined and entered ~: into the respective registers will be apparent from the following ~ 25 description.
`. Thus, on the first cycle of the control equipment 15 -. after the previous weight has been removed from the scale and !'' the scale returned to idle condition or the power turned on, : .
00.004 will be entered into the raw weight register 710 and a .. 30 "1" indicating a plus will be entered in the weight sign register ~- - space 715. ~ext during this same cycle of operation of the . control unit 15, the weight in the zero correction register 711 : . . .
- - is subtracted (block 105 Fig. 2F) from the weight in the raw :. ' .
.
' . ' :
lO~Z293 yllt registcr and the differenc~ is then re-entered in the raw weight r~gister 710. Under these a~sumed conditions, zero will be subtracted ~rom the 00.004 recorded in the raw weight regi~ter and the difference 00.004 rerecorded in the raw weight register 710.
~` Next the automatic zero correction limit of 00.005 pound is subtracted (block 115 Fig. 2G) from the 00.004 pound in the raw weight register and since the 00.004 pound is less, the weight indication of the scale is within the automatic zero correcting range so the control equipment will then follow addi-,., ~
tional steps required to automatically correct the oo.ooa pound.
~ext the 00.004 pound in the raw weight register is compared with the zero or 1/4 graduation range of 00.002 pound (block 117 Fig. 2G).
Both this comparison and the pr~vious comparison may be made in any desired manner such as, for example, by means of -.., ~ threshold circuits of any well known and suitable type. However, ~
:; -~i in accordance with the present invention, this comparison is made ,.. . .
by the central processor unit CPU 186 of the microcomputer or control unit 15.
- Briefly, a series of orders or instructions direct the , central processing unit 186 to predetermined locations in the ROM units where the limits of 00.005 and 00.002 are stored.
These instructions direct the central processing unit 186 to ;~J 25 obtain these limits and then subtract them from the weight in the . . .~, raw weight register. As a result, the central processing unit 186 causes the limit 00.002 obtained from the predetermined ~ address in the ROM to be subtracted from the 00.004 stored in the -~ raw weight register 710. The result of this subtraction is 00.002 which is a positive number thus indicating that the -magnitude of the weight in the raw weight register is not equal . ~ .
to or less than .002 pound. As a result, 12 will be entered in , the zero count register 713 (block 11~, Fig. 2G).
10~;2~93 Nc~t, th~ reading o~ 12 in the zero count register 713 is read out by the control equipment (block 120) and slnce this reading is less than 16, the zero count register 7l3 does not return to zero, the count in this register is incremented by one S so that a 13 is now stored in the zero count register 713 ~blocks 119 and 114, Fig. 2G).
Next, since the weight stored in the raw weight regis-ter is not 00.000 (block 132, Fig. 2G) the weight recorded in the zero correction register 711 is compared with the 0.6 pound lQ limit for the operation of the zero correction (block lZl, Fig.
2G). In performing this comparison, as above, any suitable type of comparing or threshold circuits may be employed, however, in the specific arrangement described herein, the central processing unit CPU 186 will obtain, under control of orders or instructions stored in the ROM's 188-192, the .6 of a pound from a predetermined location in the read only memory and then sub-tract the weight in the zero correction register 711 from this va7ue. If the value in the zero correction register 711 is less .: , than the 0.6 of a pound the zero corxecting operation will con-tinue. This limit of 0.6 pound and also the other limits of 00.005 and 00.002 pound may be changed or determined by the value stored in the read only storage devices ROM's at the predetermined locations emplayed for storing these ~alues.
- Since under the ~ssumed conditions the 00.000 stored `~ 25 in the zero correction register is less than 0.6 pound the weight stored in the zero correction register 711 is augmented - or changed by 00.001 pound (block 122, Fig. 2G) and the sign in the zero correction sign register 714 is changed to a plus.
~ext a round-off operation is performed by adding 00.005 to the weight now recorded in the raw weight register 710.
as a result, the weight of 00.009 is rerecorded in the raw weight register 710 ~bloc~ 123, Fig. 2Ç).
.
-, -10~2293 Next the our most significant disits recorded in the raw w~ight r~gister 710 which are all zeros is trans~erred to the output weight register 712 so that they will be available for controlling the output indication of 00.00.
During a subsequent portion of this first cycle, the 13 stored in the zero count register 713 is again read out and since this number is not 16, i.e. not 0, the l/4 graduation lamp is turned off i~ it was on or maintained off if it was already off. Thereafter, during the remaining portion of this first - 10 cycle of the control unit 15, other operations may be performed.
- However, the values stored in the various registers described a~ove will remain until the next operating cycle of this control unit 15.
- During the next cycle of operation of the control unit 15, the 00.004 weight will be registered again in a raw weight register 710 in the same manner as during the first cycle. Then ' the value in the zero correction register 711 which is now ...
-- 00.001 pound will be subtracted from the weight in the raw weight .~
` register 710 and the difference is rerecorded in the raw weight . ~. . .
register 710. Thus .003 pound is now stored or recorded in the -~
, raw weight register 710.
- ~ext the 00.003 pound stored in the raw weight register ; 710 is compared with the 00.005 pound operating limit of the automatic zero correcting operation which is obtained from the ~ -read only storage units of the system. Since the result of " .
subtracting the 00.003 pound from the OO.OOS pound is positive, ; the plus sign remains stored in the zero correction sign register ;~ and the system continues to perform additional operations required .. ;,~ . .
i for the a~tomatic zero correction in -accordance with the present `~ 30 invention.
; ,x . ~ , .
.: ~..
. " ~ .
~','. .
,~'. - .
.'~ ' .
Ne~t the 00.003 pound stored in the raw weight regis-ter 710 is compared with the zero or 1/4 graduation range in the manner described above. Thus the 00.002 pound, obtained from the read only memory at the predetermined location assigned to S this limit, is subtracted from the .003 pound in the raw weight register 710. The result of this subtraction is a positive nu~ber, namely 00.001 pound.
Since the weight in the raw weight register is not less than 00.002 pound the control unit causes 12 to be ~ain entered in the zero count register 713 and then this register ; read out as described above. Since the count is not 16, i.e.
not 0, the count in the zero count ~gister 713 is incremPnted by one so that 13 is now recorded in the zero count re~ister 713.
In addition, since the weight in ~he raw weight register 710 is - 15 not 00.000 the weight stored in the zero correction register 711 of 00.001 pound, is compared with the limits of 0.6 pound of the zero correction range by su~tracting the 00.001 from the 0.6 ~- pound. The result is positive so the weight in the zero correc-~- tion register 711 is augmented by 00.001 pound.
.. . . .
As a result 00.002 pound is now recorded in the zero - correction register 711. ~ext, a roundoff operation is per-. . .
~; formed by adding 00.005 pound to the 00.003 pound in the raw ` weight register 710 and the result 00.008 pound recorded iIl the raw weight register 710.
~ext the four most significant digits in the raw weight register, n~mely 0000, are transferred to the output weight register so they will be available for controlling the display of .'., 0000.
;~ Also during this second cycle, the 13 recorded in the :. .,t "
- 30 zero count register is again read out as before and since the ; - count is not 16, i.e. not 0, the 1/4 graduation lamp is maintained - off.
... .
--.
10f~2Z93 Durin~ thc remaini.ng port.i.on of this r~econd cycle of the control unit 15 the information recorded in the above registers employed in the automatic zero correction operation remains substantially the same as described.
S Near the beginning of the third cycle of the operation of the control unit 15, the raw weight 00.004 pound will again . be registered in the raw weight register 710. Next the 00.002 pound stored in the zero correction register 711 will be sub-tracted from the raw weight 00.004 and the difference 00.002 pound restored in the raw weight register 710.
~ ~ext the 00.002 pound weight in the raw weight register - 710 is compared with the zero correcting limit of 00.005 pound.
: The 00.002 pound in the raw weight register 710 is subtracted from the 00.005 pound and since the result of this subtraction 15 is 00.003 pound the plus sign remains stored in the zero correc-tion sign register 714 and the zero correcting operation continues.
~ext, the zero or 1/4 graduation range of 00.002 is . subtracted from the 00.002 pound in the raw weight register 710.
:~ The resulting difference of 0 indicates that the weight in the 20 raw weight register is equal to or less than the 00.002 pound recorded in the raw weight register 710. Consequently, the contents of the zero count register 713 is read out which is 13 ; as descri~ed above. Since this is less than 16 the zero count . , .
register is incremented by l which causes 14 to be stored in this . 25 register at this time (blocks 117, 120, 119 and 114 in Fig. 2G).
~r~ Since the weight recorded in the raw weight register 710 is not -~ 00.000, the weight of 00.002 stored in the zero correction .: .
register is compared with the 0.6 pound limit of the automatic ~, correction range. The 00.002 is subtracted ~rom the .6 pound `
30 and since the result is positive, 00.001 is added to the 00.002 pound stored in the zero correction register 711 and the sum ~, .
00.003 pound is now restored in the zero correction register 711.
, - 69 _ :';
: . - ` . . ~
N t the ro~ldoff operatlon is per~ormed by adding 00.005 to the 00.002 in the raw wei~ht register and the sum 00.007 now stored in the raw weight register 710. Next the four most significant digits of the weight recorded in the raw weight register is transferred to the output weight register 712 where it is avail-.~
able for later controlling the digital output indicator of the scale.
During this third cycle of operation the 14 now recorded in the zero COUIlt register will again be read out and . 10 since it is less than 16, the 1/4 graduation lam~ will remain ~ turned off. Thereafter during the remainder of the third cycle ` of operation of the control unit 15 after the scale has returned ... to zero or normal, the information recorded in the various . ~ .
, :,.
." regist~rs.described above remains unchanged.
15 During the fourth cycle of operation of the control .. ~ equipment 15 the raw weight of 00.004 is again stored in the ~ .
raw weight register 710 and the 00.003 now stored in the zero orrection register 711 is subtracted from this 00.004 and the : resulting difference 00.001 pound is now stored in the raw weight 20 register 710. ~his 00.001 pound is then compared with the 00.005 . - limit of the automatic zero correction and also with the 00.002 : limit. As a result of both of these comparisons, the.system works as described above since the 00.001 stored in the raw .. . .
. weight register is less than 00.005 limit and also less than .. 2~ 00.002 lim t.
... . .
. Since the 00.001 weight stored in the raw weight . register is less than the 00.002 limit, the n~mber stored in . ~ .
.. the zero count register 713 will be augmented by 1 so that 15 ; will now be stored in this register. Later, when this register --.i 30 is again read out, the 15 will be less than 16 so the 1/4 graduation lamp will be maintained turned off.
-`- 70 -lO~Z293 Similarly, the 00.003 now stored in the zero correc-tion regi~ter 711 is compared with 0.6 limit of the zero corrcction range and as a result 00.001 is added to the 00.003 in the zero correction register 711 and the resulting 00.004 now stored in this register. Next the roundoff operation is performed by adding 00.005 to the 00.001 in the raw weight register and the resulting 00.00~ sum now stored in the raw weight register 710. Thereater the four most significant digits 00.00 of the raw weight register 710 are moved to the weight output register 712 where they are available for controlling the output display of the scale.
As before, during the remainder of this fourth cycle .
`; of operation of the control unit 15 the information stored in ;- the various registers employed in the zero correcting arrange-ment remain unchanged.
During the fifth cycle of operation of the control equipment 15 the raw weight of 00.004 pound is again stored in the raw weight register 710 and the 00.004 now stored in the ~' zero correction register 711 subtracted from this 00.004.
~.::, .
;~ 20 Resulting difference 00.000 is now stored in the raw weight -..
.: register.
;~; This weight is then compared with the 00.005 limit of , . . .
the automatic zero correction range and also with the 00.002 :~.. -; limit.
~. . .
~ 25 As a result of both of these comparisons the system : -.
wor~s substantially as described above. Briefly as a result of the comparison of the 00.000 with the 00.002 limit, the 14 now ..:.
stored in the zero count register 713 is read out. Since this . .:.
~ count is less than 16, the count is incremente~ by one so that ., ..:
;S 30 thereafter 15 is stored in the zero count register 713. At ....... .
^`- this time, since the weight in the raw weight register 710 is . .-- 00.000 the weight stored in the zero correction register is not - augmented but remains 00~004n '.' .,:
: . - . .;:
lO~:;ZZ93 Ther~after, during the remaining portions of this fifth cycle of operation of the control unit 15, the system works substantially as described. When the 15 stored in the zero count register 713 is read Ollt it will cause the l/4 graduation lamp to remain off because the count is less than 16.
During the next or sixth cycle of operation of the control unit 15 the system works substantially as described above except that when the zero count reglster is incremented - it will have stored in it a count of 16. Since this register ; 10 stores four binary digits, the count of 16 will cause the register to return to zero. Later when this register is agzin read out during this cycle of operation the 16, or zeros, recorded in the register will cause the 1/4 graduation lamp to be turned on which indicates that the automatic zero correction has been made and that the scale is within 1/4 graduation of the least significant display digit. This time, as pointed out above, weight displayed on the scale will be 00.00.
`~ Thereafter during the succeeding cycles of operation of the control equipment neither the zero correction register 711 nor the zero count register 713 will be augmented; instead . A, the contents of these registers will be maintained substantially as described above until either a weight is placed on the scale ; or the zero drifts or wanders. If the zero indication should .. . .
drift or wander then it will be corrected in the manner des-. ,' ' 25 cribed a~ove.
Assume now that an object weighing one pound is placed : . .
on the scale platter or pan. As a result, the load ceil to-gether with its sensor and the analog-to-digital converter will cause a new raw weight including the zero error to be entered - 30 in the raw weight register 710.
:. ' .
.-. - .
;"
, .'` - .
: . .~' ' ' , . ' This new raw weight will be corrected by the weight of the pan or platter as described above and as a result a weight of 01.004 will be entered in the raw weight register.
At this time, under the conditions assumed above, 00.004 is still registered in the zero correction register so this 00.004 is subtracted from the 01.004 in the raw weight register 710 and the difference 01.000 is then stored in the raw weight register 710. ~eY~t the one pound weight, namely 01.000, stored in th~ raw weight register 710 is compared with the 00.005 pound limit of the automatic zero correcting range by subtracting the 00.005 from the 01.000 pound. The result of this subtraction is positive with the result that 13 is entered in the zero count register 713, which later causes the 1/4 ., i graduation lamp to be turned off. In addition, since the one pound is greater than the 00.005 there is no point in comparing the one pound with 00.002 limit so that the control unit 15 will . . . ~, immediately cause the roundoff operation by adding .005 to the t`,, weight recorded in the raw weight register ~nd thus cause 00.005 ,.:. , .
to be added to the 01.000 weight and cause the sum 01.005 to be ~!~: 20 stored in the raw weight register 710.
~ext the four most significant digits, that is the `` 01.00 will be transferred to the output weight register 712 where they will control the output weight indication of the scale and thus accurately indicate the one pound weight br object placed on the scale platter or pan. So long as the .~ . ,.
: .
~, 0l~OO weight remains on the scale the above cycles of operation ' of the control unit 15 will be repeated. 00.004 remains stored ~ ..
: .:
in the zero correction register. 13 is repeatedly stored in - the-zero count register with the result that the 1/4 graduation ~ 30 lamp remains turned off and 01.00 is displayed. The raw weight -- - of 01.004 obtained from the scale is corrected by the 00.004 .", ~ - in tha zero correction register so the correct weight 01.00 of -~ the object on the scale is correctly displayed.
, ~ .
. - - - , :
, .
-10ti2293 Assum~ now that after the object weighed above i9 r~moved from the scale, the scale now returns to -00.001 inst~ad of to 00.004 pound. This weight -00.001 pound is entered in the raw weight register 710 after the scale has come to rest and the initial 8 pounds subtracted from the digital output of the analog-to-digital converter as described herein and a 0, indi-cating the minus sign, stored in the weight sign register 715.
~ext, the plus 00.004 in the zero correction register ; 711 is algebraically subtracted from -00.001 in the raw weight register, the resulting di~ference is -00.005 which is stored in the raw weight register 710 and a minus sign or zero is stored in the weight sign register 715.
Next, the minus 00.005 recorded in the raw weight register 710 is compared with the 00.005 automatic zero correc-15 tion limits. At this time the magnitude or absolute value of theweight in the raw weight register is compared with the limits - - 00.005. Since it is equal to the lower limit, the automatic zero correcting sequence of operations will be performed.
- ~ext, the weight of -00.005 recorded in the raw weight '`:r 20 register 710 is compared with the 00.002 pound limit. Since this ;~s weight is greater in magnitude than the limit, a 12 is now recorded in the zero count register 713 and then this register read out. Since the count is less than 16, the count is incre-` mented by 1 so that 13 is now recorded in this register. As described above, the 13 in this register later causes the zero or 1/4 graduation lamp to be turned off or maintained off if it is already off. Since the weight in the raw weight register 710 is not zero, the weight recorded in the zero correction register 711 is subtracted from the 0.6 pound limit and since the weight is less than the limit, 00.001 is subtracted from the weight in - the zero correction register 711 so that 00.003 is now recorded ~- in the zero correction regiqter 711.
: ; , ''-lO~iZ293 Next, the roundoff operation iY performed by adding OO.OOS to the wei~ht -00.005 recorded in the raw weight register 710 and the sum 00.000 rerecorded in the raw weight register.
Next the four most signi~icant digits of this weight are txans-ferred to the output register where the output indication will -~ then be 5000 when the other operations required to display this n~mber have been performed during the remaining part of this ; first cycle of control unit lS after the scale has become stabilized when the previous weight was removed from the pan or ` 10 platter.
`~ During the next cycle of the control unit 15, the -00.001 pound again will be entered in the raw weight register 710 and a zero indicating minus sign of the raw weight wi'l be ~` entered in the weight sign register 715.
- lS ~ext, the weight of 00.003 positive now recorded in - the zero correction register is algebraically subtracted from ~ the weight -00.001 in the raw weight register 710 and the .~., resulting difference -00.004 is recorded in the raw weight register 710.
~ext, this weight in the raw weight register is com-pared with the OO.OOS pound which is the limit of the automatic zero correcting arransement and since the absolute value or this weight is less than the limit, the sequence of operations of the automatic zero correction are continued.
- 25 ~ext, the weight of -00.004 pound is compared with ` the limit 00.002 pound and since it is more than the limit, the 12 is again recorded in the zero count register 713. The 12 is , ............ .
then read out of the register and since it is less than 16, one is added to the 12, so 13 i9 now stored in the register. Later the 13 causes the zero or 1/4 graduation lamp to be turned off or maintained off if it is already off, as under the assumed -` conditions.
,'`" ., .
.
;' .
, . . .
lO~;Z293 The weight of 00.003 pound in the zero correction register is now compared with the .6 pound limit of the zero correcting arrangement and since it is less, 00.001 is sub-tracted from the 00.003 weight recorded in the zero correcting register and the difference 00.002 rerecorded in the zero correcting register.
Next, the roundoff operation is performed and 00.005 added to the weight -00.004 in the raw weight register and the sum -00.001 rerecorded in the raw weight register. Then the ; 10 four most significant digits 00.00 recorded in the PUtpUt weight register so that they are available for controlling the output ~ -weight indication. At this time the minus sign is not displayed.
During the next cycle of operation of the control unit ~ -`
. ~ .15 substantially the same operations are repeated except that ~ 15 when zero correcting register 711 co~tents 00.002 is subtracted "; from the raw weight register of -00.001, the resulting differ-ence of -00.003 is recorded in the raw weight register 710 instead of -00.004. In addition 00.001 weight is subtracted from tne 00.002 in the zero correction register so the weight .
of 00.001 will be recorded in the zero correction register 711 instead of 00.002 as in the previous cycle of operation of the ... .
contr~l unit 15.
During the next cycle of the control unit 15, the raw .. ~. .
weight of -00.001 pound again is entered in the raw weight ~ .
register 710. ~ext the weight of .001 pound in the zero correc-ting register is algebraically subtracted from the -00.001 pound in the raw weight register 710 with the result that -00.002 pound is restored in the raw weight register. The magnitude of this weight is first compared with the 00.005 limit of the - 30 automatic correcting range. Since its magnitude is less, the ~ -..
; various steps of the automatic correction range are repeated.
The magnitude of the weight of -00.002 pound in the raw weight ~egister 710 is then compared with the limit of 00.002 pound -- 76 -- `
.,:
...
.
, a since it i5 equal to this vaLue, the 13 now stored in the zero count r~gi~t~r 713 is r~ad out and since this count is less than 16 it is increased by one leaving a 14 now stored in this zero count register 713. This 14 is again later read out and employed to w~intain the 1/4 graduation lamp off. There-after weight of 00.001 in the zero correcting resister is com-pared with the .6 pound of the zero correc~ing range and since it is less, 00.001 pound is subtracted from the 00.001 pound in the zero correcting r&nge register and a difference 00.000 recorded in this same register. Thereafter the roundoff and transfer operations are performed as described above.
During the next cycle of operation of the control unit 15, subst~ltially the same operations as described above ,` are performed except that the zero correcting register 711 now ~ lS has all zeros recorded in it so that the -00.001 remains ....
~ recorded in the raw weight register. During this cycle of ;~ operation, the zero count register 713 is read ou~ and since .-, ~ the 14 recorded in this register is less than 16, one is added . ~, .
to the contents of the register and the 15 again will be recorded in this register 713. This lS is later read out and employed to maintain the 1/4 graduation lamp turned off. In addition, .
00.001 is subtracted from the zero correcting register leaving -00.001 stored in this register and a minus or zero stored in the zero sign correcting register.
` 25 During the next cycle of operation of the control unit 15, the O0.001 minus stored in the zero correcting register will be algebraically subtracted from the -00.001 pound recorded in the raw weight register 710 leaving all zeros recorded in the ~ raw weight register. Consequently, no subtraction is made from the -00.001 pound recorded in the zero correction register.
; ~owever, one is added to the zero count register. One is then ! added to the zero count register during each succeeding cycle ~f the control unit 15 until the predatermined number, which .
- :
.. ~
i 16, i.e. all zeros, in an exemplary embodiment, is stored in this regist~r. When the 16, or all zeros is later read out of the zero count register, the control unit lS will turn on the 1/4 graduation lamp. Thereafter the con~ents of the various registers remains substantially as described until another article is weighed on the scale. During thiis time the display will correctly indicate 00.00. In addition, when the next object is weighed the zero wander of -00.001 will be corrected so the correct weight of the object will be displayed.
Assume now that for some reason after a given weighing operation t~e output from the scale, load cell, sensor ~nd analog-to-digital converter returns to 00.100 pound after the weight of 8 pounds hais been subtracted as described above.
Consequently, the weight of 00.100 pound will be entered in -:
the raw weight register 710. In addition, a ~ representing a plus weight on the scale will be entered in the weight sign ~, ` register 715.
: ~
Next, the weight in the zero correction register 711, ;~ assuming this weight to be 00.003 pound, will be subtracted from the weight in the raw weight register 710 and the difference 00.097 pound restored in the raw weight register. ~ext, the weight of 00.097 pound now recorded in the raw weight register 710 is compared with the automatic zero correction limit of ` 00.005 pound. Since the weight in the raw weight register 710 25 is greater than 00.005 pound, the automatic zero correcting ,; :.
~ operations are not performed and 13 is recorded in the zero :.
i count register, which later causes the 1/4 graduation lamp to be turned off, or maintained off if it had previously been :-: i, .
turned off.
;~ 30 ~ext, the weight in the raw weight register 710 is rounded off by adding OO.OOS pound to the 00.097 pound recorded ~: .
in this register. The s~m of 00.102 pound is then rerecorded in the raw weight register and the four most significant digits - 7~ -.
.- ': , . : - - ~ --lO~;ZZ93 0 10 are ~ntered in the output register 712 where it ls avail-able for actuat ng the output indication of the scale.
The information recorded in the various registers then remains substantially as described for the remainder of this cycle of operation of the control unit 15.
Duxing each o the succeeding cycles of the control unit 15, the operations of the equipment relative to the raw weight register 710, the weight sign register 715, the zero correction register 711, the zero correction sign register 714 and the zero count register 7~3 and the weight output register 712 are substantially as described above.
However, the attendant or operator of the scale upon . , .
noting the 00.10 weight indicated on the output of the scale will be informed that the scale is not in-condition ~or another weighing operation. At this time the operator may operate the zero expand range switch 176 to cause the scale to be corrected so that it will be in condition to accurately weigh the next - object placed upon the pan or platter.
`~ on the next cycle of operation of the control unit 15, ~ 20 after the zero capture range expand switch 176 or bu~ton has ; been operated, the weight of 00.100 pound will be entered in the raw weight register 710. In addition, a "1" repr~senting - a plus sign is entered in the weight sign register 715. Also .; .
-- at this time 00.003 is stored in the zero correction register 711 and a "1" indicating a plus sign is stored in the zero . , .
- correction sign register 714.
With the zero capture range expand switch operated and r, the 00.100 pound entered in the raw weight register 710, the central processing unit 186 will cause the weight entered in the raw weight register to be compared with 0.6 pound which is the .
assumed limit of the zero correction range.
~ .
: . . ' ,................................ .
., Since under the assumed conditions the weight of 00.100 pound is l~ss than 0.6 pound, the central processing unit 186 will cause a weight of 00.100 pound in the raw weight register 710 to be transferred to the zero correction register 711. As a result, 00.100 will now be stored in the zero correc-tion register 711 and then this weight is subtracted from the weight of t~e raw weight register 710 with the result that 00.000 will now be stored in the raw weight register 710.
~ext, the weight 00.000 in the raw weight register 710 is compared with the automatic zero correcting range of .005 pound and since it is less than this limit, the zero correcting operation will be performed in the manner described above and the ~ 00.00 indication transferred to the output weight register.
- Also, the 1/4 graduation lamp will be turned on as described ~ 15 above.
: .
- So long as the expand button or switch 176 is operated, the above cycles of operation are repeated. When this button or switch is released, the weight stored in the zero correcting register 711 will correct the weight in the raw weight register -~
710 so that the corrected weight will be within the 00.005 . . i .: -~'~ pound correcting limits. Consequently, the above-described zero correcting operations ar~ performed and the correct weight . . .
of an object, within the capacity of the scale, is correctly '4 displayed.
Again, so long as the various factors affecting the ~c zero indication of the scale do not vary more than 00.005 pound, . the control arrangement 15 operates as described above and maintains the scale zero indication accurately at zero so that `~ the scale will accurately weigh various objects or commodities placed on its platter or pan. If the zero wander effects exceed . the 00.005 pound but do not exceed the 0.6 pound, then these ;
effects can be corrected by the operator or attendant operating , ' . ' ' :' : , , . - . ,. ::. -". . . : . .
-lO~;ZZ93 t zcro captur~ ra~ge expand switch 176 and the scale is corrected as described above.
The zero capture range expand switch 176 together with the ~ero correcting operation of the scale may be employed as a sel-correcting tare arrangement so long as the weight of the container is less than .6 pound and so long as variations from container to container, plus zero wander effects of the scale ~ described a~ove, do not exceed OO.OOS pound.
- Thus, assume that an empty container weighing 00.15 pound is placed on the scale. The scale will indi~ate this weight of 00~15 pound accurately providing, of course, the automatic zero correcting arrangement was operating satisfac-torily and the 1/4 graduation lamp turned on prior to placing the container on the platter or pan of the scale. ~he operator or attendant will now operate the zero capture range expand switch 176 which will correct for the weight of the empty :, .
container and cause the scale to indicate a zero output. The attendant may t~en ~ill the container with a commodity and the ~cale will indicate accurately the correct weight of-the commodity only and compute its cost if it is so desired. Upon ` removing the filled contai~er from the scale, the scale will ; now indicate -00.15 pound, assuming no zero wander effects. If - the attendant or operator now places another similar container on the scale of the same weight as the previous container, then , 25 the scale indication will return to zero and the automatic zero .
correcting operations performed providing, of course, that the variation in weight of the containers plus the variation in any zero wander effects are less than .005 pound. If, however, the variations are greater than 00.005 pound, the 1/4 graduation lamp will not light and the indication on the scale will not return to zero. The attendant can then re-operate the zero expand range switch and cause the scale to automatically correct thereafter for automatic zero variations in the manner described herein.
', . . .
.. . . . ' ' -lO~iZZ93 If, of cours~, the weight o the container or varia-tions in the weight of the container and the zero wander exceed the predetermined operating limits described above, then the operator or attendant can use the usual tare buttons or keys and operate ~he scale in accordance with prior art arrangements without employing the automatic zero correcting arrangement in accordance with the present invention.
As indicated above, the various limits of 00.002, 00.005 and 00.600 have been selected to illustrate the invention and may be changed as desired for various applications or uses of the scale.
ZERO EXPAND
It is desirable to frequently check the operation o the automatic zero and the amount of correction that is being introduced by the automatic zero in the manner described above.
To enable the amount of automatic zero correction being applied to be readily determined, a zero expand switch 178 (Fig. 3) is provided. when this switch is operated, it prevents the opera-tion of the automatic zero correction. In addition, on thenext cycle of the control equipment 15, if this cycle is not one in which weight is read out of the analog-to-digital converter i, .
and entered into the raw weight register 710, then when the program advances to block 84, it will test thi~ zero expand switch and, finding it operated or true, control is then advanced to block 85 which sets the interlock flag I~TF. In other wo~ds, it causes a "1" to be stored in the status register space 736.
Later in this same cycle of operation of the control equipment -~ lS, the control is advanced to bloc~ 57 as described above with the result that the interlock flag is tested. That is, the "1"
stored in the register space 736 is read out and since it is a - Nl", the control is then advanced to block 58 which clears the '''' :
- .. . ~ :
.
iA._orlock 1a~ INT~ by ent~rln~ a Y.ore in ~:ha r~st~r 6p~ce 736 and, ln a~d1tlo~ 8 or enter~ a "1" ln ~e inltlalizQ xoglster ~pace 7 27 A~ ' Ther~a~er, ~ha con~rol advance~ to ~ c 59 at whlch a ~ ent~re~ th~ storage spaco 737~ ~hc contL~ol thon ~dvance~ to bloclc 66 over tho tran~er ~5~ ~q~th t~e~e chans~es the above cyclefl of operat~on o~ th~ cont~ol equipment lS aro then r~peat~d until a cyclo in whlch ~che ~aw we~ht 1~ read out o~ th~ analog~ dlgital converter ana stored ln t~e rBW weight 10 rBgl~ter 710 . ~urin~ thi8 cycle the control 1~ advanced to `~ b10ck 100 1n tho manner described herein an~ ~lnce the zero expand ~witch i~ now pres~ed or turned on, control i8 then advanced So block 101 where the ~our lea~t ~ignl~icant dlgl~ in the raw welght regl~ter 710 are read out an~ mov~d to the w~iqht out regi~ter 712 wher~ they later are caused to ac~uate the readout or display o~ the sy~tem which will then indlcate ~he .~ four lea3t significan~ digits of the raw weight rea~ into the raw weight register and thu9 indicate the amount o~ corr~ction being spplied to the ~yste~ by the automatic zero corrsction asrange~ent.
T 20 When ~he zero expand swltch 178 i8 restored to normal, it 18 then nec~sary to lnitialize the system and to check the price per poun~, the tare and flnally to operate the lock ~wltch 179 ind~cating that all the necessary in~ormatlon i~ available ~or the next weigh~ng operation.
` 25 ;~ T~MED~ TAXE ENTP.Y
~ach tlmo the program i~ tran~ferred to block 144 tho control apparatu~ tests the Uno tare~ switch 171 (Flg. 3) to termine whether or not thi~ ~wltch i8 opor~ted. If tho 30 ~w~tch 171 1- operate4, ~hen th~ program ~-tJ tho lntarlc,ck ~lag - ~ and trans~er~ to bloc~c 145 which cau~o~ the taro rogi~t~r 720 to ~e cl~aroa or r~torod ~o ~ero an~ then t~ pro~r~m r 13 -~
..
, . . . - . . - - . ~ . . . .
~ O~ZZ93 a~~anccs to bloc~ 55 via transfer ~310 and the cycle of operation is completed as described above.
If t}-l~ "no tare" switch 171 is not pushed or operated as previously assumed, then the control is advanced to block 146 where all of the other tare keys are tested to determine if any of them are operated. ~f none are operated the sequence trans-fers to block 55 and the cycle completed as described above.
If some one of these keys is operated, for example the tare key 0.1 pound, then the control is advanced to block 1~7 instead of to block 55 via transfer B10 as described above. Block 147 determines whether or not 2.6 seeonds has elapsed since another tare button was pushed. It is assumed that this is the first tare button to be pushed, then 2.6 seconds will have elapsed since a previous tare button is pushed. Consequently, the tare timer spaces 728 will have all zeros stored in them so the program is advanced to bloc~ 148 where tare register 720 is cleared or returned to zero. Thereaftex the control is advanced to block 149 where the 0.1 pound is entered in the tare register 720 and ~-the interlock flag is set by entering one in storage space 736.
2~ Thereafter the program is advanced to block 55 via transfer B10 ` and the cycle of operation continued in the manner described above.
In addition to entering the tare weight in the tare register space 720, the tare timer is set into operation as stated in block 149. This is accomplished by entering 13 in this tare timer space 728. Then on each of the cycles during : ,, which a weight is transferred from the analog-to-digital con-verter to the raw weight register 710, one is subtracted from the number stored in the tare timer 728 as indicated in blocks 96, 97 and 97A as described above. After 13 of such cycles, 2.6 seconds have elapsed.
.. .
... .
, ~ ~ - .: ... -1~;2Z93 If another one o~ the tar~ ~eys is operated in this 2.6 second period, then the control i.s transferred from block 147 directly to block 149 where the value of the second operated tare key is entered in the tare storage ~paces 720. Also, the tare timer is reset or recycled by ayain entering 13 in the tare timer storage spaces 728. Thus for example if the tare key .05 is actuated, then this figure will be entered in the tare register 720 with the result that the register now has entered in it a tare weight of .15 pound. Thereafter the interlock and : 10 initializing conditions must be checked and the lock switch 179 must be operated in order to condition.the system for weighing operations involving subtracting tare weights as described ~`~ herein.
~ .-~^ If, however, the second key is operated 2.6 seconds after the previous key then the next time the control sequence advances to block 147 in the manner described above, the seguence . transfers to blocX 1~8 which clears the tare storage areas and then to block 149 so that the weight represented by only the last tare key operated is stored in the tare storage areas 720.
. 20 OUTPUT CO~TROL
When a package has been placed on the scale platter and weighed, and the weight corrected after a no motion condition has been established as described herein, control wlll be trans-ferred to block 26 via transfer C5 to block 66 and then to . . .
block 26. The 7'MOT~F" flag is cleared at this time so block 26 will transfer control to block 27. Block 27 interrogates the printer mode switch 172 (Fig. 3) and branches around block 23 .. . . .
'~ to block 29 if the system is in either the demand.or the continuous mode. Since we are assuming single mode, block 27 transfers control to block 28.
.,: .
;
lO~iZ293 Block 26 intcrrogate~ the status storage space 729 ~tatu~s reglster 0001. This signal i5 true if, during the input operations a motion detector inhibit switch in the printer i5 on. This switch is provided so that systems which are in S vibratory installations (heavy machinery causing floor vibra-tions or overhead fans, for example) can have the switch turned : on to guarantee only one label per weight application. If the switch is "on", control is transferred to block 29.
Block 29 examines the status of a reweigh storage lO space 740 of status register 0001 A one or true of this reweigh signal is an indication that the previous printer opera-tion was aborted due to a set-up malfunction. If there was a malfunction, block 29 transfers control to block 31 via A7 (this allows another print to be initia~ed for the same package to ~` 15 allow the printer to rectify the error). If there is no reweigh, block 29 trans~ers control to bloc~ 30. Block 30 interrogates the status of storage space 730 of status register 0001. A true or one in this location indicates that a print has occurred and the printed label has not been removed. If this condition exists, block 30 transfers control to block 25 via connector Al.
Thus no print occurs during this motion - no motion sequence.
(Motion Detector Inhibit) If a zero is stored in the print storage space in -the status register 0001, block 30 transfers data to block 31 . .
-~ 25 and, providing other conditions are fulfilled, a label is printed.
Blocks 28 through 30 comprise a system whereby only one label per weight application is allowed, unless the printer malfunctions, in which case a subsequent motion - no motion -~ cycle will be recognized-.
If the motion detector inhibit switch is not on, block 28 transfers control to block 31 directly; thus allowing a new - printer cycle for each motion - no motion detected.
Blocks 31 through 33 allow the printing of a label with the applied weight being below a preselected minimum value ~in this example, .10 pound). l~e need of the minimum value inhibit is that if none were present, the system would be S printing labels with zero weight on the platter, an undesirable condition. The ability to print labels with applied weights below the predetermined value is necessary for tests.
; If the unit price is set to zero and the no tare key is depressed, an output print signal is generated when a motion - no motion cycle occurs, regardless of the applied weight.
Block 31 interrogates the "no tare" switch 171 ~or a no tare signal. If this condition exists, control is transferred to block 32 which interrogates SW-.OP through SW-.PO (Fig. 7).
If the price is zero as indicated by SW-.OP through SW-.PO, all being zero, control is transferred to block 33 which causes a "1" to be stored in the status storage space 731 of status register 0011 and the printer will generate a label. Block 33 then transfers control to block 25 via Al.
If either block 31 or block 32 are not true, control is transferred to block 34. Bloc~ 34 interrogates the output weight register 712 (Fig. 7). If the weight is less than 0.1 pound, control is returned to block 25 via Al. If tha net weight is greater than 0.1 pound, control is trans~erred to ' bloc~ 35.
Block 35 interrogates set bit space 737 in status register 0011. If set is true (an Lndication that interlocks are not satisfied) control is returned to block 25 via Al.
If set is false, control is transferred to block 36.
.,~..
`~ In the weight processing description, the method o~
processing the raw weight information into net weight output information was described. At that time, it was shown that the value in the output weight register is the magnitude only of the weight. Thus the weight could be greater than 0.1 pound but . ~ .
.
.. . .
- . . : , .
1(~62293 negative, in which ca~e no print should occur. Block 36 interrogates the weight sign storage space 715 in status register 0011 of Fig. 7. If the signal is false (indicating a minus weight) control is returned to block 25. If the signal is true, the system control transfers to block 37.
Block 37 interrogates the level of the signal in storage space 725 in status register 001I (Fig. 7). If this signal is true (an indication that the applied weight exceeds the capacity of the weight converter) system control returns to block 25 via Al. If the scale weighing capacity is not exceeded, control transfers to block 38.
Block 38 generates an output pulse similar to block 33.
Control is then transferred to block 25 via transfer A1.
As previously described, block 134 is actlvated by transfer from ~lock 130 via transfer Hl. Block 134 interrogates - the blank price signal from the printer into the input of ROM
191 (see Fig. 4A). If this signal is off, block 134 bypasses - block 135 and transfers control to block 136 via transfer H3.
If the sigr.al is on, block 134 advances control to block 135.
Bloc3; 135 causes all bits of all words in the output price -~
register 739 (Fig. 7) to be changed to "l's" (binary 15 causes ; blaD}~s in the printer). Control is then transferred to block 136.
Block 136 interrogates the blank weight signal from the printer into the input of ROM 191 (see Fig. 4A). When this signal is off, control is transferred to bloc~c 139. ~an on, control is transferred to block 137. When the system is operated in the price by count mode, the normal function is to blank the weight field on the printed ticket. mus, a blank weight off signal must cause the weight to be blanked and vice -versa. me purpose of blocks 137 and 139 is to invert the sense of the blank weight switch when operating in price by cc~unt.
, . .
~, - . . ~ . ~ ;
lOf~ZZ93 Thus, if blocX 136 enables block 137 and the sy~tem is in price by count, block 138 is bypassed. If block 139 is activated instead, block 138 is not bypassed. However, since this discussion is limited to by weight operation, a true in block 136 ultimately trans~ers control to block 138. Block 138 causes ail data in the output weight register 712 to be forced to a 15 (blank) level. Control is then transferred to block 140. A false in block 136 bypasses block 138 and transfers control to bloc~ 140 through block 139 via connector H6.
Blocks 140 and 141 perform the same blanking function on the output value register 741 (Fig. 7) based on the level of the blank value signal into the ROM 191 (Fig. 4A) and then transfers control to block 69 via transfer Dl.
Note that the blanking switches are located in the printer but this is for convenience only; any location is acceptable.
Referring to Fig. 2D, the description of the service switch function follo-~s. With a system as complex as this, it is desirab~e to provide some trouble isolation capabilities to improve the serviceability.
APPARATUS FOR ISOLATI~ ERRORS I~ PRINTED RECORDS
Since the most probable failure will be incorrect price, weight or value data on the printed label, a series of serviceman controlled inputs are provided. The most basic ones allow the se_viceman to select ~hich of these three fields (price, weight or total value) he wishes to have displayed in the weight display area. In this manner, he can determine if the fault is in the scale, as indicated by faulty output inor- -mation, or if the fault is in the printer, as indicated by correct output information but a faulty printed ticket.
lO~;Z;~93 In Fi~. 5, it has been shown how the weight information is seLected from thc~ seri~s of in~ormation being transmitted.
By supplying service switches whereby price or value information is piaced in the weight output register 712, the digital display can be made to indicate price, weight or value as computed by the system and thus simplify fault isolation.
Referring to ~ig. 2D, ~loc~c 69 interrogates status register space 733 in status register 0001. During the input cycle, the condition of the price input to input 4 of data selector 199 (Fig. 4B) has been stored iIl this location. If block 69 determines that the display price signal is true, i.e. a one is stored in 733, control transfers to ~lock 70 and the signal contents of the output price register 739 are trans-ferred to the output weight register 712 (Fig. 7). Thus the digital display will indicate price and if there is a discrepancy between the setting of the prlce entry equipment and the dis- - -played value, the serviceman can ol~serve this and proceed to determir e Ihe cause of tht~ fault, having localized it. Block 70 transfers control to block 73.
If bloc}~ 69 determines that the display price signal is false, i.e. a zero is stored in 733, control is transferred to block 71. Block 71 interrogates status register space 734 of status register 0001 which has been set up to coincide with the value input to input 4 of data selector 200 in Fig. 4B.
If the display value is true, block 71 transfers control to block 72. Block 72 transfers the contents of the output value ` register 741 into the output weight register 712 (Fig. 7j and then transfers control to block 73. Thus the digital display i~ indicates the computed value for fault isolation testing.
If block 71 senses that the display value signal is false, block 72 is bypassed and control is transferred to block - - 73 via transfer D3.
. . .
~ ~ so --~ .
~O~;ZZ93 Block 73 transfers a signal to wire. 273 of Figs. 4A, 4B and 4C based on the signals in word 0 of status registers 0000 to either illuminate or extinguish the zero limit indicator (Fig. 4C). Control is then transferred to block 74. Block 74 S updates the signals in the 4 x 16 bit ~AM 228 of Fig. 413 (price, weight, value data and printer control) and also updates the signals out of quad bistable latches 248 of Fig. 4C. Control then transfers to block 75.
Block 75 chec3cs the multiplied result register 742 of ~ig. 7 and transfers control to block 76 if the answer obtained by multiplying the output price by the output weight is equal to or greater than $100.00. Block 76 trues space 732 in status register 0011. This signal is used elsewhere to indicate an out of range condition by causing the output value register 741 to be set to zero by means not shown. Other uses of this overvalue signal could be to illuminate a warning light and to prevent a print pulse. Block 76 transfers control to block 77.
If the computed value is less than $100.00, block 75 transfers control directly to block 77 via transfer D7, by-passing block 76.
Block 77 determines if the capacity of the analog-to-digital weight converter 14 has been exceeded. If so, control is transferred to block 78 which stores a one in status register space 725 in status register 0011. This signal will be trans-ferred to th quad bistable latch 248 (Fig. 4C) to set output D
to illuminate the out of range indicator during the next per-formance of block 74.
Block 78 then transfers control to block 66 via transfer C5. If the weight converter capacity is not exceeded, block 77 transfers control to block 66 via connector C5. The system continues with the performance of block 66 and subsequent blocks as described previouslyO
.
.. . . . .
10f~93 Tuxning now to Fig. 5, the digital weight display 22 is shown in detail. The weight di~splay 22 includes four seven-segment indicators 301-304. The indicators are arranged in a row on a front panel on the apparatus 10 with the indicator 301 displaying the hundredths or 0.0W pound weight digit, the indicator 302 displaying the tenths or 0.W0 pound weight diyit, the indicator 303 displaying the units or W.00 pound weight digit and the indicator 304 displaying the tens or w0.00 pounds weight digit. The indicators 301-304 may be of any conventlonal seven-segment design, such as of a type using incandesce~t l amps orof a type using light emitting diodes. Of course, other types of digital indicators may also be used~ A multiplexing tech-nique is used for sequentially supplying data to the four indicators 301-304. Only one of the four indicators is actually eneryized at any given instance. However, the indicators 301-304 are energized at a sufficiently fast rate as to appear to be continuously energized.
The printer data on the buses 232 from the RAM 228 is supplied through a BC~-to-seven-segment decoder 305 and seven buffer amplifiers 306 in parallel to each of the four indicators `
301-304. The printer address buses 231 are used for supplying ~ ~ -address data for scanning the four weight display indicators 301-304. The address buses 231 are connected to a 2-line to 4-line decoder 307. Two of the address buses 231 determine which 25 of the four indicators 301-304 is to be energized as weight data is received on the buses 232, while a third bus provides a strobe signal and a fourth of the buses provides an inhibit signal. The decoder 307 has four outputs which pass through four buffer amplifiers 308 to enable inputs on the four weight 30 indicators 301-304. The output from the decoder 307 for energizing the units weight display 303 also applies a signal for energizing a decimal point on the units weight display 303.
,.
, ~ ' ' , , .
- . . .
.- - ~ . . .
,. ., ` ~ , : , . ' ; - .
~ . . .
`` lO~Z~93 T s output i5 apEd.i~d through an lnverter 309 to a buffer ampli-fier comprising a ~ransistor 310 and a hias resistor 311. The output from the tr~nsistor 310 is connected through a xesistor 312 to the decimal point input on the indicator 303. Thus, whenever the units indicator 303 is enabled, a decimal point is illuminated.
The apparatus 10 i5 designed for indicating weights ranging from -2 pounds up to -~30 pounds. In the event that the measured weight goes below zero, a mlnus sisn is formed by illuminating the center element in the tens indicator 304. This is accomplisned by connecting the output from the decoder 307 which en~bles the indicator 304 to a ~AND gate 313. The minus sign slgnal on the line 254 from the logic unit 15 is applied to a second input on the gate 313. The output of the ~ANV gate is connected through a ~OR gate 314 and an inverter 315 to the input on the buffer amplifiers 306 which energizes the segm~t in the indicator 304 used to form the minus sign. The output from the BCD-to-seven-segment decoder 305 which normally energizes this segment of the weight indicators 301-304 is also connected through the NOR gate 314 to the buffer amplifiers 306. Thus, the middle segment in the other indicators 301-303 and in the indicator 304 - when a positive weight is read is energized by the output of the decoder 305 passing through the gate 314 and the inverter 315 to the buffer amplifiers 306.
Although it is not normally exposed to an operator of the apparat~s 10, a service switch 31~ is shown with the weight display 22. The service switch 316 is a normally open switch having a momentary price contact 317 and a momentary value con-tact 318. When the service switch 316 is moved to a position wherein the price contact 317 is grounded, the line four input - to the eight-line to one-line decoder 199 (Fig. 4B) is grounded.
lOtiZZ93 n this occurs, the strobe ~ignal on the readout address buses 231 is changed to strobe the weight indicators 301-304 while price data is present on the printer data buses 232. 5imilarly, when the service switch 316 is moved to gro~md the value contact 31B, the line four input o~ the eight-line to one-line decoder 200 (Fig. 4B) is grounded. When this occurs, the strobe signal to the decoder 307 is synchronized with the computed value data on the printer data buses 232 causing the indicators 301-304 to display the computed value. As previously indicated, this permits maintenance personnel to isolate an error in a printed label between the printer 21 and the logic unit 15. If the weight `indicators 301 304 display a correct price per unit weight or a correct value for an article, then an error in the printed label will be isolated to the printer 21. ~owever, if the indicators 301-304 display the same error present on the printed label, then the error is isolated to either the logic unit 15 or to one of the data inputs to the logic unit 15.
me printer 21 may be of any conventional design -~
suitable for use with weighing and price computing apparatus. . -One typical printer design is shown in United States Patent 3,163,247 which issued on December 29, 1964 to R. E~ Bell et al.
~owever, a preferred arrangement for the printer 21 is shown diagrammatically in the block diagram of Fig. 6. As previously i indicated, the printer 21 includes apparatus for automatically entering price data into the logic unit 15. The auto-price ~pparatus includes an auto-price rea~er 325 which includes an optical reader for reading three digits of price data from a ommodity plate. The commodity plate also includes raised type for printing on the labels the name of the commodity. The three binary coded decimal price digits from the auto-price reader 325 are applied through a data selector 326 to the four auto-price -data lines 210-213 which are connected to the line one inputs of ~he 8-line to l-line decoders 198-201 of Fig. 4B. m e data _ 9~ _ ' '"' ' ' . ' ~ . ' ~.' ~ , .
.: .
~0~;2Z93 ~ ector 326 may also include apparatu~ such as exclusive OR
gates connected for generating an auto-price parity bit on an output 224 connected to the line six input to the decoder 200.
An alternate and preferred method for producing an auto-price parity bit is to store the parity information directly on the commodity plate for reading by the auto-price reader 325. The actual auto-price digit supplied from the reader 325 through the data selector 326 to the lines 210-213 is determined by signals on two auto-price address selection lines 327 and 328 (from Fig.
4C). Signals on the address selection lines 327 and 328 are received from the address buses 206 from the RGM 190 in the control unit 15. Thus, when a commodity plate is inserted within the auto-price reader 325, the address selector 326 applies one digit at a time of the price per pound data on the lines 210-213 depending upon an address selection signal received on the lines 327 and 328.
' The three digits of the price per unit weight for an article ~eing labeled, the four weight digits and the four value digits are printed on the label by means of print wheels 329.
Each of the print wheels 329 is connected through a solenoid actuated clutch 330 to a common drive shaft. Outputs 2ao~ from the printer data address amplifiers 240 (Fig. 4B) are applied to a 4-line to 16-line decoder 331. Eleven of the output lines from . . .
the decoder 331 are used for selecting the eleven clutch solenoids 330 which selectively engage the eleven print wheels 329 with the drive shaft. The outputs from the decoder 331 are connected through solenoid driver amplifiers 332 which power the clutch solenoids 330. Thus, when address data is received on the lines 240', one of the solenoid clutches 330 is addressed for engaging the associated print wheel 329 with the drive shaft.
.
_ 95 _ ' , , . ' ' . .
~062Z93 Each pxint wheal 329 is provided with a commutator 333 which rotates with and indicates the position of the print wheel.
The commutators 333 are connected to four 16-line to l-line decoders 334. The decoders 334 have a BCD output corresponding to the digit to which an addressed print wheel is positioned.
Address information is supplied to the decoders 334 from the data address lines 240'. The BCD output from the decoders 334 is applied to one input of a four bit comparator or coincidence circuit 335. The printer data on the buses 232 from the RAM 228 -~
10 (~ig. 4B) in the control unit 15 is applied to a second input of ~: .
the comparators 335. When an addressed print wheel 329 is - driven to a desired number, the output of the decoders 334 will correspond to the printer data on the buses 232 and the compara- .
tors 335 will apply a coincidence signal to control logic 336.
15 When coincidence occurs, power is removed from the energized .
clutch solenoid 330. :~
The pr.inter data on the buses 232 is also ap~lied to a parity generator 337 which generates a parity bit in a conven- ; ~ .
tional manner, such as with three exclusive OR gates. The parity bit from the generator 337 is applied to a comparator 338, which may also be an exclusive OR gate, where it is compared with the printer data parity bit from the printer data parity generator comprising the exclusive OR sates 233-235 (Fig. 4B) in the control unit 15. If there is no parity check, the control logic 336 applies a REWEIGE signal on the line 265 for recycling the control unit 15. The` control logic 336 also includes various . switches and mechanical sensors as-well as inputs from and outputs to the control unit 15. The printer clock input is - o.btained from the inverter 244 and the SET input on line 263 30 from an inverter 262. Outputs from the control logi~ 336 include the REWEIGH line 265, the take label line 267, the print stored .line 260, the add labels line 269, a motion detector inhibit line --connected to the line five input to the decoder 198 in the ~on~ol .
' ~
1(~ti2Z93 t 15, the door open interlock connected to the line four input to the decoder 201, a printer readout on/off output connected to the NAND gate 250 (Fig. 4C) and the blank weight, blank value and blank price signals to the ROM 191. The manner in which S these outputs are generated is known in the art and will not be covered in further detail.
The above-described features of the exemplary embodi-ment permit the apparatus 10 to weigh articles, compute an article value and print an article label with a speed and accuracy heretofore not possible. Furthermore, the accuracy of the apparatus 10 is maintained over a long period of time, despite changes in component parameters caused by ageing and changes in temperature.
In the exemplary embodiment of the apparatus 10 des-cribed above, weight measurements were in pounds and value was computed in dollars. It will be appreciated by those of ordinary skill in the art that the apparatus 10 may be readily adapted for other weight units, such as kilograms, and to other monetary ,- units. The number of weight, price per unit weight and computed value digits also may be changed to meet any requirements for the apparatus 10. Also, changes may be readily made in the degree or band of motion to which the motion detector is respon-sive and in the operating range and increments of the automatic zeroing circuit.
The apparatus lQ has been described as generating a predetermined number of significant weight digits, e.g., for significant weight digits for weights of from 0.01 pound up to 30.00 pounds. ~owever, any other number of digits may be generated and employed and any other weight and price limits employed as may be necessary or desirable. These weight digits are displayed, printed on labels and used in computing values.
In addition, at least one more least significant digit is generated for use in automatically and manually zeroing the lO~;ZZ93 a aratus lO ~nd in motion detectioll. Although such additional lea~t si~ni~icant digit has been described as a decimal, it will be apparent that it may be of other fractional units such as one-th rd or one-fifth of the least significant one of the predetermined number of significant weight digits. If an odd fractional increment, such as one-third, is generated, then the scale zero will be centered and the automatic zero correction factor will generally not change except for compensating for :. :
any slow drift in the zero.
` lO In describing the zero expansion circuitry, it has been stated that the additional-least significant weight digit is stored in the weight output memory during actuation of the zero exp~nd switch 178 so that this digit will appear on the weight display ~2. In an alternative embodiment, a separate -~ 15 indicator may be provided for displaying the additional least - significant weight digit. This indicator will normally be ~ blanXed and will be energized only when the zero expand switch ~ -`~ 178 is actuated. It will be appreciated that various other . .
4 changes may also be made in the above-described inventions without departing from the spirit and the scope of the following claims.
,........................................................... .
:, .
... .
.
~ . , .
. . .
,. . . -. .
.: - . . . . .
.. . : ~, : : . . -lO~Z~93 ~ P P E N D J X
SYMBOL TABLE
ACLRl 001201 B4 001123 MOV5 000404 ADD 000485 CALC 000514 Ml 000964 Al 000527 Cl 000074 M3 000979 All 000780 C12 000229 M6 000993 A12L~ 000512 C14 000214 NMCHK 000014 A13 0009~7 C15 000215 NOTAR 001151 A18 000953 C3 000129 OUTl 000298 Al9 001045 C4 000133 OUT2 000308 A20 001059 C6 000150 PCHKl 000030 A25 00103~ C9 000174 PCHK4 001248 A28 001053 E~TAT 001156 RDINP 001206 A5 000543 I~TLK 000535 ROFFl 000366 A6 001080 LATC~ 000345 SDONE 000498 A7A 000813 LTCHl 000353 SUBAZ 000375 A8 000705 MCHKl 000008 SUBTR 000432 A8A 000739 MI~MI 000482 SUBl 000453 A9 000762 MOTCK 000569 SWSG~ 000391 BL~NK 001187 MOT~ 000656 TARl 001088 BL~Kl 001190 MOVA -000406 TAR2 001098 Bl 000637 MOVB 000413 TIMCK 001138 _ 99 _ lO~;ZZ93 PROGRAM
0000 00040 MCHK, FIM P4 11000B /INIT CONSTANT POINTERS
0008 00082 McHKl~ JMS CALC
0011 00239 RD3 /READ MOTIO~F
0012 00020 JCN AZMcHKl /LOOP UNTIL MOTION
0014 00082 NMCHX, JMS CALC
~ 00002 0001~
0024 00018 JCN CNPCHKl /JMP IF DEM OR CONT
0026 00237 RDl 0027 00246 RAR /PUT MOT DET INH rN C
0030 00238 PcHKl~ RD2 0032 00018 JCN C~PCHK /JMP IF HAVE REWEIGH
' 00000 '~
0037 00068 PCHK, JUR PCHK3 /CHK FOR NO TARE BUTTON
~ 00190 0039 00034 FIM Pl 11101B /SELECT DIGIT FOR
0041 00035 SRC Pl /.1 LB CHK
0044 00034 FIM Pl 11011B
.0048 00081 JMS EWSGN /SUB .1 LB FROM WGT
0050 00028 JCN AR MCHK /JMP IF WGT LT .1 LB
0053 00236 RD0 /RD SET, MINUS, OVERCAP
0054 00028 JCN A~MCHK /JMP IF ANY TRUE
00000 :
;2293 .
0063 00043 eCt~K2, SRC P5 0064 00240 CLa /CLR PRINT
0065 00`230 . WR2 0067 00034 INTCK, FIM Pl 100000B
0069 00032 FIM P0 lloolooB /R0=10 CNTR, Rl=4 007.3 00225 WMP /OOOOSELECTS ROTARY SW INP
0074 00163 Cl, LD R3 /LOAD SWITCEt POINTER
0076 00226 ~RR ~SELECT SWITC~t 0077 00045 SRC P6 .
0079 00035 SRC Pl /WRITE SW INP TO ~.tEM REG 2 0082 00112 ISZ R0 Cl /LOOP 10 TIMES
0086 00239 RD3 /READ STARTS AT ADD. 4 0087 00228 . WR0 0091 00229 WRl 0092 00084 JMS. RDINP
0098 00237 RDl 0102 00237 RDl /READ BY CNT
0}03 00028 JCN AN C6+2 /JMP IF IN BY CNT
0108 00020 JCN AZ CS /JMP IF MODE CEtANGED
0110 00032 FIM P0 llooooooB
0112 00034 FIM Pl 100000B
0114 00045 C2, SRC P6 M
0117 00036 FIM P2 12 /R4-1 BITS CNTR, R5-4 CNTR
_ 101 -. '' .
.
~ ;2 2 9 3 .
0119 00161 LD R1 ~LOAD PIR DIG ADD. POINTER
0121 00226 WRR` JSELECT P/R DIGIT
0126 00224 W~M /WRITE P/R DIG
0127 00097 INC R1 /INC DIG ADD. PNTR
0128 00099 INC R3 /INC M~M CI~AR PNTR
0129 00246 C3, RAR /ROTATE BITS TO CNT 0NES
0133 00117 C4, ISZ R5 C3 /DO 4 TIMES
t0143 00246 RAR /RESULT SEIOULD BE EVF.N
0150 00028 C6, JCN AN C5 /JMP IF MODE aAS CHANGED
0152 00034 FIM Pl loooooB /Pl POINTS TO NEW P/P
- 0156 00241 C7, CLC /C ~UST BE CLR
;0158 00233 RDM /READ NEW CHAR
~0171 0163 00034 FIM Pl 100000B /CEIANGED, RESET
0171 00099 C8, INC R3 /INC DIG POINTER
0174 00041 C9, SRC P4 /SELECT OLD TARE ADD.
;0176 00245 RAL /PUT DOOR OPEN IN C
_ 102 -01?~ 0043 SRC P5 0180 ~0234 RD~
0018%
001~1 0186 00247 C5, TCC
10187 00228 WR0 JUPDATE P/R FLAG0188 00047 C10, SRC P7 0191 00084 C13, JMS TAR2 0193 00041 SRC P7 /SE:L~CT PRI~T MODE SW
~0195 00233 RDM /READ PRI~T MODE;0196 00020 JCN AZ C15+1 0200 00246 RAR /NCW ACC=0 IF BY WGT
0201 00229 WR1 /WRITE TO BY C~T0202 00233 RDM /READ AGAIN
0203 0024G RAR /C=1 MEA~S MODE 2 0205 00026 JC~ C2 C14 ~ PIF MODE 1 0207 0Q246 RAR . /C=1 IF CONT
0208 00212 LDM 4 /WILL S~T CO~T
0209 00018 JC~ C~ C15 /JMP IF CONT
0212 00064 JU~ C15 0214 002 0 C14, CLB
0215 00230 C15, WR2 /UPDATE P~ILNT MODE OUT
0218 00245 RAL /PUT I~TF IN C
- 0219 00026 JC~ CZ C12 /JMP IF I~TF ~OT SET
0222 00230 WR2 /CLR INTF, SET INITF0223 00043 C21, SRC P5 ;0224 00236 RD0 0225 00246 RAR -:
0227 00064 J~N C22 ~~ 0229 00238 C12, ~D2 I;0230 00246 RAR /P~T I~ITF I~ C
0231 00026 JC~ CZ ~20 /JMP l~ NOT SET
0233 00047 SRC P7 /SEIECT PRI~TER M0DE
0235 00246 RAR /C=1 ~F MODE 2 . 00252 ., , . ? - :
. ........ - . .: , - .
~ Z~S~3 0239 ~23G RD0 0240 ~02~6 RAR /PUT LOCK SW IN C
0241 00026 JCN CZ C20 /~MP IF NOT PRESSED
0245 00230 WR2 /CLR I~ITF
0250 OG245 C22, RAL
0252 00192 C20,BBL 0 0256 00041 OUTPT, SRC P4 0261 00246 RAR /PUT DISPLY PRICE I~ C
0262 00026 JC~ CZ OUTA /JMP IF NOT SET
0264 00034 FIM Pl 110000B /SOURCE IS PRICE
0268 00246 OUTA, RAR /PUT DISPLY VALUE IN C
0271 00034 FIM Pl 1110~0B /SOURCE IS VALUE
0273 00081 OUTB, JMS MOV4 /MOVE SOURCE TO DEST
0275 00045 OUTC, SRC P6 0276 00237 RDl /RD 1/4 GRAD LAMP ~:
0277 00034 FIM Pl 1000000B
0279 00035 SRC Pl 0284 000~4 FIM Pl 110000B /MEM A~D LATCH
0295 00045 SRC P6 /SELECT RAM0, ROM0 0297 00225 WMP /0101 SELECTS MUE I~PUT
0298 00234 OUTl, RDR
0300 00246 RAR /PUT MUE I~ C
0301 00026 JC~ CZ OUTl 0303 )041 SRC P4 /SELECT ROMl 0305 00226 WRR /0001 TKES CO~TROL F BUF
0307 00176 XCH R0 /R0 IS 12 C~TR
0308 00047 OUT2, SRC P7 /SELECT ROM2 0309 00163 LD R3 /LOAD B~F ADD.
0311 00035 SRC Pl /SELECT OUTPUT CHAR
0315 00041 SRC P4 /SELECT ROMl 0320 00099 INC R3 /I~C CHAR POI~TEX
0321 00112 ISZ R0 OUT2 /LOOP 12 TI~IFS
0324 00163 LD R3 /POINT BUF ADD. 130325 00226 WRR
0327 00238 RD2 /READ PRI~T CONTROL WRD : .
0329 00225 . WMP
0333 00209 LDM 1 :
0336 00226 WRR /RELEASE BUFFER CO~TROL
0338 00236 RD0 ~ :
0341 00241 CLC /CLR ~EM. UPDATE REQ
0345 00236 LATCH, RD0 /SRC P5 LAST GIVEN
0346 00245 RAL /PUT OVERCAP I~ C
0347 00018 JC~ C~ LTCHl/IF SET FORGET
0350 00237 RDl 0351 00246 . RAR /PUT OVERVALUE IN C
0353 00246 LTCHl, RAR /SET OVERCAP IF
0356 00041 . SRC P4 0362 00039 R~DOF, SRC P3 /SUBROUTINE FOR WGT ROU~DOFF
., .
:, . , .. - - . - : . .
lO~;ZZ93 0363 )219 LDM 11 /LOAD AN 11 0366 00039 ROFFl, SRC P3 0372 00018 JCN C~ ROFFl /KEEP GOI~G UNTIL C O
0375 00034 SUBAZ, FIM Pl 11 /ROUTI~E TO SUB AUTO ZERO
~ OQ011 : 0377 00036 FIM P2 0 /FROM WGT
.0379 00037 SRC P2 0381 00246 RAR /SAVE ~ C
: 0383 00245 RAL
: 0384 00228 WR0 /PUT AZ SIGN IN
0385 00081 JMS EWSGN /E~TER WGT SIGN
~.00134 :0389 00193 BBL 1/IF NEG LOAD 1 i0390 00192 RETN, BBL 0 0391 00176 SWSGN, XCH R0 /ROUTI~E TO SET WGT SIGN
~0393 00236 RD0 /~EAD STATUS WORD
i0397 00246 RAR /PUT SUB SIGN IN C
0398 00176 XC~ RO /RECOVER STATUS WORD
0400 00246 RAR ~PUT UPDATED SIGN IN PLACE
.0401 00228 WR0 :0402 00036 FIM P2 0 0404 00032 MOV5, FIM P0 10111011B /R0=5CNTR, Rl=5CNTR
`001~37 0406 00035 MOVA, SRC Pl :0408 00037 SRC P2 .0409 00224 WRM /WRITE TO DEST
0412 00097 INC Rl /I~C ZEROES CNTR
0413 0Q099 MOVB, INC R3 0418 00032 MOV4, FIM P0 11001100B /R0=4 CNTR, Rl=4 CNTR
` 0420 00065 JUN MOVA
`,, . 00150 Q422 00036 EWSGN, FIM P2 0 /ROUTINE TO ENTER WGT
.
.. - : . - ; ,. : -., ~
lO~iZZ93 ~424 ~043 SRC P5 /SIGN AND THEN SUB
0425 ~0236 RD0 0427 00245 RAL /l~UT WGT SIGN IN C
/ROUTINE TO SUB NUM AT Pl FROM NUM AT P2 /AND LACE RESULT AT P3. ALL REGS ARE USED
0432 00038 SUBTR, FIM P3 10000B /DEST POINTER
0440 00187 XCH Rll /PUT IN Rll 0442 00246 RAR /PUT MI~UEND SIGNIN C
0445 00246 RAR /C=0. PUT SUBTRAHEND IN C
0448 00038 SUB, FIM P3 10000B /REPEAT 3 INSTS IN
0451 00187 XCH Rll /SUB
C453 00249 SUBl, TCS /IF C=0 A=1001,C=1 A=1010 0454 00035 SRC Pl 0456 00241 C~C
0462 00099 IWC R3 /INC ALL POI~TERS
0465 00123 ISZ Rll SUBl /LOOP 5 TIMES
0470 00180 XCH R4 . /XCH MINUEND AND SUBTRAHEND
, 00192 .
- ~
- lO~;ZZ93 04~2 ~)246 MI~MI, RAR~PUT SU13TR.~lEND SIGN IN C
0483 00018 J~ CN SUB /IF C=1 WANT TO SUB
0485 00241 ADD, CLC
0487 00233 RDM /LOA~ FIRST NUM
0489 00235 ADM /ADD S~COND
0491 00039 . SRC P3 0493 000g9 INC R3 0495 00103 I~C R7 0496 00123 ISZ R11 ADD+1 /LOOP 5 TIMES
0498 00040 SDO~E, FIM P4 11000B /RESTORE MAINTAINED
0502 00034 FIM P1 10000B jPOINT P1 TO DEST
0505 00236 RD0 /~EAD SIGN
OS06 00246 RAR /PUT SIGN I~ C ., -0507 00026 JC~ CZ RET~ /JMP IF POS
0509 OOlg3 BBL 1 /~EG SIG~
0512 00067 A12hK, JU~ A12 ooo9o 0514 00047 CALC, SRC P7 0515 00239 .~D3 0516 00246 RAR /PUT TlF IN C
0518 00238 RD2 /READ Tl r~PUT
OSl9 00018 . JCN C~ A2 /JMP IF T1F SET
0521 00245 RAL /PUT T1 I~ C
0522 00018 JC~ C~ A1 /JMP IF T1 TRUE
0527 00041 A1, SRC P4 05~8 00237 RDl 0529 00245 RAL /PUT EXPAND I~ C
0530 00026 JC~ C~ TL~C /~P IF EXPA ~ NOT TRUE
0534 00230 WR2 /SET I~TF
0535 00064 I~TLK, JU~ I~TCK
0537 00245 A2, RAL /PUT Tl IN C
0538 00026 JC~ CZ A1 /JMP IF Tl FALSE
0542 00231 WR3 /CLR TlF
0543 00032 A5, FIM P0 lOllOOOOB
lOtjZZ93 0545 00034 FIM Pl 0 0547 00084 A3, JM.S DGSCH /SEE IF DIG WANTED THERE
0555 00224 W~M
0560 00099 INC R3 /INC WGT CHAR POINTER .:
0569 00084 MOTCK, JMS ARICL
0572 00210 LDM 2 /RIG SIG~S SO SUBTRACT
0574 00034 FIM Pl 11100B
0576 00035 SRC Pl . -0579 00034 FIM Pl 11011B /BA~D
0583 00081 JMS SUBTR /ADD BA~D TO TARGET
0585 00036 FIM P2 llollB
0589 00034 FIM Pl llollB /TARGET~BAND
00Q00 '.
0596 00081 JMS SUBTR /WGT-(TARGET~BAND) 060? 00034 FIM Pl 11100B
~604 00209 , LDM 1 /LD BAND OF 1 `~ - 109 - ' lOf~Z'~93 0G0C J0035 SRC Pl 0607 00034 FIM Pl 11011B /BAND
-0617 00034 FIM Pl 11011B /TARGET-BAND
:'00000 0621 00081 JMS SUBTR /WGT-tTARGET-BAND) :00176 :0623 00028 JCN AN MOTN /HAVE MOTION IF -0627 00020 JCN AZ UDTGT/JMP IF A~READY NO ~OTN
::.0630 00239 RD3 ~:0632 00026 JCN CZ Bl /JMP IF NOT SET
:'00125 :0634 00210 LDM 2 /CNT = 2 j0637 00246 Bl, RAR /PUT CNT BIT 1 I~ C
0640 00211 LDM 3 /CNT = 3 ` .
00132 .
0643 00209 B2, LDM 1 /CNT = 1 0644 00176 B3, XCH R0 /SAVE IN R0 0650 00028 JCN AN SUBDI/NOT ENOUGE ~ITS YET
`00157 , .0654 00066 JU~ UDTGT
:00151 0656 00045 MOTN, SRC P6 :,0657 00240 CLB
:.0658 00224 WRM /CLR CUR HIT CNT
0660 00229 WRl /TURN OFF 1/4 GRAD LAMP
0663 00034 UDTGT, FIM Pl 0 ~ .
- ~. `
: . . .. ;.`
lO~;Z293 0669 00084 SUBDI, JMS LDTAR /SCAN TARE ~EYS
0673 00034 FIM Pl 11110B
i`0675 00035 SRC Pl 0676 00216 LDM 8 /DIGITAL INITIAL OF 8LB.
~-0677 00224 WRM
0678 00034 FIM Pl 11011B
0684 00081 JMS SWSGN /SET SIGN,MOVE RESULT TO WG
0687 00237 RDl /READ EXPAND INPUT
0689 00026 JCN CZ A8 /JMP IF NO E~PAND
' 00193 0691 00034 FIM Pl 0 ~` 00000 0693 00036 FIM P2 llolooB
i0695 00081 JMS MoV4 0697 00034 FIM Pl 11 /CLR AUTO-ZERO AREA
-~0699 00084 JMS ARICL+2 `;0701 00221 LDM 13 0702 00229 WRl /TURN OFF 1/4 GRAD LAMP
0703 00065 JUN OUTPT /JMP TO OUTPUT,WILL RETURN
/DIRECTLY TO MOTN CFDK ROUTI~E
0705 00041 A8, SRC P4 `0707 00245 RAL /PUT A-Z CORR EXP IN C
' 00227 0712 00034 FIM Pl 11101B
0714 00035 SRC Pl 0716 00224 WRM /PUT .6 IN ARI
0717 00034 FIM Pl 11011B
' 00000 0721 00081 J~ SUBTR /SUB .6 PROM WGT
` 00176 0723 00020 JCN AZ A12LX /JMP IF WGT GE .6 ,0~00.0 ,~ , .
.
:~ . . . .
lO~;Z293 0730 00~08 LDM 0 0733 00034 FIM Pl 0 0739 00081 A8A, JMS SUBAZ /SUB AUT0-ZERO FROM WGT
0741 00081 JMS SWSGN /SET SIGN. MOVE RESULT TO WGT
0745 00034 FIM Pl lllllB
0747 00035 SRC Pl 0750 00034 FIM Pl 11011B
~0250 : - 00253 0762 00236 A9, RD0 0765 00246 Alo~ RAR
0768 00020 JCN AZ All /JMP IF NO MOTION. , a770 00236 RD0 .0774 00034 FIM Pl 110100B
:0780 00084 All, JMS ARICL
0782 00034 FIM Pl 11011B~
0784 00035 SRC Pl lOtiZZ93 ~78 00213 LDM 5 0786 0022~ WRM ~WANT .0Q5 IN ARI
0789 00081 JMS SUBTR /MAG WGT - .005 0792 00028 JCN AN A7 /JMP IF LT .OOS
0795 00229 WRl /SET 1/4 GRAD LA~
0798 00240 A7, CLB
0799 00034 FIM Pl 0 0801 00035 SRC Pl 0~02 00210 LDM 2 /LD A 2 FOR 1/4 G LMP TST
0804 00018 JCN CN A7B /JMP IF WGT LE .002 0808 00237 A7B, RDl /RD 1/4 GRAD LAMP
0812 00229 WRl /UPDATE 1/4 GRAD LAMP
,0813 00161 A7A, LD Rl /LOAD ZERO CNTR
0834 00228 WR0 /ENTER TO SIG~ STATUS
0835 00034 FIM Pl 11011B
0837 00035 SRC Pl 0839 00224 WRM -~
0840 00036 FIM P2 11 ~:
0842 00081 JMS SUBTR /CORRECT A-Z BY .001 ~844 00045 SRC P6 /E~TER RESULTING SIGN
.
; ., ` .
-` lO~:;Z293 0846 00036 FIM P2 looloB
0852 00020 JCN AZ Al2 /JMP IF A Z OUT OF RANGE
0856 00081 JMS MOV5 /MOVE RESULT TO A~Z
0014~3 0858 00034 A12, FIM Pl llOOlB
0867 00034 FIM Pl 101011B
00000 ~ -0876 00081 JMS RNDOF /ROUND OFF FINAL NE~.WGT
0878 00034 FIM Pl 0880 00036 FIM P2 llolooB /MOVE EIIGH 4 DIG OF
0884 00161 . LD Rl . /LD ZERO CNTR
0889 00245 E~AL
0894 00047 A27, SRC P7 /SELECT PRINT ~IODE SWITCH
0895 00237 RDl /READ BY CNT
0898 00034 FIM Pl 100000B
0902 00081 JMS MOV4 /P~T P/LB SW IN P/LB OUT
.0904 00038 FIM P3 loolooB
.
- 114 - ~
10~i2293 0906 00039 SRC P3 /SELECT P/CNT SW DEC~ 1 001~7 ogl3 00216 LDM 8 /MUST ADD 8 TO DECK 2 0914 0023$ ADM
0915 00043 A14, SRCP5 0917 00034 FIMPl 101010B
000~2 0919 00035 SRC Pl - /SELECT OLD CNT VALUE
0922 0002a JCN AZ A16 /JMP IF SAME
0924 00043 SRC PS.
O925 00233 RDM ~EAD NEW CNT
0926 00035 SRC Pl 0927 00224 A13, WRM /UPDATE OLD C~T
0930 00034 A16, FIM Pl 100000B
: 00032 : 00056 . : :
0938 00034 A17, FIM Pl 101010B
0940 00035 SRC Pl /SELECT OLD CNT VALUE
~ .0942 00020 JCN AZ A15 /J~IP IF WAS BY WGT
' 00179 0944 00240 CLB /CNT VALUE=O FOR BY WGT
s 00159 0947 00034 A15, FIM Pl 100000B
.0953 00034 A18, FIM Pl 110000B /P/LB OUT IS .~UL~IPLIER
0955 00036 FIM P2 110100B /WGT OUT IS ~fULTIPLICAND
.0957 00240 CLB /ENTER MULTIPLY ROUTINE
:0958 00185 XCH R9/CLR SHIFT CNTR
~,0963 00240 CL8 ~0964 00039 Ml, SRC P3/POINT TO DEST DIG
., , :
' - 115 _ ' - .
lO~iZZ93 0967 00112 ISZ RO Ml ~LOOP 8 TIMES
0969 0024L M2, CLC .
0972 00035 . SRC Pl /SELECT MULTIPLIER DIG
0974 00244 CMA /FORM (DIG NOT)+l FOR CNTR
0976 00020 JCN AZ M7 /SKIP IF DIG=0 0979 00220 M3, LDM 12 /SET MULTIPLICAND CNTR = 4 0981 00037 M4, SRC P2 /SELECT MULTIPLICAND DIG
:~ 0988 00101 INC R5 : 0989 00112 ISZ R0 M4 /LOOP 4 TIMES
0991 00081 JMS ROFFl /ADD POSSIBLE CARRY
0993 00169 M6, LD R9 ~0994 00183 XCH R7 /DEST PNTR = SHIFT CNTR
0997`00120 ISZ R8 M3 /LOOP UNTIL ADDS DONE
0999 00105 M7, INC R9 /INC SHIFT CNT
~:1000 00099 INC R3 /INC I~ULTIPLIER PNTR
~1001 00113 ISZ Rl M2 /LOOP UNTIL JOB DONE
`00201 1003 00038 FIM P3 looolB /SET ROUNDOFF PNTR
. 1006 00081 JMS RNDOF
:~ 00106 1010 00034 FIM Pl 10010B
:~ 00162 ` 1016 00034 FIM Pl lolloB
` 1018 00035 SRC Pl -101~ 00233 . RDM /V00.=0 IF NOT OVERVAL
: 00000 .
-1(~t;2293 1026 00034 FIM Pl llloooB
1029 00084 JMS BLANK~l /ZERO VALUE OUT
0016~
1032 00043 A24, SRC P5 1033 00229 WRl /UPDATE OVERVAL FLG
1034 00043 A2S, SRC P5 1036 002~6 RAR /PUT P/LB BLNK IN C
1038 00018 JCN CN Al9 /JMP IF NO BLNK
1040 00034 FIM Pl llooooB
1045 001a0 Al9, XCH R4 :1047 00180 XCEI R4 1049 00237 RDl /RD BY CNT
j1053 00018 A28, JCN . CN A20 1055 00034 FIM Pl 110100B
1059 00180 A20, XCH R4 1061 00018 JCN CN A21 ~ :
00043 .: -1063 00034 FIM Pl 111000B
1067 00065 A21, JUN OUTPT
1069 00035 DGSCH, SRC Pl /SUBROUTINE TO CHK FOR
1071 00225 WMP /0010 SELECTS DIG SLCT INP .:
1072 00234 A4, RDR
1076 00147 SUB R3 /SUB DESIRED WGT DIG ADD.
1080 00193 A6, B8L
1081 00032 LDTAR. FIM P0 11100000B /R0=2 CNTR
1083 00034 FIM Pl 10011~8j .. . .
, .. .. . ~ . . . . .. .
lO~ZZ93 108~ )G045 SXC P6 1088 00163 TARl, LD R3 /LD SW POINTER
1092 0023~ RDR /RD TARE SW
1093 00035 SRC Pl 1096 00112 ISZ R0 TARl /LOOP 2 TIMES
1098 00045 TAR2, SRC P6 1100 00028 JCM A~ ENTAT /JMP IF SET
.1102 00036 FIM P2 101000B
1107 00233 RDM /RD .T
~1108 00020 JC~ AZ B4 /JMP IF NOT PRESSED
~1110 00084 JMS TIMCK
-` 0011 1113 00233 RDM /RD .T
`001.32 . -~
1120 00233 RDM /RD .. T
1122 00224 WRM /WRITE TO TARE OUT.
~1123 00036 34, FIM P2 100111B
s0003g 1128 00233 RDM /RD .0T
1129 00020 JCN AZ TIMCK-l /JMP IF NOT PRESSED
1134 00233 RDM /RD .0T
` 1136 00224 WRM /WRITE TO TARE REG
! 1137 00192 BBL 0 : 1138 00216 TIMCK, LDM 8 1139 00047 . SRC P7 1143 00028 JCN AN TIMCK-l /JMP IF RUNNING
~-.... .. . .
- ~ . - : .
~06Z~93 14C 0~221 LDM 13 114~ ~0224 ~RM /START TIMER
1147 000~4 FIM Pl 101011B
1149 00068 JUN ARICL-t2 /CLR TA~E
1151 00084 NOTAR, JMS MOT~R-4 /MAKE SURE TARE CLEARED
1156 00045 ENTAT, SRC P6 : 1157 00209 LDM
1159 00034 FIM Pl 11001B
00025 , , 1161 00035 SRC Pl 1163 00020 JCNAZ E~TAT-l /~ IF NOT RDY
1171 00018 JC~ CN CLATF /JMP IF MINUS
00158 : -1174 00028 JCN AN ENTAT-i /JMP IF MOTN
1176 00034 ` FIM Pl 0 '178 00~36 FIM P2 101011B
00043 ~ :
1182 00045 CLATF, SRC P6 ::
1184 00230 WR2 /CLR AUTO TA~E FLG
1185 00068 JUN NOTAR+2 . /ROUTINE TO BLANK 4 CHARS
1187 00223 BLANK, LDM 15 /LD A BLANK
1190 00035 BLNKl, SRC Pl /Pl ~OLDS ADDRESS
1192 00099 I~C R3 1193 00112 ISZ R0 BLNKl /LOOP 4 TrMES
/ARITHMETIC AREA CLR ROUTINE
/CLRS 5 DIGITS. USED BEFORE SU3TRACT
1196 00034 ARICL, FIM Pl 11011B /MEM REG 1, CHAR 11 1198 00240 CLB . ~ .
1199 000~5 SRC P6 1201 00035 ACLRl, SRC Pl .
~ ....... .. ~ . . ~ .
lO~;ZZ93 120' `0224 WRM /WRITE A 0 1203 00115 ISZ R3 ACLRl /LOOP 5 TIMES
1205 00192 ~BL 0 1206 00161 RDINP, LD Rl /Rl HOLDS MLPX ADD.
1210 00041 . SRC P4 1212 00097 INC Rl/INC MLPX ADD.
1214 00034 PC~K3, FIM Pl 101000B
1216 00035 SRC Pl 1219 00232 SBM /SUB .T FROM 2 1220 00028 JCN AN PCHK4 /JMP IF ~O TARE NOT PRESSED
: 00224 1222 00034 FIM Pl 110000B
1228 00161 LD Rl 1229 00028 JC~ AN PCHK4 /JMP IF ~OT 0 1231 00228 WR0 /CLR SET, MINUS, OVERCAP
1236 00034 ~ FIM Pl 6 1238 00112 PCHX5, ISZ R0 PCHK5 1240 00113 ISZ Rl PCHK5 1244 00115 ISZ R3 PC~KS. /1.1 SEC DELAY
1248 00084 PCHK4, JMS ARICL
1250 00064 JUN PCHK+2 . ... .. -- :
.
.. .. .
; ~ ' . ' ' ~ ~-.. .
l~ Zg3 is not within a pr~determined no motion band for a predetermined time interval.
When desirable or required, a tare weight is supplied to the apparatus either through a keyboard or automatically for obtaining a net weight which is used in computing the article value. At least some of the tare weiyht Xeys are cumulative when the keys are pushed within a predetermined time interval.
If the time interval ~etween the successive operation of the tare keys is exceeded, the last tare Xey pushed represents the total tare weight entered into the apparatus.
Circuitry including a manual switch is provided for selectively displaying the price per unit weight data or the computed value data from the microcomputer on the weight display.
The displayed data is then compared with the printed data for isolating the source of any error.
Accordingly, it is an object of the invention to provide electronic apparatus for successively measuring the weight of articles to be labeled, for computing a value for each weighed article and for printing a label for each weighed article.
Other objects and advantages of the invention will become apparent from the following detailed description, with reference being made to the accompanying drawings.
` BRI EF DE S CRI PT I O~ OF THE DRAWING S
i 25 Fig. 1 is a schematic block diagram of apparatus embodying the principles of the present invention for weighing, computing a value and printing a label showing the weight, price per unit weight and computed value of each of a plurality of successive articles: `
., . ~
l~;ZZ93 Fig. 2, composed of Fig3. 2A - 2~, ~hows a flow diagram illus~tincJ the operatillg sequence of apparatus embodying the principles of the present invention, Fig. 3 is a schematic circuit diagram showi.ng a switch arrangement for entering data into apparatus for weighing, computing a value and printing a label for each of a plurality of successive articles;
`~ Fig. 3A shows a multiplex interface between the analog-to-digital converter and the microcomputer multiplex input interface.
Fig. ~, composed of Figs. 4A - 4C, is a schematic logic diagram of circuitry for controlling the operating sequence and computing a value in apparatus for welyhing, com-puting a value and printing a label for each of a plurality of 1~ successive artïcles;
Fig. S is a schematic logic diagram showing multi-plexing circuitry for supplying data to a digital weight display;
Fig. 6 is a block diagram of a printer for use in -~ apparatus according to the present invention; and .:
Fig. 7 is a diagram of one possible memory location '':
-` arrangement in the random access memory in the microcomputer of the e~emplary apparatus of the present invention.
',','' ' DESCRIPTION OF A~ EXEMPLARY EMsoDIMENT
. .. ~ .
Referring now to the drawings and particularly to t' Fig. 1, a block diagram is shown of apparatus 10 embodving the ~. ~
- principles of the present invention for weighing articles and, ~i for each weighed article, for computing a value based upon a predetermined price per unit weight and subsequently printing ~. 30 an article label bearing the weight, the price per unit weight - and the computed value for the article. The weight of each -` article is measured by a scale 11. Although the scale 11 may be of various known designs using mechanics, optics and _ 7 _ ' '~' ' . ' ' ' . ~ . . . : . . . ............. . . .
- ::. ., - 10~ZZ293 electronics, it is preferakZly an e]ectronic scale of the type ; shcwn in Uhited States Pat~nt 3,709,309 which issued on January 9, 1973 to Williams, Jr. et al.
e scale 11 generally comprises a load cell 12 which generates an analog output signal proportional to the weight of an article placed on a platter or weight platform 13. The analog output frcm the load cell 12 is applied to an analog-to-digital converter 14 which has a digital output corresponding to the gross weight of the article on the platter 13. The digital weight signal from the converter 14 is preferably in a binary coded decimal (Bcrl) format which is particularly desirable for use in computing an article value. The binary coded decimal (BCD) format oonprises four binary digits for each decimal digit. me weights given to the binary digits are 1, 2, 4, 8 respectively of each decimal digit. The converter 14 may be arranged to provide any `Z
desired number of decim~l digits, depending upon the maxImum weight to be weighed on the scale and also upon an increment represented by the least significant decimal digit. In the exempZlary embodiment described herein, as well as in the exemplary , . .
.! 20 embodlment set forth in the above-identified patent to Williams~
Jr. et al, it is assumed that five decimal digits will be supplied by ~he analog-to-digital converter 14.
The above-identified patent to Williams, Jr. et al discloses circuitry for automatically cancelling unwanted direct .,'j . .
~i current signals from the direct current or analog signals from -, the load cell, sensor, transducer, or strain gauge. In addition, `,~! this patent discloses circuitry for automatically zeroing the analog portion of the system while the transducer output is nomentarily interrupted and for filling in gaps in the analog 30 signal resulting from interruption of the transducer or strain :
gauge output.
nbZ/\Z;>
~' .
-`-` 10~j2Z~3 As explained in th~ above-identified patent to Williams, Jr. et al, it is sometimes desirable to indicate a ' negative weigh'c from the overall arrangement from the scale load cell through the converter and digital control arrangement.
S Thus, w~en the scale has been corrected to read net weight and the container and the commodity are both removed from the platter, the scale should indicate a negative weight equal to the weight of the container which is the tare weigh~ for which the scale has been adjusted. The overall arrangement in accor-: ` .
dance with the exemplary embodiment of this invention is ~' accordingly arranged to indicate a negative weight under these circumstances and also under other conditions described herein.
- However, the arrangement for making the various analog ~ corrections described in the above-identified patent to Williams, '~ 15 Jr. et 'al do not prevent the zero output display of the scale ; from varyinq or wandering in a random manner.
In accordance with the present invention, the digital '' output or display from the scale mechanism is further corrected ~' in the manner described herein to correct for the random wandering .: .
~, 20 of the zero display of the scale.
A dlgital weight signal from the scale 11 is applied ~`' to a -ontrol unit 15 through interface circuits of Fig. 3A and circuits 24 of Fig. 4B. The control unit 15 includes an input/
:..
" output buffer and memory 16 which receives the digital weight '' 25 data through the interface circuits of Fig. 3A and the circuits 24 from the scale 11. Data in~ut switches 17 are also connected to the input/output buffer and memory 16. The data '; input switches 17 include a manually operated keyboard for `-- entering price data, a printer mode switch and tare weight ' 30 switches. The input/output buffer and memory 16 functions as an - interface with an arithmetic logic unit 18O A sequence controller - 19 causes the arithmetic logic unit 18 and data memory or :''''~,' .
g _ .
,... : .
Z~93 re~isters 20 to co~ute the value of each weighed article and to supply such value through the input/output buffer and memory 16 to a printer 21. The arithmetic logic unit 18, the sequence controller 19 and the data registers 20 are preferably included in an integrated circuit microcomputer, as will be discussed in greater detail below.
me value is computed from a price per unit weight which is obtained either from the data input switches 17 or from a commodity plate inserted into the printer 21. The commodity plate automatically supplies price information to the input/output buffer 16 in a manner similar to that describ~d in United States Patent 3,459,272 which issued to Susor on August 5, 1969. m e commodity plate includes raised type for use in printing the cammodity or article name on a label. Price per unit weight information is enccded on the comm~dity plate by means of the presence or absence of a plurality of holes or notches at pre-determined locations. An optical or other suitable type of reader is provided in the printer 21 for sensing the presence or absen oe of the holes and for converting the price per unit ; .
20 weight information to a BCD output. m e weight data from the scale is corrected for any tare weight and zero error by the arithmetic logic unit 18 and supplied to the printer 21 and to a digital weight display 22. After a steady state weight reading is received by the logic unit 15 from the scale ll, the sequence - controller 19 causes the arithmetic logic unit 18 to compute an article value. m e ccmputed article value, the net article weight and the price per unit weight information are used by the printer 21. The sequence controller 19 controls data output to the printer and initiates printing a label.
. ~, .
~, /~ 10 -.
., .
;2~93 A~tor ~ bel iH printe~, th~ 0e~lenco controllor 19 w~ll normDll~ ~nh~bl~ the arl~hms~ic loglc unlt lB untll the label ha~ been xe.mov~d ~ro~ tho prin~er 21 ana n motlon - no motlon cycle ha~ appeared ~n tho ~cale 11 to ~nd~.c~t~ that the S weighed artiole ha~ ~en removed and a n~w artlcle ha~ b~en placed on th~ scale 11. The ~oguence contxollor 19 may al80 lnhibit the ar~thm~tlc loglc unit 18 ln the ~en~ o~ the occur-rence o~ variou~ conditlon~. For ~xam~le, i~ tho prlce or t~r~
~n~ormation i~ changed, ~hc apparatu~ 10 ifi adapted to go into a "lock" condition w~ch prevent~ printing a label until a "}ocX~ ~witch 1~ manually actuated to extinguish an indicator l~ght. Such an ~nterlock prev~nt~ an acciden~al ch.~nge in price or tare we~ght ~ata, a~ when an operator accidentally bump~ one . . o~ th~ switche~ 17. AnothQr in~erlock may be provided to pr~-ven~ printing a label lf da~a prlnt wheels are no~ properly ~. 8et Up to the correct value, welght and price data. 8till ~..... another interloc~ may pr~vent printing an err~neous label tn the e~ent that either the maxlmum welght capacity of the gcals 11 or the maxi~um valu~ capacity has bsan exceeded.
For convenience, th~ appa~atus 10 18 adaptea for operatlng in several di~fe~ent mod3s. The different mod~e o~
.
.~ operatlon a~fect the manner in which the printer ~1 pr~.nts a ~. .
label. ~h~ data input switches 17 include the mod~e switch -~- whlch permit~ selecting eltber ~ingl~, "dem~nd~ or ~
~cont~nuous" mnde of operatlon ~or prlntins lab~ls in which the ~lu~ 1~ computed for each weigho~ ~rtlcle. In eh- slngla mode of operatlon, the apparatus 10 mu~t b~ manually ac~uat~d . ~. .
~ for each lab~l which 1~ printed. ln the demand mode of opera-~ ~.
: tlon, a n~w label i~ prlnt~d each time a prlnted label 18 . 30 remov~d from the prln~er 21 and the scalo 11 ha~ gono through :., .: motlon - no mot~on cycl- to c~u~o ~ho computatlon o~ n~w valu-.
...
. .
. .~ .
~ !
.
''-''' ' .
- ..... . . " . ; .
. - . . .. .. .
106;2Z93 ~n the continuous mode o~ operation, the pri~ter 21 will con-tinuously print labels all bearing the same weight, price per unit weight and value. The mode switch may further include "price by count" modes o "single", "demand" and "continuous".
In the price by count mode of operation, the printer 21 will print labels bearing a count or factor of the number of pieces in each article or package to be labeled ~ld the total price for this number of pieces. For example, a grocery store may package six oranges or six pears together. If the package price is, for example, six for $1.29, then the label will be printed bearing the legend "$1.29" in the place of the article value and "6/$1.29"
in place of the price per unit weight.
In the following description of an exemplary embodi-ment of the present invention, it is assumed that the automatic zero correction feature will wor~ within a range of -0.005 pounds .. .
and ~0.005 pounds. However, these limits may obviously be changed to any desired value. In addition, an expanded range ;~ switch or button is provided which will allow the zero c~rrecting feature to operate within other weight limits. For example, by operating this expanded range button under certain circumstances, - the automatic zero correcting arrangernent may be employed to correct in the range from 0.105 pounds and 0.095 pounds. However, the arrangement in accordance with this invention is also arranged ; to prevent any operation of the zero correcting arrangement if the indication of the weight on the scale platter or pan exceeds . .
0.6 pounds.
Also, a ready lamp or other indicator is provided ,: . .:
which is turned on when indication from the scale is within :~'.'' +0.002 pounds and -0.002 pounds for a predetermined interval of ~; 30 time. The lamp is employed to indicate that the scale is properly corrected and in condition to weigh another object or -~ commodity. The automatic zero wander correction does not stop ~ at 0.002 pounds, but continues on to be corrected to zero :
~ 12 -. '` ' .
,. .
.
10~i2~93 accuratcly. ~le automatically ope~ated correcting feature operates sufficiently rapid so that correction will al]. be completed prior to the tim~ the ready lamp is turned on and thus prior to the time an object or commodity to be weighed is placed on the platter or pan to be weighed.
It is obvious that the predetermined limits of -0.002 and +0.002 pounds, +0.005 pounds and -0.005 pounds and the , limits o~ 0.6 and -0.6 pound have been ar~itrarily set or selected and that any other set of suitable limits may be selected and provided by obvious minor changes in the control equipment in accordance with the present invention.
Turning now to Figs. 2A through 2J, a flow diagram is shown for an exemplary operating sequence of the apparatus 10 for measuring the weight of an article, computing from the measured weight and a price per unit weight the article value and printing .
an article label. The flow diagram consists of a series of ~ diamonds or rhombuses and rectangles. Each diamond corresponds -~ to a question having either a yes or a no answer which may be obtained by conventional methods. Each rectangular block cor-responds to the performance of a specific function such as causing a label to be printed. The numbers placed in the circles to the top and left of the blocks represent input locations.
For example, an "A2" in a circle on the left of the flow diagram in Fig. 2A represents an input to the second block from the top in sheet A of Fig. 2. The numbers in the circles to the right ', of the blocks in the flow diagram represent an output connected -~
.: .
` to a different location in the flow diagram. For example, the first or uppermost block in Fig. 2A has an output to "El" if .": .
the answer to the question is no. This indicates that if the answer is no, a jump is made to El or the input on the first block in sheet E of Fig. 2.
:, .
.
1~ 293 For conv~nience, Fiy. 2 has been ~eparated into parts A through J. Generally speaking, Fig. 2A covers the basic cycling of the apparatus 10. Upon the occurrence of a predetermined sequence of conditions, the cycle is completed with a print pulse.
Fig. 2B represents the logic of a check of various interlocks for the occurrence of new data. Fig. 2C shows the sequence of opera-tions for the operation of the lock switch which must be pressed when data is changed and the printer 21 is in the "single" mode of operation. Fig. 2D shows the logic for checking the setting ,~
of the service switch which affects the weight display 22 and for checXing for the presence of excess weight and excess value.
Fig. 2E generally re~resents the operation of the scale motion detector. Fig. 2F shows the operation of the "expand" switch `which permits chec~ing the accuracy of scale zero and of the .~ .
au~o-zero capture range expand switch. Fig~ 2G shows the opera-tion of '.he auto-zero correction circuitry, of the price by count logic and of ~he value computation. Fig. 2~ shows the manner iIl which the condition of value, price and weight blanking switches .
are checked and the sequence in which the outputs are actually : 20 blanked.- Fig. 2I shows the manner in which tare weïght is manually ~ntered into the apparatus 10. Fig. 2~ shows the sequenc~
;of operations for transferring weight signals from the ar.alog-to-digital converter to the microcomputer.
, As previously indicated, Fig. 2A shows the basic opera-ting cycle for the apparatus 10. Each new cycle is initiated at the input Al to a block 25. If motion has been present on the output from the scale 11 during the previous cycle of the apparatus 10, a motion flag MOTNF will be set. The motion flag . .
M~TNF may, for example, consist of a bit stored in a memory or the state of a flip-flop or a latch. If the motion flag MOTNF
. .:
is not set, the logic jumps to the El input while if the motion -flag MOT~F is s~t, the logic proceeds to a block 26. The logic .: . .
must proceed through the block 26 before a label can be printed.
: . ~, . .
i2Z93 Thus, the block 25 r~quires a motion - no motion cycle before a label is printed. In the block 26, the presence of a motion flag MOTNF is again checked. If the flag is still present, the cycle again turns to the El input while if the ~lag is not present, the logic proceeds to a block 27 which checks to see if the printer is in a demand or continuous mode of operation as set on a mode switch. If the system is operating in a demand or continuous mode, the logic proceeds to the A5 input, while if it is in a single mode, logic proceeds to a block 28.
In the block 28, a chec~ is made on whether or not the printer 21 is set up to inhibit the recognition of a motion -no motion function if a previously printed label has not been removed from the printer. If the motion detector is not inhibited, logic proceeds to A7 while if it is inhibited by the printer 21, a check is mad-e in block 29 on whether or not a new weight measurement is required by the printer 21 due to a lack of veri-fication in the data supplied to the printer 21. If a reweigh is required, the logic proceeds to A7 while if reweigh is not required, a block 30 checks to see if print data is stored in the printer 21. If print data is stored, the system returns to Al while if print data is not stored, it proceeds to a block 31 which checks on whether or not a "no tare welght" key has been pressed. If the no tare key is pressed, a block 32 checks to see if the price per pound data is equal to ze~o. If the price per pound data is equal to zero, a block 33 outputs a "print"
pulse to the printer 21 ~or printing a label and the cycle returns - to Al. This function is provided to allow printing of labels when the weight is equal to or less than O.1 pound, for testing.
~, ~ If either the no tare key is not pressed or the price . .
per pound is not equal to zero, the system proceeds from the blocks 31 or 32, respectively, to a block 34 which checks to see if the net weight from the scale 11 is greater than 0.1 pound. If the net weight is not greater than 0.1 pound, it is ~- - 15 --- , ,, ~ . - . - , . . .
10~i2293 assumed that ~n articl~ is not present on the ~cale platform 13 and the system returns to Al. If an article greater than one-tenth pound is present on the scale platform 13, a block 35 checks to see if a SET latch or flip-flop is true. If it is true, it indicates that the system interlocks have been broken and the cycle returns to ~l. If SET is not true, a block 36 checks to ; see if the net weight is positive. If the net weight should for any reason be negative, such as when a tare weight is entered into the apparatus lO and a package or article has not yet been placed upon the scale p]atform 13, the cycle returns to Al. If the net weight is positive, a block 37 checks to see if an OVERCAP latch or flip-flop is true. OVERCAP is trued when the weight capacity of the apparatus lO has been exceeded.
For the following description, it will be assumed that the apparatus lO is capable of measuring up to thirty pounds so that OVERCAP will be true if a weight greater than thirty pounds is placed upon the scale platform 13. If OVERCAP ls true, the ` cycle returns to Al. If the capacity of the apparatus lO has ,, .
not been exceeded, a "print" pulse is outputed at a block 38.
From block 38 control is returned to Al. When the control is transferred to Al5, block 39 causes the system to read all external inputs including the mode switch, the tare ~;eight switches, the price switches, the price by count switches, the auto-price input from the printer and any weight input from the scale ll. After the external inputs are read, a bLock 40 checks !' to see if the apparatus lO is in a "price by count" mode. If the apparatus 10 is in the price by count mode, logic proceeds to 33 while if it is not in this mode, a block 41 checks to see if auto-price data has been received from the printer 21. As pre-viously indicated, the auto-price data may be supplied from a commodity plate inserted into the printer 21. If auto price data - is received from the printer 21, a block 42 checks to see if the price data during the last cycle was also auto-price data .
~` . lO~;Z;~93 received from thc printer 21. If not, the system proceeds to B7. If the last price was also from the printer, a block 43 reads and stor~s the auto-price data inputs from the printer 21.
The system then proceeds to Bl.
~urning now to Fig. 2B, the logic is shown for checking the various interlocks From the input Bl, a block 46 checks for correct parity in auto-price data received from the printer.
If there is a parity error, the logic proceeds to B7. If there is no parity error, the logic proceeds to a block 47. If the printer 21 is operating in a manual mode, the diagram in Fig. 2B
is entered through B2, wherein a block 48 checks on whether or not the last cycle was also in the manual mode. If not, the cycle proceeds to B7 while if the last cycle was also manual, the logic also proceeds to the block 47. The block 47 checks on whether or not the price data input has changed. If no change has occurred, a block 49 checks an interlock on the ~, .~, .
printer door_ If the printer door is open, the logic proceeds - to B7 while if it is not open, a check is made by a block 50 on whether or not an auto-zero inhibit signal is received from the printer 21. If no inhibit signal is received, the cycle pro-~ . .
~ ceeds to B8.
.,.
Returning to the block 47, if the price input data has ~- changed, at a block 51 the new price input data is moved to a : 1, price per pound output memory, hereinafter referred to as "P/LB OUT". The cycle then proceeds to a block 52 and an inter-loc~ flag I~F is set. The cycle also proceeds to the block 52 - from the block 50 if an auto-zero inhibit is received from the -~ printer 21. The interlock flag I~TF may consist of the setting of a latch or a flip-flop or a bit stored in a memory. The -presence of the flag indicates the occurrence of an interlock such as a change in the printer mode, the opening of the printer door or the presence of an auto-zero inhibit signal. After the interlock flag I~TF is set at the block 52, a block 53 checks to ~,.', , .
.
; . ~ . . . ~ . . ~ .-- , -`- 10~ 93 see if an "auto~tare" switch has been actuated. If not, the logic proceeds ~o Il for manually entering a tare weight. If the auto-tare switch has been pushed, a block 54 updates the tare weight by storing the current measur~d weight in a TARE memory S and again sets the interlock flag INTF. A block 55 then checks to see if the print mode has changed. If not, the logic proceeds to B12 while if the mode has changed, a block 56 updates a "print mode out" signal which indicates when the printer 21 is in the demand or continuous modes of operation. A check is then made at a block 57 to see if the interlock flag INTF is set. If not, the logic jumps to Cl. If the interlock flag INTF was set, a block 58 clears the interlock flag I~TF and sets an "initialize"
flag INITF. Thus, the initialize flag INITF is set whenever either the price input or the tare weight input has changed. This 15 flag inhibits the printing of a Iabel until the lock switch is manually actuated, thus preventing an erroneous change in the tare weight or price data. After the initializ~ flag INITF is - set, a block 59 trues the SET latch to indicate that the inter-~^ locks have been broken and the system proceeds to C5.
` 20 Fig. 2C shows logic relating to operation of the lock switch which must be actuated when the initialize flag INITF is set. A blocX 62 checks to see if the initialize rlag INITF is set. If not, the cycle jumps to C5. If the initialize flag I~ITF is set, a block 63 checks to see if the mode switch is .
` 25 in the demand or continuous mode. I the mode switch is in ~ either of these modes, the cycle again proceeds to C5. If not, ,`~? a block 64 checks to see if the lock switch is pressed. If not, the cycle proceeds to C5. If the lock switch is pressed, a block 65 clears the initialize flag INITF and clears the SET
30 latch and continues with the C5 input to a block 66. The bloc~ -66 returns the cycle back to either Al or A2, whichever was the original point of origin for arriving to the block 66.
, .
- ' -- 10~2293 The logic of Fig. 2D checks the setting of a service switch which permits isolating price and value errors in printed labels betw~en the printer and the logic unit which calculates and stores this data, and also checks for the presence of either an excessive weight or an excessive value which may cause an error in the output from the apparatus 10. From the D1 input, a block 69 checks to see if the service switch is in a "display price" position. If so, a block 70 transfers the price data stored in the P/LB OUT memory into a WEIGHT OUT memory wherein such price data is displayed on the digital weight display 22.
`~ If the service switch was not in the "display price" position, a block 71 checks to see if the service switch is in the "display value" position. If not, the cycle proceeds to D3 while if it . .
is in this position, the cycle proceeds to a block 72 which causes a transfer of value data stored in a VALUE OUT memory ... .
into the WEIGHT OUT memory for displaying the value data on the digital weight display 22. Thus, if an error is present in the price shown on the printed label and the service switch is in the display price position, a comparison may readily be made : . -~ 20 between the price appearing on the digital weight display 22 and ,~ .
the price appearing on the printed label. If these prices are - not identical, the serviceman will know that the error is due to : a fault in the printer 21. If the data is identical, the service-man will know that the error is caused in the logic unit 15. A
similar check may be made on the computed value.
The D3 input as well as the outputs from the blocks 70 and 72 are applied to a block 73 which tuLns on a "ZERO" light.
~'~r The ZERO light indicates that the scale is properly zeroed to . ~, .
within 1/4 of the least significant displayed weight digit.
A block 74 then outputs all data and the printer mode to the printer 21. Subsequently, a block 75 checks to see if the maximum value capacity of the apparatus 10 has been exceeded.
,,~' ~.
' - 19_ , ~ ' ' 6Z;~93 If the maximum value has been exceeded, a block 76 will set an OVERVALUE: latch or flip-flop or store a bit in a memory location. After the block 76 has set OVERVALUE or if the logic jumped to D7 because the maximum value capacity was not exceeded, a block 77 checks to see if the maximum weight capacity of the scale 11 has been exceeded. If not, the cycle will proceed to C5 where it is returned to either Al or A2. If the maximum capacity of the scale 11 has been exceeded, a block 78 sets an ; OVERCAP latch or flip-flop or stores a bit in a memory location and an OVERCAPACITY flip-flop or latch is set to turn on an indicator light. The cycle then returns through CS to either Al or A2.
In Fig. 2E, a check is made to see if weight data read from the scale ll is legitimate, i.e., no analog-to-digital ` 15 conversion is occurring in the converter 14. If not, a check is made on whether or not a zero expand switch is actuated. If weight data is legitimate, a motion check is made to see if the data has been consistent or st~ady for a predetermined number of cycles.
From an input El, a block 81 checks to see if a Tl ,,.~,:
- flag is set. The Tl flag is set whenever new weight data has been read from the scale ll into the logic unit 15. If the Tl flag is not set, a block 82 checks to see if a clock signal Tl is true. A true Tl represents a time interval during which weight ~- 25 data is not permitted to change. The apparatus 10 may, for example, operate on a 200 millisecond cycle. Tl may be set true for an arbitrary time intervaL, such as true for 60 milli-seconds out of each cycle and false or the remaining 140 milli-seconds. If Tl is true, logic proceeds from the block 82 to --30 E4, while if Tl is not true a block 83 sets the Tl flag and the -logic proceeds to E4. At E4, a block 84 checks to see if a "zero expand" switch is actuated. If not, the logic returns to ~ -Al5 while if the zero expand switch is actuated, a block 85 sets ; - 20 -.;, .
.
lO~;ZZ93 the interlock flaq I~`~'rF and the logic rcturns to Al5. The zero expand switch is usecl for checking the accuracy and adjusting the weight zero Whell no weigh~ is present on the platform 13 on the scale ll. When the zero expand switch is closed, the weight displayed on the digital weight display 22 is shifted by one decimal point. Thus, if the scale normally has a maximum reading of 30.00 pounds, the displayed weight will be shifted over to display X.XXX pounds or to display as low as l/lOOOth of a pound.
If the Tl flag TlF is set when the logic reaches the bloc~ 81, a block 86 checks to see if Tl is true If not, the logic returns to E4. If Tl is true, a bloc~ 87 clears the Tl flag TlF. A block 88 then causes a weight reading to be entered into the logic unit 15. Next block 96 causes the tare timer state to be read out from the tare timer storage space in the ; 15 RAM 187. Then in accordance with block 97, if the count in the :
tare timer is not zero it is redvced by one as indicated in block 97A and the control advances to ~lock 89. If the count recorded in the tare timer is zero the control advances directly `~ to block 89. After the weight is read out and the tare timer ; 20 decremented if required as described above, blocX 89 checks the :~. .
memory or switches for the setting of the motion detector count and the motion detector band. I'he motion detector count is the number of cycles or repetitions which must occur with no motion presen~ before a label i5 printed. For example, switches may .:.j .
-~ 25 be set to establish that the apparatus lO must cycle without .~
motion at least twice or at least three times before a label can ~ be printed. The band is the amount of permissible change during ; a no motion condition. For example, it may be determined that . '.1 .
~ it is-desirable to have a weight reading maintained within plus . ~ .
or minus 0.005 pound for a no motion condition. This results in a range of 0.01 pound for the motion detector regardless of the measured weight. This arrangement eliminates prior art problems in obtaining a uniform motion detector sensitivity for all weight ' ' ' .
.. ,~ -- . .
O~Z293 measurements. T}le prior art optical motion detectors have nothad a uniform sensi~ivity. After the count and band for the motion detector are determined, a block 90 calculates the weight minus the sum o~ the target plus ~he band. If this value is positive, then motion is present. The block 90 also determines the weight minus the sum of the target minus the band. If this sum is negative, then motion also is present. The target is - tiken to be the last weight reading.
If the block 90 calculates that there is motion, then a blocX 91 transfers the logic to Fl while if motion is not pres-ent, a block 92 chec~s to see if a motion flag MOTNF was set during the last cycle of the apparatus 10. If the motion flag is clear, logic proceeds to F2 while if a motion flag is ~resent, a ~` block 93 increments by one a no motion counter. After the coun-ter is incremented, a block 94 compares the total COUJlt with the no motion count determinecl at the block 89. If the contents of the counter is not equal to or greater than this count, the cycle proceeds to F2 while if it is greater than or equal to the count, the motion flag MOT~F is cleared at a block 95. The cycle - 20 then proceeds to F2.
In Fig. 2F, sequence of operations is shown for the operating sequence of the zero expand, the auto-zero capture range expand and the weight overcapacity checX. The Fl input, `~ which is entered if motion is present, is applied to a block 98 which clears the no motion counter and sets the motion flag MOTMF.
After the flag is set, a blocX 99 updates the target and sub-tracts a digital weight of eight pounds. The output from the,., -.-:
~ load cell 12 and the scale 11 preerably is always positive since ., ~ it is in a digital format. Some types of analog-to-digital . "
converters 14, such as a dual slope integrating converter, are more accurate if used in a range wherein they only have a positive output. ~his may be accomplished by offsetting the out-- put from the scale 11 to fall within the range of from 8 pounds .' '': .
. ~ : ..... . .- . -lOf~i~Z93 to 38 pouncls. Thus, the zero is arbitrarily offset by 8 pounds.
The block 99 subtracts an initial weight of eight pounds from the scale readin~ to zero the weight signal when no weight is present on the platter 13. After the eight pounds is subtracted, a block 100 checks to see whether or not the zero expand switch is actuated or true. If the zero expand switch is actuated, a block 101 moves the four least significant digits of the meas-ured weight, or the digits X.XXX pounds, to the WEIG~T OUT memory and clears an AUTO-ZER0 correction counter. Thus, the digital weight display 22 will now show the true zero weight setting of ~-' the apparatus 10 to within one-tenth of a normal weight gradua-tion. Since the auto-zero operation is inhibited, a block 102 ~` turns off the ZERO light and logic jumps to Dl.
'~ If the zero expand switeh is not closed, sequence pro- ;
ceeds from the block 100 to a ~]oc~ 103 which checks to see if an ' ' "auto-zero capture range expand" switch is closed. If not, `~
" sequence proceeds to F6. ~ormally, the weight reading used by the apparatus 10 for calculating a value is automatically zeroed -'~ ' if the weight from the scale 11 is less than 0.005 pound when no ;?~ ' ;i 20 weight is present on the platter'13. However, when the auto-,~ zero capture range expand switch is closed, a block:':104 will check to determine if the weight recorded in the raw weight ; register is equal to or less than 0.6 pound.
~` If the weight reading is greater than 0.6 pound, the ' 25 sequence jumps to G7. If it is less, block 106 causes this weight, up to 0.6 pound, to be recorded in the zero error correc-''; tion register in the AUT0-ZERO register. The weight i5 then :
-~ corrected at a block 105 by the contents of the AUT0-ZER0 register . . .
:'.'!':',' and moved to the WEIGHT OUT memory.
.;..,~
,~j 30 After the æero is corrected, a check is made to see '- if the maximum weight capacity of the apparatus 10 has been .:.
exceeded. Such maximum capacity has arbitrarily been set a~
: '. .
-. , .
lO~;ZZ93 thirty pouncls which is ~enerally sufficient for apparatus o~
the type described when u,ed in the meat department o~ a ~rocery store~ A block 107 checks to see if the corrected weight stored in the WEIGI-~ OUT memory is greater than thirty pounds. If it is, a block 10~ sets an OVERC~P latch, 1ip-flop or similar memory device. If the maximum weight is not exceeded, a bloc~
109 clears OVE~CAP. Blocks 108 and 109 are connected to a block 110 which checks to see i~ a motion flag ~lOTNF is present. If not, logic proceeds to Gl, while if ~otion is present, a block 111 checks to see if SET is true. If SET is true, the logic proceeds to G7 while if it is not true, a block 112 blanks the weight output and the logic proceeds to Dl.
Fig, 2G shows the sequence of operations of the auto-zero correction circuitry, of the price by count mode of opera-tion and of the value co~putation if a mode other than price Dycount is selected. A correction is automatically made to errors in the scale zero when the absolute value of the previously corrected weight is less than 0.005 pound. A total correction may be made up to 0.6 pcund in 0.001 pound increments, or in other suitable incremental values. Furthermore, gross zero corrections of up to 0.6 pound may be made by use of the zero capt~re range expand switch which stores correction waisht up to 0.6 pound to be stored in an AUTO-ZERO memory.
The Gl input to a block 115 is compared to see if the ~5 absolute value of the corrected weight is less than or equal to 0.005 poun~. If not, a block 116 clears the 1/4 graduation 1ag to turn off a lisht which indicates that the weight reading used by the logic unit 15 for computing a value is within 1/4 of one graduation displayed on the digital weight display 22. From the ~,~ 30 block 116, sequence of operations proceeds to G7, skipping any '. c changes in the contents or correction factors stored in an AUTO-2ERO correction register. If the absolute value of the corrected - weight is less than or equal to 0.005 pound, a block 117 checks 10~2'~93 to 5ee if the absol~te welght is l~ss than or equal to 0.002 pound. If not, a block 118 sets the zero count register to twelve which in t~rn causes the 1/4 graduation indicator light to be turned off later in the cycle.
If th~ absolute value of the corrected weight is less than 0.002 pound, a block 120 indicates that the count stored in the zero count register is read out of this register but also ; remains stored ln this register. In accordance with block 119, : , .
the zero count xegister is checked to determine if zero is recorded in this register. If the count is zero, ~lock 132 checks the weight to determine if the weight is zero. If it is, the sequence jumps to G7. If the weight is not zero, the seque~ce con~inues to b].ock 121. If the count in the zero -~; count register is not zero, block 114 indicates that the count . ~: . . .
s~ 15 in this register is incremented by o~e. Thereafter, the sequence goes to block 132 and then as described.
After the 1/4 graduation flag is set at the block 120, ` or after the logic has jumped to G5, a block 121 chec~s to see :.:
~ if the total auto-zero correction factor stored in t~e AUTO-ZERO
!!;
, . i register is less than or equal to 0.6 pound, the maximum permis-sible correction factor. If the correction fac~or is greater than or equal to 0.6 pound, na change is made in the correction factor and the logic jumps to G7, while if it is less than 0.6 pound the .. . . .
factor stored in AUTO-ZERO is modified by 0.001 pound at a block ;,:
122. After the sequence of operations jumps to G7 or after the AUTO-ZERO correction factor is modified in the block 122, a block .;
123 causes the tare weight stored in the TARE memory to be sub-~ .
tracted from the corrected scale weight and the four most signi-ficant weight digits are moved to WEIGHT OUT. m us, it will be apparent that an auto-zero correction is made regardless of the fact that a tare weight may have previously been entered into the :
~ apparatus 10.
~` c ~ - 25 -: , . . .
- lO~iZ293 After ~eight da~a is stored in WEIGHT OUT, a block 124 checks to see i~ the printer mode switch has been set to a price by count mode of operation. If not, the logic jumps to G12 and subsequently a value is computed. If the apparatus 10 is in a price by count mode, a bloc~ 125 causes a factor or count received from the price by count switch to be stored in the P/LB OUT memory for supplying to the printer. A block 126 then checks to see if the price by count factor has changed from the last cycle of the apparatus 10. If a change has occurred, a jump is made to A15 and all external inputs are again read.
If no change has occurred, a block 127 causes the price per pound data entered through the price switches to be stored in the VALUE OUT memory. If the logic has jumped to G12 and price per pound data from the switches or from the printer is present, the price per pound data is moved to the P/LB OUT memory location at a block 128 and zeros are forced into a register which stores the price by count factor read from the input switches 17. A
. block 129 then computes a value by multiplying the contents of ;~a" ' the P/LB OUT memory by the contents of the WEIGHT OUT memory and stores the answer in the VALUE OUT memory. After tXe value is computed and stored, a block 130 compares this value with $100, the maximum value capacity of the apparatus 10. This maximum value has been arbitrarily selected to limit the number of print wheels required by the printer since measuring apparatus of this type, when used for labeling meat in the meat department of a .. .~
groc~ry store, will normally not be required to exceed $100. If the computed value is greater than $100, a block 131 writes zeros in the VALUE OUT memory and the logic jumps to C5 while if the maximum permissible value has not been exceeded, the logic jumps :.' to ~1.
., ' , ' , - 2~ -' .
`` lO~;Z293 In some ins~ances, an operator of the apparatus 10 may wish to print a label which does not include all three of the price, the w~ight and the value. The weight, ~or example, is bl~nked whenever the apparatus 10 is ope~ating in a price by S count mode. Or, it may be desired to print a label bearing only the weight. This may be desirable in a wholesale operation where the wholesale purchaser will reprice the article for retail sales.
There~ore, the apparatus 10 may be provided with manual switches which permit selectively blanking the price, the weight and the value from the printed label. The logic for performing these ~ functions is shown in Fig. 2H.
The Hl input is connected to a block 134 which checks ~,~ to see if a "blank price" switch has been actuated. If the .~ .
switch is actuated, a block 135 causes blanks or numbers which index the print wheels to blank spaces to be stored in the ... .
;i P/LB OUT memory location. If the blank price switch is not ';f ~-~ actuated, or after blanks have been stored in the P/LB OUT memory, ,, a block 136 checks to see if a "blank weight" switch has been actuated. If the blank weight switch is actuated, a block 137 ,' ' A
'a 20 checks to see if the apparatus 10 is operating in a price by , count mode. If the apparatus 10 is in the price by count mode, ' the weight will aiready have been blanked and logic jumps to H6 ., ~, .
while if it is not in the price by count mode, a block 138 -'- blanks the WEIGHT 0UT memory. I~ the blank weight switch was :, .~ . . .
~ 25 not actuated, a block 139 checks to see if the scale is in the ',.f~ ' price by count mode. If not, logic jumps to H6 while if it is ..
-~ in this mode, the block 138 will blank the WEIGHT OUT memory.
.~ .
~ I the WEIGHT 0UT memory has been blanked or the logic has . .
jumped to H6, a block 140 checks to see if a "blank value"
. .
; 30 swQtch has been actuated and, if not, the logic jumps t~ Dl . .-; .
while i it is actuated, a block 141 blanks the VALUE ~UT ~emory and the logic then jumps to Dl. -.... . .
.~
.' : . . .
. . .
. '~ .
-: , . . .. ..
. .: , ~ .~ . . :
., . . ... . . . ~:
--` 10f~2Z93 Fig. 2I shows the manner in which the tare weight is manually entered into the apparatus 10. The tare weight, which is stored in the TARE memory, is subtracted from the measured gross article weight for obtaining a net weight used in com-puting a value. A check is made at a block 144 to see if a"no tare" switch has been pushed. If the no tare switch is pushed, the TARE memory is cleared and the interlock flag INTF
is set at a block 145 and the logic then jumps to B10. If the no tare switch was not pushed when the logic was at the block 1~4, a block 146 checks to see if any other tare switch is pushed.
If not, the logic jumps to B10 while if a tare switch is pushed, the block 147 checks to see if a three second time interval has ; elapsed since the last tare switch was pushed. If three seconds , has elapsed, a block 148 clears the TARE memory and, subsequently, ' 15 the tare weight represented by the pushed tare switch is stored in the TARE memory and the interlock flag I~TF is set. If the ;: :
three second interval has no~ elapsed when the block 147 is ~-~ reached, the contents of the TARE memory are updated by adding , the tare value represented by the pushed tare switch to the ?, 20 contents of the TARE memory. Thus, the tare weight stored in the TARE memory will then represent the accumulation of tare weights from two tare switches. For example, an operator may push a 0.10 pound tare switch and a 0.06 pound tare switch within a three second time interval and the total tare weight stored :."
in the TARE memory will equal 0.16 pound. From the block 149, the logic returns to B10. The three second time interval was selected on the basis that most people can select and push two switches in this interval. Of course, a different time interval may be used.
. . .
Fig. 2J shows an exemplary sub-routine or sequence of ` operations for causing weight signals received from the analog-:',.', :
~ .
~ - 28 -~, , ... . ~ . .
-`` 10~ 93 to-digital conv~rter to be entered in the w~ight re~isters of the microproc~ssor employed in the present invention. The sub-routine or sequence of operations sho~ in Fig. 2J are repre-sented in Fig. ~E by block 88.
S The remaining drawinss show details of logic and cir-cuitry o an exemplary embodiment of the invention for per~orming the functions described in the description of Fig. 2. ~Irning first to Fig. 3, the input switches 17 including the price, printer mode and tare weight data input switches are shown in detail. Price by count data, price per unit weigh~ data, tare weight data and printer mode data is all supplied to the input/
output buf~er and memory lG in the control unlt 15 on nine switch buses 155 which represent the digits one through nine. It will be apparent that no bus is needed for a zero entry which corres-. ~ .
ponds to the absence of a signal on any o~ the nine buses 155.
When the apparatus 10 is operated in a price by c~ nt mode, a count or factor is entered through a price by count switch 156.
The price by count switch 156 is as a two-wafer or two-pole . .
rotary switch having eleven contacts for selectively entering a count two through a count twelve. It will be appreciated that : .
a count of one would not normally be used nor is there normally :. .
a need for a count greater than twelve, although this may be accomplis~ed by providing additional contacts on the switch 156.
A count of two through a count of nine is entered into the control :
~ 25 unit lS by setting the switch 156 and strobing or grounding a :
strobe line 157 while a count of ten, eleven or twelve is . .
entered by setting the switch 156 and strobing a strobe line 158.
When the price by count switch 156 is set to a factor between two and nine, a signal on the strobe line lS7 causes an appropriate o~tput on ane of the nine switch buses 155. Similarly, when a , , ~
; ' .... .
:
' -- 10~2Z93 signal is appli~d on the strobe line 158 and the price by count switch 156 is set to a factor of ten, eleven or twelve, a signal will also appear on one of the switch buses 155.
The apparatus 10 is designed for calculating an article value from price per unit weight data having three significant digits or from $0~01 up to $9.99 per pound. The price per unit weight data is manually entered through three switches 159-161.
Each of the price switches 159-161 is a ten-contact rotary switch.
A contact representing zero is not connected while contacts on the switches representing the digits one through nine are con-nected to corresponding ones of the nine switch buses 155. The switch 159 is used for entering pennies, or the least significant digit of the price data. A strobe line 162 is connected for providing a signal on the common terminal of the penny switch 159.
When a signal is applied on the strobe line 162, the penny price data is entered on the connected one of the switch buses 155. The ; switch 160 is provided for entering dimes price data when a signal is received on a dime strobe line 163. Simila~ly, the switch 161 is connected for supplying dollar price data when a signal is 20 received on a strobe line 164. Thus, price data up to a maximum of $9.99 per pound may be entered through the three price switches . , .
159- 61. Of course, it will be apparent that the num~er of price switches may be varied to meet other requirements for the apparatus ;-10 and the monetary units represented by the price switches may be changed to the local currency where the apparatus 10 is used.
,:
Tare weight is entered into the logic unit 15 by means of nine momentary contact tare switches 165 which enter tare `~ weight in l/lOOth pound increments from 0.01 pound to 0.09 pound ~ and a switch 166 which enters a tare weight of 0.10 pound. A
:.~
`~' 30 signal is periodically applied by the logic unit 15 on a strobe line 167 which is connected to the l/lOOth pound tare switches s 165. These switches 165 are normally open push button switches.
-~ In the event that one of the switches 165 is pushed when a signal , .
'' ' .,, . ' -.
: .. . : .
:-~ - - : . . ..
10~ 93 appears on the strobe line 167, an output appears on the associated one o the switch buses 155. A strobe line 168 is oon-nected to the 0.10 pound tare switch 166, also a push button switch, and to an "auto-tare" switch 170 and a "no tare" switch 171. In the event that any of ~he switches 166, 170 or 171 is pushed when a signal appears on the strobe line 168, an output will appear on an associated one of the switch buses 155.
The apparatus 10 is designed for operation wi-th a key-board tare weight ranging from a min~mum of 0.01 pound to a maximum of 0.19 pound. This is accomplished by providing a timing circuit in the control unit 15 ~hich is initiated whenever one of the switches 165 or 166 is actuated. If one of the switches 165 is actuated and within the measured time interval the switch 166 is actuated, the tare weights for the two switches are summed. Similarly, if the switch 166 is actuated first and within the measured time interval one of the switches 165 is actuated, the total of the two tare weights is again summed.
~ If two of the tare switches 165 are actuated within the time -:. . .
interval, only the most recent value is entered. The time ` 20 interval may, for example, be about three seconds which should afford sufficient time for an operator to select and actuate :;
` two of the tare switches 165 and 166. If a greater time elapses, only the most recent are weight entered through a switch 165 or 166 is accepted by the control unit 15.
, A printer mode switch 172 also supplies data ovèr the switch buses 155. The printer mode ~witch 172 is a rotary switch having a common terminal connected to a printer mode strobe 173.
When a signal is received over the strobe 173, an output appears ....
` on one of the switch buses 155, depending upon the setting of ; 30 the mode switch 172. In an exemplary embodiment of the invention, the printer mode switch permits selecting between a "single"
mode, ~ "demand" mode, a "continuous" mode, a "price by count-single" mode, a "price by count-demand" mode and a "price by ~O~;Z293 count-continuous" mode. In eith~r of the single modes of opera-tion, a sinqle label is printed each time an article is weighed.
The printer is actuated each time the scale goes through a motion -no motion cycle, a value is computed and the previous label has -- S been removed fron~ the printer 21. In the demand modes of opera-tion, labels are printed as previous ones are removed from the printer. In the continuous modes of operation, the printer will continuously print a sexies o~ labels having the same weight, price per unit weight and value until printing is manually 10 terminated.
The switches 17 also include an "auto-price" switch 174. When price information is to be supplied automatically from ; a commodity plate in the printer, the auto-price switch 174 is ` actuated. ~en the switch 174 is actuatedt an indicator light 175 is automatically illuminated to annunciate this fact. A
switch 176 is provided for expanding the capture range of the auto-zero circuitry from a normal range of zero plus or minus O.OOS pound to up to plus or minus 0.6 pound. The switch 176 is a momentary push button switch. A switch 177 is provided for inhibiting operation of the auto-zero circuitry to permit govern-. ., ment inspectors to checX the weighing accuracy of the apparatus 10. Finally, a switch 178 is provided for expanding-the weight ;
reading shown on the digital weight display 22. rhe zero expand switch is normally used by maintenance people in calibrating the ' 25 zero weight setting for the apparatus 10. When the zero expand r` ' switch 178 is actuated, the displayed weight which is normally ill a format of XX.X2{ pounds is shifted over ~y one digit to dis-pla~r a weight reading of X.XXX pounds. This permits calibrating ~e scale zero to within i/lOOOth of a pound. ~inally, the ..
switches 17 include a "loc~" switch 179. Any time there is a change in data ent~red into the apparatus 10 other than weight data, the apparatu~ 10 moves from what is normally referred to as a #readyn state to a "set" state to indic~te that an interlock , ~ ~ . .. ... , , ......... . , " , . . .. . .
Z~293 has been broken. The lock switch 179 must be manually actuated to return the apparatus lO to the xeady state. Thus, an operator cannot accidentally bump one of the tare switches 165 and 166 or the price switches 159-161 after the apparatus 10 is in the ready state and prlnt erroneous labels.
Fig. 3A shows an exemplary arrangement for multiplexing the output decimal digits from the analog-to-digital converter of the above-identified Williams, Jr. et al patent so that this infor-mation may be transmitted over four data conductors or leads.
; 10 In addition, four address leads are required to indicate which of the decimal digits is being transmitted over the four common leads at any particular instant or interval of time.
- While both the above-identified patents to Williams, Jr. ~ -et al and the present exemplary embodiment of the invention show five decimal dlgits, it is obvious that any suitable number of decimal digits may be employed merely by increasing the number of cou~terstages and latches and related equipment.
The arrangeme~t shown in Fig. 3A is controlled by a source of control signals 350. This source of signals may be an oscillator or any other source of control or clock signals which may be derived from the analog-to-digital converter such as a ;~ cloc~ source of this converter which would be divided down to a much slower pulse or clock rate.
The clock source 350 is further divided by five by equip-ment 351 which may be of any suitable form. The output of thisdividing circuit as shown in Fig. 3A co~prises a binary output ., having conductors l, 2 and 4. This is the weight of the signals output from the fre~uency divider 351. These signals are then applied to the multiplexing interface circuits 35Z, 353, 354 an~
355 which may be all the same. These devices are arranged to switch the five input leads shown to the one output lead under control of the input binary address signals on conductors l, 2 and 4. Thus, when the conductors 1, 2 and 4 are all zero, the ., ~ ' ' ' ' ' .
, - - - . . . . . .
.
- lO~Z~93 input leads Al, A2, ~4 ?~d A8 ~re connected respectively to WT. DATA 1, WT. D~TA 2, WT. DATA 4 and WT. DATA 8 leads. When one signal is applied to the conductor 1 input address conductor and the other two address conductors are zero, then the Bl, B2, B4 and B8 input leads are colmected to the respective t~r. DATA 1 lead, the W~. DATA 2, WT. DATA 4 and WT. DATA 8 conductors, respectively. In a similar manner, the other input conductors of these switching devices are connected to the output weight data leads.
The input leads Al, A2, Aa and A8 are co~nected to the four binary output leads from the first decade of latches 136 of the above-identified patent to Williams, Jr. et al. Slmilarly, the input conductors Bl, B2, B4 and B8 are connected to the four binary output leads from the second decade of latches 137. The ` 15 remaining input leads are similarly coImected to the corresponding binary leads of the other output decade lat~hes 138? 139 and l40 o~ the above~identiried Williams, Jr. et al patent.
-- . .
~ In addition, the output binar~r coded signals over con-. . .
ductors 1, 2 and 4 from the divider 351 are connected to a transla-ting circuit arra~gement 356 such that when all zeros are applied on the leads 1, 2 and 4, zero will be also applied to the disit sele~tor leads DIG SEL B, DIG SEL C, DIG SEL D A~D DIG SEL E thus indicating that the first decade signals appear on the weight data leads WT. DATA ~, WT. DATA 2, WT. DAT~ 4 and WT. DATA 8.
` 25 When a one is applied to the num~er one lead, a one or voltage signal will be appiied to the DIG SEL B conductor thus indicating that the B decade signal will be transmitted over the W~ DATA 1, - WT. DATA 2, WT. DATA 4 and WT. DATA 8 leads. Similarly, a one signal will be applied to the digit selector leads C, D and E
when the corresponding weight data signal of these decimal digits is applied to the WT. ~ATA 1, WT, DATA 2, WT. DATA 4 and WT. DATA
8 leads.
The switching devices for switching any one of the input - , ~
.
. . :-10~i2293 lines to an output line are similar to the eight-line to one-line decoders 198, 199, 200, 202 of Fig. 4B except that the last three of the eight-line conductors are not connected. Similarly, the dividing arrangements 351 and the translating arrangement 356 are well-known and commercially available.
Datails of an exemplary control unit 15 are shown in Fig. 4. Fig. 4 consists of Fig. 4A, Fig. 4B and Fig. 4C which are arranged as shown on the first sheet of the drawings. In an exemp-lary embodiment of the invention the control unit 15 is a micro-- 10 computer 185 which functions to compute the value of each weighed article and to control the operating sequence of the apparatus 10.
The microcomputer 185, for example, may be of a type commercially available in integrated circuits and in the exemplary em~odiment described herein the microcomputer 185 comprises a Model MCS-4 Microcomputer Set manufactursd by Intel Corporation of Santa i ~ , . .-~; Clara, California. Such a microcomputer employed in the exemplary embodiment of the present invention described herein includes a ~ central processing unit (CPU) 186, a random access memory (RAM) ~ -`~ 187 and five read only mernories (ROM) 188-192. In the exemplary arrangement described herein, the CPU 186 is an Intel Type 4004 integrated circuit, the R~M 187 is an Intel Type 4002 integrated circuit and the ROM's 188-192 are Intel Type 4001 integrated circuits. However, it will be appreciated that other commercially available integrated circuit microcomputers or other types of commercially available computers will operate in accordance with the principles described herein.
~ hese various CPU, R~M and ROM units are interconnected in the manner shown in Fig. 4A, as required in order for these ~nits to COQperate one with another as required by the circuit con-figurations of these standard commercially available units. Theconnections are clearly described in the Users Nanual for the ~CS-4 Microcomputer Set published by the Intel Corporation. Briefly, the `: .
- ROM's, RAM and the CPU are all interconnected in parallel by the :~
~"' lO~Z93 :
data bus system shown at the top of Fig. 4A. These connections are in accordance with the requirements of the computer a~ com-mercially available. These connections permit the cooperation between the ROM' 9, the ~AM and the CPU. Thus, the CPU will trans-mit an address over the bus system which defines a storage spacein one of the ROM's, for example. The ROM having this storage space has internal control circuitry which will respond to this address and in turn cause information stored at the designated address to be transmitted back over the data bus system to the CPU
which then responds to this information in the usual manner.
The storage portion of the RAM, the ROM's and the sequence controlling portion of the CPU comprise the sequence controller 19 shown in Fig. 1. Arithmetic unit 18 of Fig. 1 comprises the ari~h-metic unit of the CPU 186. The data registers 20 also comprise 15 registers in the CPU 186 and the registers in the RAM 187. Input/
- output ports of the ROM's 188-192 and the RAM 187 and the related equipment comprise the input/output buffer and memory 16 shown in Fig. 1.
The read only memory units referred to herein as ROM's 20 188-192 store fixed data and also store a series of control orders or instructions for controlling the operating sequence of the entire apparatus 10. These orders or instructions, as is well understood ; by persons of ordinary skill in the programming and computer art, control the central processing unit CPU 186. These orders or in-' 25 structions are readily obtained by persons of ordinary skill in the programming and computer art from the flow charts of Fig. 2A-2J by ~` translation of the flow charts into computer language as required by the particular microcomputer and set forth in the instructions in`the users manual for the respective computer. A program listing for performing the operations specified in Figs. 2A-2J is attached as an Appendix to this specification. The program in the Appendix is in the language required for an Intel MCS-4 microcomputer, as specified in the Users Manual for the MCS-4 Microcomputer Set.
- . :. : .- . ,, . ~.
:.- , . . .. . ... .
- lOf~Z293 Fig. 7 shows the storage areas of the RAM 187 and the storage areas assigned to various registers ~or controlling input and output data, as well as process data, so that the data con- -trol apparatus will operate to automatically correct the zero indication of the scale in accordance with the present invention, The control orders or instructions control the CPU 186 so that it will obtain the necessary fixed information from the ROM's 188-192 as well as the required control orders and instruc-tions and obtain the data from the ~ 187 and from the various input devices so that the correct weight of each weighed article will be accurately determined an'd then, after various conditions are met, its value computed, and after the value is computed and , various other conditions are met, causes a label to be printed.
- The data used by the microcomputer 185 consists of data from the switch buses 155, data from the scale 11, data from the printer 21 and data from various interlocks. Four address out-puts 193 from the RAM 187 are connected through inverters 194 to four address buses 195. Address information and other data -' supplied from the RAM 187 to the address buses 195 determines the data supplied to the microcomputer 185 and the data supplied from the controI unit 15 to the printer 21. External data from, for exam~le, the switches 17, is supplied to the microcomputer 185 on four input data buses 196 connected to the ROM 188. At the proper time interval, the external input data on the buses 196 passes through the ROM 188 onto four input/output data buses ,: .
~ 197 connected in parallel with the five ROM's 188-192, the RAM
,~
187 and the CPU 186.
The external input data is multiplexed onto the buses ' 196 by means of four 8-line to l-line d'ecoders 198-201 and a '; 30 decimal-to-binary coded decimal (BCD) decoder 202. Each of the s four 8-line to l-line decoders 198-201 has a single output con-~` nected to a different one of the external input data buses 196 connected to the ROM 188. Three of the four data addre-~s buses lO~Z293 195 from the ~AM 187 are connected in parallel to the four decoders 198-201 ~or selectiny th~ inputs to the decoders 198-201 which are connected simultaneously to the buses 196. Thus, corresponding ones of the eight inputs to the four decoders 198-201 are connected to the outputs for such decoders. The zero : inputs for each of the four decoders 158-201 are connected to the four outputs from the decimal-to-BCD decoder 202. When a zero address is supplied to the data select inputs of the decoders :~ 198-201, the nine switch buses 155 are connected in series through the decimal-to-BCD decoder 202 and the line zero inputs of the decoders 198-201 to the four data input buses 196 to the micro-computer 185.
While the switch buses 155 are connected to the microcomputer 185, signals are sequentially applied to the price 15 switch strobes 162-164, the price by count strobes 157 and 158, the tare switch strobes 167 and 168 and the mode switch strobe 173 for entering this data into the microcomputer 185. The ~ strobe signals are applied on these strobe lines from a BCD-to-`~ decimal decoder 203. The ROM l9G has four data outputs Z04 con-. , `- 20 nected respectively through four inverters 205 to four address . buses 206. The address buses 206 supply address data to the BCD-to-decimal decoder 203 for sequentially scanning the ten outputs :`~ which strobe the price switch strobes 162-164, the price by count -: strobes 157 and 158, the tare switch strobes 167 and 168 and the mode switch strobe 113.
- When price per unit weight data is received in an . automatic mode from a commodity plate in the prnter 21, such . ~:
: data is received over four lines 210-213. The four lines 210-213 ~re connected, respectively to the line one inputs on the :---; 30 8-line to l-line decoders 198-201. Four weight digit selection : inputs 214-217 are connected to the line two inputs to the .
; decoders 198-201, respectively, and four weight data lines 218-. ~ . .
- 221 are connected, respectively, to the line three inputs to the --:
. ' ~ .
lO~ZZ93 decoders 198-201. The data appearing on the digit selection inputs 21~-217 identifi~s which weight digit is present on the weight data lin~s 218-2?.1. The weight data appearing on the lines 218-221 at any given time is a single digit of weight in a BCD format. If five digits of weight are to be received from the scale 11, the fi.ve weight digits are sequentially read ~y alternately receiving the digit selection data on the lines 214-217 and the actual weight data on the lines 218-221.
Interlock in~ormation is supplied to the microcomputer 185 by means of the line four through line six inputs of the decoders 198-200 and the line four th~ough line seven inputs of the decoder 201. The line four input to the decoder 198 receives data from the lock switch 179, the line five input is connected to a motion detector inhibit output from a manual print switch in the printer 21 and the line six input receives a "rewelgh" signal from the prin~er 21. The line four input to the decoder 199 is connected to a price contact on a service switch which, when actuated, connects the line four input to ground. When the service switch is actuated, price data is shifted into a weight ~ 20 memory for displaying on the digital weight display 22. ~he line five input to the decoder 199 is connected to a lead 222 which receives a signal when a label is printed, as will be dis-cussed in greater detail below. The line six input to the decoder 199 is connected to receive an acknowledgment signal from the printer 21 when print data for a label has been stored.
T~e line four input to the decoder 200 is connected to - a value contact on the service switch which, when act~ated, . .~ .
causes the computed value to be shown on the dlgital weight dis-play 22. The line five input to the decoder 200 is connected to the au*o-price switch 174 and through an amplifier 223 to the auto-price indicator 175. When the apparatus 10 is operated with an auto-price received from the printer 21, a parity check is ~; made to verify the accuracy of the price per unit weight data.
.
' : ~
. . .
10t;'~293 An auto-price parity signal i~ applied on a line 224 to the line six input to the decod~r 200. The printer door has an interlock switch connected to the line four input to the decoder 201. Thi5 interlock preven~s accidental actuation of the printer while an operator has the door open for changing commodity plates or for maintenance. The line five input to the decoder 201 is connected to the zero expand switch 178 (~ig. 3), the line six input is connected to the Tl clock (not shown) which provides B pulse -~ . signal to indicate the time interval during which weight data may be read from the scale 11. As previously indicated in the discu~sion o~ Fig. 2, the ~1 clock may have a 200 millisecond cycle, comprised of 60 milliseconds in which weight data may be read from the scale 11 and 140 milliseconds in which new weight data is measured by the scale 11. Finally, the line seven input to the decoder 201 is connected to the capture range expand ` switch 176.
- The line seven inputs to the decoders 198-200 are connected to three switches 225-227, respectively. One of the .. . ~ . .
- switches 225-227 is closed to establish the number of sequential "`.'~`! 2G hits or no motion cycles of the motion detector before a label .
is printed. The switches may, for example, indicate that only ; a single hit is required if the switch 225 is closed, two hits are required if the switch 226 is closed and three hits are re~uired if the switch 227 is closed.
.
Output data from the microcomputer 185 is stored within a random access memory 228. Weight, price and computed value data is supplied to the RAM 228 from the RAM 187 in the micro-computer 185 over the buses 195. Address in~ormation for storing . ., :
data in the RAM 228 is supplied from the RO~ 190 over the buses -;~, 30 206. The buses 206 are connected through an address selector 229 to address inputs on the RAM 228~ The ROM 189 is connected over .~ a line 230 to an input to the address salector 229 for connecting the ~uses 206 to the RAM 228 for supplying a data storage or ~ ~ ~
.. . . .
10~2293 write address or or connecting four buse~ 231 to the R~M 228 for supplying a readout address. Thus, when weight data or price data is supplied to the microcomputer 185, such data is also stored in the RAM 228 and when a value is computed, the computed S value is also stored in the ~AM 228. The ROM 189 enables writing or storing data in the RAM 228 by applying a "write enable~' signal through an amplifier 236 to a line 237. The RAM 228 has four output buses 232 which are connected in parallel for supply-ing data to the printer 21 and to the weight display 22. The output buses 232 are also connected through three exclusive OR
gates 233-235 for generating a parity bit from the output data.
A BCD signal is generated in the printer corresponding to the setting of each print wheel in the printer 21. A parity bit generated from the setting of each print wheel is compared with 15 the corresponding parity bit from the gates 233-235 for verifying the accuracy of the printer setup. If there is a lack of parity, a "reweigh" signal is applied from the printer 21 to the line ~- six input to the decoder 198.
As indicated above, an output address is supplied to ; 20 the RAM 228 over the readout address buses 231. The output .` address buses 231 are also connected to supply an output data - address to the weight display 22 and are connected througn ampli-fiers 240 to supply address data on outputs 240' to the printer 21. An address is applied.on the buses 231 from a four bit `~ 25 address counter 241. A clock signal is applied from a clock :...
.. source (not shown) to a decade counter 242. One output of the counter 242 is applied through an inverter 243 for counting up .~ the four bit address counter 241. A different output from the decade counter 242 is applied through an inverter 244 for supplying a clock signal to the printer 21.
, s- ` ' ~ . -An output 245 from the RO~I 189 in the microcomputer 185 is connecte~ through an inverter 246 to a line 247 which enables quad bistable latches 248. When the latches 248 are enabled, data present on the address and data buses 195 from the RAM 187 S is set into the latches 248. One output 249 from the latches 248 is a memory update request. The memory update request line 249 is connected to a NAND gate 250. The NAND gate 250 has an output co~nected through an AND gate 251 to an enable input on the four bit address counter 241. The address selection line 230 con-nected from the ROM 189 is also connected to a second input of the A~D gate 251. A signal is applied on the line 230 to the AND gate 251 at the same time the readout address lines 231 are connected to the RAM 228. If the output of the ~A~D gate 250 i5 high at the same time, the A~D gate 251 will enable the ~our bit .; , .
address counter 241 for supplying a sequence of addresses for ., .i .
reading data from the RAM 228. The ~A~D gate 250 also has four -~ inputs connected to the address buses from the counter 241 and ~ a printer off input from the printer which is high when the , ~ .
printer is off. Thus, when the bistable latches 248 are set to apply a signal on the memory update request line 249 or when the printer is off, the address counter 241 will cycle whenever a signal is received from the ROM 189 on the line 230. Once a . . ~ .
cycle is started by a signal on either the memory update request line 249 or by a pulse on the printer off line, the address counter 241 will continue to cycle until all of the address buses ~ -; 231 go to a logic zero.
v The bistable latches 248 also include an output 252 which indicates when the weight reading is below zero. The output 252 is connected through an inverter 253 to supply a `,i 30 MINUS sign output 254 to the printer 21 and also to the weight :: -"
~ display 22. Still another output 255 from the latches 248 is :, ~ -connected through an inverter 256 to an output 257 which , ~ .
;~ illuminates an out-of-range indicator lamp. A fourth output 258 .
-- ` 10~j2Z93 from the latches 248 is connect~d through a N~ND gate 259 to illuminate a ready indicator lamp. A "print stored" input 260 from the printer 21 is connected through an inverter 261 to a second input o~ the NAND gate 259. ~he output 258 from the latches 248 is also connected through an inverter 262 to a line 263 which supplies a SET signal to the printer. The line 263 is also connected through an amplifier 264 for illuminating a SET
indicator lamp. The printer also supplies the REWEIGH signal on a line 265 through an amplifier 266 to illuminate a "weigh again"
indicator lamp, a "taXe label" signal over a line 267 through an amplifier 268 to a take label indicator lamp and an "add label"
signal over a line 269 through an amplifier 270 to an add label indicator lamp. An indicator is also provided for indicating when the appaxatus 10 is operating within the weight zero limit or within a predetermined fraction of a weight graduation of zero.
. ~ .
~ This has previously been referred to as the 1/4 graduation lamp.
:, .
~ The ROM 192 has a single output 271 which is connected through an - inverter 272 to a line 273. The line 273 is connected through an ~ inverter 274 for energizing the zero limit indicator lamp.
- 20 During normal operation of the microcomputer 185, the ""~`!, ROM 189 applies a periodic pulse on the line 247 for resetting ~" the bistable latches 248. This pulse will appear once each time the microcomputer 185 goes through a complete program cycle.
..... .
In typical operation of the microcomputer 185, the pulse will appear at about 0.2 second intervals. However, it is possible for a noise pulse or some other disturbance to cause the cen~ral processing unit 186 to end up at an incorrect or nonexistent address. In such event, the microcomputer 185 becames "hung up"
and is in effect "dead". When this condition occurs, the micro-computer 185 must be restarted before a label can be printed.Timing circuitry is pro~ided for automatically restarting the microcomputer 185 in the event that two sequential periodic pulses are missing from the line 247.
.: .
:~- . :-.. , . .. , ---- 10~i~293 ~ c lil~ 247 i 9 conncct~d through an inverter 281, a currcllt limiting resistor 282 and a diode 283 to the input of a thresnold or level. detecto.r 284. The input of the threshold detector 284 is also connected through a high value resistor 285 S to a voltage source and through a capacitor 286 to ground. When the voltage on the input of the threshold detector 284 is below a predetermined level, the threshold detector 284 will have a hlgh or positive output. ~Iowever, if the input of the threshold ~: detector 284 exceeds a predetermined voltage level, the output of the threshold detector 284 will go negative. The capacitor 285 is charged at a relatively slow.rate through the resistor 285.
Each time a cycle pulse appears OIl the line 247, the inverter 281 will have a low output for rapidly discharging the capacitor 286 :.
througih the diode 283 and the current limiting resistor 282. Under norma]. operation of the microcornputer 185, the cycle pulses on ~ the line 247 maintain the charge on the capacitor 286 below the . threshold level of the detector 284. However, in the event of -:.
two sequential cycle pulses ~ailing to appear on the line 247, the capacitor 286 will become suffici.ently charged as to cause 20 the threshold detector 284 to change states. - ~`
When the output of the threshold detector 284 goes .. negative, a capacitor 28l is.discharged through a diode 288 and a current limiting resistor 289. A decrease in the voltage on ~ .
the capacitor 287 causes a second threshold detector 290.to change :
from a negative to a positive output which is applied through a :' resistor 291. to the base of a transistor 292. The transistor 2g2 ;
`I then switches states of conduction for applying a recycle or restart signal on a line 293 connected in parallel t~ the CPU
~` 186, the RAM 187 and the ROM's 188-192 in the microcomputer 185.
A resistor 294 and a diode 295 are connected in series.between the input and the output of the threshold detector 284. After . the threshold level is reached and the output of the detector 284 goes negative, the capacitor 286 is discharged through the ` - 44 - .
.. . . . . .
iZ293 resis~or 294 ~d the dio~ 295 until the output from the detector again becomes positlve. The capacitor 287 is then charged through a resistor 296, thereby causing the outputs of the det~ctor 290 and the transistor 292 to change. If two more cycle pulses are absent from the line 247, the capacitor 286 ; will again become charged sufficiently for the outputs of the detectors 284 and 290 and the transistor 292 to change states, applying another clear and restart signal to the microcomputer 185.
Fig. 7 is a diagram showing one of many possible memory location arrangements in the random access memory RAM 187 of the exemplary arrangement of the apparatus of the present invention.
As indicated in Fig. 7, the RAM is provided with four memory re~ister areas. Each of these memory register areas is arranged to store foùr binary digit words which in the exemplary embodiment described herein usually are coded to represent a decimal digit. Each memory area 16 is arranged to sto~e 16 of ` these four binary digit numbers or other information. The register areas are selected by address designated "4 HIGH" above each one of the areas. Thus, the address of the first area is 0000. The address for the other three memory register areas is shown above each of these register areas. In additi~n, each of the four binary digits forming a word or number in each of the areas is assigned an address, which address is shown to the left of the first memory area. As indicated, the address for the memory areas comprise the first four high numbers, or binary digits of the address, while the address of the individual words or numbers within each area is designated by an address designated "4 LOW". Thus, at least certain of the same address symbols may be employed to designate both memory areas and also the words within the memory areas. Thus, two addresses are distinguished ~--by their location in the addresses as is well known by persons of .
ordinary skill in the art of microcomputer operation.
~ 10~i2~93 The RAM 187 also includes four status registers shown in the lower part of Fig. 7. Each of the status registers has an address similar to the corresponding memory register area as indicated above each of the status registers. The rectangles in the status registers represent a storage space for a single binary - digit or bi~. Thus, each of the status registers may store four four-bit binary words. In addition, each of the bits o each ` o the words may be employed to store a binary bit which is independent of the other binary bits of a particular word at the particular address. In other words, as indicated, the zero correction sign bit, 714, is used to store the sign of the æero correction. This bit is stored in this bit space 'ndependently i-of the information stored in the other three bits spaces of the ~:
`~ last word of the first status reg~ster.
As indicated in Fig. 7, the first five word spaces 710 ~ in the first register space are employed to store the five binary - ~
-~ coded decimal digits Gf the raw weight received from the weighing `
-~` apparatus and are designated raw register. The next five four-bit register word spaces 735 are employed to store the five 20 decimal digits of the motion target weight. The next word, or register space 726, is employed to store the count or number of - hits employed to determine whether or not there is motion upon the platter of the scale. The last five word spaces 711 are employed as a zero correction register and store the five BCD
digits employed to correct the zero indication of the scale.
The other register spaces are designated to indicate the manner ~i in which the particular register spaces are employed.
-~ The various status register spaces shown at the bottom of Fig. 7 are similarly designated with the name of the bit or bit~ employed to record the various information required to '.-'~ ' , provide the various features of the present invention, as ... .
i ~~ described herein.
. ' ................................................. . .
..~
, - - :. : , ,, .- -: :
- ' 106~g3 OPE~TION OF THE S~STEM
__. __ As described in the above-identified patent to william~, Jr. et al, the sensor control1ed by the load cell 12 of the scale provides an output voltage which represents the load on the load cell, which in turn is a function of the load on the scale. This output volta~e is then amplified and processed so as to remove an unwanted direct current component and to reduce or remove unwanted vaxiations in this voltage so that the voltage accurately repre-sents the load on the load cell and the load on the scale. This analog voltage is then employed to control an analog/digital converter 14.
Also the analog-to-digital converter employed in the exemplary system described herein, in addition to generating a digital signal representing the weight on the scale to be dis-played also generates a digital signal representing a fraction ofthe weight represented by the least significant digit of the displayed weight. In the exemplary embodiment described herein, it is assumed that this additional signal represents tenths of , the weight represented by the least signiflcant digit displayed.
However, this additional digital signal may represent any other suitable or desirable fraction of the weight represented by the least significant digit displayed.
:,:
The analog-to-digital converter in effect samples this corrected analog voltage at repeatedly recurring instants of time.
These sample voltages are then employed to control the output of '"A the digital converter. Thus the output of the digital converter is a digital signal which accurately represents the load on the load cell and thus the load on the scale. In the exemplary . , .
arrangement described in the above-identified patent to Williams, Jr. et al, and in the exemplary arrangement described herein, the : . .
analog-to-digital converter requires a cycle of about 200 : ; :
.~' .. - . : .
-` 106Z293 milliseconds. This cycle is thus repeated approximately five times a second. Near the end of each cycle of operation of the analog-to-digital convertin~ apparatus, this apparatus transferq digital signals representing the analog weight input to a set S of latches. These latches then maintain these digital signals for a predetermined interval of time. During a portion of this interval of time, the analog-to-digital convexter also applies an output signal to the Tl lead. This Tl signal is obtained from device 100 of Figure 2 of the above-identified Williams, Jr. et al patent. Thus during the time the output signal is applied to the Tl conductor, output from the latches remains constant so that ~ -the input to the multiplex switching devices 352, 353, 354 and 355 of Fig. 3A remains constant. Consequently, the output signals applied in sequence to the weight data conductors WT.
; 15 DATA l, WT. DAT~ 2, WT. DATA 4 and WT. DATA 8 represent the .,,; , `~ respective decimal digits of the output weight from the analog-to-digital converter. The frequency or speed of the clock pulses ~, from source 350 are such that the equipment of Fig. 3A will operate through a plurality of cycles during the time an out~ut signal is applied to the Tl conductor. In other words, each of the binary representations of the five decimal digits rapresenting the weight will be applied in succession to the output weight data conductors WT. DATA 1, WT. DATA 2, WT. DATA 4 and WT. DATA 8 a plurality of times during the time an output signal is applied `r 25 to the Tl conductor.
C~ncurrently with the application of the respective ' 'l "''J decimal digits to the weight data lines WT. DATA 1, WT. DATA 2, , WT. DATA 4 and WT. DATA 8, corresponding signals are applied either to none or to one of the data selecting conductors B, ; '~
C, D and E indicating the speci~ic of the five decimal digit .~, .
.
. . .
~ ., .
~ - 48 - -10~ 93 signals applied to the weight: da~a conductors WT. ~ATA 1, WT.
DATA 2, WT. ~TA 4 and ~T. DATA 8 at each of the instant~ of time.
Assume now that power has been applied to the system so that the analog~to-digital converter will start to develop an analog conversion and provide a digita~ output siynal after an interval of time. At the same time, the control equipment 15 will pe~form an initializing operation iIl the usual manner and cause zeros to be stored in each a~d every register space in the RAM 187. Thus, zeros will be stored in all of the register spaces of this RAM 187 shown in Fig. 7.
After zeros are stored in all of the register spaces, the control of the system is transferred to the main program P.l - shown in Fig. 2A. Block 25 causes the memory space 718 of Fig.
~ 15 7 to be tested t~ determine whether a one or a zero is recorded ; in this space. This space, which is des-gnated "MOT~F", represents a motion ~lag and under the assumed conditions, a zero will be recorded in this space with the result that the ~-- program is now transferred to El of Fig. 2E. As a result, the ~0 system then tests the storage space TlF 717 to determine whether ~` a one or zero is stored in this space. Under the assumed con- -~` ditions, a zero will be stored in this storage spot. This storage space is designated a Tl flag. Since a zero is stored - in this storage space, the program proceeds from box 81 to box 82 where the condi~ion of the Tl clock lead (see the botto~ of Fig.
,,~ .
- 4B) is tested to determine whether oile signal or a zero signal is present on this lead.
, .
, ~nder the assumed conditions, a zero will be present - - on this lead so that the program proceeds to blocX 83. With -:~
th~ zero present on this lead, the analog-to-digital converter . ~ .
.' ' ' .
.
:. ~-. .-- , . ~ ;
10~;~293 indicateq that a i~atisfactory output signal is not present on the output leads from the analog-to-digital converter.
In block 83 the computer is directed to change the information stored in the storage bit space 717 to a one, indicating that the analog-to-digital converter is in the process of providing a valid output digital signal, but that such signal is not present at this time on the output leads from the analog-to-digital converter.
From block 83 the control then goes to block 84 where ` 10 the zero expand switch is tested. A flag or bit stored in a -~ status register bit space 719 indicates the setting of the zero ; expand switch. Since this switch is assumed to be off, the zero expand is not true and the control is thus transferred to A15 of Fig. 2A at which time the control equLpment successively reads all of the various external inputs and stores their con-.
dition in the third one of the storage registers having an ` address 0010 of Fig. 7. After all of these switches have been ;~ tested and their condition recorded in ,he corresponding regis-ter spaces assigned to them, the control then proceeds to block 20 40 where the price by count mode switch is tested. under ; assumed conditions, this switch will be conditioned so that price by count is not the mode of operation. Consequently, con-trol is then transferred to block 41.
Again, assuming this system is not operating in the 25 auto price mode, a zero will be stored in the auto price bit storage location in the status register 0001 and, as a result, ? the control of the program is transferred to block 48 of Fig. 2B
,: .,i via transfer B2. As a result, block 48 tests the status register storage space 738 designated auto price in the status register ~ 30 0001. Assuming that the last cycle was not auto price and that .,'. ' .
"' .
.~' ~' ' . ...
~ .
._ . . . .
`-` lO~Z293 a ~oro }~t i~ ator~d ~n t:hl~ ro~i~ter indicu~ing that the la~c cyclo wa~ o P. n!.anual ~ric~ ~n/;ry, tho con~rol i~ tran~erred fror~ bloc~c 4a t~ block 47. Bloc3~ 47 ~et;~rmines wh~ther or not the price input has c~hang~3d.
Thua, block ~17 compares ~he lnformatlon ~u~t record0d ln t~ ~torage E3~aces SW-.OP through ~w-.Po with the pr~Yious price ou~put reg~tered in the outpu~c pric~ r~gister 739 in th~
reg~ st~r 0~ nder the as~um~d condition~, the pric~s may or may not be the ~am~. If the manu~l sw~tch~ are all 3et on zero, o then the~e prices w~ll be th~ same an~l the prlc~ will not have changed so far as the control ~ipment i~ conce~ned. ~9 a reoult, the control goes to bloc~k 49 of Fiy. 2B where a ~;afety switch on the printer door io checked, ~incs th~e will be closed, ~:
~ control then goe9 to block S0 wheræ ~h~ condition of an auto .: 15 zero inhibit ~witch is te3ted. If thio ~witch i5 operated, it i~ desirable to di~able to the auto zero correction operatlons - -a~ de~cribed here$n.
~ Assuming that the a~to zero inh$biting switch is of~, : then the control i~ ~ran~ferred to blocX 53 over the txansfer B8. BlocX 53 te~ts the auto tar~ switch.
~nder the agsumed conditions, the information ~tored ln . the storage spa¢e SW-.T in the ~torage rogister 0010 lndlcates that the AUT0-TARE switch i9 not pushed w~h the rcsult that the program now transfers to block 144 via transfer Il o~ Yig. 2I.
- 25 Block 144 cau~e~ the computer to te~t the otorage -. are~s SW-.T ~nd SW-.0~ and if nons of the tare swltches ha~ been oper~ted, the program 1~ tr~nffferred to block 145 whlch causes the tare regl~ter area 720 of P$g~ 7 to bo all returned to zero, - or zoroe agai~ recorded ln ~oa under ~e assum~d condltlons.
. .~ .
30 ~ addltion, a on~ i5 record~d ln the S2~TF Gtatus registo~ ~pace 736 o~ t~lO ~tatus reglstor 0010. Thon th~ control i8 tr~n~-~lrr~tl to blo~c 5S vla BlQ o~ rlg. 2B.
.~. ' .. - . .
. . -2~93 Block 55 causes the computer to compare the printer mode recorded in space 722 of register 0010 with the recordings in the status register bits 723 and 724. Since it is assumed herein that the printer mode will be the manual mode, these registers will not have changed so the operation will be trans-ferred to bloc~ 57 via transfer B12. In block 57, the condition ; of the interloc~ed flag i~ the status ~it register 736 is inter-rogated and as pointed out above, thi~ flag has been set to a . one so that control then goes to block 58 where the interloc}c flag is changed from one to zero and the initializ~d flag I~ITF
stored in space 727 is set to a one. Next, the set bit in space 737 of the status registe~ 0011 is set and the control transfer-red to block 66 via C5. Since this cycle of operations started from block 25, block 66 causes the computer to transfer control lS back to block 25 via transfer Al.
-~ Since the motion flag is not set, that is, since a ~, zero is still stored in the status register storage space 718, ~' the control will be transferred to block 81 via transfer El.
..
-~i At this time, the block 81 causes the computer to again test the . ,;~
TlF flag, that is, the TlF storage space 717. During the previous - cycle, as described above, a one was stored in this block indicating that TlF is set. Consequently, at this time the con-~ trol will be transferred to bloc~ 86, instead of 82, as described - in the previous cycle. However, under the assumed conditions, ~ 25 the signal on the Tl clock lead is still zero so that control -- will be now transferred to block 84 via the transfer E4. There-after, block 84 tests the zero expand switch which, as assumed . .
to be unoperated, so that control will then be transferred to bloc~ 39 via transfer A15. Thereafter the remainder of the . , 30 second cycle is substantially the same as described abave assuming that none of the various keys or switches have been actuated.
';' :
.
- ~2 -. ,''~ . .
. .
l(l~iZ~93 At the end of the second cycle, control will be trans-ferred to the block 25 via Al transfer in the manner described above and each succeeding cycle of the main program will be repeated in accordance with the above description of the second S cycle so long as the signal from the analog-to-digital converter on the Tl clock lead remains zero. During each of these cycles, ~he TlF or Tl flag signal is set in a one state by a one being stored in the storage space 717 and a zero signal remains on the Tl clock lead from the analog-to-digital converter.
NO MOTION DETECTION
Assume now that during some one of the above-described cycles of the main program, the analog-to-digital conver.er 14 ` completes a conversion and supplies digital output signals to the control equipment 15. Consequently, the analog-to-digital con-verter 14 will also apply a one signal to the Tl clock lead. As a result, when a control is transferred to the block 86 during - the next main program cycle, as described above, the Tl lead will test one or true so that the control is now transfer~ed to block ~ 87 where the TlF or Tl flag is cleared. In other words, a zero '~'7 20 is now stored in the TlF status register space 717 instead of a one - Thereafter, the control goes to block 88 where the weight output signals from the analog converter 14 are read into the raw weight register 710 of Fig. 7.
Fig. 2J shows a~flow chart of an exempIary sub-routine for entering weight signals from the analog-to-digital converter in the raw weight register 710 of Fig. 7.
As described above when the analog-to-digital converter .:
-~ is in condition for transferring digital signals to the raw weight register 710, an output signal is applied by the analog- -to-digital converter to the Tl lead. As a result the control sequence proceeds from block 86 through block 87 to block 88 as ~t, described above. Within block 88 the control is transferred to a block 370. This bloc~ indicates that the RO register within '' . ' , ' :
. ~
. . .. . . . . .
lO~iZZ93 the CPU unit is set to eleven. The Pl register is set to ~ero and the R3 register also set to zero. These registers beiny located within the CPU unit.
The R0 register is employed to indicate when all of the digits of the weight are transferred to the raw weight register 710. The Pl register is employed to direct the digits to the proper register spaces within the raw weight register.
The ~3 register is employed to select the desired decimal digit to be transferred from the analog-to-digital converter to the ~ 10 raw weight register 710. Thus initially with these registers ; set as described above, the block 371 to which the control is transferred from block 370 first reads the R3 register and finds a zero recorded therein. Block 370 then translates this zero to `j indicate that the zero should be read from each one of the leads DIG SEL B, DIG SEL C, DIG SEL D and DIG SEL E. The translation - order or sequence is designated KBP which translates the binary digit in the R3 register into a one-out-of-four code. ~ext - -block 372 tests the digit select leads B, C, D and E and if any ~- signal condition on these leads other than zero on all of them . ......................................................... .
is found, the control is tr~nsferred back to transfer point J2 and the above cycle repeated. The small loop including blocks 371 and 372 are then repeated until zero is found on all four :
of the digit select leads DIG SE~ B, DIG SEL C, DIG SEL D and DIG SEL E.
... .
When a zero is found on all of these leads, the control .. .. .
- is then transferred to the block 373 where the value of this digit is read into the raw weight register area selected by the ,~ Pl register in the CPU unit. This will be the first digit space ,:, .
in the raw weight register 710 since a zero was previously set ` 30 in the Pl register in the CPU unit.
.
~ " ' .
, ;''''' . - 54 -.. ~ - - - - -lO~iZ293 After the fir~t digit is thus transferred to the raw weight register 710, the zero in the R3 register in the CPU unit is again translated by the KBP operations into a one-out-of-four code and the signals on the digit select conductors DIG SEL B, 5 DIG SEL C, DIG SEL D and DIG SEL E compared with this code. If under the asswned conditions zeros are found on all of these leads, thus corresponding to the zero in regis-ter R3 after being --~ translated to the one-out-of-four code, the control is advanced to bloc~ 376.
If on the other hand the si~nals on the weight data - conductors WT. DATA 1, WT. DATA 2, WT. DATA 4 and WT. DATA 8 - change during the time the weight ls being read into the raw weight register 710, then when the signals on the digit select leads DIG SEL B, DIG SEL C, DIG SEL D and DIG SEL E are again compared with the setting of the R3 register by block 375 these signals will have changed so that the control is then trans-~erred back to transfer point Jl and thus to bloc~ 370 instead of block 376. Under these assumed conditions wherein the signals on the B, C, D and E digit select conductors change during the ~ , reading in of a digit, it is assurned that the digit transferred ` to the raw weight register will be in error. Consequently, the transfer operations are started over again and proceed as described above. ~amely, the control will be first transferred to block 370 where the registers R0, Pl and R3 are set as ; .-.
r,~
l 25 described above. Then the control is advanced to block 371 and .-the setting of the R3 register translated to a one-out-of-fG~r ; code and again compared with the B, C, D and E select conductors.
This cycle is then repeated until the signals on these conductors are the same as the translated setting of the R3 register at which ~ime the digit on the weight data conductors 1, 2, 4 and 8 is again transferred to the raw weight register.
Assume that the signals on these digit select conductors do not change so that when they are again tested by the bloc~ 375 -" - , ' - .
.: .. .. :
lO~i~Z93 they will again correspond to the translated setting of the R3 register. Consequently, the control is advanced to block 376 where the setting o~ these three registers Pl, R3 ~ld ~o are all incremented by one. The control then advances to block 377 where the number stored in the R0 register is tested. Under the assumed conditions this number is now twelve (eleven plus one). Since this num~er is n~t zero, the control is trans~erred to the J2 transfer point and thus to block 371 where the above cycles of operation are repeated until the second of the decimal digits of the raw weight are transferred from the analog-to-digital converte~
to the raw weight register. The control is then again trans-ferred to block 376. Assuming that the si~nals on the B, C, D
.
and E digit select conductors have not been changed during the recording of the value of the second digit in accordance with block 376, ',he registers Pl, R3 and R0 are again incremented so that the next or number three digit will be transmitted ~rom the ::;
interface equipment of Fig. 3A to the raw weight registe_ 710.
. After the fifth digit has been thus selected and trans-ferred to the raw weight register 710, the R0 register in the CPU
unit will have recorded in it fifteen. This is incremented by s the sub-routine of block 376. As a result, the setting of this R0 register will now be zero. Since this is a four digit binary register when the register is increlnented with fifteen stored in - it, it is restored to zero. With the result that the control is now transferred from reading the weight to the blcck 89 of Fig. 2E.
From block 88 the control sequence advances through blocks~96 and 97 and at times through block 97A which blocks are employed to advance the tare timer in a well-known manner.
Briefly, the block 96 causes the count stored in the tare timer space 72B to be read out. Then bloc~ 97 determines if the ; count read out is zero. If it is zero the control sequence advances to block 89. If the count read out is not zero then the - ~6 -1(~ 93 control sequence adv~lces to block 97A where one is subtracted from the count read out and the new count restored in the tare timer storage spaces 728.
Next, in ~lock 90, the computer determines whether or not there has been motion or a change in weight on the scale platform. The arrangement, in accordance with the exemplary embodiment of this invention, is arran~ed so that if the weight ;~ changes or is less than a predetermined amount, that is within a prdetermined band, it is assumed that there is no motion of the platform scale. If, on the other hand, a weight c~ange exceeds the predetermined band, then it is assumed that there is motion of a scale platform. In accordance with the present invention, the bandwid-th may be predetermined to any desired value, which ~ value is stored in the pre-assigned storage spaces in one of the - 15 ROM's. -Under the assumed conditions, zeros will be stored in ;.~ the motion target weight register 735. Assume now that the band is .003 pound, plus or minus, and that a weight of .004 pound is ~; read into the raw weight register 710 from the analog-to-digital :
i~ 20 converter 14 durlng this cycle of the control equipment 15. Then ~ .
"rl in accordance with block 90, the zero weight from the motion target weight register 735 is subtracted from the weight in the .
raw weight register 710 and then the band .003 subtracted from ~; the difference which leaves +.001. Since the final difference is ...
;i 25 positive, it indicates that motion is present. ~ext, the weight .. ..
. in the target weight register is subtracted from the weight in the ~ raw weight register and the band of .003 pound added to the dif-- ference, and since this sum is not negative, it does not indicate -motion. However, motion was indicated by the first calculation.
30 Thereafter, in response to the motion indication from block 90, block 91 causes the program to transfer to block 98 via the Fl . . .
transfer. 810ck 98 first clears the no motion or hit counter 726 (i.e. causes all zeros to be stored in this counter space) and .
' ' ' ' ~ ' ' ' '. . ~ ! ` '. ~ . ' lO~iZ293 sets the motion flag ~lOTNF. That i.s, it causes a one to be stored in the s~atus register 718. Then block 99 causes the weight in the motlon target weight register 735 to be changed to the .004 pound recorded in the raw weight register. The S weight of .004 pound remains recorded in the raw weight register 710 at this time. Next, an initial weight of 8 pounds representiny the weight of the scale platter on the load cell is subtracted.
- The program then proceeds through '310cks lO0 where zero expand switch is tested and found not to be operated. At block 103 the zero range expand switch is tested and found not to be operated, so the program then ju~ps to block 105 via trans-fer F6 where the weight recorded in the raw weight register 710 is corre~ted by the auto zero weight stored in the zero correc-tion register 11, which is zero at this time under the assumed condition. The program then proceeds to block 107 where the control equipment determines that the weight on the platter is not greater than 30 pounds. Consequently, the control then advances to block 109 where a zero is recorded in the over capacity status register space 725.
Next, the control equipment 15 is advanced to the ... .
blo~Jk 110 where the motion flag is tested. That is, the status register space 718 is read out and since a one is recorded in this space, the program then advances to block 111 where the one recorded in the set status register space 737 is tested.
-Since a one is assumed to be stored in this space, the program is then transferred to G7 so that the block 123 subtracts the tare weight in the register 720 from the weight in the raw weight ; register 710, causes round off operation to be performed and restores the thus corrected weight in the raw weight register and moves the four most significant digits from the raw weight register 710 to the weight out register 712.
, . .
.: .
, - , : : . :
106Z'~93 Next, the prograM adv~u~ces through block-~ 124 transfer G12, blocks 128 and 129, 130 and 131 and transfer C5 to block 66.
Since this cycle of operation of the control equipment 15 started from block 25, as described above, the block 66 now causes the program to be transferred back over transfer Al to block 25 and another cycle of the control equipment 15 is initiated.
At this time the motion flag MOTNF is set, i.e. the status register space 718 has a one stored in it as described above, so the control sequence advances to block 26 instead of being transferred to block 81 via transfer El.
In block 26, the status of the MOTNF status register -space 718 is again tested and since a "1" is recorded in this space, this flag is not clear; consequently, the program is transferred by transfer El to block 81.
At this time the TlF flag is not set. In other words, a zero was recorded in the status register space 717 on the last cycle of the control equipment 15~ Consequently the program now :, .
proceeds to block 82 where the condition of the Tl clock lead ~`
, 20 from the analog-to-digital converter is tested. At this time it is assumed that a "1" signal is on this lead wit~ the result that the program now transfers over the E4 transfer to block 84.
; Since the zero expand switch is not operated, this zero expand is not true wlth the result that the program i5 transferred over transfer A15 to block 39. The remainder of this cycle of the ` control equipment 15 then is as described above through bloc~s 40, 41 transfer B2 to blocks 48, 47, 49, 50, 52, 53 transfer Il .: .: . . .
to block 144, then block 146 and transfer B10 to block 55. From block 55, control is transferred to block 57 over transfer B12 and then through block 57 transfer Cl to block 62, transfer C5 :.,=
to block 66.
: , .. ~
~ ~;9 - , :
: ' - ' .
.. . ..
Since thi~ c~cle was initiated throuyh bloc~ 26, block 66 now returns the control to block 2~ over transfer A2 and the above cycle of operations then repeated. This cycle of operation is then continuously repeated so long as a "1" signal is applied to the Tl clock lead by the ana]og-to-digital con-verter.
~ ext, when the analog-to-digital converter rernoves the "1" signal from the Tl clock lead, the program during the next cycle of the control equipment 15 is subsequently transferred to blocks 81 and 82 in the m~nner described above, the Tl clock lead will not be true, in other words it will test "0" so the program is then advanced to block 83 w~ere the Tl flag is again set; that is, the "1'l is recorded in the TlF storage space 717 in the status registers. Thereafter, the above cycles of opera-tion of the control equipment will continue as described aboveinitially except that the block 66 of Fig. 2C will returr. the . .
control to bl~ck 26 over the A2 transfer since the cycle started from this block instead of block 25 as described initially.
By the use of the TlF flag and the testing of the Tl ; 20 clock control lead as described above, the output from the analog-to-digital converter is transferred to the control equip-ment only once during each of the 200 millisecond cycles of the analog-to-digital converter 14. This transfer occurs in the next succeeding cycle of the control equipment after the "1"
-signal is applied to the T1 clock contr~l lead. Thereafter the nl" signal has to be removed fro~ this lead and re-applied by the -analog-to-digital converter 14 before a subsequent weight will be trans~erred from the analog-to-digital converter to the control equipment 15.
Since the control equipment 15 operates in the above-described manner for the various cycles, when weight information is not transferred from the analog-to-digital converter, ~he operation of the control equipment 15 during such cycles will '- ' :"
10~i2;~93 r be repeated. Instead the operation during only those cycles during which weight information is transmitted from the analog-to-digital convertex to the control equipment lS will be des-cribed. However, it is to be understood that control equipment 15 advances through numerous of these cycles in the manner des-cribed above between each of these cycles during which weight information is read out from the analog-to-digital converter and stored in the raw weight register 710.
Assume now on the next weighing cycle, that is the - 10 next time a weight is received from the analog-to-digital con-`~ verter and stored in the raw weight register 710, the weight stored in this register will not have ch~nged but will be .004 pound. Collsequently when the calculations at block 90 have performed in the sequence as described above, the calculations will indicate that no motion is present. ~o motion would also . ., be present if the weight received from the analog-to-digital converter does not vary more than .003 pound from the .004 pound previously received from the register.
, ` Under these assumed conditions with tha calculations performed in accordance with block 90 indicating no motion, block 91 will then cause the control to be advanced to block 92 when the motion flag MOT~F is read out and checked. This time the motion flag will not be zero since a "1" was previously stored in the status register space 718 and has not been changed. As a - 25 result, control is advanced to block 93 where the no motion ` counter or hit counter 726 of Fig. 7 is incremented by one.
Under the assumed condition, "0" has been previously stored in - this counter so the counter will now indicate a count of "1".
Control is then advanced to block 94 where the count in this counter 726 is read out and since it is less than some predeter-m~ned value, the count will not be greater than this value with . .the result that the control is transferred via F2 to block 99 and ; the remaining portion of the cycle repeated as described above.
.."
. :: . , . - . .: .
- ,:
.
10~;2;~3 On the n~xt cycle duriny which weight indication is again received from the analog-to-digital converter in the manner described above, i~ no motion is still determined by block 90, then the hit counter 726 will again be incrementcd and have a count of 2. Thus each cycle during which no motion is present, this counter is incremented by "1". If, however, during any of these cycles the calculations of block 90 indLcate that motion is present, then block 91 will transfer the control to block 98 via transfer Fl at which time the hit counter 726 is cleared, i.e. zeros are stored in the counter spaces, 'and the motion flag 718 is again set to 1; in other words, a "1" is written over the "1" already in this storage register space.
After the predetermined number of no motion indications have been obtained from calculations of block 90 and the control advanced through blocks 91, 92, 93 to 94, it will be determlned that the counter is in excess of the required number of counts.
-~` Thus, to obtain a no motion indication, it is not only necessary that the scale remain within a fixed band indication - of weights, but also that it remain in this band for a predeter-mined interval of time. This interval of time can be predeter-~ mined within increments of .200 of a second, the cycle period o~
`~ an analog-to-digital converter. Assuming that five such incre-ments are required thus requiring that the weight indication remain within .003 pound for one second when the control is transferred to block 94 and a count of five stored in the counter 726, block 94 will advance control to block 95 where the motion flag MOT~F is cleared. In other words, a "0" is now .
~ recorded in status register space 718.
.,,-: .
~hereafter the control is transferred to blocX 99 via tr~nsfer F2 and then advanced through the blocks 99, 100, 103, transfer F6 to block 105, block 107, block 109 and to block ll0.
''' . ~
.~
- '' ':
- -10~ 3 In block 110, the motion flag is again tested andsince a "0" is now stored in the status regi~ter 718, the con-trol is trclnsferred to block 115 over the transfer Gl and thereafter the control is transferred as described hereinafter under the heading of "Automatic zero Correction". On the next .
: cycle of the control equipment 15, after the no motion flag is ; cleared as described, control is returned to the block 26. In - accordance with this block, motion flag is read out and tested and since it is clear, control is advanced to block 27 where it is determined whether the scale is arranged to operate in the :, `' demand mode or continuous mode. Under the assumed conditions, the scale is arranged to operate in the manual mode and not in ::-` the demand or continuous mode so that the control continues to :` a block 28. At the block 28, a check is made to see if a . ~
"motion detector inhibit" switch is closed to disable the motion ... detector portion of the apparatus 15. It is assumed that the : switch is not closed and the control continues to block 29.
,: ,. .
.; Block 29 determines that a reweigh is not necessary at this time .,. ~, .
~ so control is transferred to block 30. In accordance with block . . .
,. 20 30, the control equipment under the assumed conditions will : ^ ~
s. determine that print data is not stored so the control sequence :
~ advances to block 31. Block 31 determines that the no tare key :
iS not pressed so that control is advanced to block 34. If the weight is greater than 0.1 pound then the control is advanced to . 25 block 35 where the set status register space 737 is tested. This : space 737 is assumed to be true 50 that the control is then . ~
-` transferred back to block 25 via transfer Al. If the weight as : assumed is not greater than 0.1 pound then block 34 causes the control to be transferred back to block 25 via transfer Al. ~n ;' 30 either case the above-described cycle then repeats starting with -;- block 25 for each of the various cycles describe~ 90 long as the ~otion~flag is not set; that is so long as zero remains recorded ... .
in the status register 718.
. - 63 -~,. . .. .... . .
, ~ . : . .
10~;2293 If thc weight is greater than 0.1 pound, the set i5 not true, the weigh~ is not minus, and is not over the capacity of the scale, then the control sequence advances through blocks 34, 35, 36 and 37 to block 38. Block 38 causes an output print pulse which causes the weight to be printed. Then the sequence returns to block 25 via transfer Al. Thereafter, the above-described sequences are repeated.
AUTOMATIC ZERO CORRECTIO~
Assume now that either when the scale is first turned on or that after the previous object has been weighed and removed from the scale, the scale has not returned accurately to zero. Assume, for example, that the scale has returned to 00.0004. Also assume ~hat zeros are entered in the zero correc-~ 15 tion register 711 and after the various operations refe.rred to - above, have been completed, 00.004 pound is entered in the raw weight register 710. A "1" will be registered in the weight sign register 715 and "1" in the zerb correction sign register `. 714. - ~
. ~
' 20 The one in the sign registers indicate that the sign of the weight or zero correction is plus and zeros entered in :-~ . these registers represent a ~egative sign or weight indication.
: The manner in which the various signs are determined and entered ~: into the respective registers will be apparent from the following ~ 25 description.
`. Thus, on the first cycle of the control equipment 15 -. after the previous weight has been removed from the scale and !'' the scale returned to idle condition or the power turned on, : .
00.004 will be entered into the raw weight register 710 and a .. 30 "1" indicating a plus will be entered in the weight sign register ~- - space 715. ~ext during this same cycle of operation of the . control unit 15, the weight in the zero correction register 711 : . . .
- - is subtracted (block 105 Fig. 2F) from the weight in the raw :. ' .
.
' . ' :
lO~Z293 yllt registcr and the differenc~ is then re-entered in the raw weight r~gister 710. Under these a~sumed conditions, zero will be subtracted ~rom the 00.004 recorded in the raw weight regi~ter and the difference 00.004 rerecorded in the raw weight register 710.
~` Next the automatic zero correction limit of 00.005 pound is subtracted (block 115 Fig. 2G) from the 00.004 pound in the raw weight register and since the 00.004 pound is less, the weight indication of the scale is within the automatic zero correcting range so the control equipment will then follow addi-,., ~
tional steps required to automatically correct the oo.ooa pound.
~ext the 00.004 pound in the raw weight register is compared with the zero or 1/4 graduation range of 00.002 pound (block 117 Fig. 2G).
Both this comparison and the pr~vious comparison may be made in any desired manner such as, for example, by means of -.., ~ threshold circuits of any well known and suitable type. However, ~
:; -~i in accordance with the present invention, this comparison is made ,.. . .
by the central processor unit CPU 186 of the microcomputer or control unit 15.
- Briefly, a series of orders or instructions direct the , central processing unit 186 to predetermined locations in the ROM units where the limits of 00.005 and 00.002 are stored.
These instructions direct the central processing unit 186 to ;~J 25 obtain these limits and then subtract them from the weight in the . . .~, raw weight register. As a result, the central processing unit 186 causes the limit 00.002 obtained from the predetermined ~ address in the ROM to be subtracted from the 00.004 stored in the -~ raw weight register 710. The result of this subtraction is 00.002 which is a positive number thus indicating that the -magnitude of the weight in the raw weight register is not equal . ~ .
to or less than .002 pound. As a result, 12 will be entered in , the zero count register 713 (block 11~, Fig. 2G).
10~;2~93 Nc~t, th~ reading o~ 12 in the zero count register 713 is read out by the control equipment (block 120) and slnce this reading is less than 16, the zero count register 7l3 does not return to zero, the count in this register is incremented by one S so that a 13 is now stored in the zero count register 713 ~blocks 119 and 114, Fig. 2G).
Next, since the weight stored in the raw weight regis-ter is not 00.000 (block 132, Fig. 2G) the weight recorded in the zero correction register 711 is compared with the 0.6 pound lQ limit for the operation of the zero correction (block lZl, Fig.
2G). In performing this comparison, as above, any suitable type of comparing or threshold circuits may be employed, however, in the specific arrangement described herein, the central processing unit CPU 186 will obtain, under control of orders or instructions stored in the ROM's 188-192, the .6 of a pound from a predetermined location in the read only memory and then sub-tract the weight in the zero correction register 711 from this va7ue. If the value in the zero correction register 711 is less .: , than the 0.6 of a pound the zero corxecting operation will con-tinue. This limit of 0.6 pound and also the other limits of 00.005 and 00.002 pound may be changed or determined by the value stored in the read only storage devices ROM's at the predetermined locations emplayed for storing these ~alues.
- Since under the ~ssumed conditions the 00.000 stored `~ 25 in the zero correction register is less than 0.6 pound the weight stored in the zero correction register 711 is augmented - or changed by 00.001 pound (block 122, Fig. 2G) and the sign in the zero correction sign register 714 is changed to a plus.
~ext a round-off operation is performed by adding 00.005 to the weight now recorded in the raw weight register 710.
as a result, the weight of 00.009 is rerecorded in the raw weight register 710 ~bloc~ 123, Fig. 2Ç).
.
-, -10~2293 Next the our most significant disits recorded in the raw w~ight r~gister 710 which are all zeros is trans~erred to the output weight register 712 so that they will be available for controlling the output indication of 00.00.
During a subsequent portion of this first cycle, the 13 stored in the zero count register 713 is again read out and since this number is not 16, i.e. not 0, the l/4 graduation lamp is turned off i~ it was on or maintained off if it was already off. Thereafter, during the remaining portion of this first - 10 cycle of the control unit 15, other operations may be performed.
- However, the values stored in the various registers described a~ove will remain until the next operating cycle of this control unit 15.
- During the next cycle of operation of the control unit 15, the 00.004 weight will be registered again in a raw weight register 710 in the same manner as during the first cycle. Then ' the value in the zero correction register 711 which is now ...
-- 00.001 pound will be subtracted from the weight in the raw weight .~
` register 710 and the difference is rerecorded in the raw weight . ~. . .
register 710. Thus .003 pound is now stored or recorded in the -~
, raw weight register 710.
- ~ext the 00.003 pound stored in the raw weight register ; 710 is compared with the 00.005 pound operating limit of the automatic zero correcting operation which is obtained from the ~ -read only storage units of the system. Since the result of " .
subtracting the 00.003 pound from the OO.OOS pound is positive, ; the plus sign remains stored in the zero correction sign register ;~ and the system continues to perform additional operations required .. ;,~ . .
i for the a~tomatic zero correction in -accordance with the present `~ 30 invention.
; ,x . ~ , .
.: ~..
. " ~ .
~','. .
,~'. - .
.'~ ' .
Ne~t the 00.003 pound stored in the raw weight regis-ter 710 is compared with the zero or 1/4 graduation range in the manner described above. Thus the 00.002 pound, obtained from the read only memory at the predetermined location assigned to S this limit, is subtracted from the .003 pound in the raw weight register 710. The result of this subtraction is a positive nu~ber, namely 00.001 pound.
Since the weight in the raw weight register is not less than 00.002 pound the control unit causes 12 to be ~ain entered in the zero count register 713 and then this register ; read out as described above. Since the count is not 16, i.e.
not 0, the count in the zero count ~gister 713 is incremPnted by one so that 13 is now recorded in the zero count re~ister 713.
In addition, since the weight in ~he raw weight register 710 is - 15 not 00.000 the weight stored in the zero correction register 711 of 00.001 pound, is compared with the limits of 0.6 pound of the zero correction range by su~tracting the 00.001 from the 0.6 ~- pound. The result is positive so the weight in the zero correc-~- tion register 711 is augmented by 00.001 pound.
.. . . .
As a result 00.002 pound is now recorded in the zero - correction register 711. ~ext, a roundoff operation is per-. . .
~; formed by adding 00.005 pound to the 00.003 pound in the raw ` weight register 710 and the result 00.008 pound recorded iIl the raw weight register 710.
~ext the four most significant digits in the raw weight register, n~mely 0000, are transferred to the output weight register so they will be available for controlling the display of .'., 0000.
;~ Also during this second cycle, the 13 recorded in the :. .,t "
- 30 zero count register is again read out as before and since the ; - count is not 16, i.e. not 0, the 1/4 graduation lamp is maintained - off.
... .
--.
10f~2Z93 Durin~ thc remaini.ng port.i.on of this r~econd cycle of the control unit 15 the information recorded in the above registers employed in the automatic zero correction operation remains substantially the same as described.
S Near the beginning of the third cycle of the operation of the control unit 15, the raw weight 00.004 pound will again . be registered in the raw weight register 710. Next the 00.002 pound stored in the zero correction register 711 will be sub-tracted from the raw weight 00.004 and the difference 00.002 pound restored in the raw weight register 710.
~ ~ext the 00.002 pound weight in the raw weight register - 710 is compared with the zero correcting limit of 00.005 pound.
: The 00.002 pound in the raw weight register 710 is subtracted from the 00.005 pound and since the result of this subtraction 15 is 00.003 pound the plus sign remains stored in the zero correc-tion sign register 714 and the zero correcting operation continues.
~ext, the zero or 1/4 graduation range of 00.002 is . subtracted from the 00.002 pound in the raw weight register 710.
:~ The resulting difference of 0 indicates that the weight in the 20 raw weight register is equal to or less than the 00.002 pound recorded in the raw weight register 710. Consequently, the contents of the zero count register 713 is read out which is 13 ; as descri~ed above. Since this is less than 16 the zero count . , .
register is incremented by l which causes 14 to be stored in this . 25 register at this time (blocks 117, 120, 119 and 114 in Fig. 2G).
~r~ Since the weight recorded in the raw weight register 710 is not -~ 00.000, the weight of 00.002 stored in the zero correction .: .
register is compared with the 0.6 pound limit of the automatic ~, correction range. The 00.002 is subtracted ~rom the .6 pound `
30 and since the result is positive, 00.001 is added to the 00.002 pound stored in the zero correction register 711 and the sum ~, .
00.003 pound is now restored in the zero correction register 711.
, - 69 _ :';
: . - ` . . ~
N t the ro~ldoff operatlon is per~ormed by adding 00.005 to the 00.002 in the raw wei~ht register and the sum 00.007 now stored in the raw weight register 710. Next the four most significant digits of the weight recorded in the raw weight register is transferred to the output weight register 712 where it is avail-.~
able for later controlling the digital output indicator of the scale.
During this third cycle of operation the 14 now recorded in the zero COUIlt register will again be read out and . 10 since it is less than 16, the 1/4 graduation lam~ will remain ~ turned off. Thereafter during the remainder of the third cycle ` of operation of the control unit 15 after the scale has returned ... to zero or normal, the information recorded in the various . ~ .
, :,.
." regist~rs.described above remains unchanged.
15 During the fourth cycle of operation of the control .. ~ equipment 15 the raw weight of 00.004 is again stored in the ~ .
raw weight register 710 and the 00.003 now stored in the zero orrection register 711 is subtracted from this 00.004 and the : resulting difference 00.001 pound is now stored in the raw weight 20 register 710. ~his 00.001 pound is then compared with the 00.005 . - limit of the automatic zero correction and also with the 00.002 : limit. As a result of both of these comparisons, the.system works as described above since the 00.001 stored in the raw .. . .
. weight register is less than 00.005 limit and also less than .. 2~ 00.002 lim t.
... . .
. Since the 00.001 weight stored in the raw weight . register is less than the 00.002 limit, the n~mber stored in . ~ .
.. the zero count register 713 will be augmented by 1 so that 15 ; will now be stored in this register. Later, when this register --.i 30 is again read out, the 15 will be less than 16 so the 1/4 graduation lamp will be maintained turned off.
-`- 70 -lO~Z293 Similarly, the 00.003 now stored in the zero correc-tion regi~ter 711 is compared with 0.6 limit of the zero corrcction range and as a result 00.001 is added to the 00.003 in the zero correction register 711 and the resulting 00.004 now stored in this register. Next the roundoff operation is performed by adding 00.005 to the 00.001 in the raw weight register and the resulting 00.00~ sum now stored in the raw weight register 710. Thereater the four most significant digits 00.00 of the raw weight register 710 are moved to the weight output register 712 where they are available for controlling the output display of the scale.
As before, during the remainder of this fourth cycle .
`; of operation of the control unit 15 the information stored in ;- the various registers employed in the zero correcting arrange-ment remain unchanged.
During the fifth cycle of operation of the control equipment 15 the raw weight of 00.004 pound is again stored in the raw weight register 710 and the 00.004 now stored in the ~' zero correction register 711 subtracted from this 00.004.
~.::, .
;~ 20 Resulting difference 00.000 is now stored in the raw weight -..
.: register.
;~; This weight is then compared with the 00.005 limit of , . . .
the automatic zero correction range and also with the 00.002 :~.. -; limit.
~. . .
~ 25 As a result of both of these comparisons the system : -.
wor~s substantially as described above. Briefly as a result of the comparison of the 00.000 with the 00.002 limit, the 14 now ..:.
stored in the zero count register 713 is read out. Since this . .:.
~ count is less than 16, the count is incremente~ by one so that ., ..:
;S 30 thereafter 15 is stored in the zero count register 713. At ....... .
^`- this time, since the weight in the raw weight register 710 is . .-- 00.000 the weight stored in the zero correction register is not - augmented but remains 00~004n '.' .,:
: . - . .;:
lO~:;ZZ93 Ther~after, during the remaining portions of this fifth cycle of operation of the control unit 15, the system works substantially as described. When the 15 stored in the zero count register 713 is read Ollt it will cause the l/4 graduation lamp to remain off because the count is less than 16.
During the next or sixth cycle of operation of the control unit 15 the system works substantially as described above except that when the zero count reglster is incremented - it will have stored in it a count of 16. Since this register ; 10 stores four binary digits, the count of 16 will cause the register to return to zero. Later when this register is agzin read out during this cycle of operation the 16, or zeros, recorded in the register will cause the 1/4 graduation lamp to be turned on which indicates that the automatic zero correction has been made and that the scale is within 1/4 graduation of the least significant display digit. This time, as pointed out above, weight displayed on the scale will be 00.00.
`~ Thereafter during the succeeding cycles of operation of the control equipment neither the zero correction register 711 nor the zero count register 713 will be augmented; instead . A, the contents of these registers will be maintained substantially as described above until either a weight is placed on the scale ; or the zero drifts or wanders. If the zero indication should .. . .
drift or wander then it will be corrected in the manner des-. ,' ' 25 cribed a~ove.
Assume now that an object weighing one pound is placed : . .
on the scale platter or pan. As a result, the load ceil to-gether with its sensor and the analog-to-digital converter will cause a new raw weight including the zero error to be entered - 30 in the raw weight register 710.
:. ' .
.-. - .
;"
, .'` - .
: . .~' ' ' , . ' This new raw weight will be corrected by the weight of the pan or platter as described above and as a result a weight of 01.004 will be entered in the raw weight register.
At this time, under the conditions assumed above, 00.004 is still registered in the zero correction register so this 00.004 is subtracted from the 01.004 in the raw weight register 710 and the difference 01.000 is then stored in the raw weight register 710. ~eY~t the one pound weight, namely 01.000, stored in th~ raw weight register 710 is compared with the 00.005 pound limit of the automatic zero correcting range by subtracting the 00.005 from the 01.000 pound. The result of this subtraction is positive with the result that 13 is entered in the zero count register 713, which later causes the 1/4 ., i graduation lamp to be turned off. In addition, since the one pound is greater than the 00.005 there is no point in comparing the one pound with 00.002 limit so that the control unit 15 will . . . ~, immediately cause the roundoff operation by adding .005 to the t`,, weight recorded in the raw weight register ~nd thus cause 00.005 ,.:. , .
to be added to the 01.000 weight and cause the sum 01.005 to be ~!~: 20 stored in the raw weight register 710.
~ext the four most significant digits, that is the `` 01.00 will be transferred to the output weight register 712 where they will control the output weight indication of the scale and thus accurately indicate the one pound weight br object placed on the scale platter or pan. So long as the .~ . ,.
: .
~, 0l~OO weight remains on the scale the above cycles of operation ' of the control unit 15 will be repeated. 00.004 remains stored ~ ..
: .:
in the zero correction register. 13 is repeatedly stored in - the-zero count register with the result that the 1/4 graduation ~ 30 lamp remains turned off and 01.00 is displayed. The raw weight -- - of 01.004 obtained from the scale is corrected by the 00.004 .", ~ - in tha zero correction register so the correct weight 01.00 of -~ the object on the scale is correctly displayed.
, ~ .
. - - - , :
, .
-10ti2293 Assum~ now that after the object weighed above i9 r~moved from the scale, the scale now returns to -00.001 inst~ad of to 00.004 pound. This weight -00.001 pound is entered in the raw weight register 710 after the scale has come to rest and the initial 8 pounds subtracted from the digital output of the analog-to-digital converter as described herein and a 0, indi-cating the minus sign, stored in the weight sign register 715.
~ext, the plus 00.004 in the zero correction register ; 711 is algebraically subtracted from -00.001 in the raw weight register, the resulting di~ference is -00.005 which is stored in the raw weight register 710 and a minus sign or zero is stored in the weight sign register 715.
Next, the minus 00.005 recorded in the raw weight register 710 is compared with the 00.005 automatic zero correc-15 tion limits. At this time the magnitude or absolute value of theweight in the raw weight register is compared with the limits - - 00.005. Since it is equal to the lower limit, the automatic zero correcting sequence of operations will be performed.
- ~ext, the weight of -00.005 recorded in the raw weight '`:r 20 register 710 is compared with the 00.002 pound limit. Since this ;~s weight is greater in magnitude than the limit, a 12 is now recorded in the zero count register 713 and then this register read out. Since the count is less than 16, the count is incre-` mented by 1 so that 13 is now recorded in this register. As described above, the 13 in this register later causes the zero or 1/4 graduation lamp to be turned off or maintained off if it is already off. Since the weight in the raw weight register 710 is not zero, the weight recorded in the zero correction register 711 is subtracted from the 0.6 pound limit and since the weight is less than the limit, 00.001 is subtracted from the weight in - the zero correction register 711 so that 00.003 is now recorded ~- in the zero correction regiqter 711.
: ; , ''-lO~iZ293 Next, the roundoff operation iY performed by adding OO.OOS to the wei~ht -00.005 recorded in the raw weight register 710 and the sum 00.000 rerecorded in the raw weight register.
Next the four most signi~icant digits of this weight are txans-ferred to the output register where the output indication will -~ then be 5000 when the other operations required to display this n~mber have been performed during the remaining part of this ; first cycle of control unit lS after the scale has become stabilized when the previous weight was removed from the pan or ` 10 platter.
`~ During the next cycle of the control unit 15, the -00.001 pound again will be entered in the raw weight register 710 and a zero indicating minus sign of the raw weight wi'l be ~` entered in the weight sign register 715.
- lS ~ext, the weight of 00.003 positive now recorded in - the zero correction register is algebraically subtracted from ~ the weight -00.001 in the raw weight register 710 and the .~., resulting difference -00.004 is recorded in the raw weight register 710.
~ext, this weight in the raw weight register is com-pared with the OO.OOS pound which is the limit of the automatic zero correcting arransement and since the absolute value or this weight is less than the limit, the sequence of operations of the automatic zero correction are continued.
- 25 ~ext, the weight of -00.004 pound is compared with ` the limit 00.002 pound and since it is more than the limit, the 12 is again recorded in the zero count register 713. The 12 is , ............ .
then read out of the register and since it is less than 16, one is added to the 12, so 13 i9 now stored in the register. Later the 13 causes the zero or 1/4 graduation lamp to be turned off or maintained off if it is already off, as under the assumed -` conditions.
,'`" ., .
.
;' .
, . . .
lO~;Z293 The weight of 00.003 pound in the zero correction register is now compared with the .6 pound limit of the zero correcting arrangement and since it is less, 00.001 is sub-tracted from the 00.003 weight recorded in the zero correcting register and the difference 00.002 rerecorded in the zero correcting register.
Next, the roundoff operation is performed and 00.005 added to the weight -00.004 in the raw weight register and the sum -00.001 rerecorded in the raw weight register. Then the ; 10 four most significant digits 00.00 recorded in the PUtpUt weight register so that they are available for controlling the output ~ -weight indication. At this time the minus sign is not displayed.
During the next cycle of operation of the control unit ~ -`
. ~ .15 substantially the same operations are repeated except that ~ 15 when zero correcting register 711 co~tents 00.002 is subtracted "; from the raw weight register of -00.001, the resulting differ-ence of -00.003 is recorded in the raw weight register 710 instead of -00.004. In addition 00.001 weight is subtracted from tne 00.002 in the zero correction register so the weight .
of 00.001 will be recorded in the zero correction register 711 instead of 00.002 as in the previous cycle of operation of the ... .
contr~l unit 15.
During the next cycle of the control unit 15, the raw .. ~. .
weight of -00.001 pound again is entered in the raw weight ~ .
register 710. ~ext the weight of .001 pound in the zero correc-ting register is algebraically subtracted from the -00.001 pound in the raw weight register 710 with the result that -00.002 pound is restored in the raw weight register. The magnitude of this weight is first compared with the 00.005 limit of the - 30 automatic correcting range. Since its magnitude is less, the ~ -..
; various steps of the automatic correction range are repeated.
The magnitude of the weight of -00.002 pound in the raw weight ~egister 710 is then compared with the limit of 00.002 pound -- 76 -- `
.,:
...
.
, a since it i5 equal to this vaLue, the 13 now stored in the zero count r~gi~t~r 713 is r~ad out and since this count is less than 16 it is increased by one leaving a 14 now stored in this zero count register 713. This 14 is again later read out and employed to w~intain the 1/4 graduation lamp off. There-after weight of 00.001 in the zero correcting resister is com-pared with the .6 pound of the zero correc~ing range and since it is less, 00.001 pound is subtracted from the 00.001 pound in the zero correcting r&nge register and a difference 00.000 recorded in this same register. Thereafter the roundoff and transfer operations are performed as described above.
During the next cycle of operation of the control unit 15, subst~ltially the same operations as described above ,` are performed except that the zero correcting register 711 now ~ lS has all zeros recorded in it so that the -00.001 remains ....
~ recorded in the raw weight register. During this cycle of ;~ operation, the zero count register 713 is read ou~ and since .-, ~ the 14 recorded in this register is less than 16, one is added . ~, .
to the contents of the register and the 15 again will be recorded in this register 713. This lS is later read out and employed to maintain the 1/4 graduation lamp turned off. In addition, .
00.001 is subtracted from the zero correcting register leaving -00.001 stored in this register and a minus or zero stored in the zero sign correcting register.
` 25 During the next cycle of operation of the control unit 15, the O0.001 minus stored in the zero correcting register will be algebraically subtracted from the -00.001 pound recorded in the raw weight register 710 leaving all zeros recorded in the ~ raw weight register. Consequently, no subtraction is made from the -00.001 pound recorded in the zero correction register.
; ~owever, one is added to the zero count register. One is then ! added to the zero count register during each succeeding cycle ~f the control unit 15 until the predatermined number, which .
- :
.. ~
i 16, i.e. all zeros, in an exemplary embodiment, is stored in this regist~r. When the 16, or all zeros is later read out of the zero count register, the control unit lS will turn on the 1/4 graduation lamp. Thereafter the con~ents of the various registers remains substantially as described until another article is weighed on the scale. During thiis time the display will correctly indicate 00.00. In addition, when the next object is weighed the zero wander of -00.001 will be corrected so the correct weight of the object will be displayed.
Assume now that for some reason after a given weighing operation t~e output from the scale, load cell, sensor ~nd analog-to-digital converter returns to 00.100 pound after the weight of 8 pounds hais been subtracted as described above.
Consequently, the weight of 00.100 pound will be entered in -:
the raw weight register 710. In addition, a ~ representing a plus weight on the scale will be entered in the weight sign ~, ` register 715.
: ~
Next, the weight in the zero correction register 711, ;~ assuming this weight to be 00.003 pound, will be subtracted from the weight in the raw weight register 710 and the difference 00.097 pound restored in the raw weight register. ~ext, the weight of 00.097 pound now recorded in the raw weight register 710 is compared with the automatic zero correction limit of ` 00.005 pound. Since the weight in the raw weight register 710 25 is greater than 00.005 pound, the automatic zero correcting ,; :.
~ operations are not performed and 13 is recorded in the zero :.
i count register, which later causes the 1/4 graduation lamp to be turned off, or maintained off if it had previously been :-: i, .
turned off.
;~ 30 ~ext, the weight in the raw weight register 710 is rounded off by adding OO.OOS pound to the 00.097 pound recorded ~: .
in this register. The s~m of 00.102 pound is then rerecorded in the raw weight register and the four most significant digits - 7~ -.
.- ': , . : - - ~ --lO~;ZZ93 0 10 are ~ntered in the output register 712 where it ls avail-able for actuat ng the output indication of the scale.
The information recorded in the various registers then remains substantially as described for the remainder of this cycle of operation of the control unit 15.
Duxing each o the succeeding cycles of the control unit 15, the operations of the equipment relative to the raw weight register 710, the weight sign register 715, the zero correction register 711, the zero correction sign register 714 and the zero count register 7~3 and the weight output register 712 are substantially as described above.
However, the attendant or operator of the scale upon . , .
noting the 00.10 weight indicated on the output of the scale will be informed that the scale is not in-condition ~or another weighing operation. At this time the operator may operate the zero expand range switch 176 to cause the scale to be corrected so that it will be in condition to accurately weigh the next - object placed upon the pan or platter.
`~ on the next cycle of operation of the control unit 15, ~ 20 after the zero capture range expand switch 176 or bu~ton has ; been operated, the weight of 00.100 pound will be entered in the raw weight register 710. In addition, a "1" repr~senting - a plus sign is entered in the weight sign register 715. Also .; .
-- at this time 00.003 is stored in the zero correction register 711 and a "1" indicating a plus sign is stored in the zero . , .
- correction sign register 714.
With the zero capture range expand switch operated and r, the 00.100 pound entered in the raw weight register 710, the central processing unit 186 will cause the weight entered in the raw weight register to be compared with 0.6 pound which is the .
assumed limit of the zero correction range.
~ .
: . . ' ,................................ .
., Since under the assumed conditions the weight of 00.100 pound is l~ss than 0.6 pound, the central processing unit 186 will cause a weight of 00.100 pound in the raw weight register 710 to be transferred to the zero correction register 711. As a result, 00.100 will now be stored in the zero correc-tion register 711 and then this weight is subtracted from the weight of t~e raw weight register 710 with the result that 00.000 will now be stored in the raw weight register 710.
~ext, the weight 00.000 in the raw weight register 710 is compared with the automatic zero correcting range of .005 pound and since it is less than this limit, the zero correcting operation will be performed in the manner described above and the ~ 00.00 indication transferred to the output weight register.
- Also, the 1/4 graduation lamp will be turned on as described ~ 15 above.
: .
- So long as the expand button or switch 176 is operated, the above cycles of operation are repeated. When this button or switch is released, the weight stored in the zero correcting register 711 will correct the weight in the raw weight register -~
710 so that the corrected weight will be within the 00.005 . . i .: -~'~ pound correcting limits. Consequently, the above-described zero correcting operations ar~ performed and the correct weight . . .
of an object, within the capacity of the scale, is correctly '4 displayed.
Again, so long as the various factors affecting the ~c zero indication of the scale do not vary more than 00.005 pound, . the control arrangement 15 operates as described above and maintains the scale zero indication accurately at zero so that `~ the scale will accurately weigh various objects or commodities placed on its platter or pan. If the zero wander effects exceed . the 00.005 pound but do not exceed the 0.6 pound, then these ;
effects can be corrected by the operator or attendant operating , ' . ' ' :' : , , . - . ,. ::. -". . . : . .
-lO~;ZZ93 t zcro captur~ ra~ge expand switch 176 and the scale is corrected as described above.
The zero capture range expand switch 176 together with the ~ero correcting operation of the scale may be employed as a sel-correcting tare arrangement so long as the weight of the container is less than .6 pound and so long as variations from container to container, plus zero wander effects of the scale ~ described a~ove, do not exceed OO.OOS pound.
- Thus, assume that an empty container weighing 00.15 pound is placed on the scale. The scale will indi~ate this weight of 00~15 pound accurately providing, of course, the automatic zero correcting arrangement was operating satisfac-torily and the 1/4 graduation lamp turned on prior to placing the container on the platter or pan of the scale. ~he operator or attendant will now operate the zero capture range expand switch 176 which will correct for the weight of the empty :, .
container and cause the scale to indicate a zero output. The attendant may t~en ~ill the container with a commodity and the ~cale will indicate accurately the correct weight of-the commodity only and compute its cost if it is so desired. Upon ` removing the filled contai~er from the scale, the scale will ; now indicate -00.15 pound, assuming no zero wander effects. If - the attendant or operator now places another similar container on the scale of the same weight as the previous container, then , 25 the scale indication will return to zero and the automatic zero .
correcting operations performed providing, of course, that the variation in weight of the containers plus the variation in any zero wander effects are less than .005 pound. If, however, the variations are greater than 00.005 pound, the 1/4 graduation lamp will not light and the indication on the scale will not return to zero. The attendant can then re-operate the zero expand range switch and cause the scale to automatically correct thereafter for automatic zero variations in the manner described herein.
', . . .
.. . . . ' ' -lO~iZZ93 If, of cours~, the weight o the container or varia-tions in the weight of the container and the zero wander exceed the predetermined operating limits described above, then the operator or attendant can use the usual tare buttons or keys and operate ~he scale in accordance with prior art arrangements without employing the automatic zero correcting arrangement in accordance with the present invention.
As indicated above, the various limits of 00.002, 00.005 and 00.600 have been selected to illustrate the invention and may be changed as desired for various applications or uses of the scale.
ZERO EXPAND
It is desirable to frequently check the operation o the automatic zero and the amount of correction that is being introduced by the automatic zero in the manner described above.
To enable the amount of automatic zero correction being applied to be readily determined, a zero expand switch 178 (Fig. 3) is provided. when this switch is operated, it prevents the opera-tion of the automatic zero correction. In addition, on thenext cycle of the control equipment 15, if this cycle is not one in which weight is read out of the analog-to-digital converter i, .
and entered into the raw weight register 710, then when the program advances to block 84, it will test thi~ zero expand switch and, finding it operated or true, control is then advanced to block 85 which sets the interlock flag I~TF. In other wo~ds, it causes a "1" to be stored in the status register space 736.
Later in this same cycle of operation of the control equipment -~ lS, the control is advanced to bloc~ 57 as described above with the result that the interlock flag is tested. That is, the "1"
stored in the register space 736 is read out and since it is a - Nl", the control is then advanced to block 58 which clears the '''' :
- .. . ~ :
.
iA._orlock 1a~ INT~ by ent~rln~ a Y.ore in ~:ha r~st~r 6p~ce 736 and, ln a~d1tlo~ 8 or enter~ a "1" ln ~e inltlalizQ xoglster ~pace 7 27 A~ ' Ther~a~er, ~ha con~rol advance~ to ~ c 59 at whlch a ~ ent~re~ th~ storage spaco 737~ ~hc contL~ol thon ~dvance~ to bloclc 66 over tho tran~er ~5~ ~q~th t~e~e chans~es the above cyclefl of operat~on o~ th~ cont~ol equipment lS aro then r~peat~d until a cyclo in whlch ~che ~aw we~ht 1~ read out o~ th~ analog~ dlgital converter ana stored ln t~e rBW weight 10 rBgl~ter 710 . ~urin~ thi8 cycle the control 1~ advanced to `~ b10ck 100 1n tho manner described herein an~ ~lnce the zero expand ~witch i~ now pres~ed or turned on, control i8 then advanced So block 101 where the ~our lea~t ~ignl~icant dlgl~ in the raw welght regl~ter 710 are read out an~ mov~d to the w~iqht out regi~ter 712 wher~ they later are caused to ac~uate the readout or display o~ the sy~tem which will then indlcate ~he .~ four lea3t significan~ digits of the raw weight rea~ into the raw weight register and thu9 indicate the amount o~ corr~ction being spplied to the ~yste~ by the automatic zero corrsction asrange~ent.
T 20 When ~he zero expand swltch 178 i8 restored to normal, it 18 then nec~sary to lnitialize the system and to check the price per poun~, the tare and flnally to operate the lock ~wltch 179 ind~cating that all the necessary in~ormatlon i~ available ~or the next weigh~ng operation.
` 25 ;~ T~MED~ TAXE ENTP.Y
~ach tlmo the program i~ tran~ferred to block 144 tho control apparatu~ tests the Uno tare~ switch 171 (Flg. 3) to termine whether or not thi~ ~wltch i8 opor~ted. If tho 30 ~w~tch 171 1- operate4, ~hen th~ program ~-tJ tho lntarlc,ck ~lag - ~ and trans~er~ to bloc~c 145 which cau~o~ the taro rogi~t~r 720 to ~e cl~aroa or r~torod ~o ~ero an~ then t~ pro~r~m r 13 -~
..
, . . . - . . - - . ~ . . . .
~ O~ZZ93 a~~anccs to bloc~ 55 via transfer ~310 and the cycle of operation is completed as described above.
If t}-l~ "no tare" switch 171 is not pushed or operated as previously assumed, then the control is advanced to block 146 where all of the other tare keys are tested to determine if any of them are operated. ~f none are operated the sequence trans-fers to block 55 and the cycle completed as described above.
If some one of these keys is operated, for example the tare key 0.1 pound, then the control is advanced to block 1~7 instead of to block 55 via transfer B10 as described above. Block 147 determines whether or not 2.6 seeonds has elapsed since another tare button was pushed. It is assumed that this is the first tare button to be pushed, then 2.6 seconds will have elapsed since a previous tare button is pushed. Consequently, the tare timer spaces 728 will have all zeros stored in them so the program is advanced to bloc~ 148 where tare register 720 is cleared or returned to zero. Thereaftex the control is advanced to block 149 where the 0.1 pound is entered in the tare register 720 and ~-the interlock flag is set by entering one in storage space 736.
2~ Thereafter the program is advanced to block 55 via transfer B10 ` and the cycle of operation continued in the manner described above.
In addition to entering the tare weight in the tare register space 720, the tare timer is set into operation as stated in block 149. This is accomplished by entering 13 in this tare timer space 728. Then on each of the cycles during : ,, which a weight is transferred from the analog-to-digital con-verter to the raw weight register 710, one is subtracted from the number stored in the tare timer 728 as indicated in blocks 96, 97 and 97A as described above. After 13 of such cycles, 2.6 seconds have elapsed.
.. .
... .
, ~ ~ - .: ... -1~;2Z93 If another one o~ the tar~ ~eys is operated in this 2.6 second period, then the control i.s transferred from block 147 directly to block 149 where the value of the second operated tare key is entered in the tare storage ~paces 720. Also, the tare timer is reset or recycled by ayain entering 13 in the tare timer storage spaces 728. Thus for example if the tare key .05 is actuated, then this figure will be entered in the tare register 720 with the result that the register now has entered in it a tare weight of .15 pound. Thereafter the interlock and : 10 initializing conditions must be checked and the lock switch 179 must be operated in order to condition.the system for weighing operations involving subtracting tare weights as described ~`~ herein.
~ .-~^ If, however, the second key is operated 2.6 seconds after the previous key then the next time the control sequence advances to block 147 in the manner described above, the seguence . transfers to blocX 1~8 which clears the tare storage areas and then to block 149 so that the weight represented by only the last tare key operated is stored in the tare storage areas 720.
. 20 OUTPUT CO~TROL
When a package has been placed on the scale platter and weighed, and the weight corrected after a no motion condition has been established as described herein, control wlll be trans-ferred to block 26 via transfer C5 to block 66 and then to . . .
block 26. The 7'MOT~F" flag is cleared at this time so block 26 will transfer control to block 27. Block 27 interrogates the printer mode switch 172 (Fig. 3) and branches around block 23 .. . . .
'~ to block 29 if the system is in either the demand.or the continuous mode. Since we are assuming single mode, block 27 transfers control to block 28.
.,: .
;
lO~iZ293 Block 26 intcrrogate~ the status storage space 729 ~tatu~s reglster 0001. This signal i5 true if, during the input operations a motion detector inhibit switch in the printer i5 on. This switch is provided so that systems which are in S vibratory installations (heavy machinery causing floor vibra-tions or overhead fans, for example) can have the switch turned : on to guarantee only one label per weight application. If the switch is "on", control is transferred to block 29.
Block 29 examines the status of a reweigh storage lO space 740 of status register 0001 A one or true of this reweigh signal is an indication that the previous printer opera-tion was aborted due to a set-up malfunction. If there was a malfunction, block 29 transfers control to block 31 via A7 (this allows another print to be initia~ed for the same package to ~` 15 allow the printer to rectify the error). If there is no reweigh, block 29 trans~ers control to bloc~ 30. Block 30 interrogates the status of storage space 730 of status register 0001. A true or one in this location indicates that a print has occurred and the printed label has not been removed. If this condition exists, block 30 transfers control to block 25 via connector Al.
Thus no print occurs during this motion - no motion sequence.
(Motion Detector Inhibit) If a zero is stored in the print storage space in -the status register 0001, block 30 transfers data to block 31 . .
-~ 25 and, providing other conditions are fulfilled, a label is printed.
Blocks 28 through 30 comprise a system whereby only one label per weight application is allowed, unless the printer malfunctions, in which case a subsequent motion - no motion -~ cycle will be recognized-.
If the motion detector inhibit switch is not on, block 28 transfers control to block 31 directly; thus allowing a new - printer cycle for each motion - no motion detected.
Blocks 31 through 33 allow the printing of a label with the applied weight being below a preselected minimum value ~in this example, .10 pound). l~e need of the minimum value inhibit is that if none were present, the system would be S printing labels with zero weight on the platter, an undesirable condition. The ability to print labels with applied weights below the predetermined value is necessary for tests.
; If the unit price is set to zero and the no tare key is depressed, an output print signal is generated when a motion - no motion cycle occurs, regardless of the applied weight.
Block 31 interrogates the "no tare" switch 171 ~or a no tare signal. If this condition exists, control is transferred to block 32 which interrogates SW-.OP through SW-.PO (Fig. 7).
If the price is zero as indicated by SW-.OP through SW-.PO, all being zero, control is transferred to block 33 which causes a "1" to be stored in the status storage space 731 of status register 0011 and the printer will generate a label. Block 33 then transfers control to block 25 via Al.
If either block 31 or block 32 are not true, control is transferred to block 34. Bloc~ 34 interrogates the output weight register 712 (Fig. 7). If the weight is less than 0.1 pound, control is returned to block 25 via Al. If tha net weight is greater than 0.1 pound, control is trans~erred to ' bloc~ 35.
Block 35 interrogates set bit space 737 in status register 0011. If set is true (an Lndication that interlocks are not satisfied) control is returned to block 25 via Al.
If set is false, control is transferred to block 36.
.,~..
`~ In the weight processing description, the method o~
processing the raw weight information into net weight output information was described. At that time, it was shown that the value in the output weight register is the magnitude only of the weight. Thus the weight could be greater than 0.1 pound but . ~ .
.
.. . .
- . . : , .
1(~62293 negative, in which ca~e no print should occur. Block 36 interrogates the weight sign storage space 715 in status register 0011 of Fig. 7. If the signal is false (indicating a minus weight) control is returned to block 25. If the signal is true, the system control transfers to block 37.
Block 37 interrogates the level of the signal in storage space 725 in status register 001I (Fig. 7). If this signal is true (an indication that the applied weight exceeds the capacity of the weight converter) system control returns to block 25 via Al. If the scale weighing capacity is not exceeded, control transfers to block 38.
Block 38 generates an output pulse similar to block 33.
Control is then transferred to block 25 via transfer A1.
As previously described, block 134 is actlvated by transfer from ~lock 130 via transfer Hl. Block 134 interrogates - the blank price signal from the printer into the input of ROM
191 (see Fig. 4A). If this signal is off, block 134 bypasses - block 135 and transfers control to block 136 via transfer H3.
If the sigr.al is on, block 134 advances control to block 135.
Bloc3; 135 causes all bits of all words in the output price -~
register 739 (Fig. 7) to be changed to "l's" (binary 15 causes ; blaD}~s in the printer). Control is then transferred to block 136.
Block 136 interrogates the blank weight signal from the printer into the input of ROM 191 (see Fig. 4A). When this signal is off, control is transferred to bloc~c 139. ~an on, control is transferred to block 137. When the system is operated in the price by count mode, the normal function is to blank the weight field on the printed ticket. mus, a blank weight off signal must cause the weight to be blanked and vice -versa. me purpose of blocks 137 and 139 is to invert the sense of the blank weight switch when operating in price by cc~unt.
, . .
~, - . . ~ . ~ ;
lOf~ZZ93 Thus, if blocX 136 enables block 137 and the sy~tem is in price by count, block 138 is bypassed. If block 139 is activated instead, block 138 is not bypassed. However, since this discussion is limited to by weight operation, a true in block 136 ultimately trans~ers control to block 138. Block 138 causes ail data in the output weight register 712 to be forced to a 15 (blank) level. Control is then transferred to block 140. A false in block 136 bypasses block 138 and transfers control to bloc~ 140 through block 139 via connector H6.
Blocks 140 and 141 perform the same blanking function on the output value register 741 (Fig. 7) based on the level of the blank value signal into the ROM 191 (Fig. 4A) and then transfers control to block 69 via transfer Dl.
Note that the blanking switches are located in the printer but this is for convenience only; any location is acceptable.
Referring to Fig. 2D, the description of the service switch function follo-~s. With a system as complex as this, it is desirab~e to provide some trouble isolation capabilities to improve the serviceability.
APPARATUS FOR ISOLATI~ ERRORS I~ PRINTED RECORDS
Since the most probable failure will be incorrect price, weight or value data on the printed label, a series of serviceman controlled inputs are provided. The most basic ones allow the se_viceman to select ~hich of these three fields (price, weight or total value) he wishes to have displayed in the weight display area. In this manner, he can determine if the fault is in the scale, as indicated by faulty output inor- -mation, or if the fault is in the printer, as indicated by correct output information but a faulty printed ticket.
lO~;Z;~93 In Fi~. 5, it has been shown how the weight information is seLected from thc~ seri~s of in~ormation being transmitted.
By supplying service switches whereby price or value information is piaced in the weight output register 712, the digital display can be made to indicate price, weight or value as computed by the system and thus simplify fault isolation.
Referring to ~ig. 2D, ~loc~c 69 interrogates status register space 733 in status register 0001. During the input cycle, the condition of the price input to input 4 of data selector 199 (Fig. 4B) has been stored iIl this location. If block 69 determines that the display price signal is true, i.e. a one is stored in 733, control transfers to ~lock 70 and the signal contents of the output price register 739 are trans-ferred to the output weight register 712 (Fig. 7). Thus the digital display will indicate price and if there is a discrepancy between the setting of the prlce entry equipment and the dis- - -played value, the serviceman can ol~serve this and proceed to determir e Ihe cause of tht~ fault, having localized it. Block 70 transfers control to block 73.
If bloc}~ 69 determines that the display price signal is false, i.e. a zero is stored in 733, control is transferred to block 71. Block 71 interrogates status register space 734 of status register 0001 which has been set up to coincide with the value input to input 4 of data selector 200 in Fig. 4B.
If the display value is true, block 71 transfers control to block 72. Block 72 transfers the contents of the output value ` register 741 into the output weight register 712 (Fig. 7j and then transfers control to block 73. Thus the digital display i~ indicates the computed value for fault isolation testing.
If block 71 senses that the display value signal is false, block 72 is bypassed and control is transferred to block - - 73 via transfer D3.
. . .
~ ~ so --~ .
~O~;ZZ93 Block 73 transfers a signal to wire. 273 of Figs. 4A, 4B and 4C based on the signals in word 0 of status registers 0000 to either illuminate or extinguish the zero limit indicator (Fig. 4C). Control is then transferred to block 74. Block 74 S updates the signals in the 4 x 16 bit ~AM 228 of Fig. 413 (price, weight, value data and printer control) and also updates the signals out of quad bistable latches 248 of Fig. 4C. Control then transfers to block 75.
Block 75 chec3cs the multiplied result register 742 of ~ig. 7 and transfers control to block 76 if the answer obtained by multiplying the output price by the output weight is equal to or greater than $100.00. Block 76 trues space 732 in status register 0011. This signal is used elsewhere to indicate an out of range condition by causing the output value register 741 to be set to zero by means not shown. Other uses of this overvalue signal could be to illuminate a warning light and to prevent a print pulse. Block 76 transfers control to block 77.
If the computed value is less than $100.00, block 75 transfers control directly to block 77 via transfer D7, by-passing block 76.
Block 77 determines if the capacity of the analog-to-digital weight converter 14 has been exceeded. If so, control is transferred to block 78 which stores a one in status register space 725 in status register 0011. This signal will be trans-ferred to th quad bistable latch 248 (Fig. 4C) to set output D
to illuminate the out of range indicator during the next per-formance of block 74.
Block 78 then transfers control to block 66 via transfer C5. If the weight converter capacity is not exceeded, block 77 transfers control to block 66 via connector C5. The system continues with the performance of block 66 and subsequent blocks as described previouslyO
.
.. . . . .
10f~93 Tuxning now to Fig. 5, the digital weight display 22 is shown in detail. The weight di~splay 22 includes four seven-segment indicators 301-304. The indicators are arranged in a row on a front panel on the apparatus 10 with the indicator 301 displaying the hundredths or 0.0W pound weight digit, the indicator 302 displaying the tenths or 0.W0 pound weight diyit, the indicator 303 displaying the units or W.00 pound weight digit and the indicator 304 displaying the tens or w0.00 pounds weight digit. The indicators 301-304 may be of any conventlonal seven-segment design, such as of a type using incandesce~t l amps orof a type using light emitting diodes. Of course, other types of digital indicators may also be used~ A multiplexing tech-nique is used for sequentially supplying data to the four indicators 301-304. Only one of the four indicators is actually eneryized at any given instance. However, the indicators 301-304 are energized at a sufficiently fast rate as to appear to be continuously energized.
The printer data on the buses 232 from the RAM 228 is supplied through a BC~-to-seven-segment decoder 305 and seven buffer amplifiers 306 in parallel to each of the four indicators `
301-304. The printer address buses 231 are used for supplying ~ ~ -address data for scanning the four weight display indicators 301-304. The address buses 231 are connected to a 2-line to 4-line decoder 307. Two of the address buses 231 determine which 25 of the four indicators 301-304 is to be energized as weight data is received on the buses 232, while a third bus provides a strobe signal and a fourth of the buses provides an inhibit signal. The decoder 307 has four outputs which pass through four buffer amplifiers 308 to enable inputs on the four weight 30 indicators 301-304. The output from the decoder 307 for energizing the units weight display 303 also applies a signal for energizing a decimal point on the units weight display 303.
,.
, ~ ' ' , , .
- . . .
.- - ~ . . .
,. ., ` ~ , : , . ' ; - .
~ . . .
`` lO~Z~93 T s output i5 apEd.i~d through an lnverter 309 to a buffer ampli-fier comprising a ~ransistor 310 and a hias resistor 311. The output from the tr~nsistor 310 is connected through a xesistor 312 to the decimal point input on the indicator 303. Thus, whenever the units indicator 303 is enabled, a decimal point is illuminated.
The apparatus 10 i5 designed for indicating weights ranging from -2 pounds up to -~30 pounds. In the event that the measured weight goes below zero, a mlnus sisn is formed by illuminating the center element in the tens indicator 304. This is accomplisned by connecting the output from the decoder 307 which en~bles the indicator 304 to a ~AND gate 313. The minus sign slgnal on the line 254 from the logic unit 15 is applied to a second input on the gate 313. The output of the ~ANV gate is connected through a ~OR gate 314 and an inverter 315 to the input on the buffer amplifiers 306 which energizes the segm~t in the indicator 304 used to form the minus sign. The output from the BCD-to-seven-segment decoder 305 which normally energizes this segment of the weight indicators 301-304 is also connected through the NOR gate 314 to the buffer amplifiers 306. Thus, the middle segment in the other indicators 301-303 and in the indicator 304 - when a positive weight is read is energized by the output of the decoder 305 passing through the gate 314 and the inverter 315 to the buffer amplifiers 306.
Although it is not normally exposed to an operator of the apparat~s 10, a service switch 31~ is shown with the weight display 22. The service switch 316 is a normally open switch having a momentary price contact 317 and a momentary value con-tact 318. When the service switch 316 is moved to a position wherein the price contact 317 is grounded, the line four input - to the eight-line to one-line decoder 199 (Fig. 4B) is grounded.
lOtiZZ93 n this occurs, the strobe ~ignal on the readout address buses 231 is changed to strobe the weight indicators 301-304 while price data is present on the printer data buses 232. 5imilarly, when the service switch 316 is moved to gro~md the value contact 31B, the line four input o~ the eight-line to one-line decoder 200 (Fig. 4B) is grounded. When this occurs, the strobe signal to the decoder 307 is synchronized with the computed value data on the printer data buses 232 causing the indicators 301-304 to display the computed value. As previously indicated, this permits maintenance personnel to isolate an error in a printed label between the printer 21 and the logic unit 15. If the weight `indicators 301 304 display a correct price per unit weight or a correct value for an article, then an error in the printed label will be isolated to the printer 21. ~owever, if the indicators 301-304 display the same error present on the printed label, then the error is isolated to either the logic unit 15 or to one of the data inputs to the logic unit 15.
me printer 21 may be of any conventional design -~
suitable for use with weighing and price computing apparatus. . -One typical printer design is shown in United States Patent 3,163,247 which issued on December 29, 1964 to R. E~ Bell et al.
~owever, a preferred arrangement for the printer 21 is shown diagrammatically in the block diagram of Fig. 6. As previously i indicated, the printer 21 includes apparatus for automatically entering price data into the logic unit 15. The auto-price ~pparatus includes an auto-price rea~er 325 which includes an optical reader for reading three digits of price data from a ommodity plate. The commodity plate also includes raised type for printing on the labels the name of the commodity. The three binary coded decimal price digits from the auto-price reader 325 are applied through a data selector 326 to the four auto-price -data lines 210-213 which are connected to the line one inputs of ~he 8-line to l-line decoders 198-201 of Fig. 4B. m e data _ 9~ _ ' '"' ' ' . ' ~ . ' ~.' ~ , .
.: .
~0~;2Z93 ~ ector 326 may also include apparatu~ such as exclusive OR
gates connected for generating an auto-price parity bit on an output 224 connected to the line six input to the decoder 200.
An alternate and preferred method for producing an auto-price parity bit is to store the parity information directly on the commodity plate for reading by the auto-price reader 325. The actual auto-price digit supplied from the reader 325 through the data selector 326 to the lines 210-213 is determined by signals on two auto-price address selection lines 327 and 328 (from Fig.
4C). Signals on the address selection lines 327 and 328 are received from the address buses 206 from the RGM 190 in the control unit 15. Thus, when a commodity plate is inserted within the auto-price reader 325, the address selector 326 applies one digit at a time of the price per pound data on the lines 210-213 depending upon an address selection signal received on the lines 327 and 328.
' The three digits of the price per unit weight for an article ~eing labeled, the four weight digits and the four value digits are printed on the label by means of print wheels 329.
Each of the print wheels 329 is connected through a solenoid actuated clutch 330 to a common drive shaft. Outputs 2ao~ from the printer data address amplifiers 240 (Fig. 4B) are applied to a 4-line to 16-line decoder 331. Eleven of the output lines from . . .
the decoder 331 are used for selecting the eleven clutch solenoids 330 which selectively engage the eleven print wheels 329 with the drive shaft. The outputs from the decoder 331 are connected through solenoid driver amplifiers 332 which power the clutch solenoids 330. Thus, when address data is received on the lines 240', one of the solenoid clutches 330 is addressed for engaging the associated print wheel 329 with the drive shaft.
.
_ 95 _ ' , , . ' ' . .
~062Z93 Each pxint wheal 329 is provided with a commutator 333 which rotates with and indicates the position of the print wheel.
The commutators 333 are connected to four 16-line to l-line decoders 334. The decoders 334 have a BCD output corresponding to the digit to which an addressed print wheel is positioned.
Address information is supplied to the decoders 334 from the data address lines 240'. The BCD output from the decoders 334 is applied to one input of a four bit comparator or coincidence circuit 335. The printer data on the buses 232 from the RAM 228 -~
10 (~ig. 4B) in the control unit 15 is applied to a second input of ~: .
the comparators 335. When an addressed print wheel 329 is - driven to a desired number, the output of the decoders 334 will correspond to the printer data on the buses 232 and the compara- .
tors 335 will apply a coincidence signal to control logic 336.
15 When coincidence occurs, power is removed from the energized .
clutch solenoid 330. :~
The pr.inter data on the buses 232 is also ap~lied to a parity generator 337 which generates a parity bit in a conven- ; ~ .
tional manner, such as with three exclusive OR gates. The parity bit from the generator 337 is applied to a comparator 338, which may also be an exclusive OR gate, where it is compared with the printer data parity bit from the printer data parity generator comprising the exclusive OR sates 233-235 (Fig. 4B) in the control unit 15. If there is no parity check, the control logic 336 applies a REWEIGE signal on the line 265 for recycling the control unit 15. The` control logic 336 also includes various . switches and mechanical sensors as-well as inputs from and outputs to the control unit 15. The printer clock input is - o.btained from the inverter 244 and the SET input on line 263 30 from an inverter 262. Outputs from the control logi~ 336 include the REWEIGH line 265, the take label line 267, the print stored .line 260, the add labels line 269, a motion detector inhibit line --connected to the line five input to the decoder 198 in the ~on~ol .
' ~
1(~ti2Z93 t 15, the door open interlock connected to the line four input to the decoder 201, a printer readout on/off output connected to the NAND gate 250 (Fig. 4C) and the blank weight, blank value and blank price signals to the ROM 191. The manner in which S these outputs are generated is known in the art and will not be covered in further detail.
The above-described features of the exemplary embodi-ment permit the apparatus 10 to weigh articles, compute an article value and print an article label with a speed and accuracy heretofore not possible. Furthermore, the accuracy of the apparatus 10 is maintained over a long period of time, despite changes in component parameters caused by ageing and changes in temperature.
In the exemplary embodiment of the apparatus 10 des-cribed above, weight measurements were in pounds and value was computed in dollars. It will be appreciated by those of ordinary skill in the art that the apparatus 10 may be readily adapted for other weight units, such as kilograms, and to other monetary ,- units. The number of weight, price per unit weight and computed value digits also may be changed to meet any requirements for the apparatus 10. Also, changes may be readily made in the degree or band of motion to which the motion detector is respon-sive and in the operating range and increments of the automatic zeroing circuit.
The apparatus lQ has been described as generating a predetermined number of significant weight digits, e.g., for significant weight digits for weights of from 0.01 pound up to 30.00 pounds. ~owever, any other number of digits may be generated and employed and any other weight and price limits employed as may be necessary or desirable. These weight digits are displayed, printed on labels and used in computing values.
In addition, at least one more least significant digit is generated for use in automatically and manually zeroing the lO~;ZZ93 a aratus lO ~nd in motion detectioll. Although such additional lea~t si~ni~icant digit has been described as a decimal, it will be apparent that it may be of other fractional units such as one-th rd or one-fifth of the least significant one of the predetermined number of significant weight digits. If an odd fractional increment, such as one-third, is generated, then the scale zero will be centered and the automatic zero correction factor will generally not change except for compensating for :. :
any slow drift in the zero.
` lO In describing the zero expansion circuitry, it has been stated that the additional-least significant weight digit is stored in the weight output memory during actuation of the zero exp~nd switch 178 so that this digit will appear on the weight display ~2. In an alternative embodiment, a separate -~ 15 indicator may be provided for displaying the additional least - significant weight digit. This indicator will normally be ~ blanXed and will be energized only when the zero expand switch ~ -`~ 178 is actuated. It will be appreciated that various other . .
4 changes may also be made in the above-described inventions without departing from the spirit and the scope of the following claims.
,........................................................... .
:, .
... .
.
~ . , .
. . .
,. . . -. .
.: - . . . . .
.. . : ~, : : . . -lO~Z~93 ~ P P E N D J X
SYMBOL TABLE
ACLRl 001201 B4 001123 MOV5 000404 ADD 000485 CALC 000514 Ml 000964 Al 000527 Cl 000074 M3 000979 All 000780 C12 000229 M6 000993 A12L~ 000512 C14 000214 NMCHK 000014 A13 0009~7 C15 000215 NOTAR 001151 A18 000953 C3 000129 OUTl 000298 Al9 001045 C4 000133 OUT2 000308 A20 001059 C6 000150 PCHKl 000030 A25 00103~ C9 000174 PCHK4 001248 A28 001053 E~TAT 001156 RDINP 001206 A5 000543 I~TLK 000535 ROFFl 000366 A6 001080 LATC~ 000345 SDONE 000498 A7A 000813 LTCHl 000353 SUBAZ 000375 A8 000705 MCHKl 000008 SUBTR 000432 A8A 000739 MI~MI 000482 SUBl 000453 A9 000762 MOTCK 000569 SWSG~ 000391 BL~NK 001187 MOT~ 000656 TARl 001088 BL~Kl 001190 MOVA -000406 TAR2 001098 Bl 000637 MOVB 000413 TIMCK 001138 _ 99 _ lO~;ZZ93 PROGRAM
0000 00040 MCHK, FIM P4 11000B /INIT CONSTANT POINTERS
0008 00082 McHKl~ JMS CALC
0011 00239 RD3 /READ MOTIO~F
0012 00020 JCN AZMcHKl /LOOP UNTIL MOTION
0014 00082 NMCHX, JMS CALC
~ 00002 0001~
0024 00018 JCN CNPCHKl /JMP IF DEM OR CONT
0026 00237 RDl 0027 00246 RAR /PUT MOT DET INH rN C
0030 00238 PcHKl~ RD2 0032 00018 JCN C~PCHK /JMP IF HAVE REWEIGH
' 00000 '~
0037 00068 PCHK, JUR PCHK3 /CHK FOR NO TARE BUTTON
~ 00190 0039 00034 FIM Pl 11101B /SELECT DIGIT FOR
0041 00035 SRC Pl /.1 LB CHK
0044 00034 FIM Pl 11011B
.0048 00081 JMS EWSGN /SUB .1 LB FROM WGT
0050 00028 JCN AR MCHK /JMP IF WGT LT .1 LB
0053 00236 RD0 /RD SET, MINUS, OVERCAP
0054 00028 JCN A~MCHK /JMP IF ANY TRUE
00000 :
;2293 .
0063 00043 eCt~K2, SRC P5 0064 00240 CLa /CLR PRINT
0065 00`230 . WR2 0067 00034 INTCK, FIM Pl 100000B
0069 00032 FIM P0 lloolooB /R0=10 CNTR, Rl=4 007.3 00225 WMP /OOOOSELECTS ROTARY SW INP
0074 00163 Cl, LD R3 /LOAD SWITCEt POINTER
0076 00226 ~RR ~SELECT SWITC~t 0077 00045 SRC P6 .
0079 00035 SRC Pl /WRITE SW INP TO ~.tEM REG 2 0082 00112 ISZ R0 Cl /LOOP 10 TIMES
0086 00239 RD3 /READ STARTS AT ADD. 4 0087 00228 . WR0 0091 00229 WRl 0092 00084 JMS. RDINP
0098 00237 RDl 0102 00237 RDl /READ BY CNT
0}03 00028 JCN AN C6+2 /JMP IF IN BY CNT
0108 00020 JCN AZ CS /JMP IF MODE CEtANGED
0110 00032 FIM P0 llooooooB
0112 00034 FIM Pl 100000B
0114 00045 C2, SRC P6 M
0117 00036 FIM P2 12 /R4-1 BITS CNTR, R5-4 CNTR
_ 101 -. '' .
.
~ ;2 2 9 3 .
0119 00161 LD R1 ~LOAD PIR DIG ADD. POINTER
0121 00226 WRR` JSELECT P/R DIGIT
0126 00224 W~M /WRITE P/R DIG
0127 00097 INC R1 /INC DIG ADD. PNTR
0128 00099 INC R3 /INC M~M CI~AR PNTR
0129 00246 C3, RAR /ROTATE BITS TO CNT 0NES
0133 00117 C4, ISZ R5 C3 /DO 4 TIMES
t0143 00246 RAR /RESULT SEIOULD BE EVF.N
0150 00028 C6, JCN AN C5 /JMP IF MODE aAS CHANGED
0152 00034 FIM Pl loooooB /Pl POINTS TO NEW P/P
- 0156 00241 C7, CLC /C ~UST BE CLR
;0158 00233 RDM /READ NEW CHAR
~0171 0163 00034 FIM Pl 100000B /CEIANGED, RESET
0171 00099 C8, INC R3 /INC DIG POINTER
0174 00041 C9, SRC P4 /SELECT OLD TARE ADD.
;0176 00245 RAL /PUT DOOR OPEN IN C
_ 102 -01?~ 0043 SRC P5 0180 ~0234 RD~
0018%
001~1 0186 00247 C5, TCC
10187 00228 WR0 JUPDATE P/R FLAG0188 00047 C10, SRC P7 0191 00084 C13, JMS TAR2 0193 00041 SRC P7 /SE:L~CT PRI~T MODE SW
~0195 00233 RDM /READ PRI~T MODE;0196 00020 JCN AZ C15+1 0200 00246 RAR /NCW ACC=0 IF BY WGT
0201 00229 WR1 /WRITE TO BY C~T0202 00233 RDM /READ AGAIN
0203 0024G RAR /C=1 MEA~S MODE 2 0205 00026 JC~ C2 C14 ~ PIF MODE 1 0207 0Q246 RAR . /C=1 IF CONT
0208 00212 LDM 4 /WILL S~T CO~T
0209 00018 JC~ C~ C15 /JMP IF CONT
0212 00064 JU~ C15 0214 002 0 C14, CLB
0215 00230 C15, WR2 /UPDATE P~ILNT MODE OUT
0218 00245 RAL /PUT I~TF IN C
- 0219 00026 JC~ CZ C12 /JMP IF I~TF ~OT SET
0222 00230 WR2 /CLR INTF, SET INITF0223 00043 C21, SRC P5 ;0224 00236 RD0 0225 00246 RAR -:
0227 00064 J~N C22 ~~ 0229 00238 C12, ~D2 I;0230 00246 RAR /P~T I~ITF I~ C
0231 00026 JC~ CZ ~20 /JMP l~ NOT SET
0233 00047 SRC P7 /SEIECT PRI~TER M0DE
0235 00246 RAR /C=1 ~F MODE 2 . 00252 ., , . ? - :
. ........ - . .: , - .
~ Z~S~3 0239 ~23G RD0 0240 ~02~6 RAR /PUT LOCK SW IN C
0241 00026 JCN CZ C20 /~MP IF NOT PRESSED
0245 00230 WR2 /CLR I~ITF
0250 OG245 C22, RAL
0252 00192 C20,BBL 0 0256 00041 OUTPT, SRC P4 0261 00246 RAR /PUT DISPLY PRICE I~ C
0262 00026 JC~ CZ OUTA /JMP IF NOT SET
0264 00034 FIM Pl 110000B /SOURCE IS PRICE
0268 00246 OUTA, RAR /PUT DISPLY VALUE IN C
0271 00034 FIM Pl 1110~0B /SOURCE IS VALUE
0273 00081 OUTB, JMS MOV4 /MOVE SOURCE TO DEST
0275 00045 OUTC, SRC P6 0276 00237 RDl /RD 1/4 GRAD LAMP ~:
0277 00034 FIM Pl 1000000B
0279 00035 SRC Pl 0284 000~4 FIM Pl 110000B /MEM A~D LATCH
0295 00045 SRC P6 /SELECT RAM0, ROM0 0297 00225 WMP /0101 SELECTS MUE I~PUT
0298 00234 OUTl, RDR
0300 00246 RAR /PUT MUE I~ C
0301 00026 JC~ CZ OUTl 0303 )041 SRC P4 /SELECT ROMl 0305 00226 WRR /0001 TKES CO~TROL F BUF
0307 00176 XCH R0 /R0 IS 12 C~TR
0308 00047 OUT2, SRC P7 /SELECT ROM2 0309 00163 LD R3 /LOAD B~F ADD.
0311 00035 SRC Pl /SELECT OUTPUT CHAR
0315 00041 SRC P4 /SELECT ROMl 0320 00099 INC R3 /I~C CHAR POI~TEX
0321 00112 ISZ R0 OUT2 /LOOP 12 TI~IFS
0324 00163 LD R3 /POINT BUF ADD. 130325 00226 WRR
0327 00238 RD2 /READ PRI~T CONTROL WRD : .
0329 00225 . WMP
0333 00209 LDM 1 :
0336 00226 WRR /RELEASE BUFFER CO~TROL
0338 00236 RD0 ~ :
0341 00241 CLC /CLR ~EM. UPDATE REQ
0345 00236 LATCH, RD0 /SRC P5 LAST GIVEN
0346 00245 RAL /PUT OVERCAP I~ C
0347 00018 JC~ C~ LTCHl/IF SET FORGET
0350 00237 RDl 0351 00246 . RAR /PUT OVERVALUE IN C
0353 00246 LTCHl, RAR /SET OVERCAP IF
0356 00041 . SRC P4 0362 00039 R~DOF, SRC P3 /SUBROUTINE FOR WGT ROU~DOFF
., .
:, . , .. - - . - : . .
lO~;ZZ93 0363 )219 LDM 11 /LOAD AN 11 0366 00039 ROFFl, SRC P3 0372 00018 JCN C~ ROFFl /KEEP GOI~G UNTIL C O
0375 00034 SUBAZ, FIM Pl 11 /ROUTI~E TO SUB AUTO ZERO
~ OQ011 : 0377 00036 FIM P2 0 /FROM WGT
.0379 00037 SRC P2 0381 00246 RAR /SAVE ~ C
: 0383 00245 RAL
: 0384 00228 WR0 /PUT AZ SIGN IN
0385 00081 JMS EWSGN /E~TER WGT SIGN
~.00134 :0389 00193 BBL 1/IF NEG LOAD 1 i0390 00192 RETN, BBL 0 0391 00176 SWSGN, XCH R0 /ROUTI~E TO SET WGT SIGN
~0393 00236 RD0 /~EAD STATUS WORD
i0397 00246 RAR /PUT SUB SIGN IN C
0398 00176 XC~ RO /RECOVER STATUS WORD
0400 00246 RAR ~PUT UPDATED SIGN IN PLACE
.0401 00228 WR0 :0402 00036 FIM P2 0 0404 00032 MOV5, FIM P0 10111011B /R0=5CNTR, Rl=5CNTR
`001~37 0406 00035 MOVA, SRC Pl :0408 00037 SRC P2 .0409 00224 WRM /WRITE TO DEST
0412 00097 INC Rl /I~C ZEROES CNTR
0413 0Q099 MOVB, INC R3 0418 00032 MOV4, FIM P0 11001100B /R0=4 CNTR, Rl=4 CNTR
` 0420 00065 JUN MOVA
`,, . 00150 Q422 00036 EWSGN, FIM P2 0 /ROUTINE TO ENTER WGT
.
.. - : . - ; ,. : -., ~
lO~iZZ93 ~424 ~043 SRC P5 /SIGN AND THEN SUB
0425 ~0236 RD0 0427 00245 RAL /l~UT WGT SIGN IN C
/ROUTINE TO SUB NUM AT Pl FROM NUM AT P2 /AND LACE RESULT AT P3. ALL REGS ARE USED
0432 00038 SUBTR, FIM P3 10000B /DEST POINTER
0440 00187 XCH Rll /PUT IN Rll 0442 00246 RAR /PUT MI~UEND SIGNIN C
0445 00246 RAR /C=0. PUT SUBTRAHEND IN C
0448 00038 SUB, FIM P3 10000B /REPEAT 3 INSTS IN
0451 00187 XCH Rll /SUB
C453 00249 SUBl, TCS /IF C=0 A=1001,C=1 A=1010 0454 00035 SRC Pl 0456 00241 C~C
0462 00099 IWC R3 /INC ALL POI~TERS
0465 00123 ISZ Rll SUBl /LOOP 5 TIMES
0470 00180 XCH R4 . /XCH MINUEND AND SUBTRAHEND
, 00192 .
- ~
- lO~;ZZ93 04~2 ~)246 MI~MI, RAR~PUT SU13TR.~lEND SIGN IN C
0483 00018 J~ CN SUB /IF C=1 WANT TO SUB
0485 00241 ADD, CLC
0487 00233 RDM /LOA~ FIRST NUM
0489 00235 ADM /ADD S~COND
0491 00039 . SRC P3 0493 000g9 INC R3 0495 00103 I~C R7 0496 00123 ISZ R11 ADD+1 /LOOP 5 TIMES
0498 00040 SDO~E, FIM P4 11000B /RESTORE MAINTAINED
0502 00034 FIM P1 10000B jPOINT P1 TO DEST
0505 00236 RD0 /~EAD SIGN
OS06 00246 RAR /PUT SIGN I~ C ., -0507 00026 JC~ CZ RET~ /JMP IF POS
0509 OOlg3 BBL 1 /~EG SIG~
0512 00067 A12hK, JU~ A12 ooo9o 0514 00047 CALC, SRC P7 0515 00239 .~D3 0516 00246 RAR /PUT TlF IN C
0518 00238 RD2 /READ Tl r~PUT
OSl9 00018 . JCN C~ A2 /JMP IF T1F SET
0521 00245 RAL /PUT T1 I~ C
0522 00018 JC~ C~ A1 /JMP IF T1 TRUE
0527 00041 A1, SRC P4 05~8 00237 RDl 0529 00245 RAL /PUT EXPAND I~ C
0530 00026 JC~ C~ TL~C /~P IF EXPA ~ NOT TRUE
0534 00230 WR2 /SET I~TF
0535 00064 I~TLK, JU~ I~TCK
0537 00245 A2, RAL /PUT Tl IN C
0538 00026 JC~ CZ A1 /JMP IF Tl FALSE
0542 00231 WR3 /CLR TlF
0543 00032 A5, FIM P0 lOllOOOOB
lOtjZZ93 0545 00034 FIM Pl 0 0547 00084 A3, JM.S DGSCH /SEE IF DIG WANTED THERE
0555 00224 W~M
0560 00099 INC R3 /INC WGT CHAR POINTER .:
0569 00084 MOTCK, JMS ARICL
0572 00210 LDM 2 /RIG SIG~S SO SUBTRACT
0574 00034 FIM Pl 11100B
0576 00035 SRC Pl . -0579 00034 FIM Pl 11011B /BA~D
0583 00081 JMS SUBTR /ADD BA~D TO TARGET
0585 00036 FIM P2 llollB
0589 00034 FIM Pl llollB /TARGET~BAND
00Q00 '.
0596 00081 JMS SUBTR /WGT-(TARGET~BAND) 060? 00034 FIM Pl 11100B
~604 00209 , LDM 1 /LD BAND OF 1 `~ - 109 - ' lOf~Z'~93 0G0C J0035 SRC Pl 0607 00034 FIM Pl 11011B /BAND
-0617 00034 FIM Pl 11011B /TARGET-BAND
:'00000 0621 00081 JMS SUBTR /WGT-tTARGET-BAND) :00176 :0623 00028 JCN AN MOTN /HAVE MOTION IF -0627 00020 JCN AZ UDTGT/JMP IF A~READY NO ~OTN
::.0630 00239 RD3 ~:0632 00026 JCN CZ Bl /JMP IF NOT SET
:'00125 :0634 00210 LDM 2 /CNT = 2 j0637 00246 Bl, RAR /PUT CNT BIT 1 I~ C
0640 00211 LDM 3 /CNT = 3 ` .
00132 .
0643 00209 B2, LDM 1 /CNT = 1 0644 00176 B3, XCH R0 /SAVE IN R0 0650 00028 JCN AN SUBDI/NOT ENOUGE ~ITS YET
`00157 , .0654 00066 JU~ UDTGT
:00151 0656 00045 MOTN, SRC P6 :,0657 00240 CLB
:.0658 00224 WRM /CLR CUR HIT CNT
0660 00229 WRl /TURN OFF 1/4 GRAD LAMP
0663 00034 UDTGT, FIM Pl 0 ~ .
- ~. `
: . . .. ;.`
lO~;Z293 0669 00084 SUBDI, JMS LDTAR /SCAN TARE ~EYS
0673 00034 FIM Pl 11110B
i`0675 00035 SRC Pl 0676 00216 LDM 8 /DIGITAL INITIAL OF 8LB.
~-0677 00224 WRM
0678 00034 FIM Pl 11011B
0684 00081 JMS SWSGN /SET SIGN,MOVE RESULT TO WG
0687 00237 RDl /READ EXPAND INPUT
0689 00026 JCN CZ A8 /JMP IF NO E~PAND
' 00193 0691 00034 FIM Pl 0 ~` 00000 0693 00036 FIM P2 llolooB
i0695 00081 JMS MoV4 0697 00034 FIM Pl 11 /CLR AUTO-ZERO AREA
-~0699 00084 JMS ARICL+2 `;0701 00221 LDM 13 0702 00229 WRl /TURN OFF 1/4 GRAD LAMP
0703 00065 JUN OUTPT /JMP TO OUTPUT,WILL RETURN
/DIRECTLY TO MOTN CFDK ROUTI~E
0705 00041 A8, SRC P4 `0707 00245 RAL /PUT A-Z CORR EXP IN C
' 00227 0712 00034 FIM Pl 11101B
0714 00035 SRC Pl 0716 00224 WRM /PUT .6 IN ARI
0717 00034 FIM Pl 11011B
' 00000 0721 00081 J~ SUBTR /SUB .6 PROM WGT
` 00176 0723 00020 JCN AZ A12LX /JMP IF WGT GE .6 ,0~00.0 ,~ , .
.
:~ . . . .
lO~;Z293 0730 00~08 LDM 0 0733 00034 FIM Pl 0 0739 00081 A8A, JMS SUBAZ /SUB AUT0-ZERO FROM WGT
0741 00081 JMS SWSGN /SET SIGN. MOVE RESULT TO WGT
0745 00034 FIM Pl lllllB
0747 00035 SRC Pl 0750 00034 FIM Pl 11011B
~0250 : - 00253 0762 00236 A9, RD0 0765 00246 Alo~ RAR
0768 00020 JCN AZ All /JMP IF NO MOTION. , a770 00236 RD0 .0774 00034 FIM Pl 110100B
:0780 00084 All, JMS ARICL
0782 00034 FIM Pl 11011B~
0784 00035 SRC Pl lOtiZZ93 ~78 00213 LDM 5 0786 0022~ WRM ~WANT .0Q5 IN ARI
0789 00081 JMS SUBTR /MAG WGT - .005 0792 00028 JCN AN A7 /JMP IF LT .OOS
0795 00229 WRl /SET 1/4 GRAD LA~
0798 00240 A7, CLB
0799 00034 FIM Pl 0 0801 00035 SRC Pl 0~02 00210 LDM 2 /LD A 2 FOR 1/4 G LMP TST
0804 00018 JCN CN A7B /JMP IF WGT LE .002 0808 00237 A7B, RDl /RD 1/4 GRAD LAMP
0812 00229 WRl /UPDATE 1/4 GRAD LAMP
,0813 00161 A7A, LD Rl /LOAD ZERO CNTR
0834 00228 WR0 /ENTER TO SIG~ STATUS
0835 00034 FIM Pl 11011B
0837 00035 SRC Pl 0839 00224 WRM -~
0840 00036 FIM P2 11 ~:
0842 00081 JMS SUBTR /CORRECT A-Z BY .001 ~844 00045 SRC P6 /E~TER RESULTING SIGN
.
; ., ` .
-` lO~:;Z293 0846 00036 FIM P2 looloB
0852 00020 JCN AZ Al2 /JMP IF A Z OUT OF RANGE
0856 00081 JMS MOV5 /MOVE RESULT TO A~Z
0014~3 0858 00034 A12, FIM Pl llOOlB
0867 00034 FIM Pl 101011B
00000 ~ -0876 00081 JMS RNDOF /ROUND OFF FINAL NE~.WGT
0878 00034 FIM Pl 0880 00036 FIM P2 llolooB /MOVE EIIGH 4 DIG OF
0884 00161 . LD Rl . /LD ZERO CNTR
0889 00245 E~AL
0894 00047 A27, SRC P7 /SELECT PRINT ~IODE SWITCH
0895 00237 RDl /READ BY CNT
0898 00034 FIM Pl 100000B
0902 00081 JMS MOV4 /P~T P/LB SW IN P/LB OUT
.0904 00038 FIM P3 loolooB
.
- 114 - ~
10~i2293 0906 00039 SRC P3 /SELECT P/CNT SW DEC~ 1 001~7 ogl3 00216 LDM 8 /MUST ADD 8 TO DECK 2 0914 0023$ ADM
0915 00043 A14, SRCP5 0917 00034 FIMPl 101010B
000~2 0919 00035 SRC Pl - /SELECT OLD CNT VALUE
0922 0002a JCN AZ A16 /JMP IF SAME
0924 00043 SRC PS.
O925 00233 RDM ~EAD NEW CNT
0926 00035 SRC Pl 0927 00224 A13, WRM /UPDATE OLD C~T
0930 00034 A16, FIM Pl 100000B
: 00032 : 00056 . : :
0938 00034 A17, FIM Pl 101010B
0940 00035 SRC Pl /SELECT OLD CNT VALUE
~ .0942 00020 JCN AZ A15 /J~IP IF WAS BY WGT
' 00179 0944 00240 CLB /CNT VALUE=O FOR BY WGT
s 00159 0947 00034 A15, FIM Pl 100000B
.0953 00034 A18, FIM Pl 110000B /P/LB OUT IS .~UL~IPLIER
0955 00036 FIM P2 110100B /WGT OUT IS ~fULTIPLICAND
.0957 00240 CLB /ENTER MULTIPLY ROUTINE
:0958 00185 XCH R9/CLR SHIFT CNTR
~,0963 00240 CL8 ~0964 00039 Ml, SRC P3/POINT TO DEST DIG
., , :
' - 115 _ ' - .
lO~iZZ93 0967 00112 ISZ RO Ml ~LOOP 8 TIMES
0969 0024L M2, CLC .
0972 00035 . SRC Pl /SELECT MULTIPLIER DIG
0974 00244 CMA /FORM (DIG NOT)+l FOR CNTR
0976 00020 JCN AZ M7 /SKIP IF DIG=0 0979 00220 M3, LDM 12 /SET MULTIPLICAND CNTR = 4 0981 00037 M4, SRC P2 /SELECT MULTIPLICAND DIG
:~ 0988 00101 INC R5 : 0989 00112 ISZ R0 M4 /LOOP 4 TIMES
0991 00081 JMS ROFFl /ADD POSSIBLE CARRY
0993 00169 M6, LD R9 ~0994 00183 XCH R7 /DEST PNTR = SHIFT CNTR
0997`00120 ISZ R8 M3 /LOOP UNTIL ADDS DONE
0999 00105 M7, INC R9 /INC SHIFT CNT
~:1000 00099 INC R3 /INC I~ULTIPLIER PNTR
~1001 00113 ISZ Rl M2 /LOOP UNTIL JOB DONE
`00201 1003 00038 FIM P3 looolB /SET ROUNDOFF PNTR
. 1006 00081 JMS RNDOF
:~ 00106 1010 00034 FIM Pl 10010B
:~ 00162 ` 1016 00034 FIM Pl lolloB
` 1018 00035 SRC Pl -101~ 00233 . RDM /V00.=0 IF NOT OVERVAL
: 00000 .
-1(~t;2293 1026 00034 FIM Pl llloooB
1029 00084 JMS BLANK~l /ZERO VALUE OUT
0016~
1032 00043 A24, SRC P5 1033 00229 WRl /UPDATE OVERVAL FLG
1034 00043 A2S, SRC P5 1036 002~6 RAR /PUT P/LB BLNK IN C
1038 00018 JCN CN Al9 /JMP IF NO BLNK
1040 00034 FIM Pl llooooB
1045 001a0 Al9, XCH R4 :1047 00180 XCEI R4 1049 00237 RDl /RD BY CNT
j1053 00018 A28, JCN . CN A20 1055 00034 FIM Pl 110100B
1059 00180 A20, XCH R4 1061 00018 JCN CN A21 ~ :
00043 .: -1063 00034 FIM Pl 111000B
1067 00065 A21, JUN OUTPT
1069 00035 DGSCH, SRC Pl /SUBROUTINE TO CHK FOR
1071 00225 WMP /0010 SELECTS DIG SLCT INP .:
1072 00234 A4, RDR
1076 00147 SUB R3 /SUB DESIRED WGT DIG ADD.
1080 00193 A6, B8L
1081 00032 LDTAR. FIM P0 11100000B /R0=2 CNTR
1083 00034 FIM Pl 10011~8j .. . .
, .. .. . ~ . . . . .. .
lO~ZZ93 108~ )G045 SXC P6 1088 00163 TARl, LD R3 /LD SW POINTER
1092 0023~ RDR /RD TARE SW
1093 00035 SRC Pl 1096 00112 ISZ R0 TARl /LOOP 2 TIMES
1098 00045 TAR2, SRC P6 1100 00028 JCM A~ ENTAT /JMP IF SET
.1102 00036 FIM P2 101000B
1107 00233 RDM /RD .T
~1108 00020 JC~ AZ B4 /JMP IF NOT PRESSED
~1110 00084 JMS TIMCK
-` 0011 1113 00233 RDM /RD .T
`001.32 . -~
1120 00233 RDM /RD .. T
1122 00224 WRM /WRITE TO TARE OUT.
~1123 00036 34, FIM P2 100111B
s0003g 1128 00233 RDM /RD .0T
1129 00020 JCN AZ TIMCK-l /JMP IF NOT PRESSED
1134 00233 RDM /RD .0T
` 1136 00224 WRM /WRITE TO TARE REG
! 1137 00192 BBL 0 : 1138 00216 TIMCK, LDM 8 1139 00047 . SRC P7 1143 00028 JCN AN TIMCK-l /JMP IF RUNNING
~-.... .. . .
- ~ . - : .
~06Z~93 14C 0~221 LDM 13 114~ ~0224 ~RM /START TIMER
1147 000~4 FIM Pl 101011B
1149 00068 JUN ARICL-t2 /CLR TA~E
1151 00084 NOTAR, JMS MOT~R-4 /MAKE SURE TARE CLEARED
1156 00045 ENTAT, SRC P6 : 1157 00209 LDM
1159 00034 FIM Pl 11001B
00025 , , 1161 00035 SRC Pl 1163 00020 JCNAZ E~TAT-l /~ IF NOT RDY
1171 00018 JC~ CN CLATF /JMP IF MINUS
00158 : -1174 00028 JCN AN ENTAT-i /JMP IF MOTN
1176 00034 ` FIM Pl 0 '178 00~36 FIM P2 101011B
00043 ~ :
1182 00045 CLATF, SRC P6 ::
1184 00230 WR2 /CLR AUTO TA~E FLG
1185 00068 JUN NOTAR+2 . /ROUTINE TO BLANK 4 CHARS
1187 00223 BLANK, LDM 15 /LD A BLANK
1190 00035 BLNKl, SRC Pl /Pl ~OLDS ADDRESS
1192 00099 I~C R3 1193 00112 ISZ R0 BLNKl /LOOP 4 TrMES
/ARITHMETIC AREA CLR ROUTINE
/CLRS 5 DIGITS. USED BEFORE SU3TRACT
1196 00034 ARICL, FIM Pl 11011B /MEM REG 1, CHAR 11 1198 00240 CLB . ~ .
1199 000~5 SRC P6 1201 00035 ACLRl, SRC Pl .
~ ....... .. ~ . . ~ .
lO~;ZZ93 120' `0224 WRM /WRITE A 0 1203 00115 ISZ R3 ACLRl /LOOP 5 TIMES
1205 00192 ~BL 0 1206 00161 RDINP, LD Rl /Rl HOLDS MLPX ADD.
1210 00041 . SRC P4 1212 00097 INC Rl/INC MLPX ADD.
1214 00034 PC~K3, FIM Pl 101000B
1216 00035 SRC Pl 1219 00232 SBM /SUB .T FROM 2 1220 00028 JCN AN PCHK4 /JMP IF ~O TARE NOT PRESSED
: 00224 1222 00034 FIM Pl 110000B
1228 00161 LD Rl 1229 00028 JC~ AN PCHK4 /JMP IF ~OT 0 1231 00228 WR0 /CLR SET, MINUS, OVERCAP
1236 00034 ~ FIM Pl 6 1238 00112 PCHX5, ISZ R0 PCHK5 1240 00113 ISZ Rl PCHK5 1244 00115 ISZ R3 PC~KS. /1.1 SEC DELAY
1248 00084 PCHK4, JMS ARICL
1250 00064 JUN PCHK+2 . ... .. -- :
.
Claims
PROPERTY OR PRIVILEGE IS CLAIMED ARE DEFINED AS FOLLOWS:
1. A computing and printing weighing scale comprising, in combination, an integrated circuit microcomputer including a sequence controller, weighing scale means, and data input means for supplying weight and price data to said microcomputer, said microcomputer computing a value from such weight and price data, said sequence controller including means for inhibiting the printing of the computed value when the price data supplied by said data input means changes, said data input means including a manually operable lock switch means to release such inhibition, printer means for printing such weight data, price data and computed value, said sequence controller controlling the value computation and the supplying of the value information and the weight and price data to said printer means, and digital weight display means operatively connected to said microcomputer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA312,637A CA1062293A (en) | 1975-04-30 | 1978-10-04 | Value computing scale |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/573,147 US3962569A (en) | 1974-01-18 | 1975-04-30 | Value computing scale |
CA251,481A CA1062292A (en) | 1975-04-30 | 1976-04-29 | Value computing scale |
CA312,637A CA1062293A (en) | 1975-04-30 | 1978-10-04 | Value computing scale |
Publications (1)
Publication Number | Publication Date |
---|---|
CA1062293A true CA1062293A (en) | 1979-09-11 |
Family
ID=27164446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA312,637A Expired CA1062293A (en) | 1975-04-30 | 1978-10-04 | Value computing scale |
Country Status (1)
Country | Link |
---|---|
CA (1) | CA1062293A (en) |
-
1978
- 1978-10-04 CA CA312,637A patent/CA1062293A/en not_active Expired
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US3984667A (en) | Motion detecting scale | |
US3962569A (en) | Value computing scale | |
US4139892A (en) | Electronic postage scale | |
US2987704A (en) | Variable monitoring and recording apparatus | |
US4462473A (en) | Apparatus for electronically determining postage in response to weight | |
US4135662A (en) | Operator prompting system | |
US4004139A (en) | Digital scale with means to shift displayed weight to show fraction of least normally displayed graduation | |
US3962570A (en) | Scale with manual tare entry | |
US4051913A (en) | Electronic postage scale | |
US4310893A (en) | Digital scale | |
CA1075273A (en) | Computing weighing scale | |
US4034818A (en) | Scales, in particular shop scales | |
CA1106064A (en) | Digital scale | |
JPS59180438A (en) | Method and device for continuously weighing classified product | |
CA1062293A (en) | Value computing scale | |
US3262639A (en) | Automatic weighing and computing and registering system | |
CA1044715A (en) | Motion detector for a weighing scale | |
US3598973A (en) | Table look-up sales tax computer | |
GB2027912A (en) | Weighing apparatus | |
US3318402A (en) | Weigher with error detecting supplemental weigher | |
CA1053269A (en) | Digital weight measuring apparatus with automatic zero correction | |
CA1051933A (en) | Digital scale with means to shift displayed weight to show fraction of least normally displayed graduation | |
US4091449A (en) | Computing scale system | |
CA1050057A (en) | Scale with manual tare entry | |
US3733472A (en) | Apparatus for the automatic detection of counting errors in a displacement measuring system by encoding and counting |