Linjär analys. Datorlaboration 2. av Sven Spanne. Reviderad ht av Amiran Ambroladze, Jan Gustavsson och Pavel Kurasov.

Relevanta dokument
System och transformer

System och transformer

Tillämpad matematik. Lineära system. LAB2

Kan vi beskriva ett system utan någon fysikalisk kännedom om systemet?

Exempelsamling Grundläggande systemmodeller. Klas Nordberg Computer Vision Laboratory Department of Electrical Engineering Linköping University

Exempelsamling Grundläggande systemmodeller. Klas Nordberg Computer Vision Laboratory Department of Electrical Engineering Linköping University

TSIU61: Reglerteknik. Matematiska modeller Laplacetransformen. Gustaf Hendeby.

TSBB16 Datorövning A Samplade signaler Faltning

SYSTEM. Tillämpad Fysik Och Elektronik 1 SYSTEMEGENSKAPER. Minne Kausalitet Tidsinvarians. Linjäritet Inverterbarhet Stabilitet. System.

Inlämningsuppgifter i System och transformer vt 2018

REGLERTEKNIK Laboration 5

Försättsblad till skriftlig tentamen vid Linköpings universitet KÅRA T1 T2 U2 U4

TIDSDISKRETA SYSTEM SYSTEMEGENSKAPER. Minne Kausalitet Tidsinvarians. Linjäritet Inverterbarhet Stabilitet. System. Tillämpad Fysik och Elektronik 1

TSDT15 Signaler och System

i(t) C i(t) = dq(t) dt = C dy(t) dt y(t) + (4)

DT1130 Spektrala transformer Tentamen

FÖRELÄSNING 13: Analoga o p. 1 Digitala filter. Kausalitet. Stabilitet. Ex) på användning av analoga p. 2 filter = tidskontinuerliga filter

Försättsblad till skriftlig tentamen vid Linköpings universitet G33(1) TER4(63)

Inlämningsuppgifter i System och transformer vt Varför har vi inlämningsuppgifter? Några regler för utförandet

RÄKNEEXEMPEL FÖRELÄSNINGAR Signaler&System del 2

Transformer och differentialekvationer M3, 2010/2011 Ett par tillämpningar av Fourieranalys.

Impulssvaret Betecknas h(t) respektive h(n). Impulssvaret beskriver hur ett system reagerar

Sammanfattning TSBB16

Processidentifiering och Polplacerad Reglering

Tentamen i TMA 982 Linjära System och Transformer VV-salar, 27 aug 2013, kl

Program för System och transformer ht07 lp2

Spektrala Transformer

Tillämpad digital signalbehandling Laboration 1 Signalbehandling i Matlab och LabVIEW

Kryssproblem (redovisningsuppgifter).

Digital Signalbehandling i Audio/Video

Datorlaboration 2. 1 Serier (kan göras från mitten av läsvecka 4)

Transformer och differentialekvationer (MVE100)

Tillämpad Fysik Och Elektronik 1

Funktionsteori Datorlaboration 2

Flerdimensionella signaler och system

DIGITALA FILTER. Tillämpad Fysik Och Elektronik 1. Frekvensfunktioner FREKVENSSVAR FÖR ETT TIDSDISKRET SYSTEM. x(n)= Asin(Ωn)

Styr- och Reglerteknik för U3/EI2

Uppsala Universitet Matematiska Institutionen Bo Styf. Sammanfattning av föreläsningarna 15-18, 30/11-12/

TSDT08 Signaler och System I Extra uppgifter

Datorövning: Fouriertransform med Python

Föreläsning 10, Egenskaper hos tidsdiskreta system

Föreläsning 9, Bestämning av tidsdiksreta överföringsfunktioner

3 Man kan derivera i Matlab genom att approximera derivator med differenskvoter. Funktionen cosinus deriveras för x-värdena på följande sätt.

Newtons metod och arsenik på lekplatser

