Этот пример показывает, как разработать компенсатор для модели объекта управления, заданной данными о частотной характеристике (FRD) с помощью Control System Designer.
Непараметрические представления моделей объекта управления, такие как данные о частотной характеристике, часто используются для анализа и системы управления. Эти модели FRD обычно получаются из:
1) Предупредите об оборудовании анализатора, которое выполняет измерения частотного диапазона в системах.
2) Непараметрические методы оценки с помощью системных данных об ответе времени. Можно использовать следующие продукты, чтобы оценить модели FRD:
Simulink® Control Design™:
Функция: frestimate
Пример: оценка частотной характеристики Используя основанные на симуляции методы (Simulink Control Design).
Signal Processing Toolbox™:
Функция: tfestimate.
System Identification Toolbox™:
В этом примере разработайте контроллер скорости вращения двигателя, который приводит в действие угол дросселя механизма:
Частотная характеристика механизма уже оценивается. Загрузите и просмотрите данные.
load FRDPlantDemoData.mat
AnalyzerData
AnalyzerData = struct with fields:
Response: [594x1 double]
Frequency: [594x1 double]
FrequencyUnits: 'rad/s'
Создайте объект модели FRD:
FRDPlant = frd(AnalyzerData.Response,AnalyzerData.Frequency,... 'Unit',AnalyzerData.FrequencyUnits);
Конструктивные требования:
Обнулите установившуюся ошибку для изменений скорости ссылки шага
Поле фазы, больше, чем 60 градусов
Получите поле, больше, чем 20 дБ.
Открытый Control System Designer.
controlSystemDesigner({'bode','nichols'},FRDPlant)|
Control System Designer открывается, и с Предвещайте и с редакторы разомкнутого цикла Николса.
Можно разработать компенсатор путем формирования частотной характеристики разомкнутого цикла или в Предвещать редакторе или в редакторе Николса. В этих редакторах в интерактивном режиме измените усиление, полюса и нули компенсатора.
Чтобы удовлетворить требование отслеживания нулевой установившейся ошибки, добавьте интегратор в компенсатор. Щелкните правой кнопкой по редактору Bode область построения и выберите Add Pole/Zero> Integrator.
Чтобы удовлетворить требования запаса по амплитуде и фазе, добавьте нуль в компенсатор. Щелкните правой кнопкой по редактору Bode область построения и выберите Add Pole/Zero> Real Zero. Измените местоположение нуля и усиление компенсатора, пока вы не удовлетворите маржинальные требования.
Один возможный проект, который удовлетворяет конструктивные требования:
Этот проект компенсатора, который является контроллером PI, достигает 20,7 полей усиления дБ и 70,8 полей фазы степени.
Экспортируйте разработанный компенсатор в рабочую область. Нажмите Export.
Подтвердите производительность контроллера путем симуляции ответа механизма с помощью нелинейной модели в Simulink®. В данном примере результаты симуляции валидации находятся в EngineStepResponse
.
Постройте ответ механизма к ссылочному изменению скорости от 2 000 до 2 500 об/мин:
plot(EngineStepResponse.Time,EngineStepResponse.Speed) title('Engine Step Response') xlabel('Time (s)') ylabel('Engine Speed (RPM)')
Ответ показывает нулевую установившуюся ошибку и переходные процессы хорошего поведения со следующими метриками.
stepinfo(EngineStepResponse.Speed,EngineStepResponse.Time)
ans = struct with fields:
RiseTime: 1.1048
SettlingTime: 1.7194
SettlingMin: 2.4501e+03
SettlingMax: 2.5078e+03
Overshoot: 0.3127
Undershoot: 0
Peak: 2.5078e+03
PeakTime: 2.3853