Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: ПИД регулятор темперауры
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Страницы: 1, 2, 3
Bobi
Помогите разобраться с цыфровым ПИД регулированием температуры.
Моя цель: "разработать пид регулятор температуры на базе микроконтроллера AVR".
Не могу разобраться с математикой пид регулирования.
_Pasha
Цитата(Bobi @ Dec 15 2008, 18:52) *
Не могу разобраться с математикой пид регулирования.

Поиск по слову терморегулятор или PID нынче рулит так, шо аж бегом lol.gif
Bobi
Цитата(_Pasha @ Dec 15 2008, 18:05) *
Поиск по слову терморегулятор или PID нынче рулит так, шо аж бегом lol.gif


Спасибо! Поискавиком я пользовоться умею. Вопрос в другом.
mempfis_
Цитата(Bobi @ Dec 15 2008, 18:52) *
Помогите разобраться с цыфровым ПИД регулированием температуры.
Моя цель: "разработать пид регулятор температуры на базе микроконтроллера AVR".
Не могу разобраться с математикой пид регулирования.


Недавно занимался таким. В приложениях достаточно данных чтобы разобраться с ПИД и реализовать его на какой-нибудь ATMEGe smile.gif
Bobi
Цитата(mempfis_ @ Dec 15 2008, 18:26) *
Недавно занимался таким. В приложениях достаточно данных чтобы разобраться с ПИД и реализовать его на какой-нибудь ATMEGe smile.gif

Благодарю за полезную информацию, буду разбираться.
Alex128
Цитата(Bobi @ Dec 15 2008, 18:52) *
Помогите разобраться с цыфровым ПИД регулированием температуры.
Не могу разобраться с математикой пид регулирования.

Что конкретно непонятно? Задайте вопрос. Собственно математика ПИД примитивна, обычно сложности начинаются на этапе достижения устойчивости, тут больше ТАУ. Рассмотрено неоднократно в том числе вроде и на данном форуме.
evgeny_ch
Цитата(Bobi @ Dec 15 2008, 18:52) *
Помогите разобраться с цыфровым ПИД регулированием температуры.
...
Занудства для, следует отметить, что при регулировании температуры,
буква Д в практике не используется.
Alex128
Цитата(evgeny_ch @ Dec 15 2008, 23:30) *
Занудства для, следует отметить, что при регулировании температуры,
буква Д в практике не используется.

Да и в иных "бытовых" smile.gif применениях зачастую трудно обнаружить эффект этой буквы smile.gif, но здесь тема то, наверное, учебная, вся азбука должна быть реализована...
Tanya
Цитата(evgeny_ch @ Dec 15 2008, 22:30) *
Занудства для, следует отметить, что при регулировании температуры,
буква Д в практике не используется.

Вот это новость. Видели когда-нибудь ВРТ-2(3)? Древний-древний девайс...Без контроллеров... Высокоточный регулятор температуры называется.....
evgeny_ch
Цитата(Tanya @ Dec 16 2008, 12:04) *
Вот это новость. Видели когда-нибудь ВРТ-2(3)? Древний-древний девайс...Без контроллеров... Высокоточный регулятор температуры называется.....
Не видел.
А где в нём буква Д? В названии не заметил.
Tanya
Цитата(evgeny_ch @ Dec 16 2008, 11:13) *
Не видел.
А где в нём буква Д? В названии не заметил.

Внутри ручечка с такой буквой имеется... Древние конструкторы-дизайнеры не знали, что она лишняя...
evgeny_ch
Цитата(Tanya @ Dec 16 2008, 12:32) *
Внутри ручечка с такой буквой имеется... Древние конструкторы-дизайнеры не знали, что она лишняя...
Ага, особенно, когда объект больше молекулы и нет ветра знакопеременной температуры.
Возможно они не знали, что такое модель объекта и апроксимация. Надеюсь, вам это известно. biggrin.gif
_Pasha
Цитата(Tanya @ Dec 16 2008, 12:04) *
Видели когда-нибудь ВРТ-2(3)?

Это там где есть выход не только нагрева, но и охлаждения ?
evgeny_ch
Цитата(_Pasha @ Dec 16 2008, 13:33) *
Это там где есть выход не только нагрева, но и охлаждения ?
Жжош. biggrin.gif
Поясню, дифсоставляющая реагирует на скорость измения ошибки, компенсируя
фазовое запаздывание в системе. В системах с активной нагрузкой нет фазового запаздывания.
Чем систему вернуть назад, когда она перегрелась? Дифференциатором охладить? biggrin.gif
_Pasha
Цитата(evgeny_ch @ Dec 16 2008, 13:44) *
Чем систему вернуть назад, когда она перегрелась? Дифференциатором охладить? biggrin.gif

Ну, во-первых, мы ишшо не знаем, был там таковой (выход охлаждения) или нет. А если был, то наличие ручки "Д" вполне логично. smile.gif
Tanya
Цитата(evgeny_ch @ Dec 16 2008, 12:25) *
Ага, особенно, когда объект больше молекулы и нет ветра знакопеременной температуры.
Возможно они не знали, что такое модель объекта и апроксимация. Надеюсь, вам это известно. biggrin.gif

Вряд ли... Они были грамотные.... Они даже это слово без ошибок могли писать.. И прибор был очень хороший для тех времен. Да и теперь их полно кое-где... И работают... И точность дают, каковая Вам и не снилась... Выходной тиристорный блок весил... именно для нагрева молекул и атомов...
evgeny_ch
Цитата(_Pasha @ Dec 16 2008, 13:50) *
Ну, во-первых, мы ишшо не знаем, был там таковой (выход охлаждения) или нет. А если был, то наличие ручки "Д" вполне логично. smile.gif
Если охлаждать, то оно конечно такида.
Если объект микролептон (бозон) с кондиционером, то регулировать будет.
Лучше.
slog
Я смотрю тут спецы по ПИД собрались. :-)
Проясните момент - в каких пределах и с каким дискретом есть смысл менять коэффициенты ПИД-регулятора.
Есть предположения что будет достаточно
P - 1..100 через 0.1
I - 0.001..1 через 0.001
D - 1..10000 через 1
Дастаточно - это в смысле для большинства практических случаев.
И еще момент мутный - что делать если интегратор зашкаливает. Ну тоесть ошибка уже равна 0 или даже меньше нуля, но интегрирующее звено по инерции продолжает вдувать мощность в "обьект". Хотя уже и не надо. Уменьшение I приводит к тому что выход на установленное занчение происходит о-о-очень долго.
_Pasha
Цитата(slog @ Dec 16 2008, 14:52) *
P - 1..100 через 0.1
D - 1..10000 через 1

Как-то странно, учитывая то, что обычно D <= P/2

Цитата
И еще момент мутный - что делать если интегратор зашкаливает.

Ограничить интегратор. Было много сказано здесь
Tanya
Цитата(slog @ Dec 16 2008, 13:52) *
Я смотрю тут спецы по ПИД собрались. :-)
Проясните момент - в каких пределах и с каким дискретом есть смысл менять коэффициенты ПИД-регулятора.
Есть предположения что будет достаточно
P - 1..100 через 0.1
I - 0.001..1 через 0.001
D - 1..10000 через 1
Дастаточно - это в смысле для большинства практических случаев.
И еще момент мутный - что делать если интегратор зашкаливает. Ну тоесть ошибка уже равна 0 или даже меньше нуля, но интегрирующее звено по инерции продолжает вдувать мощность в "обьект". Хотя уже и не надо. Уменьшение I приводит к тому что выход на установленное занчение происходит о-о-очень долго.

Никакой суперточности и мелких дискрет не нужно... +/- 30 процентов... Чтобы интегратор не зашкаливал, не применяйте его при переходном процессе (если не можете его вести квазистационарно). Этот член для другого применения...
Склихасовский
Ребят а примером реализации на ASMе не поделитесь..
А то как то начал фаргнаить сие чудо да запутался в знаковой арифметике...
Tanya
Цитата(_Pasha @ Dec 16 2008, 14:04) *
Как-то странно, учитывая то, что обычно D <= P/2


Ограничить интегратор. Было много сказано здесь

