SlideShare a Scribd company logo
Introduction to Robotics




           Talk the Talk
What is a robot?
"I can't define a robot, but I know one when I see one."
     -Joseph Engelberger


A robot is a machine built for real-world
  functions that is computer-controlled…

…maybe.

Right: Roomba microprocessor
(from HowStuffWorks)
Who’s to say?

 Many  devices with varying degrees of
  autonomy are called robots.
 Many different definitions for robots exist.
 Some consider machines wholly controlled
  by an operator to be robots.
 Others require a machine be easily
  reprogrammable.
Japan?1

 Manual-Handling    Device: controlled by operator
 Fixed-Sequence Robot: mechanical action
  sequence
 Variable-Sequence Robot: as 2 but modifiable
 Playback Robot: imitates human actions
 Numerical Control Robot: run by movement
  program
 Intelligent Robot: reactive to environment
1: Japanese Industrial Robot Association
America and Europe?

 “a programmable, multifunction
   manipulator…”
                           -RIA2
 “an independently acting and self controlling
   machine…”
                           -ECM3



2: Robotics Institute of America
3: European Common Market
Robot Classes

 Manipulators:  robotic arms. These are most
  commonly found in industrial settings.
 Mobile Robots: unmanned vehicles capable
  of locomotion.
 Hybrid Robots: mobile robots

  with manipulators.


(Images from AAAI and HowStuffWorks, respectively)
Robot Components

 Body
 Effectors
 Actuators
 Sensors
 Controller
 Software
Robot::Body

 Typically   defined as a graph of links and joints:

                           A link is a part, a shape
                           with physical properties.


                           A joint is a constraint on
                           the spatial relations of two
                           or more links.
Types of Joints



Respectively, a ball joint, which allows
rotation around x, y, and z, a hinge joint,
which allows rotation around z, and a slider
joint, which allows translation along x.
These are just a few examples…
Degrees of Freedom

 Joints constraint free movement, measured
  in “Degrees of Freedom” (DOFs).
 Links start with 6 DOFs, translations and
  rotations around three axes.
 Joints reduce the number of DOFs by
  constraining some translations or rotations.
 Robots classified by total number of DOFs
6-DOFs Robot Arm

                   How many
                   DOFs can
                   you identify in
                   your arm?
Robot::Effectors

 Component   to accomplish some desired
  physical function
 Examples:
    –   Hands
    –   Torch
    –   Wheels
    –   Legs
    –   Trumpet?

