51121

Моделювання лінійних систем в часовій та частотній області

Лабораторная работа

Информатика, кибернетика и программирование

Сформувати два синусоїдальних сигнали частоти 3 та 20 Гц тривалістю1 с. Проілюструвати властивість адитивності системи, визначивши реакціюсистеми спочатку на кожний з сигналів окремо, а потім на суму цих сигналів.Проілюструвати властивість однорідності системи.

Украинкский

2014-02-06

500.67 KB

12 чел.

Національний технічний університет України

«Київський політехнічний інститут»

Факультет електроніки

Лабораторна робота № 3

з дисципліни «Теорія сигналів»

«Моделювання лінійних систем в часовій та

частотній області»

Виконав:  студент 3-го курсу

групи ДП-92

 Лонтковський С.А.

Київ – 2011

Мета роботи: дослідити роботу лінійних систем обробки дискретних сигналів; набути навичок моделювання лінійних стаціонарних    дискретних систем в MatLAB.

Порядок роботи

Моделювання роботи ЛДС з використанням різницевого рівняння.

  1.  На основі власної дати народження записати два різницевих рівняння:

у[n] =4/10*x[n]- 7/20*x[n-1]+ 4/20*x[n-2]- 2/30*x[n-3]+ 2/20*x[n-4]- 4/20*x[n-5];(1)

1*y[n]- 4/60*y[n-1]- 0*y[n-2]- 1/50*y[n-3]+ 1/50 *y[n-5]= 4/10*x[n]- 7/20*x[n-1]- 4/20*x[n-2]- 2/30*x[n-3]+ 2/20*x[n-4]- 4/20*x[n-5];  (2)

      2. Сформувати відліки синусоїдального сигналу частоти 10 Гц тривалістю2 сек. амплітуди 1 В, дискретизований з частотою 256 Гц. Розрахувати реакцію  систем (1) та (2) на отриманий сигнал (функція filter).Побудувати графіки вхідного та вихідного сигналів в одному вікні,позначивши точки графіку, що відповідають відлікам, та огинаючі графіків.Побудувати в окремому вікні та порівняти перші 0.1 сек. вхідного та вихідного   сигналу. Зробити висновки.

      3. Розрахувати за допомогою функції filter перші 50 відліків імпульсноїхарактеристики систем (1) та (2) подавши на вхід системи потрібний тестовий сигнал. Побудувати графіки вхідних та вихідних сигналів (функція stem), зробити висновки.

       4. Розрахувати імпульсну характеристику систем (1) та (2) по коефіцієнтам різницевих рівнянь з використанням функції impz. Розрахувати 50 та 500 відліків. Порівняти результати з результатами п. 3, побудувати графіки, зробити висновки.

         5. Сформувати два синусоїдальних сигнали частоти 3 та 20 Гц тривалістю1 с. Проілюструвати властивість адитивності системи, визначивши реакціюсистеми спочатку на кожний з сигналів окремо, а потім на суму цих сигналів.Проілюструвати властивість однорідності системи.

Моделювання роботи ЛДС з використанням рівняння згортки.

         6. Розрахувати реакцію систем (1) та (2) на сигнал з п. 2 з використанням функції розрахунку згортки conv. Побудувати графіки вхідного та вихідногосигналу, аналогічні п. 2. Порівняти з результатами виконання п. 2. Зробити висновки.

7. Відновити імпульсну характеристику ЛДС (1) та (2) по відомим реакції та вхідному сигналу з використанням результатів п. 6 (функція deconv). Зробити висновки.

Моделювання роботи ЛДС в частотній області.

8. Обчислити 20 точок комплексної частотної характеристики систем (1) та (2) з використанням функції freqz. Розрахувати значення КЧХ для частоти дискретизації 1000 Гц для 256-ти значень частоти між 0 Гц та 500 Гц.

9. Розрахувати АЧХ та ФЧХ систем (1) та (2) по обчисленій в п. 8 комплексній частотній характеристиці з використанням функцій abs та phase.Побудувати графіки. Зробити висновки щодо характеру зміни модуля коефіцієнта передачи системи з частотою. Порівняти дві системи.

10. Визначити модуль коефіцієнту передачі двох систем, побудувати графіки.

11*. Побудувати діаграму Боде (логарифмічну АЧХ та ФЧХ) для систем (1) та (2) з використанням функції dbode.

12. Розрахувати реакцію ЛДС (1) та (2) на послідовність прямокутних імпульсів зі шпаруватістю 30 %. Побудувати графіки вхідного та вихідного сигналів, зробити висновки щодо спотворення вихідного сигналу відносно

вхідного.

