ПИД Регулятор.

PID_v1

Пользовательские блоки ПИД регуляторов, прочих регуляторов и для работы с ШИМ выходами
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Ответить
Аватара пользователя
Siberian
Лейтенант
Сообщения: 453
Зарегистрирован: 07.09.2015{, 11:51}
Репутация: 8
Откуда: СССР
Имя: Александр

ПИД Регулятор.

#1

Сообщение Siberian » 19.07.2019{, 09:55}

Здравствуйте, коллеги!
Более двух лет назад я скачал с нашего форума пользовательский блок ПИД регулятор.
Судя по описанию автора в блоке, им является AlexA.
Но, к сожалению сейчас я не могу найти пользователя с таким ником.

Данный блок использую в инкубаторах.
Работает Очень Отлично!
За пару лет перепробовал очень много вариантов разных ПИД регуляторов, но ничего лучшего не нашел.
Огромный респект и уважуха автору блока!

Выкладываю блок и библиотеку к нему (PID_v1).
Вложения
2019-07-19_093859.jpg
PID_v1.zip
(7.25 КБ) 96 скачиваний
ПИД_регулятор_(CODE).ubi
(69.98 КБ) 104 скачивания

com
Сержант
Сообщения: 171
Зарегистрирован: 31.05.2018{, 22:12}
Репутация: 11
Откуда: Тюмень-Уфа
Имя: Роман

ПИД Регулятор. Отличный блок пользователя!

#2

Сообщение com » 19.07.2019{, 10:43}

А можно по подробнее по настройкам, какой пункт за что отвечает, как настроить

Аватара пользователя
Siberian
Лейтенант
Сообщения: 453
Зарегистрирован: 07.09.2015{, 11:51}
Репутация: 8
Откуда: СССР
Имя: Александр

ПИД Регулятор. Отличный блок пользователя!

#3

Сообщение Siberian » 19.07.2019{, 11:18}

com писал(а):
19.07.2019{, 10:43}
А можно по подробнее по настройкам, какой пункт за что отвечает, как настроить
Подробнее и расширено можно найти в любом описании по ПИД регуляторам, нужно только немого погуглить, информации очень много.
Когда я начинал знакомиться с ПИД регулятором, перелопатил очень многое в инете. Самой простой мне показалась публикация, в котором парень рассказывал, как он делал для своего товарища блок управления оборотами двигателя. http://we.easyelectronics.ru/Theory/pid ... tikov.html

В этой публикации довольно всё просто, по народному описано.
Если Вы не разу не сталкивались с ПИД регуляторами, совету прочесть.
Про настройки описано в конце.
Если правильно настроить Kp и Ki, то настройку Kd можно оставить "0", получится ПИ регулятор.

Отправлено спустя 24 минуты 30 секунд:
------------------------------------------------------------------------------------------------------------------------
Для примера приведу один из своих инкубаторов.
* 160 яиц загрузка.
* Внутренний объем инкубатора составляет 180 литров.
* Мощность нагревателя 85 Ватт.
* Датчик температуры и влажности HTU-21
* Время нагрева инкубатора при внешней температуре +18 градусов до нагрева +38 градусов составляет 1 час.
Данные настройки ПИД.
* Kp = 1480,0
* Ki = 1,35
* Kd = 0,0
Обращаю внимание, что регулировка происходит именно по ШИМ, а не по релейному управлению.

Аватара пользователя
Anydy
Администратор
Сообщения: 2416
Зарегистрирован: 30.12.2017{, 12:10}
Репутация: 158
Имя: Андрей

ПИД Регулятор.

#4

Сообщение Anydy » 19.07.2019{, 12:13}

Siberian писал(а):
19.07.2019{, 11:42}
Когда я начинал знакомиться с ПИД регулятором, перелопатил очень многое в инете. Самой простой мне показалась публикация, в котором парень рассказывал, как он делал для своего товарища блок управления оборотами двигателя. http://we.easyelectronics.ru/Theory/pid ... tikov.html
Хорошая инструкция!!! Всем полезно почитать!!!

Отправлено спустя 2 минуты 17 секунд:
Siberian писал(а):
19.07.2019{, 09:55}
Судя по описанию автора в блоке, им является AlexA.
Но, к сожалению сейчас я не могу найти пользователя с таким ником.
Да, я в админке тоже не вижу такого пользователя.....либо его нет, либо он самоудалился)))

Отправлено спустя 43 секунды:
Либо ник не верный указали...

ecoins
Лейтенант
Сообщения: 441
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 47
Откуда: Шатура
Имя: Энвер

ПИД Регулятор.

#5

Сообщение ecoins » 19.07.2019{, 12:22}

Siberian писал(а):
19.07.2019{, 11:42}
Подробнее и расширено можно найти в любом описании по ПИД регуляторам, нужно только немого погуглить, информации очень много.
Когда я начинал знакомиться с ПИД регулятором, перелопатил очень многое в инете. Самой простой мне показалась публикация, в котором парень рассказывал, как он делал для своего товарища блок управления оборотами двигателя. http://we.easyelectronics.ru/Theory/pid ... tikov.html
Отличная тема и отличные ссылки.
Тут же скачал библиотеку и добавил в папку libraries IDE.
И обнаружилось, что такая библиотека уже размещена автором в этой папке.
Большое спасибо, что обратили внимание на эту тему, сослались на свой успешный опыт, сделали крайне интересную для нас ссылку на публикацию, в которой особый интерес вызвал текст:
О параллелизме в программе - из http://we.easyelectronics.ru/The…Показать
В комментариях поинтересовались — зачем такие сложности с машиной состояний? С недетерминированным алгоритмом? Отвечаю: благодаря такому подходу я реализую простенький «параллелизм». Т. е. в промежутке между этапами вычислений я делаю какие-то другие действия (в моем случае общение по UART, которое может быть весьма напряженным — когда я использую сий девайс как логгер событий).
Это как раз то, что команда ecoins в настоящее время разрабатывает для микроконтроллеров и пытается привлечь к этому аспекту проектирования пользователей FLProg - пока без особого успеха.

Аватара пользователя
Siberian
Лейтенант
Сообщения: 453
Зарегистрирован: 07.09.2015{, 11:51}
Репутация: 8
Откуда: СССР
Имя: Александр

ПИД Регулятор.

#6

Сообщение Siberian » 19.07.2019{, 12:42}

Anydy писал(а):
19.07.2019{, 12:16}
Siberian писал(а):
19.07.2019{, 11:42}
Когда я начинал знакомиться с ПИД регулятором, перелопатил очень многое в инете. Самой простой мне показалась публикация, в котором парень рассказывал, как он делал для своего товарища блок управления оборотами двигателя. http://we.easyelectronics.ru/Theory/pid ... tikov.html
Хорошая инструкция!!! Всем полезно почитать!!!

Отправлено спустя 2 минуты 17 секунд:
Siberian писал(а):
19.07.2019{, 09:55}
Судя по описанию автора в блоке, им является AlexA.
Но, к сожалению сейчас я не могу найти пользователя с таким ником.
Да, я в админке тоже не вижу такого пользователя.....либо его нет, либо он самоудалился)))

Отправлено спустя 43 секунды:
Либо ник не верный указали...
Может и не верный ник, я взял имя автора из описания блока.

Отправлено спустя 10 минут 28 секунд:
-------------------------------------------------------------------------------------------------------------
Я скачал этот блок еще с форума сайта flprog.ru.
В то время не было этого форума на движке phpBB
Вложения
2019-07-19_093859.jpg

Аватара пользователя
Anydy
Администратор
Сообщения: 2416
Зарегистрирован: 30.12.2017{, 12:10}
Репутация: 158
Имя: Андрей

ПИД Регулятор.

#7

Сообщение Anydy » 19.07.2019{, 14:23}

А, ясно )))

Аватара пользователя
Alex16
Рядовой
Сообщения: 70
Зарегистрирован: 05.01.2016{, 01:20}
Репутация: 1
Откуда: Армавир

ПИД Регулятор.

#8

Сообщение Alex16 » 19.07.2019{, 17:12}