Ну-ну... Напомню, что в стационарном процессе без возмущений интегральный член единственный... значимый. А Вы его обрезать предлагаете...
Склихасовский
наверное не обрезать а ограничить по мин,макс.
slog
То что накапливает интегратор надо ограничивать, иначе он улетает так далеко, что потом о-о-очень долго возвращается в разумные пределы. К тому же имеет значение частота вызова функции ПИД-регулятора, это определяет скорость интегрирующего звена, да и на D влияет. Как определить с какой частотой имеет смысл вызывать ПИД и до каких пределов ограничивать интегратор?

Ещё вопрос - какие есть алгоритмы автонастройки ПИД-регулятора.
galjoen
Добавлю, что в реальных условиях Д помогает бороться с возникновением автоколебаний в малом. Т.е. очень часто регуляторы, особенно температуры, работают с мелкими автоколебаниями. Особенно хорошо это заметно если нагреватель можно только включить на 100% и выключить вообще. Если, например, задан период этого включения/выключения 0.1 секунды, то при мощности нагревателя 50% казалось-бы должно быть (0-выключено, 1-включено) так: 01010101010101010..., но в реальности видно, что происходит так: 1110011000111001110001100... Основная причина тут в задержке (чистая задержка) прохождения тепла от нагревателя до датчика температуры. Правильная настройка Д позволяет улучшить качество регулирования в этом случае. Хотя и не полностью. Иногда в регулятор специально приходится подмешивать случайную величину. Т.е. получается что-то типа сигма-дельта. Но это уже тема для всяких там диссертаций.
evgeny_ch
Цитата(Tanya @ Dec 16 2008, 14:05) *
Вряд ли... Они были грамотные.... Они даже это слово без ошибок могли писать.. И прибор был очень хороший для тех времен. Да и теперь их полно кое-где... И работают... И точность дают, каковая Вам и не снилась... Выходной тиристорный блок весил... именно для нагрева молекул и атомов...
А про влияние буквы Д на "точность дают" можно поконкретнее?
В процентах, применительно к весу. biggrin.gif
Не нашёл документации на сие чудо.
Alex128
Цитата(slog @ Dec 16 2008, 15:30) *
Как определить с какой частотой имеет смысл вызывать ПИД и до каких пределов ограничивать интегратор?

Ещё вопрос - какие есть алгоритмы автонастройки ПИД-регулятора.

Частота сэмплирования дискретного пид регулятора, обычно, не менее чем в тридцать раз должна превышать постоянную времени объекта управления. Вообще период квантования входит в формулы вычисления коэффициентов. Интегратор ограничивается в пределах штатного диапазоны выходного сигнала, т.е. для нагревателя: от нуля до максимума мощности. Если же у Вас
регулятор "улетает очень далеко", то это просто означает, что система возбуждается, в таком случае скорость реакции регулятора выше необходимой для данного объекта управления -- неправильно выбраны коэффициенты, в частности напрмиер необходимо уменьшить коэффициент пропорциональной составляющей (именно она определяет скорость выхода на установившийся режим (интегральная -- точность)). Коэффициенты определяются сущностью объекта управления, его реакцией на управляющие воздействия, его математическим описанием, все это рассматривается в теории автоматического кправления книге по ней и следует читать, в противном случае или когда модель объекта неизвестна только подбором, алгоритмы такого подбора существут и встречаются изложенными применительно к разнообразным объектам, следует заетить, что нагреватель является практически идеальным объектом управления, регулировать его проще вссего. Начинать настройку однозначно следует с отключенной дифференциальной составляющей (да и ненужна она уж для терморегулятора точно).
Из папки тестс: Нашел какой-то старый образчик, там стабилизируется сопротвлеение нагревтеля паяльника smile.gif в целях стабилизации температуры оного, в первом приближении, на сколько помню, стабилизировал smile.gif, нормальный регулятор несколько сложнее, но принцип виден. Аеще стабилизатор частоты вращения, тот помнится возбуждался, но тоже стабилизировал smile.gif
Tanya
Цитата(evgeny_ch @ Dec 16 2008, 16:21) *
А про влияние буквы Д на "точность дают" можно поконкретнее?
В процентах, применительно к весу. biggrin.gif
Не нашёл документации на сие чудо.

И не найдете, наверное уже... Старо, как мир... А про букву Д никаких секретов нет... Непонятно мне, почему некоторые господа товарищи считают, что эта буква применима только к регуляторам нетемпературы...
Но Вы-то... заикались про модель...
А модель-то там сложнее намного, чем многим кажется... вот тепловые волны имеют аналогию?
Хотя... если ап(п)роксимировать все прямой, а еще лучше константой..., все просто...
А точность можно получить хорошую... Странно, что Вы считаете, что для больших объектов Д не нужна, а для малых, наоборот... Мне вот кажется, что, скорее, наоборот...
Вы бы объяснили, отчего так получается... Хотя бы, исходя из концепции "быстрого" и "медленного" времени.
evgeny_ch
Цитата(Tanya @ Dec 16 2008, 17:55) *
...Вы бы объяснили, отчего так получается... Хотя бы, исходя из концепции "быстрого" и "медленного" времени.
Всё просто, у больших объектов больше инерционность, сл. они менее критичны к возмущающим воздействиям.
Медленные оне, и скорость изменения их температуры малла.
Посему Дериватив никчему. А вот мелкие... изменяют... температуру...концептуально иначе.
... - Это я опять икаю. lol.gif
Tanya
Цитата(evgeny_ch @ Dec 16 2008, 17:12) *
Всё просто, у больших объектов больше инерционность, сл. они менее критичны к возмущающим воздействиям.
Медленные оне, и скорость изменения их температуры малла.
Посему Дериватив никчему. А вот мелкие... изменяют... температуру...концептульно иначе.
... - Это я опять икаю. lol.gif

Все познается в сравнении с масштабом времени, температуры и воздействия...
Не буду с вами спорить - это бесполезно и мне и Вам...
Baser
Встряну и я сюда со своим практическим вопросиком по теме: rolleyes.gif

Есть достаточно инерционный объект, постоянная времени - минуты. Нужно его термостабилизировать при помощи ШИМа. Применяется пельтье, т.е. возможность нагревать/охлаждать. Уставка температуры должна иметь, к примеру, 1000 градаций. Точность регулирования, соответственно, желательно получить на уровне одной градации (+/-0.5 градации).

Собственно вопрос: на сколько должно быть больше градаций ШИМа, чем градаций уставки, чтобы обеспечить требуемую точность. Когда дальнейшее увеличение разрешения ШИМа станет бессмысленным?
slog
Вот еще момент какой. Предположим ПИДом поддерживаем температуру паяльника. Кстати именно его, советский 100вт паяльник я использую пока для экспериментов, весьма удобно. Вообщем в установившемся режиме всё регулируется - поддерживается как надо. Но вот если ПИД включать с начала, пока паяльник холодный, получается ерунда. Пока паяльник прогревается, накопленная ошибка в интегральном звене улетает до предела, потом долго возвращается назад. Получается сильное перерегулирование. Подобрать коэффициенты чтобы и нагревало быстро и поддерживало хорошо - не получается. И получается что ПИД надо включать только при некотором приближени к установленной температуре. Это чё, нормально?
_Pasha
Цитата(Baser @ Dec 16 2008, 21:36) *
Собственно вопрос: на сколько должно быть больше градаций ШИМа, чем градаций уставки, чтобы обеспечить требуемую точность.

Имхо все равно зависит от физики: какое минимальное количество теплоты надо дать, чтобы температура объекта изменилась на 0,5 градации ?

Цитата(slog @ Dec 16 2008, 22:01) *
И получается что ПИД надо включать только при некотором приближени к установленной температуре. Это чё, нормально?

Абсолютно да!
Alex128
Цитата(slog @ Dec 16 2008, 22:01) *
Но вот если ПИД включать с начала, пока паяльник холодный, получается ерунда. Пока паяльник прогревается, накопленная ошибка в интегральном звене улетает до предела, потом долго возвращается назад. Получается сильное перерегулирование. Подобрать коэффициенты чтобы и нагревало быстро и поддерживало хорошо - не получается. И получается что ПИД надо включать только при некотором приближени к установленной температуре. Это чё, нормально?

