Decentralized Joint Control#
The equation of motion of a manipulator without end-effector contact force and any joint friction is
From the previous chapter, the joint-motor transmission gives
where \(\boldsymbol{K}_{r}\) is a diagonal matrix, and each diagonal element \(k_{r_i}\) is the gear ratio of joint \(i\). Let \(\boldsymbol{\tau}_{m}\) denote the vector of all motor torques, one can write
Substituting (61) and (60) into the robot arm dynamics (59) leads to
The idea of how we do decentralized control#
We have previously (in dynamics lecture) analyzed the inertia matrix \(\boldsymbol{B}(\boldsymbol{q})\), one can write it as
where \(\overline{\boldsymbol{B}}\) is the diagonal matrix whose constant elements represent the average inertia at each joint, and elements in \(\Delta \boldsymbol{B}(\boldsymbol{q})\) represent the matrix of non-diagonal part.
Substituting (63) into (62) leads to
Here, \(\boldsymbol{I}_m\) is also a diagonal matrix, whose each diagonal entry encodes the inertia at that joint. \(\boldsymbol{D}\) in (64) is a coupling term between different joints.
The above equation (64) corresponds to the following diagram
As shown in both (64) and Fig. 74, if we ignore the coupling term \(\boldsymbol{D}\),
This means that if we ignore complex term \(\boldsymbol{D}\), each joint is a single-in-single-output system (because \(\boldsymbol{I}_m\) is a diagonal matrix). However, the coupling term \(\boldsymbol{D}\) in (64) prevents us from considering so. How do we overcome this in our control design?
Important
In our control design, we consider the each joint as a single-in-single-out system, but view the complex coupling effect term \(\boldsymbol{D}\) as a disturbance input to each joint.
Minimal material on control basics
Please read my hand-writing note on control basics, in order to help you understand the following content of this chapter.
Minimal Introduction to Closed-Loop (Feedback) Control Systems
A typical closed-loop control diagram is shown below. Here, \(\theta_r\) is the reference input; \(\theta_m\) is the output; \(D\) is the disturbance; \(G(s)\) is the transfer function of the plant to be controlled; \(C(s)\) is the controller; \(H(s)\) is the backward pass transfer function (usually a constant to model the sensor). The goal of control design is to find \(C(s)\) such that \(\theta_m\) is able to track \(\theta_r\), while \(D\) has as little effect on \(\theta_m\) as possible.
For the above control system, the forward path transfer function is
The backward path transfer function is
The open loop transfer function is
The input-to-output transfer function is
The disturbance-to-output transfer function is
The input (\(\theta_r\)) to output (\(\theta_m\)) response of the closed-loop system will be determined by the roots of the characteristics equation
Single-Joint System Diagram#
In the reminder of this chapter, i will use \({\theta}_m\) and \(q_m\) interchangeably as the variable of each joint, droping the subscript of joint index. For a single joint, the dynamics equation at that joint is a row of (64), writing as
Let’s recall the DC motor model in our previous chapter:
where \({k}_{t}\) is the torque constants; \({i}_{a}\) is the armature current; \({v}_{a}\) is the vector of armature voltage; \({R}_{a}\) is the armature resistance; \({k}_{v}\) is the back EMF constant; \(v_a=G_vv_c\) with \(\boldsymbol{v}_{c}\) is the voltage input of the servomotor, and \(G_v\) is voltage amplifier. Those parameters have been shown in previous chapter.
Equaling (65) and (66), one has
The above (67) corresponds to the following diagram
For the above diagram, the input (\(v_a\)) to output (\(\theta_m\)) transfer function \(G(s)\) is
with
The input (\(v_a\)) to output velocity (\(\dot{\theta}_m\)) transfer function is
The single joint system in Fig. 76 is the plant \(G(s)\) we want to design the controller \(C(s)\) for.
Position Feedback Control Design#
The transfer function \(G(s)\) for the single joint system (Fig. 76) is in (68), rewritten below
We want to design a proportional-integral controller
with \(K_P\) and \(T_P\) are controller parameters.
The control diagram for the single joint system (Fig. 76) is shown below (note that the backward pass constant \(k_{TP}\) is given and a constant, which can be thought of as the sensor gain).
On the diagram Fig. 77, the transfer function of the forward path is
The transfer function of the backward pass is
The open loop transfer function is
The closed-loop input-to-output transfer function is
Input-to-output stability analysis#
To analyze the input-to-output stability of the closed-loop control system (69), we look at the roots (also called poles) of its characteristic equation, which can be factorized into the following form
The roots (also called poles) to the characteristics equation (70) is
Here, \(\omega_{n}\) and \(\zeta\) are the natural frequency and damping ratio for the complex roots \(s_1\) and \(s_2\), and \(s_3\) is a real pole. Please see my Minimal notes on control basics for explaination of how the values of \(\omega_{n}\), \(\zeta\) and \(s_3\) effect the time-domain performance of the closed-loop control system.
The location of the above poles \((s_1, s_2, s_3)\) on s-plane depends on the of the open-loop gain
The root locus (i.e., the trajectory of the above poles on \(s-\)plane) can be drawn by taking different open loop gain value (71). Here, we derive into two cases:
If \(T_{P}<T_{m}\), the root locus is shown. Because there is always a pole (root) living on the right-half s-plane regardless of the choice of \(\frac{k_{m} K_{P} k_{T P} T_{P}}{T_{m}}\), the closed-loop control system (69) thus is inherently unstable.
If \(T_{P}>T_{m}\), the root locus is shown as below. First, all poles can be located on the left half of s-plane, thus closed-loop control system (69) is stable. Also, as \(T_{P}\) increases, the absolute value of the real part of the two complex poles, (\(s_1\) and \(s_2\)) tending towards the asymptotes increases too, and the system has faster time response (please see my Minimal notes on control basics for explaination)
Disturbance-to-output performance#
Final value theorem
If a continuous signal \(f(t)\) has its Laplace transformation \(F(s)\), then the final value theorem states
The closed-loop disturbance-to-output transfer function is
If \(\theta_r(t)=0\) (i.e., no input signal), based on the final value thoerem (see the above), we have
thus,
Hence, the controller can mitigate the effect of disturbance, and the mitigation is controlled by
which can be interpreted as the disturbance rejection factor for velocity (or higher-order) disturbance. Increasing \(K_{P}\) can help with reducing the effect of \(D\), but too high \(K_P\) can lead to unacceptable oscillations of the output, as implied from the root locus.