Форум программистов, компьютерный форум, киберфорум
Наши страницы
Matlab
Войти
Регистрация
Восстановить пароль
 
Tiger92
0 / 0 / 0
Регистрация: 26.05.2013
Сообщений: 10
#1

нужно написать прогу который по временным трендам сможет идентифицировать объект управления по методу наименьших квадрантов - Matlab

03.06.2013, 17:24. Просмотров 501. Ответов 3
Метки нет (Все метки)

нужно написать прогу который по временным трендам сможет идентифицировать объект управления по методу наименьших квадратов желательно с подписью каждой действии (или любой другой метод , но только с описанием )

вот мой вариант:
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
function [s2] = mnk(num,den)
s1=tf(num,den);
T_end=60; % интервал измерений
dt=0.2; % шаг дискретизации
t=0:dt:T_end; % массив дискретного времени
N=length(t); % размер выборки
u=ones(N,1); % массив значений единичного входного воздействия
y=lsim(s1,u,t); %массив значений выходного воздействия
n = max([length(num)-1,length(den)-1]);
I=diag([1 1 1]);
i=1; % начальный шаг
P=1000*I; % начальное приближение
betta=[0;0;0];
bet(i,:)=betta; % массив оценок параметров
% формирование расширенной матрицы
for i=n+1:N-1
R=[y(i+n-2:-1:i-1);u(i+n-2:-1:i)]'; 
gamma=P*R'/(R*P*R'+1);
betta=betta+gamma*(y(i+1)-R*betta);
P=(I-gamma*R)*P;
bet(i,:)=betta;
end;
% расчет параметров непрерывной модели
T1=dt^2/(1-betta(1)-betta(2)); 
T2=(betta(2)*T1+T1+dt^2)/dt;
K=betta(3)*T1/dt^2;
s2=tf([K],[T1 T2 1]);%передаточная функция идентифицированного объекта
y2=lsim(s2,u,t);
% сравнение переходных характеристик объекта и модели
plot(t,y,t,y2,':'); 
grid;

, но преподу не понравилось, так как тут заранее указывается объект, а ему нужно чтоб это прога работала по неким временным трендам ( то есть по переходной характеристике -некая кривая )...

Суть таков : есть некая переходная характеристика —некая кривая , из этой кривой через равные шаги -шаг дискретизации , сняты точки ( например :y ( 0 1 2 3 4 5 6 7 8 7 6 5 4 5 5 5 5 5 5 5) и время t (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 и тд)
рисунок ( переходная характеристика) примерно будет так выглядит:

нужно написать прогу который по временным трендам сможет  идентифицировать объект управления по методу наименьших квадрантов

так вот задача заключается в том что зная значения этих точек определить объект, то есть передаточную функцию
есть математическое описание метода наименьших квадратов (страница 79)

diligenskaya_tutorial_2009.pdf

но я не смог его реализовать может вы сможете , спасибо заранее
будут вопрос пишите я отвечу
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2013, 17:24
Я подобрал для вас темы с готовыми решениями и ответами на вопрос нужно написать прогу который по временным трендам сможет идентифицировать объект управления по методу наименьших квадрантов (Matlab):

Идентификация объекта управления по методу наименьших квадрантов
прога пишется в матлабе: %задаюсь значениями для трансфер функции объекта s1 (...

Идентификация объекта управления по методу наименьших квадрантов (2-й вариант)
%задаюсь значениями для трансфер функции объекта s1 ( это то что пишется в...

Создать указатель, который сможет указывать объект любого типа.
Привет всем, я в програмировании ни чего не смыслю поэтому обращаюсь к вам,...

Ищу специалиста Который сможет написать программу
1) Нужна авторегистрация аккаунтов по всем городам на сайте знакомств Друг...

здесь есть такой человек который сможет написать стилер?
Нужно срочно. Для быстрой связи <cut>

Ищу программиста который сможет написать простую игру крестики нолики
Ищу программиста который сможет написать простую игру крестики нолики немного...

3
Зосима
4915 / 3284 / 308
Регистрация: 02.04.2012
Сообщений: 6,191
Записей в блоге: 15
Завершенные тесты: 1
03.06.2013, 17:51 #2
Ну смотри, сделать МНК не очень трудно, можно даже использовать встроенную ф-цию polyfit, также можно взять Фурье преобразование/проинтегрировать и получать различные виды выражений описания цепи, но вопрос в другом - как имея формулу идентифицировать звено?
0
Tiger92
0 / 0 / 0
Регистрация: 26.05.2013
Сообщений: 10
03.06.2013, 20:14  [ТС] #3
Зосима, под формулы вы имеете ввиду трансфер функцию? или я не понял... начальные данные это не формула а уже некий временной тренд ...
0
Зосима
4915 / 3284 / 308
Регистрация: 02.04.2012
Сообщений: 6,191
Записей в блоге: 15
Завершенные тесты: 1
04.06.2013, 20:19 #4
Странно, вчера вроде отвечал...
Цитата Сообщение от Tiger92 Посмотреть сообщение
под формулы вы имеете ввиду трансфер функцию?
нет! по заданным отсчетам (тренду) мы получаем только коэфф-ты апроксимирующего многочлена.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.06.2013, 20:19
Привет! Вот еще темы с решениями:

Написать самый простой антивирусный сканер, который сможет найти вирус, записанный в автозагрузку
Всем привет, пишу практическую работу по информационной безопасности,...

Нужно написать прогу на С++
Помогите пожалуйста с написанием проги... Вот условие такое: Написать...

Нужно написать прогу
Дано натуральное число. Выяснит: 1) является ли оно полным квадратом...

Нужно написать прогу(срочно)
Записать в файл последовательного доступа N натуральных чисел: a1, a2, …, an...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru