Grundläggande signalbehandling

Relevanta dokument
Lab 1 Analog modulation

Laboration 3 Sampling, samplingsteoremet och frekvensanalys

Projekt 3: Diskret fouriertransform

Mätningar med avancerade metoder

Digital Signalbehandling i Audio/Video

Digital signalbehandling Digitalt Ljud

Processidentifiering och Polplacerad Reglering

Introduktion till LTspice

Laboration i tidsdiskreta system

Flerdimensionella signaler och system

Elektro och Informationsteknik LTH Laboration 4 Tidsplan, frekvensplan och impedanser

Analys/syntes-kodning

Laboration 2: 1 Syfte. 2 Väntevärde och varians hos en s.v. X med fördelningen F X (x) MATEMATISK STATISTIK, AK FÖR BYGG, FMS 601, HT-08

Tentamen i Signaler och kommunikation, ETT080

Lab Tema 2 Ingenjörens verktyg

Signalbehandling Röstigenkänning

Laboration i Fourieroptik

Signalanalys med snabb Fouriertransform

2 Laborationsutrustning

Laboration: Grunderna i MATLAB

Optimal Signalbehandling Datorövning 1 och 2

Laboration i Fourieranalys, TMA132 Signalanalys med snabb Fouriertransform

Ulrik Söderström 20 Jan Signaler & Signalanalys

Ulrik Söderström 19 Jan Signalanalys

TANA17 Matematiska beräkningar med Matlab

Ämnesområde Hörselvetenskap A Kurs Signalteori, 7,5 hp Kurskod: HÖ1007 Tentamenstillfälle

Lab 4: Digital transmission Redigerad av Niclas Wadströmer. Mål. Uppstart. Genomförande. TSEI67 Telekommunikation

Resttentamen i Signaler och System Måndagen den 11.januari 2010, kl 14-19

Projekt 1 (P1) Problembeskrivning och uppdragsspecifikation

Laboration i Fourieroptik

Introduktion till Word och Excel

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

LiTH Lab1: Asynkron seriell dataöverföring via optisk länk Laboration 1. Asynkron seriell dataöverföring via optisk länk

TSBB16 Datorövning A Samplade signaler Faltning

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

Laboration 3, TNGD10 Rörliga medier

TSKS06 Linjära system för kommunikation Lab2 : Aktivt filter

Laboration 2 - Modulering I denna laboration skall vi

KPP053, HT2016 MATLAB, Föreläsning 1. Introduktion till MATLAB Skript Inläsning och utskrift av variabler Ekvationssystem Anonyma funktioner

Reglerteknik M3. Inlämningsuppgift 3. Lp II, Namn:... Personnr:... Namn:... Personnr:...

Linjär algebra med tillämpningar, lab 1

TSKS21 Signaler, Information och Bilder Lab 2: Digitalisering

Guide till att använda Audacity för uttalsövningar

Laboration 1. Grafisk teknik Rastrering. Sasan Gooran (HT 2004)

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

Instruktion för laboration 1

Projekt 6. Fourieroptik Av Eva Danielsson och Carl-Martin Sikström

Lab lanserade R.A. Moog Inc. en ny synt: Minimoog. Den var designad av Bill Hemsath och Robert Moog och kom att revolutionera musikhistorien.

Faltningsreverb i realtidsimplementering

Datorövningar i systemidentifiering Del 2

DT1130 Spektrala transformer Tentamen

Innehνall 1 Introduktion Processbeskrivning Inloggning och uppstart

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

Grundläggande signalbehandling

Spektrala Transformer

Laboration 1 - Simplexmetoden och Modellformulering

Tillämpning av komplext kommunikationssystem i MATLAB

Projekt Spektralanalys med hjälp av den diskreta Fouriertransformen

Index. Vektorer och Elementvisa operationer. Summor och Medelvärden. Grafik i två eller tre dimensioner. Ytor. 20 januari 2016 Sida 1 / 26

TAIU07 Matematiska beräkningar med Matlab

Att fånga den akustiska energin

Laboration 3 Grunderna i Ljudinspelning

Guide till att använda Audacity

Digital Signalbehandling i Audio/Video

Föreläsning 10, Egenskaper hos tidsdiskreta system

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

Flerdimensionell signalbehandling SMS022

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

TNMK054 - LJUDTEKNIK 1 FILTER OCH VCF

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 2 november 2015 Sida 1 / 23

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

Miniprojekt: Vattenledningsnäten i Lutorp och Vingby 1

