Control device and method for a manipulator
AssigneeKUKA Laboratories GmbH
InventorsChristian Sonner, Uwe Zimmermann
Life of this patent
Estimating the term…
Abstract
In a method for controlling a manipulator, in particular a robot, a reference path is stored and reference increments are automatically determined while following the path the reference increments are determined based on the dynamics of the manipulator while following the path.
Claims12
A method for controlling a robotic manipulator, comprising the steps of:
- storing a reference path(rs[s(t)]);
- determining reference increments (Δqs[s(t)]) while following the path;
- providing a processor with a model of dynamics of said manipulator represented as a mathematical relation between positions of said manipulator, time derivatives of said positions, and device forces of said manipulator
- M
- ·
- ⅆ
- 2
-
- q
-
- (
- t
- )
- ⅆ
- t
- 2
- +
- h
-
- (
- q
-
- (
- t
- )
- ,
- ⅆ
- q
-
- (
- t
- )
- ⅆ
- t
- )
- =
- τ
- ;
- and
- in said processor, automatically determining the reference increments based on said dynamics of the manipulator, represented in said model, while following the reference path, by determining a reference motion [Δrs(t)] in said processor while following said path for a time increment (Δt), by interpolation between stored positions or joint coordinates or by evaluating a stored function, and
- when drive forces that are necessary to realize a reference motion [Δrs(t)] exceed tolerable drive forces (τzul), automatically determining said reference increments [Δqs(s(t))] so as to differ from the reference motion [Δrs(t)] by a linear mapping Δqs(t)=Φ(Δrs(t)) of the reference motion, wherein the linear mapping maps the reference increments within a predetermined tube ((1−θ1)·Δrs+θ2·nΔr+θ3·bΔr) enclosing the reference motion [Δrs(t)] (τzul);
- and
- emitting a control signal at an output of the processor that controls movement of said manipulator with respect to said path;
- wherein
- M is a mass matrix;
- q(t) is a vector of reference positions in joint coordinates;
- h is a vector embodying weight, gyroscopic, and frictional forces;
- τ is a vector of drive forces,
- (θ1, θ2, θ3) are parameters for deviations from the reference motion;
- and
- nΔr, bΔr are normal and bi-normal vectors to the reference motion.
A control device for a robotic manipulator comprising:
- a memory in which a reference path (rs[s(t)]) and a linearized mode
- [
- M
- ·
- ⅆ
- 2
-
- q
-
- (
- t
- )
- ⅆ
- t
- 2
- +
- h
-
- (
- q
-
- (
- t
- )
- ,
- ⅆ
- q
-
- (
- t
- )
- ⅆ
- t
- )
- =
- τ
- ]
- of dynamics of the manipulator are stored;
- a processor being configured to access the reference path and the model in said memory;
- said processor being configured to automatically determine reference increments (Δqs[s(t)]) ((1−θ1)·Δrs+θ2·nΔr+θ3·bΔr) (Δrs(t);
- based on said dynamics of the manipulator, represented in said model, while following the reference path, and
- when drive forces that are necessary to realize a reference motion [Δrs(t)] exceed tolerable drive forces(τzul), automatically determine the reference increments [Δqs(s(t))] so as to differ from the reference motion [Δrs(t)] by a linear mapping Δqs(t)=Φ(Δrs(t)) of the reference motion, wherein the linear mapping maps the reference increments within a predetermined tube ((1−θ1) ·Δrs+θ2·nΔr+θ3·bΔr) enclosing the reference motion [Δrs(t)] (Δrs(t);
- (Δqs(t)=Φ(Δrs(t))) (τzul);
- and
- said processor being configured to emit a control signal at an output of the processor that controls movement of said manipulator with respect to said path;
- wherein
- M is a mass matrix;
- q(t) is a vector of reference positions in ioint coordinates;
- h is a vector embodying weight, gyroscopic, and frictional forces;
- τ is a vector of drive forces,
- (θ1, θ2, θ3) are parameters for deviations from the reference motion;
- and
- nΔr, bΔr are normal and bi-normal vectors to the reference motion.
A non-transitory, computer-readable data storage medium encoded with programming instructions, said medium being loadable into a processor that controls a robotic manipulator, said processor having access to a memory in which a reference path for movement of said manipulator is stored, and said programming instructions causing said processor to:
- access a linearized mode
- [
- M
- ·
- ⅆ
- 2
-
- q
-
- (
- t
- )
- ⅆ
- t
- 2
- +
- h
-
- (
- q
-
- (
- t
- )
- ,
- ⅆ
- q
-
- (
- t
- )
- ⅆ
- t
- )
- =
- τ
- ]
- of dynamics of said manipulator represented as a mathematical relation between positions of said manipulator, time derivatives of said positions, and device forces of said manipulator;
- and
- automatically determine reference increments (Δqs[s(t)]) ((1−θ1)·Δrs+θ2·nΔr+θ3·bΔr) Δrs(t) based on said dynamics of the manipulator, represented in said model, while following the reference path, by determining a reference motion [Δrs(t)] in said processor while following said path for a time increment (Δt), by interpolation between stored positions or joint coordinates or by evaluating a stored function, and
- when drive forces that are necessary to realize a reference motion [Δrs(t)] exceed tolerable drive forces(τzul), automatically determine said reference increments [Δqs(s(t))] so as to differ from the reference motion [Δrs(t)] by a linear mapping Δqs(t)=Φ(Δrs(t)) of the reference motion, wherein the linear mapping maps the reference increments within a predetermined tube ((1−θ1)·Δrs+θ2·nΔr+θ3·bΔr) enclosing the reference motion [Δrs(t)] (τzul);
- and
- emit a control signal at an output of the processor that controls movement of said manipulator with respect to said path;
- wherein
- M is a mass matrix;
- q(t) is a vector of reference positions in joint coordinates;
- h is a vector embodying weight, gyroscopic, and frictional forces;
- τ is a vector of drive forces,
- (θ1, θ2, θ3) are parameters for deviations from the reference motion;
- and
- nΔr, bΔr are normal and bi-normal vectors to the reference motion.
Dependencies are inferred from the claim text.