Помните как в известном фильме "... когда Вы говорите, такое впечатление, что Вы бредите..." smile.gif.
Какая (нах) ошибка в интегральном звене -- там не ошибка, а как раз значение выходного, управляющего сигнала. До какого предела?... Какое перерегулирование в тот момент пока паяльник не достиг заданной температуры..., в этот момент и должна быть выдана максимальная мощность и "интеграл", а следовательно и выход должен "лежать на упоре", "упереться" в максимум выхода, а вот по мере приближения к уставке должна снизиться скорость "подхода" (кстати это решается в том числе и дифференциальным звеном), но перегулирование обычно всегда есть, это всегда видно на соотвтствующих графиках. Ничего вкл/выкл не нужно, дискретное пид регулирование полный "аналог", например, аналоговой стабилизации напряжения (во всех блоках питания к примеру), там точно также есть интегральное звено, образованное емкостьюе "охватывающей" усилитель ошибки, пропорциональный элемент, задаваемый резисторами, устанавливающии коэффициент усиления того-же усилителя и дифференциал редко пристраивают, но, главное, никому и в голову прийти не может, даже не знаю как написать smile.gif, ключ что-ли поставить, что-бы включать/выключать стабилизацию lol.gif Теория автоматического управления очень хорошо разработана, недаром "...космические корабли бороздят просторы вселенной..." smile.gif, читайте книги, или подбирайте параметры.
slog
Цитата(Alex128 @ Dec 17 2008, 02:21) *
Помните как в известном фильме "... когда Вы говорите, такое впечатление, что Вы бредите..." smile.gif.
Какая (нах) ошибка в интегральном звене -- там не ошибка, а как раз значение выходного, управляющего сигнала. До какого предела?... Какое перерегулирование в тот момент пока паяльник не достиг заданной температуры..., в этот момент и должна быть выдана максимальная мощность

Объясню на пальцах, но другими словами. В интергаторе накапливается сумма ошибок. Выход интегрального звена это коэф I умноженный на сумму ошибок накопленную за последнее время. И пока объект нагреется от холодного состояния до заданного - эта сумма ошибок успевает добежать до максимума. Естественно интегральное звено выдает при этом максимум на нагреватель. И оно продолжает выдавать максимум когда температура уже достигла установленной, в этот момент ошибка меняется на отрицательную, но интегральное звено и дальше продолжает выдавать слишком много, хоть уже и не не максимум. Нагреватель греет уже давно перегретый обьект. До тех пор пока отрицательная ошибка не скомпенсирует до разумных пределов то что накопилось в интеграторе за момент нагрева. Из-за этого возникает сильное перерегулирование. Когда этот процесс успокоится регулирование идёт нормально. Вот и хотелось бы понять как тут быть. Тем более когда "корабли бороздят..."
Alhen
Цитата(Alex128 @ Dec 17 2008, 03:21) *
Ничего вкл/выкл не нужно, дискретное пид регулирование полный "аналог", например, аналоговой стабилизации напряжения (во всех блоках питания к примеру), там точно также есть интегральное звено, образованное емкостьюе "охватывающей" усилитель ошибки, пропорциональный элемент, задаваемый резисторами, устанавливающии коэффициент усиления того-же усилителя и дифференциал редко пристраивают, но, главное, никому и в голову прийти не может, даже не знаю как написать smile.gif, ключ что-ли поставить, что-бы включать/выключать стабилизацию lol.gif Теория автоматического управления очень хорошо разработана, недаром "...космические корабли бороздят просторы вселенной..." smile.gif, читайте книги, или подбирайте параметры.


Однако у любого регулятора есть ограниченая рабочая область и один набор коэффициентов не может охватить все режимы работы объекта регулирования.
А на практике действительно есть такой ключ для включения и выключения "стабилизаци", например в АСУ ТП котлоагрегата есть кнопка автомат/дистанция на любом регуляторе и никому в голову не приходит включить автомат во время растопки. biggrin.gif
Tanya
Цитата(Baser @ Dec 16 2008, 20:36) *
Встряну и я сюда со своим практическим вопросиком по теме: rolleyes.gif

Есть достаточно инерционный объект, постоянная времени - минуты. Нужно его термостабилизировать при помощи ШИМа. Применяется пельтье, т.е. возможность нагревать/охлаждать. Уставка температуры должна иметь, к примеру, 1000 градаций. Точность регулирования, соответственно, желательно получить на уровне одной градации (+/-0.5 градации).