Kap 3 - Tidskontinuerliga LTI-system. Användning av Laplacetransformen för att beskriva LTI-system: Samband poler - respons i tidsplanet

Laboration i tidsdiskreta system

MAPLE MIKAEL STENLUND

System. Z-transformen. Staffan Grundberg. 8 februari 2016

Föreläsning 8, Introduktion till tidsdiskret reglering, Z-transfomer, Överföringsfunktioner

OBS! Snabbinsatt Matlab-intro vissa fönsterhanteringsdetaljer kan vara fel men gör gärna Matlab-uppgifterna. DN1240, Numeriska metoder för OPEN1.

Kompletterande material till föreläsning 5 TSDT08 Signaler och System I. Erik G. Larsson LiU/ISY/Kommunikationssystem

Datorövning 1 Fördelningar

Tillämpad matematik. Lineära system. LAB1

Attila Szabo Niclas Larson Gunilla Viklund Mikael Marklund Daniel Dufåker. GeoGebraexempel

2 Laborationsutrustning

Signal- och Bildbehandling, TSBB14. Laboration 2: Sampling och Tidsdiskreta signaler

Transformer och differentialekvationer (MVE100)

Tentamen ssy080 Transformer, Signaler och System, D3

Signal- och Bildbehandling, TSBB14. Laboration 2: Sampling och rekonstruktion. DFT.

Matematisk analys för ingenjörer Matlabövning 2 Numerisk ekvationslösning och integration

LÄRARHANDLEDNING Harmonisk svängningsrörelse

Laplace, Fourier och resten varför alla dessa transformer?

Datorövning 2 Matlab/Simulink. Styr- och Reglerteknik för U3/EI2

Liten MATLAB introduktion

Laboration 2 M0039M, VT2016

REGLERTEKNIK Laboration 4

DT1130 Spektrala transformer Tentamen

Laboration 4: Stora talens lag, Centrala gränsvärdessatsen och enkla punktskattningar

G(s) = 5s + 1 s(10s + 1)

Tentamen i ESS 010 Signaler och System E3 V-sektionen, 16 augusti 2005, kl

( ), så kan du lika gärna skriva H ( ω )! ( ) eftersom boken går igenom laplacetransformen före

DN1212, Numeriska metoder & grundläggande programmering. Laboration 1 del 1-3 (frivilliga delar) Del 1-3 (dvs upg ) behöver inte redovisas

TSKS21 Signaler, Information och Bilder Lab 2: Digitalisering

Tekniska Högskolan i Linköping Institutionen för Datavetenskap (IDA) Torbjörn Jonsson Plot och rekursion

Lösningsförslag, Tentamen, Differentialekvationer och transformer II, del 2, för CTFYS2 och CMEDT3, SF1629, den 9 juni 2011, kl.

Övningar i Reglerteknik. Differentialekvationer kan lösas med de metoder som behandlades i kurserna i matematisk analys. y(0) = 2,

Laplacetransform, poler och nollställen

DN1240, Numeriska metoder. Laboration 0 (frivilliga delar) (dvs uppgifterna behöver inte redovisas) Introduktion till UNIX och MATLAB

SF1625 Envariabelanalys Lösningsförslag till tentamen DEL A

Föreläsning 1 Reglerteknik AK

Introduktion till Matlab

Innehνall 1 Introduktion Processbeskrivning Inloggning och uppstart

Kap 10 - Modeller med störningar. Hur beskriva slumpmässiga störningar?

Datorövning 2 med Maple

Signalanalys med snabb Fouriertransform

Laplace, Fourier och resten varför alla dessa transformer?

Faltning steg för steg

SF1900 Sannolikhetsteori och statistik, HT 2017 Laboration 1 för CINEK2

Datorövning 1: Fördelningar

Signal- och bildbehandling TSEA70

Transformmetoder. Kurslitteratur: Styf/Sollervall, Transformteori för ingenjörer, 3:e upplagan, Studentlitteratur

