compsci 96s1.1 welcome! teaching with robotics compsci 96s/education 96s north 314 th 3:05-5:30...

20
CompSci 96s 1.1 Welcome! Teaching with Robotics CompSci 96S/Education 96S North 314 Th 3:05-5:30 Professor: Jeffrey Forbes http://www.cs.duke.edu/courses/fall07/ cps096s

Upload: kory-mitchell

Post on 25-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

CompSci 96s 1.1

Welcome!

Teaching with RoboticsCompSci 96S/Education 96S

North 314Th 3:05-5:30

Professor: Jeffrey Forbes

http://www.cs.duke.edu/courses/fall07/cps096s

CompSci 96s 1.2

What is a robot?

Definitions Webster: a machine that looks like a human

being and performs various acts (as walking and talking) of a human being

Robotics Institute of America: a robot is a reprogrammable multifunctional manipulator designed to move material, parts, tools, or specialized devices through variable programmed motions for the performance of a variety of tasks

What’s our definition

Components of a robot system?

CompSci 96s 1.3

Agents and Environments

CompSci 96s 1.4

Uses of robots

Where and when to use robots? Tasks that are dirty, dull, or dangerous Where there is significant academic and

industrial interest Ethical and liability issues

What industries?

What applications?

CompSci 96s 1.5

Robocup

The Goal: By the year 2050, develop a team of fully autonomous humanoid robots that can win against the human world soccer champion team

QuickTime™ and aYUV420 codec decompressor

are needed to see this picture.

CompSci 96s 1.6

Outreach

How can we use robots to inspire middle and high school students?

What about the Digital Divide? Is service learning a good model for enrichment

programs? RoboCupJunior: International, national, and

regional competitions for elementary, middle, and high school students

CompSci 96s 1.7

Educational Robotics

Sklar: the use of robotics for learning topics other than specifically robotics

What basic topics would you expect robotics to teach?

What skills would you expect students to learn in building robots?

Constructionist learning

Why Robotics?

Robotics is exciting, motivating, and fun!

Robotics connects students to advanced scientific research and development

Students learn by doing

You need to know a lot of math and science to design, build, program, and evaluate a robot

Robot Software

RoboLab uses icons to build a program.

These icons turn on the robot’s motors.

This icon makes the robot drive for 6 seconds.

This icon makes therobot stop.

CompSci 96s 1.10

RoboCupJunior

Competition founded at RoboCup 2000 in Melbourne

Goal: to create a learning environment for today and to foster understanding among humans and technology for tomorrow

Encourage teamwork and project-bnased learning, development of communication and time management skills, in addition to traditional academic areas like engineering and programming

De-empahsizes competition and emphasis inter-team cooperation, dialogue, and sharing

Dance, rescue, and soccer Local team competed in RoboCup 2007 in Atlanta

CompSci 96s 1.11

Computer architecture

von Neumann model Memory: random access

memory (RAM) for program instructions and data

ALU: includes set of registers for performing calculations

Control: responsible for fetching and decoding instructions

Input & output Bus: various internal

pathways

Control

arthmetic/logic

Memory

Processor

Input

Output

CompSci 96s 1.12

The RCX

Hitachi H8/3297 series processor

3 inputs/sensors (1, 2, 3) 3 outputs/motors (A, B, C) 32k RAM/ 16k ROM Multiple threads of

execution LCD Display & Speaker 3 programmable buttons IR send/receive Sensors

Light, touch, rotation Sonar and compass

avail

CompSci 96s 1.13

LEGO Mindstorms NXT Atmel 32-bit ARM processor 4 inputs/sensors (1, 2, 3, 4) 3 outputs/motors (A, B, C) 256 KB Flash Memory 64 KB RAM USB 2.0 Communication 4 programmable buttons 100x64 b/w LCD Display Sensors

Active:• Old light and rotation

Passive• Touch, sensors for NXT

Digital• Ultrasonic

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Motors 170 RPM 360 RPM for old

motors, why?

CompSci 96s 1.14

Build a robot!

Taskbot Extensible Geared From CMU Robotics

Engineering Teaching Materials

What are some of the desired properties for a robot base?

What are some building principles?

CompSci 96s 1.15

Control basics Some definitions:

Control system: arrangement of physics components connected or related in such a manner as to form and/or act as an entire unit

Kinematics: the description or study of the geometry of motion

Dynamics: the description or study of the forces that affect the motion of objects

Open-loop control Compute trajectory a priori and make necessary actions to

complete task Closed-loop control

Use sensors to provide feedback to modify the trajectory and actions

CompSci 96s 1.16

ROBOLAB

Pilot Mode graphics based limited capability great for kids?

Inventor Mode variables conditionals loops multitasking

Investigator Mode Charts & graphs Analyze data

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

CompSci 96s 1.17

Inventor

CompSci 96s 1.18

Pilot

CompSci 96s 1.19

Challenges

1. Getting there Using Pilot 1 - program your car to move for 1

sec Measure the distance it went Predict distance for n sec (Pilot 2 may be useful) Run and check model

2. Touch-activated Using Pilot 4 make it so your robot starts when

the touch sensor is pressed and stops when it hits something

How would you make it bounce off the wall and explore an area?

How could you keep your robot from running off the table with a light sensor?

CompSci 96s 1.20

Line follower

Design a program that can follow a black line Questions:

What sensors would your robot need?

What simple algorithm could you use?

How would you calibrate your readings?

How would you test your robot?