Discrete Systems - Telemark University...

Preview:

Citation preview

DiscreteSystems

Hans-PetterHalvorsen

ControlEngineering

Transfer-funksjoner

Differensial-likninger

1.orden

2.orden

Laplace

Blokk-diagrammer

Tilstandsrom-modeller

Stabilitets-analyse

MathScript

LabVIEW

Dataverktøy

1.Systemetspoler Bodediagram

Analyse/Design

Realisering/Implementering

2.Frekvensrespons

DiskretiseringReguleringssystem

Detkomplekseplan

Detkomplekseplan

AsymptotiskstabiltsystemMarginaltstabiltsystem

Ustabiltsystem

Asymptotiskstabiltsystem

Marginaltstabiltsystem

Ustabiltsystem

TidsplanetAirHeater

1.ordenmedtidsforsinkelse

Tidsplanet S-planet

Reguleringsteknikk

K=ForsterkningT=Tidskonstant

Sprang-respons

Serie,Parallel,Feedback

Diskretisering

TableofContents1. WhatisDiscreteSignalsandDiscretization?2. WhyDiscretization?3. DiscretizationMethods

– Euler,Tustin,ZOH,etc.

4. DiscretizationExamples– DifferentialEquations->DifferenceEquations– Continous State-spacemodels->DiscreteState-spacemodels

5. DiscretizationinMathScript withExamples6. DiscretizationinLabVIEW withExamples7. DiscreteLowpass Filter

– DiscreteAlgorithm– LabVIEWImplementation(Example)

8. DiscretePI Controller– DiscreteAlgorith– LabVIEWImplementation(Example)

9. PC-basedControlSystem– LabVIEWExample

DigitalSignals&Values

1 0 1 00

E.g.8bit:00000000 ->0………11111111 ->255

Resolution:

E.g.8bitresolution

Resolution:5V/256=0.0195V

8bitshave256differentcombinationsorlevels

BinaryValues:“0”and“1”

ADConverter

DAConverter

MeasurementSignal

ControlSignal

AD&DAConverters

AD – AnalogtoDigitalDA – DigitaltoAnalog

ContinuousSignal

DiscretSignal Acomputercanonlydealwithdiscretesignals

DifferentDiscreteSymbolsandmeanings

Present Value:

Previous Value:

Next (Future)Value:

Note!DifferentNotationisusedindifferentlitterature!

SamplingandAliasingOriginalSignal

Aliasing(“Nedfolding”)->TheSamplingRateistolow!

SamplingTimeSamplingFrequency

DiscreteApproximationofthetimederivativeEulerbackwardmethod:

Eulerforwardmethod:

DiscretizationMethods

Eulerforwardmethod:

Eulerbackwardmethod:

OthermethodsareZeroOrderHold(ZOH),Tustin’smethod,etc.

Simplertouse!

MoreAccurate!

DiscretizationExampleGiventhefollowingcontinuoussystem:

WewillusetheEulerforwardmethod:

Students:Penandpaper:Findthedifferenceequation(discretedifferenitialequation)forthissystem.

DiscretizationExample- SolutionsGiventhefollowingcontinuoussystem:

WewillusetheEulerforwardmethod:

DiscretizationinMathScript- Alt.1

% Simulation of discrete modelclear, clc

% Model Parametersa = 0.25;b = 2;

% Simulation ParametersTs = 0.1; %sTstop = 20; %suk = 1; % Step in ux(1) = 0; % Initial value

% Simulationfor k=1:(Tstop/Ts)

x(k+1) = (1-a*Ts).*x(k) + Ts*b*uk;end

% Plot the Simulation Resultsk=0:Ts:Tstop;plot (k, x)grid on

Students:ImplementandSimulatethissysteminMathScript

DiscretizationinMathScript- Alt.2

% Find Discrete modelclearclc

% Model Parametersa = 0.25;b = 2;Ts = 0.1; %s

% State-space modelA = [-a];B = [b];C = [1];D = [0];

model = ss(A,B,C,D)model_discrete = c2d(model, Ts, 'forward')step(model_discrete)

Students:ImplementandSimulatethissysteminMathScript

Wegetthesameanswerasinpreviousexample!

DiscretizationinLabVIEW usingtheFormulaNode

Example (bacteriapopulation):

