Manipulator and control method
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     This invention relates to manipulators with multiple degrees of freedom and t methods 
     2. Discussion of the Prior Art 
     Robot arms comprising links with multiple degrees of freedom have been developed to take the place of humans in the execution of manual work, while position control is carried out to realize operation with the same dexterity as a human. 
     The most basic hardware configuration of a manipulator is that in which each of the joints in the link mechanism comprises one actuator which drives the joint and a sensor which detects displacement of angle of the joint. Therefore, each joint of a manipulator normally has essentially independent positioning functions, so the number of degrees of freedom of the manipulator equals the number of actuators. While various techniques for controlling more degrees of freedom than the number of actuators have been proposed with the purpose of reducing the number of actuators, most of these are mechanism-dependent, such as methods in which differential mechanisms which follow objects are provided or methods in which mechanisms for transmission of power are provided. 
     Yet the conventional mechanism-dependent methods described above result in a more complex manipulator structure, with a concomitant high price, increasing the weight of the manipulator and requiring large amounts of driving energy. 
     SUMMARY OF THE INVENTION 
     This invention came about in light of the above, and its object is to provide a manipulator and control method to reduce the number of actuators in manipulator joints, allowing reduction of manufacturing cost, and the joints of which can be made to weigh less, and the actuators of which can be made more compact and conserve energy. 
     In keeping with this object, the manipulator of this invention is made up of a manipulator with n joints, in which k of these n joints are provided with actuators while the rest are provided with holding brakes. 
     The control method for this manipulator is as such: while the holding brakes of certain joints which have holding brakes are released, the torque or force of joints which have actuators generates, by means of dynamic coupling between joints, angular or linear acceleration in the joints whose brakes are released, thus controlling the angular or linear displacement of these joints whose brakes are released, and while the brakes of all joints which have holding brakes are applied, the angular or linear displacement of joints which have actuators can be controlled by these actuators, thus moving the tip of the manipulator from any point to any other point. 
     As described above, in manipulators with links connected by joints, the dynamic coupling between joints can be used to generate angular or linear acceleration in joints which have no actuators and thus control angular or linear displacement, so that not all joints require actuators, thus reducing the number of actuators and allowing the design of more compact and energy-efficient manipulators while also reducing manufacturing costs. 
     The above and other features and objects of the present invention will become apparent with the following detailed description made with reference to the drawings. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a schematic diagram of the manipulator of this invention. 
     FIG. 2 is a side view illustrating a preferred embodiment of the manipulator of this invention. 
     FIG. 3 is an explanatory diagram illustrating the control state of the manipulator of this invention. 
     FIG. 4 is a flowchart illustrating the determination of the trajectory in period II and the actuator driving force. 
     FIGS. 5A-5C are the results of a simulation illustrating the convergence when applying feedback control to the manipulator of this invention. 
     FIGS. 6A and 6B are explanatory diagrams illustrating the control of the actuator and the state of the arm in periods I and III. 
     FIG. 7 is a simulation illustrating an example of positioning control when a control algorithm is applied to the manipulator of this invention 
     FIG. 8 is an explanatory diagram illustrating the on/off switching state of the brakes of passive joints. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     The non-linearity and coupling characteristics normally present in the dynamic system of a manipulator act as a disturbance with respect to servomechanisms provided one on each joint. Compensating for this disturbance torque is a major problem in manipulator control. Yet through the motion of other joints, the generation of just such a disturbance torque can also cause motion in joints which do not have the ability to generate torque themselves. 
     This invention is a method of using this type of dynamic coupling to control manipulators with passive joints having no actuator. 
     First, the theory will be explained. 
     In FIG. 1, 1 is a manipulator. Manipulator 1 effects n degrees of freedom by a plurality of links l {l 1 , l 2  ...l n  } linked by joints C {C 1 , C 2  ... C n  }. The leading link l n  forms a hand 2. Of the plurality of joints C {C 1  ... C n  }, any number k of joints C {C 1  ... C i  ...} are provided with actuators A {A 1  ... A j  ... A k  }and the remaining number (n-k) of joints C {C 2  ... C n  } are provided with holding brakes B {B 1  ... B n-k  }. 
     The actuators A are able to drive their neighboring links and control their relative angle, relative angular velocity and relative angular acceleration. 
     The holding brakes B are able to control and release the motion of their neighboring links. 
     FIG. 2 illustrates an example of one joint provided with an actuator and one joint provided with a holding brake. Base 3 is provided with a strut 4, a pair of support arms 5a and 5b are fixed a distance apart on the top and bottom of strut 4, while an axle 6 is supported by the ends of the support arms 5a and 5b in such a way that it is able to rotate. The portion of axle 6 protruding from the upper surface of the support arm is connected to the rotating axle of actuator 7 provided on support arm 5a, comprising an active joint. The portion of axle 6 protruding from the lower surface of the support arm 5b extends into sensor 8 which measures the angle of rotation of axle 6. 
     The portion of axle 6 between support arms 5a and 5b is fixed to one end of link 9. 
     On the free end of arm 9, via a brake 10 which is applied or released by commands from a controller (not shown), a link 12 is supported in such a way that it is able to rotate, comprising a passive joint in which the turning angle of link 12 is measured by a sensor 11 provided on the lower surface of arm 9. 
     In a manipulator of the above structure, while the brake 10 is applied, driving actuator 7 causes link 9 to rotate with the rotation of actuator 7, and link 12 will also move. 
     While the brake 10 is released, driving actuator 7 again causes link 9 to rotate with the rotation of actuator 7, but in this case, link 12 will rotate in an infinite variety of modes depending on the actuator 7 rotating speed, length of time driven, deceleration conditions and such. The control of this is explained next. 
     Note that while in the preferred embodiment shown, the active joint and passive joint are connected by link 9, they can also be connected by a plurality of passive joints. 
     Control of a manipulator of n degrees of freedom will be explained. Of the n degrees of freedom, the joints of k degrees of freedom are, as in normal manipulators, active joints comprising an actuator A and a displacement sensor, while the other n-k degrees of freedom are passive joints having no actuator, comprising only a holding brake B and a displacement sensor (0&lt;k&lt;n). The passive joints are able to move freely while the holding brake is off. But while the holding brake is on, the passive joint is fixed in that position. 
     While the holding brake of a passive joint is off, that passive joint can be indirectly controlled by the coupling torque (force) generated with the motion of the active joints. Applying a holding brake can also control the displacement of other joints without affecting that passive joint. In addition, if the holding brakes of all passive joints are applied and set, the active joints can be controlled as in a normal manipulator. By combining these control modes, the position and posture of the entire manipulator can be controlled by successively switching the joints which carry out control. 
     The equation of motion of the manipulator is expressed by 
     
         M(q)8+b(q,q)=u.                                            (1) 
    
     Provided that 
     
         b(q,8)=h(q,q)+Γq+g(q) 
    
     where qεR n  is a joint displacement vector, uεR n  is a joint driving force vector, g(q)εR n  is a gravity term, h(q,q)εR n  is a Coriolis and centrifugal force term, M(q)εR nxn  is an inertia matrix, and ΓεR nxn  is a viscous friction matrix. 
     Here, of the elements of matrix q, the displacement of any k joints are selected and introduced as ψεR k . Of these, the number of passive joints is assumed to be m (O≦m≦k). Thus of the k active joints, the number of joints not included is also m, and their displacement is introduced as φεR m . The remaining n-k-m joints not included in ψ or φ are all passive joints, and their displacement is introduced as θεR n-k-m . Also, the driving force of the k active joints is introduced as τεR k . The brakes of passive joints belonging to ψ are set to an off position, and the brakes of passive joints belonging to θ are set to an on position. The braking force of those passive joints with brakes off is assumed to be zero. The braking force of those passive joints with brakes on is ν. By rearranging the the elements of q and u, the equations ##EQU1## result. Since the passive joints belonging to θ are fixed, θ =0. Rearranging M(q) and b(q,q) correspondingly, they are divided as follows. ##EQU2## Substituting equations (2) and (3) into (1), 
     
         M.sub.11φ+M.sub.12ψ+b.sub.1 (q,q)-τ=0          (4a) 
    
     
         M.sub.21φ+M.sub.22ψ+b.sub.2 (q,q)=0                (4b) 
    
     
         M.sub.31φ+M.sub.32ψ+b.sub.3 (q,q)-ν=0           (4c) 
    
     Substituting the current values of the joint displacement and velocity measured for each joint and into the q,q of equations (4a) and (4b), b 1  (q,q), b 2  (q,q) and M 11 , M 12 , M 21 , and M 22  can be found. Furthermore, by giving the acceleration ψ a desired value (=ψ d ), equation (4b) can be considered to be a system of linear equations with respect to φ. The coefficient matrix M 21  represents the dynamic coupling between φ and ψ, and is dependent on the manipulator structure and mass distribution. If M 21  is regular, equation (4b) has a unique solution, 
     
         φ=-M.sub.21.sup.-1 M.sub.22ψ.sub.d -M.sub.21.sup.-1 b.sub.2 (q,q) (5) 
    
     and substituting equation (5) into (4a), 
     
         τ=(M.sub.12 -M.sub.11 M.sub.21.sup.-1 M.sub.22)ψ.sub.d -b.sub.1 (q,q)-M.sub.11 M.sub.21.sup.-1 b.sub.2 (q,q)              (6) 
    
     If the driving force τ thus found is generated in the active joint, the acceleration φ and ψ d  will be obtained. That is to say, by means of the driving force of k active joints, the acceleration of any k joints including m passive joints can be set to any value. The acceleration φ of m active joints is determined by ψ d , so it cannot be given any arbitrary value. Also, the velocity θ and acceleration θ of the n-k-m passive joints are 0. Yet if the assignment of the k joints which control acceleration is sequentially switched by the on/off switching of brakes, ultimately the displacement of all joints can be controlled. (The state of the holding brakes of all passive joints being turned on, completely immobilizing the passive joints, is equivalent to m=0, in which the active joints are in control as in a normal manipulator.) 
     When controlling the position and posture of a manipulator, depending on the combination of control modes using brake on/off switching, an infinite number of control algorithms are conceivable. First, as one example of these, consider the case of point-to-point (PTP) control between any two points in which m=n-k (≦k). In this case, the brakes of all passive joints are turned to an on or off position simultaneously. 
     While the brakes are in an off position, passive joints are controlled, and while the brakes are in an on position the active joints are controlled, so at least one mode switch is required to bring all joints of the manipulator to the desired position. On the other hand, precise simultaneous movement of both passive joints and active joints to the desired position is considered to be difficult while the brakes are in an off position. To resolve this problem, a more advantageous order for the control to be carried out would be to first position the passive joints with the brakes in an off position and then position the rest of the active joints with the brakes in an on position. 
     While PTP control is possible with only this, in order to further simplify control, first add a &#34;brake on&#34; period in which initial acceleration is accomplished by the active joints. Kinetic energy is thus provided to the link mechanism, facilitating movement of passive joints during the &#34;brake off&#34; period and suppressing unnecessary movement of the active joints. 
     Therefore, control can be carried out by dividing the trajectory between two points into the following three periods, as shown in FIG. 3. Note that FIG. 3 shows a manipulator in which n=2, k=1 and m=1, and C A  and C B   designate an active joint with actuator and a passive joint with brake, respectively. 
     I. ψ-axis holding period (T 0  ≦t≦T 1 , brake in an on position) 
     II. ψ-axis release period (T 1  ≦t≦T 2 , brake in an off position) 
     III. ψ-axis holding period (T 2  ≦t≦T 3 , brake in an on position) 
     In period II, k joints including passive joints are moved along the desired trajectory, while in periods I and III the remaining m active joints are moved from the initial position to the final position. First, the trajectory and driving force of the actuator in period II are determined off-line as follows. 
      ○ Each of the k joints including all passive joints are given displacement, velocity, and acceleration desired value ψ d  (t), ψ d  (t) and ψ d  (t) (T 1  ≦t≦T 2 ). Note that since the passive joints must be stationary for the instant that the brakes are switched between an on and off position, ψ d  (T 1 )=ψ d  (T 2 )=0is a boundary condition.) 
      ○ The remaining m joints are given initial values of φ(T 1 ) and φ(T 1 ). 
      ○ Calculation of equations (5) and (6) is carried out to find τ(T 1 ) and φ(T 1 ). 
      ○ Numerical integration of φ(t) is carried out to find φ(T 1  +ΔT) and φ(T 1  +ΔT). Here, ΔT is the sampling interval. 
      ○ Steps ({ ○  calculation of equations (5) and (6) → ○ numerical integration} are iterated to determine the driving force τ, acceleration q, velocity q and displacement q over period II. 
     Also, the results of the off-line calculations are used to determine the boundary values φ and φ between period II and period I and between period II and period III. 
     
         ψd.sub.d &#39;=ψ.sub.d +K.sub.v (ψ.sub.d -ψ)+K.sub.p (ψ.sub.d -ψ)                                      (7) 
    
     (K v  and K p  are diagonal gain matrices). 
     Here ψ d , ψ d  and ψ d  are the displacement, velocity and acceleration desired value given in step  ○ , while ψ and ψ are the measured values of displacement and velocity. The acceleration ψ d  &#39; found in equation (7) is substituted into the ψ d  of equation (6) to find driving force τ. In this case, the measured values of both ψ and ψ can be used without using numerical integration (FIG. 5). 
     Specifically, FIG. 5 shows the results of a simulation representing convergence when the above feedback control is applied to a two-degree-of-freedom manipulator. When positioning the passive joint so that ψ goes from -τ/2 to τ/2, assuming that there is an error of 20% (τ/5), the actual values (solid lines) of angular displacement ψ (FIG. 5(b)) and angular acceleration ψ (FIG. (c)) can be seen to converge to the desired value (broken lines). 
     Control of φ in periods I and III are as in a normal manipulator. In period I, control is carried out from φ(T 0 ) as the initial position with φ(T 0 )=0, assuming that φ(T 1 ) and φ(T 1 ) given in step  ○  are the desired value. In period III, control is carried out from φ(T 2 ) and φ(T 2 ), assuming that φ(T 3 ) as the final position and φ(T 3 )=0 is the desired value (FIG. 6, FIG. 7). 
     Specifically, in FIG. 6, a white circle indicates that the brake is released, while a black circle indicates that the brake is applied. FIG. 6(a) illustrates the situation when the rotating actuator is quickly accelerated and then the brake is activated. FIG. 6(b) illustrates the situation when the actuator is quickly accelerated and then the brake is activated. 
     FIG. 7 shows the results of a simulation which illustrates position control when the above algorithm is similarly applied to a two-degree-of-freedom manipulator. The variations in active joint angular displacement φ, angular velocity φ, angular acceleration φ, passive joint angular displacement ψ, angular velocity ψ and angular acceleration ψ, along with the actuator driving force τ.sub.φ  and the braking force τ 104   are represented. The brake is in an on position over the regions T 0  -T 1  and T 2  -T 3 , and off over T 1  -T 2 . Sinusoidal acceleration occurs in ψ over T 1  -T 2  and in φ over T 0  -T 1  and T 2  -T 3 , and T 1  -T 0 , T 2  -T 1 , and T 3  -T 2  are determined in such a way that the maximum angular acceleration for each is no greater than 4π rad/s 2 . 
     By means of the above algorithm, the joint displacement q of the manipulator can be moved between any two points. In the case that n-k&gt;k, as shown in FIG. 8, the passive joints to be controlled in period II can be positioned k joints at a time by the successive on/off position switching of brakes. 
     With this invention, in a manipulator with links connected by joints, the dynamic coupling between joints can be used to generate angular acceleration in joints which have no actuators and thus control angular displacement, so that joints having no actuator can be driven without requiring a transmission mechanism, thus reducing the number of actuators. Therefore, the manipulator structure is simplified and can be made more compact and energy-efficient.