Liquid level control

Abstract: An apparatus for controlling liquid level, comprising containment means (18) for containing and dispensing liquid, flow varying means (11, 14) operable for varying flow of liquid into the containment means (18), stepper motor means (10) for operating the flow varying means, sensor means (24) for sensing level of liquid in the containment means (18), and PDD controller means (26) connected between the sensor means and the stepper motor means for controlling liquid level.

Description: It is an object of the invention to provide an improved control of liquid level. This as well as other objects which will become apparent from the discussion that follows are achieved, according to the present invention, by providing an apparatus for controlling liquid level, including containment means for containing and dispensing liquid, flow varying means operable for varying flow of liquid into the containment means, stepper motor means for operating the flow varying means, sensor means for sensing level of liquid in the containment means, and PDD controller means connected between the sensor means and the stepper motor means for controlling liquid level. A corresponding method is likewise provided. US-A-2 804 665 discloses continuous casting of metal, in which the level of molten metal is controlled by sensing the level of molten metal in a mold, comparing the sensed level with desired conditions by means of a control mechanism, and varying the tilting rate of a molten metal supply vessel through regulation by the control mechanism. DF-A-2 941 544 concerns regulating fluid level in a container, wherein rate of change detection circuits monitor signals at various points in a control system for detecting sudden changes in a critiical signal indicative of a fault. Figure 1 is a schematic representation of the apparatus of the invention. Figures 2 and 3 are computer program flow diagrams. With reference to Figure 1, stepper motor 10 is arranged by source basin 12 holding a supply 13 of liquid. Stepper motor 10, also referred to as a stepping motor, has a suitable mechanical transmission 11 to move plug 14 in the line of arrow A into and out of a corresponding valve coat for causing liquid to flow into delivery tube 16 at rates varying with the amount of displacement of plug 14 out of contact with the valve seat. A suitable transmission is of the type shown in Figure 6 of U.S. Patent No. 2,804,665. It will be recognized, for course, that other means of varying flow are possible. The stepper motor can, as well, operate an orifice-varying diaphragm. Or it can operate a cam to push against a flexible siphon tube to constrict, or open, the tube for flow variation. Another possibility would be to arrange the stepper motor to vary fuel, or electricity, to a pump bringing liquid to container 18. In a preferred embodiment, container 18 is a containment in which a constant static head of liquid is required. It may, for instance, be the mold of an electromagnetic caster, or the tundish of a roll caster, where a constant static head is of advantage for obtaining uniform solid product in the continuous casting of molten metal. The level to which liquid in container 18 is controlled is indicated by controlled level 20. The liquid is dispensed from container 18 through outlet 22. Alternatively, it may be dispensed to a liquid-solid interface, as in continuous casting of metal. Level sensor 24 may be of the type including one or more inductive coils and referred to as an eddy current sensing device. Its output signal changes as a function of the distance between it and the liquid level when the liquid is metal, such as molten aluminum. Other level sensors are possible, such as those using radioactive material emitting gamma rays, those sensing heat radiation from hot metal, those relying on electrical resistance changes, etc. Analog to digital converter (ADC) 25 outputs to controller 26 digital signals representative of the analog signals from the sensor 24. Controller 26, which may, for instance, be a digital microcomputer, emits pulses to move stepper motor 10. A stepper motor translator may be interposed between the stepper motor and the controller to assure, for example, that the motor movement is in the correct direction. The bus from the controller will typically have several conductors to carry signals determining direction of motor movement and the amount of movement. serial transmission may as well be used. According to the invention, a PDD-type control is utilized to control liquid level 20. Controller 26 is provided with a setpoint, representative of level 20 in Figure 1. The signal from level sensor 24 is compared with the setpoint and the difference noted as the error. In Figure 1, the error is the distance X out of level 20. Distance X may be positive or negative. The term "PDD" is short for "proportional-derivative derivative". This type of control is characterized by adjustment of the controlling parameter, in this case position Y of the plug 14, in direct proportion to the error X, as well as in dependence on the first time derivative of X and on the second time derivative. The equation utilized in the computer program in the microcomputer embodiment of the controller is Y(t) = (RK1*X(t)) + (RK2*X(t - 1)) + (RK3*X(t - 2)) where RK1 = C1*(C2 + (1.0 + C2*C3)/TD + C3/TD**3) RK2 = (-C1/TD)*(1.0 + C2*C3 + 2.0*C3/TD) RK3 = C1*C3/TD**2. In these equations, "*" signifies multiplication, "/" division, and "**" means "raised to the power of". The symbols are defined as follows: "t" denotes the instantaneous value of time in seconds with zero corresponding to the start of algorithm execution. "Y(t)" denotes the instantaneous value of the controller output at time "t". That is, Y(5) corresponds to the value of the controller output 5 seconds after system startup. In the level control application, the controller output is the command signal sent to the metal flow control device. Likewise, "X(t)" denotes the instantaneous value of the controller input at time "t", In the level control application, the controller input is the difference between the desired level and the measured value provided by a suitable sensing device. "C1" through "C3" represent constant coefficients in the linear control law equation provided. Values for these constants are determined by analyzing the dynamics of the uncompensated system with respect to the desired closed-loop performance. Suitable analysis techniques include root locus and frequency response methods well known to control engineers. "TD" denotes the sample rate of the digital system in seconds per sample. This parameter indicates the rate at which the given equation is executed, a typical value being 0.100 seconds per sample. In this case, the equation would be used to produce a new value of Y(t) every 0.100 seconds. To do so, it would require knowledge of X(t), X(t-TD) and X(t-2*TD). Note that X(t-TD) represents the instantaneous value of the controller input at time (t-TD). This corresponds to the value or X(t), delayed by TD seconds. Likewise, X(t-2*TD) represents the value of X(t), delayed by 2*TD seconds. Thus, Y(t) is formed from the current value of the input [X(t)], the value of the input during the previous sample period [X(t-TD)] and the value of the input two sample periods into the past [X(t-2*TD)]. Error measurements are made every TD seconds, for instance every 0.1 second, and placed in a stack of three memory locations, X(t) contains the present error, X(t - 1) the error measured 0.1 second ago, and X(t - 2) the error from 0.2 second ago. Typical values for C1, C2 and C3 are 0.85, 6.67 and 0.10. Values of C1, C2 and C3 for a given control situation can be determined by methods known to those skilled in the art, one such method being that referred to as "root locus pole placement". The above equation utilized in the computer program was derived by us on the basis of the following considerations: Having decided that we wanted PDD-type control, we set Y(s)/X(s) = C1*(s + C2)*(1 + s*C3). where "s" is the Laplace operator. This leads to Expressing this in the Z domain, Y(Z)/X(Z) = Y(s)/X(s) evaluated for s = (1 - Z**(-1))/TD , giving Y(Z)/X(Z) = (C1*C3/TD**2)*(1 - Z**(-1))**2 + (C1/TD)*(1 + C2*C3)*(1 - Z**(-1)) + C1*C2 Expanding the term (1 - Z**(-1))² and consolidating gives Y(Z)/X(Z) = (C1*C3/TD**2 + C1(1 + C2*C3)/TD + (C1*C2) + ((-2*C1*C3/TD**2) - C1*(1 + C2*C3)/TD)*Z**(-1) + (C1*C3/TD**2)*Z**(-2). And, this leads to the above formula for Y(t) for use in the microcomputer program. Figures 2 and 3 are flow diagrams for the computer programs implementing the control equation for Y(t) as given above. In the "compute level error" operation, input from the level sensor is substracted from the set point to determine error X(t) in inches, X being distance as shown in Figure 1. This is the X value at the present time "t". The next operation involves calculating Y(t) via the control equation. Y(t) is computed always as an integer, each increment representing one-tenth of one stepper motor step. The end part of this operation includes transferring X(t - 1) into the storage location for X(t - 2) and X(t) into the location for X(t - 1), in preparation for the next pass through the flow chart, 0.1 second (100 msec) later. The following operation compares the present valve plug position (PRESENT from Fig. 3) to the plug closed position and the plug open position to compute available steps in the open and close directions. Increments here likewise correspond to one-tenth of one motor step. The plug closed position may be stored in the controller as a zero value established at system initialization. One way of doing this is to adjust the linkage between the plug and the motor shaft such that a notch in the shaft is aligned with a magnetic sensor when the plug is closed, i.e. seated in the valve seat. The resulting signal from the magnetic sensor causes the zero value to be stored in the controller. The fully open plug position is stored as an appropriately large integer such that further plug opening has little effect toward increasing liquid flow. The angular difference in motor shaft position between open and close will typically be less than 360°, an example being 180°. The calculated Y(t) is then subjected to analysis, as shown in the remainder of Figure 2, to obtain an updated ACCUM for evaluation in the stepper handler routine in Figure 3. The main control routine of Figure 2 is, for example, repeated every 0.1 second, while the routine of Figure 3 repeats every 0.0125 second, for a stepper motor requiring 0.010 second for each step. The stepper handler routine of Figure 3 evaluates ACCUM and outputs one motor step whenever the absolute value of ACCUM is greater than 10. The present location of the plug relative to its closed position is computed as PRESENT. DEADBAND is typically zero, but is provided so that a deadband can be used if desired. Tests using the control of the invention for level control in continuous casting of metal show ability to control level to within 0.005 inch of set point reference. Accumulation of fractional stepper motor steps leads to a tighter, more accurate control than would be the case if, for instance, values of Y(t) less than one step were discarded. A further advantage of the invention is that a sensor is not needed for present plug position.

Claims: An apparatus for controlling liquid level (20), comprising containment means (18) for containing and dispensing liquid, flow varying means (11,14) operable for varying flow of liquid into the containment means, and sensor means (24) for sensing level of liquid in the containment means, characterized by stepper motor means (10) for operating the flow varying means, and PDD controller means (26) connected between the sensor means (24) and stepper motor means (10) for controlling liquid level. An apparatus as claimed in claim 1, the PDD controller means (26) functioning according to Y(t) = (RK1*X(t)) + (RK2*X(t - 1)) + (RK3*X(t - 2)) where RK1 = C1*(C2 + (1.0 + C2*C3)/TD + C3/TD**2) RK2 = (-CL/TD)*(1.0 + C2*C3 + 2.0*C3/TD) RK3 = C1*C3/TD**2, and wherein "t" denotes the instantaneous value of time in seconds with zero corresponding to the start of algorithm execution; "Y(t)" denotes the instantaneous value of the controller output at time "t"; "X(t)" denotes the instantaneous value of the controller input at time "t"; "C1" through "C3" represent constant coefficients; "TD" denotes the sample rate of the digital system in seconds per sample; "*" signifies multiplication; and "**" means "raised to the power of". An apparatus as claimed in claim 2, wherein fractional motor steps are accumulated and steps are executed upon attainment of a whole step. A method for controlling level (20) of a liquid being dispensed from containment means (18), said liquid being supplied to said containment means through flow varying means (11,14) operable for varying the flow of liquid into the containment means, comprising sensing the liquid level (20) and comparing the sensed level to a setpoint for determining error, characterized by varying flow of replenishment liquid into the containment means (18) by a stepper motor (10), the steps of stepper motor movement being the sum of a term proportional to the error itself, a term proportional to the first time derivative of the error and a term proportional to the second time derivative of the error.

Inventors: CLARKE DAVID WILLIAM, KNAPP DAVID JAMES, WALTZ MARION DWAIN, CLARKE, DAVID WILLIAM, KNAPP, DAVID JAMES, WALTZ, MARION DWAIN
Applicants: ALUMINUM CO OF AMERICA, ALUMINUM COMPANY OF AMERICA
Application year: 1985
Main classification: G05D9
IPC codes: G05D9