Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Учебно-методическое пособие по курсу Компьютерное моделирование обработки сигналов в информационных системах
.pdf
11
В табл. 1 приведены основные команды и параметры диалога MATLAB.
Раздел
меню
Имя команды
Описание команды
File
New
Позволяет пользователю создавать новые m-файлы (M-file)
или новые графические окна (Figure)
Open M-file
Для открытия и просмотра, а также внесения изменений и
корректировок пользователю доступен любой m-файл из
включённых в список поля "Имя файла"
Save Workspace As
На экране появится окно для диалога, с помощью
которого можно сохранить текущее состояние системы
Run M-file
Диалоговое окно позволяет пользователю с помощью кноп-
ки Browse осуществить просмотр и выбор m-файла с последующим запуском выбранного файла в работу
Edit
Cut
Вырезать
Copy
Копировать
Paste
Вставить
Clear Session
Очистка командного окна
Options
Numeric Format
Позволяет пользователю выбрать и задать выходной формат
числовых данных
Turn Echo on
(off)
Включение (отключение) режима отображения листинга
script-файла
(Disable) Enable Background Process
(Блокировка) Разрешение выполнения фоновых процессов
Font
Изменение типа используемого шрифта, задание ему соот-
ветствующего цвета и размера
Windows
Доступны команды, позволяющие вы-
звать любое из активных окон текущего сеанса работы с
MATLAB
Help
Данное окно позволяет пользователю работать с помощью
Таблица 1

12
В MATLAB имеется обширная справочная система для решения вопросов,
возникающих при работе с программой.
Современные языки программирования делятся на компиляторы и ин-
терпретаторы. Компиляторами являются те программы, которые транслируют
алгоритмы на машинный язык программирования. Компиляторы обеспечивают
преобразование целиком программы, и только затем программа исполняется.
Вместе с тем, команды исходного языка программы значительно отличаются по
организации и мощности от команд машинного языка. Существуют языки, в
которых одна команда исходного языка транслируется в 7-10 машинных команд.
Интерпретатором являются те программы, которые осуществляют пооператорную
трансляцию и выполнение исходной программы. Распознав команду исходного
языка, он тут же выполняет её. Как в компиляторах, так и в интерпретаторах
используются одинаковые методы анализа исходного текста программы. Но
интерпретатор позволяет начать обработку данных после написания даже одной
команды. Это делает процесс разработки и отладки программ более гибким.
Кроме того, отсутствие выходного машинного кода позволяет не «захламлять»
внешние устройства дополнительными файлами, а сам интерпретатор можно
достаточно легко адаптировать к любым машинным архитектурам, разработав его
только один раз на широко распространённом языке программирования.
Программное обеспечение MATLAB является интерпретатором и позволяет
проводить прямые вычисления, т.е. вычисления без подготовки программы
пользователем. Также в состав пакета MATLAB входит компилятор на языке
C/C++.
Очень важным составляющим компонентом пакета MATLAB является –
Simulink, представляющий собой графический инструмент имитационного моде-
лирования, позволяющий при помощи блок-диаграмм в виде направленных
графов, строить динамические модели, включая дискретные, непрерывные и
гибридные, линейные и нелинейные.
Интерактивная среда Simulink позволяет использовать уже готовые библио-
теки блоков для моделирования различных систем, а также применять развитый

13
модельно-ориентированный подход при разработке систем управления, средств
цифровой связи и устройств реального времени. Дополнительные пакеты расши-
рения Simulink позволяют решать весь спектр задач от разработки концепции
модели до тестирования, проверки, генерации кода и аппаратной реализации. На
Рис. 1 представлена библиотека блоков, позволяющая проводить поиск по существующим блокам и добавлять их в пользовательскую модель.
Рис. 1. Библиотека блоков Simulink
Процесс создания модели можно разделить на несколько основных этапов:
1. Открытие окна модели
По команде меню File/New/Model (Файл/Новый/Модель) открывается новое
безымянное окно для создания новой модели системы (Рис. 2).

14
Рис. 2. Окно создания новой модели
В нижней строке состояния модели отображаются следующие сведения:
стадия моделирования – Ready (Завершено) или Running (Выполнение);
масштаб модели, по умолчанию – 100%;
индикатор процесса моделирования (активен при запуске модели);
выбранный решатель.
2. Настройка модели
Для настройки модели необходимо открыть окно параметров конфигурации
по команде меню Simulation/Configuration Parameters (Моделирование/Параметры
конфигурации). Параметры моделирования задаются в правой панели, разделенной на четыре группы (Рис. 3).

15
Рис. 3. Окно параметров конфигурации
В группе Simulation time (Время моделирования) задается интервал моделирования. В поле ввода Start time (Начальное время) задается начальное время
моделирования в секундах, а в поле вводе Stop time (Время остановки) – конечное
время моделирования.
Выбирать интервал моделирования необходимо, исходя из целей процесса
моделирования. Если же необходимый интервал неизвестен, то в поле Stop time
можно указать значение inf (бесконечность) и остановить процесс моделирования
вручную.
Интервал моделирования не следует принимать за реальное время, так как он
зависит от многих факторов, например, шага моделирования, сложности модели,
вычислительной мощности компьютера и др.
В группе Solver options (Параметры решателя) выбираются параметры решателя. Решателем называют скрытые от пользователя средства Simulink, позволяющие проводить процесс моделирования. Различают два типа решателя – реша-