STOCKHOLMS UNIVERSITET VT 2011 Avd. Matematisk statistik GB DATORLABORATION 1: TIDSSERIER.

Lathund import Ladoklista i Ping Pong

AD-DA-omvandlare. Mätteknik. Ville Jalkanen. 1

Diasonic DDR-5300 Svensk kom i gång manual.

INTRODUKTION TILL OrCAD

Lathund Milestone 112 Ace Color

Grundläggande ljud- och musikteori

3 Maximum Likelihoodestimering

Audio & Videoteknik 2D2021, 2D1518

Simulering med ModelSim En kort introduktion

När man vill definiera en matris i MATLAB kan man skriva på flera olika sätt.

Spektrala Transformer

Laboration 2. Grafisk teknik (TNM059) Digital Rastrering. S. Gooran (VT2007)

STOCKHOLMS UNIVERSITET VT 2011 Avd. Matematisk statistik GB DATORLABORATION 3: MULTIPEL REGRESSION.

Lathund för Bose T1 ToneMatch engine

Laboration 1: Aktiva Filter ( tid: ca 4 tim)

Kapitel 2 o 3 Information och bitar Att skicka signaler på en länk. Att sända information mellan datorer. Information och binärdata

4 Laboration 4. Brus och termo-emk

LTK010, vt 2017 Elektronik Laboration

DIGITALA FILTER DIGITALA FILTER. Tillämpad Fysik Och Elektronik 1

Exercises Matlab/simulink V

Instruktion för laboration 1

TSRT62 Modellbygge & Simulering

1. Mätning av gammaspektra

Laboration Fuzzy Logic

TEM Projekt Transformmetoder

Lab skapades Ove (Orator Verbis Electris) av Gunnar Fant, KTH.

Vad är spektralanalys? Spektralanalys. Frekvensinnehåll. Enkelt exempel

Transkript:

Digital Signalbehandling Lab 1 Grundläggande signalbehandling Denna version: juli 2007 LERTEKNIK REG Namn: Personnr: AU T O MA RO TI C C O N T LINKÖPING L Datum: Godkänd:

1 Introduktion Syftet med denna första laboration i kursen Digital signalbehandling är att ge tillfälle att arbeta praktiskt med de teorier och algoritmer som tas upp i kursboken. Laborationen består av tre uppgifter: Vissling: Hur rent visslar du? Vokalljud: Hur kan man modellera ett vokalljud? Talkodning enligt GSM: Hur mycket icke-nödvändig information finns det i vanligt tal? Varje uppgift beskrivs mer i detalj nedan. För att lösa uppgifterna måste Matlab eller motsvarande användas. 2 Arbetsupplägg Laborationsarbetet kan delas in i tre faser: 1. Datainsamling i Laboteket. Sker under schemalagd tid och bör kunna vara klar på ca en timme. 2. Beräkningar med Matlab. Dessa genomförs under kursens gång och teorin till uppgifterna återfinns i kapitel 2 6 och föreläsningar 1 7. Då insamlingen av data sker tidigt i kursen så kommer det att vara svårt att utföra någon av uppgifterna redan under labben. 3. Dokumentering av resultat i en teknisk rapport. Rapporten ska kunna läsas fristående från labkompendiet. Alla val ni har gjort ska motiveras tydligt. OBS! Skriv kommentarer och förklaringar till era plottar och er Matlab -kod på ett sådant sätt att det är lätt att följa ert resonemang. Rapporten lämnas direkt till någon av lektionsassistenterna. Skriv labassistentens namn tydligt på rapporten så att den kommer till rätt person. Rapporterna lämnas in gruppvis, dvs två personer per rapport. Observera att uppenbart ihopslarvade rapporter ej kommer att beaktas överhuvudtaget. Glöm ej att ange namn och e-postadress! Tips om rapportskrivande finns i avsnitt 7. 3 Datainsamling Obs! Om datorn ni använder har ett externt ljudkort (liten svart/orange låda) så kan ni behöva göra några extra inställningar innan ni går vidare, se appendix A för detaljer. Har ni ett internt ljudkort kopplas mikrofonen in på detta. Kopiera katalogen r:\digsig\lab1 till c:\lab\. Denna katalog innehåller en SimuLink-fil, digsiglab1.mdl, som ska användas för datainsamlingen. Öppna denna fil i Matlab genom att först göra >> cd c:\lab\lab1 3

