Здравствуйте. У меня возник вопрос, который не получается
разрешить. Начну с того, что в AnyLogic имеется компонент
“Stock Variable”, при помощи которого очень удобно производить
операции интегрирования (накопления). В этом случае
интегрирующее звено описывается дифференциальным уравнением
dx2/dt=k*x1, где x1 входная переменная, x2 – выходная,
k – коэффициент.
Мне же нужно произвести операцию дифференцирования.
Дифференциальное звено при этом должно описываться
уравнением x2=k*dx1/dt. Как я могу выполнить такую операцию?
Спасибо.
Сергей Суслов — 24.03.08
Алексей, а какая перед Вами стоит задача в целом? Сергей.
Алексей — 24.03.08
Мне требуется построить модель ПИД-регулятора
(пропорционально-интегрально-дифференциального).
Пропорциональную и интегральную состовляющу мне удалось
смоделировать при помощи компонентов "Auxiliary Variable" и “Stock
Variable” соответственно. Но с дифференциальной составляющей
регулятора не могу справиться.
Владимир — 24.03.08
Может быть, стоит добавить еще один элемент “Stock Variable” с именем
"x1", а в качестве формулы использовать такую: dx1/dt=(1/k)*x2? Или я
неправильно понял Вашу идею?
Сергей Суслов — 25.03.08
Алексей,
Посмотрите на библиотеку "Dynamic Systems", она находится в архиве
"c:\Program Files\AnyLogic 5\Lib\Unsupported\Dynamic Systems Library.zip". Если Вы скопируете
содержимое архива в папку "c:\Program Files\AnyLogic 5\Lib\", библиотека
станет доступна из AnyLogic. Данная библиотека воспроизводит
функциональность Simulink, я думаю, в ней могут содержаться полезные
для Вашей задачи блоки.
Сергей.