Блок Band–Limited White Noise
Формирует процесс в виде частотно–ограниченного белого шума и имеет следующие параметры настройки (рис. 1.4):
· Noise Power – значение мощности белого шума;
· Sample Time – такт дискретности, значение дискреты времени (определяет верхнее значение частоты процесса);
· Seed– начальное значение генератора случайной величины;
· Interpret vector parameters as 1-D– интерпретировать вектор как массив скаляров.
На рис. 1.5 приведен пример реализации процесса с помощью блокаBand–Limited White Noise при параметрах, указанных на рис. 1.4. Работа по сборке S–модели заключается в том, что изображения выбранных блоков мышью перетаскиваются из окна раздела библиотеки в окно сборки модели (в данном случае в пустое окно untitled), а затем выходы одних блоков в окне сборки соединяются со входами других блоков. Технология перетаскивания блока такова: следует установить курсор на изображении блока в окне раздела библиотеки, нажать левую кнопку мыши и, не отпуская кнопку, переместить курсор в поле сборки схемы. Аналогично производятся соединения линиями выходов одних блоков со входами других блоков: необходимо подвести курсор к нужному выходу некоторого блока, нажать левую кнопку мыши и, не отпуская кнопку, переместить курсорко входудругого блока и затем отпустить кнопку мыши. Перетащим в пустое окноuntitled из окнаSimulink Library Browser/Sinks изображение блока XY Graph(он предназначен для визуализации процесса моделирования, его параметры будут рассмотрены ниже), а из окнаLibrary Simulink/Sources –блоки Clockи Band–Limited White Noise. Соединим выходы блоков-источников с входами блокаXY Graph(Clockс входом X,аBand–Limited White Noise–с входомY XY Graph). Получим блок-схему. После активизации моделирования (командаStart из менюSimulation) или при нажатии пиктограммы Start simulation на панели инструментов untitled получим в окне XY Graph картину, представленную на рис. 1.5.
Рис. 1.4. Параметры настройки блока Band–Limited White Noise | Рис. 1.5. Сигнал на выходе блока Band–Limited White Noise |
Блок Chirp Signal
Этот блок генерирует синусоидальный сигнал единичной амплитуды и переменной частоты, причем частота колебаний изменяется во времени по линейному закону. В соответствии с этим в нем предусмотрены следующие параметры настройки (рис. 1.6):
· Initial frequency (Hz) – начальное значение (при t = 0) частоты (Гц);
· Target time (secs) – отрезок (больше нуля) времени (в секундах), в течение которого изменяется частота гармонического сигнала;
· Frequency at target time (Hz) – значение частоты в конце отрезка времени (Гц).
На рис. 1.7 продемонстрирован результат использования блока при параметрах, указанных на рис. 1.6.
Рис. 1.6. Настройки блока Chirp Signal | Рис. 1.7. Сигнал с блока Chirp Signal |
Блок Constant
Предназначен для установки констант, применяемых при моделировании. Блок имеет следующие параметры настройки:
· Constant value–постоянная величина. Значение может быть действительным или комплексным числом, вычисляемым выражением, вектором или массивом;
· Interpret vector parameters as 1-D – интерпретировать вектор как массив скаляров;
· Show additional parameters – показать дополнительные параметры. При установленном флажке появится окно списка Output data type mode;
· Output data type mode– выбор типа выходных данных. Для выбора используется раскрывающийся список. Тип выходного сигнала может наследоваться от блока Constant value (inherit from 'Constant value'), от блока назначения (inherit via back propagation), быть задан одним из стандартных типов, например int8, либо может быть определен с помощью дополнительных параметров (Specify via dialog). В последнем случае появятся дополнительные окна списков Output data type, Output scaling Mode и Output scaling value:
· Output data type – тип выходных данных. В графе можно задать требуемый тип данных, включая типы данных с фиксированной точкой, например sfix(16), uint(8) и т.п.
· Output Scaling Mode– способ масштабирования выходного сигнала. Выбирается из списка: Use specified scaling – использовать заданный масштаб. Best precision: Vector-vise – наилучшая точность.
При выборе Use specified scaling в окне появляется дополнительная графа Output scaling value– величина масштаба. Параметр задается как основание системы счисления со смещением, например [1.25 3]. Смещение допускается не указывать.
Пример использования блока Constantбудет приведен при рассмотрении блокаDisplay.
Блок Digital Clock
Предназначен для формирования дискретного временного сигнала и имеет единственный параметр настройки Sample time – такт дискретности (с).
Блок From Workspace
С помощью блока From Workspaceосуществляется ввод данных в модель из рабочего пространства MATLAB. Блок имеет следующие параметры настройки (рис. 1.8.):
Рис. 1.9. Настройки блока From File | ||
· Data – имя переменной (массива или структуры), содержащей данные; · Sample time – такт дискретности (с); · Interpolate data– интерполяция данных. В случае, если время модели | ||
Рис. 1.8. Настройки блока From Workspace |
не совпадает со значениями переменной Data, выполняется интерполирование;
· Form output after final data value by– вид выходного сигнала по окончании времени в переменной Data. Значение параметра выбирается из списка:
– Extrapolate – линейная экстраполяция значений сигнала;
– Setting to Zero – нулевые значения сигнала;
– Holding Final Value – выходные значения сигнала равны последним значениям;
– Cyclic Repetition – циклическое повторение значений сигнала. Последний вариант может использоваться только в случае, когда переменная Data имеет форму Structure without time.
Блок From File
Предназначен для ввода данных из внешнего mat-файла. Блок имеет 2 параметра настройки (рис. 1.9):
· File Name – имя файла с данными;
· Sample time – такт дискретности, с.
Массив данных должен состоять, как минимум, из двух строк. В первой строке записываются в возрастающем порядке значения времени, а в остальных строках – значения сигналов, соответствующие данным моментам времени. Выходной сигнал блока содержит только значения сигналов. Если такт дискретности текущей модели не совпадает с отчетами времени в файле данных, то Simulink выполняет линейную интерполяцию данных. Как правило, mat-файл создается с помощью блока То File (раздел Sinks библиотеки).
Блок Ground
С помощью этого блока осуществляется подключение неиспользуемого входа какого-либо блока к “земле”. Этим предотвращается появление предупреждения о неиспользованных входах блоков. Тип данных на выходе блока Ground устанавливается автоматически в соответствии с типом данных, подаваемых на другие входы рассматриваемого блока.
Блок Inport
Используется при работе с подсистемами (субблоками). Блок создает входной порт для подсистемы или выполняет ввод данных из рабочей области MATLAB. Имеет следующие параметры настройки (рис. 10):
· Port number – номер порта;
· Port dimensions – размерность входного сигнала. Если этот параметр равен -1, то размерность входного сигнала будет определяться автоматически;
· Sample time – такт дискретности;
· Show additional parameters – показать дополнительные параметры. При установленном флажке в окне отображаются дополнительные окна списков:
–Data type – выбор типа выходных данных. Для выбора используется раскрывающийся список. Тип выходного сигнала может быть задан одним из стандартных типов, например int8, либо определен опцией Specify via dialog. В последнем случае в окне параметров появятся дополнительные окна списков Output data type, Output Scaling Mode и Output scaling value;
- Output data type – тип выходных данных. В графе можно задать требуемый тип данных, включая типы данных с фиксированной точкой, например sfix(16), uint(8) и т. п.
- Output Scaling Mode – способ масштабирования выходного сигнала. Выбирается из списка:
· Best precision: Vector-vise – наилучшая точность;
· Use specified scaling – использовать заданный масштаб. При выборе данного значения параметра в окне появляется дополнительная графа Output scaling value: –Output scaling value – величина масштаба. Параметр задается как основание системы счисления со смещением, например [1.25 3]. Смещение допускается не указывать. – Signal type - тип входного сигнала: auto – автоматическое определение типа; real – действительный сигнал; complex– комплексный сигнал. – Sampling mode–режим. Параметр может принимать значения: auto, Sample based или Frame based. Блоки Inport подсистемы являются ее входами. Сигнал, подаваемый на входной порт подсистемы через блок Inport, передается внутрь подсистемы. Название входного порта будет показано на изображении подсистемы | |
Рис. 1.10. Настройки блока Inport |
как метка порта. При создании подсистем и добавлении блока Inport в подсистему Simulink использует следующие правила:
- при создании подсистемы с помощью команды Edit/Create subsystem входные порты создаются автоматически и нумеруются начиная с единицы;
- если в подсистему добавляется новый блок Inport, то ему присваивается следующий по порядку номер;
- если какой-либо блок Inport удаляется, то остальные порты переименовываются таким образом, чтобы последовательность номеров была непрерывной.
- если в последовательности номеров портов имеется разрыв, то при выполнении моделирования Simulink выдаст сообщение об ошибке и остановит вычисления. В этом случае необходимо вручную переименовать порты таким образом, чтобы последовательная нумерация портов не нарушалась.
При использовании блока Inportдля передачи данных из рабочей областиMATLAB необходимо выполнить установку параметров ввода на вкладке Workspace I/O окна Simulation Parameters:
– установить флажок для параметра Input;
– задать имя переменной, содержащей входные данные;
- установить тип вводимых данных (Array – массив, Structure – структура, Structure with time – структура с полем “Время”).
Блок Pulse Generator
БлокPulse Generator генерирует последовательность прямоугольных импульсов, которые имеют следующие параметры (рис. 1.11):
Рис. 1.11. Настройки Pulse Generator | Рис. 1.12. Сигнал с блока Pulse Generator |
· Pulse type– способ формирования импульсов. Используется два способа формирования:
– Time-based – по текущему времени;
– Sample-based – по величине такта дискретности и количеству шагов моделирования.
Вид окна параметров определяется выбранным способом формирования импульсов. При формировании импульсов по текущему времени (Time-based) устанавливаются следующие параметры:
· Amplitude – амплитуда импульсов;
· Period (secs) – период следования импульсов (с);
· Pulse Width (%of period) – длительность прямоугольного импульса (в процентах от периода);
· Phase delay (secs)– начальная фаза (с);
· Sample time– такт дискретности (с);
· Interpret vector parameters as 1-D– интерпретировать вектор как массив скаляров.
При формировании импульсов по величине такта дискретности и количеству шагов моделирования (Sample-based) параметры Period,Pulse Width и Phase delayопределяются количеством тактов дискретности.
Результат применения блока при значениях параметров, указанных на рис. 1.11, можно увидеть на рис. 1.12.
Блок Ramp
Блок формирует постоянно нарастающий (убывающий) сигнал и имеет следующие параметры настройки:
· Slope – значение скорости изменения выходного сигнала;
· Start time – время начала действия нарастающего сигнала;
· Initial output – значение сигнала в начальный момент времени.
На рис. 1.13 приведены параметры настройки блока Ramp, а на рис. 1.14 – результат его применения.
Для формирования линейно убывающего сигнала необходимо установить отрицательное значение параметра Slope.
Рис. 1.13. Настройки блока Ramp | Рис. 1.14. Сигнал с блока Ramp |
Блок Random Number
БлокRandom Number обеспечивает формирование сигналов, амплитуда которых является случайной величиной, распределенной по нормальному закону с заданными параметрами. Блок имеет четыре параметра настройки (рис. 1.15).
Первые два –Mean и Variance – являются параметрами нормального закона (среднее и дисперсия), третий –Initial seed – задает начальное значение базы для инициализации генератора последовательности случайных чисел. При фиксированном значении этого параметра генератор всегда вырабатывает одну и ту же последовательность. Четвертый параметр(Sample time) задает величину дискреты времени. Кроме того, как и во многих других блоках используется параметр Interpret vector parameters as 1-D– интерпретировать вектор как массив скаляров.
На рис. 1.16 показан результат использования блока при значениях параметров, приведенных на рис 1.15.
Блок Repeating Sequence
Этот блок содержит две настройки:
· Time values – вектор значений времени, в которых заданы значения
Рис. 1.15. Настройкиблока Random Number | Рис. 1.16. Сигнал с блока Random Number |
выходной величины;
· Output values – вектор значений выходной величины, которые она должна принять в указанные в первом векторе соответствующие моменты времени.
Блок обеспечивает генерирование колебаний с периодом, равным разности между последним значением вектораTime values и значением первого его элемента. Форма волны внутри периода представляет собой ломаную, проходящую через точки с указанными в векторахTime valuesиOutput values координатами.
В качестве примера на рис. 1.18 изображен сигнал, сгенерированный блокомRepeating Sequence при параметрах настройки, указанных на рис. 1.17.
Рис. 1.17. Настройки блока Repeating Sequence | Рис. 1.18. Сигнал с блока Repeating Sequence |
Блок Signal Generator
В параметры настройки этого блока входят:
· Wave form – позволяет выбрать одну из следующих форм периодического процесса: sine – синусоидальные волны; square – прямоугольные волны; sawtooth – треугольные волны; random – случайные колебания;
· Amplitude –амплитуда генерируемых колебаний;
· Frequency – частота колебаний;
· Units–выбор однойиз единиц измерения частоты: Hertz (герцы) или rad/Sec (радианы в секунду);
· Interpret vector parameters as 1-D– интерпретировать вектор как массив скаляров.
На рис. 1.19 показана простейшая S–модель, состоящая из блокаSignal Generator и блока отображенияXY Graph,а на рис. 1.20 представлено содержимое блока отображения после проведения моделирования при таких параметрах настройки: вид колебаний –sine; амплитуда – 4,0; частота – 1 Гц.
Рис. 1.19. S–модель с блоком Signal Generator | Рис. 1.20. Сигнал с блока Signal Generator |
Блок Signal Builder
Формирует кусочно-линейные сигналы, форма которых устанавливается с помощью специального интерфейса пользователя (рис. 1.21). После открытия окна интерфейса на вкладке Group 1 отображается импульсный сигнал (Pulse), который можно удалить командой Edit/Delete предварительно выделив его. Создание (добавление) нового сигнала выполняется командой Signal/New, при этом пользователь имеет возможность выбрать какой-либо стандартный сигнал (Step, Pulse, Square и т. д.) либо создать свой сигнал (Custom). В последнем случае требуется ввести векторы времени и значений сигнала. Для изменения формы сигнала требуется выделить объект (точку или отрезок) двойным щелчком мыши и ввести новые координаты правой и (или) левой точек (графы Т и Y). Выделенные объекты можно также перемещать с помощью мыши. Для перемещения всего графика требуется держать клавишу Shift нажатой. Создание новой точки на графике достигается с помощью двойного щелчка левой клавишей мыши при нажатой клавише Shift. Изменение временного диапазона сигнала выполняется с помощью команды Axes/Change time range. Пользователь имеет возможность создать несколько наборов (групп) сигналов. Для этого необходимо с помощью команды Group/Copy создать копию уже существующего набора сигнала (при этом в окне блока появится новая вкладка Group2) и выполнить редактирование нового набора сигналов.
Рис.1.21. Интерфейс пользователя блока Signal Builder |
Форма сигнала за пределами заданного временного диапазона задается с помощью команды File\Simulation Options. С помощью этой же команды может быть установлен шаг модельного времени (такт дискретности).
Блок Sine Wave
Формирует синусоидальный сигнал с заданными частотой, амплитудой, фазой и смещением. В блоке используется два способа формирования выходного сигнала:
– Time-based – по текущему времени;
– Sample-based – по величине такта дискретности и количеству шагов моделирования.
Вид окна параметров определяется выбранным способом формирования синусоидального сигнала. При формировании импульсов по текущему времени (Time-based) устанавливаются следующие параметры:
· Amplitude –амплитуда синусоидального сигнала;
· Bias– значение постоянной составляющей сигнала;
· Frequency (rads/sec) –частота колебаний в радианах в секунду;
· Phase (rads) – начальная фаза в радианах;
· Sample time – такт дискретности (с);
· Interpret vector parameters as 1-D– интерпретировать вектор как массив скаляров.
При формировании синусоидального сигнала по величине такта дискретности и количеству шагов моделирования (Sample-based) параметры Frequency и Phaseопределяются количеством тактов дискретности.
На рис. 1.22 представлен результат применения блока при следующих значениях параметров:Amplitude – 4,5,Bias– 1,Frequency – 2 радиана в секунду иPhase – p/2 радиана.
Отличия этого блока от генератора синусоидальных колебаний в блокеSignal Generator состоят в следующем: 1) в рассматриваемом блоке можно устанавливать произвольную начальную фазу; 2) в нем нельзя задать частоту в Герцах.
Рис. 1.22. Сигнал с блока Sine Wave | Рис. 1.23. Сигнал с блока Step |
Блок Step
Блок обеспечивает формирование управляющего сигнала в форме ступеньки (или, как говорят, скачкообразного постоянного сигнала). Блок имеет следующие параметры настройки:
· Step time (время начала ступеньки, т.е. время скачка сигнала) – определяет момент времени, в который происходит скачкообразное изменение сигнала; по умолчанию принимается равным 1;
· Initial value (начальное значение) – задает уровень сигнала до скачка; исходное значение равно 0;
· Final value (конечное значение) – задает уровень сигнала после скачка; значение его по умолчанию равно 1;
· Sample time–задает шаг дискретности (с);
· Interpret vector parameters as 1-D– позволяет интерпретировать вектор как массив скаляров;
· Enable zero crossing detection – определяет прохождение сигнала через нулевой уровень. С помощью этой опции устанавливается режим проверки момента, когда сигнал становится равным нулю. Это необходимо для того, чтобы повысить точность решения задачи. Если при достижении нулевого уровня производная от рассматриваемого сигнала меняет знак, то момент, когда сигнал становится равным нулю, может быть определен неточно. Для того чтобы повысить точность, необходимо уменьшить шаг интегрирования. Это влечет за собой увеличение времени решения задачи. Поэтому при установлении флажка опции Enable zero crossing detection осуществляется интерполяция значений исследуемой величины на шаге, когда происходит смена знака производной. Благодаря этому точность определения момента пересечения переменной нуля повышается без увеличения времени решения задачи. Необходимость применения этой опции для блока Step обусловлена возможностью попадания момента скачка сигнала между точками, определяемыми шагом интегрирования.
На рис. 1.23 представлен результат применения блока при следующих значениях параметров:Step time – 3,5,Initial value – -2,Final value – 3.
Блок Umform Random Number
Этот блок формирует сигналы, амплитуда которых является случайной величиной, равномерно распределенной в заданном интервале. В число параметров настройки блока (рис. 1.24) входят:
· Minimum – нижняя граница случайных чисел;
· Maximum – верхняя граница;
· Initial seed – начальное значение базы генератора случайных чисел;
· Sample time – такт дискретности (с);
· Interpret vector parameters as 1-D– интерпретировать вектор как массив скаляров.
Пример процесса, сгенерированного блоком по параметрам, указанным на рис 1.24, приведен на рис 1.25.