This course is an introduction to the exciting world of robotics and the mathematics and algorithms that underpin it. You’ll develop an understanding of the representation of pose and motion, kinematics, dynamics and control. You’ll also be introduced to the variety of robots and the diversity of tasks to which this knowledge and skills can be applied, the role of robots in society, and associated ethical issues. If you have access to a Lego Mindstorms kit (9797) you will be able to build a simple robot arm and write the control software for it.

Combined with the Robotic Vision MOOC, this course is based on a 13 week undergraduate course Introduction to Robotics at the Queensland University of Technology.

**Course Outcomes**

By the end of this course you should be able to:

- describe and explain what robots are and what they can do
- describe mathematically the position and orientation of objects and how they move
- describe mathematically the relationship between robot joint coordinates and robot tool pose
- design a robot joint control system and understand the nature of the rigid-body forces acting on a robot arm (optional advanced material)
- reflect on the future role and development of robots in human society
- apply the mathematical, algorithmic and control principles of robot arm manipulators to implement a working robot through physical construction and software development (applies to optional project)

**Pathways through the course**

You can follow three paths through the MOOC:

- You can audit the course: Register and have access to all the content, lectures, quizzes and programming assignments which you can view at your leisure. You do not necessarily have to submit the assessments. You will not receive a certificate at the end of the course.
- To receive a certificate of completion you should register for the course, study all the content and successfully complete at least four assessable quizzes and four programming assignments.
- An additional option is to complete a robot building project which will be peer assessed.

**Workload**

You should spend about 4–8 hours per week on this course. Depending on your level of skill with MATLAB and programming in general, your studies might include:

- 2 hours viewing the lecture videos and completing the self-assessment quizzes;
- 30 minutes for each of six weekly assessable quizzes
- 2 hours for each of six weekly programming assignments;
- 1–2 hours building the robot or vision system (optional project) or doing further research and/or communicating on forums.

Time required for the last two items will depend on your level of skill with MATLAB and programming in general.

** ** **Certificate of Achievement**

Throughout the course you will be asked to complete quizzes and programming exercises. These will be automatically marked. If you pass 4 quizzes and 4 programming assignments you will receive a Certificate of Achievement. The programming assignments will consist of several MATLAB tasks and will be based on the lecture content for that week.

The robot project will be peer assessed but doesn’t count towards the Certificate of Completion.

** ** **Assumed knowledge**

To complete the MOOC you should know some basic programming (either of MATLAB or of an object-oriented programming language) and some of the following areas of maths: matrices, vectors and spaces, eigenvalues and eigenvectors. We’ve included links to Khan Academy on these topics. We believe this knowledge will be necessary to complete the course, and recommend that you view these before Week 1 begins, but you might prefer to watch them on an ‘as needed’ basis after you view our content.

- Vectors
- Matrices:
- basic matrix operations including multiplication and inversion
- zero and identity matrices
- vector transformations with matrices
- familiarity with the concepts of eigenvalues and eigenvectors.

Note: A free version of MATLAB will be available for the duration of the course. Also, Professor Corke’s textbook (not essential) will be available at a significant discount.

** ** **Requirements** **Hardware**

- Computer: You will need a computer that is capable of running MATLAB. For System Requirements, visit the MathWorks’ System Requirements page.
- Lego Mindstorms: To complete the optional project part of this course you will need access to a robotics development kit – we work with Lego Mindstorms NXT and EV3 kits (approximately $300 to $500 depending on the source. Alternatively you can use an Arbotix based design which uses Dynamixel servos, 3D printed parts and an Arbotix microcontroller controller board.

**Software**

- MATLAB. This is a proprietary technical computing and visualisation package developed by The Mathworks Inc. It is widely used in the engineering industry, in scientific research and for undergraduate education. MATLAB is a core part of the course and is available for free to students studying this course. It is used to illustrate techniques in the lectures (via screencasts) and also for the assignment (you need to write programs and submit them for automatic grading). A free MATLAB licence and software for installation will be available when you enrol in the course.
- Open source toolboxes for MATLAB. These will also be available from the course site.
- For the robot project, RWTH Mindstorms NXT Toolbox, open source from the Mindstorms website.

**Other**

- Textbook (optional). Access to the textbook written by Professor Peter Corke (2011), Robotics, Vision and Control: Fundamental Algorithms in MATLAB (Springer) is optional, but considered beneficial.