Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МНС-КР2012.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
303.62 Кб
Скачать

2. Описание численного эксперимента и его программная реализация

В КР необходимо произвести численный эксперимент – вычислить значения импульсной переходной характеристики объекта управления по данным эксперимента "вход–выход" x(t) и y(t) при наличии погрешностей измерений n(t) (рис.1). Для решения поставленной задачи необходимо составить программу на языке C++, реализующую последовательно следующие этапы.

2.1. Прямая задача: моделирование объекта идентификации и погрешностей измерений, получение наблюдаемого отклика. По заданным аналитическим выражениям для входного сигнала x(t) и импульсной переходной характеристики w(t) объекта (выбираются из таблицы 1 в соответствии с номером варианта – последней цифрой номера зачетной книжки) рассчитываются дискретные значения xi=x(ti) и wi=w(ti) на сетке ti=(i–0.5)t, i=1,2,…,N (принять N=64). Затем путём численного интегрирования (1) вычисляется y(ti) [9]. Метод численного интегрирования выбирается в соответствии с номером варианта из таблицы 2.

Для генерирования на ПЭВМ помехи n(ti) используется формула

(10)

где – случайное число из интервала (0,1), – некоторый масштабирующий коэффициент. Преобразование (10) позволяет центрировать случайную последовательность чисел и согласовать уровень помехи с уровнем полезного сигнала – отклика объекта идентификации. Причем генерируются помехи при трех значениях коэффициента : . Для получения случайной последовательности чисел используем функцию int random(int n), которая генерирует случайное число от 0 до n.

Наблюдаемый отклик получаем как аддитивную смесь полезного сигнала и помехи

zj(ti) = y(ti) + nj(ti) , j=1,2,3; i=1,2,…,N. (11)

При написании программы моделирования объекта и процедуры его идентификации необходимо использовать для вещественных переменных и массивов тип данных double (вещественный с двойной точностью).

В результате выполнения первого этапа КР будут сформированы исходные данные для решения задачи идентификации.

2.2. Обработка сигналов с помощью алгоритма быстрого преобразования Фурье (БПФ). Для выполнения преобразования Фурье функций x(t), y(t) и обратного преобразования от изображения по Фурье весовой функции W(j) используется функция ftf1c (текст функции на языке C++ приведен в приложении), которая реализует эффективную процедуру на основе алгоритма быстрого преобразования Фурье [7]. Для вызова функции ftf1c в разделе объявлений главной функции должны быть объявлены сама функция ftf1c и вызываемая из неё вспомогательная функция swap, выполняющая обмен двух элементов массива:

void ftf1c(double *,double *,int ,int ,double );

void swap(double *,double *);

Кроме того необходимо включить в программу директиву препроцессора #define, реализующую простую макроподстановку

#define SIZ 64

(определяет используемую функцией ftf1c символическую константу SIZ).

Обращение к функции ftf1c

ftf1c(Xre,Xim,1,1,p);

Здесь в массивах Xre и Xim (размерностью N=64) находятся соответственно действительная и мнимая части преобразуемой функции. Производится прямое БПФ, если p=1, и обратное БПФ, если p=–1. Результат выполнения БПФ помещается в памяти на месте массивов Xre и Xim. При прямом преобразовании Фурье в массив Xre записываются значения преобразуемой функции времени (x(ti), y(ti) или z(ti)), а массив Xim заполняется нулями.

В результате выполнения второго этапа КР будут получены массивы значений для действительных и мнимых частей Фурье–образов наблюдаемых сигналов x(t), y(t) и z(t), используемые для решения задачи идентификации в частотной области.

2.3. Обратная задача: оценка весовой функции без и с учетом погрешностей измерений. Для программной реализации формулу (4) запишем в развёрнутом виде:

, (12)

где ReX, ReYвещественные, ImX, ImYмнимые части соответственно Фурье–образов X(j) и Y(j); ReW, ImWвещественная и мнимая части Фурье–образа весовой функции, причем:

(13)

(14)

