Difference between revisions of "MSc: Dynamics Of Non Linear Robotic Systems"

From IU
Jump to navigation Jump to search
Line 18: Line 18:
 
The course will benefit if students already know some topics of mathematics and programming.
 
The course will benefit if students already know some topics of mathematics and programming.
   
Programming:
 
 
* Matlab or Python
 
* Matlab or Python
 
* numpy library
 
* numpy library
 
* Google Colab environment.
 
* Google Colab environment.
 
* CSE201 — Mathematical Analysis I and CSE203 — Mathematical Analysis II: differentiation, exponentials, gradient.
 
 
* CSE202 — Analytical Geometry and Linear Algebra I and CSE204 — Analytic Geometry And Linear Algebra II: matrix multiplication, change of the bases, orthonormal spaces, cross product and skew-symmetric matrices.
Math:
 
* [https://eduwiki.innopolis.university/index.php/BSc:MathematicalAnalysisI CSE201 — Mathematical Analysis I]
 
* [https://eduwiki.innopolis.university/index.php/BSc:MathematicalAnalysisII CSE203 — Mathematical Analysis II]: differentiation, exponentials, gradient.
 
 
* [https://eduwiki.innopolis.university/index.php/BSc:AnalyticGeometryAndLinearAlgebraI CSE202 — Analytical Geometry and Linear Algebra I]
 
* [https://eduwiki.innopolis.university/index.php/BSc:AnalyticGeometryAndLinearAlgebraII CSE204 — Analytic Geometry And Linear Algebra II]: matrix multiplication, change of the bases, orthonormal spaces, cross product and skew-symmetric matrices.
 
 
 
* Screw theory (optional).
 
* Screw theory (optional).
 
* CSE402 — Physics I (Mechanics)] and CSE410 — Physics II - Electrical Engineering]: Kinematics, Statics and Dynamics.
   
  +
== Recommendations for students on how to succeed in the course ==
Physics:
 
* [https://eduwiki.innopolis.university/index.php/BSc:PhysicsI CSE402 — Physics I (Mechanics)], [https://eduwiki.innopolis.university/index.php/BSc:PhysicsII CSE410 — Physics II - Electrical Engineering]: Kinematics, Statics and Dynamics.
 
 
 
References:
 
References:
 
* Any text book on Linear algebra, Calculus, Programming and Physics
 
* Any text book on Linear algebra, Calculus, Programming and Physics

Revision as of 11:32, 18 April 2022

Dynamics of Non Linear Robotic Systems

  • Course name: Dynamics of Non Linear Robotic Systems
  • Course number: R-01

Course Characteristics

Key concepts of the class

Robotics; Robotic components; Robotic control.

What is the purpose of this course?

This course is an introduction to the field of robotics. It covers the fundamentals of kinematics, dynamics, and control of robot manipulators, robotic vision, and sensing. The course deals with forward and inverse kinematics of serial chain manipulators, the manipulator Jacobian, force relations, dynamics, and control. It presents elementary principles on proximity, tactile, and force sensing, vision sensors, camera calibration, stereo construction, and motion detection. The course concludes with current applications of robotics in active perception, medical robotics, autonomous vehicles, and other areas.

Prerequisites

The course will benefit if students already know some topics of mathematics and programming.

  • Matlab or Python
  • numpy library
  • Google Colab environment.
  • CSE201 — Mathematical Analysis I and CSE203 — Mathematical Analysis II: differentiation, exponentials, gradient.
  • CSE202 — Analytical Geometry and Linear Algebra I and CSE204 — Analytic Geometry And Linear Algebra II: matrix multiplication, change of the bases, orthonormal spaces, cross product and skew-symmetric matrices.
  • Screw theory (optional).
  • CSE402 — Physics I (Mechanics)] and CSE410 — Physics II - Electrical Engineering]: Kinematics, Statics and Dynamics.

Recommendations for students on how to succeed in the course

References:


Course objectives based on Bloom’s taxonomy

- What should a student remember at the end of the course?

By the end of the course, the students should be able to ...

  • Model the kinematics of robotic systems.
  • Compute end-effector position and orientation from joint angles of a robotic system.
  • Compute the joint angles of a robotic system to reach the desired end-effector position and orientation.
  • Compute the linear and angular velocities of the end-effector of a robotic system from the joint angle velocities.
  • Convert a robot’s workspace to its configuration space and represent obstacles in the configuration space.
  • Compute valid path in a configuration space with motion planning algorithms.
  • Apply the generated motion path to the robotic system to generate a proper motion trajectory.
  • Apply the learned knowledge to several robotic systems: including robotic manipulators, humanoid robots.

- What should a student be able to understand at the end of the course?

By the end of the course, the students should be able to ...

  • Name various applications of robots
  • Describe the current and potential economic and societal impacts of robot technology
  • Use the Jacobian to transform velocities and forces from joint space to operational space
  • Determine the singularities of a robot manipulator
  • Formulate the dynamic equations of a robot manipulator in joint space and in Cartesian space
  • List the major design parameters for robot manipulators and mobile robots
  • List the typical sensing and actuation methods used in robots
  • Analyze the workspace of a robot manipulator
  • List the special requirements of haptic devices and medical robots
  • Effectively communicate research results

- What should a student be able to apply at the end of the course?

By the end of the course, the students should be able to ...

  • Describe rigid body motions using positions, orientations, frames, and mappings
  • Describe orientations using Euler angles, fixed angles, and quaternions
  • Develop the forward kinematic equations for an articulated manipulator
  • Describe the position and orientations of a robot in terms of joint space, Cartesian space, and operational space
  • Develop the Jacobian for a specific manipulator
  • Determine the singularities of a robot manipulator
  • Write the dynamic equations of a robot manipulator using the Lagrangian Formulation
  • Analyze the workspace of a robot manipulator

Course evaluation

Course grade breakdown
Proposed points
Weekly quizzes 20
Home assignments 20
Project 20
Midterm Exam 20
Final Exam 20

Grades range

Course grading range
Proposed range
A. Excellent 92-100
B. Good 80-91
C. Satisfactory 65-79
D. Poor/Fail 0-59

Resources and reference material

  • Siciliano, Sciavicco, Villani, and Oriolo, Robotics: Modeling, Planning and Control, Springe

Course Sections

The main sections of the course and approximate hour distribution between them is as follows:

Course Sections
Section Section Title Teaching Hours
1 Introduction to robotics 14
2 Kinematics 14
3 Differential kinematics 16
4 Dynamics 16

Section 1

Section title:

Introduction to robotics

Topics covered in this section:

  • Introduction to Robotics, History of Robotics
  • Introduction to Drones
  • Introduction to Self driving cars
  • Programming of Industrial Robot

What forms of evaluation were used to test students’ performance in this section?

|a|c| & Yes/No
Development of individual parts of software product code & 1
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 0
Essays & 0
Oral polls & 0
Discussions & 1


Typical questions for ongoing performance evaluation within this section

  1. What is the difference between the manipulator arm and manipulator wrist
  2. What is Node in ROS
  3. What are the disadvantages of ROS
  4. Write sensors which are used in self driving cars.
  5. Describe the classical approach for deign self driving car

Typical questions for seminar classes (labs) within this section

  1. Advantages and drawbacks of robotic manipulators
  2. Programming industrial robots
  3. Developing self driving car
  4. Drones and controllers for them

Test questions for final assessment in this section

  1. Typical commands for programming industrial manipulator motions
  2. Types of robots and their application ares
  3. Control of self driving car

Section 2

Section title:

Kinematics

Topics covered in this section:

  • Rigid body and Homogeneous transformation
  • Direct Kinematics
  • Inverse Kinematics

What forms of evaluation were used to test students’ performance in this section?

|a|c| & Yes/No
Development of individual parts of software product code & 1
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 0
Essays & 0
Oral polls & 0
Discussions & 1


Typical questions for ongoing performance evaluation within this section

  1. Properties of Rotation Matrix
  2. How to find Euler angles from rotation matrix
  3. How to compute rotation matrix from knowing Euler angles
  4. How to derive equations for direct kinematic problem
  5. How to solve inverse kinematics problem

Typical questions for seminar classes (labs) within this section

  1. Structure, properties, and advantages of Homogeneous transformation
  2. Expression for rotation around an arbitrary axis
  3. Euler angles
  4. Difference between Joint and Operational spaces
  5. Direct kinematics for serial kinematic chain
  6. Piper approach for inverse kinematics

Test questions for final assessment in this section

  1. Transformation between reference frames
  2. Find Euler angles for given orientation matrix and transformation order
  3. Transformation between Cartesian and operational spaces
  4. Direct kinematic for SCARA robot
  5. Inverse kinematic for SCARA robot

Section 3

Section title:

Differential kinematics

Topics covered in this section:

  • Differential kinematics
  • Geometric calibration
  • Trajectory Planning

What forms of evaluation were used to test students’ performance in this section?

|a|c| & Yes/No
Development of individual parts of software product code & 1
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 0
Essays & 0
Oral polls & 0
Discussions & 1


Typical questions for ongoing performance evaluation within this section

  1. Write the matrix of differential transformation
  2. What is Jacobian matrix
  3. Difference between parametric and non-parametric robot calibration.
  4. Why we need complete and irreducible model
  5. How trajectory planning is realised
  6. What is trajectory junction

Typical questions for seminar classes (labs) within this section

  1. Jacobian matrix calculation
  2. Jacobian matrices for typical serial manipulators
  3. Robot calibration procedure
  4. complete, irreducible geometric model
  5. robot control strategies with offline errors compensation
  6. Trajectory planning in joint and Cartesian spaces
  7. Trajectory junction

Test questions for final assessment in this section

  1. Write Jacobian for Polarrobot
  2. Advantages and disadvantages parametric and non-parametric robot calibration.
  3. complete, irreducible geometric model for spherical manipulator
  4. Compute the joint trajectory q(t) from q(0) = 1 to q(2) = 4 with null initial and final velocities and accelerations. (polynomial)
  5. Obtain manipulator trajectory for given manipulator kinematics, initial and final states and velocity and acceleration limits/

Section 4

Section title:

Dynamics

Topics covered in this section:

  • Dynamics of Rigid body
  • Lagrange approach
  • Newton-Euler approach

What forms of evaluation were used to test students’ performance in this section?

|a|c| & Yes/No
Development of individual parts of software product code & 1
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 0
Essays & 0
Oral polls & 0
Discussions & 1


Typical questions for ongoing performance evaluation within this section

  1. Energy of rigid body
  2. Dynamics of rigid body
  3. What is Direct and Inverse Dynamics
  4. Difference between Newton Euler and Lagrange Euler approaches

Typical questions for seminar classes (labs) within this section

  1. Dynamics of rigid body
  2. Direct and Inverse Dynamic
  3. Newton-Euler Approach
  4. Lagrange-Euler Approach

Test questions for final assessment in this section

  1. Solve inverse dynamics problem for Cartesian robot
  2. Solve direct dynamics problem for RRR spherical manipulator
  3. Moving frame approach for dynamics modelling