ImplementingdicreteequationsinLabVIEWusingCsyntax

Students:ImplementandSimulatethissysteminLabVIEWusingaFormulaNodeandaForLoop.ASubVIcouldbeusedtoimplementthemodel.

Wewillsimulatethenumberofbacteriainthejarafter1hour(simulationperiod),assumingthatinitiallythereare100bacteriapresent(x(0)).Setb=1,p=0.5.SetTs=0.01s.

SubVI

DiscretizationinLabVIEWusingtheFormulaNode- Solutions

Note!ASubVIisusedtoimplementthemodel.Recommended!!

SimulationResults:SubVI:

Note!Right-ClickandselectProperties.SetMultiplier=0.01(=Ts)intheScalesTab.

DiscreteState-spaceModels

Orusinganothernotation:

DiscreteState-spaceModels- Example

Giventhefollowingcontinuoussystem:

WewillusetheEulerforwardmethod:

Students:Students:Findthediscretestate-spacemodel(usingpenandpaper)

DiscreteState-spaceModels- Example(Solutions)

Giventhefollowingcontinuoussystem:

WewillusetheEulerforwardmethod:

DiscreteState-spaceModelsExampleinMathScript

Giventhefollowingcontinuoussystem:

% PropertiesTs = 0.1;

% Continuous System:A = [0, -Ts; 0, 0];B = [2*Ts, 0]';C = [1 0];D = [0];ssmodel = ss(A, B, C, D);figure(1)step(ssmodel)

% Discrete System:ssmodel_discete = c2d(ssmodel, Ts, 'forward’)figure(2)step(ssmodel_discete)

MathScript

Students:ImplementthesystemaboveandfindthestepresponseusingMathScript.

TrywithdifferentvaluesforTs!

ImplementingaControlSystemWhiletherealprocessiscontinuous,normallytheControllerandtheFilterisimplementedinacomputer.

WearegoingtofinddiscretealgorithmsfortheLowpassFilterandthePIControllerandimplementtheminLabVIEW

PC-basedControlSystem–LabVIEWExample(HMI/GUI)

LowpassFilterLowpassFilterTransferfunction:

Students:PenandPaper:Findthediscretealgorithmforthisfilter,whichcanbeimplmentedinaprogramminglanguagelikeCorLabVIEWFormulaNode

UsetheEulerBackwardmethod:

DiscreteLowpassFilter

WeusetheEulerBackwardmethod:

InverseLaplacegivesthedifferentialEquation:

Thisgives:

LowpassFilterTransferfunction:

Wedefine:

Thisgives:

ThisalgorithmcanbeeaslyimplementedinaProgramminglanguage

Filteroutput Noisyinputsignal

DiscreteLowpassFilter- LabVIEW

Students:ImplementaDiscreteLowpassFilterandmakesuretotestitproperly

ExampleofImplementation

TestingtheDiscreteLowpassFilter

PIControllerContinuousPIController:

Students:PenandPaper:FindthediscretealgorithmforthisPIcontroller,whichcanbeimplmentedinaprogramminglanguagelikeCorLabVIEWFormulaNode

UsetheEulerBackwardmethod:

DiscretePIControllerContinuousPIController:

WeusetheEulerBackwardmethod:

Wemayset:

ThisgivesthefollowingdiscretePIalgorithm:

ThisalgorithmcanbeeaslyimplementedinaProgramminglanguage

DiscretePIController- LabVIEW

Students:ImplementaDiscretePIControllerandmakesuretotestitproperly

ExampleofImplementation

MathematicalModeloftheProcess

FeedbackNode

TestofDiscretePIControllerinLabVIEWNote!MakesuretocompareyourPIControllerwiththebuilt-inPIDController!

PC-basedControlSystem–LabVIEWExample(Realprocess)

SubVIthathandlestheI/ObetweenLabVIEWandtheRealProcess

SubVI:

Scaling:1-5V->20-50degreesCelsius

Ts

Tf

PC-basedControlSystem–LabVIEWExample(HMI/GUI)

Hans-PetterHalvorsen,M.Sc.

UniversityCollegeofSoutheastNorwaywww.usn.no

E-mail:hans.p.halvorsen@hit.noBlog:http://home.hit.no/~hansha/

Recommended