МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ "ЛЬВІВСЬКА ПОЛІТЕХНІКА"
ВИВЧЕННЯ ІНСТРУМЕНТАЛЬНИХ ЗАСОБІВ МОДЕЛЮВАННЯ СИГНАЛІВ У СЕРЕДОВИЩІ МАТЛАБ
ІНСТРУКЦІЯ
до лабораторної роботи № 1
з курсу " Засоби прийому та обробки інформації в системах технічного захисту"
для студентів базового напряму
6.170102 "Системи технічного захисту інформації"
Затверджено
на засіданні кафедри
"Захист інформації"
Протокол N від
Львів 2010
Вивчення інструментальних засобів моделювання сигналів у середовищі МАТЛАБ: Інструкція до лабораторної роботи № 1 з курсу "Засоби прийому та обробки інформації в системах технічного захисту" для студентів базового напрямку "Системи технічного захисту інформації" усіх форм навчання / Укл. Ю. В. Лах, І. А. Прокопишин. – Львів: НУЛП, 2010. – 8 с.
Укладачі: Ю. В. Лах, канд. фіз.-мат. наук, І.А.Прокопишин, канд. фіз.-мат., доц.
Відповідальний за випуск : Ю. В. Лах, канд. фіз.-мат. наук
Рецензенти: Р. М. Джала, док. техн. наук, проф., Я. Р. Совин, канд. техн. наук, доц.
Програми склав та відлагодив доц. каф. захисту інформації Лах Ю. В.
МЕТА РОБОТИ – вивчити засоби МАТЛАБ для моделювання детермінованих і випадкових сигналів із заданими параметрами.
ОСНОВНІ ТЕОРЕТИЧНІ ВІДОМОСТІ
У середовищі МАТЛАБ реалізовано широкий набір функцій для аналізу сигналів. Нижче описано основні з них.
1. Функції генерування сигналів
У комп’ютері сигнал можна представити лише в дискретному вигляді як послідовність чисел або як вектор (числовий масив) скінченої розмірності. Значення сигналу чи його відліки «прив’язані» до певних часових значень, тому для генерації сигналів необхідно визначити інтервал часу та крок часової дискретизації. Генерація часового сигналу складається з двох етапів – задати вектор (масив) часу та обчислити значення функції для цього масиву часу.
Генерація часових функцій
Приклади заданого масиву часу на мові МАТЛАБ (табл. 1).
Таблиця 1
Команда МАТЛАБ
Коментарі
>> t=0:0.1:1;
% час в інтервалі 0 до 1с з кроком 0.1 с
>>fs=1000; t=0:1/fs:10;
% сигнал з частотою дискретизації 1 кГц
в інтервалі часу від 0 до 10 с
>>To=1;Tk=100;Ts=1;
>>t=To:Ts:Tk;
% час в інтервалі от 1 до 100 с з кроком 1 с
Приклади заданих неперервних функцій часу на мові МАТЛАБ (табл. 2).
Таблиця 2
Команда МАТЛАБ
Коментарі
>> t=0:0.1:1;fi=pi/4;omega=2*pi*100;
>> x1=cos(omega*t+fi); plot(x1);
% гармонічний сигнал з початковою
фазою 45 град і частотою 100 Гц
>>alpha=1000; t=0:1/fs:10;
>> x2=exp(-alpha*t); plot(t,x2);
% сигнал з частотою дискретизації
1 кГц в інтервалі часу від 0 до 10 с
Приклади заданих кусково-неперервних функцій часу в мові МАТЛАБ (табл. 3).
Таблиця 3
Команда МАТЛАБ
Коментарі
>> t=0:0.1:10;
>> x1=1.* (t>1); plot(t,x1);
% сигнал “сходинка” з моменту часу 1 с
>>al=1000; t=0:1:10;T=5;
>> x2=al*t/T.*(t>0).*(t<T); plot(t,x2);
% сигнал трикутної форми на інтервалі 5 с
Генерування одинарних імпульсів (табл. 4)
Таблиця 4
Команда МАТЛАБ
Коментарі
>> t=0:0.1:10; T=1;
>> x=rectpuls(t,T); plot(t,x);
% сигнал - прямокутний імпульс
на інтервалі часу 0.5 с
>> t=0:1:10;T=5;skew=1;
>> x2=tripuls(t,T, skew); plot(t,x2);
% сигнал - трикутний імпульс на
інтервалі часу 5 с з вершиною
в точці 2.5 с
>> t=-10:0.1:10;
>> x=sinc(t/pi); plot(t,x);
% сигнал з обмеженою смугою
частот на інтервалі часу 20 с
>> t=-10:0.1:10;fc=1000;bw=0.5;bwr=-6;
>> x=gauspuls(t,fc,bw,bwr); plot(t,x);
% гауса радіоімпульс c параметрами: fc – несуча частота; bw – відносна спектру (ширина спектру, поділена на несучу); bwr – рівень в децибелах відносної ширини спектру
Генерування періодичних сигналів (табл. 5)
Таблиця 5
Команда МАТЛАБ
Коментарі
>> T=1;Tf=10;Ts=0.01;
>>[x,t]=gensig(‘sin’,T,Tf,Ts); plot(t,x);
% гармонічний сигнал на інтервалі часу 10 с з періодом 1 с и частотою квантування 100 Гц
>> T=1; Tf=10;Ts=0.01;
>>[x,t]=gensig(‘square’,T,Tf,Ts); plot(t,x);
% періодичний прямокутний біполярний сигнал на інтервалі часу 10 с з періодом 1 с і частотою квантування 100 Гц
>> T=1; Tf=10;Ts=0.01;
>>[x,t]=gensig(‘pulse’,T,Tf,Ts); plot(t,x);
% періодичний прямокутний
однополярний сигнал на інтервалі часу 10 с з періодом 1 с і частотою квантування 100 Гц
>> t=0:0.001:10;f0=1;f1=100;t1=10;
>>x=chirp(t,f0,t1,f1); plot(t,x);
% гармонічний сигнал зі змінною частотою на інтервалі часу 10 с від 1 Гц до 100 Гц
>> t=0:0.001:10;dyt=50;
>>x=square(t,dyt); plot(t,x);
% послідовність прямокутних біполярних імпульсів, dyt – відношення довжини
імпульсу до періоду в процентах
Генерування випадкових сигналів (табл. 6)
Таблиця 6
Команда МАТЛАБ
Коментарі
>>n=100;x=rand(1,n);plot(x);
% випадковий дискретний сигнал с рівномірним розподілом на інтервалі (0;1)
>>n=100;x=randn(1,n);plot(x);
% % випадковий дискретний сигнал с нормальним розподілом (середнє – 0, дисперсія – 1)
>> n=25;hist(x,n)
% побудова гістограми по 25 інтервалах
2. Функції дискретного перетворення Фур’є (табл. 7)
Таблиця 7
Команда МАТЛАБ
Коментарі
>>n=128;Fs=200;X=fft(x,n);
>>plot(abs(Х),(0:n-1)/(n-1)*Fs);
% дискретне перетворення Фур’є сигналу по 128 відліках, побудова графіку АЧХ
>> n=256;x=ifft(X,n);
% дискретне обернене перетворення Фур’є сигналу по 256 відліках комплексного спектру Х
3. Функції аналізу неперервних систем в частотній області (табл. 8)
Таблиця 8
Команда МАТЛАБ
Коментарі
>>a=[2 3 1];b=[1 0];X=freqs(b,a);
% обчислення комплексного коефіцієнта передачі
>>a=[2 3 1];b=[1 0]; [X,w]=freqs(b,a);
>>plot(w,abs(X)); grid on
% обчислення комплексного коефіцієнта передачі для набору частот и побудови АЧХ в лінійному
масштабі
>>a=[2 3 1];b=[1 0]; [X,w]=freqs(b,a);
>>plot(w, unwrap (angle(X))*180/pi)
% обчислення комплексного коефіцієнта передачі для набору частот і побудова ФЧХ в лінійному
масштабі
>>a=[2 3 1];b=[1 0]; sys=tf(b,a);
>> bode(sys)
% побудова АЧХ и ФЧХ фільтра
в логарифмічному масштабі
4. Функції задавання лінійного фільтра
Функції задавання лінійного неперервного фільтра (табл. 9)
Таблиця 9
Команда МАТЛАБ
Коментарі
>>a=[2 3 1];b=[1 0];sys=tf(b,a);
% задавання фільтра (системи) у формі
передавальної функції
>>z=[2 3 1];p=[1 0];k=[1];
>>sys=zpk(z,p,k);
% задавання фільтра (системи) у формі
передавальної функції через нулі, полюси та коефіцієнт підсилення фільтра
>>[z,p,k]=tf2zp(b,a)
% перетворення форми TF в форму
ZPK
>>[num.den]=zp2tf(z,p,k)
% перетворення форми ZPK в форму TF
Функції задавання лінійного дискретного фільтра (табл. 10)
Таблиця 10
Команда МАТЛАБ
Коментарі
>>a=[2 3 1];b=[1 0];Ts=0.1;
>>sys=tf(b,a,Ts);
% задавання дискретного фільтра (системи) в формі передавальної функції
>>z=[2 3 1];p=[1 0];k=[1]; Ts=0.1;
>>sys=zpk(z,p,k);
% задавання дискретного фільтра (системи) в формі передавальної функції через
нулі, полюси і коефіцієнт підсилення фільтра
>>[z,p,k]=tf2zpk(b,a)
% перетворення форми TF в форму ZPK
2. ЗАВДАННЯ
Вихідні данні – вид сигналу, значення параметрів сигналу представлені в табл.1.
Порядок виконання лабораторної роботи:
1. Ознайомитись із основами теорії сигналів.
2. Отримати варіант роботи у викладача.
3. Загрузити систему МАТЛАБ в комп’ютер.
4. Створити скрипт-файл лабораторної роботи.
5. Побудувати графіки сигналів і перенести їх у звіт.
6. Загрузити систему СІМУЛІНК.
7. Згенерувати сигнал, використовуючи блоки системи СІМУЛІНК.
8. Побудувати графіки сигналів з допомогою блоків бібліотеки Sinks
та Sources.
9. Оформити звіт.
3. ВИКОНАННЯ ЛАБОРАТОРНОЇ РОБОТИ
Завантаження системи МАТЛАБ. Знайти на робочому столі комп’ютера іконку системи МАТЛАБ і провести запуск. За відсутності іконки виконати запуск через послідовність операцій ПУСК-ПРОГРАМИ-МАТЛАБ.
Створення скрипт-файлу. Відкрити новий М-файл на панелі інструментів для створення програми, набрати необхідні команди МАТЛАБу для виконання роботи. Зберегти програму в робочому каталозі.
Таблиця 1
Номер
Вид сигналу
Параметри сигналу
варіанту
амплітуда
частота, Гц
час, с
1
Сходинка («скачок»)
10
––
10
2
Сходинка («скачок»)
100
––
50
3
Сходинка («скачок»)
1
––
10
4
Біполярний прямокутний періодичний сигнал («меандр»)
10
1
10
5
Біполярний прямокутний періодичний сигнал («меандр»)
1
10
1
6
Біполярний прямокутний періодичний сигнал («меандр»)
10
100
0,1
7
Біполярний прямокутний періодичний сигнал («меандр»)
0,1
1000
0,01
8
Однополярний прямокутний періодичний сигнал
0,5
10
1
9
Однополярний прямокутний періодичний сигнал
1
100
0,1
10
Однополярний прямокутний періодичний сигнал
10
1000
0,01
11
Однополярний прямокутний періодичний сигнал
0,1
10000
0,001
12
Гармонічний сигнал
1
10
1
13
Гармонічний сигнал
10
100
0,1
14
Гармонічний сигнал
0,1
1000
0,01
15
Періодичний сигнал з лінійно наростаючою амплітудою
Від 1 до 10
10
10
16
Періодичний сигнал з лінійно наростаючою амплітудою
Від 100 до 500
100
0,1
17
Періодичний сигнал з лінійно наростаючою амплітудою
Від 0,01 до 1
1000
0,01
18
Періодичний сигнал з лінійно наростаючою частотою
1
Від 1 до 10
1
19
Періодичний сигнал з лінійно наростаючою частотою
5
Від 10 до 100
0,1
20
Періодичний сигнал з лінійно наростаючою частотою
10
Від 100 до 300
0,1
21
Випадковий сигнал із нормальним розподілом
МС* - 1 СКВ* - 0,5
––
1
22
Випадковий сигнал із нормальним розподілом
МС - 10 СКВ - 1
––
0,1
23
Випадковий сигнал із нормальним розподілом
МС - 100 СКВ - 5
––
0,1
24
Випадковий сигнал із нормальним розподілом
МС - 0 СКВ - 0,1
––
1
*МС – математичне сподівання, СКВ – середньо-квадратичне відхилення.
Відладка програми та її виконання. Запустити програму через введення імені програми в командному вікні МАТЛАБу. При повідомленні помилоквиконати необхідні виправлення.
Загрузка системи СІМУЛІНК. Загрузити систему СІМУЛІНК з допомогою натиснення клавіші на інструментальній панелі системи або вводу команди simulink в командному вікні МАТЛАБу. Відкрити нове вікно для створення блок-схеми моделювання сигналів. Вибрати послідовно бібліотеки Sinks, Sourse для «перетягування» необхідних блоків в робоче вікно. З’єднати блоки і виконати моделювання з допомогою клавіші Start. Результати моделювання перенести в звіт.
4. ЗМІСТ ЗВІТУ
Звіт повинен містити: мету роботи, варіант завдання, скрипт-файл генерації сигналів, блок-схему генерації сигналів в системі СІМУЛІНК, форми отриманих сигналів.
5. СПИСОК ЛІТЕРАТУРИ
Дьяконов В. П. MATLAB 6. Учебный курс. – СПб.: Питер, 2001. – 592 с.
Обробка сигналів: Підручник/ В.П. Бабак, В.С. Хандецький, Е. Шрюфер. – Київ: Либідь, 1996. – 392 с.
Основи теорії сигналів: Підручник / За ред. Б.А. Мандзія. – Львів: Вид. НУ "Львівська політехніка", 2008. – 240 с.
Основы теории цифровой связи / В. И. Кортунов, В. В. Лукин. – Учеб. пособие по лаб. практикуму. – Харьков: Нац. аэрокосм. ун-т "ХАИ", 2006. – 65 с.
Сергиенко А.Б. Цифровая обработка сигналов. – СПб.: Питер, 2002. – 608 с.
Хома В.В. Основи збору, передачі та оброблення інформації: Навч. посібник. – Львів: Вид. НУ "Львівська політехніка", 2007. – 312 с.