2. ROBOTICS
• Robots are physical agents that perform tasks by manipulating the
physical world.
• they are equipped with
• Effectors
• legs, wheels, joints, and grippers.
• Sensors
• cameras and lasers to measure the environment, and gyroscopes and accelerometers
to measure the robot’s own motion
3. Robotics and AI
• AI provides the means to embed intelligence into a physical robot,
where a robot provides the means to visualize the behavior that is
provided by an AI algorithm. Therefore, the two disciplines
complement one another.
4. What is a Robot?
• ISO (International Standard) 8373 defines a robot this way:
• An automatically controlled, reprogrammable, multipurpose, manipulate
programmable in three or more axes, which may be either fixed in place or
mobile for use in industrial automation applications.
• Another way to define a robot is through its decomposition.
• A robot is an entity that satisfies some goal and is made up of a platform
(consisting of some form of mechanicals), a source of power (stored, or
gathered in real-time), a set of sensors to perceive the environment, a set of
actuators to move and/or manipulate the environment, and finally, a source
of intelligence for rational decision making
5. ROBOTICS
• Most of today’s robots fall into one of three primary categories.
• Manipulators, or robot arms
12. Sensors
• What is important is to find the right sensor for a particular application.
• The right measurement technique
• The right size and weight
• The right operating temperature range
• Power consumption
• The right price range
• Data transfer from the sensor to the CPU
• CPU initiated polling
• Sensor initiated interrupt
15. Analog versus Digital Sensors
• More sensors produce analog signals rather than digital signals.
• Need A/D converter
• Ex:
• Microphone
• Analog infrared distance sensor
• Analog compass
• Barometer sensor
• Digital sensors
• More accurate and more complex
• Analog sensor packed with A/D converter
• Output parallel interface, serial interface or synchronous serial
16. Sensors (Shaft encoders)
• Fundamental feedback sensor for motor control
• Most popular types magnetic encoders , optical encoders
• Magnetic encoders
• Hall-effect sensor and a rotating disk on the motor shaft with a number of
magnets (16 magnets for 16 pulses or ticks)
• Optical encoders
• A sector disk with black and white segments together with a LED and photo-
diode.
• 16 white and 16 black segments (for 16 pulses)
17. Sensors (Shaft encoders)
• Incremental encoders they can only count the number of
segments.
• They are not capable of locating absolute position of the motor shaft.
• Solution: Gray code disk with set of sensors.
• 3 sensors (23 = 8 sectors)
18. Sensors (Shaft encoders)
• To detect that the motor shaft is moving clockwise or counter-
clockwise, two sensors are used.
If encoder 1 receives the signal
first, then the motion is
clockwise; if encoder 2 receives
the signal first, then the motion is
counter-clockwise
19. A/D Convertor
• Convert an analog signal into a digital signal.
• Characteristics of an A/D convertor
20. A/D Convertor
Two types of interfaces:
Parallel interface or a synchronous serial interface
(the latter has the advantage it does not impose any limitations on
the number of bits per measurement)
21. Position Sensitive Device
• In the past, most robots have been equipped with sonar sensors.
• A typical configuration to cover the whole circumference of a round
robot required 24 sensors, mapping about 15° each.
• Measurements are repeated about 20 times per second
22. Position Sensitive Device
• Sonar sensors have been replaced by either infrared sensors or laser
sensors.
• Laser sensor
• Perfect local 2D map from the viewpoint of the robot, or even a complete 3D
distance map.
• Too large and heavy
• Too expensive
• IR PSD (Position Sensitive Detector)
• Cannot measure less than 6cm
• IR proximity sensor
• Cover obstacles closer than 6cm
Infrared sensor
(PSD)
23. Compass
• How to track the robot’s position and orientation.
• Standard method:
• “dead reckoning” using shaft encoders
• Error will grow lager and lager over time (ex: wheel slippage)
• Global positioning system (GPS)
• The simplest modules are analog compasses that can only distinguish
eight directions, which are represented by different voltage levels.
• Digital compasses are considerably more complex, but also provide a
much higher directional resolution.
24. Gyroscope, Accelerometer, Inclinometer
• Accelerometer
Measuring the acceleration along one axis.
• Gyroscope
Measuring the rotational change of orientation about one axis.
• Inclinometer
Measuring the absolute orientation angle about one axis
25. Digital Camera
• Digital cameras are the most complex sensors used in robotics.
• For mobile robot applications, we are interested in a high frame rate,
because our robot is moving and we want updated sensor data as fast
as possible.
• Since there is always a trade-off between high frame rate and high
resolution, we are not so much concerned with camera resolution.
27. DC Motors
• DC electric motors are arguably the most commonly used method for
locomotion in mobile robots.
• Standard DC motors revolve freely.
• Motor–encoder combination
28. H-Bridge
• For most applications we want to be able to do two things with a motor:
1. Run it in forward and backward directions.
2. Modify its speed.
• An H-bridge is what is needed to enable a motor to run forward/backward.
(“pulse width modulation” to change the motor speed. )
29. H-Bridge
• There are two principal ways of stopping the motor:
• set both x and y to logic 0 (or both to logic 1) or
• set speed to 0
31. Stepper Motors
• Stepper motors differ from standard DC motors in such a way that
they have two independent coils (or four) which can be
independently controlled.
• A typical number of steps per revolution is 200, resulting in a step size
of 1.8°.
• Some stepper motors allow half steps, resulting in an even finer step
size.
32. Servos
• A servo has three wires: VCC, ground, and the PW input control
signal.
• Unlike PWM for DC motors, the input pulse signal for servos is not
transformed into a velocity.
• It is an analog control input to specify the desired position of the
servo’s rotating disk head.
• Internally, a servo combines a DC motor with a simple feedback
circuit, often using a potentiometer sensing the servo head’s current
position.
33. Servos
• The width of each pulse specifies the desired position of the servo’s
disk.
34. What is a Robot?
• A robot from the perspective of decomposition
35. Taxonomy of Robotics
• Fixed
• Many of the industrial robots in use today are of the fixed variety. Robotic arms
perform assembly and welding to very precise specifications, repeatedly without
mistakes. These robotic arms include a manipulator or tool at their extremity and
one or more joints to give the arm the ability to move around in its space.
• Legged
• The legged variety of robot can also be called the walking or hopping style of robot.
Robots with one leg (called monopods, such as the one built at the MIT Leg
Laboratory) hop in a style similar to a pogo stick. Bipedal robots (those with two legs)
mimic human locomotion (such as Asimo). But more legs are also interesting, such as
quadrupeds (four legs), hexapods (six legs), and octapods (eight legs).
36. Taxonomy of Robotics
• Wheeled
• A popular variety of robot given its simplicity is the mobile, or wheeled robot.
Hobbyist robotic platforms are commonly of this design due not just to its
simplicity, but the minimal cost. The control of the mobile platform is
relatively simple when compared to a legged variety of robot. For example, a
mobile robot is stable without control, where a legged robot must
dynamically balance to be stable.
• Underwater
• Underwater robots are very useful, but require different forms of locomotion.
Many tele-robots of this variety are called ROVs, or Remotely Operated
Vehicles.
37. Taxonomy of Robotics
• Aerial
Robots of the aerial variety, like underwater robots, have a number of
different mechanisms for movement. For example, traditional aerial
robots can use common aircraft models (such as a plane or
heliocopter). Satellites are another example of an aerial robot, though
they have an entirely different set of sensors and actuators (sun
sensors, gyroscopes for sensing, momentum wheels, and thrusters for
effectors).
38. Taxonomy of Robotics
• Other Types of Robots
• Polymorphic, or shape-changing, robots have the ability to self-reconfigure
based on the particular task at hand.
• Distributed robots, or robot swarms, are another interesting aspect of
robotics. In this model, multiple robots swarm together to perform a task.
This can be viewed serially (such as ants cooperating to move food from a
location back to the nest) or at the same time (such as working together to
move an object that an individual robot could not move). Robot swarms are
an interesting area of research today, including topics such as task distribution
and communication.
39. ROBOTIC CONTROL SYSTEMS
An important aspect of robotic control systems
If the robot were to try to control the environment with
sensors, this would be called an open loop (as there’s no
feedback, there’s no way to guarantee proper action).
40. SIMPLE CONTROL ARCHITECTURES
• Robotic platforms can use a large number of control architectures to
achieve their desired goals.
• The key to control architectures is that no single architecture is best.
Each are applicable to different scenarios, and the architecture should
match the problem at hand.
41. Reactive Control
• The reactive control architecture is one where there’s no real
intelligence. Instead, the control system reacts to its sensors and
drives its actuators (simple stimulus-response).
The reactive control system architecture.
42. Reactive Control
• In this architecture, the sensors are read and directly mapped to the
effectors.
• An advantage to this architecture is that it’s very simple and very fast.
• This architecture is also very useful in dynamic environments. Since
the robot simply responds to the immediate environment, it can react
equally well to static or dynamic environments.
• The disadvantage to this architecture is that it’s fundamentally
unintelligent and has no capacity to learn.
43. Subsumption
• Rodney Brook’s subsumption architecture grew from the belief that
human-level intelligence could not be built from the ground up, but
instead must be built from simple behaviors that collectively could
exhibit emergent higher-level behavior.
The subsumption control system architecture.
44. Subsumption
• The sensors are provided to the behaviors, and the effectors are driven by the
behaviors.
• For example, if no objects are in the area of movement, then the upper-level
module may subsume control. In this case, the explore behavior will have control.
But if the robot is low on power, then the seek power behavior can subsume the
explore behavior. While the robot is seeking power, the object avoidance
behavior can take control if needed (if an object is in the area of movement).
• The subsumption architecture is advantageous over the reactive architecture
because it can incorporate more complex goal-oriented behaviors.
• The development of real robots using subsumption found that a large number of
behaviors resulted in highly complex systems that were difficult to debug.
46. Single Wheel Drive
• Having a single wheel that is both driven and steered is the simplest
conceptual design for a mobile robot.
• Two passive caster wheels in the back.
47. Differential Drive
• The differential drive design has two motors mounted in fixed
positions on the left and right side of the robot, independently driving
one wheel each.
49. Tracked Robots
• A tracked mobile robot can be seen as a special case of a wheeled
robot with differential drive.
50. Synchro-Drive
• Synchro-drive is an extension to the robot design with a single driven
and steered wheel.
• The three wheels are rotated together so they always point in the
same driving direction.
51. Ackermann Steering
• The standard drive and steering system of an automobile are two
combined driven rear wheels and two combined steered front
wheels.
53. Omni-directional robot
• Above robots cannot drive in all possible directions.
• For this reason, these robots are called “non-holonomic”.
• In contrast, a “holonomic” or omni-directional robot is capable of
driving in any direction.
• They are capable of driving in any direction in a 2D plane.
54. Mecanum Wheels
• This wheel design has been developed and patented by the Swedish
company Mecanum AB with Bengt Ilon in 1973
61. Localization and Navigation
• Localization and navigation are the two most important tasks for
mobile robots.
• We want to know where we are, and we need to be able to make a
plan for how to reach a goal destination.
• Localization, navigation, and mapping (in past)
• Whole problem complex at once
• SLAM (simultaneous localization and mapping)
62. Localization
• we need to know a robot’s position and orientation at all times.
• The localization problem can be solved by using a global positioning
system.
• Outdoor setting the satellite-based GPS
• In an indoor setting a global sensor network with infrared, sonar,
laser, or radio
64. Localization
• Using two beacons can narrow down the robot position to two
possibilities.
• Only the robot’s position can be determined by this method, not its
orientation.
• The orientation has to be deducted from the change in position
(difference between two subsequent positions)
• How to use local sensors:
• The sonar sensors can be mounted on the robot and the beacons are converted
to reflective markers, then we have an autonomous robot with local sensors.
• Another idea is to use light emitting homing beacons instead of sonar beacons.
65. Localization
• Homing beacons
• The robot has either to perform a 360° rotation, or to possess an omni-
directional vision system that allows it to determine the angle of a recognized
light beacon.
• The robot can determine its position and orientation.
66. Localization
• Dead reckoning
• Dead reckoning is a nautical term from the 1700s when ships did not have
modern navigation equipment.
• Dead reckoning can be described as local polar coordinates, or more
practically as turtle graphics geometry.
68. Dijkstra’s Algorithm
• Description
Algorithm for computing all shortest paths from a given starting node in a
fully connected graph.
• Required:
Relative distance information between all nodes; distances must not be
negative.
• Algorithm
Start “ready set” with start node. In loop select node with shortest distance
in every step, then compute distances to all of its neighbors and store path
predecessors. Add current node to “ready set”; loop finishes when all nodes
are included.
69. A* Algorithm
• Description
Pronounced “A-Star”; heuristic algorithm for computing the shortest
path from one given start node to one given goal node.
• Required
Relative distance information between all nodes plus lower bound of
distance to goal from each node (e.g. air-line or linear distance).
• Algorithm
Maintain sorted list of paths to goal, in every step expand only the
currently shortest path by adding adjacent node with shortest distance
(including estimate of remaining distance to goal)
70. Potential Field Method
• Description
Global map generation algorithm with virtual forces.
• Required
Start and goal position, positions of all obstacles and walls.
• Algorithm
Generate a map with virtual attracting and repelling forces. Start point,
obstacles, and walls are repelling, goal is attracting; force strength is
inverse to object distance; robot simply follows force field.
72. Wandering Standpoint Algorithm
• Description
Local path planning algorithm.
• Required
Local distance sensor.
• Algorithm
Try to reach goal from start in direct line. When encountering an
obstacle, measure avoidance angle for turning left and for turning right,
turn to smaller angle. Continue with boundary-following around the
object, until goal direction is clear again.
74. DistBug Algorithm
• Description
Local planning algorithm that guarantees convergence and will find
path if one exists.
• Required
Own position (odometry), goal position, and distance sensor data.
• Algorithm
Drive straight towards the goal when possible, otherwise do boundary-
following around an obstacle. If this brings the robot back to the same
previous collision point with the obstacle, then the goal is unreachable