Laboration i Fourieroptik

Innehåll. Innehåll. sida i

Linjär algebra med tillämpningar, lab 1

Ulrik Söderström 20 Jan Signaler & Signalanalys

Parametriserade kurvor

Ulrik Söderström 19 Jan Signalanalys

Elektro och Informationsteknik LTH. Laboration 3 RC- och RL-nät i tidsplanet. Elektronik för D ETIA01

Lägg märke till skillnaden, man ser det tydligare om man ritar kurvorna.

Syftet med den här laborationen är att du skall bli mer förtrogen med följande viktiga områden inom matematisk statistik

Transkript:

Linjär analys Datorlaboration 2 av Sven Spanne Reviderad ht 2005 av Amiran Ambroladze, Jan Gustavsson och Pavel Kurasov Reviderad ht 2006 av Anders Holst

Inledning Programmet för denna datorövning är studium av insignal-utsignalrelationer, dels i tidsområdet, dels i frekvensområdet samt en kort introduktion till Fouriertransformation med Maple. Avsikten med den förra delen är att ge en bättre förståelse för de begrepp som införs i kapitel 9 och 12. Den senare delen är tyvärr inte så intellektuellt stimulerande den består mest av att skriva in givna kommandon men syftar utöver en presentation av de relevanta kommandona till att repetera hur man använder Maple. Förberedelser: Titta igenom denna handledning och anvisningarna nedan. Läs igenom kapitel 9, speciellt definitionerna av linearitet, tidsinvarians och kausalitet samt systembeskrivning med impulssvar. Läs också om frekvens- och amplitudfunktioner i kapitel 12. En första kontakt (bortsett från föreläsningarna) med kapitel 13 får du också under laborationen. Hämta de 18 m-filerna som kommer att användas under laborationen till någon lämplig egen katalog se uppgift 2.1 nedan. Tag med läroboken, övningshäfte och formelblad! Tag också gärna med din Matlabhandledning. System på insignal-utsignalform Vi skall experimentellt undersöka system på insignal-utsignalform med hjälp av Matlab. 2.1 En del behövliga färdigskrivna filer finns att hämta på kursens hemsida. http://www.maths.lth.se/matematiklth/personal/ah/linan06.html Hämta dessa filer till någon lämplig egen Matlabkatalog. I MH:140 öppnar du menyn Applications överst till vänster, följt av ett klick på Internet. Välj t ex Mozilla Firefox. Gå till kursens hemsida. Vänsterklicka på amplitudf, välj ev. målkatalog, och sedan OK. Upprepa tills alla filer finns i din katalog. I MH:144 går du via Start till Internet Explorer. Då du på kursens hemsida hittat länkarna till de filer du behöver klickar du på filnamnet med höger musknapp. Klicka sedan med vänster musknapp på Save Target As. I det nya fönster, som kommer upp, ändrar du Save as type: från Text file till All Files. Du kan också behöva ändra katalog att spara i. Avsluta med att med vänster musknapp klicka på Save. Upprepa tills alla filer är hämtade. 1

