Automated control of dipper swing for a shovel

Abstract
Systems and methods for compensating dipper swing control. One method includes, with at least one processor, determining a direction of compensation opposite a current swing direction of the dipper and applying the maximum available swing torque in the direction of compensation when an acceleration of the dipper is greater than a predetermined acceleration value. The method can also include determining a current state of the shovel and performing the above steps when the current state of the shovel is a swing-to-truck state or a return-to-tuck state. When the current state of the shovel is a dig-state, the method can include limiting the maximum available swing torque and allowing, with the at least one processor, swing torque to ramp up to the maximum available swing torque over a predetermined period of time when dipper is retracted to a predetermined crowd position.
Description
BACKGROUND

This invention relates to monitoring performance of an industrial machine, such as an electric rope or power shovel, and automatically adjusting the performance.


SUMMARY

Industrial machines, such as electric rope or power shovels, draglines, etc., are used to execute digging operations to remove material from, for example, a bank of a mine. An operator controls a rope shovel during a dig operation to load a dipper with materials. The operator deposits the materials in the dipper into a hopper or a truck. After unloading the materials, the dig cycle continues and the operator swings the dipper back to the bank to perform additional digging. Some operators improperly swing the dipper into the bank at a high rate of speed, which, although slows and stops the dipper for a dig operation, can damage the dipper and other components of the shovel, such as the racks, handles, saddle blocks, shipper shaft, and boom. The dipper can also impact other objects during a dig cycle (e.g., the hopper or truck, the bank, other pieces of machinery located around the shovel, etc.), which can damage the dipper or other components.


Accordingly, embodiments of the invention automatically control the swing of the dipper to reduce impact and stresses caused by impacts of the dipper with objects located around the shovel, such as the bank, the ground, and the hopper. For example, a controller monitors operation of the dipper after the dipper has been unloaded and is returned to the bank for a subsequent dig operation. The controller monitors various aspects of the dipper swing, such as speed, acceleration, and reference indicated by the operator controls (e.g., direction and force applied to operator controls, such as a joystick). The controller uses the monitored information to determine if the dipper is swinging too fast where the dipper will impact the bank at an unreasonable speed. In this situation, the controller uses motor torque to slow the swing of the dipper when it detects high impact with the bank. In particular, the controller applies motor torque in the opposite direction of the movement of the dipper, which counteracts the speed of the dipper and decelerates the swing speed.


In particular, one embodiment of the invention provides a method of compensating swing of a dipper of a shovel. The method includes determining, by at least one processor, a direction of compensation opposite a current swing direction of the dipper, and applying, by the at least one processor, the maximum available swing torque in the direction of compensation opposite the current swing direction of the dipper when an acceleration of the dipper is greater than a predetermined acceleration value.


Another embodiment of the invention provides a system for compensating swing of a dipper of a shovel. The system includes a controller including at least one processor. The at least one processor is configured to limit the maximum available swing torque, determine a crowd position of the dipper, and restrict the swing torque ramp up to the limited maximum available swing torque over a predetermined period of time after the dipper reaches a predetermined crowd position.


Other aspects of the invention will become apparent by consideration of the detailed description and accompanying drawings.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 illustrates an industrial machine according to an embodiment of the invention.



FIGS. 2A and 2B illustrate a swing of the machine of FIG. 1 between a dig location and a dumping location.



FIG. 3 illustrates a controller for an industrial machine according to an embodiment of the invention.



FIGS. 4-9 are flow charts illustrating methods for automatically controlling a swing of a dipper of the machine of FIG. 1



FIGS. 10a-10c and 11a-11c are flow charts illustrating subroutines activated within at least some of the methods of FIGS. 4-9.



FIGS. 12-13 are graphical representations of the resulting torque-speed curves for the subroutines of FIGS. 10a-10c and 11a-11c.





DETAILED DESCRIPTION

Before any embodiments of the invention are explained in detail, it is to be understood that the invention is not limited in its application to the details of construction and the arrangement of components set forth in the following description or illustrated in the following drawings. The invention is capable of other embodiments and of being practiced or of being carried out in various ways. Also, it is to be understood that the phraseology and terminology used herein is for the purpose of description and should not be regarded as limited. The use of “including,” “comprising” or “having” and variations thereof herein is meant to encompass the items listed thereafter and equivalents thereof as well as additional items. The terms “mounted,” “connected” and “coupled” are used broadly and encompass both direct and indirect mounting, connecting and coupling. Further, “connected” and “coupled” are not restricted to physical or mechanical connections or couplings, and can include electrical connections or couplings, whether direct or indirect. Also, electronic communications and notifications may be performed using any known means including direct connections, wireless connections, etc.


It should also be noted that a plurality of hardware and software based devices, as well as a plurality of different structural components may be used to implement the invention. In addition, it should be understood that embodiments of the invention may include hardware, software, and electronic components or modules that, for purposes of discussion, may be illustrated and described as if the majority of the components were implemented solely in hardware. However, one of ordinary skill in the art, and based on a reading of this detailed description, would recognize that, in at least one embodiment, the electronic based aspects of the invention may be implemented in software (e.g., stored on non-transitory computer-readable medium) executable by one or more processors. As such, it should be noted that a plurality of hardware and software based devices, as well as a plurality of different structural components may be utilized to implement the invention. Furthermore, and as described in subsequent paragraphs, the specific mechanical configurations illustrated in the drawings are intended to exemplify embodiments of the invention and that other alternative mechanical configurations are possible. For example, “controllers” described in the specification can include standard processing components, such as one or more processors, one or more computer-readable medium modules, one or more input/output interfaces, and various connections (e.g., a system bus) connecting the components.



