Рекомендуемая практика включает спецификацию коэффициентов шкалы для каждого входа объекта и выходной переменной, что особенно важно, когда определенные переменные имеют гораздо большие или меньшие величины, чем другие.
Коэффициент шкалы должен равняться (или аппроксимировать) диапазону переменной. Span - различие между его максимальным и минимальным значением в технических модулях, то есть модуль измерения, заданная в модели объекта управления. Внутри MPC делит каждый входной и выходной сигнал объекта на его масштабный коэффициент, чтобы сгенерировать безразмерные сигналы.
Потенциальные преимущества масштабирования заключаются в следующем:
Веса настройки MPC по умолчанию работают лучше всего, когда все сигналы имеют единицу порядка. Соответствующие масштабные коэффициенты делают веса по умолчанию хорошей начальной точкой для настройки и уточнения контроллера.
При выборе весов функции затрат можно фокусироваться на относительном приоритете каждого члена, а не на комбинации приоритета и шкалы сигнала.
Улучшено численное кондиционирование. Когда значения масштабируются, ошибки округления оказывают меньше влияния на вычисления.
После настройки контроллера изменение фактора шкалы, вероятно, повлияет на эффективность, и контроллер может потребовать повторной настройки. Лучшая практика состоит в том, чтобы установить масштабные коэффициенты в начале проектирования контроллера и сохранить их постоянными после этого.
Вы можете задать масштабные коэффициенты в командной строке и с помощью приложения MPC Designer.
Чтобы идентифицировать масштабные коэффициенты, оцените диапазон каждой входной и выходной переменной объекта в технических модулях.
Если сигнал имеет известные границы, используйте различие между верхним и нижним пределом.
Если вы не знаете границ сигнала, рассмотрите выполнение разомкнутого контура модели объекта управления симуляций. Можно варьировать входы в их вероятных областях значений и записывать диапазоны выходных сигналов.
Если вы не представляете, используйте масштабный коэффициент по умолчанию (= 1).
После создания объекта контроллера MPC с помощью mpc
команда устанавливает свойство фактора шкалы для каждого объекта входа и выхода переменной.
Для примера следующие команды создают случайное предприятие, задают типы сигналов и определяют коэффициент шкалы для каждого сигнала.
% Random plant for illustrative purposes: 5 inputs, 3 outputs Plant = drss(4,3,5); Plant.InputName = {'MV1','UD1','MV2','UD2','MD'}; Plant.OutputName = {'UO','MO1','MO2'}; % Example signal spans Uspan = [2, 20, 0.1, 5, 2000]; Yspan = [0.01, 400, 75]; % Example signal type specifications iMV = [1 3]; iMD = 5; iUD = [2 4]; iDV = [iMD,iUD]; Plant = setmpcsignals(Plant,'MV',iMV,'MD',iMD,'UD',iUD, ... 'MO',[2 3],'UO',1); Plant.D(:,iMV) = 0; % MPC requires zero direct MV feed-through % Controller object creation. Ts = 0.3 for illustration. MPCobj = mpc(Plant,0.3); % Override default scale factors using specified spans for i = 1:2 MPCobj.MV(i).ScaleFactor = Uspan(iMV(i)); end % NOTE: DV sequence is MD followed by UD for i = 1:3 MPCobj.DV(i).ScaleFactor = Uspan(iDV(i)); end for i = 1:3 MPCobj.OV(i).ScaleFactor = Yspan(i); end
После открытия MPC Designer и определения начальной структуры MPC на вкладке MPC Designer нажмите I/O Attributes.
В Вход и Выход окнах Channel Спецификаций задайте Scale Factor для каждого входа и выходного сигнала.
Чтобы обновить настройки контроллера, нажмите OK.