ncwit social robotics workshop

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

Upload: zoey

Post on 23-Feb-2016

37 views

Category:

Documents


0 download

DESCRIPTION

Jennifer Goodall, Nick Webb, Katy DeCorah http:// www.albany.edu /robotics. 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? - PowerPoint PPT Presentation

TRANSCRIPT

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

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 3: 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 4: 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 5: 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 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

NXT-g

Page 9: NCWIT Social Robotics Workshop

New program

Page 10: NCWIT Social Robotics Workshop

Start block

Page 11: NCWIT Social Robotics Workshop

Programming blocks

Page 12: NCWIT Social Robotics Workshop

MOVE

Page 13: NCWIT Social Robotics Workshop

Making the robot 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

Download program to robot

Page 24: 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 25: NCWIT Social Robotics Workshop

Loops

Page 26: NCWIT Social Robotics Workshop

Loops

Page 27: NCWIT Social Robotics Workshop

Loops

Page 28: NCWIT Social Robotics Workshop

Loops

Page 29: 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 30: 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 31: NCWIT Social Robotics Workshop

Sensors

Camera

Color Ultra Sonic

Infra Red

Touch

Sound

Page 32: NCWIT Social Robotics Workshop

Sensing and Switching

Page 33: NCWIT Social Robotics Workshop

Sensing

Page 34: NCWIT Social Robotics Workshop

Sensor control

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

Switch control

Page 41: NCWIT Social Robotics Workshop

Switch control

Page 42: NCWIT Social Robotics Workshop

Switch control

Page 43: 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 44: NCWIT Social Robotics Workshop

Avoid objects

Page 45: 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 46: 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 47: 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 48: 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?

Page 49: NCWIT Social Robotics Workshop

Example: Roomba

Page 50: NCWIT Social Robotics Workshop

Example: Roomba

BANG!!!

Page 51: NCWIT Social Robotics Workshop

OUCH!!!!

Example: Roomba

BANG!!!Ooops. Sorry!

Page 52: 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 53: NCWIT Social Robotics Workshop

The reality…

Page 54: NCWIT Social Robotics Workshop

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

from earlier What would a POLITE robot do?

Page 55: NCWIT Social Robotics Workshop

NXT Bits and Pieces

Page 56: NCWIT Social Robotics Workshop

Sounds

Page 57: NCWIT Social Robotics Workshop

Display

Page 58: NCWIT Social Robotics Workshop

Social Robot

Create a POLITE robot and show it off