FIG. 1 depicts an exemplary rope shovel 100. The rope shovel 100 includes tracks 105 for propelling the rope shovel 100 forward and backward, and for turning the rope shovel 100 (i.e., by varying the speed and/or direction of the left and right tracks relative to each other). The tracks 105 support a base 110 including a cab 115. The base 110 is able to swing or swivel about a swing axis 125, for instance, to move from a digging location to a dumping location and back to a digging location. In some embodiments, movement of the tracks 105 is not necessary for the swing motion. The rope shovel further includes a dipper shaft or boom 130 supporting a pivotable dipper handle 135 and a dipper 140. The dipper 140 includes a door 145 for dumping contents contained within the dipper 140 into a dump location.


The shovel 100 also includes taut suspension cables 150 coupled between the base 110 and boom 130 for supporting the boom 130; a hoist cable 155 attached to a winch (not shown) within the base 110 for winding the cable 155 to raise and lower the dipper 140; and a dipper door cable 160 attached to another winch (not shown) for opening the door 145 of the dipper 140. In some instances, the shovel 100 is a P&H® 4100 series shovel produced by Joy Global, although the shovel 100 can be another type or model of mining excavator.


When the tracks 105 of the mining shovel 100 are static, the dipper 140 is operable to move based on three control actions, hoist, crowd, and swing. Hoist control raises and lowers the dipper 140 by winding and unwinding the hoist cable 155. Crowd control extends and retracts the position of the handle 135 and dipper 140. In one embodiment, the handle 135 and dipper 140 are crowded by using a rack and pinion system. In another embodiment, the handle 135 and dipper 140 are crowded using a hydraulic drive system. The swing control swivels the dipper 140 relative to the swing axis 125. During operation, an operator controls the dipper 140 to dig earthen material from a dig location, swing the dipper 140 to a dump location, release the door 145 to dump the earthen material, and tuck the dipper 140, which causes the door 145 to close, while swinging the dipper 140 to the same or another dig location.



FIG. 1 also depicts a mobile mining crusher 175. During operation, the rope shovel 100 dumps materials from the dipper 140 into a hopper 170 of the mining crusher 175 by opening the door 145. Although the rope shovel 100 is described as being used with the mobile mining crusher 175, the rope shovel 100 is also able to dump materials from the dipper 140 into other material collectors, such as a dump truck (not shown) or directly onto the ground.



FIG. 2A depicts the rope shovel 100 positioned in a dumping position. In the dumping position, the boom 130 is positioned over the hopper 170 and the door 145 is opened to dump the materials contained within the dipper 140 into the hopper 170.



FIG. 2B depicts the rope shovel 100 positioned in a digging position. In the digging position, the boom 130 digs with the dipper 140 into a bank 215 at a dig location 220. After digging, the rope shovel 100 is returned to the dumping position and the process is repeated as needed.


As described above in the summary section, when the shovel 100 swings the dipper 140 back to the digging position, the bank 215 should not be used to decelerate and stop the dipper 140. Therefore, the shovel 100 includes a controller that may compensate control of the dipper 140 to ensure the dipper 140 swings at a proper speed and is decelerated as it nears the bank 215 or other objects. The controller can include combinations of hardware and software operable to, among other things, monitor operation of the shovel 100 and compensate control the dipper 140 if applicable.


A controller 300 according to one embodiment of the invention is illustrated in FIG. 3. As illustrated in FIG. 3, the controller 300 includes, among other things, a processing unit 350 (e.g., a microprocessor, a microcontroller, or another suitable programmable device), non-transitory computer-readable media 355, and an input/output interface 365. The processing unit 350, the media 355, and the input/output interface 365 are connected by one or more control and/or data buses. It should be understood that in other constructions, the controller 300 includes additional, fewer, or different components.


The computer-readable media 355 stores program instructions and data, and the controller 300 is configured to retrieve from the media 355 and execute, among other things, the instructions to perform the control processes and methods described herein. The input/output interface 365 exchanges data between the controller 300 and external systems, networks, and/or devices and receives data from external systems, networks, and/or devices. The input/output interface 365 can store data received from external sources to the media 355 and/or provides the data to the processing unit 350.


As illustrated in FIG. 3, the controller 300 receives input from an operator interface 370. The operator interface 370 includes a crowd control, a swing control, a hoist control, and a door control. The crowd control, swing control, hoist control, and door control include, for instance, operator-controlled input devices, such as joysticks, levers, foot pedals, and other actuators. The operator interface 370 receives operator input via the input devices and outputs digital motion commands to the controller 300. The motion commands include, for example, hoist up, hoist down, crowd extend, crowd retract, swing clockwise, swing counterclockwise, dipper door release, left track forward, left track reverse, right track forward, and right track reverse. Upon receiving a motion command, the controller 300 generally controls the one or more motors or mechanisms (e.g., a crowd motor, swing motor, hoist motor, and/or a shovel door latch) as commanded by the operator. As will be explained in greater detail, however, the controller 300 is configured to compensate or modify the operator motion commands and, in some embodiments, generate motion commands independent of the operator commands. In some embodiments, the controller 300 also provides feedback to the operator through the operator interface 370. For example, if the controller 300 is modifying operator commands to limit operation of the dipper 140, the controller 300 can interact with the user interface module 370 to notify the operator of the automated control (e.g., using visual, audible, and/or haptic feedback).