Allmänt Vi skall använda ett paket med Matlabfiler för att kunna räkna med funktioner (signaler) och system. Detta paket är specialskrivet för övningen och har många begränsningar. Matlab kan endast göra tidsdiskreta räkningar, så att de tidskontinuerliga systemen approximeras genom sampling. Vidare kan Matlab ej visa upp hela tidsaxeln utan signalerna skärs av utanför ett visst tidsintervall ( 20 t 20). I paketet representeras funktioner (signaler) med Matlabföljder (radvektorer) och system med Matlabfunktioner (m-filer). Titta gärna på de m-filer ni kör, med kommandot type, och försök förstå hur de fungerar. 2.2 Starta Matlab och initiera övningspaketet med kommandot startlab2. Med whos får du reda på vilka variabler du har och hur stora de är. Rita upp funktionen theta med plot(t,theta) och gör motsvarande med delta (oändligheten är här tydligen ungefär 13). Du kan själv definiera nya funktioner som passar in i systemet. Stegfunktionen är t ex tillverkad med (t>0). En kausalt avskuren sinusfunktion fås med sin(t).*(t>0) etc. 2.3 Definiera för framtida bruk några funktioner, en kausal rektangelpuls, en triangelpuls och en kausal cosinusfunktion: krekt = (t>0)-(t>1); triangel = (t+1).*(t>-1)-2*t.*(t>0)+(t-1).*(t>1); kcos = cos(t).*(t>0); Rita upp funktionerna med plot. Matlabtips: Du kommer snart att få upp många figurfönster från Matlab. När du har fått för många så går det lätt att sudda t ex alla fönster utom de två sista, med kommandot delete(1:gcf-2) (gcf = current figure handle = numret på aktuellt figurfönster). System Ett system (i insignal-utsignalform) S representeras med en Matlabfunktion, t ex definierad i syst1.m. Om t ex insignalen finns i Matlabföljden theta så beräknas utsignalföljden y genom y=syst1(theta). 2.4 Genom filen lpfilter.m simuleras lågpassfiltret i kursboken (exempel 10.7 på sidan 195 med R = 1 och C = 1). Bestäm stegsvaret för filtret med kommandot y=lpfilter(theta); och rita upp det med plot(t,y). 2

För att förenkla för användaren finns i filpaketet en Matlabfunktion plotsyst som ritar upp insignalen och utsignalen. Se nästa uppgift. 2.5 Prova kommandot plotsyst( lpfilter,theta); Observera att kommandot tar systemnamnet som en sträng, alltså omgivet av 2.6 Filen bil.m innehåller en realisering av den enhjuliga bilen i exempel 9.10 på sid 157 i läroboken. Testa vad som händer om den kör på en trottoarkant (beskriven med en stegfunktion): plotsyst( bil,theta); Jämför övning 11.30 e). Speciella system I filpaketet finns färdiga realiseringar av några praktiskt viktiga speciella system. fördröjning: en fördröjning tiden a fås med utsignal=delay(insignal,a); (exempel 9.19 på sid 172) derivation: utsignal=der(insignal); (exempel 9.11,22) integration: utsignal=integ(insignal); (sats 10.2 på sid 190) 2.7 Vi kan fördröja signaler med kommandot delay. Rensa grafikfönstret med clf. Titta sedan till exempel på plot(t,delay(triangel,2)); Byt sedan 2 mot 3. Gör sedan om fördröjningarna ovan med triangel bytt mot kcos. Vid fördröjningen skiftas in nollor från det förflutna (eller framtiden, om fördröjningen inte är kausal). Detta är en ofullkomlighet som vi skulle kunna undvika om det fanns oändligt mycket minne i datorn. Då skulle hela funktionen kunna lagras och inte bara ett ändligt delintervall. Prova nu att derivera några enkla funktioner: 2.8 Derivera triangelpulsen, rektangelpulsen, stegfunktionen, deltafunktionen och den avskurna cosinusen. plotsyst( der,triangel); plotsyst( der,krekt); osv. Lägg märke till spikarna i en del av derivatorna. Hur kan man representera dem matematiskt? Svar: 3

