GB1565060A - Weigh feeder systems - Google Patents

Weigh feeder systems Download PDF

Info

Publication number
GB1565060A
GB1565060A GB5153376A GB5153376A GB1565060A GB 1565060 A GB1565060 A GB 1565060A GB 5153376 A GB5153376 A GB 5153376A GB 5153376 A GB5153376 A GB 5153376A GB 1565060 A GB1565060 A GB 1565060A
Authority
GB
United Kingdom
Prior art keywords
electrical signal
memory
feed
mov
signal
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
Application number
GB5153376A
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Acrison Inc
Original Assignee
Acrison Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Acrison Inc filed Critical Acrison Inc
Priority to GB5153376A priority Critical patent/GB1565060A/en
Publication of GB1565060A publication Critical patent/GB1565060A/en
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01GWEIGHING
    • G01G11/00Apparatus for weighing a continuous stream of material during flow; Conveyor belt weighers
    • G01G11/08Apparatus for weighing a continuous stream of material during flow; Conveyor belt weighers having means for controlling the rate of feed or discharge
    • G01G11/12Apparatus for weighing a continuous stream of material during flow; Conveyor belt weighers having means for controlling the rate of feed or discharge by controlling the speed of the belt
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D7/00Control of flow
    • G05D7/06Control of flow characterised by the use of electric means
    • G05D7/0605Control of flow characterised by the use of electric means specially adapted for solid materials
    • G05D7/0611Control of flow characterised by the use of electric means specially adapted for solid materials characterised by the set value given to the control element

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Weight Measurement For Supplying Or Discharging Of Specified Amounts Of Material (AREA)

Description