The controller 300 is also in communication with a plurality of sensors 380 to monitor the location, movement, and status of the dipper 140. The plurality of sensors 380 can include one or more crowd sensors, swing sensors, hoist sensors, and/or shovel sensors. The crowd sensors indicate a level of extension or retraction of the dipper 140. The swing sensors indicate a swing angle of the handle 135. The hoist sensors indicate a height of the dipper 140 based on the hoist cable 155 position. The shovel sensors 380 indicate whether the dipper door 145 is open (for dumping) or closed. The shovel sensors 380 may also include one or more weight sensors, acceleration sensors, and/or inclination sensors to provide additional information to the controller 300 about the load within the dipper 140. In some embodiments, one or more of the crowd sensors, swing sensors, and hoist sensors include resolvers or tachometers that indicate an absolute position or relative movement of the motors used to move the dipper 140 (e.g., a crowd motor, a swing motor, and/or a hoist motor). For instance, as the hoist motor rotates to wind the hoist cable 155 to raise the dipper 140, the hoist sensors output a digital signal indicating an amount of rotation of the hoist and a direction of movement to indicate relative movement of the dipper 140. The controller 300 translates these outputs into a position (e.g., height), speed, and/or acceleration of the dipper 140.


As noted above, the controller 300 is configured to retrieve instructions from the media 355 and execute the instruction to perform various control methods relating to the shovel 100. For example, FIGS. 4-9 illustrate methods performed by the controller 300 based on instructions executed by the processor 350 to monitor dipper swing performance and adjust or compensate dipper performance based on real-world feedback. Accordingly, the proposed methods help mitigate stresses applied to the shovel 100 from swing impacts in various shovel cycle states. For example, the controller 300 can compensate dipper control while the dipper 140 is digging in the bank 215, swinging to the mobile crusher 175, or freely-swinging.


The methods illustrated in FIGS. 4-9 represent multiple variations or options for implementing such an automated control method for dipper swing. It should be understood that additional options are also possible. In particular, as illustrated in FIGS. 4-9, some of the proposed methods incorporate subroutines that also have multiple options or variations for implementing. For example, various acceleration monitoring implementations can be combined with different shovel states, such as dig, swing-to-dump (e.g., swing-to-truck), etc. In addition, rather than explain every permutation of a control method and a subroutine, the subroutines are referenced in the methods illustrated in FIGS. 4-9 but are described separately in FIGS. 10a-10c and 11a-11c. In particular, the points of intersection of the subroutines with the control methods illustrated in FIGS. 4-9 are marked using a dashed line (e.g., custom character). In addition, some of the differences from one iteration to the next are marked using a dot-and-dashed line (e.g., custom character).



FIG. 4 illustrates an Option #1 for compensating dipper swing control. As illustrated in FIG. 4, when the shovel 100 is in the dig mode or state (at 500), the controller 300 can optionally limit the maximum available swing torque of the dipper 140 to a predetermined percentage of the maximum available torque (e.g., approximately 30% to approximately 80% of the maximum available swing torque) (at 502). The controller 300 also monitors the crowd resolver counts to determine a maximum crowd position (at 504). After determining a maximum crowd position, the controller 300 determines when the operator has retracted the dipper 140 a predetermined percentage (e.g., approximately 5% to approximately 40%) from the maximum crowd position (at 506). When this occurs, the controller 300 allows the swing torque to ramp up to the maximum available torque over a predetermined time period T (at 508). In some embodiments, the predetermined time period is between approximately 100 milliseconds and 2 seconds (e.g., approximately 1.0 second).


As shown in FIG. 4, when the shovel 100 is in a swing-to-truck state (at 510), the controller 300 optionally determines if the swing speed of the dipper 140 is greater than a predetermined percentage of the maximum speed (e.g., approximately 5% to approximately 40% of the maximum speed) (at 512). In some embodiments, until the swing speed reaches this threshold, the controller 300 does not compensate the control of the dipper 140. The controller 300 also determines a swing direction of the dipper 140 (at 514). The controller 300 uses the determined swing direction to identify a direction of compensation (i.e., a direction opposite the current swing direction to counteract and slow a current swing speed).


The controller 300 then calculates actual swing acceleration (at 516). If the value of the actual acceleration (e.g., the value of a negative acceleration) is greater than a predetermined value α (e.g., indicating that the dipper 140 struck an object) (at 518), the controller 300 compensates swing control of the dipper 140. In particular, the controller 300 can increase the maximum available swing torque (e.g., up to approximately 200%) and apply the increased available torque (e.g., 100% of the increased torque) in the compensation direction (at 520). It should be understood that in some embodiments, the controller 300 applies the maximum available torque limit without initially increasing the limit. After the swing speed drops to or below a predetermined value Y (e.g., approximately 0 rpm to approximately 300 rpm) (at 522), the controller 300 stops swing compensation and the dipper 140 returns to its default or normal control (e.g., operator control of the dipper 140 is not compensated by the controller 300).


In the return-to-tuck state of Option #1 (at 524), the controller 300 performs a similar function as the swing-to-truck state of Option #1. However, the predetermined value α that the controller 300 compares the current swing acceleration (at 518) against is adjusted to account for the dipper 140 being empty rather than full as during the swing-to-truck state.