13. Розрахувати реакцію ЛДС (1) та (2) на вхідний сигнал виміряної раніше власної ЕКГ тривалістю 5 секунд. Побудувати графіки вхідного та вихідного сигналів.

14. Розрахувати реакцію ЛДС на записаний звуковий сигнал. Прослухати вихідний сигнал. Зробити висновки щодо спотворень, які вносять до сигналів системи (1) та (2).

clc;

clear all

close all;

 

a1=1;

b1=[4/10,-7/20,-4/20,-2/30,2/20,-4/20];

a2=[1,-4/60,0,-1/50,1/50];

b2=[4/10,-7/20,-4/20,-2/30,2/20,-4/20];

T=2;

fs=256;

t=[1/fs:1/fs:T];

s=sin(2*10*pi*t);

y1=filter(b1,a1,s);

y2=filter(b2,a2,s);

%dla 6

% d=[1,zeros(1,49)];

% d(1)=1;

% y1=filter(b1,a1,d);

% y2=filter(b2,a2,d);

 

%zadanie 2

figure;

subplot(3,1,1)

plot(t,s)

xlabel('t')

ylabel('s')

title('Входной сигнал')

subplot(3,1,2),plot(t,s,t,y1)

xlabel('t')

ylabel('y1')

title('Входной и выходной сигнал')

subplot(3,1,3),plot(t,s,t,y2)

xlabel('t')

ylabel('y2')

title('Входной и выходной сигнал')

figure;

plot(t,s,t,y1)

legend('Вход', 'Выход');

xlabel('t')

ylabel('y1')

title('Входной и выходной сигнал')

xlim([0 0.1])%obrezaet grafic

figure;

plot(t,s,t,y2)

legend('Вход', 'Выход');

xlabel('t')

ylabel('y2')

title('Входной и выходной сигнал')

xlim([0 0.1])%obrezaet grafic

 

%zadanie 3

d=[1,zeros(1,49)];

d(1)=1;

y1=filter(b1,a1,d);

y2=filter(b2,a2,d);

subplot(3,1,1)

stem(d)

legend('Вход')

xlabel('n')

ylabel('d')

title('Входной сигнал')

subplot(3,1,2)

stem(y1)

legend('Вход')

xlabel('n')

ylabel('h1')

title('Входной сигнал1')

subplot(3,1,3)

stem(y2)

legend('Вход')

xlabel('n')

ylabel('h2')

title('Входной сигнал2')

 

%zadanie 4

figure();

subplot(2,1,1)

impz(b1,a1,50)

subplot(2,1,2)

impz(b1,a1,500)

figure();

subplot(2,1,1)

impz(b2,a2,50)

subplot(2,1,2)

impz(b2,a2,500)

 

%zadanie 5

t=0:1/fs:1;

s1=sin(2*pi*3*t);

s2=sin(2*pi*20*t);

h1=filter(b1,a1,s1);

h2=filter(b1,a1,s2);

h12=filter(b1,a1,s1+s2);

h13=filter(b1,a1,s1*5);

 

subplot(3,2,1),plot(t,h1)

xlabel('t')

ylabel('h1')

subplot(3,2,2),plot(t,h2)

xlabel('t')

ylabel('h2')

subplot(3,2,3),plot(t,h12)

xlabel('t')

ylabel('h12')

subplot(3,2,4),plot(t,h1+h2)

xlabel('t')

ylabel('h1+h2')

subplot(3,2,5),plot(t,h13)

xlabel('t')

ylabel('h13')

subplot(3,2,6),plot(t,h1*5)

xlabel('t')

ylabel('h1*5')

 

%Modeluvannia roboti LDS(zgortka)

 

%zadanie 6

w1=conv(s,y1);

w2=conv(s,y2);

% t1=[0:1/fs:(length(w1)-1)/fs];

t1=[1/fs:1/fs:length(w1)/fs];

subplot(2,1,1),plot(t,s,0:1/fs:(length(w1)-1)/fs,w1),xlim([0 2])

title('Входной и выходной сигнал')

legend('Вход', 'Выход');

xlabel('t')

ylabel('znach1')

subplot(2,1,2),plot(t,s,0:1/fs:(length(w1)-1)/fs,w2),xlim([0 2])

title('Входной и выходной сигнал')

legend('Вход', 'Выход');

xlabel('t')

ylabel('znach2')

 

%zadanie 7

dc1=deconv(w1,s);

dc2=deconv(w2,s);

 

%Modeluvannia roboti LDS(v chastotnii oblasti)

 

%zadanie 8-9-10

figure();

freqz(a1,b1,20);

figure();

freqz(a2,b2,20);

[pp1,f1,n1]=freqz(b1,a1,256,'whole',1000);

[pp2,f2,n2]=freqz(b2,a2,256,'whole',1000);

