1 of 15

CSE 492 R - Winter 2020

Intro to Manipulators and Robotics Software

Maru Cabrera

January 9th, 2020

2 of 15

Agenda for Today

Some introductions: interest in robotics, programming.

  • Bonus: Favorite robot (fictional or real)

Course overview

Introduction to RoboCup@Home

  • Mobile manipulators → Autonomous operation
  • ROS

3 of 15

Personal Background

4 of 15

My favorite robot

5 of 15

NOW IT’S YOUR TURN

Name

Interest in robotics and/or programming

Favorite robot

6 of 15

Course Motivation and Overview

Our UW Team (Homeskies) has qualified to the RoboCup@Home 2020 competition in Bordeaux, France (June)

Pre-Capstone to gain experience in robotics practices:

  • Collaborative programming.
  • Basics on core topics: mapping, navigation, planning, perception, manipulation, robot command taking.
  • Basics on ROS

7 of 15

Course Scope and Expectations

Course info in google site

With a new class comes uncertainty!

Calendar is tentative

Some of the details will unfold as we go

8 of 15

RoboCup @Home

Experience as Visiting Fellow for RoboCup 2019 in Sydney

Tasks in the rulebook change from year to year

Rulebook for 2020

9 of 15

Robotic Mobile Manipulators

Let’s decompose this phrase:

Robotic

Some philosophy → what is a robot?

Mobile

Capable of translation in the world

Manipulator

Capable of interacting with objects of the world

Google says:

“a machine capable of carrying out a complex series of actions automatically, especially one programmable by a computer”

10 of 15

ROS: Robotic Operating System

ROS is an open-source, meta-operating system for your robot.

Its primary goal is to support code reuse in robotics research and development.

Enables sharing and collaboration, as well as independent implementations.

ROS is designed around complex mobile manipulation platforms.

Including actuated sensing, e.g. sensors attached to arms

ROS makes it easier to take advantage of a distributed computing environment.

11 of 15

ROS: Key concepts

ROS packages

ROS messages

ROS nodes

ROS services

ROS action servers

ROS topics

ROS bags….. And many more!

The goal is to run many executables in parallel that need to be able to exchange data synchronously or asynchronously

In a nutshell:

12 of 15

TIME FOR HANDS-ON WORK!

Login information for workstations:

username: robotics

password: AX2020wi!

13 of 15

ROS Tutorials

Link to last Capstone → Lab 0: Introduction and ROS tutorials

Wishlist: get through Tutorials 2 - 13, install move-it and fetch repos.

Curve ball: catkin build instead of catkin_make for all tutorials

First step: $ sudo apt-get install python-catkin-tools

Also keep in mind we will be using ROS Melodic

MoveIt: $ sudo apt-get install -y ros-melodic-moveit-*

Fetch: $ sudo apt-get install -y ros-melodic-fetch-*

14 of 15

Resources available (optional)

HCR Lab wiki has additional videos and slides available.

Recommended software packages from @Home community: world modelling, mapping, navigation, face recognition, people following, object recognition, etc. https://github.com/RoboCupAtHome/AtHomeCommunityWiki/wiki/Software#Team_software_overview

15 of 15

Looking Ahead

Next week’s plans:

Teamwork

Collaborative software development

GitHub practices

Team roles, rules/agreements