Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: ПИД регулятор на АВР
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > MCS51, AVR, PIC, STM8, 8bit
Anton_1000
Уважаемые знатоки ПИД, я собрал регулятор на основе алгоритма закодированного на С в AVR221. Меня интересует правильно ли учтены И и Д составляющие. Можно ли их как-то усовершенствовать. Не понятно как учтено время интегрирования и диффренцирования?
slog
Время естественно зависит от частоты запуска регулятора.
Anton_1000
Частота расчёта ШИМ значения по ПИД алгоритму примерно 3 раза в секунду. При каких условиях или с какой частотой необходимо обнулять Сумму ИНТЕГРАЦИИ?
Tanya
Цитата(Anton_1000 @ Feb 1 2009, 18:01) *
Уважаемые знатоки ПИД, я собрал регулятор на основе алгоритма закодированного на С в AVR221. Меня интересует правильно ли учтены И и Д составляющие. Можно ли их как-то усовершенствовать. Не понятно как учтено время интегрирования и диффренцирования?

Уважаемый Anton_1000!
Прочитайте (и почитайте) правила форума. Вы написали абсолютно пустое по содержанию и названию сообщение.
К настоящему моменту его посмотрели 14 человек, которые впустую затратили на это свое время и электроэнергию.
Зачем Вы пишите - "я собрал регулятор на основе алгоритма закодированного на С в AVR221"
Причем тут С и АВР? Правильно ли Вы что-то там учли, что и как Вы хотите усовершенствовать, - известно только Вам и состоящим с Вами в астральной связи телепатам. Но им-то этого читать не нужно.
А Вам нужно почитать...
Anton_1000
Мир многообразен и каждая букашка или козявка имеет право на жизнь в нём.
Simok
Цитата(Anton_1000 @ Feb 1 2009, 19:59) *
Мир многообразен и каждая букашка или козявка имеет право на жизнь в нём.


А я вот например не знаю, что такое "ПИД" biggrin.gif А слово закодированного, означает шифрование или скомпилириванного (собранного) исходника? wink.gif
haker_fox
Цитата(Anton_1000 @ Feb 2 2009, 00:59) *
Мир многообразен и каждая букашка или козявка имеет право на жизнь в нём.

Вы бы подробнее описали свой проект: чем у Вас ПИД управляет?
Советую эту статейку глянуть.
Anton_1000
Рассчитанное значение пид-регулятора нормируется к значение ШИМ от 0 до 511 (9 разрядов). Далее преобразуется в пневматический сигнал для управления мембранным исполнительным механизмом с помощью которого регулируется давление в паропроводе. Вопрос состоит в том нужно ли учитывать время между соседними измерениями рассогласования, ведь в приедённом коде этого не делается, а код из AN.

CODE
error = setPoint - processValue;

// Calculate Pterm and limit error overflow
if (error > pid_st->maxError)
p_term = MAX_INT;
else if (error < -pid_st->maxError)
p_term = -MAX_INT;
else
p_term = pid_st->P_Factor * error;

// Calculate Iterm and limit integral runaway
temp = pid_st->sumError + error;
if(temp > pid_st->maxSumError){
i_term = MAX_I_TERM;
pid_st->sumError = pid_st->maxSumError;
}
else if(temp < -pid_st->maxSumError){
i_term = -MAX_I_TERM;
pid_st->sumError = -pid_st->maxSumError;
}
else{
pid_st->sumError = temp;
i_term = pid_st->I_Factor * pid_st->sumError;
}

// Calculate Dterm
d_term = pid_st->D_Factor * (pid_st->lastProcessValue - processValue);

pid_st->lastProcessValue = processValue;

ret = (p_term + i_term + d_term) / SCALING_FACTOR;
if(ret > MAX_INT){
ret = MAX_INT;
}
else if(ret < -MAX_INT){
ret = -MAX_INT;
slog
Ещё раз.
Это время задаётся частотой, с которой ты запускаешь свой регулятор.
TSerg
Цитата(Anton_1000 @ Feb 1 2009, 18:01) *
Уважаемые знатоки ПИД, я собрал регулятор на основе алгоритма закодированного на С в AVR221. Меня интересует правильно ли учтены И и Д составляющие. Можно ли их как-то усовершенствовать. Не понятно как учтено время интегрирования и диффренцирования?


В школу.
ucMike
Anton_1000, как у тебя с безударным переходом при переключении режима "ручной-автомат"?
Уточню. Как это отразится на p_term, i_term, d_term?

И в каком положении будет клапан, если setPoint = processValue и setPoint имеет различные значения("задание").
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.