(54) IMPROVEMENTS IN OR RELATING TO WEIGH FEEDER SYSTEMS (71) We, ACRISON, INC. a corporation organised under the laws of the state of New Jersey, United States of America, residing at 180 Broad Street, Carlstadt, New Jersey 07072, United States of America, do hereby declare the invention for which we pray that a Patent may be granted to us and the method by which it is to be performed to be particularly described in and by the following statement: This invention relates to weigh feeding systems and it is particularly applicable to apparatus for feeding fluid-like material.Systems constructed according to the present invention are particularly adapted, among other possible uses, for accurately weigh feeding a wide variety of substances including dry materials regardless of whether the material is free-flowing, sluggish, or pressure sensitive; and ranging from amorphous powders to flakes, pellets, chunks and even fibers, as well as liquids.
Various control weigh feeding systems have been known in the past. as for example, the system disclosed in British Patent Specification No. 1434383. In this Specification. there is described a weigh feeding apparatus wherein the discharge rate of a fluid substance from a container is maintained at a predetermined constant value. The container and its contents are weighed, and an electrical signal is produced which signal has an amplitude proportional to the weight of the container and its contents. This electrical signal. which varies as the contents of the container are discharged, is differentiated and applied to a comparator circuit together with a reference signal, wherefore the output of tile comparator circuit may be used to control said discharge rate of the substance as it is fed from the container.The comparator output is applied to a signal generator for producing a motor drive signal for a DC motor having its output shaft connected to drive a device for discharging the substance from the container. The signal generator may comprise a pulsing circuit for controlling a pair of SCR's which are disposed in a rectifying bridge circuit connected between an AC voltage source and the input of the DC motor. Accordingly. the speed of the motor is controlled by the pulsing circuit, which, in turn, is controlled by the algebraic sum of the output signal of a tachometer generator which is coupled directly to the motor shaft, and output signal from the comparator.It can be stated that the above-described apparatus provides an accurate weigh feeding system, whereby the feeding rate may be maintained at a constant value, and wherein the predetermined feeding rate may be adjusted by adjusting the value of the reference signal source.
Additionally, the output of the weighing device may be applied to a pair of differential amplifier circuits, along with a pair of reference voltage inputs, for determining when the contents of the container varies above and below desired maximum and minimum fill levels for the container. That is, circuitry is provided for automatically refilling the container when the weight of the substance therein reaches the desired minimum weight, and for terminating the filling process for the container when the fluid substance therein reaches the desired maximum weight. Such circuitry includes means for maintaining the discharge rate of the container at a constant rate equal to the instantaneous rate thereof immediately preceding energization of the filling device for the container.Particularly, the pair of differential amplifier circuits are coupled to a pair of relay driver circuits for controlling a relay circuit to energize the filling device when the substance in the container reaches the minimum weight, and for maintaining that filling device in an energized state until the container is refilled to its maximum desired level. The relay circuit is also coupled to the comparator circuit, for controlling the latter to produce a constant output during the refilling process for the container, thereby maintaining the discharge rate of the container at the value of the particular discharge rate thereof immediately preceding energization of the filling device.
As pointed out in Specification No. 1434383 in certain installations there exists a possibility of physical forces impinging upon the weigh feeder from an external source, such as wind or air currents, physical contact with the weigh feeder by operating personnel, or the like, for example. These forces cause the weigh feeder to move at a rate that is other than that resulting from the linear discharge of the contents of the container. Because such additional movement, i.e. acceleration, is an error and has no direct relationship to the actual discharge of material from the container, the control system could continue to perform its corrective function utilizing the erroneous output signal for comparison with the fixed set point reference signal.The aforementioned patent Specification discloses one means for preventing such excessive and abnormal movements of the weigh feeder scale from grossly affecting or disturbing the normal operation of the system to thereby prevent large excursions of the output feed rate.
The present invention is directed to new improved means for accomplishing the foregoing objectives.
The present invention further provides a new and improved weigh feeder system, which is capable of controlling more operating parameters, which operates faster, and which is more accurate as compared to the prior art systems. In addition, the feeder system of the present invention has a memory and is capable of taking into account past errors in the material flow rate and taking corrective action with respect thereto.
Also, the system is capable of disregarding single extraneous material flow rate readings, which may be caused by such factors as noise, vibrations, or the like.
According to the present invention there is provided a weigh feeding machine comprising: a container for a substance; means for discharging substance from the container at a controllable feed-out rate; means for sensing the weight of at least the container and any substance therein and for producing a first electrical signal indicative of the instantaneous value of said weight; a digital microprocessor and a digital memory; means for supplying to said digital microprocessor and memory said first electrical signal and a second electrical signal indicative of a desired feed-out rate; means for causing said digital microprocessor and memory to combine said first and second electrical signals and to produce as a result a third electrical signal indicative of the degree of a departure, if any, from the desired feed-out rate;; means for causing the discharging means to feed out said substance at a feed-out rate determined by said third electrical signal; means for detecting forces which act on said weight sensing means and are in addition to the forces acting thereon which are due to the weight of said container and substance or other constant forces, and for producing a fourth electrical signal indicative of said additional forces; and means for supplying said fourth electrical signal to the digital microprocessor and memory and for causing the digital microprocessor and memory to compensate said third electrical signal for the additional forces of which said fourth electrical signal is indicative and to thereby tend to make the feed-out rate insensitive to said additional forces.
One embodiment of the invention has been chosen for purposes of illustration and description, and is shown in the accompanying drawings forming a part of the specification, wherein: Figure 1 is a block diagram of the weigh feeder system constructed in accordance with the present invention; Figure 2 is a graphic representation of the output voltage with respect to time of one of the amplifier circuits of the system shown in Figure 1; Figure 3 is a graphic representation of the output of a controlled ramp offset circuit in the system shown in Figure 1; Figure 4 is a graphic representation of the output of a second amplifier circuit; Figure 5 is a graphical representation of the actual measured feed curve as compared to the desired feed curve; Figure 6 is a graphic representation of the positional relationship of the shaft encoder with respect to the material being fed; ; Figure 7 is a graphic representation of the output of the second analog-digital converter with respect to time, before correction for induced system noises: Figure 8 is a graphic representation of the output of the second analog-digital converter with respect to time, after correction for induced system noises; Figure 9 is a flow chart of the "wait" subroutine of the computer program; Figure 10 is a flow chart of the "one second interrupt" display subroutine; Figure 11 is a flow chart of the "derive" subroutine; Figures 12A, 12B and 12C is a flow chart of the main routine of the computer; Figure 13 is a flow chart of the calculate subroutine; and Figure 14 is a flow chart of the learn mode subroutine.
The weigh feeder system of this embodiment of the invention, as shown diagramatically in Figure 1, includes a feeder assembly indicated generally at 10, which comprises a container 12 with a discharge device connected thereto for feeding the substance 14 out of the container and through a discharge conduit 16. As illustrated, a DC motor 18, connected to a gear-reduction device 20 is provided for driving the discharge device. The feeder assembly may comprise an auger mechanism as disclosed in detail in U.S. Patent No.
3,186,602 issued June 1, 1965. The entire feeding assembly, including the container, the discharge device, the motor, and the gear-reduction device is mounted on a scale 22, which may comprise a structure as described in detail in U.S. Patent No. 3,494,507, issued February 10, 1970.
In accordance with the invention there is provided a detecting device, as for example, a linear variable differential transformer (LVDT) 24, coupled to the scale for providing an electrical signal having an amplitude which is proportional to the weight of the container and its contents. That is, as the contents of the container 12 are discharged, a relative movement occurs between the windings and the core of the LVDT, thereby causing a varying output voltage proportional to the varying weight of the container and its contents.
Thus, as the substance is discharged from the container, the LVDT provides an electrical signal which varies in response to such discharge, which may, for example, be a DC voltage with a range of the order of from 3 volts to 6 volts when the material in the container drops from its upper level to its lower level. The signal from the LVDT is applied to a summing junction 26 by a conductor 28, through a resistor 30. Also, applied to the summing junction 26 is an offset potentiometer means 32, by a conductor 33 through a resistor 34, to render the signal from the LVDT symmetrical with respect to zero as measured at 38.The output from the summing junction 26 is applied to an amplifier 35, having a gain potentiometer 36, to produce an output signal at 38, which ranges, for example, from - 10 volts when the container 12 is full to +10 volts when the container is empty, as shown by the curve in Figure 2. The output signal from the amplifier 35 is applied to a conventional analog-digital converter (ADC) 40, by way of a conductor 42, wherein the offset amplified LVDT signal is measured and digitalized and outputted as digital words, corresponding to the total scale weight, i.e. the container 12 and the quantity of material contained in the container 12. Any suitable type of ADC may be employed such as a 12 bit, Model No. 124-10 XW 3, as manufactured by Analog Devices, Inc.
In addition, the output signal from the amplifier 35 is applied through a resistor 43 to a second amplifier 44, having a feed back resistor 46, thereby to provide a gain of the order of about a 700 multiple. Applicants have found that a gain of this order is necessary in order to make the desired calculations later in the system, but with such a gain. the voltage would normally be too high, as a practical matter, for computational use, and therefore, a controlled ramp offset signal is also applied to a summing junction 47 by a conductor 48 through a resistor 49. This offset signal is provided by a ramp offset digital-analog converter (DAC) 50, which receives controlled digital words or binary bits and converts them to a step-shaped signal, having a frequency corresponding to one time cycle of operation of the process system, as shown by the curve in Figure 3.This ramp offset functions in cooperation with the amplifier 44 so that a controlled quantity is subtracted from the input to the amplifier, whereby during one time cycle of operation the output from the amplifier 44 gradually decreases from about +5 volts to about -5 volts. The ramp offset 50 is a fast acting electronic servo (typically 50 microseconds), and is controlled so that between time cycles of operation its output is adjusted by one step as shown in Figure 3. Thus, at the beginning of the next succeeding time cycle, the output from the amplifier 44 is again about +5 volts as shown in Figure 4. Any suitable type of ramp offset DAC may be employed, such as a 14 bit Model ZD354Ml, having a resolution of 1 part in 10,000. as manufactured by Zeltex, Inc., for example.The amplifiers 35 and 44 may be of any suitable type such as Model OPOSEJ, as manufactured by Precision Monolithics. Inc., for example.
The output from the amplifier 44 is applied to a conventional 12 bit analog-digital converter (ADC) 52 by a conductor 54, wherein the output signal from the amplifier is measured and digitalized. The output from the ADC is in the form of digital words corresponding to the scale weight, but greatly amplified.
A binary number system is employed as the code for information handling because of certain advantages hereinafter brought out. Thus, as seen in Figure 1 the weigh feeder system is provided with a digital computer 56. which includes processing, memory and control systems. Any suitable digital computer may be employed such as a micro processor Model IMP16C/300 and memory Model IMP16P/004P, as manufactured by National Semiconductor Corp., for example.
Still referring to Figure 1, a plurality of inputs are applied to the processor to control the same. A conventional off-on switch 58 serves to control the main power supply to the processor. A switch 60 is provided whereby the refill sequence may be automatically actuated (switch in "auto") when product level reaches low level, or at any product level (switch in "manual") or, the refill sequence may be bypassed (when switch is in "bypass") or, the refill sequency is a procedure wherein the motor speed will not lockout for refill thereby actuating the refill controller until the computer first senses that the scale is undisturbed by foreign influences and secondly, senses that the feed rate agrees with the set point. Input switch 62 serves to convert the system between gravimetric control and volumetric control, as desired. This will be explained more fully hereinafter.A reset total push button switch 64 serves to reset the processor for an entirely new batch of data. Also, there is provided a scale weight switch 66, that inputs into the processor the scale weight, S, which is determined by the size or model of the feeder assembly 10 being employed in the particular installation. This factor is set once and is not adjusted unless a new model or size of feeder assembly is installed.
A motor speed input switch 67 is provided, which is set by the operators at a preselected percent in the range between 0% to 100%, to input into the processor the desired operating speed of the motor when operating volumetrically.
Input switch 68 is actuated by the operator to input the desired feed rate R (LBS./HR) into the processor. This is a 16 bit digital word, stored in memory, that represents the desired slope of the feed line or curve 70, Figure 5. Input switch 72 is also actuated by the operator to input the underweight set point into the processor memory. It represents the selected minimum limit of the feed rate range, as is indicated by the dotted line 74 in Figure 5. This limit is expressed as a percentage of from 0 to 9.99% below the desired feed rate R.
Input switch 76 inputs the overweight set point into memory. It represents the selected maximum limit of the feed range, as is indicated by the dotted line 78 in Figure 5. This limit also is expressed as a percentage of from 0 to 9.99who above the desired feed rate R.
Still referring to Figure 1, digital switch 80 is an operator activated switch to input into the memory, the desired minimum or low level of the material in the container 12. The range of this switch is from 0 to 99.9%. Thus. for example, if the operator desires the system to shift into its refill mode when the container 12 is down to 5% of its capacity. he sets the low level switch 80 at 05.0who. Digital input switch 82 is an out of low level switch with a range of from 0 to 99.9% so that the operator can input into memory the desired level for the system to shift out of its refill mode to its normal operative mode.Thus, for example, the operator could set this switch for 90.0coo, whereby when the container 12 reaches 90etc of its capacity, the system would shift out of its refill mode to its normal operative mode.
In addition, the processor also receives a signal from a shaft encoder 83. This allows a correlation to be made between system noises induced by the movement of the machinery mounted on the scale or movement of the product in the storage hopper. This correlation may then be used as a correction factor, subtracting out noise components due to moving machinery on the scale such as for example, the motor, gear box, augers, as well as movement of the material in the container. The processor 56 is provided with a learn mode input switch 85, which is shiftable between normal operation and learn mode operation.
When a new material is going to be processed by the system or when the system is first installed, the system is set in operation, but instead of discharging the substance 14 out of the system, it is collected in a small container. not shown, and retained on the scale 22 so that there is no net loss of weight from the scale. The switch 85 is shifted to its learn mode position. The motor 18 is run throughout its speed range and the shaft encoder 83 picks up the noise corresponding to the rotational position of the drive shaft and sends out digital signals to the processor, which are stored in memory. After this information has been stored in memory, the small container is removed from the scale and the switch 85 is shifted to its normal operation. Figure 6 illustrates the positional relationship of the shaft encoder 83 with respect to the material being fed. Figure 7 illustrates the output of the ADC 52 with respect to time, before it is corrected for the induced system noises. Processor 56, as another operation thereof, subtracts the stored data from the data received from the ADC 52 to present a relatively straight line of this information for processing. Figure 8 illustrates the corrected output from the ADC 52 for one time cycle of operation. Any suitable type of shaft encoder may be employed such as a Series 2500, Optical Encoder. as manufactured by Renco Corporation.
The microprocessor 56 has, as an output. a display device 84 which indicates the total feed commanded. This device indicates the total feed asked for by the operators over a relatively long period of time. Thus, the processor, as one operation thereof, receives the selected feed rate R from the input switch 68 and integrates it with respect to the elapsed time and continuously displays the total feed commanded, in pounds. As another output there is provided a display device 86 which indicates the actual total feed discharge from the feeder assembly 10. Thus, the processor, as one operation thereof, receives a signal from the ADC 40 corresponding to the total scale weight, which indicates the quantity of material remaining in the container. This signal represents the amount of weight of material in the feeder 12.Any change in this signal, except during refill, represents the amount of material fed. These changes are totalled by the processor to give the actual total feed, in pounds. During refill the amount of material fed is computed by the processor from the reading of the, feed rate meter and the time it takes to refill. When refill is completed the signal from the ADC 40 is again used to compute the total amount of material fed. The operators can compare the actual total feed, as displayed at 86, with the total feed commanded, as displayed at 84, to determine how the system is functioning and, if necessary, take corrective action.
A feed rate display device, such as a four digit meter, 88, for example, shows the actual feed rate in pounds per hour of the feeder assembly. Thus, the processor, as another operation thereof, receives the amplified scale weight signal from the ADC 52 and corrects this signal as pointed out hereinbefore, and then differentiates the signal with respect to time to produce a signal indicative of the present rate of feed. This can be visually compared to the desired feed rate as set by the input switch 68 to determine possible malfunctions in the system.
A scale weight display device, such as a three digit meter 90, for example, is provided to indicate the actual percentage of product remaining in the container 12 on the scale 22.
Thus, the processor, as still another operation thereof, receives a signal from the ADC 40 corresponding to the weight on the scale 22 and computes the actual percentage of material remaining in the container 12. Next, there is provided, as another output of the processor 56, a three digit motor speed meter 92 which indicates the actual speed of the motor 18.
That is, the processor receives a signal from a tachometer 93, indicating the speed of the motor 18, by a conductor 95 through a conventional analog-digital converter 97, and outputs a motor speed on meter 92. While this speed is usually relatively constant, it may vary to some extent over a long period of time. It is advantageous for the operator to know, as any sudden variations may indicate a blockage of material in the system.
In addition, there are provided operational and warning indicators, such as lights, buzzers, or the like, for example, for purposes of keeping the operators informed. An underweight light 94 indicates when the actual feed rate, as indicated by the meter 88. falls below the underweight set point 72, and an overweight light 96 indicates when the actual feed rate exceeds the overweight set point 76. That is, when the actual feed rate falls below the line 74, Figure 5, which is set by the underweight set point switch 72, the underweight light 94 is actuated, and when the actual feed rate is above the line '8, Figure 5, which is set by the overweight set point switch 76, the overweight light 96 is actuated.Preferably, there is a preselected time delay period of from about 0 to about 3 minutes delay after the feed rate meter 88 indicates an overweight or an underweight condition before the warning lights are actuated. Light 98 shows when the system is in its refill mode, i.e. when the container 12 is being refilled. The light 100 indicates that the system is in its ACRILOK mode. This mode of operation will be explained more fully hereinafter. Run light 102 indicates that the system is in operation and standby light 104 indicates that the system power has been applied, but all machinery is stopped. The light 106 indicates that the bin 12 is in its low level condition.
A control output 108 from the processor 56 is applied to a digital-analog converter (DAC) 110. Any suitable type of DAC may be employed, such as a 10 bit Model AD7520L, as manufactured by Analog Devices, Inc. for example. In the DAC, the digital pulses are converted to an analog signal, which is applied to the tachometer 93 and an SCR motor control 112. Any suitable type of motor control may be employed such as Acrison, Inc.'s Model ACR100BTG, for example. This controller produces an output which is applied to the motor 18 to control the speed thereof, and thereby control the discharge rate of the material from the feeder assembly 10.
In operation, the operator must determine whether he wishes to operate in the volumetric mode or the gravimetric mode. If the volumetric mode is selected, then the operator sets the motor speed switch 67 to the desired motor speed. In this mode of operation, the output of the processor is a digital word conveyed by conductor 108 to the DAC 110. The DAC causes a voltage from 0 to 6 volts to appear on conductor 111 and the SCR motor control adjusts the speed of the DC motor 18 until the output of the tachometer 93 exactly equals the voltage on the conductor 111. While this mode of operation is desirable at certain times, it does not provide as high a degree of accuracy as the gravimetric mode and, consequently, the gravimetric mode is predominantly employed.
In operation, when the operator sets the switch 62 to the gravimetric mode of operation, the operator then sets the feed rate switch 68 to the desired feed rate R (LBS./HR), which, as discussed hereinbefore, determines the slope of the feed curve or line 70, Figure 5. The processor then computes the conversion time which may be, for example, T =5(2.5) R in seconds, where S is the scale weight as set by switch 66. Next, the ramp offset 50 is energized which, as pointed out hereinbefore, limits the range of the output 54 of the amplifier 44 to between +5 volts and -5 volts. Initially, it sets said output at about +5 volts. Next, the processor starts the conversion time. The conversion time T, may, for example, be about 250 milliseconds. A plurality of samples, for example, 100 are taken based on the input from the ADC 52.The conversion time T, or time to complete one cycle of operation is selected to be within the range of from about 1/4 seconds minimum to a maximum of from about 100 to 200 seconds. During this cycle, the output from the amplifier 44 moves from about +5 volts to about -5 volts. Each sample is stored in memory. The samples, generally illustrated in Figure 5 by dots, form the actual feed curve 114. One of the most important operations of the processor is to compute a regression analysis on these samples with respect to time T, and thence compute the RMS error on Figure 5 illustrates an upper 3 RMS error line at 121 and a lower 3 RMS error line at 123.
If less than 20, for example, sample data points exceed 3RMS error in either direction, as indicated at 115 in Figure 5, regression on T is recomputed with the data points exceeding 3 RMS, as indicated at 117, excluded. Thence, the computed slope of the actual feed curve is compared with the slope of the desired or set point feed line, and a corresponding correction command is outputted at 108 to adjust the motor control 112, thereby to adjust the actual rate of discharge of the material from the feeder assembly 10. This time cycle of operation is continuously repeated to continuously adjust the motor control 112.
If more than 20, for example, sample data points exceed 3 RMS error in either direction, as indicated at 119 in Figure 5, the system is changed into its ACRILOK mode. That is, the ACRILOK light 100 is energized and the output command 108 to the DAC 110 and motor control 112 is not updated, but continues in its present state. That is, the processor continues to receive sample signals from the ADC 52 and compute the regression analysis thereof, but no additional correction command is outputted at 108. The feed rate meter 88 is also locked at the last control data point. The feed system remains in a lock condition until in a subsequent time cycle of operation less than 20 data points exceed 3 RMS error, and then the system is returned to its normal operating mode and the correction command is again outputted at 108.
As still another operation of the processor, the total feed commanded, as indicated at 84, is compared to the actual total feed, as indicated at 86, periodically, such as every 5 or 10 minutes, for example. If there is a deviation exceeding predetermined limits, the processor modifies the aforementioned command output at 108 to gradually correct the actual feed to the total feed. This is programmed to take frora about 5 minutes to about 10 minutes, thereby to avoid sharp fluctuations in the feed rate command, but nevertheless, obtain as close as possible the total feed selected over a long period of time.
A further operation of the processor, is to determine when the scale weight, as indicated by the meter 90, drops to a predetermined low level, as set by the low level switch 80, and then search for an "on rate" condition. That is, the output signal outputted at 88 is monitored until the difference between it and the feed rate set by switch 68 is less than a predetermined error limit. Then the system is changed into its refill mode wherein the output command 108 and feed rate meter 88 are not updated, but are retained in their existing state, similar to the operation as described hereinbefore in connection with the ACRILOK mode. At the same time, a command is outputted to a refill circuit 120, which sends a signal to a refill controller 122 that controls the flow of material from a refill source 124 to the container 12.The controller 122 could be an AC motor when handling dry particulate material or could be a valve when handling liquids.
The system remains in the refill mode until the processor detects that the container 12 is refilled, as indicated by the scale weight meter 90, and as selected by the out of low level switch 82. At this time, the processor outputs a signal to the refill circuit 120 which, in turn, directs the refill controller 122 to discontinue refilling the container 12. The processor then returns the system to its normal operational mode.
Figures 9 to 14 are various flow charts of the computer 56. Thus, Figure 9 is a flow chart showing the wait subroutine, and Figure 10 is a flow chart of the second interrupt subroutine, which is a display type subroutine. Figure 11 is a flow chart of the 'derive' subroutine wherein the normal conversion time is calculated. Figures 12A, 12B and 12C combine to form a flow chart of the main routine of the computer 56. Figures 13 and 14 are flow charts of the calculate and learn mode subroutines, respectively.
Initial conditions and assumptions are, as follows: GRAV/VOL. = GRAV.
ON/OFF = OFF AUTO/MAN./BY-PASS = AUTO SCALE WEIGHT = 1000. Ibs.
FEED RATE SET POINT = 200 LBS./HR.
INTO LOW LEVEL = 20% OUT OF LOW LEVEL = 80% MOTOR SPEED = 50% ASSUME MAX. FEED RATE OF MACHINE = 2000 LBS./HR REAL TIME CLOCK RATE = 1 KHZ (Clock causes interrupt) Flags set by hardware: Grav. Flag Run Flag (Learn Flag ) (By-Pass Flag ) an. Flag ) Reset total Flag Number of Samples per slope calculation - 256 The time between samples is chosen so that you have covered about 60% of the range of the ramp offset 50 for each slope calculation. The ramp offset is reset for each new slope calculation. Thus, the lower the set point the longer it takes to calculate the slope.
The following is a program with descriptive comments for carrying out the basic operations of the computer 56: *B *L T/2 *T T/2 END ? 177554 OUT= 177554 ) 177552 DATA = 177552 ) 177554 OFFSET = 177554 ) 177550 SET = 177550 177550 LKS = 040200 ONEF = 040200 ) 040400 TWOF = 040400 ) 040700 SIXF = 040700 ) 000004 WAITR = 4 ) 000011 READ = 11 ) DEFINITIONS OF 000012 WRITE = 12 ) CONSTANTS, ADDRESSES 000000 R0=%0 ) AND REGISTERS.
000001 R1 = %1 ) 000002 R2 = %2 ) 000003 R3 = %3 000004 R4 =%4 ) 000005 R5 =%5 ) 000006 R6 =%6 000006 SP =%6 ) 000007 PC =%7 ) 057452 $ADR=57452 ) 060206 $CMR=60206 ) 063500 $DVR=63500 ) 061664 $GCO=61664 064146 $IR=64146 ) LINKS TO FLOATING POINT 064232 $MLI=64232 ) MATH PACKAGE (FPMP-WRITTEN 06412 $MLR=64412 ) BY D.E.C.) 064772 $NGR=64772 065146 $POLSH=65146) 060264 $RCl=60264 ) 065024 SRl=65024 ) 057446 #SBR=57446 ) 000174 .=174 000174 050722 .WORD INT ) SET UP 1KHZ.CLOCK INTERRUPT 000176 000340 .WORD 000340) VECTOR 050000 .=50000 050000 010767 START:MOV PC, STKST ) 003642 ) 050004 016706 MOV STKST, SP ) -; STACK POINTER IS 003636 NOW POINTING 050010 005746 TST (SP) - ) TO STKST 050012 013700 MOV @ #177552.R0 177552 050016 052767 BIS #2, SET ) ; INITIALIZE 000002 ) OFFSET 127524 ) VOLTAGE TO 050024 012767 MOV #177777, OFFSET ) ZERO (IN ) COMPLEMENT FORM 177777 ) 127522 ) 050032 005067 CLR SET ) ;INITIALIZE 127512 ) CONTROL RQ @ GE 001 ) VOLTAGE TO 050036 012767 MOV #177777, OFFSET ) ZERO(IN ) COMPLEMENT FORM) 177777 127510 ) INITIALIZE 050044 000004 IOT ) TELETYPE 050046 000000 .WORD 0 ) THROUGH 050050 002 .BYTE 2.0 ) IOX (IOXIS ) WRITTEN BY D.E.C.) 050051 000 050052 000004 IOT ) SETS UP CONTROL P 050054 050060 .WORD ASK ) RETURN ADDRESS 050056 003 .BYTE 3,0 ) 050057 000 050060 012701 ASK: MOV #TABLE 1, R1; GET ADDRESS OF TABLE OF QUESTIONS 050400 050064 012767 MOV #9. LOOP; SET UP LOOP FOR NINE QUESTIONS 000011 003552 050072 012700 MOV #MTABLE, R0; GET ADDRESS OF TABLE CONTAINING POINTERS TO THE 9 QUESTIONS 050356 050076 012067 MORE: MOV (R0)+,WBUFFER 000002 050102 000004 IOT PRINT THE 050104 000000 WBUFFER:.WORD 0 ) QUESTION 050106 012 .BYTE WRITE, 1 ) 050107 001 050110 000004 IOT GET A REPLY 050112 050250 .WORD BUFFER ) 050114 011 .BYTE READ, 0 ) 050115 000 050116 0004 WAITT: IOT ) WAIT UNTIL REPLY IS 050120 050116 WORD WAITT ) GIVEN BY OPERATOR AT 050122 004 .BYTE WAITE, 0 ) TTY.
050123 000 050124 012746 MOV #BUFFER+6, (SP)-; PUT ADDRESS OF REPLY ON STACK, 050256 050130 016746 MOV BUFFER +4, (SP)-; PUTLENGTH OF REPLY ON STACK 000120 050134 162716 SUB #2, (SP) 000002 050140 005046 CLR' (SP)- ) FREE FORMAT 050142 005046 CLR (SP)- ) CONVERSION 050144 004767 JSR PC, $RCI; CONVERT REPLY TO FLOATING POINT # 010114 050150 012621 MOV (SP)+, (R1)+) )STORE REPLY IN 050152 012621 MOV (SP)+, (R1)+)TABLE 1.
050154 005367 DEC LOOP 003464 050160 001346 BNE MORE 050162 005046 CLR (SP)050164 012746 MOV #042722, (SP)- ) PUT FLTING PT. 1680 ON 042722 THE STACK RQ@GE 002 050170 012701 MOV #TABLE 1+14. R1 050414 050174 014146 MOV (R1)-, (SP)050176 014146 MOV (R1)-, (SP)- ) CALCULATE ) # SAMPLES/SEC.
050200 014146 MOV (R1)-, (SP)- ) 050202 014146 MOV (R1)-, (SP)- ) 050204 004467 JSR R4, $POLSH ) 014736 ) 050210 063500 $DVR ) 050212 050214 .WORD .+2 050214 011667 MOV (SP), HOLD8 ) STORE #SAMPLES/ 003450 ) SEC 050220 016667 MOV 2 (SP), HOLD9 000002 003444 050226 004467 JSR R4, $SPOLSH ) DIVIDE SAMPLES/ 014714 ) SEC BY 1680 TO ) GIVE THE # OF 050232 063500 $DVR ) INTERRUPTS PER SAMPLE 050234 065024 $RI ) 050236 050240 .WORD .+2 050240 012667 MOV (SP)+, INTSAM; STORE RESULT.
003430 050244 000167 JMP INIT; GO TO THE INITIALIZATION SECTION 002126 050250 000100 BUFFER: 100 ) 050252 0000O0 0 ) BUFFER FOR ) REPLYS TO 050254 000000 0 ) QUESTIONS 050356 .=.+100 050356 050450 MTABLE:TABLE ) 050360 050472 TABLE2 ) 050362 050506 TABLE3 ) 050364 050522 TABLE4 ) POINTERS TO 050366 050544 TABLES ) THE QUESTIONS 050370 050570 TABLE6 ) 050372 050604 TABLE7 ) 050374 050630 TABLE8 ) 050376 050662 TABLE9 ) 050450 TABLE1: .=.+50 050450 000014 TABLE: TABLE2-TABLE-6 050452 000000 0 050454 000014 TABLE2-TABLE-6 THE QUESTIONS 050456 015 .BYTE 15, 12 050457 012 050460 106 .ASCII 'FEED V/S='; VOLTS/SECOND FEED RATE 050461 105 050462 105 050463 104 050464 040 050465 126 050466 057 RQ@GE 003 050467 123 050470 075 050472 .EVEN 050472 000006 TABLE2:TABLE3-TABLE2-6 050474 000000 0 050476 000006 TABLE3-TABLE2-6 050500 124 .ASCII 'TIME='; SMALL SAMPLE TIME IN SECONDS 050501 111 050502 115 050503 105 050504 075 050506 .EVEN 050506 000006 TABLE3:TABLE4-TABLE3-6 050510 000000 0 050512 000006 TABLE4-TABLE3-6 050514 043 .ASCII '#SAM=t; #SAMPLES PER SMALL SAMPLE TIME 050515 123 050516 101 050517 115 050520 075 050522 EVEN 050522 000014 TABLE4: TABLE5-TABLE4-6 050524 000000 0 050526 000014 TABLE5-TABLE4-6 050530 105 .ASCII 'ERR BND V/S='; SMALL SAMPLE ERROR BAND IN VOLT/SECOND 050531 122 050532 122 050533 040 050534 102 050535 116 050536 104 050537 040 050540 126 050541 057 050542 123 050543 075 050544 .EVEN 050544 000016 TABLE 5: TABLE6-TABLE5-6 050546 000000 0 050550 000016 TABLE6-TABLE5-6 050552 043 .ASCII'#SM SAM/LARGE=':# OF SMALL SAMPLES PER LARGE SAMPLE TIME.
050553 123 050554 115 050555 040 050556 123 050557 101 050560 115 050561 057 050562 114 050563 101 RQ@GE 004 050564 122 050565 107 050566 105 050567 075 050570 .EVEN 050570 000006 TABLE6: TABLE7-TABLE6-6 050572 000000 0 050574 000006 TABLE7-TABLE6-6 050576 105 .ASCII 'ERR K='; OUTPUT ERROR CONSTANT "K" THIS IS SYSTEM GAIN.
050577 122 050600 122 050601 040 050602 113 050603 075 050604 .EVEN 050604 000016 TABLE7: TABLE8-TABLE7-6 050606 000000 0 050610 000016 TABLE8-TABLE7-6 050612 043 .ASCII'#SM SAM # OF SMALL B4 SW='; SAMPLES BEFORE SWITCHING.
050613 123 050614 115 050615 040 050616 123 050617 101 050620 115 050621 040 050622 102 050623 064 050624 040 050625 123 050626 127 050627 075 050630 .EVEN 050630 000024 TABLE8: TABLE9-TABLE8-6 050632 000000 0 050634 000024 TABLE9-TABLE8-6 050636 123 .ASCII 'STARTUP ERR BND V/S=' 050637 124 050640 101 050641 122 050642 124 050643 125 050644 120 050645 040 050646 105 050647 122 050650 122 050651 040 050652 102 050653 116 RQ@GE 005 050654 104 050655 040 050656 126 050657 057 050660 123 050661 075 050662 .EVEN 050662 000024 TABLE9::TABLEZ-TABLE9-6 050664 000000 0 050666 000024 TABLEZ TABLEZ-TABLE9-6 050670 043 .ASCII'#RM SAM IN STARTUP=' 050671 123 050672 115 050673 040 050674 123 050675 101 050676 115 050677 040 050700 111 050701 116 050702 040 050703 123 050704 124 050705 101 050706 122 050707 124 050710 125 050711 120 050712 075 050714 .EVEN 050714 000 TABLEZ:.BYTE 0 050716 .EVEN 050716 000167 LINK: JMP RESET 001212 050722 005737 INT: TST @#177552; START QF INTERRUPT SERVICE.
117552 050726 005367 DEC INTS 002556 ) IS IT TIME TO SAMPLE 050732 001401 BEQ SAMPLE 050734 000002 RT1 050736 004767 SAMPLE:JSR PC, SAVE 001366 050742 005267 INC SET; START A/D CONVERSION 126602 050746 105767 CK: TSTB SET 126576 050752 100375 BPL CK 050754 016700 MOV DATA, RO; GET THE A/D OUTPUT 126572 050760 005100 COM R0 RQ@GE 006 050762 016767 MOV INTSA, INTS; RESET # INTERRUPTS/ SAMPLE.
002524 002520 050770 022700 CMP #980.,R0 ) IS THE A/D OUTPUT 001724 ) GREATER THAN ) 9 VOLTS? IF ) YES RESET.
050774 003750 BLE LINK ) 050776 060067 ADD R0, Y+2 ) ) SUM THE Y VALUE 002514 FOR THE REGRESSION.
051002 005567 ADC Y 002506 051006 016701 MOV X, R1 ) MULTIPLY THE X 002506 ) BY THE Y 051012 004767 JSR PC. MULTY ) 001062 051016 060167 ADD R1, XY+2 ) 002514 ) SUM THE XY VALUE 051022 005567 ADC XY ) FOR THE ) REGRESSION.
002506 ) 051026 060067 ADD RU XY ) 002502 051032 005367 DEC X; REDUCE X VALUE BY 1 002462 051036 001402 BEQ CALC; IF X=0 IT IS TIME TO CALCULATE THE SLOPE 051040 004767 JSR PC, RESTORE 001312 051044 016767 CALC: MOV N,X; RESET THE X VALUE 002500 002446 ) 051052 016767 MOV Y,YC ) 002436 ) STORE THE ) #Y 002464 ) 051060 016767 MOV Y+2,YC+2 ) 002432 002460 051066 016767 MOV XY,XYC ) 002442 ) ) STORE THE #X 002444 051074 016767 MOV XY+2,XYC+2 ) 002436 002440 051102 005067 CLR XY 002426 051106 005067 CLR XY+2 ) RESET XY AND ) EY FOR NEXT 002424 ) SAMPLE PERIOD.
051112 005067 CLR Y ) 002376 051116 005067 CLR Y+2 002374 051122 016746 MOV N1+2,(SP)- ) 002426 ) PUT # SAMPLES ) ON THE STACK.
RQ@GE 007 ) 051126 016746 MOV N1. (SP)- ) 002420 051132 016700 MOV XYC, R0 ) 002402 ) 051136 016701 MOV XYC+2,R1 ) 002400 ) CONVERT eXY TO ) A FLOATING POINT 051142 004767 JSR PC,DFLOAT ) # AND PUT IT ON ) THE STACK.
000620 051146 004467 JSR POLSH 013774 ) 051152 064412 $MLR ) (#SAMPLES) x ) #XY 051154 051156 .WORD .+2 ) 051156 016746 MOV X1+2,(SP)- ) 002350 ) PUT #X ON 051162 016746 MOV Xl, (SP)- ) 002342 051166 016700 MOV YC, R0 002352 ) CONVERT z Y TO 051172 016701 MOV YC+2,R1 ) FLOATING POINT 002350 ) AND OUT IT ON ) THE STACK.
051176 004767 JSR PC.DFLOAT 000564 051202 004467 JSR R4,$POLSH ) 013740 ) GET (#SAMPLES) ) (#XY)-#X#Y 051206 064412 $MLR ) 051210 057446 $SBR ) 051212 051214 .WORD .+2 ) 051214 016746 MOV N1+2, (SP)- ) )PUT # SAMPLES 002334 ) ON THE STACK.
051220 016746 MOV NI; (SP)- 002326 051224 016746 MOV X2+2, (SP)- ) ) PUT#X2 ON 002276 ) STACK.
051230 016746 MOV X2, (SP)- ) 002270 051234 004467 JSR R4, $POLSH ) GET (#SAMPLES) 013706 ) (#X2) 051240 064412 $MLR ) 051242 051244 .WORD .+2 051244 016746 MOV X1+2,(SP)- ) 002262 ) PUT #X ON ) STACK.
051250 016746 MOV X1, (SP)- ) 002254 051254 016746 MOV X1+2,(SP)-; #X ON STACK AGAIN 002252 051260 016746 MOV X1, (SP) 002244 051264 004467 JSR R4, $POLSH ) 013656 ) 051270 064412 $MLR ) ) (#SAMPLES)(#KY)-(#X)(#Y) RQ@GE 010 ) (#SAMPLES)(#X2)-(#X)(#X) 051272 057446 $SBR ) ) SLOPE 051274 063500 $DVR ) 051276 064772 $NGR ) 051300 051302 .WORD .+2 ) 051302 016746 MOV SAMS01+2,(SP)-) 002252 ) PUT #SAMPLES/ SECOND ON ) STACK 051306 016746 MOV SAMS01,(SP)- ) 002244 051312 004467 JSR R4, $POLSH 013630 051316 064412 $MLR 051320 051322 .WORD .+2 051322 005046 CLR (SP)051324 012746 MOV #041710,(SP)-;FLOATINGPOINT 100 041710 051330 004467 JSR R4, $POLSH 013612 051334 063500 $DVR;;VOLT=SLOPExSAMPLE SEC SEC 100 051336 051340 .WORD .+2 051340 011667 MOV (SP), TEMP ) ) STORE V/S FOR 002216 ) LATRE USE.
051344 016667 MOV 2 (SP), TEMP+2 ) 000002 002212 051352 016746 MOV PREV+2,(SP) PUT PREVIOUS 002212 )V/S ON STACK 051356 016746 MOV PREV, (SP)- ) 002204 051362 004467 JSR R4, $POLSH ) 013560 ) PREV-CURRENT ) V/S.
051366 057446 $SBR ) 051370 051372 .WORD .+2 051372 032716 BIT #100000,(SP) ) 100000 ) 051376 001404 BEQ OVR ) GET THE ) ABSOLUTE VALUE 051400 004467 JSR R4, $POLSH ) |PREV V/S CURRENT V/Si 013542 ) 051404 064772 $NGR ) 051406 051410 .WORD .+2 051410 005767 OVR: TST ERRSW ) ) LARGE OR SMALL 002156 ) ERROR BAND? 051414 001410 BEQ LARGE ) 051416 005367 DEC ERRSW-SMALL- DECREASE # SMALL SAMPLES BEFORE SWITCHING ERROR BANDS.
002150 051422 001405 BEQ LARGE 051424 016746 MOV SE+2,(SP)- ) ) MOVE SMALL 002150 ) ERROR BAND ) ONTO STACK.
051430 016746 MOV SE,(SP)- ) 002142 0514434 000404 BR TSTE; TEST FOR ACRILOK RQ@GE 011 051436 016746 LARGE:MOV LE+2,(SP)- ) 002142 ) MOVE LARGE ) ERROR BAND ) ONTO STACK.
051442 016746 MOV LE,(SP)- ) 002134 051446 004467 TSTE: JSR R4,$POLSH ) 013474 ) COMPARE ) |PREV V/S ) CURRENT V/S| 051452 060206 $CMR ) TO ALLOWABLE 051454 051456 .WORD .+2) ) ERROR IN V/S ) AND JMP IF TOO 051456 003402 BLE .+6 ) LARGE.
051460 000167 JMP ACRILOCK ) 000630 051464 016767 MOV TEMP, PREV: ) THIS IS .+6 002072 ) YOU ARE WITHIN ) THE ERROR BAND 002074 ) (STORE THE FEED ) RATE IN V/S 051472 016767 MOV TEMP+2,PREV+2 002066 002070 051500 005267 INC UPDAT;SET THE FLAG TO INDICATE A NEW FEED RATE HAS JUST BEEN CALCULATED 002002 051504 005767 TST LOS ) ARE WE USING 002102 ) LARGE OR SMALL ) SAMPLES? 051510 001451 BEQ LAR 051512 005367 DEC LOS:DECREMEMT # OF SMALL SAMPLES.
002074 051516 016746 UPDATE:MOV K+2,(SP)- ) 002076 ) PUT OUTPUT ) CONSTANT ) (SYSTEM GAIN) 051522 016746 MOV K, (SP)- ) ON THE STACK.
002070 051526 016746 MOV FR +2,(SP)- ) ) PUT DESIRED 002072 ) FEED RATE ON ) THE STACK.
051532 016746 MOV FR,(SP)- ) 002064 051536 016746 MOV PREV+2,(SP)- ) ) PUT CURRENT 002026 ) FEED RATE ON ) THE STACK.
051542 016746 MOV PREV,(SP)- ) 002020 051546 004467 JSR R4,$POLSH ) 013374 ) 051552 057446 $SBR ) (CURRENT-DESIR ) ED)K + CONWOR 051554 064412 $SMLR ) PREVIOUS MOTOR ) SPEED.
051556 065024 $Rl ) 051560 051562 .WORD .+2 ) 051562 062667 ADD (SP)+,CONWOR ) 002040 051566 026727 CMP CONWOR,#2000 ) 002034 ) 002000 ) IF RESULT IS ) GREATER THAN ) 2000 (6V@ 051574 100403 BMI CNTU ) OUTPUT OF D/A) ) MAKE IT=2000; 051576 012767 MOV#1777.CONWOR ) I.E. LIMIT ) RESULT TO 6 VOLTS 001777 002022 RQ@GE 012 05604 042767 CNTU:BIC#02,SET; GET SET TO UPDATE MOTOR SPEED.
000002 125736 051612 005167 COM CONWOR ) 002010 ) THE D/A USES ) NEGATIVE LOGIC.
051616 016767 MOV CONWOR. OUT ) 002004 125730 051624 005167 COM CONWOR; BUT THE PROGRAMMER PREFERS TO THINK POSITIVE.
001776 051630 004767 JSR PC,RESTORE;GO BACK TO WHERE YOU WERE BEFORE BEING RUDELY INTERRUPTED.
000522 051634 016746 LAR: MOV PREV+2,(SP) ) 001730 ) 051640 016746 MOV PREV,(SP(- ) IF YOU ARE ) CALLING FOR 001722 ) LARGE SAMPLES, ) I.E. AN AVERAGE 051644 016746 MOV AVG+2, (SP)- ) OF THE V/S CALCULATIONS, THEN YOU ARE 001762 ) HERE, COMPUTE ) THE RUNNING 051650 016746 MOV AVG, (SP)- ) AVERAGE.
001754 ) 051654 004467 JSR R4, $POLSH ) 013266 051660 057452 #ADR ) 051662 051664 .WORD .+2 ) 051664 005767 TST SSLST ) 001744 ) IF YOU HAVE 051670 001411 BEQ CALL ) ENOUGH V/S ) CALCULATIONS 051672 005367 DEC SSLST ) USE THE ) AVERAGE;I.E.
001736 ) JUMP TO CALL.
051676 001406 BEQ CALL ) 051700 012667 MOV (SP)+,AVG. ) 001724 ) YOU DON'T HAVE ) ENOUGH V/S 051704 012667 MOV (SP)+,AVG+2 ) CALCULATIONS.
) RETURN TO WHERE 001722 ) YOU WERE BEFORE ) THE INTERRUPT.
051710 004767 JSR PC,RESTORE ) 000442 051714 016767 CALL: MOV SSLSTI.SSLST 001716 ) 001712 ) RESET #SMALL ) SAMPLES PER 051722 016746 MOV SSLSTR+2,(SP)- ) LARGE SAMPLE ) TIME.
001714 051726 016746 MOV SSLSTR,(SP)-;PUT # SMALL SAMPLES/LARGE SAM.
ON STACK.
001706 051732 004467 JSR R4,$POLSH ) 013210 ) GET THE AVER.
) OF THE SMALL ) SAMPLES COM051736 063500 $DVR ) PRISING THE ) LARGE SAMPLE.
051740 051742 .WORD .+2 051742 012667 MOV (SP)+,PREV ) 001620 ) STORE THE ) AVERAGE.
051746 012667 MOV (SP)+,PREV+2 ) 001616 RQ@GE 013 051752 005067 CLR AVG 001652 ) RESET THE AVG.
051756 005067 CLR AVG+2 ) 051762 00167 JMP UPDATE;REFRESH THE MOTOR SPEED.
177530 051766 012667 DFLOAT:MOV (SP)+,RTRN 000104 051772 005046 CLR (SP)- ) 051774 005046 CLR -(SP) ) 051776 005700 TST R0 ) 052000 003007 BGT POS27 ) 052002 002403 BLT OVE27 052004 005701 TST R1 052006 001432 BEQ ZER27 j 052010 000403 BR POS27 052012 005401 OVE27:NEG R1 ) 052014 005400 NEG R0 ) 052016 005601 SBC R1 ) 052020 006146 POS27: ROL -(SP) 052022 000241 CLC 052024 012702 MOV #240,R2 ) 000240 ) 052030 006101 NOM 27:ROL R1 ) 052032 006100 ROL R0 ) 052034 103402 BCS NOD27 ) DOUBLE 052036 005302 DEC R2 ) PRECISION 052040 000773 BR NOM27 ) INTEGER TO 052042 000301 NOD27:SWAB R1 ) FLOATING POINT 052044 110166 MOVB R1,4(SP) ) SUBROUTINE 000004 ) 052050 110066 MOVB R0,5(SP) 000005 ) 052054 105000 CLRB R0 ) 052056 150200 BISB R2,R0 ) 052060 000300 SWAB RO 052062 006026 ROR (SP)+ ) 052064 006000 ROR R0 ) 052066 006066 ROR 2(SP) ) ) 000002 ) 052072 010016 MOV R0,@SP ) 052074 000137 ZER27:JMP @(PC)+ ) 052076 000000 RTRN: 0 ) 052100 005002 MULTY:CLR R2 ) INTEGER MULTIPLY 052102 005004 CLR R4 ) SUBROUTINE 052104 012703 MOV #16.,R3 ) 16BIT x 16BIT= 000020 ) 32 BIT RESULT.
052110 006200 ASR R0 ) 052112 103001 MR: BCC .+4 ) 052114 060102 ADD R1,R2 RQ@GE 014 ) 052116 006002 ROR R2 ) INTEGER 052120 006000 ROR RO ) MULTIPLY 052122 005303 DEC R3 ) SUBROUTINE 052124 001372 BNE MR ) 16BITx16BIT= ) 32BIT RESULT.
052126 010001 MOV R0*R1 ) (CONT'D.) 052130 010200 MOV R2. R0 052132 000207 RTS PC 052134 052767 RESET:BIS&num;2,SET ) WHEN A/D OUTPUT 000002 ) 125406 ) RAMPS GREATER ) THAN 9V LIMIT 0521442 062767 ADD&num;17,OFFDAC ) RESET IT CLOSE 000017 ss 000136 | TO ZERO BY CHANGING THE 052150 016767 MOV OFFDAC,OFFSET 000132 ) OFFSET VALUE & BR< 125376 ) COMPARING, ) LOOPING. NOTE 052156 012767 MOV&num;24150,LOOP1; 90 MILLISEC THE RESPONSE 024150 000124 ) TIME OF 90 052164 005367 A:DEC LOOP1 ) MILLISEC FOR 000120 ) LARGE STEPS, & BR< 052170 001375 BNE A ) WHEN YOU GET 051272 062767 RESETA:ADD&num;1, ) CLOSE TO ZERO, OFFDAC ) RESPONSE TIME 000001 ) OF 5 MILLI 000106 ) SECONDS.
052200 016767 NOV OFFDAC,OFFSET) 000102 ) 125346 ) 052206 012767 MOV&num;4440,LOPP1; ) SMILLISEC ) 004440 ) WHEN A/D OUT 000074 ) PUT RAMPS 052214 005367 B:DEC LOOP1 ) GREATER THAN 9V 000070 ) LIMIT RESET IT 052220 001375 BNE B ) CLOSE TO ZERO 052222 005267 INC SET ) BY CHANGING THE 125322 ) OFFSET VALUE & BR< 052226 105767 WATHO:TSTB SET ) COMPARING, 125316 ) LOOPING.NOTE THE 052232 100375 BPL WATHO ) RESPONSE TIME 052234 026727 CMP DATA,&num;177631 ) OF 90MILLISEC 125312 ) FOR LRG STEPS & BR< 177631 ) WHEN YOU GET 052242 100001 BPL CONTIN ) CLOSE TO ZERO, 052244 000752 BR RESETA ) RESPONSE TIME 052246 016767 CONTIN:MOV N,X ) OF 5 MILLISEC 001276 ) ONDS.
001244 052254 016767 MOV INTSA,INTS: RESET &num; INTER RUPTS/SAMPLE 001232 001226 RQ&commat;GE 015 052262 005067 CLR Y ) 001226 ) ZERO THE SUMS; 052266 005067 CLR Y+2 ) THROW OUT THIS 001224 ) SAMPLE PERIOD 052272 005067 CLR XY ) DUE TO THE 001236 ) NEED FOR RE 052276 005067 CLR XY+2 ) SETTING.
001234 052302 004767 JSR PC,RESTORE;RETURN TO PREVIOUS TASK.
000050 052306 000000 OFFDAC:0 052310 000000 LOOP1:0 052312 000000 HPREMP:HALT;IF HOPPER IS EMPTY HALT.
052134 005267 ACRILOCK: INC ACRILK) 001266 ) 052320 005267 INC UPDAT ) SET ACRILOCK 001162 ) FLAG 052324 004767 JSR PC,RESTORE ) 000026 052330 012667 SAVE: MOV (SP)+. SAV ) 000016 ) 052334 010046 MOV R0,(SP)- ) 052336 010146 MOB R1,(SP)- ) 052340 010246 MOV R2,(SP)- ) SAVE SUBROUTINE 052342 010346 MOV R3,(SP)- ) 052344 010446 MOV R4,(SP)- ) 052346 010546 MOV R5,(SP)- ) 052350 000137 JMP &commat;(PC)+ ) 052352 000000 SAV O 052354 000000 SAV1: 0 ) 052356 005726 RESTORE: TST (SP)+ ) 052360 012605 MOV (SP)+,R5 ) 052362 012604 MOV.(SP)+,R4 ) 052364 012603 MOV (SP)+,R3 ) RESTORE 052366 012602 MOV SP)+,R2 ) SUBROUTINE.
052370 012601 MOV (SP)+,Rl 052372 012600 MOV (SP)+,R() ) RESTORE 052374 000002 RTI ) SUBROUTINE 052376 016746 INIT: MOVTABLE1+12,(SP)-; &num; SAMPLES ) YOU COME HERE 176010 ) AFTER ANSWERING ) QUESTIONS TO 052402 016746 MOVTABLE1+10,(SP) -ESTABLISH A NEW SET OF 176002 OPERATING PARAMETERS.
052406 004467 JSR R4,$POLSH 012534 052412 065024 $R1 052414 052416 .WORD .+2 052416 012667 MOV (SP) + ,HOLD: INTEGER &num; SAMPLES.
001226 052422 016746 MOV TABLE1+12,(SP)- ) 175764 ) RQ&commat;GE 016 ) 052426 016746 MOV TABLEl+10,(SP)- ) 175756 052432 016746 MOV TABLE1+12,(SP)- 175754 ) CALCULATE NEW 052436 016746 MOV TABLE1+10,(SP)- g 175746 ) x(x+1) 052442 005046 CLR (SP)- ) X(X@ ) 052444 012746 MOV &num;ONEF,(SP)- ) 040200 ) 052450 004467 JSR R4,$POLSH ) 012472 ) 052454 057452 $ADR ) 052456 064412 $MLR ) 052460 052462 .WORD .+2 ) 052462 005046 CLR (SP)- ) 052464 012746 MOV &num;;TWOF,(SP) 040400 052470 004467 JSR R4, $ POLSH ) 012452 ) CALCULATE 052474 063500 $DVR 052476 052500 WORD +2 ) x (x+1) z 052500 012667 MOV (SP)+,HOLD1 001146 PUT IT IN ) STORAGE 052504 012667 MOV (SP)+HOLD2 ) 001144 052510 005046 CLR (SP)- ) 052512 012746 MOV &num;ONEF,(SP)- ) 040200 ) 052516 016746 MOV TABLE1+12,(SP) 175670 ) 052522 016746 MOV TABLE1+10,(SP) 175662 ) 052526 005046 CLR (SP)- ) CALCULATE NEW 052530 012746 MOV &num;;TWOF,(SP)- ) #X2= (2x+1) (x+1)(x) 040400 ) 6 052534 004467 JSR R4,$POLSH ) 012406 ) 052540 064412 $MLR ) 052542 057452 $ADR ) 052544 052546 .WORD .+2 ) 052546 016746 MOV TABLE1+12.(SP)- ) 175640 ) 052552 016746 MOV TABLE1+10,(SP)- ) 175632 ) 052556 016746 MOV TABLE1+12,(SP)- ) 175630 ) 052562 016746 MOV TABLE1+10,(SP)- ) 175622 ) 052566 005046 CLR (SP)- ) 052570 012746 MOV &num;ONEF,(SP)- ) 040200 ) RQ&commat;GE 017 ) 052574 004467 JSR R4.$POLSH 012346 052600 057452 $ADR ) 052602 064412 $MLR ) 052604 064412 $MLR ) CALCULATE NEW 052606 052610 .WORD .+2 ) #X2= 052610 005046 CLR (SP)- ) (2x+1) (x+1)(x) 052612 012746 MOV &num;;SIXF,(SP)- ) 040700 ) 052616 004467 JSR R4, $POLSH ) 012324 052622 063500 $DVR ) 052624 052626 .WORD .+2 ) 052626 012667 MOV (SP)+,HOLD3 ) PUT IT IN 001024 ) STORAGE 052632 012667 MOV (SP)+,HOLD4 001022 052636 016746 MOV TABLE1+42,(SP) 175600 052642 016746 MOV TABLE1+40,(SP) 175572 ) CONVERT NEW &num;SMALL SAMPLES BE- 052646 004467 JSR R4,&num;POLSH FORE SWITCH ) ING ERROR 012274 ) BANDS & BR< 052652 065024 $R1 ) CONVERT TO INTEGER 052654 052656 .WORD .+2 052656 012667 MOV (SP) + ,HOLD5 ;PUT IT IN STORAGE 001000 052662 016746 MOV TABLE1+22,(SP) 175534 052666 016746 MOV TABLE1+20,(SP)- CONVERT NEW ) &num;;SMALL 175526 ) SAMPLES PER ) LARGE SAMPLE 052672 004467 JSR R4,$POLSH ) & CONVERT TO ) INTEGER 012250 052676 065024 $R1 ) 052700 052702 .WORD .+2 052702 012667 MOV (SP)+ ,HOLD6; PUT IT IN STORAGE 000756 052706 016746 MOV TABLE1+32,(SP)- 175520 ) 052712 016746 MOV TABLE1+30,(SP)- ) 175512 ) CONVERT NEW &num; ) SMALL SAMPLES ) BEFORE SWITCH052716 004467 JSR R4,$POLSH ) ING TO LARG ) SAMPLES & BR< 012224 ) CONVERT TO ) INTEGER.
052722 065024 $R1 052724 052726 .WORD .+2 052726 012667 MOV (SP)+ ,HOLD7;PUT IT IN STORAGE 000734 052732 005067 CLR LKS;TURN OFF THE REAL TIME CLOCK 124612 052736 005067 CLR XY ) 000572 ) RQ&commat;GE 020 ) ZERO THE 052742 005067 CLR XY+2 ) SUMS.
000570 ) 052746 005067 CLR Y ) 000542 ) ZERO THE SUMS.
052752 005067 CLR Y+2 ) 000540 052756 016767 MOV HOLD8,SAMS01 000706 000572 ) 052764 016767 MOV HOLD9,SAMS01+2 ) 000702 ) 000566 ) 052772 016767 MOV HOLD7,LOS ) 000670 ) 000612 ) 053000 016767 MOV HOLD6,SSLST ) 000660 ) 000626 053006 016767 MOV HOLDS,ERRSW 000650 000556 053014 016767 MOV HOLD4,X2+2 MOVE THE NEW PARAMETERS INTO 000640 REAL TIME ) VARIABLES 000504 ) DURING THE TIME ) WHEN THE CLOCK 053022 016767 MOV HOLD3,X2 ) IS OFF SO THAT ) THE TRANSITION 000630 ) DOES NOT OCCUR IN THE MIDDLE 000474 OF A SAMPLE PERIOD.
053030 016767 MOV HOLD2,X1+2 000620 ) 000474 ) 053036 016767 MOV HOLD1,X1 ) 000610 ) 000464 ) 053044 016767 MOV HOLD,N ) 000600 ) 000476 ) 053052 016767 MOV SSLST,SSLSTI ) 000556 ) 000556 ) 053060 016767 MOV N,X ) 000464 ) 000432 ) 053066 016767 MOV TABLE1,FR ) 175306 ) 000526 ) MOVE THE NEW 053074 016767 MOV TABLE1+2,FR+2 ) PARAMETERS INTO 175302 ) REAL TIME 000522 ) VARIABLES 053102 016767 MOV TABLE1+10,N1 ) DURING THE 175302 ) TIME WHEN THE 000442 ) CLOCK IS OFF RQ&commat;GE 021 ) SO THAT THE 053110 016767 MOV TABLE1+12,N1+2 ) TRANSITION 175276 ) DOES NOT OCCUR 000436 ) IN THE MIDDLE 053116 016767 MOV TABLE1+14,SE ) OF A SAMPLE 175272 ) PERIOD.
000452 ) 053124 016767 MOV TABLE1+16,SE+2 ) 175266 ) 000446 ) 053132 016767 MOV TABLE1+34,LE ) 175276 ) 000442 ) 053140 016767 MOV TABLE1+36LE+2 ) 175272 ) 000436 MOVE THE NEW 053146 016767 MOV TABLE1+24,K PARAMETERS INTO 175252 ) REAL TIME 000442 ) VARIABLES 053154 016767 MOV TABLE1+26,K+2 ) DURING THE 175246 ) TIME WHEN THE 000436 ) CLOCK IS OFF 053162 016767 MOV INTSAM,INTSA ) SO THAT THE 000506 ) TRANSITION 000322 | DOES NOT OCCUR 053170 016767 MOV INTSA,INTS ) IN THE 000316 ) MIDDLE OF A 000312 ) SAMPLE 053176 016767 MOV TABLE1+20SSLESTR ) PERIOD.
175216 000434 ) 053204 016767 MOV TABLE1+22SSLSTR+2) 175212 000430 053212 005067 CLR AVG 000412 ZERO AVG.
053216 005067 CLR AVG+2 ) 000410 053222 016706 MOV STKST,SP ) 000420 ) RESET THE STACK 053226 005746 TST (SP)- ) 053230 052767 BIS&num;40,LKS;TURN ON THE REAL TIME CLOCK.
000040 124312 053236 005767 TEST: TST UPDAT;HAS A NEW FEED RATE BEEN CALCULATED? 000244 053242 001003 BNE NEWDAT;YES PRINT IT 053244 000001 WAIT;NO-WAIT FOR INTERRUPT.
053246 000167 JMP TEST;RETURN HERE FROM INTERRUPT.
177764 053252 005267 NEWDAT:INC CR ) 000160 ) RQ&commat;GE 022 ) 053256 005767 TST ACRILK ) 000324 ) 053262 001407 BEQ AB ) 053264 016767 MOV TEMP,TEM ) 000272 000210 ) 053272 016767 MOV TEMP+2,TEM+2 ) 000266 ) PRINT OUT 000204 ) NEW FEED 053300 000406 BR ABC ) RATE ON TTY; 053302 016767 AB: MOV PREV, TEM ) 5 PRINTOUTS 000260 ) PER LINE, 000172 ) WITH # IF IN, 053310 016767 MOV PREV+2,TEM+2 ) ACR LOK 000254 ) 000166 ) 053316 005067 ABC:CLR UPDAT ) 000164 ) 053322 012746 MOV &num;BUFF,(SP)- 053456 ) 053326 012746 MOV &num;14.,(SP)- ) 000016 ) 053332 012746 MOV &num;5,(SP) 000005 053336 005046 CLR (SP)053340 016746 MOV TEM+2,(SP) 000140 ) 053344 016746 MOV TEM, (SP)- ) 000132 ) 053350 004767 JSR PC,$GCO 006310 053354 005767 TST ACRILK 000226 053360 001405 BEQ AC 053362 012767 MOV &num;'*,BUFF PRINT OUT 000052 ) NEW FEED 000066 RATE ON TTY; 053370 005067 CLR ACRILK 5 PRINTOUTS 000212 ) PER LINE, WITH 053374 022767 AC: CMP &num;5,CR ) # IF IN 000005 ACRILOK.
000034 053402 001005 BNE OUT! ) 053404 005067 CLR CR ) 000026 ) 053410 000004 10T ) 053412 053440 .WORD CRLF ) 053414 012 .BYTE WRITE,1 ) 053415 001 ) 053416 000004 OUT1: 10T ) RQ&commat;GE 023 ) 053420 053450 .WORD BBUFF ) 053422 012 .BYTE WRITE,1 ) 053423 001 ) PRINT OUT 053424 000004 WAIT: IOT ) NEW FEED 053426 053424 .WORD WAIT ) RATE ON TTY; 053430 004 .BYTE WAITR,1 ) 5 PRINTOUTS 053431 001 ) PER LINE, WITH 053432 000167 JMP TEST ) * IF IN 077600 ) ACRILOK.
053436 000000 CR:0 ) 053440 000002 CRLF: 2 ) 053442 000000 0 ) 053444 000002 2 ) 053446 015 .BYTE 15,12 ) 053447 012 ) 053450 000016 BBUFF:14. ) 053452 000000 0 ) 053454 000016 14. ) 053502 BUFF: .=.+20. ) 053506 TEM: .=.+4 ) 053506 000000 UPDAT:0 ) 053510 000000 INTS: 0 ) LOCATIONS 053512 000000 INTSA:0 ) FOR VARIABLES 053514 000000 Y: 0,0 ) FLACS. & BR< 053516 000000 ) BUFFERS 053520 000000 X: 0,0 ) 053522 000000 ) 053524 000000 X2: 0,0 ) 053526 000000 ) 053530 000000 X1: 0,0 ) 053532 000000 053534 000000 XY: 0,0 ) 053536 000000 ) 053540 000000 XYC: 0,0 ) 053542 000000 ) 053544 000000 YC: 0,0 ) 053546 000000 053550 000000 N: O 053552 000000 N1: 0,0 ) 053554 000000 053556 000000 SAMS01:0,0 053560 000000 ) LOCATIONS 053562 000000 TEMP: 0,0 ) FOR 053564 000000 5 VARIABLES, 053566 000000 PREV: 0,0 ) FLAGS, 053570 000000 ) AND 053572 000000 ERRSW:0,0 ) BUFFERS 053574 000000 ) 053576 000000 SE: 0,0 ) 053600 000000 RQ&commat;GE 024 ) 053602 000000 LE: 0,0 ) 053604 000000 ) 053606 000000 ACRILK0,0 ) 053610 000000 053612 000000 LOS: 0,0 053614 000000 ) 053616 000000 K: 0,0 ) 053620 000000 ) 053622 000000 FR: 0,0 053624 000000 053626 000000 CONWOR:0 ) 053630 000000 AVG: 0,0 ) 053632 000000 ) 053634 000000 SSLST: 0 053636 000000 SSLST1:0 053640 000000 SSLSTR:0,0 ) 053642 000000 ) 053644 000000 LOOP: 0 ) 053646 000000 STKST:0 ) LOCATIONS 053650 000000 HOLD: 053652 000000 HOLD1:0 ) VARIABLES.
053654 000000 HOLD2:0 ) FLAGS, 053656 000000 HOLD3:0 ) AND 053660 000000 HOLD4:0 ) BUFFERS 053662 000000 HOLD5:0 ) 053664 000000 HOLD6:0 ) 053666 000000 HOLD7:0 ) 053670 000000 HOLD8:0 053672 000000 HOLD9:0 ) 053674 000000 INTSAM:0 ) 000001 .END ) RQ&commat;;GE 025 ) SYMBOL TABLE LISTING, A 052164 AB 053302 ABC 053316 AC 053374 ACRILK 053606 ACRILO 052314 ASK 050060 AVG 053630 B 052214 BBUFF 053450 BUFFER 050250 CALC 051055 CALL 051714 CK 050746 CNTU 051604 CONTIN 052246 CONWOR 053626 CR 053436 CRLF 053440 DATA = 177552 DELOAT 051766 ERRSW 053572 FR 053622 HOLD 053650 HOLD1 053652 HOLD2 053654 HOLD3 053656 HOLD4 053660 HOLD5 053662 HOLD6 053664 HOLD7 053666 HOLD8 053670 HOLD9 053672 HPREMP 052312 INIT 052376 INT 050722 INTS 053510 INTSA 053512 INTSAM 053674 K 053616 LAR 051634 LARGE 051436 LE 053602 LINK 050716 LKS = 177550 LOOP 053644 LOOP1 052310 LOS 053612 MORE 050076 MR 052112 MTABLE 050356 MULTY 052100 N 053550 NEWDAT 053252 NOD27 052042 NOM27 052030 Nl 053552 OFFDAC 052306 OFFSET= 177554 ONEF = 040200 OUT 177554 OUTl 053416 OVER27 052012 OVR 051410 PC =%000007 POS27 052020 PREV 053566 READ = 000011 RESET 052134 RESETA 052172 RESTOR 052356 RTRN 052076 R0 =%000000 R1 =%000001 R2 =%000002 R3 =%000003 R4 =%000004 R5 =%000005 R6 =%000006 SAMPLE 050736 SAMS01 053556 SAV 052352 SAVE 052330 SAV1 052354 SE 053576 SET = 177550 SIXF = 040700 SP =%000006 SSLST 053634 SSLSTR 053640 SSLST1 053636 START 05000 STKST 053646 TABLE 050450 TABLEZ 050714 TABLE1 050400 TABLE2 050472 TABLE3 050506 TABLE4 050522 TABLE5 050544 TABLE6 050570 TABLE7 050604 TABLE8 050630 TABLE9 050662 TEM 053502 TEMP 053562 TEST 053236 TSTE 051446 TWOF = 040400 UPDAT 053506 UPDATE 051516 WAIT 053424 WAITR = 000004 WAITT 050116 WATHO 052226 WBUFFE 050104 WRITE = 000012 X 053520 XY 053534 XYC 053540 X1 053530 X2 053524 Y 053514 YC 053544 ZER27 052074 $ADR = 057452 $CMR = 060206 $DVR = 063500 $GCO = 061664 $IR = 064146 $MLI = 064232 $MLR = 064412 $NGR = 064772 $POLSH = 065146 $RCI = 060264 $RI = 065024 $SBR = 057446 . = 053676 000000 ERRORS *S From the foregoing disclosure, it can be seen that the above described embodiment of the invention provides an improved weigh feeding apparatus, wherein the discharge rate of a substance from a container may be maintained at a preselected constant value, wherein the container may be automatically refilled during the continuous discharge of the substance, wherein excessive excursions of the system are eliminated, wherein extraneous data recordings are eliminated when calculating the flow rate, and wherein past flow rate values may be stored in memory and compensated for at a later point in time.
Although a certain particular embodiment of the invention has been herein disclosed for purposes of explanation, various modifications thereof, after study of the specification, will be apparent to those skilled in the art to which the invention pertains.
WHAT WE CLAIM IS: 1. A weigh feeding machine comprising: a container for a substance; means for discharging substance from the container at a controllable feed-out rate; means for sensing the weight of at least the container and any substance therein and for producing a first electrical signal indicative of the instantaneous value of said weight; a digital microprocessor and a digital memory; means for supplying to said digital microprocessor and memory said first electrical signal and a second electrical signal indicative of a desired feed-out rate; means for causing said digital microprocessor and memory to combine said first and second electrical signals and to produce as a result a third electrical signal indicative of the degree of a departure, if any, from the desired feed-out rate;; means for causing the discharging means to feed out said substance at a feed-out rate determined by said third electrical signal; means for detecting forces which act on said weight sensing means and are in addition to the forces acting thereon which are due to the weight of said container ahd substance or other constant forces, and for producing a fourth electrical signal indicative of said additional forces; and means for supplying said fourth electrical signal to the digita microprocessor and memory and for causing the digital microprocessor and memory to compensate said third electrical signal for the additional forces of which said fourth electrical signal is indicative and to thereby tend to make the feed-out rate insensitive to said additional forces.
2. A weigh feeding machine as in claim 1 which includes means lor monitoring the first electrical signal and for producing a fifth electrical signal and for producing a fifth electrical signal when a selected characteristic of the first electrical signal is outside a defined range and means for causing the digital microprocessor and memory t,) respond to said fifth electrical signal by maintaining the third electrical signal at th Ivel thereof existing immediately before said fifth electrical signal.
3. A weigh feeding machine as in claim 2 including means fol supplying said digital microprocessor and memory with a sixth electrical signal indicative of a desired minimum feed-out rate, means for causing the digital microprocessor and memory to produce an under-feed alarm signal when the feed-out rate indicated by changes in said first electrical signal falls below the minimum feed-puit rate indicated by said sixt a signal and means for displaying said under-feed alarm signal.
4. A weigh feeding machine as in claim 2 including means for supplying to said digital microprocessor and memory a seventh electrical signal indicative of a maximum desired feed-out rate, means for cuasing the digital microprocessor and memory to produce an over-feed alarm signal when the actual feed-out rate indicated by changes in said first electrical signal exceeds the over-feed rate indicated by said seventh signal and means for displaying said over-feed alarm signal.
5. A weigh feeding machine as in claim 4 which includes means for producing an under-weight electrical signal when the weight sensed by the sensing means falls below a selected minimum weight, means for causing an automatic refill of the container with substance to a desired weight level in response to said under-weight signal and means for causing the digital microprocessor and memory to maintain said third electrical signal at the level existing immediately prior to the under-weight signal at least for the duration of said automatic refill.
6. A weigh feeding machine as in claim 1 wherein said means for supplying to said digital microprocessor and memory said first electrical signal includes amplifier means for amplifying said first electrical signal, an analog-digital converter coupled between said amplifier means and said digital microprocessor, digital-analog converter ramp offset means controlled by said digital microprocessor and having a controlled staircase-like stepping output applied as an additional input signal to said amplifier means to algebraically combine with said first electrical signal, each step corresponding to one of a series of periods of time thereby to maintain the output of said amplifier in a given preselecter range
**WARNING** end of DESC field may overlap start of CLMS **.

