Министерство образования Республики Беларусь БЕЛОРУССКИЙ НАЦИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ Кафедра «Интеллектуальные системы» У Т Н Б й Моделирование каналов передачи информации и в среде MATLAB+SIMULINK р о Учебно-методическое пособие т для студентов специальности и 1-55.01.02 «Интегральные сенсорные системы» з о п е Р Минск 2012 УДК 621.37:621.391 У Составители и разработчики Баркалин В.В., Чашинский А.С., Глушак Д.А. Т Учебно-методическое пособие «Моделирование каналов передачи Н информации в среде MATLAB+SIMULINK» разработано в соответствии с образовательными стандартами высшего образования Республики Беларусь по Б специальности 1-55.01.02 «Интегральные сенсорные системы» и утвержденной программой курса «Физика каналов передачи информ ации и теория связи». й Учебное пособие предназначено для развития у студентов навыков использования среды моделирования MATLAиB для решения технических задач. В пособии описаны высокоуровневый интерпретируемый язык программирования, р инструменты для символьных вычислений, функции обработки сигналов, а также о методы создания и визуализации моделей. т и Одобрено заседанием кафедры «Интеллектуальные системы». з о Белорусский национальный технический университет п пр-т Независимости, 65, г. Минск, Республика Беларусь Тел.(017)292-77-52 факс (017)292-91-37 е E-mail: [email protected] Регистрационный № БНТУ/МСФ82-26.2012 Р © Баркалин В.В., Чашинский А.С., Глушак Д.А. 2012 © Глушак Д.А., компьютерный дизайн, 2012 © БНТУ, 2012 СОДЕРЖАНИЕ Стр. Содержание..................................................................................................................3 1 Состав и интерфейс системы программирования MATLAB. Работа в командном У окне MATLAB .............................................................................................................4 2 Лабораторная работа №1. Работа с матрицами в системе MATLAB. Работа с Т графическими командами и функциями системы MATLAB ...............................12 Н 3 Лабораторная работа №2. Работа с пакетом расширения Symbolic Math системы MATLAB....................................................................................................................16 Б 4 Лабораторная работа №3. Программирование в среде MATLAB: операторы и массивы.............................................................................. .........................................27 й 5 Лабораторная работа №4. Знакомство с пакетом Simulink системы MATLAB...............................................и......................................................36 6 Лабораторная работа №5. Разработка модели бинарного симметричного канала р связи с помехами.......................................................................................................39 о 7 Лабораторная работа №6. Разработка моделей амплитудной, частотной и фазовой т модуляции несущей в пакете расширения Simulink системы MATLAB ............44 и 8 Лабораторная работа №7. Преобразование Фурье в системе MATLAB..........49 9 Лабораторная работа №8. Разработка генераторов сигналов в пакете расширения з Simulink системы MATLAB....................................................................................53 о СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ.................................................57 п е Р 1. СОСТАВ И ИНТЕРФЕЙС СИСТЕМЫ ПРОГРАММИРОВАНИЯ MATLAB. РАБОТА В КОМАНДНОМ ОКНЕ MATLAB Цель работы: ознакомиться с составом и интерфейсом системы У программирования MATLAB. Изучить синтаксис команд языка MATLAB и работу с ними. Т Н Работа рассчитана на 2 академических часа Б Теоретические сведения Командное окно. Инструментальная панель й Командное окно системы MATLAB показано на рисунке 1.1. Здесь же показано ниспадающее меню File. и р о т и з о п е Р Рисунок 1.1 – Командное окно MATLAB В таблице 1.1 приведены опции меню File. Таблица 1.1 – Опции Меню File Опция Назначение И У Открыть в редакторе/отладчике новый файл. нс New Открыть графическое окно Т т Открыть в редакторе/отладчике указанный Open Н ру файл ме Б Close Command Window Закрыть командное окно н Вызов окна загрузки данных Recognized Data Import Data й т Files и ал Save Workspace As Вызов окна сохранения МАТ-файла р ьн Вызов средства просмотра путей доступа Set Path Path Brоowser ая Preferences тВыбор характеристик па и не Print Setup Установка опций принтера з ль Print Установка опций вывода на печать о Print Selection Печать выделенного фрагмента п Иенструментальная панель (рисунок 1.2) командного окна системы MATLAB позволяет обеспечить простой доступ к операциям над М-файлами. Р Рисунок 1.2 – Инструментальная панель MATLAB Эти операции включают: • создание нового М-файла (New File); • открытие существующего М-файла (Open File); • удаление фрагмента (Cut); У • копирование фрагмента (Copy); • вставка фрагмента (Paste); Т • восстановление только выполненной операции (Undo); Н • вызов Simulink Library Browser (Simulink) • вызов окна GUIDE Quick Start (GUIDE) Б • просмотр путей доступа (Path Browser); • текущая помощь (Help). й Рабочая область и Рабочая область системы MATLAB - это область памяти, в которой р размещены переменные системы. Содержимое этой области можно просмотреть из о командной строки с помощью команд who и whos. Команда who выводит только т имена переменных, а команда whos - информацию о размерах массивов и типе и переменной. Рассмотрим в качестве примера 5 массивов различного типа: з • A – трехмеорный массив чисел удвоенной точности; • B – массив разреженной структуры; п • С – массив ячеек; е • S – массив символов; Р • patient – массив записей. Специальное средство просмотра Workspace Browser обеспечивает представление команды whos в виде графического интерфейса. Для того чтобы открыть Workspace Browser надо либо выбрать опцию Show Workspace из меню File menu, либо воспользоваться кнопкой Workspace Browser инструментальной панели. В результате этих операций на терминал будет выедено следующее окно (рисунок 1.3). У Т Н Б Рисунок 1.3 – Рабочая облайсть MATLAB и В этом окне можно выполнить следующие операции: р • удалить переменную, если выделить ее и нажать кнопку Delete; • закрыть окно с помощью кнопоки Close. Кроме того, можно изменять размеры колонок посредством перемещения их т границ с помощью мыши. Можно выполнить переименование переменной, если и сначала выделить ее, затем однократно щелкнуть левой клавишей мыши (заметим, з что двойной щелчок никакого действия не оказывает). После короткой задержки о появляется поле, в котором можно указать новое имя; и наконец, следует нажать клавишу Enпter, чтобы подтвердить завершение операции. Загрузка и сохранение рабочей области е Команды save и load позволяют в любой момент времени сохранить Р содержимое рабочей области или загрузить новые данные в процессе сеанса работы. Список путей доступа. Для поиска М-файлов система MATLAB использует механизм путей доступа, поскольку М-файлы записываются в каталоги или папки файловой системы. Например, при поиске файла с именем smart MATLAB выполняет следующие действия: • просматривает, не является ли smart именем переменной; • просматривает, не является ли smart встроенной функцией; У • ищет в текущем каталоге М-файл с именем smart.m; • ищет М-файл с именем smart.m во всех каталогах списка путей доступа. Т Работа со списком путей доступа. В процессе сеанса работы можно вывести Н на терминал или внести изменения в список путей доступа, используя следующие функции: Б • path выводит на экран списка путей доступа; • path(s) заменяет существующий список списком s; й • addpath /home/lib и path(path, '/home/lib')-- добавляют новый каталог в список путей доступа; и • rmpath /home/lib-- удаляет путь /hoрme/lib из списка. Список путей доступа, используемый по умолчанию, определен в файле о pathdef.m, который размещен в каталоге local; этот файл выполняется при каждом т запуске системы MATLAB. и Кроме работы из командной строки существует средство просмотра путей доступа Path Browser, которое поддерживает удобный графический интерфейс для з просмотра и изменения списка путей. Однако более предпочтительно вносить о непосредственные изменения в М-файл pathdef.m, используя какой-либо текстовый п редактор, в том числе и редактор/отладчик системы MATLAB. е Текущий каталог. Система MATLAB использует понятие текущего каталога пРри работе с М- и МАТ-файлами во время сеанса работы. Начальный текущий каталог определен в файле запуска, который ассоциирован с ярлыком запуска системы MATLAB, расположенном на рабочем столе. Щелчок правой кнопки мыши, установленной на этом ярлыке, и выбор опции Properties позволяет изменить начальный каталог, используемый по умолчанию. Для вывода текущего каталога на экран терминала предназначена команда cd. Для изменения текущего каталога следует использовать команду cd <новый путь доступа>. Для редактирования М-файла используется команда edit <имя файла>. Арифметические операторы + plus Сложение - minus Вычитание У * mtimes Умножение матриц .* times Поэлементное умножение для массивов Т ^ mpower Возведение матрицы в степень Н .^ power Возведение в степень для массивов / mrdivide Правое деление матриц Б ./ rdivide Правое деление для массивов й Операторы отношения == eq Тождественно и ~= ne Не тождественно р < lt Меньше о > gt Больше т <= le Меньше или равно и >= ge Больше или равно з Логические операторы о & and Логическое И п | or Логическое ИЛИ е ~ not Логическое НЕТ Р xor Логическое ИСКЛЮЧИТЕЛЬНОЕ ИЛИ any Истинно, если хотя бы 1 элемент вектора не равен нулю all Истинно, если все элементы вектора не равны нулю Специальные символы : Сечение массива () Указание последовательности выполнения операций [] Формирование массива У {} Многомерные массивы . Десятичная точка (разделитель) Т ... Продолжение строки Н ; Подавление вывода эхо-результата % Комментарий Б ! Вызов команды операционной системы = Присваивание й ' Кавычка .' transpose Транспонирование элемеинтов массива ' ctranspose Транспонирование элементов матрицы р о Специальные переменные и константы т pi 3.141592653589793e+000 и i, j Мнимая единица, inf зБесконечное значение, NaN о Нечисловое значение п Справочные команды е help Текущая справка в командной строке Р demo Демонстрационные примеры