robot control
DESCRIPTION
Nattee Niparnan. Robot Control. Behavior Based Robotic. Towards Autonomous Robot. A robot that can “think” how to perform the task. Autonomous?. Able to do things by itself. Robot Control System A system that decide what / when / how to do a particular thing to achieve the given task. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/1.jpg)
ROBOT CONTROLNattee Niparnan
![Page 2: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/2.jpg)
Behavior Based Robotic
![Page 3: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/3.jpg)
Towards Autonomous Robot A robot that can “think” how to perform
the task
![Page 4: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/4.jpg)
Autonomous? Able to do things by itself.
Robot Control SystemA system that decide what / when / how to
do a particular thing to achieve the given task
![Page 5: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/5.jpg)
Hierarchy of Control Reductionism
Follow the white rabbit
Get dress walk to the pub talk
choose a shirt wear a shirt
Move a hand to wardrobe
![Page 6: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/6.jpg)
Robot = ??? “ A device that connects sensing to
actuation in an intelligent way”
Intelligent
![Page 7: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/7.jpg)
Model-Based approach Sense Plan Act
![Page 8: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/8.jpg)
Model-Based approach Understand the world Planning according to the state of the
world Result in rules for actions
If … then …If … then …..
![Page 9: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/9.jpg)
Remember the Shakey?
![Page 10: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/10.jpg)
Robot Control Issue Model of the world? Robust?
![Page 11: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/11.jpg)
Problem of model based It seems reasonable Does it work well in practice?
Model can hardly be realizedModel based is more appropriated with
structured environmentParallel nature?GIGO issue
![Page 12: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/12.jpg)
Problem of model based Example,
Self Charging○ Walk to beacon○ Engage charger approach maneuver○ Plug-in○ stop
What if we are near the charger?
![Page 13: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/13.jpg)
Problem of model based What if we are near the charger?
Does our plan cover this case?
Coupling between requirementUsually bug prone
Model based is sometime “computer oriented”
![Page 14: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/14.jpg)
Computer vs. Robot All computers are equivalent (turing
machine) Any two robots are different
![Page 15: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/15.jpg)
Truth about Robot Robots have sensors that measure the
aspect of external worlds Robots have actuators that can act on the
robot and on the world The output of a robot’s sensors always
includes noise and other errors The commands given to a mobile robot’s
actuators are never executed faithfully.
![Page 16: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/16.jpg)
Sensing For us (human)… For them (robot)…
![Page 17: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/17.jpg)
Actuation Electrical signal Physical quantity
Always has some error
![Page 18: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/18.jpg)
Intelligence Robot design + Robot’s Program + Robot’s
environment = Robot’s Intelligence
![Page 19: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/19.jpg)
Mobile vs. Immobile Robots
![Page 20: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/20.jpg)
Mobile vs. Immobile RobotsMobile ImmobileUnknown world
Dynamic Environment
Localization and mapping problem
Highly structured world
Static Environment
![Page 21: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/21.jpg)
Example Collecting a puck and put it into light
![Page 22: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/22.jpg)
Tasks Show gizmo and collection tasks in Bsim
What we have as a low level command?
![Page 23: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/23.jpg)
Behavior based control What are used in Gizmo
![Page 24: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/24.jpg)
Example of Behavior Based
![Page 25: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/25.jpg)
Behavior based robotics
![Page 26: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/26.jpg)
Behavior based robotics Reflexive
Shortest time from sense act Carefully engineered the reflex to
actually perform the task
![Page 27: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/27.jpg)
Principle World = what robot sees Plan less
Check Act more Be highly adaptable to change
Agility?
![Page 28: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/28.jpg)
Intro to Control
![Page 29: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/29.jpg)
Lower Level Control Given desired output Find input that yield such output
![Page 30: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/30.jpg)
System
Input
U
Black Box(grey box)
System
Output
Y
![Page 31: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/31.jpg)
Control We hardly understand our system The mathematical model
“approximately” describe the system There always be some error There might be some unknown rule!
![Page 32: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/32.jpg)
Example Do we know the speed of motor
If we apply some specific voltage?Without actually measuring?i.e., forward computation
We have all the theory, right?
![Page 33: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/33.jpg)
So what? If we don’t really understand the system
How do we calculate U for given Y?
I want my motor to spin at 200rpmWhat voltage should I put?
Who knows?
![Page 34: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/34.jpg)
The Solution Control System
Open loopClosed loop
![Page 35: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/35.jpg)
Control System Open loop
![Page 36: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/36.jpg)
Open Loop Just supply input
From the model
ExampleLight bulbElectric fan
![Page 37: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/37.jpg)
Open Loop Neglect input
Hence, does not adapt itself to the worldVery simpleEasily failed
Work perfectly if we know perfect model of the systemWhich is not usually the case
![Page 38: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/38.jpg)
Control System Open loop
![Page 39: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/39.jpg)
Control System Closed loop
![Page 40: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/40.jpg)
Feedback Control Very important to accommodate error We already did that all the time
Your bodyYour brainYour eco system
![Page 41: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/41.jpg)
Trichotomy Measurement Yes More Less
![Page 42: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/42.jpg)
Proportional Controller Feedback with degree Include error of the output
Multiply by the proportion of the error○ i.e., gain of the control
![Page 43: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/43.jpg)
Closed-Loop Control Example Position Control
![Page 44: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/44.jpg)
BSim Gizmo task
![Page 45: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/45.jpg)
Problems Slow to adapt
Solve by increase gain
![Page 46: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/46.jpg)
BSim again Try to increase gain
![Page 47: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/47.jpg)
Control System Catastrophe
![Page 48: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/48.jpg)
Latency Problem Result from the control does not actually
reflect the current state
Lead to instabilitySometime to catastrophe
![Page 49: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/49.jpg)
Control System Stability
![Page 50: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/50.jpg)
PID Controller
![Page 51: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/51.jpg)
PID Controller Proportional Part
Normal close loop Differential Part
Adjust input by the differential of the error Integral Part
Adjust input by the
![Page 52: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/52.jpg)
Tuning PID Adjust P to converge
![Page 53: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/53.jpg)
Tuning PID Add D to solve overshoot
![Page 54: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/54.jpg)
Tuning PID Add I to solve Steady State
![Page 55: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/55.jpg)
Tuning PID Actually an black-art
Tuning the knob has highly coupling effect
Let’s try it
![Page 56: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/56.jpg)
Tuning PID summaryChange in parameter
Rise Time Overshoot S-S Error Settling Time
Increase P Less More Less Minor
Increase D Less More Eliminate More
Increase I Minor Less Minor Less
![Page 57: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/57.jpg)
Saturation, Backlash, Dead Zone
![Page 58: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/58.jpg)
Saturation, Backlash, Dead Zone
![Page 59: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/59.jpg)
Open Loop Enhancement Parameters States
![Page 60: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/60.jpg)
Bang-Bang Controller
![Page 61: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/61.jpg)
Hysteresis
![Page 62: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/62.jpg)
More control scheme Feed forward Predictive Adaptive
![Page 63: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/63.jpg)
Dynamic System Even if we perfectly understand the
system, it is still not trivial to achieve good control
![Page 64: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/64.jpg)
Example We can solve for u for a given y
Inputu
System with perfect
knowledge
Outputy
![Page 65: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/65.jpg)
Example Taken from Stephen Boyd class Input 2 dimension Output 2 dimension x˙ = Ax + Bu, y = Cx, x(0) = 0
Differential equation
Says, we want y = (1,-2) We can solve u to be (-0.63,36)
![Page 66: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/66.jpg)
Use the simple
![Page 67: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/67.jpg)
Example
![Page 68: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/68.jpg)
Final Words You cannot learn how to program robot
from looking at this slide BSim?
What works well in sim does not always works well in practice
Let’s do LEGO!
![Page 69: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/69.jpg)
Introduce Lego Mindstorm
![Page 70: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/70.jpg)
![Page 71: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/71.jpg)
![Page 72: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/72.jpg)
![Page 73: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/73.jpg)
![Page 74: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/74.jpg)
![Page 75: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/75.jpg)
![Page 76: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/76.jpg)
![Page 77: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/77.jpg)
Example Show example of Roverbot
PushbotGuardbotExplorerMozart
![Page 78: Robot Control](https://reader035.vdocument.in/reader035/viewer/2022062411/568166c2550346895ddace8a/html5/thumbnails/78.jpg)
Assignment Pick a robot from LEGO kit Do something with it It’s 10%