1 of 27

Autonomous Mobile Manipulation

Introduction

C. Papachristos

Robotic Workers (RoboWork) Lab

University of Nevada, Reno

CS-791

2 of 27

Your Instructor

Christos Papachristos

Assistant Professor

Department of Computer Science & Engineering

  • Areas of Activity:

Robotic Workers Lab (https://www.roboticworkerslab.com/) - (RoboWork)

Research / Coding / SW Engineering for Field Robotics

  • Education

MS in Electrical & Computer Engineering

PhD in Autonomous (Aerial) Robotics

  • Find me at:

WPEB - 309 (Office) or WPEB – 316/302 (the RoboWork Lab)

cpapachristos@unr.edu , papachric@gmail.com

CS791 C. Papachristos

3 of 27

Course Goal

  • Autonomous Mobile Robotic Foundations

Cover fundamental topics related to autonomous robotic system implementation, locomotion, modeling, control, navigation, perception, and planning.

  • Robotic Manipulation

Introduce manipulation foundations including kinematic modeling, inverse-kinematics, manipulation control, and motion planning.

  • Autonomous Mobile Manipulation

How the previous knowledge is combined to arm mobile robots with manipulation autonomy.

Manipulation

Perception

Planning

CS791 C. Papachristos

4 of 27

Course Breakdown

  • Learning Modules

Each learning module will cover the fundamental knowledge in each discipline as it relates to the overarching themes of Robotic Autonomy and Manipulation.

  • Development Environment & Samples

A development environment with sample code and implementations will be provided. The gazebo open-source simulation engine will support virtual deployments of schemes covered throughout the learning modules.

  • Robotics Project

A semester-long robotics project will focus the learned disciplines into a research-driven breakthrough.

Thermal

LiDAR

Camera

IMU

CS791 C. Papachristos

5 of 27

Learning Modules

  • Introduction

  • Motion & Dynamics Modeling

  • Perception & State Estimation

  • Rigid-Body Control & Navigation

  • Path Planning

  • Multi-DoF Arm Kinematics

  • Manipulation Motion Planning

CS791 C. Papachristos

6 of 27

Course Resources

  • Lectures (slides)

Available at the Robotic Workers Lab’s website under the Courses (https://www.roboticworkerslab.com/education/courses) section.

  • Textbooks

Established textbooks underpinning the lecture content.�(not required to purchase – manuscripts available online).

  • Open-source Simulation & Development Environment

Available at the Robotic Workers Lab’s open-source repositories hosted at GitHub (https://github.com/robowork).�Contains a working environment for the testing & development of perception, control, and planning algorithms on a realistic model of an autonomous manipulation-enabled ground robot.

CS791 C. Papachristos

7 of 27

Textbooks

  • Introduction to Autonomous Mobile Robots�Roland Siegwart, Illah Reza Nourbakhsh and Davide Scaramuzza, Second Edition, MIT Press

  • Robot Modeling and Control

Mark W. Spong, Seth Hutchinson, M. Vidyasagar

Wiley

CS791 C. Papachristos

8 of 27

GitHub Repositories

GitHub repository for the course: https://github.com/robowork/autonomous_mobile_manipulation

  • Single pull-and-build self-contained structure.
  • Leverages the gazebo simulation environment and the Robot Operating System (ROS).
  • Contains examples for mobile manipulation robotics assuming a ground robot equipped with a 6 DoF manipulator arm + gripper, as well as an onboard perception solution.

CS791 C. Papachristos

9 of 27

Course Rules

Grading Policy:

The class will comprise a number of take-home Exercise/Assignments and a semester-long Research Project (the Project can be undertaken by teams of up to 5 students. In such a case, the same grade will be applied for all students in the group, i.e. considered to be collective effort).

Grade re-scaling may be assigned based on an outstanding or inferior Project performance.

Class presence will be required, tracked, and factored; on Report-due dates especially.

For general university policy regarding class absence, see UAM 3,020.

CS791 C. Papachristos

Component

Percentage

Exercises/Assignments

20%

Project

80%

Project Breakdown:

Code-Drop & Functionality

50%

Research Paper

40%

Presentation

10%

10 of 27

Course Rules

Letter Grade Assignment:

Academic Dishonesty:

Cheating, plagiarism or otherwise obtaining grades under false pretenses constitute academic dishonesty according to the code of this university. Academic dishonesty will not be tolerated and penalties can include filing a final grade of "F"; reducing the student's final course grade one or two full grade points; awarding a failing mark on the coursework in question; or requiring the student to retake or resubmit the coursework. For more details, see the University of Nevada, Reno General Catalog.

(Also, refer to Academic Standards in course syllabus and online)

Letter Grade

Cumulative Percentage

A

>90%

B

>80%

C

>70%

D

≥60%

F

<60%

CS791 C. Papachristos

11 of 27

Course Rules

Academic Standards Policy for Writing Code – CSE Department:

  • Sharing ideas with other students is fine, but you should write your own code. Never copy or read other students’ code, including code from previous years. Cosmetic changes, such as rewriting comments, changing variable names, and so forth to disguise the fact that your work is copied from someone else, are easy to detect and not allowed.
  • It is your responsibility to keep your code private. Sharing your code in public is prohibited and may result in zero credit for the assignment.
  • If you find some external code (such as an open-sourced project) that could be reused as part of your assignment, you should first contact the instructor to see whether it is fine to reuse it. If the instructor permits it, she/he may announce it to the entire class so that all students could use it. And if you decide to reuse the external code, you should clearly cite it in comments and keep the original copyright in your code, if applicable.
  • You should be prepared to explain any code you submit, including code copied/modified from external sources.

CS791 C. Papachristos

12 of 27

Topics Overview

Fundamental Problems & Capabilities in Robotics:

Motion

How movement can be generated electromechanically in a force-torque controlled manner.

How the corresponding physical systems and their derived behaviors are mathematically modelled.

Image Copyright:

IEEE Spectrum

CS791 C. Papachristos

13 of 27

Topics Overview

Fundamental Problems & Capabilities in Robotics:

Aerial Robotics

Ground Robotics

CS791 C. Papachristos

14 of 27

Topics Overview

Fundamental Problems & Capabilities in Robotics:

Perception

Image Copyright:

Dassault Systemes

How reliable sensory feedback over the environment and a robot’s own body can be obtained.

How correlation of multiple sources of data allows to interpret the environment structure and perceive the robot’s own motion therein.

CS791 C. Papachristos

15 of 27

Topics Overview

Fundamental Problems & Capabilities in Robotics:

Visual-Inertial SLAM

Application to Robotics

CS791 C. Papachristos

16 of 27

Topics Overview

Fundamental Problems & Capabilities in Robotics:

Navigation Control

How coordinated actuation can facilitate navigation in 3D space or on a ground manifold.

How model-based control can be used to increase effectiveness and efficiency.

Image Copyright:

The Construct

CS791 C. Papachristos

17 of 27

Topics Overview

Fundamental Problems & Capabilities in Robotics:

Aerial Robotics

Ground Robotics

CS791 C. Papachristos

18 of 27

Topics Overview

Fundamental Problems & Capabilities in Robotics:

Path Planning

How autonomous planning for navigation paths that remain safe and account for high-level objectives can take place.

How “active perception” can be leveraged.

CS791 C. Papachristos

19 of 27

Topics Overview

Fundamental Problems & Capabilities in Robotics:

Aerial Robotics

Ground Robotics

CS791 C. Papachristos

20 of 27

Topics Overview

Fundamental Problems & Capabilities in Robotics:

Kinematics & Control

How multi-DoF systems are mathematically modeled.

Forward & Inverse Kinematic analysis and control.

Image Copyright:

Universal Robots

CS791 C. Papachristos

21 of 27

Topics Overview

Fundamental Problems & Capabilities in Robotics:

Aerial Robotics

Ground Robotics

CS791 C. Papachristos

22 of 27

Topics Overview

Fundamental Problems & Capabilities in Robotics:

Manipulation Planning

How to plan the motion of multi-DoF manipulators and grippers to achieve end-effector positioning, grasping, and other physical interaction tasks.

How they are controlled.

Image Copyright:

Universal Robots

CS791 C. Papachristos

23 of 27

Topics Overview

Fundamental Problems & Capabilities in Robotics:

Aerial Robotics

Ground Robotics

CS791 C. Papachristos

24 of 27

25 of 27

Example Project

Mobile Manipulation Tool-Routing

Given:

  1. a mobile manipulation-enabled robot, as well as
  2. the 3D model of its operating environment, and
  3. an object surface of interest (a priori known 3D mesh at sufficient level of detail),

implement an algorithm to route the mobile manipulation robot’s end-effector along the given mesh in order to provide full coverage over its surface (as if sanding the surface layer).

CS791 C. Papachristos

26 of 27

GitHub Repositories

GitHub repository for the course: https://github.com/robowork/autonomous_mobile_manipulation

  • Single pull-and-build self-contained�structure.
  • Leverages the gazebo simulation�environment and the�Robot Operating System (ROS).
  • Contains examples for mobile�manipulation robotics assuming�a ground robot equipped with�a 6 DoF manipulator arm + gripper,�as well as an onboard perception�solution.
  • Note: Use branch named project

CS791 C. Papachristos

27 of 27

Time for Questions !

CS-791

CS791 C. Papachristos