och sedan skriva digsiglab1. Välj samplingshastighet genom att sätta variabeln sampletime till lämpligt värde i Matlab. Variabeln rectime anger inspelningens längd i sekunder, sätt denna variabel till lämpligt värde i Matlab. >> sampletime = 1/8000; >> rectime = 2; Det ljud ni spelar in sparas i en.mat-fil, filnamnet anger ni genom att dubbelklicka på blocket To file och skriva in önskat filnamn. Signalen, tillsammans med en tidsvektor, kommer att sparas som en matris med två rader med namnet y i denna fil. Starta sedan simuleringen och tala in ljudet i mikrofonen. Exempel studera det inspelade ljudet: >> load aljud % Ladda in data (aljud <-> filnamn) >> plot(y(1,:),y(2,:)) % Signalamplitud m.a.p. tid >> soundsc(y(2,:),8000) % Lyssna på ljudet Glöm inte att spara datafilerna under era egna konton på h: innan ni lämnar labben, det som har sparats under c:\lab kommer att tas bort vid utloggning. 4 Uppgift: Vissling 4.1 Mål Uppgiften går ut på att försöka vissla en så ren sinusvåg som möjligt och sedan undersöka närmare hur ren visslingen faktiskt blev. 4.2 Utförande och redovisning Välj som tidigare samplingsfrekvensen 8000 Hz och spela in 2 s vissling. Ta in signalen i Matlab och klipp bort eventuella transienter i början och slutet av signalen. Ett mått på en periodisk signals renhet är harmonisk distortion som definieras som ett minus kvoten mellan energin i den dominerande frekvensen och den totala energin. Ett annat mått på renhet fås genom att skatta en andra ordningens AR modell och ta polernas avstånd från enhetscirkeln som mått på distortion. Behandla följande punkter/frågeställningar: 1. Beräkna energin i tidsplanet för hela visslingen, samt för den dominerande komponenten. 2. Gör samma energiberäkningar i frekvensplanet. 3. Beräkna den harmoniska distortionen med energivärdena både från tidsplanet och frekvensplanet (kontrollera att dessa ger ungefär samma resultat). Hur ren är visslingen? 4. Beräkna renhetsmåttet baserat på AR(2)-modellen och motivera varför denna modelltyp är lämplig. Hur kan detta mått jämföras med den harmoniska distortionen? 5. Ta fram spektrum för visslingen och skatta den dominerande frekvensen, dels med en icke-parametrisk metod, dels med en parametrisk metod. 4

Tips: Blås inte direkt in i mikrofonen! Då distorsionen beräknas enligt den första metoden kan man göra energiberäkningarna i frekvens- eller tidsplanet. I frekvensplanet tas ett antal sampel med kring maxvärdet. I tidsplanet appliceras ett bandpassfilter varefter variansen kan beräknas. Glöm ej att gradera axlarna på rätt sätt! Man ska enkelt kunna avläsa frekvensen på visslingen (i Hz eller rad/s). 5 Uppgift: Vokalljud 5.1 Mål Uppgiften går ut på att försöka modellera ett vokalljud med en AR-modell av lämplig ordning och sedan simulera modellen med lämplig insignal och lyssna på resultatet. 5.2 Utförande och redovisning Tala in två vokalljud med samplingsfrekvensen 8000 Hz och längd 2 s, till exempel ett a-ljud och ett o-ljud. Ta som i förra uppgiften bort eventuella transienter i början och slutet av signalen. Behandla följande punkter/frågeställningar: Tips: Modellera vokalljuden med AR-modeller av lämpliga ordningar. Validera de skattade modellerna. Är de skattade modellerna bra? För att svara på denna fråga ska ni använda minst två av de valideringsmetoder som finns beskrivna i kursboken, exempelvis jämförelse mellan modellens prediktioner och verkliga data, jämförelse mellan modellens spektrum med en icke-parametrisk spektralskattning och/eller genom att skatta kovariansfunktioner för residualerna. Simulera även AR-modellerna och lyssna på resultatet: Låter simuleringarna som de ljud ni spelat in? Eftersom vokalljudet är en periodisk signal är det lämpligt att använda ett pulståg som insignal vid simuleringen. Välj intervallet mellan pulserna till periodtiden för signalen. Vid identifiering av ett system med en parametrisk metod (t.ex. AR) är det viktigt att skilja på estimeringsdata och valideringsdata. 6 Uppgift: Talkodning enligt GSM 6.1 Mål Uppgiften går ut på att implementera en enkel variant av den talkodning som används i GSM-näten och undersöka resultatet. 5

