
1760
.pdf
1. В основном окне MATLAB выполнить следующие команды: t=0:0.1:50; – задаем вектор времени (от 0 до 50 с, с шагом 0,1); plot(t,In) – построить график случайного процесса, подаваемого
в качестве возмущающего воздействия.
Оператор “;” стоящий после команды, позволяет отключить вывод результатов этой команды на экран.
2.После выполнения этих команд появится окно Figure No.1 (рис.7.5),
вкотором и отображается график случайного сигнала. Для того чтобы получить характеристики этого сигнала, необходимо из меню окна Figure No.1 выполнить: Tools > Data Statistics, после чего появится новое окно - Data Statistics-1, в котором отображаются интересующие нас статистические параметры отдельно по осям графика (X – ось времени, Y – ось ординат случайного сигнала):
min – минимальное значение;
max – максимальное значение;
mean – математическое ожидание;
std – среднеквадратическое отклонение (квадратный корень из дисперсии, значение которой задано в параметрах блока Random Number).
Рис.7.5. График случайного процесса и его параметры на входе в САРЧ
При нажатии на квадратик напротив любой из величин появляются ли-
121

нии на графике, отображающие эту величину.
Нас интересуют параметры случайного сигнала, поданного на вход системы, то есть ось Y. Можно убедиться, что математическое ожидание близко к 0,5 и составляет 0,4973 (при увеличении количества точек оно стремится к заданному, равному 0,5) и среднеквадратическое отклонение, равное квадратному корню из дисперсии, составляет 0,1 (0,01 0,1).
Из-за особенностей пакета Data Statistics необходимо проверять значение среднеквадратического отклонения, для этого в основном окне MATLAB выполняем команду std(In,1), при этом выдается значение 0,9999, что очень близко к заданной его величине.
3.Для анализа выходного сигнала необходимо выполнить следующие команды:
t1=3:0.1:50; – задаем вектор времени (от 3 до 50 с, с шагом 0,1), так как переходный процесс по возмущению составляет 1,37 с, то анализируем выход без влияния переходного процесса по управлению и берем не менее чем двукратный запас по времени;
Out1=Out(30:500); – вычленяем из выходного массива выходной сигнал, без влияния переходного процесса по управлению, то есть отбрасываем 30 первых точек (первый операнд в скобках − это начальная точка, равная начальному времени из предыдущей команды, деленному на шаг времени, второй операнд – конечная точка, равная времени моделирования, деленному на шаг времени);
plot(t1,Out1) – построить график случайного процесса на выходе из САРЧ;
std(Out1,1) – уточняем значение среднеквадратического значения.
4.В окне Figure No.1 появляется график случайного процесса на выходе из САРЧ, а в окне Data Statistics – характеристики этого процесса, без влияния переходного процесса по управлению (рис.7.6).
Получены следующие характеристики:
минимальное значение равно 0,9978;
максимальное значение равно 1,002;
математическое ожидание равно 1;
среднеквадратическое отклонение равно 6,7556 10-4 (уточненное значение);
дисперсия равна (6,7556 10-4)2 = 4,5638 10-7.
Таким образом, в качестве возмущающего сигнала использовался случайный сигнал с параметрами: математическое ожидание, равное 0,5, то есть момент нагрузки на валу двигателя в среднем равен половине от максимально возможного; минимальный момент нагрузки равен 0,1833 от максимально возможного и максимальный момент нагрузки равен 0,7802 от максимально возможного.
122