Siberian писал(а):
19.07.2019{, 12:52}
Может и не верный ник, я взял имя автора из описания блока.
Мой ник на форуме "Alex16"
AlexA

Аватара пользователя
Siberian
Лейтенант
Сообщения: 453
Зарегистрирован: 07.09.2015{, 11:51}
Репутация: 8
Откуда: СССР
Имя: Александр

ПИД Регулятор.

#9

Сообщение Siberian » 19.07.2019{, 17:20}

Alex16, приветствую! Если блок Ваш, то Респект и Уважуха! :smile38:

Аватара пользователя
Dryundel
Лейтенант
Сообщения: 578
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 190
Откуда: Ярославль
Имя: Андрей

ПИД Регулятор.

#10

Сообщение Dryundel » 20.07.2019{, 01:38}

Siberian писал(а):
19.07.2019{, 09:55}
Здравствуйте, коллеги!
Более двух лет назад я скачал с нашего форума пользовательский блок ПИД регулятор.
Судя по описанию автора в блоке, им является AlexA.
Но, к сожалению сейчас я не могу найти пользователя с таким ником.

Данный блок использую в инкубаторах.
Работает Очень Отлично!
За пару лет перепробовал очень много вариантов разных ПИД регуляторов, но ничего лучшего не нашел.
А можно поподробней, в чем преимущество данного блока перед встроенным?
Вроде как встроенный блок на той же библиотеке базируется, плюс имеет возможность выбора прямого или обратного регулирования, плюс можно задать пределы регулируемого параметра, плюс может управлять как ШИМ-ом, так и релейным выходом. Имеет весьма не плохое, понятное, описание и легко конфигурируется.

В чем фикус? Вы заметили особые отличия в работе? Данный блок реально лучше работает?

Аватара пользователя
Siberian
Лейтенант
Сообщения: 453
Зарегистрирован: 07.09.2015{, 11:51}
Репутация: 8
Откуда: СССР
Имя: Александр

ПИД Регулятор.

#11

Сообщение Siberian » 20.07.2019{, 07:26}

Dryundel писал(а):
20.07.2019{, 01:38}
А можно поподробней, в чем преимущество данного блока перед встроенным?
На встроенном блоке я не смог добиться стабильного поддерживания температуры.
А связано скорее всего с алгоритмом работы, я по разному пытался настроить Kp, Ki, Kd, но происходило следующее:
Например, установленная температура +38,0., верхний предел ШИМ 255, нижний 0.
При достижении +38,0 шим сбрасывается в 0, затем после какого-то периода времени начинает увеличиваться, но температура уже 37,9., шим увеличивается до 255, но температура уже 37,8., при достижении 38,0 снова шим сбрасывается в 0, и т.д. В таком режиме работает какое-то время, и наконец "качалка" пляшет от 37,9 до 38,1.

На пользовательском блоке такого не происходит. При достижении 38,0 шим снижается примерно до 120-140 (в зависимости от настроек Kp, Ki) и в этих пределах регулирует. Опять-же, в зависимости от настроек Kp, Ki можно добиться регулировки в пределах либо 37,9 - 38,0. либо 38,0 - 38,1 до достижения стабильного 38,0.

Отправлено спустя 19 минут 14 секунд:
Может я не смог правильно настроить встроенный блок, занимался с ним плотно два дня, но желаемого результата не получил.

Пользовательский блок от Alex16 настраивается очень легко, хорошо отзывчив к настройке коэффициентов, процедура настройки под любые задачи занимает всего один вечер.

Аватара пользователя
Dryundel
Лейтенант
Сообщения: 578
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 190
Откуда: Ярославль
Имя: Андрей

ПИД Регулятор.

#12

Сообщение Dryundel » 20.07.2019{, 12:13}