Собственно вопрос: на сколько должно быть больше градаций ШИМа, чем градаций уставки, чтобы обеспечить требуемую точность. Когда дальнейшее увеличение разрешения ШИМа станет бессмысленным?

Абсолютно неважно, какая постоянная времени, тем более, что у большого объекта много постоянных времени...
Если теплоотдача (приток) линейно зависит от температуры, то, естественно, подводимая средняя мощность равна отводимой в стационарном режиме. Поэтому разрядность интегрального члена должна быть больше 1000. А разрядность ШИМа... может быть...1. Как в сигма-дельта преобразователе. Важно только, чтобы один квант энергии не нагревал объект больше половины градации.
IJAR
Цитата(Tanya @ Dec 16 2008, 11:04) *
Вот это новость. Видели когда-нибудь ВРТ-2(3)? Древний-древний девайс...Без контроллеров... Высокоточный регулятор температуры называется.....

А был еще (до сих пор применяется) прецизионный регулятор БПРТ-3
demiurg_spb
Цитата(slog @ Dec 17 2008, 08:50) *
Объясню на пальцах, но другими словами. В интергаторе накапливается сумма ошибок. Выход интегрального звена это коэф I умноженный на сумму ошибок накопленную за последнее время. И пока объект нагреется от холодного состояния до заданного - эта сумма ошибок успевает добежать до максимума. Естественно интегральное звено выдает при этом максимум на нагреватель. И оно продолжает выдавать максимум когда температура уже достигла установленной, в этот момент ошибка меняется на отрицательную, но интегральное звено и дальше продолжает выдавать слишком много, хоть уже и не не максимум. Нагреватель греет уже давно перегретый обьект. До тех пор пока отрицательная ошибка не скомпенсирует до разумных пределов то что накопилось в интеграторе за момент нагрева. Из-за этого возникает сильное перерегулирование. Когда этот процесс успокоится регулирование идёт нормально. Вот и хотелось бы понять как тут быть. Тем более когда "корабли бороздят..."
Когда ошибка более 10% от уставки можно просто обнулять интегратор
Ведь он реально нужен лишь для компенсации статической ошибки в установившемся режиме.
Конечно, всё зависит от объекта.
Можно позволить пользователю регулировать эту величину (проценты от уставки).
Вы проведите моделирование в matlab и сразу всё поймёте.
Рассуждать можно бесконечно...
slog
Цитата(demiurg_spb @ Dec 17 2008, 12:50) *
Когда ошибка более 10% от уставки можно просто обнулять интегратор
Ведь он реально нужен лишь для компенсации статической ошибки в установившемся режиме.
Конечно, всё зависит от объекта.
Можно позволить пользователю регулировать эту величину (проценты от уставки).
Вы проведите моделирование в matlab и сразу всё поймёте.
Рассуждать можно бесконечно...

Я уже провёл, не моделирование, а экспериментирование, в натуре. biggrin.gif
И вообщем всё примерно понял. ПИД надо включать только после того как при 100% выходной мощности обьект прогреется до момента, после которого отключение выхода не вызовет перегрева объекта из за тепловой инерции. А вот после предварительного прогрева уже можно включить и ПИД.
Tanya
Цитата(slog @ Dec 17 2008, 13:20) *
Я уже провёл, не моделирование, а экспериментирование, в натуре. biggrin.gif
И вообщем всё примерно понял. ПИД надо включать только после того как при 100% выходной мощности обьект прогреется до момента, после которого отключение выхода не вызовет перегрева объекта из за тепловой инерции. А вот после предварительного прогрева уже можно включить и ПИД.

"Этот Ваш момент" уже имеется до включения устройства...
На самом деле, правильный момент наступает при уменьшении скорости нагрева раз в ... 3-5 при использовании только пропорционального управления. Это если тупо... А если с умом, то его можно вычислить, зная теплоемкость и разность температур, если точно учитывать подведенное и отведенное тепло. После чего можно включать интегральный член с ненулевым значением... Его тоже можно узнать заранее...
Может лучше ограничить скорость изменения задания, если не слишком торопимся?
slog
Ограничить скорость нельзя. Нажали кнопку- начали греть. Задача нагреть с максимальной скоростью, но перегреть никак нельзя. После нагрева уже поддерживаем температуру регулятором. Да и в случае с серводвигателем очень не желательно перерегулировать, но подъезжать к заданной точке надо максимально быстро.
_Pasha
Цитата(slog @ Dec 17 2008, 15:15) *
Задача нагреть с максимальной скоростью, но перегреть никак нельзя.

