Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit

MTRN9400 Control of Robotic Systems

ASSIGNMENT 1 - T3 2022

1 Overview of the Assignment

This assignment is on the control of robot manipulators and is worth 25% of your total marks in this course.

The due date is 5:00pm, Friday 28th October 2021. Marks will be returned within 2 weeks after the submission deadline. You will complete this assignment individually.

1.1 Learning Outcomes

This assignment specifically targets the following learning outcome:

LO1: Learn robot’s kinematic and dynamical model.

LO2: Stability analysis and control of nonlinear systems.

LO3: Understand di↵erent classes of controllers and apply them to robotic systems.

2 Assignment Specication

This assignment is split into 3 parts. This document will explain what you are required to do in each part, and the contributions each part will make to your overall assignment mark. Use the provided MATLAB files for the simulation parts of the assignment. This video explain how to use the MATLAB files: https://youtu.be/Q2oYNWCymJg.



In this assignment, you will design/analyse two di↵erent controllers for the regulation problem of a 2-DOF robot manipulator. The marks allocated to each part of the assignment are as follows:

Part 1 (6 marks): PD controller

• Part 2 (7 marks): Properties of robot manipulators

• Part 3 (10 marks): PD control with gravity compensation

• Report presentation (2 marks): The criteria include good spelling and grammar, appropriate tech- nical language, logical structure including using headings and other conventions, appropriate graph- ical and tabular presentation, caption for graphics and tables, and appropriate spacing that aids readability.

2.1 Part 1 (6 marks)

In this part, you will control a 2-DOF robot using a PD controller:

T = Kp (q(t) qd ) Kd q˙(t).

This controller is explained in Week 5 lecture and also in Chapter 6 of the textbook.

In real applications, PD control is local in the sense that the torque or force determined by such a controller when applied at a particular joint, depends only on the position and velocity of the joint in question and not on those of the other joints. Mathematically, this is translated by the choice of diagonal matrices Kp 2 R2  and Kd 2 R2 . To simply the gain tuning process, we further assume that all diagonal entries of each of these matrices are the same. In other words, we assume the matrices Kp and Kd are in the form of Kp = kp I2 and Kd = kd I2 where kp  and kd  are constant scalars to be designed and I2 2 R22  is the identity matrix.

You can simulate the PD controller in (1) on a 2-DOF robot manipulator using the provided MATLAB files.

(a) Explain how kp  and kd  can be tuned so that

• The joint angular position errors are small;

• The joint angular velocity errors are zero;

• The transient response is good (i.e., the rise time is small and there is no or little oscillations in the position and velocity errors).

Add a figure similar to Figure 1 that clearly shows the transient response of the position errors and the steady-state values for the gains you chose in this part. You may add Data Tips that show the values of the position errors. Write the matrices Kp and Kd you used in your simulation. (3 marks).

X 0.4 Y 0.0

915

01294

0            0.1          0.2          0.3          0.4          0.5          0.6          0.7          0.8          0.9            1

Figure 1: Settling time of PD Control with gravity compensation

(b)  Suppose we want to apply the PD controller  (1) with the gains obtained in Part  1(a) to a real

robot.  Note that in real-world experiments, the model of a robot may not be exactly the same as M(q)q¨ + C(q, q˙)q˙ + g(g) = T , due to, for example, measurement noises, elasticity of joints and links, and actuator saturation.

Explain what factors should be considered in the design of the gains kp  and kd  for real-world exper- iments.  Can we use the same values/range of values we obtained in Part 1(a)?  To get a full mark for this part, you should explain at least 4 key points that should be taken into consideration. (3 marks)

2.2 Part 2. (7 marks)

Use the 2-DOF model given in Section 4, and

(a)  Find λm  and λM  for the inertia matrix M(q) of the 2-DOF robot example such that

0 < λm I2 < M(q) < λM I2 ,                                                      (2)

where λm  and λM  are respectively the strictly minimum and maximum eigenvalues of M(q) which are independent of q .   You may either solve this part numerically or analytically.   If you use a numerical method, you should copy and paste the MATLAB code you used for this part in your report with sufficient comments explaining your code.  If you use an analytic method, you need to write your analytic solution in details in the report. The values you estimate or calculate for λm  and

that are not really useful (say, for example, λm  = 1e 100 and λM  = 1e100). (2 marks)

(b)  Find a bounded constant kc  > 0 such that

kC(q, q˙)k < kc kq˙k.                                                             (3)

Similarly to Part 2(a), you can use both a numerical and analytical method to nd kc . In both cases, you need to clearly explain the details of your calculation of your MATLAB code in the report and find a good estimate of the smallest value for kc .  Note that the norm in the left-hand-side of  (3) denotes the norm of a matrix. If you are not familiar how to calculate the norm of a matrix, you may first search on internet or in a math book and learn it. Equation (3) holds for all vector and matrix norms. (2 marks)

(c)  Find the vector pg and the matrix Yg (q) for the 2-DOF robot example such that the gravity vector g(q) can be expressed as

g(q) = Yg (q)pg (4)

where pg is the rg  ⇥ 1 vector of robot parameters and Yg (q) is a n ⇥ rg  matrix that depends on q (1 mark).

(d)  Using the linearity in parameters property, we can write the robot manipulator dynamical model T = M(q)q¨ + C(q, q˙)q˙ + g(q) in the form of T = Y (q, q˙ , q¨)p.  Find the constant vector p such that it has the minimum possible number of elements (i.e. the dimension of the vector is minimum) and also find the corresponding Y (q, q˙ , q¨). (2 mark)

2.3 Part 3 (10 marks)

We have learned two controllers for the regulation problems in Week 5:  PD controller and PD control with gravity compensation.   In this part of the assignment, we want to study another variant of PD control with gravity compensation:

T = Kp q˜ Kd M(q)q˙(t) + g(q) (5)

where q˜ = qd q, and Kp , Kd are n-by-n matrices:

(a) Obtain the closed-loop equation of the system in terms of the state variables and and verify the

origin is a unique equilibrium point. (2 marks)

(b) Find conditions on Kp and Kd such that the origin is globally asymptotically stable. You need to

write a detailed mathematical stability proof for this part. (5 marks)

(c) Simulate the controller in MATLAB and plot the joint position and velocity errors and show they converge to zero. Use any Kp and Kd gains that satisfy the conditions in Part 3(b) and write the gain values in your report. (1 marks)

(d) Among the controller in (5) and the following controller,

T = Kp q˜ Kd q˙(t) + g(q),                                                     (6)

which one is better to control a real robot? In other words, is there any di↵erence in terms of the controller performance (both steady-state and transient responses)? (2 marks)

3 Additional Information

• No cover sheet is required as all assignments will be identified through your Moodle account.

• A plagiarism check may be performed on submissions and any instances of plagiarism will be dealt with under the UNSW plagiarism policy (linked from the course outline).

• Please refer to the course outline for late submission policy.

• Frequently asked questions about this assignment will be answered in a FAQ SharePoint page in Assignment 1 channel on Teams. Please regularly check the FAQ page, especially before you ask a question. Please post questions about this assignment in the Assignment 1 channel on Teams.

4 Appendix 1: Dynamic model of a 2-DOF robot manipulator

The dynamic equations for a 2-DOF robot manipulator are

M(q)q¨ + C(q, q˙)q˙ + g(q) = T

where

M(q) = [ m1`c(2)21`c(2)`2c ]

g(q) = ]