Page 7 - 6858
P. 7

% [s,t]=ton_sig(B,f1,Fi1,Fs,N1)
            %---------------------------------------
            % генерування гармонійного сигналу
            % у = B * sin(2*pi*f1*x + Fi1)
            % B - амплітуда;
            % N1 - кількість відліків сигналу;
            % f1 - частота;
            % Fs - частота дискретизації;
            % Fi1 - начальнаЯ фаза сигналу
            %---------------------------------------
            function [у,x] = ton_sig( B, f1, Fi1, Fs, N1 )
            %---------------------------------------
            x = (0:N1-1)/Fs;    % моменти часу
            у = B * sin( 2*pi*f1*x + Fi1 );
            %-------- кінець функції ton_sig.m ----------
            Тепер m-скрипт генерування того ж відрізання косинусоїди виглядатиме так:
            % гармонійний сигнал
            [s,t]=ton_sig(1,100,pi/2,1000,20)  % обчислення відліків сигналу
            plot(t,s)                      % виведення графіка
            title('Гармонійний сигнал')    % заголовок
            xlabel('ЧАС, з'); ylabel('Рівень');   % написи уздовж осей
            grid on                          % координатнаЯ сітка
                   Як видимий, тепер числові значення вхідних даних задаються як аргументи m-функции
            ton_sig.m. Вихідні дані функції використовуються для побудови графіка.
                   Очевидно,  застосування  m-функций  вигідне  тоді,  коли  алгоритм  формування  значень  функції  досить
            складний: міститься багато команд і звернень до різноманітних бібліотечних функцій з непростим синтаксисом.
                   Очевидний і недолік m-функций – необхідно пам'ятати їх синтаксис. Втім, отримати потрібну інформацію
            можна, якщо в командному вікні задати команду help:
            >> help ton_sig
                   В результаті на моніторі відобразиться коментар, з якого починається m-функция. Для приведеного вище
            прикладу текст допомоги має наступний вигляд:

            %-------функциЯ ton_sig.m -----------
            % [s,t]=ton_sig(B,f1,Fi1,Fs,N1)
            %---------------------------------------
            % генерування гармонійного сигналу
            % у = B * sin(2*pi*f1*x + Fi1)
            % B - амплітуда;
            % N1 - кількість відліків сигналу;
            % f1 - частота;
            % Fs - частота дискретизації;
            % Fi1 - начальнаЯ фаза сигналу
            %---------------------------------------

                   Таким  чином,  очевидний  вивід:  дуже  важливо  при  програмуванні  m-функций  забезпечувати  їх
            якісним і докладним коментарем.
                                         Моделювання дискретних сигналів в Simulink
                   Генерування сигналів в Simulink, природно, має свої особливості. Розглянемо їх.

            Візьмемо з бібліотеки блоків Simulink два блоки: Sine Wave (з розділу Sources) і Scope (з розділу Sinks). З'єднавши
            їх, отримаємо нехитру схему (рис.1.4).
            Потім подвійним клацанням по блоку осцилоскопа активізуємо вікно, що імітує екран осцилоскопа, і запустимо
            модель (кнопка Start simulation). В результаті отримаємо зображення відрізання синусоїди (рис.1.5).




                                                                                     Рис.1.4
                                                                                                               7
   2   3   4   5   6   7   8   9   10   11   12