Все равно скорость ограничится инерционностью объекта регулирования. Вам надо несколько зон: начальный нагрев, зона измерения/идентификации характеристик объекта, непосредственно ПИД-регулирование.
Tanya
Цитата(slog @ Dec 17 2008, 14:15) *
Ограничить скорость нельзя. Нажали кнопку- начали греть. Задача нагреть с максимальной скоростью, но перегреть никак нельзя. После нагрева уже поддерживаем температуру регулятором. Да и в случае с серводвигателем очень не желательно перерегулировать, но подъезжать к заданной точке надо максимально быстро.

Вот, как раз, и можно ограничить скорость на уровне... 0.8-0.9 от максимальной. Тогда ПИД (И) не будет захлебываться... Дифференциальный компонент тут поможет.
А если с максимальной скоростью и параметры известны, то все можно вычислить заранее, как было выше написано...
slog
Не вижу смысла ограничивать скорость или делать много зон с разными коэффициентами. Мне кажется достаточно греть на полной мощнеости пока не попадём в зону регулировки. А вот потом уже можно и ПИДом регулировать.
_Pasha
Цитата(slog @ Dec 17 2008, 17:05) *
Мне кажется достаточно греть на полной мощнеости пока не попадём в зону регулировки.

Это справедливо только в случае, если достаточно мала инерционность, и в системе достаточно интенсивный теплообмен с окружающей средой.
Tanya
Цитата(_Pasha @ Dec 17 2008, 16:19) *
Это справедливо только в случае, если достаточно мала инерционность, и в системе достаточно интенсивный теплообмен с окружающей средой.

Что вы называете малой инерционностью и интенсивным теплообменом?
По сравнению с чем?
Вот Вам пример для размышления...
Берем тонкую-тонкую проволочку. Помещаем ее в ведро с водой...теплоизолированное... Температуру проволоки измеряем по ее сопротивлению...
1. Пропускаем маленький ток... такой маленький, что проволочка сразу не нагревается (на грани нашей чувствительности)... Теперь будем долго-долго наблюдать нагревание ведра воды...может год...
2. Даем побольше. Проволочка сразу нагрелась на 5 градусов, потом медленно прогревается... может день..
3. Пропускаем средний ток. Температура проволочки - 105 градусов... через одну микросекунду, секунду, час...
4. Пропускаем большой ток... Проволочка сгорела...
Вопросы.
Тут разная инерционность? Разный теплообмен? Разные постоянные времени?
_Pasha
Цитата(Tanya @ Dec 17 2008, 17:39) *
Вот Вам пример для размышления...

Спасибо, хороший пример.
Значит, я неправильно выразился. Попытка номер 2.
Цитата
греть на полной мощнеости пока не попадём в зону регулировки.

2sloq:
Как Вы сможете гарантировать,
а) что при попадании в зону регулировки у Вас не будет перегрева объекта регулирования за счет накопленного тепла,
б) что ширина зоны регулирования, при которой обеспечивается соблюдение условия а), приемлима для обеспечения точности. ?
slog
Цитата(_Pasha @ Dec 17 2008, 16:58) *
Как Вы сможете гарантировать,
а) что при попадании в зону регулировки у Вас не будет перегрева объекта регулирования за счет накопленного тепла,
б) что ширина зоны регулирования, при которой обеспечивается соблюдение условия а), приемлима для обеспечения точности. ?

А-а-а так вот это самое интересное. Предположим что параметры обьекта заранее точно не известны. Ведь теплоёмкость и инерционность печки зависит от массы и теплоёмкости загруженного в неё добра. Но прикинуть примерно то можно. Начинаем греть на 100% мощности и меряем время которое прошло с момента включения нагревателя до момента начала нагрева обьекта. Кроме того нас интересует скорость с какой нагревается обьект, т.е. увеличение температуры за единицу времени, вообщем производная dT/dt. Ну а дальше из этого уже можно делать кое-какие выводы, думать надо.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.