+ All Categories
Home > Documents > Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Date post: 30-Mar-2015
Category:
Upload: peter-partain
View: 222 times
Download: 0 times
Share this document with a friend
Popular Tags:
78
ROBOT CONTROL Nattee Niparnan
Transcript
Page 1: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

ROBOT CONTROLNattee Niparnan

Page 2: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Behavior Based Robotic

Page 3: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Towards Autonomous Robot A robot that can “think” how to perform

the task

Page 4: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

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: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

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: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Robot = ???

“ A device that connects sensing to actuation in an intelligent way”

Intelligent

Page 7: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Model-Based approach

Sense Plan Act

Page 8: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

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: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Remember the Shakey?

Page 10: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Robot Control Issue

Model of the world? Robust?

Page 11: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

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: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

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: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

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: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Computer vs. Robot

All computers are equivalent (turing machine)

Any two robots are different

Page 15: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

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: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Sensing For us (human)… For them (robot)…

Page 17: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Actuation

Electrical signal Physical quantityAlways has some error

Page 18: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Intelligence Robot design + Robot’s Program + Robot’s

environment = Robot’s Intelligence

Page 19: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Mobile vs. Immobile Robots

Page 20: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Mobile vs. Immobile RobotsMobile Immobile

Unknown world

Dynamic Environment

Localization and mapping problem

Highly structured world

Static Environment

Page 21: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Example

Collecting a puck and put it into light

Page 22: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Tasks

Show gizmo and collection tasks in Bsim

What we have as a low level command?

Page 23: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Behavior based control

What are used in Gizmo

Page 24: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Example of Behavior Based

Page 25: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Behavior based robotics

Page 26: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Behavior based robotics

ReflexiveShortest time from sense act

Carefully engineered the reflex to actually perform the task

Page 27: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Principle

World = what robot sees Plan less

Check Act more Be highly adaptable to change

Agility?

Page 28: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Intro to Control

Page 29: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Lower Level Control

Given desired output Find input that yield such output

Page 30: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

System

Input

U

Black Box(grey box)

System

Output

Y

Page 31: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

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: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Example

Do we know the speed of motorIf we apply some specific voltage?Without actually measuring?i.e., forward computation

We have all the theory, right?

Page 33: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

So what?

If we don’t really understand the systemHow do we calculate U for given Y?

I want my motor to spin at 200rpmWhat voltage should I put?

Who knows?

Page 34: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

The Solution

Control SystemOpen loopClosed loop

Page 35: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Control System

Open loop

Page 36: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Open Loop

Just supply inputFrom the model

ExampleLight bulbElectric fan

Page 37: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Open Loop

Neglect inputHence, 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: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Control System

Open loop

Page 39: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Control System

Closed loop

Page 40: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Feedback Control

Very important to accommodate error We already did that all the time

Your bodyYour brainYour eco system

Page 41: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Trichotomy Measurement Yes More Less

Page 42: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

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: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Closed-Loop Control Example

Position Control

Page 44: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

BSim

Gizmo task

Page 45: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Problems

Slow to adapt

Solve by increase gain

Page 46: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

BSim again

Try to increase gain

Page 47: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Control System Catastrophe

Page 48: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Latency Problem

Result from the control does not actually reflect the current state

Lead to instabilitySometime to catastrophe

Page 49: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Control System Stability

Page 50: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

PID Controller

Page 51: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

PID Controller

Proportional PartNormal close loop

Differential PartAdjust input by the differential of the error

Integral PartAdjust input by the

Page 52: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Tuning PID

Adjust P to converge

Page 53: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Tuning PID

Add D to solve overshoot

Page 54: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Tuning PID

Add I to solve Steady State

Page 55: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Tuning PID

Actually an black-artTuning the knob has highly coupling effect

Let’s try it

Page 56: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

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: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Saturation, Backlash, Dead Zone

Page 58: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Saturation, Backlash, Dead Zone

Page 59: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Open Loop Enhancement Parameters States

Page 60: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Bang-Bang Controller

Page 61: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Hysteresis

Page 62: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

More control scheme

Feed forward Predictive Adaptive

Page 63: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Dynamic System

Even if we perfectly understand the system, it is still not trivial to achieve good control

Page 64: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Example

We can solve for u for a given y

Inputu

System with perfect

knowledge

Outputy

Page 65: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

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: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Use the simple

Page 67: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Example

Page 68: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

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: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Introduce Lego Mindstorm

Page 70: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.
Page 71: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.
Page 72: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.
Page 73: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.
Page 74: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.
Page 75: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.
Page 76: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.
Page 77: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Example

Show example of RoverbotPushbotGuardbotExplorerMozart

Page 78: Nattee Niparnan. Towards Autonomous Robot A robot that can think how to perform the task.

Assignment

Pick a robot from LEGO kit Do something with it It’s 10%


Recommended