FIGS. 5a and 5b illustrates an Option #2 for compensating dipper swing control. As illustrated in FIG. 5a, when the shovel 100 is in the dig state (at 530), the controller 300 operates similar to Option #1 described above for the dig state. In particular, the controller 300 operates similar to Option #1 through allowing the swing torque to ramp up to the maximum available torque over a predetermined time period T (at 508) after the dipper 140 has been retracted to a predetermined crowd position (at 506). Once this occurs, in Option #2, the controller 300 calculates actual swing acceleration (e.g., a negative acceleration) of the dipper 140 (at 532). If the value of the actual acceleration is greater than a predetermined value α (at 534) (e.g., indicating that the dipper 140 struck an object), the controller 300 starts swing compensation. In particular, the controller 300 can increase the available maximum swing torque (e.g., up to approximately 200%) and apply the increased torque (e.g., 100% of the torque) in the compensation direction (at 536). It should be understood that in some embodiments, the controller 300 applies the maximum available torque limit without initially increasing the limit. When the swing speed drops to or below a predetermined speed Y (e.g., approximately 0 rpm to approximately 300 rpm) (at 538), swing control returns to standard swing control (e.g., operator control as compared to compensated control through the controller 300).


As shown in FIG. 5b, when the shovel 100 is in the swing-to-truck state (at 540) or the return-to-tuck state (at 542), the controller 300 operates as described above for Option #1 through the calculation of current acceleration (at 516) and comparing the calculated acceleration to a predetermined value α (at 518). At this point, the controller 300 activates Subroutine #1 (at 544), which results in three possible responses. Subroutine #1 is described below with respect to FIGS. 10a-10c.



FIG. 6 illustrates an Option #3 for compensating dipper swing control. As illustrated in FIG. 6, when the shovel 100 is in the dig state (at 550), the controller 300 operates as described above with respect to the dig state in Option #1. Also, it should be understood that in some embodiments, the controller 300 replaces ramping up swing torque (at 508) with monitoring acceleration as described below for the swing-to-truck state of Option #3 (see section 551 in FIG. 6).


As illustrated in FIG. 6, in the swing-to-truck state (at 552), the controller 300 optionally determines if the swing speed of the dipper 140 is greater than a predetermined percentage (e.g., approximately 5% to approximately 40%) of the maximum speed (at 554). In some embodiments, if the speed is less than this threshold, the controller 300 does not take any correction action. The controller 300 also determines a swing direction to determine a compensation direction opposite the swing direction (at 556). The controller 300 then calculates a predicted swing acceleration based on a torque reference (i.e., how far the operator moves the input device, such as a joystick controlling the dipper swing) and an assumption that the dipper 140 is full (at 558). In some embodiments, there are two options for calculating this value. In one option, the controller 300 assumes the dipper 140 is in a standard position with vertical ropes. In another option, the controller 300 uses the dipper position (e.g., radius, height, etc.) and resulting inertia to calculate the predicted acceleration. Generally, the greater the torque reference, the greater the predicted acceleration.


After calculating the predicted acceleration (at 558), the controller 300 calculates the actual swing acceleration of the dipper 140 (e.g., a negative acceleration) (at 560). If the value of the actual acceleration is more than a predetermined percentage less than the predicted acceleration (e.g., more than approximately 10% to approximately 30% less than the predicted acceleration, which indicates that the dipper 140 struck an object) (at 562), the controller 300 starts swing control compensation. In particular, to compare the calculated predicted acceleration and the actual acceleration, the controller 300 activates Subroutine #1 (at 544), which, as noted above, results in one of three possible responses (see FIGS. 10a-10c).


As shown in FIG. 6, in the return-to-tuck state (at 564), the controller 300 operates as described above for the swing-to-truck state of Option #3. However, the controller calculates the predicted acceleration assuming that the dipper 140 is empty rather than full (at 558). As noted above, in some embodiments, there are two options for calculating this acceleration value. In one option, the controller 300 assumes the dipper 140 is in a standard position with vertical ropes. In another option, the controller 300 uses the dipper position (e.g., radius, height, etc.) and resulting inertia to calculate the predicted acceleration.



FIG. 7 illustrates an Option #4 for compensating dipper swing control. As illustrated in FIG. 7, when the shovel 100 is in the dig state (at 570), the controller 300 operates similar to Option #1. Also, it should be understood that, in some embodiments, the controller 300 replaces ramping up swing torque (at 508) with monitoring acceleration as described below for the other states of Option #4 (see section 571 in FIG. 7).


As illustrated in FIG. 7, when the shovel 100 is in any state over than the dig state (at 570), the controller 300 determines if the current swing speed is greater than a predetermined percentage of the maximum swing speed (e.g., approximately 5% to approximately 40% of the maximum swing speed) (at 572). If the swing speed is not greater than this threshold, the controller 300 activates Subroutine #2 (at 574), which results in one of three possible responses. See FIGS. 11a-11c for details regarding Subroutine #2.


If the swing speed is greater than the threshold (at 572), the controller determines a current swing direction to determine a compensation direction (at 576). The controller 300 then calculates a predicted swing acceleration based on a swing torque reference, a current dipper payload, and, optionally, a dipper position (at 578). In some embodiments, there are two options for calculating the predicted acceleration. In one option, the controller 300 assumes the dipper 140 is in a standard position with vertical ropes. In another option, the controller 300 calculates the predicted acceleration based dipper position (e.g., radius, height, etc.) and resulting inertia of the dipper 140.


After calculating the predicted acceleration (at 578), the controller 300 calculates an actual swing acceleration (e.g., a negative acceleration) (at 580) and determines if the value of the actual acceleration is more than a predetermined percentage less than the predicted acceleration (e.g., more than approximately 10% to approximately 30% less than the predicted acceleration, which indicates that the dipper 140 struck an object) (at 582). If so, the controller 300 activates Subroutine #1 (at 544). See FIGS. 10a-10c for details regarding Subroutine #1.



FIG. 8 illustrates an Option #5 for compensating dipper swing control. As illustrated in FIG. 8, regardless of the current state of the shovel 100, the controller 300 determines if the current swing speed of the dipper 140 is greater than a predetermined percentage of the maximum swing speed (e.g., approximately 5% to approximately 40%) (at 572). If the current speed is not greater than this threshold, the controller 300 activates Subroutine #2 (at 574), which results in one of three possible responses (see FIGS. 11a-11c). Alternatively, when the current speed is greater than the threshold, the controller 300 determines a current swing direction to determine a compensation direction (at 576). The controller 300 also calculates a predicted swing acceleration based on a torque reference, a current dipper payload, and, optionally, a dipper position (at 578). In some embodiments, the controller 300 can use one of multiple options for calculating the predicted acceleration. In one option, the controller assumes that the dipper 140 is in a standard position with vertical ropes. In another option, the controller 300 uses dipper position (e.g., radius, height, etc.) and resulting inertia to calculate the predicted acceleration. After calculating the predicted acceleration, the controller 300 calculates an actual acceleration (e.g., a negative acceleration) (at 580) and determines if the value of the actual acceleration is more than a predetermined percentage less than the predicted acceleration (e.g., more than approximately 10% to approximately 30% less than the predicted acceleration, which indicates that the dipper 140 struck an object) (at 582) (see Subroutine #1).



FIG. 9 illustrates an Option #6 for compensating dipper swing control. As illustrated in FIG. 9, Option #6 is similar to Option #5 except that when the swing speed is greater than the predetermined percentage of the maximum swing speed (at 572), the torque level is ramped up (at 590) rather than immediately stepped to the maximum (at 592, FIG. 8).



FIGS. 10a-10c illustrate Subroutine #1. Subroutine #1 provides three possible routines associated with comparing predicted swing acceleration and actual acceleration (the comparison referred to as “AC” in FIGS. 10a-10c). The possible routines are defined as Subroutines 1A, 2A, and 3A. A representation of the resulting torque-speed curve for Subroutine #1 is shown in FIG. 12. As illustrated in FIG. 12, during execution of Subroutine #1, additional torque is made available.


As illustrated in FIG. 10a, in Subroutine 1A, when the value of the actual acceleration is more than a predetermined percentage less than the predicted acceleration (at 600), the controller 300 starts or resets a timer (at 602a or 602b). The controller 300 then increases the available torque limit (e.g., sets the torque to greater than 100% of the current reference torque) and applies approximately 100% of the reference torque in the opposite direction of the current swing direction (at 604).


When the value of the actual acceleration is not more than a predetermined percentage less than the predicted acceleration (at 600), the controller 300 determines if a timer is running (at 606). If the timer is running and has reached a predetermined time period (e.g., approximately 100 milliseconds to approximately 2 seconds) (at 608), the controller 300 stops the timer (at 610) and resets the reference torque (at 612).


As illustrated in FIG. 10b, in Subroutine 1B, when the value of the actual acceleration is more than a predetermined percentage less than the predicted acceleration (at 620), the controller 300 increases the available torque limit (e.g., sets the torque up to approximately 200% of the current reference torque) and applies (e.g., 100%) the reference torque in the opposite direction of the current swing direction (at 622). Once the swing speed is reduced by a predetermined percentage (e.g., approximately 25% to approximately 50%) (at 624), the controller 300 returns swing control to its normal or default control method.


In Subroutine 1C (see FIG. 10c), when the value of the actual is more than a predetermined percentage less than the predicted acceleration (at 630), the controller 300 calculates an amount of torque to apply (i.e., calculates the magnitude of the deceleration force to apply to the dipper 140 swing) based on how large the difference is between the predicted acceleration and the actual acceleration (at 632). For example, as this difference increases, so does the torque applied. In some embodiments, the controller 300 also increases the maximum available swing torque before calculating the torque to apply. After calculating the torque, the controller 300 applies the calculated torque in the opposite direction of the current swing direction (at 634). When the swing speed is reduced by a predetermined percentage (e.g., approximately 25% to approximately 50%) (at 636), the controller 300 ends swing compensation control.



FIGS. 11a-11c illustrate Subroutine #2. Subroutine #2 provides three possible routines associated with calculating swing speed. The possible routines are defined as Subroutines 2A, 2B, and 2C. A representation of the resulting torque-speed curve for Subroutine #2 is shown in FIG. 13. As illustrated in FIG. 13, during execution of Subroutine #2, available torque is reduced.


As shown in FIG. 11a, in Subroutine 2A, the controller 300 sets the swing motoring torque to a predetermined percentage of available torque (e.g., approximately 30% to approximately 80% of available torque) (at 700). In Subroutine 2B (see FIG. 11b), the controller 300 monitors the shovel's inclinometer. If the shovel angle is less than a first predetermined angle (e.g., approximately 5°) (at 702), the controller 300 sets the swing motoring torque to a first predetermined percentage of available torque (e.g., approximately 30% to approximately 50%) (at 704). If the shovel angle is greater than or equal to the first predetermined angle and less than a second angle (e.g., approximately 10°) (at 706), the controller 300 sets the swing motoring torque to a second predetermined percentage of available torque (e.g., approximately 40% to approximately 80%) (at 708). If the shovel angle is greater than or equal to the second predetermined angle (at 710), the controller 300 sets the swing motoring torque to a third predetermined percentage of available torque (e.g., approximately 80% to approximately 100%) (at 712).


