exponenta event banner

updateSystem

Обновление динамических системных данных на графике ответа

Описание

updateSystem(h,sys) заменяет динамическую систему, используемую для вычисления графика отклика, динамической системной моделью или массивом модели sysи обновляет график. Если график с маркером h содержит более одного системного ответа, этот синтаксис заменяет первый ответ на графике. updateSystem полезен, например, для обновления графика в графическом интерфейсе пользователя в ответ на интерактивный ввод. См. раздел Создание графического интерфейса пользователя с интерактивными обновлениями графика ответа.

пример

updateSystem(h,sys,N) заменяет данные, используемые для вычисления N-й ответ в сюжете.

Примеры

свернуть все

Замените данные ответа шага на существующем графике данными, вычисленными из другой динамической модели системы.

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

w = 2;
zeta = 0.5;
G = tf(w^2,[1,2*zeta*w,w^2]);

C1 = pid(0,0.621);
CL1 = feedback(G*C1,1);

h = stepplot(G,CL1);

Figure contains an axes. The axes contains 2 objects of type line. These objects represent G, CL1.

h - дескриптор графика, определяющий график, созданный stepplot. На этом рисунке G используется для вычисления первого ответа, и CL1 используется для вычисления второго ответа. Это упорядочение соответствует порядку входов в stepplot.

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

C2 = pid(2,2.6,0.4,0.002);
CL2 = feedback(G*C2,1);

Обновите график шага для отображения второй системы с замкнутым контуром вместо первой. Система с замкнутым контуром является вторым ответом на графике, поэтому укажите значение индекса 2.

updateSystem(h,CL2,2);

Figure contains an axes. The axes contains 2 objects of type line. These objects represent G, CL1.

updateSystem заменяет систему, используемую для вычисления второго ответа, отображаемого на графике. Вместо отображения данных ответа, полученных из CL1, график теперь показывает данные, полученные из CL2.

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

Входные аргументы

свернуть все

Печать для обновления новыми системными данными, заданными в качестве дескриптора печати. Обычно дескриптор графика получается в качестве выходного аргумента ответной команды печати, например stepplot или bodeplot. Например, команда h = bodeplot(G) возвращает маркер к графику, содержащему отклик Боде динамической системы, G.

Система, из которой вычисляются новые данные ответа для графика ответа, заданного как динамическая системная модель или массив модели.

sys должна соответствовать системе печати, которую она заменяет как в размерах ввода-вывода, так и в размерах массива. Например, предположим h имеется в виду график, отображающий ступенчатые отклики 5-элементного вектора 2-входных, 2-выходных систем. В этом случае sys также должен быть 5-элементным вектором 2-входных, 2-выходных систем. Количество состояний в элементах sys не обязательно должно совпадать с количеством состояний в выводимых на печать системах.

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

h = impulseplot(G1,G2,G3,G4);

Замена импульсных данных G3 с данными из новой системы, sysиспользуйте следующую команду.

updateSystem(h,sys,3);
Представлен в R2013b