- •Моделирование, идентификация и компьютерная имитация объекта управления
- •Маятник как объект управления
- •Математическая модель оу
- •Компьютерная модель (имитационная модель)
- •Учёт сопротивления воздуха
- •Учёт трения в точке подвеса
- •Выбор алгоритма стабилизации маятника
- •Временные и частотные характеристики элементов и систем управления
- •Временные характеристики (вх)
- •Частотные характеристики (чх)
- •Устойчивость объектов и систем управления
- •Синтез систем управления.
- •Операторный метод.
- •Дискретная система управления.
- •6.1 Выплата кредита.
- •6.2 Генератор чисел Фибоначчи.
- •6.3. Генератор псевдослучайных последовательностей.
- •6.4. Фильтр ма(3)
-
Дискретная система управления.
Математические модели дискретных систем управления (ДСУ) описывают процессы генерирования и преобразования числовых последовательностей – функцией целочисленного аргумента. Моделями генераторов являются однородные разностные уравнения (РУ), а преобразователи – РУ с правой частью. Рассмотрим несколько примеров.
6.1 Выплата кредита.
РУ выплаты кредита представим в следующем виде.
, (6.1)
где , – доля невыплаченной части, - сумма.
Иначе:
. (6.2)
Найти u такую, что:
.
Существуют разные аналитические решения . Составим компьютерную модель процесса выплаты кредита. На рис. 6.1 представлена модель Simulink.
Рис. 6.1
6.2 Генератор чисел Фибоначчи.
Последовательность чисел ряда Фибоначчи подчиняется следующему правилу – РУ:
. (6.3)
На рис. 6.2 представлен график, на котором изображены 14 чисел Фибоначчи. Составим программу на языке Matlab. Далее приведен код программы:
F(1)=0, F(2)=1
K=14
for k=1:K
F(k+2)=F(k+1)+F(k)
Рис. 6.2
Замечено, что отношения соседних чисел Фибоначчи с ростом k приближаются к значениям так называемого «золотого сечения». Проверим это, дополнив программу следующим образом:
for k=1:K
F(k+2)=F(k+1)+F(k)
f1(k)=F(k+2)/F(k+1)
f2(k)=F(k)/F(k+1)
end
На рис. 6.3 приведены графики отношений.
Рис. 6.3
Найдем значения золотого сечения, используя следующий код:
f1(14)
ans = 1.6180
f2(14)
ans =0.6180
Известно аналитическое решение РУ:
. (6.4)
Проверим результат, используя программу на языке Matlab. На рис. 6.4 приведены результаты работы программы: проанализировав их, приходим к выводу, что формула (6.4) дает действительные значения. Для больших K формула (6.4) упрощается:
. (6.5)
Рис. 6.4
6.3. Генератор псевдослучайных последовательностей.
Математической моделью генератора является нелинейное разностное уравнение первого порядка:
, (6.6)
где: G, N, µ, λ – целые; mod(•, N) – конгруэнция. Обычно вычисляют - действительные числа на интервале [0, (N-1)/N ≈ 1].
Примем: . Напишем программу на языке Matlab и построим график для процесса g. На рис. 6.5 показан график значений g при N=16. Приведем код программы:
G(1)=5; mu = 1; lambda = 5;
N=16
mu =1
for k=1:N G(k+1)=mod(1+5*G(k), N);
g(k)=G(k)/N;
end
G = 5 10 3 0 1 6 15 12 13 2 11 8 9 14 7 4 5
g = 0.3125 0.6250 0.1875 0 0.0625 0.3750 0.9375 0.7500 0.8125 0.1250 0.6875 0.5000 0.5625 0.8750 0.4375 0.2500
plot(g)
Рис. 6.5
Проведем простейший статистический анализ при N = 2048. Для этого построим гистограмму, вычислим среднее и СКО процесса g. На рис. 6.6 представлена модель Simulink, а на рис. 6.7 показан график значений g.
Рис. 6.6
Код программы был изменен следующим образом:
N=2048;
for k=1:N G(k+1)=mod(1+5*G(k), N);
g(k)=G(k)/N;
end
plot(g)
Рис. 6.7
Судя по гистограмме на рис. 6.8 случайный процесс имеет равномерное распределение на [0,1].
Рис. 6.8
Добавим в код программы подсчет выборочного среднего и дисперсии. Получим mean = 0.49999 и std = 0.2887.