Top Banner
Introductory Control Theory I400/B659: Intelligent robotics Kris Hauser
31

Introductory Control Theory

Feb 25, 2016

Download

Documents

darby

Introductory Control Theory. I400/B659: Intelligent robotics Kris Hauser. Control Theory. The use of feedback to regulate a signal. Desired signal x d. Controller. Control input u. Signal x. Plant. Error e = x-x d (By convention, x d = 0). x’ = f(x,u). - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript

Non-Holonomic Motion Planning

Introductory Control TheoryI400/B659: Intelligent roboticsKris Hauser

Control TheoryThe use of feedback to regulate a signal

ControllerPlantDesired signal xdSignal xControl input uError e = x-xd(By convention, xd = 0)x = f(x,u)What might we be interested in?Controls engineeringProduce a policy u(x,t), given a description of the plant, that achieves good performanceVerifying theoretical propertiesConvergence, stability, optimality of a given policy u(x,t)AgendaPID controlFeedforward + feedback control

Control is a huge topic, and we wont dive into much detail

Model-free vs model-basedTwo general philosophies:Model-free: do not require a dynamics model to be provided Model-based: do use a dynamics model during computationModel-free methods:SimplerTend to require much more manual tuning to perform wellModel-based methods:Can achieve good performance (optimal w.r.t. some cost function)Are more complicated to implementRequire reasonably good models (system-specific knowledge)Calibration: build a model using measurements before behaving Adaptive control: learn parameters of the model online from sensorsPID controlProportional-Integral-Derivative controllerA workhorse of 1D control systemsModel-free

Proportional termu(t) = -Kp x(t)Negative sign assumes control acts in the same direction as x

xtGainIntegral termxtResidual steady-state errors driven asymptotically to 0Integral gainInstabilityFor a 2nd order system (momentum), P controlxtDivergenceDerivative termu(t) = -Kp x(t) Kd x(t)xDerivative gainPutting it all togetherPutting it all togetherPutting it all togetherParameter tuning

Example: Damped Harmonic OscillatorSecond order time invariant linear system, PID controllerx(t) = A x(t) + B x(t) + C + D u(x,x,t)

For what starting conditions, gains is this stable and convergent?Stability and ConvergenceSystem is stable if errors stay bounded

System is convergent if errors -> 0Example: Damped Harmonic Oscillatorx = A x + B x + C + D u(x,x)PID controller u = -Kp x Kd x Ki Ix = (A-DKp) x + (B-DKd) x + C - D Ki IAssume Ki=0Homogenous solutionInstable if A-DKp > 0Natural frequency w0 = sqrt(DKp-A)Damping ratio z=(DKd-B)/2w0If z > 1, overdampedIf z < 1, underdamped (oscillates)

Example: Trajectory followingxdes(t)

x(t)x(t)Controller Tuning WorkflowHypothesize a control policyAnalysis:Assume a modelAssume disturbances to be handledTest performance either through mathematical analysis, or through simulationGo back and redesign control policyMathematical techniques give you more insight to improve redesign, but require more workExampleFeedforward controlIf we know a model for a system and know how it should move, why dont we just compute the correct control?Ex: damped harmonic oscillatorx = A x + B x + C + D uCalculate a trajectory x(t) leading to x(T)=0 at some point TCompute its 1st and 2nd derivatives x(t), x(t)Solve for u(t) = 1/D*(x(t) - A x(t) + B x(t) + C)Would be perfect!Feedforward controlIf we know a model for a system and know how it should move, why dont we just compute the correct control?Ex: damped harmonic oscillatorx = A x + B x + C + D uCalculate a trajectory x(t) leading to x(T)=0 at some point TCompute its 1st and 2nd derivatives x(t), x(t)Solve for u(t) = 1/D*(x(t) - A x(t) + B x(t) + C)ProblemsControl limits: trajectory must be planned with knowledge of control constraintsDisturbances and modeling errors: open loop control leads to errors not converging to 0Handling errors: feedforward + feedbackIdea: combine feedforward control uff with feedback control ufbe.g., ufb computed with PID controlFeedback term doesnt have to work as hard (= 0 ideally)PlantuffFeedforward calculationx(0)+ufbFeedback controllerux(t)xdesApplication: Feedforward controlFeedback control: let torques be a function of the current error between actual and desired configurationProblem: heavy arms require strong torques, requiring a stiff systemStiff systems become unstable relatively quickly

Application: Feedforward controlSolution: include feedforward torques to reduce reliance on feedbackEstimate the torques that would compensate for gravity and achieve desired accelerations (inverse dynamics), send those torques to the motorsHandling errors: feedforward + feedbackIdea: combine feedforward control uff with feedback control ufbe.g., ufb computed with PID controlFeedback term doesnt have to work as hard (= 0 ideally)PlantuffFeedforward calculationx(0)+ufbFeedback controllerux(t)xdesModel basedModel freeModel predictive control (MPC)Idea: repeatedly compute feedforward control using model of the dynamicsIn other words, rapid replanningPlantFeedforward calculationu=uffx(t)xdesMPC to avoid moving obstacles

Next class: Sphero LabYou will design a feedback controller for the move command