Claims (16)

**WARNING** start of CLMS field may overlap end of DESC **. From the foregoing disclosure, it can be seen that the above described embodiment of the invention provides an improved weigh feeding apparatus, wherein the discharge rate of a substance from a container may be maintained at a preselected constant value, wherein the container may be automatically refilled during the continuous discharge of the substance, wherein excessive excursions of the system are eliminated, wherein extraneous data recordings are eliminated when calculating the flow rate, and wherein past flow rate values may be stored in memory and compensated for at a later point in time. Although a certain particular embodiment of the invention has been herein disclosed for purposes of explanation, various modifications thereof, after study of the specification, will be apparent to those skilled in the art to which the invention pertains. WHAT WE CLAIM IS:
1. A weigh feeding machine comprising: a container for a substance; means for discharging substance from the container at a controllable feed-out rate; means for sensing the weight of at least the container and any substance therein and for producing a first electrical signal indicative of the instantaneous value of said weight; a digital microprocessor and a digital memory; means for supplying to said digital microprocessor and memory said first electrical signal and a second electrical signal indicative of a desired feed-out rate; means for causing said digital microprocessor and memory to combine said first and second electrical signals and to produce as a result a third electrical signal indicative of the degree of a departure, if any, from the desired feed-out rate;; means for causing the discharging means to feed out said substance at a feed-out rate determined by said third electrical signal; means for detecting forces which act on said weight sensing means and are in addition to the forces acting thereon which are due to the weight of said container ahd substance or other constant forces, and for producing a fourth electrical signal indicative of said additional forces; and means for supplying said fourth electrical signal to the digita microprocessor and memory and for causing the digital microprocessor and memory to compensate said third electrical signal for the additional forces of which said fourth electrical signal is indicative and to thereby tend to make the feed-out rate insensitive to said additional forces.
2. A weigh feeding machine as in claim 1 which includes means lor monitoring the first electrical signal and for producing a fifth electrical signal and for producing a fifth electrical signal when a selected characteristic of the first electrical signal is outside a defined range and means for causing the digital microprocessor and memory t,) respond to said fifth electrical signal by maintaining the third electrical signal at th Ivel thereof existing immediately before said fifth electrical signal.
3. A weigh feeding machine as in claim 2 including means fol supplying said digital microprocessor and memory with a sixth electrical signal indicative of a desired minimum feed-out rate, means for causing the digital microprocessor and memory to produce an under-feed alarm signal when the feed-out rate indicated by changes in said first electrical signal falls below the minimum feed-puit rate indicated by said sixt a signal and means for displaying said under-feed alarm signal.
4. A weigh feeding machine as in claim 2 including means for supplying to said digital microprocessor and memory a seventh electrical signal indicative of a maximum desired feed-out rate, means for cuasing the digital microprocessor and memory to produce an over-feed alarm signal when the actual feed-out rate indicated by changes in said first electrical signal exceeds the over-feed rate indicated by said seventh signal and means for displaying said over-feed alarm signal.
5. A weigh feeding machine as in claim 4 which includes means for producing an under-weight electrical signal when the weight sensed by the sensing means falls below a selected minimum weight, means for causing an automatic refill of the container with substance to a desired weight level in response to said under-weight signal and means for causing the digital microprocessor and memory to maintain said third electrical signal at the level existing immediately prior to the under-weight signal at least for the duration of said automatic refill.
6. A weigh feeding machine as in claim 1 wherein said means for supplying to said digital microprocessor and memory said first electrical signal includes amplifier means for amplifying said first electrical signal, an analog-digital converter coupled between said amplifier means and said digital microprocessor, digital-analog converter ramp offset means controlled by said digital microprocessor and having a controlled staircase-like stepping output applied as an additional input signal to said amplifier means to algebraically combine with said first electrical signal, each step corresponding to one of a series of periods of time thereby to maintain the output of said amplifier in a given preselecter range
of amplitude during each of said periods of time.
7. A weigh feeding machine as in claim 1 wherein said digital microprocessor and memory are adapted to store in the memory a series of said first signals for each period of a series of periods of time and to maintain said third signal constant during one of said periods when a preselected number of said first signals in said series exceeds preselected upper or lower limits.
8. A weigh feeding machine as in claim 1 wherein said digital microprocessor and memory are adapted to store in the memory a series of said first signals for each period of a series of periods of time, and to compute said third signal disregarding said signals exceeding preselected upper or lower limits, during each of said periods of time, provided that the number of such signals exceeding these limits is less than a predetermined number.
9. A weigh feeding machine as in claim 9 wherein the additional forces of which the fourth electrical signal is indicative include forces due to noise components due to moving machinery on the scale such as the motor, gear box, augers, as well as movement of the material in the container.
10. A weigh feeding machine as in claim 10 wherein said fourth electrical signal is derived from encoder means coupled between said means for discharging substance from the container and said digital microprocessor.
11. A weigh feeding machine as in claim 1 wherein said means for supplying to said digital microprocessor and memory said first electrical signal includes first amplifier means for amplifing said first electrical signal, a first analog-digital converter coupled between said first amplifier means and said digital microprocessor, second amplifier means for amplifying the signal received from said first amplifier means, and a second analog-digital converter coupled between said second amplifier and said digital microprocessor.
12. A weigh feeding machine as in claim 12, wherein said digital microprocessor and memory are adapted to integrate said second signal indicative of a desired feed-out rate with respect to time and to output a display corresponding to the desired total feed commanded, and said digital microprocessor and memory being further adapted to integrate the signals received from said first analog-digital converter indicative of the actual total weight of material fed with respect to time and, by comparing said total feed command to said actual total weight of material fed, adjust said third signal.
13. A weigh feeding machine as in claim 12 wherein said first amplifier means has a range of between - 10 volts when the container is full to +10 volts when the container is empty.
14. A weigh feeding machine as in claim 12 wherein said second amplifier means has a range between +5 volts and -5 volts during each period of a series of periods of time.
15. A weigh feeding machine as in claim 1, wherein said means for discharging substance from the container includes a motor driven feeder assembly, means for inputting into said digital microprocessor and memory a fifth signal indicative of the actual speed of said motor. means for inputting into said digital microprocessor and memory a sixth signal indicative of the desired rotational speed of said motor, means for causing said digital microprocessor and memory to combine said fifth and sixth signals and to produce a seventh signal indicative of the degree of the departure if any, from the desired motor speed, and means for causing the motor to operate at a speed determined by said seventh signal.
16. A weigh feeding apparatus substantially as hereinbefore described with reference to, and as shown in the accompanying drawings.
GB5153376A 1976-12-09 1976-12-09 Weigh feeder systems Expired GB1565060A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB5153376A GB1565060A (en) 1976-12-09 1976-12-09 Weigh feeder systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB5153376A GB1565060A (en) 1976-12-09 1976-12-09 Weigh feeder systems