Рис.7.6. График случайного процесса и его параметры на входе в САРЧ
При прохождении возмущающего сигнала через систему он изменяется и частота вращения от возмущающего воздействия в среднем не изменяется, так как математическое ожидание случайного процесса на выходе равно единице. Но в целом частота вращения изменяется от минимального значения, равного 0,9978, до максимального значения, равного 1,002, от номинальной частоты вращения.
Дисперсия случайного сигнала уменьшилась с 0,1 до 4,5638 10-7, то есть в 219115 раз. Таким образом, САРЧ служит своеобразным фильтром для случайного сигнала, проходящего через нее.
Для получения плотности вероятности распределения случайного сиг-
нала служит команда histfit(Variable name, N), где операнд Variable name
указывает на имя переменной, а операнд N устанавливает количество интервалов гистограммы.
Для нашего примера значения этих операндов:
1)для входного сигнала – имя переменной In, количество интервалов гистограммы, равное времени моделирования, деленному на шаг (500). Команда выглядит следующим образом: histfit(In,500) (рис.7.7);
2)для выходного сигнала – имя переменной Out1 (без переходного процесса по управлению), количество интервалов гистограммы, равное времени моделирования, деленному на шаг, за вычетом отбрасываемых
123

точек (470). Команда выглядит следующим образом: histfit(Out1,470) (рис. 7.8).
Рис.7.7. Плотность вероятности распределения случайного сигнала на входе в САРЧ
Рис.7.8. Плотность вероятности распределения случайного сигнала на выходе из САРЧ
124

8. НЕЛИНЕЙНЫЕ БЛОКИ ПАКЕТА Simulink
Пакет Simulink предназначен для моделирования любых систем, в том числе и нелинейных динамических систем. Раздел Nonlinear основной библиотеки Simulink, посвященный нелинейным компонентам, содержит наиболее распространенные нелинейные блоки (рис. 8.1), которые в теории автоматического управления имеют название «типовые нелинейные звенья».
Рис.8.1. Раздел нелинейных блоков библиотеки Simulink
Среди нелинейных блоков следует отметить блоки с типичными нелинейностями, например блоки с характеристиками в виде типовых математических функций, компоненты идеальных и неидеальных ограничителей и т.д. Представлены также такие компоненты, как квантователи сигналов, блоки нелинейности, моделирующие нелинейные петли гистерезиса, и ключи-переключатели с разными состояниями, зависящими от управляющих сигналов.
125

Важным параметром нелинейного устройства является его передаточная функция – зависимость выходного сигнала от входного. Для некоторых блоков, например релейного или квантующего, они имеют разрывный характер.
8.1. Блок ограничения Saturation
Блок Saturation (звено с ограничением или насыщением) представляет собой нелинейное устройство, сигнал на выходе которого равен входному сигналу до тех пор, пока не достигает порогов ограничения: верхнего Upper limit или нижнего Lower limit, после этого сигнал перестает изменяться.
Статическая характеристика этого блока приведена на рис. 8.2.
|
|
Y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
B |
|
|
|
|
Рис.8.2. Статическая характеристика блока с ограни- |
|||||||
|
|
|
|
|
||||||||||
|
-b |
|
|
X |
||||||||||
0 |
|
b |
|
|
|
|
|
|
чением Saturation |
|
||||
|
|
|
|
|
|
|
|
|
||||||
|
|
-B |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Уравнение, описывающее этот блок, имеет вид: |
|
|||||||||||||
|
|
|
|
|
|
|
|
kX |
при |
|
X |
|
b, |
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
B |
при X b, |
(8.1) |
|||||
|
|
|
|
|
|
|
Y |
B при X b,
где k = tg .
Вышесказанное хорошо прослеживается при ограничении синусоидального сигнала (рис. 8.3).
Для удобства сравнения сигналов – исходного и прошедшего через нелинейный блок – используем блок Mux (мультиплексор) из раздела Signal & Systems библиотеки Simulink. На входы блока Mux (на рис. 8.3 он обозначен черным прямоугольником) подаются соответствующие сигналы, а выход присоединяется к блоку Scope.
Как видно из рис. 8.3, окно параметров блока содержит лишь поля для установки верхнего (Upper limit) и нижнего (Lower limit) порогов ограничения.
126

