http://www.forum.getchip.net/

Подскажите как написать ПИД-регулятор на АВ
http://www.forum.getchip.net/viewtopic.php?f=16&t=122
Страница 14 из 14

Автор:  anatoliy [ 18 апр 2012, 21:37 ]
Заголовок сообщения:  Re: Подскажите как написать ПИД-регулятор на АВ

:ugeek:
Попробую описать алгоритм словами.
Входные данные:
Сигнал и необходимое значение.
Алгоритм работает за некоторое количество интеграций
получаем данные
рассчитываем ошибку
вычитаем из полученных данных необходимое значение получаем текущию ошибку
рассчитываем пропорциональную компоненту
пропорциональная компонента = текущая ошибка * на коэффициент пропорциональности
рассчитываем дифференциальную компоненту
дифференциальная компонента = текущая ошибка - прошлая ошибка * диф коэффициент
рассчитываем интегральную компоненту
интегральная компонента = (текущая ошибка + прошлая ошибка)/2 * интегральный коэффициент
делаем текущию ошибку прошлой ошибкой
рассчитываем управляющие воздействие
управляющие воздействие = пропорциональная компонента + дифференциальная компонента + интегральная компонента
проверяем на допустимый диапазон и принимаем меры
выдаем управляющие воздействие
делаем новую интеграцию
алгоритм описанный в файле выше сильно упрощён но как пример пойдёт ;)

Автор:  GetChiper [ 20 апр 2012, 22:37 ]
Заголовок сообщения:  Re: Подскажите как написать ПИД-регулятор на АВ


Автор:  anatoliy [ 21 апр 2012, 01:43 ]
Заголовок сообщения:  Re: Подскажите как написать ПИД-регулятор на АВ


Автор:  SVN [ 22 апр 2012, 15:11 ]
Заголовок сообщения:  Re: Подскажите как написать ПИД-регулятор на АВ


Автор:  anatoliy [ 22 апр 2012, 15:25 ]
Заголовок сообщения:  Re: Подскажите как написать ПИД-регулятор на АВ

в не упрощённом алгоритме происходит коррекция коэффициентов. по признакам пере регулирования.
В данной реализации интеграл рассчитывается слишком по короткой истории. те всего 2 значения. ИМХО нужно историю длиннее.
но для задачи терморегулирования должно подойти. поиграйтесь с коэффициентами

Автор:  SVN [ 22 апр 2012, 15:51 ]
Заголовок сообщения:  Re: Подскажите как написать ПИД-регулятор на АВ

Спасибо.

Автор:  mcmega [ 29 ноя 2013, 18:02 ]
Заголовок сообщения:  Re: Подскажите как написать ПИД-регулятор на АВ

Всем здрасти) Что то не могу понять, тема заглохла или что то получилось? Очень интересный проект.

Автор:  Гость [ 15 дек 2013, 12:29 ]
Заголовок сообщения:  Re: Подскажите как написать ПИД-регулятор на АВ


Автор:  dimtex [ 11 апр 2017, 15:14 ]
Заголовок сообщения:  Re: Подскажите как написать ПИД-регулятор на АВ

Вот мой вариант PID регулятора температуры
в данной программе использованы фрагменты кода выложено на данном ресурсе за что
всем авторам большое спасибо
Теперь по теме:
в моём варианте УВ равно 1 сек /100% что позволяет равномерно регулировать
инерционные объекты с разной интегральной состовляющей
для облегчения расчётов десятичных знаков входные данные умножены на 10
на пример температура 25,6 С = 256
коэфф также задаются с умножением на 10 после расчётов
УВ делится на 10 и усредняется до ближайшего целого числа и нормируется от 0-100%
Как пользоваться данной библиотекой :
Необходимо в разделе констант установить нужную температуру
и подобрать коэффициенты
через равные промежутки времени измеряем температуру
копируем текущую температуру умноженую на 10 в регистр Tek_Tx10
и вычисляем PID пп OBR_PID
в регистре Rez_PID получаем число от 0-100 %
с помощью которого регулируется температура
Если возникнут вопросы пишите
:lol:

Вложения:
PID_REG.rar [13.98 КБ]
Скачиваний: 649

Страница 14 из 14 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/