Publications (1)

Publication Number Publication Date
GB1565060A true GB1565060A (en) 1980-04-16

Family

ID=10460386

Family Applications (1)

Application Number Title Priority Date Filing Date
GB5153376A Expired GB1565060A (en) 1976-12-09 1976-12-09 Weigh feeder systems

Country Status (1)

Country Link
GB (1) GB1565060A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2198555A (en) * 1986-08-27 1988-06-15 South African Inventions Feed rate control

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2198555A (en) * 1986-08-27 1988-06-15 South African Inventions Feed rate control

Similar Documents

Publication Publication Date Title
US4054784A (en) Weigh feeder system
US4210963A (en) Weigh feeder system
US4111272A (en) Weigh feeding apparatus
US4320855A (en) Weigh feeding apparatus
US4301510A (en) Weigh feeder system
USRE32101E (en) Weigh feeding apparatus
USRE32102E (en) Weigh feeding apparatus
US2766981A (en) Weighing scale system
US4139892A (en) Electronic postage scale
US4231439A (en) Automatic check weigher
US4156472A (en) Apparatus for automatically changing the integration time and resolution of an electrical scale under predetermined operating conditions
US3777828A (en) Electronic weighing system with digital readout
US5533392A (en) System and method for sensing material level within a container
US6168305B1 (en) System for precisely controlling discharge rates for loss-in-weight feeder systems
CA1094039A (en) Weigh feeder system
EP0021568A1 (en) Electronic weighing apparatus
US4703815A (en) Span adjusting device for weigher
US4164260A (en) Method and apparatus for controlling the average weights of commodities in package form
US3362490A (en) Automatic batch weigher
US4155411A (en) Automatic zero-correction for weighing system
GB1565060A (en) Weigh feeder systems
US3253744A (en) Electrical control system for grinding mill
WO1997034130A1 (en) Rate monitor for a displacement system utilizing the power demand of the prime mover of the system to provide the flow rate data of the material being displaced
CA1110608A (en) Weigh feeder system
US5902965A (en) Electric balance for correcting misloading thereof

Legal Events

Date Code Title Description
PS Patent sealed
PE20 Patent expired after termination of 20 years

Effective date: 19961208