(Image from http://www.toyota.co.jp/en/special/robot/)
Roomba Effectors

 What   are the effectors of the Roomba?
Roomba Effectors

 What   are the effectors of the Roomba?




Vacuum, brushes, wheels
Robot::Actuators

 Actuatorsare the “muscles” of the robot.
 These can be electric motors, hydraulic
  systems, pneumatic systems, or any other
  system that can apply forces to the system.
Roomba Actuators

 TheRoomba has five actuators, all electric
 motors:
  –   Two drive wheels
  –   One drives the vacuum
  –   One drives the spinning side brush
  –   One drives the agitator (spinning brush
      underneath)
Differential Steering

 The  Roomba uses a differential steering
   system to turn and move forward. Each
   wheel is controlled by a distinct motor. Here,
   the Roomba rotates and moves forward.
         y




VL (t)               x

             VR(t)
Differential Steering

 The  Roomba uses a differential steering
   system to turn and move forward. Each
   wheel is controlled by a distinct motor. Here,
   the Roomba rotates and moves forward.
         y




VL (t)               x

             VR(t)
Differential Steering

 The  Roomba uses a differential steering
   system to turn and move forward. Each
   wheel is controlled by a distinct motor. Here,
   the Roomba rotates and moves forward.
         y




VL (t)               x

             VR(t)
Differential Steering!

 The  Roomba uses a differential steering
   system to turn and move forward. Each
   wheel is controlled by a distinct motor. Here,
   the Roomba rotates and moves forward.
         y




VL (t)               x

             VR(t)
Robot::Sensors

 Allow for perception.
 Sensors can be active or passive:
 Active – derive information from
  environment’s reaction to robot’s
  actions, e.g. bumpers and sonar.
 Passive – observers only, e.g. cameras and
  microphones .
Sensor Classes

 Rangefinders: these sensors are used to
 determine distances from other objects, e.g.
 bumpers, sonar, lasers, whiskers, and GPS.
Sensor Classes

 Imagingsensors: these create a visual
 representation of the world.
                            Here, a stereo
                            vision system
                            creates a depth
                            map for a Grand
                            Challenge
                            competitor.
                           From NOVA, www.pbs.org
Sensor Classes

 Proprioceptive   sensors: these provide
  information on the robot’s internal state, e.g.
  the position of its joints.
                               Shaft decoders
                               count revolutions,
                               allowing for
                               configuration data
                               and odometry.
Odometry

 Odometry    is the estimation of distance and
  direction from a previously visited location
  using the number of revolutions made by the
  wheels of a vehicle.
 Odometry can be considered a form of “Dead
  Reckoning*,” a more general position
  estimation based on time, speed, and
  heading from a known position.
*The Oxford English Dictionary does not recognize
“deductive reasoning” as the basis of “dead reckoning”
Odometry

 Odometry   is good for short term, relative
  position estimation.
 However, uncertainty grows, shown by error
  ellipses, without bound.
 This is due to
  systematic and
  non-systematic
  errors.
Odometry, Non-systematic Errors

 These  errors can rarely be measured and
  incorporated into the model.
 Error causes include uneven friction, wheel
  slippage, bumps, and uneven floors.
Odometry, Systematic Errors

 Errors arising from general differences in
  model and robot behavior that can be
  measured and accounted for in the
  model, a process known as calibration.
 Two primary sources:
   – Unequal wheel diameters – lead to
     curved trajectory
   – Uncertainty about wheel base – lead to
     errors in turn angle
Odometry, Position Updates

 With calibration, model behavior becomes
  more similar to observed behavior. However,
  estimation uncertainty still grows without
  bound.
 Position updates
  reduce uncertainty.
Kinematics

 The   calculation of position via odometry
  is an example of kinematics.
 Kinematics is the study of motion without
  regard for the forces that cause it.
 It refers to all time-based and geometrical
  properties of motion.
 It ignores concepts such as torque, force,
  mass, energy, and inertia.
Forward Kinematics

 Given  the starting configuration of the
  mechanism and joint angles, compute
  the new configuration.
 For a mechanism robot,
    this would mean
  calculating the position
     and orientation of the
        end effector given all
           the joint variables.
Kinematics of Differential Steering

Derivation:
                         X component of speed
                             Speed is average of vr & vl
                         Y component of speed


                         Arc change over radius

Integrate all:




This is the turn radius for a circular trajectory:
Kinematics of Differential Steering

 The   above model has an asymptote when

 When   this occurs, special handling is
  required.
 Or a simpler model can be used:
                  Here, SR and SL are measured
                  right and left velocities. This
                  approximates movement as a
                  “point-and-shoot.”
Kinematics of Differential Steering

 Simpler  approximations are often used
  when onboard computing power is
  lacking (or programmers are lazy!).
 However, the error grows quicker.
 A slightly better approximation:
Robot::Controller

 Controllersdirect a robot how to move.
 There are two controller paradigms
  –   Open-loop controllers execute robot movement
      without feedback.
  –   Closed-loop controllers
      execute robot movement
      and judge progress with
      sensors. They can thus
      compensate for errors.
Controller, Open-loop

                • Goal: Drive parallel to
                  the wall.
                • Feedback: None.
                • Result: Noisy movement,
                  due to slippage, model
                  inaccuracy, bumps, etcetera

                 is likely to cause the robot to
Controller, Closed-loop

                  • Goal: walk parallel to
                    the wall.
                  • Feedback: a proximity
                    sensor
                  • Result: the robot will
                    still veer away or
                    toward the wall, but
                    now it can compensate.
Trajectory Error Compensation

 Ifa robot is attempting to follow a path, it will
  typically veer off eventually. Controllers design
  to correct this error typically come in three types:
   –   P controllers provide force in negative proportion to
       measured error.
   –   PD controllers are P controllers that also add force
       proportional to the first derivative of measured error.
   –   PID controllers are PD controllers that also add force
       proportional to the integral of measured error.
Roomba Control

 The movement of the Roomba can be hard-
  coded ahead of time as an example of open-
  loop control.
 A path can be converted to Roomba wheel
  movement commands via inverse
  kinematics.
Inverse Kinematics

 Inverse   Kinematics is the reverse of Forward
  Kinematics. (!)
 It is the calculation of joint values given the
  positions, orientations, and geometries of
  mechanism’s parts.
 It is useful for planning how to move a robot
  in a certain way.
Kinematics-1 of Differential Steering

 Vehicles  using differential steering will
  go in a straight line if both wheels
  receive the same power.
 If both wheels turn at
  constant, but different,
  speeds, the vehicle
  follows a circular path
 Distances
  traveled:
Kinematics-1 of Differential Steering

 This  calculation ignores acceleration,
  but it can be used to calculate how to
  move a device using a differential
  steering system, such as a Roomba,
  along a path that consists of lines and
  arcs.
Potential Field Control

 Potentialfield control is similar to the hill-
  climbing algorithm.
 Given a goal position in a space, create an
  impulse to go from any position in the space
  toward the goal position.
 Add Repulsive forces wherever there are
  obstacles to be avoided.
 This does not require path planning.
Potential Field Soccer

1   moves
  toward the
  blue goal.
 1 avoids
  7, 6, and 8.
 Teammates
  generate
  attractive
  fields.
(image from http://www.itee.uq.edu.au/~dball/roboroos/about_robots.html)
Reactive Control

 Given  some sensor reading, take some
  action.
 This is the robotics version of a reflex agent
  design.
 It requires no model of the robot or the
  environment.
 Maze exiting:
   –   Keep Moving forward.
         If   bump, turn right.
Robot::Software Architecture

 Previous  control methods include
  deliberative methods and reactive methods.
  –   Deliberative methods are model-driven and
      involve planning before acting.
  –   Reactive methods is sensor-driven and behavior
      must emerge from interaction.
 Hybrid architectures are software
  architectures combining deliberative and
  reactive controllers.
  –   An example is path-planning and PD control.
Three-Layer Architecture

 The most popular hybrid software architecture
 is the three-layer architecture:
  –   Reactive layer – low-level control, tight sensor-action
      loop, decisions cycles (DCs) order of milliseconds.
  –   Executive layer – directives from deliberative layer
      sequenced for reactive layer, representing sensor
      information, localization, mapping, DCs order of
      seconds.
  –   Deliberative layer – generates global solutions to
      complex tasks, path planning, model-based
      planning, analyze sensor data represented by
      executive layer, DCs order of minutes.
Robot Ethics

                          0th) A robot may not harm humanity, or, by
Asimov’s                       inaction, allow humanity to come to
Three^H^H^H^H^H                harm.
Four Laws:                1st) A robot may not injure a human being
                               or, through inaction, allow a human
                               being to come to harm.
                          2nd) A robot must obey orders given it by
                               human beings except where such
                               orders would conflict with the First
                               Law.
                          3rd) A robot must protect its own existence
                               as long as such protection does not
                               conflict with the First or Second Law.