Egenskaper hos system De fyra viktigaste speciella egenskaperna hos system på insignal-utsignalform är linearitet, tidsinvarians, kausalitet och stabilitet. Vi skall nu experimentellt undersöka vilka av våra system som har de tre första av dessa egenskaper. Stabiliteten är svårare att se med våra verktyg, eftersom den talar om vad som sker då t, och det får dåligt plats på skärmen. Linearitet Ett system S kallas ju lineärt om S(c 1 w 1 + c 2 w 2 ) = c 1 S(w 1 ) + c 2 S(w 2 ) för alla tal c 1, c 2 och alla insignaler w 1, w 2. Funktionen lintest testar detta genom att beräkna och rita upp S(c 1 w 1 + c 2 w 2 ) (c 1 S(w 1 ) + c 2 S(w 2 )). 2.9 Undersök om lpfilter kan vara lineärt genom att stoppa in olika kombinationer av insignaler. Börja t ex med lintest( lpfilter,triangel,kcos,-3,4) Lägg märke till skalan i den undre figuren. Verkar systemet vara lineärt? Anm: Man kan givetvis inte testa alla tänkbara insignaler, men det brukar märkas snabbt om ett system inte är lineärt. Tidsinvarians Ett system är tidsinvariant om fördröjningar av insignalen medför motsvarande fördröjningar av utsignalen men inga andra förändringar av denna. Detta är lätt att testa med våra verktyg: 2.10 Använd plotsyst på systemet lpfilter och insignalen triangel. Förskjut sedan insignalen åt höger, t ex a = 2, och åt vänster, t ex a = 3 och jämför utsignalerna: plotsyst( lpfilter,triangel); plotsyst( lpfilter,delay(triangel,2)); plotsyst( lpfilter,delay(triangel,-3)); 4

Det finns även här en funktion som underlättar testen, delaytest. 2.11 delaytest( lpfilter,triangel,2); delaytest( lpfilter,triangel,-3); Lägg märke till skalan i den undre figuren. I vissa fall kan testet störas av nollorna som skiftas in från höger eller vänster. Bortse därför från eventuella störningar i början eller slutet. Kausalitet För allmänna system definieras begreppet Kausalitet på sid 177. Man kan ganska lätt visa att ett lineärt system är kausalt om och endast om det har egenskapen: För varje reellt tal t 0 och varje insignal w med w(t) = 0 för t < t 0 gäller att utsignalen y = S(w) uppfyller y(t) = 0 då t < t 0. Det är lätt att se på skärmen om så är fallet för en given insignal. 2.12 Undersök om systemet lpfilter är kausalt genom att sända in några triangelpulser med olika fördröjningar. Titta noga på skalorna! Kausalt? Ett enklare kriterium för kausalitet, som kan användas då systemet är lineärt och tidsinvariant, är att impulssvaret är en kausal funktion. Undersökning av system 2.13 Undersök om systemen syst1-5 och i mån av tid även syst6 är lineära, tidsinvarianta och kausala. Fyll i följande tabell: system lineärt tidsinvariant kausalt syst1 syst2 syst3 syst4 syst5 syst6 För de lineära och tidsinvarianta kan kausaliteten testas med en enda insignal. Vilken? Svar: De andra kräver lite mer omsorg. System 3 bör alla känna igen från övningarna. Se efter vad det gör med en puls krekt och med steget theta. Titta sedan på övning 9.10. 5

Impulssvar Impulssvaret h = Sδ till ett lineärt tidsinvariant system fås som utsignalen då insignalen är deltafunktionen. Då impulssvaret är känt kan sedan utsignalen beräknas med faltning. 2.14 Bestäm impulssvaren till de lineära och tidsinvarianta systemen i tabellen ovan. Testa sedan att det blir rätt genom att beräkna någon eller några utsignaler med faltning. Gör så här (där t ex syst1 och triangel kan bytas mot andra system respektive insignal): h = syst1(delta); y = falt(h,triangel); plotsyst( syst1,triangel); figure subplot(211) plot(t,y); och jämför. Om du flyttar på det nyaste fönstret så kan du se båda samtidigt. Amplitudfunktioner För de lineära och tidsinvarianta av våra system är överförings- och frekvensfunktion definierade. Frekvensfunktionens absolutbelopp A(ω) = H(iω) beskriver ju amplitudförstärkningen vid vinkelfrekvensen ω. Vi skall testa detta. Skriptet amplitudf beräknar amplitudfunktionen A(ω) om impulssvaret h(t) är givet. Den bakomliggande metoden är FFT (snabb Fouriertransformation H(iω) är ju Fouriertransformen av h(t). Se sats 12.6 i kursboken.) 2.15 Studium av amplitudfunktionerna för systemen lpfilter och bil. Börja med att sända in cosinus- eller sinussignaler med vinkelfrekvenser 1, 2, 3 och 6, t ex plotsyst( bil,sin(3*t));. 1. Uppskatta i den erhållna figuren hur stor amplitudförstärkningen är (insignalens amplitud bör vara 1 så utsignalens amplitud är lika med förstärkningen). Fyll i tabellen System Vinkelfrekvens Amplitudförstärkning lpfilter 1 2 3 6 bil 1 2 3 6 6

