WO2004019144A2 - Auto-tuning pid control for vacuum system - Google Patents

Auto-tuning pid control for vacuum system Download PDF

Info

Publication number
WO2004019144A2
WO2004019144A2 PCT/US2003/006120 US0306120W WO2004019144A2 WO 2004019144 A2 WO2004019144 A2 WO 2004019144A2 US 0306120 W US0306120 W US 0306120W WO 2004019144 A2 WO2004019144 A2 WO 2004019144A2
Authority
WO
WIPO (PCT)
Prior art keywords
controller
set forth
threshold
process variable
speed
Prior art date
Application number
PCT/US2003/006120
Other languages
French (fr)
Other versions
WO2004019144A3 (en
Inventor
Rick Meyer
Original Assignee
Delaval Holding Ab
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 Delaval Holding Ab filed Critical Delaval Holding Ab
Priority to AU2003213620A priority Critical patent/AU2003213620A1/en
Publication of WO2004019144A2 publication Critical patent/WO2004019144A2/en
Publication of WO2004019144A3 publication Critical patent/WO2004019144A3/en

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0205Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system
    • G05B13/024Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system in which a parameter or coefficient is automatically adjusted to optimise the performance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B11/00Automatic controllers
    • G05B11/01Automatic controllers electric
    • G05B11/36Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential
    • G05B11/42Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential for obtaining a characteristic which is both proportional and time-dependent, e.g. P.I., P.I.D.

Definitions

  • the present invention relates to PID controllers. More particularly, the present invention relates to a PID controller that can automatically tune itself to account for system noise, hysteresis, and load changes in a vacuum system which is used in milking dairy animals.
  • PID controllers are used in many industries to control some aspect of an industrial process.
  • PID controllers typically attempt to control a process variable (PV), such as a vacuum level indicated as a vacuum reading, by modifying a control output (CO), such as a vacuum pump speed signal, in order to make the PV track a set-point (SP), such as a desired vacuum level.
  • PV process variable
  • CO control output
  • SP set-point
  • PID controllers need to be tuned specifically to the process they are expected to control.
  • the present invention overcomes the above-identified problems and provides a distinct advance in the art of PID controllers. More particularly, the present invention provides a PID controller that can automatically tune itself to account for system noise, hysteresis, and load changes.
  • the controller may be part of an automated milking system for a dairy parlor which employs automated machine milking using a vacuum system to extract milk from a dairy animal's teats.
  • the milking system may include a dairy parlor having multiple milking stations for simultaneous milking of one or a plurality of dairy animals, or may be an automated milking machine which sequentially milks the dairy animals with the aid of a milking robot.
  • the system broadly comprises one or a plurality of milking stations for milking the animals.
  • a milking apparatus is provided at each station for receiving and transporting the milk from the animals, the milking apparatus typically including at least one milking claw having a plurality of teat cups, but may also include an apparatus wherein the teat cups are independent of a claw.
  • the system further includes a vacuum pump for producing a vacuum level in order to draw the milk into the apparatus, and further typically provides vacuum to a pulsator for providing a pulsating action to the cups, a variable speed drive for driving the pump at a variable speed, and the controller for controlling the drive according to the vacuum level.
  • the controller monitors the vacuum level by receiving a vacuum reading from a pressure sensor connected to a conduit that runs between the pump and the apparatus at each station. According to the vacuum reading received from the sensor, the controller adjusts a speed signal that is sent to the drive, thereby controlling the speed of the pump using the drive.
  • the controller preferably determines an appropriate speed signal using a Proportional Integral Derivative (PID) control routine.
  • PID control routines are commonly used to generate a control output (CO) in order to force a process variable (PV) to track a set-point (SP).
  • CO is the signal that is sent to the drive to control the speed of the pump.
  • PV is the vacuum level in the conduit indicated as the vacuum reading determined by the sensor. It is common practice to use an output from a process sensor as the PV. Therefore, throughout the remainder of this document, as it relates to vacuum systems, we will associate the PV with the vacuum reading, which is how the controller monitors the vacuum level.
  • the SP is a desired vacuum level that will allow the system to safely and comfortably extract milk from the animals.
  • controller is necessary since events effecting the system are constantly changing a system load, which is the required amount of air the pump must handle in order to maintain the desired vacuum level.
  • events include, for example changes in the rate of milk flow from the animals during milking, initiation and cessation of milking on different animals at different milking stations connected to the conduit, and disconnection of one or more of the cups which permits air to enter freely into the conduit.
  • the milking robot may additionally perform the function of cleaning of the animal's teats using liquid such as water.
  • vacuum may be used for transporting cleaning liquid from a dedicated teat cleaning device.
  • the manner in which the controller modifies the CO, and thus the speed of the pump, is controlled by PID settings, which may or may not include a coefficient for each portion of the PID control routine.
  • PID settings preferably include a proportional coefficient (P), an integral coefficient (I), and a derivative coefficient(D).
  • the controller is preferably able to tune itself by automatically performing a tuning method that accounts for system noise and hysteresis characteristics of the system while compensating for changes in the load that may occur while the method is being conducted.
  • the method broadly comprises performing initial determinations, identifying the system noise and hysteresis characteristics of the system, calculating thresholds outside of the system noise and hysteresis characteristics, and using the thresholds to find an ultimate gain (UG) and an ultimate period (UP) of the system while compensating for changes in the load.
  • the UG and the UP are then used to calculate the P, the I, and the D.
  • the initial determinations include calculating a nominal output and determining an output offset.
  • the nominal output is preferably a nominal speed signal that is sent to the drive in order to cause the pump to run at a nominal speed, which is expected to allow the system to maintain the vacuum reading at or near the desired vacuum level while the load is held substantially constant under normal operating conditions.
  • the output offset is preferably an allowable deviation from the nominal output which is not expected to cause a significant disturbance in the system.
  • a first CO and a second CO are calculated.
  • the first CO is preferably calculated as the sum of the nominal output and the output offset.
  • the second CO is preferably calculated as the nominal output minus the output offset. Therefore, the first CO and the second CO are preferably bracketed around the nominal output, that is, calculated so as to be of values respectively greater than and less than the nominal output.
  • the system noise and hysteresis characteristics of the system are identified. With the CO held at the nominal output, the PV will fluctuate around the SP due to the system noise and hysteresis characteristics.
  • the PV is monitored and a moving average of the PV is calculated. Using the moving average, a maximum noise level (MNL) can be calculated as a maximum difference between the PV and the moving average.
  • MNL maximum noise level
  • a first threshold and a second threshold are preferably calculated according to the SP and the MNL.
  • the first threshold is preferably calculated as the sum of the SP and the MNL.
  • the second threshold is preferably calculated as the SP minus the MNL.
  • the first CO, the second CO, the first threshold and the second threshold are used to find the UG and the UP of the system.
  • the PV begins moving toward the first threshold.
  • the second CO is sent to the drive.
  • the first CO is sent to the drive.
  • Alternating between the first CO and the second CO may be repeated until the UG and the UP can be ascertained.
  • the P, the I, and the D can be calculated from the UG and the UP using Zeigler-Nichols conversion factors or other conversion factors, such as those associated with Tyreus and Luyben or Shen and Yu.
  • the method can compensate for uncontrolled events, such as changes in the load caused by a valve opening.
  • uncontrolled events such as changes in the load caused by a valve opening.
  • the PV shifts and thereafter oscillates about an axis of oscillation.
  • the first CO and the second CO are adjusted in order to force the axis of oscillation to be approximately equal to the SP, thereby compensating for the change in the load.
  • the system typically includes non-linear characteristics such that the system will react differently to similar
  • the pump may react more quickly to a speed change with the vacuum reading at a low vacuum level when compared to the vacuum reading at a higher vacuum level. Therefore, if the controller is optimally tuned with the vacuum reading at the low vacuum level, it is inherently non-optimally tuned with the vacuum reading at the higher vacuum level. Thus, it can be very important for the controller to be tuned while the system is holding the vacuum reading near the desired vacuum level.
  • FIG. 1 is a schematic view of an auto-tuning PID controller shown as part of an automated milking system in accordance with a preferred embodiment of the present invention
  • FIG. 2 is a diagram showing how the controller adjusts a pump speed in orderto force a vacuum reading to track a desired vacuum level
  • FIG. 3 is a flowchart showing an automatic tuning procedure preferably used by the controller
  • FIG. 4 is a diagram showing how the vacuum reading fluctuates around the desired vacuum level with the speed held constant
  • FIG.5 is a flowchart showing a procedure used to identify and compensate for system noise
  • FIG. 6 is a diagram showing how the controller identifies an ultimate gain and an ultimate period, while compensating for system noise
  • FIG. 7 is a flowchart showing a procedure used to identify the ultimate gain and the ultimate period, while compensating for system noise
  • FIG. 8 is a diagram showing how the controller adjusts the speed of the pump in order to compensate for load changes.
  • FIG. 9 is a flowchart showing a procedure used to compensate for load changes.
  • the preferred auto-tuning controller 10 in accordance with the present invention is shown as part of an automated machine milking system 12 for milking dairy animals such as that illustrated in U.S. Patent No. 6,164,242 incorporated herein by reference.
  • the system 12 may be arranged in a manner more fully disclosed in a co- pending U.S. National Phase Application entitled "An Arrangement for Managing a Herd of Freely Walking Animals" Application Serial No. 10/048,825 filed February 1, 2002 which claims priority of International Application Serial No. PCT/SE00/01692 published on March 15, 2001 , hereby incorporated into the present application by reference.
  • the system 12 broadly comprises an area for receiving the animals, a milking station adjacent to the area, a milking apparatus 14 in the station for receiving and transporting milk from the animals, a vacuum pump 16 for producing a vacuum level in the apparatus 14 in order to draw the milk into the apparatus 14, a variable speed drive 18 for driving the pump 16 at a variable speed, and the controller 10 for controlling the drive 18 according to the vacuum level.
  • the system 12 may include a plurality of apparatuses 14 for simultaneous milking of a plurality of dairy animals.
  • the apparatus 14 includes at least one milking claw 20, which includes a plurality of teat cups 22.
  • the cups 22 of each claw 20 are connected to teats of one of the animals in order to allow the system 12 to draw milk therefrom.
  • Vacuum developed by the pump 16 moves milk from the teat cups 22 through the claw 20 via milk tube 15 to a receiving vessel 17.
  • the receiving vessel 17 is connected by a vacuum conduit 19 to a separator 21 for separating liquid from the vacuum conduit and intermittently draining separated liquid.
  • Vacuum developed by the pump 16 may also be provided via a vacuum conduit to a pulsator 23 whereby pulsating subpressure is provided to each teatcup 22 for stimulation of the teat of the dairy animal as is well known in the art.
  • the pump 16 includes a suction side 24 and a pressure side 26.
  • the suction side 24 of the pump 16 is preferably connected to each claw 20 through a conduit 28 which allows the pump 16 to draw the vacuum level in the claw 20.
  • the pump 16 is a radial compressor, which by means of blades, guides incoming air at the suction side 24 radially outwards, thereby accelerating the air by means of centrifugal force, but the invention hereof is also applicable to lobe-type and other vacuum pumps capable of variable speed operation.
  • the air is discharged through the pressure side 26 which is directly or indirectly connected to the atmosphere so that the air may be vented.
  • the controller 10 monitors the vacuum level by receiving a vacuum reading from a pressure sensor 30 connected to the conduit 28. According to the vacuum reading received from the sensor 30, the controller 10 adjusts a speed signal that is sent to the drive 18, thereby controlling the speed of the pump 16 using the drive 18.
  • the controller 10 preferably determines an appropriate speed signal using a Proportional Integral Derivative (PID) control routine.
  • PID control routines are commonly used to generate a control output (CO) in order to force a process variable (PV) to track a set-point (SP).
  • CO control output
  • SP set-point
  • the CO is used by the controller 10 to control the PV.
  • the SP is typically a desired PV value.
  • the CO is the signal that is sent to the drive 18 to control the speed of the pump 16.
  • the PV is the vacuum level in the conduit 28 indicated as the vacuum reading determined by the sensor 30. It is common practice to use an output from a process sensor as the PV.
  • the PV is how the controller 10 monitors the vacuum level.
  • the SP is a desired vacuum level that will allow the system 12 to safely and comfortably extract milk from the animals.
  • the controller 10 preferably interacts with the CO, the PV, and the SP in 0% - 100% values, which can be easily scaled to specific systems 12.
  • a CO of 0% preferably corresponds to approximately 0 RPM and causes the pump 16 to stop.
  • a CO of 100% preferably corresponds to approximately 1800 RPM and causes the pump 16 to run at approximately the maximum speed.
  • a CO of 50% preferably corresponds to approximately 900 RPM and causes the pump 16 to run at approximately half of the maximum speed. .
  • the pump 16 and the drive 18 preferably operate on alternating current (AC).
  • the drive 18 preferably controls the speed of the pump 16 by controlling a frequency of the AC sent to the pump 16.
  • the controller 10 sends the drive 18 a 100% CO.
  • the drive 18 sends the pump 16 a maximum frequency, which is typically 60 hertz (Hz).
  • the controller 10 sends the drive 18 a 50% CO.
  • the drive 18 sends the pump 16 a low frequency, which is typically 30 Hz.
  • the pump 16 and drive 18 are preferably sized for each specific system 12. For example, a one hundred claw system 12 may require a larger pump 16 and a larger drive 18 which may consume more power than a ten claw system 12. Alternatively, the pump 16 of a specific system
  • the pump 16 acts to pull air through the system 12.
  • the pump 16 induces the vacuum level in the conduit 28. Therefore, in the one hundred claw system 12, the pump 16 may be required to pull roughly ten times the volume of air than may be required in the ten claw system 12, in order to maintain the desired vacuum level in each system 12.
  • a first factor is a physical size of the pump 16.
  • the larger pump 16 can typically pull a larger volume of air than a smaller pump 16 can, while operating at identical speeds.
  • a second factor is the maximum speed of the pump 16.
  • similarly sized pump 16 can pull different volumes of air through the system 12, depending upon the speed at which each is operating.
  • the sensor 30 is preferably able to measure the vacuum level in the conduit 28 around the desired vacuum level of 45 kPa. It is also preferable for the sensor 30 to be able to measure the vacuum level, when the vacuum level deviates significantly from the desired vacuum level. Additionally, the sensor 30 is preferably electronic and may be configured such that, during normal operations, the vacuum reading will be displayed in a specific section of a time plot or graphical display. This may be done in order to allow users to view a single plot showing the PV, the CO, and/or other values simultaneously, without those values overlapping and thereby interfering with each other.
  • the sensor 30 may be configured to measure the vacuum level from approximately 0 kPa to approximately 60 kPa allowing for up to a 33% higher vacuum level than the desired vacuum level of approximately 45 kPa.
  • a PV of 0% is preferably indicative of an approximately 0 kPa vacuum level in the conduit 28.
  • a PV of 100% is preferably indicative of an approximately 60 kPa vacuum level in the conduit 28. This results in an approximately 75% PV, when the vacuum reading is near the desired vacuum level of 45 kPa. Therefore, the PVwill be displayed near the middle of a top half of the plot, as described above.
  • a mechanical vacuum regulator 32 is preferably connected to the conduit 28 in order to prevent the excessive vacuum level in the conduit 28.
  • the mechanical vacuum regulator 32 preferably operates independently of the controller 10 and bleeds air into the system 12 in order to prevent the vacuum level from exceeding a maximum vacuum reading, such as 52 kPa. Therefore, care should be taken to avoid encountering the maximum vacuum reading during tuning of the controller 10 in order to avoid erroneous results.
  • a SP of 0% preferably corresponds to an approximately 0 kPa desired vacuum level and a SP of 100% preferably corresponds to an approximately 60 kPa desired vacuum level.
  • the SP is typically set to approximately 75% which corresponds to the approximately 45 kPa desired vacuum level.
  • the controller 10 forces the PV to track the SP by manipulating the CO. It can be appreciated that the controller 10 is necessary since events effecting the system 12 are constantly changing a system load, which may be characterized in terms of the required amount of air the pump 16 must handle in order to maintain the desired vacuum level. For example, the cups 22 are frequently being attached to and removed from teats, which changes the load. Alternatively, one of the cups 22 may accidentally become disconnected which may increase the load. Additionally, the quantity of milk flowing into the apparatus 14 may change the load. These and other events act upon the system 12 substantially constantly changing the load and requiring the controller 10 to substantially constantly modify the speed of the pump 16 in order to maintain the vacuum reading at the desired vacuum level. Additionally, an operator may alter the SP to a different desired vacuum level.
  • a system load which may be characterized in terms of the required amount of air the pump 16 must handle in order to maintain the desired vacuum level.
  • the cups 22 are frequently being attached to and removed from teats, which changes the load. Alternatively, one of the cups 22 may accidentally become disconnected which may increase
  • the controller 10 controls the pump 16 in a manner similar to that presented in FIG. 2.
  • Curve 50 represents the SP which is initially set to a specific desired vacuum level.
  • curve 52 which represents the CO
  • curve 54 which represents the PV
  • the controller 10 recognizes this and modifies the CO in order to force the PV to move toward the SP.
  • the manner in which the controller 10 modifies the CO is controlled by PID settings, which may or may not include a coefficient for each portion of the PID control routine. Since the system 12 is unique, one specific system 12 may react differently than another specific system. Therefore, the controller 10 must be tuned to interact properly with the system 12 by determining and implementing unique PID settings for the system 12.
  • the PID settings preferably include a proportional coefficient (P), an integral coefficient (I), and a derivative coefficient (D). However, one or more of the coefficients may be equal to zero, thereby disabling the corresponding portion of the PID control routine.
  • FIGs. 3, 5, 7, and 9 show the functionality and operation of a preferred implementation of the present invention in more detail.
  • some of the blocks of the flow charts may represent a module segment or portion of code of a program of the present invention which comprises one or more executable instructions for implementing the specified logical function or functions.
  • the functions noted in the various blocks may occur out of the order depicted. For example, two blocks shown in ' succession may in fact be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order depending upon the functionality involved.
  • a tuning method of the present invention customizes the controller 10 for the system 12 to account for system noise and hysteresis characteristics of the system 12.
  • the method may also compensate for changes in the load that may occur while the controller 10 is being tuned.
  • the method is preferably not performed during normal operations.
  • the PID control routine of the controller 10 is preferably temporarily disabled during at least portions of the method.
  • the method broadly comprises performing initial determinations and identifying the system noise and hysteresis characteristics of the system 12, as shown in steps 3a and 3b.
  • the method also comprises calculating thresholds outside of the system noise and hysteresis characteristics, as shown in step 3c.
  • the method further comprises using the thresholds to find an ultimate gain (UG) and an ultimate period (UP) of the system 12, or other tuning parameters, while compensating for changes in the load, as shown in steps 3d and 3e.
  • the method comprises calculating the P, the I, and the D, as shown in step 3f.
  • the initial determinations include calculating a nominal output and determining an output offset.
  • the nominal output is preferably a nominal speed signal that is sent to the drive 18 in order to cause the pump 16 to run at a nominal speed which is expected to allow the system 12 to maintain the vacuum reading at or near the desired vacuum level while the load is held substantially constant under normal operating conditions.
  • the system 12 may be expected to normally operate with 10% of the cups 22 disconnected.
  • the nominal output is calculated with 10% of the cups 22 disconnected and any other conditions and/or assumptions that may be required. For instance, the nominal output may be found to be 75%.
  • the system 12 can maintain the vacuum reading at approximately 45 kPa with 10% of the cups 22 disconnected and the pump 16 running at approximately 75% of the maximum speed, or approximately 1350 RPM.
  • the nominal output is preferably calculated by running the system 12 with the controller 10 controlling the speed of the pump16.
  • An average pump speed can be calculated over an approximately 5 second time span, but other time span may be used.
  • the average pump speed may be used as the nominal output.
  • the pump 16 may be run in manual, with someone varying the speed of the pump 16 until the vacuum reading closely approximates the desired vacuum level, thereby determining the nominal output through trial and error.
  • the nominal output can be calculated through engineering calculations accounting for characteristics of the system 12, such as an air handling capacity of the pump 16.
  • the output offset is preferably an allowable deviation from the nominal output which is not expected to cause a significant disturbance in the system 12.
  • the output offset is preferably approximately 5% of the nominal output, but may be between 2% and 15% of the nominal output. Given the above example, the output offset corresponds to approximately 3.75% of the maximum speed, or approximately 68 RPM.
  • the first CO is approximately 78.75% of the maximum speed which corresponds to a pump speed of approximately 1418 RPM.
  • the second CO is approximately 71.25% of the maximum speed which corresponds to a pump speed of approximately 1282 RPM.
  • the system noise and hysteresis characteristics of the system 12 can be identified.
  • the PV will fluctuate around the SP due to the system noise and hysteresis characteristics.
  • Horizontal line 56 represents the SP, or the desired vacuum level
  • curve 58 represents the PV, or the vacuum reading of the vacuum level.
  • the PV is monitored and a moving average of the PV is calculated, as shown in step 5b.
  • the moving average is shown as curve 60.
  • the moving average is preferably calculated over an approximately 20 second time span, but may encompass other time spans.
  • a maximum noise level (MNL) can be calculated as a maximum difference between the PV and the moving average, as shown in step 5c.
  • An example of the MNL is shown as bracket 62.
  • the MNL may be calculated as an integral of the difference between the PV and the moving average over time. The integral could then be divided by the time. However, care should be taken to avoid a zero result. For instance, values for the PV above the moving average would have to be separated from values for the PV below the moving average. Additionally, absolute values for the difference between the PV and the moving average could be used.
  • a first threshold and a second threshold are preferably calculated according to the SP and the MNL, as shown in step 5d.
  • the first threshold is preferably calculated as the sum of the SP and the MNL.
  • the second threshold is preferably calculated as the SP minus the MNL. For example, if the MNL is found to be .2 kPa, then the first threshold may be approximately 45.2 kPa and the second threshold may be approximately 44.8 kPa.
  • the first threshold and the second threshold may be calculated well outside of the MNL, and therefore may deviate from the desired vacuum level to a greater degree. It should be apparent that the thresholds are determined by analyzing the system noise and hysteresis characteristics of the system 12, as described above.
  • the thresholds allow the controller 10 to account for the system noise and hysteresis characteristics of the system 12, while being tuned.
  • the first CO, the second CO, the first threshold and the second threshold are used to find the UG and the UP of the system 12.
  • horizontal line 56 represents the SP and curve 58 represents the PV.
  • horizontal line 64 represents the nominal output and curve 66 represents the CO, or signal sent to the drive 18.
  • the first CO is sent to the drive 18, as shown in step 7a. It can be seen that the first CO is approximately the nominal output plus the output offset, shown as bracket 68.
  • the PV begins moving toward the first threshold, shown as horizontal line 70, in response to the first CO.
  • the first threshold is approximately the SP plus the MNL, shown as bracket 62.
  • the second CO is sent to the drive 18, as shown in step 7b.
  • the second CO is approximately the nominal output minus the output offset.
  • the first CO is sent to the drive 18, as shown in step 7c.
  • the second threshold is approximately the SP minus the MNL.
  • the method functions similarly to an ideal relay. However, the thresholds are used to determine when to switch the relay, thereby compensating for the system noise and hysteresis characteristics of the system 12.
  • Steps 7b and 7c may be repeated until the UG, calculated using bracket 74 and the output offset, and the UP, shown as bracket 76, can be ascertained, as shown in step 7d.
  • a quick tuning procedure may comprise steps 7b and 7c being repeated for between 1 and 5 repetitions.
  • a slow tuning procedure may comprise steps 7b and 7c being repeated for between 5 and 10 repetitions.
  • the P, the I, and the D are preferably calculated according to Table 1 , as shown in step 7e. It should be apparent that Table 1 represents Zeigler-Nichols conversion factors. Other conversion factors, such as those associated with Tyreus and Luyben or Shen and Yu may also be used.
  • the controller 10 gradually shifts toward the P, the I, and the D.
  • the controller preferably shifts toward the P, the I, and the D after many iterations of the method. For example, after a first iteration, the resultant new values for the P, the I, and the D can be averaged with previous values to produce an average P, an average I, and an average D. The average P, the average I, and the average D can then be used immediately. Subsequent iterations can be performed, averaging the new values for the P, the I, and the D with previous values each time. Therefore, the P, the I, and the D are gradually implemented while simultaneously minimizing the effects of any abnormal and/or unstable results.
  • the controller 10 may shift toward the P, the I, and the D in a linear fashion and/or may actually reach the P, the I, and the D after only one iteration of the method. It should be apparent that the method described above will result in the PV closely approximating a sinusoidal function, while the CO closely approximates a square wave function. Under ideal conditions, the sinusoid of the PV oscillates about the SP, while the square wave of the CO oscillates about the nominal output. However, uncontrolled events, such as a valve opening or one of the teat cups 22 becoming disconnected from a respective teat of the dairy animal, may cause the PV to shift.
  • the PV preferably does not oscillate enough to cause the mechanical vacuum regulator to actuate. If the mechanical vacuum regulator were to actuate, the vacuum reading would be capped at the maximum vacuum reading and therefore not properly reflect the characteristics of the system 12.
  • the method can compensate for uncontrolled events, such as changes in the load caused by the valve opening or closing.
  • horizontal line 56 represents the SP
  • curve 58 represents the PV
  • curve 66 represents the CO.
  • the system 12 experiences a change in the load.
  • the PV suddenly shifts and thereafter oscillates about an axis of oscillation, shown as horizontal line 80.
  • the axis of oscillation is identified, as shown in step 9a.
  • Bracket 82 represents an axis offset that is calculated as the difference between the SP and the axis of oscillation, as shown in step 9b.
  • the first CO and the second CO are adjusted in order to force the axis of oscillation to be approximately equal to the SP, as shown in step 9c.
  • the desired vacuum level may be 45 kPa. If the sensor 30 is designed to measure up to 60kPa, then the SP would be approximately 75% corresponding to the PV tracking the SP at approximately 45 kPa. If the maximum frequency of the pump 16 and the drive 18 are 60 Hz, it may be determined that the nominal output is approximately 50.8%, which corresponds to approximately 30.5 Hz. In this case, the output offset may be 10% of the nominal output, or approximately 3.05 Hz. Therefore, the first CO would be approximately 55.9%, which corresponds to approximately 33.55 Hz, and the second CO would be approximately 45.8%, which corresponds to approximately 27.45 Hz.
  • the MNL may be found to be approximately 0.2 kPa.
  • the first threshold may be chosen as 75.8% and the second threshold may be chosen as 74.8%. Therefore, the first threshold would correspond to approximately 45.5 kPa and the second threshold would correspond to approximately 44.5 kPa, which are both well outside the system noise and , hysteresis characteristics of the system 12.
  • the first threshold maybe chosen as 75.3% and the second threshold may be chosen as 74.7%.
  • the first threshold would correspond to approximately 45.2 kPa and the second threshold would correspond to approximately 44.8 kPa, which are at the system noise and hysteresis characteristics of the system 12, according to the MNL. This would still allow the method to account for the system noise and hysteresis characteristics of the system 12, although with less of a margin.
  • the UG may be found to be approximately 30.3 Hz/kPa and the UP may be found to be 2.7 seconds.
  • one or more steps of the method may be performed manually by a human operator.
  • the method is preferably performed automatically by the controller 10.
  • the operator may initiate the method by pressing a button and/or performing one or more of the calculations described above and entering such results into the controller 10.
  • the present invention has been described above, it is understood that other speeds and/or values can be substituted.
  • the desired vacuum level may be different and/or Table 1 may be replaced with other values.
  • the controller 10 has been described as using scaled values for the CO, the PV, and the SP, it is acceptable to use real values.
  • the pump 16 and the drive 18 may operate on direct current (DC), instead of AC.
  • DC direct current
  • one portion of the method may be used independently of other portions of the method.
  • the method may also be implemented in the controller 10 utilizing only the proportional coefficient.
  • the method may also be implemented in the controller 10 utilizing only the proportional coefficient and the integral coefficient.
  • the method may be used with other PID controlled processes associated with the system 12.
  • the method may be used with a refrigeration compressor to tune a controller that regulates the speed of the compressor according to a refrigerant temperature.
  • the CO would be a speed signal sent to the compressor
  • the PV would be the temperature indicated as a temperature reading determined by a temperature sensor
  • the SP would be a desired refrigerant temperature.
  • the method may be used with a milk pump to tune a controller that regulates the speed of the pump according to an exit temperature of the milk.
  • the CO would be a speed signal sent to the pump
  • the PV would be the temperature indicated as a temperature reading determined by a temperature sensor
  • the SP would be a desired exit temperature.
  • the method may be used with a vacuum regulator to tune a controller that regulates airflow through the regulator according to a vacuum level.
  • the CO would be a position signal sent to the regulator
  • the PV would be the vacuum level indicated as a vacuum reading determined by a vacuum sensor
  • the SP would be a desired vacuum level.
  • the method may be used with a back pressure control valve to tune a controller that regulates the valve according to a back pressure.
  • the CO would be a position signal sent to the valve
  • the PV would be the back pressure indicated as a pressure reading determined by a pressure sensor
  • the SP would be a desired back pressure.
  • the method may be used with a vacuum pump cooling valve to tune a controller that regulates the valve according to a coolant temperature.
  • the CO would be a position signal sent to the valve
  • the PV would be the coolant temperature indicated as a temperature reading determined by a temperature sensor
  • the SP would be a desired coolant temperature.
  • the method may be used with a vacuum pump exhaust discharge system to tune a controller that regulates where exhaust is discharged according to an ambient air temperature.
  • the CO would be a location signal sent to the system
  • the PV would be the ambient air temperature indicated as a temperature reading determined by a temperature sensor
  • the SP would be a desired ambient air temperature.
  • the method may be used with a holding gate motor to tune a controller that regulates a power signal to the motor according to the motor's torque.
  • the CO would be a signal sent to the motor
  • the PV would be the torque indicated as a torque reading determined by a torque sensor
  • the SP would be a desired torque.
  • each controller may control a valve or a pulsation rate in order to control the vacuum level at each individual teat cup 22.
  • the CO may be a position signal sent to the valve
  • the PV would be the vacuum level indicated as a vacuum reading determined by a vacuum sensor
  • the SP would be a desired vacuum level.

Abstract

A PID controller tuning method that accounts for system noise comprises identifying the system noise (3b), calculating thresholds (3c) outside of and an ultimate period (UP). Using an average of a process variable (PV), a maximum noise level (MNL) can be calculated as a maximum difference between the PV and the average. A first threshold is calculated as the sum of a set-point (SP) and the MNL. When a first control output (CO) is generated, the PV moves toward the first threshold. As soon as the PV crosses the second threshold, the first CO is generated. Alternating between the first CO and the second CO allows the UG and the UP to be ascertained (3d).

Description

AUTO-TUNING PID CONTROL FOR VACUUM SYSTEM
BACKGROUND OF THE INVENTION 1. FIELD OF THE INVENTION The present invention relates to PID controllers. More particularly, the present invention relates to a PID controller that can automatically tune itself to account for system noise, hysteresis, and load changes in a vacuum system which is used in milking dairy animals.
2. DESCRIPTION OF PRIOR ART
Proportional integral derivative (PID) controllers are used in many industries to control some aspect of an industrial process. PID controllers typically attempt to control a process variable (PV), such as a vacuum level indicated as a vacuum reading, by modifying a control output (CO), such as a vacuum pump speed signal, in order to make the PV track a set-point (SP), such as a desired vacuum level. As such, PID controllers need to be tuned specifically to the process they are expected to control.
There are many methods in current use for tuning PID controllers. However, methods in current use are not efficient at compensating for system noise which is inherent in the process. For example, a milking system may experience system noise in the form of sporadic vacuum leaks, load surges, vacuum pump characteristics, and other substantially random events. Thus, parameters used by and generated through these methods may be skewed by such system noise, resulting in non-optimally tuned PID controllers.
Furthermore, methods in current use are not efficient at compensating for load changes that may occur while the method is being conducted. For example, an event outside of the control of a PID controller may occur which causes the PV to shift away from the SP. Since methods in current use cannot account for this, the PID controller is often tuned outside of its normal operating range. Again, this results in non-optimally tuned PID controllers.
Accordingly, there is a need for an improved PID controller that overcomes the limitations of the prior art.
There is a further need for an improved PID controller that more effectively controls a variable speed drive for a vacuum system.
There is an additional need for an improved milking system which uses a PID controller which can tune itself to account for system noise, hysteresis, and load changes in one or more milking apparatuses of the milking system.
SUMMARY OF THE INVENTION
The present invention overcomes the above-identified problems and provides a distinct advance in the art of PID controllers. More particularly, the present invention provides a PID controller that can automatically tune itself to account for system noise, hysteresis, and load changes. The controller may be part of an automated milking system for a dairy parlor which employs automated machine milking using a vacuum system to extract milk from a dairy animal's teats. The milking system may include a dairy parlor having multiple milking stations for simultaneous milking of one or a plurality of dairy animals, or may be an automated milking machine which sequentially milks the dairy animals with the aid of a milking robot. The system broadly comprises one or a plurality of milking stations for milking the animals. A milking apparatus is provided at each station for receiving and transporting the milk from the animals, the milking apparatus typically including at least one milking claw having a plurality of teat cups, but may also include an apparatus wherein the teat cups are independent of a claw. The system further includes a vacuum pump for producing a vacuum level in order to draw the milk into the apparatus, and further typically provides vacuum to a pulsator for providing a pulsating action to the cups, a variable speed drive for driving the pump at a variable speed, and the controller for controlling the drive according to the vacuum level.
The controller monitors the vacuum level by receiving a vacuum reading from a pressure sensor connected to a conduit that runs between the pump and the apparatus at each station. According to the vacuum reading received from the sensor, the controller adjusts a speed signal that is sent to the drive, thereby controlling the speed of the pump using the drive.
The controller preferably determines an appropriate speed signal using a Proportional Integral Derivative (PID) control routine. PID control routines are commonly used to generate a control output (CO) in order to force a process variable (PV) to track a set-point (SP). In this case, the CO is the signal that is sent to the drive to control the speed of the pump. Additionally, the PV is the vacuum level in the conduit indicated as the vacuum reading determined by the sensor. It is common practice to use an output from a process sensor as the PV. Therefore, throughout the remainder of this document, as it relates to vacuum systems, we will associate the PV with the vacuum reading, which is how the controller monitors the vacuum level. Finally, the SP is a desired vacuum level that will allow the system to safely and comfortably extract milk from the animals. It can be appreciated that the controller is necessary since events effecting the system are constantly changing a system load, which is the required amount of air the pump must handle in order to maintain the desired vacuum level. Such events, include, for example changes in the rate of milk flow from the animals during milking, initiation and cessation of milking on different animals at different milking stations connected to the conduit, and disconnection of one or more of the cups which permits air to enter freely into the conduit.
In some preferred milking systems which include a milking robot, the milking robot may additionally perform the function of cleaning of the animal's teats using liquid such as water. In such systems, vacuum may be used for transporting cleaning liquid from a dedicated teat cleaning device.
The manner in which the controller modifies the CO, and thus the speed of the pump, is controlled by PID settings, which may or may not include a coefficient for each portion of the PID control routine. The
PID settings preferably include a proportional coefficient (P), an integral coefficient (I), and a derivative coefficient(D).
The controller is preferably able to tune itself by automatically performing a tuning method that accounts for system noise and hysteresis characteristics of the system while compensating for changes in the load that may occur while the method is being conducted. The method broadly comprises performing initial determinations, identifying the system noise and hysteresis characteristics of the system, calculating thresholds outside of the system noise and hysteresis characteristics, and using the thresholds to find an ultimate gain (UG) and an ultimate period (UP) of the system while compensating for changes in the load. The UG and the UP are then used to calculate the P, the I, and the D.
The initial determinations include calculating a nominal output and determining an output offset. The nominal output is preferably a nominal speed signal that is sent to the drive in order to cause the pump to run at a nominal speed, which is expected to allow the system to maintain the vacuum reading at or near the desired vacuum level while the load is held substantially constant under normal operating conditions.
The output offset is preferably an allowable deviation from the nominal output which is not expected to cause a significant disturbance in the system.
Once the nominal output and the output offset have been determined, a first CO and a second CO are calculated. The first CO is preferably calculated as the sum of the nominal output and the output offset. The second CO is preferably calculated as the nominal output minus the output offset. Therefore, the first CO and the second CO are preferably bracketed around the nominal output, that is, calculated so as to be of values respectively greater than and less than the nominal output. Then, the system noise and hysteresis characteristics of the system are identified. With the CO held at the nominal output, the PV will fluctuate around the SP due to the system noise and hysteresis characteristics. The PV is monitored and a moving average of the PV is calculated. Using the moving average, a maximum noise level (MNL) can be calculated as a maximum difference between the PV and the moving average.
Finally, a first threshold and a second threshold are preferably calculated according to the SP and the MNL. The first threshold is preferably calculated as the sum of the SP and the MNL. The second threshold is preferably calculated as the SP minus the MNL.
The first CO, the second CO, the first threshold and the second threshold are used to find the UG and the UP of the system. When the first CO is sent to the drive, the PV begins moving toward the first threshold. As soon as the PV crosses the first threshold, the second CO is sent to the drive. As soon as the PV crosses the second threshold, the first CO is sent to the drive. Alternating between the first CO and the second CO may be repeated until the UG and the UP can be ascertained. The P, the I, and the D can be calculated from the UG and the UP using Zeigler-Nichols conversion factors or other conversion factors, such as those associated with Tyreus and Luyben or Shen and Yu. It should be apparent that the method described above will result in the PV closely approximating a sinusoidal function, while the CO closely approximates a square wave function. Under ideal conditions, the sinusoid of the PV oscillates about the SP, while the square wave of the CO oscillates about the nominal output; however, uncontrolled events may cause the PV to shift.
The method can compensate for uncontrolled events, such as changes in the load caused by a valve opening. When the system experiences a change in the load, the PV shifts and thereafter oscillates about an axis of oscillation. The first CO and the second CO are adjusted in order to force the axis of oscillation to be approximately equal to the SP, thereby compensating for the change in the load.
Because it is a goal of the controller to keep the PV at or near the SP, ensuring that the PV oscillates about the SP provides more useful values for the UG and the UP. In turn, this provides more accurate values for the P. the I, and the D, inasmuch as reactions of the system with the PV close to the SP are of greater significance than reactions of the system with the PV far from the SP.
For example, the system typically includes non-linear characteristics such that the system will react differently to similar
, changes. For instance, the pump may react more quickly to a speed change with the vacuum reading at a low vacuum level when compared to the vacuum reading at a higher vacuum level. Therefore, if the controller is optimally tuned with the vacuum reading at the low vacuum level, it is inherently non-optimally tuned with the vacuum reading at the higher vacuum level. Thus, it can be very important for the controller to be tuned while the system is holding the vacuum reading near the desired vacuum level. BRIEF DESCRIPTION OF THE DRAWINGS
A preferred embodiment of the present invention is described in detail below with reference to the attached drawing figures, wherein:
FIG. 1 is a schematic view of an auto-tuning PID controller shown as part of an automated milking system in accordance with a preferred embodiment of the present invention;
FIG. 2 is a diagram showing how the controller adjusts a pump speed in orderto force a vacuum reading to track a desired vacuum level; FIG. 3 is a flowchart showing an automatic tuning procedure preferably used by the controller;
FIG. 4 is a diagram showing how the vacuum reading fluctuates around the desired vacuum level with the speed held constant;
FIG.5 is a flowchart showing a procedure used to identify and compensate for system noise;
FIG. 6 is a diagram showing how the controller identifies an ultimate gain and an ultimate period, while compensating for system noise;
FIG. 7 is a flowchart showing a procedure used to identify the ultimate gain and the ultimate period, while compensating for system noise;
FIG. 8 is a diagram showing how the controller adjusts the speed of the pump in order to compensate for load changes; and
FIG. 9 is a flowchart showing a procedure used to compensate for load changes.
DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT
Referring to FIG. 1 , the preferred auto-tuning controller 10 in accordance with the present invention is shown as part of an automated machine milking system 12 for milking dairy animals such as that illustrated in U.S. Patent No. 6,164,242 incorporated herein by reference. The system 12 may be arranged in a manner more fully disclosed in a co- pending U.S. National Phase Application entitled "An Arrangement for Managing a Herd of Freely Walking Animals" Application Serial No. 10/048,825 filed February 1, 2002 which claims priority of International Application Serial No. PCT/SE00/01692 published on March 15, 2001 , hereby incorporated into the present application by reference.
The system 12 broadly comprises an area for receiving the animals, a milking station adjacent to the area, a milking apparatus 14 in the station for receiving and transporting milk from the animals, a vacuum pump 16 for producing a vacuum level in the apparatus 14 in order to draw the milk into the apparatus 14, a variable speed drive 18 for driving the pump 16 at a variable speed, and the controller 10 for controlling the drive 18 according to the vacuum level. It should be appreciated that while only one apparatus 14 is shown in the drawing, the system 12 may include a plurality of apparatuses 14 for simultaneous milking of a plurality of dairy animals. The apparatus 14 includes at least one milking claw 20, which includes a plurality of teat cups 22. The cups 22 of each claw 20 are connected to teats of one of the animals in order to allow the system 12 to draw milk therefrom. Vacuum developed by the pump 16 moves milk from the teat cups 22 through the claw 20 via milk tube 15 to a receiving vessel 17. The receiving vessel 17 is connected by a vacuum conduit 19 to a separator 21 for separating liquid from the vacuum conduit and intermittently draining separated liquid. Vacuum developed by the pump 16 may also be provided via a vacuum conduit to a pulsator 23 whereby pulsating subpressure is provided to each teatcup 22 for stimulation of the teat of the dairy animal as is well known in the art.
The pump 16 includes a suction side 24 and a pressure side 26. The suction side 24 of the pump 16 is preferably connected to each claw 20 through a conduit 28 which allows the pump 16 to draw the vacuum level in the claw 20. The pump 16 is a radial compressor, which by means of blades, guides incoming air at the suction side 24 radially outwards, thereby accelerating the air by means of centrifugal force, but the invention hereof is also applicable to lobe-type and other vacuum pumps capable of variable speed operation. The air is discharged through the pressure side 26 which is directly or indirectly connected to the atmosphere so that the air may be vented.
The controller 10 monitors the vacuum level by receiving a vacuum reading from a pressure sensor 30 connected to the conduit 28. According to the vacuum reading received from the sensor 30, the controller 10 adjusts a speed signal that is sent to the drive 18, thereby controlling the speed of the pump 16 using the drive 18.
The controller 10 preferably determines an appropriate speed signal using a Proportional Integral Derivative (PID) control routine. PID control routines are commonly used to generate a control output (CO) in order to force a process variable (PV) to track a set-point (SP). In other words, the CO is used by the controller 10 to control the PV. The SP is typically a desired PV value. In this case, the CO is the signal that is sent to the drive 18 to control the speed of the pump 16. Additionally, the PV is the vacuum level in the conduit 28 indicated as the vacuum reading determined by the sensor 30. It is common practice to use an output from a process sensor as the PV. Therefore, throughout the remainder of this document, as it relates to vacuum systems, we will associate the PV with the vacuum reading, which is how the controller 10 monitors the vacuum level. Finally, the SP is a desired vacuum level that will allow the system 12 to safely and comfortably extract milk from the animals.
The controller 10 preferably interacts with the CO, the PV, and the SP in 0% - 100% values, which can be easily scaled to specific systems 12. For example, if the pump 16 and the drive 18 are designed to run at a maximum speed of 1800 revolutions per minute (RPM), then a CO of 0% preferably corresponds to approximately 0 RPM and causes the pump 16 to stop. Continuing the example, a CO of 100% preferably corresponds to approximately 1800 RPM and causes the pump 16 to run at approximately the maximum speed. Finally, a CO of 50% preferably corresponds to approximately 900 RPM and causes the pump 16 to run at approximately half of the maximum speed. .
The pump 16 and the drive 18 preferably operate on alternating current (AC). The drive 18 preferably controls the speed of the pump 16 by controlling a frequency of the AC sent to the pump 16. For example, in order to force the pump 16 to generate a maximum vacuum level, by running at approximately the maximum speed, the controller 10 sends the drive 18 a 100% CO. In response to the 100% CO, the drive 18 sends the pump 16 a maximum frequency, which is typically 60 hertz (Hz). As another example, in order to force the pump 16 to generate a low vacuum level, by running at approximately half of the maximum speed, the controller 10 sends the drive 18 a 50% CO. In response to the 50% CO, the drive 18 sends the pump 16 a low frequency, which is typically 30 Hz. Since the system 12 may have any number of claws 20, a specific system 12 may require differently sized equipment than another specific system 12, in order to maintain the desired vacuum level. Therefore, the pump 16 and drive 18 are preferably sized for each specific system 12. For example, a one hundred claw system 12 may require a larger pump 16 and a larger drive 18 which may consume more power than a ten claw system 12. Alternatively, the pump 16 of a specific system
12 may run at different speeds than those of another specific system 12.
For example, it should be understood that the pump 16 acts to pull air through the system 12. In pulling a volume of air through the system 12, the pump 16 induces the vacuum level in the conduit 28. Therefore, in the one hundred claw system 12, the pump 16 may be required to pull roughly ten times the volume of air than may be required in the ten claw system 12, in order to maintain the desired vacuum level in each system 12. Generally speaking, there are two factors that govern how much air a specific pump 16 can pull through the system 12. A first factor is a physical size of the pump 16. For instance, the larger pump 16 can typically pull a larger volume of air than a smaller pump 16 can, while operating at identical speeds. A second factor is the maximum speed of the pump 16. For instance, similarly sized pump 16 can pull different volumes of air through the system 12, depending upon the speed at which each is operating.
It has been found that the desired vacuum level is typically approximately 45 kilo Pascal (kPa). Therefore, the sensor 30 is preferably able to measure the vacuum level in the conduit 28 around the desired vacuum level of 45 kPa. It is also preferable for the sensor 30 to be able to measure the vacuum level, when the vacuum level deviates significantly from the desired vacuum level. Additionally, the sensor 30 is preferably electronic and may be configured such that, during normal operations, the vacuum reading will be displayed in a specific section of a time plot or graphical display. This may be done in order to allow users to view a single plot showing the PV, the CO, and/or other values simultaneously, without those values overlapping and thereby interfering with each other.
For example, the sensor 30 may be configured to measure the vacuum level from approximately 0 kPa to approximately 60 kPa allowing for up to a 33% higher vacuum level than the desired vacuum level of approximately 45 kPa. Thus, a PV of 0% is preferably indicative of an approximately 0 kPa vacuum level in the conduit 28. A PV of 100% is preferably indicative of an approximately 60 kPa vacuum level in the conduit 28. This results in an approximately 75% PV, when the vacuum reading is near the desired vacuum level of 45 kPa. Therefore, the PVwill be displayed near the middle of a top half of the plot, as described above. While the sensor 30 may be able to measure a vacuum reading up to, or even in excess of, 60 kPa, the sensor 30 is not expected to experience such a excessive vacuum level. A mechanical vacuum regulator 32 is preferably connected to the conduit 28 in order to prevent the excessive vacuum level in the conduit 28. The mechanical vacuum regulator 32 preferably operates independently of the controller 10 and bleeds air into the system 12 in order to prevent the vacuum level from exceeding a maximum vacuum reading, such as 52 kPa. Therefore, care should be taken to avoid encountering the maximum vacuum reading during tuning of the controller 10 in order to avoid erroneous results.
It is common practice to match the PV and the SP. Therefore, a SP of 0% preferably corresponds to an approximately 0 kPa desired vacuum level and a SP of 100% preferably corresponds to an approximately 60 kPa desired vacuum level. As a result, the SP is typically set to approximately 75% which corresponds to the approximately 45 kPa desired vacuum level.
As discussed above, the controller 10 forces the PV to track the SP by manipulating the CO. It can be appreciated that the controller 10 is necessary since events effecting the system 12 are constantly changing a system load, which may be characterized in terms of the required amount of air the pump 16 must handle in order to maintain the desired vacuum level. For example, the cups 22 are frequently being attached to and removed from teats, which changes the load. Alternatively, one of the cups 22 may accidentally become disconnected which may increase the load. Additionally, the quantity of milk flowing into the apparatus 14 may change the load. These and other events act upon the system 12 substantially constantly changing the load and requiring the controller 10 to substantially constantly modify the speed of the pump 16 in order to maintain the vacuum reading at the desired vacuum level. Additionally, an operator may alter the SP to a different desired vacuum level.
Under normal operations, the controller 10 controls the pump 16 in a manner similar to that presented in FIG. 2. Curve 50 represents the SP which is initially set to a specific desired vacuum level. It can be seen that curve 52, which represents the CO, is constantly modified by the controller 10 in order to keep curve 54, which represents the PV, at or near the SP. As the SP is altered to another desired vacuum level, the controller 10 recognizes this and modifies the CO in order to force the PV to move toward the SP.
The manner in which the controller 10 modifies the CO is controlled by PID settings, which may or may not include a coefficient for each portion of the PID control routine. Since the system 12 is unique, one specific system 12 may react differently than another specific system. Therefore, the controller 10 must be tuned to interact properly with the system 12 by determining and implementing unique PID settings for the system 12. The PID settings preferably include a proportional coefficient (P), an integral coefficient (I), and a derivative coefficient (D). However, one or more of the coefficients may be equal to zero, thereby disabling the corresponding portion of the PID control routine.
The flow charts of FIGs. 3, 5, 7, and 9 show the functionality and operation of a preferred implementation of the present invention in more detail. In this regard, some of the blocks of the flow charts may represent a module segment or portion of code of a program of the present invention which comprises one or more executable instructions for implementing the specified logical function or functions. In some alternative implementations, the functions noted in the various blocks may occur out of the order depicted. For example, two blocks shown in ' succession may in fact be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order depending upon the functionality involved.
A tuning method of the present invention customizes the controller 10 for the system 12 to account for system noise and hysteresis characteristics of the system 12. The method may also compensate for changes in the load that may occur while the controller 10 is being tuned. The method is preferably not performed during normal operations. Furthermore, the PID control routine of the controller 10 is preferably temporarily disabled during at least portions of the method. As shown in FIG. 3, the method broadly comprises performing initial determinations and identifying the system noise and hysteresis characteristics of the system 12, as shown in steps 3a and 3b. The method also comprises calculating thresholds outside of the system noise and hysteresis characteristics, as shown in step 3c. The method further comprises using the thresholds to find an ultimate gain (UG) and an ultimate period (UP) of the system 12, or other tuning parameters, while compensating for changes in the load, as shown in steps 3d and 3e. Finally, the method comprises calculating the P, the I, and the D, as shown in step 3f.
The initial determinations include calculating a nominal output and determining an output offset. The nominal output is preferably a nominal speed signal that is sent to the drive 18 in order to cause the pump 16 to run at a nominal speed which is expected to allow the system 12 to maintain the vacuum reading at or near the desired vacuum level while the load is held substantially constant under normal operating conditions. For example, the system 12 may be expected to normally operate with 10% of the cups 22 disconnected. In this case, the nominal output is calculated with 10% of the cups 22 disconnected and any other conditions and/or assumptions that may be required. For instance, the nominal output may be found to be 75%. For the above example, the system 12 can maintain the vacuum reading at approximately 45 kPa with 10% of the cups 22 disconnected and the pump 16 running at approximately 75% of the maximum speed, or approximately 1350 RPM. The nominal output is preferably calculated by running the system 12 with the controller 10 controlling the speed of the pump16. An average pump speed can be calculated over an approximately 5 second time span, but other time span may be used. The average pump speed may be used as the nominal output. Alternatively, the pump 16 may be run in manual, with someone varying the speed of the pump 16 until the vacuum reading closely approximates the desired vacuum level, thereby determining the nominal output through trial and error. Furthermore, the nominal output can be calculated through engineering calculations accounting for characteristics of the system 12, such as an air handling capacity of the pump 16.
The output offset is preferably an allowable deviation from the nominal output which is not expected to cause a significant disturbance in the system 12. The output offset is preferably approximately 5% of the nominal output, but may be between 2% and 15% of the nominal output. Given the above example, the output offset corresponds to approximately 3.75% of the maximum speed, or approximately 68 RPM. Once the nominal output and the output offset have been determined, a first CO and a second CO are calculated. The first CO is preferably calculated as the sum of the nominal output and the output offset. The second CO is preferably calculated as the nominal output minus the output offset. Therefore, the first CO and the second CO are preferably bracketed around the nominal output. Continuing the above example, the first CO is approximately 78.75% of the maximum speed which corresponds to a pump speed of approximately 1418 RPM. The second CO is approximately 71.25% of the maximum speed which corresponds to a pump speed of approximately 1282 RPM. As shown in FIGs. 4 and 5, the system noise and hysteresis characteristics of the system 12 can be identified. With the CO held at the nominal output, as shown in step 5a, the PV will fluctuate around the SP due to the system noise and hysteresis characteristics. Horizontal line 56 represents the SP, or the desired vacuum level, and curve 58 represents the PV, or the vacuum reading of the vacuum level. The PV is monitored and a moving average of the PV is calculated, as shown in step 5b. An example of the moving average is shown as curve 60. The moving average is preferably calculated over an approximately 20 second time span, but may encompass other time spans. Using the moving average, a maximum noise level (MNL) can be calculated as a maximum difference between the PV and the moving average, as shown in step 5c. An example of the MNL is shown as bracket 62.
Alternatively, the MNL may be calculated as an integral of the difference between the PV and the moving average over time. The integral could then be divided by the time. However, care should be taken to avoid a zero result. For instance, values for the PV above the moving average would have to be separated from values for the PV below the moving average. Additionally, absolute values for the difference between the PV and the moving average could be used.
Finally, a first threshold and a second threshold are preferably calculated according to the SP and the MNL, as shown in step 5d. The first threshold is preferably calculated as the sum of the SP and the MNL. The second threshold is preferably calculated as the SP minus the MNL. For example, if the MNL is found to be .2 kPa, then the first threshold may be approximately 45.2 kPa and the second threshold may be approximately 44.8 kPa. Alternatively, the first threshold and the second threshold may be calculated well outside of the MNL, and therefore may deviate from the desired vacuum level to a greater degree. It should be apparent that the thresholds are determined by analyzing the system noise and hysteresis characteristics of the system 12, as described above. Therefore, the thresholds allow the controller 10 to account for the system noise and hysteresis characteristics of the system 12, while being tuned. As shown in FIGs. 6 and 7, the first CO, the second CO, the first threshold and the second threshold are used to find the UG and the UP of the system 12. As in FIG. 4, horizontal line 56 represents the SP and curve 58 represents the PV. Additionally, horizontal line 64 represents the nominal output and curve 66 represents the CO, or signal sent to the drive 18. The first CO is sent to the drive 18, as shown in step 7a. It can be seen that the first CO is approximately the nominal output plus the output offset, shown as bracket 68. The PV begins moving toward the first threshold, shown as horizontal line 70, in response to the first CO. It can be seen that the first threshold is approximately the SP plus the MNL, shown as bracket 62. As soon as the PV crosses the first threshold , the second CO is sent to the drive 18, as shown in step 7b. It can be seen that the second CO is approximately the nominal output minus the output offset. As soon as the PV crosses the second threshold, shown as horizontal line 72, the first CO is sent to the drive 18, as shown in step 7c. It can be seen that the second threshold is approximately the SP minus the MNL. In this respect, the method functions similarly to an ideal relay. However, the thresholds are used to determine when to switch the relay, thereby compensating for the system noise and hysteresis characteristics of the system 12. Steps 7b and 7c may be repeated until the UG, calculated using bracket 74 and the output offset, and the UP, shown as bracket 76, can be ascertained, as shown in step 7d. For example, a quick tuning procedure may comprise steps 7b and 7c being repeated for between 1 and 5 repetitions. Alternatively, a slow tuning procedure may comprise steps 7b and 7c being repeated for between 5 and 10 repetitions. Using the UG and the UP, the P, the I, and the D are preferably calculated according to Table 1 , as shown in step 7e. It should be apparent that Table 1 represents Zeigler-Nichols conversion factors. Other conversion factors, such as those associated with Tyreus and Luyben or Shen and Yu may also be used.
Figure imgf000019_0001
Table 1
In order to avoid abrupt changes, the controller 10 gradually shifts toward the P, the I, and the D. The controller preferably shifts toward the P, the I, and the D after many iterations of the method. For example, after a first iteration, the resultant new values for the P, the I, and the D can be averaged with previous values to produce an average P, an average I, and an average D. The average P, the average I, and the average D can then be used immediately. Subsequent iterations can be performed, averaging the new values for the P, the I, and the D with previous values each time. Therefore, the P, the I, and the D are gradually implemented while simultaneously minimizing the effects of any abnormal and/or unstable results. Alternatively, the controller 10 may shift toward the P, the I, and the D in a linear fashion and/or may actually reach the P, the I, and the D after only one iteration of the method. It should be apparent that the method described above will result in the PV closely approximating a sinusoidal function, while the CO closely approximates a square wave function. Under ideal conditions, the sinusoid of the PV oscillates about the SP, while the square wave of the CO oscillates about the nominal output. However, uncontrolled events, such as a valve opening or one of the teat cups 22 becoming disconnected from a respective teat of the dairy animal, may cause the PV to shift.
Since the mechanical vacuum regulator preferably operates independently of the controller 10, the PV preferably does not oscillate enough to cause the mechanical vacuum regulator to actuate. If the mechanical vacuum regulator were to actuate, the vacuum reading would be capped at the maximum vacuum reading and therefore not properly reflect the characteristics of the system 12. As shown in FIGs. 8 and 9, the method can compensate for uncontrolled events, such as changes in the load caused by the valve opening or closing. As in FIG. 6, horizontal line 56 represents the SP, curve 58 represents the PV, and curve 66 represents the CO. At point 78, the system 12 experiences a change in the load. As a result, the PV suddenly shifts and thereafter oscillates about an axis of oscillation, shown as horizontal line 80. The axis of oscillation is identified, as shown in step 9a. Bracket 82 represents an axis offset that is calculated as the difference between the SP and the axis of oscillation, as shown in step 9b. At point 84, the first CO and the second CO are adjusted in order to force the axis of oscillation to be approximately equal to the SP, as shown in step 9c.
For example, in a specific system 12, the desired vacuum level may be 45 kPa. If the sensor 30 is designed to measure up to 60kPa, then the SP would be approximately 75% corresponding to the PV tracking the SP at approximately 45 kPa. If the maximum frequency of the pump 16 and the drive 18 are 60 Hz, it may be determined that the nominal output is approximately 50.8%, which corresponds to approximately 30.5 Hz. In this case, the output offset may be 10% of the nominal output, or approximately 3.05 Hz. Therefore, the first CO would be approximately 55.9%, which corresponds to approximately 33.55 Hz, and the second CO would be approximately 45.8%, which corresponds to approximately 27.45 Hz.
Continuing the example, the MNL may be found to be approximately 0.2 kPa. In order to ensure that the first threshold and the second threshold are able to adequately compensate for the system noise and hysteresis characteristics of the system 12, the first threshold may be chosen as 75.8% and the second threshold may be chosen as 74.8%. Therefore, the first threshold would correspond to approximately 45.5 kPa and the second threshold would correspond to approximately 44.5 kPa, which are both well outside the system noise and , hysteresis characteristics of the system 12.
Alternatively, the first threshold maybe chosen as 75.3% and the second threshold may be chosen as 74.7%. In this case, the first threshold would correspond to approximately 45.2 kPa and the second threshold would correspond to approximately 44.8 kPa, which are at the system noise and hysteresis characteristics of the system 12, according to the MNL. This would still allow the method to account for the system noise and hysteresis characteristics of the system 12, although with less of a margin. Using the first CO, the second CO, the first threshold, and the second threshold, as described above, the UG may be found to be approximately 30.3 Hz/kPa and the UP may be found to be 2.7 seconds. After implementing Table 1 , we find that the P is approximately 17.82 Hz/kPa, the I is approximately 1.35 /kPa, and the D is approximately .3375 /kPa*s2. These values would preferably be implemented gradually, but could be implemented immediately.
Since it is a goal of the controller 10 to keep the PV at or near the SP, ensuring that the PV oscillates about the SP provides more useful values for the UG and the UP. In turn, this provides more accurate values for the P, the I, and the D, inasmuch as reactions of the system 12 with the PV close to the SP are of greater significance than reactions of the system 12 with the PV far from the SP.
It can be appreciated that one or more steps of the method may be performed manually by a human operator. However, the method is preferably performed automatically by the controller 10. The operator may initiate the method by pressing a button and/or performing one or more of the calculations described above and entering such results into the controller 10.
While the present invention has been described above, it is understood that other speeds and/or values can be substituted. For example, the desired vacuum level may be different and/or Table 1 may be replaced with other values. Additionally, while the controller 10 has been described as using scaled values for the CO, the PV, and the SP, it is acceptable to use real values. Furthermore, the pump 16 and the drive 18 may operate on direct current (DC), instead of AC. Finally, one portion of the method may be used independently of other portions of the method. These and other minor modifications are within the scope of the present invention.
As can be seen in Table 1 , the method may also be implemented in the controller 10 utilizing only the proportional coefficient. Alternatively, the method may also be implemented in the controller 10 utilizing only the proportional coefficient and the integral coefficient.
Furthermore, the method may be used with other PID controlled processes associated with the system 12. For example, the method may be used with a refrigeration compressor to tune a controller that regulates the speed of the compressor according to a refrigerant temperature. In this case, the CO would be a speed signal sent to the compressor, the PV would be the temperature indicated as a temperature reading determined by a temperature sensor, and the SP would be a desired refrigerant temperature. As another example, the method may be used with a milk pump to tune a controller that regulates the speed of the pump according to an exit temperature of the milk. In this case, the CO would be a speed signal sent to the pump, the PV would be the temperature indicated as a temperature reading determined by a temperature sensor, and the SP would be a desired exit temperature.
As another example, the method may be used with a vacuum regulator to tune a controller that regulates airflow through the regulator according to a vacuum level. In this case, the CO would be a position signal sent to the regulator, the PV would be the vacuum level indicated as a vacuum reading determined by a vacuum sensor, and the SP would be a desired vacuum level.
As another example, the method may be used with a back pressure control valve to tune a controller that regulates the valve according to a back pressure. In this case, the CO would be a position signal sent to the valve, the PV would be the back pressure indicated as a pressure reading determined by a pressure sensor, and the SP would be a desired back pressure.
As another example, the method may be used with a vacuum pump cooling valve to tune a controller that regulates the valve according to a coolant temperature. In this case, the CO would be a position signal sent to the valve, the PV would be the coolant temperature indicated as a temperature reading determined by a temperature sensor, and the SP would be a desired coolant temperature. As another example, the method may be used with a vacuum pump exhaust discharge system to tune a controller that regulates where exhaust is discharged according to an ambient air temperature. In this case, the CO would be a location signal sent to the system, the PV would be the ambient air temperature indicated as a temperature reading determined by a temperature sensor, and the SP would be a desired ambient air temperature.
As another example, the method may be used with a holding gate motor to tune a controller that regulates a power signal to the motor according to the motor's torque. In this case, the CO would be a signal sent to the motor, the PV would be the torque indicated as a torque reading determined by a torque sensor, and the SP would be a desired torque.
Furthermore, the method may be used with controllers that control the vacuum level at each individual teat cup 22. In this case, each controller may control a valve or a pulsation rate in order to control the vacuum level at each individual teat cup 22. In this case, the CO may be a position signal sent to the valve, the PV would be the vacuum level indicated as a vacuum reading determined by a vacuum sensor, and the SP would be a desired vacuum level.
Having thus described a preferred embodiment of the invention, what is claimed as new and desired to be protected by Letters Patent includes the following:

Claims

CLAIMS:
1. A method of tuning a controller for use in a milking system, the method comprising the steps of:
(i) generating a first control output; (ii) generating a second control output when a process variable reaches a first threshold; (iii) generating the first control output when the process variable reaches a second threshold;
(iv) repeating steps (ii) and (iii), thereby causing the process variable to oscillate about an axis; and
(v) calculating an offset defined by a difference between the axis and a set-point so that the axis can be made equal to the set-point.
2. The method as set forth in claim 1 , wherein the first threshold is substantially the same as the second threshold.
3. The method as set forth in claim 1 , wherein the first threshold and the second threshold are different according to a maximum noise level.
4. The method as set forth in claim 1 , further including the step of adjusting the control outputs according to the offset in order to ensure that the axis is substantially equal to the set-point.
5. The method as set forth in claim 1 , wherein the controller is operatively coupled to a vacuum pump of the milking system.
6. The method as set forth in claim 1 , wherein the controller is a PID controller.
7. The method as set forth in claim 1 , wherein the control outputs and the process variable relate to controlling a vacuum level in the milking system.
8. The method as set forth in claim 1 , wherein the control outputs relate to a pump speed and the process variable relates to a vacuum reading.
9. A method of tuning a controller for use in a milking system, the method comprising the steps of: (i) holding a nominal output; (ii) determining an average of a process variable; (iii) identifying a maximum difference between the average and the process variable; and (iv) calculating a first threshold and a second threshold according to the maximum difference so that the first threshold and the second threshold may be used to tune the controller.
10. The method as setforth in claim 9, wherein the nominal output is operable to cause the process variable to substantially track a set-point under substantially constant load conditions.
11. The method as set forth in claim 9, further comprising the step of determining parameters used to calculate new settings for the controller by -
(v) generating a first control output, (vi) generating a second control output when the process variable reaches the first threshold, (vii) generating the first control output when the process variable reaches the second threshold, and (viii) repeating steps (vi) and (vii), thereby causing the process variable to exhibit a substantially sinusoidal function about an axis.
12. The method as set forth in claim 11 , further comprising the step of calculating the new settings according to the parameters which are derived from the sinusoidal function.
13. The method as set forth in claim 11 , further comprising the step of calculating the new settings according to the parameters which are derived from the sinusoidal function when the axis is substantially equal to a set-point.
14. The method as set forth in claim 9, wherein the controller is operatively coupled to a vacuum pump of the milking system.
15. The method as set forth in claim 11 , wherein the controller is operatively coupled to a vacuum pump of the milking system.
16. The method as set forth in claim 9, wherein the controller is a PID controller.
17. The method as set forth in claim 11 , wherein the new settings are selected from the group consisting of: a proportional coefficient, an integral coefficient, and a derivative coefficient.
18. The method as set forth in claim 11 , wherein the controller gradually shifts to the new settings in a linear fashion.
19. The method as set forth in claim 11 , wherein the controller gradually shifts to the new settings in an iterative non-linear fashion by calculating and implementing average settings based upon the new settings and a group of old settings.
20. The method as set forth in claim 11 , wherein the control outputs and the process variable relate to controlling a vacuum level in the milking system.
21. The method as set forth in claim 11 , wherein the control outputs relate to a pump speed and the process variable relates to a vacuum reading.
22. A method of tuning a controller for use in operating a vacuum pump of a milking system, the method comprising the steps of:
(a) performing initial determinations by -
(i) determining a nominal output for operating a vacuum pump,
(ii) determining an output offset, and (iii) calculating a first control output for operating the vacuum pump and a second control output for operating the vacuum pump according to the nominal output and the output offset;
(b) determining parameters used to calculate new settings for the controller by -
(i) generating the first control output, (ii) generating the second control output when a process variable of the milking system reaches a first threshold, (iii) generating the first control output when the process variable reaches a second threshold, and (iv) repeating steps (b)(ii) and (b)(iii), thereby causing the process variable to oscillate about an axis; and
(c) compensating for a load change in the milking system by - (i) calculating an axis offset according to the axis and a set-point, and (ii) adjusting the control outputs according to the axis offset.
23. The method as set forth in claim 22, wherein the nominal output is operable to cause the process variable to substantially track the set-point under substantially constant load conditions.
24. The method as set forth in claim 22, further including the step of calculating the new settings according to the parameters which are derived from the oscillation of the process variable when the axis is substantially equal to the set-point.
25. The method as set forth in claim 22, wherein the first threshold is substantially the same as the second threshold.
26. The method as set forth in claim 22, wherein the first threshold and the second threshold are different according to a maximum noise level.
27. The method as set forth in claim 22, wherein the controller is operatively coupled to a drive for the vacuum pump.
28. The method as set forth in claim 22, wherein the controller is a PID controller.
29. The method as set forth in claim 22, wherein the new settings are selected from the group consisting of: a proportional coefficient, an integral coefficient, and a derivative coefficient.
30. The method as set forth in claim 22, wherein the controller gradually shifts to the new settings in a linear fashion.
31. The method as set forth in claim 22, further including the step of identifying a plurality of old settings used prior to the calculation of the new settings, and wherein the controller gradually shifts to the new settings in an iterative non-linear fashion by calculating and implementing average settings based upon the new settings and the old settings.
32. The method as set forth in claim 22, wherein the control outputs relate to a pump speed and the process variable relates to a vacuum reading.
33. A method of tuning a controller for controlling the operation of a vacuum pump of a milking system, the method comprising the steps of:
(a) performing initial determinations by - (i) determining a nominal output,
(ii) determining an output offset, and (iii) calculating a first control output and a second control output according to the nominal output and the output offset; (b) compensating for system noise by -
(i) holding the nominal output, (ii) determining an average of a process variable of the milking system, (iii) identifying a maximum difference between the average and the process variable, and
(iv) calculating a first threshold and a second threshold according to the maximum difference;
(c) determining parameters used to calculate new settings for the controller by - (i) generating the first control output,
(ii) generating the second control output when the process variable reaches the first threshold, (iii) generating the first control output when the process variable reaches the second threshold, and (iv) repeating steps (c)(ii) and (c)(iii), thereby causing the process variable to exhibit a substantially sinusoidal function about an axis; and
(d) calculating the new settings according to the parameters which are derived from the sinusoidal function so that the controller may use the new settings.
34. The method as set forth in claim 33, wherein the nominal output is operable to cause the process variable to substantially track a set-point under substantially constant load conditions within the milking system.
35. The method as set forth in claim 33, further comprising the step of calculating an axis offset according to the axis and a set-point.
36. The method as setforth in claim 35, wherein the control outputs are adjusted in order to force the axis to be substantially equal to the set-point and the new settings are calculated according to the sinusoidal function when the axis is substantially equal to the set-point.
37. The method as set forth in claim 33, wherein the controller is operatively coupled to a drive of the vacuum pump.
38. The method as set forth in claim 33, wherein the controller is a PID controller.
39. The method as set forth in claim 33, wherein the new settings are selected from the group consisting of: a proportional coefficient, an integral coefficient, and a derivative coefficient.
40. The method as set forth in claim 33, wherein the controller gradually shifts to the new settings in a linear fashion.
41. The method as set forth in claim 33, further including the step of identifying a plurality of old settings used prior to the calculation of the new settings, and wherein the controller gradually shifts to the new settings in an iterative non-linear fashion by calculating and implementing average settings based upon the new settings and the old settings.
42. The method as setforth in claim 33, wherein the control outputs relate to an operating speed of the vacuum pump and the process variable relates to a vacuum reading.
43. A method of tuning a controller used to control a variable speed vacuum pump for a milking system, the method comprising the steps of:
(a) performing initial determinations by - (i) determining a nominal speed at which the pump is expected to maintain a desired vacuum level with a substantially constant load, (ii) determining a speed offset which is unlikely to cause a significant disturbance in the system, (iii) calculating a first speed by summing the nominal speed and the speed offset, and (iv) calculating a second speed by subtracting the speed offset from the nominal speed and;
(b) identifying and compensating for system noise by - (i) sending a nominal speed signal which is representative of the nominal speed to the pump thereby causing the pump to run at the nominal speed, (ii) monitoring a vacuum reading, (iii) determining an average of the vacuum reading,
(iv) identifying a maximum difference between the average and the vacuum reading, (v) calculating a first threshold by summing the desired vacuum level and the maximum difference, and (vi) calculating a second threshold by subtracting the maximum difference from the desired vacuum level; (c) determining parameters used to calculate new controller settings by -
(i) sending a first speed signal which is representative of the first speed to the pump thereby causing the pump to run at the first speed,
(ii) sending a second speed signal which is representative of the second speed to the pump thereby causing the pump to run at the second speed when the vacuum reading reaches the first threshold,
(iii) sending the first speed signal which is representative of the first speed to the pump thereby causing the pump to run at the first speed when the vacuum reading reaches the second threshold, and
(iv) repeating steps (c)(ii) and (c)(iii), thereby causing the vacuum reading to exhibit a substantially sinusoidal function about an axis;
(d) compensating for a load change by - (i) calculating an axis offset according to the axis and the desired vacuum level, and (ii) adjusting the control outputs according to the axis offset in order to make the axis substantially equal to the desired vacuum level; and (e) calculating and implementing the new settings by -
(i) calculating the new settings from the parameters which are derived from the sinusoidal function, and (ii) gradually shifting to the new settings.
44. An automated milking system for milking dairy animals, the system comprising: a milking apparatus for receiving and transporting milk from an animal during milking; a pump for drawing the milk into the apparatus; a variable speed drive for allowing the pump to run at more than one speed; and a controller for controlling the drive, wherein the controller is operable to automatically tune itself by performing the method as set forth in claim 43.
45. A method of tuning a controller (10) for use with a milking system (12) which comprises at least one milking apparatus (14) for receiving and transporting milk from dairy animals, a vacuum pump (16) for producing a vacuum level in the apparatus (14) in order to draw the milk into the apparatus (14), a drive (18) for driving the vacuum pump (16), and a sensor (30) for providing a reading of a process variable corresponding to a level of the process variable sensed by the sensor (30) in at least a portion of the milking system (12), the controller (10) being used to control a process associated with the milking system (12), wherein the method generates at least one new setting for the controller (10) and comprises the steps of: determining a nominal output which is expected to cause the process variable to substantially track a set-point under substantially constant load conditions for the system (12), determining an output offset, calculating a first control output and a second control output using the nominal output and the output offset, generating the first control output, generating the second control output when the process variable reaches a first threshold, generating the first control output when the process variable reaches a second threshold, thereby causing the process variable to oscillate about an axis, calculating the new setting for the controller (10) using at least one parameter which is derived from the oscillation of the process variable, and implementing the new setting for the controller (10) in the controller (10) when controlling the process.
46. The method as set forth in claim 45, characterized in that the process variable is selected from a group consisting of: a vacuum reading, a temperature reading, a pressure reading, a torque reading, and a position reading, the set-point is selected from a group consisting of: a desired vacuum level, a desired temperature, a desired pressure, a desired torque and a desired position, and the control outputs are selected from a group consisting of: a speed signal, a position signal, a location signal, and a power signal.
47. The method as set forth in any one of claims 45 and 46 characterized by driving the vacuum pump (16) at a variable speed using a variable speed drive (18), the controller (10) being used to control the variable speed drive (18) for controlling a vacuum level in the milking system, and the process variable being constituted by a vacuum reading, calculating the new setting for the controller (10) using the parameter which is derived from the oscillation of the vacuum reading.
48. The method as set forth in any one of claims 45-47 characterized by adjusting the first control output and the second control output to make the axis substantially equal to the set-point.
49. The method as set forth in any one of claims 45-48, characterized by calculating the first threshold and the second threshold using a maximum noise level.
50. The method as set forth in claim 49, characterized by calculating the maximum noise level by generating the nominal output for a time span and observing fluctuations in the process variable.
51. The method as set forth in any one of claims 49 and
50, characterized by deriving the maximum noise level from a maximum difference between the process variable and an average of the process variable.
52. The method as set forth in any one of claims 45-51 , characterized in that the controller (10) is a PID controller.
53. The method as set forth in any one of claims 45-52, characterized in that the new setting for the controller (10) is selected as one or more from a group of settings consisting of: a proportional coefficient, an integral coefficient, and a derivative coefficient.
54. The method as set forth in any one of claims 45-53, characterized by implementing the new setting for the controller (10) in the controller (10) by gradually shifting to the new settings in a linear fashion.
55. The method as set forth in any one of claims 45-53, characterized by implementing the new setting for the controller (10) by a plurality of old settings being averaged with the new setting to create an average setting.
56. The method as set forth in any one of claims 45-55, characterized by calculating the first output as the nominal output plus the output offset and the second output as the nominal output minus the output offset.
57. The method as set forth in any one of claims 45-56, characterized by calculating the new setting for the controller (10) using two parameters, which are derived from the oscillation of the process variable.
58. An automated milking system (12) for milking dairy animals, the system comprising: a milking apparatus (14) for receiving and transporting milk from an animal during milking: a vacuum pump (16) for drawing milk into the apparatus; a variable speed drive (18) operatively connected to the pump (16) for operating the pump (16) at more than one speed; and a controller (10) for controlling the drive (18), wherein the controller is operable to automatically tune itself by performing the method as set forth in any one of claims 45-57.
PCT/US2003/006120 2002-08-20 2003-02-25 Auto-tuning pid control for vacuum system WO2004019144A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2003213620A AU2003213620A1 (en) 2002-08-20 2003-02-25 Auto-tuning pid control for vacuum system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US40484802P 2002-08-20 2002-08-20
US60/404,848 2002-08-20

Publications (2)

Publication Number Publication Date
WO2004019144A2 true WO2004019144A2 (en) 2004-03-04
WO2004019144A3 WO2004019144A3 (en) 2004-05-21

Family

ID=31946771

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2003/006120 WO2004019144A2 (en) 2002-08-20 2003-02-25 Auto-tuning pid control for vacuum system

Country Status (2)

Country Link
AU (1) AU2003213620A1 (en)
WO (1) WO2004019144A2 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4441151A (en) * 1977-11-04 1984-04-03 Toyo Systems, Ltd. Apparatus for tuning PID controllers in process control systems
US4549123A (en) * 1981-08-24 1985-10-22 Naf Controls Ab Method and an apparatus in tuning a PID-regulator
US4881160A (en) * 1987-03-09 1989-11-14 Yokogawa Electric Corporation Self-tuning controller
US5453925A (en) * 1993-05-28 1995-09-26 Fisher Controls International, Inc. System and method for automatically tuning a process controller
US5587899A (en) * 1994-06-10 1996-12-24 Fisher-Rosemount Systems, Inc. Method and apparatus for determining the ultimate gain and ultimate period of a controlled process
US5609136A (en) * 1994-06-28 1997-03-11 Cummins Engine Company, Inc. Model predictive control for HPI closed-loop fuel pressure control system
US5845599A (en) * 1997-02-10 1998-12-08 Smartenergy Services, Inc. Vacuum controller and method of controlling vacuum in a dairy milking systems
US6164242A (en) * 1995-06-26 2000-12-26 Alfa Laval Agri Ab Method of regulating the vacuum level in a milking apparatus, and a milking apparatus

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4441151A (en) * 1977-11-04 1984-04-03 Toyo Systems, Ltd. Apparatus for tuning PID controllers in process control systems
US4549123A (en) * 1981-08-24 1985-10-22 Naf Controls Ab Method and an apparatus in tuning a PID-regulator
US4881160A (en) * 1987-03-09 1989-11-14 Yokogawa Electric Corporation Self-tuning controller
US5453925A (en) * 1993-05-28 1995-09-26 Fisher Controls International, Inc. System and method for automatically tuning a process controller
US5587899A (en) * 1994-06-10 1996-12-24 Fisher-Rosemount Systems, Inc. Method and apparatus for determining the ultimate gain and ultimate period of a controlled process
US5609136A (en) * 1994-06-28 1997-03-11 Cummins Engine Company, Inc. Model predictive control for HPI closed-loop fuel pressure control system
US6164242A (en) * 1995-06-26 2000-12-26 Alfa Laval Agri Ab Method of regulating the vacuum level in a milking apparatus, and a milking apparatus
US5845599A (en) * 1997-02-10 1998-12-08 Smartenergy Services, Inc. Vacuum controller and method of controlling vacuum in a dairy milking systems

Also Published As

Publication number Publication date
WO2004019144A3 (en) 2004-05-21
AU2003213620A1 (en) 2004-03-11
AU2003213620A8 (en) 2004-03-11

Similar Documents

Publication Publication Date Title
US5960736A (en) Vacuum level control system using variable frequency drive
US7841296B2 (en) Controller for monitoring and controlling pulsators in a milking system
US7174848B2 (en) Controller for monitoring and controlling pulsators in a milking system
JP3660688B2 (en) Method for adjusting vacuum level in milking machine and milking machine
US8468970B2 (en) Method and arrangement for controlling the milking by a milking machine
EP1978800B1 (en) Milking system and method for vacuum regulation
EP0954962B2 (en) A method of and an implement for automatically milking animals
WO2004019144A2 (en) Auto-tuning pid control for vacuum system
CN115183391A (en) Air conditioner, air conditioner control method, and computer-readable storage medium
CN107144788B (en) Counter potential coefficient detection method and device
US6537033B2 (en) Open loop control apparatus for vacuum controlled systems
US20050274326A1 (en) Vacuum system communication
WO2010074556A1 (en) Method of and device for milking a dairy animal
EP1827083B1 (en) Method, computer program product and arrangement for controlling the milking by a milking machine
EP4167721A2 (en) System and computer-implemented method for monitoring operating pressure in a milking installation, computer program and non-volatile data carrier
AU664980B2 (en) An improved self-tuning controller
CN116892535B (en) Condensing fan control method and device
EP2378859B1 (en) Method and device for milking a dairy animal
CN111787789B (en) Vacuum pump arrangement for a milking plant
JPH07168627A (en) Valve control unit
US20220008282A1 (en) Shock wave apparatus and method for treating a human or animal body
CN113959051B (en) Control method for air conditioner and air conditioner
JP3744760B2 (en) Constant control method for terminal pressure of water supply system for water supply
WO2023177344A1 (en) Milking system
EP0704784A1 (en) A method and a system for producing and supplying compressed air

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SC SD SE SG SK SL TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase in:

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP