Coordinated control for a work implement
TECHNICAL FIELD 
     This invention relates generally to a control system for controlling a work implement on a work vehicle, and more particularly to a control system which provides a coordinated control interface between the work implement and the vehicle operator. 
     BACKGROUND ART 
     In the field of work vehicles, particularly those vehicles which perform digging or loading functions such as excavators, backhoe loaders, and front shovels, a work implement is generally controlled by a manual control system having two or more operator control levers, and additionally, other vehicle control devices. Typically, the manual control system often includes foot pedals as well as hand operated levers. A backhoe manufactured by J. I. Case Manufacturing Co., for example, employs three levers and two pedals to control the work implement. A backhoe manufactured by Ford Motor Co. utilizes four control levers. There are drawbacks associated with these implement control schemes. One is operator stress and fatigue resulting from having to manipulate so many levers and pedals. Further, a vehicle operator is required to possess a relatively high degree of expertise to manipulate and coordinate the control levers and foot pedals proficiently. To become productive, an inexperienced operator also requires a long training period to be familiar with the controls and their functions. 
     Some manufacturers recognize the disadvantages of having too many controls, and have adopted a two-lever control scheme as the norm. Generally, two vertically mounted two-axis levers share the task of controlling the movement of the work implement&#39;s appendages (boom and stick) and the bucket of the work implement. For example, hydraulic excavators presently manufactured by Caterpillar Inc. employ one joystick for stick and swing control, and another joystick for boom and bucket control. Similarly, Deere &amp; Co. has a hydraulic excavator with a joystick for boom and swing control, and another for stick and bucket control. In each instance, the number of controls has decreased to two, making machine operation much more manageable. However, these two-lever control schemes are still not wholly desirable. The assignment of implement linkages to the joysticks is entirely arbitrary, and there exists little correlation between the direction of movement of the work implement linkages and those of the control levers. 
     Further, in a typical leveling operation (or slope finish) the operator has to manipulate the control levers about or along at least three axes to produce a linear movement of the bucket. The complexity and skill involved increase when performing these types of operations, thereby increasing operator fatigue and required training time. 
     The present invention is directed to overcoming the problems set forth above. 
     DISCLOSURE OF THE INVENTION 
     In one aspect of the present invention, an apparatus for controllably moving a vehicle&#39;s work implement is provided. The work implement includes a first appendage pivotally connected to the vehicle, and a second appendage pivotally connected to the first appendage. The apparatus senses the geometry of the work implement and responsibly produces a plurality of position signals and produces one of a manual control mode signal and an automatic control mode signal. An operator interface produces first and second lever command signals indicative of desired movement of the work implement. The apparatus receives the one control mode signal and the first and second lever control signals and responsively produces linear motion of the end point of the second appendage along first and second work axes if the one control mode signal is equal to the automatic control mode signal. 
     In another aspect of the present invention, a method for controllably moving a vehicle&#39;s work implement is provided. The implement includes a first appendage pivotally connected to the vehicle and a second appendage pivotally connected to the first appendage. The method includes the steps of sensing the geometry of the implement, sensing movement of a plurality of control levers, and producing a control signal in response to receiving one of a manual control mode signal and an automatic control mode signal. The method further includes the step of responsively producing linear motion of the second end point of the second appendage along first and second work axes in the automatic control mode. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a diagrammatic view of the coordinated control system and the work implement; 
     FIG. 2 is a diagrammatic view of the work implement illustrating pertinent points on the work implement; 
     FIG. 3 is an isometric view of the control levers mounted with respect to an operator seat; 
     FIG. 4 is a side view of the vehicle performing bucket level motion with phantom lines illustrating implement movement; 
     FIG. 5 is a side view of the vehicle performing slope finish motion with phantom lines illustrating implement movement; 
     FIG. 6 is a block diagram of the coordinated control implementation; 
     FIG. 7 is a flow diagram illustrating the operation of the control implementation; and 
     FIG. 8 is a flow diagram illustrating the operation of the control implementation according to a preferred embodiment of the present invention. 
    
    
     BEST MODE FOR CARRYING OUT THE INVENTION 
     With reference to FIG. 1, the present invention 100, hereafter referred to as a coordinated control system, is adapted to controllably provide linear movement of a work vehicle&#39;s work implement 102. The work implement 102 typically includes a first appendage 104, a second appendage 106, and a third appendage 108. For discussion purposes, the work vehicle is a hydraulic excavator, but the instant control system 100 is also suitable for application on other vehicles such as backhoe loaders, front shovels, wheel loaders, track loaders, and skidders. 
     In the preferred embodiment, the appendages (or linkages) correspond to the boom 104, stick 106, and bucket 108 of the hydraulic excavator, as shown. However, the implement configuration can differ from machine to machine, and the configuration may include a working device other than a bucket, such as a clam shell or grapple. In certain machines, such as the excavator, the operator cab together with the work implement is rotatable along a vehicle center axis; in others, such as a the backhoe loader, the operator cab is stationary and the work implement is swingable to a different site at the pivot at the base of the boom. This difference is not significant and the implementation of the coordinated control system 100 in the two cases will be substantially identical. 
     The work implement 102 of the work vehicle is generally actuated in a vertical plane 110, and swingable, with the operator cab, to a plurality of second planes different from the first plane by rotating the vehicle platform or swinging at the pivot base of the boom. The boom 104 is actuated by a first hydraulic actuating means 111 having two hydraulic cylinders 112,114 enabling raising and lowering of the work implement 102. The stick 106 is drawn toward and away from the vehicle by a second hydraulic actuating means 115. The second actuating means 115 includes a hydraulic cylinder 116. A third hydraulic actuating means 117 includes another hydraulic cylinder 118. The third actuating means 117 &#34;opens&#34; and &#34;closes&#34; the bucket (referred to as the curling function). The hydraulic flow to the hydraulic cylinders 112,114,116,118 are regulated by hydraulic control valves 120,122,124,126. 
     An operator interface means 128 provides operator input to the coordinated control system 100. The operator interface means 128 includes a first control lever 130 and a second control lever 132. 
     In one embodiment, the control levers 130,132 are electronic (inductive) control levers (or joysticks). One suitable joystick is available from CTI Electronics of Bridgeport, Conn., USA, but other types may also be used. The output of the electronic joysticks are electrical signals indicative of the relative movement along or about predefined axes. 
     In another embodiment, the control levers 130,132 are mechanical joysticks. The control levers actuate pilot systems (not shown) of the vehicle&#39;s hydraulic system. In the manual modes, the pilot systems actuate control valves for each of the respective cylinders. In the automatic or semi-automatic modes, the pilot systems are circumvented by 10 the electronic controls. However, the pilot systems include pressure sensors for producing signals indicative of the control levers 130,132 relative movement. 
     In one embodiment, the first control lever 130 has three degrees of movement, all in one plane 134 substantially parallel to work implement plane 110: towards the front and rear of the vehicle (along a first control axis 136), vertically up and down (along a second control axis 138), and rotationally, shown by arrow 140 (about a third control axis 142). The second control lever 132 is movable to the left and right of the vehicle (along a fourth control axis 143). 
     In another embodiment, the first control lever 130 has two degrees of movement: along the first control axis 136 and along the second control axis 138. The second control lever 132 also has two degrees of movement: along the fourth control axis 143 and towards the front and the rear of the vehicle (along a fifth control axis 145). 
     The first control lever 130 generates one signal for each respective degree of movement, each signal representing the control lever displacement direction and velocity from neutral. Similarly, the second control lever 132 generates a signal for the left-right displacement direction and velocity for implement side swing control. 
     A means 144 produces an electrical signal indicative of a desired slope angle (discussed below). In one embodiment, the means 144 includes a thumb wheel switch 146 having three indicators 148,150,152. The first indicator 148 is movable between a positive position (indicative of a positive desired slope angle) and a negative position (indicative of a negative 10 desired slope angle). The second and third indicators 150,152 are each movable between ten positions (0-9) representing the magnitude of the desired slope angle (between zero and ninety degrees). In an other embodiment, the means 144 includes a LED display and a series of buttons for displaying and inputting the desired slope angle. 
     In the preferred embodiment, the means 144 also includes means for generating an other electrical signal indicative of a desired bucket angle. The means 144 also includes means for generating a desired mode signal. 
     The electric signals are received by a logic means 154, which in response delivers to the hydraulic control valves 120,122,124,126 a plurality of work implement control signals. 
     Referring to FIG. 2, a simplified view of the work implement 102 is shown, defining a number of points and axes used by the logic means 154. The work implement 102 is pivotally mounted on a portion of the excavator&#39;s cab 156 at pivot point b. An axis, X bm , is defined, having an origin at point b and a constant direction with respect to the cab 156. Axis X bm  is used to measure the relative angular relationship between work vehicle 156 and the boom 104. Point a is defined as a point on axis X bm . The boom hydraulic cylinders 112,114 (for simplicity only one is shown) is connected between the work vehicle 156 and the boom 104 at points l and c, respectively. 
     The stick 106 is pivotally connected to the boom 104 at point e. The stick hydraulic cylinder 116 is connected between the boom 104 and the stick 106 at points d and f, respectively. An axis, X stk , is defined, having an origin at point e and a direction constant with respect to the boom 104. Axis X stk  is used to measure the relative angular relationship between the boom 104 and the stick 106. Point n is defined as a point on axis X stk . 
     The bucket 108 is pivotally connected to the stick 106 at point i. An axis X bkt  is defined, having an origin at point i and a constant direction with respect to the stick 106. Point o is defined as a point on X bkt . The bucket hydraulic cylinder 118 is connected to the stick 106 at point g and to a linkage 158 at point j. The linkage 158 is connected to the stick 106 and the bucket 108 at points h and j, respectively. A point m is defined at the tip of the bucket 108. 
     Referring now to FIG. 3, an isometric view of the operator seating area and manual controls is shown. The operator, when seated in an operator seat 302, can rest his or her arms on arm rests 304,306 where the control levers 130,132 are within easy reach. In one embodiment, the first control lever 130 is mounted substantially horizontal and the second control lever 132 is mounted substantially vertical, as shown. In another embodiment, both control levers 130,132 are mounted substantially vertical. 
     In one embodiment of the instant invention, the control system 100 has six modes of operation: 
     A. manual control mode, 
     B. manual control mode with bucket attitude control, 
     C. linear control mode, 
     D. linear with constant bucket attitude control mode, 
     E. slope finish control mode, and 
     F. slope finish with constant bucket attitude control mode. 
     Each mode is explained in depth below. 
     In the manual control mode, the control levers 130,132 control movement of the work implement appendages (boom, stick, bucket) 104,106,108 independently, that is, movement of the first control lever 130 along a specific control axis 136,138,142 corresponds to a specific linkage on the implement. 
     In one embodiment, movement of the first control lever 130 in directions along the first control axis 136 controls the flow of hydraulic fluid to the stick hydraulic cylinder 116 and movement of the first control lever 130 in directions along the second control axis 138 controls the flow of fluid to the boom hydraulic cylinders 112,114. Further, rotational movement of the first control lever 130 about the third control axis 142 controls the curling motion of the bucket 108 and movement of the second control lever 132 along the fourth control axis 143 controls the swing motion of the excavator cab. 
     In another embodiment, movement of the horizontal control lever 130 in directions along the first control axis 136 controls the flow of hydraulic fluid to the boom hydraulic cylinders 112,114 and movement of the horizontal control lever 130 in directions along the second control axis 138 controls the curling motion of the bucket 108. Further, movement of the second control lever 132 along the fourth control axis 143 controls the swing motion of the excavator cab and along the fifth control axis 145 controls the flow of hydraulic fluid to the stick hydraulic cylinder 116. 
     In the manual with bucket attitude control mode, the operator retains manual control of the boom and stick hydraulic circuits. However, the bucket circuit is controlled automatically to adjust the bucket to retain a constant bucket angle with respect to a horizontal plane. Actuation of one of the control levers 130,132, as discussed above, may be used to adjust the bucket angle during operation. 
     In the four remaining automatic or semi-automatic control modes, the control of the appendage movements are simultaneously coordinated to provide linear movement. With reference to FIGS. 4 and 5, the work implement 102 of a work vehicle 302 has a substantially linear bucket motion with respect to the vehicle 304. 
     In all four coordinated modes, the direction and velocity of the linear motion is prescribed by the movement of one control lever 130,132 along one control axis 136,138,143,145. 
     In one embodiment of the linear control mode, movement of the control levers 130,132 along or about the control axes 136,138,142,143 provide the following functions: 
     
         ______________________________________                                    
first control axis 136                                                    
                    linear horizontal                                     
                    movement of point i                                   
second control axis 138                                                   
                    linear vertical                                       
                    movement of point i                                   
third control axis 142                                                    
                    curling function of                                   
                    the bucket, and                                       
fourth control axis 143                                                   
                    swing control.                                        
______________________________________                                    
 
    
     With reference to FIG. 4, movement of the first control lever 130 along the first control axis 136 provides a linear horizontal movement of point i. The linear motion of point i is accomplished by automatically coordinating the flow of hydraulic fluid to the boom and stick cylinders 112,114,116 (discussed below). Manual control over the curling and swing functions remain the same as in the manual control mode. 
     In another embodiment of the linear control mode, the control levers 130,132 are each moveable along two control axes 136,138,143,145. Movement along each control axis 136,138,143,145 corresponds to one of the control functions, as described above. 
     In still another embodiment, the angular relationship between the bucket and the stick remains constant and linear motion of point m is provided. In other words, the bucket 108 is treated as an extension of the stick 106. 
     The linear with constant bucket attitude mode is similar to the linear control mode, except that manual control over the curling function is eliminated. Linear motion of point i is provided in the same manner as described above. In addition the actuation of the bucket hydraulic cylinder 118 is coordinated such that a constant bucket angle with respect to the vehicle 302 is maintained. Therefore, in drawing the bucket level toward the vehicle, all three linkages require simultaneous and coordinated control. 
     In accordance with the control modes described above, the present invention provides a system 100 which actuates the vehicle hydraulics according to the control modes. The control system 100 includes a means 603 for sensing the geometry of the work implement 102 and responsibly producing a plurality of position signals. 
     The means 144 produces one of a manual control mode signal and an automatic control mode signal. In the preferred embodiment, there are two manual modes and four automatic modes: manual control mode, manual with bucket attitude control mode, linear control mode, linear with bucket attitude control mode, slope finish control mode, and slope finish with bucket attitude control mode. 
     The operator interface means 128 produces first and second lever command signals indicative of desired movement of the work implement 102. 
     The logic means 154 for receives the one control mode signal and the first and second lever control signals, responsively produces linear motion of the second end point of the second appendage 106 along first and second work axes 404,412,404&#39;,412&#39; if the one control mode signal is equal to the automatic control mode signal, and responsively produces angular motion of the first and second appendages 104,106 in proportion to the first and second lever command signals, respectively, if the one control signal is equal to the manual control mode signal. 
     The logic means includes: 
     1. a means for receiving the position signals and for responsibly calculating a plurality of mode value signals (r pq ). The mode value signals are in terms of angular velocities of the appendages if the one control mode signal is equal to the automatic control mode signal; 
     2. a means for responsibly calculating a plurality angular-to-linear value signals (s o ). The angular-to-linear value signals are in terms of linear velocity/angular velocity if the one control mode signal is equal to the automatic control mode signal; and 
     3. a means for calculating a plurality of transformation signals (t) as a function of the angular-to-linear value and mode value signals; and for calculating a plurality of cylinder velocity command signals as a function of the mode value signals and the angular-to-linear value signals. 
     The actuating means 109 receives cylinder velocity command signals and responsibly actuates the work implement 102. 
     FIG. 4 specifically illustrates linear motion of the work implement along a first work axis (X) 404. The first work axis 404 is substantially parallel to the plane of the vehicle 402. In the first phantom outline 406, the stick is out and the bucket is in a closed position. As the first control lever 130 is pulled towards the rear of the vehicle along the first control axis 136, the work implement 102 is drawn to the position shown by the second phantom outline 408, the boom is raised, stick closer to the vehicle, and the bucket in a more open position. At the final position shown by the solid outline 410, the boom is lowered, the stick is drawn in, and the bucket is open. 
     Linear vertical movement along a second work axis 412 is performed in response to movement of the first control lever 130 along the second control axis 138 in a similar manner. The second work axis (Y) 412, shown at the second phantom outline 408, is perpendicular to the first work axis 404. 
     FIG. 5 specifically illustrates linear motion of the work implement along a first work axis (X&#39;) 404&#39;. The first work axis 404&#39; has an angular relationship with the vehicle 402. The slope angle is defined by the means 144. In the first phantom outline 406&#39; the stick is out and the bucket is in a closed position. As the first control lever 130 is pulled towards the rear of the vehicle along the first control axis 136, the work implement 102 is drawn to the position shown by the second phantom outline 308&#39;, the boom is raised, stick closer to the vehicle, and the bucket in a more open position. At the final position shown by the solid outline 410&#39;, the boom is lowered, the stick is drawn in, and the bucket is open. 
     Linear vertical movement along a second work axis (Y&#39;) 412&#39; is performed in response to movement of the first control lever 130 along the second control axis 138 in a similar manner. The second work axis 412&#39;, shown at the second phantom outline 408&#39;, is perpendicular to the first work axis 404&#39;. 
     In a vehicle with conventional controls where each linkage is controlled independently, all the linkage motions are explicitly controlled and manipulated by the operator. Since the primary concern of the vehicle operator is the placement of the bucket, all four coordinated control modes of the instant invention allows exact operator displacement and directional control of the bucket regardless of the geometry of the work implement. Therefore, to perform bucket level motion such as in floor finishing, the operator needs only move the first control lever 130 towards the front or rear of the vehicle. 
     In the preferred embodiment, the logic means 154 is implemented on a microcontroller. Typically, the microcontroller is microprocessor based. One suitable microprocessor is available from Motorola Inc. of Roselle, Ill. as part no. MC68332, but any suitable microprocessor is applicable. 
     Referring now to FIG. 6, a block diagram of the coordinated control as implemented on the logic means 154 in software is shown. The electric signals which are generated by the control levers 130,132 are shown as joystick velocity request inputs to the block diagram. These velocity request signals are in Cartesian coordinates corresponding to the control lever movement. The velocity requests are transformed at block 602 to a different coordinate system based on the configuration and position of the linkages. 
     A means 603 senses the geometry of the work implement 102 and responsibly produces a plurality of position signals. In one embodiment, the linkage position sensors include linkage angle resolvers for measuring the relative angles between linkages. In an other embodiment, the linkage position sensors include linear sensors for sensing the length or extensions of individual cylinders. Examples may be found in Robot Manipulators: Mathematics, Programming and Control by Richard P. Paul, MIT Press, 1981. 
     The position signals are received by the velocity transformation. 
     The upper portion of the coordinated control implementation of FIG. 6 (blocks 602,604,606,608) provides for manual control of the flow of hydraulic fluid to the hydraulic cylinders 112,114,116,118 through the use of the control levers 130. The cylinder velocity requests (or joint angular velocity) from this translation process are scaled at block 604 by a factor obtained in the proportional flow control block 6.06. Proportional hydraulic flow control is discussed in U.S. Pat. No 4,712,376 issued to Hadank and Creger on Dec. 15, 1987. The basic concept of the proportional flow control involves calculating the amount of hydraulic flow available for implement actuation lander current operating conditions (that is, engine speed, vehicle travel, etc.) The resultant scaled velocity request from block 604 is passed on to velocity control block 608 where an open or closed loop control determines the hydraulic valve velocity control signals to satisfy the cylinder velocity request. Such open or closed loop control systems are well known in the field of control theory and are therefore not discussed further. The hydraulic control valve signals are complemented with another set of signals to eliminate errors introduced in the Cartesian to linkage coordinate transformation. 
     Referring now to block 610, the joystick velocity requests are scaled with the same factor obtained in proportional flow control. The scaled joystick velocity commands are integrated over time to obtain position commands 612 and transformed to the linkage coordinates 614. This transformation is similar to that of the transformation process in block 602. The output of position transformation block 614 is then passed on to another open or closed loop control 616 where hydraulic valve position control signal is determined. A suitable closed loop control using position and velocity control is disclosed in U.S. patent application Ser. No. 07/540,726, filed on Jun. 15, 1990 and commonly assigned. 
     The hydraulic valve control signals from both branches are combined at an adder 618 to arrive at the final cylinder valve control signals for the work implement. In the manual mode the lower portion of the control implementation is non-operable; the cylinder valve control signals are directly related to the velocity requests from the control levers (joysticks) 130,132. 
     While running in one of the coordinated control modes, the lower portion (blocks 610-616) of the control implementation are effective and part of the upper portion may also be operable. For example, in the linear with bucket attitude control mode, the lower portion of the control implementation coordinates the flow of fluid to the hydraulic cylinders 112,114,116,118 in accordance with the horizontal and vertical velocity requests. The swing motion of the work implement 102 remains under manual control through blocks 602-608. Further, a bucket velocity request may be accepted by the control implementation from one of the control levers 130,132. This signal would be modified (as discussed above) to produce a bucket cylinder correction signal. The bucket cylinder correction signal would be added to the requested bucket velocity signal from the lower portion of the control implementation. This function allows the operator to correct, modify, or adjust the flow of hydraulic fluid to the bucket hydraulic cylinder 118 during bucket attitude control. 
     The Cartesian to linkage coordinate transformations discussed above use the bucket pin as a reference point and do not take into consideration bucket tip position. However, if it is more intuitive for the operator to operate the vehicle with the bucket tip as the significant end point, translation can be easily expanded to accommodate the bucket linkage. 
     In order to perform closed loop control using cylinder position feedback, the relative displacement (extension and retraction) of each cylinder 112,114,116,118 must be available. In the preferred embodiment, sensors (means 603) are used to measure the relative angles between the work vehicle 156, the boom 104, the stick 106 and the bucket 108. 
     In an alternate embodiment, the cylinder displacement is measured directly. One suitable sensor is the radio frequency (RF) linear position sensor, as disclosed in U.S. Pat. No. 4,737,705, issued Apr. 12, 1988 to Bitar, et al. A potentiometer based sensor may also be used. 
     Below, in a discussion describing in depth the derivation of the calculations used in the coordinated control implementation, the following designations are used: 
     
         ______________________________________                                    
L           a length of constant magnitude,                               
λ    a length of varying magnitude,                                
A           an angle of constant magnitude, and                           
Θ     an angle of varying magnitude.                                
______________________________________                                    
 
    
     Referring back to FIG. 2, each length (L,λ) has two subscripts, which define the two points between which the length is referenced. Each angle (A,Θ) has three subscripts, which define the the lines between which the angle is measured (the middle subscript being the vertex of the angle). 
     The following equations (1)-(51) show the derivation of the calculation used to perform the various control modes. The equations are dependent upon the particular geometry of the work implement, as shown in FIGS. 1 and 2. However, the present invention is not limited to one geometry. Similar derivations are used to adapt the present invention to different work implement geometries. 
     If joint angle resolvers are used to measure linkage positions, the measured relative angles from the resolvers must be converted to cylinder displacements. Based on the law of cosines, the relative cylinder displacement of the boom hydraulic cylinders 112,114, λ cl  is determined by the formula: 
     
         λ.sub.cl ={[L.sub.bl.sup.2 +L.sub.bc.sup.2 -2L.sub.bl L.sub.bc cos(A.sub.abl +A.sub.cbe +Θ.sub.abe )}.sup.1/2.     (1) 
    
     Likewise, the relative displacement of the stick hydraulic cylinder 116 is determined by the formula: 
     
         λ.sub.df ={[L.sub.de.sup.2 +L.sub.ef.sup.2 -2L.sub.de L.sub.ef cos(π-A.sub.bed -A.sub.fei -Θ.sub.bei)]}.sup.1/2.(2) 
    
     Similarly, the relative displacement of the bucket hydraulic cylinder 118 is determined by the formula: 
     
         λ.sub.gj ={[L.sub.gh.sup.2 +L.sub.hj.sup.2 -2L.sub.gh L.sub.hj cos(2π-A.sub.ehg -A.sub.ehj -Θ.sub.jhi)]}.sup.1/2.(3) 
    
     In the preferred embodiment, the measured angle (Θ jhi ) is on the linkage 158. To determine the angle of the bucket 108, Θ oim , relative to the stick 106 the following set of equations are used: 
     
         Θ.sub.jhi +Θ.sub.hji +Θ.sub.kji +Θ.sub.jki +Θ.sub.hik =2π,                                  (4) 
    
     
         Θ.sub.oik =A.sub.kim +Θ.sub.oim, and           (5) 
    
     
         Θ.sub.hik +A.sub.eih +Θ.sub.oik =π.         (6) 
    
     
         Θ.sub.oim =-π+Θ.sub.hji +Θ.sub.kji +Θ.sub.jki -A.sub.eih -A.sub.kim +Θ.sub.jhi.                   (7) 
    
     Where, 
     
         Θ.sub.hji =cos.sup.-1 [(λ.sub.ij.sup.2 +L.sub.hj.sup.2 -L.sub.hi.sup.2)/(2L.sub.hj λ.sub.ij)],            (8) 
    
     
         Θ.sub.kji =cos.sup.-1 [(λ.sub.ij.sup.2 +L.sub.jk.sup.2 -L.sub.ik.sup.2)/(2L.sub.jk λ.sub.ij)],            (9) 
    
     
         λ.sub.ij ={[L.sub.hi.sup.2 +L.sub.ju.sup.2 -2L.sub.hi L.sub.nj cos(Θ.sub.jhi)]}.sup.1/2, and                       (10) 
    
     
         Θ.sub.jki =cos.sup.-1 [(L.sub.jk.sup.2 +L.sub.ik.sup.2 -λ.sub.ij.sup.2)/(2L.sub.jk L.sub.ik)].            (11) 
    
     With reference to FIG. 7, the operation of the present invention is as follows: first in a control block 702 the lever command signals are read from the control levers. In a control block 704, the desired mode is read from the means 144. 
     In a control block 706, the desired angular velocities of the boom, stick, and bucket linkages are determined as a function of the mode and the lever command signals. 
     In a control block 708, the angular velocities are translated into linear velocities of the linkage cylinders. The linear velocities are then used to controllably actuate the cylinders in control block 710. 
     In the linear control mode or the linear control with bucket attitude control mode, velocity request signals representative of the desired horizontal and vertical velocities are received from the control levers 130,132. The horizontal velocity request and the vertical request are integrated to determine the desired position components (x,y) of the bucket pin, point i. The desired position must be translated into desired cylinder velocity commands. 
     First, the desired position commands (x,y) are related to the boom 104: 
     
         x=L.sub.be cosΘ.sub.abe +L.sub.ei cos(Θ.sub.abe +Θ.sub.bei).                                        (12) 
    
     
         y=L.sub.be sinΘ.sub.abe +L.sub.ei sin(Θ.sub.abe +Θ.sub.bei).                                        (13) 
    
     
         λ.sub.bi ={[y.sup.2 +x.sup.2 [}.sup.1/2.            (14) 
    
     
         θ.sub.iba =tan.sup.-1 (y/x).                         (15) 
    
     
         Θ.sub.ebi =cos.sup.-1 [(λ.sub.bi.sup.2 +L.sub.be.sup.2 -L.sub.ei.sup.2)/(2λ.sub.bi L.sub.be)[.            (16 ) 
    
     
         Θ.sub.abe =Θ.sub.ebi +Θ.sub.iba.         (17) 
    
     
         Θ.sub.abe =cos.sup.-1 [*λ.sub.bi.sup.2 +L.sub.be.sup.2 -L.sub.ei.sup.2)/(2λ.sub.bi L.sub.be)]+tan .sup.-1 (y/x).(18) 
    
     Where, Θ abe  is the desired boom angle. 
     Θ abe  is transformed into desired boom cylinder length, λ cl , by equation 1. 
     Equation 17 is differentiated to determined the desired angular velocity of the boom 104: ##EQU1## Where, &#34;&#39;&#34; denotes differentiation. 
     The desired boom cylinder velocity is determined using the equation: 
     
         λ.sub.cl.sup.&#39; =[L.sub.bc L.sub.bl sin(A.sub.abl +A.sub.cbe +Θ.sub.abe)/λ.sub.cl ]Θ.sub.abe.sup.&#39;. (23) 
    
     The desired stick angle is: 
     
         Θ.sub.bei =cos.sup.-1 [(L.sub.be.sup.2 πL.sub.ei.sup.2 -λ.sub.bi.sup.2)/(2L.sub.be L.sub.ei O]-π.      (24) 
    
     Using equations 2 and 14, desired stick angular velocity is: 
     
         Θ.sub.bei.sup.&#39; =[x/L.sub.be L.sub.ei sin(Θ.sub.bei +π)]x.sup.&#39; +{y/(L.sub.be L.sub.ei sin(Θ.sub.bei +π)]y.sup.&#39;.(25) 
    
     The desired stick cylinder velocity is then determined by the equation: 
     
         λ.sub.df.sup.&#39; =-[(L.sub.de L.sub.ef sin(π-a.sub.deb -A.sub.fei -Θ.sub.bei)/λ.sub.df ]Θ.sub.bei.sup.&#39;. (26) 
    
     The calculations of boom and stick desired cylinder velocities in the slope finish control mode and the slope finish with bucket attitude control mode are similar to those used in the linear control mode and the linear with bucket attitude control mode, except that the desired slope angle, τ, is introduced into the equations. 
     Therefore, the equations for the desired position of the bucket pin, point i, become: 
     
         x=L.sub.be cos(Θ.sub.abe +τ)+L.sub.ei cos(Θ.sub.abe +τ+Θ.sub.bei).                                  (27) 
    
     
         y=L.sub.be sin(Θ.sub.abe +τ)+L.sub.ei sin(Θ.sub.abe +τ+Θ.sub.bei).                                  (28) 
    
     The desired boom angle becomes: 
     
         Θ.sub.abe =cos.sup.-1 [(λ.sub.bi.sup.2 +L.sub.be.sup.2 +L.sub.ei.sup.2)/(2π.sub.bi L.sub.be)]+tan.sup.-1 (y/x)+τ.(29) 
    
     Carrying the transformations through, the desired angular velocity of the boom and the stick 104,106 become: ##EQU2## The desired boom cylinder and stick velocities are calculated using equations 23 and 26. 
     In the bucket attitude control option, the bucket 108 is maintained at a constant angle with respect to the vehicle. During extension (or retraction) of the boom and stick hydraulic cylinders 112,114,116, the bucket attitude angle is maintained through actuation of the bucket hydraulic cylinder 118. The stick and boom desired velocity commands are not modified. 
     The bucket attitude angle is related to the resolver measured angles by the equations: 
     
         Θ.sub.abe +(π+Θ.sub.bei)+(π+Θ.sub.oim)+(π-θ)=2π.(32) 
    
     
         Θ.sub.oim =θ-π-Θ.sub.abe -Θ.sub.bei.(33) 
    
     
         Θ.sub.oim.sup.&#39; =θ.sup.&#39; -Θ.sub.abe.sup.&#39; -Θ.sub.bei.sup.&#39;.                                   (34) 
    
     Where, θ, represents the bucket attitude angle. 
     To determine the desired angular velocity of the bucket 108, the angular velocity of the boom 104 and the stick 106 must be known. 
     The angular velocity of the boom is determined using commanded angular velocity as follows: 
     
         λ.sub.cl ={[L.sub.be.sup.2 +L.sub.bl.sup.2 -2L.sub.bc L.sub.bl cos(AS.sub.abl +A.sub.cbe +Θ.sub.abe )]}.sup.1/2.   (35) 
    
     
         λ.sub.cl.sup.&#39; =[L.sub.bc L.sub.bl sin(A.sub.abl +A.sub.cbe +Θ.sub.abe)/λ.sub.cl ]Θ.sub.abe.sup.&#39;. (36) 
    
     
         Θ.sub.abe.sup.&#39; =[λ.sub.cl /(L.sub.bc L.sub.bl sin(Θ.sub.abe +A.sub.abl +A.sub.cbe))]λ.sub.cl.sup.&#39;.(37) 
    
     Likewise, the angular velocity of the stick 106 is determined: 
     
         A.sub.deb +Θ.sub.def +A.sub.fei +(π+Θ.sub.bei)=2π.(38) 
    
     
         Θ.sub.bei =λ-A.sub.deb -A.sub.fei -Θ.sub.def.(39) 
    
     
         Θ.sub.def =cos.sup.-1 [(L.sub.de.sup.2 +L.sub.ef.sup.2 -λ.sub.df.sup.2)/(2L.sub.de L.sub.ef)].            (40) 
    
     
         Θ.sub.bei.sup.&#39; =-[λ.sub.df /(L.sub.de L.sub.ef sin(π-a.sub.deb -A.sub.fei -Θ.sub.bei)]λ.sub.df.sup.&#39;.(41) 
    
     Therefore, the desired bucket angular velocity is determined as: 
     
         ∴Θ.sub.oim.sup.&#39; =θ.sup.&#39; -[λ.sub.cl /(L.sub.bc L sin(Θ.sub.abe +A.sub.abl +A.sub.cbe))]λ.sub.cl.sup.&#39; +[λ.sub.df /(L.sub.de L.sub.ef sin(π-a.sub.deb -A.sub.fei -Θ.sub.bei)]λ.sub.df.                        (42) 
    
     Where, Θ&#39; is a requested bucket velocity input from one of the control levers 130,132. 
     The desired bucket cylinder velocity is determined using the desired angular velocity of the bucket and the equations: 
     
         Θ.sub.jhi =π-Θ.sub.hji -Θ.sub.kji -Θ.sub.nji +A.sub.eih +A.sub.kim +Θ.sub.oim.                   (43) 
    
     
         λ.sub.ij.sup.&#39; =(L.sub.hi L.sub.hj sin(Θ.sub.jhi)/λ.sub.ij)Θ.sub.jhi.sup.&#39;.(44) 
    
     
         Θ.sub.jhi.sup.&#39; =-Θ.sub.hji.sup.&#39; -Θ.sub.kji.sup.&#39; -Θ.sub.jki.sup.&#39; +Θ.sub.oim.sup.&#39;.            (45) 
    
     
         Θ.sub.hji.sup.&#39; ={L.sub.hi sinΘ.sub.jhi [L.sub.hj cos(Θ.sub.hji)/λ.sub.ij -1]/ (λ.sub.ij sinΘ.sub.hji)}Θ.sub.jhi.sup.&#39;.                (46) 
    
     
         Θ.sub.kji ={L.sub.hi L.sub.hj sinΘ.sub.hji [L.sub.nk cos(Θ.sub.kji)/λ.sub.ij -1]/ (L.sub.jk λ.sub.ij sinΘ.sub.kji O}Θ.sub.jhi.sup.&#39;.               (47) 
    
     
         Θ.sub.jki.sup.&#39; =[L.sub.hi L.sub.hj sinΘ.sub.jhi /(L.sub.n L.sub.ik sinΘ.sub.jki)]Θ.sub.jhi.             (48 ) 
    
     
         Θ.sub.jhi.sup.&#39; =[1/(1+Θ.sub.hji.sup.&#39; +Θ.sub.kji.sup.&#39; +Θ.sub.jki.sup.&#39;)]Θ.sub.oim.sup.&#39;.            (49) 
    
     
         λ.sub.gj.sup.&#39; =(-L.sub.gh L.sub.hj sin(2π-A.sub.ehg -A.sub.ehi -Θ.sub.jhi)/λ.sub.gj) Θ.sub.jhi.sup.&#39;. (50) 
    
     In the slope finish with bucket attitude control mode, equation 33 is modified to compensate for the desired slope angle: 
     
         Θ.sub.oim =θ-π-(Θ.sub.abe -τ)-Θ.sub.bei.(51) 
    
     The desire bucket cylinder velocity is determined in the same manner as described above. 
     As discussed above in reference to FIG. 6, the output of the coordinated control is a plurality of linear velocity requests. The velocity requests are used by the velocity control block 608. The velocity control block 608 uses an open or closed feedback scheme to control the operation of the hydraulic cylinders 112,114,116,118. 
     Since the lever inputs relate to different types of requests depending upon the control mode, the lever commands have different units of measure. For example, in the manual control mode, the lever command signals correspond to desired angular velocity of the respective linkages. In the automatic modes, at least two of the control lever signals correspond to desired linear velocity of a point on the linkage along an axis. Therefore, the coordinated control determine the mode being operated in and responsively convert the lever command signals which may be in terms of angular velocity or linear velocity to linear velocity requests. 
     In the preferred embodiment, the linear velocity commands are determined using matrix multiplication. The basic matrix equation is: 
     
         [C]=[T]·[L],                                      (52) 
    
     where [C] is the cylinder velocity command matrix, [T] is a transformation matrix, and [L] is a lever command matrix. 
     The cylinder velocity command matrix is a 3×1 matrix and is of the form: ##EQU3## In the preferred embodiment, c 1  corresponds to the desired boom cylinder velocity signal and is proportional to the desired boom cylinder velocity, c 2 , is corresponds to the desired stick cylinder velocity signal and is proportional to the desired stick cylinder velocity, and c 3  is the desired bucket cylinder velocity signal and is proportional to the desired bucket cylinder velocity. 
     The lever command matrix is a 3×1 matrix and is of the form: ##EQU4## 
     The significance of l 1 , l 2 , and l 2  varies depending upon the control mode. 
     In the manual mode, l 1  corresponds to the desired boom cylinder linear velocity, l 2  corresponds to the desired stick cylinder linear velocity, and l 3  corresponds to the desired bucket cylinder linear velocity. 
     In the manual mode with bucket attitude control, l 1  corresponds to the desired boom cylinder linear velocity, l 2  corresponds to the desired stick cylinder linear velocity, and l 3  corresponds to a desired bucket cylinder adjustment. 
     In the linear control mode, l 1  corresponds to the desired velocity along the horizontal axis (X), l 2  corresponds to the desired velocity along the vertical axis, and l 3  corresponds to the desired bucket angular velocity. 
     In the linear control mode with bucket attitude control, l 1  corresponds to the desired velocity along the horizontal axis, l 2  corresponds to the desired velocity along the horizontal axis, and l 3  corresponds to the desired bucket adjustment. 
     In the slope finish control mode, l 1  corresponds to the desired velocity along the X&#39; axis, l 2  corresponds to the desired velocity along the Y&#39; axis, and l 3  corresponds to the desired bucket angular velocity, where X&#39; and Y&#39; are defined by the offset angle. 
     In the slope finish control mode with bucket attitude control, l 1  =the desired velocity along the X&#39; axis, l 2  =the desired velocity along the Y&#39; axis, and l 3  =the desired bucket adjustment, where X&#39; and Y&#39; are defined by the offset angle. 
     The transformation matrix is a 3×3 matrix and is of the form: ##EQU5## As shown, each element of [T] consists of the product between an r pq  term and a s o  term. The r pq  terms are dependent upon the operating mode (see below) and effectually convert the lever command signals into terms of desired angular velocities (based on the current control mode). The s o  terms effectually convert from angular velocity to linear velocity. 
     Substituting equations (53)-(55) into equation (52), leaves: 
     
         c.sub.1 =s.sub.1 ·(r.sub.11 ·l.sub.1 +r.sub.12 ·l.sub.2 +r.sub.13 ·l.sub.3).           (56) 
    
     
         c.sub.2 =s.sub.2 ·(r.sub.21 ·l.sub.1 +r.sub.12 ·l.sub.2 +r.sub.23 ·l.sub.3).           (57) 
    
     
         c.sub.3 =s.sub.3 ·(r.sub.31 ·l.sub.1 +r.sub.32 ·l.sub.2 +r.sub.33 ·l.sub.3).           (58) 
    
     As stated above, each of the terms in equations varies, dependent upon the mode. The equation for each term in each is based on the derivations above and will now be discussed. 
     In the manual mode, the lever command signals are indicative of the desired hydraulic flow to each of the cylinders 112,114,116,118. Therefore the lever command signals are passed to the velocity control block 608. The terms have the following values: ##EQU6## 
     In the manual mode with bucket attitude control, the boom and stick cylinders are treated the same as in the manual mode. Only the terms relating to the bucket cylinder are changed. ##EQU7## 
     The r pq  terms must now be converted from terms of angular velocity to terms of linear velocity. This is done by multiplying r 31 , r 32 , and r 33  by c 3 , where ##EQU8## 
     In the linear control mode, the first, second and third lever command signals are indicative of desired movement along an X axis 404, a Y axis 412 and desired hydraulic flow to the bucket cylinder. The terms of equations (56)-(58) are determined by: ##EQU9## The term s 3  is used as defined in Equation (62). 
     In the linear control mode with bucket attitude control mode, the first and second lever command signals are indicative desired movement along the X and Y axis 404,412. The bucket is adjusted to maintain a constant bucket angle. Adjustment of the bucket angle may be provided through the third control lever command signal. The terms of equations (56)-(58) are determined by: 
     r 11  =D, 
     r 12  =E, 
     r 13  =O, 
     r 21  =F, 
     r 22  =G, 
     r 23  =O, 
     r 31  =A, 
     r 32  =A·B, and 
     r 33  =A·C, where A,B,C,D,E,F,G,S 1 , S 2 , and S 3  are determined using equations (59), (60), (61), (63), (64), (65), (66), (67), (68), and (62), respectively. 
     In the slope control mode, the terms are similar to those used in the linear control mode, but are adjusted to account for the desired slope angle F. The terms are therefore determined by: ##EQU10## and where s 1 , s 2 , and s 3  are determined by Equations (67),(68), and (62), respectfully. 
     In the slope control mode with bucket attitude control mode, the terms are similar to those used in the slope control mode, but the bucket angle is maintained at a constant angle. The terms are therefore determined by: 
     r 11  =H, 
     r 12  =I, 
     r 13  =O, 
     r 21  =J, 
     r 22  =K, 
     r 23  =O, 
     r 31  =A, 
     r 32  =A·B, and 
     r 33  =A·C. 
     Industrial Applicability 
     With reference to the drawings, and in operation, the present invention is adapted to provide a coordinated control for a work vehicle&#39;s work implement. In the excavator, as discussed above, a manual control mode is provided. An operator using the control levers 130,132 operates the work implement 102 to perform the digging operations typical in the vehicle&#39;s work cycle, in a normal manner. 
     However, in order to automatically &#34;finish&#34; or provide a smooth surface using the bucket 108, one of the additional modes of the control system 100 is used. For example, to provide a level floor, the operator manually positions the bucket 108 at a point on the desired path. The control system 100 is transferred to the linear control mode. In the linear control mode, linear horizontal movement of the bucket pin (point i) is controlled by movement of the first control lever 130 along the first control axis 1316. Therefore, the operator need only pull back on the first control lever 130 and the control system 100 coordinates flow of hydraulic fluid to the cylinders 112,114,116 to provide the linear movement. Linear vertical movement is provided by movement of the first joystick along a second control axis 138. Alternatively, vertical movement may be controlled by a second control lever 132. 
     In the slope finish control modes, the operator must also signal the control system 100 as to the desired slope angle. In the preferred embodiment, the operator simply dials in the desired slope angle on the thumb wheel switch 146. 
     In an alternate embodiment, the operator first positions the bucket 108 at a first point on the desired slope and signals the control system 100. Then the operator positions the bucket 108 at a second point on the desired slope and signals the control system (100). The control system then calculates the desired slope based on the bucket positions. 
     In the bucket attitude control modes (linear and slope), the operator positions the bucket at the desired bucket attitude angle prior to engaging the linear or slope control mode.