NCWIT Social Robotics Workshop
This workshop delves into the fundamentals of robotics, focusing on how robots are programmed to perform tasks. Participants will learn about the essential components of robotics, including sensing, planning, and acting. Key topics include how robots perceive their environment, the algorithms needed for decision-making, and the design of robot behavior. Attendees will engage in hands-on activities, programming robots to navigate obstacles and execute specific tasks, providing insights into the intersection of robotics and computer science.
NCWIT Social Robotics Workshop
E N D
Presentation Transcript
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? • What does the robot need to KNOW to do useful things?
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)
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
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
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 same • Called ACTING
Effectors (for Action) Speech Wheels Motor Gripper Display Tracks Legs Face
Tasks (three different challenges) • 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) • Drive around a square • Is there a better way to do this? • Let’s create a new program
Tasks(two different challenges) • 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?
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
Sensors Camera Sound Infra Red Color Ultra Sonic Touch
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
Sensing • Create a new program (called avoidRedObjects): • Make the robot drive around • IF it detects something RED • THEN stop
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
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 stuff • Robots need to use the same • Called PLANNING
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> • IFNOT <holding garbage> THEN <search room>
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?