NCWIT Social Robotics Workshop

65
NCWIT Social Robotics Workshop Jennifer Goodall, Nick Webb, Katy DeCorah http://www.albany.edu/ robotics

description

Jennifer Goodall, Nick Webb, Katy DeCorah http:// www.albany.edu /robotics. NCWIT Social Robotics Workshop. Team Challenge #1: What is a robot?. Form groups What does a robot mean to you? Report back to group. What is a robot?. Machine Built to do job(s ) Programmed Maybe autonomous - PowerPoint PPT Presentation

Transcript of NCWIT Social Robotics Workshop

Page 1: NCWIT Social Robotics Workshop

NCWIT Social Robotics Workshop

Jennifer Goodall, Nick Webb, Katy DeCorahhttp://www.albany.edu/robotics

Page 2: NCWIT Social Robotics Workshop

Team Challenge #1: What is a robot? Form groups What does a robot mean to you? Report back to group

Page 3: NCWIT Social Robotics Workshop

What is a robot? Machine

Built to do job(s) Programmed Maybe autonomous

If we want robots to do things for us, we have to program them

How do we program a robot? What does the robot need to KNOW

to do useful things?

Page 4: NCWIT Social Robotics Workshop

Team Challenge #2: How do we teach a robot what to do?

Pick up the garbage and put it in the garbage can

Give instructions to robot If it understands, it will carry out

instructions If it does not understand, it will

shake its head

Page 5: NCWIT Social Robotics Workshop

How do robots work?

What do they need to do to perform tasks?

Imagine picking up some trash from the floor and taking it to the nearest garbage bin Need to get an understanding of what’s around

them, like where the trash is (SENSE) Need to work out what they are going to do,

and how they are going to do it (PLAN) Then they need to actually do it (ACT)

Page 6: NCWIT Social Robotics Workshop

Acting: How do I do it?

How do we do things? We move around We pick things up We drop things

Robots need to use the sameCalled ACTING

Page 7: NCWIT Social Robotics Workshop

Effectors (for Action)

GripperMotor

Legs

Wheels

TracksFace

Display

Speech

Page 8: NCWIT Social Robotics Workshop

Team Challenge #4: Program your robot with NXT-g

Learn how to make your robot ACT SENSE

Write programs to make it PLAN

Page 9: NCWIT Social Robotics Workshop

NXT-g

Page 10: NCWIT Social Robotics Workshop

New program

Page 11: NCWIT Social Robotics Workshop

Start block

Page 12: NCWIT Social Robotics Workshop

Programming blocks

Page 13: NCWIT Social Robotics Workshop

MOVE

Page 14: NCWIT Social Robotics Workshop

Making the robot move

Page 15: NCWIT Social Robotics Workshop

Making the robot move

Page 16: NCWIT Social Robotics Workshop

Making the robot move

Page 17: NCWIT Social Robotics Workshop

Making the robot move

Page 18: NCWIT Social Robotics Workshop

Making the robot move

Page 19: NCWIT Social Robotics Workshop

Making the robot move

Page 20: NCWIT Social Robotics Workshop

Making the robot move

Page 21: NCWIT Social Robotics Workshop

Making the robot move

Page 22: NCWIT Social Robotics Workshop

Making the robot move

Page 23: NCWIT Social Robotics Workshop

Making the robot move

Page 24: NCWIT Social Robotics Workshop

Download program to robot

Page 25: NCWIT Social Robotics Workshop

Tasks

Move forward 3 seconds, then backward 3 seconds

Move forward 3 seconds, and turn left or right (try to get close to a 90o turn)

Try to get robot to drive around a square

Is there a better way to do this? Let’s create a new program

Page 26: NCWIT Social Robotics Workshop

Loops

Page 27: NCWIT Social Robotics Workshop

Loops

Page 28: NCWIT Social Robotics Workshop

Loop

Page 29: NCWIT Social Robotics Workshop

Loop

Page 30: NCWIT Social Robotics Workshop

Loops

Use the loop structure to make your robot drive around in a rough square

Can you make it so that the robot drives EXACTLY once around the square, and then stops

Can you make it drive once around a square, and then rotate roughly 360 degrees on the spot?

Page 31: NCWIT Social Robotics Workshop

Sensing: What’s going on? What do we use to find out about the

world around us? Eyes Ears Touch Taste Smell

Robots need to use the same Called SENSING

Page 32: NCWIT Social Robotics Workshop

Sensors

Camera

Color Ultra Sonic

Infra Red

Touch

Sound

Page 33: NCWIT Social Robotics Workshop

Sensing and Switching

Page 34: NCWIT Social Robotics Workshop

Sensing

Page 35: NCWIT Social Robotics Workshop

Sensor control

Page 36: NCWIT Social Robotics Workshop

Sensor control

Page 37: NCWIT Social Robotics Workshop

Sensor control

Page 38: NCWIT Social Robotics Workshop

Sensor control

Page 39: NCWIT Social Robotics Workshop

Sensor control

Page 40: NCWIT Social Robotics Workshop

Sensor control

Page 41: NCWIT Social Robotics Workshop

Switch control

Page 42: NCWIT Social Robotics Workshop

Switch control

Page 43: NCWIT Social Robotics Workshop

Switch control

Page 44: NCWIT Social Robotics Workshop

Sensing Create a new program (called

avoidObjects): Drive forward IF there’s an object ‘close’ to the robot THEN turn 90 degrees left or right (your choice) Do this forever

Try a new program with the color sensor Make the robot drive around IF it detects something RED THEN stop

Page 45: NCWIT Social Robotics Workshop

Avoid objects

Page 46: NCWIT Social Robotics Workshop

What have you been doing? You’ve been programming your robot Giving the PLANS or INSTRUCTIONS

to do tasks Using SENSORS to help make

decisions Using EFFECTORS to carry out those

plans

Page 47: NCWIT Social Robotics Workshop

Planning: What should I do?How do we decide what to do?

Make decisions of what to do… …and when Put things together in sequence Make a plan (for the day, or week, or…) Have to be able to deal with things that

occur as we do our stuffRobots need to use the sameCalled PLANNING

Page 48: NCWIT Social Robotics Workshop

Plan

Think of IF-THEN rules

IF <see garbage> THEN <pick-up> IF <holding garbage> AND <at trash

can> THEN <drop garbage> IF <10PM> OR <battery low> THEN

<sleep> IF NOT <holding garbage> THEN

<search room>

Page 49: NCWIT Social Robotics Workshop

This combination is called… SENSE PLAN ACT

It’s an old idea It’s still around You’ll encounter this in any robotics

class you’ll ever take

Page 50: NCWIT Social Robotics Workshop

Definition of a social robot Social robots will interact with us in

our world Need to cooperate, communicate

and collaborate with humans Have to understand our goals, our

actions, and our behaviors What do robots need to achieve this? Which of our robots is most `social’?

Page 51: NCWIT Social Robotics Workshop

Example: Roomba

Page 52: NCWIT Social Robotics Workshop

Example: Roomba

BANG!!!

Page 53: NCWIT Social Robotics Workshop

OUCH!!!!

Example: Roomba

BANG!!!Ooops. Sorry!

Page 54: NCWIT Social Robotics Workshop

Example: Roomba

And then I said to her, you

know….

VRRROOOMMM

What the heck…hang

on…ROOMBA: NOT

NOW!!!And SHE said

that I was, and I said…

Page 55: NCWIT Social Robotics Workshop

The reality…

Page 56: NCWIT Social Robotics Workshop

So let’s make your robot social! Thinking about the AVOID program

from earlier What would an ANGRY robot do? What would a POLITE robot do?

Page 57: NCWIT Social Robotics Workshop

NXT Bits and Pieces

Page 58: NCWIT Social Robotics Workshop

Sounds

Page 59: NCWIT Social Robotics Workshop

Display

Page 60: NCWIT Social Robotics Workshop

Timers

Page 61: NCWIT Social Robotics Workshop

Social Robot

Create either an ANGRY or a POLITE robot and demonstrate it

Page 62: NCWIT Social Robotics Workshop

SENSE/PLAN/ACT

Sensors

Effectors

Planning

Page 63: NCWIT Social Robotics Workshop

What does this have to do with computer science?Designing new robots

New sensors New ways of combining sensor

information New effectors

Making robots think How to get them to talk How to make their eyes work

All of this involves writing programs

Page 64: NCWIT Social Robotics Workshop

So, what is computer science?Computer programming

Create the behavior you want the robot or computer to do

Think ‘algorithmically’ Write down that algorithm in a way that

a machine understands Test it, improve it

Page 65: NCWIT Social Robotics Workshop

How can we make this workshop better? Questions? What do you wish we had talked

about? Evaluation so we can improve this

workshop! 3 minutes!