In Subroutine 2C, the controller 300 also monitors an inclinometer included in the shovel (at 714) and calculates the swing motoring torque limit level based on the shovel angle (at 716). In particular, the greater the angle of the shovel, the higher the torque limit level set by the controller 300.


Thus, embodiments of the invention relate to compensating dipper swing control to mitigate impacts between the dipper and a bank, the ground, a mobile crusher, a haul truck, etc. It should be understood that the numbering of the options and subroutines were provided for ease of description and are not intended to indicate importance or preference. Also, it should be understood that the controller 300 can perform additional functionality. In addition, the predetermined thresholds and values described in the present application may depend on the shovel 100, the environment where the shovel 100 is digging, and previous or current performance of the shovel 100. Therefore, any example values for these thresholds and values are provided as an example only and may vary.


Various features and advantages of the invention are set forth in the following claims.

Claims
  • 1. A method of compensating swing of a dipper of a shovel, the method comprising: (a) determining, by at least one processor, a direction of compensation opposite a current swing direction of the dipper;(b) applying, by the at least one processor, a maximum available swing torque in the direction of compensation opposite the current swing direction of the dipper when acceleration of the dipper is greater than a predetermined acceleration value; andwhen the current state of the shovel is in a dig state:(c) limiting the maximum available swing torque; and(d) allowing swing torque to ramp up to the limited maximum available swing torque over a predetermined period of time when dipper is retracted to a predetermined crowd position.
  • 2. The method of claim 1, further comprising determining, by the at least one processor, a current state of the shovel and performing steps (a) through (b) when the current state of the shovel is a swing-to-truck state or a return-to-tuck state.
  • 3. The method of claim 1, wherein limiting the maximum available swing torque includes limiting the maximum available swing torque between approximately 30% and approximately 80% of the maximum available swing torque.
  • 4. The method of claim 1, wherein allowing swing torque to ramp up when the dipper is retracted to a predetermined crowd position includes allowing swing torque to ramp up when the dipper is retracted a predetermined percentage from a maximum crowd position.
  • 5. The method of claim 4, wherein allowing swing torque to ramp up when the dipper is retracted a predetermined percentage from a maximum crowd position includes allowing swing torque to ramp up when the dipper is retracted between approximately 5% and approximately 40% from the maximum crowd position.
  • 6. The method of claim 1, wherein allowing swing torque to ramp up over the predetermined period of time includes allowing the swing torque to ramp up over approximately 100 milliseconds to approximately 2 seconds.
  • 7. The method of claim 1, further comprising increasing the maximum available swing torque before applying the maximum available swing torque in the direction of compensation.
  • 8. The method of claim 7, wherein increasing the maximum available swing torque includes increasing the maximum available swing torque up to approximately 200%.
  • 9. The method of claim 1, further comprising stopping applying the maximum available swing torque in the direction of compensation opposite the swing direction of the dipper when a swing speed of the dipper drops to or below a predetermined speed value.
  • 10. The method of claim 9, wherein stopping applying the maximum available swing torque when the swing speed of the dipper drops to or below a predetermined speed value includes stopping applying the maximum available swing torque when the swing speed of the dipper drops to or below between approximately 0 rpm and approximately 300 rpm.
  • 11. The method of claim 9, wherein stopping applying the maximum available swing torque when the swing speed of the dipper drops to or below a predetermined speed value includes stopping applying the maximum available swing torque when the swing speed of the dipper drops by a predetermined percentage.
  • 12. The method of claim 1, further comprising stopping applying the maximum available swing torque in the direction of compensation opposite the swing direction of the dipper when a timer value reaches a predetermined setpoint.
  • 13. The method of claim 1, wherein applying the maximum available swing torque includes calculating a deceleration speed based on a difference between the acceleration of the dipper and the predetermined acceleration value.
  • 14. The method of claim 1, further comprising determining the predetermined acceleration value based on a full state of the dipper.
  • 15. The method of claim 1, further comprising determining the predetermined acceleration value based on an empty state of the dipper.
  • 16. The method of claim 1, further comprising determining the predetermined acceleration value based on a current dipper load.
  • 17. The method of claim 1, further comprising determining the predetermined acceleration value based on a current dipper position.
  • 18. The method of claim 1, wherein applying the maximum available swing torque includes applying the maximum available swing torque when acceleration of the dipper is greater than a predetermined acceleration value and a swing speed of the dipper reaches a predetermined threshold.
  • 19. The method of claim 1, wherein applying the maximum available swing torque when a swing speed of the dipper reaches a predetermined threshold includes applying the maximum available swing torque when the swing speed of the dipper reaches or exceeds approximately 5% to approximately 40% of a maximum speed.
  • 20. The method of claim 1, further comprising setting swing motoring torque to a predetermined limit.
  • 21. The method of claim 1, wherein setting swing motoring torque to a predetermined limit includes setting swing motoring torque based on an angle of the shovel received from at least one inclinometer.
  • 22. A non-transitory computer-readable medium configured to execute, by a processor, a set of functions for compensating swing of a dipper of a shovel, the set of functions comprising: (a) determining a direction of compensation opposite a current swing direction of the dipper;(b) applying a maximum available swing torque in the direction of compensation opposite the current swing direction of the dipper when acceleration of the dipper is greater than a predetermined acceleration value; andwhen the current state of the shovel is in a dig state:(c) limiting the maximum available swing torque; and(d) allowing swing torque to ramp up to the limited maximum available swing torque over a predetermined period of time when dipper is retracted to a predetermined crowd position.