Рис.8.3. Блок ограничения Saturation и пример его применения
8.2. Блок с зоной нечувствительности Dead Zone
Еще одна характерная нелинейность – линейная зависимость выходного сигнала от входного (с вычетом соответствующего порога) на всей оси абсцисс, за исключением зоны нечувствительности (мертвой зоны).
Статическая характеристика этого блока приведена на рис. 8.4.
|
|
Y |
|
|
|
Рис.8.4. Статическая характеристика блока c зоной |
-b |
|
X |
||
нечувствительности Dead Zone |
|
|
|
|
|
0 |
b |
||||
|
Уравнение, описывающее этот блок, имеет вид:
k(X b) |
при X b, |
|
|||||
|
0 |
при |
|
X |
|
b, |
(8.2) |
|
|
||||||
Y |
|
|
|||||
|
|
при X b. |
|
||||
k(X b) |
|
Эта нелинейность моделируется блоком Dead Zone (рис. 8.5).
127

Рис.8.5. Блок с зоной нечувствительности Dead Zone и пример его применения
Окно параметров этого блока содержит границы зоны нечувствитель-
ности Start of dead zone и End of dead zone. Пo умолчанию они заданы равными – 0,5 и 0,5. Флажки Saturate on integer owerflow (ограничение при пе-
реполнении целых) и Treat as gain when linearizing (трактовать как ограничения при линеаризации) по умолчанию включены.
8.3. Релейный блок Relay
Релейный блок Relay имеет разрывную передаточную функцию с гистерезисом (или без него), подобную передаточной функции хорошо известного триггера Шмитта или типовому нелинейному звену, изучаемому в курсе ТАУ – двухпозиционное реле с зоной нечувствительности.
Для этого звена, если сигнал на входе меньше некоторого порога, то на выходе получается сигнал одного уровня (обычно низкого), а если порог превышен, то сигнал на выходе становится другого уровня (обычно высокого). Если при спаде сигнала достигается другой порог, то сигнал на выходе также скачком меняется.
Статическая характеристика этого блока приведена на рис. 8.6.
128

|
|
|
|
|
|
Y |
|
|
|
|
|
|
|
|
B |
|
|
Рис.8.6. Статическая характеристика релейного |
-b |
|
|
b |
X |
|||
блока Relay |
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-B |
|
|
Уравнение, описывающее этот блок, имеет вид: |
|
|
|
|
|
|||
|
B |
при X b, |
|
|
|
|
|
|
|
B |
, если X 0; |
|
|
|
|||
|
при X b, |
|
|
|
|
(8.3) |
||
Y |
B |
при X b, |
|
|
|
|
||
|
|
|
|
|
|
|||
|
|
, если X 0. |
|
|
|
|||
B |
при X b, |
|
|
|
|
|
||
|
|
|
|
|
|
Пример, приведенный на рис. 8.7, показывает работу релейного блока с одинаковыми по абсолютной величине и очень малыми (eps) порогами при подаче синусоидального сигнала на вход.
Рис.8.7. Релейный блок Relay и пример его применения
В окне параметров блока можно задать уровни сигнала на выходе при включенном (Output when on) и выключенном (Output when on) состояниях, а также верхний и нижний пороговые уровни срабатывания (Switch on point и Switch off point соответственно). Их значения по умолчанию представлены на рис. 8.7.
129

8.4. Блок с ограничением скорости Rate Limiter
Блок с ограничением скорости Rate Limiter старается отслеживать входной сигнал в условиях задания ограничений на скорость нарастания и спада сигнала (рис. 8.8).
Рис.8.8. Блок с ограничением скорости Rate Limiter и пример его применения
При работе блока вычисленное значение скорости изменения сигнала сравнивается с установленным в окне параметров значением параметра Rising slew rate (скорость нарастания сигнала) и параметра Falling slew rate (скорость спада сигнала). По умолчанию заданы значения Rising slew rate и Falling slew rate, равные 0,5 и – 0,5 соответственно.
8.5. Блок следящего квантования Quantizer
Блок Quantizer служит для квантования меняющихся сигналов с одинаковым шагом по уровню (рис. 8.9).
Блок имеет единственный параметр - шаг по уровню (по умолчанию 0,5). На рис. 8.9 показано квантование синусоидального сигнала.
Можно отметить, что при большом шаге квантования его трудно назвать идеальным – точного слежения за уровнем входного сигнала нет.
130