У меня есть PID контроллер, работающий в Simulink, но я хочу передать его в код C ++. Я нашел, как сделать PID с кодом, что-то вроде этого:
error = input - refeed;
iError += error * sampleTime;
dError = (error - lastError)/ sampleTime;
//PID Function
output = Kp * error + Ki * iError + Kd * dError;
refeed = output;
lastError = error;
Но это единственное, что я понял в своем исследовании.
Мне нужно знать, что будет следующим шагом, у меня есть функция передачи, но я не уверен, что мне делать с параметрами «z», временами, …
Можно ли вручную передать ПИД-контроллер в C ++? Как?
Да, это возможно. Рассматривали ли вы использовать чужой код? Или ты хочешь написать это сам? Если у вас нет проблем с использованием уже написанного кода, проверьте Github. В нем много проектов PID. Например ПИД-регулятор. У него есть пример использования, и вам нужно только передать параметры p, i и d (которые вы уже получили от Matlab).
Удачи!
Других решений пока нет …