(Image from http://www.bmc.riken.jp/%7ERI-MAN/index_jp.html)
Fin

More Related Content

What's hot

Robotix & Industrial Robots
Robotix & Industrial RobotsRobotix & Industrial Robots
Robotix & Industrial Robotsparthbabariya151
 
Industrial robotics
Industrial roboticsIndustrial robotics
Industrial roboticsjjenishmech
 
Fundamentals of Robotics and Machine Vision System
Fundamentals of Robotics and Machine Vision SystemFundamentals of Robotics and Machine Vision System
Fundamentals of Robotics and Machine Vision Systemanand hd
 
Robot programming , accuracy ,repeatability and application
Robot programming , accuracy ,repeatability  and applicationRobot programming , accuracy ,repeatability  and application
Robot programming , accuracy ,repeatability and applicationvishaldattKohir1
 
Dek3223 chapter 3 industrial robotic
Dek3223 chapter 3 industrial roboticDek3223 chapter 3 industrial robotic
Dek3223 chapter 3 industrial roboticmkazree
 
Industrial robotics
Industrial roboticsIndustrial robotics
Industrial roboticsHome
 
visheshwar oraon robotics presentation
visheshwar oraon   robotics presentationvisheshwar oraon   robotics presentation
visheshwar oraon robotics presentationAkash Maurya
 
ROBOTICS- IMPLEMENTATION AND ROBOT ECONOMICS
ROBOTICS- IMPLEMENTATION AND ROBOT ECONOMICSROBOTICS- IMPLEMENTATION AND ROBOT ECONOMICS
ROBOTICS- IMPLEMENTATION AND ROBOT ECONOMICSTAMILMECHKIT
 
Industrial robots
Industrial robotsIndustrial robots
Industrial robotsOhgoma
 
Robot applications
Robot applicationsRobot applications
Robot applicationsanand hd
 
Industrial robot
Industrial robotIndustrial robot
Industrial robotJatin Garg
 
Robots and cars ca
Robots and cars caRobots and cars ca
Robots and cars caMISY
 

What's hot (20)

Unit 5 cim
Unit 5 cimUnit 5 cim
Unit 5 cim
 
Robotix & Industrial Robots
Robotix & Industrial RobotsRobotix & Industrial Robots
Robotix & Industrial Robots
 
Industrial robotics
Industrial roboticsIndustrial robotics
Industrial robotics
 
Fundamentals of Robotics and Machine Vision System
Fundamentals of Robotics and Machine Vision SystemFundamentals of Robotics and Machine Vision System
Fundamentals of Robotics and Machine Vision System
 
Robot programming , accuracy ,repeatability and application
Robot programming , accuracy ,repeatability  and applicationRobot programming , accuracy ,repeatability  and application
Robot programming , accuracy ,repeatability and application
 
Dek3223 chapter 3 industrial robotic
Dek3223 chapter 3 industrial roboticDek3223 chapter 3 industrial robotic
Dek3223 chapter 3 industrial robotic
 
Industrial robotics
Industrial roboticsIndustrial robotics
Industrial robotics
 
visheshwar oraon robotics presentation
visheshwar oraon   robotics presentationvisheshwar oraon   robotics presentation
visheshwar oraon robotics presentation
 
Robotics or Robot Technology
Robotics or Robot Technology Robotics or Robot Technology
Robotics or Robot Technology
 
Lecture 04: Sensors
Lecture 04: SensorsLecture 04: Sensors
Lecture 04: Sensors
 
Unit1 my preparation
Unit1 my preparationUnit1 my preparation
Unit1 my preparation
 
ROBOTICS- IMPLEMENTATION AND ROBOT ECONOMICS
ROBOTICS- IMPLEMENTATION AND ROBOT ECONOMICSROBOTICS- IMPLEMENTATION AND ROBOT ECONOMICS
ROBOTICS- IMPLEMENTATION AND ROBOT ECONOMICS
 
Robotics done
Robotics doneRobotics done
Robotics done
 
2. robotics
2. robotics2. robotics
2. robotics
 
ABB training report
ABB training reportABB training report
ABB training report
 
Industrial robots
Industrial robotsIndustrial robots
Industrial robots
 
Industrial robotics
Industrial roboticsIndustrial robotics
Industrial robotics
 
Robot applications
Robot applicationsRobot applications
Robot applications
 
Industrial robot
Industrial robotIndustrial robot
Industrial robot
 
Robots and cars ca
Robots and cars caRobots and cars ca
Robots and cars ca
 

Viewers also liked

Viewers also liked (20)

Introduction to Mobile Robotics
Introduction to Mobile RoboticsIntroduction to Mobile Robotics
Introduction to Mobile Robotics
 
Robot PowerPoint
Robot PowerPointRobot PowerPoint
Robot PowerPoint
 
Robots presentation
Robots presentationRobots presentation
Robots presentation
 
Basics of Robotics
Basics of RoboticsBasics of Robotics
Basics of Robotics
 
robotics ppt
robotics ppt robotics ppt
robotics ppt
 
Robotics project ppt
Robotics project pptRobotics project ppt
Robotics project ppt
 
Thesis - Mobile Robot for Weeding
Thesis - Mobile Robot for WeedingThesis - Mobile Robot for Weeding
Thesis - Mobile Robot for Weeding
 
Robotics Introduction
Robotics IntroductionRobotics Introduction
Robotics Introduction
 
Fractal Robots {EXTRA}
Fractal Robots {EXTRA}Fractal Robots {EXTRA}
Fractal Robots {EXTRA}
 
Presentation1
Presentation1Presentation1
Presentation1
 
Fractal Robots(difference between nano robots and fractal robots)
Fractal Robots(difference between nano robots and fractal robots)Fractal Robots(difference between nano robots and fractal robots)
Fractal Robots(difference between nano robots and fractal robots)
 
Fractal Robots
Fractal RobotsFractal Robots
Fractal Robots
 
Unit 1 - Introduction to robotics
Unit 1 - Introduction to roboticsUnit 1 - Introduction to robotics
Unit 1 - Introduction to robotics
 
Introduction to robotics
Introduction to roboticsIntroduction to robotics
Introduction to robotics
 
Introduction to Robotics
Introduction to RoboticsIntroduction to Robotics
Introduction to Robotics
 
electronics and robotics
electronics and roboticselectronics and robotics
electronics and robotics
 
basics of robotics
basics of roboticsbasics of robotics
basics of robotics
 
FIANL REPORT
FIANL REPORTFIANL REPORT
FIANL REPORT
 
Robotics
Robotics Robotics
Robotics
 
Introduction to robotics
Introduction  to roboticsIntroduction  to robotics
Introduction to robotics
 

Similar to Introduction to robotics

Robotics (CAD-CAM).pptx .
Robotics (CAD-CAM).pptx                    .Robotics (CAD-CAM).pptx                    .
Robotics (CAD-CAM).pptx .Athar739197
 
robot classification
robot classificationrobot classification
robot classificationMohit Jain
 
Robotics introduction by Pranav navathe
Robotics introduction by Pranav navatheRobotics introduction by Pranav navathe
Robotics introduction by Pranav navathePranavNavathe
 
Industrial Robotics Chap 01 Fundamentals
Industrial  Robotics  Chap 01  FundamentalsIndustrial  Robotics  Chap 01  Fundamentals
Industrial Robotics Chap 01 FundamentalsKevin Carvalho
 
introduction to robotics and embedded systems
introduction to robotics and embedded systemsintroduction to robotics and embedded systems
introduction to robotics and embedded systemsDirectorCentreforEne
 
Robot And it configuration
Robot And it configurationRobot And it configuration
Robot And it configurationDaniel raj
 
Humanoid robots - stability analysis and robustness
Humanoid robots - stability analysis and robustnessHumanoid robots - stability analysis and robustness
Humanoid robots - stability analysis and robustnessmegr1412
 

Similar to Introduction to robotics (20)

Robotics (CAD-CAM).pptx .
Robotics (CAD-CAM).pptx                    .Robotics (CAD-CAM).pptx                    .
Robotics (CAD-CAM).pptx .
 
Lecture 7 robotics and ai
Lecture 7   robotics and ai Lecture 7   robotics and ai
Lecture 7 robotics and ai
 
robot classification
robot classificationrobot classification
robot classification
 
robot_program.ppt
robot_program.pptrobot_program.ppt
robot_program.ppt
 
Robots
RobotsRobots
Robots
 
Lecture2
Lecture2Lecture2
Lecture2
 
Robotics introduction by Pranav navathe
Robotics introduction by Pranav navatheRobotics introduction by Pranav navathe
Robotics introduction by Pranav navathe
 
ROBOTICS - Introduction to Robotics
ROBOTICS -  Introduction to RoboticsROBOTICS -  Introduction to Robotics
ROBOTICS - Introduction to Robotics
 
Ie450pp8
Ie450pp8Ie450pp8
Ie450pp8
 
Ie450pp8
Ie450pp8Ie450pp8
Ie450pp8
 
Industrial Robotics Chap 01 Fundamentals
Industrial  Robotics  Chap 01  FundamentalsIndustrial  Robotics  Chap 01  Fundamentals
Industrial Robotics Chap 01 Fundamentals
 
robotics1.ppt
robotics1.pptrobotics1.ppt
robotics1.ppt
 
Robotics1.ppt
Robotics1.pptRobotics1.ppt
Robotics1.ppt
 
ie450pp8.ppt
ie450pp8.pptie450pp8.ppt
ie450pp8.ppt
 
introduction to robotics and embedded systems
introduction to robotics and embedded systemsintroduction to robotics and embedded systems
introduction to robotics and embedded systems
 
Robot And it configuration
Robot And it configurationRobot And it configuration
Robot And it configuration
 
Unit I_dany (1).pptx
Unit I_dany (1).pptxUnit I_dany (1).pptx
Unit I_dany (1).pptx
 
Humanoid robots - stability analysis and robustness
Humanoid robots - stability analysis and robustnessHumanoid robots - stability analysis and robustness
Humanoid robots - stability analysis and robustness
 
Project Presentation Nus
Project Presentation NusProject Presentation Nus
Project Presentation Nus
 
Project Presentation Nus
Project Presentation NusProject Presentation Nus
Project Presentation Nus
 

Introduction to robotics

  • 1. Introduction to Robotics Talk the Talk
  • 2. What is a robot? "I can't define a robot, but I know one when I see one." -Joseph Engelberger A robot is a machine built for real-world functions that is computer-controlled… …maybe. Right: Roomba microprocessor (from HowStuffWorks)
  • 3. Who’s to say?  Many devices with varying degrees of autonomy are called robots.  Many different definitions for robots exist.  Some consider machines wholly controlled by an operator to be robots.  Others require a machine be easily reprogrammable.
  • 4. Japan?1  Manual-Handling Device: controlled by operator  Fixed-Sequence Robot: mechanical action sequence  Variable-Sequence Robot: as 2 but modifiable  Playback Robot: imitates human actions  Numerical Control Robot: run by movement program  Intelligent Robot: reactive to environment 1: Japanese Industrial Robot Association
  • 5. America and Europe?  “a programmable, multifunction manipulator…” -RIA2  “an independently acting and self controlling machine…” -ECM3 2: Robotics Institute of America 3: European Common Market
  • 6. Robot Classes  Manipulators: robotic arms. These are most commonly found in industrial settings.  Mobile Robots: unmanned vehicles capable of locomotion.  Hybrid Robots: mobile robots with manipulators. (Images from AAAI and HowStuffWorks, respectively)
  • 7. Robot Components  Body  Effectors  Actuators  Sensors  Controller  Software
  • 8. Robot::Body  Typically defined as a graph of links and joints: A link is a part, a shape with physical properties. A joint is a constraint on the spatial relations of two or more links.
  • 9. Types of Joints Respectively, a ball joint, which allows rotation around x, y, and z, a hinge joint, which allows rotation around z, and a slider joint, which allows translation along x. These are just a few examples…
  • 10. Degrees of Freedom  Joints constraint free movement, measured in “Degrees of Freedom” (DOFs).  Links start with 6 DOFs, translations and rotations around three axes.  Joints reduce the number of DOFs by constraining some translations or rotations.  Robots classified by total number of DOFs
  • 11. 6-DOFs Robot Arm How many DOFs can you identify in your arm?
  • 12. Robot::Effectors  Component to accomplish some desired physical function  Examples: – Hands – Torch – Wheels – Legs – Trumpet? (Image from http://www.toyota.co.jp/en/special/robot/)
  • 13. Roomba Effectors  What are the effectors of the Roomba?
  • 14. Roomba Effectors  What are the effectors of the Roomba? Vacuum, brushes, wheels
  • 15. Robot::Actuators  Actuatorsare the “muscles” of the robot.  These can be electric motors, hydraulic systems, pneumatic systems, or any other system that can apply forces to the system.
  • 16. Roomba Actuators  TheRoomba has five actuators, all electric motors: – Two drive wheels – One drives the vacuum – One drives the spinning side brush – One drives the agitator (spinning brush underneath)
  • 17. Differential Steering  The Roomba uses a differential steering system to turn and move forward. Each wheel is controlled by a distinct motor. Here, the Roomba rotates and moves forward. y VL (t) x VR(t)
  • 18. Differential Steering  The Roomba uses a differential steering system to turn and move forward. Each wheel is controlled by a distinct motor. Here, the Roomba rotates and moves forward. y VL (t) x VR(t)
  • 19. Differential Steering  The Roomba uses a differential steering system to turn and move forward. Each wheel is controlled by a distinct motor. Here, the Roomba rotates and moves forward. y VL (t) x VR(t)
  • 20. Differential Steering!  The Roomba uses a differential steering system to turn and move forward. Each wheel is controlled by a distinct motor. Here, the Roomba rotates and moves forward. y VL (t) x VR(t)
  • 21. Robot::Sensors  Allow for perception.  Sensors can be active or passive:  Active – derive information from environment’s reaction to robot’s actions, e.g. bumpers and sonar.  Passive – observers only, e.g. cameras and microphones .
  • 22. Sensor Classes  Rangefinders: these sensors are used to determine distances from other objects, e.g. bumpers, sonar, lasers, whiskers, and GPS.
  • 23. Sensor Classes  Imagingsensors: these create a visual representation of the world. Here, a stereo vision system creates a depth map for a Grand Challenge competitor. From NOVA, www.pbs.org
  • 24. Sensor Classes  Proprioceptive sensors: these provide information on the robot’s internal state, e.g. the position of its joints. Shaft decoders count revolutions, allowing for configuration data and odometry.
  • 25. Odometry  Odometry is the estimation of distance and direction from a previously visited location using the number of revolutions made by the wheels of a vehicle.  Odometry can be considered a form of “Dead Reckoning*,” a more general position estimation based on time, speed, and heading from a known position. *The Oxford English Dictionary does not recognize “deductive reasoning” as the basis of “dead reckoning”
  • 26. Odometry  Odometry is good for short term, relative position estimation.  However, uncertainty grows, shown by error ellipses, without bound.  This is due to systematic and non-systematic errors.
  • 27. Odometry, Non-systematic Errors  These errors can rarely be measured and incorporated into the model.  Error causes include uneven friction, wheel slippage, bumps, and uneven floors.
  • 28. Odometry, Systematic Errors  Errors arising from general differences in model and robot behavior that can be measured and accounted for in the model, a process known as calibration.  Two primary sources: – Unequal wheel diameters – lead to curved trajectory – Uncertainty about wheel base – lead to errors in turn angle
  • 29. Odometry, Position Updates  With calibration, model behavior becomes more similar to observed behavior. However, estimation uncertainty still grows without bound.  Position updates reduce uncertainty.
  • 30. Kinematics  The calculation of position via odometry is an example of kinematics.  Kinematics is the study of motion without regard for the forces that cause it.  It refers to all time-based and geometrical properties of motion.  It ignores concepts such as torque, force, mass, energy, and inertia.
  • 31. Forward Kinematics  Given the starting configuration of the mechanism and joint angles, compute the new configuration.  For a mechanism robot, this would mean calculating the position and orientation of the end effector given all the joint variables.
  • 32. Kinematics of Differential Steering Derivation: X component of speed Speed is average of vr & vl Y component of speed Arc change over radius Integrate all: This is the turn radius for a circular trajectory:
  • 33. Kinematics of Differential Steering  The above model has an asymptote when  When this occurs, special handling is required.  Or a simpler model can be used: Here, SR and SL are measured right and left velocities. This approximates movement as a “point-and-shoot.”
  • 34. Kinematics of Differential Steering  Simpler approximations are often used when onboard computing power is lacking (or programmers are lazy!).  However, the error grows quicker.  A slightly better approximation:
  • 35. Robot::Controller  Controllersdirect a robot how to move.  There are two controller paradigms – Open-loop controllers execute robot movement without feedback. – Closed-loop controllers execute robot movement and judge progress with sensors. They can thus compensate for errors.
  • 36. Controller, Open-loop • Goal: Drive parallel to the wall. • Feedback: None. • Result: Noisy movement, due to slippage, model inaccuracy, bumps, etcetera is likely to cause the robot to
  • 37. Controller, Closed-loop • Goal: walk parallel to the wall. • Feedback: a proximity sensor • Result: the robot will still veer away or toward the wall, but now it can compensate.
  • 38. Trajectory Error Compensation  Ifa robot is attempting to follow a path, it will typically veer off eventually. Controllers design to correct this error typically come in three types: – P controllers provide force in negative proportion to measured error. – PD controllers are P controllers that also add force proportional to the first derivative of measured error. – PID controllers are PD controllers that also add force proportional to the integral of measured error.
  • 39. Roomba Control  The movement of the Roomba can be hard- coded ahead of time as an example of open- loop control.  A path can be converted to Roomba wheel movement commands via inverse kinematics.
  • 40. Inverse Kinematics  Inverse Kinematics is the reverse of Forward Kinematics. (!)  It is the calculation of joint values given the positions, orientations, and geometries of mechanism’s parts.  It is useful for planning how to move a robot in a certain way.
  • 41. Kinematics-1 of Differential Steering  Vehicles using differential steering will go in a straight line if both wheels receive the same power.  If both wheels turn at constant, but different, speeds, the vehicle follows a circular path  Distances traveled:
  • 42. Kinematics-1 of Differential Steering  This calculation ignores acceleration, but it can be used to calculate how to move a device using a differential steering system, such as a Roomba, along a path that consists of lines and arcs.
  • 43. Potential Field Control  Potentialfield control is similar to the hill- climbing algorithm.  Given a goal position in a space, create an impulse to go from any position in the space toward the goal position.  Add Repulsive forces wherever there are obstacles to be avoided.  This does not require path planning.
  • 44. Potential Field Soccer 1 moves toward the blue goal.  1 avoids 7, 6, and 8.  Teammates generate attractive fields. (image from http://www.itee.uq.edu.au/~dball/roboroos/about_robots.html)
  • 45. Reactive Control  Given some sensor reading, take some action.  This is the robotics version of a reflex agent design.  It requires no model of the robot or the environment.  Maze exiting: – Keep Moving forward.  If bump, turn right.
  • 46. Robot::Software Architecture  Previous control methods include deliberative methods and reactive methods. – Deliberative methods are model-driven and involve planning before acting. – Reactive methods is sensor-driven and behavior must emerge from interaction.  Hybrid architectures are software architectures combining deliberative and reactive controllers. – An example is path-planning and PD control.
  • 47. Three-Layer Architecture  The most popular hybrid software architecture is the three-layer architecture: – Reactive layer – low-level control, tight sensor-action loop, decisions cycles (DCs) order of milliseconds. – Executive layer – directives from deliberative layer sequenced for reactive layer, representing sensor information, localization, mapping, DCs order of seconds. – Deliberative layer – generates global solutions to complex tasks, path planning, model-based planning, analyze sensor data represented by executive layer, DCs order of minutes.
  • 48. Robot Ethics 0th) A robot may not harm humanity, or, by Asimov’s inaction, allow humanity to come to Three^H^H^H^H^H harm. Four Laws: 1st) A robot may not injure a human being or, through inaction, allow a human being to come to harm. 2nd) A robot must obey orders given it by human beings except where such orders would conflict with the First Law. 3rd) A robot must protect its own existence as long as such protection does not conflict with the First or Second Law. (Image from http://www.bmc.riken.jp/%7ERI-MAN/index_jp.html)
  • 49. Fin