figure();

subplot(2,1,1),plot(f1,abs(pp1))

title('Модуль коэфициента передачи системы 1')

xlabel('omg')

ylabel('|Ku1|')

grid on;

subplot(2,1,2),plot(f1,abs(pp2))

title('Модуль коэфициента передачи системы 2')

xlabel('omg')

ylabel('|Ku2|')

grid on;

 

%zadanie 12

t1=[0:1/fs:10];

d1=[0:1:10];

y=pulstran(t1+0.15,d1,'rectpuls',0.3);

y11=filter(b1,a1,y);

subplot(2,1,1),plot(t1,y,t1,y11)

xlabel('t')

ylabel('znach')

title('Реакция системы 1')

legend('Вход', 'Выход');

subplot(2,1,2),y22=filter(b2,a2,y);

plot(t1,y,t1,y22)

xlabel('t')

ylabel('znach')

title('Реакция системы 2')

legend('Вход', 'Выход');

%zadanie 13

EKG=fopen('vavreschuk','r');

R=fread(EKG,'int16');

t1=[0:1/fs:(length(R)-1)/(fs)];

y11=filter(b1,a1,R);

y22=filter(b2,a2,R);

subplot(3,1,1),plot(t1,R),xlim([0 (length(R)-1)/(50.4*fs)])

xlabel('t')

ylabel('znach')

title('EKG')

subplot(3,1,2),plot(t1,y11),xlim([0 (length(R)-1)/(50.4*fs)])

xlabel('t')

ylabel('znach')

title('rearc1')

subplot(3,1,3),plot(t1,y22),xlim([0 (length(R)-1)/(50.4*fs)])

xlabel('t')

ylabel('znach')

title('rearc2')

 

%zadanie 14

[zapz2,Fs2,bits2]=wavread('44.1kHz.wav');

y1=filter(b1,a1,zapz2);

y2=filter(b2,a2,zapz2);

wavwrite (y1, 44100, 16, 'smash1.wav')

wavwrite (y2, 44100, 16, 'smash2.wav')


 

А также другие работы, которые могут Вас заинтересовать

4910. Основы программирования на языке турбо паскаль 2.87 MB
  Язык программирования Паскаль, разработанный в 1970 г. профессором Швейцарской высшей политехнической школы Никлаусом Виртом специально для целей обучения студентов, быстро завоевал широкую популярность благодаря своей простоте, логичности языковых ...
4911. Разработка программы-эмулятора для заданной гипотетической ЭВМ 2.3 MB
  В настоящее время получило широкое распространение использование микропроцессоров в качестве встроенных элементов систем автоматического управления,в том числе как управляющих блоков периферийных узлов вычислительных комплексов. Функции...
4912. Алгоритмы и основы программирования 651.5 KB
  Алгоритмы и основы программирования. Краткое содержание: Этапы создания компьютерной программы. Понятие алгоритма. Виды алгоритмов. Представление алгоритмов в виде блок-схем. Понятие о программировании. Системы и языки программирования. Запись алгор...
4913. Организация списочных и древовидных структур 16.05 KB
  Организация списочных и древовидных структур. В тех случаях, когда количество данных, обрабатываемых программой, заранее не известно или изменяется в процессе работы программы, использовать жестко определённые типы данных (массивы) не рационально ил...
4914. Конструкторы и деструкторы 17.73 KB
  Конструкторы и деструкторы Специальные методы объекта, которые предназначены для выполнения настроечных действий в момент создания каждого экземпляра объекта. В концепции ООП конструктор должен активизироваться автоматически, т.е....
4915. Работа с файлами в языке паскаль 17.24 KB
  Работа с файлами в языке паскаль. В языке паскаль с файлами можно работать несколькими способами. Все зависит от того, как этот файл открывается. Один и тот же файл можно открывать разными способами. Правда, если открыть нее тем способом, можно проч...
4916. BGI графика 15.2 KB
  BGI графика. В языках программирования специальных средств для создания графических приложений не было. Единственная возможность выводить графику на экран была только при помощи использования функции bios прямого обращения к видимой памяти. Задача д...
4917. Trubo Pascal. Программное управление работой компьютера 35 KB
  В XIX веке английским математиком и инженером Чарльзом Бэббиджем был разработан проект вычислительной машины, которая предназначалась для автоматического проведения длинных цепочек вычислений. Конструкция его аналитической машины включала 50 тысяч д...
4918. Этапы решения задач на компьютере: 36 KB
  Этапы решения задач на компьютере: Постановка задачи: сбор информации о задаче формулировка условия задачи определение конечных целей решения задачи определение формы выдачи результатов описание данных (их типов, диапазонов вел...