2. Jämför det erhållna värdet med motsvarande punkt på kurvan för amplitudfunktionen. Skriv amplitudf(lpfilter(delta)); respektive amplitudf(bil(delta)); Fouriertransformation Matlab Matlab kan utföra numeriska diskreta Fouriertransformationer. Tyvärr är det en hel del bokföringsmässiga detaljer som måste klaras av för att man skall kunna beräkna kontinuerliga Fouriertransformer med Matlab, så tiden tillåter inte att vi går igenom det här. Kommandot för den direkta transformen är fft och för den inversa ifft. Maple Starta Maple (versionen med Classic Worksheet). Maple har inbyggda rutiner för Fouriertransformation och invers Fouriertransformation. De heter fourier och invfourier och blir tillgängliga med kommandot with(inttrans); (inttrans står för integral transforms utöver Fouriertransformen behandlar vi i kursen även Laplacetransformen). Maple känner även till deltafunktionen δ(t), som fås med Dirac(t), och stegfunktionen θ(t), som fås med Heaviside(t), och kan ofta räkna rätt med dem. Om du föredrar samma namn som i kursboken går det att åstadkomma med kommandot alias(delta=dirac, theta=heaviside);. 2.16 Beräkna derivatan av θ(t) och e t θ(t) med hjälp av Maple (använd diff). Använd simplify på det senare resultatet så ser ni att Maple kan regeln f(t)δ(t a) = f(a)δ(t a). 2.17 Derivatan av δ(t), alltså δ (t) betecknas i Maple med Dirac(1,t) (och vid högre derivator ersätts 1 med derivationsordningen). Låt Maple förenkla uttrycket sin(t)δ (t 2) och jämför med vad du själv fått det till. 2.18 Beräkna Fouriertransformen av e t θ(t) med Maple: fourier(exp(-t)*heaviside(t),t,omega); Stämmer Maples resultat med det du kan avläsa i din tabell? Svar: 2.19 Försök beräkna Fouriertransformen av e t θ(t) med Maple. Vad händer? Varför? 7

2.20 Även om egenskaperna hos en ospecifierad funktion f inte är kända av Maple förutsätts att f går att Fouriertransformera. Exempelvis blir fourier(fourier(f(t),t,omega),omega,t); vad man förväntar sig. Vad förväntar du dig enligt övning 13.17? Denna toleranta attityd från Maples sida kan ibland leda till missvisande resultat. Pröva t ex med fourier(fourier(exp(t^2),t,omega),omega,t);. Vad är fel här? Sätt falt:=int(f(t-tau)*g(tau),tau=-infinity.. infinity);. Vad blir fourier(falt,t,omega);? Vad illustrerar detta? 2.21 Lös övning 13.1b på följande sätt: fourier(exp(t)*heaviside(-t),t,omega); och exempel 13.3 i läroboken, fourier(exp(-abs(t)),t,omega); 2.22 Lös övning 13.15 med Maple. 2.23 Lös övning 13.6 med Maple. 2.24 Lös övning 13.26 med Maple genom följande kommandon: intekv:=y(t) + int(exp(-abs(t-u))*y(u),u=-infinity..infinity)=t*exp(-abs(t)); fourier(intekv,t,omega); subs(fourier(y(t),t,omega)=y,%); losning:=solve(%,y); invfourier(losning,omega,t); 8