Siberian писал(а):
20.07.2019{, 07:45}
На встроенном блоке я не смог добиться стабильного поддерживания температуры.
А связано скорее всего с алгоритмом работы...
Siberian писал(а):
20.07.2019{, 07:45}
Пользовательский блок от Alex16 настраивается очень легко, хорошо отзывчив к настройке коэффициентов
Странно все это. Оба блока работают на одной библиотеке. В блоке от Alex16 я не увидел дополнительных алгоритмов, только отсыл к функциям библиотеки. Поэтому осмелюсь предположить, что Вы при настройке встроенного блока сделали что то не так.
Хотя... Все может быть и все быть может и только то не может быть, чего уж точно быть не может, хотя и это может быть.
Интересно было бы послушать автора блока.
Alex16, не расскажете в чем принципиальное отличие вашего блока от встроенного? Почему Вы его создали? Не устроил встроенный? Как удалось сделать принципиально новое решение на той же библиотеке? В чем секрет? В чем отличие?

Аватара пользователя
Siberian
Лейтенант
Сообщения: 453
Зарегистрирован: 07.09.2015{, 11:51}
Репутация: 8
Откуда: СССР
Имя: Александр

ПИД Регулятор.

#13

Сообщение Siberian » 20.07.2019{, 16:45}

Блок пользователя Alex16 создал еще до того, как появился встроенный блок пид в программе flprog.

ecoins
Лейтенант
Сообщения: 441
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 47
Откуда: Шатура
Имя: Энвер

ПИД Регулятор.

#14

Сообщение ecoins » 20.07.2019{, 21:26}

Dryundel писал(а):
20.07.2019{, 12:13}
не расскажете в чем принципиальное отличие вашего блока от встроенного? Почему Вы его создали? Не устроил встроенный?
Во как! И не знал о встроенном ПИД-регуляторе. Буду пробовать.

av
Капитан
Сообщения: 704
Зарегистрирован: 25.09.2017{, 13:25}
Репутация: 32
Имя: Алексей

ПИД Регулятор.

#15

Сообщение av » 20.07.2019{, 23:19}

Siberian писал(а):
20.07.2019{, 07:45}
На встроенном блоке я не смог добиться стабильного поддерживания температуры.
А связано скорее всего с алгоритмом работы, я по разному пытался настроить Kp, Ki, Kd, но происходило следующее:
Например, установленная температура +38,0., верхний предел ШИМ 255, нижний 0.
При достижении +38,0 шим сбрасывается в 0, затем после какого-то периода времени начинает увеличиваться, но температура уже 37,9., шим увеличивается до 255, но температура уже 37,8., при достижении 38,0 снова шим сбрасывается в 0, и т.д. В таком режиме работает какое-то время, и наконец "качалка" пляшет от 37,9 до 38,1.
Siberian, странно но у меня штатный блок работает отлично без всяких нареканий. Ваше описание работы штатного блока отличаются от работы в моем случае. У меня работает так же как вы описали работу пользовательского блока. А вот преимущества штатного из за дополнительных настроек описанных Ув.Dryundel,
Dryundel писал(а):
20.07.2019{, 01:38}
Вроде как встроенный блок на той же библиотеке базируется, плюс имеет возможность выбора прямого или обратного регулирования, плюс можно задать пределы регулируемого параметра, плюс может управлять как ШИМ-ом, так и релейным выходом. Имеет весьма не плохое, понятное, описание и легко конфигурируется.
более предпочтительны по моему мнению. Не утверждаю что пользовательский блок хуже!

Аватара пользователя
Siberian
Лейтенант
Сообщения: 453
Зарегистрирован: 07.09.2015{, 11:51}
Репутация: 8
Откуда: СССР
Имя: Александр

ПИД Регулятор.

#16

Сообщение Siberian » 21.07.2019{, 15:46}

av писал(а):
20.07.2019{, 23:19}
Siberian, странно но у меня штатный блок работает отлично без всяких нареканий. Ваше описание работы штатного блока отличаются от работы в моем случае. У меня работает так же как вы описали работу пользовательского блока. А вот преимущества штатного из за дополнительных настроек описанных Ув.Dryundel,
Не буду спорить, возможно я как-то криво подошел к вопросу...
Уже привык к пользовательскому, тем более, что мне дополнительные настройки не нужны, использую только прямое регулирование ШИМ.

Ответить

Вернуться в «ПИД регуляторы (PID), блоки для ШИМ»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость