This application is based upon and claims the benefit of priority from Japanese Patent Application No. 2012-178395, filed Aug. 10, 2012, the entire contents of which are incorporated herein by reference.
Embodiments described herein relate generally to a robotic control apparatus which controls, for example, a multi-link robotic arm.
To suppress vibration of the distal end of a multi-link robotic arm, it is necessary to estimate the axial torsional angular velocity (the difference between the link angular velocity and the motor angular velocity) based on the motor angular velocity, measured by an internal motor encoder which drives each shaft, and feed it back to a motor angular velocity control system. This estimation operation requires an observer based on a nonlinear dynamic model that takes into consideration elastic joints, and nonlinear interference forces acting between the links.
Attainment of a multi-input multi-output nonlinear observer as described above requires creation of an accurate dynamic model, and a given robustness against variations in end effector load/frictional force. Conventionally, an approximate observer based on one-input one-output linear model+α for “Elastic Joint Model for Each Link+Disturbance Estimation and Compensation from Other Links” has mainly been used to reduce the amount of computation of control.
Also, with the recent improvements in performance of a CPU and memory, a robotic control apparatus can also achieve various computing powers and storage capacities.
In general, according to one embodiment, a robotic control apparatus including an angular velocity control system which, assuming as a controlled object a robotic arm including an elastic mechanism between a rotation axis of a motor and a rotation axis of a link, the apparatus includes a physical parameter switching unit, an observer unit, and a state feedback unit. The physical parameter switching unit is configured to switch a physical parameter set, including a moment of inertia, a friction coefficient, and a spring modulus which are set for a nonlinear dynamic model of the robotic arm, in accordance with a value of a mass of an end effector load of the robotic arm. The observer unit is configured to receive an angular velocity of the motor, and a current command value input to the motor, hold the nonlinear dynamic model, and estimate an angular velocity of the link based on a simulation model of a motor angular velocity control system which undergoes gain proportional-integral control equivalent to the proportional-integral control of the angular velocity control system. The state feedback unit is configured to calculate an axial torsional angular velocity based on a difference between the angular velocity of the motor, and the angular velocity of the link, and feed the calculated axial torsional angular velocity back to the angular velocity control system.
A robotic control apparatus according to this embodiment will be described hereinafter with reference to the drawings.
A control device 13 horizontally pivots the first link 3 about a first axis 2 with respect to the mount 1 using a combination of the first motor 4, the first encoder 6, and the first decelerator 5 having spring characteristics. The control device 13 also horizontally pivots the second link 8 about a second axis 7 with respect to the first link 3 using a combination of the second motor 9, the second encoder 11, and the second decelerator 10 having spring characteristics.
Motor side MM{umlaut over (θ)}M+DM{dot over (θ)}M+fMsgn({dot over (θ)}M)=Eu−NG[KG(NGθM−θL)+DG(NG{dot over (θ)}M−{dot over (θ)}L)]
Link side ML(θL){umlaut over (θ)}L+cL({dot over (θ)}L,θL)+DL{dot over (θ)}L=KG(NGθM−θL)+DG(NG{dot over (θ)}M−{dot over (θ)}L) (1)
θM=[θM1, θM2]T: Motor rotation angle (1, 2: axis numbers)
θL=[θ1, θL2]T: Link rotation angle
a=[a1, a2]T: Link translational acceleration
ML(θL)εR2×2: Link inertial matrix
cL({dot over (θ)}L,θL)εR2×1: Centrifugal force/coriolis force vector
MM=diag(mM1, mM2): Motor+decelerator high-speed phase inertia
DM=diag(dM1, dM2): Motor axis viscous friction coefficient
DL=diag(dL1, dL2): Link axis viscous friction coefficient
KG=diag(kG1, kG2): Decelerator spring modulus
DG=diag(dG1, dG2): Decelerator attenuation coefficient
NG=diag(nG1, nG2): Reduction gear ratio (nG1, nG2≦1)
fM=[fM1, fM2]T: Motor axis coulomb dynamic friction torque
E=diag(e1, e2): Torque/voltage (current command value) constant
u=[u1, u2]T: Input voltage (command value to motor current control system)
A link inertia matrix is given by:
where α, β, and γ are base parameters constituted by the link length, barycentric position, mass, and inertia (see H. Kobayashi et al.: Practice of Robot Control, Chapter 3 Robot Identification, Corona Publishing Co., Ltd., 1997, pp. 62-85 [literature 1]).
The centrifugal force/Coriolis force vector is given by:
As a basic configuration, a motor angular velocity control system uses an equation which implements two-degrees-of-freedom PI control using feedforward-integral-proportional (FF-I-P) control as proportional-integral (PI) control, as per:
{dot over (θ)}MRi: Motor angular velocity target value (i: axial number)
{dot over (θ)}Mi: Motor angular velocity
kFVi: Motor angular velocity target value feedforward control gain
kIVi: Motor angular velocity deviation integral feedback control gain
kPVi: Motor angular velocity proportional feedback control gain
ui: Input voltage (command value to motor current control system)
This two-degrees-of-freedom PI velocity control system is configured as a control system connected into a position control system (P control) by the cascade configuration, as shown in
For example, assuming that an end effector load 12 of the two-link arm shown in
It is an object of this embodiment to implement an observer which estimates the link angular velocity from the motor angular velocity measured by the above-mentioned encoder so as to feed back not only the measurement value of the motor angular velocity but also the estimated value of the link angular velocity, thereby accurately operating the observer while suppressing vibration of the distal end of the robotic arm.
In state feedback using the estimated value obtained by an observer, it is necessary to design/adjust the feedback gain of the observer itself, and the gain of state feedback. In the modern control theory, the poles of the observer are normally set more to the left side of those of state feedback, because feedback control is performed after state variables are reproduced.
However, in practice, such a high gain cannot be set for an observer having various types of noise and modeling errors. When the pole assignment of the observer is adjusted while checking the response of the real machine, the poles may eventually come close to those of state feedback. In this case, the use of the Kalman filter allows systematic design of an observer, but this requires parameter settings of an assumed noise model. Further, in robust control such as H∞ control (H infinity control) without two-phase control system design that includes an observer and state feedback, the control system design can be done by explicitly considering various types of noise and modeling errors. However, in both the methods, manual adjustment on the site is difficult because a computer-aided engineering (CAE) tool is indispensable.
Hence, in this embodiment, focusing attention on the fact that the time responses of simulation and a real robotic machine under velocity control match well, an observer is configured by taking advantage of high estimation accuracy of the physical parameters. An observer according to this embodiment will be described below in accordance with each Example.
This entails no engineering cost associated with approximation and gain adjustment in observer implementation.
A PI control observer based on this nonlinear dynamic model is expressed as a second-order derivative obtained by transforming equations (1), (2), and (3), as per:
{dot over (θ)}M=[{dot over (θ)}M1, {dot over (θ)}M2]T: Motor angular velocity input to observer
u=[u1, u2]T: Input to observer (motor current command value)
KPV=diag(kPV1, kPV2): Velocity deviation proportional control gain
KIV=diag(kIV1, kIV2): Velocity deviation integral control gain
τ=[τ1, τ2]T: Input within observer (motor current command value)
where ̂ represents the estimated value.
As the observer gains of the PI controllers 201 and 202, the gains of P and I of FF-I-P control (two-degrees-of-freedom PI control) of the velocity loop of the real machine are selected. In this case, one degree of freedom of the trackability of the observer need only be taken into consideration, so FF=P is set for PI control. This system is one type of nonlinear observer having a constant gain. Also, since the stationary error of the output estimated value becomes zero as integral control is used, the PI controllers 201 and 202 also have the function of a disturbance rejecting observer. State estimation can be performed by building equations (5) into the control device 13, and calculating a second-order integral (a numerical integral in practice) by the integrator groups 205 and 206 shown in
In two-inertia system angular velocity control, when three quantities of state: the motor angular velocity, the link angular velocity, and the axial torsional angle between the motor and the link are fed back, arbitrary pole assignment becomes possible, so quick response characteristics and attenuation coefficient can be freely set. However, since readjustment of the existing PI control system is involved, the shift toward the pole assignment scheme is difficult. Hence, in this embodiment, as a plug-in to the PI control system, state feedback is performed only for the axial torsional angular velocity estimated value (the difference between the link angular velocity and the motor angular velocity). In this axial torsional angular velocity feedback operation, an effect of increasing only the attenuation coefficient without changing the gain cross-over frequency of PI control is expected to be obtained (H. Sugimoto et al.: “Practice of Theory and Design for AC Servo-System”, Chapter 7 Design of Velocity Control System and Position Control System, Sogo Denshi Shuppansha, 1990, pp. 153-179), and manual adjustment on the site is easy, so this operation can readily be introduced especially to an industrial robotic controller.
KTVi: Feedback control gain of axial torsional angular velocity estimated value
As is obvious from simulations and experiments to be described later, it is easy to manually adjust the feedback control gain kTVi of the axial torsional angular velocity estimated value while checking the time response waveform. Also, since an observer based on an accurate nonlinear dynamic model of a robotic arm with elastic joints is used, a satisfactory effect can be provided only by state feedback of the first axis in vibration suppression control of a robotic arm constituted by a serial link.
As for variations in end effector load and those in frictional force following them, the physical parameter switching unit 204 switches the physical parameter set of the nonlinear dynamic model 203 (gain scheduling) to make the vibration suppression performance robust, independently of the variations in end effector load/frictional force, as shown in
In an example shown in
“DisableAutoPayload” may be used to automatically determine whether the physical parameter set is to be switched.
Note that when the state feedback units 301 and 302 cannot narrow down the models to one as the integrator outputs have close values, it is possible to weight the axial torsional angular velocity estimated value obtained by the observer based on a plurality of models, and feed it back.
The above-mentioned frictional force varies depending not only on the end effector load but also on the temperature. In Example 5, for example, physical parameter sets are estimated at ambient temperatures of 0, 10, 20, and 30° C., and switched from each other in accordance with the value of a thermometer set around a robotic arm. To simultaneously switch the above-mentioned end effector load and its amount of offset, it is only necessary to create a three-dimensional table which uses the end effector load, the amount of offset, and the temperature as parameters.
As described above, according to this embodiment, in a vibration suppression control technique for the distal end of a multi-link robotic arm, it is possible to considerably reduce the engineering cost of an observer which estimates the link angular velocity from the motor angular velocity. It is also possible to provide a robust vibration suppression performance even if the robot has variations in end effector load/frictional force.
A configuration in which a controller includes an entire simulator based on a nonlinear dynamic model in this embodiment is used in the field of process control in which the time axis is 100 or more times that of a robot. However, this method is intended to optimally perform set-point control (of, for example, the liquid level, pressure, and temperature) in the future from the viewpoint of, for example, energy saving, and is not suitable for servo control for exhibiting a given target value trackability in real time for, for example, a robot.
Since a method described in, for example, Jpn. Pat. Appln. KOKOKU Publication No. 7-120212 uses an observer based on some kind of approximation in a nonlinear dynamic model, it can obtain champion data but cannot obtain a robust vibration control performance over a wide operation range. Also, this method entails a high engineering cost to, for example, reduce the amount of computation and adjust the observer gain.
In addition, motor drive manufacturers propose a variety of schemes including the vibration suppression control scheme, and its adaptive control/auto-tuning scheme. However, these schemes are based on a general-purpose observer for “Elastic Joint Model for Each Link+Disturbance Estimation” for each link assuming the motor load, and therefore provide a performance inferior to that of a scheme which explicitly takes into consideration a multi-link robotic arm dynamic model, as a matter of course.
In contrast to this, in this embodiment, an observer that does not use approximation based on a nonlinear dynamic model is used, and gain scheduling of physical parameters corresponding to variations in end effector load/frictional force is also performed, so a robust vibration control performance is obtained over a wide operation range. Also, variations in frictional force following those in end effector load are taken into consideration as well, and gain scheduling is performed using not only the mass and inertia but also the friction coefficient. Moreover, it is unnecessary to design the observer gain, so the engineering cost can be kept low.
While certain embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the inventions. Indeed, the novel embodiments described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the embodiments described herein may be made without departing from the spirit of the inventions. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the inventions.
Number | Date | Country | Kind |
---|---|---|---|
2012-178395 | Aug 2012 | JP | national |