16
тель с фиксированным шагом моделирования и решатель с переменным шагом
моделирования. При моделировании дискретных систем, как правило, выбирают
фиксированный шаг моделирования.
3. Добавление блоков в модель и редактирование их параметров
Новая модель создается методом drag-and-drop («перетащить и отпустить»).
Добавление блоков в модель осуществляется последовательным перетаскиванием
их в окно модели.
Добавим в модель генератор синусоидального сигнала Sine Wave. Блок Sine
Wave генерирует гармонический сигнал (синусоиду):
.
На Рис. 4 отображены параметры блока Sine Wave. Пользователю предлагается
выбрать необходимые параметры синусоидального сигнала:
Sine type (тип синусоиды): Time based (аналоговая), Sample based (дискретная);
Time (время);
Amplitude (Амплитуда) – амплитуда А;
Bias (смещение) – смещение bias (постоянная составляющая);
Sample time (интервал времени) – интервал между соседними значениями
сигнала в процессе моделирования;
Interpret vector parameters as 1-D (интерпретировать вектор параметров как
одномерный (1-D)) – флаг интерпретации вектора параметров;
Frequency (rad/sec) (Частота (рад/с)) – частота ω в рад/с;
Phase (rad) (фаза (рад.)) – фаза φ в рад.
Samples per period (Количество отсчетов на периоде) – количество отсчетов на
периоде;
Number of offset samples (Количество сдвигаемых отсчетов) – задержка сигна-
ла в количестве отсчетов.

17
Рис. 4. Параметры блока Sine Wave
4. Соединение блоков
Соединение блоков можно выполнять вручную или автоматически. При руч-
ном соединении блоков необходимо соединить входы и выходы блоков курсо-
ром мыши. Автоматическое соединение блоков позволяет соединить блоки
кликом мыши с зажатой клавишей «Ctrl».

18
5. Сохранение содержимого окна модели
Для сохранения модели необходимо выполнить команду меню File/Save
(Файл/Сохранить), после чего в открывающемся окне Save as (Сохранить как)
задать уникальное имя модели, которая будет сохранена в формате mdl
[5, с. 508-574; 6, с. 77-86; 7, с. 41-91; 9, с. 31-50, 83-85].
5. Моделирование случайных величин
Случайной величиной называется величина, которая в результате испытания
может принимать то или иное значение. Моделированием случайной величины
называют процесс получения на ЭВМ выборочных значений этой величины.
Исходными данными для моделирования случайной величины на ЭВМ служат
числа, равномерно распределённые в интервале [0;1], которые вырабатываются
встроенным в ЭВМ программным датчиком случайных чисел.
Для моделирования случайной величины X необходимо получить её выборочные независимые значения X1… XN с одинаковым распределением вероятностей, совпадающим с распределением случайной величины X. В MATLAB существуют встроенные функции для генерирования типовых случайных величин.
5.1. Моделирование случайных величин с равномерны распределением
Существуют различные методы преобразования случайных чисел с равно-
мерным распределением в случайные числа с заданным законом распределения.
Например, в качестве нормально распределенных случайных чисел можно ис-
пользовать сумму нескольких независимых случайных чисел с равномерным
распределением.
В случае равномерного распределения величина X может равномерно принимать любые значения внутри интервала [0;1]. Чтобы получить одно такое
случайное значение, в MATLAB используется функция rand:
. (5.1)
При повторном запуске на исполнение этой программы величина X примет
уже другое значение, но тоже в интервале от 0 до 1. При последующих запусках

19
на исполнение этой строки каждый раз мы будем получать независимые значения
случайной величины X.
В некоторых случаях необходимо, чтобы случайная величина имела равно-
мерное распределение не в интервале [0;1], а в произвольном заданном интервале.
Случайная величина Y уже будет иметь равномерное распределение в интервале
от a до b:
. (5.2)
X и Y – это непрерывные случайные величины, то есть возможные значения
данных величин образуют некоторое непрерывное множество. В случае непре-
рывной случайной величины имеет смысл говорить о вероятности попадания
случайной величины в интервал, а не о вероятности того, что она примет какое-то
конкретное значение.
Часто стоит задача формирования значения случайной дискретной случай-
ной величины. Возможные значения дискретных случайных величин образуют
конечную или бесконечную последовательность чисел, не заполняющих сплошь
никакого интервала. Если случайная величина – дискретная, то ее моделирование
можно свести к моделированию дискретной случайной величины с равномерным
распределением:
. (5.3)
Подобное моделирование может потребоваться в том случае, если мы имитируем систему связи и на входе должен быть смоделирован информационный
поток.
X = rand (1);
if X ≥ 0.5
then Y = 1;
else Y = 0;
end;
Получаем значение Y, равное либо 0, либо 1 с равными вероятностями.

20
. (5.4)
Мы можем сформировать двоичную случайную величину с произвольным рас-
пределением, используя в качестве датчика функцию rand.
X =rand (1);
if X ≤ p
then Y = 0
else Y =1;
end;
При повторном запуске программы мы будем получать независимые значе-
ния величины Y.
5.2. Моделирование гауссовской случайной величины
Величина X называется гауссовской, или нормальной случайной величиной,
если ее плотность вероятности имеет вид:
, (5.5)
где m – математическое ожидание (среднее значение), σ – среднеквадратическое
отклонение, σ
2
– дисперсия.
Рис. 5. Плотность нормального распределения
Шумы и помехи в системах связи и в технических системах часто имеют
гауссовское распределение. В этих системах помеха — это сумма различных
воздействий шума. В теории вероятности имеет место центральная предельная
теорема: «Сумма большого количества случайных величин — это случайная
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