RELATED APPLICATIONS

The present application is a divisional application of U.S. application Ser. No. 13/843,532, filed Mar. 15, 2013, which claims priority to U.S. Provisional Patent Application No. 61/611,682, filed Mar. 16, 2012, the entire content of each is incorporated herein by reference.

US Referenced Citations (124)
Number Name Date Kind
3207339 Neslin Sep 1965 A
3642159 Askins Feb 1972 A
3648029 Ungnadner Mar 1972 A
3934126 Zalesov et al. Jan 1976 A
3993158 Weight et al. Nov 1976 A
4104518 Schachinger et al. Aug 1978 A
4370713 McCoy, Jr. et al. Jan 1983 A
4398851 Geuns et al. Aug 1983 A
5027049 Pratt et al. Jun 1991 A
5404661 Sahm et al. Apr 1995 A
5442868 Ahn Aug 1995 A
5493798 Rocke et al. Feb 1996 A
5528498 Scholl Jun 1996 A
5548516 Gudat et al. Aug 1996 A
5701691 Watanabe et al. Dec 1997 A
5717628 Hammerl et al. Feb 1998 A
5748097 Collins May 1998 A
5752333 Nakagawa et al. May 1998 A
5835874 Hirata et al. Nov 1998 A
5903988 Tochizawa et al. May 1999 A
5908458 Rowe et al. Jun 1999 A
5937292 Hammerl et al. Aug 1999 A
5953977 Krishna et al. Sep 1999 A
5968103 Rocke Oct 1999 A
5978504 Leger Nov 1999 A
6025686 Wickert et al. Feb 2000 A
6058344 Rowe et al. May 2000 A
6072127 Oslakovic Jun 2000 A
6076030 Rowe Jun 2000 A
6085583 Cannon et al. Jul 2000 A
6108949 Singh et al. Aug 2000 A
6167336 Singh et al. Dec 2000 A
6223110 Rowe et al. Apr 2001 B1
6225574 Chang et al. May 2001 B1
6247538 Takeda et al. Jun 2001 B1
6272413 Takahashi et al. Aug 2001 B1
6317669 Kurenuma et al. Nov 2001 B1
6336077 Boucher Jan 2002 B1
6363173 Stentz et al. Mar 2002 B1
6363632 Stentz et al. Apr 2002 B1
6466850 Hilgart Oct 2002 B1
6732458 Karenuma et al. May 2004 B2
6885930 Wang Apr 2005 B2
7024806 Suzik et al. Apr 2006 B2
7034476 Wang et al. Apr 2006 B2
7126299 Jackson Oct 2006 B2
7181370 Furem et al. Feb 2007 B2
7227273 Ahmad et al. Jun 2007 B2
7307399 Furem Dec 2007 B2
7308352 Wang et al. Dec 2007 B2
7375490 Furem May 2008 B2
7385372 Ahmad et al. Jun 2008 B2
7398012 Koellner Jul 2008 B2
7406399 Furem et al. Jul 2008 B2
7479757 Ahmad Jan 2009 B2
7574821 Furem Aug 2009 B2
7578079 Furem Aug 2009 B2
7622884 Furem Nov 2009 B2
7726048 Stanek et al. Jun 2010 B2
7734397 Peterson et al. Jun 2010 B2
7751927 Pulli et al. Jul 2010 B2
7752779 Schoenmaker et al. Jul 2010 B2
7832126 Koellner et al. Nov 2010 B2
7979182 Ooki et al. Jul 2011 B2
8620533 Taylor Dec 2013 B2
8756839 Hren et al. Jun 2014 B2
8768579 Taylor et al. Jul 2014 B2
8972120 Linstroth et al. Mar 2015 B2
8984779 Knuth Mar 2015 B2
9043098 Nomura et al. May 2015 B2
9206587 Linstroth et al. Dec 2015 B2
9260834 Lee Feb 2016 B2
9315967 Taylor et al. Apr 2016 B2
9361270 Colwell et al. Jun 2016 B2
20060265914 Gudat Nov 2006 A1
20070240341 Hyde Oct 2007 A1
20080134547 Kliffken et al. Jun 2008 A1
20080201108 Furem et al. Aug 2008 A1
20080212344 Furem Sep 2008 A1
20080282583 Koellner et al. Nov 2008 A1
20090055056 Ooki Feb 2009 A1
20090228394 Mintah Sep 2009 A1
20090229101 Ahmad et al. Sep 2009 A1
20090272109 Pfaff Nov 2009 A1
20100010714 Claxton Jan 2010 A1
20100036645 McAree Feb 2010 A1
20100076612 Robertson Mar 2010 A1
20100109417 Jackson et al. May 2010 A1
20100185416 Furem et al. Jul 2010 A1
20100223008 Dunbabin et al. Sep 2010 A1
20100243593 King et al. Sep 2010 A1
20100283675 McAree et al. Nov 2010 A1
20110029206 Kang et al. Feb 2011 A1
20110073392 Collins et al. Mar 2011 A1
20110106384 Corke et al. May 2011 A1
20110197680 Shackelford, IV Aug 2011 A1
20110301817 Hobenshield et al. Dec 2011 A1
20110313608 Izumi et al. Dec 2011 A1
20110314802 Lastre et al. Dec 2011 A1
20120101693 Taylor Apr 2012 A1
20120263566 Taylor et al. Oct 2012 A1
20120277961 Colwell et al. Nov 2012 A1
20120283919 Kuras et al. Nov 2012 A1
20130051963 Taylor Feb 2013 A1
20130066527 Mizuochi et al. Mar 2013 A1
20130096782 Good et al. Apr 2013 A1
20130110460 Taylor May 2013 A1
20130174556 Nishikawa Jul 2013 A1
20130195595 Hottmann et al. Aug 2013 A1
20130195597 Imura Aug 2013 A1
20130261885 Hargrave, Jr. et al. Oct 2013 A1
20130298544 Izumi et al. Nov 2013 A1
20130311054 Choi Nov 2013 A1
20130325269 Izumi et al. Dec 2013 A1
20140032059 Udagawa Jan 2014 A1
20140084831 Kawaguchi et al. Mar 2014 A1
20140191690 Yanagisawa Jul 2014 A1
20140338235 Ryan Nov 2014 A1
20150240458 Nagato Aug 2015 A1
20150275471 Matsumoto et al. Oct 2015 A1
20150292185 Nagato Oct 2015 A1
20150308073 Voelz et al. Oct 2015 A1
20160017573 Colwell et al. Jan 2016 A1
20160348343 Kanemitsu Dec 2016 A1
Foreign Referenced Citations (69)
Number Date Country
1161069 Oct 1997 CN
1891915 Jan 2007 CN
101575862 Nov 2009 CN
101614024 Dec 2009 CN
101680204 Mar 2010 CN
201581425 Sep 2010 CN
202644604 Jan 2013 CN
202899186 Apr 2013 CN
19856610 Jun 1999 DE
102008010461 Aug 2009 DE
0003287 Aug 1979 EP
0003287 Mar 1981 EP
0036384 Sep 1981 EP
0036384 Mar 1982 EP
0053270 Jun 1982 EP
0053270 Jul 1984 EP
0114024 Jul 1984 EP
0036384 Nov 1984 EP
0114024 Mar 1987 EP
0402517 Dec 1990 EP
0412395 Feb 1991 EP
0412398 Feb 1991 EP
0412399 Feb 1991 EP
0412400 Feb 1991 EP
0412402 Feb 1991 EP
0414926 Mar 1991 EP
0428778 May 1991 EP
0428783 May 1991 EP
0442344 Aug 1991 EP
0442344 Apr 1992 EP
0412402 Apr 1993 EP
0535765 Apr 1993 EP
0402518 Sep 1993 EP
0412399 Jan 1994 EP
0428783 Jan 1994 EP
0402517 Mar 1994 EP
0412400 Mar 1994 EP
0414926 Mar 1994 EP
0412395 Sep 1994 EP
0412398 Sep 1994 EP
0442344 Jan 1995 EP
0907805 Jan 2001 EP
0912806 Sep 2001 EP
2080730 Jul 2009 EP
9-291560 Nov 1997 JP
2000192514 Jul 2000 JP
643597 Jan 1979 SU
1079780 Mar 1984 SU
1208135 Jan 1986 SU
1656084 Jun 1991 SU
9746763 Dec 1997 WO
9746767 Dec 1997 WO
9847793 Oct 1998 WO
9902788 Jan 1999 WO
0004240 Jan 2000 WO
0140824 Jun 2001 WO
02092921 Nov 2002 WO
2005012028 Feb 2005 WO
2005118329 Dec 2005 WO
2006028938 Mar 2006 WO
2007057305 May 2007 WO
2008014571 Feb 2008 WO
2008144043 Nov 2008 WO
2008144043 Feb 2009 WO
2009024405 Feb 2009 WO
2009131635 Oct 2009 WO
2009131635 Dec 2009 WO
2010033959 Mar 2010 WO
2010132065 Nov 2010 WO
Non-Patent Literature Citations (10)
Entry
International Search Report and Written Opinion for Application No. PCT/US2013/032769 dated May 31, 2013 (20 pages).
P&H, P&H Update on C-Series Shovels and Centurion Technology, WMEA Tucson 2007, (20 pages).
P&H, Centurion Shovel Control System, Driving the Ultimate Digging Machine, 2009, (6 pages).
Winstanley, Graeme et al., Dragline Automation—A Decade of Development, IEEE Robotics & Automation Magazine, Sep. 2007, p. 52-64.
4170C Service Manual—Section 17 Crawler Maintenance, p. 127.
Autonomous Loading Application, Carnegie Mellon University Roboticts Institute, national Robotics Engineering Center, Retrieved from Internet on Dec. 28, 2010 <URL:http://www.rec.ri.cmu.edu/projects/als/application/>.
Office Action from the Mexican Intellectual Property Office for Application No. MX/a/2015/017527 dated Oct. 24, 2016 (8 pages).
First Office Action from the State Intellectual Property Office of China for Application No. 201380014583.7 dated Aug. 2, 2016 (26 pages).
Second Office Action from the Chilean Patent Office for the Application No. 02460-2014 dated Feb. 2, 2017 (8 pages, which includes a Statement of Relevance).
Official Decision of Grant from the Russian Patent Office for Application No. 2014137252 dated Jan. 10, 2017 (17 pages).
Related Publications (1)
Number Date Country
20160053464 A1 Feb 2016 US
Provisional Applications (1)
Number Date Country
61611682 Mar 2012 US
Divisions (1)
Number Date Country
Parent 13843532 Mar 2013 US
Child 14929167 US