По формулам (13) и (14) рассчитывают вещественную и мнимую части Фурье–образа весовой функции W(j) и затем применением обратного преобразования Фурье вычисляют . При обратном преобразовании Фурье результат находится в массиве для действительной части преобразуемой функции.

Для согласования масштабов при выполнении обратного БПФ полученную функцию следует разделить на N.

Аналогичным образом находят оценки весовых функций для пар наблюдаемых сигналов x(t) и zj(t) (j=1,2,3).

В результате выполнения третьего этапа КР будут получены массивы значений оценок весовой функции без и с учетом помех различной интенсивности (для трёх уровней шума).

2.4. Применение регуляризации для обеспечения помехоустойчивости оценок весовых функций. При вычислении оценки с использованием метода регуляризации А.Н. Тихонова (8) функция M(i) рассчитывается по формуле

(15)

При реализации данного алгоритма параметр регуляризации выбирают достаточно малым из анализа имеющейся информации о погрешности исходных данных и погрешности вычислений. Практически подходящее значение параметра регуляризации определяют чаще всего путем подбора, т.е. многократным вычислениями , для различных значений . На практике удобным является способ определения квазиоптимального значения параметра , т.е. в качестве выбирается число , для которого

(16)

где . Необходимо отметить, что различные способы определения параметра регуляризации могут дать, вообще говоря, различные результаты и, как следствие, отличающиеся друг от друга регуляризованные решения [8].

Необходимо показать (выполнив серию численных экспериментов и построив график), что характер зависимости погрешности решения обратной задачи (получения оценки весовой функции) от значения параметра регуляризации имеет вид "потенциальной ямы": при уменьшении , когда , погрешность возрастает в силу того, что эффект регуляризации ослабляется, а при =0 – вообще отсутствует; при увеличении , когда , рост погрешности (методической) обусловлен значительным влиянием регуляризирующей добавки в (8).

Погрешность вычисления весовой функции , характеризующая качество решения задачи идентификации, определяется по формуле:

(17)

В результате выполнения четвертого этапа будут получены массивы значений оценок весовой функции с использованием метода регуляризации, позволяющего значительно повысить помехоустойчивость алгоритма идентификации.

Таблица 1. Варианты задания исходных данных

варианта

x(t)

w(t)

t

a

b

c

1

e–6bt–e–10ct

e–20a(t–1.6)²

0.05

1.0

1

1.5

2

0.10

0.5

2

1.0

3

0.10

0.5

4

0.5

4

e–4c(t–1.6)²

e–10at–e–10bt

0.05

1.0

2

2.0

5

0.10

0.5

1

2.0

6

0.10

1.0

1.5

4.0

7

e–12bt–e–20at

e–5bt–e–20ct

0.03

2.0

3

0.5

8

0.05

0.5

2

2.0

9

e–15c(t–2.5)²

e–8at–e–10bt

0.08

2.0

3

0.5

10

0.08

0.5

0.33

0.25

11

e–10bt–e–20ct

e–10a(t–1.2)²

0.05

1.0

1

1.5

12

0.10

0.5

2

1.0

13

0.10

0.5

4

0.5

14

e–c(t–1.2)²

e–5at–e–5bt

0.05

1.0

2

2.0

15

0.10

0.5

1

2.0

16

0.10

1.0

1.5

4.0

17

e–6bt–e–10at

e–5bt–e–10ct

0.03

2.0

3

0.5

18

0.05

0.5

2

2.0

19

e–10c(t–2.0)²

e–8at–e–10bt

0.08

2.0

3

0.5

20

0.08

0.5

0.33

0.25

21

e–6bt–e–10ct

e–20a(t–1.6)²

0.15

1.0

2

1.5

22

0.05

1.5

2

2.0

23

0.07

2.5

1

0.5

24

e–6bt–e–10ct

e–20a(t–1.6)²

0.05

2.0

2

1.0

25

0.15

1.5

2

2.0

Таблица 2. Методы интегрирования

метода

Метод интегрирования

1

Левых прямоугольников

2

Правых прямоугольников

3

Средних прямоугольников

4

Трапеций

5

Симпсона

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]