- •Решение прикладных задач в среде c#
- •Введение
- •1. Введение в visual studio.Net. Структура .Net-приложений. Метод main(). Создание проектов с помощью vs.Net
- •Задание 1
- •Операции ввода/вывода. Формат вывода
- •Задание 2
- •Пространство имён system. Класс math. Преобразование типов данных
- •Задание 3.1
- •Задание 3.2
- •4. Операторы языка программирования с#.
- •4.1. Операторы языка программирования с#
- •If (логическое выражение)
- •2. If (выражение)
- •4.2. Операции отношения и условные логические операции
- •Операции отношения в c#
- •Условные логические операции
- •Задания 4
- •Организация циклов
- •Задание 5.2
- •Обработка одномерных массивов
- •6.1. Массивы
- •6.2. Одномерные массивы
- •Класс System.Array и оператор foreach
- •Основные элементы класса Array
- •Задание 6
- •Обработка двумерных массивов
- •7.1. Описания двумерного массива
- •7.2. Обработка исключительных ситуаций
- •Задание 7
- •Запись исходных данных в файл и чтение данных из файла. Цифровая фильтрация. Идентификация объекта управления
- •8.1. Данные для моделирования системы. Понятие файла данных
- •8.2. Объект FileStream для работы с файлами
- •8.3. Запись данных в файл. Класс StreamWriter
- •8.4. Чтение файла. Класс StreamReader
- •8.5. Цифровая фильтрация
- •8.6. Идентификация объекта управления
- •8.7. Определение постоянной времени объекта управления
- •Задание 8.1
- •Задание 8.2
- •Рекомендации
- •Задание 8.3
- •Строки типа string
- •Основные элементы класса System.String
- •Задание 9
8.7. Определение постоянной времени объекта управления
На рисунке 8.1 показан график переходного процесса для нормированной (приведенной к единичной) функции объекта, определяемой по формуле:
= , (8.9)
где n=0,1,2,3 ….
На графике введены следующие обозначения:
Рис. 8.1. Аппроксимация графика переходного процесса
S1 - площадь на интервале 0-n1, когда у*n=0; S2 - площадь под кривой на интервале от n1 до tn = nTk; S3 - площадь над кривой переходного процесса; ОАВС - прямоугольник, включающий S1,S2, и S3 .
Очевидно, что
S = SОАВС = nTk; (8.10)
S1 = n1Tk . (8.11)
Площадь S2 вычисляется по методу Симпсона. Тогда согласно методике БНТУ
S3 = S- S1- S2= Tм, (8.12)
где Tм - постоянная времени модели объекта.
Для упрощения при вычислении S2 рекомендуется вычисление производить, включая все значения от у*0 до у*n, не забывая, что n = k (количество значений в файле данных).
Согласно методу Симпсона для цифрового интегрирования получим:
S2 = (у*0 + 4у*1 + 2у*2 + 4у*3 + …+у*n). (8.13)
Следует помнить, что при интегрировании по этому методу n должно быть четным. Поэтому для использования (8.13) необходимо произвести анализ значения k, например, используя операцию остатка от деления (%): если k нечетное, то надо добавить один элемент в массив файла данных:
уk+1= уk,,
а затем изменить количество элементов массива:
k=k+1.
Примечание. Вместо (8.13) можно использовать с целью упрощения другую формулу:
S2 = (у0 + 4у1 + 2у2 + 4у3 +…+ уn). (8.14)
Здесь нормирование учитывается делением на kм в конце.
Задание 8.1
1. Составить программу для записи исходных данных в файл, используя таблицу 8.2.
2. Составить программу для чтения исходных данных из файла и вывода на экран.
Таблица 8.2
Исходные данные
Вариант |
Исходный массив x(i), i=0, 1, 2, 3, … |
1 |
0; 0; 0; 0,563; 0,98; 1,32; 1,58; 1,78; 1,94; 2,06; 2,16; 2,24; 2,3; 2,34; 2,36; 2,4; 2,42; 2,44 |
2 |
0; 0; 0,56; 0,972; 1,26; 1,46; 1,62; 1,72; 1,8; 1,86; 1,9; 1,92; 1,94 |
3 |
0; 0; 0; 0,46; 0,82; 1,12; 1,36; 1,56; 1,74; 1,88; 1,98; 2,06; 2,16; 2,22; 2,28; 2,32; 2,34; 2,38; 2,4; 2,42; 2,46; 2,46 |
4 |
0; 0; 0; 0; 0,28; 0,32; 0,46; 0,56; 0,64; 0,68; 0,76; 0,8; 0,84; 0,86; 0,88; 0,9; 0,92; 0,94; 0,96; 0,98; 1,0 |
5 |
0; 0; 0,2; 0,38; 0,52; 0,66; 0,76; 0,86; 0,94; 1,02; 1,04; 1,06; 1,14; 1,16; 1,22; 1,26; 1,3; 1,32; 1,34; 1,36; 1,38; 1,40; 1,42; 1,44; 1,46; 1,48; 1,50; 1,52; 1,54 |
6 |
0; 0; 0; 0,54; 0,96; 1,36; 1,64; 1,88; 2,02; 2,26; 2,38; 2,5; 2,52; 2,66; 2,72; 2,76; 2,8; 2,82; 2,9; 2,92; 2,94; 2,96 |
7 |
0; 0; 0; 0; 0,36; 0,66; 0,9; 1,1; 1,26; 1,38; 1,5; 1,58; 1,66; 1,72; 1,76; 1,8; 1,82; 1,86; 1,9; 1,92; 1,94; 1,96 |
8 |
0; 0; 0; 0,6; 1,12; 1,56; 1,94; 2,28; 2,52; 2,74; 2,94; 3,1; 3,24; 3,36; 3,44; 3,54; 3,6; 3,66; 3,72; 3,76; 3,8; 3,82; 3,84; 3,86; 3,88; 3,92 |
9 |
0; 0; 0; 0,563; 0,98; 1,32; 1,58; 1,78; 1,94; 2,06; 2,16; 2,24; 2,3; 2,34; 2,36; 2,4; 2,42; 2,44 |
10 |
0; 0; 0,56; 0,972; 1,26; 1,46; 1,62; 1,72; 1,8; 1,86; 1,9; 1,92; 1,94 |