6.2 Utförande och redovisning Tala in en signal av längd ca 2 s med samplingsfrekvensen 8000 Hz (för personer med dålig fantasi rekommenderas trädet blåste omkull i stormen ). Den förenklade GSM-kodningen går till på följande sätt: Dela in signalen i segment med 160 sampel i varje. Använd en AR(8)-modell för att modellera ljudet i varje segment. Tag ett pulståg som insignalmodell. Tiden D mellan pulserna och dess amplitud skattas med maximum i kovariansfunktionen för residualerna. Kovariansfunktionen, R e (t), kan exempelvis fås på följande sätt: >> e=filter(m1.a,1,y); % m1 <-> AR-modellen för segmentet >> r=covf(e,100); Finn tidslaggen, D, och amplituden, A, för maximum på R e (t), t > 19. Bilda ett pulståg med amplitud A och pulsavstånd D av längd 160 sampel. Detta ger en vektor som vi kan kalla ehat. Simulera sedan ljudet för varje segment genom: >> yhat=filter(1,m1.a,ehat); Behandla följande punkter/frågeställningar: 1. Implementera GSM-kodningen enligt ovan. Se till att koden detecterar instabila poler och hanterar dem så att inga instabila filter simulears. (Instabila poler ska hanteras i koden även om er signal inte genererar några.) Glöm inte heller att dra bort medelvärdet i varje segment innan identifieringen (mha detrend). Hur låter det rekonstruerade talet? 2. Prova att låta pulståget ha amplitud 1 i alla segment. Vad blir resultatet? 3. Prova att variera modellordningen och lyssna om det låter sämre eller bättre. 4. I GSM-systemet används AR-modeller för att komprimera data. Vilka data måste skickas för att man ska kunna simulera ljudet i varje segment hos mottagaren? Vilken kompressionsgrad motsvarar detta (relativt den råa ljudsignalen)? Tips: En metod för att hantera de instabila filter som eventuellt kan dyka upp är att spegla de instabila polerna för dessa filter i enhetscirkeln (de stabila låter man vara kvar). På detta sätt bevaras filtrets spektralegenskaper. 7 Att tänka på vid rapportskrivning Syftet med varje uppgift ska redovisas i rapporten så den kan läsas separat. I texten ska man tydligt kunna följa ert resonemang. Hänvisningar ska göras till alla figurer och alla slutsatser och tolkningar ska finnas med i den löpande texten. Glöm inte att numrera figurerna så att det är enkelt att hänvisa till dem. 6

Figurer ska graderas och förses med en titel. Om flera kurvor plottas i en figur bör man ange skillnaden mellan kurvorna i figurtexten. I Matlab finns även möjlighet att använda kommandot legend som ger en liten informationsruta som beskriver varje graf i figuren. Ofta ser inte figurerna likadana ut efter utskrift, kolla därför alltid så de är läsbara. Om de inte är det kan man prova att ändra exempelvis linjetjocklek, linjetyp eller textstorlek. Syftet med figurer, bilagor och kod är inte att de ska sammanfatta laborationen/lösningen. Sammanfattningen och slutsatserna ska finnas i texten och figurer m.m. används för verifikation och förtydligande. I en labrapport är det viktigt att förklara vad resultaten av uppgiften innebär! A Inställning av externt ljudkort Detta gäller endast de datorer som har externt ljudkort (orange låda). För den andra typen (inbyggt kort, datorns baksida) behövs inga inställningar! Klicka på I-symbolen längst ner till höger på skärmen, se figur 1. Börja med att kontrollera att HeadPhone and Monitor längst upp till höger är aktiverad (grön). Gör sedan de inställningar som visas i tabell 1. Figur 1: Startsymbol för inställningsapplikationen Kanal Input select Mic preamp Volym Mix IN 1,2 MIC +20 db PÅ, Phantom AV +4.5 AV IN 3,4 MIC +20 db PÅ, Phantom AV +12 AV IN 5,6 IN 7,8 WAVE 1,2 WAVE 3,4 (max) PÅ WAVE 5,6 (max) AV WAVE 7,8 (max) AV MASTER (max) PÅ Tabell 1: De rader i tabellen med streck i alla kolumner motsvarar kanaler som ej används och det spelar ingen roll hur de ställs in. När dessa inställningar är gjorda bör det se ut som i figur 2. Ljudkortets samplingsfrekvens och fördröjning ställs in till 44100 Hz respektive 128 samples enligt figur 3 respektive figur 4. 7

Figur 2: Så här bör det se ut när det är inställningarna i tabell 1 är utförda. Figur 3: Inställning av sampelfrekvensen. 8

Figur 4: Inställning av fördröjningen. 9